diff --git a/appstore_panel/dist/assets/ort-wasm-simd-threaded.wasm b/appstore_panel/dist/assets/ort-wasm-simd-threaded.wasm new file mode 100644 index 0000000..9993dd5 Binary files /dev/null and b/appstore_panel/dist/assets/ort-wasm-simd-threaded.wasm differ diff --git a/appstore_panel/dist/assets/showcase/1.jpg b/appstore_panel/dist/assets/showcase/1.jpg new file mode 100644 index 0000000..5ef65de Binary files /dev/null and b/appstore_panel/dist/assets/showcase/1.jpg differ diff --git a/appstore_panel/dist/assets/showcase/12.jpg b/appstore_panel/dist/assets/showcase/12.jpg new file mode 100644 index 0000000..f159a75 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/12.jpg differ diff --git a/appstore_panel/dist/assets/showcase/13.jpg b/appstore_panel/dist/assets/showcase/13.jpg new file mode 100644 index 0000000..39f35fa Binary files /dev/null and b/appstore_panel/dist/assets/showcase/13.jpg differ diff --git a/appstore_panel/dist/assets/showcase/14.jpg b/appstore_panel/dist/assets/showcase/14.jpg new file mode 100644 index 0000000..eda9b68 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/14.jpg differ diff --git a/appstore_panel/dist/assets/showcase/15.jpg b/appstore_panel/dist/assets/showcase/15.jpg new file mode 100644 index 0000000..b7e022a Binary files /dev/null and b/appstore_panel/dist/assets/showcase/15.jpg differ diff --git a/appstore_panel/dist/assets/showcase/16.jpg b/appstore_panel/dist/assets/showcase/16.jpg new file mode 100644 index 0000000..fee1eff Binary files /dev/null and b/appstore_panel/dist/assets/showcase/16.jpg differ diff --git a/appstore_panel/dist/assets/showcase/17.jpg b/appstore_panel/dist/assets/showcase/17.jpg new file mode 100644 index 0000000..028b736 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/17.jpg differ diff --git a/appstore_panel/dist/assets/showcase/18.jpg b/appstore_panel/dist/assets/showcase/18.jpg new file mode 100644 index 0000000..f35f6fb Binary files /dev/null and b/appstore_panel/dist/assets/showcase/18.jpg differ diff --git a/appstore_panel/dist/assets/showcase/19.jpg b/appstore_panel/dist/assets/showcase/19.jpg new file mode 100644 index 0000000..0097f5a Binary files /dev/null and b/appstore_panel/dist/assets/showcase/19.jpg differ diff --git a/appstore_panel/dist/assets/showcase/20.jpg b/appstore_panel/dist/assets/showcase/20.jpg new file mode 100644 index 0000000..41b86f6 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/20.jpg differ diff --git a/appstore_panel/dist/assets/showcase/21.jpg b/appstore_panel/dist/assets/showcase/21.jpg new file mode 100644 index 0000000..88315bd Binary files /dev/null and b/appstore_panel/dist/assets/showcase/21.jpg differ diff --git a/appstore_panel/dist/assets/showcase/22.jpg b/appstore_panel/dist/assets/showcase/22.jpg new file mode 100644 index 0000000..d49e74a Binary files /dev/null and b/appstore_panel/dist/assets/showcase/22.jpg differ diff --git a/appstore_panel/dist/assets/showcase/23.jpg b/appstore_panel/dist/assets/showcase/23.jpg new file mode 100644 index 0000000..0b652eb Binary files /dev/null and b/appstore_panel/dist/assets/showcase/23.jpg differ diff --git a/appstore_panel/dist/assets/showcase/28.jpg b/appstore_panel/dist/assets/showcase/28.jpg new file mode 100644 index 0000000..dfbe0ea Binary files /dev/null and b/appstore_panel/dist/assets/showcase/28.jpg differ diff --git a/appstore_panel/dist/assets/showcase/29.jpg b/appstore_panel/dist/assets/showcase/29.jpg new file mode 100644 index 0000000..ff17943 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/29.jpg differ diff --git a/appstore_panel/dist/assets/showcase/3.jpg b/appstore_panel/dist/assets/showcase/3.jpg new file mode 100644 index 0000000..03ca6d8 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/3.jpg differ diff --git a/appstore_panel/dist/assets/showcase/30.jpg b/appstore_panel/dist/assets/showcase/30.jpg new file mode 100644 index 0000000..b3d8b46 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/30.jpg differ diff --git a/appstore_panel/dist/assets/showcase/31.jpg b/appstore_panel/dist/assets/showcase/31.jpg new file mode 100644 index 0000000..9a7aed2 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/31.jpg differ diff --git a/appstore_panel/dist/assets/showcase/32.jpg b/appstore_panel/dist/assets/showcase/32.jpg new file mode 100644 index 0000000..f021485 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/32.jpg differ diff --git a/appstore_panel/dist/assets/showcase/33.jpg b/appstore_panel/dist/assets/showcase/33.jpg new file mode 100644 index 0000000..d911009 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/33.jpg differ diff --git a/appstore_panel/dist/assets/showcase/34.jpg b/appstore_panel/dist/assets/showcase/34.jpg new file mode 100644 index 0000000..25542c6 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/34.jpg differ diff --git a/appstore_panel/dist/assets/showcase/35.png b/appstore_panel/dist/assets/showcase/35.png new file mode 100644 index 0000000..a1a60d0 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/35.png differ diff --git a/appstore_panel/dist/assets/showcase/37.png b/appstore_panel/dist/assets/showcase/37.png new file mode 100644 index 0000000..e500473 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/37.png differ diff --git a/appstore_panel/dist/assets/showcase/38.png b/appstore_panel/dist/assets/showcase/38.png new file mode 100644 index 0000000..ed73d06 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/38.png differ diff --git a/appstore_panel/dist/assets/showcase/39.png b/appstore_panel/dist/assets/showcase/39.png new file mode 100644 index 0000000..a27d194 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/39.png differ diff --git a/appstore_panel/dist/assets/showcase/4.jpg b/appstore_panel/dist/assets/showcase/4.jpg new file mode 100644 index 0000000..c218e71 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/4.jpg differ diff --git a/appstore_panel/dist/assets/showcase/40.png b/appstore_panel/dist/assets/showcase/40.png new file mode 100644 index 0000000..8a3ed1e Binary files /dev/null and b/appstore_panel/dist/assets/showcase/40.png differ diff --git a/appstore_panel/dist/assets/showcase/41.png b/appstore_panel/dist/assets/showcase/41.png new file mode 100644 index 0000000..112603a Binary files /dev/null and b/appstore_panel/dist/assets/showcase/41.png differ diff --git a/appstore_panel/dist/assets/showcase/42.png b/appstore_panel/dist/assets/showcase/42.png new file mode 100644 index 0000000..e681452 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/42.png differ diff --git a/appstore_panel/dist/assets/showcase/43.png b/appstore_panel/dist/assets/showcase/43.png new file mode 100644 index 0000000..66e731e Binary files /dev/null and b/appstore_panel/dist/assets/showcase/43.png differ diff --git a/appstore_panel/dist/assets/showcase/44.jpg b/appstore_panel/dist/assets/showcase/44.jpg new file mode 100644 index 0000000..870781d Binary files /dev/null and b/appstore_panel/dist/assets/showcase/44.jpg differ diff --git a/appstore_panel/dist/assets/showcase/5.jpg b/appstore_panel/dist/assets/showcase/5.jpg new file mode 100644 index 0000000..1c722c5 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/5.jpg differ diff --git a/appstore_panel/dist/assets/showcase/6.jpg b/appstore_panel/dist/assets/showcase/6.jpg new file mode 100644 index 0000000..0ba18d6 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/6.jpg differ diff --git a/appstore_panel/dist/assets/showcase/7.jpg b/appstore_panel/dist/assets/showcase/7.jpg new file mode 100644 index 0000000..822286a Binary files /dev/null and b/appstore_panel/dist/assets/showcase/7.jpg differ diff --git a/appstore_panel/dist/assets/showcase/8.jpg b/appstore_panel/dist/assets/showcase/8.jpg new file mode 100644 index 0000000..96c4649 Binary files /dev/null and b/appstore_panel/dist/assets/showcase/8.jpg differ diff --git a/appstore_panel/dist/assets/showcase/9.jpg b/appstore_panel/dist/assets/showcase/9.jpg new file mode 100644 index 0000000..aff927c Binary files /dev/null and b/appstore_panel/dist/assets/showcase/9.jpg differ diff --git a/appstore_panel/dist/bundle.js b/appstore_panel/dist/bundle.js index c1df22f..3b12eb8 100644 --- a/appstore_panel/dist/bundle.js +++ b/appstore_panel/dist/bundle.js @@ -22,7 +22,7 @@ * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */(function(e){function o(en,Yr){var So=en.length;en.push(Yr);e:for(;0>>1,Ir=en[Er];if(0<$(Ir,Yr))en[Er]=Yr,en[So]=Ir,So=Er;else break e}}function s(en){return en.length===0?null:en[0]}function a(en){if(en.length===0)return null;var Yr=en[0],So=en.pop();if(So!==Yr){en[0]=So;e:for(var Er=0,Ir=en.length,Zr=Ir>>>1;Er$(_n,So))zo$(Xo,_n)?(en[Er]=Xo,en[zo]=So,Er=zo):(en[Er]=_n,en[tn]=So,Er=tn);else if(zo$(Xo,So))en[Er]=Xo,en[zo]=So,Er=zo;else break e}}return Yr}function $(en,Yr){var So=en.sortIndex-Yr.sortIndex;return So!==0?So:en.id-Yr.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var nt=Date,at=nt.now();e.unstable_now=function(){return nt.now()-at}}var lt=[],et=[],it=1,st=null,ct=3,ft=!1,pt=!1,gt=!1,wt=typeof setTimeout=="function"?setTimeout:null,vt=typeof clearTimeout=="function"?clearTimeout:null,_t=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function $t(en){for(var Yr=s(et);Yr!==null;){if(Yr.callback===null)a(et);else if(Yr.startTime<=en)a(et),Yr.sortIndex=Yr.expirationTime,o(lt,Yr);else break;Yr=s(et)}}function Pt(en){if(gt=!1,$t(en),!pt)if(s(lt)!==null)pt=!0,$o(Nt);else{var Yr=s(et);Yr!==null&&On(Pt,Yr.startTime-en)}}function Nt(en,Yr){pt=!1,gt&&(gt=!1,vt(Wt),Wt=-1),ft=!0;var So=ct;try{for($t(Yr),st=s(lt);st!==null&&(!(st.expirationTime>Yr)||en&&!_o());){var Er=st.callback;if(typeof Er=="function"){st.callback=null,ct=st.priorityLevel;var Ir=Er(st.expirationTime<=Yr);Yr=e.unstable_now(),typeof Ir=="function"?st.callback=Ir:st===s(lt)&&a(lt),$t(Yr)}else a(lt);st=s(lt)}if(st!==null)var Zr=!0;else{var tn=s(et);tn!==null&&On(Pt,tn.startTime-Yr),Zr=!1}return Zr}finally{st=null,ct=So,ft=!1}}var Lt=!1,Ft=null,Wt=-1,_r=5,vr=-1;function _o(){return!(e.unstable_now()-vr<_r)}function Jt(){if(Ft!==null){var en=e.unstable_now();vr=en;var Yr=!0;try{Yr=Ft(!0,en)}finally{Yr?Kr():(Lt=!1,Ft=null)}}else Lt=!1}var Kr;if(typeof _t=="function")Kr=function(){_t(Jt)};else if(typeof MessageChannel<"u"){var Ot=new MessageChannel,gr=Ot.port2;Ot.port1.onmessage=Jt,Kr=function(){gr.postMessage(null)}}else Kr=function(){wt(Jt,0)};function $o(en){Ft=en,Lt||(Lt=!0,Kr())}function On(en,Yr){Wt=wt(function(){en(e.unstable_now())},Yr)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(en){en.callback=null},e.unstable_continueExecution=function(){pt||ft||(pt=!0,$o(Nt))},e.unstable_forceFrameRate=function(en){0>en||125Er?(en.sortIndex=So,o(et,en),s(lt)===null&&en===s(et)&&(gt?(vt(Wt),Wt=-1):gt=!0,On(Pt,So-Er))):(en.sortIndex=Ir,o(lt,en),pt||ft||(pt=!0,$o(Nt))),en},e.unstable_shouldYield=_o,e.unstable_wrapCallback=function(en){var Yr=ct;return function(){var So=ct;ct=Yr;try{return en.apply(this,arguments)}finally{ct=So}}}})(scheduler_production_min);scheduler.exports=scheduler_production_min;var schedulerExports=scheduler.exports;/** + */(function(e){function o(tn,Yr){var So=tn.length;tn.push(Yr);e:for(;0>>1,Lr=tn[Ir];if(0<$(Lr,Yr))tn[Ir]=Yr,tn[So]=Lr,So=Ir;else break e}}function s(tn){return tn.length===0?null:tn[0]}function a(tn){if(tn.length===0)return null;var Yr=tn[0],So=tn.pop();if(So!==Yr){tn[0]=So;e:for(var Ir=0,Lr=tn.length,Zr=Lr>>>1;Ir$(nn,So))Fo$(Ko,nn)?(tn[Ir]=Ko,tn[Fo]=So,Ir=Fo):(tn[Ir]=nn,tn[rn]=So,Ir=rn);else if(Fo$(Ko,So))tn[Ir]=Ko,tn[Fo]=So,Ir=Fo;else break e}}return Yr}function $(tn,Yr){var So=tn.sortIndex-Yr.sortIndex;return So!==0?So:tn.id-Yr.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var nt=Date,at=nt.now();e.unstable_now=function(){return nt.now()-at}}var lt=[],et=[],it=1,st=null,ct=3,ft=!1,pt=!1,gt=!1,wt=typeof setTimeout=="function"?setTimeout:null,vt=typeof clearTimeout=="function"?clearTimeout:null,_t=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function $t(tn){for(var Yr=s(et);Yr!==null;){if(Yr.callback===null)a(et);else if(Yr.startTime<=tn)a(et),Yr.sortIndex=Yr.expirationTime,o(lt,Yr);else break;Yr=s(et)}}function Pt(tn){if(gt=!1,$t(tn),!pt)if(s(lt)!==null)pt=!0,$o(Nt);else{var Yr=s(et);Yr!==null&&On(Pt,Yr.startTime-tn)}}function Nt(tn,Yr){pt=!1,gt&&(gt=!1,vt(Wt),Wt=-1),ft=!0;var So=ct;try{for($t(Yr),st=s(lt);st!==null&&(!(st.expirationTime>Yr)||tn&&!_o());){var Ir=st.callback;if(typeof Ir=="function"){st.callback=null,ct=st.priorityLevel;var Lr=Ir(st.expirationTime<=Yr);Yr=e.unstable_now(),typeof Lr=="function"?st.callback=Lr:st===s(lt)&&a(lt),$t(Yr)}else a(lt);st=s(lt)}if(st!==null)var Zr=!0;else{var rn=s(et);rn!==null&&On(Pt,rn.startTime-Yr),Zr=!1}return Zr}finally{st=null,ct=So,ft=!1}}var Lt=!1,Ft=null,Wt=-1,_r=5,vr=-1;function _o(){return!(e.unstable_now()-vr<_r)}function Jt(){if(Ft!==null){var tn=e.unstable_now();vr=tn;var Yr=!0;try{Yr=Ft(!0,tn)}finally{Yr?Kr():(Lt=!1,Ft=null)}}else Lt=!1}var Kr;if(typeof _t=="function")Kr=function(){_t(Jt)};else if(typeof MessageChannel<"u"){var Ot=new MessageChannel,gr=Ot.port2;Ot.port1.onmessage=Jt,Kr=function(){gr.postMessage(null)}}else Kr=function(){wt(Jt,0)};function $o(tn){Ft=tn,Lt||(Lt=!0,Kr())}function On(tn,Yr){Wt=wt(function(){tn(e.unstable_now())},Yr)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(tn){tn.callback=null},e.unstable_continueExecution=function(){pt||ft||(pt=!0,$o(Nt))},e.unstable_forceFrameRate=function(tn){0>tn||125Ir?(tn.sortIndex=So,o(et,tn),s(lt)===null&&tn===s(et)&&(gt?(vt(Wt),Wt=-1):gt=!0,On(Pt,So-Ir))):(tn.sortIndex=Lr,o(lt,tn),pt||ft||(pt=!0,$o(Nt))),tn},e.unstable_shouldYield=_o,e.unstable_wrapCallback=function(tn){var Yr=ct;return function(){var So=ct;ct=Yr;try{return tn.apply(this,arguments)}finally{ct=So}}}})(scheduler_production_min);scheduler.exports=scheduler_production_min;var schedulerExports=scheduler.exports;/** * @license React * react-dom.production.min.js * @@ -46,7 +46,7 @@ Error generating stack: `+c.message+` `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(o){return o instanceof this?o:new this(o)}static concat(o,...s){const a=new this(o);return s.forEach($=>a.set($)),a}static accessor(o){const a=(this[$internals]=this[$internals]={accessors:{}}).accessors,$=this.prototype;function c(nt){const at=normalizeHeader(nt);a[at]||(buildAccessors($,nt),a[at]=!0)}return utils$1.isArray(o)?o.forEach(c):c(o),this}}AxiosHeaders.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);utils$1.reduceDescriptors(AxiosHeaders.prototype,({value:e},o)=>{let s=o[0].toUpperCase()+o.slice(1);return{get:()=>e,set(a){this[s]=a}}});utils$1.freezeMethods(AxiosHeaders);function transformData(e,o){const s=this||defaults$2,a=o||s,$=AxiosHeaders.from(a.headers);let c=a.data;return utils$1.forEach(e,function(at){c=at.call(s,c,$.normalize(),o?o.status:void 0)}),$.normalize(),c}function isCancel(e){return!!(e&&e.__CANCEL__)}function CanceledError(e,o,s){AxiosError.call(this,e??"canceled",AxiosError.ERR_CANCELED,o,s),this.name="CanceledError"}utils$1.inherits(CanceledError,AxiosError,{__CANCEL__:!0});function settle(e,o,s){const a=s.config.validateStatus;!s.status||!a||a(s.status)?e(s):o(new AxiosError("Request failed with status code "+s.status,[AxiosError.ERR_BAD_REQUEST,AxiosError.ERR_BAD_RESPONSE][Math.floor(s.status/100)-4],s.config,s.request,s))}function parseProtocol(e){const o=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return o&&o[1]||""}function speedometer(e,o){e=e||10;const s=new Array(e),a=new Array(e);let $=0,c=0,nt;return o=o!==void 0?o:1e3,function(lt){const et=Date.now(),it=a[c];nt||(nt=et),s[$]=lt,a[$]=et;let st=c,ct=0;for(;st!==$;)ct+=s[st++],st=st%e;if($=($+1)%e,$===c&&(c=(c+1)%e),et-nt{s=it,$=null,c&&(clearTimeout(c),c=null),e.apply(null,et)};return[(...et)=>{const it=Date.now(),st=it-s;st>=a?nt(et,it):($=et,c||(c=setTimeout(()=>{c=null,nt($)},a-st)))},()=>$&&nt($)]}const progressEventReducer=(e,o,s=3)=>{let a=0;const $=speedometer(50,250);return throttle$2(c=>{const nt=c.loaded,at=c.lengthComputable?c.total:void 0,lt=nt-a,et=$(lt),it=nt<=at;a=nt;const st={loaded:nt,total:at,progress:at?nt/at:void 0,bytes:lt,rate:et||void 0,estimated:et&&at&&it?(at-nt)/et:void 0,event:c,lengthComputable:at!=null,[o?"download":"upload"]:!0};e(st)},s)},progressEventDecorator=(e,o)=>{const s=e!=null;return[a=>o[0]({lengthComputable:s,total:e,loaded:a}),o[1]]},asyncDecorator=e=>(...o)=>utils$1.asap(()=>e(...o)),isURLSameOrigin=platform.hasStandardBrowserEnv?function(){const o=platform.navigator&&/(msie|trident)/i.test(platform.navigator.userAgent),s=document.createElement("a");let a;function $(c){let nt=c;return o&&(s.setAttribute("href",nt),nt=s.href),s.setAttribute("href",nt),{href:s.href,protocol:s.protocol?s.protocol.replace(/:$/,""):"",host:s.host,search:s.search?s.search.replace(/^\?/,""):"",hash:s.hash?s.hash.replace(/^#/,""):"",hostname:s.hostname,port:s.port,pathname:s.pathname.charAt(0)==="/"?s.pathname:"/"+s.pathname}}return a=$(window.location.href),function(nt){const at=utils$1.isString(nt)?$(nt):nt;return at.protocol===a.protocol&&at.host===a.host}}():function(){return function(){return!0}}(),cookies=platform.hasStandardBrowserEnv?{write(e,o,s,a,$,c){const nt=[e+"="+encodeURIComponent(o)];utils$1.isNumber(s)&&nt.push("expires="+new Date(s).toGMTString()),utils$1.isString(a)&&nt.push("path="+a),utils$1.isString($)&&nt.push("domain="+$),c===!0&&nt.push("secure"),document.cookie=nt.join("; ")},read(e){const o=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return o?decodeURIComponent(o[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function isAbsoluteURL(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function combineURLs(e,o){return o?e.replace(/\/?\/$/,"")+"/"+o.replace(/^\/+/,""):e}function buildFullPath(e,o){return e&&!isAbsoluteURL(o)?combineURLs(e,o):o}const headersToObject=e=>e instanceof AxiosHeaders?{...e}:e;function mergeConfig(e,o){o=o||{};const s={};function a(et,it,st){return utils$1.isPlainObject(et)&&utils$1.isPlainObject(it)?utils$1.merge.call({caseless:st},et,it):utils$1.isPlainObject(it)?utils$1.merge({},it):utils$1.isArray(it)?it.slice():it}function $(et,it,st){if(utils$1.isUndefined(it)){if(!utils$1.isUndefined(et))return a(void 0,et,st)}else return a(et,it,st)}function c(et,it){if(!utils$1.isUndefined(it))return a(void 0,it)}function nt(et,it){if(utils$1.isUndefined(it)){if(!utils$1.isUndefined(et))return a(void 0,et)}else return a(void 0,it)}function at(et,it,st){if(st in o)return a(et,it);if(st in e)return a(void 0,et)}const lt={url:c,method:c,data:c,baseURL:nt,transformRequest:nt,transformResponse:nt,paramsSerializer:nt,timeout:nt,timeoutMessage:nt,withCredentials:nt,withXSRFToken:nt,adapter:nt,responseType:nt,xsrfCookieName:nt,xsrfHeaderName:nt,onUploadProgress:nt,onDownloadProgress:nt,decompress:nt,maxContentLength:nt,maxBodyLength:nt,beforeRedirect:nt,transport:nt,httpAgent:nt,httpsAgent:nt,cancelToken:nt,socketPath:nt,responseEncoding:nt,validateStatus:at,headers:(et,it)=>$(headersToObject(et),headersToObject(it),!0)};return utils$1.forEach(Object.keys(Object.assign({},e,o)),function(it){const st=lt[it]||$,ct=st(e[it],o[it],it);utils$1.isUndefined(ct)&&st!==at||(s[it]=ct)}),s}const resolveConfig=e=>{const o=mergeConfig({},e);let{data:s,withXSRFToken:a,xsrfHeaderName:$,xsrfCookieName:c,headers:nt,auth:at}=o;o.headers=nt=AxiosHeaders.from(nt),o.url=buildURL(buildFullPath(o.baseURL,o.url),e.params,e.paramsSerializer),at&&nt.set("Authorization","Basic "+btoa((at.username||"")+":"+(at.password?unescape(encodeURIComponent(at.password)):"")));let lt;if(utils$1.isFormData(s)){if(platform.hasStandardBrowserEnv||platform.hasStandardBrowserWebWorkerEnv)nt.setContentType(void 0);else if((lt=nt.getContentType())!==!1){const[et,...it]=lt?lt.split(";").map(st=>st.trim()).filter(Boolean):[];nt.setContentType([et||"multipart/form-data",...it].join("; "))}}if(platform.hasStandardBrowserEnv&&(a&&utils$1.isFunction(a)&&(a=a(o)),a||a!==!1&&isURLSameOrigin(o.url))){const et=$&&c&&cookies.read(c);et&&nt.set($,et)}return o},isXHRAdapterSupported=typeof XMLHttpRequest<"u",xhrAdapter=isXHRAdapterSupported&&function(e){return new Promise(function(s,a){const $=resolveConfig(e);let c=$.data;const nt=AxiosHeaders.from($.headers).normalize();let{responseType:at,onUploadProgress:lt,onDownloadProgress:et}=$,it,st,ct,ft,pt;function gt(){ft&&ft(),pt&&pt(),$.cancelToken&&$.cancelToken.unsubscribe(it),$.signal&&$.signal.removeEventListener("abort",it)}let wt=new XMLHttpRequest;wt.open($.method.toUpperCase(),$.url,!0),wt.timeout=$.timeout;function vt(){if(!wt)return;const $t=AxiosHeaders.from("getAllResponseHeaders"in wt&&wt.getAllResponseHeaders()),Nt={data:!at||at==="text"||at==="json"?wt.responseText:wt.response,status:wt.status,statusText:wt.statusText,headers:$t,config:e,request:wt};settle(function(Ft){s(Ft),gt()},function(Ft){a(Ft),gt()},Nt),wt=null}"onloadend"in wt?wt.onloadend=vt:wt.onreadystatechange=function(){!wt||wt.readyState!==4||wt.status===0&&!(wt.responseURL&&wt.responseURL.indexOf("file:")===0)||setTimeout(vt)},wt.onabort=function(){wt&&(a(new AxiosError("Request aborted",AxiosError.ECONNABORTED,e,wt)),wt=null)},wt.onerror=function(){a(new AxiosError("Network Error",AxiosError.ERR_NETWORK,e,wt)),wt=null},wt.ontimeout=function(){let Pt=$.timeout?"timeout of "+$.timeout+"ms exceeded":"timeout exceeded";const Nt=$.transitional||transitionalDefaults;$.timeoutErrorMessage&&(Pt=$.timeoutErrorMessage),a(new AxiosError(Pt,Nt.clarifyTimeoutError?AxiosError.ETIMEDOUT:AxiosError.ECONNABORTED,e,wt)),wt=null},c===void 0&&nt.setContentType(null),"setRequestHeader"in wt&&utils$1.forEach(nt.toJSON(),function(Pt,Nt){wt.setRequestHeader(Nt,Pt)}),utils$1.isUndefined($.withCredentials)||(wt.withCredentials=!!$.withCredentials),at&&at!=="json"&&(wt.responseType=$.responseType),et&&([ct,pt]=progressEventReducer(et,!0),wt.addEventListener("progress",ct)),lt&&wt.upload&&([st,ft]=progressEventReducer(lt),wt.upload.addEventListener("progress",st),wt.upload.addEventListener("loadend",ft)),($.cancelToken||$.signal)&&(it=$t=>{wt&&(a(!$t||$t.type?new CanceledError(null,e,wt):$t),wt.abort(),wt=null)},$.cancelToken&&$.cancelToken.subscribe(it),$.signal&&($.signal.aborted?it():$.signal.addEventListener("abort",it)));const _t=parseProtocol($.url);if(_t&&platform.protocols.indexOf(_t)===-1){a(new AxiosError("Unsupported protocol "+_t+":",AxiosError.ERR_BAD_REQUEST,e));return}wt.send(c||null)})},composeSignals=(e,o)=>{const{length:s}=e=e?e.filter(Boolean):[];if(o||s){let a=new AbortController,$;const c=function(et){if(!$){$=!0,at();const it=et instanceof Error?et:this.reason;a.abort(it instanceof AxiosError?it:new CanceledError(it instanceof Error?it.message:it))}};let nt=o&&setTimeout(()=>{nt=null,c(new AxiosError(`timeout ${o} of ms exceeded`,AxiosError.ETIMEDOUT))},o);const at=()=>{e&&(nt&&clearTimeout(nt),nt=null,e.forEach(et=>{et.unsubscribe?et.unsubscribe(c):et.removeEventListener("abort",c)}),e=null)};e.forEach(et=>et.addEventListener("abort",c));const{signal:lt}=a;return lt.unsubscribe=()=>utils$1.asap(at),lt}},streamChunk=function*(e,o){let s=e.byteLength;if(s{const $=readBytes(e,o);let c=0,nt,at=lt=>{nt||(nt=!0,a&&a(lt))};return new ReadableStream({async pull(lt){try{const{done:et,value:it}=await $.next();if(et){at(),lt.close();return}let st=it.byteLength;if(s){let ct=c+=st;s(ct)}lt.enqueue(new Uint8Array(it))}catch(et){throw at(et),et}},cancel(lt){return at(lt),$.return()}},{highWaterMark:2})},isFetchSupported=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",isReadableStreamSupported=isFetchSupported&&typeof ReadableStream=="function",encodeText=isFetchSupported&&(typeof TextEncoder=="function"?(e=>o=>e.encode(o))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),test=(e,...o)=>{try{return!!e(...o)}catch{return!1}},supportsRequestStream=isReadableStreamSupported&&test(()=>{let e=!1;const o=new Request(platform.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!o}),DEFAULT_CHUNK_SIZE=64*1024,supportsResponseStream=isReadableStreamSupported&&test(()=>utils$1.isReadableStream(new Response("").body)),resolvers={stream:supportsResponseStream&&(e=>e.body)};isFetchSupported&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(o=>{!resolvers[o]&&(resolvers[o]=utils$1.isFunction(e[o])?s=>s[o]():(s,a)=>{throw new AxiosError(`Response type '${o}' is not supported`,AxiosError.ERR_NOT_SUPPORT,a)})})})(new Response);const getBodyLength=async e=>{if(e==null)return 0;if(utils$1.isBlob(e))return e.size;if(utils$1.isSpecCompliantForm(e))return(await new Request(platform.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(utils$1.isArrayBufferView(e)||utils$1.isArrayBuffer(e))return e.byteLength;if(utils$1.isURLSearchParams(e)&&(e=e+""),utils$1.isString(e))return(await encodeText(e)).byteLength},resolveBodyLength=async(e,o)=>{const s=utils$1.toFiniteNumber(e.getContentLength());return s??getBodyLength(o)},fetchAdapter=isFetchSupported&&(async e=>{let{url:o,method:s,data:a,signal:$,cancelToken:c,timeout:nt,onDownloadProgress:at,onUploadProgress:lt,responseType:et,headers:it,withCredentials:st="same-origin",fetchOptions:ct}=resolveConfig(e);et=et?(et+"").toLowerCase():"text";let ft=composeSignals([$,c&&c.toAbortSignal()],nt),pt;const gt=ft&&ft.unsubscribe&&(()=>{ft.unsubscribe()});let wt;try{if(lt&&supportsRequestStream&&s!=="get"&&s!=="head"&&(wt=await resolveBodyLength(it,a))!==0){let Nt=new Request(o,{method:"POST",body:a,duplex:"half"}),Lt;if(utils$1.isFormData(a)&&(Lt=Nt.headers.get("content-type"))&&it.setContentType(Lt),Nt.body){const[Ft,Wt]=progressEventDecorator(wt,progressEventReducer(asyncDecorator(lt)));a=trackStream(Nt.body,DEFAULT_CHUNK_SIZE,Ft,Wt)}}utils$1.isString(st)||(st=st?"include":"omit");const vt="credentials"in Request.prototype;pt=new Request(o,{...ct,signal:ft,method:s.toUpperCase(),headers:it.normalize().toJSON(),body:a,duplex:"half",credentials:vt?st:void 0});let _t=await fetch(pt);const $t=supportsResponseStream&&(et==="stream"||et==="response");if(supportsResponseStream&&(at||$t&>)){const Nt={};["status","statusText","headers"].forEach(_r=>{Nt[_r]=_t[_r]});const Lt=utils$1.toFiniteNumber(_t.headers.get("content-length")),[Ft,Wt]=at&&progressEventDecorator(Lt,progressEventReducer(asyncDecorator(at),!0))||[];_t=new Response(trackStream(_t.body,DEFAULT_CHUNK_SIZE,Ft,()=>{Wt&&Wt(),gt&>()}),Nt)}et=et||"text";let Pt=await resolvers[utils$1.findKey(resolvers,et)||"text"](_t,e);return!$t&>&>(),await new Promise((Nt,Lt)=>{settle(Nt,Lt,{data:Pt,headers:AxiosHeaders.from(_t.headers),status:_t.status,statusText:_t.statusText,config:e,request:pt})})}catch(vt){throw gt&>(),vt&&vt.name==="TypeError"&&/fetch/i.test(vt.message)?Object.assign(new AxiosError("Network Error",AxiosError.ERR_NETWORK,e,pt),{cause:vt.cause||vt}):AxiosError.from(vt,vt&&vt.code,e,pt)}}),knownAdapters={http:httpAdapter,xhr:xhrAdapter,fetch:fetchAdapter};utils$1.forEach(knownAdapters,(e,o)=>{if(e){try{Object.defineProperty(e,"name",{value:o})}catch{}Object.defineProperty(e,"adapterName",{value:o})}});const renderReason=e=>`- ${e}`,isResolvedHandle=e=>utils$1.isFunction(e)||e===null||e===!1,adapters={getAdapter:e=>{e=utils$1.isArray(e)?e:[e];const{length:o}=e;let s,a;const $={};for(let c=0;c`adapter ${at} `+(lt===!1?"is not supported by the environment":"is not available in the build"));let nt=o?c.length>1?`since : `+c.map(renderReason).join(` `):" "+renderReason(c[0]):"as no adapter specified";throw new AxiosError("There is no suitable adapter to dispatch the request "+nt,"ERR_NOT_SUPPORT")}return a},adapters:knownAdapters};function throwIfCancellationRequested(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new CanceledError(null,e)}function dispatchRequest(e){return throwIfCancellationRequested(e),e.headers=AxiosHeaders.from(e.headers),e.data=transformData.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),adapters.getAdapter(e.adapter||defaults$2.adapter)(e).then(function(a){return throwIfCancellationRequested(e),a.data=transformData.call(e,e.transformResponse,a),a.headers=AxiosHeaders.from(a.headers),a},function(a){return isCancel(a)||(throwIfCancellationRequested(e),a&&a.response&&(a.response.data=transformData.call(e,e.transformResponse,a.response),a.response.headers=AxiosHeaders.from(a.response.headers))),Promise.reject(a)})}const VERSION$1="1.7.7",validators$1={};["object","boolean","number","function","string","symbol"].forEach((e,o)=>{validators$1[e]=function(a){return typeof a===e||"a"+(o<1?"n ":" ")+e}});const deprecatedWarnings={};validators$1.transitional=function(o,s,a){function $(c,nt){return"[Axios v"+VERSION$1+"] Transitional option '"+c+"'"+nt+(a?". "+a:"")}return(c,nt,at)=>{if(o===!1)throw new AxiosError($(nt," has been removed"+(s?" in "+s:"")),AxiosError.ERR_DEPRECATED);return s&&!deprecatedWarnings[nt]&&(deprecatedWarnings[nt]=!0,console.warn($(nt," has been deprecated since v"+s+" and will be removed in the near future"))),o?o(c,nt,at):!0}};function assertOptions(e,o,s){if(typeof e!="object")throw new AxiosError("options must be an object",AxiosError.ERR_BAD_OPTION_VALUE);const a=Object.keys(e);let $=a.length;for(;$-- >0;){const c=a[$],nt=o[c];if(nt){const at=e[c],lt=at===void 0||nt(at,c,e);if(lt!==!0)throw new AxiosError("option "+c+" must be "+lt,AxiosError.ERR_BAD_OPTION_VALUE);continue}if(s!==!0)throw new AxiosError("Unknown option "+c,AxiosError.ERR_BAD_OPTION)}}const validator={assertOptions,validators:validators$1},validators=validator.validators;class Axios{constructor(o){this.defaults=o,this.interceptors={request:new InterceptorManager,response:new InterceptorManager}}async request(o,s){try{return await this._request(o,s)}catch(a){if(a instanceof Error){let $;Error.captureStackTrace?Error.captureStackTrace($={}):$=new Error;const c=$.stack?$.stack.replace(/^.+\n/,""):"";try{a.stack?c&&!String(a.stack).endsWith(c.replace(/^.+\n.+\n/,""))&&(a.stack+=` -`+c):a.stack=c}catch{}}throw a}}_request(o,s){typeof o=="string"?(s=s||{},s.url=o):s=o||{},s=mergeConfig(this.defaults,s);const{transitional:a,paramsSerializer:$,headers:c}=s;a!==void 0&&validator.assertOptions(a,{silentJSONParsing:validators.transitional(validators.boolean),forcedJSONParsing:validators.transitional(validators.boolean),clarifyTimeoutError:validators.transitional(validators.boolean)},!1),$!=null&&(utils$1.isFunction($)?s.paramsSerializer={serialize:$}:validator.assertOptions($,{encode:validators.function,serialize:validators.function},!0)),s.method=(s.method||this.defaults.method||"get").toLowerCase();let nt=c&&utils$1.merge(c.common,c[s.method]);c&&utils$1.forEach(["delete","get","head","post","put","patch","common"],pt=>{delete c[pt]}),s.headers=AxiosHeaders.concat(nt,c);const at=[];let lt=!0;this.interceptors.request.forEach(function(gt){typeof gt.runWhen=="function"&>.runWhen(s)===!1||(lt=lt&>.synchronous,at.unshift(gt.fulfilled,gt.rejected))});const et=[];this.interceptors.response.forEach(function(gt){et.push(gt.fulfilled,gt.rejected)});let it,st=0,ct;if(!lt){const pt=[dispatchRequest.bind(this),void 0];for(pt.unshift.apply(pt,at),pt.push.apply(pt,et),ct=pt.length,it=Promise.resolve(s);st{if(!a._listeners)return;let c=a._listeners.length;for(;c-- >0;)a._listeners[c]($);a._listeners=null}),this.promise.then=$=>{let c;const nt=new Promise(at=>{a.subscribe(at),c=at}).then($);return nt.cancel=function(){a.unsubscribe(c)},nt},o(function(c,nt,at){a.reason||(a.reason=new CanceledError(c,nt,at),s(a.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(o){if(this.reason){o(this.reason);return}this._listeners?this._listeners.push(o):this._listeners=[o]}unsubscribe(o){if(!this._listeners)return;const s=this._listeners.indexOf(o);s!==-1&&this._listeners.splice(s,1)}toAbortSignal(){const o=new AbortController,s=a=>{o.abort(a)};return this.subscribe(s),o.signal.unsubscribe=()=>this.unsubscribe(s),o.signal}static source(){let o;return{token:new CancelToken(function($){o=$}),cancel:o}}}function spread(e){return function(s){return e.apply(null,s)}}function isAxiosError(e){return utils$1.isObject(e)&&e.isAxiosError===!0}const HttpStatusCode={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HttpStatusCode).forEach(([e,o])=>{HttpStatusCode[o]=e});function createInstance(e){const o=new Axios(e),s=bind$1(Axios.prototype.request,o);return utils$1.extend(s,Axios.prototype,o,{allOwnKeys:!0}),utils$1.extend(s,o,null,{allOwnKeys:!0}),s.create=function($){return createInstance(mergeConfig(e,$))},s}const axios=createInstance(defaults$2);axios.Axios=Axios;axios.CanceledError=CanceledError;axios.CancelToken=CancelToken;axios.isCancel=isCancel;axios.VERSION=VERSION$1;axios.toFormData=toFormData;axios.AxiosError=AxiosError;axios.Cancel=axios.CanceledError;axios.all=function(o){return Promise.all(o)};axios.spread=spread;axios.isAxiosError=isAxiosError;axios.mergeConfig=mergeConfig;axios.AxiosHeaders=AxiosHeaders;axios.formToJSON=e=>formDataToJSON(utils$1.isHTMLForm(e)?new FormData(e):e);axios.getAdapter=adapters.getAdapter;axios.HttpStatusCode=HttpStatusCode;axios.default=axios;var define_process_env_default={};let env=null;try{process==null||define_process_env_default==null?env=import.meta:env=define_process_env_default}catch{env={VITE_API_BASE_URL:"http://localhost/api/",VITE_WEB_SITE:"/appstore_panel/dist",VITE_MARKETPLACE_SITE:"http://localhost",VITE_APP_BASE_URL:"/appstore_panel/dist"}}env.GITHUB_CLIENT_ID;const API_BASE_URL=env.VITE_API_BASE_URL||"https://huaxiaobao.net/api/",WEB_SITE=env.VITE_WEB_SITE||"https://huaxiaobao.net",MARKETPLACE_SITE=env.VITE_MARKETPLACE_SITE||"https://huaxiaobao.net",MARKET_API_BASE_URL=MARKETPLACE_SITE+"/api";env.GOOGLE_ANALYTICS_MEASUREMENT_ID;env.GOOGLE_ANALYTICS_API_SECRET;env.NEXT_PUBLIC_MIXPANEL_AUTH_ID;const baseUrl=()=>API_BASE_URL,api=axios.create({baseURL:API_BASE_URL,headers:{common:{"Content-Type":"application/json"}},proxy:{host:"http://www.huaxiaobao.net",port:8081}});axios.create({baseURL:MARKET_API_BASE_URL,headers:{common:{"Content-Type":"application/json"}}});api.interceptors.request.use(e=>{if(typeof window<"u"){let o=api$1.get("accessToken");o||(o=localStorage.getItem("accessTokenHuaxiaobao")),console.log(o,"we have the this token"),o!=null&&o!=""&&(e.headers.Authorization=`Bearer ${o}`)}return e});function commonjsRequire(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var jszip_min={exports:{}};/*! +`+c):a.stack=c}catch{}}throw a}}_request(o,s){typeof o=="string"?(s=s||{},s.url=o):s=o||{},s=mergeConfig(this.defaults,s);const{transitional:a,paramsSerializer:$,headers:c}=s;a!==void 0&&validator.assertOptions(a,{silentJSONParsing:validators.transitional(validators.boolean),forcedJSONParsing:validators.transitional(validators.boolean),clarifyTimeoutError:validators.transitional(validators.boolean)},!1),$!=null&&(utils$1.isFunction($)?s.paramsSerializer={serialize:$}:validator.assertOptions($,{encode:validators.function,serialize:validators.function},!0)),s.method=(s.method||this.defaults.method||"get").toLowerCase();let nt=c&&utils$1.merge(c.common,c[s.method]);c&&utils$1.forEach(["delete","get","head","post","put","patch","common"],pt=>{delete c[pt]}),s.headers=AxiosHeaders.concat(nt,c);const at=[];let lt=!0;this.interceptors.request.forEach(function(gt){typeof gt.runWhen=="function"&>.runWhen(s)===!1||(lt=lt&>.synchronous,at.unshift(gt.fulfilled,gt.rejected))});const et=[];this.interceptors.response.forEach(function(gt){et.push(gt.fulfilled,gt.rejected)});let it,st=0,ct;if(!lt){const pt=[dispatchRequest.bind(this),void 0];for(pt.unshift.apply(pt,at),pt.push.apply(pt,et),ct=pt.length,it=Promise.resolve(s);st{if(!a._listeners)return;let c=a._listeners.length;for(;c-- >0;)a._listeners[c]($);a._listeners=null}),this.promise.then=$=>{let c;const nt=new Promise(at=>{a.subscribe(at),c=at}).then($);return nt.cancel=function(){a.unsubscribe(c)},nt},o(function(c,nt,at){a.reason||(a.reason=new CanceledError(c,nt,at),s(a.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(o){if(this.reason){o(this.reason);return}this._listeners?this._listeners.push(o):this._listeners=[o]}unsubscribe(o){if(!this._listeners)return;const s=this._listeners.indexOf(o);s!==-1&&this._listeners.splice(s,1)}toAbortSignal(){const o=new AbortController,s=a=>{o.abort(a)};return this.subscribe(s),o.signal.unsubscribe=()=>this.unsubscribe(s),o.signal}static source(){let o;return{token:new CancelToken(function($){o=$}),cancel:o}}}function spread(e){return function(s){return e.apply(null,s)}}function isAxiosError(e){return utils$1.isObject(e)&&e.isAxiosError===!0}const HttpStatusCode={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HttpStatusCode).forEach(([e,o])=>{HttpStatusCode[o]=e});function createInstance(e){const o=new Axios(e),s=bind$1(Axios.prototype.request,o);return utils$1.extend(s,Axios.prototype,o,{allOwnKeys:!0}),utils$1.extend(s,o,null,{allOwnKeys:!0}),s.create=function($){return createInstance(mergeConfig(e,$))},s}const axios=createInstance(defaults$2);axios.Axios=Axios;axios.CanceledError=CanceledError;axios.CancelToken=CancelToken;axios.isCancel=isCancel;axios.VERSION=VERSION$1;axios.toFormData=toFormData;axios.AxiosError=AxiosError;axios.Cancel=axios.CanceledError;axios.all=function(o){return Promise.all(o)};axios.spread=spread;axios.isAxiosError=isAxiosError;axios.mergeConfig=mergeConfig;axios.AxiosHeaders=AxiosHeaders;axios.formToJSON=e=>formDataToJSON(utils$1.isHTMLForm(e)?new FormData(e):e);axios.getAdapter=adapters.getAdapter;axios.HttpStatusCode=HttpStatusCode;axios.default=axios;var define_process_env_default={};let env=null;try{process==null||define_process_env_default==null?env=import.meta:env=define_process_env_default}catch{env={VITE_API_BASE_URL:"http://localhost/api/",VITE_WEB_SITE:"/appstore_panel/dist",VITE_MARKETPLACE_SITE:"http://localhost"},env={}}env.GITHUB_CLIENT_ID;const API_BASE_URL=env.VITE_API_BASE_URL||"https://huaxiaobao.net/api/",WEB_SITE=env.VITE_WEB_SITE||"https://huaxiaobao.net",MARKETPLACE_SITE=env.VITE_MARKETPLACE_SITE||"https://huaxiaobao.net",MARKET_API_BASE_URL=MARKETPLACE_SITE+"/api";env.GOOGLE_ANALYTICS_MEASUREMENT_ID;env.GOOGLE_ANALYTICS_API_SECRET;env.NEXT_PUBLIC_MIXPANEL_AUTH_ID;const baseUrl=()=>API_BASE_URL,api=axios.create({baseURL:API_BASE_URL,headers:{common:{"Content-Type":"application/json"}},proxy:{host:"http://www.huaxiaobao.net",port:8081}});axios.create({baseURL:MARKET_API_BASE_URL,headers:{common:{"Content-Type":"application/json"}}});api.interceptors.request.use(e=>{if(typeof window<"u"){let o=api$1.get("accessToken");o||(o=localStorage.getItem("accessTokenHuaxiaobao")),o!=null&&o!=""&&(e.headers.Authorization=`Bearer ${o}`)}return e});function commonjsRequire(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var jszip_min={exports:{}};/*! JSZip v3.10.1 - A JavaScript class for generating and reading zip files @@ -56,8 +56,8 @@ Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/js JSZip uses the library pako released under the MIT license : https://github.com/nodeca/pako/blob/main/LICENSE -*/(function(e,o){(function(s){e.exports=s()})(function(){return function s(a,$,c){function nt(et,it){if(!$[et]){if(!a[et]){var st=typeof commonjsRequire=="function"&&commonjsRequire;if(!it&&st)return st(et,!0);if(at)return at(et,!0);var ct=new Error("Cannot find module '"+et+"'");throw ct.code="MODULE_NOT_FOUND",ct}var ft=$[et]={exports:{}};a[et][0].call(ft.exports,function(pt){var gt=a[et][1][pt];return nt(gt||pt)},ft,ft.exports,s,a,$,c)}return $[et].exports}for(var at=typeof commonjsRequire=="function"&&commonjsRequire,lt=0;lt>2,ft=(3&et)<<4|it>>4,pt=1<$t?(15&it)<<2|st>>6:64,gt=2<$t?63&st:64,wt.push(at.charAt(ct)+at.charAt(ft)+at.charAt(pt)+at.charAt(gt));return wt.join("")},$.decode=function(lt){var et,it,st,ct,ft,pt,gt=0,wt=0,vt="data:";if(lt.substr(0,vt.length)===vt)throw new Error("Invalid base64 input, it looks like a data url.");var _t,$t=3*(lt=lt.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(lt.charAt(lt.length-1)===at.charAt(64)&&$t--,lt.charAt(lt.length-2)===at.charAt(64)&&$t--,$t%1!=0)throw new Error("Invalid base64 input, bad content length.");for(_t=nt.uint8array?new Uint8Array(0|$t):new Array(0|$t);gt>4,it=(15&ct)<<4|(ft=at.indexOf(lt.charAt(gt++)))>>2,st=(3&ft)<<6|(pt=at.indexOf(lt.charAt(gt++))),_t[wt++]=et,ft!==64&&(_t[wt++]=it),pt!==64&&(_t[wt++]=st);return _t}},{"./support":30,"./utils":32}],2:[function(s,a,$){var c=s("./external"),nt=s("./stream/DataWorker"),at=s("./stream/Crc32Probe"),lt=s("./stream/DataLengthProbe");function et(it,st,ct,ft,pt){this.compressedSize=it,this.uncompressedSize=st,this.crc32=ct,this.compression=ft,this.compressedContent=pt}et.prototype={getContentWorker:function(){var it=new nt(c.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new lt("data_length")),st=this;return it.on("end",function(){if(this.streamInfo.data_length!==st.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),it},getCompressedWorker:function(){return new nt(c.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},et.createWorkerFrom=function(it,st,ct){return it.pipe(new at).pipe(new lt("uncompressedSize")).pipe(st.compressWorker(ct)).pipe(new lt("compressedSize")).withStreamInfo("compression",st)},a.exports=et},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(s,a,$){var c=s("./stream/GenericWorker");$.STORE={magic:"\0\0",compressWorker:function(){return new c("STORE compression")},uncompressWorker:function(){return new c("STORE decompression")}},$.DEFLATE=s("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(s,a,$){var c=s("./utils"),nt=function(){for(var at,lt=[],et=0;et<256;et++){at=et;for(var it=0;it<8;it++)at=1&at?3988292384^at>>>1:at>>>1;lt[et]=at}return lt}();a.exports=function(at,lt){return at!==void 0&&at.length?c.getTypeOf(at)!=="string"?function(et,it,st,ct){var ft=nt,pt=ct+st;et^=-1;for(var gt=ct;gt>>8^ft[255&(et^it[gt])];return-1^et}(0|lt,at,at.length,0):function(et,it,st,ct){var ft=nt,pt=ct+st;et^=-1;for(var gt=ct;gt>>8^ft[255&(et^it.charCodeAt(gt))];return-1^et}(0|lt,at,at.length,0):0}},{"./utils":32}],5:[function(s,a,$){$.base64=!1,$.binary=!1,$.dir=!1,$.createFolders=!0,$.date=null,$.compression=null,$.compressionOptions=null,$.comment=null,$.unixPermissions=null,$.dosPermissions=null},{}],6:[function(s,a,$){var c=null;c=typeof Promise<"u"?Promise:s("lie"),a.exports={Promise:c}},{lie:37}],7:[function(s,a,$){var c=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",nt=s("pako"),at=s("./utils"),lt=s("./stream/GenericWorker"),et=c?"uint8array":"array";function it(st,ct){lt.call(this,"FlateWorker/"+st),this._pako=null,this._pakoAction=st,this._pakoOptions=ct,this.meta={}}$.magic="\b\0",at.inherits(it,lt),it.prototype.processChunk=function(st){this.meta=st.meta,this._pako===null&&this._createPako(),this._pako.push(at.transformTo(et,st.data),!1)},it.prototype.flush=function(){lt.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},it.prototype.cleanUp=function(){lt.prototype.cleanUp.call(this),this._pako=null},it.prototype._createPako=function(){this._pako=new nt[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var st=this;this._pako.onData=function(ct){st.push({data:ct,meta:st.meta})}},$.compressWorker=function(st){return new it("Deflate",st)},$.uncompressWorker=function(){return new it("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(s,a,$){function c(ft,pt){var gt,wt="";for(gt=0;gt>>=8;return wt}function nt(ft,pt,gt,wt,vt,_t){var $t,Pt,Nt=ft.file,Lt=ft.compression,Ft=_t!==et.utf8encode,Wt=at.transformTo("string",_t(Nt.name)),_r=at.transformTo("string",et.utf8encode(Nt.name)),vr=Nt.comment,_o=at.transformTo("string",_t(vr)),Jt=at.transformTo("string",et.utf8encode(vr)),Kr=_r.length!==Nt.name.length,Ot=Jt.length!==vr.length,gr="",$o="",On="",en=Nt.dir,Yr=Nt.date,So={crc32:0,compressedSize:0,uncompressedSize:0};pt&&!gt||(So.crc32=ft.crc32,So.compressedSize=ft.compressedSize,So.uncompressedSize=ft.uncompressedSize);var Er=0;pt&&(Er|=8),Ft||!Kr&&!Ot||(Er|=2048);var Ir=0,Zr=0;en&&(Ir|=16),vt==="UNIX"?(Zr=798,Ir|=function(_n,zo){var Xo=_n;return _n||(Xo=zo?16893:33204),(65535&Xo)<<16}(Nt.unixPermissions,en)):(Zr=20,Ir|=function(_n){return 63&(_n||0)}(Nt.dosPermissions)),$t=Yr.getUTCHours(),$t<<=6,$t|=Yr.getUTCMinutes(),$t<<=5,$t|=Yr.getUTCSeconds()/2,Pt=Yr.getUTCFullYear()-1980,Pt<<=4,Pt|=Yr.getUTCMonth()+1,Pt<<=5,Pt|=Yr.getUTCDate(),Kr&&($o=c(1,1)+c(it(Wt),4)+_r,gr+="up"+c($o.length,2)+$o),Ot&&(On=c(1,1)+c(it(_o),4)+Jt,gr+="uc"+c(On.length,2)+On);var tn="";return tn+=` -\0`,tn+=c(Er,2),tn+=Lt.magic,tn+=c($t,2),tn+=c(Pt,2),tn+=c(So.crc32,4),tn+=c(So.compressedSize,4),tn+=c(So.uncompressedSize,4),tn+=c(Wt.length,2),tn+=c(gr.length,2),{fileRecord:st.LOCAL_FILE_HEADER+tn+Wt+gr,dirRecord:st.CENTRAL_FILE_HEADER+c(Zr,2)+tn+c(_o.length,2)+"\0\0\0\0"+c(Ir,4)+c(wt,4)+Wt+gr+_o}}var at=s("../utils"),lt=s("../stream/GenericWorker"),et=s("../utf8"),it=s("../crc32"),st=s("../signature");function ct(ft,pt,gt,wt){lt.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=pt,this.zipPlatform=gt,this.encodeFileName=wt,this.streamFiles=ft,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}at.inherits(ct,lt),ct.prototype.push=function(ft){var pt=ft.meta.percent||0,gt=this.entriesCount,wt=this._sources.length;this.accumulate?this.contentBuffer.push(ft):(this.bytesWritten+=ft.data.length,lt.prototype.push.call(this,{data:ft.data,meta:{currentFile:this.currentFile,percent:gt?(pt+100*(gt-wt-1))/gt:100}}))},ct.prototype.openedSource=function(ft){this.currentSourceOffset=this.bytesWritten,this.currentFile=ft.file.name;var pt=this.streamFiles&&!ft.file.dir;if(pt){var gt=nt(ft,pt,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:gt.fileRecord,meta:{percent:0}})}else this.accumulate=!0},ct.prototype.closedSource=function(ft){this.accumulate=!1;var pt=this.streamFiles&&!ft.file.dir,gt=nt(ft,pt,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(gt.dirRecord),pt)this.push({data:function(wt){return st.DATA_DESCRIPTOR+c(wt.crc32,4)+c(wt.compressedSize,4)+c(wt.uncompressedSize,4)}(ft),meta:{percent:100}});else for(this.push({data:gt.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},ct.prototype.flush=function(){for(var ft=this.bytesWritten,pt=0;pt=this.index;lt--)et=(et<<8)+this.byteAt(lt);return this.index+=at,et},readString:function(at){return c.transformTo("string",this.readData(at))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var at=this.readInt(4);return new Date(Date.UTC(1980+(at>>25&127),(at>>21&15)-1,at>>16&31,at>>11&31,at>>5&63,(31&at)<<1))}},a.exports=nt},{"../utils":32}],19:[function(s,a,$){var c=s("./Uint8ArrayReader");function nt(at){c.call(this,at)}s("../utils").inherits(nt,c),nt.prototype.readData=function(at){this.checkOffset(at);var lt=this.data.slice(this.zero+this.index,this.zero+this.index+at);return this.index+=at,lt},a.exports=nt},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(s,a,$){var c=s("./DataReader");function nt(at){c.call(this,at)}s("../utils").inherits(nt,c),nt.prototype.byteAt=function(at){return this.data.charCodeAt(this.zero+at)},nt.prototype.lastIndexOfSignature=function(at){return this.data.lastIndexOf(at)-this.zero},nt.prototype.readAndCheckSignature=function(at){return at===this.readData(4)},nt.prototype.readData=function(at){this.checkOffset(at);var lt=this.data.slice(this.zero+this.index,this.zero+this.index+at);return this.index+=at,lt},a.exports=nt},{"../utils":32,"./DataReader":18}],21:[function(s,a,$){var c=s("./ArrayReader");function nt(at){c.call(this,at)}s("../utils").inherits(nt,c),nt.prototype.readData=function(at){if(this.checkOffset(at),at===0)return new Uint8Array(0);var lt=this.data.subarray(this.zero+this.index,this.zero+this.index+at);return this.index+=at,lt},a.exports=nt},{"../utils":32,"./ArrayReader":17}],22:[function(s,a,$){var c=s("../utils"),nt=s("../support"),at=s("./ArrayReader"),lt=s("./StringReader"),et=s("./NodeBufferReader"),it=s("./Uint8ArrayReader");a.exports=function(st){var ct=c.getTypeOf(st);return c.checkSupport(ct),ct!=="string"||nt.uint8array?ct==="nodebuffer"?new et(st):nt.uint8array?new it(c.transformTo("uint8array",st)):new at(c.transformTo("array",st)):new lt(st)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(s,a,$){$.LOCAL_FILE_HEADER="PK",$.CENTRAL_FILE_HEADER="PK",$.CENTRAL_DIRECTORY_END="PK",$.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",$.ZIP64_CENTRAL_DIRECTORY_END="PK",$.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(s,a,$){var c=s("./GenericWorker"),nt=s("../utils");function at(lt){c.call(this,"ConvertWorker to "+lt),this.destType=lt}nt.inherits(at,c),at.prototype.processChunk=function(lt){this.push({data:nt.transformTo(this.destType,lt.data),meta:lt.meta})},a.exports=at},{"../utils":32,"./GenericWorker":28}],25:[function(s,a,$){var c=s("./GenericWorker"),nt=s("../crc32");function at(){c.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}s("../utils").inherits(at,c),at.prototype.processChunk=function(lt){this.streamInfo.crc32=nt(lt.data,this.streamInfo.crc32||0),this.push(lt)},a.exports=at},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(s,a,$){var c=s("../utils"),nt=s("./GenericWorker");function at(lt){nt.call(this,"DataLengthProbe for "+lt),this.propName=lt,this.withStreamInfo(lt,0)}c.inherits(at,nt),at.prototype.processChunk=function(lt){if(lt){var et=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=et+lt.data.length}nt.prototype.processChunk.call(this,lt)},a.exports=at},{"../utils":32,"./GenericWorker":28}],27:[function(s,a,$){var c=s("../utils"),nt=s("./GenericWorker");function at(lt){nt.call(this,"DataWorker");var et=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,lt.then(function(it){et.dataIsReady=!0,et.data=it,et.max=it&&it.length||0,et.type=c.getTypeOf(it),et.isPaused||et._tickAndRepeat()},function(it){et.error(it)})}c.inherits(at,nt),at.prototype.cleanUp=function(){nt.prototype.cleanUp.call(this),this.data=null},at.prototype.resume=function(){return!!nt.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,c.delay(this._tickAndRepeat,[],this)),!0)},at.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(c.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},at.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var lt=null,et=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":lt=this.data.substring(this.index,et);break;case"uint8array":lt=this.data.subarray(this.index,et);break;case"array":case"nodebuffer":lt=this.data.slice(this.index,et)}return this.index=et,this.push({data:lt,meta:{percent:this.max?this.index/this.max*100:0}})},a.exports=at},{"../utils":32,"./GenericWorker":28}],28:[function(s,a,$){function c(nt){this.name=nt||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}c.prototype={push:function(nt){this.emit("data",nt)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(nt){this.emit("error",nt)}return!0},error:function(nt){return!this.isFinished&&(this.isPaused?this.generatedError=nt:(this.isFinished=!0,this.emit("error",nt),this.previous&&this.previous.error(nt),this.cleanUp()),!0)},on:function(nt,at){return this._listeners[nt].push(at),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(nt,at){if(this._listeners[nt])for(var lt=0;lt "+nt:nt}},a.exports=c},{}],29:[function(s,a,$){var c=s("../utils"),nt=s("./ConvertWorker"),at=s("./GenericWorker"),lt=s("../base64"),et=s("../support"),it=s("../external"),st=null;if(et.nodestream)try{st=s("../nodejs/NodejsStreamOutputAdapter")}catch{}function ct(pt,gt){return new it.Promise(function(wt,vt){var _t=[],$t=pt._internalType,Pt=pt._outputType,Nt=pt._mimeType;pt.on("data",function(Lt,Ft){_t.push(Lt),gt&>(Ft)}).on("error",function(Lt){_t=[],vt(Lt)}).on("end",function(){try{var Lt=function(Ft,Wt,_r){switch(Ft){case"blob":return c.newBlob(c.transformTo("arraybuffer",Wt),_r);case"base64":return lt.encode(Wt);default:return c.transformTo(Ft,Wt)}}(Pt,function(Ft,Wt){var _r,vr=0,_o=null,Jt=0;for(_r=0;_r"u")$.blob=!1;else{var c=new ArrayBuffer(0);try{$.blob=new Blob([c],{type:"application/zip"}).size===0}catch{try{var nt=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);nt.append(c),$.blob=nt.getBlob("application/zip").size===0}catch{$.blob=!1}}}try{$.nodestream=!!s("readable-stream").Readable}catch{$.nodestream=!1}},{"readable-stream":16}],31:[function(s,a,$){for(var c=s("./utils"),nt=s("./support"),at=s("./nodejsUtils"),lt=s("./stream/GenericWorker"),et=new Array(256),it=0;it<256;it++)et[it]=252<=it?6:248<=it?5:240<=it?4:224<=it?3:192<=it?2:1;et[254]=et[254]=1;function st(){lt.call(this,"utf-8 decode"),this.leftOver=null}function ct(){lt.call(this,"utf-8 encode")}$.utf8encode=function(ft){return nt.nodebuffer?at.newBufferFrom(ft,"utf-8"):function(pt){var gt,wt,vt,_t,$t,Pt=pt.length,Nt=0;for(_t=0;_t>>6:(wt<65536?gt[$t++]=224|wt>>>12:(gt[$t++]=240|wt>>>18,gt[$t++]=128|wt>>>12&63),gt[$t++]=128|wt>>>6&63),gt[$t++]=128|63&wt);return gt}(ft)},$.utf8decode=function(ft){return nt.nodebuffer?c.transformTo("nodebuffer",ft).toString("utf-8"):function(pt){var gt,wt,vt,_t,$t=pt.length,Pt=new Array(2*$t);for(gt=wt=0;gt<$t;)if((vt=pt[gt++])<128)Pt[wt++]=vt;else if(4<(_t=et[vt]))Pt[wt++]=65533,gt+=_t-1;else{for(vt&=_t===2?31:_t===3?15:7;1<_t&><$t;)vt=vt<<6|63&pt[gt++],_t--;1<_t?Pt[wt++]=65533:vt<65536?Pt[wt++]=vt:(vt-=65536,Pt[wt++]=55296|vt>>10&1023,Pt[wt++]=56320|1023&vt)}return Pt.length!==wt&&(Pt.subarray?Pt=Pt.subarray(0,wt):Pt.length=wt),c.applyFromCharCode(Pt)}(ft=c.transformTo(nt.uint8array?"uint8array":"array",ft))},c.inherits(st,lt),st.prototype.processChunk=function(ft){var pt=c.transformTo(nt.uint8array?"uint8array":"array",ft.data);if(this.leftOver&&this.leftOver.length){if(nt.uint8array){var gt=pt;(pt=new Uint8Array(gt.length+this.leftOver.length)).set(this.leftOver,0),pt.set(gt,this.leftOver.length)}else pt=this.leftOver.concat(pt);this.leftOver=null}var wt=function(_t,$t){var Pt;for(($t=$t||_t.length)>_t.length&&($t=_t.length),Pt=$t-1;0<=Pt&&(192&_t[Pt])==128;)Pt--;return Pt<0||Pt===0?$t:Pt+et[_t[Pt]]>$t?Pt:$t}(pt),vt=pt;wt!==pt.length&&(nt.uint8array?(vt=pt.subarray(0,wt),this.leftOver=pt.subarray(wt,pt.length)):(vt=pt.slice(0,wt),this.leftOver=pt.slice(wt,pt.length))),this.push({data:$.utf8decode(vt),meta:ft.meta})},st.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:$.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},$.Utf8DecodeWorker=st,c.inherits(ct,lt),ct.prototype.processChunk=function(ft){this.push({data:$.utf8encode(ft.data),meta:ft.meta})},$.Utf8EncodeWorker=ct},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(s,a,$){var c=s("./support"),nt=s("./base64"),at=s("./nodejsUtils"),lt=s("./external");function et(gt){return gt}function it(gt,wt){for(var vt=0;vt>8;this.dir=!!(16&this.externalFileAttributes),ft==0&&(this.dosPermissions=63&this.externalFileAttributes),ft==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var ft=c(this.extraFields[1].value);this.uncompressedSize===nt.MAX_VALUE_32BITS&&(this.uncompressedSize=ft.readInt(8)),this.compressedSize===nt.MAX_VALUE_32BITS&&(this.compressedSize=ft.readInt(8)),this.localHeaderOffset===nt.MAX_VALUE_32BITS&&(this.localHeaderOffset=ft.readInt(8)),this.diskNumberStart===nt.MAX_VALUE_32BITS&&(this.diskNumberStart=ft.readInt(4))}},readExtraFields:function(ft){var pt,gt,wt,vt=ft.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});ft.index+4>>6:(ft<65536?ct[wt++]=224|ft>>>12:(ct[wt++]=240|ft>>>18,ct[wt++]=128|ft>>>12&63),ct[wt++]=128|ft>>>6&63),ct[wt++]=128|63&ft);return ct},$.buf2binstring=function(st){return it(st,st.length)},$.binstring2buf=function(st){for(var ct=new c.Buf8(st.length),ft=0,pt=ct.length;ft>10&1023,_t[pt++]=56320|1023>)}return it(_t,pt)},$.utf8border=function(st,ct){var ft;for((ct=ct||st.length)>st.length&&(ct=st.length),ft=ct-1;0<=ft&&(192&st[ft])==128;)ft--;return ft<0||ft===0?ct:ft+lt[st[ft]]>ct?ft:ct}},{"./common":41}],43:[function(s,a,$){a.exports=function(c,nt,at,lt){for(var et=65535&c|0,it=c>>>16&65535|0,st=0;at!==0;){for(at-=st=2e3>>1:nt>>>1;at[lt]=nt}return at}();a.exports=function(nt,at,lt,et){var it=c,st=et+lt;nt^=-1;for(var ct=et;ct>>8^it[255&(nt^at[ct])];return-1^nt}},{}],46:[function(s,a,$){var c,nt=s("../utils/common"),at=s("./trees"),lt=s("./adler32"),et=s("./crc32"),it=s("./messages"),st=0,ct=4,ft=0,pt=-2,gt=-1,wt=4,vt=2,_t=8,$t=9,Pt=286,Nt=30,Lt=19,Ft=2*Pt+1,Wt=15,_r=3,vr=258,_o=vr+_r+1,Jt=42,Kr=113,Ot=1,gr=2,$o=3,On=4;function en(Dt,vn){return Dt.msg=it[vn],vn}function Yr(Dt){return(Dt<<1)-(4Dt.avail_out&&(Lr=Dt.avail_out),Lr!==0&&(nt.arraySet(Dt.output,vn.pending_buf,vn.pending_out,Lr,Dt.next_out),Dt.next_out+=Lr,vn.pending_out+=Lr,Dt.total_out+=Lr,Dt.avail_out-=Lr,vn.pending-=Lr,vn.pending===0&&(vn.pending_out=0))}function Ir(Dt,vn){at._tr_flush_block(Dt,0<=Dt.block_start?Dt.block_start:-1,Dt.strstart-Dt.block_start,vn),Dt.block_start=Dt.strstart,Er(Dt.strm)}function Zr(Dt,vn){Dt.pending_buf[Dt.pending++]=vn}function tn(Dt,vn){Dt.pending_buf[Dt.pending++]=vn>>>8&255,Dt.pending_buf[Dt.pending++]=255&vn}function _n(Dt,vn){var Lr,tr,er=Dt.max_chain_length,Dr=Dt.strstart,ko=Dt.prev_length,In=Dt.nice_match,Jr=Dt.strstart>Dt.w_size-_o?Dt.strstart-(Dt.w_size-_o):0,jo=Dt.window,Qo=Dt.w_mask,Po=Dt.prev,Zo=Dt.strstart+vr,Oo=jo[Dr+ko-1],nn=jo[Dr+ko];Dt.prev_length>=Dt.good_match&&(er>>=2),In>Dt.lookahead&&(In=Dt.lookahead);do if(jo[(Lr=vn)+ko]===nn&&jo[Lr+ko-1]===Oo&&jo[Lr]===jo[Dr]&&jo[++Lr]===jo[Dr+1]){Dr+=2,Lr++;do;while(jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&jo[++Dr]===jo[++Lr]&&DrJr&&--er!=0);return ko<=Dt.lookahead?ko:Dt.lookahead}function zo(Dt){var vn,Lr,tr,er,Dr,ko,In,Jr,jo,Qo,Po=Dt.w_size;do{if(er=Dt.window_size-Dt.lookahead-Dt.strstart,Dt.strstart>=Po+(Po-_o)){for(nt.arraySet(Dt.window,Dt.window,Po,Po,0),Dt.match_start-=Po,Dt.strstart-=Po,Dt.block_start-=Po,vn=Lr=Dt.hash_size;tr=Dt.head[--vn],Dt.head[vn]=Po<=tr?tr-Po:0,--Lr;);for(vn=Lr=Po;tr=Dt.prev[--vn],Dt.prev[vn]=Po<=tr?tr-Po:0,--Lr;);er+=Po}if(Dt.strm.avail_in===0)break;if(ko=Dt.strm,In=Dt.window,Jr=Dt.strstart+Dt.lookahead,jo=er,Qo=void 0,Qo=ko.avail_in,jo=_r)for(Dr=Dt.strstart-Dt.insert,Dt.ins_h=Dt.window[Dr],Dt.ins_h=(Dt.ins_h<=_r&&(Dt.ins_h=(Dt.ins_h<=_r)if(tr=at._tr_tally(Dt,Dt.strstart-Dt.match_start,Dt.match_length-_r),Dt.lookahead-=Dt.match_length,Dt.match_length<=Dt.max_lazy_match&&Dt.lookahead>=_r){for(Dt.match_length--;Dt.strstart++,Dt.ins_h=(Dt.ins_h<=_r&&(Dt.ins_h=(Dt.ins_h<=_r&&Dt.match_length<=Dt.prev_length){for(er=Dt.strstart+Dt.lookahead-_r,tr=at._tr_tally(Dt,Dt.strstart-1-Dt.prev_match,Dt.prev_length-_r),Dt.lookahead-=Dt.prev_length-1,Dt.prev_length-=2;++Dt.strstart<=er&&(Dt.ins_h=(Dt.ins_h<Dt.pending_buf_size-5&&(Lr=Dt.pending_buf_size-5);;){if(Dt.lookahead<=1){if(zo(Dt),Dt.lookahead===0&&vn===st)return Ot;if(Dt.lookahead===0)break}Dt.strstart+=Dt.lookahead,Dt.lookahead=0;var tr=Dt.block_start+Lr;if((Dt.strstart===0||Dt.strstart>=tr)&&(Dt.lookahead=Dt.strstart-tr,Dt.strstart=tr,Ir(Dt,!1),Dt.strm.avail_out===0)||Dt.strstart-Dt.block_start>=Dt.w_size-_o&&(Ir(Dt,!1),Dt.strm.avail_out===0))return Ot}return Dt.insert=0,vn===ct?(Ir(Dt,!0),Dt.strm.avail_out===0?$o:On):(Dt.strstart>Dt.block_start&&(Ir(Dt,!1),Dt.strm.avail_out),Ot)}),new Yo(4,4,8,4,Xo),new Yo(4,5,16,8,Xo),new Yo(4,6,32,32,Xo),new Yo(4,4,16,16,Do),new Yo(8,16,32,32,Do),new Yo(8,16,128,128,Do),new Yo(8,32,128,256,Do),new Yo(32,128,258,1024,Do),new Yo(32,258,258,4096,Do)],$.deflateInit=function(Dt,vn){return Lo(Dt,vn,_t,15,8,0)},$.deflateInit2=Lo,$.deflateReset=Js,$.deflateResetKeep=Bo,$.deflateSetHeader=function(Dt,vn){return Dt&&Dt.state?Dt.state.wrap!==2?pt:(Dt.state.gzhead=vn,ft):pt},$.deflate=function(Dt,vn){var Lr,tr,er,Dr;if(!Dt||!Dt.state||5>8&255),Zr(tr,tr.gzhead.time>>16&255),Zr(tr,tr.gzhead.time>>24&255),Zr(tr,tr.level===9?2:2<=tr.strategy||tr.level<2?4:0),Zr(tr,255&tr.gzhead.os),tr.gzhead.extra&&tr.gzhead.extra.length&&(Zr(tr,255&tr.gzhead.extra.length),Zr(tr,tr.gzhead.extra.length>>8&255)),tr.gzhead.hcrc&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending,0)),tr.gzindex=0,tr.status=69):(Zr(tr,0),Zr(tr,0),Zr(tr,0),Zr(tr,0),Zr(tr,0),Zr(tr,tr.level===9?2:2<=tr.strategy||tr.level<2?4:0),Zr(tr,3),tr.status=Kr);else{var ko=_t+(tr.w_bits-8<<4)<<8;ko|=(2<=tr.strategy||tr.level<2?0:tr.level<6?1:tr.level===6?2:3)<<6,tr.strstart!==0&&(ko|=32),ko+=31-ko%31,tr.status=Kr,tn(tr,ko),tr.strstart!==0&&(tn(tr,Dt.adler>>>16),tn(tr,65535&Dt.adler)),Dt.adler=1}if(tr.status===69)if(tr.gzhead.extra){for(er=tr.pending;tr.gzindex<(65535&tr.gzhead.extra.length)&&(tr.pending!==tr.pending_buf_size||(tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Er(Dt),er=tr.pending,tr.pending!==tr.pending_buf_size));)Zr(tr,255&tr.gzhead.extra[tr.gzindex]),tr.gzindex++;tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),tr.gzindex===tr.gzhead.extra.length&&(tr.gzindex=0,tr.status=73)}else tr.status=73;if(tr.status===73)if(tr.gzhead.name){er=tr.pending;do{if(tr.pending===tr.pending_buf_size&&(tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Er(Dt),er=tr.pending,tr.pending===tr.pending_buf_size)){Dr=1;break}Dr=tr.gzindexer&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Dr===0&&(tr.gzindex=0,tr.status=91)}else tr.status=91;if(tr.status===91)if(tr.gzhead.comment){er=tr.pending;do{if(tr.pending===tr.pending_buf_size&&(tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Er(Dt),er=tr.pending,tr.pending===tr.pending_buf_size)){Dr=1;break}Dr=tr.gzindexer&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Dr===0&&(tr.status=103)}else tr.status=103;if(tr.status===103&&(tr.gzhead.hcrc?(tr.pending+2>tr.pending_buf_size&&Er(Dt),tr.pending+2<=tr.pending_buf_size&&(Zr(tr,255&Dt.adler),Zr(tr,Dt.adler>>8&255),Dt.adler=0,tr.status=Kr)):tr.status=Kr),tr.pending!==0){if(Er(Dt),Dt.avail_out===0)return tr.last_flush=-1,ft}else if(Dt.avail_in===0&&Yr(vn)<=Yr(Lr)&&vn!==ct)return en(Dt,-5);if(tr.status===666&&Dt.avail_in!==0)return en(Dt,-5);if(Dt.avail_in!==0||tr.lookahead!==0||vn!==st&&tr.status!==666){var In=tr.strategy===2?function(Jr,jo){for(var Qo;;){if(Jr.lookahead===0&&(zo(Jr),Jr.lookahead===0)){if(jo===st)return Ot;break}if(Jr.match_length=0,Qo=at._tr_tally(Jr,0,Jr.window[Jr.strstart]),Jr.lookahead--,Jr.strstart++,Qo&&(Ir(Jr,!1),Jr.strm.avail_out===0))return Ot}return Jr.insert=0,jo===ct?(Ir(Jr,!0),Jr.strm.avail_out===0?$o:On):Jr.last_lit&&(Ir(Jr,!1),Jr.strm.avail_out===0)?Ot:gr}(tr,vn):tr.strategy===3?function(Jr,jo){for(var Qo,Po,Zo,Oo,nn=Jr.window;;){if(Jr.lookahead<=vr){if(zo(Jr),Jr.lookahead<=vr&&jo===st)return Ot;if(Jr.lookahead===0)break}if(Jr.match_length=0,Jr.lookahead>=_r&&0Jr.lookahead&&(Jr.match_length=Jr.lookahead)}if(Jr.match_length>=_r?(Qo=at._tr_tally(Jr,1,Jr.match_length-_r),Jr.lookahead-=Jr.match_length,Jr.strstart+=Jr.match_length,Jr.match_length=0):(Qo=at._tr_tally(Jr,0,Jr.window[Jr.strstart]),Jr.lookahead--,Jr.strstart++),Qo&&(Ir(Jr,!1),Jr.strm.avail_out===0))return Ot}return Jr.insert=0,jo===ct?(Ir(Jr,!0),Jr.strm.avail_out===0?$o:On):Jr.last_lit&&(Ir(Jr,!1),Jr.strm.avail_out===0)?Ot:gr}(tr,vn):c[tr.level].func(tr,vn);if(In!==$o&&In!==On||(tr.status=666),In===Ot||In===$o)return Dt.avail_out===0&&(tr.last_flush=-1),ft;if(In===gr&&(vn===1?at._tr_align(tr):vn!==5&&(at._tr_stored_block(tr,0,0,!1),vn===3&&(So(tr.head),tr.lookahead===0&&(tr.strstart=0,tr.block_start=0,tr.insert=0))),Er(Dt),Dt.avail_out===0))return tr.last_flush=-1,ft}return vn!==ct?ft:tr.wrap<=0?1:(tr.wrap===2?(Zr(tr,255&Dt.adler),Zr(tr,Dt.adler>>8&255),Zr(tr,Dt.adler>>16&255),Zr(tr,Dt.adler>>24&255),Zr(tr,255&Dt.total_in),Zr(tr,Dt.total_in>>8&255),Zr(tr,Dt.total_in>>16&255),Zr(tr,Dt.total_in>>24&255)):(tn(tr,Dt.adler>>>16),tn(tr,65535&Dt.adler)),Er(Dt),0=Lr.w_size&&(Dr===0&&(So(Lr.head),Lr.strstart=0,Lr.block_start=0,Lr.insert=0),jo=new nt.Buf8(Lr.w_size),nt.arraySet(jo,vn,Qo-Lr.w_size,Lr.w_size,0),vn=jo,Qo=Lr.w_size),ko=Dt.avail_in,In=Dt.next_in,Jr=Dt.input,Dt.avail_in=Qo,Dt.next_in=0,Dt.input=vn,zo(Lr);Lr.lookahead>=_r;){for(tr=Lr.strstart,er=Lr.lookahead-(_r-1);Lr.ins_h=(Lr.ins_h<>>=_r=Wt>>>24,$t-=_r,(_r=Wt>>>16&255)===0)gr[it++]=65535&Wt;else{if(!(16&_r)){if(!(64&_r)){Wt=Pt[(65535&Wt)+(_t&(1<<_r)-1)];continue t}if(32&_r){at.mode=12;break e}c.msg="invalid literal/length code",at.mode=30;break e}vr=65535&Wt,(_r&=15)&&($t<_r&&(_t+=Ot[lt++]<<$t,$t+=8),vr+=_t&(1<<_r)-1,_t>>>=_r,$t-=_r),$t<15&&(_t+=Ot[lt++]<<$t,$t+=8,_t+=Ot[lt++]<<$t,$t+=8),Wt=Nt[_t&Ft];r:for(;;){if(_t>>>=_r=Wt>>>24,$t-=_r,!(16&(_r=Wt>>>16&255))){if(!(64&_r)){Wt=Nt[(65535&Wt)+(_t&(1<<_r)-1)];continue r}c.msg="invalid distance code",at.mode=30;break e}if(_o=65535&Wt,$t<(_r&=15)&&(_t+=Ot[lt++]<<$t,($t+=8)<_r&&(_t+=Ot[lt++]<<$t,$t+=8)),ft<(_o+=_t&(1<<_r)-1)){c.msg="invalid distance too far back",at.mode=30;break e}if(_t>>>=_r,$t-=_r,(_r=it-st)<_o){if(gt<(_r=_o-_r)&&at.sane){c.msg="invalid distance too far back",at.mode=30;break e}if(Kr=vt,(Jt=0)===wt){if(Jt+=pt-_r,_r>3,_t&=(1<<($t-=vr<<3))-1,c.next_in=lt,c.next_out=it,c.avail_in=lt>>24&255)+(Jt>>>8&65280)+((65280&Jt)<<8)+((255&Jt)<<24)}function _t(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new c.Buf16(320),this.work=new c.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function $t(Jt){var Kr;return Jt&&Jt.state?(Kr=Jt.state,Jt.total_in=Jt.total_out=Kr.total=0,Jt.msg="",Kr.wrap&&(Jt.adler=1&Kr.wrap),Kr.mode=pt,Kr.last=0,Kr.havedict=0,Kr.dmax=32768,Kr.head=null,Kr.hold=0,Kr.bits=0,Kr.lencode=Kr.lendyn=new c.Buf32(gt),Kr.distcode=Kr.distdyn=new c.Buf32(wt),Kr.sane=1,Kr.back=-1,ct):ft}function Pt(Jt){var Kr;return Jt&&Jt.state?((Kr=Jt.state).wsize=0,Kr.whave=0,Kr.wnext=0,$t(Jt)):ft}function Nt(Jt,Kr){var Ot,gr;return Jt&&Jt.state?(gr=Jt.state,Kr<0?(Ot=0,Kr=-Kr):(Ot=1+(Kr>>4),Kr<48&&(Kr&=15)),Kr&&(Kr<8||15=On.wsize?(c.arraySet(On.window,Kr,Ot-On.wsize,On.wsize,0),On.wnext=0,On.whave=On.wsize):(gr<($o=On.wsize-On.wnext)&&($o=gr),c.arraySet(On.window,Kr,Ot-gr,$o,On.wnext),(gr-=$o)?(c.arraySet(On.window,Kr,Ot-gr,gr,0),On.wnext=gr,On.whave=On.wsize):(On.wnext+=$o,On.wnext===On.wsize&&(On.wnext=0),On.whave>>8&255,Ot.check=at(Ot.check,Dr,2,0),Ir=Er=0,Ot.mode=2;break}if(Ot.flags=0,Ot.head&&(Ot.head.done=!1),!(1&Ot.wrap)||(((255&Er)<<8)+(Er>>8))%31){Jt.msg="incorrect header check",Ot.mode=30;break}if((15&Er)!=8){Jt.msg="unknown compression method",Ot.mode=30;break}if(Ir-=4,Dt=8+(15&(Er>>>=4)),Ot.wbits===0)Ot.wbits=Dt;else if(Dt>Ot.wbits){Jt.msg="invalid window size",Ot.mode=30;break}Ot.dmax=1<>8&1),512&Ot.flags&&(Dr[0]=255&Er,Dr[1]=Er>>>8&255,Ot.check=at(Ot.check,Dr,2,0)),Ir=Er=0,Ot.mode=3;case 3:for(;Ir<32;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>8&255,Dr[2]=Er>>>16&255,Dr[3]=Er>>>24&255,Ot.check=at(Ot.check,Dr,4,0)),Ir=Er=0,Ot.mode=4;case 4:for(;Ir<16;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>8),512&Ot.flags&&(Dr[0]=255&Er,Dr[1]=Er>>>8&255,Ot.check=at(Ot.check,Dr,2,0)),Ir=Er=0,Ot.mode=5;case 5:if(1024&Ot.flags){for(;Ir<16;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>8&255,Ot.check=at(Ot.check,Dr,2,0)),Ir=Er=0}else Ot.head&&(Ot.head.extra=null);Ot.mode=6;case 6:if(1024&Ot.flags&&(Yr<(_n=Ot.length)&&(_n=Yr),_n&&(Ot.head&&(Dt=Ot.head.extra_len-Ot.length,Ot.head.extra||(Ot.head.extra=new Array(Ot.head.extra_len)),c.arraySet(Ot.head.extra,gr,On,_n,Dt)),512&Ot.flags&&(Ot.check=at(Ot.check,gr,_n,On)),Yr-=_n,On+=_n,Ot.length-=_n),Ot.length))break e;Ot.length=0,Ot.mode=7;case 7:if(2048&Ot.flags){if(Yr===0)break e;for(_n=0;Dt=gr[On+_n++],Ot.head&&Dt&&Ot.length<65536&&(Ot.head.name+=String.fromCharCode(Dt)),Dt&&_n>9&1,Ot.head.done=!0),Jt.adler=Ot.check=0,Ot.mode=12;break;case 10:for(;Ir<32;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>=7&Ir,Ir-=7&Ir,Ot.mode=27;break}for(;Ir<3;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>=1)){case 0:Ot.mode=14;break;case 1:if(vr(Ot),Ot.mode=20,Kr!==6)break;Er>>>=2,Ir-=2;break e;case 2:Ot.mode=17;break;case 3:Jt.msg="invalid block type",Ot.mode=30}Er>>>=2,Ir-=2;break;case 14:for(Er>>>=7&Ir,Ir-=7&Ir;Ir<32;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>16^65535)){Jt.msg="invalid stored block lengths",Ot.mode=30;break}if(Ot.length=65535&Er,Ir=Er=0,Ot.mode=15,Kr===6)break e;case 15:Ot.mode=16;case 16:if(_n=Ot.length){if(Yr<_n&&(_n=Yr),So<_n&&(_n=So),_n===0)break e;c.arraySet($o,gr,On,_n,en),Yr-=_n,On+=_n,So-=_n,en+=_n,Ot.length-=_n;break}Ot.mode=12;break;case 17:for(;Ir<14;){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>=5,Ir-=5,Ot.ndist=1+(31&Er),Er>>>=5,Ir-=5,Ot.ncode=4+(15&Er),Er>>>=4,Ir-=4,286>>=3,Ir-=3}for(;Ot.have<19;)Ot.lens[ko[Ot.have++]]=0;if(Ot.lencode=Ot.lendyn,Ot.lenbits=7,Lr={bits:Ot.lenbits},vn=et(0,Ot.lens,0,19,Ot.lencode,0,Ot.work,Lr),Ot.lenbits=Lr.bits,vn){Jt.msg="invalid code lengths set",Ot.mode=30;break}Ot.have=0,Ot.mode=19;case 19:for(;Ot.have>>16&255,Jo=65535&er,!((Do=er>>>24)<=Ir);){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>=Do,Ir-=Do,Ot.lens[Ot.have++]=Jo;else{if(Jo===16){for(tr=Do+2;Ir>>=Do,Ir-=Do,Ot.have===0){Jt.msg="invalid bit length repeat",Ot.mode=30;break}Dt=Ot.lens[Ot.have-1],_n=3+(3&Er),Er>>>=2,Ir-=2}else if(Jo===17){for(tr=Do+3;Ir>>=Do)),Er>>>=3,Ir-=3}else{for(tr=Do+7;Ir>>=Do)),Er>>>=7,Ir-=7}if(Ot.have+_n>Ot.nlen+Ot.ndist){Jt.msg="invalid bit length repeat",Ot.mode=30;break}for(;_n--;)Ot.lens[Ot.have++]=Dt}}if(Ot.mode===30)break;if(Ot.lens[256]===0){Jt.msg="invalid code -- missing end-of-block",Ot.mode=30;break}if(Ot.lenbits=9,Lr={bits:Ot.lenbits},vn=et(it,Ot.lens,0,Ot.nlen,Ot.lencode,0,Ot.work,Lr),Ot.lenbits=Lr.bits,vn){Jt.msg="invalid literal/lengths set",Ot.mode=30;break}if(Ot.distbits=6,Ot.distcode=Ot.distdyn,Lr={bits:Ot.distbits},vn=et(st,Ot.lens,Ot.nlen,Ot.ndist,Ot.distcode,0,Ot.work,Lr),Ot.distbits=Lr.bits,vn){Jt.msg="invalid distances set",Ot.mode=30;break}if(Ot.mode=20,Kr===6)break e;case 20:Ot.mode=21;case 21:if(6<=Yr&&258<=So){Jt.next_out=en,Jt.avail_out=So,Jt.next_in=On,Jt.avail_in=Yr,Ot.hold=Er,Ot.bits=Ir,lt(Jt,tn),en=Jt.next_out,$o=Jt.output,So=Jt.avail_out,On=Jt.next_in,gr=Jt.input,Yr=Jt.avail_in,Er=Ot.hold,Ir=Ot.bits,Ot.mode===12&&(Ot.back=-1);break}for(Ot.back=0;Yo=(er=Ot.lencode[Er&(1<>>16&255,Jo=65535&er,!((Do=er>>>24)<=Ir);){if(Yr===0)break e;Yr--,Er+=gr[On++]<>Bo)])>>>16&255,Jo=65535&er,!(Bo+(Do=er>>>24)<=Ir);){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>=Bo,Ir-=Bo,Ot.back+=Bo}if(Er>>>=Do,Ir-=Do,Ot.back+=Do,Ot.length=Jo,Yo===0){Ot.mode=26;break}if(32&Yo){Ot.back=-1,Ot.mode=12;break}if(64&Yo){Jt.msg="invalid literal/length code",Ot.mode=30;break}Ot.extra=15&Yo,Ot.mode=22;case 22:if(Ot.extra){for(tr=Ot.extra;Ir>>=Ot.extra,Ir-=Ot.extra,Ot.back+=Ot.extra}Ot.was=Ot.length,Ot.mode=23;case 23:for(;Yo=(er=Ot.distcode[Er&(1<>>16&255,Jo=65535&er,!((Do=er>>>24)<=Ir);){if(Yr===0)break e;Yr--,Er+=gr[On++]<>Bo)])>>>16&255,Jo=65535&er,!(Bo+(Do=er>>>24)<=Ir);){if(Yr===0)break e;Yr--,Er+=gr[On++]<>>=Bo,Ir-=Bo,Ot.back+=Bo}if(Er>>>=Do,Ir-=Do,Ot.back+=Do,64&Yo){Jt.msg="invalid distance code",Ot.mode=30;break}Ot.offset=Jo,Ot.extra=15&Yo,Ot.mode=24;case 24:if(Ot.extra){for(tr=Ot.extra;Ir>>=Ot.extra,Ir-=Ot.extra,Ot.back+=Ot.extra}if(Ot.offset>Ot.dmax){Jt.msg="invalid distance too far back",Ot.mode=30;break}Ot.mode=25;case 25:if(So===0)break e;if(_n=tn-So,Ot.offset>_n){if((_n=Ot.offset-_n)>Ot.whave&&Ot.sane){Jt.msg="invalid distance too far back",Ot.mode=30;break}zo=_n>Ot.wnext?(_n-=Ot.wnext,Ot.wsize-_n):Ot.wnext-_n,_n>Ot.length&&(_n=Ot.length),Xo=Ot.window}else Xo=$o,zo=en-Ot.offset,_n=Ot.length;for(So<_n&&(_n=So),So-=_n,Ot.length-=_n;$o[en++]=Xo[zo++],--_n;);Ot.length===0&&(Ot.mode=21);break;case 26:if(So===0)break e;$o[en++]=Ot.length,So--,Ot.mode=21;break;case 27:if(Ot.wrap){for(;Ir<32;){if(Yr===0)break e;Yr--,Er|=gr[On++]<Ft?(_r=zo[Xo+wt[Kr]],Ir[Zr+wt[Kr]]):(_r=96,0),_t=1<>en)+($t-=_t)]=Wt<<24|_r<<16|vr|0,$t!==0;);for(_t=1<>=1;if(_t!==0?(Er&=_t-1,Er+=_t):Er=0,Kr++,--tn[Jt]==0){if(Jt===gr)break;Jt=st[ct+wt[Kr]]}if($o>>7)]}function Zr(er,Dr){er.pending_buf[er.pending++]=255&Dr,er.pending_buf[er.pending++]=Dr>>>8&255}function tn(er,Dr,ko){er.bi_valid>vt-ko?(er.bi_buf|=Dr<>vt-er.bi_valid,er.bi_valid+=ko-vt):(er.bi_buf|=Dr<>>=1,ko<<=1,0<--Dr;);return ko>>>1}function Xo(er,Dr,ko){var In,Jr,jo=new Array(wt+1),Qo=0;for(In=1;In<=wt;In++)jo[In]=Qo=Qo+ko[In-1]<<1;for(Jr=0;Jr<=Dr;Jr++){var Po=er[2*Jr+1];Po!==0&&(er[2*Jr]=zo(jo[Po]++,Po))}}function Do(er){var Dr;for(Dr=0;Dr>1;1<=ko;ko--)Bo(er,jo,ko);for(Jr=Zo;ko=er.heap[1],er.heap[1]=er.heap[er.heap_len--],Bo(er,jo,1),In=er.heap[1],er.heap[--er.heap_max]=ko,er.heap[--er.heap_max]=In,jo[2*Jr]=jo[2*ko]+jo[2*In],er.depth[Jr]=(er.depth[ko]>=er.depth[In]?er.depth[ko]:er.depth[In])+1,jo[2*ko+1]=jo[2*In+1]=Jr,er.heap[1]=Jr++,Bo(er,jo,1),2<=er.heap_len;);er.heap[--er.heap_max]=er.heap[1],function(nn,Ao){var Ko,Fo,qs,Xs,na,ba,ga=Ao.dyn_tree,eu=Ao.max_code,mu=Ao.stat_desc.static_tree,gu=Ao.stat_desc.has_stree,Tu=Ao.stat_desc.extra_bits,yu=Ao.stat_desc.extra_base,iu=Ao.stat_desc.max_length,uu=0;for(Xs=0;Xs<=wt;Xs++)nn.bl_count[Xs]=0;for(ga[2*nn.heap[nn.heap_max]+1]=0,Ko=nn.heap_max+1;Ko>=7;Jr>>=1)if(1&Oo&&Po.dyn_ltree[2*Zo]!==0)return nt;if(Po.dyn_ltree[18]!==0||Po.dyn_ltree[20]!==0||Po.dyn_ltree[26]!==0)return at;for(Zo=32;Zo>>3,(jo=er.static_len+3+7>>>3)<=Jr&&(Jr=jo)):Jr=jo=ko+5,ko+4<=Jr&&Dr!==-1?tr(er,Dr,ko,In):er.strategy===4||jo===Jr?(tn(er,2+(In?1:0),3),Js(er,_o,Jt)):(tn(er,4+(In?1:0),3),function(Po,Zo,Oo,nn){var Ao;for(tn(Po,Zo-257,5),tn(Po,Oo-1,5),tn(Po,nn-4,4),Ao=0;Ao>>8&255,er.pending_buf[er.d_buf+2*er.last_lit+1]=255&Dr,er.pending_buf[er.l_buf+er.last_lit]=255&ko,er.last_lit++,Dr===0?er.dyn_ltree[2*ko]++:(er.matches++,Dr--,er.dyn_ltree[2*(Ot[ko]+st+1)]++,er.dyn_dtree[2*Ir(Dr)]++),er.last_lit===er.lit_bufsize-1},$._tr_align=function(er){tn(er,2,3),_n(er,$t,_o),function(Dr){Dr.bi_valid===16?(Zr(Dr,Dr.bi_buf),Dr.bi_buf=0,Dr.bi_valid=0):8<=Dr.bi_valid&&(Dr.pending_buf[Dr.pending++]=255&Dr.bi_buf,Dr.bi_buf>>=8,Dr.bi_valid-=8)}(er)}},{"../utils/common":41}],53:[function(s,a,$){a.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(s,a,$){(function(c){(function(nt,at){if(!nt.setImmediate){var lt,et,it,st,ct=1,ft={},pt=!1,gt=nt.document,wt=Object.getPrototypeOf&&Object.getPrototypeOf(nt);wt=wt&&wt.setTimeout?wt:nt,lt={}.toString.call(nt.process)==="[object process]"?function(Pt){process.nextTick(function(){_t(Pt)})}:function(){if(nt.postMessage&&!nt.importScripts){var Pt=!0,Nt=nt.onmessage;return nt.onmessage=function(){Pt=!1},nt.postMessage("","*"),nt.onmessage=Nt,Pt}}()?(st="setImmediate$"+Math.random()+"$",nt.addEventListener?nt.addEventListener("message",$t,!1):nt.attachEvent("onmessage",$t),function(Pt){nt.postMessage(st+Pt,"*")}):nt.MessageChannel?((it=new MessageChannel).port1.onmessage=function(Pt){_t(Pt.data)},function(Pt){it.port2.postMessage(Pt)}):gt&&"onreadystatechange"in gt.createElement("script")?(et=gt.documentElement,function(Pt){var Nt=gt.createElement("script");Nt.onreadystatechange=function(){_t(Pt),Nt.onreadystatechange=null,et.removeChild(Nt),Nt=null},et.appendChild(Nt)}):function(Pt){setTimeout(_t,0,Pt)},wt.setImmediate=function(Pt){typeof Pt!="function"&&(Pt=new Function(""+Pt));for(var Nt=new Array(arguments.length-1),Lt=0;Lt"u"?c===void 0?this:c:self)}).call(this,typeof commonjsGlobal<"u"?commonjsGlobal:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(jszip_min);var jszip_minExports=jszip_min.exports;const JSZip=getDefaultExportFromCjs(jszip_minExports);//! moment.js +*/(function(e,o){(function(s){e.exports=s()})(function(){return function s(a,$,c){function nt(et,it){if(!$[et]){if(!a[et]){var st=typeof commonjsRequire=="function"&&commonjsRequire;if(!it&&st)return st(et,!0);if(at)return at(et,!0);var ct=new Error("Cannot find module '"+et+"'");throw ct.code="MODULE_NOT_FOUND",ct}var ft=$[et]={exports:{}};a[et][0].call(ft.exports,function(pt){var gt=a[et][1][pt];return nt(gt||pt)},ft,ft.exports,s,a,$,c)}return $[et].exports}for(var at=typeof commonjsRequire=="function"&&commonjsRequire,lt=0;lt>2,ft=(3&et)<<4|it>>4,pt=1<$t?(15&it)<<2|st>>6:64,gt=2<$t?63&st:64,wt.push(at.charAt(ct)+at.charAt(ft)+at.charAt(pt)+at.charAt(gt));return wt.join("")},$.decode=function(lt){var et,it,st,ct,ft,pt,gt=0,wt=0,vt="data:";if(lt.substr(0,vt.length)===vt)throw new Error("Invalid base64 input, it looks like a data url.");var _t,$t=3*(lt=lt.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(lt.charAt(lt.length-1)===at.charAt(64)&&$t--,lt.charAt(lt.length-2)===at.charAt(64)&&$t--,$t%1!=0)throw new Error("Invalid base64 input, bad content length.");for(_t=nt.uint8array?new Uint8Array(0|$t):new Array(0|$t);gt>4,it=(15&ct)<<4|(ft=at.indexOf(lt.charAt(gt++)))>>2,st=(3&ft)<<6|(pt=at.indexOf(lt.charAt(gt++))),_t[wt++]=et,ft!==64&&(_t[wt++]=it),pt!==64&&(_t[wt++]=st);return _t}},{"./support":30,"./utils":32}],2:[function(s,a,$){var c=s("./external"),nt=s("./stream/DataWorker"),at=s("./stream/Crc32Probe"),lt=s("./stream/DataLengthProbe");function et(it,st,ct,ft,pt){this.compressedSize=it,this.uncompressedSize=st,this.crc32=ct,this.compression=ft,this.compressedContent=pt}et.prototype={getContentWorker:function(){var it=new nt(c.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new lt("data_length")),st=this;return it.on("end",function(){if(this.streamInfo.data_length!==st.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),it},getCompressedWorker:function(){return new nt(c.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},et.createWorkerFrom=function(it,st,ct){return it.pipe(new at).pipe(new lt("uncompressedSize")).pipe(st.compressWorker(ct)).pipe(new lt("compressedSize")).withStreamInfo("compression",st)},a.exports=et},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(s,a,$){var c=s("./stream/GenericWorker");$.STORE={magic:"\0\0",compressWorker:function(){return new c("STORE compression")},uncompressWorker:function(){return new c("STORE decompression")}},$.DEFLATE=s("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(s,a,$){var c=s("./utils"),nt=function(){for(var at,lt=[],et=0;et<256;et++){at=et;for(var it=0;it<8;it++)at=1&at?3988292384^at>>>1:at>>>1;lt[et]=at}return lt}();a.exports=function(at,lt){return at!==void 0&&at.length?c.getTypeOf(at)!=="string"?function(et,it,st,ct){var ft=nt,pt=ct+st;et^=-1;for(var gt=ct;gt>>8^ft[255&(et^it[gt])];return-1^et}(0|lt,at,at.length,0):function(et,it,st,ct){var ft=nt,pt=ct+st;et^=-1;for(var gt=ct;gt>>8^ft[255&(et^it.charCodeAt(gt))];return-1^et}(0|lt,at,at.length,0):0}},{"./utils":32}],5:[function(s,a,$){$.base64=!1,$.binary=!1,$.dir=!1,$.createFolders=!0,$.date=null,$.compression=null,$.compressionOptions=null,$.comment=null,$.unixPermissions=null,$.dosPermissions=null},{}],6:[function(s,a,$){var c=null;c=typeof Promise<"u"?Promise:s("lie"),a.exports={Promise:c}},{lie:37}],7:[function(s,a,$){var c=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",nt=s("pako"),at=s("./utils"),lt=s("./stream/GenericWorker"),et=c?"uint8array":"array";function it(st,ct){lt.call(this,"FlateWorker/"+st),this._pako=null,this._pakoAction=st,this._pakoOptions=ct,this.meta={}}$.magic="\b\0",at.inherits(it,lt),it.prototype.processChunk=function(st){this.meta=st.meta,this._pako===null&&this._createPako(),this._pako.push(at.transformTo(et,st.data),!1)},it.prototype.flush=function(){lt.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},it.prototype.cleanUp=function(){lt.prototype.cleanUp.call(this),this._pako=null},it.prototype._createPako=function(){this._pako=new nt[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var st=this;this._pako.onData=function(ct){st.push({data:ct,meta:st.meta})}},$.compressWorker=function(st){return new it("Deflate",st)},$.uncompressWorker=function(){return new it("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(s,a,$){function c(ft,pt){var gt,wt="";for(gt=0;gt>>=8;return wt}function nt(ft,pt,gt,wt,vt,_t){var $t,Pt,Nt=ft.file,Lt=ft.compression,Ft=_t!==et.utf8encode,Wt=at.transformTo("string",_t(Nt.name)),_r=at.transformTo("string",et.utf8encode(Nt.name)),vr=Nt.comment,_o=at.transformTo("string",_t(vr)),Jt=at.transformTo("string",et.utf8encode(vr)),Kr=_r.length!==Nt.name.length,Ot=Jt.length!==vr.length,gr="",$o="",On="",tn=Nt.dir,Yr=Nt.date,So={crc32:0,compressedSize:0,uncompressedSize:0};pt&&!gt||(So.crc32=ft.crc32,So.compressedSize=ft.compressedSize,So.uncompressedSize=ft.uncompressedSize);var Ir=0;pt&&(Ir|=8),Ft||!Kr&&!Ot||(Ir|=2048);var Lr=0,Zr=0;tn&&(Lr|=16),vt==="UNIX"?(Zr=798,Lr|=function(nn,Fo){var Ko=nn;return nn||(Ko=Fo?16893:33204),(65535&Ko)<<16}(Nt.unixPermissions,tn)):(Zr=20,Lr|=function(nn){return 63&(nn||0)}(Nt.dosPermissions)),$t=Yr.getUTCHours(),$t<<=6,$t|=Yr.getUTCMinutes(),$t<<=5,$t|=Yr.getUTCSeconds()/2,Pt=Yr.getUTCFullYear()-1980,Pt<<=4,Pt|=Yr.getUTCMonth()+1,Pt<<=5,Pt|=Yr.getUTCDate(),Kr&&($o=c(1,1)+c(it(Wt),4)+_r,gr+="up"+c($o.length,2)+$o),Ot&&(On=c(1,1)+c(it(_o),4)+Jt,gr+="uc"+c(On.length,2)+On);var rn="";return rn+=` +\0`,rn+=c(Ir,2),rn+=Lt.magic,rn+=c($t,2),rn+=c(Pt,2),rn+=c(So.crc32,4),rn+=c(So.compressedSize,4),rn+=c(So.uncompressedSize,4),rn+=c(Wt.length,2),rn+=c(gr.length,2),{fileRecord:st.LOCAL_FILE_HEADER+rn+Wt+gr,dirRecord:st.CENTRAL_FILE_HEADER+c(Zr,2)+rn+c(_o.length,2)+"\0\0\0\0"+c(Lr,4)+c(wt,4)+Wt+gr+_o}}var at=s("../utils"),lt=s("../stream/GenericWorker"),et=s("../utf8"),it=s("../crc32"),st=s("../signature");function ct(ft,pt,gt,wt){lt.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=pt,this.zipPlatform=gt,this.encodeFileName=wt,this.streamFiles=ft,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}at.inherits(ct,lt),ct.prototype.push=function(ft){var pt=ft.meta.percent||0,gt=this.entriesCount,wt=this._sources.length;this.accumulate?this.contentBuffer.push(ft):(this.bytesWritten+=ft.data.length,lt.prototype.push.call(this,{data:ft.data,meta:{currentFile:this.currentFile,percent:gt?(pt+100*(gt-wt-1))/gt:100}}))},ct.prototype.openedSource=function(ft){this.currentSourceOffset=this.bytesWritten,this.currentFile=ft.file.name;var pt=this.streamFiles&&!ft.file.dir;if(pt){var gt=nt(ft,pt,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:gt.fileRecord,meta:{percent:0}})}else this.accumulate=!0},ct.prototype.closedSource=function(ft){this.accumulate=!1;var pt=this.streamFiles&&!ft.file.dir,gt=nt(ft,pt,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(gt.dirRecord),pt)this.push({data:function(wt){return st.DATA_DESCRIPTOR+c(wt.crc32,4)+c(wt.compressedSize,4)+c(wt.uncompressedSize,4)}(ft),meta:{percent:100}});else for(this.push({data:gt.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},ct.prototype.flush=function(){for(var ft=this.bytesWritten,pt=0;pt=this.index;lt--)et=(et<<8)+this.byteAt(lt);return this.index+=at,et},readString:function(at){return c.transformTo("string",this.readData(at))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var at=this.readInt(4);return new Date(Date.UTC(1980+(at>>25&127),(at>>21&15)-1,at>>16&31,at>>11&31,at>>5&63,(31&at)<<1))}},a.exports=nt},{"../utils":32}],19:[function(s,a,$){var c=s("./Uint8ArrayReader");function nt(at){c.call(this,at)}s("../utils").inherits(nt,c),nt.prototype.readData=function(at){this.checkOffset(at);var lt=this.data.slice(this.zero+this.index,this.zero+this.index+at);return this.index+=at,lt},a.exports=nt},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(s,a,$){var c=s("./DataReader");function nt(at){c.call(this,at)}s("../utils").inherits(nt,c),nt.prototype.byteAt=function(at){return this.data.charCodeAt(this.zero+at)},nt.prototype.lastIndexOfSignature=function(at){return this.data.lastIndexOf(at)-this.zero},nt.prototype.readAndCheckSignature=function(at){return at===this.readData(4)},nt.prototype.readData=function(at){this.checkOffset(at);var lt=this.data.slice(this.zero+this.index,this.zero+this.index+at);return this.index+=at,lt},a.exports=nt},{"../utils":32,"./DataReader":18}],21:[function(s,a,$){var c=s("./ArrayReader");function nt(at){c.call(this,at)}s("../utils").inherits(nt,c),nt.prototype.readData=function(at){if(this.checkOffset(at),at===0)return new Uint8Array(0);var lt=this.data.subarray(this.zero+this.index,this.zero+this.index+at);return this.index+=at,lt},a.exports=nt},{"../utils":32,"./ArrayReader":17}],22:[function(s,a,$){var c=s("../utils"),nt=s("../support"),at=s("./ArrayReader"),lt=s("./StringReader"),et=s("./NodeBufferReader"),it=s("./Uint8ArrayReader");a.exports=function(st){var ct=c.getTypeOf(st);return c.checkSupport(ct),ct!=="string"||nt.uint8array?ct==="nodebuffer"?new et(st):nt.uint8array?new it(c.transformTo("uint8array",st)):new at(c.transformTo("array",st)):new lt(st)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(s,a,$){$.LOCAL_FILE_HEADER="PK",$.CENTRAL_FILE_HEADER="PK",$.CENTRAL_DIRECTORY_END="PK",$.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",$.ZIP64_CENTRAL_DIRECTORY_END="PK",$.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(s,a,$){var c=s("./GenericWorker"),nt=s("../utils");function at(lt){c.call(this,"ConvertWorker to "+lt),this.destType=lt}nt.inherits(at,c),at.prototype.processChunk=function(lt){this.push({data:nt.transformTo(this.destType,lt.data),meta:lt.meta})},a.exports=at},{"../utils":32,"./GenericWorker":28}],25:[function(s,a,$){var c=s("./GenericWorker"),nt=s("../crc32");function at(){c.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}s("../utils").inherits(at,c),at.prototype.processChunk=function(lt){this.streamInfo.crc32=nt(lt.data,this.streamInfo.crc32||0),this.push(lt)},a.exports=at},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(s,a,$){var c=s("../utils"),nt=s("./GenericWorker");function at(lt){nt.call(this,"DataLengthProbe for "+lt),this.propName=lt,this.withStreamInfo(lt,0)}c.inherits(at,nt),at.prototype.processChunk=function(lt){if(lt){var et=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=et+lt.data.length}nt.prototype.processChunk.call(this,lt)},a.exports=at},{"../utils":32,"./GenericWorker":28}],27:[function(s,a,$){var c=s("../utils"),nt=s("./GenericWorker");function at(lt){nt.call(this,"DataWorker");var et=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,lt.then(function(it){et.dataIsReady=!0,et.data=it,et.max=it&&it.length||0,et.type=c.getTypeOf(it),et.isPaused||et._tickAndRepeat()},function(it){et.error(it)})}c.inherits(at,nt),at.prototype.cleanUp=function(){nt.prototype.cleanUp.call(this),this.data=null},at.prototype.resume=function(){return!!nt.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,c.delay(this._tickAndRepeat,[],this)),!0)},at.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(c.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},at.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var lt=null,et=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":lt=this.data.substring(this.index,et);break;case"uint8array":lt=this.data.subarray(this.index,et);break;case"array":case"nodebuffer":lt=this.data.slice(this.index,et)}return this.index=et,this.push({data:lt,meta:{percent:this.max?this.index/this.max*100:0}})},a.exports=at},{"../utils":32,"./GenericWorker":28}],28:[function(s,a,$){function c(nt){this.name=nt||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}c.prototype={push:function(nt){this.emit("data",nt)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(nt){this.emit("error",nt)}return!0},error:function(nt){return!this.isFinished&&(this.isPaused?this.generatedError=nt:(this.isFinished=!0,this.emit("error",nt),this.previous&&this.previous.error(nt),this.cleanUp()),!0)},on:function(nt,at){return this._listeners[nt].push(at),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(nt,at){if(this._listeners[nt])for(var lt=0;lt "+nt:nt}},a.exports=c},{}],29:[function(s,a,$){var c=s("../utils"),nt=s("./ConvertWorker"),at=s("./GenericWorker"),lt=s("../base64"),et=s("../support"),it=s("../external"),st=null;if(et.nodestream)try{st=s("../nodejs/NodejsStreamOutputAdapter")}catch{}function ct(pt,gt){return new it.Promise(function(wt,vt){var _t=[],$t=pt._internalType,Pt=pt._outputType,Nt=pt._mimeType;pt.on("data",function(Lt,Ft){_t.push(Lt),gt&>(Ft)}).on("error",function(Lt){_t=[],vt(Lt)}).on("end",function(){try{var Lt=function(Ft,Wt,_r){switch(Ft){case"blob":return c.newBlob(c.transformTo("arraybuffer",Wt),_r);case"base64":return lt.encode(Wt);default:return c.transformTo(Ft,Wt)}}(Pt,function(Ft,Wt){var _r,vr=0,_o=null,Jt=0;for(_r=0;_r"u")$.blob=!1;else{var c=new ArrayBuffer(0);try{$.blob=new Blob([c],{type:"application/zip"}).size===0}catch{try{var nt=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);nt.append(c),$.blob=nt.getBlob("application/zip").size===0}catch{$.blob=!1}}}try{$.nodestream=!!s("readable-stream").Readable}catch{$.nodestream=!1}},{"readable-stream":16}],31:[function(s,a,$){for(var c=s("./utils"),nt=s("./support"),at=s("./nodejsUtils"),lt=s("./stream/GenericWorker"),et=new Array(256),it=0;it<256;it++)et[it]=252<=it?6:248<=it?5:240<=it?4:224<=it?3:192<=it?2:1;et[254]=et[254]=1;function st(){lt.call(this,"utf-8 decode"),this.leftOver=null}function ct(){lt.call(this,"utf-8 encode")}$.utf8encode=function(ft){return nt.nodebuffer?at.newBufferFrom(ft,"utf-8"):function(pt){var gt,wt,vt,_t,$t,Pt=pt.length,Nt=0;for(_t=0;_t>>6:(wt<65536?gt[$t++]=224|wt>>>12:(gt[$t++]=240|wt>>>18,gt[$t++]=128|wt>>>12&63),gt[$t++]=128|wt>>>6&63),gt[$t++]=128|63&wt);return gt}(ft)},$.utf8decode=function(ft){return nt.nodebuffer?c.transformTo("nodebuffer",ft).toString("utf-8"):function(pt){var gt,wt,vt,_t,$t=pt.length,Pt=new Array(2*$t);for(gt=wt=0;gt<$t;)if((vt=pt[gt++])<128)Pt[wt++]=vt;else if(4<(_t=et[vt]))Pt[wt++]=65533,gt+=_t-1;else{for(vt&=_t===2?31:_t===3?15:7;1<_t&><$t;)vt=vt<<6|63&pt[gt++],_t--;1<_t?Pt[wt++]=65533:vt<65536?Pt[wt++]=vt:(vt-=65536,Pt[wt++]=55296|vt>>10&1023,Pt[wt++]=56320|1023&vt)}return Pt.length!==wt&&(Pt.subarray?Pt=Pt.subarray(0,wt):Pt.length=wt),c.applyFromCharCode(Pt)}(ft=c.transformTo(nt.uint8array?"uint8array":"array",ft))},c.inherits(st,lt),st.prototype.processChunk=function(ft){var pt=c.transformTo(nt.uint8array?"uint8array":"array",ft.data);if(this.leftOver&&this.leftOver.length){if(nt.uint8array){var gt=pt;(pt=new Uint8Array(gt.length+this.leftOver.length)).set(this.leftOver,0),pt.set(gt,this.leftOver.length)}else pt=this.leftOver.concat(pt);this.leftOver=null}var wt=function(_t,$t){var Pt;for(($t=$t||_t.length)>_t.length&&($t=_t.length),Pt=$t-1;0<=Pt&&(192&_t[Pt])==128;)Pt--;return Pt<0||Pt===0?$t:Pt+et[_t[Pt]]>$t?Pt:$t}(pt),vt=pt;wt!==pt.length&&(nt.uint8array?(vt=pt.subarray(0,wt),this.leftOver=pt.subarray(wt,pt.length)):(vt=pt.slice(0,wt),this.leftOver=pt.slice(wt,pt.length))),this.push({data:$.utf8decode(vt),meta:ft.meta})},st.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:$.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},$.Utf8DecodeWorker=st,c.inherits(ct,lt),ct.prototype.processChunk=function(ft){this.push({data:$.utf8encode(ft.data),meta:ft.meta})},$.Utf8EncodeWorker=ct},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(s,a,$){var c=s("./support"),nt=s("./base64"),at=s("./nodejsUtils"),lt=s("./external");function et(gt){return gt}function it(gt,wt){for(var vt=0;vt>8;this.dir=!!(16&this.externalFileAttributes),ft==0&&(this.dosPermissions=63&this.externalFileAttributes),ft==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var ft=c(this.extraFields[1].value);this.uncompressedSize===nt.MAX_VALUE_32BITS&&(this.uncompressedSize=ft.readInt(8)),this.compressedSize===nt.MAX_VALUE_32BITS&&(this.compressedSize=ft.readInt(8)),this.localHeaderOffset===nt.MAX_VALUE_32BITS&&(this.localHeaderOffset=ft.readInt(8)),this.diskNumberStart===nt.MAX_VALUE_32BITS&&(this.diskNumberStart=ft.readInt(4))}},readExtraFields:function(ft){var pt,gt,wt,vt=ft.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});ft.index+4>>6:(ft<65536?ct[wt++]=224|ft>>>12:(ct[wt++]=240|ft>>>18,ct[wt++]=128|ft>>>12&63),ct[wt++]=128|ft>>>6&63),ct[wt++]=128|63&ft);return ct},$.buf2binstring=function(st){return it(st,st.length)},$.binstring2buf=function(st){for(var ct=new c.Buf8(st.length),ft=0,pt=ct.length;ft>10&1023,_t[pt++]=56320|1023>)}return it(_t,pt)},$.utf8border=function(st,ct){var ft;for((ct=ct||st.length)>st.length&&(ct=st.length),ft=ct-1;0<=ft&&(192&st[ft])==128;)ft--;return ft<0||ft===0?ct:ft+lt[st[ft]]>ct?ft:ct}},{"./common":41}],43:[function(s,a,$){a.exports=function(c,nt,at,lt){for(var et=65535&c|0,it=c>>>16&65535|0,st=0;at!==0;){for(at-=st=2e3>>1:nt>>>1;at[lt]=nt}return at}();a.exports=function(nt,at,lt,et){var it=c,st=et+lt;nt^=-1;for(var ct=et;ct>>8^it[255&(nt^at[ct])];return-1^nt}},{}],46:[function(s,a,$){var c,nt=s("../utils/common"),at=s("./trees"),lt=s("./adler32"),et=s("./crc32"),it=s("./messages"),st=0,ct=4,ft=0,pt=-2,gt=-1,wt=4,vt=2,_t=8,$t=9,Pt=286,Nt=30,Lt=19,Ft=2*Pt+1,Wt=15,_r=3,vr=258,_o=vr+_r+1,Jt=42,Kr=113,Ot=1,gr=2,$o=3,On=4;function tn(Dt,Jr){return Dt.msg=it[Jr],Jr}function Yr(Dt){return(Dt<<1)-(4Dt.avail_out&&(Dr=Dt.avail_out),Dr!==0&&(nt.arraySet(Dt.output,Jr.pending_buf,Jr.pending_out,Dr,Dt.next_out),Dt.next_out+=Dr,Jr.pending_out+=Dr,Dt.total_out+=Dr,Dt.avail_out-=Dr,Jr.pending-=Dr,Jr.pending===0&&(Jr.pending_out=0))}function Lr(Dt,Jr){at._tr_flush_block(Dt,0<=Dt.block_start?Dt.block_start:-1,Dt.strstart-Dt.block_start,Jr),Dt.block_start=Dt.strstart,Ir(Dt.strm)}function Zr(Dt,Jr){Dt.pending_buf[Dt.pending++]=Jr}function rn(Dt,Jr){Dt.pending_buf[Dt.pending++]=Jr>>>8&255,Dt.pending_buf[Dt.pending++]=255&Jr}function nn(Dt,Jr){var Dr,tr,er=Dt.max_chain_length,Er=Dt.strstart,Eo=Dt.prev_length,In=Dt.nice_match,en=Dt.strstart>Dt.w_size-_o?Dt.strstart-(Dt.w_size-_o):0,Io=Dt.window,Xo=Dt.w_mask,Do=Dt.prev,Qo=Dt.strstart+vr,Oo=Io[Er+Eo-1],vn=Io[Er+Eo];Dt.prev_length>=Dt.good_match&&(er>>=2),In>Dt.lookahead&&(In=Dt.lookahead);do if(Io[(Dr=Jr)+Eo]===vn&&Io[Dr+Eo-1]===Oo&&Io[Dr]===Io[Er]&&Io[++Dr]===Io[Er+1]){Er+=2,Dr++;do;while(Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Io[++Er]===Io[++Dr]&&Eren&&--er!=0);return Eo<=Dt.lookahead?Eo:Dt.lookahead}function Fo(Dt){var Jr,Dr,tr,er,Er,Eo,In,en,Io,Xo,Do=Dt.w_size;do{if(er=Dt.window_size-Dt.lookahead-Dt.strstart,Dt.strstart>=Do+(Do-_o)){for(nt.arraySet(Dt.window,Dt.window,Do,Do,0),Dt.match_start-=Do,Dt.strstart-=Do,Dt.block_start-=Do,Jr=Dr=Dt.hash_size;tr=Dt.head[--Jr],Dt.head[Jr]=Do<=tr?tr-Do:0,--Dr;);for(Jr=Dr=Do;tr=Dt.prev[--Jr],Dt.prev[Jr]=Do<=tr?tr-Do:0,--Dr;);er+=Do}if(Dt.strm.avail_in===0)break;if(Eo=Dt.strm,In=Dt.window,en=Dt.strstart+Dt.lookahead,Io=er,Xo=void 0,Xo=Eo.avail_in,Io=_r)for(Er=Dt.strstart-Dt.insert,Dt.ins_h=Dt.window[Er],Dt.ins_h=(Dt.ins_h<=_r&&(Dt.ins_h=(Dt.ins_h<=_r)if(tr=at._tr_tally(Dt,Dt.strstart-Dt.match_start,Dt.match_length-_r),Dt.lookahead-=Dt.match_length,Dt.match_length<=Dt.max_lazy_match&&Dt.lookahead>=_r){for(Dt.match_length--;Dt.strstart++,Dt.ins_h=(Dt.ins_h<=_r&&(Dt.ins_h=(Dt.ins_h<=_r&&Dt.match_length<=Dt.prev_length){for(er=Dt.strstart+Dt.lookahead-_r,tr=at._tr_tally(Dt,Dt.strstart-1-Dt.prev_match,Dt.prev_length-_r),Dt.lookahead-=Dt.prev_length-1,Dt.prev_length-=2;++Dt.strstart<=er&&(Dt.ins_h=(Dt.ins_h<Dt.pending_buf_size-5&&(Dr=Dt.pending_buf_size-5);;){if(Dt.lookahead<=1){if(Fo(Dt),Dt.lookahead===0&&Jr===st)return Ot;if(Dt.lookahead===0)break}Dt.strstart+=Dt.lookahead,Dt.lookahead=0;var tr=Dt.block_start+Dr;if((Dt.strstart===0||Dt.strstart>=tr)&&(Dt.lookahead=Dt.strstart-tr,Dt.strstart=tr,Lr(Dt,!1),Dt.strm.avail_out===0)||Dt.strstart-Dt.block_start>=Dt.w_size-_o&&(Lr(Dt,!1),Dt.strm.avail_out===0))return Ot}return Dt.insert=0,Jr===ct?(Lr(Dt,!0),Dt.strm.avail_out===0?$o:On):(Dt.strstart>Dt.block_start&&(Lr(Dt,!1),Dt.strm.avail_out),Ot)}),new zo(4,4,8,4,Ko),new zo(4,5,16,8,Ko),new zo(4,6,32,32,Ko),new zo(4,4,16,16,jo),new zo(8,16,32,32,jo),new zo(8,16,128,128,jo),new zo(8,32,128,256,jo),new zo(32,128,258,1024,jo),new zo(32,258,258,4096,jo)],$.deflateInit=function(Dt,Jr){return Ks(Dt,Jr,_t,15,8,0)},$.deflateInit2=Ks,$.deflateReset=Js,$.deflateResetKeep=Bo,$.deflateSetHeader=function(Dt,Jr){return Dt&&Dt.state?Dt.state.wrap!==2?pt:(Dt.state.gzhead=Jr,ft):pt},$.deflate=function(Dt,Jr){var Dr,tr,er,Er;if(!Dt||!Dt.state||5>8&255),Zr(tr,tr.gzhead.time>>16&255),Zr(tr,tr.gzhead.time>>24&255),Zr(tr,tr.level===9?2:2<=tr.strategy||tr.level<2?4:0),Zr(tr,255&tr.gzhead.os),tr.gzhead.extra&&tr.gzhead.extra.length&&(Zr(tr,255&tr.gzhead.extra.length),Zr(tr,tr.gzhead.extra.length>>8&255)),tr.gzhead.hcrc&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending,0)),tr.gzindex=0,tr.status=69):(Zr(tr,0),Zr(tr,0),Zr(tr,0),Zr(tr,0),Zr(tr,0),Zr(tr,tr.level===9?2:2<=tr.strategy||tr.level<2?4:0),Zr(tr,3),tr.status=Kr);else{var Eo=_t+(tr.w_bits-8<<4)<<8;Eo|=(2<=tr.strategy||tr.level<2?0:tr.level<6?1:tr.level===6?2:3)<<6,tr.strstart!==0&&(Eo|=32),Eo+=31-Eo%31,tr.status=Kr,rn(tr,Eo),tr.strstart!==0&&(rn(tr,Dt.adler>>>16),rn(tr,65535&Dt.adler)),Dt.adler=1}if(tr.status===69)if(tr.gzhead.extra){for(er=tr.pending;tr.gzindex<(65535&tr.gzhead.extra.length)&&(tr.pending!==tr.pending_buf_size||(tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Ir(Dt),er=tr.pending,tr.pending!==tr.pending_buf_size));)Zr(tr,255&tr.gzhead.extra[tr.gzindex]),tr.gzindex++;tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),tr.gzindex===tr.gzhead.extra.length&&(tr.gzindex=0,tr.status=73)}else tr.status=73;if(tr.status===73)if(tr.gzhead.name){er=tr.pending;do{if(tr.pending===tr.pending_buf_size&&(tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Ir(Dt),er=tr.pending,tr.pending===tr.pending_buf_size)){Er=1;break}Er=tr.gzindexer&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Er===0&&(tr.gzindex=0,tr.status=91)}else tr.status=91;if(tr.status===91)if(tr.gzhead.comment){er=tr.pending;do{if(tr.pending===tr.pending_buf_size&&(tr.gzhead.hcrc&&tr.pending>er&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Ir(Dt),er=tr.pending,tr.pending===tr.pending_buf_size)){Er=1;break}Er=tr.gzindexer&&(Dt.adler=et(Dt.adler,tr.pending_buf,tr.pending-er,er)),Er===0&&(tr.status=103)}else tr.status=103;if(tr.status===103&&(tr.gzhead.hcrc?(tr.pending+2>tr.pending_buf_size&&Ir(Dt),tr.pending+2<=tr.pending_buf_size&&(Zr(tr,255&Dt.adler),Zr(tr,Dt.adler>>8&255),Dt.adler=0,tr.status=Kr)):tr.status=Kr),tr.pending!==0){if(Ir(Dt),Dt.avail_out===0)return tr.last_flush=-1,ft}else if(Dt.avail_in===0&&Yr(Jr)<=Yr(Dr)&&Jr!==ct)return tn(Dt,-5);if(tr.status===666&&Dt.avail_in!==0)return tn(Dt,-5);if(Dt.avail_in!==0||tr.lookahead!==0||Jr!==st&&tr.status!==666){var In=tr.strategy===2?function(en,Io){for(var Xo;;){if(en.lookahead===0&&(Fo(en),en.lookahead===0)){if(Io===st)return Ot;break}if(en.match_length=0,Xo=at._tr_tally(en,0,en.window[en.strstart]),en.lookahead--,en.strstart++,Xo&&(Lr(en,!1),en.strm.avail_out===0))return Ot}return en.insert=0,Io===ct?(Lr(en,!0),en.strm.avail_out===0?$o:On):en.last_lit&&(Lr(en,!1),en.strm.avail_out===0)?Ot:gr}(tr,Jr):tr.strategy===3?function(en,Io){for(var Xo,Do,Qo,Oo,vn=en.window;;){if(en.lookahead<=vr){if(Fo(en),en.lookahead<=vr&&Io===st)return Ot;if(en.lookahead===0)break}if(en.match_length=0,en.lookahead>=_r&&0en.lookahead&&(en.match_length=en.lookahead)}if(en.match_length>=_r?(Xo=at._tr_tally(en,1,en.match_length-_r),en.lookahead-=en.match_length,en.strstart+=en.match_length,en.match_length=0):(Xo=at._tr_tally(en,0,en.window[en.strstart]),en.lookahead--,en.strstart++),Xo&&(Lr(en,!1),en.strm.avail_out===0))return Ot}return en.insert=0,Io===ct?(Lr(en,!0),en.strm.avail_out===0?$o:On):en.last_lit&&(Lr(en,!1),en.strm.avail_out===0)?Ot:gr}(tr,Jr):c[tr.level].func(tr,Jr);if(In!==$o&&In!==On||(tr.status=666),In===Ot||In===$o)return Dt.avail_out===0&&(tr.last_flush=-1),ft;if(In===gr&&(Jr===1?at._tr_align(tr):Jr!==5&&(at._tr_stored_block(tr,0,0,!1),Jr===3&&(So(tr.head),tr.lookahead===0&&(tr.strstart=0,tr.block_start=0,tr.insert=0))),Ir(Dt),Dt.avail_out===0))return tr.last_flush=-1,ft}return Jr!==ct?ft:tr.wrap<=0?1:(tr.wrap===2?(Zr(tr,255&Dt.adler),Zr(tr,Dt.adler>>8&255),Zr(tr,Dt.adler>>16&255),Zr(tr,Dt.adler>>24&255),Zr(tr,255&Dt.total_in),Zr(tr,Dt.total_in>>8&255),Zr(tr,Dt.total_in>>16&255),Zr(tr,Dt.total_in>>24&255)):(rn(tr,Dt.adler>>>16),rn(tr,65535&Dt.adler)),Ir(Dt),0=Dr.w_size&&(Er===0&&(So(Dr.head),Dr.strstart=0,Dr.block_start=0,Dr.insert=0),Io=new nt.Buf8(Dr.w_size),nt.arraySet(Io,Jr,Xo-Dr.w_size,Dr.w_size,0),Jr=Io,Xo=Dr.w_size),Eo=Dt.avail_in,In=Dt.next_in,en=Dt.input,Dt.avail_in=Xo,Dt.next_in=0,Dt.input=Jr,Fo(Dr);Dr.lookahead>=_r;){for(tr=Dr.strstart,er=Dr.lookahead-(_r-1);Dr.ins_h=(Dr.ins_h<>>=_r=Wt>>>24,$t-=_r,(_r=Wt>>>16&255)===0)gr[it++]=65535&Wt;else{if(!(16&_r)){if(!(64&_r)){Wt=Pt[(65535&Wt)+(_t&(1<<_r)-1)];continue t}if(32&_r){at.mode=12;break e}c.msg="invalid literal/length code",at.mode=30;break e}vr=65535&Wt,(_r&=15)&&($t<_r&&(_t+=Ot[lt++]<<$t,$t+=8),vr+=_t&(1<<_r)-1,_t>>>=_r,$t-=_r),$t<15&&(_t+=Ot[lt++]<<$t,$t+=8,_t+=Ot[lt++]<<$t,$t+=8),Wt=Nt[_t&Ft];r:for(;;){if(_t>>>=_r=Wt>>>24,$t-=_r,!(16&(_r=Wt>>>16&255))){if(!(64&_r)){Wt=Nt[(65535&Wt)+(_t&(1<<_r)-1)];continue r}c.msg="invalid distance code",at.mode=30;break e}if(_o=65535&Wt,$t<(_r&=15)&&(_t+=Ot[lt++]<<$t,($t+=8)<_r&&(_t+=Ot[lt++]<<$t,$t+=8)),ft<(_o+=_t&(1<<_r)-1)){c.msg="invalid distance too far back",at.mode=30;break e}if(_t>>>=_r,$t-=_r,(_r=it-st)<_o){if(gt<(_r=_o-_r)&&at.sane){c.msg="invalid distance too far back",at.mode=30;break e}if(Kr=vt,(Jt=0)===wt){if(Jt+=pt-_r,_r>3,_t&=(1<<($t-=vr<<3))-1,c.next_in=lt,c.next_out=it,c.avail_in=lt>>24&255)+(Jt>>>8&65280)+((65280&Jt)<<8)+((255&Jt)<<24)}function _t(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new c.Buf16(320),this.work=new c.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function $t(Jt){var Kr;return Jt&&Jt.state?(Kr=Jt.state,Jt.total_in=Jt.total_out=Kr.total=0,Jt.msg="",Kr.wrap&&(Jt.adler=1&Kr.wrap),Kr.mode=pt,Kr.last=0,Kr.havedict=0,Kr.dmax=32768,Kr.head=null,Kr.hold=0,Kr.bits=0,Kr.lencode=Kr.lendyn=new c.Buf32(gt),Kr.distcode=Kr.distdyn=new c.Buf32(wt),Kr.sane=1,Kr.back=-1,ct):ft}function Pt(Jt){var Kr;return Jt&&Jt.state?((Kr=Jt.state).wsize=0,Kr.whave=0,Kr.wnext=0,$t(Jt)):ft}function Nt(Jt,Kr){var Ot,gr;return Jt&&Jt.state?(gr=Jt.state,Kr<0?(Ot=0,Kr=-Kr):(Ot=1+(Kr>>4),Kr<48&&(Kr&=15)),Kr&&(Kr<8||15=On.wsize?(c.arraySet(On.window,Kr,Ot-On.wsize,On.wsize,0),On.wnext=0,On.whave=On.wsize):(gr<($o=On.wsize-On.wnext)&&($o=gr),c.arraySet(On.window,Kr,Ot-gr,$o,On.wnext),(gr-=$o)?(c.arraySet(On.window,Kr,Ot-gr,gr,0),On.wnext=gr,On.whave=On.wsize):(On.wnext+=$o,On.wnext===On.wsize&&(On.wnext=0),On.whave>>8&255,Ot.check=at(Ot.check,Er,2,0),Lr=Ir=0,Ot.mode=2;break}if(Ot.flags=0,Ot.head&&(Ot.head.done=!1),!(1&Ot.wrap)||(((255&Ir)<<8)+(Ir>>8))%31){Jt.msg="incorrect header check",Ot.mode=30;break}if((15&Ir)!=8){Jt.msg="unknown compression method",Ot.mode=30;break}if(Lr-=4,Dt=8+(15&(Ir>>>=4)),Ot.wbits===0)Ot.wbits=Dt;else if(Dt>Ot.wbits){Jt.msg="invalid window size",Ot.mode=30;break}Ot.dmax=1<>8&1),512&Ot.flags&&(Er[0]=255&Ir,Er[1]=Ir>>>8&255,Ot.check=at(Ot.check,Er,2,0)),Lr=Ir=0,Ot.mode=3;case 3:for(;Lr<32;){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>8&255,Er[2]=Ir>>>16&255,Er[3]=Ir>>>24&255,Ot.check=at(Ot.check,Er,4,0)),Lr=Ir=0,Ot.mode=4;case 4:for(;Lr<16;){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>8),512&Ot.flags&&(Er[0]=255&Ir,Er[1]=Ir>>>8&255,Ot.check=at(Ot.check,Er,2,0)),Lr=Ir=0,Ot.mode=5;case 5:if(1024&Ot.flags){for(;Lr<16;){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>8&255,Ot.check=at(Ot.check,Er,2,0)),Lr=Ir=0}else Ot.head&&(Ot.head.extra=null);Ot.mode=6;case 6:if(1024&Ot.flags&&(Yr<(nn=Ot.length)&&(nn=Yr),nn&&(Ot.head&&(Dt=Ot.head.extra_len-Ot.length,Ot.head.extra||(Ot.head.extra=new Array(Ot.head.extra_len)),c.arraySet(Ot.head.extra,gr,On,nn,Dt)),512&Ot.flags&&(Ot.check=at(Ot.check,gr,nn,On)),Yr-=nn,On+=nn,Ot.length-=nn),Ot.length))break e;Ot.length=0,Ot.mode=7;case 7:if(2048&Ot.flags){if(Yr===0)break e;for(nn=0;Dt=gr[On+nn++],Ot.head&&Dt&&Ot.length<65536&&(Ot.head.name+=String.fromCharCode(Dt)),Dt&&nn>9&1,Ot.head.done=!0),Jt.adler=Ot.check=0,Ot.mode=12;break;case 10:for(;Lr<32;){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>=7&Lr,Lr-=7&Lr,Ot.mode=27;break}for(;Lr<3;){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>=1)){case 0:Ot.mode=14;break;case 1:if(vr(Ot),Ot.mode=20,Kr!==6)break;Ir>>>=2,Lr-=2;break e;case 2:Ot.mode=17;break;case 3:Jt.msg="invalid block type",Ot.mode=30}Ir>>>=2,Lr-=2;break;case 14:for(Ir>>>=7&Lr,Lr-=7&Lr;Lr<32;){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>16^65535)){Jt.msg="invalid stored block lengths",Ot.mode=30;break}if(Ot.length=65535&Ir,Lr=Ir=0,Ot.mode=15,Kr===6)break e;case 15:Ot.mode=16;case 16:if(nn=Ot.length){if(Yr>>=5,Lr-=5,Ot.ndist=1+(31&Ir),Ir>>>=5,Lr-=5,Ot.ncode=4+(15&Ir),Ir>>>=4,Lr-=4,286>>=3,Lr-=3}for(;Ot.have<19;)Ot.lens[Eo[Ot.have++]]=0;if(Ot.lencode=Ot.lendyn,Ot.lenbits=7,Dr={bits:Ot.lenbits},Jr=et(0,Ot.lens,0,19,Ot.lencode,0,Ot.work,Dr),Ot.lenbits=Dr.bits,Jr){Jt.msg="invalid code lengths set",Ot.mode=30;break}Ot.have=0,Ot.mode=19;case 19:for(;Ot.have>>16&255,Zo=65535&er,!((jo=er>>>24)<=Lr);){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>=jo,Lr-=jo,Ot.lens[Ot.have++]=Zo;else{if(Zo===16){for(tr=jo+2;Lr>>=jo,Lr-=jo,Ot.have===0){Jt.msg="invalid bit length repeat",Ot.mode=30;break}Dt=Ot.lens[Ot.have-1],nn=3+(3&Ir),Ir>>>=2,Lr-=2}else if(Zo===17){for(tr=jo+3;Lr>>=jo)),Ir>>>=3,Lr-=3}else{for(tr=jo+7;Lr>>=jo)),Ir>>>=7,Lr-=7}if(Ot.have+nn>Ot.nlen+Ot.ndist){Jt.msg="invalid bit length repeat",Ot.mode=30;break}for(;nn--;)Ot.lens[Ot.have++]=Dt}}if(Ot.mode===30)break;if(Ot.lens[256]===0){Jt.msg="invalid code -- missing end-of-block",Ot.mode=30;break}if(Ot.lenbits=9,Dr={bits:Ot.lenbits},Jr=et(it,Ot.lens,0,Ot.nlen,Ot.lencode,0,Ot.work,Dr),Ot.lenbits=Dr.bits,Jr){Jt.msg="invalid literal/lengths set",Ot.mode=30;break}if(Ot.distbits=6,Ot.distcode=Ot.distdyn,Dr={bits:Ot.distbits},Jr=et(st,Ot.lens,Ot.nlen,Ot.ndist,Ot.distcode,0,Ot.work,Dr),Ot.distbits=Dr.bits,Jr){Jt.msg="invalid distances set",Ot.mode=30;break}if(Ot.mode=20,Kr===6)break e;case 20:Ot.mode=21;case 21:if(6<=Yr&&258<=So){Jt.next_out=tn,Jt.avail_out=So,Jt.next_in=On,Jt.avail_in=Yr,Ot.hold=Ir,Ot.bits=Lr,lt(Jt,rn),tn=Jt.next_out,$o=Jt.output,So=Jt.avail_out,On=Jt.next_in,gr=Jt.input,Yr=Jt.avail_in,Ir=Ot.hold,Lr=Ot.bits,Ot.mode===12&&(Ot.back=-1);break}for(Ot.back=0;zo=(er=Ot.lencode[Ir&(1<>>16&255,Zo=65535&er,!((jo=er>>>24)<=Lr);){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>Bo)])>>>16&255,Zo=65535&er,!(Bo+(jo=er>>>24)<=Lr);){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>=Bo,Lr-=Bo,Ot.back+=Bo}if(Ir>>>=jo,Lr-=jo,Ot.back+=jo,Ot.length=Zo,zo===0){Ot.mode=26;break}if(32&zo){Ot.back=-1,Ot.mode=12;break}if(64&zo){Jt.msg="invalid literal/length code",Ot.mode=30;break}Ot.extra=15&zo,Ot.mode=22;case 22:if(Ot.extra){for(tr=Ot.extra;Lr>>=Ot.extra,Lr-=Ot.extra,Ot.back+=Ot.extra}Ot.was=Ot.length,Ot.mode=23;case 23:for(;zo=(er=Ot.distcode[Ir&(1<>>16&255,Zo=65535&er,!((jo=er>>>24)<=Lr);){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>Bo)])>>>16&255,Zo=65535&er,!(Bo+(jo=er>>>24)<=Lr);){if(Yr===0)break e;Yr--,Ir+=gr[On++]<>>=Bo,Lr-=Bo,Ot.back+=Bo}if(Ir>>>=jo,Lr-=jo,Ot.back+=jo,64&zo){Jt.msg="invalid distance code",Ot.mode=30;break}Ot.offset=Zo,Ot.extra=15&zo,Ot.mode=24;case 24:if(Ot.extra){for(tr=Ot.extra;Lr>>=Ot.extra,Lr-=Ot.extra,Ot.back+=Ot.extra}if(Ot.offset>Ot.dmax){Jt.msg="invalid distance too far back",Ot.mode=30;break}Ot.mode=25;case 25:if(So===0)break e;if(nn=rn-So,Ot.offset>nn){if((nn=Ot.offset-nn)>Ot.whave&&Ot.sane){Jt.msg="invalid distance too far back",Ot.mode=30;break}Fo=nn>Ot.wnext?(nn-=Ot.wnext,Ot.wsize-nn):Ot.wnext-nn,nn>Ot.length&&(nn=Ot.length),Ko=Ot.window}else Ko=$o,Fo=tn-Ot.offset,nn=Ot.length;for(SoFt?(_r=Fo[Ko+wt[Kr]],Lr[Zr+wt[Kr]]):(_r=96,0),_t=1<>tn)+($t-=_t)]=Wt<<24|_r<<16|vr|0,$t!==0;);for(_t=1<>=1;if(_t!==0?(Ir&=_t-1,Ir+=_t):Ir=0,Kr++,--rn[Jt]==0){if(Jt===gr)break;Jt=st[ct+wt[Kr]]}if($o>>7)]}function Zr(er,Er){er.pending_buf[er.pending++]=255&Er,er.pending_buf[er.pending++]=Er>>>8&255}function rn(er,Er,Eo){er.bi_valid>vt-Eo?(er.bi_buf|=Er<>vt-er.bi_valid,er.bi_valid+=Eo-vt):(er.bi_buf|=Er<>>=1,Eo<<=1,0<--Er;);return Eo>>>1}function Ko(er,Er,Eo){var In,en,Io=new Array(wt+1),Xo=0;for(In=1;In<=wt;In++)Io[In]=Xo=Xo+Eo[In-1]<<1;for(en=0;en<=Er;en++){var Do=er[2*en+1];Do!==0&&(er[2*en]=Fo(Io[Do]++,Do))}}function jo(er){var Er;for(Er=0;Er>1;1<=Eo;Eo--)Bo(er,Io,Eo);for(en=Qo;Eo=er.heap[1],er.heap[1]=er.heap[er.heap_len--],Bo(er,Io,1),In=er.heap[1],er.heap[--er.heap_max]=Eo,er.heap[--er.heap_max]=In,Io[2*en]=Io[2*Eo]+Io[2*In],er.depth[en]=(er.depth[Eo]>=er.depth[In]?er.depth[Eo]:er.depth[In])+1,Io[2*Eo+1]=Io[2*In+1]=en,er.heap[1]=en++,Bo(er,Io,1),2<=er.heap_len;);er.heap[--er.heap_max]=er.heap[1],function(vn,Po){var Yo,Lo,Jo,Xs,na,ba,ga=Po.dyn_tree,eu=Po.max_code,mu=Po.stat_desc.static_tree,gu=Po.stat_desc.has_stree,Tu=Po.stat_desc.extra_bits,yu=Po.stat_desc.extra_base,iu=Po.stat_desc.max_length,uu=0;for(Xs=0;Xs<=wt;Xs++)vn.bl_count[Xs]=0;for(ga[2*vn.heap[vn.heap_max]+1]=0,Yo=vn.heap_max+1;Yo>=7;en>>=1)if(1&Oo&&Do.dyn_ltree[2*Qo]!==0)return nt;if(Do.dyn_ltree[18]!==0||Do.dyn_ltree[20]!==0||Do.dyn_ltree[26]!==0)return at;for(Qo=32;Qo>>3,(Io=er.static_len+3+7>>>3)<=en&&(en=Io)):en=Io=Eo+5,Eo+4<=en&&Er!==-1?tr(er,Er,Eo,In):er.strategy===4||Io===en?(rn(er,2+(In?1:0),3),Js(er,_o,Jt)):(rn(er,4+(In?1:0),3),function(Do,Qo,Oo,vn){var Po;for(rn(Do,Qo-257,5),rn(Do,Oo-1,5),rn(Do,vn-4,4),Po=0;Po>>8&255,er.pending_buf[er.d_buf+2*er.last_lit+1]=255&Er,er.pending_buf[er.l_buf+er.last_lit]=255&Eo,er.last_lit++,Er===0?er.dyn_ltree[2*Eo]++:(er.matches++,Er--,er.dyn_ltree[2*(Ot[Eo]+st+1)]++,er.dyn_dtree[2*Lr(Er)]++),er.last_lit===er.lit_bufsize-1},$._tr_align=function(er){rn(er,2,3),nn(er,$t,_o),function(Er){Er.bi_valid===16?(Zr(Er,Er.bi_buf),Er.bi_buf=0,Er.bi_valid=0):8<=Er.bi_valid&&(Er.pending_buf[Er.pending++]=255&Er.bi_buf,Er.bi_buf>>=8,Er.bi_valid-=8)}(er)}},{"../utils/common":41}],53:[function(s,a,$){a.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(s,a,$){(function(c){(function(nt,at){if(!nt.setImmediate){var lt,et,it,st,ct=1,ft={},pt=!1,gt=nt.document,wt=Object.getPrototypeOf&&Object.getPrototypeOf(nt);wt=wt&&wt.setTimeout?wt:nt,lt={}.toString.call(nt.process)==="[object process]"?function(Pt){process.nextTick(function(){_t(Pt)})}:function(){if(nt.postMessage&&!nt.importScripts){var Pt=!0,Nt=nt.onmessage;return nt.onmessage=function(){Pt=!1},nt.postMessage("","*"),nt.onmessage=Nt,Pt}}()?(st="setImmediate$"+Math.random()+"$",nt.addEventListener?nt.addEventListener("message",$t,!1):nt.attachEvent("onmessage",$t),function(Pt){nt.postMessage(st+Pt,"*")}):nt.MessageChannel?((it=new MessageChannel).port1.onmessage=function(Pt){_t(Pt.data)},function(Pt){it.port2.postMessage(Pt)}):gt&&"onreadystatechange"in gt.createElement("script")?(et=gt.documentElement,function(Pt){var Nt=gt.createElement("script");Nt.onreadystatechange=function(){_t(Pt),Nt.onreadystatechange=null,et.removeChild(Nt),Nt=null},et.appendChild(Nt)}):function(Pt){setTimeout(_t,0,Pt)},wt.setImmediate=function(Pt){typeof Pt!="function"&&(Pt=new Function(""+Pt));for(var Nt=new Array(arguments.length-1),Lt=0;Lt"u"?c===void 0?this:c:self)}).call(this,typeof commonjsGlobal<"u"?commonjsGlobal:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(jszip_min);var jszip_minExports=jszip_min.exports;const JSZip=getDefaultExportFromCjs(jszip_minExports);//! moment.js //! version : 2.30.1 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT @@ -96,13 +96,13 @@ PERFORMANCE OF THIS SOFTWARE. LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */function e(et,it,st,ct){function ft(pt){return pt instanceof st?pt:new st(function(gt){gt(pt)})}return new(st||(st=Promise))(function(pt,gt){function wt($t){try{_t(ct.next($t))}catch(Pt){gt(Pt)}}function vt($t){try{_t(ct.throw($t))}catch(Pt){gt(Pt)}}function _t($t){$t.done?pt($t.value):ft($t.value).then(wt,vt)}_t((ct=ct.apply(et,[])).next())})}for(var o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=typeof Uint8Array>"u"?[]:new Uint8Array(256),a=0;a>2],ft+=o[(it[st]&3)<<4|it[st+1]>>4],ft+=o[(it[st+1]&15)<<2|it[st+2]>>6],ft+=o[it[st+2]&63];return ct%3===2?ft=ft.substring(0,ft.length-1)+"=":ct%3===1&&(ft=ft.substring(0,ft.length-2)+"=="),ft};const c=new Map,nt=new Map;function at(et,it,st){return e(this,void 0,void 0,function*(){const ct=`${et}-${it}`;if("OffscreenCanvas"in globalThis){if(nt.has(ct))return nt.get(ct);const ft=new OffscreenCanvas(et,it);ft.getContext("2d");const gt=yield(yield ft.convertToBlob(st)).arrayBuffer(),wt=$(gt);return nt.set(ct,wt),wt}else return""})}const lt=self;lt.onmessage=function(et){return e(this,void 0,void 0,function*(){if("OffscreenCanvas"in globalThis){const{id:it,bitmap:st,width:ct,height:ft,dataURLOptions:pt}=et.data,gt=at(ct,ft,pt),wt=new OffscreenCanvas(ct,ft);wt.getContext("2d").drawImage(st,0,0),st.close();const _t=yield wt.convertToBlob(pt),$t=_t.type,Pt=yield _t.arrayBuffer(),Nt=$(Pt);if(!c.has(it)&&(yield gt)===Nt)return c.set(it,Nt),lt.postMessage({id:it});if(c.get(it)===Nt)return lt.postMessage({id:it});lt.postMessage({id:it,type:$t,base64:Nt,width:ct,height:ft}),c.set(it,Nt)}else return lt.postMessage({id:et.data.id})})}})()});class CanvasManager{reset(){this.pendingCanvasMutations.clear(),this.resetObservers&&this.resetObservers()}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}constructor(o){this.pendingCanvasMutations=new Map,this.rafStamps={latestId:0,invokeId:null},this.frozen=!1,this.locked=!1,this.processMutation=(lt,et)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(lt)||this.pendingCanvasMutations.set(lt,[]),this.pendingCanvasMutations.get(lt).push(et)};const{sampling:s="all",win:a,blockClass:$,blockSelector:c,recordCanvas:nt,dataURLOptions:at}=o;this.mutationCb=o.mutationCb,this.mirror=o.mirror,nt&&s==="all"&&this.initCanvasMutationObserver(a,$,c),nt&&typeof s=="number"&&this.initCanvasFPSObserver(s,a,$,c,{dataURLOptions:at})}initCanvasFPSObserver(o,s,a,$,c){const nt=initCanvasContextObserver(s,a,$,!0),at=new Map,lt=new WorkerFactory;lt.onmessage=pt=>{const{id:gt}=pt.data;if(at.set(gt,!1),!("base64"in pt.data))return;const{base64:wt,type:vt,width:_t,height:$t}=pt.data;this.mutationCb({id:gt,type:CanvasContext["2D"],commands:[{property:"clearRect",args:[0,0,_t,$t]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:wt}],type:vt}]},0,0]}]})};const et=1e3/o;let it=0,st;const ct=()=>{const pt=[];return s.document.querySelectorAll("canvas").forEach(gt=>{isBlocked(gt,a,$,!0)||pt.push(gt)}),pt},ft=pt=>{if(it&&pt-it__awaiter(this,void 0,void 0,function*(){var wt;const vt=this.mirror.getId(gt);if(at.get(vt)||gt.width===0||gt.height===0)return;if(at.set(vt,!0),["webgl","webgl2"].includes(gt.__context)){const $t=gt.getContext(gt.__context);((wt=$t?.getContextAttributes())===null||wt===void 0?void 0:wt.preserveDrawingBuffer)===!1&&$t.clear($t.COLOR_BUFFER_BIT)}const _t=yield createImageBitmap(gt);lt.postMessage({id:vt,bitmap:_t,width:gt.width,height:gt.height,dataURLOptions:c.dataURLOptions},[_t])})),st=requestAnimationFrame(ft)};st=requestAnimationFrame(ft),this.resetObservers=()=>{nt(),cancelAnimationFrame(st)}}initCanvasMutationObserver(o,s,a){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();const $=initCanvasContextObserver(o,s,a,!1),c=initCanvas2DMutationObserver(this.processMutation.bind(this),o,s,a),nt=initCanvasWebGLMutationObserver(this.processMutation.bind(this),o,s,a,this.mirror);this.resetObservers=()=>{$(),c(),nt()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){const o=s=>{this.rafStamps.latestId=s,requestAnimationFrame(o)};requestAnimationFrame(o)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((o,s)=>{const a=this.mirror.getId(s);this.flushPendingCanvasMutationFor(s,a)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(o,s){if(this.frozen||this.locked)return;const a=this.pendingCanvasMutations.get(o);if(!a||s===-1)return;const $=a.map(nt=>__rest(nt,["type"])),{type:c}=a[0];this.mutationCb({id:s,type:c,commands:$}),this.pendingCanvasMutations.delete(o)}}class StylesheetManager{constructor(o){this.trackedLinkElements=new WeakSet,this.styleMirror=new StyleSheetMirror,this.mutationCb=o.mutationCb,this.adoptedStyleSheetCb=o.adoptedStyleSheetCb}attachLinkElement(o,s){"_cssText"in s.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:s.id,attributes:s.attributes}]}),this.trackLinkElement(o)}trackLinkElement(o){this.trackedLinkElements.has(o)||(this.trackedLinkElements.add(o),this.trackStylesheetInLinkElement(o))}adoptStyleSheets(o,s){if(o.length===0)return;const a={id:s,styleIds:[]},$=[];for(const c of o){let nt;this.styleMirror.has(c)?nt=this.styleMirror.getId(c):(nt=this.styleMirror.add(c),$.push({styleId:nt,rules:Array.from(c.rules||CSSRule,(at,lt)=>({rule:stringifyRule(at),index:lt}))})),a.styleIds.push(nt)}$.length>0&&(a.styles=$),this.adoptedStyleSheetCb(a)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(o){}}class ProcessedNodeManager{constructor(){this.nodeMap=new WeakMap,this.loop=!0,this.periodicallyClear()}periodicallyClear(){requestAnimationFrame(()=>{this.clear(),this.loop&&this.periodicallyClear()})}inOtherBuffer(o,s){const a=this.nodeMap.get(o);return a&&Array.from(a).some($=>$!==s)}add(o,s){this.nodeMap.set(o,(this.nodeMap.get(o)||new Set).add(s))}clear(){this.nodeMap=new WeakMap}destroy(){this.loop=!1}}function wrapEvent(e){return Object.assign(Object.assign({},e),{timestamp:nowTimestamp()})}let wrappedEmit,takeFullSnapshot,canvasManager,recording=!1;const mirror=createMirror();function record(e={}){const{emit:o,checkoutEveryNms:s,checkoutEveryNth:a,blockClass:$="rr-block",blockSelector:c=null,ignoreClass:nt="rr-ignore",ignoreSelector:at=null,maskTextClass:lt="rr-mask",maskTextSelector:et=null,inlineStylesheet:it=!0,maskAllInputs:st,maskInputOptions:ct,slimDOMOptions:ft,maskInputFn:pt,maskTextFn:gt,hooks:wt,packFn:vt,sampling:_t={},dataURLOptions:$t={},mousemoveWait:Pt,recordDOM:Nt=!0,recordCanvas:Lt=!1,recordCrossOriginIframes:Ft=!1,recordAfter:Wt=e.recordAfter==="DOMContentLoaded"?e.recordAfter:"load",userTriggeredOnInput:_r=!1,collectFonts:vr=!1,inlineImages:_o=!1,plugins:Jt,keepIframeSrcFn:Kr=()=>!1,ignoreCSSAttributes:Ot=new Set([]),errorHandler:gr}=e;registerErrorHandler(gr);const $o=Ft?window.parent===window:!0;let On=!1;if(!$o)try{window.parent.document&&(On=!1)}catch{On=!0}if($o&&!o)throw new Error("emit function is required");Pt!==void 0&&_t.mousemove===void 0&&(_t.mousemove=Pt),mirror.reset();const en=st===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0}:ct!==void 0?ct:{password:!0},Yr=ft===!0||ft==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:ft==="all",headMetaDescKeywords:ft==="all"}:ft||{};polyfill();let So,Er=0;const Ir=Bo=>{for(const Js of Jt||[])Js.eventProcessor&&(Bo=Js.eventProcessor(Bo));return vt&&!On&&(Bo=vt(Bo)),Bo};wrappedEmit=(Bo,Js)=>{var Lo;if(!((Lo=mutationBuffers[0])===null||Lo===void 0)&&Lo.isFrozen()&&Bo.type!==EventType$1.FullSnapshot&&!(Bo.type===EventType$1.IncrementalSnapshot&&Bo.data.source===IncrementalSource$1.Mutation)&&mutationBuffers.forEach(Dt=>Dt.unfreeze()),$o)o?.(Ir(Bo),Js);else if(On){const Dt={type:"rrweb",event:Ir(Bo),origin:window.location.origin,isCheckout:Js};window.parent.postMessage(Dt,"*")}if(Bo.type===EventType$1.FullSnapshot)So=Bo,Er=0;else if(Bo.type===EventType$1.IncrementalSnapshot){if(Bo.data.source===IncrementalSource$1.Mutation&&Bo.data.isAttachIframe)return;Er++;const Dt=a&&Er>=a,vn=s&&Bo.timestamp-So.timestamp>s;(Dt||vn)&&takeFullSnapshot(!0)}};const Zr=Bo=>{wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Mutation},Bo)}))},tn=Bo=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Scroll},Bo)})),_n=Bo=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.CanvasMutation},Bo)})),zo=Bo=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.AdoptedStyleSheet},Bo)})),Xo=new StylesheetManager({mutationCb:Zr,adoptedStyleSheetCb:zo}),Do=new IframeManager({mirror,mutationCb:Zr,stylesheetManager:Xo,recordCrossOriginIframes:Ft,wrappedEmit});for(const Bo of Jt||[])Bo.getMirror&&Bo.getMirror({nodeMirror:mirror,crossOriginIframeMirror:Do.crossOriginIframeMirror,crossOriginIframeStyleMirror:Do.crossOriginIframeStyleMirror});const Yo=new ProcessedNodeManager;canvasManager=new CanvasManager({recordCanvas:Lt,mutationCb:_n,win:window,blockClass:$,blockSelector:c,mirror,sampling:_t.canvas,dataURLOptions:$t});const Jo=new ShadowDomManager({mutationCb:Zr,scrollCb:tn,bypassOptions:{blockClass:$,blockSelector:c,maskTextClass:lt,maskTextSelector:et,inlineStylesheet:it,maskInputOptions:en,dataURLOptions:$t,maskTextFn:gt,maskInputFn:pt,recordCanvas:Lt,inlineImages:_o,sampling:_t,slimDOMOptions:Yr,iframeManager:Do,stylesheetManager:Xo,canvasManager,keepIframeSrcFn:Kr,processedNodeManager:Yo},mirror});takeFullSnapshot=(Bo=!1)=>{if(!Nt)return;wrappedEmit(wrapEvent({type:EventType$1.Meta,data:{href:window.location.href,width:getWindowWidth(),height:getWindowHeight()}}),Bo),Xo.reset(),Jo.init(),mutationBuffers.forEach(Lo=>Lo.lock());const Js=snapshot(document,{mirror,blockClass:$,blockSelector:c,maskTextClass:lt,maskTextSelector:et,inlineStylesheet:it,maskAllInputs:en,maskTextFn:gt,slimDOM:Yr,dataURLOptions:$t,recordCanvas:Lt,inlineImages:_o,onSerialize:Lo=>{isSerializedIframe(Lo,mirror)&&Do.addIframe(Lo),isSerializedStylesheet(Lo,mirror)&&Xo.trackLinkElement(Lo),hasShadowRoot(Lo)&&Jo.addShadowRoot(Lo.shadowRoot,document)},onIframeLoad:(Lo,Dt)=>{Do.attachIframe(Lo,Dt),Jo.observeAttachShadow(Lo)},onStylesheetLoad:(Lo,Dt)=>{Xo.attachLinkElement(Lo,Dt)},keepIframeSrcFn:Kr});if(!Js)return console.warn("Failed to snapshot the document");wrappedEmit(wrapEvent({type:EventType$1.FullSnapshot,data:{node:Js,initialOffset:getWindowScroll(window)}}),Bo),mutationBuffers.forEach(Lo=>Lo.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&Xo.adoptStyleSheets(document.adoptedStyleSheets,mirror.getId(document))};try{const Bo=[],Js=Dt=>{var vn;return callbackWrapper(initObservers)({mutationCb:Zr,mousemoveCb:(Lr,tr)=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:{source:tr,positions:Lr}})),mouseInteractionCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.MouseInteraction},Lr)})),scrollCb:tn,viewportResizeCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.ViewportResize},Lr)})),inputCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Input},Lr)})),mediaInteractionCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.MediaInteraction},Lr)})),styleSheetRuleCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.StyleSheetRule},Lr)})),styleDeclarationCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.StyleDeclaration},Lr)})),canvasMutationCb:_n,fontCb:Lr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Font},Lr)})),selectionCb:Lr=>{wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Selection},Lr)}))},customElementCb:Lr=>{wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.CustomElement},Lr)}))},blockClass:$,ignoreClass:nt,ignoreSelector:at,maskTextClass:lt,maskTextSelector:et,maskInputOptions:en,inlineStylesheet:it,sampling:_t,recordDOM:Nt,recordCanvas:Lt,inlineImages:_o,userTriggeredOnInput:_r,collectFonts:vr,doc:Dt,maskInputFn:pt,maskTextFn:gt,keepIframeSrcFn:Kr,blockSelector:c,slimDOMOptions:Yr,dataURLOptions:$t,mirror,iframeManager:Do,stylesheetManager:Xo,shadowDomManager:Jo,processedNodeManager:Yo,canvasManager,ignoreCSSAttributes:Ot,plugins:((vn=Jt?.filter(Lr=>Lr.observer))===null||vn===void 0?void 0:vn.map(Lr=>({observer:Lr.observer,options:Lr.options,callback:tr=>wrappedEmit(wrapEvent({type:EventType$1.Plugin,data:{plugin:Lr.name,payload:tr}}))})))||[]},wt)};Do.addLoadListener(Dt=>{try{Bo.push(Js(Dt.contentDocument))}catch(vn){console.warn(vn)}});const Lo=()=>{takeFullSnapshot(),Bo.push(Js(document)),recording=!0};return document.readyState==="interactive"||document.readyState==="complete"?Lo():(Bo.push(on("DOMContentLoaded",()=>{wrappedEmit(wrapEvent({type:EventType$1.DomContentLoaded,data:{}})),Wt==="DOMContentLoaded"&&Lo()})),Bo.push(on("load",()=>{wrappedEmit(wrapEvent({type:EventType$1.Load,data:{}})),Wt==="load"&&Lo()},window))),()=>{Bo.forEach(Dt=>Dt()),Yo.destroy(),recording=!1,unregisterErrorHandler()}}catch(Bo){console.warn(Bo)}}record.addCustomEvent=(e,o)=>{if(!recording)throw new Error("please add custom event after start recording");wrappedEmit(wrapEvent({type:EventType$1.Custom,data:{tag:e,payload:o}}))};record.freezePage=()=>{mutationBuffers.forEach(e=>e.freeze())};record.takeFullSnapshot=e=>{if(!recording)throw new Error("please take full snapshot after start recording");takeFullSnapshot(e)};record.mirror=mirror;var EventType=(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e))(EventType||{}),IncrementalSource=(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e))(IncrementalSource||{}),Config={DEBUG:!1,LIB_VERSION:"2.55.1"},win;if(typeof window>"u"){var loc={hostname:""};win={navigator:{userAgent:"",onLine:!0},document:{location:loc,referrer:""},screen:{width:0,height:0},location:loc}}else win=window;var MAX_RECORDING_MS=24*60*60*1e3,MAX_VALUE_FOR_MIN_RECORDING_MS=8*1e3,ArrayProto$1=Array.prototype,FuncProto=Function.prototype,ObjProto$1=Object.prototype,slice$1=ArrayProto$1.slice,toString$1=ObjProto$1.toString,hasOwnProperty$1=ObjProto$1.hasOwnProperty,windowConsole=win.console,navigator$1=win.navigator,document$1=win.document,windowOpera=win.opera,screen=win.screen,userAgent=navigator$1.userAgent,nativeBind=FuncProto.bind,nativeForEach=ArrayProto$1.forEach,nativeIndexOf=ArrayProto$1.indexOf,nativeMap=ArrayProto$1.map,nativeIsArray$1=Array.isArray,breaker={},_$3={trim:function(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},console$1={log:function(){if(Config.DEBUG&&!_$3.isUndefined(windowConsole)&&windowConsole)try{windowConsole.log.apply(windowConsole,arguments)}catch{_$3.each(arguments,function(o){windowConsole.log(o)})}},warn:function(){if(Config.DEBUG&&!_$3.isUndefined(windowConsole)&&windowConsole){var e=["Mixpanel warning:"].concat(_$3.toArray(arguments));try{windowConsole.warn.apply(windowConsole,e)}catch{_$3.each(e,function(s){windowConsole.warn(s)})}}},error:function(){if(Config.DEBUG&&!_$3.isUndefined(windowConsole)&&windowConsole){var e=["Mixpanel error:"].concat(_$3.toArray(arguments));try{windowConsole.error.apply(windowConsole,e)}catch{_$3.each(e,function(s){windowConsole.error(s)})}}},critical:function(){if(!_$3.isUndefined(windowConsole)&&windowConsole){var e=["Mixpanel error:"].concat(_$3.toArray(arguments));try{windowConsole.error.apply(windowConsole,e)}catch{_$3.each(e,function(s){windowConsole.error(s)})}}}},log_func_with_prefix=function(e,o){return function(){return arguments[0]="["+o+"] "+arguments[0],e.apply(console$1,arguments)}},console_with_prefix=function(e){return{log:log_func_with_prefix(console$1.log,e),error:log_func_with_prefix(console$1.error,e),critical:log_func_with_prefix(console$1.critical,e)}};_$3.bind=function(e,o){var s,a;if(nativeBind&&e.bind===nativeBind)return nativeBind.apply(e,slice$1.call(arguments,1));if(!_$3.isFunction(e))throw new TypeError;return s=slice$1.call(arguments,2),a=function(){if(!(this instanceof a))return e.apply(o,s.concat(slice$1.call(arguments)));var $={};$.prototype=e.prototype;var c=new $;$.prototype=null;var nt=e.apply(c,s.concat(slice$1.call(arguments)));return Object(nt)===nt?nt:c},a};_$3.each=function(e,o,s){if(e!=null){if(nativeForEach&&e.forEach===nativeForEach)e.forEach(o,s);else if(e.length===+e.length){for(var a=0,$=e.length;a<$;a++)if(a in e&&o.call(s,e[a],a,e)===breaker)return}else for(var c in e)if(hasOwnProperty$1.call(e,c)&&o.call(s,e[c],c,e)===breaker)return}};_$3.extend=function(e){return _$3.each(slice$1.call(arguments,1),function(o){for(var s in o)o[s]!==void 0&&(e[s]=o[s])}),e};_$3.isArray=nativeIsArray$1||function(e){return toString$1.call(e)==="[object Array]"};_$3.isFunction=function(e){try{return/^\s*\bfunction\b/.test(e)}catch{return!1}};_$3.isArguments=function(e){return!!(e&&hasOwnProperty$1.call(e,"callee"))};_$3.toArray=function(e){return e?e.toArray?e.toArray():_$3.isArray(e)||_$3.isArguments(e)?slice$1.call(e):_$3.values(e):[]};_$3.map=function(e,o,s){if(nativeMap&&e.map===nativeMap)return e.map(o,s);var a=[];return _$3.each(e,function($){a.push(o.call(s,$))}),a};_$3.keys=function(e){var o=[];return e===null||_$3.each(e,function(s,a){o[o.length]=a}),o};_$3.values=function(e){var o=[];return e===null||_$3.each(e,function(s){o[o.length]=s}),o};_$3.include=function(e,o){var s=!1;return e===null?s:nativeIndexOf&&e.indexOf===nativeIndexOf?e.indexOf(o)!=-1:(_$3.each(e,function(a){if(s||(s=a===o))return breaker}),s)};_$3.includes=function(e,o){return e.indexOf(o)!==-1};_$3.inherit=function(e,o){return e.prototype=new o,e.prototype.constructor=e,e.superclass=o.prototype,e};_$3.isObject=function(e){return e===Object(e)&&!_$3.isArray(e)};_$3.isEmptyObject=function(e){if(_$3.isObject(e)){for(var o in e)if(hasOwnProperty$1.call(e,o))return!1;return!0}return!1};_$3.isUndefined=function(e){return e===void 0};_$3.isString=function(e){return toString$1.call(e)=="[object String]"};_$3.isDate=function(e){return toString$1.call(e)=="[object Date]"};_$3.isNumber=function(e){return toString$1.call(e)=="[object Number]"};_$3.isElement=function(e){return!!(e&&e.nodeType===1)};_$3.encodeDates=function(e){return _$3.each(e,function(o,s){_$3.isDate(o)?e[s]=_$3.formatDate(o):_$3.isObject(o)&&(e[s]=_$3.encodeDates(o))}),e};_$3.timestamp=function(){return Date.now=Date.now||function(){return+new Date},Date.now()};_$3.formatDate=function(e){function o(s){return s<10?"0"+s:s}return e.getUTCFullYear()+"-"+o(e.getUTCMonth()+1)+"-"+o(e.getUTCDate())+"T"+o(e.getUTCHours())+":"+o(e.getUTCMinutes())+":"+o(e.getUTCSeconds())};_$3.strip_empty_properties=function(e){var o={};return _$3.each(e,function(s,a){_$3.isString(s)&&s.length>0&&(o[a]=s)}),o};_$3.truncate=function(e,o){var s;return typeof e=="string"?s=e.slice(0,o):_$3.isArray(e)?(s=[],_$3.each(e,function(a){s.push(_$3.truncate(a,o))})):_$3.isObject(e)?(s={},_$3.each(e,function(a,$){s[$]=_$3.truncate(a,o)})):s=e,s};_$3.JSONEncode=function(){return function(e){var o=e,s=function($){var c=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,nt={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};return c.lastIndex=0,c.test($)?'"'+$.replace(c,function(at){var lt=nt[at];return typeof lt=="string"?lt:"\\u"+("0000"+at.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+$+'"'},a=function($,c){var nt="",at=" ",lt=0,et="",it="",st=0,ct=nt,ft=[],pt=c[$];switch(pt&&typeof pt=="object"&&typeof pt.toJSON=="function"&&(pt=pt.toJSON($)),typeof pt){case"string":return s(pt);case"number":return isFinite(pt)?String(pt):"null";case"boolean":case"null":return String(pt);case"object":if(!pt)return"null";if(nt+=at,ft=[],toString$1.apply(pt)==="[object Array]"){for(st=pt.length,lt=0;lt"u"?[]:new Uint8Array(256),a=0;a>2],ft+=o[(it[st]&3)<<4|it[st+1]>>4],ft+=o[(it[st+1]&15)<<2|it[st+2]>>6],ft+=o[it[st+2]&63];return ct%3===2?ft=ft.substring(0,ft.length-1)+"=":ct%3===1&&(ft=ft.substring(0,ft.length-2)+"=="),ft};const c=new Map,nt=new Map;function at(et,it,st){return e(this,void 0,void 0,function*(){const ct=`${et}-${it}`;if("OffscreenCanvas"in globalThis){if(nt.has(ct))return nt.get(ct);const ft=new OffscreenCanvas(et,it);ft.getContext("2d");const gt=yield(yield ft.convertToBlob(st)).arrayBuffer(),wt=$(gt);return nt.set(ct,wt),wt}else return""})}const lt=self;lt.onmessage=function(et){return e(this,void 0,void 0,function*(){if("OffscreenCanvas"in globalThis){const{id:it,bitmap:st,width:ct,height:ft,dataURLOptions:pt}=et.data,gt=at(ct,ft,pt),wt=new OffscreenCanvas(ct,ft);wt.getContext("2d").drawImage(st,0,0),st.close();const _t=yield wt.convertToBlob(pt),$t=_t.type,Pt=yield _t.arrayBuffer(),Nt=$(Pt);if(!c.has(it)&&(yield gt)===Nt)return c.set(it,Nt),lt.postMessage({id:it});if(c.get(it)===Nt)return lt.postMessage({id:it});lt.postMessage({id:it,type:$t,base64:Nt,width:ct,height:ft}),c.set(it,Nt)}else return lt.postMessage({id:et.data.id})})}})()});class CanvasManager{reset(){this.pendingCanvasMutations.clear(),this.resetObservers&&this.resetObservers()}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}constructor(o){this.pendingCanvasMutations=new Map,this.rafStamps={latestId:0,invokeId:null},this.frozen=!1,this.locked=!1,this.processMutation=(lt,et)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(lt)||this.pendingCanvasMutations.set(lt,[]),this.pendingCanvasMutations.get(lt).push(et)};const{sampling:s="all",win:a,blockClass:$,blockSelector:c,recordCanvas:nt,dataURLOptions:at}=o;this.mutationCb=o.mutationCb,this.mirror=o.mirror,nt&&s==="all"&&this.initCanvasMutationObserver(a,$,c),nt&&typeof s=="number"&&this.initCanvasFPSObserver(s,a,$,c,{dataURLOptions:at})}initCanvasFPSObserver(o,s,a,$,c){const nt=initCanvasContextObserver(s,a,$,!0),at=new Map,lt=new WorkerFactory;lt.onmessage=pt=>{const{id:gt}=pt.data;if(at.set(gt,!1),!("base64"in pt.data))return;const{base64:wt,type:vt,width:_t,height:$t}=pt.data;this.mutationCb({id:gt,type:CanvasContext["2D"],commands:[{property:"clearRect",args:[0,0,_t,$t]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:wt}],type:vt}]},0,0]}]})};const et=1e3/o;let it=0,st;const ct=()=>{const pt=[];return s.document.querySelectorAll("canvas").forEach(gt=>{isBlocked(gt,a,$,!0)||pt.push(gt)}),pt},ft=pt=>{if(it&&pt-it__awaiter(this,void 0,void 0,function*(){var wt;const vt=this.mirror.getId(gt);if(at.get(vt)||gt.width===0||gt.height===0)return;if(at.set(vt,!0),["webgl","webgl2"].includes(gt.__context)){const $t=gt.getContext(gt.__context);((wt=$t?.getContextAttributes())===null||wt===void 0?void 0:wt.preserveDrawingBuffer)===!1&&$t.clear($t.COLOR_BUFFER_BIT)}const _t=yield createImageBitmap(gt);lt.postMessage({id:vt,bitmap:_t,width:gt.width,height:gt.height,dataURLOptions:c.dataURLOptions},[_t])})),st=requestAnimationFrame(ft)};st=requestAnimationFrame(ft),this.resetObservers=()=>{nt(),cancelAnimationFrame(st)}}initCanvasMutationObserver(o,s,a){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();const $=initCanvasContextObserver(o,s,a,!1),c=initCanvas2DMutationObserver(this.processMutation.bind(this),o,s,a),nt=initCanvasWebGLMutationObserver(this.processMutation.bind(this),o,s,a,this.mirror);this.resetObservers=()=>{$(),c(),nt()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){const o=s=>{this.rafStamps.latestId=s,requestAnimationFrame(o)};requestAnimationFrame(o)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((o,s)=>{const a=this.mirror.getId(s);this.flushPendingCanvasMutationFor(s,a)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(o,s){if(this.frozen||this.locked)return;const a=this.pendingCanvasMutations.get(o);if(!a||s===-1)return;const $=a.map(nt=>__rest(nt,["type"])),{type:c}=a[0];this.mutationCb({id:s,type:c,commands:$}),this.pendingCanvasMutations.delete(o)}}class StylesheetManager{constructor(o){this.trackedLinkElements=new WeakSet,this.styleMirror=new StyleSheetMirror,this.mutationCb=o.mutationCb,this.adoptedStyleSheetCb=o.adoptedStyleSheetCb}attachLinkElement(o,s){"_cssText"in s.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:s.id,attributes:s.attributes}]}),this.trackLinkElement(o)}trackLinkElement(o){this.trackedLinkElements.has(o)||(this.trackedLinkElements.add(o),this.trackStylesheetInLinkElement(o))}adoptStyleSheets(o,s){if(o.length===0)return;const a={id:s,styleIds:[]},$=[];for(const c of o){let nt;this.styleMirror.has(c)?nt=this.styleMirror.getId(c):(nt=this.styleMirror.add(c),$.push({styleId:nt,rules:Array.from(c.rules||CSSRule,(at,lt)=>({rule:stringifyRule(at),index:lt}))})),a.styleIds.push(nt)}$.length>0&&(a.styles=$),this.adoptedStyleSheetCb(a)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(o){}}class ProcessedNodeManager{constructor(){this.nodeMap=new WeakMap,this.loop=!0,this.periodicallyClear()}periodicallyClear(){requestAnimationFrame(()=>{this.clear(),this.loop&&this.periodicallyClear()})}inOtherBuffer(o,s){const a=this.nodeMap.get(o);return a&&Array.from(a).some($=>$!==s)}add(o,s){this.nodeMap.set(o,(this.nodeMap.get(o)||new Set).add(s))}clear(){this.nodeMap=new WeakMap}destroy(){this.loop=!1}}function wrapEvent(e){return Object.assign(Object.assign({},e),{timestamp:nowTimestamp()})}let wrappedEmit,takeFullSnapshot,canvasManager,recording=!1;const mirror=createMirror();function record(e={}){const{emit:o,checkoutEveryNms:s,checkoutEveryNth:a,blockClass:$="rr-block",blockSelector:c=null,ignoreClass:nt="rr-ignore",ignoreSelector:at=null,maskTextClass:lt="rr-mask",maskTextSelector:et=null,inlineStylesheet:it=!0,maskAllInputs:st,maskInputOptions:ct,slimDOMOptions:ft,maskInputFn:pt,maskTextFn:gt,hooks:wt,packFn:vt,sampling:_t={},dataURLOptions:$t={},mousemoveWait:Pt,recordDOM:Nt=!0,recordCanvas:Lt=!1,recordCrossOriginIframes:Ft=!1,recordAfter:Wt=e.recordAfter==="DOMContentLoaded"?e.recordAfter:"load",userTriggeredOnInput:_r=!1,collectFonts:vr=!1,inlineImages:_o=!1,plugins:Jt,keepIframeSrcFn:Kr=()=>!1,ignoreCSSAttributes:Ot=new Set([]),errorHandler:gr}=e;registerErrorHandler(gr);const $o=Ft?window.parent===window:!0;let On=!1;if(!$o)try{window.parent.document&&(On=!1)}catch{On=!0}if($o&&!o)throw new Error("emit function is required");Pt!==void 0&&_t.mousemove===void 0&&(_t.mousemove=Pt),mirror.reset();const tn=st===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0}:ct!==void 0?ct:{password:!0},Yr=ft===!0||ft==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:ft==="all",headMetaDescKeywords:ft==="all"}:ft||{};polyfill();let So,Ir=0;const Lr=Bo=>{for(const Js of Jt||[])Js.eventProcessor&&(Bo=Js.eventProcessor(Bo));return vt&&!On&&(Bo=vt(Bo)),Bo};wrappedEmit=(Bo,Js)=>{var Ks;if(!((Ks=mutationBuffers[0])===null||Ks===void 0)&&Ks.isFrozen()&&Bo.type!==EventType$1.FullSnapshot&&!(Bo.type===EventType$1.IncrementalSnapshot&&Bo.data.source===IncrementalSource$1.Mutation)&&mutationBuffers.forEach(Dt=>Dt.unfreeze()),$o)o?.(Lr(Bo),Js);else if(On){const Dt={type:"rrweb",event:Lr(Bo),origin:window.location.origin,isCheckout:Js};window.parent.postMessage(Dt,"*")}if(Bo.type===EventType$1.FullSnapshot)So=Bo,Ir=0;else if(Bo.type===EventType$1.IncrementalSnapshot){if(Bo.data.source===IncrementalSource$1.Mutation&&Bo.data.isAttachIframe)return;Ir++;const Dt=a&&Ir>=a,Jr=s&&Bo.timestamp-So.timestamp>s;(Dt||Jr)&&takeFullSnapshot(!0)}};const Zr=Bo=>{wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Mutation},Bo)}))},rn=Bo=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Scroll},Bo)})),nn=Bo=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.CanvasMutation},Bo)})),Fo=Bo=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.AdoptedStyleSheet},Bo)})),Ko=new StylesheetManager({mutationCb:Zr,adoptedStyleSheetCb:Fo}),jo=new IframeManager({mirror,mutationCb:Zr,stylesheetManager:Ko,recordCrossOriginIframes:Ft,wrappedEmit});for(const Bo of Jt||[])Bo.getMirror&&Bo.getMirror({nodeMirror:mirror,crossOriginIframeMirror:jo.crossOriginIframeMirror,crossOriginIframeStyleMirror:jo.crossOriginIframeStyleMirror});const zo=new ProcessedNodeManager;canvasManager=new CanvasManager({recordCanvas:Lt,mutationCb:nn,win:window,blockClass:$,blockSelector:c,mirror,sampling:_t.canvas,dataURLOptions:$t});const Zo=new ShadowDomManager({mutationCb:Zr,scrollCb:rn,bypassOptions:{blockClass:$,blockSelector:c,maskTextClass:lt,maskTextSelector:et,inlineStylesheet:it,maskInputOptions:tn,dataURLOptions:$t,maskTextFn:gt,maskInputFn:pt,recordCanvas:Lt,inlineImages:_o,sampling:_t,slimDOMOptions:Yr,iframeManager:jo,stylesheetManager:Ko,canvasManager,keepIframeSrcFn:Kr,processedNodeManager:zo},mirror});takeFullSnapshot=(Bo=!1)=>{if(!Nt)return;wrappedEmit(wrapEvent({type:EventType$1.Meta,data:{href:window.location.href,width:getWindowWidth(),height:getWindowHeight()}}),Bo),Ko.reset(),Zo.init(),mutationBuffers.forEach(Ks=>Ks.lock());const Js=snapshot(document,{mirror,blockClass:$,blockSelector:c,maskTextClass:lt,maskTextSelector:et,inlineStylesheet:it,maskAllInputs:tn,maskTextFn:gt,slimDOM:Yr,dataURLOptions:$t,recordCanvas:Lt,inlineImages:_o,onSerialize:Ks=>{isSerializedIframe(Ks,mirror)&&jo.addIframe(Ks),isSerializedStylesheet(Ks,mirror)&&Ko.trackLinkElement(Ks),hasShadowRoot(Ks)&&Zo.addShadowRoot(Ks.shadowRoot,document)},onIframeLoad:(Ks,Dt)=>{jo.attachIframe(Ks,Dt),Zo.observeAttachShadow(Ks)},onStylesheetLoad:(Ks,Dt)=>{Ko.attachLinkElement(Ks,Dt)},keepIframeSrcFn:Kr});if(!Js)return console.warn("Failed to snapshot the document");wrappedEmit(wrapEvent({type:EventType$1.FullSnapshot,data:{node:Js,initialOffset:getWindowScroll(window)}}),Bo),mutationBuffers.forEach(Ks=>Ks.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&Ko.adoptStyleSheets(document.adoptedStyleSheets,mirror.getId(document))};try{const Bo=[],Js=Dt=>{var Jr;return callbackWrapper(initObservers)({mutationCb:Zr,mousemoveCb:(Dr,tr)=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:{source:tr,positions:Dr}})),mouseInteractionCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.MouseInteraction},Dr)})),scrollCb:rn,viewportResizeCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.ViewportResize},Dr)})),inputCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Input},Dr)})),mediaInteractionCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.MediaInteraction},Dr)})),styleSheetRuleCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.StyleSheetRule},Dr)})),styleDeclarationCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.StyleDeclaration},Dr)})),canvasMutationCb:nn,fontCb:Dr=>wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Font},Dr)})),selectionCb:Dr=>{wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.Selection},Dr)}))},customElementCb:Dr=>{wrappedEmit(wrapEvent({type:EventType$1.IncrementalSnapshot,data:Object.assign({source:IncrementalSource$1.CustomElement},Dr)}))},blockClass:$,ignoreClass:nt,ignoreSelector:at,maskTextClass:lt,maskTextSelector:et,maskInputOptions:tn,inlineStylesheet:it,sampling:_t,recordDOM:Nt,recordCanvas:Lt,inlineImages:_o,userTriggeredOnInput:_r,collectFonts:vr,doc:Dt,maskInputFn:pt,maskTextFn:gt,keepIframeSrcFn:Kr,blockSelector:c,slimDOMOptions:Yr,dataURLOptions:$t,mirror,iframeManager:jo,stylesheetManager:Ko,shadowDomManager:Zo,processedNodeManager:zo,canvasManager,ignoreCSSAttributes:Ot,plugins:((Jr=Jt?.filter(Dr=>Dr.observer))===null||Jr===void 0?void 0:Jr.map(Dr=>({observer:Dr.observer,options:Dr.options,callback:tr=>wrappedEmit(wrapEvent({type:EventType$1.Plugin,data:{plugin:Dr.name,payload:tr}}))})))||[]},wt)};jo.addLoadListener(Dt=>{try{Bo.push(Js(Dt.contentDocument))}catch(Jr){console.warn(Jr)}});const Ks=()=>{takeFullSnapshot(),Bo.push(Js(document)),recording=!0};return document.readyState==="interactive"||document.readyState==="complete"?Ks():(Bo.push(on("DOMContentLoaded",()=>{wrappedEmit(wrapEvent({type:EventType$1.DomContentLoaded,data:{}})),Wt==="DOMContentLoaded"&&Ks()})),Bo.push(on("load",()=>{wrappedEmit(wrapEvent({type:EventType$1.Load,data:{}})),Wt==="load"&&Ks()},window))),()=>{Bo.forEach(Dt=>Dt()),zo.destroy(),recording=!1,unregisterErrorHandler()}}catch(Bo){console.warn(Bo)}}record.addCustomEvent=(e,o)=>{if(!recording)throw new Error("please add custom event after start recording");wrappedEmit(wrapEvent({type:EventType$1.Custom,data:{tag:e,payload:o}}))};record.freezePage=()=>{mutationBuffers.forEach(e=>e.freeze())};record.takeFullSnapshot=e=>{if(!recording)throw new Error("please take full snapshot after start recording");takeFullSnapshot(e)};record.mirror=mirror;var EventType=(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e))(EventType||{}),IncrementalSource=(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e))(IncrementalSource||{}),Config={DEBUG:!1,LIB_VERSION:"2.55.1"},win;if(typeof window>"u"){var loc={hostname:""};win={navigator:{userAgent:"",onLine:!0},document:{location:loc,referrer:""},screen:{width:0,height:0},location:loc}}else win=window;var MAX_RECORDING_MS=24*60*60*1e3,MAX_VALUE_FOR_MIN_RECORDING_MS=8*1e3,ArrayProto$1=Array.prototype,FuncProto=Function.prototype,ObjProto$1=Object.prototype,slice$1=ArrayProto$1.slice,toString$1=ObjProto$1.toString,hasOwnProperty$1=ObjProto$1.hasOwnProperty,windowConsole=win.console,navigator$1=win.navigator,document$1=win.document,windowOpera=win.opera,screen=win.screen,userAgent=navigator$1.userAgent,nativeBind=FuncProto.bind,nativeForEach=ArrayProto$1.forEach,nativeIndexOf=ArrayProto$1.indexOf,nativeMap=ArrayProto$1.map,nativeIsArray$1=Array.isArray,breaker={},_$3={trim:function(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},console$1={log:function(){if(Config.DEBUG&&!_$3.isUndefined(windowConsole)&&windowConsole)try{windowConsole.log.apply(windowConsole,arguments)}catch{_$3.each(arguments,function(o){windowConsole.log(o)})}},warn:function(){if(Config.DEBUG&&!_$3.isUndefined(windowConsole)&&windowConsole){var e=["Mixpanel warning:"].concat(_$3.toArray(arguments));try{windowConsole.warn.apply(windowConsole,e)}catch{_$3.each(e,function(s){windowConsole.warn(s)})}}},error:function(){if(Config.DEBUG&&!_$3.isUndefined(windowConsole)&&windowConsole){var e=["Mixpanel error:"].concat(_$3.toArray(arguments));try{windowConsole.error.apply(windowConsole,e)}catch{_$3.each(e,function(s){windowConsole.error(s)})}}},critical:function(){if(!_$3.isUndefined(windowConsole)&&windowConsole){var e=["Mixpanel error:"].concat(_$3.toArray(arguments));try{windowConsole.error.apply(windowConsole,e)}catch{_$3.each(e,function(s){windowConsole.error(s)})}}}},log_func_with_prefix=function(e,o){return function(){return arguments[0]="["+o+"] "+arguments[0],e.apply(console$1,arguments)}},console_with_prefix=function(e){return{log:log_func_with_prefix(console$1.log,e),error:log_func_with_prefix(console$1.error,e),critical:log_func_with_prefix(console$1.critical,e)}};_$3.bind=function(e,o){var s,a;if(nativeBind&&e.bind===nativeBind)return nativeBind.apply(e,slice$1.call(arguments,1));if(!_$3.isFunction(e))throw new TypeError;return s=slice$1.call(arguments,2),a=function(){if(!(this instanceof a))return e.apply(o,s.concat(slice$1.call(arguments)));var $={};$.prototype=e.prototype;var c=new $;$.prototype=null;var nt=e.apply(c,s.concat(slice$1.call(arguments)));return Object(nt)===nt?nt:c},a};_$3.each=function(e,o,s){if(e!=null){if(nativeForEach&&e.forEach===nativeForEach)e.forEach(o,s);else if(e.length===+e.length){for(var a=0,$=e.length;a<$;a++)if(a in e&&o.call(s,e[a],a,e)===breaker)return}else for(var c in e)if(hasOwnProperty$1.call(e,c)&&o.call(s,e[c],c,e)===breaker)return}};_$3.extend=function(e){return _$3.each(slice$1.call(arguments,1),function(o){for(var s in o)o[s]!==void 0&&(e[s]=o[s])}),e};_$3.isArray=nativeIsArray$1||function(e){return toString$1.call(e)==="[object Array]"};_$3.isFunction=function(e){try{return/^\s*\bfunction\b/.test(e)}catch{return!1}};_$3.isArguments=function(e){return!!(e&&hasOwnProperty$1.call(e,"callee"))};_$3.toArray=function(e){return e?e.toArray?e.toArray():_$3.isArray(e)||_$3.isArguments(e)?slice$1.call(e):_$3.values(e):[]};_$3.map=function(e,o,s){if(nativeMap&&e.map===nativeMap)return e.map(o,s);var a=[];return _$3.each(e,function($){a.push(o.call(s,$))}),a};_$3.keys=function(e){var o=[];return e===null||_$3.each(e,function(s,a){o[o.length]=a}),o};_$3.values=function(e){var o=[];return e===null||_$3.each(e,function(s){o[o.length]=s}),o};_$3.include=function(e,o){var s=!1;return e===null?s:nativeIndexOf&&e.indexOf===nativeIndexOf?e.indexOf(o)!=-1:(_$3.each(e,function(a){if(s||(s=a===o))return breaker}),s)};_$3.includes=function(e,o){return e.indexOf(o)!==-1};_$3.inherit=function(e,o){return e.prototype=new o,e.prototype.constructor=e,e.superclass=o.prototype,e};_$3.isObject=function(e){return e===Object(e)&&!_$3.isArray(e)};_$3.isEmptyObject=function(e){if(_$3.isObject(e)){for(var o in e)if(hasOwnProperty$1.call(e,o))return!1;return!0}return!1};_$3.isUndefined=function(e){return e===void 0};_$3.isString=function(e){return toString$1.call(e)=="[object String]"};_$3.isDate=function(e){return toString$1.call(e)=="[object Date]"};_$3.isNumber=function(e){return toString$1.call(e)=="[object Number]"};_$3.isElement=function(e){return!!(e&&e.nodeType===1)};_$3.encodeDates=function(e){return _$3.each(e,function(o,s){_$3.isDate(o)?e[s]=_$3.formatDate(o):_$3.isObject(o)&&(e[s]=_$3.encodeDates(o))}),e};_$3.timestamp=function(){return Date.now=Date.now||function(){return+new Date},Date.now()};_$3.formatDate=function(e){function o(s){return s<10?"0"+s:s}return e.getUTCFullYear()+"-"+o(e.getUTCMonth()+1)+"-"+o(e.getUTCDate())+"T"+o(e.getUTCHours())+":"+o(e.getUTCMinutes())+":"+o(e.getUTCSeconds())};_$3.strip_empty_properties=function(e){var o={};return _$3.each(e,function(s,a){_$3.isString(s)&&s.length>0&&(o[a]=s)}),o};_$3.truncate=function(e,o){var s;return typeof e=="string"?s=e.slice(0,o):_$3.isArray(e)?(s=[],_$3.each(e,function(a){s.push(_$3.truncate(a,o))})):_$3.isObject(e)?(s={},_$3.each(e,function(a,$){s[$]=_$3.truncate(a,o)})):s=e,s};_$3.JSONEncode=function(){return function(e){var o=e,s=function($){var c=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,nt={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};return c.lastIndex=0,c.test($)?'"'+$.replace(c,function(at){var lt=nt[at];return typeof lt=="string"?lt:"\\u"+("0000"+at.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+$+'"'},a=function($,c){var nt="",at=" ",lt=0,et="",it="",st=0,ct=nt,ft=[],pt=c[$];switch(pt&&typeof pt=="object"&&typeof pt.toJSON=="function"&&(pt=pt.toJSON($)),typeof pt){case"string":return s(pt);case"number":return isFinite(pt)?String(pt):"null";case"boolean":case"null":return String(pt);case"object":if(!pt)return"null";if(nt+=at,ft=[],toString$1.apply(pt)==="[object Array]"){for(st=pt.length,lt=0;lt="0"&&o<="9";)pt+=o,c();if(o===".")for(pt+=".";c()&&o>="0"&&o<="9";)pt+=o;if(o==="e"||o==="E")for(pt+=o,c(),(o==="-"||o==="+")&&(pt+=o,c());o>="0"&&o<="9";)pt+=o,c();if(ft=+pt,!isFinite(ft))$("Bad number");else return ft},at=function(){var ft,pt,gt="",wt;if(o==='"')for(;c();){if(o==='"')return c(),gt;if(o==="\\")if(c(),o==="u"){for(wt=0,pt=0;pt<4&&(ft=parseInt(c(),16),!!isFinite(ft));pt+=1)wt=wt*16+ft;gt+=String.fromCharCode(wt)}else if(typeof s[o]=="string")gt+=s[o];else break;else gt+=o}$("Bad string")},lt=function(){for(;o&&o<=" ";)c()},et=function(){switch(o){case"t":return c("t"),c("r"),c("u"),c("e"),!0;case"f":return c("f"),c("a"),c("l"),c("s"),c("e"),!1;case"n":return c("n"),c("u"),c("l"),c("l"),null}$('Unexpected "'+o+'"')},it,st=function(){var ft=[];if(o==="["){if(c("["),lt(),o==="]")return c("]"),ft;for(;o;){if(ft.push(it()),lt(),o==="]")return c("]"),ft;c(","),lt()}}$("Bad array")},ct=function(){var ft,pt={};if(o==="{"){if(c("{"),lt(),o==="}")return c("}"),pt;for(;o;){if(ft=at(),lt(),c(":"),Object.hasOwnProperty.call(pt,ft)&&$('Duplicate key "'+ft+'"'),pt[ft]=it(),lt(),o==="}")return c("}"),pt;c(","),lt()}}$("Bad object")};return it=function(){switch(lt(),o){case"{":return ct();case"[":return st();case'"':return at();case"-":return nt();default:return o>="0"&&o<="9"?nt():et()}},function(ft){var pt;return a=ft,e=0,o=" ",pt=it(),lt(),o&&$("Syntax error"),pt}}();_$3.base64Encode=function(e){var o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",s,a,$,c,nt,at,lt,et,it=0,st=0,ct="",ft=[];if(!e)return e;e=_$3.utf8Encode(e);do s=e.charCodeAt(it++),a=e.charCodeAt(it++),$=e.charCodeAt(it++),et=s<<16|a<<8|$,c=et>>18&63,nt=et>>12&63,at=et>>6&63,lt=et&63,ft[st++]=o.charAt(c)+o.charAt(nt)+o.charAt(at)+o.charAt(lt);while(it127&&nt<2048?at=String.fromCharCode(nt>>6|192,nt&63|128):at=String.fromCharCode(nt>>12|224,nt>>6&63|128,nt&63|128),at!==null&&(a>s&&(o+=e.substring(s,a)),o+=at,s=a=c+1)}return a>s&&(o+=e.substring(s,e.length)),o};_$3.UUID=function(){var e=function(){var a=1*new Date,$;if(win.performance&&win.performance.now)$=win.performance.now();else for($=0;a==1*new Date;)$++;return a.toString(16)+Math.floor($).toString(16)},o=function(){return Math.random().toString(16).replace(".","")},s=function(){var a=userAgent,$,c,nt=[],at=0;function lt(et,it){var st,ct=0;for(st=0;st=4&&(at=lt(at,nt),nt=[]);return nt.length>0&&(at=lt(at,nt)),at.toString(16)};return function(){var a=(screen.height*screen.width).toString(16);return e()+"-"+o()+"-"+s()+"-"+a+"-"+e()}}();var BLOCKED_UA_STRS=["ahrefsbot","ahrefssiteaudit","baiduspider","bingbot","bingpreview","chrome-lighthouse","facebookexternal","petalbot","pinterest","screaming frog","yahoo! slurp","yandexbot","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleweblight","mediapartners-google","storebot-google"];_$3.isBlockedUA=function(e){var o;for(e=e.toLowerCase(),o=0;o=0}function a($){if(!document$1.getElementsByTagName)return[];var c=$.split(" "),nt,at,lt,et,it,st,ct,ft,pt,gt,wt=[document$1];for(st=0;st-1){at=nt.split("#"),lt=at[0];var vt=at[1],_t=document$1.getElementById(vt);if(!_t||lt&&_t.nodeName.toLowerCase()!=lt)return[];wt=[_t];continue}if(nt.indexOf(".")>-1){at=nt.split("."),lt=at[0];var $t=at[1];for(lt||(lt="*"),et=[],it=0,ct=0;ct-1};break;default:Wt=function(_r){return _r.getAttribute(Nt)}}for(wt=[],gt=0,ct=0;ct=3?o[2]:""},currentUrl:function(){return win.location.href},properties:function(e){return typeof e!="object"&&(e={}),_$3.extend(_$3.strip_empty_properties({$os:_$3.info.os(),$browser:_$3.info.browser(userAgent,navigator$1.vendor,windowOpera),$referrer:document$1.referrer,$referring_domain:_$3.info.referringDomain(document$1.referrer),$device:_$3.info.device(userAgent)}),{$current_url:_$3.info.currentUrl(),$browser_version:_$3.info.browserVersion(userAgent,navigator$1.vendor,windowOpera),$screen_height:screen.height,$screen_width:screen.width,mp_lib:"web",$lib_version:Config.LIB_VERSION,$insert_id:cheap_guid(),time:_$3.timestamp()/1e3},_$3.strip_empty_properties(e))},people_properties:function(){return _$3.extend(_$3.strip_empty_properties({$os:_$3.info.os(),$browser:_$3.info.browser(userAgent,navigator$1.vendor,windowOpera)}),{$browser_version:_$3.info.browserVersion(userAgent,navigator$1.vendor,windowOpera)})},mpPageViewProperties:function(){return _$3.strip_empty_properties({current_page_title:document$1.title,current_domain:win.location.hostname,current_url_path:win.location.pathname,current_url_protocol:win.location.protocol,current_url_search:win.location.search})}};var cheap_guid=function(e){var o=Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10);return e?o.substring(0,e):o},SIMPLE_DOMAIN_MATCH_REGEX=/[a-z0-9][a-z0-9-]*\.[a-z]+$/i,DOMAIN_MATCH_REGEX=/[a-z0-9][a-z0-9-]+\.[a-z.]{2,6}$/i,extract_domain=function(e){var o=DOMAIN_MATCH_REGEX,s=e.split("."),a=s[s.length-1];(a.length>4||a==="com"||a==="org")&&(o=SIMPLE_DOMAIN_MATCH_REGEX);var $=e.match(o);return $?$[0]:""},isOnline=function(){var e=win.navigator.onLine;return _$3.isUndefined(e)||e},JSONStringify=null,JSONParse=null;typeof JSON<"u"&&(JSONStringify=JSON.stringify,JSONParse=JSON.parse);JSONStringify=JSONStringify||_$3.JSONEncode;JSONParse=JSONParse||_$3.JSONDecode;_$3.toArray=_$3.toArray;_$3.isObject=_$3.isObject;_$3.JSONEncode=_$3.JSONEncode;_$3.JSONDecode=_$3.JSONDecode;_$3.isBlockedUA=_$3.isBlockedUA;_$3.isEmptyObject=_$3.isEmptyObject;_$3.info=_$3.info;_$3.info.device=_$3.info.device;_$3.info.browser=_$3.info.browser;_$3.info.browserVersion=_$3.info.browserVersion;_$3.info.properties=_$3.info.properties;var GDPR_DEFAULT_PERSISTENCE_PREFIX="__mp_opt_in_out_";function optIn(e,o){_optInOut(!0,e,o)}function optOut(e,o){_optInOut(!1,e,o)}function hasOptedIn(e,o){return _getStorageValue(e,o)==="1"}function hasOptedOut(e,o){if(_hasDoNotTrackFlagOn(o))return console$1.warn('This browser has "Do Not Track" enabled. This will prevent the Mixpanel SDK from sending any data. To ignore the "Do Not Track" browser setting, initialize the Mixpanel instance with the config "ignore_dnt: true"'),!0;var s=_getStorageValue(e,o)==="0";return s&&console$1.warn("You are opted out of Mixpanel tracking. This will prevent the Mixpanel SDK from sending any data."),s}function addOptOutCheckMixpanelLib(e){return _addOptOutCheck(e,function(o){return this.get_config(o)})}function addOptOutCheckMixpanelPeople(e){return _addOptOutCheck(e,function(o){return this._get_config(o)})}function addOptOutCheckMixpanelGroup(e){return _addOptOutCheck(e,function(o){return this._get_config(o)})}function clearOptInOut(e,o){o=o||{},_getStorage(o).remove(_getStorageKey(e,o),!!o.crossSubdomainCookie,o.cookieDomain)}function _getStorage(e){return e=e||{},e.persistenceType==="localStorage"?_$3.localStorage:_$3.cookie}function _getStorageKey(e,o){return o=o||{},(o.persistencePrefix||GDPR_DEFAULT_PERSISTENCE_PREFIX)+e}function _getStorageValue(e,o){return _getStorage(o).get(_getStorageKey(e,o))}function _hasDoNotTrackFlagOn(e){if(e&&e.ignoreDnt)return!1;var o=e&&e.window||win,s=o.navigator||{},a=!1;return _$3.each([s.doNotTrack,s.msDoNotTrack,o.doNotTrack],function($){_$3.includes([!0,1,"1","yes"],$)&&(a=!0)}),a}function _optInOut(e,o,s){if(!_$3.isString(o)||!o.length){console$1.error("gdpr."+(e?"optIn":"optOut")+" called with an invalid token");return}s=s||{},_getStorage(s).set(_getStorageKey(o,s),e?1:0,_$3.isNumber(s.cookieExpiration)?s.cookieExpiration:null,!!s.crossSubdomainCookie,!!s.secureCookie,!!s.crossSiteCookie,s.cookieDomain),s.track&&e&&s.track(s.trackEventName||"$opt_in",s.trackProperties,{send_immediately:!0})}function _addOptOutCheck(e,o){return function(){var s=!1;try{var a=o.call(this,"token"),$=o.call(this,"ignore_dnt"),c=o.call(this,"opt_out_tracking_persistence_type"),nt=o.call(this,"opt_out_tracking_cookie_prefix"),at=o.call(this,"window");a&&(s=hasOptedOut(a,{ignoreDnt:$,persistenceType:c,persistencePrefix:nt,window:at}))}catch(et){console$1.error("Unexpected error when checking tracking opt-out status: "+et)}if(!s)return e.apply(this,arguments);var lt=arguments[arguments.length-1];typeof lt=="function"&<(0)}}var logger$3=console_with_prefix("lock"),SharedLock=function(e,o){o=o||{},this.storageKey=e,this.storage=o.storage||window.localStorage,this.pollIntervalMS=o.pollIntervalMS||100,this.timeoutMS=o.timeoutMS||2e3};SharedLock.prototype.withLock=function(e,o,s){!s&&typeof o!="function"&&(s=o,o=null);var a=s||new Date().getTime()+"|"+Math.random(),$=new Date().getTime(),c=this.storageKey,nt=this.pollIntervalMS,at=this.timeoutMS,lt=this.storage,et=c+":X",it=c+":Y",st=c+":Z",ct=function(_t){o&&o(_t)},ft=function(_t){if(new Date().getTime()-$>at){logger$3.error("Timeout waiting for mutex on "+c+"; clearing lock. ["+a+"]"),lt.removeItem(st),lt.removeItem(it),wt();return}setTimeout(function(){try{_t()}catch($t){ct($t)}},nt*(Math.random()+.1))},pt=function(_t,$t){_t()?$t():ft(function(){pt(_t,$t)})},gt=function(){var _t=lt.getItem(it);if(_t&&_t!==a)return!1;if(lt.setItem(it,a),lt.getItem(it)===a)return!0;if(!localStorageSupported(lt,!0))throw new Error("localStorage support dropped while acquiring lock");return!1},wt=function(){lt.setItem(et,a),pt(gt,function(){if(lt.getItem(et)===a){vt();return}ft(function(){if(lt.getItem(it)!==a){wt();return}pt(function(){return!lt.getItem(st)},vt)})})},vt=function(){lt.setItem(st,"1");try{e()}finally{lt.removeItem(st),lt.getItem(it)===a&<.removeItem(it),lt.getItem(et)===a&<.removeItem(et)}};try{if(localStorageSupported(lt,!0))wt();else throw new Error("localStorage support check failed")}catch(_t){ct(_t)}};var logger$2=console_with_prefix("batch"),RequestQueue=function(e,o){o=o||{},this.storageKey=e,this.storage=o.storage||window.localStorage,this.reportError=o.errorReporter||_$3.bind(logger$2.error,logger$2),this.lock=new SharedLock(e,{storage:this.storage}),this.usePersistence=o.usePersistence,this.pid=o.pid||null,this.memQueue=[]};RequestQueue.prototype.enqueue=function(e,o,s){var a={id:cheap_guid(),flushAfter:new Date().getTime()+o*2,payload:e};this.usePersistence?this.lock.withLock(_$3.bind(function(){var c;try{var nt=this.readFromStorage();nt.push(a),c=this.saveToStorage(nt),c&&this.memQueue.push(a)}catch{this.reportError("Error enqueueing item",e),c=!1}s&&s(c)},this),_$3.bind(function(c){this.reportError("Error acquiring storage lock",c),s&&s(!1)},this),this.pid):(this.memQueue.push(a),s&&s(!0))};RequestQueue.prototype.fillBatch=function(e){var o=this.memQueue.slice(0,e);if(this.usePersistence&&o.lengthc.flushAfter&&!a[c.id]&&(c.orphaned=!0,o.push(c),o.length>=e))break}}}return o};var filterOutIDsAndInvalid=function(e,o){var s=[];return _$3.each(e,function(a){a.id&&!o[a.id]&&s.push(a)}),s};RequestQueue.prototype.removeItemsByID=function(e,o){var s={};if(_$3.each(e,function($){s[$]=!0}),this.memQueue=filterOutIDsAndInvalid(this.memQueue,s),!this.usePersistence)o&&o(!0);else{var a=_$3.bind(function(){var $;try{var c=this.readFromStorage();if(c=filterOutIDsAndInvalid(c,s),$=this.saveToStorage(c),$){c=this.readFromStorage();for(var nt=0;nt5&&(this.reportError("[dupe] item ID sent too many times, not sending",{item:it,batchSize:$.length,timesSent:this.itemIdsSentSuccessfully[ft]}),ct=!1):this.reportError("[dupe] found item with no ID",{item:it}),ct&&nt.push(st)}at[it.id]=st},this),nt.length<1){this.resetFlush();return}this.requestInProgress=!0;var lt=_$3.bind(function(it){this.requestInProgress=!1;try{var st=!1;if(e.unloading)this.queue.updatePayloads(at);else if(_$3.isObject(it)&&it.error==="timeout"&&new Date().getTime()-s>=o)this.reportError("Network timeout; retrying"),this.flush();else if(_$3.isObject(it)&&(it.httpStatusCode>=500||it.httpStatusCode===429||it.httpStatusCode<=0&&!isOnline()||it.error==="timeout")){var ct=this.flushInterval*2;it.retryAfter&&(ct=parseInt(it.retryAfter,10)*1e3||ct),ct=Math.min(MAX_RETRY_INTERVAL_MS,ct),this.reportError("Error; retry in "+ct+" ms"),this.scheduleFlush(ct)}else if(_$3.isObject(it)&&it.httpStatusCode===413)if($.length>1){var ft=Math.max(1,Math.floor(a/2));this.batchSize=Math.min(this.batchSize,ft,$.length-1),this.reportError("413 response; reducing batch size to "+this.batchSize),this.resetFlush()}else this.reportError("Single-event request too large; dropping",$),this.resetBatchSize(),st=!0;else st=!0;st&&(this.queue.removeItemsByID(_$3.map($,function(pt){return pt.id}),_$3.bind(function(pt){pt?(this.consecutiveRemovalFailures=0,this.flushOnlyOnInterval&&!c?this.resetFlush():this.flush()):(this.reportError("Failed to remove items from queue"),++this.consecutiveRemovalFailures>5?(this.reportError("Too many queue failures; disabling batching system."),this.stopAllBatching()):this.resetFlush())},this)),_$3.each($,_$3.bind(function(pt){var gt=pt.id;gt?(this.itemIdsSentSuccessfully[gt]=this.itemIdsSentSuccessfully[gt]||0,this.itemIdsSentSuccessfully[gt]++,this.itemIdsSentSuccessfully[gt]>5&&this.reportError("[dupe] item ID sent too many times",{item:pt,batchSize:$.length,timesSent:this.itemIdsSentSuccessfully[gt]})):this.reportError("[dupe] found item with no ID while removing",{item:pt})},this)))}catch(pt){this.reportError("Error handling API response",pt),this.resetFlush()}},this),et={method:"POST",verbose:!0,ignore_json_errors:!0,timeout_ms:o};e.unloading&&(et.transport="sendBeacon"),logger$1.log("MIXPANEL REQUEST:",nt),this.sendRequest(nt,et,lt)}catch(it){this.reportError("Error flushing request queue",it),this.resetFlush()}};RequestBatcher.prototype.reportError=function(e,o){if(logger$1.error.apply(logger$1.error,arguments),this.errorReporter)try{o instanceof Error||(o=new Error(e)),this.errorReporter(e,o)}catch(s){logger$1.error(s)}};var logger=console_with_prefix("recorder"),CompressionStream=win.CompressionStream,RECORDER_BATCHER_LIB_CONFIG={batch_size:1e3,batch_flush_interval_ms:10*1e3,batch_request_timeout_ms:90*1e3,batch_autostart:!0},ACTIVE_SOURCES=new Set([IncrementalSource.MouseMove,IncrementalSource.MouseInteraction,IncrementalSource.Scroll,IncrementalSource.ViewportResize,IncrementalSource.Input,IncrementalSource.TouchMove,IncrementalSource.MediaInteraction,IncrementalSource.Drag,IncrementalSource.Selection]);function isUserEvent(e){return e.type===EventType.IncrementalSnapshot&&ACTIVE_SOURCES.has(e.data.source)}var MixpanelRecorder=function(e){this._mixpanel=e,this._stopRecording=null,this.recEvents=[],this.seqNo=0,this.replayId=null,this.replayStartTime=null,this.sendBatchId=null,this.idleTimeoutId=null,this.maxTimeoutId=null,this.recordMaxMs=MAX_RECORDING_MS,this.recordMinMs=0,this._initBatcher()};MixpanelRecorder.prototype._initBatcher=function(){this.batcher=new RequestBatcher("__mprec",{libConfig:RECORDER_BATCHER_LIB_CONFIG,sendRequestFunc:_$3.bind(this.flushEventsWithOptOut,this),errorReporter:_$3.bind(this.reportError,this),flushOnlyOnInterval:!0,usePersistence:!1})};MixpanelRecorder.prototype.get_config=function(e){return this._mixpanel.get_config(e)};MixpanelRecorder.prototype.startRecording=function(e){if(this._stopRecording!==null){logger.log("Recording already in progress, skipping startRecording.");return}this.recordMaxMs=this.get_config("record_max_ms"),this.recordMaxMs>MAX_RECORDING_MS&&(this.recordMaxMs=MAX_RECORDING_MS,logger.critical("record_max_ms cannot be greater than "+MAX_RECORDING_MS+"ms. Capping value.")),this.recordMinMs=this.get_config("record_min_ms"),this.recordMinMs>MAX_VALUE_FOR_MIN_RECORDING_MS&&(this.recordMinMs=MAX_VALUE_FOR_MIN_RECORDING_MS,logger.critical("record_min_ms cannot be greater than "+MAX_VALUE_FOR_MIN_RECORDING_MS+"ms. Capping value.")),this.recEvents=[],this.seqNo=0,this.replayStartTime=new Date().getTime(),this.replayId=_$3.UUID(),e||this.recordMinMs>0?this.batcher.stop():this.batcher.start();var o=_$3.bind(function(){clearTimeout(this.idleTimeoutId),this.idleTimeoutId=setTimeout(_$3.bind(function(){logger.log("Idle timeout reached, restarting recording."),this.resetRecording()},this),this.get_config("record_idle_timeout_ms"))},this),s=this.get_config("record_block_selector");(s===""||s===null)&&(s=void 0),this._stopRecording=record({emit:_$3.bind(function(a){this.batcher.enqueue(a),isUserEvent(a)&&(this.batcher.stopped&&new Date().getTime()-this.replayStartTime>=this.recordMinMs&&this.batcher.start(),o())},this),blockClass:this.get_config("record_block_class"),blockSelector:s,collectFonts:this.get_config("record_collect_fonts"),inlineImages:this.get_config("record_inline_images"),maskAllInputs:!0,maskTextClass:this.get_config("record_mask_text_class"),maskTextSelector:this.get_config("record_mask_text_selector")}),o(),this.maxTimeoutId=setTimeout(_$3.bind(this.resetRecording,this),this.recordMaxMs)};MixpanelRecorder.prototype.resetRecording=function(){this.stopRecording(),this.startRecording(!0)};MixpanelRecorder.prototype.stopRecording=function(){this._stopRecording!==null&&(this._stopRecording(),this._stopRecording=null),this.batcher.stopped?this.batcher.clear():(this.batcher.flush(),this.batcher.stop()),this.replayId=null,clearTimeout(this.idleTimeoutId),clearTimeout(this.maxTimeoutId)};MixpanelRecorder.prototype.flushEventsWithOptOut=function(e,o,s){this._flushEvents(e,o,s,_$3.bind(this._onOptOut,this))};MixpanelRecorder.prototype._onOptOut=function(e){e===0&&(this.recEvents=[],this.stopRecording())};MixpanelRecorder.prototype._sendRequest=function(e,o,s,a){var $=_$3.bind(function(c,nt){c.status===200&&this.replayId===e&&this.seqNo++,a({status:0,httpStatusCode:c.status,responseBody:nt,retryAfter:c.headers.get("Retry-After")})},this);win.fetch(this.get_config("api_host")+"/"+this.get_config("api_routes").record+"?"+new URLSearchParams(o),{method:"POST",headers:{Authorization:"Basic "+btoa(this.get_config("token")+":"),"Content-Type":"application/octet-stream"},body:s}).then(function(c){c.json().then(function(nt){$(c,nt)}).catch(function(nt){a({error:nt})})}).catch(function(c){a({error:c,httpStatusCode:0})})};MixpanelRecorder.prototype._flushEvents=addOptOutCheckMixpanelLib(function(e,o,s){const a=e.length;if(a>0){var $=this.replayId,c=e[0].timestamp;(this.seqNo===0||!this.replayStartTime)&&(this.seqNo!==0&&this.reportError("Replay start time not set but seqNo is not 0. Using current batch start time as a fallback."),this.replayStartTime=c);var nt=e[a-1].timestamp-this.replayStartTime,at={distinct_id:String(this._mixpanel.get_distinct_id()),seq:this.seqNo,batch_start_time:c/1e3,replay_id:$,replay_length_ms:nt,replay_start_time:this.replayStartTime/1e3},lt=_$3.JSONEncode(e),et=this._mixpanel.get_property("$device_id");et&&(at.$device_id=et);var it=this._mixpanel.get_property("$user_id");if(it&&(at.$user_id=it),CompressionStream){var st=new Blob([lt],{type:"application/json"}).stream(),ct=st.pipeThrough(new CompressionStream("gzip"));new Response(ct).blob().then(_$3.bind(function(ft){at.format="gzip",this._sendRequest($,at,ft,s)},this))}else at.format="body",this._sendRequest($,at,lt,s)}});MixpanelRecorder.prototype.reportError=function(e,o){logger.error.apply(logger.error,arguments);try{!o&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,o)}catch(s){logger.error(s)}};win.__mp_recorder=MixpanelRecorder;var DomTracker=function(){};DomTracker.prototype.create_properties=function(){};DomTracker.prototype.event_handler=function(){};DomTracker.prototype.after_track_handler=function(){};DomTracker.prototype.init=function(e){return this.mp=e,this};DomTracker.prototype.track=function(e,o,s,a){var $=this,c=_$3.dom_query(e);if(c.length===0){console$1.error("The DOM query ("+e+") returned 0 elements");return}return _$3.each(c,function(nt){_$3.register_event(nt,this.override_event,function(at){var lt={},et=$.create_properties(s,this),it=$.mp.get_config("track_links_timeout");$.event_handler(at,this,lt),window.setTimeout($.track_callback(a,et,lt,!0),it),$.mp.track(o,et,$.track_callback(a,et,lt))})},this),!0};DomTracker.prototype.track_callback=function(e,o,s,a){a=a||!1;var $=this;return function(){s.callback_fired||(s.callback_fired=!0,!(e&&e(a,o)===!1)&&$.after_track_handler(o,s,a))}};DomTracker.prototype.create_properties=function(e,o){var s;return typeof e=="function"?s=e(o):s=_$3.extend({},e),s};var LinkTracker=function(){this.override_event="click"};_$3.inherit(LinkTracker,DomTracker);LinkTracker.prototype.create_properties=function(e,o){var s=LinkTracker.superclass.create_properties.apply(this,arguments);return o.href&&(s.url=o.href),s};LinkTracker.prototype.event_handler=function(e,o,s){s.new_tab=e.which===2||e.metaKey||e.ctrlKey||o.target==="_blank",s.href=o.href,s.new_tab||e.preventDefault()};LinkTracker.prototype.after_track_handler=function(e,o){o.new_tab||setTimeout(function(){window.location=o.href},0)};var FormTracker=function(){this.override_event="submit"};_$3.inherit(FormTracker,DomTracker);FormTracker.prototype.event_handler=function(e,o,s){s.element=o,e.preventDefault()};FormTracker.prototype.after_track_handler=function(e,o){setTimeout(function(){o.element.submit()},0)};var SET_ACTION="$set",SET_ONCE_ACTION="$set_once",UNSET_ACTION="$unset",ADD_ACTION="$add",APPEND_ACTION="$append",UNION_ACTION="$union",REMOVE_ACTION="$remove",DELETE_ACTION="$delete",apiActions={set_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[SET_ACTION]=a,s},unset_action:function(e){var o={},s=[];return _$3.isArray(e)||(e=[e]),_$3.each(e,function(a){this._is_reserved_property(a)||s.push(a)},this),o[UNSET_ACTION]=s,o},set_once_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[SET_ONCE_ACTION]=a,s},union_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=_$3.isArray($)?$:[$])},this):a[e]=_$3.isArray(o)?o:[o],s[UNION_ACTION]=a,s},append_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[APPEND_ACTION]=a,s},remove_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[REMOVE_ACTION]=a,s},delete_action:function(){var e={};return e[DELETE_ACTION]="",e}},MixpanelGroup=function(){};_$3.extend(MixpanelGroup.prototype,apiActions);MixpanelGroup.prototype._init=function(e,o,s){this._mixpanel=e,this._group_key=o,this._group_id=s};MixpanelGroup.prototype.set=addOptOutCheckMixpanelGroup(function(e,o,s){var a=this.set_action(e,o);return _$3.isObject(e)&&(s=o),this._send_request(a,s)});MixpanelGroup.prototype.set_once=addOptOutCheckMixpanelGroup(function(e,o,s){var a=this.set_once_action(e,o);return _$3.isObject(e)&&(s=o),this._send_request(a,s)});MixpanelGroup.prototype.unset=addOptOutCheckMixpanelGroup(function(e,o){var s=this.unset_action(e);return this._send_request(s,o)});MixpanelGroup.prototype.union=addOptOutCheckMixpanelGroup(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.union_action(e,o);return this._send_request(a,s)});MixpanelGroup.prototype.delete=addOptOutCheckMixpanelGroup(function(e){var o=this.delete_action();return this._send_request(o,e)});MixpanelGroup.prototype.remove=addOptOutCheckMixpanelGroup(function(e,o,s){var a=this.remove_action(e,o);return this._send_request(a,s)});MixpanelGroup.prototype._send_request=function(e,o){e.$group_key=this._group_key,e.$group_id=this._group_id,e.$token=this._get_config("token");var s=_$3.encodeDates(e);return this._mixpanel._track_or_batch({type:"groups",data:s,endpoint:this._get_config("api_host")+"/"+this._get_config("api_routes").groups,batcher:this._mixpanel.request_batchers.groups},o)};MixpanelGroup.prototype._is_reserved_property=function(e){return e==="$group_key"||e==="$group_id"};MixpanelGroup.prototype._get_config=function(e){return this._mixpanel.get_config(e)};MixpanelGroup.prototype.toString=function(){return this._mixpanel.toString()+".group."+this._group_key+"."+this._group_id};MixpanelGroup.prototype.remove=MixpanelGroup.prototype.remove;MixpanelGroup.prototype.set=MixpanelGroup.prototype.set;MixpanelGroup.prototype.set_once=MixpanelGroup.prototype.set_once;MixpanelGroup.prototype.union=MixpanelGroup.prototype.union;MixpanelGroup.prototype.unset=MixpanelGroup.prototype.unset;MixpanelGroup.prototype.toString=MixpanelGroup.prototype.toString;var MixpanelPeople=function(){};_$3.extend(MixpanelPeople.prototype,apiActions);MixpanelPeople.prototype._init=function(e){this._mixpanel=e};MixpanelPeople.prototype.set=addOptOutCheckMixpanelPeople(function(e,o,s){var a=this.set_action(e,o);return _$3.isObject(e)&&(s=o),this._get_config("save_referrer")&&this._mixpanel.persistence.update_referrer_info(document.referrer),a[SET_ACTION]=_$3.extend({},_$3.info.people_properties(),a[SET_ACTION]),this._send_request(a,s)});MixpanelPeople.prototype.set_once=addOptOutCheckMixpanelPeople(function(e,o,s){var a=this.set_once_action(e,o);return _$3.isObject(e)&&(s=o),this._send_request(a,s)});MixpanelPeople.prototype.unset=addOptOutCheckMixpanelPeople(function(e,o){var s=this.unset_action(e);return this._send_request(s,o)});MixpanelPeople.prototype.increment=addOptOutCheckMixpanelPeople(function(e,o,s){var a={},$={};return _$3.isObject(e)?(_$3.each(e,function(c,nt){if(!this._is_reserved_property(nt))if(isNaN(parseFloat(c))){console$1.error("Invalid increment value passed to mixpanel.people.increment - must be a number");return}else $[nt]=c},this),s=o):(_$3.isUndefined(o)&&(o=1),$[e]=o),a[ADD_ACTION]=$,this._send_request(a,s)});MixpanelPeople.prototype.append=addOptOutCheckMixpanelPeople(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.append_action(e,o);return this._send_request(a,s)});MixpanelPeople.prototype.remove=addOptOutCheckMixpanelPeople(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.remove_action(e,o);return this._send_request(a,s)});MixpanelPeople.prototype.union=addOptOutCheckMixpanelPeople(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.union_action(e,o);return this._send_request(a,s)});MixpanelPeople.prototype.track_charge=addOptOutCheckMixpanelPeople(function(e,o,s){if(!_$3.isNumber(e)&&(e=parseFloat(e),isNaN(e))){console$1.error("Invalid value passed to mixpanel.people.track_charge - must be a number");return}return this.append("$transactions",_$3.extend({$amount:e},o),s)});MixpanelPeople.prototype.clear_charges=function(e){return this.set("$transactions",[],e)};MixpanelPeople.prototype.delete_user=function(){if(!this._identify_called()){console$1.error("mixpanel.people.delete_user() requires you to call identify() first");return}var e={$delete:this._mixpanel.get_distinct_id()};return this._send_request(e)};MixpanelPeople.prototype.toString=function(){return this._mixpanel.toString()+".people"};MixpanelPeople.prototype._send_request=function(e,o){e.$token=this._get_config("token"),e.$distinct_id=this._mixpanel.get_distinct_id();var s=this._mixpanel.get_property("$device_id"),a=this._mixpanel.get_property("$user_id"),$=this._mixpanel.get_property("$had_persisted_distinct_id");s&&(e.$device_id=s),a&&(e.$user_id=a),$&&(e.$had_persisted_distinct_id=$);var c=_$3.encodeDates(e);return this._identify_called()?this._mixpanel._track_or_batch({type:"people",data:c,endpoint:this._get_config("api_host")+"/"+this._get_config("api_routes").engage,batcher:this._mixpanel.request_batchers.people},o):(this._enqueue(e),_$3.isUndefined(o)||(this._get_config("verbose")?o({status:-1,error:null}):o(-1)),_$3.truncate(c,255))};MixpanelPeople.prototype._get_config=function(e){return this._mixpanel.get_config(e)};MixpanelPeople.prototype._identify_called=function(){return this._mixpanel._flags.identify_called===!0};MixpanelPeople.prototype._enqueue=function(e){SET_ACTION in e?this._mixpanel.persistence._add_to_people_queue(SET_ACTION,e):SET_ONCE_ACTION in e?this._mixpanel.persistence._add_to_people_queue(SET_ONCE_ACTION,e):UNSET_ACTION in e?this._mixpanel.persistence._add_to_people_queue(UNSET_ACTION,e):ADD_ACTION in e?this._mixpanel.persistence._add_to_people_queue(ADD_ACTION,e):APPEND_ACTION in e?this._mixpanel.persistence._add_to_people_queue(APPEND_ACTION,e):REMOVE_ACTION in e?this._mixpanel.persistence._add_to_people_queue(REMOVE_ACTION,e):UNION_ACTION in e?this._mixpanel.persistence._add_to_people_queue(UNION_ACTION,e):console$1.error("Invalid call to _enqueue():",e)};MixpanelPeople.prototype._flush_one_queue=function(e,o,s,a){var $=this,c=_$3.extend({},this._mixpanel.persistence.load_queue(e)),nt=c;!_$3.isUndefined(c)&&_$3.isObject(c)&&!_$3.isEmptyObject(c)&&($._mixpanel.persistence._pop_from_people_queue(e,c),$._mixpanel.persistence.save(),a&&(nt=a(c)),o.call($,nt,function(at,lt){at===0&&$._mixpanel.persistence._add_to_people_queue(e,c),_$3.isUndefined(s)||s(at,lt)}))};MixpanelPeople.prototype._flush=function(e,o,s,a,$,c,nt){var at=this;this._flush_one_queue(SET_ACTION,this.set,e),this._flush_one_queue(SET_ONCE_ACTION,this.set_once,a),this._flush_one_queue(UNSET_ACTION,this.unset,c,function(wt){return _$3.keys(wt)}),this._flush_one_queue(ADD_ACTION,this.increment,o),this._flush_one_queue(UNION_ACTION,this.union,$);var lt=this._mixpanel.persistence.load_queue(APPEND_ACTION);if(!_$3.isUndefined(lt)&&_$3.isArray(lt)&<.length)for(var et,it=function(wt,vt){wt===0&&at._mixpanel.persistence._add_to_people_queue(APPEND_ACTION,et),_$3.isUndefined(s)||s(wt,vt)},st=lt.length-1;st>=0;st--)lt=this._mixpanel.persistence.load_queue(APPEND_ACTION),et=lt.pop(),at._mixpanel.persistence.save(),_$3.isEmptyObject(et)||at.append(et,it);var ct=this._mixpanel.persistence.load_queue(REMOVE_ACTION);if(!_$3.isUndefined(ct)&&_$3.isArray(ct)&&ct.length)for(var ft,pt=function(wt,vt){wt===0&&at._mixpanel.persistence._add_to_people_queue(REMOVE_ACTION,ft),_$3.isUndefined(nt)||nt(wt,vt)},gt=ct.length-1;gt>=0;gt--)ct=this._mixpanel.persistence.load_queue(REMOVE_ACTION),ft=ct.pop(),at._mixpanel.persistence.save(),_$3.isEmptyObject(ft)||at.remove(ft,pt)};MixpanelPeople.prototype._is_reserved_property=function(e){return e==="$distinct_id"||e==="$token"||e==="$device_id"||e==="$user_id"||e==="$had_persisted_distinct_id"};MixpanelPeople.prototype.set=MixpanelPeople.prototype.set;MixpanelPeople.prototype.set_once=MixpanelPeople.prototype.set_once;MixpanelPeople.prototype.unset=MixpanelPeople.prototype.unset;MixpanelPeople.prototype.increment=MixpanelPeople.prototype.increment;MixpanelPeople.prototype.append=MixpanelPeople.prototype.append;MixpanelPeople.prototype.remove=MixpanelPeople.prototype.remove;MixpanelPeople.prototype.union=MixpanelPeople.prototype.union;MixpanelPeople.prototype.track_charge=MixpanelPeople.prototype.track_charge;MixpanelPeople.prototype.clear_charges=MixpanelPeople.prototype.clear_charges;MixpanelPeople.prototype.delete_user=MixpanelPeople.prototype.delete_user;MixpanelPeople.prototype.toString=MixpanelPeople.prototype.toString;var SET_QUEUE_KEY="__mps",SET_ONCE_QUEUE_KEY="__mpso",UNSET_QUEUE_KEY="__mpus",ADD_QUEUE_KEY="__mpa",APPEND_QUEUE_KEY="__mpap",REMOVE_QUEUE_KEY="__mpr",UNION_QUEUE_KEY="__mpu",PEOPLE_DISTINCT_ID_KEY="$people_distinct_id",ALIAS_ID_KEY="__alias",EVENT_TIMERS_KEY="__timers",RESERVED_PROPERTIES=[SET_QUEUE_KEY,SET_ONCE_QUEUE_KEY,UNSET_QUEUE_KEY,ADD_QUEUE_KEY,APPEND_QUEUE_KEY,REMOVE_QUEUE_KEY,UNION_QUEUE_KEY,PEOPLE_DISTINCT_ID_KEY,ALIAS_ID_KEY,EVENT_TIMERS_KEY],MixpanelPersistence=function(e){this.props={},this.campaign_params_saved=!1,e.persistence_name?this.name="mp_"+e.persistence_name:this.name="mp_"+e.token+"_mixpanel";var o=e.persistence;o!=="cookie"&&o!=="localStorage"&&(console$1.critical("Unknown persistence type "+o+"; falling back to cookie"),o=e.persistence="cookie"),o==="localStorage"&&_$3.localStorage.is_supported()?this.storage=_$3.localStorage:this.storage=_$3.cookie,this.load(),this.update_config(e),this.upgrade(),this.save()};MixpanelPersistence.prototype.properties=function(){var e={};return this.load(),_$3.each(this.props,function(o,s){_$3.include(RESERVED_PROPERTIES,s)||(e[s]=o)}),e};MixpanelPersistence.prototype.load=function(){if(!this.disabled){var e=this.storage.parse(this.name);e&&(this.props=_$3.extend({},e))}};MixpanelPersistence.prototype.upgrade=function(){var e,o;this.storage===_$3.localStorage?(e=_$3.cookie.parse(this.name),_$3.cookie.remove(this.name),_$3.cookie.remove(this.name,!0),e&&this.register_once(e)):this.storage===_$3.cookie&&(o=_$3.localStorage.parse(this.name),_$3.localStorage.remove(this.name),o&&this.register_once(o))};MixpanelPersistence.prototype.save=function(){this.disabled||this.storage.set(this.name,_$3.JSONEncode(this.props),this.expire_days,this.cross_subdomain,this.secure,this.cross_site,this.cookie_domain)};MixpanelPersistence.prototype.load_prop=function(e){return this.load(),this.props[e]};MixpanelPersistence.prototype.remove=function(){this.storage.remove(this.name,!1,this.cookie_domain),this.storage.remove(this.name,!0,this.cookie_domain)};MixpanelPersistence.prototype.clear=function(){this.remove(),this.props={}};MixpanelPersistence.prototype.register_once=function(e,o,s){return _$3.isObject(e)?(typeof o>"u"&&(o="None"),this.expire_days=typeof s>"u"?this.default_expiry:s,this.load(),_$3.each(e,function(a,$){(!this.props.hasOwnProperty($)||this.props[$]===o)&&(this.props[$]=a)},this),this.save(),!0):!1};MixpanelPersistence.prototype.register=function(e,o){return _$3.isObject(e)?(this.expire_days=typeof o>"u"?this.default_expiry:o,this.load(),_$3.extend(this.props,e),this.save(),!0):!1};MixpanelPersistence.prototype.unregister=function(e){this.load(),e in this.props&&(delete this.props[e],this.save())};MixpanelPersistence.prototype.update_search_keyword=function(e){this.register(_$3.info.searchInfo(e))};MixpanelPersistence.prototype.update_referrer_info=function(e){this.register_once({$initial_referrer:e||"$direct",$initial_referring_domain:_$3.info.referringDomain(e)||"$direct"},"")};MixpanelPersistence.prototype.get_referrer_info=function(){return _$3.strip_empty_properties({$initial_referrer:this.props.$initial_referrer,$initial_referring_domain:this.props.$initial_referring_domain})};MixpanelPersistence.prototype.update_config=function(e){this.default_expiry=this.expire_days=e.cookie_expiration,this.set_disabled(e.disable_persistence),this.set_cookie_domain(e.cookie_domain),this.set_cross_site(e.cross_site_cookie),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie)};MixpanelPersistence.prototype.set_disabled=function(e){this.disabled=e,this.disabled?this.remove():this.save()};MixpanelPersistence.prototype.set_cookie_domain=function(e){e!==this.cookie_domain&&(this.remove(),this.cookie_domain=e,this.save())};MixpanelPersistence.prototype.set_cross_site=function(e){e!==this.cross_site&&(this.cross_site=e,this.remove(),this.save())};MixpanelPersistence.prototype.set_cross_subdomain=function(e){e!==this.cross_subdomain&&(this.cross_subdomain=e,this.remove(),this.save())};MixpanelPersistence.prototype.get_cross_subdomain=function(){return this.cross_subdomain};MixpanelPersistence.prototype.set_secure=function(e){e!==this.secure&&(this.secure=!!e,this.remove(),this.save())};MixpanelPersistence.prototype._add_to_people_queue=function(e,o){var s=this._get_queue_key(e),a=o[e],$=this._get_or_create_queue(SET_ACTION),c=this._get_or_create_queue(SET_ONCE_ACTION),nt=this._get_or_create_queue(UNSET_ACTION),at=this._get_or_create_queue(ADD_ACTION),lt=this._get_or_create_queue(UNION_ACTION),et=this._get_or_create_queue(REMOVE_ACTION,[]),it=this._get_or_create_queue(APPEND_ACTION,[]);s===SET_QUEUE_KEY?(_$3.extend($,a),this._pop_from_people_queue(ADD_ACTION,a),this._pop_from_people_queue(UNION_ACTION,a),this._pop_from_people_queue(UNSET_ACTION,a)):s===SET_ONCE_QUEUE_KEY?(_$3.each(a,function(st,ct){ct in c||(c[ct]=st)}),this._pop_from_people_queue(UNSET_ACTION,a)):s===UNSET_QUEUE_KEY?_$3.each(a,function(st){_$3.each([$,c,at,lt],function(ct){st in ct&&delete ct[st]}),_$3.each(it,function(ct){st in ct&&delete ct[st]}),nt[st]=!0}):s===ADD_QUEUE_KEY?(_$3.each(a,function(st,ct){ct in $?$[ct]+=st:(ct in at||(at[ct]=0),at[ct]+=st)},this),this._pop_from_people_queue(UNSET_ACTION,a)):s===UNION_QUEUE_KEY?(_$3.each(a,function(st,ct){_$3.isArray(st)&&(ct in lt||(lt[ct]=[]),lt[ct]=lt[ct].concat(st))}),this._pop_from_people_queue(UNSET_ACTION,a)):s===REMOVE_QUEUE_KEY?(et.push(a),this._pop_from_people_queue(APPEND_ACTION,a)):s===APPEND_QUEUE_KEY&&(it.push(a),this._pop_from_people_queue(UNSET_ACTION,a)),console$1.log("MIXPANEL PEOPLE REQUEST (QUEUED, PENDING IDENTIFY):"),console$1.log(o),this.save()};MixpanelPersistence.prototype._pop_from_people_queue=function(e,o){var s=this.props[this._get_queue_key(e)];_$3.isUndefined(s)||_$3.each(o,function(a,$){e===APPEND_ACTION||e===REMOVE_ACTION?_$3.each(s,function(c){c[$]===a&&delete c[$]}):delete s[$]},this)};MixpanelPersistence.prototype.load_queue=function(e){return this.load_prop(this._get_queue_key(e))};MixpanelPersistence.prototype._get_queue_key=function(e){if(e===SET_ACTION)return SET_QUEUE_KEY;if(e===SET_ONCE_ACTION)return SET_ONCE_QUEUE_KEY;if(e===UNSET_ACTION)return UNSET_QUEUE_KEY;if(e===ADD_ACTION)return ADD_QUEUE_KEY;if(e===APPEND_ACTION)return APPEND_QUEUE_KEY;if(e===REMOVE_ACTION)return REMOVE_QUEUE_KEY;if(e===UNION_ACTION)return UNION_QUEUE_KEY;console$1.error("Invalid queue:",e)};MixpanelPersistence.prototype._get_or_create_queue=function(e,o){var s=this._get_queue_key(e);return o=_$3.isUndefined(o)?{}:o,this.props[s]||(this.props[s]=o)};MixpanelPersistence.prototype.set_event_timer=function(e,o){var s=this.load_prop(EVENT_TIMERS_KEY)||{};s[e]=o,this.props[EVENT_TIMERS_KEY]=s,this.save()};MixpanelPersistence.prototype.remove_event_timer=function(e){var o=this.load_prop(EVENT_TIMERS_KEY)||{},s=o[e];return _$3.isUndefined(s)||(delete this.props[EVENT_TIMERS_KEY][e],this.save()),s};var init_type,load_extra_bundle=function(e,o){throw new Error(e+" not available in this build.")},mixpanel_master,INIT_MODULE=0,INIT_SNIPPET=1,IDENTITY_FUNC=function(e){return e},NOOP_FUNC=function(){},PRIMARY_INSTANCE_NAME="mixpanel",PAYLOAD_TYPE_BASE64="base64",PAYLOAD_TYPE_JSON="json",DEVICE_ID_PREFIX="$device:",USE_XHR=win.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,ENQUEUE_REQUESTS=!USE_XHR&&userAgent.indexOf("MSIE")===-1&&userAgent.indexOf("Mozilla")===-1,sendBeacon=null;navigator$1.sendBeacon&&(sendBeacon=function(){return navigator$1.sendBeacon.apply(navigator$1,arguments)});var DEFAULT_API_ROUTES={track:"track/",engage:"engage/",groups:"groups/",record:"record/"},DEFAULT_CONFIG={api_host:"https://api-js.mixpanel.com",api_routes:DEFAULT_API_ROUTES,api_method:"POST",api_transport:"XHR",api_payload_format:PAYLOAD_TYPE_BASE64,app_host:"https://mixpanel.com",cdn:"https://cdn.mxpnl.com",cross_site_cookie:!1,cross_subdomain_cookie:!0,error_reporter:NOOP_FUNC,persistence:"cookie",persistence_name:"",cookie_domain:"",cookie_name:"",loaded:NOOP_FUNC,mp_loader:null,track_marketing:!0,track_pageview:!1,skip_first_touch_marketing:!1,store_google:!0,stop_utm_persistence:!1,save_referrer:!0,test:!1,verbose:!1,img:!1,debug:!1,track_links_timeout:300,cookie_expiration:365,upgrade:!1,disable_persistence:!1,disable_cookie:!1,secure_cookie:!1,ip:!0,opt_out_tracking_by_default:!1,opt_out_persistence_by_default:!1,opt_out_tracking_persistence_type:"localStorage",opt_out_tracking_cookie_prefix:null,property_blacklist:[],xhr_headers:{},ignore_dnt:!1,batch_requests:!0,batch_size:50,batch_flush_interval_ms:5e3,batch_request_timeout_ms:9e4,batch_autostart:!0,hooks:{},record_block_class:new RegExp("^(mp-block|fs-exclude|amp-block|rr-block|ph-no-capture)$"),record_block_selector:"img, video",record_collect_fonts:!1,record_idle_timeout_ms:30*60*1e3,record_inline_images:!1,record_mask_text_class:new RegExp("^(mp-mask|fs-mask|amp-mask|rr-mask|ph-mask)$"),record_mask_text_selector:"*",record_max_ms:MAX_RECORDING_MS,record_min_ms:0,record_sessions_percent:0,recorder_src:"https://cdn.mxpnl.com/libs/mixpanel-recorder.min.js"},DOM_LOADED=!1,MixpanelLib=function(){},create_mplib=function(e,o,s){var a,$=s===PRIMARY_INSTANCE_NAME?mixpanel_master:mixpanel_master[s];if($&&init_type===INIT_MODULE)a=$;else{if($&&!_$3.isArray($)){console$1.error("You have already initialized "+s);return}a=new MixpanelLib}if(a._cached_groups={},a._init(e,o,s),a.people=new MixpanelPeople,a.people._init(a),!a.get_config("skip_first_touch_marketing")){var c=_$3.info.campaignParams(null),nt={},at=!1;_$3.each(c,function(lt,et){nt["initial_"+et]=lt,lt&&(at=!0)}),at&&a.people.set_once(nt)}return Config.DEBUG=Config.DEBUG||a.get_config("debug"),!_$3.isUndefined($)&&_$3.isArray($)&&(a._execute_array.call(a.people,$.people),a._execute_array($)),a};MixpanelLib.prototype.init=function(e,o,s){if(_$3.isUndefined(s)){this.report_error("You must name your new library: init(token, config, name)");return}if(s===PRIMARY_INSTANCE_NAME){this.report_error("You must initialize the main mixpanel object right after you include the Mixpanel js snippet");return}var a=create_mplib(e,o,s);return mixpanel_master[s]=a,a._loaded(),a};MixpanelLib.prototype._init=function(e,o,s){o=o||{},this.__loaded=!0,this.config={};var a={};if(!("api_payload_format"in o)){var $=o.api_host||DEFAULT_CONFIG.api_host;$.match(/\.mixpanel\.com/)&&(a.api_payload_format=PAYLOAD_TYPE_JSON)}if(this.set_config(_$3.extend({},DEFAULT_CONFIG,a,o,{name:s,token:e,callback_fn:(s===PRIMARY_INSTANCE_NAME?s:PRIMARY_INSTANCE_NAME+"."+s)+"._jsc"})),this._jsc=NOOP_FUNC,this.__dom_loaded_queue=[],this.__request_queue=[],this.__disabled_events=[],this._flags={disable_all_events:!1,identify_called:!1},this.request_batchers={},this._batch_requests=this.get_config("batch_requests"),this._batch_requests){if(!_$3.localStorage.is_supported(!0)||!USE_XHR)this._batch_requests=!1,console$1.log("Turning off Mixpanel request-queueing; needs XHR and localStorage support"),_$3.each(this.get_batcher_configs(),function(lt){console$1.log("Clearing batch queue "+lt.queue_key),_$3.localStorage.remove(lt.queue_key)});else if(this.init_batchers(),sendBeacon&&win.addEventListener){var c=_$3.bind(function(){this.request_batchers.events.stopped||this.request_batchers.events.flush({unloading:!0})},this);win.addEventListener("pagehide",function(lt){lt.persisted&&c()}),win.addEventListener("visibilitychange",function(){document$1.visibilityState==="hidden"&&c()})}}this.persistence=this.cookie=new MixpanelPersistence(this.config),this.unpersisted_superprops={},this._gdpr_init();var nt=_$3.UUID();this.get_distinct_id()||this.register_once({distinct_id:DEVICE_ID_PREFIX+nt,$device_id:nt},"");var at=this.get_config("track_pageview");at&&this._init_url_change_tracking(at),this.get_config("record_sessions_percent")>0&&Math.random()*100<=this.get_config("record_sessions_percent")&&this.start_session_recording()};MixpanelLib.prototype.start_session_recording=addOptOutCheckMixpanelLib(function(){if(!win.MutationObserver){console$1.critical("Browser does not support MutationObserver; skipping session recording");return}var e=_$3.bind(function(){this._recorder=this._recorder||new win.__mp_recorder(this),this._recorder.startRecording()},this);_$3.isUndefined(win.__mp_recorder)?load_extra_bundle(this.get_config("recorder_src"),e):e()});MixpanelLib.prototype.stop_session_recording=function(){this._recorder?this._recorder.stopRecording():console$1.critical("Session recorder module not loaded")};MixpanelLib.prototype.get_session_recording_properties=function(){var e={};if(this._recorder){var o=this._recorder.replayId;o&&(e.$mp_replay_id=o)}return e};MixpanelLib.prototype._loaded=function(){if(this.get_config("loaded")(this),this._set_default_superprops(),this.people.set_once(this.persistence.get_referrer_info()),this.get_config("store_google")&&this.get_config("stop_utm_persistence")){var e=_$3.info.campaignParams(null);_$3.each(e,function(o,s){this.unregister(s)}.bind(this))}};MixpanelLib.prototype._set_default_superprops=function(){this.persistence.update_search_keyword(document$1.referrer),this.get_config("store_google")&&!this.get_config("stop_utm_persistence")&&this.register(_$3.info.campaignParams()),this.get_config("save_referrer")&&this.persistence.update_referrer_info(document$1.referrer)};MixpanelLib.prototype._dom_loaded=function(){_$3.each(this.__dom_loaded_queue,function(e){this._track_dom.apply(this,e)},this),this.has_opted_out_tracking()||_$3.each(this.__request_queue,function(e){this._send_request.apply(this,e)},this),delete this.__dom_loaded_queue,delete this.__request_queue};MixpanelLib.prototype._track_dom=function(e,o){if(this.get_config("img"))return this.report_error("You can't use DOM tracking functions with img = true."),!1;if(!DOM_LOADED)return this.__dom_loaded_queue.push([e,o]),!1;var s=new e().init(this);return s.track.apply(s,o)};MixpanelLib.prototype._init_url_change_tracking=function(e){var o="",s=this.track_pageview();if(s&&(o=_$3.info.currentUrl()),_$3.include(["full-url","url-with-path-and-query-string","url-with-path"],e)){win.addEventListener("popstate",function(){win.dispatchEvent(new Event("mp_locationchange"))}),win.addEventListener("hashchange",function(){win.dispatchEvent(new Event("mp_locationchange"))});var a=win.history.pushState;typeof a=="function"&&(win.history.pushState=function(c,nt,at){a.call(win.history,c,nt,at),win.dispatchEvent(new Event("mp_locationchange"))});var $=win.history.replaceState;typeof $=="function"&&(win.history.replaceState=function(c,nt,at){$.call(win.history,c,nt,at),win.dispatchEvent(new Event("mp_locationchange"))}),win.addEventListener("mp_locationchange",function(){var c=_$3.info.currentUrl(),nt=!1;if(e==="full-url"?nt=c!==o:e==="url-with-path-and-query-string"?nt=c.split("#")[0]!==o.split("#")[0]:e==="url-with-path"&&(nt=c.split("#")[0].split("?")[0]!==o.split("#")[0].split("?")[0]),nt){var at=this.track_pageview();at&&(o=c)}}.bind(this))}};MixpanelLib.prototype._prepare_callback=function(e,o){if(_$3.isUndefined(e))return null;if(USE_XHR){var s=function(nt){e(nt,o)};return s}else{var a=this._jsc,$=""+Math.floor(Math.random()*1e8),c=this.get_config("callback_fn")+"["+$+"]";return a[$]=function(nt){delete a[$],e(nt,o)},c}};MixpanelLib.prototype._send_request=function(e,o,s,a){var $=!0;if(ENQUEUE_REQUESTS)return this.__request_queue.push(arguments),$;var c={method:this.get_config("api_method"),transport:this.get_config("api_transport"),verbose:this.get_config("verbose")},nt=null;!a&&(_$3.isFunction(s)||typeof s=="string")&&(a=s,s=null),s=_$3.extend(c,s||{}),USE_XHR||(s.method="GET");var at=s.method==="POST",lt=sendBeacon&&at&&s.transport.toLowerCase()==="sendbeacon",et=s.verbose;o.verbose&&(et=!0),this.get_config("test")&&(o.test=1),et&&(o.verbose=1),this.get_config("img")&&(o.img=1),USE_XHR||(a?o.callback=a:(et||this.get_config("test"))&&(o.callback="(function(){})")),o.ip=this.get_config("ip")?1:0,o._=new Date().getTime().toString(),at&&(nt="data="+encodeURIComponent(o.data),delete o.data),e+="?"+_$3.HTTPBuildQuery(o);var it=this;if("img"in o){var st=document$1.createElement("img");st.src=e,document$1.body.appendChild(st)}else if(lt){try{$=sendBeacon(e,nt)}catch(vt){it.report_error(vt),$=!1}try{a&&a($?1:0)}catch(vt){it.report_error(vt)}}else if(USE_XHR)try{var ct=new XMLHttpRequest;ct.open(s.method,e,!0);var ft=this.get_config("xhr_headers");if(at&&(ft["Content-Type"]="application/x-www-form-urlencoded"),_$3.each(ft,function(vt,_t){ct.setRequestHeader(_t,vt)}),s.timeout_ms&&typeof ct.timeout<"u"){ct.timeout=s.timeout_ms;var pt=new Date().getTime()}ct.withCredentials=!0,ct.onreadystatechange=function(){if(ct.readyState===4)if(ct.status===200){if(a)if(et){var vt;try{vt=_$3.JSONDecode(ct.responseText)}catch(Pt){if(it.report_error(Pt),s.ignore_json_errors)vt=ct.responseText;else return}a(vt)}else a(Number(ct.responseText))}else{var _t;if(ct.timeout&&!ct.status&&new Date().getTime()-pt>=ct.timeout?_t="timeout":_t="Bad HTTP status: "+ct.status+" "+ct.statusText,it.report_error(_t),a)if(et){var $t=ct.responseHeaders||{};a({status:0,httpStatusCode:ct.status,error:_t,retryAfter:$t["Retry-After"]})}else a(0)}},ct.send(nt)}catch(vt){it.report_error(vt),$=!1}else{var gt=document$1.createElement("script");gt.type="text/javascript",gt.async=!0,gt.defer=!0,gt.src=e;var wt=document$1.getElementsByTagName("script")[0];wt.parentNode.insertBefore(gt,wt)}return $};MixpanelLib.prototype._execute_array=function(e){var o,s=[],a=[],$=[];_$3.each(e,function(nt){nt&&(o=nt[0],_$3.isArray(o)?$.push(nt):typeof nt=="function"?nt.call(this):_$3.isArray(nt)&&o==="alias"?s.push(nt):_$3.isArray(nt)&&o.indexOf("track")!==-1&&typeof this[o]=="function"?$.push(nt):a.push(nt))},this);var c=function(nt,at){_$3.each(nt,function(lt){if(_$3.isArray(lt[0])){var et=at;_$3.each(lt,function(it){et=et[it[0]].apply(et,it.slice(1))})}else this[lt[0]].apply(this,lt.slice(1))},at)};c(s,this),c(a,this),c($,this)};MixpanelLib.prototype.are_batchers_initialized=function(){return!!this.request_batchers.events};MixpanelLib.prototype.get_batcher_configs=function(){var e="__mpq_"+this.get_config("token"),o=this.get_config("api_routes");return this._batcher_configs=this._batcher_configs||{events:{type:"events",endpoint:"/"+o.track,queue_key:e+"_ev"},people:{type:"people",endpoint:"/"+o.engage,queue_key:e+"_pp"},groups:{type:"groups",endpoint:"/"+o.groups,queue_key:e+"_gr"}},this._batcher_configs};MixpanelLib.prototype.init_batchers=function(){if(!this.are_batchers_initialized()){var e=_$3.bind(function(s){return new RequestBatcher(s.queue_key,{libConfig:this.config,errorReporter:this.get_config("error_reporter"),sendRequestFunc:_$3.bind(function(a,$,c){this._send_request(this.get_config("api_host")+s.endpoint,this._encode_data_for_request(a),$,this._prepare_callback(c,a))},this),beforeSendHook:_$3.bind(function(a){return this._run_hook("before_send_"+s.type,a)},this),stopAllBatchingFunc:_$3.bind(this.stop_batch_senders,this),usePersistence:!0})},this),o=this.get_batcher_configs();this.request_batchers={events:e(o.events),people:e(o.people),groups:e(o.groups)}}this.get_config("batch_autostart")&&this.start_batch_senders()};MixpanelLib.prototype.start_batch_senders=function(){this._batchers_were_started=!0,this.are_batchers_initialized()&&(this._batch_requests=!0,_$3.each(this.request_batchers,function(e){e.start()}))};MixpanelLib.prototype.stop_batch_senders=function(){this._batch_requests=!1,_$3.each(this.request_batchers,function(e){e.stop(),e.clear()})};MixpanelLib.prototype.push=function(e){this._execute_array([e])};MixpanelLib.prototype.disable=function(e){typeof e>"u"?this._flags.disable_all_events=!0:this.__disabled_events=this.__disabled_events.concat(e)};MixpanelLib.prototype._encode_data_for_request=function(e){var o=_$3.JSONEncode(e);return this.get_config("api_payload_format")===PAYLOAD_TYPE_BASE64&&(o=_$3.base64Encode(o)),{data:o}};MixpanelLib.prototype._track_or_batch=function(e,o){var s=_$3.truncate(e.data,255),a=e.endpoint,$=e.batcher,c=e.should_send_immediately,nt=e.send_request_options||{};o=o||NOOP_FUNC;var at=!0,lt=_$3.bind(function(){return nt.skip_hooks||(s=this._run_hook("before_send_"+e.type,s)),s?(console$1.log("MIXPANEL REQUEST:"),console$1.log(s),this._send_request(a,this._encode_data_for_request(s),nt,this._prepare_callback(o,s))):null},this);return this._batch_requests&&!c?$.enqueue(s,function(et){et?o(1,s):lt()}):at=lt(),at&&s};MixpanelLib.prototype.track=addOptOutCheckMixpanelLib(function(e,o,s,a){!a&&typeof s=="function"&&(a=s,s=null),s=s||{};var $=s.transport;$&&(s.transport=$);var c=s.send_immediately;if(typeof a!="function"&&(a=NOOP_FUNC),_$3.isUndefined(e)){this.report_error("No event name provided to mixpanel.track");return}if(this._event_is_disabled(e)){a(0);return}o=_$3.extend({},o),o.token=this.get_config("token");var nt=this.persistence.remove_event_timer(e);if(!_$3.isUndefined(nt)){var at=new Date().getTime()-nt;o.$duration=parseFloat((at/1e3).toFixed(3))}this._set_default_superprops();var lt=this.get_config("track_marketing")?_$3.info.marketingParams():{};o=_$3.extend({},_$3.info.properties({mp_loader:this.get_config("mp_loader")}),lt,this.persistence.properties(),this.unpersisted_superprops,this.get_session_recording_properties(),o);var et=this.get_config("property_blacklist");_$3.isArray(et)?_$3.each(et,function(ct){delete o[ct]}):this.report_error("Invalid value for property_blacklist config: "+et);var it={event:e,properties:o},st=this._track_or_batch({type:"events",data:it,endpoint:this.get_config("api_host")+"/"+this.get_config("api_routes").track,batcher:this.request_batchers.events,should_send_immediately:c,send_request_options:s},a);return st});MixpanelLib.prototype.set_group=addOptOutCheckMixpanelLib(function(e,o,s){_$3.isArray(o)||(o=[o]);var a={};return a[e]=o,this.register(a),this.people.set(e,o,s)});MixpanelLib.prototype.add_group=addOptOutCheckMixpanelLib(function(e,o,s){var a=this.get_property(e),$={};return a===void 0?($[e]=[o],this.register($)):a.indexOf(o)===-1&&(a.push(o),$[e]=a,this.register($)),this.people.union(e,o,s)});MixpanelLib.prototype.remove_group=addOptOutCheckMixpanelLib(function(e,o,s){var a=this.get_property(e);if(a!==void 0){var $=a.indexOf(o);$>-1&&(a.splice($,1),this.register({group_key:a})),a.length===0&&this.unregister(e)}return this.people.remove(e,o,s)});MixpanelLib.prototype.track_with_groups=addOptOutCheckMixpanelLib(function(e,o,s,a){var $=_$3.extend({},o||{});return _$3.each(s,function(c,nt){c!=null&&($[nt]=c)}),this.track(e,$,a)});MixpanelLib.prototype._create_map_key=function(e,o){return e+"_"+JSON.stringify(o)};MixpanelLib.prototype._remove_group_from_cache=function(e,o){delete this._cached_groups[this._create_map_key(e,o)]};MixpanelLib.prototype.get_group=function(e,o){var s=this._create_map_key(e,o),a=this._cached_groups[s];return(a===void 0||a._group_key!==e||a._group_id!==o)&&(a=new MixpanelGroup,a._init(this,e,o),this._cached_groups[s]=a),a};MixpanelLib.prototype.track_pageview=addOptOutCheckMixpanelLib(function(e,o){typeof e!="object"&&(e={}),o=o||{};var s=o.event_name||"$mp_web_page_view",a=_$3.extend(_$3.info.mpPageViewProperties(),_$3.info.campaignParams(),_$3.info.clickParams()),$=_$3.extend({},a,e);return this.track(s,$)});MixpanelLib.prototype.track_links=function(){return this._track_dom.call(this,LinkTracker,arguments)};MixpanelLib.prototype.track_forms=function(){return this._track_dom.call(this,FormTracker,arguments)};MixpanelLib.prototype.time_event=function(e){if(_$3.isUndefined(e)){this.report_error("No event name provided to mixpanel.time_event");return}this._event_is_disabled(e)||this.persistence.set_event_timer(e,new Date().getTime())};var REGISTER_DEFAULTS={persistent:!0},options_for_register=function(e){var o;return _$3.isObject(e)?o=e:_$3.isUndefined(e)?o={}:o={days:e},_$3.extend({},REGISTER_DEFAULTS,o)};MixpanelLib.prototype.register=function(e,o){var s=options_for_register(o);s.persistent?this.persistence.register(e,s.days):_$3.extend(this.unpersisted_superprops,e)};MixpanelLib.prototype.register_once=function(e,o,s){var a=options_for_register(s);a.persistent?this.persistence.register_once(e,o,a.days):(typeof o>"u"&&(o="None"),_$3.each(e,function($,c){(!this.unpersisted_superprops.hasOwnProperty(c)||this.unpersisted_superprops[c]===o)&&(this.unpersisted_superprops[c]=$)},this))};MixpanelLib.prototype.unregister=function(e,o){o=options_for_register(o),o.persistent?this.persistence.unregister(e):delete this.unpersisted_superprops[e]};MixpanelLib.prototype._register_single=function(e,o){var s={};s[e]=o,this.register(s)};MixpanelLib.prototype.identify=function(e,o,s,a,$,c,nt,at){var lt=this.get_distinct_id();if(e&<!==e){if(typeof e=="string"&&e.indexOf(DEVICE_ID_PREFIX)===0)return this.report_error("distinct_id cannot have $device: prefix"),-1;this.register({$user_id:e})}if(!this.get_property("$device_id")){var et=lt;this.register_once({$had_persisted_distinct_id:!0,$device_id:et},"")}e!==lt&&e!==this.get_property(ALIAS_ID_KEY)&&(this.unregister(ALIAS_ID_KEY),this.register({distinct_id:e})),this._flags.identify_called=!0,this.people._flush(o,s,a,$,c,nt,at),e!==lt&&this.track("$identify",{distinct_id:e,$anon_distinct_id:lt},{skip_hooks:!0})};MixpanelLib.prototype.reset=function(){this.persistence.clear(),this._flags.identify_called=!1;var e=_$3.UUID();this.register_once({distinct_id:DEVICE_ID_PREFIX+e,$device_id:e},"")};MixpanelLib.prototype.get_distinct_id=function(){return this.get_property("distinct_id")};MixpanelLib.prototype.alias=function(e,o){if(e===this.get_property(PEOPLE_DISTINCT_ID_KEY))return this.report_error("Attempting to create alias for existing People user - aborting."),-2;var s=this;return _$3.isUndefined(o)&&(o=this.get_distinct_id()),e!==o?(this._register_single(ALIAS_ID_KEY,e),this.track("$create_alias",{alias:e,distinct_id:o},{skip_hooks:!0},function(){s.identify(e)})):(this.report_error("alias matches current distinct_id - skipping api call."),this.identify(e),-1)};MixpanelLib.prototype.name_tag=function(e){this._register_single("mp_name_tag",e)};MixpanelLib.prototype.set_config=function(e){if(_$3.isObject(e)){_$3.extend(this.config,e);var o=e.batch_size;o&&_$3.each(this.request_batchers,function(s){s.resetBatchSize()}),this.get_config("persistence_name")||(this.config.persistence_name=this.config.cookie_name),this.get_config("disable_persistence")||(this.config.disable_persistence=this.config.disable_cookie),this.persistence&&this.persistence.update_config(this.config),Config.DEBUG=Config.DEBUG||this.get_config("debug")}};MixpanelLib.prototype.get_config=function(e){return this.config[e]};MixpanelLib.prototype._run_hook=function(e){var o=(this.config.hooks[e]||IDENTITY_FUNC).apply(this,slice$1.call(arguments,1));return typeof o>"u"&&(this.report_error(e+" hook did not return a value"),o=null),o};MixpanelLib.prototype.get_property=function(e){return this.persistence.load_prop([e])};MixpanelLib.prototype.toString=function(){var e=this.get_config("name");return e!==PRIMARY_INSTANCE_NAME&&(e=PRIMARY_INSTANCE_NAME+"."+e),e};MixpanelLib.prototype._event_is_disabled=function(e){return _$3.isBlockedUA(userAgent)||this._flags.disable_all_events||_$3.include(this.__disabled_events,e)};MixpanelLib.prototype._gdpr_init=function(){var e=this.get_config("opt_out_tracking_persistence_type")==="localStorage";e&&_$3.localStorage.is_supported()&&(!this.has_opted_in_tracking()&&this.has_opted_in_tracking({persistence_type:"cookie"})&&this.opt_in_tracking({enable_persistence:!1}),!this.has_opted_out_tracking()&&this.has_opted_out_tracking({persistence_type:"cookie"})&&this.opt_out_tracking({clear_persistence:!1}),this.clear_opt_in_out_tracking({persistence_type:"cookie",enable_persistence:!1})),this.has_opted_out_tracking()?this._gdpr_update_persistence({clear_persistence:!0}):!this.has_opted_in_tracking()&&(this.get_config("opt_out_tracking_by_default")||_$3.cookie.get("mp_optout"))&&(_$3.cookie.remove("mp_optout"),this.opt_out_tracking({clear_persistence:this.get_config("opt_out_persistence_by_default")}))};MixpanelLib.prototype._gdpr_update_persistence=function(e){var o;if(e&&e.clear_persistence)o=!0;else if(e&&e.enable_persistence)o=!1;else return;!this.get_config("disable_persistence")&&this.persistence.disabled!==o&&this.persistence.set_disabled(o),o?this.stop_batch_senders():this._batchers_were_started&&this.start_batch_senders()};MixpanelLib.prototype._gdpr_call_func=function(e,o){return o=_$3.extend({track:_$3.bind(this.track,this),persistence_type:this.get_config("opt_out_tracking_persistence_type"),cookie_prefix:this.get_config("opt_out_tracking_cookie_prefix"),cookie_expiration:this.get_config("cookie_expiration"),cross_site_cookie:this.get_config("cross_site_cookie"),cross_subdomain_cookie:this.get_config("cross_subdomain_cookie"),cookie_domain:this.get_config("cookie_domain"),secure_cookie:this.get_config("secure_cookie"),ignore_dnt:this.get_config("ignore_dnt")},o),_$3.localStorage.is_supported()||(o.persistence_type="cookie"),e(this.get_config("token"),{track:o.track,trackEventName:o.track_event_name,trackProperties:o.track_properties,persistenceType:o.persistence_type,persistencePrefix:o.cookie_prefix,cookieDomain:o.cookie_domain,cookieExpiration:o.cookie_expiration,crossSiteCookie:o.cross_site_cookie,crossSubdomainCookie:o.cross_subdomain_cookie,secureCookie:o.secure_cookie,ignoreDnt:o.ignore_dnt})};MixpanelLib.prototype.opt_in_tracking=function(e){e=_$3.extend({enable_persistence:!0},e),this._gdpr_call_func(optIn,e),this._gdpr_update_persistence(e)};MixpanelLib.prototype.opt_out_tracking=function(e){e=_$3.extend({clear_persistence:!0,delete_user:!0},e),e.delete_user&&this.people&&this.people._identify_called()&&(this.people.delete_user(),this.people.clear_charges()),this._gdpr_call_func(optOut,e),this._gdpr_update_persistence(e)};MixpanelLib.prototype.has_opted_in_tracking=function(e){return this._gdpr_call_func(hasOptedIn,e)};MixpanelLib.prototype.has_opted_out_tracking=function(e){return this._gdpr_call_func(hasOptedOut,e)};MixpanelLib.prototype.clear_opt_in_out_tracking=function(e){e=_$3.extend({enable_persistence:!0},e),this._gdpr_call_func(clearOptInOut,e),this._gdpr_update_persistence(e)};MixpanelLib.prototype.report_error=function(e,o){console$1.error.apply(console$1.error,arguments);try{!o&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,o)}catch(s){console$1.error(s)}};MixpanelLib.prototype.init=MixpanelLib.prototype.init;MixpanelLib.prototype.reset=MixpanelLib.prototype.reset;MixpanelLib.prototype.disable=MixpanelLib.prototype.disable;MixpanelLib.prototype.time_event=MixpanelLib.prototype.time_event;MixpanelLib.prototype.track=MixpanelLib.prototype.track;MixpanelLib.prototype.track_links=MixpanelLib.prototype.track_links;MixpanelLib.prototype.track_forms=MixpanelLib.prototype.track_forms;MixpanelLib.prototype.track_pageview=MixpanelLib.prototype.track_pageview;MixpanelLib.prototype.register=MixpanelLib.prototype.register;MixpanelLib.prototype.register_once=MixpanelLib.prototype.register_once;MixpanelLib.prototype.unregister=MixpanelLib.prototype.unregister;MixpanelLib.prototype.identify=MixpanelLib.prototype.identify;MixpanelLib.prototype.alias=MixpanelLib.prototype.alias;MixpanelLib.prototype.name_tag=MixpanelLib.prototype.name_tag;MixpanelLib.prototype.set_config=MixpanelLib.prototype.set_config;MixpanelLib.prototype.get_config=MixpanelLib.prototype.get_config;MixpanelLib.prototype.get_property=MixpanelLib.prototype.get_property;MixpanelLib.prototype.get_distinct_id=MixpanelLib.prototype.get_distinct_id;MixpanelLib.prototype.toString=MixpanelLib.prototype.toString;MixpanelLib.prototype.opt_out_tracking=MixpanelLib.prototype.opt_out_tracking;MixpanelLib.prototype.opt_in_tracking=MixpanelLib.prototype.opt_in_tracking;MixpanelLib.prototype.has_opted_out_tracking=MixpanelLib.prototype.has_opted_out_tracking;MixpanelLib.prototype.has_opted_in_tracking=MixpanelLib.prototype.has_opted_in_tracking;MixpanelLib.prototype.clear_opt_in_out_tracking=MixpanelLib.prototype.clear_opt_in_out_tracking;MixpanelLib.prototype.get_group=MixpanelLib.prototype.get_group;MixpanelLib.prototype.set_group=MixpanelLib.prototype.set_group;MixpanelLib.prototype.add_group=MixpanelLib.prototype.add_group;MixpanelLib.prototype.remove_group=MixpanelLib.prototype.remove_group;MixpanelLib.prototype.track_with_groups=MixpanelLib.prototype.track_with_groups;MixpanelLib.prototype.start_batch_senders=MixpanelLib.prototype.start_batch_senders;MixpanelLib.prototype.stop_batch_senders=MixpanelLib.prototype.stop_batch_senders;MixpanelLib.prototype.start_session_recording=MixpanelLib.prototype.start_session_recording;MixpanelLib.prototype.stop_session_recording=MixpanelLib.prototype.stop_session_recording;MixpanelLib.prototype.get_session_recording_properties=MixpanelLib.prototype.get_session_recording_properties;MixpanelLib.prototype.DEFAULT_API_ROUTES=DEFAULT_API_ROUTES;MixpanelPersistence.prototype.properties=MixpanelPersistence.prototype.properties;MixpanelPersistence.prototype.update_search_keyword=MixpanelPersistence.prototype.update_search_keyword;MixpanelPersistence.prototype.update_referrer_info=MixpanelPersistence.prototype.update_referrer_info;MixpanelPersistence.prototype.get_cross_subdomain=MixpanelPersistence.prototype.get_cross_subdomain;MixpanelPersistence.prototype.clear=MixpanelPersistence.prototype.clear;var instances={},extend_mp=function(){_$3.each(instances,function(e,o){o!==PRIMARY_INSTANCE_NAME&&(mixpanel_master[o]=e)}),mixpanel_master._=_$3},override_mp_init_func=function(){mixpanel_master.init=function(e,o,s){if(s)return mixpanel_master[s]||(mixpanel_master[s]=instances[s]=create_mplib(e,o,s),mixpanel_master[s]._loaded()),mixpanel_master[s];var a=mixpanel_master;instances[PRIMARY_INSTANCE_NAME]?a=instances[PRIMARY_INSTANCE_NAME]:e&&(a=create_mplib(e,o,PRIMARY_INSTANCE_NAME),a._loaded(),instances[PRIMARY_INSTANCE_NAME]=a),mixpanel_master=a,init_type===INIT_SNIPPET&&(win[PRIMARY_INSTANCE_NAME]=mixpanel_master),extend_mp()}},add_dom_loaded_handler=function(){function e(){e.done||(e.done=!0,DOM_LOADED=!0,ENQUEUE_REQUESTS=!1,_$3.each(instances,function(a){a._dom_loaded()}))}function o(){try{document$1.documentElement.doScroll("left")}catch{setTimeout(o,1);return}e()}if(document$1.addEventListener)document$1.readyState==="complete"?e():document$1.addEventListener("DOMContentLoaded",e,!1);else if(document$1.attachEvent){document$1.attachEvent("onreadystatechange",e);var s=!1;try{s=win.frameElement===null}catch{}document$1.documentElement.doScroll&&s&&o()}_$3.register_event(win,"load",e,!0)};function init_as_module(e){return load_extra_bundle=e,init_type=INIT_MODULE,mixpanel_master=new MixpanelLib,override_mp_init_func(),mixpanel_master.init(),add_dom_loaded_handler(),mixpanel_master}function loadNoop(e,o){o()}init_as_module(loadNoop);function r(e){var o,s,a="";if(typeof e=="string"||typeof e=="number")a+=e;else if(typeof e=="object")if(Array.isArray(e))for(o=0;otypeof e=="number"&&!isNaN(e),d=e=>typeof e=="string",p=e=>typeof e=="function",m=e=>d(e)||p(e)?e:null,f=e=>reactExports.isValidElement(e)||d(e)||p(e)||u(e);function g(e,o,s){s===void 0&&(s=300);const{scrollHeight:a,style:$}=e;requestAnimationFrame(()=>{$.minHeight="initial",$.height=a+"px",$.transition=`all ${s}ms`,requestAnimationFrame(()=>{$.height="0",$.padding="0",$.margin="0",setTimeout(o,s)})})}function h(e){let{enter:o,exit:s,appendPosition:a=!1,collapse:$=!0,collapseDuration:c=300}=e;return function(nt){let{children:at,position:lt,preventExitTransition:et,done:it,nodeRef:st,isIn:ct}=nt;const ft=a?`${o}--${lt}`:o,pt=a?`${s}--${lt}`:s,gt=reactExports.useRef(0);return reactExports.useLayoutEffect(()=>{const wt=st.current,vt=ft.split(" "),_t=$t=>{$t.target===st.current&&(wt.dispatchEvent(new Event("d")),wt.removeEventListener("animationend",_t),wt.removeEventListener("animationcancel",_t),gt.current===0&&$t.type!=="animationcancel"&&wt.classList.remove(...vt))};wt.classList.add(...vt),wt.addEventListener("animationend",_t),wt.addEventListener("animationcancel",_t)},[]),reactExports.useEffect(()=>{const wt=st.current,vt=()=>{wt.removeEventListener("animationend",vt),$?g(wt,it,c):it()};ct||(et?vt():(gt.current=1,wt.className+=` ${pt}`,wt.addEventListener("animationend",vt)))},[ct]),React.createElement(React.Fragment,null,at)}}function y(e,o){return e!=null?{content:e.content,containerId:e.props.containerId,id:e.props.toastId,theme:e.props.theme,type:e.props.type,data:e.props.data||{},isLoading:e.props.isLoading,icon:e.props.icon,status:o}:{}}const v={list:new Map,emitQueue:new Map,on(e,o){return this.list.has(e)||this.list.set(e,[]),this.list.get(e).push(o),this},off(e,o){if(o){const s=this.list.get(e).filter(a=>a!==o);return this.list.set(e,s),this}return this.list.delete(e),this},cancelEmit(e){const o=this.emitQueue.get(e);return o&&(o.forEach(clearTimeout),this.emitQueue.delete(e)),this},emit(e){this.list.has(e)&&this.list.get(e).forEach(o=>{const s=setTimeout(()=>{o(...[].slice.call(arguments,1))},0);this.emitQueue.has(e)||this.emitQueue.set(e,[]),this.emitQueue.get(e).push(s)})}},T=e=>{let{theme:o,type:s,...a}=e;return React.createElement("svg",{viewBox:"0 0 24 24",width:"100%",height:"100%",fill:o==="colored"?"currentColor":`var(--toastify-icon-color-${s})`,...a})},E={info:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M12 0a12 12 0 1012 12A12.013 12.013 0 0012 0zm.25 5a1.5 1.5 0 11-1.5 1.5 1.5 1.5 0 011.5-1.5zm2.25 13.5h-4a1 1 0 010-2h.75a.25.25 0 00.25-.25v-4.5a.25.25 0 00-.25-.25h-.75a1 1 0 010-2h1a2 2 0 012 2v4.75a.25.25 0 00.25.25h.75a1 1 0 110 2z"}))},warning:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M23.32 17.191L15.438 2.184C14.728.833 13.416 0 11.996 0c-1.42 0-2.733.833-3.443 2.184L.533 17.448a4.744 4.744 0 000 4.368C1.243 23.167 2.555 24 3.975 24h16.05C22.22 24 24 22.044 24 19.632c0-.904-.251-1.746-.68-2.44zm-9.622 1.46c0 1.033-.724 1.823-1.698 1.823s-1.698-.79-1.698-1.822v-.043c0-1.028.724-1.822 1.698-1.822s1.698.79 1.698 1.822v.043zm.039-12.285l-.84 8.06c-.057.581-.408.943-.897.943-.49 0-.84-.367-.896-.942l-.84-8.065c-.057-.624.25-1.095.779-1.095h1.91c.528.005.84.476.784 1.1z"}))},success:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z"}))},error:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z"}))},spinner:function(){return React.createElement("div",{className:"Toastify__spinner"})}};function C(e){const[,o]=reactExports.useReducer(ft=>ft+1,0),[s,a]=reactExports.useState([]),$=reactExports.useRef(null),c=reactExports.useRef(new Map).current,nt=ft=>s.indexOf(ft)!==-1,at=reactExports.useRef({toastKey:1,displayedToast:0,count:0,queue:[],props:e,containerId:null,isToastActive:nt,getToast:ft=>c.get(ft)}).current;function lt(ft){let{containerId:pt}=ft;const{limit:gt}=at.props;!gt||pt&&at.containerId!==pt||(at.count-=at.queue.length,at.queue=[])}function et(ft){a(pt=>ft==null?[]:pt.filter(gt=>gt!==ft))}function it(){const{toastContent:ft,toastProps:pt,staleId:gt}=at.queue.shift();ct(ft,pt,gt)}function st(ft,pt){let{delay:gt,staleId:wt,...vt}=pt;if(!f(ft)||function(Jt){return!$.current||at.props.enableMultiContainer&&Jt.containerId!==at.props.containerId||c.has(Jt.toastId)&&Jt.updateId==null}(vt))return;const{toastId:_t,updateId:$t,data:Pt}=vt,{props:Nt}=at,Lt=()=>et(_t),Ft=$t==null;Ft&&at.count++;const Wt={...Nt,style:Nt.toastStyle,key:at.toastKey++,...Object.fromEntries(Object.entries(vt).filter(Jt=>{let[Kr,Ot]=Jt;return Ot!=null})),toastId:_t,updateId:$t,data:Pt,closeToast:Lt,isIn:!1,className:m(vt.className||Nt.toastClassName),bodyClassName:m(vt.bodyClassName||Nt.bodyClassName),progressClassName:m(vt.progressClassName||Nt.progressClassName),autoClose:!vt.isLoading&&(_r=vt.autoClose,vr=Nt.autoClose,_r===!1||u(_r)&&_r>0?_r:vr),deleteToast(){const Jt=y(c.get(_t),"removed");c.delete(_t),v.emit(4,Jt);const Kr=at.queue.length;if(at.count=_t==null?at.count-at.displayedToast:at.count-1,at.count<0&&(at.count=0),Kr>0){const Ot=_t==null?at.props.limit:1;if(Kr===1||Ot===1)at.displayedToast++,it();else{const gr=Ot>Kr?Kr:Ot;at.displayedToast=gr;for(let $o=0;$oYr in E)(Ot)&&(On=E[Ot](en))),On}(Wt),p(vt.onOpen)&&(Wt.onOpen=vt.onOpen),p(vt.onClose)&&(Wt.onClose=vt.onClose),Wt.closeButton=Nt.closeButton,vt.closeButton===!1||f(vt.closeButton)?Wt.closeButton=vt.closeButton:vt.closeButton===!0&&(Wt.closeButton=!f(Nt.closeButton)||Nt.closeButton);let _o=ft;reactExports.isValidElement(ft)&&!d(ft.type)?_o=reactExports.cloneElement(ft,{closeToast:Lt,toastProps:Wt,data:Pt}):p(ft)&&(_o=ft({closeToast:Lt,toastProps:Wt,data:Pt})),Nt.limit&&Nt.limit>0&&at.count>Nt.limit&&Ft?at.queue.push({toastContent:_o,toastProps:Wt,staleId:wt}):u(gt)?setTimeout(()=>{ct(_o,Wt,wt)},gt):ct(_o,Wt,wt)}function ct(ft,pt,gt){const{toastId:wt}=pt;gt&&c.delete(gt);const vt={content:ft,props:pt};c.set(wt,vt),a(_t=>[..._t,wt].filter($t=>$t!==gt)),v.emit(4,y(vt,vt.props.updateId==null?"added":"updated"))}return reactExports.useEffect(()=>(at.containerId=e.containerId,v.cancelEmit(3).on(0,st).on(1,ft=>$.current&&et(ft)).on(5,lt).emit(2,at),()=>{c.clear(),v.emit(3,at)}),[]),reactExports.useEffect(()=>{at.props=e,at.isToastActive=nt,at.displayedToast=s.length}),{getToastToRender:function(ft){const pt=new Map,gt=Array.from(c.values());return e.newestOnTop&>.reverse(),gt.forEach(wt=>{const{position:vt}=wt.props;pt.has(vt)||pt.set(vt,[]),pt.get(vt).push(wt)}),Array.from(pt,wt=>ft(wt[0],wt[1]))},containerRef:$,isToastActive:nt}}function b(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientX:e.clientX}function I(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientY:e.clientY}function _$2(e){const[o,s]=reactExports.useState(!1),[a,$]=reactExports.useState(!1),c=reactExports.useRef(null),nt=reactExports.useRef({start:0,x:0,y:0,delta:0,removalDistance:0,canCloseOnClick:!0,canDrag:!1,boundingRect:null,didMove:!1}).current,at=reactExports.useRef(e),{autoClose:lt,pauseOnHover:et,closeToast:it,onClick:st,closeOnClick:ct}=e;function ft(Pt){if(e.draggable){Pt.nativeEvent.type==="touchstart"&&Pt.nativeEvent.preventDefault(),nt.didMove=!1,document.addEventListener("mousemove",vt),document.addEventListener("mouseup",_t),document.addEventListener("touchmove",vt),document.addEventListener("touchend",_t);const Nt=c.current;nt.canCloseOnClick=!0,nt.canDrag=!0,nt.boundingRect=Nt.getBoundingClientRect(),Nt.style.transition="",nt.x=b(Pt.nativeEvent),nt.y=I(Pt.nativeEvent),e.draggableDirection==="x"?(nt.start=nt.x,nt.removalDistance=Nt.offsetWidth*(e.draggablePercent/100)):(nt.start=nt.y,nt.removalDistance=Nt.offsetHeight*(e.draggablePercent===80?1.5*e.draggablePercent:e.draggablePercent/100))}}function pt(Pt){if(nt.boundingRect){const{top:Nt,bottom:Lt,left:Ft,right:Wt}=nt.boundingRect;Pt.nativeEvent.type!=="touchend"&&e.pauseOnHover&&nt.x>=Ft&&nt.x<=Wt&&nt.y>=Nt&&nt.y<=Lt?wt():gt()}}function gt(){s(!0)}function wt(){s(!1)}function vt(Pt){const Nt=c.current;nt.canDrag&&Nt&&(nt.didMove=!0,o&&wt(),nt.x=b(Pt),nt.y=I(Pt),nt.delta=e.draggableDirection==="x"?nt.x-nt.start:nt.y-nt.start,nt.start!==nt.x&&(nt.canCloseOnClick=!1),Nt.style.transform=`translate${e.draggableDirection}(${nt.delta}px)`,Nt.style.opacity=""+(1-Math.abs(nt.delta/nt.removalDistance)))}function _t(){document.removeEventListener("mousemove",vt),document.removeEventListener("mouseup",_t),document.removeEventListener("touchmove",vt),document.removeEventListener("touchend",_t);const Pt=c.current;if(nt.canDrag&&nt.didMove&&Pt){if(nt.canDrag=!1,Math.abs(nt.delta)>nt.removalDistance)return $(!0),void e.closeToast();Pt.style.transition="transform 0.2s, opacity 0.2s",Pt.style.transform=`translate${e.draggableDirection}(0)`,Pt.style.opacity="1"}}reactExports.useEffect(()=>{at.current=e}),reactExports.useEffect(()=>(c.current&&c.current.addEventListener("d",gt,{once:!0}),p(e.onOpen)&&e.onOpen(reactExports.isValidElement(e.children)&&e.children.props),()=>{const Pt=at.current;p(Pt.onClose)&&Pt.onClose(reactExports.isValidElement(Pt.children)&&Pt.children.props)}),[]),reactExports.useEffect(()=>(e.pauseOnFocusLoss&&(document.hasFocus()||wt(),window.addEventListener("focus",gt),window.addEventListener("blur",wt)),()=>{e.pauseOnFocusLoss&&(window.removeEventListener("focus",gt),window.removeEventListener("blur",wt))}),[e.pauseOnFocusLoss]);const $t={onMouseDown:ft,onTouchStart:ft,onMouseUp:pt,onTouchEnd:pt};return lt&&et&&($t.onMouseEnter=wt,$t.onMouseLeave=gt),ct&&($t.onClick=Pt=>{st&&st(Pt),nt.canCloseOnClick&&it()}),{playToast:gt,pauseToast:wt,isRunning:o,preventExitTransition:a,toastRef:c,eventHandlers:$t}}function L(e){let{closeToast:o,theme:s,ariaLabel:a="close"}=e;return React.createElement("button",{className:`Toastify__close-button Toastify__close-button--${s}`,type:"button",onClick:$=>{$.stopPropagation(),o($)},"aria-label":a},React.createElement("svg",{"aria-hidden":"true",viewBox:"0 0 14 16"},React.createElement("path",{fillRule:"evenodd",d:"M7.71 8.23l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75L1 11.98l3.75-3.75L1 4.48 2.48 3l3.75 3.75L9.98 3l1.48 1.48-3.75 3.75z"})))}function O$1(e){let{delay:o,isRunning:s,closeToast:a,type:$="default",hide:c,className:nt,style:at,controlledProgress:lt,progress:et,rtl:it,isIn:st,theme:ct}=e;const ft=c||lt&&et===0,pt={...at,animationDuration:`${o}ms`,animationPlayState:s?"running":"paused",opacity:ft?0:1};lt&&(pt.transform=`scaleX(${et})`);const gt=clsx("Toastify__progress-bar",lt?"Toastify__progress-bar--controlled":"Toastify__progress-bar--animated",`Toastify__progress-bar-theme--${ct}`,`Toastify__progress-bar--${$}`,{"Toastify__progress-bar--rtl":it}),wt=p(nt)?nt({rtl:it,type:$,defaultClassName:gt}):clsx(gt,nt);return React.createElement("div",{role:"progressbar","aria-hidden":ft?"true":"false","aria-label":"notification timer",className:wt,style:pt,[lt&&et>=1?"onTransitionEnd":"onAnimationEnd"]:lt&&et<1?null:()=>{st&&a()}})}const N=e=>{const{isRunning:o,preventExitTransition:s,toastRef:a,eventHandlers:$}=_$2(e),{closeButton:c,children:nt,autoClose:at,onClick:lt,type:et,hideProgressBar:it,closeToast:st,transition:ct,position:ft,className:pt,style:gt,bodyClassName:wt,bodyStyle:vt,progressClassName:_t,progressStyle:$t,updateId:Pt,role:Nt,progress:Lt,rtl:Ft,toastId:Wt,deleteToast:_r,isIn:vr,isLoading:_o,iconOut:Jt,closeOnClick:Kr,theme:Ot}=e,gr=clsx("Toastify__toast",`Toastify__toast-theme--${Ot}`,`Toastify__toast--${et}`,{"Toastify__toast--rtl":Ft},{"Toastify__toast--close-on-click":Kr}),$o=p(pt)?pt({rtl:Ft,position:ft,type:et,defaultClassName:gr}):clsx(gr,pt),On=!!Lt||!at,en={closeToast:st,type:et,theme:Ot};let Yr=null;return c===!1||(Yr=p(c)?c(en):reactExports.isValidElement(c)?reactExports.cloneElement(c,en):L(en)),React.createElement(ct,{isIn:vr,done:_r,position:ft,preventExitTransition:s,nodeRef:a},React.createElement("div",{id:Wt,onClick:lt,className:$o,...$,style:gt,ref:a},React.createElement("div",{...vr&&{role:Nt},className:p(wt)?wt({type:et}):clsx("Toastify__toast-body",wt),style:vt},Jt!=null&&React.createElement("div",{className:clsx("Toastify__toast-icon",{"Toastify--animate-icon Toastify__zoom-enter":!_o})},Jt),React.createElement("div",null,nt)),Yr,React.createElement(O$1,{...Pt&&!On?{key:`pb-${Pt}`}:{},rtl:Ft,theme:Ot,delay:at,isRunning:o,isIn:vr,closeToast:st,hide:it,type:et,style:$t,className:_t,controlledProgress:On,progress:Lt||0})))},M=function(e,o){return o===void 0&&(o=!1),{enter:`Toastify--animate Toastify__${e}-enter`,exit:`Toastify--animate Toastify__${e}-exit`,appendPosition:o}},R=h(M("bounce",!0));h(M("slide",!0));h(M("zoom"));h(M("flip"));const k$1=reactExports.forwardRef((e,o)=>{const{getToastToRender:s,containerRef:a,isToastActive:$}=C(e),{className:c,style:nt,rtl:at,containerId:lt}=e;function et(it){const st=clsx("Toastify__toast-container",`Toastify__toast-container--${it}`,{"Toastify__toast-container--rtl":at});return p(c)?c({position:it,rtl:at,defaultClassName:st}):clsx(st,m(c))}return reactExports.useEffect(()=>{o&&(o.current=a.current)},[]),React.createElement("div",{ref:a,className:"Toastify",id:lt},s((it,st)=>{const ct=st.length?{...nt}:{...nt,pointerEvents:"none"};return React.createElement("div",{className:et(it),style:ct,key:`container-${it}`},st.map((ft,pt)=>{let{content:gt,props:wt}=ft;return React.createElement(N,{...wt,isIn:$(wt.toastId),style:{...wt.style,"--nth":pt+1,"--len":st.length},key:`toast-${wt.key}`},gt)}))}))});k$1.displayName="ToastContainer",k$1.defaultProps={position:"top-right",transition:R,autoClose:5e3,closeButton:L,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,draggable:!0,draggablePercent:80,draggableDirection:"x",role:"alert",theme:"light"};let P,B$1=new Map,D$1=[],A=1;function z$1(){return""+A++}function F$1(e){return e&&(d(e.toastId)||u(e.toastId))?e.toastId:z$1()}function H$1(e,o){return B$1.size>0?v.emit(0,e,o):D$1.push({content:e,options:o}),o.toastId}function S(e,o){return{...o,type:o&&o.type||e,toastId:F$1(o)}}function q$1(e){return(o,s)=>H$1(o,S(e,s))}function Q(e,o){return H$1(e,S("default",o))}Q.loading=(e,o)=>H$1(e,S("default",{isLoading:!0,autoClose:!1,closeOnClick:!1,closeButton:!1,draggable:!1,...o})),Q.promise=function(e,o,s){let a,{pending:$,error:c,success:nt}=o;$&&(a=d($)?Q.loading($,s):Q.loading($.render,{...s,...$}));const at={isLoading:null,autoClose:null,closeOnClick:null,closeButton:null,draggable:null},lt=(it,st,ct)=>{if(st==null)return void Q.dismiss(a);const ft={type:it,...at,...s,data:ct},pt=d(st)?{render:st}:st;return a?Q.update(a,{...ft,...pt}):Q(pt.render,{...ft,...pt}),ct},et=p(e)?e():e;return et.then(it=>lt("success",nt,it)).catch(it=>lt("error",c,it)),et},Q.success=q$1("success"),Q.info=q$1("info"),Q.error=q$1("error"),Q.warning=q$1("warning"),Q.warn=Q.warning,Q.dark=(e,o)=>H$1(e,S("default",{theme:"dark",...o})),Q.dismiss=e=>{B$1.size>0?v.emit(1,e):D$1=D$1.filter(o=>e!=null&&o.options.toastId!==e)},Q.clearWaitingQueue=function(e){return e===void 0&&(e={}),v.emit(5,e)},Q.isActive=e=>{let o=!1;return B$1.forEach(s=>{s.isToastActive&&s.isToastActive(e)&&(o=!0)}),o},Q.update=function(e,o){o===void 0&&(o={}),setTimeout(()=>{const s=function(a,$){let{containerId:c}=$;const nt=B$1.get(c||P);return nt&&nt.getToast(a)}(e,o);if(s){const{props:a,content:$}=s,c={delay:100,...a,...o,toastId:o.toastId||e,updateId:z$1()};c.toastId!==e&&(c.staleId=e);const nt=c.render||$;delete c.render,H$1(nt,c)}},0)},Q.done=e=>{Q.update(e,{progress:1})},Q.onChange=e=>(v.on(4,e),()=>{v.off(4,e)}),Q.POSITION={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},Q.TYPE={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},v.on(2,e=>{P=e.containerId||e,B$1.set(P,e),D$1.forEach(o=>{v.emit(0,o.content,o.options)}),D$1=[]}).on(3,e=>{B$1.delete(e.containerId||e),B$1.size===0&&v.off(0).off(1).off(5)});let getRandomValues;const rnds8=new Uint8Array(16);function rng(){if(!getRandomValues&&(getRandomValues=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!getRandomValues))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return getRandomValues(rnds8)}const byteToHex=[];for(let e=0;e<256;++e)byteToHex.push((e+256).toString(16).slice(1));function unsafeStringify(e,o=0){return byteToHex[e[o+0]]+byteToHex[e[o+1]]+byteToHex[e[o+2]]+byteToHex[e[o+3]]+"-"+byteToHex[e[o+4]]+byteToHex[e[o+5]]+"-"+byteToHex[e[o+6]]+byteToHex[e[o+7]]+"-"+byteToHex[e[o+8]]+byteToHex[e[o+9]]+"-"+byteToHex[e[o+10]]+byteToHex[e[o+11]]+byteToHex[e[o+12]]+byteToHex[e[o+13]]+byteToHex[e[o+14]]+byteToHex[e[o+15]]}const randomUUID=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),native={randomUUID};function v4(e,o,s){if(native.randomUUID&&!o&&!e)return native.randomUUID();e=e||{};const a=e.random||(e.rng||rng)();return a[6]=a[6]&15|64,a[8]=a[8]&63|128,unsafeStringify(a)}const updateExecution=(e,o)=>api.put(`/agentexecutions/update/${e}`,o),getResources=e=>api.get(`/resources/get/all/${e}`),getTemplateResource=(e,o)=>api.get(`/resources/get/template/${e}/name/${o}`),uploadFile=async(e,o)=>{api$1.get("accessToken");let s=localStorage.getItem("accessTokenHuaxiaobao");try{return(await axios.post(`${baseUrl()}resources/add/${e}`,o,{headers:{Authorization:`Bearer ${s}`}})).data}catch(a){console.error("Upload failed:",a.response?a.response.data:a.message)}},shareFile=e=>api.get(`/resources/share/${e}`),publishToMarketplace=(e,o)=>api.post("/agent_templates/publish_template/with_executionid",{agent_execution_id:e,price:o}),formatBytes=(e,o=2)=>{if(e===0)return"0 Bytes";const s=1024,a=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],$=Math.floor(Math.log(e)/Math.log(s));return`${parseFloat((e/Math.pow(s,$)).toFixed(o))} ${a[$]}`},downloadFile=(e,o=null)=>{const s=api$1.get("accessToken"),a=`${baseUrl()}/resources/get/${e}`;if(localStorage.getItem("applicationEnvironment")==="PROD"){const c={Authorization:`Bearer ${s}`};return fetch(a,{headers:c}).then(nt=>nt.blob()).then(nt=>{if(o){const at=window.URL.createObjectURL(nt),lt=document.createElement("a");lt.href=at,lt.download=o,lt.click(),window.URL.revokeObjectURL(at)}else return nt}).catch(nt=>{console.error("Error downloading file:",nt)})}else if(o)window.open(a,"_blank");else return fetch(a).then(c=>c.blob()).catch(c=>{console.error("Error downloading file:",c)})},shareContent=e=>{shareFile(e).then(o=>{o.data.result=="success",alert(o.data.message)}).catch(o=>{console.error("Error fetching project:",o)})},downloadAllFiles=(e,o)=>{const s=new JSZip,a=[],$={};e.forEach((c,nt)=>{$[c.name]?$[c.name]++:$[c.name]=1;let at=c.name;if($[c.name]>1){const et=c.name.lastIndexOf("."),it=c.name.substring(0,et),st=c.name.substring(et+1);at=`${it} (${$[c.name]-1}).${st}`}const lt=downloadFile(c.id).then(et=>{const it=new Blob([et],{type:c.type});s.file(at,it)}).catch(et=>{console.error("Error downloading file:",et)});a.push(lt)}),Promise.all(a).then(()=>{s.generateAsync({type:"blob"}).then(c=>{const nt=new Date,at=`${nt.getFullYear()}-${("0"+(nt.getMonth()+1)).slice(-2)}-${("0"+nt.getDate()).slice(-2)}_${nt.getHours()}:${nt.getMinutes()}:${nt.getSeconds()}`.replace(/:/g,"-"),lt=`${o}_${at}.zip`,et=document.createElement("a");et.href=URL.createObjectURL(c),et.download=lt,et.click()}).catch(c=>{console.error("Error generating zip:",c)})})},getFileExtension=e=>{const o=e.split(".");return o[o.length-1]},setLocalStorageValue=(e,o,s)=>{s(o),localStorage.setItem(e,o)},returnResourceIcon=e=>{const o=e.type;switch(!0){case o.includes("image"):return"/images/img_file.svg";case o==="application/pdf":return"/images/pdf_file.svg";case(o==="application/txt"||o==="text/plain"):return"/images/txt_file.svg";default:return"/images/default_file.svg"}};function openDatabase(){const e=indexedDB.open("MyFilesDB",1);return new Promise((o,s)=>{e.onerror=()=>s(e.error),e.onsuccess=()=>o(e.result),e.onupgradeneeded=a=>{const $=a.target.result;$.objectStoreNames.contains("files")||$.createObjectStore("files",{keyPath:"id"})}})}async function saveFile(e,o){return new Promise((s,a)=>{openDatabase().then($=>{const nt=$.transaction("files","readwrite").objectStore("files"),at=nt.get(o);at.onsuccess=()=>{if(at.result)$.close(),s(URL.createObjectURL(at.result.file));else{const lt=nt.put({id:o,file:e});lt.onerror=()=>{$.close(),a(lt.error)},lt.onsuccess=()=>{const et=URL.createObjectURL(e);$.close(),s(et)}}},at.onerror=()=>{$.close(),a(at.error)}}).catch($=>{a($)})})}function parseIdentifier(e){const o=e.split("_");if(o.length<3)return console.error("Invalid identifier: expected at least three parts"),null;const s=o.pop(),a=o.pop();return{filename:o.join("_"),filetype:a,filesize:s}}async function getLocalResourceURL(e,o){if(!e)return{url:null,file:null};const{filename:s,filetype:a,filesize:$}=parseIdentifier(e);var c=await getFileUrl(e,!1),nt=null;if(!c&&o){const lt=await fetchResources(o,s);if(lt){var at=await fetchMedia_indirect(lt);c=URL.createObjectURL(at);const it=s.toLowerCase().match(/\.(jpg|png|webp|jpeg)$/)?.[0].substring(1),st=it?`image/${it}`:at.type;nt=new File([at],s,{type:st}),await saveFile(nt,e)}}else nt=await getFileObject(e);return{url:c,file:nt}}async function fetchResources(e,o){try{const a=(await getTemplateResource(e,o)).data;return a&&a.length>0&&a.find(c=>c.name===o)||null}catch(s){return console.error("Error fetching resources:",s),null}}async function getFileUrl(e,o=!1){const s=await openDatabase(),$=s.transaction("files","readwrite").objectStore("files"),c=$.get(e);return new Promise((nt,at)=>{c.onerror=()=>{s.close(),at(c.error)},c.onsuccess=()=>{const lt=c.result?c.result.file:null;if(lt){const et=URL.createObjectURL(lt);if(o){const it=$.delete(e);it.onsuccess=()=>{s.close(),nt(null)},it.onerror=()=>{s.close(),at("Error deleting file from database")}}else s.close(),nt(et)}else s.close(),nt(null)}})}async function getFileObject(e,o=!1){const s=await openDatabase(),$=s.transaction("files","readwrite").objectStore("files"),c=$.get(e);return new Promise((nt,at)=>{c.onerror=()=>{s.close(),at(c.error)},c.onsuccess=()=>{const lt=c.result?c.result.file:null;if(lt)if(o){const et=$.delete(e);et.onsuccess=()=>{s.close(),nt(null)},et.onerror=()=>{s.close(),nt(null)}}else s.close(),nt(lt);else s.close(),nt(null)}})}async function uploadResource(e,o,s="INPUT"){const a=new FormData;return o.file instanceof Blob||(o.file=await getFileObject(`${o.name}_${o.type}_${o.size}`)),a.append("file",o.file),a.append("name",o.name),a.append("size",o.size),a.append("type",o.type),a.append("channel",s),await uploadFile(e,a)}function MediaDisplay({url:e,type:o="",onMediaClick:s,style:a,content:$="",contentstyle:c=null,muted:nt=!1,controls:at=!0,autoplay:lt=!0,watermark:et=!1}){const[it,st]=reactExports.useState(!1);reactExports.useState(o);const ct=()=>{st(!0),document.body.style.cursor="zoom-in"},ft=()=>{st(!1),document.body.style.cursor="auto"},pt=wt=>{if(o==""){const vt=wt.split(".").pop();return["jpg","jpeg","png","gif","webp"].includes(vt)?"image/"+vt:["mp4","mov"].includes(vt)?"video/"+vt:["mp3","wav"].includes(vt)?"audio/"+vt:["json"].includes(vt)?"application/json":""}else return o};function gt(){return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[pt(e).startsWith("image/")&&jsxRuntimeExports.jsxs("div",{style:{position:"relative",maxHeight:"100%",height:"inherit"},children:[jsxRuntimeExports.jsx("img",{src:e,style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"auto",marginTop:"1px",display:"block",marginLeft:"auto",marginRight:"auto",borderRadius:"8px"},onMouseEnter:ct,onMouseLeave:ft,onClick:s,alt:"加载中"}),et&&jsxRuntimeExports.jsx("img",{src:"/logo/hxb_logo1.png",style:{position:"absolute",bottom:"10px",right:"10px",width:"50%",height:"auto",opacity:.2,zIndex:1},alt:"水印"})]}),(pt(e).startsWith("video/")||e.includes("mp4"))&&jsxRuntimeExports.jsxs("div",{style:{position:"relative"},children:[jsxRuntimeExports.jsxs("video",{style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"auto",marginTop:"1px",display:"block",marginLeft:"auto",marginRight:"auto",borderRadius:"8px"},muted:nt,controls:at,autoPlay:lt,playsInline:!0,loop:!0,onMouseEnter:ct,onMouseLeave:ft,onClick:s,alt:"加载中",children:[jsxRuntimeExports.jsx("source",{src:e,type:"video/mp4"}),"Your browser does not support the video tag."]}),et&&jsxRuntimeExports.jsx("img",{src:"/logo/hxb_logo1.png",style:{position:"absolute",bottom:"10px",right:"10px",width:"50%",height:"auto",opacity:.2,zIndex:1},alt:"水印"})]}),pt(e).startsWith("audio/")&&jsxRuntimeExports.jsxs("audio",{style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"auto",marginTop:"1px",display:"block",marginLeft:"auto",marginRight:"auto",borderRadius:"8px"},muted:nt,controls:at,onMouseEnter:ct,onMouseLeave:ft,onClick:s,alt:"加载中",children:[jsxRuntimeExports.jsx("source",{src:e,type:"audio/mpeg"}),"Your browser does not support the audio tag."]}),pt(e).startsWith("application/json")&&jsxRuntimeExports.jsxs("div",{style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"3rem",marginTop:"1px",display:"flex",justifyContent:"center",alignItems:"center",marginLeft:"auto",marginRight:"auto",borderRadius:"8px",fontSize:"13px",flexDirection:"column"},onMouseEnter:ct,onMouseLeave:ft,onClick:s,children:[$," 工作流文件只有作者可以看得到, 用户不可见"]})]})}return jsxRuntimeExports.jsx("div",{style:a||{maxWidth:"100%",maxHeight:"100%",width:"inherit",height:"inherit"},children:gt()})}function ImageModal({imageUrl:e,closeModal:o}){const s=reactExports.useRef(null),a=reactExports.useRef(null),[$,c]=reactExports.useState(!1),[nt,at]=reactExports.useState(0),[lt,et]=reactExports.useState(0),[it,st]=reactExports.useState(0),[ct,ft]=reactExports.useState(0),[pt,gt]=reactExports.useState(1);reactExports.useEffect(()=>{const Lt=Ft=>{Ft.key==="Escape"&&o()};return document.addEventListener("keydown",Lt),()=>{document.removeEventListener("keydown",Lt)}},[o]);const wt=reactExports.useCallback(Lt=>{Lt.preventDefault(),c(!0),at(Lt.pageX),et(Lt.pageY),st(s.current.scrollLeft),ft(s.current.scrollTop),s.current.style.cursor="grabbing"},[]),vt=reactExports.useCallback(Lt=>{if(!$)return;Lt.preventDefault();const Ft=Lt.pageX,Wt=Lt.pageY,_r=(Ft-nt)*3,vr=(Wt-lt)*3;s.current.scrollLeft=it-_r,s.current.scrollTop=ct-vr},[$,nt,lt,it,ct]),_t=reactExports.useCallback(()=>{c(!1),s.current.style.cursor="grab"},[]),$t=reactExports.useCallback(()=>{$&&(c(!1),s.current.style.cursor="grab")},[$]),Pt=reactExports.useCallback(Lt=>{Lt.preventDefault()},[]),Nt=reactExports.useCallback(Lt=>{const Ft=pt+Lt.deltaY*-.01;gt(Math.min(Math.max(.5,Ft),3))},[pt]);return reactExports.useEffect(()=>{if(a.current){const Lt=a.current.naturalWidth,Ft=a.current.naturalHeight;a.current.style.width=`${Lt*pt}px`,a.current.style.height=`${Ft*pt}px`}},[pt]),reactExports.useEffect(()=>{Q.success("滚轮放大缩小,拖动上下观察,ESC健或者右上角X关闭",{autoClose:1800})},[]),jsxRuntimeExports.jsxs("div",{className:"modal_max_image",style:{overflow:"auto",position:"fixed",top:0,left:0},onWheel:Nt,children:[jsxRuntimeExports.jsx("button",{onClick:o,style:{position:"absolute",top:"10px",right:"10px",background:"red",border:"none",color:"white",fontSize:"30px",cursor:"pointer",outline:"none",zIndex:"2000"},children:"✕"}),jsxRuntimeExports.jsx("div",{className:"modal-content_max_image",ref:s,onMouseDown:wt,onMouseMove:vt,onMouseUp:_t,onMouseLeave:$t,style:{maxWidth:"100%",overflow:"auto",paddingTop:"40px"},children:jsxRuntimeExports.jsx("img",{src:e,ref:a,alt:"Original Picture",style:{display:"block",height:"auto",width:"auto"},onDragStart:Pt})})]})}async function fetchMedia_indirect(e){const o=api$1.get("accessToken"),s=`${baseUrl()}/resources/get/${e.id}`,a={Authorization:`Bearer ${o}`};try{return await(await fetch(s,{headers:a})).blob()}catch($){console.error("Error fetching image:",$)}}function handleImageScale(e){const s=e.width,a=e.height,$=s/a;let c,nt;s>a?(c=Math.min(s,2048),nt=c/$):(nt=Math.min(a,2048),c=nt*$);const at=c/s;return{width:Math.round(c),height:Math.round(nt),samScale:at}}function loadImage(e){return new Promise((o,s)=>{const a=new Image;a.onload=()=>o(a),a.onerror=s,a.src=e})}function resizeImage(e,o,s,a){const $={file:a,name:a.name,size:a.size,type:a.type};return new Promise((c,nt)=>{const at=document.createElement("canvas"),lt=at.getContext("2d");at.width=o,at.height=s,lt.drawImage(e,0,0,o,s),at.toBlob(et=>{const it=new File([et],$.name,{type:$.type,lastModified:Date.now()}),st={...$,file:it,size:it.size};c(st)},$.type)})}function generateUniqueFilename(e){const o=new Date,s=o.getFullYear()+("0"+(o.getMonth()+1)).slice(-2)+("0"+o.getDate()).slice(-2)+"_"+("0"+o.getHours()).slice(-2)+("0"+o.getMinutes()).slice(-2)+("0"+o.getSeconds()).slice(-2),a=v4().replace(/-/g,""),$=`${s}_${a}_`,c=e.split("/").pop();return`${$}${c}`}const fetchMediaURL=async e=>{const o=api$1.get("accessToken"),s=`${baseUrl()}/resources/getresourceurl/${e.id}`,a={Authorization:`Bearer ${o}`};try{const $=await fetch(s,{headers:a});if(!$.ok)throw new Error(`HTTP error! status: ${$.status}`);const c=await $.json();return console.log("Resource URL:",c.url),c.url}catch($){console.error("Error fetching media:",$)}},uploadParameterFiles=(e,o)=>{const s=e.map(a=>{if(a.type==="file"||a.type==="image_editer"||a.type==="combo_image_selection"&&a.value.file){const $=a.value;uploadResource(o,$,"INPUT").then(c=>(console.log("Upload successful:",c),Promise.resolve())).catch(c=>(console.error("Error uploading resource:",c),alert("不支持这个文件类型"+o),Promise.reject(c)))}else{if(a.type==="mask")return a.value.forEach(c=>{uploadResource(o,c,"INPUT").then(nt=>{console.log("Upload successful:",nt)}).catch(nt=>(console.error("Error uploading resource:",nt),alert("不支持这个文件类型 "+o),Promise.reject(nt)))}),Promise.resolve();if(a.type==="workflow"){const $=a.value;return uploadParameterFiles($,o),Promise.resolve()}else return Promise.resolve()}});Promise.all(s).then(()=>{console.info("success uploading files:")}).catch(a=>{console.error("Error uploading files:",a)})},uploadLogos=(e,o,s=!1)=>{const a=e.map($=>{if($.type=="file"){const c=$.value;return uploadResource(o,c,s?"PUBLIC":"LOGO_AGENT").catch(nt=>(console.error("Error uploading resource:",nt),alert("不支持这个文件类型"+o),Promise.reject(nt)))}else return Promise.resolve()});Promise.all(a).then(()=>{}).catch($=>{console.error("Error uploading files:",$)})},fetchAndSetImage=async e=>{const o=`resource_${e.id}`;let s=await getFileUrl(o);return s||(s=await fetchMediaURL(e)),s},fileDisplayAble=async e=>!!(e.type.startsWith("image/")||e.type.startsWith("video/")||e.type.startsWith("audio/")||e.type==="application/misc"&&["mp3","wav"].includes(getFileExtension(e.name))||e.type==="application/octet-stream"&&["png","jpg","jpeg","webp"].includes(getFileExtension(e.name))||e.type==="application/misc"&&e.name.toLowerCase().endsWith(".mp4")),transformNodesFromFile=async e=>new Promise((o,s)=>{let a=new FileReader;a.onload=function($){try{let c=JSON.parse($.target.result),nt=[],at=0,lt=0;for(let et in c)if(c.hasOwnProperty(et)&&c[et].class_type=="ComfyUIAppstoreParam"){let it=c[et];const st=[0,it.inputs&&it.inputs.序号,it.inputs&&it.inputs.参数名称,it.inputs&&it.inputs.类型,it.inputs&&it.inputs.数值约束或依赖项,it.inputs&&it.inputs.替换项];if(st){let ct=tranformNodes(st,it.inputs&&it.inputs.标注节点接入[0]);nt.push(ct),at+=1}}else c.hasOwnProperty(et)&&c[et].class_type=="SaveImageWebsocket"&&(lt+=1);at<1?s(new Error("文件不符合要求,至少包括一个ComfyUIAppstoreParam节点")):(nt.sort((et,it)=>et.index-it.index),o(nt))}catch(c){s(c)}},a.onerror=function($){s($)},a.readAsText(e)}),tranformNodes=(e,o)=>{if(e){let s=e[1]||"",a=e[2]||"",$=e[3]||"",c=e[4]||"",nt=e[5]||"",at={index:s,name:a,type:$,accept:c,value:"",target:nt,key:o};return $==="combo_image_selection"?c==="模特"?at.options='[{"value":"/app/workspace/public/new_ref_models/男模特07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B907.png"},{"value":"/app/workspace/public/new_ref_models/男模特06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B906.png"},{"value":"/app/workspace/public/new_ref_models/男模特05.jpg","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B905.jpg"},{"value":"/app/workspace/public/new_ref_models/男模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/男模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/男模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/男模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B901.png"},{"value":"/app/workspace/public/new_ref_models/女模特14.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B914.png"},{"value":"/app/workspace/public/new_ref_models/女模特13.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B913.png"},{"value":"/app/workspace/public/new_ref_models/女模特12.jpg","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B912.jpg"},{"value":"/app/workspace/public/new_ref_models/女模特11.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B911.png"},{"value":"/app/workspace/public/new_ref_models/女模特10.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B910.png"},{"value":"/app/workspace/public/new_ref_models/女模特09.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B909.png"},{"value":"/app/workspace/public/new_ref_models/女模特08.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B908.png"},{"value":"/app/workspace/public/new_ref_models/女模特07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B907.png"},{"value":"/app/workspace/public/new_ref_models/女模特06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B906.png"},{"value":"/app/workspace/public/new_ref_models/女模特05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B905.png"},{"value":"/app/workspace/public/new_ref_models/女模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/女模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/女模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/女模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B901.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特10.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B910.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特09.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B909.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特08.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B908.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B907.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B906.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B905.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B901.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B905.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B901.png"}]':c==="背景"?at.options='[{"value":"/app/workspace/public/new_ref_backgrounds/酒店大堂03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8203.png"},{"value":"/app/workspace/public/new_ref_backgrounds/酒店大堂02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8202.png"},{"value":"/app/workspace/public/new_ref_backgrounds/酒店大堂01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8201.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D05.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D04.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D03.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D02.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D01.png"},{"value":"/app/workspace/public/new_ref_backgrounds/草地01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%8D%89%E5%9C%B001.png"},{"value":"/app/workspace/public/new_ref_backgrounds/背景墙01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%83%8C%E6%99%AF%E5%A2%9901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/纯色背景-白.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%99%BD.png"},{"value":"/app/workspace/public/new_ref_backgrounds/纯色背景-灰白.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0%E7%99%BD.png"},{"value":"/app/workspace/public/new_ref_backgrounds/纯色背景-灰.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0.png"},{"value":"/app/workspace/public/new_ref_backgrounds/秋天03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A903.png"},{"value":"/app/workspace/public/new_ref_backgrounds/秋天02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/秋天01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/湖边02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/湖边01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B906.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B905.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B904.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B903.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A204.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A203.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A202.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A201.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内背景墙02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内背景墙01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8503.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8502.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8501.png"},{"value":"/app/workspace/public/new_ref_backgrounds/咖啡厅03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8503.png"},{"value":"/app/workspace/public/new_ref_backgrounds/咖啡厅02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8502.png"},{"value":"/app/workspace/public/new_ref_backgrounds/咖啡厅01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8501.png"},{"value":"/app/workspace/public/new_ref_backgrounds/办公室02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A402.png"},{"value":"/app/workspace/public/new_ref_backgrounds/办公室01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A401.png"},{"value":"/app/workspace/public/new_ref_backgrounds/冬天03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A903.png"},{"value":"/app/workspace/public/new_ref_backgrounds/冬天02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/冬天01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/公园02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD02.png"},{"value":"/app/workspace/public/new_ref_backgrounds/公园01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD01.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景09.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF09.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景08.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF08.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF07.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF06.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF05.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF04.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF03.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF02.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF01.png"}]':c==="近景"&&(at.options='[{"value":"/app/workspace/public/backgrounds/9.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/9.png"},{"value":"/app/workspace/public/backgrounds/8.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/8.png"},{"value":"/app/workspace/public/backgrounds/7.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/7.png"},{"value":"/app/workspace/public/backgrounds/6.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/6.png"},{"value":"/app/workspace/public/backgrounds/5.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/5.png"},{"value":"/app/workspace/public/backgrounds/4.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/4.png"},{"value":"/app/workspace/public/backgrounds/39.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/39.png"},{"value":"/app/workspace/public/backgrounds/38.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/38.png"},{"value":"/app/workspace/public/backgrounds/37.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/37.png"},{"value":"/app/workspace/public/backgrounds/36.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/36.png"},{"value":"/app/workspace/public/backgrounds/35.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/35.png"},{"value":"/app/workspace/public/backgrounds/34.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/34.png"},{"value":"/app/workspace/public/backgrounds/33.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/33.png"},{"value":"/app/workspace/public/backgrounds/32.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/32.png"},{"value":"/app/workspace/public/backgrounds/31.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/31.png"},{"value":"/app/workspace/public/backgrounds/30.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/30.png"},{"value":"/app/workspace/public/backgrounds/3.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/3.png"},{"value":"/app/workspace/public/backgrounds/29.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/29.png"},{"value":"/app/workspace/public/backgrounds/28.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/28.png"},{"value":"/app/workspace/public/backgrounds/27.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/27.png"},{"value":"/app/workspace/public/backgrounds/26.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/26.png"},{"value":"/app/workspace/public/backgrounds/25.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/25.png"},{"value":"/app/workspace/public/backgrounds/24.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/24.png"},{"value":"/app/workspace/public/backgrounds/23.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/23.png"},{"value":"/app/workspace/public/backgrounds/22.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/22.png"},{"value":"/app/workspace/public/backgrounds/21.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/21.png"},{"value":"/app/workspace/public/backgrounds/20.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/20.png"},{"value":"/app/workspace/public/backgrounds/2.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/2.png"},{"value":"/app/workspace/public/backgrounds/19.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/19.png"},{"value":"/app/workspace/public/backgrounds/18.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/18.png"},{"value":"/app/workspace/public/backgrounds/17.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/17.png"},{"value":"/app/workspace/public/backgrounds/16.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/16.png"},{"value":"/app/workspace/public/backgrounds/15.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/15.png"},{"value":"/app/workspace/public/backgrounds/14.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/14.png"},{"value":"/app/workspace/public/backgrounds/12.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/12.png"},{"value":"/app/workspace/public/backgrounds/11.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/11.png"},{"value":"/app/workspace/public/backgrounds/10.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/10.png"},{"value":"/app/workspace/public/backgrounds/1.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/1.png"}]'):$==="selection"?at.options=c:$==="mask"?at.maskSourceUrl=c:$==="text"&&(at.default=c,at.value=c),at}else return null},container="_container_43fx0_1",title_box="_title_box_43fx0_7",title_text="_title_text_43fx0_14",wrapper="_wrapper_43fx0_24",agent_active="_agent_active_43fx0_29",text_block="_text_block_43fx0_36",form_label="_form_label_43fx0_45",item_title_area="_item_title_area_43fx0_55",form_label_text="_form_label_text_43fx0_68",form_label_con="_form_label_con_43fx0_78",form_label_red="_form_label_red_43fx0_98",page_title="_page_title_43fx0_106",tool_text="_tool_text_43fx0_118",detail_top="_detail_top_43fx0_127",detail_body="_detail_body_43fx0_136",detail_content="_detail_content_43fx0_142",detail_content_rightpanel="_detail_content_rightpanel_43fx0_151",tab_button="_tab_button_43fx0_162",tab_text="_tab_text_43fx0_178",run_history_button="_run_history_button_43fx0_190",run_button="_run_button_43fx0_201",pause_button="_pause_button_43fx0_219",history_box="_history_box_43fx0_235",agent_detailed_information="_agent_detailed_information_43fx0_248",notification_bubble="_notification_bubble_43fx0_264",history_info="_history_info_43fx0_277",feed_icon="_feed_icon_43fx0_288",custom_task_box="_custom_task_box_43fx0_295",console_icons="_console_icons_43fx0_307",maintainance="_maintainance_43fx0_311",detail_name="_detail_name_43fx0_322",separator="_separator_43fx0_331",agent_info_box="_agent_info_box_43fx0_337",agent_info_tools="_agent_info_tools_43fx0_344",resources="_resources_43fx0_351",agent_resources="_agent_resources_43fx0_357",large_text_box="_large_text_box_43fx0_362",show_more_button="_show_more_button_43fx0_367",single_line_block="_single_line_block_43fx0_374",three_dots="_three_dots_43fx0_381",more_details="_more_details_43fx0_388",more_details_wrapper="_more_details_wrapper_43fx0_394",task_header="_task_header_43fx0_401",text_12_n="_text_12_n_43fx0_409",notification_circle="_notification_circle_43fx0_422",delete_agent_modal_label="_delete_agent_modal_label_43fx0_441",delete_button="_delete_button_43fx0_451",delete_modal_text="_delete_modal_text_43fx0_469",rdtPicker="_rdtPicker_43fx0_479",permission_changes="_permission_changes_43fx0_518",modal_buttons="_modal_buttons_43fx0_524",modal_info_class="_modal_info_class_43fx0_530",table_contents="_table_contents_43fx0_535",create_settings_button="_create_settings_button_43fx0_544",button_margin="_button_margin_43fx0_551",dropdown_separator="_dropdown_separator_43fx0_555",dropdown_container_agent="_dropdown_container_agent_43fx0_561",dropdown_item_agent="_dropdown_item_agent_43fx0_575",image_selection_container="_image_selection_container_43fx0_581",image_option="_image_option_43fx0_591",image_selected="_image_selected_43fx0_603",combo_image_option="_combo_image_option_43fx0_626",combo_image_option_old="_combo_image_option_old_43fx0_646",imageContainer="_imageContainer_43fx0_685",overlay="_overlay_43fx0_689",image_list_container="_image_list_container_43fx0_719",button_container="_button_container_43fx0_728",more_button="_more_button_43fx0_735",inputMedium="_inputMedium_43fx0_765",nameInput="_nameInput_43fx0_774",dropzone="_dropzone_43fx0_781",previewContainer="_previewContainer_43fx0_791",fullWidthImage="_fullWidthImage_43fx0_797",closeButton="_closeButton_43fx0_803",modal="_modal_43fx0_524",close="_close_43fx0_803",myQuestTab="_myQuestTab_43fx0_869",downBth="_downBth_43fx0_881",picListBot="_picListBot_43fx0_894",compileCon="_compileCon_43fx0_899",stateInteraction="_stateInteraction_43fx0_907",styles={container,title_box,title_text,wrapper,agent_active,text_block,form_label,item_title_area,form_label_text,form_label_con,form_label_red,page_title,tool_text,detail_top,detail_body,detail_content,detail_content_rightpanel,tab_button,tab_text,run_history_button,run_button,pause_button,history_box,agent_detailed_information,notification_bubble,history_info,feed_icon,custom_task_box,console_icons,maintainance,detail_name,separator,agent_info_box,agent_info_tools,resources,agent_resources,large_text_box,show_more_button,single_line_block,three_dots,more_details,more_details_wrapper,task_header,text_12_n,notification_circle,delete_agent_modal_label,delete_button,delete_modal_text,rdtPicker,permission_changes,modal_buttons,modal_info_class,table_contents,create_settings_button,button_margin,dropdown_separator,dropdown_container_agent,dropdown_item_agent,image_selection_container,image_option,image_selected,combo_image_option,combo_image_option_old,imageContainer,overlay,image_list_container,button_container,more_button,inputMedium,nameInput,dropzone,previewContainer,fullWidthImage,closeButton,"media-container":"_media-container_43fx0_816",modal,"modal-content":"_modal-content_43fx0_843",close,myQuestTab,downBth,picListBot,compileCon,stateInteraction};function FileUpload({index:e,param:o,handleInputChange:s,previewUrl:a,visible:$=!0,verbose:c=!0}){api$1.get("userType");const[nt,at]=reactExports.useState(!1),[lt,et]=reactExports.useState(!0),it=reactExports.useRef(null),st=reactExports.useRef(null),ct=vt=>{vt.preventDefault(),at(!0)},ft=vt=>{vt.preventDefault(),at(!1)},pt=vt=>{vt.preventDefault()},gt=vt=>{if(vt.stopPropagation(),lt){alert("请稍等加载中");return}vt.preventDefault(),at(!1);const _t=vt.dataTransfer.files[0];if(_t){const $t=o.accept.split(","),Pt=_t.name.split(".").pop().toLowerCase();if($t==""||$t.includes(`.${Pt}`)){const Nt={target:{name:o.name,files:[_t]}};s(e,Nt)}else alert("文件类型暂不支持,请上传如下类型文件:"+o.accept)}},wt=vt=>{vt.preventDefault(),vt.target.files[0]&&s(e,vt)};return reactExports.useEffect(()=>{o.type=="file"&&o.value&&!a?et(!0):et(!1)},[a]),jsxRuntimeExports.jsxs("div",{className:`my-file-drop-area ${nt?"dragging":""}`,onDragEnter:ct,onDragLeave:ft,onDragOver:pt,onDrop:gt,onClick:()=>{it.current.click()},style:{position:"relative",width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%",background:"none"},children:[jsxRuntimeExports.jsx("input",{type:"file",ref:it,style:{display:"none"},name:o.name,accept:o.accept,onChange:vt=>{wt(vt)}}),a?jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:$&&jsxRuntimeExports.jsxs("div",{style:{width:"80%",height:"100%",objectFit:"contain",position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"},ref:st,children:[jsxRuntimeExports.jsx(MediaDisplay,{url:a,content:o.value?.name?o.value.name:"",type:o.value?.type?o.value.type:"image",alt:"Preview"}),jsxRuntimeExports.jsx("button",{type:"button",className:"cancel",onClick:vt=>{vt.stopPropagation(),it.current.value="",s(e,null)},style:{position:"absolute",top:"0px",right:"10px",padding:"2px",fontSize:"10px",borderRadius:"5%",border:"none",cursor:"pointer"},children:"X"})]})}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:lt?jsxRuntimeExports.jsxs("p",{style:{textAlign:"center",margin:0,fontSize:"12px"},children:[jsxRuntimeExports.jsx("img",{className:"mix_blend_mode mr_7",loading:"lazy",width:14,height:14,src:"/images/loading.gif",alt:"loading-icon"}),"加载中,稍等。或者点击上传新的图像"]}):jsxRuntimeExports.jsx("p",{style:{textAlign:"center",margin:0,fontSize:"12px"},children:window.innerWidth>1e3?"点击上传, 或者拖入文件:"+(o.accept?o.accept:".json"):c?"点击上传, 或者拖入文件":"+"})})]})}const ImageList=({optionsObject:e,param:o,handleImageSelect:s,paramIndex:a})=>{const[$,c]=reactExports.useState(20),nt=10,at=2,lt=()=>{c(ct=>ct+nt*at)},et=()=>{c(20)},it=e.length>$,st=$>nt*at;return jsxRuntimeExports.jsxs("div",{className:styles.image_list_container,children:[jsxRuntimeExports.jsx("div",{className:styles.image_selection_container,children:e.slice(0,$).map((ct,ft)=>jsxRuntimeExports.jsx("div",{className:styles.image_option,children:jsxRuntimeExports.jsx("img",{src:ct.option,alt:ct.value,onClick:()=>s(a,ct.value),className:o.value===ct.value?styles.image_selected:""})},ft))}),jsxRuntimeExports.jsx("div",{className:styles.image_selection_container,children:jsxRuntimeExports.jsx("br",{})}),jsxRuntimeExports.jsxs("div",{className:styles.button_container,children:[it&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:lt,children:"更多"}),st&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:et,children:"收回"})]})]})},ComboImageList=({optionsObject:e,param:o,paramIndex:s,handleImageSelect:a,handleInputChange:$,uploadPreviewUrl:c})=>{const nt=reactExports.useRef(0),at=4,[lt,et]=reactExports.useState(nt.current*at),[it,st]=reactExports.useState(o.type=="file"),ct=reactExports.useRef(null);reactExports.useRef(!0);const[ft,pt]=reactExports.useState(JSON.parse(e)),gt=reactExports.useRef(null);reactExports.useEffect(()=>{gt&>.current&&(nt.current=Math.floor(window.innerWidth>1e3?(gt.current.clientWidth-5)/85:(gt.current.clientWidth-5)/55),et(nt.current*at))},[gt.current]);const wt=()=>{et(Nt=>Nt+nt.current*at)},vt=()=>{et(nt.current*at)},_t=e.length>lt,$t=lt>nt.current*at,Pt=(Nt,Lt)=>{Lt?st(!0):(st(!1),ct.current&&ct.current.click()),$(Nt,Lt)};return reactExports.useEffect(()=>{o&&o.type=="file"&&setfilevalue(o.value)},[o]),jsxRuntimeExports.jsxs("div",{className:styles.image_list_container,ref:gt,children:[jsxRuntimeExports.jsxs("div",{className:styles.image_selection_container,children:[jsxRuntimeExports.jsx("div",{className:styles.combo_image_option,style:{borderColor:it?"#4CAF50":"",border:it?"6px solid #bf0f78":""},children:jsxRuntimeExports.jsx(FileUpload,{index:s,param:o,handleInputChange:Pt,previewUrl:c,verbose:!1})},-1),ft.slice(0,lt-1).map((Nt,Lt)=>jsxRuntimeExports.jsx("div",{className:styles.combo_image_option,children:jsxRuntimeExports.jsxs("div",{className:styles.imageContainer,onClick:()=>{st(!1),a(s,Nt.value)},children:[jsxRuntimeExports.jsx("img",{src:Nt.option+"?x-oss-process=image/resize,w_100/quality,q_60",alt:Nt.value,ref:Lt===0?ct:null,className:o.value===Nt.value?styles.image_selected:""}),jsxRuntimeExports.jsx("div",{className:styles.overlay,style:{overflow:"hidden"},children:jsxRuntimeExports.jsx("p",{children:jsxRuntimeExports.jsx("span",{style:{fontSize:"8px",opacity:"100%",color:"#ffffff"},children:Nt.value.split("/").pop().split(".")[0]})})})]})},Lt))]}),jsxRuntimeExports.jsx("div",{className:styles.image_selection_container,children:jsxRuntimeExports.jsx("br",{})}),jsxRuntimeExports.jsxs("div",{className:styles.button_container,children:[_t&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:wt,children:"更多"}),$t&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:vt,children:"收回"})]})]})};/*! +`);var o="",s,a,$=0,c;for(s=a=0,$=e.length,c=0;c<$;c++){var nt=e.charCodeAt(c),at=null;nt<128?a++:nt>127&&nt<2048?at=String.fromCharCode(nt>>6|192,nt&63|128):at=String.fromCharCode(nt>>12|224,nt>>6&63|128,nt&63|128),at!==null&&(a>s&&(o+=e.substring(s,a)),o+=at,s=a=c+1)}return a>s&&(o+=e.substring(s,e.length)),o};_$3.UUID=function(){var e=function(){var a=1*new Date,$;if(win.performance&&win.performance.now)$=win.performance.now();else for($=0;a==1*new Date;)$++;return a.toString(16)+Math.floor($).toString(16)},o=function(){return Math.random().toString(16).replace(".","")},s=function(){var a=userAgent,$,c,nt=[],at=0;function lt(et,it){var st,ct=0;for(st=0;st=4&&(at=lt(at,nt),nt=[]);return nt.length>0&&(at=lt(at,nt)),at.toString(16)};return function(){var a=(screen.height*screen.width).toString(16);return e()+"-"+o()+"-"+s()+"-"+a+"-"+e()}}();var BLOCKED_UA_STRS=["ahrefsbot","ahrefssiteaudit","baiduspider","bingbot","bingpreview","chrome-lighthouse","facebookexternal","petalbot","pinterest","screaming frog","yahoo! slurp","yandexbot","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleweblight","mediapartners-google","storebot-google"];_$3.isBlockedUA=function(e){var o;for(e=e.toLowerCase(),o=0;o=0}function a($){if(!document$1.getElementsByTagName)return[];var c=$.split(" "),nt,at,lt,et,it,st,ct,ft,pt,gt,wt=[document$1];for(st=0;st-1){at=nt.split("#"),lt=at[0];var vt=at[1],_t=document$1.getElementById(vt);if(!_t||lt&&_t.nodeName.toLowerCase()!=lt)return[];wt=[_t];continue}if(nt.indexOf(".")>-1){at=nt.split("."),lt=at[0];var $t=at[1];for(lt||(lt="*"),et=[],it=0,ct=0;ct-1};break;default:Wt=function(_r){return _r.getAttribute(Nt)}}for(wt=[],gt=0,ct=0;ct=3?o[2]:""},currentUrl:function(){return win.location.href},properties:function(e){return typeof e!="object"&&(e={}),_$3.extend(_$3.strip_empty_properties({$os:_$3.info.os(),$browser:_$3.info.browser(userAgent,navigator$1.vendor,windowOpera),$referrer:document$1.referrer,$referring_domain:_$3.info.referringDomain(document$1.referrer),$device:_$3.info.device(userAgent)}),{$current_url:_$3.info.currentUrl(),$browser_version:_$3.info.browserVersion(userAgent,navigator$1.vendor,windowOpera),$screen_height:screen.height,$screen_width:screen.width,mp_lib:"web",$lib_version:Config.LIB_VERSION,$insert_id:cheap_guid(),time:_$3.timestamp()/1e3},_$3.strip_empty_properties(e))},people_properties:function(){return _$3.extend(_$3.strip_empty_properties({$os:_$3.info.os(),$browser:_$3.info.browser(userAgent,navigator$1.vendor,windowOpera)}),{$browser_version:_$3.info.browserVersion(userAgent,navigator$1.vendor,windowOpera)})},mpPageViewProperties:function(){return _$3.strip_empty_properties({current_page_title:document$1.title,current_domain:win.location.hostname,current_url_path:win.location.pathname,current_url_protocol:win.location.protocol,current_url_search:win.location.search})}};var cheap_guid=function(e){var o=Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10);return e?o.substring(0,e):o},SIMPLE_DOMAIN_MATCH_REGEX=/[a-z0-9][a-z0-9-]*\.[a-z]+$/i,DOMAIN_MATCH_REGEX=/[a-z0-9][a-z0-9-]+\.[a-z.]{2,6}$/i,extract_domain=function(e){var o=DOMAIN_MATCH_REGEX,s=e.split("."),a=s[s.length-1];(a.length>4||a==="com"||a==="org")&&(o=SIMPLE_DOMAIN_MATCH_REGEX);var $=e.match(o);return $?$[0]:""},isOnline=function(){var e=win.navigator.onLine;return _$3.isUndefined(e)||e},JSONStringify=null,JSONParse=null;typeof JSON<"u"&&(JSONStringify=JSON.stringify,JSONParse=JSON.parse);JSONStringify=JSONStringify||_$3.JSONEncode;JSONParse=JSONParse||_$3.JSONDecode;_$3.toArray=_$3.toArray;_$3.isObject=_$3.isObject;_$3.JSONEncode=_$3.JSONEncode;_$3.JSONDecode=_$3.JSONDecode;_$3.isBlockedUA=_$3.isBlockedUA;_$3.isEmptyObject=_$3.isEmptyObject;_$3.info=_$3.info;_$3.info.device=_$3.info.device;_$3.info.browser=_$3.info.browser;_$3.info.browserVersion=_$3.info.browserVersion;_$3.info.properties=_$3.info.properties;var GDPR_DEFAULT_PERSISTENCE_PREFIX="__mp_opt_in_out_";function optIn(e,o){_optInOut(!0,e,o)}function optOut(e,o){_optInOut(!1,e,o)}function hasOptedIn(e,o){return _getStorageValue(e,o)==="1"}function hasOptedOut(e,o){if(_hasDoNotTrackFlagOn(o))return console$1.warn('This browser has "Do Not Track" enabled. This will prevent the Mixpanel SDK from sending any data. To ignore the "Do Not Track" browser setting, initialize the Mixpanel instance with the config "ignore_dnt: true"'),!0;var s=_getStorageValue(e,o)==="0";return s&&console$1.warn("You are opted out of Mixpanel tracking. This will prevent the Mixpanel SDK from sending any data."),s}function addOptOutCheckMixpanelLib(e){return _addOptOutCheck(e,function(o){return this.get_config(o)})}function addOptOutCheckMixpanelPeople(e){return _addOptOutCheck(e,function(o){return this._get_config(o)})}function addOptOutCheckMixpanelGroup(e){return _addOptOutCheck(e,function(o){return this._get_config(o)})}function clearOptInOut(e,o){o=o||{},_getStorage(o).remove(_getStorageKey(e,o),!!o.crossSubdomainCookie,o.cookieDomain)}function _getStorage(e){return e=e||{},e.persistenceType==="localStorage"?_$3.localStorage:_$3.cookie}function _getStorageKey(e,o){return o=o||{},(o.persistencePrefix||GDPR_DEFAULT_PERSISTENCE_PREFIX)+e}function _getStorageValue(e,o){return _getStorage(o).get(_getStorageKey(e,o))}function _hasDoNotTrackFlagOn(e){if(e&&e.ignoreDnt)return!1;var o=e&&e.window||win,s=o.navigator||{},a=!1;return _$3.each([s.doNotTrack,s.msDoNotTrack,o.doNotTrack],function($){_$3.includes([!0,1,"1","yes"],$)&&(a=!0)}),a}function _optInOut(e,o,s){if(!_$3.isString(o)||!o.length){console$1.error("gdpr."+(e?"optIn":"optOut")+" called with an invalid token");return}s=s||{},_getStorage(s).set(_getStorageKey(o,s),e?1:0,_$3.isNumber(s.cookieExpiration)?s.cookieExpiration:null,!!s.crossSubdomainCookie,!!s.secureCookie,!!s.crossSiteCookie,s.cookieDomain),s.track&&e&&s.track(s.trackEventName||"$opt_in",s.trackProperties,{send_immediately:!0})}function _addOptOutCheck(e,o){return function(){var s=!1;try{var a=o.call(this,"token"),$=o.call(this,"ignore_dnt"),c=o.call(this,"opt_out_tracking_persistence_type"),nt=o.call(this,"opt_out_tracking_cookie_prefix"),at=o.call(this,"window");a&&(s=hasOptedOut(a,{ignoreDnt:$,persistenceType:c,persistencePrefix:nt,window:at}))}catch(et){console$1.error("Unexpected error when checking tracking opt-out status: "+et)}if(!s)return e.apply(this,arguments);var lt=arguments[arguments.length-1];typeof lt=="function"&<(0)}}var logger$3=console_with_prefix("lock"),SharedLock=function(e,o){o=o||{},this.storageKey=e,this.storage=o.storage||window.localStorage,this.pollIntervalMS=o.pollIntervalMS||100,this.timeoutMS=o.timeoutMS||2e3};SharedLock.prototype.withLock=function(e,o,s){!s&&typeof o!="function"&&(s=o,o=null);var a=s||new Date().getTime()+"|"+Math.random(),$=new Date().getTime(),c=this.storageKey,nt=this.pollIntervalMS,at=this.timeoutMS,lt=this.storage,et=c+":X",it=c+":Y",st=c+":Z",ct=function(_t){o&&o(_t)},ft=function(_t){if(new Date().getTime()-$>at){logger$3.error("Timeout waiting for mutex on "+c+"; clearing lock. ["+a+"]"),lt.removeItem(st),lt.removeItem(it),wt();return}setTimeout(function(){try{_t()}catch($t){ct($t)}},nt*(Math.random()+.1))},pt=function(_t,$t){_t()?$t():ft(function(){pt(_t,$t)})},gt=function(){var _t=lt.getItem(it);if(_t&&_t!==a)return!1;if(lt.setItem(it,a),lt.getItem(it)===a)return!0;if(!localStorageSupported(lt,!0))throw new Error("localStorage support dropped while acquiring lock");return!1},wt=function(){lt.setItem(et,a),pt(gt,function(){if(lt.getItem(et)===a){vt();return}ft(function(){if(lt.getItem(it)!==a){wt();return}pt(function(){return!lt.getItem(st)},vt)})})},vt=function(){lt.setItem(st,"1");try{e()}finally{lt.removeItem(st),lt.getItem(it)===a&<.removeItem(it),lt.getItem(et)===a&<.removeItem(et)}};try{if(localStorageSupported(lt,!0))wt();else throw new Error("localStorage support check failed")}catch(_t){ct(_t)}};var logger$2=console_with_prefix("batch"),RequestQueue=function(e,o){o=o||{},this.storageKey=e,this.storage=o.storage||window.localStorage,this.reportError=o.errorReporter||_$3.bind(logger$2.error,logger$2),this.lock=new SharedLock(e,{storage:this.storage}),this.usePersistence=o.usePersistence,this.pid=o.pid||null,this.memQueue=[]};RequestQueue.prototype.enqueue=function(e,o,s){var a={id:cheap_guid(),flushAfter:new Date().getTime()+o*2,payload:e};this.usePersistence?this.lock.withLock(_$3.bind(function(){var c;try{var nt=this.readFromStorage();nt.push(a),c=this.saveToStorage(nt),c&&this.memQueue.push(a)}catch{this.reportError("Error enqueueing item",e),c=!1}s&&s(c)},this),_$3.bind(function(c){this.reportError("Error acquiring storage lock",c),s&&s(!1)},this),this.pid):(this.memQueue.push(a),s&&s(!0))};RequestQueue.prototype.fillBatch=function(e){var o=this.memQueue.slice(0,e);if(this.usePersistence&&o.lengthc.flushAfter&&!a[c.id]&&(c.orphaned=!0,o.push(c),o.length>=e))break}}}return o};var filterOutIDsAndInvalid=function(e,o){var s=[];return _$3.each(e,function(a){a.id&&!o[a.id]&&s.push(a)}),s};RequestQueue.prototype.removeItemsByID=function(e,o){var s={};if(_$3.each(e,function($){s[$]=!0}),this.memQueue=filterOutIDsAndInvalid(this.memQueue,s),!this.usePersistence)o&&o(!0);else{var a=_$3.bind(function(){var $;try{var c=this.readFromStorage();if(c=filterOutIDsAndInvalid(c,s),$=this.saveToStorage(c),$){c=this.readFromStorage();for(var nt=0;nt5&&(this.reportError("[dupe] item ID sent too many times, not sending",{item:it,batchSize:$.length,timesSent:this.itemIdsSentSuccessfully[ft]}),ct=!1):this.reportError("[dupe] found item with no ID",{item:it}),ct&&nt.push(st)}at[it.id]=st},this),nt.length<1){this.resetFlush();return}this.requestInProgress=!0;var lt=_$3.bind(function(it){this.requestInProgress=!1;try{var st=!1;if(e.unloading)this.queue.updatePayloads(at);else if(_$3.isObject(it)&&it.error==="timeout"&&new Date().getTime()-s>=o)this.reportError("Network timeout; retrying"),this.flush();else if(_$3.isObject(it)&&(it.httpStatusCode>=500||it.httpStatusCode===429||it.httpStatusCode<=0&&!isOnline()||it.error==="timeout")){var ct=this.flushInterval*2;it.retryAfter&&(ct=parseInt(it.retryAfter,10)*1e3||ct),ct=Math.min(MAX_RETRY_INTERVAL_MS,ct),this.reportError("Error; retry in "+ct+" ms"),this.scheduleFlush(ct)}else if(_$3.isObject(it)&&it.httpStatusCode===413)if($.length>1){var ft=Math.max(1,Math.floor(a/2));this.batchSize=Math.min(this.batchSize,ft,$.length-1),this.reportError("413 response; reducing batch size to "+this.batchSize),this.resetFlush()}else this.reportError("Single-event request too large; dropping",$),this.resetBatchSize(),st=!0;else st=!0;st&&(this.queue.removeItemsByID(_$3.map($,function(pt){return pt.id}),_$3.bind(function(pt){pt?(this.consecutiveRemovalFailures=0,this.flushOnlyOnInterval&&!c?this.resetFlush():this.flush()):(this.reportError("Failed to remove items from queue"),++this.consecutiveRemovalFailures>5?(this.reportError("Too many queue failures; disabling batching system."),this.stopAllBatching()):this.resetFlush())},this)),_$3.each($,_$3.bind(function(pt){var gt=pt.id;gt?(this.itemIdsSentSuccessfully[gt]=this.itemIdsSentSuccessfully[gt]||0,this.itemIdsSentSuccessfully[gt]++,this.itemIdsSentSuccessfully[gt]>5&&this.reportError("[dupe] item ID sent too many times",{item:pt,batchSize:$.length,timesSent:this.itemIdsSentSuccessfully[gt]})):this.reportError("[dupe] found item with no ID while removing",{item:pt})},this)))}catch(pt){this.reportError("Error handling API response",pt),this.resetFlush()}},this),et={method:"POST",verbose:!0,ignore_json_errors:!0,timeout_ms:o};e.unloading&&(et.transport="sendBeacon"),logger$1.log("MIXPANEL REQUEST:",nt),this.sendRequest(nt,et,lt)}catch(it){this.reportError("Error flushing request queue",it),this.resetFlush()}};RequestBatcher.prototype.reportError=function(e,o){if(logger$1.error.apply(logger$1.error,arguments),this.errorReporter)try{o instanceof Error||(o=new Error(e)),this.errorReporter(e,o)}catch(s){logger$1.error(s)}};var logger=console_with_prefix("recorder"),CompressionStream=win.CompressionStream,RECORDER_BATCHER_LIB_CONFIG={batch_size:1e3,batch_flush_interval_ms:10*1e3,batch_request_timeout_ms:90*1e3,batch_autostart:!0},ACTIVE_SOURCES=new Set([IncrementalSource.MouseMove,IncrementalSource.MouseInteraction,IncrementalSource.Scroll,IncrementalSource.ViewportResize,IncrementalSource.Input,IncrementalSource.TouchMove,IncrementalSource.MediaInteraction,IncrementalSource.Drag,IncrementalSource.Selection]);function isUserEvent(e){return e.type===EventType.IncrementalSnapshot&&ACTIVE_SOURCES.has(e.data.source)}var MixpanelRecorder=function(e){this._mixpanel=e,this._stopRecording=null,this.recEvents=[],this.seqNo=0,this.replayId=null,this.replayStartTime=null,this.sendBatchId=null,this.idleTimeoutId=null,this.maxTimeoutId=null,this.recordMaxMs=MAX_RECORDING_MS,this.recordMinMs=0,this._initBatcher()};MixpanelRecorder.prototype._initBatcher=function(){this.batcher=new RequestBatcher("__mprec",{libConfig:RECORDER_BATCHER_LIB_CONFIG,sendRequestFunc:_$3.bind(this.flushEventsWithOptOut,this),errorReporter:_$3.bind(this.reportError,this),flushOnlyOnInterval:!0,usePersistence:!1})};MixpanelRecorder.prototype.get_config=function(e){return this._mixpanel.get_config(e)};MixpanelRecorder.prototype.startRecording=function(e){if(this._stopRecording!==null){logger.log("Recording already in progress, skipping startRecording.");return}this.recordMaxMs=this.get_config("record_max_ms"),this.recordMaxMs>MAX_RECORDING_MS&&(this.recordMaxMs=MAX_RECORDING_MS,logger.critical("record_max_ms cannot be greater than "+MAX_RECORDING_MS+"ms. Capping value.")),this.recordMinMs=this.get_config("record_min_ms"),this.recordMinMs>MAX_VALUE_FOR_MIN_RECORDING_MS&&(this.recordMinMs=MAX_VALUE_FOR_MIN_RECORDING_MS,logger.critical("record_min_ms cannot be greater than "+MAX_VALUE_FOR_MIN_RECORDING_MS+"ms. Capping value.")),this.recEvents=[],this.seqNo=0,this.replayStartTime=new Date().getTime(),this.replayId=_$3.UUID(),e||this.recordMinMs>0?this.batcher.stop():this.batcher.start();var o=_$3.bind(function(){clearTimeout(this.idleTimeoutId),this.idleTimeoutId=setTimeout(_$3.bind(function(){logger.log("Idle timeout reached, restarting recording."),this.resetRecording()},this),this.get_config("record_idle_timeout_ms"))},this),s=this.get_config("record_block_selector");(s===""||s===null)&&(s=void 0),this._stopRecording=record({emit:_$3.bind(function(a){this.batcher.enqueue(a),isUserEvent(a)&&(this.batcher.stopped&&new Date().getTime()-this.replayStartTime>=this.recordMinMs&&this.batcher.start(),o())},this),blockClass:this.get_config("record_block_class"),blockSelector:s,collectFonts:this.get_config("record_collect_fonts"),inlineImages:this.get_config("record_inline_images"),maskAllInputs:!0,maskTextClass:this.get_config("record_mask_text_class"),maskTextSelector:this.get_config("record_mask_text_selector")}),o(),this.maxTimeoutId=setTimeout(_$3.bind(this.resetRecording,this),this.recordMaxMs)};MixpanelRecorder.prototype.resetRecording=function(){this.stopRecording(),this.startRecording(!0)};MixpanelRecorder.prototype.stopRecording=function(){this._stopRecording!==null&&(this._stopRecording(),this._stopRecording=null),this.batcher.stopped?this.batcher.clear():(this.batcher.flush(),this.batcher.stop()),this.replayId=null,clearTimeout(this.idleTimeoutId),clearTimeout(this.maxTimeoutId)};MixpanelRecorder.prototype.flushEventsWithOptOut=function(e,o,s){this._flushEvents(e,o,s,_$3.bind(this._onOptOut,this))};MixpanelRecorder.prototype._onOptOut=function(e){e===0&&(this.recEvents=[],this.stopRecording())};MixpanelRecorder.prototype._sendRequest=function(e,o,s,a){var $=_$3.bind(function(c,nt){c.status===200&&this.replayId===e&&this.seqNo++,a({status:0,httpStatusCode:c.status,responseBody:nt,retryAfter:c.headers.get("Retry-After")})},this);win.fetch(this.get_config("api_host")+"/"+this.get_config("api_routes").record+"?"+new URLSearchParams(o),{method:"POST",headers:{Authorization:"Basic "+btoa(this.get_config("token")+":"),"Content-Type":"application/octet-stream"},body:s}).then(function(c){c.json().then(function(nt){$(c,nt)}).catch(function(nt){a({error:nt})})}).catch(function(c){a({error:c,httpStatusCode:0})})};MixpanelRecorder.prototype._flushEvents=addOptOutCheckMixpanelLib(function(e,o,s){const a=e.length;if(a>0){var $=this.replayId,c=e[0].timestamp;(this.seqNo===0||!this.replayStartTime)&&(this.seqNo!==0&&this.reportError("Replay start time not set but seqNo is not 0. Using current batch start time as a fallback."),this.replayStartTime=c);var nt=e[a-1].timestamp-this.replayStartTime,at={distinct_id:String(this._mixpanel.get_distinct_id()),seq:this.seqNo,batch_start_time:c/1e3,replay_id:$,replay_length_ms:nt,replay_start_time:this.replayStartTime/1e3},lt=_$3.JSONEncode(e),et=this._mixpanel.get_property("$device_id");et&&(at.$device_id=et);var it=this._mixpanel.get_property("$user_id");if(it&&(at.$user_id=it),CompressionStream){var st=new Blob([lt],{type:"application/json"}).stream(),ct=st.pipeThrough(new CompressionStream("gzip"));new Response(ct).blob().then(_$3.bind(function(ft){at.format="gzip",this._sendRequest($,at,ft,s)},this))}else at.format="body",this._sendRequest($,at,lt,s)}});MixpanelRecorder.prototype.reportError=function(e,o){logger.error.apply(logger.error,arguments);try{!o&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,o)}catch(s){logger.error(s)}};win.__mp_recorder=MixpanelRecorder;var DomTracker=function(){};DomTracker.prototype.create_properties=function(){};DomTracker.prototype.event_handler=function(){};DomTracker.prototype.after_track_handler=function(){};DomTracker.prototype.init=function(e){return this.mp=e,this};DomTracker.prototype.track=function(e,o,s,a){var $=this,c=_$3.dom_query(e);if(c.length===0){console$1.error("The DOM query ("+e+") returned 0 elements");return}return _$3.each(c,function(nt){_$3.register_event(nt,this.override_event,function(at){var lt={},et=$.create_properties(s,this),it=$.mp.get_config("track_links_timeout");$.event_handler(at,this,lt),window.setTimeout($.track_callback(a,et,lt,!0),it),$.mp.track(o,et,$.track_callback(a,et,lt))})},this),!0};DomTracker.prototype.track_callback=function(e,o,s,a){a=a||!1;var $=this;return function(){s.callback_fired||(s.callback_fired=!0,!(e&&e(a,o)===!1)&&$.after_track_handler(o,s,a))}};DomTracker.prototype.create_properties=function(e,o){var s;return typeof e=="function"?s=e(o):s=_$3.extend({},e),s};var LinkTracker=function(){this.override_event="click"};_$3.inherit(LinkTracker,DomTracker);LinkTracker.prototype.create_properties=function(e,o){var s=LinkTracker.superclass.create_properties.apply(this,arguments);return o.href&&(s.url=o.href),s};LinkTracker.prototype.event_handler=function(e,o,s){s.new_tab=e.which===2||e.metaKey||e.ctrlKey||o.target==="_blank",s.href=o.href,s.new_tab||e.preventDefault()};LinkTracker.prototype.after_track_handler=function(e,o){o.new_tab||setTimeout(function(){window.location=o.href},0)};var FormTracker=function(){this.override_event="submit"};_$3.inherit(FormTracker,DomTracker);FormTracker.prototype.event_handler=function(e,o,s){s.element=o,e.preventDefault()};FormTracker.prototype.after_track_handler=function(e,o){setTimeout(function(){o.element.submit()},0)};var SET_ACTION="$set",SET_ONCE_ACTION="$set_once",UNSET_ACTION="$unset",ADD_ACTION="$add",APPEND_ACTION="$append",UNION_ACTION="$union",REMOVE_ACTION="$remove",DELETE_ACTION="$delete",apiActions={set_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[SET_ACTION]=a,s},unset_action:function(e){var o={},s=[];return _$3.isArray(e)||(e=[e]),_$3.each(e,function(a){this._is_reserved_property(a)||s.push(a)},this),o[UNSET_ACTION]=s,o},set_once_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[SET_ONCE_ACTION]=a,s},union_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=_$3.isArray($)?$:[$])},this):a[e]=_$3.isArray(o)?o:[o],s[UNION_ACTION]=a,s},append_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[APPEND_ACTION]=a,s},remove_action:function(e,o){var s={},a={};return _$3.isObject(e)?_$3.each(e,function($,c){this._is_reserved_property(c)||(a[c]=$)},this):a[e]=o,s[REMOVE_ACTION]=a,s},delete_action:function(){var e={};return e[DELETE_ACTION]="",e}},MixpanelGroup=function(){};_$3.extend(MixpanelGroup.prototype,apiActions);MixpanelGroup.prototype._init=function(e,o,s){this._mixpanel=e,this._group_key=o,this._group_id=s};MixpanelGroup.prototype.set=addOptOutCheckMixpanelGroup(function(e,o,s){var a=this.set_action(e,o);return _$3.isObject(e)&&(s=o),this._send_request(a,s)});MixpanelGroup.prototype.set_once=addOptOutCheckMixpanelGroup(function(e,o,s){var a=this.set_once_action(e,o);return _$3.isObject(e)&&(s=o),this._send_request(a,s)});MixpanelGroup.prototype.unset=addOptOutCheckMixpanelGroup(function(e,o){var s=this.unset_action(e);return this._send_request(s,o)});MixpanelGroup.prototype.union=addOptOutCheckMixpanelGroup(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.union_action(e,o);return this._send_request(a,s)});MixpanelGroup.prototype.delete=addOptOutCheckMixpanelGroup(function(e){var o=this.delete_action();return this._send_request(o,e)});MixpanelGroup.prototype.remove=addOptOutCheckMixpanelGroup(function(e,o,s){var a=this.remove_action(e,o);return this._send_request(a,s)});MixpanelGroup.prototype._send_request=function(e,o){e.$group_key=this._group_key,e.$group_id=this._group_id,e.$token=this._get_config("token");var s=_$3.encodeDates(e);return this._mixpanel._track_or_batch({type:"groups",data:s,endpoint:this._get_config("api_host")+"/"+this._get_config("api_routes").groups,batcher:this._mixpanel.request_batchers.groups},o)};MixpanelGroup.prototype._is_reserved_property=function(e){return e==="$group_key"||e==="$group_id"};MixpanelGroup.prototype._get_config=function(e){return this._mixpanel.get_config(e)};MixpanelGroup.prototype.toString=function(){return this._mixpanel.toString()+".group."+this._group_key+"."+this._group_id};MixpanelGroup.prototype.remove=MixpanelGroup.prototype.remove;MixpanelGroup.prototype.set=MixpanelGroup.prototype.set;MixpanelGroup.prototype.set_once=MixpanelGroup.prototype.set_once;MixpanelGroup.prototype.union=MixpanelGroup.prototype.union;MixpanelGroup.prototype.unset=MixpanelGroup.prototype.unset;MixpanelGroup.prototype.toString=MixpanelGroup.prototype.toString;var MixpanelPeople=function(){};_$3.extend(MixpanelPeople.prototype,apiActions);MixpanelPeople.prototype._init=function(e){this._mixpanel=e};MixpanelPeople.prototype.set=addOptOutCheckMixpanelPeople(function(e,o,s){var a=this.set_action(e,o);return _$3.isObject(e)&&(s=o),this._get_config("save_referrer")&&this._mixpanel.persistence.update_referrer_info(document.referrer),a[SET_ACTION]=_$3.extend({},_$3.info.people_properties(),a[SET_ACTION]),this._send_request(a,s)});MixpanelPeople.prototype.set_once=addOptOutCheckMixpanelPeople(function(e,o,s){var a=this.set_once_action(e,o);return _$3.isObject(e)&&(s=o),this._send_request(a,s)});MixpanelPeople.prototype.unset=addOptOutCheckMixpanelPeople(function(e,o){var s=this.unset_action(e);return this._send_request(s,o)});MixpanelPeople.prototype.increment=addOptOutCheckMixpanelPeople(function(e,o,s){var a={},$={};return _$3.isObject(e)?(_$3.each(e,function(c,nt){if(!this._is_reserved_property(nt))if(isNaN(parseFloat(c))){console$1.error("Invalid increment value passed to mixpanel.people.increment - must be a number");return}else $[nt]=c},this),s=o):(_$3.isUndefined(o)&&(o=1),$[e]=o),a[ADD_ACTION]=$,this._send_request(a,s)});MixpanelPeople.prototype.append=addOptOutCheckMixpanelPeople(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.append_action(e,o);return this._send_request(a,s)});MixpanelPeople.prototype.remove=addOptOutCheckMixpanelPeople(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.remove_action(e,o);return this._send_request(a,s)});MixpanelPeople.prototype.union=addOptOutCheckMixpanelPeople(function(e,o,s){_$3.isObject(e)&&(s=o);var a=this.union_action(e,o);return this._send_request(a,s)});MixpanelPeople.prototype.track_charge=addOptOutCheckMixpanelPeople(function(e,o,s){if(!_$3.isNumber(e)&&(e=parseFloat(e),isNaN(e))){console$1.error("Invalid value passed to mixpanel.people.track_charge - must be a number");return}return this.append("$transactions",_$3.extend({$amount:e},o),s)});MixpanelPeople.prototype.clear_charges=function(e){return this.set("$transactions",[],e)};MixpanelPeople.prototype.delete_user=function(){if(!this._identify_called()){console$1.error("mixpanel.people.delete_user() requires you to call identify() first");return}var e={$delete:this._mixpanel.get_distinct_id()};return this._send_request(e)};MixpanelPeople.prototype.toString=function(){return this._mixpanel.toString()+".people"};MixpanelPeople.prototype._send_request=function(e,o){e.$token=this._get_config("token"),e.$distinct_id=this._mixpanel.get_distinct_id();var s=this._mixpanel.get_property("$device_id"),a=this._mixpanel.get_property("$user_id"),$=this._mixpanel.get_property("$had_persisted_distinct_id");s&&(e.$device_id=s),a&&(e.$user_id=a),$&&(e.$had_persisted_distinct_id=$);var c=_$3.encodeDates(e);return this._identify_called()?this._mixpanel._track_or_batch({type:"people",data:c,endpoint:this._get_config("api_host")+"/"+this._get_config("api_routes").engage,batcher:this._mixpanel.request_batchers.people},o):(this._enqueue(e),_$3.isUndefined(o)||(this._get_config("verbose")?o({status:-1,error:null}):o(-1)),_$3.truncate(c,255))};MixpanelPeople.prototype._get_config=function(e){return this._mixpanel.get_config(e)};MixpanelPeople.prototype._identify_called=function(){return this._mixpanel._flags.identify_called===!0};MixpanelPeople.prototype._enqueue=function(e){SET_ACTION in e?this._mixpanel.persistence._add_to_people_queue(SET_ACTION,e):SET_ONCE_ACTION in e?this._mixpanel.persistence._add_to_people_queue(SET_ONCE_ACTION,e):UNSET_ACTION in e?this._mixpanel.persistence._add_to_people_queue(UNSET_ACTION,e):ADD_ACTION in e?this._mixpanel.persistence._add_to_people_queue(ADD_ACTION,e):APPEND_ACTION in e?this._mixpanel.persistence._add_to_people_queue(APPEND_ACTION,e):REMOVE_ACTION in e?this._mixpanel.persistence._add_to_people_queue(REMOVE_ACTION,e):UNION_ACTION in e?this._mixpanel.persistence._add_to_people_queue(UNION_ACTION,e):console$1.error("Invalid call to _enqueue():",e)};MixpanelPeople.prototype._flush_one_queue=function(e,o,s,a){var $=this,c=_$3.extend({},this._mixpanel.persistence.load_queue(e)),nt=c;!_$3.isUndefined(c)&&_$3.isObject(c)&&!_$3.isEmptyObject(c)&&($._mixpanel.persistence._pop_from_people_queue(e,c),$._mixpanel.persistence.save(),a&&(nt=a(c)),o.call($,nt,function(at,lt){at===0&&$._mixpanel.persistence._add_to_people_queue(e,c),_$3.isUndefined(s)||s(at,lt)}))};MixpanelPeople.prototype._flush=function(e,o,s,a,$,c,nt){var at=this;this._flush_one_queue(SET_ACTION,this.set,e),this._flush_one_queue(SET_ONCE_ACTION,this.set_once,a),this._flush_one_queue(UNSET_ACTION,this.unset,c,function(wt){return _$3.keys(wt)}),this._flush_one_queue(ADD_ACTION,this.increment,o),this._flush_one_queue(UNION_ACTION,this.union,$);var lt=this._mixpanel.persistence.load_queue(APPEND_ACTION);if(!_$3.isUndefined(lt)&&_$3.isArray(lt)&<.length)for(var et,it=function(wt,vt){wt===0&&at._mixpanel.persistence._add_to_people_queue(APPEND_ACTION,et),_$3.isUndefined(s)||s(wt,vt)},st=lt.length-1;st>=0;st--)lt=this._mixpanel.persistence.load_queue(APPEND_ACTION),et=lt.pop(),at._mixpanel.persistence.save(),_$3.isEmptyObject(et)||at.append(et,it);var ct=this._mixpanel.persistence.load_queue(REMOVE_ACTION);if(!_$3.isUndefined(ct)&&_$3.isArray(ct)&&ct.length)for(var ft,pt=function(wt,vt){wt===0&&at._mixpanel.persistence._add_to_people_queue(REMOVE_ACTION,ft),_$3.isUndefined(nt)||nt(wt,vt)},gt=ct.length-1;gt>=0;gt--)ct=this._mixpanel.persistence.load_queue(REMOVE_ACTION),ft=ct.pop(),at._mixpanel.persistence.save(),_$3.isEmptyObject(ft)||at.remove(ft,pt)};MixpanelPeople.prototype._is_reserved_property=function(e){return e==="$distinct_id"||e==="$token"||e==="$device_id"||e==="$user_id"||e==="$had_persisted_distinct_id"};MixpanelPeople.prototype.set=MixpanelPeople.prototype.set;MixpanelPeople.prototype.set_once=MixpanelPeople.prototype.set_once;MixpanelPeople.prototype.unset=MixpanelPeople.prototype.unset;MixpanelPeople.prototype.increment=MixpanelPeople.prototype.increment;MixpanelPeople.prototype.append=MixpanelPeople.prototype.append;MixpanelPeople.prototype.remove=MixpanelPeople.prototype.remove;MixpanelPeople.prototype.union=MixpanelPeople.prototype.union;MixpanelPeople.prototype.track_charge=MixpanelPeople.prototype.track_charge;MixpanelPeople.prototype.clear_charges=MixpanelPeople.prototype.clear_charges;MixpanelPeople.prototype.delete_user=MixpanelPeople.prototype.delete_user;MixpanelPeople.prototype.toString=MixpanelPeople.prototype.toString;var SET_QUEUE_KEY="__mps",SET_ONCE_QUEUE_KEY="__mpso",UNSET_QUEUE_KEY="__mpus",ADD_QUEUE_KEY="__mpa",APPEND_QUEUE_KEY="__mpap",REMOVE_QUEUE_KEY="__mpr",UNION_QUEUE_KEY="__mpu",PEOPLE_DISTINCT_ID_KEY="$people_distinct_id",ALIAS_ID_KEY="__alias",EVENT_TIMERS_KEY="__timers",RESERVED_PROPERTIES=[SET_QUEUE_KEY,SET_ONCE_QUEUE_KEY,UNSET_QUEUE_KEY,ADD_QUEUE_KEY,APPEND_QUEUE_KEY,REMOVE_QUEUE_KEY,UNION_QUEUE_KEY,PEOPLE_DISTINCT_ID_KEY,ALIAS_ID_KEY,EVENT_TIMERS_KEY],MixpanelPersistence=function(e){this.props={},this.campaign_params_saved=!1,e.persistence_name?this.name="mp_"+e.persistence_name:this.name="mp_"+e.token+"_mixpanel";var o=e.persistence;o!=="cookie"&&o!=="localStorage"&&(console$1.critical("Unknown persistence type "+o+"; falling back to cookie"),o=e.persistence="cookie"),o==="localStorage"&&_$3.localStorage.is_supported()?this.storage=_$3.localStorage:this.storage=_$3.cookie,this.load(),this.update_config(e),this.upgrade(),this.save()};MixpanelPersistence.prototype.properties=function(){var e={};return this.load(),_$3.each(this.props,function(o,s){_$3.include(RESERVED_PROPERTIES,s)||(e[s]=o)}),e};MixpanelPersistence.prototype.load=function(){if(!this.disabled){var e=this.storage.parse(this.name);e&&(this.props=_$3.extend({},e))}};MixpanelPersistence.prototype.upgrade=function(){var e,o;this.storage===_$3.localStorage?(e=_$3.cookie.parse(this.name),_$3.cookie.remove(this.name),_$3.cookie.remove(this.name,!0),e&&this.register_once(e)):this.storage===_$3.cookie&&(o=_$3.localStorage.parse(this.name),_$3.localStorage.remove(this.name),o&&this.register_once(o))};MixpanelPersistence.prototype.save=function(){this.disabled||this.storage.set(this.name,_$3.JSONEncode(this.props),this.expire_days,this.cross_subdomain,this.secure,this.cross_site,this.cookie_domain)};MixpanelPersistence.prototype.load_prop=function(e){return this.load(),this.props[e]};MixpanelPersistence.prototype.remove=function(){this.storage.remove(this.name,!1,this.cookie_domain),this.storage.remove(this.name,!0,this.cookie_domain)};MixpanelPersistence.prototype.clear=function(){this.remove(),this.props={}};MixpanelPersistence.prototype.register_once=function(e,o,s){return _$3.isObject(e)?(typeof o>"u"&&(o="None"),this.expire_days=typeof s>"u"?this.default_expiry:s,this.load(),_$3.each(e,function(a,$){(!this.props.hasOwnProperty($)||this.props[$]===o)&&(this.props[$]=a)},this),this.save(),!0):!1};MixpanelPersistence.prototype.register=function(e,o){return _$3.isObject(e)?(this.expire_days=typeof o>"u"?this.default_expiry:o,this.load(),_$3.extend(this.props,e),this.save(),!0):!1};MixpanelPersistence.prototype.unregister=function(e){this.load(),e in this.props&&(delete this.props[e],this.save())};MixpanelPersistence.prototype.update_search_keyword=function(e){this.register(_$3.info.searchInfo(e))};MixpanelPersistence.prototype.update_referrer_info=function(e){this.register_once({$initial_referrer:e||"$direct",$initial_referring_domain:_$3.info.referringDomain(e)||"$direct"},"")};MixpanelPersistence.prototype.get_referrer_info=function(){return _$3.strip_empty_properties({$initial_referrer:this.props.$initial_referrer,$initial_referring_domain:this.props.$initial_referring_domain})};MixpanelPersistence.prototype.update_config=function(e){this.default_expiry=this.expire_days=e.cookie_expiration,this.set_disabled(e.disable_persistence),this.set_cookie_domain(e.cookie_domain),this.set_cross_site(e.cross_site_cookie),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie)};MixpanelPersistence.prototype.set_disabled=function(e){this.disabled=e,this.disabled?this.remove():this.save()};MixpanelPersistence.prototype.set_cookie_domain=function(e){e!==this.cookie_domain&&(this.remove(),this.cookie_domain=e,this.save())};MixpanelPersistence.prototype.set_cross_site=function(e){e!==this.cross_site&&(this.cross_site=e,this.remove(),this.save())};MixpanelPersistence.prototype.set_cross_subdomain=function(e){e!==this.cross_subdomain&&(this.cross_subdomain=e,this.remove(),this.save())};MixpanelPersistence.prototype.get_cross_subdomain=function(){return this.cross_subdomain};MixpanelPersistence.prototype.set_secure=function(e){e!==this.secure&&(this.secure=!!e,this.remove(),this.save())};MixpanelPersistence.prototype._add_to_people_queue=function(e,o){var s=this._get_queue_key(e),a=o[e],$=this._get_or_create_queue(SET_ACTION),c=this._get_or_create_queue(SET_ONCE_ACTION),nt=this._get_or_create_queue(UNSET_ACTION),at=this._get_or_create_queue(ADD_ACTION),lt=this._get_or_create_queue(UNION_ACTION),et=this._get_or_create_queue(REMOVE_ACTION,[]),it=this._get_or_create_queue(APPEND_ACTION,[]);s===SET_QUEUE_KEY?(_$3.extend($,a),this._pop_from_people_queue(ADD_ACTION,a),this._pop_from_people_queue(UNION_ACTION,a),this._pop_from_people_queue(UNSET_ACTION,a)):s===SET_ONCE_QUEUE_KEY?(_$3.each(a,function(st,ct){ct in c||(c[ct]=st)}),this._pop_from_people_queue(UNSET_ACTION,a)):s===UNSET_QUEUE_KEY?_$3.each(a,function(st){_$3.each([$,c,at,lt],function(ct){st in ct&&delete ct[st]}),_$3.each(it,function(ct){st in ct&&delete ct[st]}),nt[st]=!0}):s===ADD_QUEUE_KEY?(_$3.each(a,function(st,ct){ct in $?$[ct]+=st:(ct in at||(at[ct]=0),at[ct]+=st)},this),this._pop_from_people_queue(UNSET_ACTION,a)):s===UNION_QUEUE_KEY?(_$3.each(a,function(st,ct){_$3.isArray(st)&&(ct in lt||(lt[ct]=[]),lt[ct]=lt[ct].concat(st))}),this._pop_from_people_queue(UNSET_ACTION,a)):s===REMOVE_QUEUE_KEY?(et.push(a),this._pop_from_people_queue(APPEND_ACTION,a)):s===APPEND_QUEUE_KEY&&(it.push(a),this._pop_from_people_queue(UNSET_ACTION,a)),console$1.log("MIXPANEL PEOPLE REQUEST (QUEUED, PENDING IDENTIFY):"),console$1.log(o),this.save()};MixpanelPersistence.prototype._pop_from_people_queue=function(e,o){var s=this.props[this._get_queue_key(e)];_$3.isUndefined(s)||_$3.each(o,function(a,$){e===APPEND_ACTION||e===REMOVE_ACTION?_$3.each(s,function(c){c[$]===a&&delete c[$]}):delete s[$]},this)};MixpanelPersistence.prototype.load_queue=function(e){return this.load_prop(this._get_queue_key(e))};MixpanelPersistence.prototype._get_queue_key=function(e){if(e===SET_ACTION)return SET_QUEUE_KEY;if(e===SET_ONCE_ACTION)return SET_ONCE_QUEUE_KEY;if(e===UNSET_ACTION)return UNSET_QUEUE_KEY;if(e===ADD_ACTION)return ADD_QUEUE_KEY;if(e===APPEND_ACTION)return APPEND_QUEUE_KEY;if(e===REMOVE_ACTION)return REMOVE_QUEUE_KEY;if(e===UNION_ACTION)return UNION_QUEUE_KEY;console$1.error("Invalid queue:",e)};MixpanelPersistence.prototype._get_or_create_queue=function(e,o){var s=this._get_queue_key(e);return o=_$3.isUndefined(o)?{}:o,this.props[s]||(this.props[s]=o)};MixpanelPersistence.prototype.set_event_timer=function(e,o){var s=this.load_prop(EVENT_TIMERS_KEY)||{};s[e]=o,this.props[EVENT_TIMERS_KEY]=s,this.save()};MixpanelPersistence.prototype.remove_event_timer=function(e){var o=this.load_prop(EVENT_TIMERS_KEY)||{},s=o[e];return _$3.isUndefined(s)||(delete this.props[EVENT_TIMERS_KEY][e],this.save()),s};var init_type,load_extra_bundle=function(e,o){throw new Error(e+" not available in this build.")},mixpanel_master,INIT_MODULE=0,INIT_SNIPPET=1,IDENTITY_FUNC=function(e){return e},NOOP_FUNC=function(){},PRIMARY_INSTANCE_NAME="mixpanel",PAYLOAD_TYPE_BASE64="base64",PAYLOAD_TYPE_JSON="json",DEVICE_ID_PREFIX="$device:",USE_XHR=win.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,ENQUEUE_REQUESTS=!USE_XHR&&userAgent.indexOf("MSIE")===-1&&userAgent.indexOf("Mozilla")===-1,sendBeacon=null;navigator$1.sendBeacon&&(sendBeacon=function(){return navigator$1.sendBeacon.apply(navigator$1,arguments)});var DEFAULT_API_ROUTES={track:"track/",engage:"engage/",groups:"groups/",record:"record/"},DEFAULT_CONFIG={api_host:"https://api-js.mixpanel.com",api_routes:DEFAULT_API_ROUTES,api_method:"POST",api_transport:"XHR",api_payload_format:PAYLOAD_TYPE_BASE64,app_host:"https://mixpanel.com",cdn:"https://cdn.mxpnl.com",cross_site_cookie:!1,cross_subdomain_cookie:!0,error_reporter:NOOP_FUNC,persistence:"cookie",persistence_name:"",cookie_domain:"",cookie_name:"",loaded:NOOP_FUNC,mp_loader:null,track_marketing:!0,track_pageview:!1,skip_first_touch_marketing:!1,store_google:!0,stop_utm_persistence:!1,save_referrer:!0,test:!1,verbose:!1,img:!1,debug:!1,track_links_timeout:300,cookie_expiration:365,upgrade:!1,disable_persistence:!1,disable_cookie:!1,secure_cookie:!1,ip:!0,opt_out_tracking_by_default:!1,opt_out_persistence_by_default:!1,opt_out_tracking_persistence_type:"localStorage",opt_out_tracking_cookie_prefix:null,property_blacklist:[],xhr_headers:{},ignore_dnt:!1,batch_requests:!0,batch_size:50,batch_flush_interval_ms:5e3,batch_request_timeout_ms:9e4,batch_autostart:!0,hooks:{},record_block_class:new RegExp("^(mp-block|fs-exclude|amp-block|rr-block|ph-no-capture)$"),record_block_selector:"img, video",record_collect_fonts:!1,record_idle_timeout_ms:30*60*1e3,record_inline_images:!1,record_mask_text_class:new RegExp("^(mp-mask|fs-mask|amp-mask|rr-mask|ph-mask)$"),record_mask_text_selector:"*",record_max_ms:MAX_RECORDING_MS,record_min_ms:0,record_sessions_percent:0,recorder_src:"https://cdn.mxpnl.com/libs/mixpanel-recorder.min.js"},DOM_LOADED=!1,MixpanelLib=function(){},create_mplib=function(e,o,s){var a,$=s===PRIMARY_INSTANCE_NAME?mixpanel_master:mixpanel_master[s];if($&&init_type===INIT_MODULE)a=$;else{if($&&!_$3.isArray($)){console$1.error("You have already initialized "+s);return}a=new MixpanelLib}if(a._cached_groups={},a._init(e,o,s),a.people=new MixpanelPeople,a.people._init(a),!a.get_config("skip_first_touch_marketing")){var c=_$3.info.campaignParams(null),nt={},at=!1;_$3.each(c,function(lt,et){nt["initial_"+et]=lt,lt&&(at=!0)}),at&&a.people.set_once(nt)}return Config.DEBUG=Config.DEBUG||a.get_config("debug"),!_$3.isUndefined($)&&_$3.isArray($)&&(a._execute_array.call(a.people,$.people),a._execute_array($)),a};MixpanelLib.prototype.init=function(e,o,s){if(_$3.isUndefined(s)){this.report_error("You must name your new library: init(token, config, name)");return}if(s===PRIMARY_INSTANCE_NAME){this.report_error("You must initialize the main mixpanel object right after you include the Mixpanel js snippet");return}var a=create_mplib(e,o,s);return mixpanel_master[s]=a,a._loaded(),a};MixpanelLib.prototype._init=function(e,o,s){o=o||{},this.__loaded=!0,this.config={};var a={};if(!("api_payload_format"in o)){var $=o.api_host||DEFAULT_CONFIG.api_host;$.match(/\.mixpanel\.com/)&&(a.api_payload_format=PAYLOAD_TYPE_JSON)}if(this.set_config(_$3.extend({},DEFAULT_CONFIG,a,o,{name:s,token:e,callback_fn:(s===PRIMARY_INSTANCE_NAME?s:PRIMARY_INSTANCE_NAME+"."+s)+"._jsc"})),this._jsc=NOOP_FUNC,this.__dom_loaded_queue=[],this.__request_queue=[],this.__disabled_events=[],this._flags={disable_all_events:!1,identify_called:!1},this.request_batchers={},this._batch_requests=this.get_config("batch_requests"),this._batch_requests){if(!_$3.localStorage.is_supported(!0)||!USE_XHR)this._batch_requests=!1,console$1.log("Turning off Mixpanel request-queueing; needs XHR and localStorage support"),_$3.each(this.get_batcher_configs(),function(lt){console$1.log("Clearing batch queue "+lt.queue_key),_$3.localStorage.remove(lt.queue_key)});else if(this.init_batchers(),sendBeacon&&win.addEventListener){var c=_$3.bind(function(){this.request_batchers.events.stopped||this.request_batchers.events.flush({unloading:!0})},this);win.addEventListener("pagehide",function(lt){lt.persisted&&c()}),win.addEventListener("visibilitychange",function(){document$1.visibilityState==="hidden"&&c()})}}this.persistence=this.cookie=new MixpanelPersistence(this.config),this.unpersisted_superprops={},this._gdpr_init();var nt=_$3.UUID();this.get_distinct_id()||this.register_once({distinct_id:DEVICE_ID_PREFIX+nt,$device_id:nt},"");var at=this.get_config("track_pageview");at&&this._init_url_change_tracking(at),this.get_config("record_sessions_percent")>0&&Math.random()*100<=this.get_config("record_sessions_percent")&&this.start_session_recording()};MixpanelLib.prototype.start_session_recording=addOptOutCheckMixpanelLib(function(){if(!win.MutationObserver){console$1.critical("Browser does not support MutationObserver; skipping session recording");return}var e=_$3.bind(function(){this._recorder=this._recorder||new win.__mp_recorder(this),this._recorder.startRecording()},this);_$3.isUndefined(win.__mp_recorder)?load_extra_bundle(this.get_config("recorder_src"),e):e()});MixpanelLib.prototype.stop_session_recording=function(){this._recorder?this._recorder.stopRecording():console$1.critical("Session recorder module not loaded")};MixpanelLib.prototype.get_session_recording_properties=function(){var e={};if(this._recorder){var o=this._recorder.replayId;o&&(e.$mp_replay_id=o)}return e};MixpanelLib.prototype._loaded=function(){if(this.get_config("loaded")(this),this._set_default_superprops(),this.people.set_once(this.persistence.get_referrer_info()),this.get_config("store_google")&&this.get_config("stop_utm_persistence")){var e=_$3.info.campaignParams(null);_$3.each(e,function(o,s){this.unregister(s)}.bind(this))}};MixpanelLib.prototype._set_default_superprops=function(){this.persistence.update_search_keyword(document$1.referrer),this.get_config("store_google")&&!this.get_config("stop_utm_persistence")&&this.register(_$3.info.campaignParams()),this.get_config("save_referrer")&&this.persistence.update_referrer_info(document$1.referrer)};MixpanelLib.prototype._dom_loaded=function(){_$3.each(this.__dom_loaded_queue,function(e){this._track_dom.apply(this,e)},this),this.has_opted_out_tracking()||_$3.each(this.__request_queue,function(e){this._send_request.apply(this,e)},this),delete this.__dom_loaded_queue,delete this.__request_queue};MixpanelLib.prototype._track_dom=function(e,o){if(this.get_config("img"))return this.report_error("You can't use DOM tracking functions with img = true."),!1;if(!DOM_LOADED)return this.__dom_loaded_queue.push([e,o]),!1;var s=new e().init(this);return s.track.apply(s,o)};MixpanelLib.prototype._init_url_change_tracking=function(e){var o="",s=this.track_pageview();if(s&&(o=_$3.info.currentUrl()),_$3.include(["full-url","url-with-path-and-query-string","url-with-path"],e)){win.addEventListener("popstate",function(){win.dispatchEvent(new Event("mp_locationchange"))}),win.addEventListener("hashchange",function(){win.dispatchEvent(new Event("mp_locationchange"))});var a=win.history.pushState;typeof a=="function"&&(win.history.pushState=function(c,nt,at){a.call(win.history,c,nt,at),win.dispatchEvent(new Event("mp_locationchange"))});var $=win.history.replaceState;typeof $=="function"&&(win.history.replaceState=function(c,nt,at){$.call(win.history,c,nt,at),win.dispatchEvent(new Event("mp_locationchange"))}),win.addEventListener("mp_locationchange",function(){var c=_$3.info.currentUrl(),nt=!1;if(e==="full-url"?nt=c!==o:e==="url-with-path-and-query-string"?nt=c.split("#")[0]!==o.split("#")[0]:e==="url-with-path"&&(nt=c.split("#")[0].split("?")[0]!==o.split("#")[0].split("?")[0]),nt){var at=this.track_pageview();at&&(o=c)}}.bind(this))}};MixpanelLib.prototype._prepare_callback=function(e,o){if(_$3.isUndefined(e))return null;if(USE_XHR){var s=function(nt){e(nt,o)};return s}else{var a=this._jsc,$=""+Math.floor(Math.random()*1e8),c=this.get_config("callback_fn")+"["+$+"]";return a[$]=function(nt){delete a[$],e(nt,o)},c}};MixpanelLib.prototype._send_request=function(e,o,s,a){var $=!0;if(ENQUEUE_REQUESTS)return this.__request_queue.push(arguments),$;var c={method:this.get_config("api_method"),transport:this.get_config("api_transport"),verbose:this.get_config("verbose")},nt=null;!a&&(_$3.isFunction(s)||typeof s=="string")&&(a=s,s=null),s=_$3.extend(c,s||{}),USE_XHR||(s.method="GET");var at=s.method==="POST",lt=sendBeacon&&at&&s.transport.toLowerCase()==="sendbeacon",et=s.verbose;o.verbose&&(et=!0),this.get_config("test")&&(o.test=1),et&&(o.verbose=1),this.get_config("img")&&(o.img=1),USE_XHR||(a?o.callback=a:(et||this.get_config("test"))&&(o.callback="(function(){})")),o.ip=this.get_config("ip")?1:0,o._=new Date().getTime().toString(),at&&(nt="data="+encodeURIComponent(o.data),delete o.data),e+="?"+_$3.HTTPBuildQuery(o);var it=this;if("img"in o){var st=document$1.createElement("img");st.src=e,document$1.body.appendChild(st)}else if(lt){try{$=sendBeacon(e,nt)}catch(vt){it.report_error(vt),$=!1}try{a&&a($?1:0)}catch(vt){it.report_error(vt)}}else if(USE_XHR)try{var ct=new XMLHttpRequest;ct.open(s.method,e,!0);var ft=this.get_config("xhr_headers");if(at&&(ft["Content-Type"]="application/x-www-form-urlencoded"),_$3.each(ft,function(vt,_t){ct.setRequestHeader(_t,vt)}),s.timeout_ms&&typeof ct.timeout<"u"){ct.timeout=s.timeout_ms;var pt=new Date().getTime()}ct.withCredentials=!0,ct.onreadystatechange=function(){if(ct.readyState===4)if(ct.status===200){if(a)if(et){var vt;try{vt=_$3.JSONDecode(ct.responseText)}catch(Pt){if(it.report_error(Pt),s.ignore_json_errors)vt=ct.responseText;else return}a(vt)}else a(Number(ct.responseText))}else{var _t;if(ct.timeout&&!ct.status&&new Date().getTime()-pt>=ct.timeout?_t="timeout":_t="Bad HTTP status: "+ct.status+" "+ct.statusText,it.report_error(_t),a)if(et){var $t=ct.responseHeaders||{};a({status:0,httpStatusCode:ct.status,error:_t,retryAfter:$t["Retry-After"]})}else a(0)}},ct.send(nt)}catch(vt){it.report_error(vt),$=!1}else{var gt=document$1.createElement("script");gt.type="text/javascript",gt.async=!0,gt.defer=!0,gt.src=e;var wt=document$1.getElementsByTagName("script")[0];wt.parentNode.insertBefore(gt,wt)}return $};MixpanelLib.prototype._execute_array=function(e){var o,s=[],a=[],$=[];_$3.each(e,function(nt){nt&&(o=nt[0],_$3.isArray(o)?$.push(nt):typeof nt=="function"?nt.call(this):_$3.isArray(nt)&&o==="alias"?s.push(nt):_$3.isArray(nt)&&o.indexOf("track")!==-1&&typeof this[o]=="function"?$.push(nt):a.push(nt))},this);var c=function(nt,at){_$3.each(nt,function(lt){if(_$3.isArray(lt[0])){var et=at;_$3.each(lt,function(it){et=et[it[0]].apply(et,it.slice(1))})}else this[lt[0]].apply(this,lt.slice(1))},at)};c(s,this),c(a,this),c($,this)};MixpanelLib.prototype.are_batchers_initialized=function(){return!!this.request_batchers.events};MixpanelLib.prototype.get_batcher_configs=function(){var e="__mpq_"+this.get_config("token"),o=this.get_config("api_routes");return this._batcher_configs=this._batcher_configs||{events:{type:"events",endpoint:"/"+o.track,queue_key:e+"_ev"},people:{type:"people",endpoint:"/"+o.engage,queue_key:e+"_pp"},groups:{type:"groups",endpoint:"/"+o.groups,queue_key:e+"_gr"}},this._batcher_configs};MixpanelLib.prototype.init_batchers=function(){if(!this.are_batchers_initialized()){var e=_$3.bind(function(s){return new RequestBatcher(s.queue_key,{libConfig:this.config,errorReporter:this.get_config("error_reporter"),sendRequestFunc:_$3.bind(function(a,$,c){this._send_request(this.get_config("api_host")+s.endpoint,this._encode_data_for_request(a),$,this._prepare_callback(c,a))},this),beforeSendHook:_$3.bind(function(a){return this._run_hook("before_send_"+s.type,a)},this),stopAllBatchingFunc:_$3.bind(this.stop_batch_senders,this),usePersistence:!0})},this),o=this.get_batcher_configs();this.request_batchers={events:e(o.events),people:e(o.people),groups:e(o.groups)}}this.get_config("batch_autostart")&&this.start_batch_senders()};MixpanelLib.prototype.start_batch_senders=function(){this._batchers_were_started=!0,this.are_batchers_initialized()&&(this._batch_requests=!0,_$3.each(this.request_batchers,function(e){e.start()}))};MixpanelLib.prototype.stop_batch_senders=function(){this._batch_requests=!1,_$3.each(this.request_batchers,function(e){e.stop(),e.clear()})};MixpanelLib.prototype.push=function(e){this._execute_array([e])};MixpanelLib.prototype.disable=function(e){typeof e>"u"?this._flags.disable_all_events=!0:this.__disabled_events=this.__disabled_events.concat(e)};MixpanelLib.prototype._encode_data_for_request=function(e){var o=_$3.JSONEncode(e);return this.get_config("api_payload_format")===PAYLOAD_TYPE_BASE64&&(o=_$3.base64Encode(o)),{data:o}};MixpanelLib.prototype._track_or_batch=function(e,o){var s=_$3.truncate(e.data,255),a=e.endpoint,$=e.batcher,c=e.should_send_immediately,nt=e.send_request_options||{};o=o||NOOP_FUNC;var at=!0,lt=_$3.bind(function(){return nt.skip_hooks||(s=this._run_hook("before_send_"+e.type,s)),s?(console$1.log("MIXPANEL REQUEST:"),console$1.log(s),this._send_request(a,this._encode_data_for_request(s),nt,this._prepare_callback(o,s))):null},this);return this._batch_requests&&!c?$.enqueue(s,function(et){et?o(1,s):lt()}):at=lt(),at&&s};MixpanelLib.prototype.track=addOptOutCheckMixpanelLib(function(e,o,s,a){!a&&typeof s=="function"&&(a=s,s=null),s=s||{};var $=s.transport;$&&(s.transport=$);var c=s.send_immediately;if(typeof a!="function"&&(a=NOOP_FUNC),_$3.isUndefined(e)){this.report_error("No event name provided to mixpanel.track");return}if(this._event_is_disabled(e)){a(0);return}o=_$3.extend({},o),o.token=this.get_config("token");var nt=this.persistence.remove_event_timer(e);if(!_$3.isUndefined(nt)){var at=new Date().getTime()-nt;o.$duration=parseFloat((at/1e3).toFixed(3))}this._set_default_superprops();var lt=this.get_config("track_marketing")?_$3.info.marketingParams():{};o=_$3.extend({},_$3.info.properties({mp_loader:this.get_config("mp_loader")}),lt,this.persistence.properties(),this.unpersisted_superprops,this.get_session_recording_properties(),o);var et=this.get_config("property_blacklist");_$3.isArray(et)?_$3.each(et,function(ct){delete o[ct]}):this.report_error("Invalid value for property_blacklist config: "+et);var it={event:e,properties:o},st=this._track_or_batch({type:"events",data:it,endpoint:this.get_config("api_host")+"/"+this.get_config("api_routes").track,batcher:this.request_batchers.events,should_send_immediately:c,send_request_options:s},a);return st});MixpanelLib.prototype.set_group=addOptOutCheckMixpanelLib(function(e,o,s){_$3.isArray(o)||(o=[o]);var a={};return a[e]=o,this.register(a),this.people.set(e,o,s)});MixpanelLib.prototype.add_group=addOptOutCheckMixpanelLib(function(e,o,s){var a=this.get_property(e),$={};return a===void 0?($[e]=[o],this.register($)):a.indexOf(o)===-1&&(a.push(o),$[e]=a,this.register($)),this.people.union(e,o,s)});MixpanelLib.prototype.remove_group=addOptOutCheckMixpanelLib(function(e,o,s){var a=this.get_property(e);if(a!==void 0){var $=a.indexOf(o);$>-1&&(a.splice($,1),this.register({group_key:a})),a.length===0&&this.unregister(e)}return this.people.remove(e,o,s)});MixpanelLib.prototype.track_with_groups=addOptOutCheckMixpanelLib(function(e,o,s,a){var $=_$3.extend({},o||{});return _$3.each(s,function(c,nt){c!=null&&($[nt]=c)}),this.track(e,$,a)});MixpanelLib.prototype._create_map_key=function(e,o){return e+"_"+JSON.stringify(o)};MixpanelLib.prototype._remove_group_from_cache=function(e,o){delete this._cached_groups[this._create_map_key(e,o)]};MixpanelLib.prototype.get_group=function(e,o){var s=this._create_map_key(e,o),a=this._cached_groups[s];return(a===void 0||a._group_key!==e||a._group_id!==o)&&(a=new MixpanelGroup,a._init(this,e,o),this._cached_groups[s]=a),a};MixpanelLib.prototype.track_pageview=addOptOutCheckMixpanelLib(function(e,o){typeof e!="object"&&(e={}),o=o||{};var s=o.event_name||"$mp_web_page_view",a=_$3.extend(_$3.info.mpPageViewProperties(),_$3.info.campaignParams(),_$3.info.clickParams()),$=_$3.extend({},a,e);return this.track(s,$)});MixpanelLib.prototype.track_links=function(){return this._track_dom.call(this,LinkTracker,arguments)};MixpanelLib.prototype.track_forms=function(){return this._track_dom.call(this,FormTracker,arguments)};MixpanelLib.prototype.time_event=function(e){if(_$3.isUndefined(e)){this.report_error("No event name provided to mixpanel.time_event");return}this._event_is_disabled(e)||this.persistence.set_event_timer(e,new Date().getTime())};var REGISTER_DEFAULTS={persistent:!0},options_for_register=function(e){var o;return _$3.isObject(e)?o=e:_$3.isUndefined(e)?o={}:o={days:e},_$3.extend({},REGISTER_DEFAULTS,o)};MixpanelLib.prototype.register=function(e,o){var s=options_for_register(o);s.persistent?this.persistence.register(e,s.days):_$3.extend(this.unpersisted_superprops,e)};MixpanelLib.prototype.register_once=function(e,o,s){var a=options_for_register(s);a.persistent?this.persistence.register_once(e,o,a.days):(typeof o>"u"&&(o="None"),_$3.each(e,function($,c){(!this.unpersisted_superprops.hasOwnProperty(c)||this.unpersisted_superprops[c]===o)&&(this.unpersisted_superprops[c]=$)},this))};MixpanelLib.prototype.unregister=function(e,o){o=options_for_register(o),o.persistent?this.persistence.unregister(e):delete this.unpersisted_superprops[e]};MixpanelLib.prototype._register_single=function(e,o){var s={};s[e]=o,this.register(s)};MixpanelLib.prototype.identify=function(e,o,s,a,$,c,nt,at){var lt=this.get_distinct_id();if(e&<!==e){if(typeof e=="string"&&e.indexOf(DEVICE_ID_PREFIX)===0)return this.report_error("distinct_id cannot have $device: prefix"),-1;this.register({$user_id:e})}if(!this.get_property("$device_id")){var et=lt;this.register_once({$had_persisted_distinct_id:!0,$device_id:et},"")}e!==lt&&e!==this.get_property(ALIAS_ID_KEY)&&(this.unregister(ALIAS_ID_KEY),this.register({distinct_id:e})),this._flags.identify_called=!0,this.people._flush(o,s,a,$,c,nt,at),e!==lt&&this.track("$identify",{distinct_id:e,$anon_distinct_id:lt},{skip_hooks:!0})};MixpanelLib.prototype.reset=function(){this.persistence.clear(),this._flags.identify_called=!1;var e=_$3.UUID();this.register_once({distinct_id:DEVICE_ID_PREFIX+e,$device_id:e},"")};MixpanelLib.prototype.get_distinct_id=function(){return this.get_property("distinct_id")};MixpanelLib.prototype.alias=function(e,o){if(e===this.get_property(PEOPLE_DISTINCT_ID_KEY))return this.report_error("Attempting to create alias for existing People user - aborting."),-2;var s=this;return _$3.isUndefined(o)&&(o=this.get_distinct_id()),e!==o?(this._register_single(ALIAS_ID_KEY,e),this.track("$create_alias",{alias:e,distinct_id:o},{skip_hooks:!0},function(){s.identify(e)})):(this.report_error("alias matches current distinct_id - skipping api call."),this.identify(e),-1)};MixpanelLib.prototype.name_tag=function(e){this._register_single("mp_name_tag",e)};MixpanelLib.prototype.set_config=function(e){if(_$3.isObject(e)){_$3.extend(this.config,e);var o=e.batch_size;o&&_$3.each(this.request_batchers,function(s){s.resetBatchSize()}),this.get_config("persistence_name")||(this.config.persistence_name=this.config.cookie_name),this.get_config("disable_persistence")||(this.config.disable_persistence=this.config.disable_cookie),this.persistence&&this.persistence.update_config(this.config),Config.DEBUG=Config.DEBUG||this.get_config("debug")}};MixpanelLib.prototype.get_config=function(e){return this.config[e]};MixpanelLib.prototype._run_hook=function(e){var o=(this.config.hooks[e]||IDENTITY_FUNC).apply(this,slice$1.call(arguments,1));return typeof o>"u"&&(this.report_error(e+" hook did not return a value"),o=null),o};MixpanelLib.prototype.get_property=function(e){return this.persistence.load_prop([e])};MixpanelLib.prototype.toString=function(){var e=this.get_config("name");return e!==PRIMARY_INSTANCE_NAME&&(e=PRIMARY_INSTANCE_NAME+"."+e),e};MixpanelLib.prototype._event_is_disabled=function(e){return _$3.isBlockedUA(userAgent)||this._flags.disable_all_events||_$3.include(this.__disabled_events,e)};MixpanelLib.prototype._gdpr_init=function(){var e=this.get_config("opt_out_tracking_persistence_type")==="localStorage";e&&_$3.localStorage.is_supported()&&(!this.has_opted_in_tracking()&&this.has_opted_in_tracking({persistence_type:"cookie"})&&this.opt_in_tracking({enable_persistence:!1}),!this.has_opted_out_tracking()&&this.has_opted_out_tracking({persistence_type:"cookie"})&&this.opt_out_tracking({clear_persistence:!1}),this.clear_opt_in_out_tracking({persistence_type:"cookie",enable_persistence:!1})),this.has_opted_out_tracking()?this._gdpr_update_persistence({clear_persistence:!0}):!this.has_opted_in_tracking()&&(this.get_config("opt_out_tracking_by_default")||_$3.cookie.get("mp_optout"))&&(_$3.cookie.remove("mp_optout"),this.opt_out_tracking({clear_persistence:this.get_config("opt_out_persistence_by_default")}))};MixpanelLib.prototype._gdpr_update_persistence=function(e){var o;if(e&&e.clear_persistence)o=!0;else if(e&&e.enable_persistence)o=!1;else return;!this.get_config("disable_persistence")&&this.persistence.disabled!==o&&this.persistence.set_disabled(o),o?this.stop_batch_senders():this._batchers_were_started&&this.start_batch_senders()};MixpanelLib.prototype._gdpr_call_func=function(e,o){return o=_$3.extend({track:_$3.bind(this.track,this),persistence_type:this.get_config("opt_out_tracking_persistence_type"),cookie_prefix:this.get_config("opt_out_tracking_cookie_prefix"),cookie_expiration:this.get_config("cookie_expiration"),cross_site_cookie:this.get_config("cross_site_cookie"),cross_subdomain_cookie:this.get_config("cross_subdomain_cookie"),cookie_domain:this.get_config("cookie_domain"),secure_cookie:this.get_config("secure_cookie"),ignore_dnt:this.get_config("ignore_dnt")},o),_$3.localStorage.is_supported()||(o.persistence_type="cookie"),e(this.get_config("token"),{track:o.track,trackEventName:o.track_event_name,trackProperties:o.track_properties,persistenceType:o.persistence_type,persistencePrefix:o.cookie_prefix,cookieDomain:o.cookie_domain,cookieExpiration:o.cookie_expiration,crossSiteCookie:o.cross_site_cookie,crossSubdomainCookie:o.cross_subdomain_cookie,secureCookie:o.secure_cookie,ignoreDnt:o.ignore_dnt})};MixpanelLib.prototype.opt_in_tracking=function(e){e=_$3.extend({enable_persistence:!0},e),this._gdpr_call_func(optIn,e),this._gdpr_update_persistence(e)};MixpanelLib.prototype.opt_out_tracking=function(e){e=_$3.extend({clear_persistence:!0,delete_user:!0},e),e.delete_user&&this.people&&this.people._identify_called()&&(this.people.delete_user(),this.people.clear_charges()),this._gdpr_call_func(optOut,e),this._gdpr_update_persistence(e)};MixpanelLib.prototype.has_opted_in_tracking=function(e){return this._gdpr_call_func(hasOptedIn,e)};MixpanelLib.prototype.has_opted_out_tracking=function(e){return this._gdpr_call_func(hasOptedOut,e)};MixpanelLib.prototype.clear_opt_in_out_tracking=function(e){e=_$3.extend({enable_persistence:!0},e),this._gdpr_call_func(clearOptInOut,e),this._gdpr_update_persistence(e)};MixpanelLib.prototype.report_error=function(e,o){console$1.error.apply(console$1.error,arguments);try{!o&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,o)}catch(s){console$1.error(s)}};MixpanelLib.prototype.init=MixpanelLib.prototype.init;MixpanelLib.prototype.reset=MixpanelLib.prototype.reset;MixpanelLib.prototype.disable=MixpanelLib.prototype.disable;MixpanelLib.prototype.time_event=MixpanelLib.prototype.time_event;MixpanelLib.prototype.track=MixpanelLib.prototype.track;MixpanelLib.prototype.track_links=MixpanelLib.prototype.track_links;MixpanelLib.prototype.track_forms=MixpanelLib.prototype.track_forms;MixpanelLib.prototype.track_pageview=MixpanelLib.prototype.track_pageview;MixpanelLib.prototype.register=MixpanelLib.prototype.register;MixpanelLib.prototype.register_once=MixpanelLib.prototype.register_once;MixpanelLib.prototype.unregister=MixpanelLib.prototype.unregister;MixpanelLib.prototype.identify=MixpanelLib.prototype.identify;MixpanelLib.prototype.alias=MixpanelLib.prototype.alias;MixpanelLib.prototype.name_tag=MixpanelLib.prototype.name_tag;MixpanelLib.prototype.set_config=MixpanelLib.prototype.set_config;MixpanelLib.prototype.get_config=MixpanelLib.prototype.get_config;MixpanelLib.prototype.get_property=MixpanelLib.prototype.get_property;MixpanelLib.prototype.get_distinct_id=MixpanelLib.prototype.get_distinct_id;MixpanelLib.prototype.toString=MixpanelLib.prototype.toString;MixpanelLib.prototype.opt_out_tracking=MixpanelLib.prototype.opt_out_tracking;MixpanelLib.prototype.opt_in_tracking=MixpanelLib.prototype.opt_in_tracking;MixpanelLib.prototype.has_opted_out_tracking=MixpanelLib.prototype.has_opted_out_tracking;MixpanelLib.prototype.has_opted_in_tracking=MixpanelLib.prototype.has_opted_in_tracking;MixpanelLib.prototype.clear_opt_in_out_tracking=MixpanelLib.prototype.clear_opt_in_out_tracking;MixpanelLib.prototype.get_group=MixpanelLib.prototype.get_group;MixpanelLib.prototype.set_group=MixpanelLib.prototype.set_group;MixpanelLib.prototype.add_group=MixpanelLib.prototype.add_group;MixpanelLib.prototype.remove_group=MixpanelLib.prototype.remove_group;MixpanelLib.prototype.track_with_groups=MixpanelLib.prototype.track_with_groups;MixpanelLib.prototype.start_batch_senders=MixpanelLib.prototype.start_batch_senders;MixpanelLib.prototype.stop_batch_senders=MixpanelLib.prototype.stop_batch_senders;MixpanelLib.prototype.start_session_recording=MixpanelLib.prototype.start_session_recording;MixpanelLib.prototype.stop_session_recording=MixpanelLib.prototype.stop_session_recording;MixpanelLib.prototype.get_session_recording_properties=MixpanelLib.prototype.get_session_recording_properties;MixpanelLib.prototype.DEFAULT_API_ROUTES=DEFAULT_API_ROUTES;MixpanelPersistence.prototype.properties=MixpanelPersistence.prototype.properties;MixpanelPersistence.prototype.update_search_keyword=MixpanelPersistence.prototype.update_search_keyword;MixpanelPersistence.prototype.update_referrer_info=MixpanelPersistence.prototype.update_referrer_info;MixpanelPersistence.prototype.get_cross_subdomain=MixpanelPersistence.prototype.get_cross_subdomain;MixpanelPersistence.prototype.clear=MixpanelPersistence.prototype.clear;var instances={},extend_mp=function(){_$3.each(instances,function(e,o){o!==PRIMARY_INSTANCE_NAME&&(mixpanel_master[o]=e)}),mixpanel_master._=_$3},override_mp_init_func=function(){mixpanel_master.init=function(e,o,s){if(s)return mixpanel_master[s]||(mixpanel_master[s]=instances[s]=create_mplib(e,o,s),mixpanel_master[s]._loaded()),mixpanel_master[s];var a=mixpanel_master;instances[PRIMARY_INSTANCE_NAME]?a=instances[PRIMARY_INSTANCE_NAME]:e&&(a=create_mplib(e,o,PRIMARY_INSTANCE_NAME),a._loaded(),instances[PRIMARY_INSTANCE_NAME]=a),mixpanel_master=a,init_type===INIT_SNIPPET&&(win[PRIMARY_INSTANCE_NAME]=mixpanel_master),extend_mp()}},add_dom_loaded_handler=function(){function e(){e.done||(e.done=!0,DOM_LOADED=!0,ENQUEUE_REQUESTS=!1,_$3.each(instances,function(a){a._dom_loaded()}))}function o(){try{document$1.documentElement.doScroll("left")}catch{setTimeout(o,1);return}e()}if(document$1.addEventListener)document$1.readyState==="complete"?e():document$1.addEventListener("DOMContentLoaded",e,!1);else if(document$1.attachEvent){document$1.attachEvent("onreadystatechange",e);var s=!1;try{s=win.frameElement===null}catch{}document$1.documentElement.doScroll&&s&&o()}_$3.register_event(win,"load",e,!0)};function init_as_module(e){return load_extra_bundle=e,init_type=INIT_MODULE,mixpanel_master=new MixpanelLib,override_mp_init_func(),mixpanel_master.init(),add_dom_loaded_handler(),mixpanel_master}function loadNoop(e,o){o()}init_as_module(loadNoop);function r(e){var o,s,a="";if(typeof e=="string"||typeof e=="number")a+=e;else if(typeof e=="object")if(Array.isArray(e))for(o=0;otypeof e=="number"&&!isNaN(e),d=e=>typeof e=="string",p=e=>typeof e=="function",m=e=>d(e)||p(e)?e:null,f=e=>reactExports.isValidElement(e)||d(e)||p(e)||u(e);function g(e,o,s){s===void 0&&(s=300);const{scrollHeight:a,style:$}=e;requestAnimationFrame(()=>{$.minHeight="initial",$.height=a+"px",$.transition=`all ${s}ms`,requestAnimationFrame(()=>{$.height="0",$.padding="0",$.margin="0",setTimeout(o,s)})})}function h(e){let{enter:o,exit:s,appendPosition:a=!1,collapse:$=!0,collapseDuration:c=300}=e;return function(nt){let{children:at,position:lt,preventExitTransition:et,done:it,nodeRef:st,isIn:ct}=nt;const ft=a?`${o}--${lt}`:o,pt=a?`${s}--${lt}`:s,gt=reactExports.useRef(0);return reactExports.useLayoutEffect(()=>{const wt=st.current,vt=ft.split(" "),_t=$t=>{$t.target===st.current&&(wt.dispatchEvent(new Event("d")),wt.removeEventListener("animationend",_t),wt.removeEventListener("animationcancel",_t),gt.current===0&&$t.type!=="animationcancel"&&wt.classList.remove(...vt))};wt.classList.add(...vt),wt.addEventListener("animationend",_t),wt.addEventListener("animationcancel",_t)},[]),reactExports.useEffect(()=>{const wt=st.current,vt=()=>{wt.removeEventListener("animationend",vt),$?g(wt,it,c):it()};ct||(et?vt():(gt.current=1,wt.className+=` ${pt}`,wt.addEventListener("animationend",vt)))},[ct]),React.createElement(React.Fragment,null,at)}}function y(e,o){return e!=null?{content:e.content,containerId:e.props.containerId,id:e.props.toastId,theme:e.props.theme,type:e.props.type,data:e.props.data||{},isLoading:e.props.isLoading,icon:e.props.icon,status:o}:{}}const v={list:new Map,emitQueue:new Map,on(e,o){return this.list.has(e)||this.list.set(e,[]),this.list.get(e).push(o),this},off(e,o){if(o){const s=this.list.get(e).filter(a=>a!==o);return this.list.set(e,s),this}return this.list.delete(e),this},cancelEmit(e){const o=this.emitQueue.get(e);return o&&(o.forEach(clearTimeout),this.emitQueue.delete(e)),this},emit(e){this.list.has(e)&&this.list.get(e).forEach(o=>{const s=setTimeout(()=>{o(...[].slice.call(arguments,1))},0);this.emitQueue.has(e)||this.emitQueue.set(e,[]),this.emitQueue.get(e).push(s)})}},T=e=>{let{theme:o,type:s,...a}=e;return React.createElement("svg",{viewBox:"0 0 24 24",width:"100%",height:"100%",fill:o==="colored"?"currentColor":`var(--toastify-icon-color-${s})`,...a})},E={info:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M12 0a12 12 0 1012 12A12.013 12.013 0 0012 0zm.25 5a1.5 1.5 0 11-1.5 1.5 1.5 1.5 0 011.5-1.5zm2.25 13.5h-4a1 1 0 010-2h.75a.25.25 0 00.25-.25v-4.5a.25.25 0 00-.25-.25h-.75a1 1 0 010-2h1a2 2 0 012 2v4.75a.25.25 0 00.25.25h.75a1 1 0 110 2z"}))},warning:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M23.32 17.191L15.438 2.184C14.728.833 13.416 0 11.996 0c-1.42 0-2.733.833-3.443 2.184L.533 17.448a4.744 4.744 0 000 4.368C1.243 23.167 2.555 24 3.975 24h16.05C22.22 24 24 22.044 24 19.632c0-.904-.251-1.746-.68-2.44zm-9.622 1.46c0 1.033-.724 1.823-1.698 1.823s-1.698-.79-1.698-1.822v-.043c0-1.028.724-1.822 1.698-1.822s1.698.79 1.698 1.822v.043zm.039-12.285l-.84 8.06c-.057.581-.408.943-.897.943-.49 0-.84-.367-.896-.942l-.84-8.065c-.057-.624.25-1.095.779-1.095h1.91c.528.005.84.476.784 1.1z"}))},success:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z"}))},error:function(e){return React.createElement(T,{...e},React.createElement("path",{d:"M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z"}))},spinner:function(){return React.createElement("div",{className:"Toastify__spinner"})}};function C(e){const[,o]=reactExports.useReducer(ft=>ft+1,0),[s,a]=reactExports.useState([]),$=reactExports.useRef(null),c=reactExports.useRef(new Map).current,nt=ft=>s.indexOf(ft)!==-1,at=reactExports.useRef({toastKey:1,displayedToast:0,count:0,queue:[],props:e,containerId:null,isToastActive:nt,getToast:ft=>c.get(ft)}).current;function lt(ft){let{containerId:pt}=ft;const{limit:gt}=at.props;!gt||pt&&at.containerId!==pt||(at.count-=at.queue.length,at.queue=[])}function et(ft){a(pt=>ft==null?[]:pt.filter(gt=>gt!==ft))}function it(){const{toastContent:ft,toastProps:pt,staleId:gt}=at.queue.shift();ct(ft,pt,gt)}function st(ft,pt){let{delay:gt,staleId:wt,...vt}=pt;if(!f(ft)||function(Jt){return!$.current||at.props.enableMultiContainer&&Jt.containerId!==at.props.containerId||c.has(Jt.toastId)&&Jt.updateId==null}(vt))return;const{toastId:_t,updateId:$t,data:Pt}=vt,{props:Nt}=at,Lt=()=>et(_t),Ft=$t==null;Ft&&at.count++;const Wt={...Nt,style:Nt.toastStyle,key:at.toastKey++,...Object.fromEntries(Object.entries(vt).filter(Jt=>{let[Kr,Ot]=Jt;return Ot!=null})),toastId:_t,updateId:$t,data:Pt,closeToast:Lt,isIn:!1,className:m(vt.className||Nt.toastClassName),bodyClassName:m(vt.bodyClassName||Nt.bodyClassName),progressClassName:m(vt.progressClassName||Nt.progressClassName),autoClose:!vt.isLoading&&(_r=vt.autoClose,vr=Nt.autoClose,_r===!1||u(_r)&&_r>0?_r:vr),deleteToast(){const Jt=y(c.get(_t),"removed");c.delete(_t),v.emit(4,Jt);const Kr=at.queue.length;if(at.count=_t==null?at.count-at.displayedToast:at.count-1,at.count<0&&(at.count=0),Kr>0){const Ot=_t==null?at.props.limit:1;if(Kr===1||Ot===1)at.displayedToast++,it();else{const gr=Ot>Kr?Kr:Ot;at.displayedToast=gr;for(let $o=0;$oYr in E)(Ot)&&(On=E[Ot](tn))),On}(Wt),p(vt.onOpen)&&(Wt.onOpen=vt.onOpen),p(vt.onClose)&&(Wt.onClose=vt.onClose),Wt.closeButton=Nt.closeButton,vt.closeButton===!1||f(vt.closeButton)?Wt.closeButton=vt.closeButton:vt.closeButton===!0&&(Wt.closeButton=!f(Nt.closeButton)||Nt.closeButton);let _o=ft;reactExports.isValidElement(ft)&&!d(ft.type)?_o=reactExports.cloneElement(ft,{closeToast:Lt,toastProps:Wt,data:Pt}):p(ft)&&(_o=ft({closeToast:Lt,toastProps:Wt,data:Pt})),Nt.limit&&Nt.limit>0&&at.count>Nt.limit&&Ft?at.queue.push({toastContent:_o,toastProps:Wt,staleId:wt}):u(gt)?setTimeout(()=>{ct(_o,Wt,wt)},gt):ct(_o,Wt,wt)}function ct(ft,pt,gt){const{toastId:wt}=pt;gt&&c.delete(gt);const vt={content:ft,props:pt};c.set(wt,vt),a(_t=>[..._t,wt].filter($t=>$t!==gt)),v.emit(4,y(vt,vt.props.updateId==null?"added":"updated"))}return reactExports.useEffect(()=>(at.containerId=e.containerId,v.cancelEmit(3).on(0,st).on(1,ft=>$.current&&et(ft)).on(5,lt).emit(2,at),()=>{c.clear(),v.emit(3,at)}),[]),reactExports.useEffect(()=>{at.props=e,at.isToastActive=nt,at.displayedToast=s.length}),{getToastToRender:function(ft){const pt=new Map,gt=Array.from(c.values());return e.newestOnTop&>.reverse(),gt.forEach(wt=>{const{position:vt}=wt.props;pt.has(vt)||pt.set(vt,[]),pt.get(vt).push(wt)}),Array.from(pt,wt=>ft(wt[0],wt[1]))},containerRef:$,isToastActive:nt}}function b(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientX:e.clientX}function I(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientY:e.clientY}function _$2(e){const[o,s]=reactExports.useState(!1),[a,$]=reactExports.useState(!1),c=reactExports.useRef(null),nt=reactExports.useRef({start:0,x:0,y:0,delta:0,removalDistance:0,canCloseOnClick:!0,canDrag:!1,boundingRect:null,didMove:!1}).current,at=reactExports.useRef(e),{autoClose:lt,pauseOnHover:et,closeToast:it,onClick:st,closeOnClick:ct}=e;function ft(Pt){if(e.draggable){Pt.nativeEvent.type==="touchstart"&&Pt.nativeEvent.preventDefault(),nt.didMove=!1,document.addEventListener("mousemove",vt),document.addEventListener("mouseup",_t),document.addEventListener("touchmove",vt),document.addEventListener("touchend",_t);const Nt=c.current;nt.canCloseOnClick=!0,nt.canDrag=!0,nt.boundingRect=Nt.getBoundingClientRect(),Nt.style.transition="",nt.x=b(Pt.nativeEvent),nt.y=I(Pt.nativeEvent),e.draggableDirection==="x"?(nt.start=nt.x,nt.removalDistance=Nt.offsetWidth*(e.draggablePercent/100)):(nt.start=nt.y,nt.removalDistance=Nt.offsetHeight*(e.draggablePercent===80?1.5*e.draggablePercent:e.draggablePercent/100))}}function pt(Pt){if(nt.boundingRect){const{top:Nt,bottom:Lt,left:Ft,right:Wt}=nt.boundingRect;Pt.nativeEvent.type!=="touchend"&&e.pauseOnHover&&nt.x>=Ft&&nt.x<=Wt&&nt.y>=Nt&&nt.y<=Lt?wt():gt()}}function gt(){s(!0)}function wt(){s(!1)}function vt(Pt){const Nt=c.current;nt.canDrag&&Nt&&(nt.didMove=!0,o&&wt(),nt.x=b(Pt),nt.y=I(Pt),nt.delta=e.draggableDirection==="x"?nt.x-nt.start:nt.y-nt.start,nt.start!==nt.x&&(nt.canCloseOnClick=!1),Nt.style.transform=`translate${e.draggableDirection}(${nt.delta}px)`,Nt.style.opacity=""+(1-Math.abs(nt.delta/nt.removalDistance)))}function _t(){document.removeEventListener("mousemove",vt),document.removeEventListener("mouseup",_t),document.removeEventListener("touchmove",vt),document.removeEventListener("touchend",_t);const Pt=c.current;if(nt.canDrag&&nt.didMove&&Pt){if(nt.canDrag=!1,Math.abs(nt.delta)>nt.removalDistance)return $(!0),void e.closeToast();Pt.style.transition="transform 0.2s, opacity 0.2s",Pt.style.transform=`translate${e.draggableDirection}(0)`,Pt.style.opacity="1"}}reactExports.useEffect(()=>{at.current=e}),reactExports.useEffect(()=>(c.current&&c.current.addEventListener("d",gt,{once:!0}),p(e.onOpen)&&e.onOpen(reactExports.isValidElement(e.children)&&e.children.props),()=>{const Pt=at.current;p(Pt.onClose)&&Pt.onClose(reactExports.isValidElement(Pt.children)&&Pt.children.props)}),[]),reactExports.useEffect(()=>(e.pauseOnFocusLoss&&(document.hasFocus()||wt(),window.addEventListener("focus",gt),window.addEventListener("blur",wt)),()=>{e.pauseOnFocusLoss&&(window.removeEventListener("focus",gt),window.removeEventListener("blur",wt))}),[e.pauseOnFocusLoss]);const $t={onMouseDown:ft,onTouchStart:ft,onMouseUp:pt,onTouchEnd:pt};return lt&&et&&($t.onMouseEnter=wt,$t.onMouseLeave=gt),ct&&($t.onClick=Pt=>{st&&st(Pt),nt.canCloseOnClick&&it()}),{playToast:gt,pauseToast:wt,isRunning:o,preventExitTransition:a,toastRef:c,eventHandlers:$t}}function L(e){let{closeToast:o,theme:s,ariaLabel:a="close"}=e;return React.createElement("button",{className:`Toastify__close-button Toastify__close-button--${s}`,type:"button",onClick:$=>{$.stopPropagation(),o($)},"aria-label":a},React.createElement("svg",{"aria-hidden":"true",viewBox:"0 0 14 16"},React.createElement("path",{fillRule:"evenodd",d:"M7.71 8.23l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75L1 11.98l3.75-3.75L1 4.48 2.48 3l3.75 3.75L9.98 3l1.48 1.48-3.75 3.75z"})))}function O$1(e){let{delay:o,isRunning:s,closeToast:a,type:$="default",hide:c,className:nt,style:at,controlledProgress:lt,progress:et,rtl:it,isIn:st,theme:ct}=e;const ft=c||lt&&et===0,pt={...at,animationDuration:`${o}ms`,animationPlayState:s?"running":"paused",opacity:ft?0:1};lt&&(pt.transform=`scaleX(${et})`);const gt=clsx("Toastify__progress-bar",lt?"Toastify__progress-bar--controlled":"Toastify__progress-bar--animated",`Toastify__progress-bar-theme--${ct}`,`Toastify__progress-bar--${$}`,{"Toastify__progress-bar--rtl":it}),wt=p(nt)?nt({rtl:it,type:$,defaultClassName:gt}):clsx(gt,nt);return React.createElement("div",{role:"progressbar","aria-hidden":ft?"true":"false","aria-label":"notification timer",className:wt,style:pt,[lt&&et>=1?"onTransitionEnd":"onAnimationEnd"]:lt&&et<1?null:()=>{st&&a()}})}const N=e=>{const{isRunning:o,preventExitTransition:s,toastRef:a,eventHandlers:$}=_$2(e),{closeButton:c,children:nt,autoClose:at,onClick:lt,type:et,hideProgressBar:it,closeToast:st,transition:ct,position:ft,className:pt,style:gt,bodyClassName:wt,bodyStyle:vt,progressClassName:_t,progressStyle:$t,updateId:Pt,role:Nt,progress:Lt,rtl:Ft,toastId:Wt,deleteToast:_r,isIn:vr,isLoading:_o,iconOut:Jt,closeOnClick:Kr,theme:Ot}=e,gr=clsx("Toastify__toast",`Toastify__toast-theme--${Ot}`,`Toastify__toast--${et}`,{"Toastify__toast--rtl":Ft},{"Toastify__toast--close-on-click":Kr}),$o=p(pt)?pt({rtl:Ft,position:ft,type:et,defaultClassName:gr}):clsx(gr,pt),On=!!Lt||!at,tn={closeToast:st,type:et,theme:Ot};let Yr=null;return c===!1||(Yr=p(c)?c(tn):reactExports.isValidElement(c)?reactExports.cloneElement(c,tn):L(tn)),React.createElement(ct,{isIn:vr,done:_r,position:ft,preventExitTransition:s,nodeRef:a},React.createElement("div",{id:Wt,onClick:lt,className:$o,...$,style:gt,ref:a},React.createElement("div",{...vr&&{role:Nt},className:p(wt)?wt({type:et}):clsx("Toastify__toast-body",wt),style:vt},Jt!=null&&React.createElement("div",{className:clsx("Toastify__toast-icon",{"Toastify--animate-icon Toastify__zoom-enter":!_o})},Jt),React.createElement("div",null,nt)),Yr,React.createElement(O$1,{...Pt&&!On?{key:`pb-${Pt}`}:{},rtl:Ft,theme:Ot,delay:at,isRunning:o,isIn:vr,closeToast:st,hide:it,type:et,style:$t,className:_t,controlledProgress:On,progress:Lt||0})))},M=function(e,o){return o===void 0&&(o=!1),{enter:`Toastify--animate Toastify__${e}-enter`,exit:`Toastify--animate Toastify__${e}-exit`,appendPosition:o}},R=h(M("bounce",!0));h(M("slide",!0));h(M("zoom"));h(M("flip"));const k$1=reactExports.forwardRef((e,o)=>{const{getToastToRender:s,containerRef:a,isToastActive:$}=C(e),{className:c,style:nt,rtl:at,containerId:lt}=e;function et(it){const st=clsx("Toastify__toast-container",`Toastify__toast-container--${it}`,{"Toastify__toast-container--rtl":at});return p(c)?c({position:it,rtl:at,defaultClassName:st}):clsx(st,m(c))}return reactExports.useEffect(()=>{o&&(o.current=a.current)},[]),React.createElement("div",{ref:a,className:"Toastify",id:lt},s((it,st)=>{const ct=st.length?{...nt}:{...nt,pointerEvents:"none"};return React.createElement("div",{className:et(it),style:ct,key:`container-${it}`},st.map((ft,pt)=>{let{content:gt,props:wt}=ft;return React.createElement(N,{...wt,isIn:$(wt.toastId),style:{...wt.style,"--nth":pt+1,"--len":st.length},key:`toast-${wt.key}`},gt)}))}))});k$1.displayName="ToastContainer",k$1.defaultProps={position:"top-right",transition:R,autoClose:5e3,closeButton:L,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,draggable:!0,draggablePercent:80,draggableDirection:"x",role:"alert",theme:"light"};let P,B$1=new Map,D$1=[],A=1;function z$1(){return""+A++}function F$1(e){return e&&(d(e.toastId)||u(e.toastId))?e.toastId:z$1()}function H$1(e,o){return B$1.size>0?v.emit(0,e,o):D$1.push({content:e,options:o}),o.toastId}function S(e,o){return{...o,type:o&&o.type||e,toastId:F$1(o)}}function q$1(e){return(o,s)=>H$1(o,S(e,s))}function Q(e,o){return H$1(e,S("default",o))}Q.loading=(e,o)=>H$1(e,S("default",{isLoading:!0,autoClose:!1,closeOnClick:!1,closeButton:!1,draggable:!1,...o})),Q.promise=function(e,o,s){let a,{pending:$,error:c,success:nt}=o;$&&(a=d($)?Q.loading($,s):Q.loading($.render,{...s,...$}));const at={isLoading:null,autoClose:null,closeOnClick:null,closeButton:null,draggable:null},lt=(it,st,ct)=>{if(st==null)return void Q.dismiss(a);const ft={type:it,...at,...s,data:ct},pt=d(st)?{render:st}:st;return a?Q.update(a,{...ft,...pt}):Q(pt.render,{...ft,...pt}),ct},et=p(e)?e():e;return et.then(it=>lt("success",nt,it)).catch(it=>lt("error",c,it)),et},Q.success=q$1("success"),Q.info=q$1("info"),Q.error=q$1("error"),Q.warning=q$1("warning"),Q.warn=Q.warning,Q.dark=(e,o)=>H$1(e,S("default",{theme:"dark",...o})),Q.dismiss=e=>{B$1.size>0?v.emit(1,e):D$1=D$1.filter(o=>e!=null&&o.options.toastId!==e)},Q.clearWaitingQueue=function(e){return e===void 0&&(e={}),v.emit(5,e)},Q.isActive=e=>{let o=!1;return B$1.forEach(s=>{s.isToastActive&&s.isToastActive(e)&&(o=!0)}),o},Q.update=function(e,o){o===void 0&&(o={}),setTimeout(()=>{const s=function(a,$){let{containerId:c}=$;const nt=B$1.get(c||P);return nt&&nt.getToast(a)}(e,o);if(s){const{props:a,content:$}=s,c={delay:100,...a,...o,toastId:o.toastId||e,updateId:z$1()};c.toastId!==e&&(c.staleId=e);const nt=c.render||$;delete c.render,H$1(nt,c)}},0)},Q.done=e=>{Q.update(e,{progress:1})},Q.onChange=e=>(v.on(4,e),()=>{v.off(4,e)}),Q.POSITION={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},Q.TYPE={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},v.on(2,e=>{P=e.containerId||e,B$1.set(P,e),D$1.forEach(o=>{v.emit(0,o.content,o.options)}),D$1=[]}).on(3,e=>{B$1.delete(e.containerId||e),B$1.size===0&&v.off(0).off(1).off(5)});let getRandomValues;const rnds8=new Uint8Array(16);function rng(){if(!getRandomValues&&(getRandomValues=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!getRandomValues))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return getRandomValues(rnds8)}const byteToHex=[];for(let e=0;e<256;++e)byteToHex.push((e+256).toString(16).slice(1));function unsafeStringify(e,o=0){return byteToHex[e[o+0]]+byteToHex[e[o+1]]+byteToHex[e[o+2]]+byteToHex[e[o+3]]+"-"+byteToHex[e[o+4]]+byteToHex[e[o+5]]+"-"+byteToHex[e[o+6]]+byteToHex[e[o+7]]+"-"+byteToHex[e[o+8]]+byteToHex[e[o+9]]+"-"+byteToHex[e[o+10]]+byteToHex[e[o+11]]+byteToHex[e[o+12]]+byteToHex[e[o+13]]+byteToHex[e[o+14]]+byteToHex[e[o+15]]}const randomUUID=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),native={randomUUID};function v4(e,o,s){if(native.randomUUID&&!o&&!e)return native.randomUUID();e=e||{};const a=e.random||(e.rng||rng)();return a[6]=a[6]&15|64,a[8]=a[8]&63|128,unsafeStringify(a)}const updateExecution=(e,o)=>api.put(`/agentexecutions/update/${e}`,o),getResources=e=>api.get(`/resources/get/all/${e}`),getTemplateResource=(e,o)=>api.get(`/resources/get/template/${e}/name/${o}`),uploadFile=async(e,o)=>{api$1.get("accessToken");let s=localStorage.getItem("accessTokenHuaxiaobao");try{return(await axios.post(`${baseUrl()}resources/add/${e}`,o,{headers:{Authorization:`Bearer ${s}`}})).data}catch(a){console.error("Upload failed:",a.response?a.response.data:a.message)}},shareFile=e=>api.get(`/resources/share/${e}`),publishToMarketplace=(e,o)=>api.post("/agent_templates/publish_template/with_executionid",{agent_execution_id:e,price:o}),formatBytes=(e,o=2)=>{if(e===0)return"0 Bytes";const s=1024,a=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],$=Math.floor(Math.log(e)/Math.log(s));return`${parseFloat((e/Math.pow(s,$)).toFixed(o))} ${a[$]}`},downloadFile=(e,o=null)=>{const s=api$1.get("accessToken"),a=`${baseUrl()}/resources/get/${e}`;if(localStorage.getItem("applicationEnvironment")==="PROD"){const c={Authorization:`Bearer ${s}`};return fetch(a,{headers:c}).then(nt=>nt.blob()).then(nt=>{if(o){const at=window.URL.createObjectURL(nt),lt=document.createElement("a");lt.href=at,lt.download=o,lt.click(),window.URL.revokeObjectURL(at)}else return nt}).catch(nt=>{console.error("Error downloading file:",nt)})}else if(o)window.open(a,"_blank");else return fetch(a).then(c=>c.blob()).catch(c=>{console.error("Error downloading file:",c)})},shareContent=e=>{shareFile(e).then(o=>{o.data.result=="success",alert(o.data.message)}).catch(o=>{console.error("Error fetching project:",o)})},downloadAllFiles=(e,o)=>{const s=new JSZip,a=[],$={};e.forEach((c,nt)=>{$[c.name]?$[c.name]++:$[c.name]=1;let at=c.name;if($[c.name]>1){const et=c.name.lastIndexOf("."),it=c.name.substring(0,et),st=c.name.substring(et+1);at=`${it} (${$[c.name]-1}).${st}`}const lt=downloadFile(c.id).then(et=>{const it=new Blob([et],{type:c.type});s.file(at,it)}).catch(et=>{console.error("Error downloading file:",et)});a.push(lt)}),Promise.all(a).then(()=>{s.generateAsync({type:"blob"}).then(c=>{const nt=new Date,at=`${nt.getFullYear()}-${("0"+(nt.getMonth()+1)).slice(-2)}-${("0"+nt.getDate()).slice(-2)}_${nt.getHours()}:${nt.getMinutes()}:${nt.getSeconds()}`.replace(/:/g,"-"),lt=`${o}_${at}.zip`,et=document.createElement("a");et.href=URL.createObjectURL(c),et.download=lt,et.click()}).catch(c=>{console.error("Error generating zip:",c)})})},getFileExtension=e=>{const o=e.split(".");return o[o.length-1]},setLocalStorageValue=(e,o,s)=>{s(o),localStorage.setItem(e,o)},returnResourceIcon=e=>{const o=e.type;switch(!0){case o.includes("image"):return"/images/img_file.svg";case o==="application/pdf":return"/images/pdf_file.svg";case(o==="application/txt"||o==="text/plain"):return"/images/txt_file.svg";default:return"/images/default_file.svg"}};function openDatabase(){const e=indexedDB.open("MyFilesDB",1);return new Promise((o,s)=>{e.onerror=()=>s(e.error),e.onsuccess=()=>o(e.result),e.onupgradeneeded=a=>{const $=a.target.result;$.objectStoreNames.contains("files")||$.createObjectStore("files",{keyPath:"id"})}})}async function saveFile(e,o){return new Promise((s,a)=>{openDatabase().then($=>{const nt=$.transaction("files","readwrite").objectStore("files"),at=nt.get(o);at.onsuccess=()=>{if(at.result)$.close(),s(URL.createObjectURL(at.result.file));else{const lt=nt.put({id:o,file:e});lt.onerror=()=>{$.close(),a(lt.error)},lt.onsuccess=()=>{const et=URL.createObjectURL(e);$.close(),s(et)}}},at.onerror=()=>{$.close(),a(at.error)}}).catch($=>{a($)})})}function parseIdentifier(e){const o=e.split("_");if(o.length<3)return console.error("Invalid identifier: expected at least three parts"),null;const s=o.pop(),a=o.pop();return{filename:o.join("_"),filetype:a,filesize:s}}async function getLocalResourceURL(e,o){if(!e)return{url:null,file:null};const{filename:s,filetype:a,filesize:$}=parseIdentifier(e);var c=await getFileUrl(e,!1),nt=null;if(!c&&o){const lt=await fetchResources(o,s);if(lt){var at=await fetchMedia_indirect(lt);c=URL.createObjectURL(at);const it=s.toLowerCase().match(/\.(jpg|png|webp|jpeg)$/)?.[0].substring(1),st=it?`image/${it}`:at.type;nt=new File([at],s,{type:st}),await saveFile(nt,e)}}else nt=await getFileObject(e);return{url:c,file:nt}}async function fetchResources(e,o){try{const a=(await getTemplateResource(e,o)).data;return a&&a.length>0&&a.find(c=>c.name===o)||null}catch(s){return console.error("Error fetching resources:",s),null}}async function getFileUrl(e,o=!1){const s=await openDatabase(),$=s.transaction("files","readwrite").objectStore("files"),c=$.get(e);return new Promise((nt,at)=>{c.onerror=()=>{s.close(),at(c.error)},c.onsuccess=()=>{const lt=c.result?c.result.file:null;if(lt){const et=URL.createObjectURL(lt);if(o){const it=$.delete(e);it.onsuccess=()=>{s.close(),nt(null)},it.onerror=()=>{s.close(),at("Error deleting file from database")}}else s.close(),nt(et)}else s.close(),nt(null)}})}async function getFileObject(e,o=!1){const s=await openDatabase(),$=s.transaction("files","readwrite").objectStore("files"),c=$.get(e);return new Promise((nt,at)=>{c.onerror=()=>{s.close(),at(c.error)},c.onsuccess=()=>{const lt=c.result?c.result.file:null;if(lt)if(o){const et=$.delete(e);et.onsuccess=()=>{s.close(),nt(null)},et.onerror=()=>{s.close(),nt(null)}}else s.close(),nt(lt);else s.close(),nt(null)}})}async function uploadResource(e,o,s="INPUT"){const a=new FormData;return o.file instanceof Blob||(o.file=await getFileObject(`${o.name}_${o.type}_${o.size}`)),a.append("file",o.file),a.append("name",o.name),a.append("size",o.size),a.append("type",o.type),a.append("channel",s),await uploadFile(e,a)}function MediaDisplay({url:e,type:o="",onMediaClick:s,style:a,content:$="",contentstyle:c=null,muted:nt=!1,controls:at=!0,autoplay:lt=!0,watermark:et=!1}){const[it,st]=reactExports.useState(!1);reactExports.useState(o);const ct=()=>{st(!0),document.body.style.cursor="zoom-in"},ft=()=>{st(!1),document.body.style.cursor="auto"},pt=wt=>{if(o==""){const vt=wt.split(".").pop();return["jpg","jpeg","png","gif","webp"].includes(vt)?"image/"+vt:["mp4","mov"].includes(vt)?"video/"+vt:["mp3","wav"].includes(vt)?"audio/"+vt:["json"].includes(vt)?"application/json":""}else return o};function gt(){return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[pt(e).startsWith("image/")&&jsxRuntimeExports.jsxs("div",{style:{position:"relative",maxHeight:"100%",height:"inherit"},children:[jsxRuntimeExports.jsx("img",{src:e,style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"auto",marginTop:"1px",display:"block",marginLeft:"auto",marginRight:"auto",borderRadius:"8px"},onMouseEnter:ct,onMouseLeave:ft,onClick:s,alt:"加载中"}),et&&jsxRuntimeExports.jsx("img",{src:"/logo/hxb_logo1.png",style:{position:"absolute",bottom:"10px",right:"10px",width:"50%",height:"auto",opacity:.2,zIndex:1},alt:"水印"})]}),(pt(e).startsWith("video/")||e.includes("mp4"))&&jsxRuntimeExports.jsxs("div",{style:{position:"relative"},children:[jsxRuntimeExports.jsxs("video",{style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"auto",marginTop:"1px",display:"block",marginLeft:"auto",marginRight:"auto",borderRadius:"8px"},muted:nt,controls:at,autoPlay:lt,playsInline:!0,loop:!0,onMouseEnter:ct,onMouseLeave:ft,onClick:s,alt:"加载中",children:[jsxRuntimeExports.jsx("source",{src:e,type:"video/mp4"}),"Your browser does not support the video tag."]}),et&&jsxRuntimeExports.jsx("img",{src:"/logo/hxb_logo1.png",style:{position:"absolute",bottom:"10px",right:"10px",width:"50%",height:"auto",opacity:.2,zIndex:1},alt:"水印"})]}),pt(e).startsWith("audio/")&&jsxRuntimeExports.jsxs("audio",{style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"auto",marginTop:"1px",display:"block",marginLeft:"auto",marginRight:"auto",borderRadius:"8px"},muted:nt,controls:at,onMouseEnter:ct,onMouseLeave:ft,onClick:s,alt:"加载中",children:[jsxRuntimeExports.jsx("source",{src:e,type:"audio/mpeg"}),"Your browser does not support the audio tag."]}),pt(e).startsWith("application/json")&&jsxRuntimeExports.jsxs("div",{style:c||{maxWidth:"100%",width:"auto",maxHeight:"100%",height:"3rem",marginTop:"1px",display:"flex",justifyContent:"center",alignItems:"center",marginLeft:"auto",marginRight:"auto",borderRadius:"8px",fontSize:"13px",flexDirection:"column"},onMouseEnter:ct,onMouseLeave:ft,onClick:s,children:[$," 工作流文件只有作者可以看得到, 用户不可见"]})]})}return jsxRuntimeExports.jsx("div",{style:a||{maxWidth:"100%",maxHeight:"100%",width:"inherit",height:"inherit"},children:gt()})}function ImageModal({imageUrl:e,closeModal:o}){const s=reactExports.useRef(null),a=reactExports.useRef(null),[$,c]=reactExports.useState(!1),[nt,at]=reactExports.useState(0),[lt,et]=reactExports.useState(0),[it,st]=reactExports.useState(0),[ct,ft]=reactExports.useState(0),[pt,gt]=reactExports.useState(1);reactExports.useEffect(()=>{const Lt=Ft=>{Ft.key==="Escape"&&o()};return document.addEventListener("keydown",Lt),()=>{document.removeEventListener("keydown",Lt)}},[o]);const wt=reactExports.useCallback(Lt=>{Lt.preventDefault(),c(!0),at(Lt.pageX),et(Lt.pageY),st(s.current.scrollLeft),ft(s.current.scrollTop),s.current.style.cursor="grabbing"},[]),vt=reactExports.useCallback(Lt=>{if(!$)return;Lt.preventDefault();const Ft=Lt.pageX,Wt=Lt.pageY,_r=(Ft-nt)*3,vr=(Wt-lt)*3;s.current.scrollLeft=it-_r,s.current.scrollTop=ct-vr},[$,nt,lt,it,ct]),_t=reactExports.useCallback(()=>{c(!1),s.current.style.cursor="grab"},[]),$t=reactExports.useCallback(()=>{$&&(c(!1),s.current.style.cursor="grab")},[$]),Pt=reactExports.useCallback(Lt=>{Lt.preventDefault()},[]),Nt=reactExports.useCallback(Lt=>{const Ft=pt+Lt.deltaY*-.01;gt(Math.min(Math.max(.5,Ft),3))},[pt]);return reactExports.useEffect(()=>{if(a.current){const Lt=a.current.naturalWidth,Ft=a.current.naturalHeight;a.current.style.width=`${Lt*pt}px`,a.current.style.height=`${Ft*pt}px`}},[pt]),reactExports.useEffect(()=>{Q.success("滚轮放大缩小,拖动上下观察,ESC健或者右上角X关闭",{autoClose:1800})},[]),jsxRuntimeExports.jsxs("div",{className:"modal_max_image",style:{overflow:"auto",position:"fixed",top:0,left:0},onWheel:Nt,children:[jsxRuntimeExports.jsx("button",{onClick:o,style:{position:"absolute",top:"10px",right:"10px",background:"red",border:"none",color:"white",fontSize:"30px",cursor:"pointer",outline:"none",zIndex:"2000"},children:"✕"}),jsxRuntimeExports.jsx("div",{className:"modal-content_max_image",ref:s,onMouseDown:wt,onMouseMove:vt,onMouseUp:_t,onMouseLeave:$t,style:{maxWidth:"100%",overflow:"auto",paddingTop:"40px"},children:jsxRuntimeExports.jsx("img",{src:e,ref:a,alt:"Original Picture",style:{display:"block",height:"auto",width:"auto"},onDragStart:Pt})})]})}async function fetchMedia_indirect(e){const o=api$1.get("accessToken"),s=`${baseUrl()}/resources/get/${e.id}`,a={Authorization:`Bearer ${o}`};try{return await(await fetch(s,{headers:a})).blob()}catch($){console.error("Error fetching image:",$)}}function handleImageScale(e){const s=e.width,a=e.height,$=s/a;let c,nt;s>a?(c=Math.min(s,2048),nt=c/$):(nt=Math.min(a,2048),c=nt*$);const at=c/s;return{width:Math.round(c),height:Math.round(nt),samScale:at}}function loadImage(e){return new Promise((o,s)=>{const a=new Image;a.onload=()=>o(a),a.onerror=s,a.src=e})}function resizeImage(e,o,s,a){const $={file:a,name:a.name,size:a.size,type:a.type};return new Promise((c,nt)=>{const at=document.createElement("canvas"),lt=at.getContext("2d");at.width=o,at.height=s,lt.drawImage(e,0,0,o,s),at.toBlob(et=>{const it=new File([et],$.name,{type:$.type,lastModified:Date.now()}),st={...$,file:it,size:it.size};c(st)},$.type)})}function generateUniqueFilename(e){const o=new Date,s=o.getFullYear()+("0"+(o.getMonth()+1)).slice(-2)+("0"+o.getDate()).slice(-2)+"_"+("0"+o.getHours()).slice(-2)+("0"+o.getMinutes()).slice(-2)+("0"+o.getSeconds()).slice(-2),a=v4().replace(/-/g,""),$=`${s}_${a}_`,c=e.split("/").pop();return`${$}${c}`}const fetchMediaURL=async e=>{const o=api$1.get("accessToken"),s=`${baseUrl()}/resources/getresourceurl/${e.id}`,a={Authorization:`Bearer ${o}`};try{const $=await fetch(s,{headers:a});if(!$.ok)throw new Error(`HTTP error! status: ${$.status}`);const c=await $.json();return console.log("Resource URL:",c.url),c.url}catch($){console.error("Error fetching media:",$)}},uploadParameterFiles=(e,o)=>{const s=e.map(a=>{if(a.type==="file"||a.type==="image_editer"||a.type==="combo_image_selection"&&a.value.file){const $=a.value;uploadResource(o,$,"INPUT").then(c=>(console.log("Upload successful:",c),Promise.resolve())).catch(c=>(console.error("Error uploading resource:",c),alert("不支持这个文件类型"+o),Promise.reject(c)))}else{if(a.type==="mask")return a.value.forEach(c=>{uploadResource(o,c,"INPUT").then(nt=>{console.log("Upload successful:",nt)}).catch(nt=>(console.error("Error uploading resource:",nt),alert("不支持这个文件类型 "+o),Promise.reject(nt)))}),Promise.resolve();if(a.type==="workflow"){const $=a.value;return uploadParameterFiles($,o),Promise.resolve()}else return Promise.resolve()}});Promise.all(s).then(()=>{console.info("success uploading files:")}).catch(a=>{console.error("Error uploading files:",a)})},uploadLogos=(e,o,s=!1)=>{const a=e.map($=>{if($.type=="file"){const c=$.value;return uploadResource(o,c,s?"PUBLIC":"LOGO_AGENT").catch(nt=>(console.error("Error uploading resource:",nt),alert("不支持这个文件类型"+o),Promise.reject(nt)))}else return Promise.resolve()});Promise.all(a).then(()=>{}).catch($=>{console.error("Error uploading files:",$)})},fetchAndSetImage=async e=>{const o=`resource_${e.id}`;let s=await getFileUrl(o);return s||(s=await fetchMediaURL(e)),s},fileDisplayAble=async e=>!!(e.type.startsWith("image/")||e.type.startsWith("video/")||e.type.startsWith("audio/")||e.type==="application/misc"&&["mp3","wav"].includes(getFileExtension(e.name))||e.type==="application/octet-stream"&&["png","jpg","jpeg","webp"].includes(getFileExtension(e.name))||e.type==="application/misc"&&e.name.toLowerCase().endsWith(".mp4")),transformNodesFromFile=async e=>new Promise((o,s)=>{let a=new FileReader;a.onload=function($){try{let c=JSON.parse($.target.result),nt=[],at=0,lt=0;for(let et in c)if(c.hasOwnProperty(et)&&c[et].class_type=="ComfyUIAppstoreParam"){let it=c[et];const st=[0,it.inputs&&it.inputs.序号,it.inputs&&it.inputs.参数名称,it.inputs&&it.inputs.类型,it.inputs&&it.inputs.数值约束或依赖项,it.inputs&&it.inputs.替换项];if(st){let ct=tranformNodes(st,it.inputs&&it.inputs.标注节点接入[0]);nt.push(ct),at+=1}}else c.hasOwnProperty(et)&&c[et].class_type=="SaveImageWebsocket"&&(lt+=1);at<1?s(new Error("文件不符合要求,至少包括一个ComfyUIAppstoreParam节点")):(nt.sort((et,it)=>et.index-it.index),o(nt))}catch(c){s(c)}},a.onerror=function($){s($)},a.readAsText(e)}),tranformNodes=(e,o)=>{if(e){let s=e[1]||"",a=e[2]||"",$=e[3]||"",c=e[4]||"",nt=e[5]||"",at={index:s,name:a,type:$,accept:c,value:"",target:nt,key:o};return $==="combo_image_selection"?c==="模特"?at.options='[{"value":"/app/workspace/public/new_ref_models/男模特07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B907.png"},{"value":"/app/workspace/public/new_ref_models/男模特06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B906.png"},{"value":"/app/workspace/public/new_ref_models/男模特05.jpg","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B905.jpg"},{"value":"/app/workspace/public/new_ref_models/男模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/男模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/男模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/男模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B901.png"},{"value":"/app/workspace/public/new_ref_models/女模特14.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B914.png"},{"value":"/app/workspace/public/new_ref_models/女模特13.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B913.png"},{"value":"/app/workspace/public/new_ref_models/女模特12.jpg","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B912.jpg"},{"value":"/app/workspace/public/new_ref_models/女模特11.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B911.png"},{"value":"/app/workspace/public/new_ref_models/女模特10.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B910.png"},{"value":"/app/workspace/public/new_ref_models/女模特09.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B909.png"},{"value":"/app/workspace/public/new_ref_models/女模特08.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B908.png"},{"value":"/app/workspace/public/new_ref_models/女模特07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B907.png"},{"value":"/app/workspace/public/new_ref_models/女模特06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B906.png"},{"value":"/app/workspace/public/new_ref_models/女模特05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B905.png"},{"value":"/app/workspace/public/new_ref_models/女模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/女模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/女模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/女模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B901.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特10.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B910.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特09.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B909.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特08.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B908.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B907.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B906.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B905.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/儿童模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B901.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B905.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B904.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B903.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B902.png"},{"value":"/app/workspace/public/new_ref_models/中老年模特01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B901.png"}]':c==="背景"?at.options='[{"value":"/app/workspace/public/new_ref_backgrounds/酒店大堂03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8203.png"},{"value":"/app/workspace/public/new_ref_backgrounds/酒店大堂02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8202.png"},{"value":"/app/workspace/public/new_ref_backgrounds/酒店大堂01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8201.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D05.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D04.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D03.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D02.png"},{"value":"/app/workspace/public/new_ref_backgrounds/街拍01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D01.png"},{"value":"/app/workspace/public/new_ref_backgrounds/草地01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%8D%89%E5%9C%B001.png"},{"value":"/app/workspace/public/new_ref_backgrounds/背景墙01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%83%8C%E6%99%AF%E5%A2%9901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/纯色背景-白.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%99%BD.png"},{"value":"/app/workspace/public/new_ref_backgrounds/纯色背景-灰白.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0%E7%99%BD.png"},{"value":"/app/workspace/public/new_ref_backgrounds/纯色背景-灰.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0.png"},{"value":"/app/workspace/public/new_ref_backgrounds/秋天03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A903.png"},{"value":"/app/workspace/public/new_ref_backgrounds/秋天02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/秋天01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/湖边02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/湖边01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B906.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B905.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B904.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B903.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/海边01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A204.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A203.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A202.png"},{"value":"/app/workspace/public/new_ref_backgrounds/庭院01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A201.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内背景墙02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内背景墙01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8503.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8502.png"},{"value":"/app/workspace/public/new_ref_backgrounds/室内01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8501.png"},{"value":"/app/workspace/public/new_ref_backgrounds/咖啡厅03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8503.png"},{"value":"/app/workspace/public/new_ref_backgrounds/咖啡厅02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8502.png"},{"value":"/app/workspace/public/new_ref_backgrounds/咖啡厅01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8501.png"},{"value":"/app/workspace/public/new_ref_backgrounds/办公室02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A402.png"},{"value":"/app/workspace/public/new_ref_backgrounds/办公室01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A401.png"},{"value":"/app/workspace/public/new_ref_backgrounds/冬天03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A903.png"},{"value":"/app/workspace/public/new_ref_backgrounds/冬天02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A902.png"},{"value":"/app/workspace/public/new_ref_backgrounds/冬天01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A901.png"},{"value":"/app/workspace/public/new_ref_backgrounds/公园02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD02.png"},{"value":"/app/workspace/public/new_ref_backgrounds/公园01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD01.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景09.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF09.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景08.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF08.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景07.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF07.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景06.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF06.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景05.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF05.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景04.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF04.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景03.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF03.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景02.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF02.png"},{"value":"/app/workspace/public/new_ref_backgrounds/光影背景01.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF01.png"}]':c==="近景"&&(at.options='[{"value":"/app/workspace/public/backgrounds/9.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/9.png"},{"value":"/app/workspace/public/backgrounds/8.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/8.png"},{"value":"/app/workspace/public/backgrounds/7.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/7.png"},{"value":"/app/workspace/public/backgrounds/6.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/6.png"},{"value":"/app/workspace/public/backgrounds/5.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/5.png"},{"value":"/app/workspace/public/backgrounds/4.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/4.png"},{"value":"/app/workspace/public/backgrounds/39.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/39.png"},{"value":"/app/workspace/public/backgrounds/38.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/38.png"},{"value":"/app/workspace/public/backgrounds/37.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/37.png"},{"value":"/app/workspace/public/backgrounds/36.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/36.png"},{"value":"/app/workspace/public/backgrounds/35.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/35.png"},{"value":"/app/workspace/public/backgrounds/34.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/34.png"},{"value":"/app/workspace/public/backgrounds/33.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/33.png"},{"value":"/app/workspace/public/backgrounds/32.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/32.png"},{"value":"/app/workspace/public/backgrounds/31.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/31.png"},{"value":"/app/workspace/public/backgrounds/30.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/30.png"},{"value":"/app/workspace/public/backgrounds/3.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/3.png"},{"value":"/app/workspace/public/backgrounds/29.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/29.png"},{"value":"/app/workspace/public/backgrounds/28.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/28.png"},{"value":"/app/workspace/public/backgrounds/27.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/27.png"},{"value":"/app/workspace/public/backgrounds/26.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/26.png"},{"value":"/app/workspace/public/backgrounds/25.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/25.png"},{"value":"/app/workspace/public/backgrounds/24.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/24.png"},{"value":"/app/workspace/public/backgrounds/23.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/23.png"},{"value":"/app/workspace/public/backgrounds/22.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/22.png"},{"value":"/app/workspace/public/backgrounds/21.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/21.png"},{"value":"/app/workspace/public/backgrounds/20.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/20.png"},{"value":"/app/workspace/public/backgrounds/2.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/2.png"},{"value":"/app/workspace/public/backgrounds/19.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/19.png"},{"value":"/app/workspace/public/backgrounds/18.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/18.png"},{"value":"/app/workspace/public/backgrounds/17.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/17.png"},{"value":"/app/workspace/public/backgrounds/16.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/16.png"},{"value":"/app/workspace/public/backgrounds/15.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/15.png"},{"value":"/app/workspace/public/backgrounds/14.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/14.png"},{"value":"/app/workspace/public/backgrounds/12.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/12.png"},{"value":"/app/workspace/public/backgrounds/11.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/11.png"},{"value":"/app/workspace/public/backgrounds/10.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/10.png"},{"value":"/app/workspace/public/backgrounds/1.png","option":"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/1.png"}]'):$==="selection"?at.options=c:$==="mask"?at.maskSourceUrl=c:$==="text"&&(at.default=c,at.value=c),at}else return null},container="_container_43fx0_1",title_box="_title_box_43fx0_7",title_text="_title_text_43fx0_14",wrapper="_wrapper_43fx0_24",agent_active="_agent_active_43fx0_29",text_block="_text_block_43fx0_36",form_label="_form_label_43fx0_45",item_title_area="_item_title_area_43fx0_55",form_label_text="_form_label_text_43fx0_68",form_label_con="_form_label_con_43fx0_78",form_label_red="_form_label_red_43fx0_98",page_title="_page_title_43fx0_106",tool_text="_tool_text_43fx0_118",detail_top="_detail_top_43fx0_127",detail_body="_detail_body_43fx0_136",detail_content="_detail_content_43fx0_142",detail_content_rightpanel="_detail_content_rightpanel_43fx0_151",tab_button="_tab_button_43fx0_162",tab_text="_tab_text_43fx0_178",run_history_button="_run_history_button_43fx0_190",run_button="_run_button_43fx0_201",pause_button="_pause_button_43fx0_219",history_box="_history_box_43fx0_235",agent_detailed_information="_agent_detailed_information_43fx0_248",notification_bubble="_notification_bubble_43fx0_264",history_info="_history_info_43fx0_277",feed_icon="_feed_icon_43fx0_288",custom_task_box="_custom_task_box_43fx0_295",console_icons="_console_icons_43fx0_307",maintainance="_maintainance_43fx0_311",detail_name="_detail_name_43fx0_322",separator="_separator_43fx0_331",agent_info_box="_agent_info_box_43fx0_337",agent_info_tools="_agent_info_tools_43fx0_344",resources="_resources_43fx0_351",agent_resources="_agent_resources_43fx0_357",large_text_box="_large_text_box_43fx0_362",show_more_button="_show_more_button_43fx0_367",single_line_block="_single_line_block_43fx0_374",three_dots="_three_dots_43fx0_381",more_details="_more_details_43fx0_388",more_details_wrapper="_more_details_wrapper_43fx0_394",task_header="_task_header_43fx0_401",text_12_n="_text_12_n_43fx0_409",notification_circle="_notification_circle_43fx0_422",delete_agent_modal_label="_delete_agent_modal_label_43fx0_441",delete_button="_delete_button_43fx0_451",delete_modal_text="_delete_modal_text_43fx0_469",rdtPicker="_rdtPicker_43fx0_479",permission_changes="_permission_changes_43fx0_518",modal_buttons="_modal_buttons_43fx0_524",modal_info_class="_modal_info_class_43fx0_530",table_contents="_table_contents_43fx0_535",create_settings_button="_create_settings_button_43fx0_544",button_margin="_button_margin_43fx0_551",dropdown_separator="_dropdown_separator_43fx0_555",dropdown_container_agent="_dropdown_container_agent_43fx0_561",dropdown_item_agent="_dropdown_item_agent_43fx0_575",image_selection_container="_image_selection_container_43fx0_581",image_option="_image_option_43fx0_591",image_selected="_image_selected_43fx0_603",combo_image_option="_combo_image_option_43fx0_626",combo_image_option_old="_combo_image_option_old_43fx0_646",imageContainer="_imageContainer_43fx0_685",overlay="_overlay_43fx0_689",image_list_container="_image_list_container_43fx0_719",button_container="_button_container_43fx0_728",more_button="_more_button_43fx0_735",inputMedium="_inputMedium_43fx0_765",nameInput="_nameInput_43fx0_774",dropzone="_dropzone_43fx0_781",previewContainer="_previewContainer_43fx0_791",fullWidthImage="_fullWidthImage_43fx0_797",closeButton="_closeButton_43fx0_803",modal="_modal_43fx0_524",close="_close_43fx0_803",myQuestTab="_myQuestTab_43fx0_869",downBth="_downBth_43fx0_881",picListBot="_picListBot_43fx0_894",compileCon="_compileCon_43fx0_899",stateInteraction="_stateInteraction_43fx0_907",styles={container,title_box,title_text,wrapper,agent_active,text_block,form_label,item_title_area,form_label_text,form_label_con,form_label_red,page_title,tool_text,detail_top,detail_body,detail_content,detail_content_rightpanel,tab_button,tab_text,run_history_button,run_button,pause_button,history_box,agent_detailed_information,notification_bubble,history_info,feed_icon,custom_task_box,console_icons,maintainance,detail_name,separator,agent_info_box,agent_info_tools,resources,agent_resources,large_text_box,show_more_button,single_line_block,three_dots,more_details,more_details_wrapper,task_header,text_12_n,notification_circle,delete_agent_modal_label,delete_button,delete_modal_text,rdtPicker,permission_changes,modal_buttons,modal_info_class,table_contents,create_settings_button,button_margin,dropdown_separator,dropdown_container_agent,dropdown_item_agent,image_selection_container,image_option,image_selected,combo_image_option,combo_image_option_old,imageContainer,overlay,image_list_container,button_container,more_button,inputMedium,nameInput,dropzone,previewContainer,fullWidthImage,closeButton,"media-container":"_media-container_43fx0_816",modal,"modal-content":"_modal-content_43fx0_843",close,myQuestTab,downBth,picListBot,compileCon,stateInteraction};function FileUpload({index:e,param:o,handleInputChange:s,previewUrl:a,visible:$=!0,verbose:c=!0}){api$1.get("userType");const[nt,at]=reactExports.useState(!1),[lt,et]=reactExports.useState(!0),it=reactExports.useRef(null),st=reactExports.useRef(null),ct=vt=>{vt.preventDefault(),at(!0)},ft=vt=>{vt.preventDefault(),at(!1)},pt=vt=>{vt.preventDefault()},gt=vt=>{if(vt.stopPropagation(),lt){alert("请稍等加载中");return}vt.preventDefault(),at(!1);const _t=vt.dataTransfer.files[0];if(_t){const $t=o.accept.split(","),Pt=_t.name.split(".").pop().toLowerCase();if($t==""||$t.includes(`.${Pt}`)){const Nt={target:{name:o.name,files:[_t]}};s(e,Nt)}else alert("文件类型暂不支持,请上传如下类型文件:"+o.accept)}},wt=vt=>{vt.preventDefault(),vt.target.files[0]&&s(e,vt)};return reactExports.useEffect(()=>{o.type=="file"&&o.value&&!a?et(!0):et(!1)},[a]),jsxRuntimeExports.jsxs("div",{className:`my-file-drop-area ${nt?"dragging":""}`,onDragEnter:ct,onDragLeave:ft,onDragOver:pt,onDrop:gt,onClick:()=>{it.current.click()},style:{position:"relative",width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%",background:"none"},children:[jsxRuntimeExports.jsx("input",{type:"file",ref:it,style:{display:"none"},name:o.name,accept:o.accept,onChange:vt=>{wt(vt)}}),a?jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:$&&jsxRuntimeExports.jsxs("div",{style:{width:"80%",height:"100%",objectFit:"contain",position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"},ref:st,children:[jsxRuntimeExports.jsx(MediaDisplay,{url:a,content:o.value?.name?o.value.name:"",type:o.value?.type?o.value.type:"image",alt:"Preview"}),jsxRuntimeExports.jsx("button",{type:"button",className:"cancel",onClick:vt=>{vt.stopPropagation(),it.current.value="",s(e,null)},style:{position:"absolute",top:"0px",right:"10px",padding:"2px",fontSize:"10px",borderRadius:"5%",border:"none",cursor:"pointer"},children:"X"})]})}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:lt?jsxRuntimeExports.jsxs("p",{style:{textAlign:"center",margin:0,fontSize:"12px"},children:[jsxRuntimeExports.jsx("img",{className:"mix_blend_mode mr_7",loading:"lazy",width:14,height:14,src:"/images/loading.gif",alt:"loading-icon"}),"加载中,稍等。或者点击上传新的图像"]}):jsxRuntimeExports.jsx("p",{style:{textAlign:"center",margin:0,fontSize:"12px"},children:window.innerWidth>1e3?"点击上传, 或者拖入文件:"+(o.accept?o.accept:".json"):c?"点击上传, 或者拖入文件":"+"})})]})}const ImageList=({optionsObject:e,param:o,handleImageSelect:s,paramIndex:a})=>{const[$,c]=reactExports.useState(20),nt=10,at=2,lt=()=>{c(ct=>ct+nt*at)},et=()=>{c(20)},it=e.length>$,st=$>nt*at;return jsxRuntimeExports.jsxs("div",{className:styles.image_list_container,children:[jsxRuntimeExports.jsx("div",{className:styles.image_selection_container,children:e.slice(0,$).map((ct,ft)=>jsxRuntimeExports.jsx("div",{className:styles.image_option,children:jsxRuntimeExports.jsx("img",{src:ct.option,alt:ct.value,onClick:()=>s(a,ct.value),className:o.value===ct.value?styles.image_selected:""})},ft))}),jsxRuntimeExports.jsx("div",{className:styles.image_selection_container,children:jsxRuntimeExports.jsx("br",{})}),jsxRuntimeExports.jsxs("div",{className:styles.button_container,children:[it&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:lt,children:"更多"}),st&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:et,children:"收回"})]})]})},ComboImageList=({optionsObject:e,param:o,paramIndex:s,handleImageSelect:a,handleInputChange:$,uploadPreviewUrl:c})=>{const nt=reactExports.useRef(0),at=4,[lt,et]=reactExports.useState(nt.current*at),[it,st]=reactExports.useState(o.type=="file"),ct=reactExports.useRef(null);reactExports.useRef(!0);const[ft,pt]=reactExports.useState(JSON.parse(e)),gt=reactExports.useRef(null);reactExports.useEffect(()=>{gt&>.current&&(nt.current=Math.floor(window.innerWidth>1e3?(gt.current.clientWidth-5)/85:(gt.current.clientWidth-5)/55),et(nt.current*at))},[gt.current]);const wt=()=>{et(Nt=>Nt+nt.current*at)},vt=()=>{et(nt.current*at)},_t=e.length>lt,$t=lt>nt.current*at,Pt=(Nt,Lt)=>{Lt?st(!0):(st(!1),ct.current&&ct.current.click()),$(Nt,Lt)};return reactExports.useEffect(()=>{o&&o.type=="file"&&setfilevalue(o.value)},[o]),jsxRuntimeExports.jsxs("div",{className:styles.image_list_container,ref:gt,children:[jsxRuntimeExports.jsxs("div",{className:styles.image_selection_container,children:[jsxRuntimeExports.jsx("div",{className:styles.combo_image_option,style:{borderColor:it?"#4CAF50":"",border:it?"6px solid #bf0f78":""},children:jsxRuntimeExports.jsx(FileUpload,{index:s,param:o,handleInputChange:Pt,previewUrl:c,verbose:!1})},-1),ft.slice(0,lt-1).map((Nt,Lt)=>jsxRuntimeExports.jsx("div",{className:styles.combo_image_option,children:jsxRuntimeExports.jsxs("div",{className:styles.imageContainer,onClick:()=>{st(!1),a(s,Nt.value)},children:[jsxRuntimeExports.jsx("img",{src:Nt.option+"?x-oss-process=image/resize,w_100/quality,q_60",alt:Nt.value,ref:Lt===0?ct:null,className:o.value===Nt.value?styles.image_selected:""}),jsxRuntimeExports.jsx("div",{className:styles.overlay,style:{overflow:"hidden"},children:jsxRuntimeExports.jsx("p",{children:jsxRuntimeExports.jsx("span",{style:{fontSize:"8px",opacity:"100%",color:"#ffffff"},children:Nt.value.split("/").pop().split(".")[0]})})})]})},Lt))]}),jsxRuntimeExports.jsx("div",{className:styles.image_selection_container,children:jsxRuntimeExports.jsx("br",{})}),jsxRuntimeExports.jsxs("div",{className:styles.button_container,children:[_t&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:wt,children:"更多"}),$t&&jsxRuntimeExports.jsx("div",{className:styles.more_button,onClick:vt,children:"收回"})]})]})};/*! * ONNX Runtime Web v1.20.0 * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. @@ -1902,10 +1902,10 @@ ${e} `);let o=this.glContext.compileShader(e,this.glContext.gl.FRAGMENT_SHADER),s=this.glContext.createProgram(this.vertexShader,o);return this.glContext.deleteShader(o),s}bindOutput(e){let o=e.width,s=e.height;tt.verbose("ProrgramManager",`Binding output texture to Framebuffer: w/h=${o}/${s}, shape=${e.shape}, type=${e.tensor.type}`),this.glContext.attachFramebuffer(e.texture,o,s)}bindAttributes(e){let o=e.position,s=e.textureCoord;this.glContext.setVertexAttributes(o,s),this.attributesBound=!0}bindUniforms(e,o,s){let a=this.glContext.gl,$=0;for(let{name:c,type:nt,location:at,arrayLength:lt}of e){let et=o.find(it=>it.name===c)?.data;if(nt!=="sampler2D"&&!et)throw new Error(`variable '${c}' does not have data defined in program info`);switch(nt){case"sampler2D":this.bindTexture(s[$],at,$),$++;break;case"float":lt?a.uniform1fv(at,et):a.uniform1f(at,et);break;case"int":lt?a.uniform1iv(at,et):a.uniform1i(at,et);break;default:throw new Error(`Uniform not implemented: ${nt}`)}}}bindTexture(e,o,s){this.glContext.bindTextureToUniform(e.texture,s,o)}getAttribLocations(e){return{position:this.getAttribLocation(e,"position"),textureCoord:this.getAttribLocation(e,"textureCoord")}}getUniformLocations(e,o,s){let a=[];if(o)for(let $ of o)a.push({name:$,type:"sampler2D",location:this.getUniformLocation(e,$)});if(s)for(let $ of s)a.push({...$,location:this.getUniformLocation(e,$.name)});return a}getUniformLocation(e,o){let s=this.glContext.gl.getUniformLocation(e,o);if(s===null)throw new Error(`Uniform ${o} not found.`);return s}getAttribLocation(e,o){return this.glContext.gl.getAttribLocation(e,o)}}}),Kn,xp=O(()=>{Ut(),Fr(),Kn=class{constructor(e,o,s,a){this.glContext=e,this.layoutStrategy=o,this.profiler=s,this.config=a,this.pendingRead=new Map,a.reuseTextures&&(this.inUseTextures=new Map,this.idleTextures=new Map,this.textureLookup=new Map)}createTextureFromLayout(e,o,s,a){let $=this.toEncoderType(e),c=this.glContext.getEncoder($,o.channels||1,a);if(o.isPacked&&a===1)throw new Error("not implemented");let nt=o.width,at=o.height,lt,et;if(this.config.reuseTextures){lt=`${nt}x${at}_${c.format}_${c.internalFormat}_${c.textureType}`,et=this.inUseTextures.get(lt),et||(et=[],this.inUseTextures.set(lt,et));let st=this.idleTextures.get(lt);if(st&&st.length>0){let ct=st.pop();return et.push(ct),a===1&&this.glContext.updateTexture(ct,nt,at,c,this.toTextureData(e,s)),ct}}tt.verbose("TextureManager",`Creating new texture of size ${o.width}x${o.height}`);let it=this.glContext.allocateTexture(nt,at,c,this.toTextureData(e,s));return this.config.reuseTextures&&(et.push(it),this.textureLookup.set(it,lt)),it}readTexture(e,o,s){return s||(s=1),this.profiler.event("backend","TextureManager.readTexture",()=>{let a=e.shape.reduce((c,nt)=>c*nt)*s,$=this.glContext.readTexture(e.texture,e.width,e.height,a,this.toEncoderType(o),s);return this.toTensorData(o,$)})}async readTextureAsync(e,o,s){let a=e.tensor.dataId;if(s||(s=1),this.pendingRead.has(a)){let $=this.pendingRead.get(a);return new Promise(c=>$?.push(c))}return this.profiler.event("backend","TextureManager.readTextureAsync",async()=>{this.pendingRead.set(a,[]);let $=e.shape.reduce((lt,et)=>lt*et)*s;await this.glContext.createAndWaitForFence();let c=this.glContext.readTexture(e.texture,e.width,e.height,$,this.toEncoderType(o),s),nt=this.toTensorData(o,c),at=this.pendingRead.get(a);return this.pendingRead.delete(a),at?.forEach(lt=>lt(nt)),nt})}readUint8TextureAsFloat(e){return this.profiler.event("backend","TextureManager.readUint8TextureAsFloat",()=>{let o=e.shape.reduce((a,$)=>a*$),s=this.glContext.readTexture(e.texture,e.width,e.height,o*4,"byte",4);return new Float32Array(s.buffer,s.byteOffset,o)})}releaseTexture(e,o){let s;if(this.config.reuseTextures&&(s=this.textureLookup.get(e.texture),s)){o&&this.textureLookup.delete(s);let a=this.inUseTextures.get(s);if(a){let $=a.indexOf(e.texture);if($!==-1){a.splice($,1);let c=this.idleTextures.get(s);c||(c=[],this.idleTextures.set(s,c)),c.push(e.texture)}}}(!s||o)&&(tt.verbose("TextureManager",`Deleting texture of size ${e.width}x${e.height}`),this.glContext.deleteTexture(e.texture))}toTensorData(e,o){switch(e){case"int16":return o instanceof Int16Array?o:Int16Array.from(o);case"int32":return o instanceof Int32Array?o:Int32Array.from(o);case"int8":return o instanceof Int8Array?o:Int8Array.from(o);case"uint16":return o instanceof Uint16Array?o:Uint16Array.from(o);case"uint32":return o instanceof Uint32Array?o:Uint32Array.from(o);case"uint8":case"bool":return o instanceof Uint8Array?o:Uint8Array.from(o);case"float32":return o instanceof Float32Array?o:Float32Array.from(o);case"float64":return o instanceof Float64Array?o:Float64Array.from(o);default:throw new Error(`TensorData type ${e} is not supported`)}}toTextureData(e,o){if(o)return o instanceof Float32Array?o:new Float32Array(o)}toEncoderType(e){return"float"}clearActiveTextures(){this.glContext.clearActiveTextures()}}}),Jn,Tp=O(()=>{Ut(),Bs(),cl(),ap(),yp(),Ni(),xp(),Jn=class{constructor(e,o){this.backend=e,this.context=o,this.layoutStrategy=new Un(e.glContext.maxTextureSize),this.programManager=new Xn(this.context.profiler,e.glContext,this.layoutStrategy),this.textureManager=new Kn(e.glContext,this.layoutStrategy,this.context.profiler,{reuseTextures:e.textureCacheMode==="full"}),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache=new Map,this.pack=e.pack,this.pack2unpackMap=new Map,this.unpack2packMap=new Map}createInferenceHandler(){return new Dn(this)}onGraphInitialized(e){let o=e.getValues().filter(s=>s.from===-1&&s.tensor).map(s=>s.tensor.dataId);this.initializers=new Set(o)}isInitializer(e){return this.initializers?this.initializers.has(e):!1}addInitializer(e){this.initializers.add(e)}getTextureData(e,o){return o?this.packedTextureDataCache.get(e):this.unpackedTextureDataCache.get(e)}setTextureData(e,o,s=!1){tt.verbose("WebGLSessionHandler","Storing Texture data in cache"),s?this.packedTextureDataCache.set(e,o):this.unpackedTextureDataCache.set(e,o)}dispose(){this.programManager.dispose(),this.textureManager.clearActiveTextures(),this.packedTextureDataCache.forEach(e=>this.textureManager.releaseTexture(e,!0)),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache.forEach(e=>this.textureManager.releaseTexture(e,!0)),this.unpackedTextureDataCache=new Map}resolve(e,o,s){let a=ks(e,o,ip);return{impl:a.opImpl,context:a.opInit?a.opInit(e,s):e}}}});function bg(e){let o=0;for(;o{Yt(),Fr(),Fr(),pe(),Mr=class{constructor(e,o){this.frameBufferBound=!1,this.itemsToPoll=[],this.gl=e,this.version=o,this.getExtensions(),this.vertexbuffer=this.createVertexbuffer(),this.framebuffer=this.createFramebuffer(),this.queryVitalParameters()}allocateTexture(e,o,s,a){let $=this.gl,c=$.createTexture();$.bindTexture($.TEXTURE_2D,c),$.texParameteri($.TEXTURE_2D,$.TEXTURE_MIN_FILTER,$.NEAREST),$.texParameteri($.TEXTURE_2D,$.TEXTURE_MAG_FILTER,$.NEAREST),$.texParameteri($.TEXTURE_2D,$.TEXTURE_WRAP_S,$.CLAMP_TO_EDGE),$.texParameteri($.TEXTURE_2D,$.TEXTURE_WRAP_T,$.CLAMP_TO_EDGE);let nt=a?s.encode(a,e*o):null;return $.texImage2D($.TEXTURE_2D,0,s.internalFormat,e,o,0,s.format,s.textureType,nt),this.checkError(),c}updateTexture(e,o,s,a,$){let c=this.gl;c.bindTexture(c.TEXTURE_2D,e);let nt=a.encode($,o*s);c.texSubImage2D(c.TEXTURE_2D,0,0,0,o,s,a.format,a.textureType,nt),this.checkError()}attachFramebuffer(e,o,s){let a=this.gl;a.bindTexture(a.TEXTURE_2D,e),a.bindFramebuffer(a.FRAMEBUFFER,this.framebuffer),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,e,0),this.checkError(),a.viewport(0,0,o,s),a.scissor(0,0,o,s)}readTexture(e,o,s,a,$,c){let nt=this.gl;c||(c=1),this.frameBufferBound||this.attachFramebuffer(e,o,s);let at=this.getEncoder($,c),lt=at.allocate(o*s);return nt.bindTexture(nt.TEXTURE_2D,e),nt.framebufferTexture2D(nt.FRAMEBUFFER,nt.COLOR_ATTACHMENT0,nt.TEXTURE_2D,e,0),nt.readPixels(0,0,o,s,nt.RGBA,at.textureType,lt),this.checkError(),at.decode(lt,a)}isFramebufferReady(){return!0}getActiveTexture(){let e=this.gl;return`TEXTURE${e.getParameter(this.gl.ACTIVE_TEXTURE)-e.TEXTURE0}`}getTextureBinding(){return this.gl.getParameter(this.gl.TEXTURE_BINDING_2D)}getFramebufferBinding(){return this.gl.getParameter(this.gl.FRAMEBUFFER_BINDING)}setVertexAttributes(e,o){let s=this.gl;s.vertexAttribPointer(e,3,s.FLOAT,!1,20,0),s.enableVertexAttribArray(e),o!==-1&&(s.vertexAttribPointer(o,2,s.FLOAT,!1,20,12),s.enableVertexAttribArray(o)),this.checkError()}createProgram(e,o){let s=this.gl,a=s.createProgram();return s.attachShader(a,e),s.attachShader(a,o),s.linkProgram(a),a}compileShader(e,o){let s=this.gl,a=s.createShader(o);if(!a)throw new Error(`createShader() returned null with type ${o}`);if(s.shaderSource(a,e),s.compileShader(a),s.getShaderParameter(a,s.COMPILE_STATUS)===!1)throw new Error(`Failed to compile shader: ${s.getShaderInfoLog(a)} Shader source: ${e}`);return a}deleteShader(e){this.gl.deleteShader(e)}bindTextureToUniform(e,o,s){let a=this.gl;a.activeTexture(a.TEXTURE0+o),this.checkError(),a.bindTexture(a.TEXTURE_2D,e),this.checkError(),a.uniform1i(s,o),this.checkError()}draw(){this.gl.drawArrays(this.gl.TRIANGLE_STRIP,0,4),this.checkError()}checkError(){if(z.debug){let e=this.gl,o=e.getError(),s="";switch(o){case e.NO_ERROR:return;case e.INVALID_ENUM:s="INVALID_ENUM";break;case e.INVALID_VALUE:s="INVALID_VALUE";break;case e.INVALID_OPERATION:s="INVALID_OPERATION";break;case e.INVALID_FRAMEBUFFER_OPERATION:s="INVALID_FRAMEBUFFER_OPERATION";break;case e.OUT_OF_MEMORY:s="OUT_OF_MEMORY";break;case e.CONTEXT_LOST_WEBGL:s="CONTEXT_LOST_WEBGL";break;default:s=`Unknown WebGL Error: ${o.toString(16)}`}throw new Error(s)}}deleteTexture(e){this.gl.deleteTexture(e)}deleteProgram(e){this.gl.deleteProgram(e)}getEncoder(e,o,s=0){if(this.version===2)return new Pn(this.gl,o);switch(e){case"float":return s===1||this.isRenderFloat32Supported?new Br(this.gl,o):new Br(this.gl,o,this.textureHalfFloatExtension.HALF_FLOAT_OES);case"int":throw new Error("not implemented");case"byte":return new En(this.gl,o);default:throw new Error(`Invalid dataType: ${e}`)}}clearActiveTextures(){let e=this.gl;for(let o=0;othis.isTimerResultAvailable(e)),this.getTimerResult(e)}async createAndWaitForFence(){let e=this.createFence(this.gl);return this.pollFence(e)}createFence(e){let o,s=e,a=s.fenceSync(s.SYNC_GPU_COMMANDS_COMPLETE,0);return e.flush(),a===null?o=()=>!0:o=()=>{let $=s.clientWaitSync(a,0,0);return $===s.ALREADY_SIGNALED||$===s.CONDITION_SATISFIED},{query:a,isFencePassed:o}}async pollFence(e){return new Promise(o=>{this.addItemToPoll(()=>e.isFencePassed(),()=>o())})}pollItems(){let e=bg(this.itemsToPoll.map(o=>o.isDoneFn));for(let o=0;o<=e;++o){let{resolveFn:s}=this.itemsToPoll[o];s()}this.itemsToPoll=this.itemsToPoll.slice(e+1)}async addItemToPoll(e,o){this.itemsToPoll.push({isDoneFn:e,resolveFn:o}),!(this.itemsToPoll.length>1)&&await li(()=>(this.pollItems(),this.itemsToPoll.length===0))}}});function Gi(e){let o;if((!e||e==="webgl2")&&"webgl2"in mr?o=mr.webgl2:(!e||e==="webgl")&&"webgl"in mr&&(o=mr.webgl),!o)try{let a=yg();o=vp(a,e)}catch{let a=gg();o=vp(a,e)}e=e||o.version===1?"webgl":"webgl2";let s=o.gl;return mr[e]=o,s.isContextLost()?(delete mr[e],Gi(e)):(s.disable(s.DEPTH_TEST),s.disable(s.STENCIL_TEST),s.disable(s.BLEND),s.disable(s.DITHER),s.disable(s.POLYGON_OFFSET_FILL),s.disable(s.SAMPLE_COVERAGE),s.enable(s.SCISSOR_TEST),s.enable(s.CULL_FACE),s.cullFace(s.BACK),o)}function vp(e,o){let s={alpha:!1,depth:!1,antialias:!1,stencil:!1,preserveDrawingBuffer:!1,premultipliedAlpha:!1,failIfMajorPerformanceCaveat:!1},a,$=s;if((!o||o==="webgl2")&&(a=e.getContext("webgl2",$),a))try{return new Mr(a,2)}catch(c){tt.warning("GlContextFactory",`failed to create WebGLContext using contextId 'webgl2'. Error: ${c}`)}if((!o||o==="webgl")&&(a=e.getContext("webgl",$)||e.getContext("experimental-webgl",$),a))try{return new Mr(a,1)}catch(c){tt.warning("GlContextFactory",`failed to create WebGLContext using contextId 'webgl' or 'experimental-webgl'. Error: ${c}`)}throw new Error("WebGL is not supported")}function gg(){if(typeof document>"u")throw new TypeError("failed to create canvas: document is not supported");let e=document.createElement("canvas");return e.width=1,e.height=1,e}function yg(){if(typeof OffscreenCanvas>"u")throw new TypeError("failed to create offscreen canvas: OffscreenCanvas is not supported");return new OffscreenCanvas(1,1)}var mr,Ip=O(()=>{Ut(),wp(),mr={}}),Yn,_p=O(()=>{Yt(),Ut(),Tp(),Ip(),Yn=class{get contextId(){return z.webgl.contextId}set contextId(e){z.webgl.contextId=e}get matmulMaxBatchSize(){return z.webgl.matmulMaxBatchSize}set matmulMaxBatchSize(e){z.webgl.matmulMaxBatchSize=e}get textureCacheMode(){return z.webgl.textureCacheMode}set textureCacheMode(e){z.webgl.textureCacheMode=e}get pack(){return z.webgl.pack}set pack(e){z.webgl.pack=e}get async(){return z.webgl.async}set async(e){z.webgl.async=e}initialize(){try{return this.glContext=Gi(this.contextId),typeof this.matmulMaxBatchSize!="number"&&(this.matmulMaxBatchSize=16),typeof this.textureCacheMode!="string"&&(this.textureCacheMode="full"),typeof this.pack!="boolean"&&(this.pack=!1),typeof this.async!="boolean"&&(this.async=!1),tt.setWithEnv(z),z.webgl.context||Object.defineProperty(z.webgl,"context",{value:this.glContext.gl}),tt.verbose("WebGLBackend",`Created WebGLContext: ${typeof this.glContext} with matmulMaxBatchSize: ${this.matmulMaxBatchSize}; textureCacheMode: ${this.textureCacheMode}; pack: ${this.pack}; async: ${this.async}.`),!0}catch(e){return tt.warning("WebGLBackend",`Unable to initialize WebGLBackend. ${e}`),!1}}createSessionHandler(e){return new Jn(this,e)}dispose(){this.glContext.dispose()}}});async function Mi(e){if(e){let o=typeof e=="string"?[e]:e;for(let s of o){let a=Op.get(s);if(a)return a;let $=await Tg(s);if($)return $}}else return Mi(["webgl"]);throw new Error("no available backend to use")}async function Tg(e){let o=xg;if(typeof o[e]<"u"&&wg(o[e])){let s=o[e],a=s.initialize();if(typeof a=="object"&&"then"in a&&(a=await a),a)return Op.set(e,s),s}}function wg(e){let o=e;return"initialize"in o&&typeof o.initialize=="function"&&"createSessionHandler"in o&&typeof o.createSessionHandler=="function"&&"dispose"in o&&typeof o.dispose=="function"}var Op,xg,Sp=O(()=>{_p(),Op=new Map,xg={webgl:new Yn}}),Ui,Zn,Ap=O(()=>{Ut(),Ui=class{constructor(e,o){this.op=e,this.node=o}},Zn=class{constructor(e,o,s){this.graph=e,this.profiler=s,this.initialize(o)}initialize(e){this.profiler.event("session","ExecutionPlan.initialize",()=>{let o=this.graph.getNodes();if(o.length!==e.length)throw new Error("The size of nodes and OPs do not match.");this._ops=e.map((s,a)=>new Ui(s,o[a])),this.reset(),this._starter=[],this._ops.forEach((s,a)=>{let $=!0;for(let c of s.node.inputs)if(!this._values[c]&&this.graph.getInputIndices().indexOf(c)===-1){$=!1;break}$&&this._starter.push(a)})})}reset(){this._values=this.graph.getValues().map(e=>e.tensor)}async execute(e,o){return this.profiler.event("session","ExecutionPlan.execute",async()=>{this.reset();let s=e.createInferenceHandler(),a=this.graph.getInputIndices();if(o.length!==a.length)throw new Error(`number of input tensors don't match the number of inputs to the model: actual: ${o.length} expected: ${a.length}`);o.forEach((et,it)=>{let st=a[it];this._values[st]=et});let $=this._starter.slice(0),c=this.graph.getValues(),nt=this.graph.getNodes(),at=0;for(;at<$.length;){let et=$[at++],it=this._ops[et],st=it.node.inputs.map(gt=>this._values[gt]);if(st.indexOf(void 0)!==-1)throw new Error(`unresolved input detected: op: ${it.node}`);let ct=st;tt.verbose("ExecPlan",`Running op:${it.node.name} (${ct.map((gt,wt)=>`'${it.node.inputs[wt]}': ${gt.type}[${gt.dims.join(",")}]`).join(", ")})`);let ft=await this.profiler.event("node",it.node.name,async()=>it.op.impl(s,ct,it.op.context));if(ft.length!==it.node.outputs.length)throw new Error("the size of output does not match model definition.");ft.forEach((gt,wt)=>{let vt=it.node.outputs[wt];if(this._values[vt])throw new Error(`output [${vt}] already has value: op:${it.node.name}`);this._values[vt]=gt});let pt=new Set;ft.forEach((gt,wt)=>{let vt=it.node.outputs[wt];for(let _t of c[vt].to){let $t=nt[_t],Pt=!0;for(let Nt of $t.inputs)if(!this._values[Nt]){Pt=!1;break}Pt&&pt.add(_t)}}),$.push(...pt)}let lt=[];for(let et=0;et{Pr(),q=rr(sr()),We(),Y(),Xt=F.experimental.fbs,Ur=class Su{constructor(o){if(this._attributes=new Map,o!=null){for(let s of o)s instanceof q.onnx.AttributeProto?this._attributes.set(s.name,[Su.getValue(s),Su.getType(s)]):s instanceof Xt.Attribute&&this._attributes.set(s.name(),[Su.getValue(s),Su.getType(s)]);if(this._attributes.sizebt.fromProto($));if(o instanceof Xt.Attribute)return a.map($=>bt.fromOrtTensor($))}return s===q.onnx.AttributeProto.AttributeType.STRING&&o instanceof q.onnx.AttributeProto?kr(a):s===q.onnx.AttributeProto.AttributeType.STRINGS&&o instanceof q.onnx.AttributeProto?a.map(kr):a}static getValueNoCheck(o){return o instanceof q.onnx.AttributeProto?this.getValueNoCheckFromOnnxFormat(o):this.getValueNoCheckFromOrtFormat(o)}static getValueNoCheckFromOnnxFormat(o){switch(o.type){case q.onnx.AttributeProto.AttributeType.FLOAT:return o.f;case q.onnx.AttributeProto.AttributeType.INT:return o.i;case q.onnx.AttributeProto.AttributeType.STRING:return o.s;case q.onnx.AttributeProto.AttributeType.TENSOR:return o.t;case q.onnx.AttributeProto.AttributeType.GRAPH:return o.g;case q.onnx.AttributeProto.AttributeType.FLOATS:return o.floats;case q.onnx.AttributeProto.AttributeType.INTS:return o.ints;case q.onnx.AttributeProto.AttributeType.STRINGS:return o.strings;case q.onnx.AttributeProto.AttributeType.TENSORS:return o.tensors;case q.onnx.AttributeProto.AttributeType.GRAPHS:return o.graphs;default:throw new Error(`unsupported attribute type: ${q.onnx.AttributeProto.AttributeType[o.type]}`)}}static getValueNoCheckFromOrtFormat(o){switch(o.type()){case Xt.AttributeType.FLOAT:return o.f();case Xt.AttributeType.INT:return o.i();case Xt.AttributeType.STRING:return o.s();case Xt.AttributeType.TENSOR:return o.t();case Xt.AttributeType.GRAPH:return o.g();case Xt.AttributeType.FLOATS:return o.floatsArray();case Xt.AttributeType.INTS:{let s=[];for(let a=0;a{Pp(),Pr(),zi=rr(sr()),We(),Y(),Qn=F.experimental.fbs,Wi={from:(e,o)=>new Vi(e,o)},me=class{constructor(e){this._from=void 0,this._to=[],this.tensor=void 0,this.type=void 0,e&&(this.type=At.tensorValueTypeFromProto(e.type.tensorType))}get from(){return this._from}get to(){return this._to}},to=class{constructor(e,o){e instanceof zi.onnx.NodeProto?(this.name=e.name,this.opType=e.opType,this.attributes=new Ur(e.attribute)):e instanceof Qn.Node&&(this.name=o??e.name(),this.opType=e.opType(),this.attributes=new Ur(At.tensorAttributesFromORTFormat(e))),this.inputs=[],this.outputs=[],this.executeNode=!0}},Vi=class{constructor(e,o){if(!e)throw new TypeError("graph is empty");this.buildGraph(e),this.transformGraph(o),this.checkIsAcyclic()}getInputIndices(){return this._allInputIndices}getInputNames(){return this._allInputNames}getOutputIndices(){return this._allOutputIndices}getOutputNames(){return this._allOutputNames}getValues(){return this._allData}getNodes(){return this._nodes}buildGraph(e){if(e instanceof zi.onnx.GraphProto)this.buildGraphFromOnnxFormat(e);else if(e instanceof Qn.Graph)this.buildGraphFromOrtFormat(e);else throw new TypeError("Graph type is not supported.")}buildGraphFromOnnxFormat(e){let o=new Map;this._allData=[],this._allInputIndices=[],this._allInputNames=[],this._allOutputIndices=[],this._allOutputNames=[],this._nodes=[];let s=new Map;if(!e.input)throw new Error("missing information in graph: input");let a=[];for(let $ of e.input){if(o.has($.name))throw new Error(`duplicated input name: ${$.name}`);let c=this._allData.push(new me($))-1;o.set($.name,c),a.push($.name)}if(!e.initializer)throw new Error("missing information in graph: initializer");for(let $ of e.initializer){let c=o.get($.name);if(c===void 0){let nt=new me;nt.type={shape:{dims:At.tensorDimsFromProto($.dims)},tensorType:At.tensorDataTypeFromProto($.dataType)},c=this._allData.push(nt)-1,o.set($.name,c)}this._allData[c]._from=-1,this._allData[c].tensor=bt.fromProto($)}for(let $=0;$"u"&&(lt=this._allData.push(new me)-1,o.set(at,lt)),c.outputs.push(lt),this._allData[lt]._from!==void 0)throw new Error(`multiple nodes output to one data value: ${lt}`);if(this._allData[lt]._from=$,nt.opType==="Constant"){if(!nt.attribute||nt.attribute.length!==1||!nt.attribute[0].t)throw new Error("missing attributes or missing tensor value in attributes for this Constant operator");if(!nt.output||nt.output.length!==1)throw new Error("missing output or incorrect number of outputs for this Constant operator");c.outputs.pop(),c.executeNode=!1,this._allData[lt]._from=-1,this._allData[lt].tensor=bt.fromProto(nt.attribute[0].t)}}}for(let $=0;$"u"){if(at===""&&(nt.input.length===3||nt.input.length===4)&&nt.opType==="Resize")continue;throw new Error(`unrecognized input '${at}' for node: ${nt.name}`)}c.inputs.push(lt),this._allData[lt]._to.push($)}}return!0}buildGraphFromOrtFormat(e){let o=new Map;this._allData=[],this._allInputIndices=[],this._allInputNames=[],this._allOutputIndices=[],this._allOutputNames=[],this._nodes=[];let s=new Map,a=[];for(let $=0;$"u"&&(et=this._allData.push(new me)-1,o.set(lt,et)),c.outputs.push(et),this._allData[et]._from!==void 0)throw new Error(`multiple nodes output to one data value: ${et}`);if(this._allData[et]._from=$,nt.opType()==="Constant"){if(nt.attributesLength()!==1||!nt.attributes(0).t())throw new Error("missing attributes or missing tensor value in attributes for this Constant operator");if(nt.outputsLength()!==1)throw new Error("missing output or incorrect number of outputs for this Constant operator");c.outputs.pop(),c.executeNode=!1,this._allData[et]._from=-1,this._allData[et].tensor=bt.fromOrtTensor(nt.attributes(0).t())}}}for(let $=0;$"u")throw new Error(`unrecognized input '${lt}' for node: ${nt.name()}`);c.inputs.push(et),this._allData[et]._to.push($)}}}checkIsAcyclic(){let e=new Set;this._allInputIndices.forEach(a=>{this._allData[a]._to.forEach($=>{e.add($)})});let o=Array.from(e),s=new Array(this._nodes.length).fill("white");for(;o.length>0;){let a=o.pop();s[a]==="gray"?s[a]="black":(o.push(a),s[a]="gray",this._nodes[a].outputs.forEach($=>{let c=this._allData[$];if(typeof c.tensor<"u")throw new Error("node outputs should not be initialized");if(c._from!==a)throw new Error("from property of the Value object doesn't match index of Node being processed");c._to.forEach(nt=>{if(s[nt]==="gray")throw new Error("model graph is cyclic");s[nt]==="white"&&o.push(nt)})}))}}transformGraph(e){this.removeAllIdentityNodes(),this.removeAllDropoutNodes(),this.fuseConvActivationNodes(),e&&e.transformGraph(this),this.finalizeGraph()}finalizeGraph(){let e=0,o=new Array(this._nodes.length,0),s=0;for(let a=0;a{this._allData[$]._from=-2});this._nodes.splice(s,this._nodes.length-s);for(let a=0;a=0)$._to[c]=o[$._to[c]];else throw new Error("Trying to update a removed node")}e=0;for(let a=0;a0){let $=-1;this._allData[a].from!==void 0&&this._allData[a].from!==-1?($=this._nodes[this._allData[a].from].outputs.indexOf(a+e),$!==-1&&(this._nodes[this._allData[a].from].outputs[$]=a)):($=this._allInputIndices.indexOf(a+e),$!==-1&&(this._allInputIndices[$]=a)),this._allData[a].to.forEach(c=>{$=this._nodes[c].inputs.indexOf(a+e),$!==-1&&(this._nodes[c].inputs[$]=a)}),this._allData[a].to.length===0&&($=this._allOutputIndices.indexOf(a+e),$!==-1&&(this._allOutputIndices[$]=a))}}}deleteNode(e){let o=this._nodes[e];if(o.outputs.length>1){for(let nt=1;nt0)throw new Error("Node deletion with more than one output connected to other nodes is not supported. ")}o.executeNode=!1;let s=o.inputs[0],a=o.outputs[0],$=this._allData[a].to;for(let nt=0;nt0)for(let nt of $){let at=this._nodes[nt].inputs.indexOf(a);if(at===-1)throw new Error("The Node object doesn't have the output Value in it's 'inputs' property ");this._nodes[nt].inputs[at]=s,this._allData[s].to.push(nt)}}removeAllDropoutNodes(){let e=0;for(let o of this._nodes){if(o.opType==="Dropout"){if(o.inputs.length!==1)throw new Error("Dropout nodes should only contain one input. ");if(o.outputs.length!==1&&o.outputs.length!==2)throw new Error("Dropout nodes should contain either 1 or 2 output(s)");if(o.outputs.length===2&&this._allData[o.outputs[1]]._to.length!==0)throw new Error("Dropout nodes's second output should not be referenced by other nodes");this.deleteNode(e)}e++}}removeAllIdentityNodes(){let e=0;for(let o of this._nodes)o.opType==="Identity"&&this.deleteNode(e),e++}isActivation(e){switch(e.opType){case"Relu":case"Sigmoid":case"Clip":return!0;default:return!1}}fuseConvActivationNodes(){for(let e of this._nodes)if(e.opType==="Conv"){let o=this._allData[e.outputs[0]]._to;if(o.length===1&&this.isActivation(this._nodes[o[0]])){let s=this._nodes[o[0]];if(s.opType==="Clip")if(s.inputs.length===1)try{e.attributes.set("activation_params","floats",[s.attributes.getFloat("min"),s.attributes.getFloat("max")])}catch{e.attributes.set("activation_params","floats",[Ve,ze])}else if(s.inputs.length>=3&&this._allData[s.inputs[1]].tensor!==void 0&&this._allData[s.inputs[2]].tensor!==void 0)e.attributes.set("activation_params","floats",[this._allData[s.inputs[1]].tensor.floatData[0],this._allData[s.inputs[2]].tensor.floatData[0]]);else continue;e.attributes.set("activation","string",s.opType),this.deleteNode(o[0])}}}}}),Dp,vg,eo,Lp=O(()=>{wn(),Ep(),Pr(),Dp=rr(sr()),Y(),vg=F.experimental.fbs,eo=class{constructor(){}load(e,o,s){let a;if(!s)try{this.loadFromOnnxFormat(e,o);return}catch($){if(s!==void 0)throw $;a=$}try{this.loadFromOrtFormat(e,o)}catch($){throw s!==void 0?$:new Error(`Failed to load model as ONNX format: ${a} -as ORT format: ${$}`)}}loadFromOnnxFormat(e,o){let s=Dp.onnx.ModelProto.decode(e);if(Rt.longToNumber(s.irVersion)<3)throw new Error("only support ONNX model with IR_VERSION>=3");this._opsets=s.opsetImport.map(a=>({domain:a.domain,version:Rt.longToNumber(a.version)})),this._graph=Wi.from(s.graph,o)}loadFromOrtFormat(e,o){let s=new w.ByteBuffer(e),a=vg.InferenceSession.getRootAsInferenceSession(s).model();if(Rt.longToNumber(a.irVersion())<3)throw new Error("only support ONNX model with IR_VERSION>=3");this._opsets=[];for(let $=0;${Sp(),Ap(),Ut(),Lp(),ro=class{constructor(e={}){this._initialized=!1,this.backendHint=e.backendHint,this.profiler=xn.create(e.profiler),this.context={profiler:this.profiler,graphInputTypes:[],graphInputDims:[]}}get inputNames(){return this._model.graph.getInputNames()}get outputNames(){return this._model.graph.getOutputNames()}startProfiling(){this.profiler.start()}endProfiling(){this.profiler.stop()}async loadModel(e,o,s){await this.profiler.event("session","Session.loadModel",async()=>{let a=await Mi(this.backendHint);if(this.sessionHandler=a.createSessionHandler(this.context),this._model=new eo,typeof e=="string"){let $=e.endsWith(".ort");{let c=await(await fetch(e)).arrayBuffer();this.initialize(new Uint8Array(c),$)}}else if(ArrayBuffer.isView(e))this.initialize(e);else{let $=new Uint8Array(e,o||0,s||e.byteLength);this.initialize($)}})}initialize(e,o){if(this._initialized)throw new Error("already initialized");this.profiler.event("session","Session.initialize",()=>{let s=this.sessionHandler.transformGraph?this.sessionHandler:void 0;this._model.load(e,s,o),this.sessionHandler.onGraphInitialized&&this.sessionHandler.onGraphInitialized(this._model.graph),this.initializeOps(this._model.graph),this._executionPlan=new Zn(this._model.graph,this._ops,this.profiler)}),this._initialized=!0}async run(e){if(!this._initialized)throw new Error("session not initialized yet");return this.profiler.event("session","Session.run",async()=>{let o=this.normalizeAndValidateInputs(e),s=await this._executionPlan.execute(this.sessionHandler,o);return this.createOutput(s)})}normalizeAndValidateInputs(e){let o=this._model.graph.getInputNames();if(Array.isArray(e)){if(e.length!==o.length)throw new Error(`incorrect input array length: expected ${o.length} but got ${e.length}`)}else{if(e.size!==o.length)throw new Error(`incorrect input map size: expected ${o.length} but got ${e.size}`);let s=new Array(e.size),a=0;for(let $=0;${Yt(),We(),no=class{constructor(e){this.session=e,this.inputNames=this.session.inputNames,this.outputNames=this.session.outputNames}async dispose(){}async run(e,o,s){let a=new Map;for(let nt in e)if(Object.hasOwnProperty.call(e,nt)){let at=e[nt];a.set(nt,new bt(at.dims,at.type,void 0,void 0,at.data))}let $=await this.session.run(a),c={};return $.forEach((nt,at)=>{c[at]=new yt(nt.type,nt.data,nt.dims)}),c}startProfiling(){this.session.startProfiling()}endProfiling(){this.session.endProfiling()}}}),Bp={};Or(Bp,{onnxjsBackend:()=>Ig});var Hi,Ig,Fp=O(()=>{$p(),kp(),Hi=class{async init(){}async createInferenceSessionHandler(e,o){let s=new ro(o);return typeof e=="string"?await s.loadModel(e):await s.loadModel(e),new no(s)}},Ig=new Hi}),oo=O(()=>{}),Rp={};Or(Rp,{default:()=>_g});var Cp,Np,_g,Gp=O(()=>{qi(),Ke(),Vr(),Cp="ort-wasm-proxy-worker",Np=globalThis.self?.name===Cp,Np&&(self.onmessage=e=>{let{type:o,in:s}=e.data;try{switch(o){case"init-wasm":io(s.wasm).then(()=>{ao(s).then(()=>{postMessage({type:o})},a=>{postMessage({type:o,err:a})})},a=>{postMessage({type:o,err:a})});break;case"init-ep":{let{epName:a,env:$}=s;so($,a).then(()=>{postMessage({type:o})},c=>{postMessage({type:o,err:c})});break}case"copy-from":{let{buffer:a}=s,$=zr(a);postMessage({type:o,out:$});break}case"create":{let{model:a,options:$}=s;uo(a,$).then(c=>{postMessage({type:o,out:c})},c=>{postMessage({type:o,err:c})});break}case"release":lo(s),postMessage({type:o});break;case"run":{let{sessionId:a,inputIndices:$,inputs:c,outputIndices:nt,options:at}=s;fo(a,$,c,nt,new Array(nt.length).fill(null),at).then(lt=>{lt.some(et=>et[3]!=="cpu")?postMessage({type:o,err:"Proxy does not support non-cpu tensor location."}):postMessage({type:o,out:lt},po([...c,...lt]))},lt=>{postMessage({type:o,err:lt})});break}case"end-profiling":co(s),postMessage({type:o});break;default:}}catch(a){postMessage({type:o,err:a})}}),_g=Np?null:e=>new Worker(e??br,{type:"module",name:Cp})}),Up={};Or(Up,{default:()=>Og});var ji,Mp,Og,Vp=O(()=>{Mp=(ji=import.meta.url,async function(e={}){function o(){return _o.buffer!=Ot.buffer&&Er(),Ot}function s(){return _o.buffer!=Ot.buffer&&Er(),gr}function a(){return _o.buffer!=Ot.buffer&&Er(),$o}function $(){return _o.buffer!=Ot.buffer&&Er(),On}function c(){return _o.buffer!=Ot.buffer&&Er(),Yr}var nt,at,lt=Object.assign({},e),et=new Promise((Mt,ar)=>{nt=Mt,at=ar}),it=typeof window=="object",st=typeof importScripts=="function",ct=st&&self.name=="em-pthread";lt.mountExternalData=(Mt,ar)=>{Mt.startsWith("./")&&(Mt=Mt.substring(2)),(lt.Ua||(lt.Ua=new Map)).set(Mt,ar)},lt.unmountExternalData=()=>{delete lt.Ua};var ft,pt,gt=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,shared:!0}).buffer.constructor,wt=Object.assign({},lt),vt="./this.program",_t=(Mt,ar)=>{throw ar},$t="";(it||st)&&(st?$t=self.location.href:typeof document<"u"&&document.currentScript&&($t=document.currentScript.src),ji&&($t=ji),$t=$t.startsWith("blob:")?"":$t.substr(0,$t.replace(/[?#].*/,"").lastIndexOf("/")+1),st&&(pt=Mt=>{var ar=new XMLHttpRequest;return ar.open("GET",Mt,!1),ar.responseType="arraybuffer",ar.send(null),new Uint8Array(ar.response)}),ft=(Mt,ar,wr)=>{var Qr=new XMLHttpRequest;Qr.open("GET",Mt,!0),Qr.responseType="arraybuffer",Qr.onload=()=>{Qr.status==200||Qr.status==0&&Qr.response?ar(Qr.response):wr()},Qr.onerror=wr,Qr.send(null)});var Pt,Nt=console.log.bind(console),Lt=console.error.bind(console),Ft=Nt,Wt=Lt;if(Object.assign(lt,wt),wt=null,ct){let Mt=function(ar){try{var wr=ar.data,Qr=wr.cmd;if(Qr==="load"){let rn=[];self.onmessage=Io=>rn.push(Io),self.startWorker=()=>{postMessage({cmd:"loaded"});for(let Io of rn)Mt(Io);self.onmessage=Mt};for(let Io of wr.handlers)lt[Io]&&!lt[Io].proxy||(lt[Io]=(...Ks)=>{postMessage({Za:"callHandler",kb:Io,args:Ks})},Io=="print"&&(Ft=lt[Io]),Io=="printErr"&&(Wt=lt[Io]));_o=wr.wasmMemory,Er(),_r(wr.wasmModule)}else if(Qr==="run"){_d(wr.pthread_ptr,0,0,1,0,0),Cu(wr.pthread_ptr),ba(),Ko(),vr||=!0;try{eu(wr.start_routine,wr.arg)}catch(rn){if(rn!="unwind")throw rn}}else Qr==="cancel"?hu()&&Pu(-1):wr.target!=="setimmediate"&&(Qr==="checkMailbox"?vr&&Ou():Qr&&(Wt(`worker: received unknown command ${Qr}`),Wt(wr)))}catch(rn){throw Ny(),rn}};var _r,vr=!1;Wt=function(...ar){ar=ar.join(" "),console.error(ar)},self.alert=function(...ar){postMessage({Za:"alert",text:ar.join(" "),nb:hu()})},lt.instantiateWasm=(ar,wr)=>new Promise(Qr=>{_r=rn=>{rn=new WebAssembly.Instance(rn,Dt()),wr(rn),Qr()}}),self.onunhandledrejection=ar=>{throw ar.reason||ar},self.onmessage=Mt}lt.wasmBinary&&(Pt=lt.wasmBinary);var _o,Jt,Kr,Ot,gr,$o,On,en,Yr,So=!1;function Er(){var Mt=_o.buffer;lt.HEAP8=Ot=new Int8Array(Mt),lt.HEAP16=new Int16Array(Mt),lt.HEAPU8=gr=new Uint8Array(Mt),lt.HEAPU16=new Uint16Array(Mt),lt.HEAP32=$o=new Int32Array(Mt),lt.HEAPU32=On=new Uint32Array(Mt),lt.HEAPF32=new Float32Array(Mt),lt.HEAPF64=Yr=new Float64Array(Mt),lt.HEAP64=en=new BigInt64Array(Mt),lt.HEAPU64=new BigUint64Array(Mt)}if(!ct){if(!((_o=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0})).buffer instanceof gt))throw Wt("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),Error("bad memory");Er()}var Ir=[],Zr=[],tn=[],_n=0,zo=null;function Xo(){if(--_n==0&&zo){var Mt=zo;zo=null,Mt()}}function Do(Mt){throw Wt(Mt="Aborted("+Mt+")"),So=!0,Kr=1,Mt=new WebAssembly.RuntimeError(Mt+". Build with -sASSERTIONS for more info."),at(Mt),Mt}var Yo,Jo=Mt=>Mt.startsWith("data:application/octet-stream;base64,"),Bo=Mt=>Mt.startsWith("file://");function Js(Mt){if(Mt==Yo&&Pt)return new Uint8Array(Pt);if(pt)return pt(Mt);throw"both async and sync fetching of the wasm failed"}function Lo(Mt,ar,wr){return function(Qr){if(!Pt&&(it||st)){if(typeof fetch=="function"&&!Bo(Qr))return fetch(Qr,{credentials:"same-origin"}).then(rn=>{if(!rn.ok)throw`failed to load wasm binary file at '${Qr}'`;return rn.arrayBuffer()}).catch(()=>Js(Qr));if(ft)return new Promise((rn,Io)=>{ft(Qr,Ks=>rn(new Uint8Array(Ks)),Io)})}return Promise.resolve().then(()=>Js(Qr))}(Mt).then(Qr=>WebAssembly.instantiate(Qr,ar)).then(wr,Qr=>{Wt(`failed to asynchronously prepare wasm: ${Qr}`),Do(Qr)})}function Dt(){return{a:{j:Lr,b:gu,E:yu,g:iy,V:oy,A:ly,C:uy,W:cy,T:dy,L:fy,S:py,o:hy,B:my,y:gy,U:yy,z:_y,_:Gy,Z:qy,P:Yy,w:Ky,F:Xy,k:Qy,O:Cu,Y:Zy,I:Jy,J:e1,K:t1,G:wy,H:xy,v:r1,q:n1,l:i1,p:o1,e:s1,X:a1,x:l1,d:$y,f:u1,i:d1,u:f1,t:p1,s:h1,Q:Ty,R:ky,D:Qo,h:Oy,n:Iy,M:Ay,m:Py,a:_o,r:Jr,N:Cy,c:y1}}}var vn={836900:(Mt,ar,wr,Qr,rn)=>{if(lt===void 0||!lt.Ua)return 1;if((Mt=_u(Mt>>>0)).startsWith("./")&&(Mt=Mt.substring(2)),!(Mt=lt.Ua.get(Mt)))return 2;if(Qr>>>=0,(ar>>>=0)+(wr>>>=0)>Mt.byteLength)return 3;try{let Io=Mt.subarray(ar,ar+wr);switch(rn){case 0:s().set(Io,Qr>>>0);break;case 1:lt.mb(Qr,Io);break;default:return 4}return 0}catch{return 4}},837583:()=>typeof wasmOffsetConverter<"u"};function Lr(){return typeof wasmOffsetConverter<"u"}function tr(Mt){this.name="ExitStatus",this.message=`Program terminated with exit(${Mt})`,this.status=Mt}var er=Mt=>{Mt.terminate(),Mt.onmessage=()=>{}},Dr=Mt=>{Po.length==0&&(qs(),Fo(Po[0]));var ar=Po.pop();if(!ar)return 6;Zo.push(ar),nn[Mt.Ra]=ar,ar.Ra=Mt.Ra;var wr={cmd:"run",start_routine:Mt.cb,arg:Mt.ab,pthread_ptr:Mt.Ra};return ar.postMessage(wr,Mt.ib),0},ko=0,In=(Mt,ar,...wr)=>{for(var Qr=2*wr.length,rn=ty(),Io=ey(8*Qr),Ks=Io>>>3,xa=0;xa>>0]=tu)}return Mt=My(Mt,0,Qr,Io,ar),Ru(rn),Mt};function Jr(Mt){if(ct)return In(0,1,Mt);if(Kr=Mt,!(0{if(Kr=Mt,ct)throw jo(Mt),"unwind";Jr(Mt)},Po=[],Zo=[],Oo=[],nn={},Ao=Mt=>{var ar=Mt.Ra;delete nn[ar],Po.push(Mt),Zo.splice(Zo.indexOf(Mt),1),Mt.Ra=0,Om(ar)};function Ko(){Oo.forEach(Mt=>Mt())}var Fo=Mt=>new Promise(ar=>{Mt.onmessage=rn=>{var Io=(rn=rn.data).cmd;if(rn.targetThread&&rn.targetThread!=hu()){var Ks=nn[rn.targetThread];Ks?Ks.postMessage(rn,rn.transferList):Wt(`Internal error! Worker sent a message "${Io}" to target pthread ${rn.targetThread}, but that thread no longer exists!`)}else Io==="checkMailbox"?Ou():Io==="spawnThread"?Dr(rn):Io==="cleanupThread"?Ao(nn[rn.thread]):Io==="killThread"?(rn=rn.thread,Io=nn[rn],delete nn[rn],er(Io),Om(rn),Zo.splice(Zo.indexOf(Io),1),Io.Ra=0):Io==="cancelThread"?nn[rn.thread].postMessage({cmd:"cancel"}):Io==="loaded"?(Mt.loaded=!0,ar(Mt)):Io==="alert"?alert(`Thread ${rn.threadId}: ${rn.text}`):rn.target==="setimmediate"?Mt.postMessage(rn):Io==="callHandler"?lt[rn.handler](...rn.args):Io&&Wt(`worker sent an unknown command ${Io}`)},Mt.onerror=rn=>{throw Wt(`worker sent an error! ${rn.filename}:${rn.lineno}: ${rn.message}`),rn};var wr,Qr=[];for(wr of[])lt.hasOwnProperty(wr)&&Qr.push(wr);Mt.postMessage({cmd:"load",handlers:Qr,wasmMemory:_o,wasmModule:Jt})});function qs(){var Mt=new Worker(new URL(import.meta.url),{type:"module",workerData:"em-pthread",name:"em-pthread"});Po.push(Mt)}var Xs,na=Mt=>{for(;0{var Mt=hu(),ar=$()[Mt+52>>>2>>>0];Mt=$()[Mt+56>>>2>>>0],Ly(ar,ar-Mt),Ru(ar)},ga=[],eu=(Mt,ar)=>{ko=0;var wr=ga[Mt];wr||(Mt>=ga.length&&(ga.length=Mt+1),ga[Mt]=wr=Xs.get(Mt)),Mt=wr(ar),0>>=0);throw ar>>>=0,wr>>>=0,$()[Qr.Xa+16>>>2>>>0]=0,$()[Qr.Xa+4>>>2>>>0]=ar,$()[Qr.Xa+8>>>2>>>0]=wr,Mt}function Tu(Mt,ar,wr,Qr){return ct?In(2,1,Mt,ar,wr,Qr):yu(Mt,ar,wr,Qr)}function yu(Mt,ar,wr,Qr){if(Mt>>>=0,ar>>>=0,wr>>>=0,Qr>>>=0,gt===void 0)return Wt("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var rn=[];return ct&&rn.length===0?Tu(Mt,ar,wr,Qr):(Mt={cb:wr,Ra:Mt,ab:Qr,ib:rn},ct?(Mt.Za="spawnThread",postMessage(Mt,rn),0):Dr(Mt))}var iu=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,uu=(Mt,ar,wr)=>{var Qr=(ar>>>=0)+wr;for(wr=ar;Mt[wr]&&!(wr>=Qr);)++wr;if(16(rn=(240&rn)==224?(15&rn)<<12|Io<<6|Ks:(7&rn)<<18|Io<<12|Ks<<6|63&Mt[ar++])?Qr+=String.fromCharCode(rn):(rn-=65536,Qr+=String.fromCharCode(55296|rn>>10,56320|1023&rn))}}else Qr+=String.fromCharCode(rn)}return Qr},_u=(Mt,ar)=>(Mt>>>=0)?uu(s(),Mt,ar):"";function iy(Mt,ar,wr){return ct?In(3,1,Mt,ar,wr):0}function oy(Mt,ar){if(ct)return In(4,1,Mt,ar)}var sy=Mt=>{for(var ar=0,wr=0;wr=Qr?ar++:2047>=Qr?ar+=2:55296<=Qr&&57343>=Qr?(ar+=4,++wr):ar+=3}return ar},ay=(Mt,ar,wr,Qr)=>{if(!(0>>=0;Qr=wr+Qr-1;for(var Io=0;Io=Ks&&(Ks=65536+((1023&Ks)<<10)|1023&Mt.charCodeAt(++Io)),127>=Ks){if(wr>=Qr)break;ar[wr++>>>0]=Ks}else{if(2047>=Ks){if(wr+1>=Qr)break;ar[wr++>>>0]=192|Ks>>6}else{if(65535>=Ks){if(wr+2>=Qr)break;ar[wr++>>>0]=224|Ks>>12}else{if(wr+3>=Qr)break;ar[wr++>>>0]=240|Ks>>18,ar[wr++>>>0]=128|Ks>>12&63}ar[wr++>>>0]=128|Ks>>6&63}ar[wr++>>>0]=128|63&Ks}}return ar[wr>>>0]=0,wr-rn},bu=(Mt,ar,wr)=>ay(Mt,s(),ar,wr);function ly(Mt,ar){if(ct)return In(5,1,Mt,ar)}function uy(Mt,ar,wr){if(ct)return In(6,1,Mt,ar,wr)}function cy(Mt,ar,wr){return ct?In(7,1,Mt,ar,wr):0}function dy(Mt,ar){if(ct)return In(8,1,Mt,ar)}function fy(Mt,ar,wr){if(ct)return In(9,1,Mt,ar,wr)}function py(Mt,ar,wr,Qr){if(ct)return In(10,1,Mt,ar,wr,Qr)}function hy(Mt,ar,wr,Qr){if(ct)return In(11,1,Mt,ar,wr,Qr)}function my(Mt,ar,wr,Qr){if(ct)return In(12,1,Mt,ar,wr,Qr)}function gy(Mt){if(ct)return In(13,1,Mt)}function yy(Mt,ar){if(ct)return In(14,1,Mt,ar)}function _y(Mt,ar,wr){if(ct)return In(15,1,Mt,ar,wr)}var Gy=()=>{Do("")},qy=()=>1;function Yy(Mt){_d(Mt>>>0,!st,1,!it,131072,!1),Ko()}function Cu(Mt){Mt>>>=0,typeof Atomics.jb=="function"&&(Atomics.jb(a(),Mt>>>2,Mt).value.then(Ou),Mt+=128,Atomics.store(a(),Mt>>>2,1))}var Ou=()=>{var Mt=hu();if(Mt&&(Cu(Mt),Mt=jy,!So))try{if(Mt(),!(0>>=0)==ar>>>0?setTimeout(Ou):ct?postMessage({targetThread:Mt,cmd:"checkMailbox"}):(Mt=nn[Mt])&&Mt.postMessage({cmd:"checkMailbox"})}var Bu=[];function Xy(Mt,ar,wr,Qr,rn){for(ar>>>=0,Qr/=2,Bu.length=Qr,wr=rn>>>0>>>3,rn=0;rn>>0];return(ar?vn[ar]:_1[Mt])(...Bu)}function Qy(Mt){Mt>>>=0,ct?postMessage({cmd:"cleanupThread",thread:Mt}):Ao(nn[Mt])}function Zy(Mt){}function Jy(Mt,ar){Mt=-9007199254740992>Mt||9007199254740992>>=0,Mt=new Date(1e3*Mt),a()[ar>>>2>>>0]=Mt.getUTCSeconds(),a()[ar+4>>>2>>>0]=Mt.getUTCMinutes(),a()[ar+8>>>2>>>0]=Mt.getUTCHours(),a()[ar+12>>>2>>>0]=Mt.getUTCDate(),a()[ar+16>>>2>>>0]=Mt.getUTCMonth(),a()[ar+20>>>2>>>0]=Mt.getUTCFullYear()-1900,a()[ar+24>>>2>>>0]=Mt.getUTCDay(),Mt=(Mt.getTime()-Date.UTC(Mt.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,a()[ar+28>>>2>>>0]=Mt}var pu=Mt=>Mt%4==0&&(Mt%100!=0||Mt%400==0),by=[0,31,60,91,121,152,182,213,244,274,305,335],vy=[0,31,59,90,120,151,181,212,243,273,304,334];function e1(Mt,ar){Mt=-9007199254740992>Mt||9007199254740992>>=0,Mt=new Date(1e3*Mt),a()[ar>>>2>>>0]=Mt.getSeconds(),a()[ar+4>>>2>>>0]=Mt.getMinutes(),a()[ar+8>>>2>>>0]=Mt.getHours(),a()[ar+12>>>2>>>0]=Mt.getDate(),a()[ar+16>>>2>>>0]=Mt.getMonth(),a()[ar+20>>>2>>>0]=Mt.getFullYear()-1900,a()[ar+24>>>2>>>0]=Mt.getDay();var wr=(pu(Mt.getFullYear())?by:vy)[Mt.getMonth()]+Mt.getDate()-1|0;a()[ar+28>>>2>>>0]=wr,a()[ar+36>>>2>>>0]=-60*Mt.getTimezoneOffset(),wr=new Date(Mt.getFullYear(),6,1).getTimezoneOffset();var Qr=new Date(Mt.getFullYear(),0,1).getTimezoneOffset();Mt=0|(wr!=Qr&&Mt.getTimezoneOffset()==Math.min(Qr,wr)),a()[ar+32>>>2>>>0]=Mt}function t1(Mt){Mt>>>=0;var ar=new Date(a()[Mt+20>>>2>>>0]+1900,a()[Mt+16>>>2>>>0],a()[Mt+12>>>2>>>0],a()[Mt+8>>>2>>>0],a()[Mt+4>>>2>>>0],a()[Mt>>>2>>>0],0),wr=a()[Mt+32>>>2>>>0],Qr=ar.getTimezoneOffset(),rn=new Date(ar.getFullYear(),6,1).getTimezoneOffset(),Io=new Date(ar.getFullYear(),0,1).getTimezoneOffset(),Ks=Math.min(Io,rn);return 0>wr?a()[Mt+32>>>2>>>0]=+(rn!=Io&&Ks==Qr):0>>2>>>0]=ar.getDay(),wr=(pu(ar.getFullYear())?by:vy)[ar.getMonth()]+ar.getDate()-1|0,a()[Mt+28>>>2>>>0]=wr,a()[Mt>>>2>>>0]=ar.getSeconds(),a()[Mt+4>>>2>>>0]=ar.getMinutes(),a()[Mt+8>>>2>>>0]=ar.getHours(),a()[Mt+12>>>2>>>0]=ar.getDate(),a()[Mt+16>>>2>>>0]=ar.getMonth(),a()[Mt+20>>>2>>>0]=ar.getYear(),Mt=ar.getTime(),BigInt(isNaN(Mt)?-1:Mt/1e3)}function wy(Mt,ar,wr,Qr,rn,Io,Ks){return ct?In(16,1,Mt,ar,wr,Qr,rn,Io,Ks):-52}function xy(Mt,ar,wr,Qr,rn,Io){if(ct)return In(17,1,Mt,ar,wr,Qr,rn,Io)}function r1(Mt,ar,wr,Qr){Mt>>>=0,ar>>>=0,wr>>>=0,Qr>>>=0;var rn=new Date().getFullYear(),Io=new Date(rn,0,1),Ks=new Date(rn,6,1);rn=Io.getTimezoneOffset();var xa=Ks.getTimezoneOffset(),tu=Math.max(rn,xa);$()[Mt>>>2>>>0]=60*tu,a()[ar>>>2>>>0]=+(rn!=xa),Io=(Mt=ru=>ru.toLocaleTimeString(void 0,{hour12:!1,timeZoneName:"short"}).split(" ")[1])(Io),Ks=Mt(Ks),xa>>=0,ar>>>=0,wr>>>=0,Uu.length=0;for(var Qr;Qr=s()[ar++>>>0];){var rn=Qr!=105;wr+=(rn&=Qr!=112)&&wr%8?4:0,Uu.push(Qr==112?$()[wr>>>2>>>0]:Qr==106?en[wr>>>3]:Qr==105?a()[wr>>>2>>>0]:c()[wr>>>3>>>0]),wr+=rn?8:4}return vn[Mt](...Uu)}var i1=()=>{},o1=()=>Date.now();function s1(Mt,ar){return Wt(_u(Mt>>>0,ar>>>0))}var $y,a1=()=>{throw ko+=1,"unwind"};function l1(){return 4294901760}$y=()=>performance.timeOrigin+performance.now();var u1=()=>navigator.hardwareConcurrency;function d1(){return Do("Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER"),0}function f1(Mt){Mt>>>=0;var ar=s().length;if(Mt<=ar||4294901760=wr;wr*=2){var Qr=ar*(1+.2/wr);Qr=Math.min(Qr,Mt+100663296);var rn=Math;Qr=Math.max(Mt,Qr);e:{rn=(rn.min.call(rn,4294901760,Qr+(65536-Qr%65536)%65536)-_o.buffer.byteLength+65535)/65536;try{_o.grow(rn),Er();var Io=1;break e}catch{}Io=void 0}if(Io)return!0}return!1}var Iu=()=>(Do("Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER"),0),wu={},Ey=Mt=>{Mt.forEach(ar=>{Iu()})};function p1(){var Mt=Error().stack.toString().split(` +as ORT format: ${$}`)}}loadFromOnnxFormat(e,o){let s=Dp.onnx.ModelProto.decode(e);if(Rt.longToNumber(s.irVersion)<3)throw new Error("only support ONNX model with IR_VERSION>=3");this._opsets=s.opsetImport.map(a=>({domain:a.domain,version:Rt.longToNumber(a.version)})),this._graph=Wi.from(s.graph,o)}loadFromOrtFormat(e,o){let s=new w.ByteBuffer(e),a=vg.InferenceSession.getRootAsInferenceSession(s).model();if(Rt.longToNumber(a.irVersion())<3)throw new Error("only support ONNX model with IR_VERSION>=3");this._opsets=[];for(let $=0;${Sp(),Ap(),Ut(),Lp(),ro=class{constructor(e={}){this._initialized=!1,this.backendHint=e.backendHint,this.profiler=xn.create(e.profiler),this.context={profiler:this.profiler,graphInputTypes:[],graphInputDims:[]}}get inputNames(){return this._model.graph.getInputNames()}get outputNames(){return this._model.graph.getOutputNames()}startProfiling(){this.profiler.start()}endProfiling(){this.profiler.stop()}async loadModel(e,o,s){await this.profiler.event("session","Session.loadModel",async()=>{let a=await Mi(this.backendHint);if(this.sessionHandler=a.createSessionHandler(this.context),this._model=new eo,typeof e=="string"){let $=e.endsWith(".ort");{let c=await(await fetch(e)).arrayBuffer();this.initialize(new Uint8Array(c),$)}}else if(ArrayBuffer.isView(e))this.initialize(e);else{let $=new Uint8Array(e,o||0,s||e.byteLength);this.initialize($)}})}initialize(e,o){if(this._initialized)throw new Error("already initialized");this.profiler.event("session","Session.initialize",()=>{let s=this.sessionHandler.transformGraph?this.sessionHandler:void 0;this._model.load(e,s,o),this.sessionHandler.onGraphInitialized&&this.sessionHandler.onGraphInitialized(this._model.graph),this.initializeOps(this._model.graph),this._executionPlan=new Zn(this._model.graph,this._ops,this.profiler)}),this._initialized=!0}async run(e){if(!this._initialized)throw new Error("session not initialized yet");return this.profiler.event("session","Session.run",async()=>{let o=this.normalizeAndValidateInputs(e),s=await this._executionPlan.execute(this.sessionHandler,o);return this.createOutput(s)})}normalizeAndValidateInputs(e){let o=this._model.graph.getInputNames();if(Array.isArray(e)){if(e.length!==o.length)throw new Error(`incorrect input array length: expected ${o.length} but got ${e.length}`)}else{if(e.size!==o.length)throw new Error(`incorrect input map size: expected ${o.length} but got ${e.size}`);let s=new Array(e.size),a=0;for(let $=0;${Yt(),We(),no=class{constructor(e){this.session=e,this.inputNames=this.session.inputNames,this.outputNames=this.session.outputNames}async dispose(){}async run(e,o,s){let a=new Map;for(let nt in e)if(Object.hasOwnProperty.call(e,nt)){let at=e[nt];a.set(nt,new bt(at.dims,at.type,void 0,void 0,at.data))}let $=await this.session.run(a),c={};return $.forEach((nt,at)=>{c[at]=new yt(nt.type,nt.data,nt.dims)}),c}startProfiling(){this.session.startProfiling()}endProfiling(){this.session.endProfiling()}}}),Bp={};Or(Bp,{onnxjsBackend:()=>Ig});var Hi,Ig,Fp=O(()=>{$p(),kp(),Hi=class{async init(){}async createInferenceSessionHandler(e,o){let s=new ro(o);return typeof e=="string"?await s.loadModel(e):await s.loadModel(e),new no(s)}},Ig=new Hi}),oo=O(()=>{}),Rp={};Or(Rp,{default:()=>_g});var Cp,Np,_g,Gp=O(()=>{qi(),Ke(),Vr(),Cp="ort-wasm-proxy-worker",Np=globalThis.self?.name===Cp,Np&&(self.onmessage=e=>{let{type:o,in:s}=e.data;try{switch(o){case"init-wasm":io(s.wasm).then(()=>{ao(s).then(()=>{postMessage({type:o})},a=>{postMessage({type:o,err:a})})},a=>{postMessage({type:o,err:a})});break;case"init-ep":{let{epName:a,env:$}=s;so($,a).then(()=>{postMessage({type:o})},c=>{postMessage({type:o,err:c})});break}case"copy-from":{let{buffer:a}=s,$=zr(a);postMessage({type:o,out:$});break}case"create":{let{model:a,options:$}=s;uo(a,$).then(c=>{postMessage({type:o,out:c})},c=>{postMessage({type:o,err:c})});break}case"release":lo(s),postMessage({type:o});break;case"run":{let{sessionId:a,inputIndices:$,inputs:c,outputIndices:nt,options:at}=s;fo(a,$,c,nt,new Array(nt.length).fill(null),at).then(lt=>{lt.some(et=>et[3]!=="cpu")?postMessage({type:o,err:"Proxy does not support non-cpu tensor location."}):postMessage({type:o,out:lt},po([...c,...lt]))},lt=>{postMessage({type:o,err:lt})});break}case"end-profiling":co(s),postMessage({type:o});break;default:}}catch(a){postMessage({type:o,err:a})}}),_g=Np?null:e=>new Worker(e??br,{type:"module",name:Cp})}),Up={};Or(Up,{default:()=>Og});var ji,Mp,Og,Vp=O(()=>{Mp=(ji=import.meta.url,async function(e={}){function o(){return _o.buffer!=Ot.buffer&&Ir(),Ot}function s(){return _o.buffer!=Ot.buffer&&Ir(),gr}function a(){return _o.buffer!=Ot.buffer&&Ir(),$o}function $(){return _o.buffer!=Ot.buffer&&Ir(),On}function c(){return _o.buffer!=Ot.buffer&&Ir(),Yr}var nt,at,lt=Object.assign({},e),et=new Promise((Mt,ar)=>{nt=Mt,at=ar}),it=typeof window=="object",st=typeof importScripts=="function",ct=st&&self.name=="em-pthread";lt.mountExternalData=(Mt,ar)=>{Mt.startsWith("./")&&(Mt=Mt.substring(2)),(lt.Ua||(lt.Ua=new Map)).set(Mt,ar)},lt.unmountExternalData=()=>{delete lt.Ua};var ft,pt,gt=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,shared:!0}).buffer.constructor,wt=Object.assign({},lt),vt="./this.program",_t=(Mt,ar)=>{throw ar},$t="";(it||st)&&(st?$t=self.location.href:typeof document<"u"&&document.currentScript&&($t=document.currentScript.src),ji&&($t=ji),$t=$t.startsWith("blob:")?"":$t.substr(0,$t.replace(/[?#].*/,"").lastIndexOf("/")+1),st&&(pt=Mt=>{var ar=new XMLHttpRequest;return ar.open("GET",Mt,!1),ar.responseType="arraybuffer",ar.send(null),new Uint8Array(ar.response)}),ft=(Mt,ar,wr)=>{var Qr=new XMLHttpRequest;Qr.open("GET",Mt,!0),Qr.responseType="arraybuffer",Qr.onload=()=>{Qr.status==200||Qr.status==0&&Qr.response?ar(Qr.response):wr()},Qr.onerror=wr,Qr.send(null)});var Pt,Nt=console.log.bind(console),Lt=console.error.bind(console),Ft=Nt,Wt=Lt;if(Object.assign(lt,wt),wt=null,ct){let Mt=function(ar){try{var wr=ar.data,Qr=wr.cmd;if(Qr==="load"){let _n=[];self.onmessage=Ao=>_n.push(Ao),self.startWorker=()=>{postMessage({cmd:"loaded"});for(let Ao of _n)Mt(Ao);self.onmessage=Mt};for(let Ao of wr.handlers)lt[Ao]&&!lt[Ao].proxy||(lt[Ao]=(...qs)=>{postMessage({Za:"callHandler",kb:Ao,args:qs})},Ao=="print"&&(Ft=lt[Ao]),Ao=="printErr"&&(Wt=lt[Ao]));_o=wr.wasmMemory,Ir(),_r(wr.wasmModule)}else if(Qr==="run"){_d(wr.pthread_ptr,0,0,1,0,0),Cu(wr.pthread_ptr),ba(),Yo(),vr||=!0;try{eu(wr.start_routine,wr.arg)}catch(_n){if(_n!="unwind")throw _n}}else Qr==="cancel"?hu()&&Pu(-1):wr.target!=="setimmediate"&&(Qr==="checkMailbox"?vr&&Ou():Qr&&(Wt(`worker: received unknown command ${Qr}`),Wt(wr)))}catch(_n){throw Ny(),_n}};var _r,vr=!1;Wt=function(...ar){ar=ar.join(" "),console.error(ar)},self.alert=function(...ar){postMessage({Za:"alert",text:ar.join(" "),nb:hu()})},lt.instantiateWasm=(ar,wr)=>new Promise(Qr=>{_r=_n=>{_n=new WebAssembly.Instance(_n,Dt()),wr(_n),Qr()}}),self.onunhandledrejection=ar=>{throw ar.reason||ar},self.onmessage=Mt}lt.wasmBinary&&(Pt=lt.wasmBinary);var _o,Jt,Kr,Ot,gr,$o,On,tn,Yr,So=!1;function Ir(){var Mt=_o.buffer;lt.HEAP8=Ot=new Int8Array(Mt),lt.HEAP16=new Int16Array(Mt),lt.HEAPU8=gr=new Uint8Array(Mt),lt.HEAPU16=new Uint16Array(Mt),lt.HEAP32=$o=new Int32Array(Mt),lt.HEAPU32=On=new Uint32Array(Mt),lt.HEAPF32=new Float32Array(Mt),lt.HEAPF64=Yr=new Float64Array(Mt),lt.HEAP64=tn=new BigInt64Array(Mt),lt.HEAPU64=new BigUint64Array(Mt)}if(!ct){if(!((_o=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0})).buffer instanceof gt))throw Wt("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),Error("bad memory");Ir()}var Lr=[],Zr=[],rn=[],nn=0,Fo=null;function Ko(){if(--nn==0&&Fo){var Mt=Fo;Fo=null,Mt()}}function jo(Mt){throw Wt(Mt="Aborted("+Mt+")"),So=!0,Kr=1,Mt=new WebAssembly.RuntimeError(Mt+". Build with -sASSERTIONS for more info."),at(Mt),Mt}var zo,Zo=Mt=>Mt.startsWith("data:application/octet-stream;base64,"),Bo=Mt=>Mt.startsWith("file://");function Js(Mt){if(Mt==zo&&Pt)return new Uint8Array(Pt);if(pt)return pt(Mt);throw"both async and sync fetching of the wasm failed"}function Ks(Mt,ar,wr){return function(Qr){if(!Pt&&(it||st)){if(typeof fetch=="function"&&!Bo(Qr))return fetch(Qr,{credentials:"same-origin"}).then(_n=>{if(!_n.ok)throw`failed to load wasm binary file at '${Qr}'`;return _n.arrayBuffer()}).catch(()=>Js(Qr));if(ft)return new Promise((_n,Ao)=>{ft(Qr,qs=>_n(new Uint8Array(qs)),Ao)})}return Promise.resolve().then(()=>Js(Qr))}(Mt).then(Qr=>WebAssembly.instantiate(Qr,ar)).then(wr,Qr=>{Wt(`failed to asynchronously prepare wasm: ${Qr}`),jo(Qr)})}function Dt(){return{a:{j:Dr,b:gu,E:yu,g:iy,V:oy,A:ly,C:uy,W:cy,T:dy,L:fy,S:py,o:hy,B:my,y:gy,U:yy,z:_y,_:Gy,Z:qy,P:Yy,w:Ky,F:Xy,k:Qy,O:Cu,Y:Zy,I:Jy,J:e1,K:t1,G:wy,H:xy,v:r1,q:n1,l:i1,p:o1,e:s1,X:a1,x:l1,d:$y,f:u1,i:d1,u:f1,t:p1,s:h1,Q:Ty,R:ky,D:Xo,h:Oy,n:Iy,M:Ay,m:Py,a:_o,r:en,N:Cy,c:y1}}}var Jr={836900:(Mt,ar,wr,Qr,_n)=>{if(lt===void 0||!lt.Ua)return 1;if((Mt=_u(Mt>>>0)).startsWith("./")&&(Mt=Mt.substring(2)),!(Mt=lt.Ua.get(Mt)))return 2;if(Qr>>>=0,(ar>>>=0)+(wr>>>=0)>Mt.byteLength)return 3;try{let Ao=Mt.subarray(ar,ar+wr);switch(_n){case 0:s().set(Ao,Qr>>>0);break;case 1:lt.mb(Qr,Ao);break;default:return 4}return 0}catch{return 4}},837583:()=>typeof wasmOffsetConverter<"u"};function Dr(){return typeof wasmOffsetConverter<"u"}function tr(Mt){this.name="ExitStatus",this.message=`Program terminated with exit(${Mt})`,this.status=Mt}var er=Mt=>{Mt.terminate(),Mt.onmessage=()=>{}},Er=Mt=>{Do.length==0&&(Jo(),Lo(Do[0]));var ar=Do.pop();if(!ar)return 6;Qo.push(ar),vn[Mt.Ra]=ar,ar.Ra=Mt.Ra;var wr={cmd:"run",start_routine:Mt.cb,arg:Mt.ab,pthread_ptr:Mt.Ra};return ar.postMessage(wr,Mt.ib),0},Eo=0,In=(Mt,ar,...wr)=>{for(var Qr=2*wr.length,_n=ty(),Ao=ey(8*Qr),qs=Ao>>>3,xa=0;xa>>0]=tu)}return Mt=My(Mt,0,Qr,Ao,ar),Ru(_n),Mt};function en(Mt){if(ct)return In(0,1,Mt);if(Kr=Mt,!(0{if(Kr=Mt,ct)throw Io(Mt),"unwind";en(Mt)},Do=[],Qo=[],Oo=[],vn={},Po=Mt=>{var ar=Mt.Ra;delete vn[ar],Do.push(Mt),Qo.splice(Qo.indexOf(Mt),1),Mt.Ra=0,Om(ar)};function Yo(){Oo.forEach(Mt=>Mt())}var Lo=Mt=>new Promise(ar=>{Mt.onmessage=_n=>{var Ao=(_n=_n.data).cmd;if(_n.targetThread&&_n.targetThread!=hu()){var qs=vn[_n.targetThread];qs?qs.postMessage(_n,_n.transferList):Wt(`Internal error! Worker sent a message "${Ao}" to target pthread ${_n.targetThread}, but that thread no longer exists!`)}else Ao==="checkMailbox"?Ou():Ao==="spawnThread"?Er(_n):Ao==="cleanupThread"?Po(vn[_n.thread]):Ao==="killThread"?(_n=_n.thread,Ao=vn[_n],delete vn[_n],er(Ao),Om(_n),Qo.splice(Qo.indexOf(Ao),1),Ao.Ra=0):Ao==="cancelThread"?vn[_n.thread].postMessage({cmd:"cancel"}):Ao==="loaded"?(Mt.loaded=!0,ar(Mt)):Ao==="alert"?alert(`Thread ${_n.threadId}: ${_n.text}`):_n.target==="setimmediate"?Mt.postMessage(_n):Ao==="callHandler"?lt[_n.handler](..._n.args):Ao&&Wt(`worker sent an unknown command ${Ao}`)},Mt.onerror=_n=>{throw Wt(`worker sent an error! ${_n.filename}:${_n.lineno}: ${_n.message}`),_n};var wr,Qr=[];for(wr of[])lt.hasOwnProperty(wr)&&Qr.push(wr);Mt.postMessage({cmd:"load",handlers:Qr,wasmMemory:_o,wasmModule:Jt})});function Jo(){var Mt=new Worker(new URL(import.meta.url),{type:"module",workerData:"em-pthread",name:"em-pthread"});Do.push(Mt)}var Xs,na=Mt=>{for(;0{var Mt=hu(),ar=$()[Mt+52>>>2>>>0];Mt=$()[Mt+56>>>2>>>0],Ly(ar,ar-Mt),Ru(ar)},ga=[],eu=(Mt,ar)=>{Eo=0;var wr=ga[Mt];wr||(Mt>=ga.length&&(ga.length=Mt+1),ga[Mt]=wr=Xs.get(Mt)),Mt=wr(ar),0>>=0);throw ar>>>=0,wr>>>=0,$()[Qr.Xa+16>>>2>>>0]=0,$()[Qr.Xa+4>>>2>>>0]=ar,$()[Qr.Xa+8>>>2>>>0]=wr,Mt}function Tu(Mt,ar,wr,Qr){return ct?In(2,1,Mt,ar,wr,Qr):yu(Mt,ar,wr,Qr)}function yu(Mt,ar,wr,Qr){if(Mt>>>=0,ar>>>=0,wr>>>=0,Qr>>>=0,gt===void 0)return Wt("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var _n=[];return ct&&_n.length===0?Tu(Mt,ar,wr,Qr):(Mt={cb:wr,Ra:Mt,ab:Qr,ib:_n},ct?(Mt.Za="spawnThread",postMessage(Mt,_n),0):Er(Mt))}var iu=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,uu=(Mt,ar,wr)=>{var Qr=(ar>>>=0)+wr;for(wr=ar;Mt[wr]&&!(wr>=Qr);)++wr;if(16(_n=(240&_n)==224?(15&_n)<<12|Ao<<6|qs:(7&_n)<<18|Ao<<12|qs<<6|63&Mt[ar++])?Qr+=String.fromCharCode(_n):(_n-=65536,Qr+=String.fromCharCode(55296|_n>>10,56320|1023&_n))}}else Qr+=String.fromCharCode(_n)}return Qr},_u=(Mt,ar)=>(Mt>>>=0)?uu(s(),Mt,ar):"";function iy(Mt,ar,wr){return ct?In(3,1,Mt,ar,wr):0}function oy(Mt,ar){if(ct)return In(4,1,Mt,ar)}var sy=Mt=>{for(var ar=0,wr=0;wr=Qr?ar++:2047>=Qr?ar+=2:55296<=Qr&&57343>=Qr?(ar+=4,++wr):ar+=3}return ar},ay=(Mt,ar,wr,Qr)=>{if(!(0>>=0;Qr=wr+Qr-1;for(var Ao=0;Ao=qs&&(qs=65536+((1023&qs)<<10)|1023&Mt.charCodeAt(++Ao)),127>=qs){if(wr>=Qr)break;ar[wr++>>>0]=qs}else{if(2047>=qs){if(wr+1>=Qr)break;ar[wr++>>>0]=192|qs>>6}else{if(65535>=qs){if(wr+2>=Qr)break;ar[wr++>>>0]=224|qs>>12}else{if(wr+3>=Qr)break;ar[wr++>>>0]=240|qs>>18,ar[wr++>>>0]=128|qs>>12&63}ar[wr++>>>0]=128|qs>>6&63}ar[wr++>>>0]=128|63&qs}}return ar[wr>>>0]=0,wr-_n},bu=(Mt,ar,wr)=>ay(Mt,s(),ar,wr);function ly(Mt,ar){if(ct)return In(5,1,Mt,ar)}function uy(Mt,ar,wr){if(ct)return In(6,1,Mt,ar,wr)}function cy(Mt,ar,wr){return ct?In(7,1,Mt,ar,wr):0}function dy(Mt,ar){if(ct)return In(8,1,Mt,ar)}function fy(Mt,ar,wr){if(ct)return In(9,1,Mt,ar,wr)}function py(Mt,ar,wr,Qr){if(ct)return In(10,1,Mt,ar,wr,Qr)}function hy(Mt,ar,wr,Qr){if(ct)return In(11,1,Mt,ar,wr,Qr)}function my(Mt,ar,wr,Qr){if(ct)return In(12,1,Mt,ar,wr,Qr)}function gy(Mt){if(ct)return In(13,1,Mt)}function yy(Mt,ar){if(ct)return In(14,1,Mt,ar)}function _y(Mt,ar,wr){if(ct)return In(15,1,Mt,ar,wr)}var Gy=()=>{jo("")},qy=()=>1;function Yy(Mt){_d(Mt>>>0,!st,1,!it,131072,!1),Yo()}function Cu(Mt){Mt>>>=0,typeof Atomics.jb=="function"&&(Atomics.jb(a(),Mt>>>2,Mt).value.then(Ou),Mt+=128,Atomics.store(a(),Mt>>>2,1))}var Ou=()=>{var Mt=hu();if(Mt&&(Cu(Mt),Mt=jy,!So))try{if(Mt(),!(0>>=0)==ar>>>0?setTimeout(Ou):ct?postMessage({targetThread:Mt,cmd:"checkMailbox"}):(Mt=vn[Mt])&&Mt.postMessage({cmd:"checkMailbox"})}var Bu=[];function Xy(Mt,ar,wr,Qr,_n){for(ar>>>=0,Qr/=2,Bu.length=Qr,wr=_n>>>0>>>3,_n=0;_n>>0];return(ar?Jr[ar]:_1[Mt])(...Bu)}function Qy(Mt){Mt>>>=0,ct?postMessage({cmd:"cleanupThread",thread:Mt}):Po(vn[Mt])}function Zy(Mt){}function Jy(Mt,ar){Mt=-9007199254740992>Mt||9007199254740992>>=0,Mt=new Date(1e3*Mt),a()[ar>>>2>>>0]=Mt.getUTCSeconds(),a()[ar+4>>>2>>>0]=Mt.getUTCMinutes(),a()[ar+8>>>2>>>0]=Mt.getUTCHours(),a()[ar+12>>>2>>>0]=Mt.getUTCDate(),a()[ar+16>>>2>>>0]=Mt.getUTCMonth(),a()[ar+20>>>2>>>0]=Mt.getUTCFullYear()-1900,a()[ar+24>>>2>>>0]=Mt.getUTCDay(),Mt=(Mt.getTime()-Date.UTC(Mt.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,a()[ar+28>>>2>>>0]=Mt}var pu=Mt=>Mt%4==0&&(Mt%100!=0||Mt%400==0),by=[0,31,60,91,121,152,182,213,244,274,305,335],vy=[0,31,59,90,120,151,181,212,243,273,304,334];function e1(Mt,ar){Mt=-9007199254740992>Mt||9007199254740992>>=0,Mt=new Date(1e3*Mt),a()[ar>>>2>>>0]=Mt.getSeconds(),a()[ar+4>>>2>>>0]=Mt.getMinutes(),a()[ar+8>>>2>>>0]=Mt.getHours(),a()[ar+12>>>2>>>0]=Mt.getDate(),a()[ar+16>>>2>>>0]=Mt.getMonth(),a()[ar+20>>>2>>>0]=Mt.getFullYear()-1900,a()[ar+24>>>2>>>0]=Mt.getDay();var wr=(pu(Mt.getFullYear())?by:vy)[Mt.getMonth()]+Mt.getDate()-1|0;a()[ar+28>>>2>>>0]=wr,a()[ar+36>>>2>>>0]=-60*Mt.getTimezoneOffset(),wr=new Date(Mt.getFullYear(),6,1).getTimezoneOffset();var Qr=new Date(Mt.getFullYear(),0,1).getTimezoneOffset();Mt=0|(wr!=Qr&&Mt.getTimezoneOffset()==Math.min(Qr,wr)),a()[ar+32>>>2>>>0]=Mt}function t1(Mt){Mt>>>=0;var ar=new Date(a()[Mt+20>>>2>>>0]+1900,a()[Mt+16>>>2>>>0],a()[Mt+12>>>2>>>0],a()[Mt+8>>>2>>>0],a()[Mt+4>>>2>>>0],a()[Mt>>>2>>>0],0),wr=a()[Mt+32>>>2>>>0],Qr=ar.getTimezoneOffset(),_n=new Date(ar.getFullYear(),6,1).getTimezoneOffset(),Ao=new Date(ar.getFullYear(),0,1).getTimezoneOffset(),qs=Math.min(Ao,_n);return 0>wr?a()[Mt+32>>>2>>>0]=+(_n!=Ao&&qs==Qr):0>>2>>>0]=ar.getDay(),wr=(pu(ar.getFullYear())?by:vy)[ar.getMonth()]+ar.getDate()-1|0,a()[Mt+28>>>2>>>0]=wr,a()[Mt>>>2>>>0]=ar.getSeconds(),a()[Mt+4>>>2>>>0]=ar.getMinutes(),a()[Mt+8>>>2>>>0]=ar.getHours(),a()[Mt+12>>>2>>>0]=ar.getDate(),a()[Mt+16>>>2>>>0]=ar.getMonth(),a()[Mt+20>>>2>>>0]=ar.getYear(),Mt=ar.getTime(),BigInt(isNaN(Mt)?-1:Mt/1e3)}function wy(Mt,ar,wr,Qr,_n,Ao,qs){return ct?In(16,1,Mt,ar,wr,Qr,_n,Ao,qs):-52}function xy(Mt,ar,wr,Qr,_n,Ao){if(ct)return In(17,1,Mt,ar,wr,Qr,_n,Ao)}function r1(Mt,ar,wr,Qr){Mt>>>=0,ar>>>=0,wr>>>=0,Qr>>>=0;var _n=new Date().getFullYear(),Ao=new Date(_n,0,1),qs=new Date(_n,6,1);_n=Ao.getTimezoneOffset();var xa=qs.getTimezoneOffset(),tu=Math.max(_n,xa);$()[Mt>>>2>>>0]=60*tu,a()[ar>>>2>>>0]=+(_n!=xa),Ao=(Mt=ru=>ru.toLocaleTimeString(void 0,{hour12:!1,timeZoneName:"short"}).split(" ")[1])(Ao),qs=Mt(qs),xa<_n?(bu(Ao,wr,17),bu(qs,Qr,17)):(bu(Ao,Qr,17),bu(qs,wr,17))}var Uu=[];function n1(Mt,ar,wr){Mt>>>=0,ar>>>=0,wr>>>=0,Uu.length=0;for(var Qr;Qr=s()[ar++>>>0];){var _n=Qr!=105;wr+=(_n&=Qr!=112)&&wr%8?4:0,Uu.push(Qr==112?$()[wr>>>2>>>0]:Qr==106?tn[wr>>>3]:Qr==105?a()[wr>>>2>>>0]:c()[wr>>>3>>>0]),wr+=_n?8:4}return Jr[Mt](...Uu)}var i1=()=>{},o1=()=>Date.now();function s1(Mt,ar){return Wt(_u(Mt>>>0,ar>>>0))}var $y,a1=()=>{throw Eo+=1,"unwind"};function l1(){return 4294901760}$y=()=>performance.timeOrigin+performance.now();var u1=()=>navigator.hardwareConcurrency;function d1(){return jo("Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER"),0}function f1(Mt){Mt>>>=0;var ar=s().length;if(Mt<=ar||4294901760=wr;wr*=2){var Qr=ar*(1+.2/wr);Qr=Math.min(Qr,Mt+100663296);var _n=Math;Qr=Math.max(Mt,Qr);e:{_n=(_n.min.call(_n,4294901760,Qr+(65536-Qr%65536)%65536)-_o.buffer.byteLength+65535)/65536;try{_o.grow(_n),Ir();var Ao=1;break e}catch{}Ao=void 0}if(Ao)return!0}return!1}var Iu=()=>(jo("Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER"),0),wu={},Ey=Mt=>{Mt.forEach(ar=>{Iu()})};function p1(){var Mt=Error().stack.toString().split(` `);return Mt[0]=="Error"&&Mt.shift(),Ey(Mt),wu.$a=Iu(),wu.bb=Mt,wu.$a}function h1(Mt,ar,wr){if(Mt>>>=0,ar>>>=0,wu.$a==Mt)var Qr=wu.bb;else(Qr=Error().stack.toString().split(` -`))[0]=="Error"&&Qr.shift(),Ey(Qr);for(var rn=3;Qr[rn]&&Iu()!=Mt;)++rn;for(Mt=0;Mt>>2>>>0]=Iu();return Mt}var zu,Gu={},Sy=()=>{if(!zu){var Mt,ar={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:vt};for(Mt in Gu)Gu[Mt]===void 0?delete ar[Mt]:ar[Mt]=Gu[Mt];var wr=[];for(Mt in ar)wr.push(`${Mt}=${ar[Mt]}`);zu=wr}return zu};function Ty(Mt,ar){if(ct)return In(18,1,Mt,ar);Mt>>>=0,ar>>>=0;var wr=0;return Sy().forEach((Qr,rn)=>{var Io=ar+wr;for(rn=$()[Mt+4*rn>>>2>>>0]=Io,Io=0;Io>>0]=Qr.charCodeAt(Io);o()[rn>>>0]=0,wr+=Qr.length+1}),0}function ky(Mt,ar){if(ct)return In(19,1,Mt,ar);Mt>>>=0,ar>>>=0;var wr=Sy();$()[Mt>>>2>>>0]=wr.length;var Qr=0;return wr.forEach(rn=>Qr+=rn.length+1),$()[ar>>>2>>>0]=Qr,0}function Oy(Mt){return ct?In(20,1,Mt):52}function Iy(Mt,ar,wr,Qr){return ct?In(21,1,Mt,ar,wr,Qr):52}function Ay(Mt,ar,wr,Qr){return ct?In(22,1,Mt,ar,wr,Qr):70}var m1=[null,[],[]];function Py(Mt,ar,wr,Qr){if(ct)return In(23,1,Mt,ar,wr,Qr);ar>>>=0,wr>>>=0,Qr>>>=0;for(var rn=0,Io=0;Io>>2>>>0],xa=$()[ar+4>>>2>>>0];ar+=8;for(var tu=0;tu>>0],nu=m1[Mt];ru===0||ru===10?((Mt===1?Ft:Wt)(uu(nu,0)),nu.length=0):nu.push(ru)}rn+=xa}return $()[Qr>>>2>>>0]=rn,0}var Ry=[31,29,31,30,31,30,31,31,30,31,30,31],Dy=[31,28,31,30,31,30,31,31,30,31,30,31],g1=(Mt,ar)=>{o().set(Mt,ar>>>0)};function Cy(Mt,ar,wr,Qr){function rn(Eo,_a,$a){for(Eo=typeof Eo=="number"?Eo.toString():Eo||"";Eo.length<_a;)Eo=$a[0]+Eo;return Eo}function Io(Eo,_a){return rn(Eo,_a,"0")}function Ks(Eo,_a){function $a(zy){return 0>zy?-1:0fu-Eo.getDate())){Eo.setDate(Eo.getDate()+_a);break}_a-=fu-Eo.getDate()+1,Eo.setDate(1),11>$a?Eo.setMonth($a+1):(Eo.setMonth(0),Eo.setFullYear(Eo.getFullYear()+1))}return $a=new Date(Eo.getFullYear()+1,0,4),_a=xa(new Date(Eo.getFullYear(),0,4)),$a=xa($a),0>=Ks(_a,Eo)?0>=Ks($a,Eo)?Eo.getFullYear()+1:Eo.getFullYear():Eo.getFullYear()-1}Mt>>>=0,ar>>>=0,wr>>>=0,Qr>>>=0;var ru=$()[Qr+40>>>2>>>0];for(var nu in Qr={gb:a()[Qr>>>2>>>0],fb:a()[Qr+4>>>2>>>0],Va:a()[Qr+8>>>2>>>0],Ya:a()[Qr+12>>>2>>>0],Wa:a()[Qr+16>>>2>>>0],Ta:a()[Qr+20>>>2>>>0],Qa:a()[Qr+24>>>2>>>0],Sa:a()[Qr+28>>>2>>>0],ob:a()[Qr+32>>>2>>>0],eb:a()[Qr+36>>>2>>>0],hb:ru?_u(ru):""},wr=_u(wr),ru={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})wr=wr.replace(new RegExp(nu,"g"),ru[nu]);var By="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),Uy="January February March April May June July August September October November December".split(" ");for(nu in ru={"%a":Eo=>By[Eo.Qa].substring(0,3),"%A":Eo=>By[Eo.Qa],"%b":Eo=>Uy[Eo.Wa].substring(0,3),"%B":Eo=>Uy[Eo.Wa],"%C":Eo=>Io((Eo.Ta+1900)/100|0,2),"%d":Eo=>Io(Eo.Ya,2),"%e":Eo=>rn(Eo.Ya,2," "),"%g":Eo=>tu(Eo).toString().substring(2),"%G":tu,"%H":Eo=>Io(Eo.Va,2),"%I":Eo=>((Eo=Eo.Va)==0?Eo=12:12{for(var _a=0,$a=0;$a<=Eo.Wa-1;_a+=(pu(Eo.Ta+1900)?Ry:Dy)[$a++]);return Io(Eo.Ya+_a,3)},"%m":Eo=>Io(Eo.Wa+1,2),"%M":Eo=>Io(Eo.fb,2),"%n":()=>` -`,"%p":Eo=>0<=Eo.Va&&12>Eo.Va?"AM":"PM","%S":Eo=>Io(Eo.gb,2),"%t":()=>" ","%u":Eo=>Eo.Qa||7,"%U":Eo=>Io(Math.floor((Eo.Sa+7-Eo.Qa)/7),2),"%V":Eo=>{var _a=Math.floor((Eo.Sa+7-(Eo.Qa+6)%7)/7);if(2>=(Eo.Qa+371-Eo.Sa-2)%7&&_a++,_a)_a==53&&(($a=(Eo.Qa+371-Eo.Sa)%7)==4||$a==3&&pu(Eo.Ta)||(_a=1));else{_a=52;var $a=(Eo.Qa+7-Eo.Sa-1)%7;($a==4||$a==5&&pu(Eo.Ta%400-1))&&_a++}return Io(_a,2)},"%w":Eo=>Eo.Qa,"%W":Eo=>Io(Math.floor((Eo.Sa+7-(Eo.Qa+6)%7)/7),2),"%y":Eo=>(Eo.Ta+1900).toString().substring(2),"%Y":Eo=>Eo.Ta+1900,"%z":Eo=>{var _a=0<=(Eo=Eo.eb);return Eo=Math.abs(Eo)/60,(_a?"+":"-")+("0000"+(Eo/60*100+Eo%60)).slice(-4)},"%Z":Eo=>Eo.hb,"%%":()=>"%"},wr=wr.replace(/%%/g,"\0\0"),ru)wr.includes(nu)&&(wr=wr.replace(new RegExp(nu,"g"),ru[nu](Qr)));return nu=function(Eo){var _a=Array(sy(Eo)+1);return ay(Eo,_a,0,_a.length),_a}(wr=wr.replace(/\0\0/g,"%")),nu.length>ar?0:(g1(nu,Mt),nu.length-1)}function y1(Mt,ar,wr,Qr){return Cy(Mt>>>0,ar>>>0,wr>>>0,Qr>>>0)}ct||function(){for(var Mt=lt.numThreads-1;Mt--;)qs();Ir.unshift(()=>{_n++,function(ar){ct?ar():Promise.all(Po.map(Fo)).then(ar)}(()=>Xo())})}();var _1=[Jr,jo,Tu,iy,oy,ly,uy,cy,dy,fy,py,hy,my,gy,yy,_y,wy,xy,Ty,ky,Oy,Iy,Ay,Py],Zs=function(){function Mt(wr,Qr){return Zs=wr.exports,Zs=function(){var rn=Zs,Io=xa=>()=>xa()>>>0,Ks=xa=>tu=>xa(tu)>>>0;return(rn=Object.assign({},rn)).Ba=Io(rn.Ba),rn.Ca=Ks(rn.Ca),rn.emscripten_main_runtime_thread_id=Io(rn.emscripten_main_runtime_thread_id),rn.Oa=Ks(rn.Oa),rn.Pa=Io(rn.Pa),rn}(),Oo.push(Zs.Ea),Xs=Zs.Fa,Zr.unshift(Zs.$),Jt=Qr,Xo(),Zs}var ar=Dt();if(_n++,lt.instantiateWasm)try{return lt.instantiateWasm(ar,Mt)}catch(wr){Wt(`Module.instantiateWasm callback failed with error: ${wr}`),at(wr)}return Yo||=lt.locateFile?Jo("ort-wasm-simd-threaded.wasm")?"ort-wasm-simd-threaded.wasm":lt.locateFile?lt.locateFile("ort-wasm-simd-threaded.wasm",$t):$t+"ort-wasm-simd-threaded.wasm":new URL("/appstore_panel/dist/assets/ort-wasm-simd-threaded.wasm",import.meta.url).href,function(wr,Qr){var rn=Yo;return Pt||typeof WebAssembly.instantiateStreaming!="function"||Jo(rn)||Bo(rn)||typeof fetch!="function"?Lo(rn,wr,Qr):fetch(rn,{credentials:"same-origin"}).then(Io=>WebAssembly.instantiateStreaming(Io,wr).then(Qr,function(Ks){return Wt(`wasm streaming compile failed: ${Ks}`),Wt("falling back to ArrayBuffer instantiation"),Lo(rn,wr,Qr)}))}(ar,function(wr){Mt(wr.instance,wr.module)}).catch(at),{}}();lt._OrtInit=(Mt,ar)=>(lt._OrtInit=Zs.aa)(Mt,ar),lt._OrtGetLastError=(Mt,ar)=>(lt._OrtGetLastError=Zs.ba)(Mt,ar),lt._OrtCreateSessionOptions=(Mt,ar,wr,Qr,rn,Io,Ks,xa,tu,ru)=>(lt._OrtCreateSessionOptions=Zs.ca)(Mt,ar,wr,Qr,rn,Io,Ks,xa,tu,ru),lt._OrtAppendExecutionProvider=(Mt,ar)=>(lt._OrtAppendExecutionProvider=Zs.da)(Mt,ar),lt._OrtAddFreeDimensionOverride=(Mt,ar,wr)=>(lt._OrtAddFreeDimensionOverride=Zs.ea)(Mt,ar,wr),lt._OrtAddSessionConfigEntry=(Mt,ar,wr)=>(lt._OrtAddSessionConfigEntry=Zs.fa)(Mt,ar,wr),lt._OrtReleaseSessionOptions=Mt=>(lt._OrtReleaseSessionOptions=Zs.ga)(Mt),lt._OrtCreateSession=(Mt,ar,wr)=>(lt._OrtCreateSession=Zs.ha)(Mt,ar,wr),lt._OrtReleaseSession=Mt=>(lt._OrtReleaseSession=Zs.ia)(Mt),lt._OrtGetInputOutputCount=(Mt,ar,wr)=>(lt._OrtGetInputOutputCount=Zs.ja)(Mt,ar,wr),lt._OrtGetInputName=(Mt,ar)=>(lt._OrtGetInputName=Zs.ka)(Mt,ar),lt._OrtGetOutputName=(Mt,ar)=>(lt._OrtGetOutputName=Zs.la)(Mt,ar),lt._OrtFree=Mt=>(lt._OrtFree=Zs.ma)(Mt),lt._OrtCreateTensor=(Mt,ar,wr,Qr,rn,Io)=>(lt._OrtCreateTensor=Zs.na)(Mt,ar,wr,Qr,rn,Io),lt._OrtGetTensorData=(Mt,ar,wr,Qr,rn)=>(lt._OrtGetTensorData=Zs.oa)(Mt,ar,wr,Qr,rn),lt._OrtReleaseTensor=Mt=>(lt._OrtReleaseTensor=Zs.pa)(Mt),lt._OrtCreateRunOptions=(Mt,ar,wr,Qr)=>(lt._OrtCreateRunOptions=Zs.qa)(Mt,ar,wr,Qr),lt._OrtAddRunConfigEntry=(Mt,ar,wr)=>(lt._OrtAddRunConfigEntry=Zs.ra)(Mt,ar,wr),lt._OrtReleaseRunOptions=Mt=>(lt._OrtReleaseRunOptions=Zs.sa)(Mt),lt._OrtCreateBinding=Mt=>(lt._OrtCreateBinding=Zs.ta)(Mt),lt._OrtBindInput=(Mt,ar,wr)=>(lt._OrtBindInput=Zs.ua)(Mt,ar,wr),lt._OrtBindOutput=(Mt,ar,wr,Qr)=>(lt._OrtBindOutput=Zs.va)(Mt,ar,wr,Qr),lt._OrtClearBoundOutputs=Mt=>(lt._OrtClearBoundOutputs=Zs.wa)(Mt),lt._OrtReleaseBinding=Mt=>(lt._OrtReleaseBinding=Zs.xa)(Mt),lt._OrtRunWithBinding=(Mt,ar,wr,Qr,rn)=>(lt._OrtRunWithBinding=Zs.ya)(Mt,ar,wr,Qr,rn),lt._OrtRun=(Mt,ar,wr,Qr,rn,Io,Ks,xa)=>(lt._OrtRun=Zs.za)(Mt,ar,wr,Qr,rn,Io,Ks,xa),lt._OrtEndProfiling=Mt=>(lt._OrtEndProfiling=Zs.Aa)(Mt);var hu=()=>(hu=Zs.Ba)();lt._malloc=Mt=>(lt._malloc=Zs.Ca)(Mt),lt._free=Mt=>(lt._free=Zs.Da)(Mt);var Au,_d=(Mt,ar,wr,Qr,rn,Io)=>(_d=Zs.Ga)(Mt,ar,wr,Qr,rn,Io),Ny=()=>(Ny=Zs.Ha)(),My=(Mt,ar,wr,Qr,rn)=>(My=Zs.Ia)(Mt,ar,wr,Qr,rn),Om=Mt=>(Om=Zs.Ja)(Mt),Pu=Mt=>(Pu=Zs.Ka)(Mt),jy=()=>(jy=Zs.La)(),Ly=(Mt,ar)=>(Ly=Zs.Ma)(Mt,ar),Ru=Mt=>(Ru=Zs.Na)(Mt),ey=Mt=>(ey=Zs.Oa)(Mt),ty=()=>(ty=Zs.Pa)();function Fy(){0<_n||(ct?(nt(lt),ct||na(Zr),startWorker(lt)):(na(Ir),0<_n||Au||(Au=!0,lt.calledRun=!0,So||(ct||na(Zr),nt(lt),ct||na(tn)))))}return lt.___start_em_js=837640,lt.___stop_em_js=837701,lt.stackSave=()=>ty(),lt.stackRestore=Mt=>Ru(Mt),lt.stackAlloc=Mt=>ey(Mt),lt.UTF8ToString=_u,lt.stringToUTF8=bu,lt.lengthBytesUTF8=sy,zo=function Mt(){Au||Fy(),Au||(zo=Mt)},Fy(),et}),Og=Mp,globalThis.self?.name==="em-pthread"&&Mp()}),br,Sg,Ag,Pg,zp,Wp,Eg,Hp,Vr=O(()=>{oo(),br=import.meta.url??(typeof document<"u"?document.currentScript?.src:typeof self<"u"?self.location?.href:void 0),Sg=typeof location>"u"?void 0:location.origin,Ag=(e,o)=>{try{let s=o??br;return(s?new URL(e,s):new URL(e)).origin===Sg}catch{return!1}},Pg=async e=>{let o=await(await fetch(e,{credentials:"same-origin"})).blob();return URL.createObjectURL(o)},zp=(Gp(),sn(Rp)).default,Wp=async()=>{if(!br)throw new Error("Failed to load proxy worker: cannot determine the script source URL.");if(Ag(br))return[void 0,zp()];let e=await Pg(br);return[e,zp(e)]},Eg=(Vp(),sn(Up)).default,Hp=async(e,o,s)=>[void 0,Eg]}),Xi,Ki,ho,qp,Dg,Lg,io,xt,Ke=O(()=>{Vr(),Ki=!1,ho=!1,qp=!1,Dg=()=>{if(typeof SharedArrayBuffer>"u")return!1;try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},Lg=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},io=async e=>{if(Ki)return Promise.resolve();if(ho)throw new Error("multiple calls to 'initializeWebAssembly()' detected.");if(qp)throw new Error("previous call to 'initializeWebAssembly()' failed.");ho=!0;let o=e.initTimeout,s=e.numThreads;if(!Lg())throw new Error("WebAssembly SIMD is not supported in the current environment.");let a=Dg();s>1&&!a&&(typeof self<"u"&&!self.crossOriginIsolated&&console.warn("env.wasm.numThreads is set to "+s+", but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info."),console.warn("WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading."),e.numThreads=s=1);let $=e.wasmPaths,c=typeof $=="string"?$:void 0,nt=$?.mjs,at=nt?.href??nt,lt=$?.wasm,et=lt?.href??lt,it=e.wasmBinary,[st,ct]=await Hp(at,c,s>1),ft=!1,pt=[];if(o>0&&pt.push(new Promise(gt=>{setTimeout(()=>{ft=!0,gt()},o)})),pt.push(new Promise((gt,wt)=>{let vt={numThreads:s};it?vt.wasmBinary=it:(et||c)&&(vt.locateFile=(_t,$t)=>et??(c??$t)+_t),ct(vt).then(_t=>{ho=!1,Ki=!0,Xi=_t,gt(),st&&URL.revokeObjectURL(st)},_t=>{ho=!1,qp=!0,wt(_t)})})),await Promise.race(pt),ft)throw new Error(`WebAssembly backend initializing failed due to timeout: ${o}ms`)},xt=()=>{if(Ki&&Xi)return Xi;throw new Error("WebAssembly is not initialized yet.")}}),Tt,Wr,ht,mo=O(()=>{Ke(),Tt=(e,o)=>{let s=xt(),a=s.lengthBytesUTF8(e)+1,$=s._malloc(a);return s.stringToUTF8(e,$,a),o.push($),$},Wr=(e,o,s,a)=>{if(typeof e=="object"&&e!==null){if(s.has(e))throw new Error("Circular reference in options");s.add(e)}Object.entries(e).forEach(([$,c])=>{let nt=o?o+$:$;if(typeof c=="object")Wr(c,nt+".",s,a);else if(typeof c=="string"||typeof c=="number")a(nt,c.toString());else if(typeof c=="boolean")a(nt,c?"1":"0");else throw new Error(`Can't handle extra config type: ${typeof c}`)})},ht=e=>{let o=xt(),s=o.stackSave();try{let a=o.stackAlloc(8);o._OrtGetLastError(a,a+4);let $=o.HEAP32[a/4],c=o.HEAPU32[a/4+1],nt=c?o.UTF8ToString(c):"";throw new Error(`${e} ERROR_CODE: ${$}, ERROR_MESSAGE: ${nt}`)}finally{o.stackRestore(s)}}}),jp,Xp=O(()=>{Ke(),mo(),jp=e=>{let o=xt(),s=0,a=[],$=e||{};try{if(e?.logSeverityLevel===void 0)$.logSeverityLevel=2;else if(typeof e.logSeverityLevel!="number"||!Number.isInteger(e.logSeverityLevel)||e.logSeverityLevel<0||e.logSeverityLevel>4)throw new Error(`log serverity level is not valid: ${e.logSeverityLevel}`);if(e?.logVerbosityLevel===void 0)$.logVerbosityLevel=0;else if(typeof e.logVerbosityLevel!="number"||!Number.isInteger(e.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${e.logVerbosityLevel}`);e?.terminate===void 0&&($.terminate=!1);let c=0;return e?.tag!==void 0&&(c=Tt(e.tag,a)),s=o._OrtCreateRunOptions($.logSeverityLevel,$.logVerbosityLevel,!!$.terminate,c),s===0&&ht("Can't create run options."),e?.extra!==void 0&&Wr(e.extra,"",new WeakSet,(nt,at)=>{let lt=Tt(nt,a),et=Tt(at,a);o._OrtAddRunConfigEntry(s,lt,et)!==0&&ht(`Can't set a run config entry: ${nt} - ${at}.`)}),[s,a]}catch(c){throw s!==0&&o._OrtReleaseRunOptions(s),a.forEach(nt=>o._free(nt)),c}}}),$g,kg,Bg,Fg,Kp,Jp=O(()=>{Ke(),mo(),$g=e=>{switch(e){case"disabled":return 0;case"basic":return 1;case"extended":return 2;case"all":return 99;default:throw new Error(`unsupported graph optimization level: ${e}`)}},kg=e=>{switch(e){case"sequential":return 0;case"parallel":return 1;default:throw new Error(`unsupported execution mode: ${e}`)}},Bg=e=>{e.extra||(e.extra={}),e.extra.session||(e.extra.session={});let o=e.extra.session;o.use_ort_model_bytes_directly||(o.use_ort_model_bytes_directly="1"),e.executionProviders&&e.executionProviders.some(s=>(typeof s=="string"?s:s.name)==="webgpu")&&(e.enableMemPattern=!1)},Fg=(e,o,s)=>{for(let a of o){let $=typeof a=="string"?a:a.name;switch($){case"webnn":if($="WEBNN",typeof a!="string"){let nt=a?.deviceType;if(nt){let at=Tt("deviceType",s),lt=Tt(nt,s);xt()._OrtAddSessionConfigEntry(e,at,lt)!==0&&ht(`Can't set a session config entry: 'deviceType' - ${nt}.`)}}break;case"webgpu":if($="JS",typeof a!="string"){let nt=a;if(nt?.preferredLayout){if(nt.preferredLayout!=="NCHW"&&nt.preferredLayout!=="NHWC")throw new Error(`preferredLayout must be either 'NCHW' or 'NHWC': ${nt.preferredLayout}`);let at=Tt("preferredLayout",s),lt=Tt(nt.preferredLayout,s);xt()._OrtAddSessionConfigEntry(e,at,lt)!==0&&ht(`Can't set a session config entry: 'preferredLayout' - ${nt.preferredLayout}.`)}}break;case"wasm":case"cpu":continue;default:throw new Error(`not supported execution provider: ${$}`)}let c=Tt($,s);xt()._OrtAppendExecutionProvider(e,c)!==0&&ht(`Can't append execution provider: ${$}.`)}},Kp=e=>{let o=xt(),s=0,a=[],$=e||{};Bg($);try{let c=$g($.graphOptimizationLevel??"all"),nt=kg($.executionMode??"sequential"),at=typeof $.logId=="string"?Tt($.logId,a):0,lt=$.logSeverityLevel??2;if(!Number.isInteger(lt)||lt<0||lt>4)throw new Error(`log serverity level is not valid: ${lt}`);let et=$.logVerbosityLevel??0;if(!Number.isInteger(et)||et<0||et>4)throw new Error(`log verbosity level is not valid: ${et}`);let it=typeof $.optimizedModelFilePath=="string"?Tt($.optimizedModelFilePath,a):0;if(s=o._OrtCreateSessionOptions(c,!!$.enableCpuMemArena,!!$.enableMemPattern,nt,!!$.enableProfiling,0,at,lt,et,it),s===0&&ht("Can't create session options."),$.executionProviders&&Fg(s,$.executionProviders,a),$.enableGraphCapture!==void 0){if(typeof $.enableGraphCapture!="boolean")throw new Error(`enableGraphCapture must be a boolean value: ${$.enableGraphCapture}`);let st=Tt("enableGraphCapture",a),ct=Tt($.enableGraphCapture.toString(),a);o._OrtAddSessionConfigEntry(s,st,ct)!==0&&ht(`Can't set a session config entry: 'enableGraphCapture' - ${$.enableGraphCapture}.`)}if($.freeDimensionOverrides)for(let[st,ct]of Object.entries($.freeDimensionOverrides)){if(typeof st!="string")throw new Error(`free dimension override name must be a string: ${st}`);if(typeof ct!="number"||!Number.isInteger(ct)||ct<0)throw new Error(`free dimension override value must be a non-negative integer: ${ct}`);let ft=Tt(st,a);o._OrtAddFreeDimensionOverride(s,ft,ct)!==0&&ht(`Can't set a free dimension override: ${st} - ${ct}.`)}return $.extra!==void 0&&Wr($.extra,"",new WeakSet,(st,ct)=>{let ft=Tt(st,a),pt=Tt(ct,a);o._OrtAddSessionConfigEntry(s,ft,pt)!==0&&ht(`Can't set a session config entry: ${st} - ${ct}.`)}),[s,a]}catch(c){throw s!==0&&o._OrtReleaseSessionOptions(s),a.forEach(nt=>o._free(nt)),c}}}),Hr,Yp,qr,Zp,Qp,bo,go,td,Ji=O(()=>{Hr=e=>{switch(e){case"int8":return 3;case"uint8":return 2;case"bool":return 9;case"int16":return 5;case"uint16":return 4;case"int32":return 6;case"uint32":return 12;case"float16":return 10;case"float32":return 1;case"float64":return 11;case"string":return 8;case"int64":return 7;case"uint64":return 13;case"int4":return 22;case"uint4":return 21;default:throw new Error(`unsupported data type: ${e}`)}},Yp=e=>{switch(e){case 3:return"int8";case 2:return"uint8";case 9:return"bool";case 5:return"int16";case 4:return"uint16";case 6:return"int32";case 12:return"uint32";case 10:return"float16";case 1:return"float32";case 11:return"float64";case 8:return"string";case 7:return"int64";case 13:return"uint64";case 22:return"int4";case 21:return"uint4";default:throw new Error(`unsupported data type: ${e}`)}},qr=(e,o)=>{let s=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][e],a=typeof o=="number"?o:o.reduce(($,c)=>$*c,1);return s>0?Math.ceil(a*s):void 0},Zp=e=>{switch(e){case"float16":return typeof Float16Array<"u"&&Float16Array.from?Float16Array:Uint16Array;case"float32":return Float32Array;case"uint8":return Uint8Array;case"int8":return Int8Array;case"uint16":return Uint16Array;case"int16":return Int16Array;case"int32":return Int32Array;case"bool":return Uint8Array;case"float64":return Float64Array;case"uint32":return Uint32Array;case"int64":return BigInt64Array;case"uint64":return BigUint64Array;default:throw new Error(`unsupported type: ${e}`)}},Qp=e=>{switch(e){case"verbose":return 0;case"info":return 1;case"warning":return 2;case"error":return 3;case"fatal":return 4;default:throw new Error(`unsupported logging level: ${e}`)}},bo=e=>e==="float32"||e==="float16"||e==="int32"||e==="int64"||e==="uint32"||e==="uint8"||e==="bool"||e==="uint4"||e==="int4",go=e=>e==="float32"||e==="float16"||e==="int32"||e==="int64"||e==="uint32"||e==="uint64"||e==="int8"||e==="uint8"||e==="bool",td=e=>{switch(e){case"none":return 0;case"cpu":return 1;case"cpu-pinned":return 2;case"texture":return 3;case"gpu-buffer":return 4;case"ml-tensor":return 5;default:throw new Error(`unsupported data location: ${e}`)}}}),jr,Yi=O(()=>{oo(),jr=async e=>{if(typeof e=="string"){let o=await fetch(e);if(!o.ok)throw new Error(`failed to load external data file: ${e}`);let s=o.headers.get("Content-Length"),a=s?parseInt(s,10):0;if(a<1073741824)return new Uint8Array(await o.arrayBuffer());{if(!o.body)throw new Error(`failed to load external data file: ${e}, no response body.`);let $=o.body.getReader(),c;try{c=new ArrayBuffer(a)}catch(at){if(at instanceof RangeError){let lt=Math.ceil(a/65536);c=new WebAssembly.Memory({initial:lt,maximum:lt}).buffer}else throw at}let nt=0;for(;;){let{done:at,value:lt}=await $.read();if(at)break;let et=lt.byteLength;new Uint8Array(c,nt,et).set(lt),nt+=et}return new Uint8Array(c,0,a)}}else return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),Cg,ao,so,yr,Ng,zr,uo,lo,ed,fo,co,po,qi=O(()=>{Xp(),Jp(),Ji(),Ke(),mo(),Yi(),Cg=(e,o)=>{xt()._OrtInit(e,o)!==0&&ht("Can't initialize onnxruntime.")},ao=async e=>{Cg(e.wasm.numThreads,Qp(e.logLevel))},so=async(e,o)=>{},yr=new Map,Ng=e=>{let o=xt(),s=o.stackSave();try{let a=o.stackAlloc(8);return o._OrtGetInputOutputCount(e,a,a+4)!==0&&ht("Can't get session input/output count."),[o.HEAP32[a/4],o.HEAP32[a/4+1]]}finally{o.stackRestore(s)}},zr=e=>{let o=xt(),s=o._malloc(e.byteLength);if(s===0)throw new Error(`Can't create a session. failed to allocate a buffer of size ${e.byteLength}.`);return o.HEAPU8.set(e,s),[s,e.byteLength]},uo=async(e,o)=>{let s,a,$=xt();Array.isArray(e)?[s,a]=e:e.buffer===$.HEAPU8.buffer?[s,a]=[e.byteOffset,e.byteLength]:[s,a]=zr(e);let c=0,nt=0,at=[],lt=[],et=[];try{if([nt,at]=Kp(o),o?.externalData&&$.mountExternalData){let vt=[];for(let _t of o.externalData){let $t=typeof _t=="string"?_t:_t.path;vt.push(jr(typeof _t=="string"?_t:_t.data).then(Pt=>{$.mountExternalData($t,Pt)}))}await Promise.all(vt)}for(let vt of o?.executionProviders??[])if((typeof vt=="string"?vt:vt.name)==="webnn"){if($.shouldTransferToMLTensor=!1,$.currentContext)throw new Error("WebNN execution provider is already set.");if(typeof vt!="string"){let _t=vt,$t=_t?.context,Pt=_t?.gpuDevice,Nt=_t?.deviceType,Lt=_t?.numThreads,Ft=_t?.powerPreference;$t?$.currentContext=$t:Pt?$.currentContext=await navigator.ml.createContext(Pt):$.currentContext=await navigator.ml.createContext({deviceType:Nt,numThreads:Lt,powerPreference:Ft})}else $.currentContext=await navigator.ml.createContext();break}c=await $._OrtCreateSession(s,a,nt),c===0&&ht("Can't create a session."),$.currentContext&&($.jsepRegisterMLContext(c,$.currentContext),$.currentContext=void 0,$.shouldTransferToMLTensor=!0);let[it,st]=Ng(c),ct=!!o?.enableGraphCapture,ft=[],pt=[],gt=[];for(let vt=0;vt$._OrtFree(st)),et.forEach(st=>$._OrtFree(st)),c!==0&&$._OrtReleaseSession(c),it}finally{$._free(s),nt!==0&&$._OrtReleaseSessionOptions(nt),at.forEach(it=>$._free(it)),$.unmountExternalData?.()}},lo=e=>{let o=xt(),s=yr.get(e);if(!s)throw new Error(`cannot release session. invalid session id: ${e}`);let[a,$,c,nt,at]=s;nt&&(at&&o._OrtClearBoundOutputs(nt.handle),o._OrtReleaseBinding(nt.handle)),o.jsepOnReleaseSession?.(e),$.forEach(lt=>o._OrtFree(lt)),c.forEach(lt=>o._OrtFree(lt)),o._OrtReleaseSession(a),yr.delete(e)},ed=(e,o,s,a,$,c=!1)=>{if(!e){o.push(0);return}let nt=xt(),at=e[0],lt=e[1],et=e[3],it,st;if(at==="string"&&(et==="gpu-buffer"||et==="ml-tensor"))throw new Error("String tensor is not supported on GPU.");if(c&&et!=="gpu-buffer")throw new Error(`External buffer must be provided for input/output index ${$} when enableGraphCapture is true.`);if(et==="gpu-buffer"){let pt=e[2].gpuBuffer;st=qr(Hr(at),lt);let gt=nt.jsepRegisterBuffer;if(!gt)throw new Error('Tensor location "gpu-buffer" is not supported without using WebGPU.');it=gt(a,$,pt,st)}else if(et==="ml-tensor"){let pt=e[2].mlTensor;st=qr(Hr(at),lt);let gt=nt.jsepRegisterMLTensor;if(!gt)throw new Error('Tensor location "ml-tensor" is not supported without using WebNN.');it=gt(pt,Hr(at),lt)}else{let pt=e[2];if(Array.isArray(pt)){st=4*pt.length,it=nt._malloc(st),s.push(it);let gt=it/4;for(let wt=0;wtnt.HEAP32[pt++]=wt);let gt=nt._OrtCreateTensor(Hr(at),it,st,ft,lt.length,td(et));gt===0&&ht(`Can't create tensor for input/output. session=${a}, index=${$}.`),o.push(gt)}finally{nt.stackRestore(ct)}},fo=async(e,o,s,a,$,c)=>{let nt=xt(),at=yr.get(e);if(!at)throw new Error(`cannot run inference. invalid session id: ${e}`);let lt=at[0],et=at[1],it=at[2],st=at[3],ct=at[4];at[5];let ft=o.length,pt=a.length,gt=0,wt=[],vt=[],_t=[],$t=[],Pt=nt.stackSave(),Nt=nt.stackAlloc(ft*4),Lt=nt.stackAlloc(ft*4),Ft=nt.stackAlloc(pt*4),Wt=nt.stackAlloc(pt*4);try{nt.jsepOnRunStart?.(lt),[gt,wt]=jp(c);for(let gr=0;grYo*Jo,1);So=Yp(Zr);let Do=st?.outputPreferredLocations[a[gr]];if(So==="string"){if(Do==="gpu-buffer"||Do==="ml-tensor")throw new Error("String tensor is not supported on GPU.");let Yo=[],Jo=Er/4;for(let Bo=0;Bo0){let Yo=nt.jsepGetBuffer;if(!Yo)throw new Error('preferredLocation "gpu-buffer" is not supported without using WebGPU.');let Jo=Yo(Er),Bo=qr(Zr,Xo);if(Bo===void 0||!bo(So))throw new Error(`Unsupported data type: ${So}`);Yr=!0,Ot.push([So,zo,{gpuBuffer:Jo,download:nt.jsepCreateDownloader(Jo,Bo,So),dispose:()=>{nt._OrtReleaseTensor($o)}},"gpu-buffer"])}else if(Do==="ml-tensor"&&Xo>0){let Yo=nt.jsepEnsureTensor;if(!Yo)throw new Error('preferredLocation "ml-tensor" is not supported without using WebNN.');if(qr(Zr,Xo)===void 0||!go(So))throw new Error(`Unsupported data type: ${So}`);let Jo=await Yo(Er,Zr,zo,!1);Yr=!0,Ot.push([So,zo,{mlTensor:Jo,download:nt.jsepCreateMLTensorDownloader(Er,So),dispose:()=>{nt.jsepReleaseTensorId(Er),nt._OrtReleaseTensor($o)}},"ml-tensor"])}else{let Yo=Zp(So),Jo=new Yo(Xo);new Uint8Array(Jo.buffer,Jo.byteOffset,Jo.byteLength).set(nt.HEAPU8.subarray(Er,Er+Jo.byteLength)),Ot.push([So,zo,Jo,"cpu"])}}finally{nt.stackRestore(On),So==="string"&&Er&&nt._free(Er),Yr||nt._OrtReleaseTensor($o)}}return st&&!ct&&(nt._OrtClearBoundOutputs(st.handle),yr.set(e,[lt,et,it,st,ct,!1])),Ot}finally{nt.stackRestore(Pt),vt.forEach(_r=>nt._OrtReleaseTensor(_r)),_t.forEach(_r=>nt._OrtReleaseTensor(_r)),$t.forEach(_r=>nt._free(_r)),gt!==0&&nt._OrtReleaseRunOptions(gt),wt.forEach(_r=>nt._free(_r))}},co=e=>{let o=xt(),s=yr.get(e);if(!s)throw new Error("invalid session id");let a=s[0],$=o._OrtEndProfiling(a);$===0&&ht("Can't get an profile file name."),o._OrtFree($)},po=e=>{let o=[];for(let s of e){let a=s[2];!Array.isArray(a)&&"buffer"in a&&o.push(a.buffer)}return o}}),Je,Kt,Xr,xo,To,yo,Zi,Qi,xr,Tr,Gg,rd,nd,od,id,ad,sd,ud,ta=O(()=>{Yt(),qi(),Ke(),Vr(),Je=()=>!!z.wasm.proxy&&typeof document<"u",Xr=!1,xo=!1,To=!1,Qi=new Map,xr=(e,o)=>{let s=Qi.get(e);s?s.push(o):Qi.set(e,[o])},Tr=()=>{if(Xr||!xo||To||!Kt)throw new Error("worker not ready")},Gg=e=>{switch(e.data.type){case"init-wasm":Xr=!1,e.data.err?(To=!0,Zi[1](e.data.err)):(xo=!0,Zi[0]()),yo&&(URL.revokeObjectURL(yo),yo=void 0);break;case"init-ep":case"copy-from":case"create":case"release":case"run":case"end-profiling":{let o=Qi.get(e.data.type);e.data.err?o.shift()[1](e.data.err):o.shift()[0](e.data.out);break}}},rd=async()=>{if(!xo){if(Xr)throw new Error("multiple calls to 'initWasm()' detected.");if(To)throw new Error("previous call to 'initWasm()' failed.");if(Xr=!0,Je())return new Promise((e,o)=>{Kt?.terminate(),Wp().then(([s,a])=>{try{Kt=a,Kt.onerror=c=>o(c),Kt.onmessage=Gg,Zi=[e,o];let $={type:"init-wasm",in:z};Kt.postMessage($),yo=s}catch($){o($)}},o)});try{await io(z.wasm),await ao(z),xo=!0}catch(e){throw To=!0,e}finally{Xr=!1}}},nd=async e=>{if(Je())return Tr(),new Promise((o,s)=>{xr("init-ep",[o,s]);let a={type:"init-ep",in:{epName:e,env:z}};Kt.postMessage(a)});await so(z,e)},od=async e=>Je()?(Tr(),new Promise((o,s)=>{xr("copy-from",[o,s]);let a={type:"copy-from",in:{buffer:e}};Kt.postMessage(a,[e.buffer])})):zr(e),id=async(e,o)=>{if(Je()){if(o?.preferredOutputLocation)throw new Error('session option "preferredOutputLocation" is not supported for proxy.');return Tr(),new Promise((s,a)=>{xr("create",[s,a]);let $={type:"create",in:{model:e,options:{...o}}},c=[];e instanceof Uint8Array&&c.push(e.buffer),Kt.postMessage($,c)})}else return uo(e,o)},ad=async e=>{if(Je())return Tr(),new Promise((o,s)=>{xr("release",[o,s]);let a={type:"release",in:e};Kt.postMessage(a)});lo(e)},sd=async(e,o,s,a,$,c)=>{if(Je()){if(s.some(nt=>nt[3]!=="cpu"))throw new Error("input tensor on GPU is not supported for proxy.");if($.some(nt=>nt))throw new Error("pre-allocated output tensor is not supported for proxy.");return Tr(),new Promise((nt,at)=>{xr("run",[nt,at]);let lt=s,et={type:"run",in:{sessionId:e,inputIndices:o,inputs:lt,outputIndices:a,options:c}};Kt.postMessage(et,po(lt))})}else return fo(e,o,s,a,$,c)},ud=async e=>{if(Je())return Tr(),new Promise((o,s)=>{xr("end-profiling",[o,s]);let a={type:"end-profiling",in:e};Kt.postMessage(a)});co(e)}}),ld,Mg,wo,fd=O(()=>{Yt(),ta(),Ji(),oo(),Yi(),ld=(e,o)=>{switch(e.location){case"cpu":return[e.type,e.dims,e.data,"cpu"];case"gpu-buffer":return[e.type,e.dims,{gpuBuffer:e.gpuBuffer},"gpu-buffer"];case"ml-tensor":return[e.type,e.dims,{mlTensor:e.mlTensor},"ml-tensor"];default:throw new Error(`invalid data location: ${e.location} for ${o()}`)}},Mg=e=>{switch(e[3]){case"cpu":return new yt(e[0],e[2],e[1]);case"gpu-buffer":{let o=e[0];if(!bo(o))throw new Error(`not supported data type: ${o} for deserializing GPU tensor`);let{gpuBuffer:s,download:a,dispose:$}=e[2];return yt.fromGpuBuffer(s,{dataType:o,dims:e[1],download:a,dispose:$})}case"ml-tensor":{let o=e[0];if(!go(o))throw new Error(`not supported data type: ${o} for deserializing MLTensor tensor`);let{mlTensor:s,download:a,dispose:$}=e[2];return yt.fromMLTensor(s,{dataType:o,dims:e[1],download:a,dispose:$})}default:throw new Error(`invalid data location: ${e[3]}`)}},wo=class{async fetchModelAndCopyToWasmMemory(e){return od(await jr(e))}async loadModel(e,o){Fe();let s;typeof e=="string"?s=await this.fetchModelAndCopyToWasmMemory(e):s=e,[this.sessionId,this.inputNames,this.outputNames]=await id(s,o),Ce()}async dispose(){return ad(this.sessionId)}async run(e,o,s){Fe();let a=[],$=[];Object.entries(e).forEach(st=>{let ct=st[0],ft=st[1],pt=this.inputNames.indexOf(ct);if(pt===-1)throw new Error(`invalid input '${ct}'`);a.push(ft),$.push(pt)});let c=[],nt=[];Object.entries(o).forEach(st=>{let ct=st[0],ft=st[1],pt=this.outputNames.indexOf(ct);if(pt===-1)throw new Error(`invalid output '${ct}'`);c.push(ft),nt.push(pt)});let at=a.map((st,ct)=>ld(st,()=>`input "${this.inputNames[$[ct]]}"`)),lt=c.map((st,ct)=>st?ld(st,()=>`output "${this.outputNames[nt[ct]]}"`):null),et=await sd(this.sessionId,$,at,nt,lt,s),it={};for(let st=0;stvo,initializeFlags:()=>cd,wasmBackend:()=>Ug});var cd,vo,Ug,dd=O(()=>{Yt(),ta(),fd(),Vr(),cd=()=>{if((typeof z.wasm.initTimeout!="number"||z.wasm.initTimeout<0)&&(z.wasm.initTimeout=0),z.wasm.simd===!1&&console.warn('Deprecated property "env.wasm.simd" is set to false. non-SIMD build is no longer provided, and this setting will be ignored.'),typeof z.wasm.proxy!="boolean"&&(z.wasm.proxy=!1),typeof z.wasm.trace!="boolean"&&(z.wasm.trace=!1),typeof z.wasm.numThreads!="number"||!Number.isInteger(z.wasm.numThreads)||z.wasm.numThreads<=0)if(typeof self<"u"&&!self.crossOriginIsolated)z.wasm.numThreads=1;else{let e=typeof navigator>"u"?Co("node:os").cpus().length:navigator.hardwareConcurrency;z.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},vo=class{async init(e){cd(),await rd(),await nd(e)}async createInferenceSessionHandler(e,o){let s=new wo;return await s.loadModel(e,o),Promise.resolve(s)}},Ug=new vo});Yt();Yt();Yt();var Ds="1.20.0";{let e=(Fp(),sn(Bp)).onnxjsBackend;nr("webgl",e,-10)}{let e=(dd(),sn(pd)).wasmBackend;nr("cpu",e,10),nr("wasm",e,10)}Object.defineProperty(z.versions,"web",{value:Ds,enumerable:!0});/*! Bundled license information: +`))[0]=="Error"&&Qr.shift(),Ey(Qr);for(var _n=3;Qr[_n]&&Iu()!=Mt;)++_n;for(Mt=0;Mt>>2>>>0]=Iu();return Mt}var zu,Gu={},Sy=()=>{if(!zu){var Mt,ar={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:vt};for(Mt in Gu)Gu[Mt]===void 0?delete ar[Mt]:ar[Mt]=Gu[Mt];var wr=[];for(Mt in ar)wr.push(`${Mt}=${ar[Mt]}`);zu=wr}return zu};function Ty(Mt,ar){if(ct)return In(18,1,Mt,ar);Mt>>>=0,ar>>>=0;var wr=0;return Sy().forEach((Qr,_n)=>{var Ao=ar+wr;for(_n=$()[Mt+4*_n>>>2>>>0]=Ao,Ao=0;Ao>>0]=Qr.charCodeAt(Ao);o()[_n>>>0]=0,wr+=Qr.length+1}),0}function ky(Mt,ar){if(ct)return In(19,1,Mt,ar);Mt>>>=0,ar>>>=0;var wr=Sy();$()[Mt>>>2>>>0]=wr.length;var Qr=0;return wr.forEach(_n=>Qr+=_n.length+1),$()[ar>>>2>>>0]=Qr,0}function Oy(Mt){return ct?In(20,1,Mt):52}function Iy(Mt,ar,wr,Qr){return ct?In(21,1,Mt,ar,wr,Qr):52}function Ay(Mt,ar,wr,Qr){return ct?In(22,1,Mt,ar,wr,Qr):70}var m1=[null,[],[]];function Py(Mt,ar,wr,Qr){if(ct)return In(23,1,Mt,ar,wr,Qr);ar>>>=0,wr>>>=0,Qr>>>=0;for(var _n=0,Ao=0;Ao>>2>>>0],xa=$()[ar+4>>>2>>>0];ar+=8;for(var tu=0;tu>>0],nu=m1[Mt];ru===0||ru===10?((Mt===1?Ft:Wt)(uu(nu,0)),nu.length=0):nu.push(ru)}_n+=xa}return $()[Qr>>>2>>>0]=_n,0}var Ry=[31,29,31,30,31,30,31,31,30,31,30,31],Dy=[31,28,31,30,31,30,31,31,30,31,30,31],g1=(Mt,ar)=>{o().set(Mt,ar>>>0)};function Cy(Mt,ar,wr,Qr){function _n(ko,_a,$a){for(ko=typeof ko=="number"?ko.toString():ko||"";ko.length<_a;)ko=$a[0]+ko;return ko}function Ao(ko,_a){return _n(ko,_a,"0")}function qs(ko,_a){function $a(zy){return 0>zy?-1:0fu-ko.getDate())){ko.setDate(ko.getDate()+_a);break}_a-=fu-ko.getDate()+1,ko.setDate(1),11>$a?ko.setMonth($a+1):(ko.setMonth(0),ko.setFullYear(ko.getFullYear()+1))}return $a=new Date(ko.getFullYear()+1,0,4),_a=xa(new Date(ko.getFullYear(),0,4)),$a=xa($a),0>=qs(_a,ko)?0>=qs($a,ko)?ko.getFullYear()+1:ko.getFullYear():ko.getFullYear()-1}Mt>>>=0,ar>>>=0,wr>>>=0,Qr>>>=0;var ru=$()[Qr+40>>>2>>>0];for(var nu in Qr={gb:a()[Qr>>>2>>>0],fb:a()[Qr+4>>>2>>>0],Va:a()[Qr+8>>>2>>>0],Ya:a()[Qr+12>>>2>>>0],Wa:a()[Qr+16>>>2>>>0],Ta:a()[Qr+20>>>2>>>0],Qa:a()[Qr+24>>>2>>>0],Sa:a()[Qr+28>>>2>>>0],ob:a()[Qr+32>>>2>>>0],eb:a()[Qr+36>>>2>>>0],hb:ru?_u(ru):""},wr=_u(wr),ru={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})wr=wr.replace(new RegExp(nu,"g"),ru[nu]);var By="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),Uy="January February March April May June July August September October November December".split(" ");for(nu in ru={"%a":ko=>By[ko.Qa].substring(0,3),"%A":ko=>By[ko.Qa],"%b":ko=>Uy[ko.Wa].substring(0,3),"%B":ko=>Uy[ko.Wa],"%C":ko=>Ao((ko.Ta+1900)/100|0,2),"%d":ko=>Ao(ko.Ya,2),"%e":ko=>_n(ko.Ya,2," "),"%g":ko=>tu(ko).toString().substring(2),"%G":tu,"%H":ko=>Ao(ko.Va,2),"%I":ko=>((ko=ko.Va)==0?ko=12:12{for(var _a=0,$a=0;$a<=ko.Wa-1;_a+=(pu(ko.Ta+1900)?Ry:Dy)[$a++]);return Ao(ko.Ya+_a,3)},"%m":ko=>Ao(ko.Wa+1,2),"%M":ko=>Ao(ko.fb,2),"%n":()=>` +`,"%p":ko=>0<=ko.Va&&12>ko.Va?"AM":"PM","%S":ko=>Ao(ko.gb,2),"%t":()=>" ","%u":ko=>ko.Qa||7,"%U":ko=>Ao(Math.floor((ko.Sa+7-ko.Qa)/7),2),"%V":ko=>{var _a=Math.floor((ko.Sa+7-(ko.Qa+6)%7)/7);if(2>=(ko.Qa+371-ko.Sa-2)%7&&_a++,_a)_a==53&&(($a=(ko.Qa+371-ko.Sa)%7)==4||$a==3&&pu(ko.Ta)||(_a=1));else{_a=52;var $a=(ko.Qa+7-ko.Sa-1)%7;($a==4||$a==5&&pu(ko.Ta%400-1))&&_a++}return Ao(_a,2)},"%w":ko=>ko.Qa,"%W":ko=>Ao(Math.floor((ko.Sa+7-(ko.Qa+6)%7)/7),2),"%y":ko=>(ko.Ta+1900).toString().substring(2),"%Y":ko=>ko.Ta+1900,"%z":ko=>{var _a=0<=(ko=ko.eb);return ko=Math.abs(ko)/60,(_a?"+":"-")+("0000"+(ko/60*100+ko%60)).slice(-4)},"%Z":ko=>ko.hb,"%%":()=>"%"},wr=wr.replace(/%%/g,"\0\0"),ru)wr.includes(nu)&&(wr=wr.replace(new RegExp(nu,"g"),ru[nu](Qr)));return nu=function(ko){var _a=Array(sy(ko)+1);return ay(ko,_a,0,_a.length),_a}(wr=wr.replace(/\0\0/g,"%")),nu.length>ar?0:(g1(nu,Mt),nu.length-1)}function y1(Mt,ar,wr,Qr){return Cy(Mt>>>0,ar>>>0,wr>>>0,Qr>>>0)}ct||function(){for(var Mt=lt.numThreads-1;Mt--;)Jo();Lr.unshift(()=>{nn++,function(ar){ct?ar():Promise.all(Do.map(Lo)).then(ar)}(()=>Ko())})}();var _1=[en,Io,Tu,iy,oy,ly,uy,cy,dy,fy,py,hy,my,gy,yy,_y,wy,xy,Ty,ky,Oy,Iy,Ay,Py],Zs=function(){function Mt(wr,Qr){return Zs=wr.exports,Zs=function(){var _n=Zs,Ao=xa=>()=>xa()>>>0,qs=xa=>tu=>xa(tu)>>>0;return(_n=Object.assign({},_n)).Ba=Ao(_n.Ba),_n.Ca=qs(_n.Ca),_n.emscripten_main_runtime_thread_id=Ao(_n.emscripten_main_runtime_thread_id),_n.Oa=qs(_n.Oa),_n.Pa=Ao(_n.Pa),_n}(),Oo.push(Zs.Ea),Xs=Zs.Fa,Zr.unshift(Zs.$),Jt=Qr,Ko(),Zs}var ar=Dt();if(nn++,lt.instantiateWasm)try{return lt.instantiateWasm(ar,Mt)}catch(wr){Wt(`Module.instantiateWasm callback failed with error: ${wr}`),at(wr)}return zo||=lt.locateFile?Zo("ort-wasm-simd-threaded.wasm")?"ort-wasm-simd-threaded.wasm":lt.locateFile?lt.locateFile("ort-wasm-simd-threaded.wasm",$t):$t+"ort-wasm-simd-threaded.wasm":new URL("/appstore_panel/dist/assets/ort-wasm-simd-threaded.wasm",import.meta.url).href,function(wr,Qr){var _n=zo;return Pt||typeof WebAssembly.instantiateStreaming!="function"||Zo(_n)||Bo(_n)||typeof fetch!="function"?Ks(_n,wr,Qr):fetch(_n,{credentials:"same-origin"}).then(Ao=>WebAssembly.instantiateStreaming(Ao,wr).then(Qr,function(qs){return Wt(`wasm streaming compile failed: ${qs}`),Wt("falling back to ArrayBuffer instantiation"),Ks(_n,wr,Qr)}))}(ar,function(wr){Mt(wr.instance,wr.module)}).catch(at),{}}();lt._OrtInit=(Mt,ar)=>(lt._OrtInit=Zs.aa)(Mt,ar),lt._OrtGetLastError=(Mt,ar)=>(lt._OrtGetLastError=Zs.ba)(Mt,ar),lt._OrtCreateSessionOptions=(Mt,ar,wr,Qr,_n,Ao,qs,xa,tu,ru)=>(lt._OrtCreateSessionOptions=Zs.ca)(Mt,ar,wr,Qr,_n,Ao,qs,xa,tu,ru),lt._OrtAppendExecutionProvider=(Mt,ar)=>(lt._OrtAppendExecutionProvider=Zs.da)(Mt,ar),lt._OrtAddFreeDimensionOverride=(Mt,ar,wr)=>(lt._OrtAddFreeDimensionOverride=Zs.ea)(Mt,ar,wr),lt._OrtAddSessionConfigEntry=(Mt,ar,wr)=>(lt._OrtAddSessionConfigEntry=Zs.fa)(Mt,ar,wr),lt._OrtReleaseSessionOptions=Mt=>(lt._OrtReleaseSessionOptions=Zs.ga)(Mt),lt._OrtCreateSession=(Mt,ar,wr)=>(lt._OrtCreateSession=Zs.ha)(Mt,ar,wr),lt._OrtReleaseSession=Mt=>(lt._OrtReleaseSession=Zs.ia)(Mt),lt._OrtGetInputOutputCount=(Mt,ar,wr)=>(lt._OrtGetInputOutputCount=Zs.ja)(Mt,ar,wr),lt._OrtGetInputName=(Mt,ar)=>(lt._OrtGetInputName=Zs.ka)(Mt,ar),lt._OrtGetOutputName=(Mt,ar)=>(lt._OrtGetOutputName=Zs.la)(Mt,ar),lt._OrtFree=Mt=>(lt._OrtFree=Zs.ma)(Mt),lt._OrtCreateTensor=(Mt,ar,wr,Qr,_n,Ao)=>(lt._OrtCreateTensor=Zs.na)(Mt,ar,wr,Qr,_n,Ao),lt._OrtGetTensorData=(Mt,ar,wr,Qr,_n)=>(lt._OrtGetTensorData=Zs.oa)(Mt,ar,wr,Qr,_n),lt._OrtReleaseTensor=Mt=>(lt._OrtReleaseTensor=Zs.pa)(Mt),lt._OrtCreateRunOptions=(Mt,ar,wr,Qr)=>(lt._OrtCreateRunOptions=Zs.qa)(Mt,ar,wr,Qr),lt._OrtAddRunConfigEntry=(Mt,ar,wr)=>(lt._OrtAddRunConfigEntry=Zs.ra)(Mt,ar,wr),lt._OrtReleaseRunOptions=Mt=>(lt._OrtReleaseRunOptions=Zs.sa)(Mt),lt._OrtCreateBinding=Mt=>(lt._OrtCreateBinding=Zs.ta)(Mt),lt._OrtBindInput=(Mt,ar,wr)=>(lt._OrtBindInput=Zs.ua)(Mt,ar,wr),lt._OrtBindOutput=(Mt,ar,wr,Qr)=>(lt._OrtBindOutput=Zs.va)(Mt,ar,wr,Qr),lt._OrtClearBoundOutputs=Mt=>(lt._OrtClearBoundOutputs=Zs.wa)(Mt),lt._OrtReleaseBinding=Mt=>(lt._OrtReleaseBinding=Zs.xa)(Mt),lt._OrtRunWithBinding=(Mt,ar,wr,Qr,_n)=>(lt._OrtRunWithBinding=Zs.ya)(Mt,ar,wr,Qr,_n),lt._OrtRun=(Mt,ar,wr,Qr,_n,Ao,qs,xa)=>(lt._OrtRun=Zs.za)(Mt,ar,wr,Qr,_n,Ao,qs,xa),lt._OrtEndProfiling=Mt=>(lt._OrtEndProfiling=Zs.Aa)(Mt);var hu=()=>(hu=Zs.Ba)();lt._malloc=Mt=>(lt._malloc=Zs.Ca)(Mt),lt._free=Mt=>(lt._free=Zs.Da)(Mt);var Au,_d=(Mt,ar,wr,Qr,_n,Ao)=>(_d=Zs.Ga)(Mt,ar,wr,Qr,_n,Ao),Ny=()=>(Ny=Zs.Ha)(),My=(Mt,ar,wr,Qr,_n)=>(My=Zs.Ia)(Mt,ar,wr,Qr,_n),Om=Mt=>(Om=Zs.Ja)(Mt),Pu=Mt=>(Pu=Zs.Ka)(Mt),jy=()=>(jy=Zs.La)(),Ly=(Mt,ar)=>(Ly=Zs.Ma)(Mt,ar),Ru=Mt=>(Ru=Zs.Na)(Mt),ey=Mt=>(ey=Zs.Oa)(Mt),ty=()=>(ty=Zs.Pa)();function Fy(){0ty(),lt.stackRestore=Mt=>Ru(Mt),lt.stackAlloc=Mt=>ey(Mt),lt.UTF8ToString=_u,lt.stringToUTF8=bu,lt.lengthBytesUTF8=sy,Fo=function Mt(){Au||Fy(),Au||(Fo=Mt)},Fy(),et}),Og=Mp,globalThis.self?.name==="em-pthread"&&Mp()}),br,Sg,Ag,Pg,zp,Wp,Eg,Hp,Vr=O(()=>{oo(),br=import.meta.url??(typeof document<"u"?document.currentScript?.src:typeof self<"u"?self.location?.href:void 0),Sg=typeof location>"u"?void 0:location.origin,Ag=(e,o)=>{try{let s=o??br;return(s?new URL(e,s):new URL(e)).origin===Sg}catch{return!1}},Pg=async e=>{let o=await(await fetch(e,{credentials:"same-origin"})).blob();return URL.createObjectURL(o)},zp=(Gp(),sn(Rp)).default,Wp=async()=>{if(!br)throw new Error("Failed to load proxy worker: cannot determine the script source URL.");if(Ag(br))return[void 0,zp()];let e=await Pg(br);return[e,zp(e)]},Eg=(Vp(),sn(Up)).default,Hp=async(e,o,s)=>[void 0,Eg]}),Xi,Ki,ho,qp,Dg,Lg,io,xt,Ke=O(()=>{Vr(),Ki=!1,ho=!1,qp=!1,Dg=()=>{if(typeof SharedArrayBuffer>"u")return!1;try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},Lg=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},io=async e=>{if(Ki)return Promise.resolve();if(ho)throw new Error("multiple calls to 'initializeWebAssembly()' detected.");if(qp)throw new Error("previous call to 'initializeWebAssembly()' failed.");ho=!0;let o=e.initTimeout,s=e.numThreads;if(!Lg())throw new Error("WebAssembly SIMD is not supported in the current environment.");let a=Dg();s>1&&!a&&(typeof self<"u"&&!self.crossOriginIsolated&&console.warn("env.wasm.numThreads is set to "+s+", but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info."),console.warn("WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading."),e.numThreads=s=1);let $=e.wasmPaths,c=typeof $=="string"?$:void 0,nt=$?.mjs,at=nt?.href??nt,lt=$?.wasm,et=lt?.href??lt,it=e.wasmBinary,[st,ct]=await Hp(at,c,s>1),ft=!1,pt=[];if(o>0&&pt.push(new Promise(gt=>{setTimeout(()=>{ft=!0,gt()},o)})),pt.push(new Promise((gt,wt)=>{let vt={numThreads:s};it?vt.wasmBinary=it:(et||c)&&(vt.locateFile=(_t,$t)=>et??(c??$t)+_t),ct(vt).then(_t=>{ho=!1,Ki=!0,Xi=_t,gt(),st&&URL.revokeObjectURL(st)},_t=>{ho=!1,qp=!0,wt(_t)})})),await Promise.race(pt),ft)throw new Error(`WebAssembly backend initializing failed due to timeout: ${o}ms`)},xt=()=>{if(Ki&&Xi)return Xi;throw new Error("WebAssembly is not initialized yet.")}}),Tt,Wr,ht,mo=O(()=>{Ke(),Tt=(e,o)=>{let s=xt(),a=s.lengthBytesUTF8(e)+1,$=s._malloc(a);return s.stringToUTF8(e,$,a),o.push($),$},Wr=(e,o,s,a)=>{if(typeof e=="object"&&e!==null){if(s.has(e))throw new Error("Circular reference in options");s.add(e)}Object.entries(e).forEach(([$,c])=>{let nt=o?o+$:$;if(typeof c=="object")Wr(c,nt+".",s,a);else if(typeof c=="string"||typeof c=="number")a(nt,c.toString());else if(typeof c=="boolean")a(nt,c?"1":"0");else throw new Error(`Can't handle extra config type: ${typeof c}`)})},ht=e=>{let o=xt(),s=o.stackSave();try{let a=o.stackAlloc(8);o._OrtGetLastError(a,a+4);let $=o.HEAP32[a/4],c=o.HEAPU32[a/4+1],nt=c?o.UTF8ToString(c):"";throw new Error(`${e} ERROR_CODE: ${$}, ERROR_MESSAGE: ${nt}`)}finally{o.stackRestore(s)}}}),jp,Xp=O(()=>{Ke(),mo(),jp=e=>{let o=xt(),s=0,a=[],$=e||{};try{if(e?.logSeverityLevel===void 0)$.logSeverityLevel=2;else if(typeof e.logSeverityLevel!="number"||!Number.isInteger(e.logSeverityLevel)||e.logSeverityLevel<0||e.logSeverityLevel>4)throw new Error(`log serverity level is not valid: ${e.logSeverityLevel}`);if(e?.logVerbosityLevel===void 0)$.logVerbosityLevel=0;else if(typeof e.logVerbosityLevel!="number"||!Number.isInteger(e.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${e.logVerbosityLevel}`);e?.terminate===void 0&&($.terminate=!1);let c=0;return e?.tag!==void 0&&(c=Tt(e.tag,a)),s=o._OrtCreateRunOptions($.logSeverityLevel,$.logVerbosityLevel,!!$.terminate,c),s===0&&ht("Can't create run options."),e?.extra!==void 0&&Wr(e.extra,"",new WeakSet,(nt,at)=>{let lt=Tt(nt,a),et=Tt(at,a);o._OrtAddRunConfigEntry(s,lt,et)!==0&&ht(`Can't set a run config entry: ${nt} - ${at}.`)}),[s,a]}catch(c){throw s!==0&&o._OrtReleaseRunOptions(s),a.forEach(nt=>o._free(nt)),c}}}),$g,kg,Bg,Fg,Kp,Jp=O(()=>{Ke(),mo(),$g=e=>{switch(e){case"disabled":return 0;case"basic":return 1;case"extended":return 2;case"all":return 99;default:throw new Error(`unsupported graph optimization level: ${e}`)}},kg=e=>{switch(e){case"sequential":return 0;case"parallel":return 1;default:throw new Error(`unsupported execution mode: ${e}`)}},Bg=e=>{e.extra||(e.extra={}),e.extra.session||(e.extra.session={});let o=e.extra.session;o.use_ort_model_bytes_directly||(o.use_ort_model_bytes_directly="1"),e.executionProviders&&e.executionProviders.some(s=>(typeof s=="string"?s:s.name)==="webgpu")&&(e.enableMemPattern=!1)},Fg=(e,o,s)=>{for(let a of o){let $=typeof a=="string"?a:a.name;switch($){case"webnn":if($="WEBNN",typeof a!="string"){let nt=a?.deviceType;if(nt){let at=Tt("deviceType",s),lt=Tt(nt,s);xt()._OrtAddSessionConfigEntry(e,at,lt)!==0&&ht(`Can't set a session config entry: 'deviceType' - ${nt}.`)}}break;case"webgpu":if($="JS",typeof a!="string"){let nt=a;if(nt?.preferredLayout){if(nt.preferredLayout!=="NCHW"&&nt.preferredLayout!=="NHWC")throw new Error(`preferredLayout must be either 'NCHW' or 'NHWC': ${nt.preferredLayout}`);let at=Tt("preferredLayout",s),lt=Tt(nt.preferredLayout,s);xt()._OrtAddSessionConfigEntry(e,at,lt)!==0&&ht(`Can't set a session config entry: 'preferredLayout' - ${nt.preferredLayout}.`)}}break;case"wasm":case"cpu":continue;default:throw new Error(`not supported execution provider: ${$}`)}let c=Tt($,s);xt()._OrtAppendExecutionProvider(e,c)!==0&&ht(`Can't append execution provider: ${$}.`)}},Kp=e=>{let o=xt(),s=0,a=[],$=e||{};Bg($);try{let c=$g($.graphOptimizationLevel??"all"),nt=kg($.executionMode??"sequential"),at=typeof $.logId=="string"?Tt($.logId,a):0,lt=$.logSeverityLevel??2;if(!Number.isInteger(lt)||lt<0||lt>4)throw new Error(`log serverity level is not valid: ${lt}`);let et=$.logVerbosityLevel??0;if(!Number.isInteger(et)||et<0||et>4)throw new Error(`log verbosity level is not valid: ${et}`);let it=typeof $.optimizedModelFilePath=="string"?Tt($.optimizedModelFilePath,a):0;if(s=o._OrtCreateSessionOptions(c,!!$.enableCpuMemArena,!!$.enableMemPattern,nt,!!$.enableProfiling,0,at,lt,et,it),s===0&&ht("Can't create session options."),$.executionProviders&&Fg(s,$.executionProviders,a),$.enableGraphCapture!==void 0){if(typeof $.enableGraphCapture!="boolean")throw new Error(`enableGraphCapture must be a boolean value: ${$.enableGraphCapture}`);let st=Tt("enableGraphCapture",a),ct=Tt($.enableGraphCapture.toString(),a);o._OrtAddSessionConfigEntry(s,st,ct)!==0&&ht(`Can't set a session config entry: 'enableGraphCapture' - ${$.enableGraphCapture}.`)}if($.freeDimensionOverrides)for(let[st,ct]of Object.entries($.freeDimensionOverrides)){if(typeof st!="string")throw new Error(`free dimension override name must be a string: ${st}`);if(typeof ct!="number"||!Number.isInteger(ct)||ct<0)throw new Error(`free dimension override value must be a non-negative integer: ${ct}`);let ft=Tt(st,a);o._OrtAddFreeDimensionOverride(s,ft,ct)!==0&&ht(`Can't set a free dimension override: ${st} - ${ct}.`)}return $.extra!==void 0&&Wr($.extra,"",new WeakSet,(st,ct)=>{let ft=Tt(st,a),pt=Tt(ct,a);o._OrtAddSessionConfigEntry(s,ft,pt)!==0&&ht(`Can't set a session config entry: ${st} - ${ct}.`)}),[s,a]}catch(c){throw s!==0&&o._OrtReleaseSessionOptions(s),a.forEach(nt=>o._free(nt)),c}}}),Hr,Yp,qr,Zp,Qp,bo,go,td,Ji=O(()=>{Hr=e=>{switch(e){case"int8":return 3;case"uint8":return 2;case"bool":return 9;case"int16":return 5;case"uint16":return 4;case"int32":return 6;case"uint32":return 12;case"float16":return 10;case"float32":return 1;case"float64":return 11;case"string":return 8;case"int64":return 7;case"uint64":return 13;case"int4":return 22;case"uint4":return 21;default:throw new Error(`unsupported data type: ${e}`)}},Yp=e=>{switch(e){case 3:return"int8";case 2:return"uint8";case 9:return"bool";case 5:return"int16";case 4:return"uint16";case 6:return"int32";case 12:return"uint32";case 10:return"float16";case 1:return"float32";case 11:return"float64";case 8:return"string";case 7:return"int64";case 13:return"uint64";case 22:return"int4";case 21:return"uint4";default:throw new Error(`unsupported data type: ${e}`)}},qr=(e,o)=>{let s=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][e],a=typeof o=="number"?o:o.reduce(($,c)=>$*c,1);return s>0?Math.ceil(a*s):void 0},Zp=e=>{switch(e){case"float16":return typeof Float16Array<"u"&&Float16Array.from?Float16Array:Uint16Array;case"float32":return Float32Array;case"uint8":return Uint8Array;case"int8":return Int8Array;case"uint16":return Uint16Array;case"int16":return Int16Array;case"int32":return Int32Array;case"bool":return Uint8Array;case"float64":return Float64Array;case"uint32":return Uint32Array;case"int64":return BigInt64Array;case"uint64":return BigUint64Array;default:throw new Error(`unsupported type: ${e}`)}},Qp=e=>{switch(e){case"verbose":return 0;case"info":return 1;case"warning":return 2;case"error":return 3;case"fatal":return 4;default:throw new Error(`unsupported logging level: ${e}`)}},bo=e=>e==="float32"||e==="float16"||e==="int32"||e==="int64"||e==="uint32"||e==="uint8"||e==="bool"||e==="uint4"||e==="int4",go=e=>e==="float32"||e==="float16"||e==="int32"||e==="int64"||e==="uint32"||e==="uint64"||e==="int8"||e==="uint8"||e==="bool",td=e=>{switch(e){case"none":return 0;case"cpu":return 1;case"cpu-pinned":return 2;case"texture":return 3;case"gpu-buffer":return 4;case"ml-tensor":return 5;default:throw new Error(`unsupported data location: ${e}`)}}}),jr,Yi=O(()=>{oo(),jr=async e=>{if(typeof e=="string"){let o=await fetch(e);if(!o.ok)throw new Error(`failed to load external data file: ${e}`);let s=o.headers.get("Content-Length"),a=s?parseInt(s,10):0;if(a<1073741824)return new Uint8Array(await o.arrayBuffer());{if(!o.body)throw new Error(`failed to load external data file: ${e}, no response body.`);let $=o.body.getReader(),c;try{c=new ArrayBuffer(a)}catch(at){if(at instanceof RangeError){let lt=Math.ceil(a/65536);c=new WebAssembly.Memory({initial:lt,maximum:lt}).buffer}else throw at}let nt=0;for(;;){let{done:at,value:lt}=await $.read();if(at)break;let et=lt.byteLength;new Uint8Array(c,nt,et).set(lt),nt+=et}return new Uint8Array(c,0,a)}}else return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),Cg,ao,so,yr,Ng,zr,uo,lo,ed,fo,co,po,qi=O(()=>{Xp(),Jp(),Ji(),Ke(),mo(),Yi(),Cg=(e,o)=>{xt()._OrtInit(e,o)!==0&&ht("Can't initialize onnxruntime.")},ao=async e=>{Cg(e.wasm.numThreads,Qp(e.logLevel))},so=async(e,o)=>{},yr=new Map,Ng=e=>{let o=xt(),s=o.stackSave();try{let a=o.stackAlloc(8);return o._OrtGetInputOutputCount(e,a,a+4)!==0&&ht("Can't get session input/output count."),[o.HEAP32[a/4],o.HEAP32[a/4+1]]}finally{o.stackRestore(s)}},zr=e=>{let o=xt(),s=o._malloc(e.byteLength);if(s===0)throw new Error(`Can't create a session. failed to allocate a buffer of size ${e.byteLength}.`);return o.HEAPU8.set(e,s),[s,e.byteLength]},uo=async(e,o)=>{let s,a,$=xt();Array.isArray(e)?[s,a]=e:e.buffer===$.HEAPU8.buffer?[s,a]=[e.byteOffset,e.byteLength]:[s,a]=zr(e);let c=0,nt=0,at=[],lt=[],et=[];try{if([nt,at]=Kp(o),o?.externalData&&$.mountExternalData){let vt=[];for(let _t of o.externalData){let $t=typeof _t=="string"?_t:_t.path;vt.push(jr(typeof _t=="string"?_t:_t.data).then(Pt=>{$.mountExternalData($t,Pt)}))}await Promise.all(vt)}for(let vt of o?.executionProviders??[])if((typeof vt=="string"?vt:vt.name)==="webnn"){if($.shouldTransferToMLTensor=!1,$.currentContext)throw new Error("WebNN execution provider is already set.");if(typeof vt!="string"){let _t=vt,$t=_t?.context,Pt=_t?.gpuDevice,Nt=_t?.deviceType,Lt=_t?.numThreads,Ft=_t?.powerPreference;$t?$.currentContext=$t:Pt?$.currentContext=await navigator.ml.createContext(Pt):$.currentContext=await navigator.ml.createContext({deviceType:Nt,numThreads:Lt,powerPreference:Ft})}else $.currentContext=await navigator.ml.createContext();break}c=await $._OrtCreateSession(s,a,nt),c===0&&ht("Can't create a session."),$.currentContext&&($.jsepRegisterMLContext(c,$.currentContext),$.currentContext=void 0,$.shouldTransferToMLTensor=!0);let[it,st]=Ng(c),ct=!!o?.enableGraphCapture,ft=[],pt=[],gt=[];for(let vt=0;vt$._OrtFree(st)),et.forEach(st=>$._OrtFree(st)),c!==0&&$._OrtReleaseSession(c),it}finally{$._free(s),nt!==0&&$._OrtReleaseSessionOptions(nt),at.forEach(it=>$._free(it)),$.unmountExternalData?.()}},lo=e=>{let o=xt(),s=yr.get(e);if(!s)throw new Error(`cannot release session. invalid session id: ${e}`);let[a,$,c,nt,at]=s;nt&&(at&&o._OrtClearBoundOutputs(nt.handle),o._OrtReleaseBinding(nt.handle)),o.jsepOnReleaseSession?.(e),$.forEach(lt=>o._OrtFree(lt)),c.forEach(lt=>o._OrtFree(lt)),o._OrtReleaseSession(a),yr.delete(e)},ed=(e,o,s,a,$,c=!1)=>{if(!e){o.push(0);return}let nt=xt(),at=e[0],lt=e[1],et=e[3],it,st;if(at==="string"&&(et==="gpu-buffer"||et==="ml-tensor"))throw new Error("String tensor is not supported on GPU.");if(c&&et!=="gpu-buffer")throw new Error(`External buffer must be provided for input/output index ${$} when enableGraphCapture is true.`);if(et==="gpu-buffer"){let pt=e[2].gpuBuffer;st=qr(Hr(at),lt);let gt=nt.jsepRegisterBuffer;if(!gt)throw new Error('Tensor location "gpu-buffer" is not supported without using WebGPU.');it=gt(a,$,pt,st)}else if(et==="ml-tensor"){let pt=e[2].mlTensor;st=qr(Hr(at),lt);let gt=nt.jsepRegisterMLTensor;if(!gt)throw new Error('Tensor location "ml-tensor" is not supported without using WebNN.');it=gt(pt,Hr(at),lt)}else{let pt=e[2];if(Array.isArray(pt)){st=4*pt.length,it=nt._malloc(st),s.push(it);let gt=it/4;for(let wt=0;wtnt.HEAP32[pt++]=wt);let gt=nt._OrtCreateTensor(Hr(at),it,st,ft,lt.length,td(et));gt===0&&ht(`Can't create tensor for input/output. session=${a}, index=${$}.`),o.push(gt)}finally{nt.stackRestore(ct)}},fo=async(e,o,s,a,$,c)=>{let nt=xt(),at=yr.get(e);if(!at)throw new Error(`cannot run inference. invalid session id: ${e}`);let lt=at[0],et=at[1],it=at[2],st=at[3],ct=at[4];at[5];let ft=o.length,pt=a.length,gt=0,wt=[],vt=[],_t=[],$t=[],Pt=nt.stackSave(),Nt=nt.stackAlloc(ft*4),Lt=nt.stackAlloc(ft*4),Ft=nt.stackAlloc(pt*4),Wt=nt.stackAlloc(pt*4);try{nt.jsepOnRunStart?.(lt),[gt,wt]=jp(c);for(let gr=0;grzo*Zo,1);So=Yp(Zr);let jo=st?.outputPreferredLocations[a[gr]];if(So==="string"){if(jo==="gpu-buffer"||jo==="ml-tensor")throw new Error("String tensor is not supported on GPU.");let zo=[],Zo=Ir/4;for(let Bo=0;Bo0){let zo=nt.jsepGetBuffer;if(!zo)throw new Error('preferredLocation "gpu-buffer" is not supported without using WebGPU.');let Zo=zo(Ir),Bo=qr(Zr,Ko);if(Bo===void 0||!bo(So))throw new Error(`Unsupported data type: ${So}`);Yr=!0,Ot.push([So,Fo,{gpuBuffer:Zo,download:nt.jsepCreateDownloader(Zo,Bo,So),dispose:()=>{nt._OrtReleaseTensor($o)}},"gpu-buffer"])}else if(jo==="ml-tensor"&&Ko>0){let zo=nt.jsepEnsureTensor;if(!zo)throw new Error('preferredLocation "ml-tensor" is not supported without using WebNN.');if(qr(Zr,Ko)===void 0||!go(So))throw new Error(`Unsupported data type: ${So}`);let Zo=await zo(Ir,Zr,Fo,!1);Yr=!0,Ot.push([So,Fo,{mlTensor:Zo,download:nt.jsepCreateMLTensorDownloader(Ir,So),dispose:()=>{nt.jsepReleaseTensorId(Ir),nt._OrtReleaseTensor($o)}},"ml-tensor"])}else{let zo=Zp(So),Zo=new zo(Ko);new Uint8Array(Zo.buffer,Zo.byteOffset,Zo.byteLength).set(nt.HEAPU8.subarray(Ir,Ir+Zo.byteLength)),Ot.push([So,Fo,Zo,"cpu"])}}finally{nt.stackRestore(On),So==="string"&&Ir&&nt._free(Ir),Yr||nt._OrtReleaseTensor($o)}}return st&&!ct&&(nt._OrtClearBoundOutputs(st.handle),yr.set(e,[lt,et,it,st,ct,!1])),Ot}finally{nt.stackRestore(Pt),vt.forEach(_r=>nt._OrtReleaseTensor(_r)),_t.forEach(_r=>nt._OrtReleaseTensor(_r)),$t.forEach(_r=>nt._free(_r)),gt!==0&&nt._OrtReleaseRunOptions(gt),wt.forEach(_r=>nt._free(_r))}},co=e=>{let o=xt(),s=yr.get(e);if(!s)throw new Error("invalid session id");let a=s[0],$=o._OrtEndProfiling(a);$===0&&ht("Can't get an profile file name."),o._OrtFree($)},po=e=>{let o=[];for(let s of e){let a=s[2];!Array.isArray(a)&&"buffer"in a&&o.push(a.buffer)}return o}}),Je,Kt,Xr,xo,To,yo,Zi,Qi,xr,Tr,Gg,rd,nd,od,id,ad,sd,ud,ta=O(()=>{Yt(),qi(),Ke(),Vr(),Je=()=>!!z.wasm.proxy&&typeof document<"u",Xr=!1,xo=!1,To=!1,Qi=new Map,xr=(e,o)=>{let s=Qi.get(e);s?s.push(o):Qi.set(e,[o])},Tr=()=>{if(Xr||!xo||To||!Kt)throw new Error("worker not ready")},Gg=e=>{switch(e.data.type){case"init-wasm":Xr=!1,e.data.err?(To=!0,Zi[1](e.data.err)):(xo=!0,Zi[0]()),yo&&(URL.revokeObjectURL(yo),yo=void 0);break;case"init-ep":case"copy-from":case"create":case"release":case"run":case"end-profiling":{let o=Qi.get(e.data.type);e.data.err?o.shift()[1](e.data.err):o.shift()[0](e.data.out);break}}},rd=async()=>{if(!xo){if(Xr)throw new Error("multiple calls to 'initWasm()' detected.");if(To)throw new Error("previous call to 'initWasm()' failed.");if(Xr=!0,Je())return new Promise((e,o)=>{Kt?.terminate(),Wp().then(([s,a])=>{try{Kt=a,Kt.onerror=c=>o(c),Kt.onmessage=Gg,Zi=[e,o];let $={type:"init-wasm",in:z};Kt.postMessage($),yo=s}catch($){o($)}},o)});try{await io(z.wasm),await ao(z),xo=!0}catch(e){throw To=!0,e}finally{Xr=!1}}},nd=async e=>{if(Je())return Tr(),new Promise((o,s)=>{xr("init-ep",[o,s]);let a={type:"init-ep",in:{epName:e,env:z}};Kt.postMessage(a)});await so(z,e)},od=async e=>Je()?(Tr(),new Promise((o,s)=>{xr("copy-from",[o,s]);let a={type:"copy-from",in:{buffer:e}};Kt.postMessage(a,[e.buffer])})):zr(e),id=async(e,o)=>{if(Je()){if(o?.preferredOutputLocation)throw new Error('session option "preferredOutputLocation" is not supported for proxy.');return Tr(),new Promise((s,a)=>{xr("create",[s,a]);let $={type:"create",in:{model:e,options:{...o}}},c=[];e instanceof Uint8Array&&c.push(e.buffer),Kt.postMessage($,c)})}else return uo(e,o)},ad=async e=>{if(Je())return Tr(),new Promise((o,s)=>{xr("release",[o,s]);let a={type:"release",in:e};Kt.postMessage(a)});lo(e)},sd=async(e,o,s,a,$,c)=>{if(Je()){if(s.some(nt=>nt[3]!=="cpu"))throw new Error("input tensor on GPU is not supported for proxy.");if($.some(nt=>nt))throw new Error("pre-allocated output tensor is not supported for proxy.");return Tr(),new Promise((nt,at)=>{xr("run",[nt,at]);let lt=s,et={type:"run",in:{sessionId:e,inputIndices:o,inputs:lt,outputIndices:a,options:c}};Kt.postMessage(et,po(lt))})}else return fo(e,o,s,a,$,c)},ud=async e=>{if(Je())return Tr(),new Promise((o,s)=>{xr("end-profiling",[o,s]);let a={type:"end-profiling",in:e};Kt.postMessage(a)});co(e)}}),ld,Mg,wo,fd=O(()=>{Yt(),ta(),Ji(),oo(),Yi(),ld=(e,o)=>{switch(e.location){case"cpu":return[e.type,e.dims,e.data,"cpu"];case"gpu-buffer":return[e.type,e.dims,{gpuBuffer:e.gpuBuffer},"gpu-buffer"];case"ml-tensor":return[e.type,e.dims,{mlTensor:e.mlTensor},"ml-tensor"];default:throw new Error(`invalid data location: ${e.location} for ${o()}`)}},Mg=e=>{switch(e[3]){case"cpu":return new yt(e[0],e[2],e[1]);case"gpu-buffer":{let o=e[0];if(!bo(o))throw new Error(`not supported data type: ${o} for deserializing GPU tensor`);let{gpuBuffer:s,download:a,dispose:$}=e[2];return yt.fromGpuBuffer(s,{dataType:o,dims:e[1],download:a,dispose:$})}case"ml-tensor":{let o=e[0];if(!go(o))throw new Error(`not supported data type: ${o} for deserializing MLTensor tensor`);let{mlTensor:s,download:a,dispose:$}=e[2];return yt.fromMLTensor(s,{dataType:o,dims:e[1],download:a,dispose:$})}default:throw new Error(`invalid data location: ${e[3]}`)}},wo=class{async fetchModelAndCopyToWasmMemory(e){return od(await jr(e))}async loadModel(e,o){Fe();let s;typeof e=="string"?s=await this.fetchModelAndCopyToWasmMemory(e):s=e,[this.sessionId,this.inputNames,this.outputNames]=await id(s,o),Ce()}async dispose(){return ad(this.sessionId)}async run(e,o,s){Fe();let a=[],$=[];Object.entries(e).forEach(st=>{let ct=st[0],ft=st[1],pt=this.inputNames.indexOf(ct);if(pt===-1)throw new Error(`invalid input '${ct}'`);a.push(ft),$.push(pt)});let c=[],nt=[];Object.entries(o).forEach(st=>{let ct=st[0],ft=st[1],pt=this.outputNames.indexOf(ct);if(pt===-1)throw new Error(`invalid output '${ct}'`);c.push(ft),nt.push(pt)});let at=a.map((st,ct)=>ld(st,()=>`input "${this.inputNames[$[ct]]}"`)),lt=c.map((st,ct)=>st?ld(st,()=>`output "${this.outputNames[nt[ct]]}"`):null),et=await sd(this.sessionId,$,at,nt,lt,s),it={};for(let st=0;stvo,initializeFlags:()=>cd,wasmBackend:()=>Ug});var cd,vo,Ug,dd=O(()=>{Yt(),ta(),fd(),Vr(),cd=()=>{if((typeof z.wasm.initTimeout!="number"||z.wasm.initTimeout<0)&&(z.wasm.initTimeout=0),z.wasm.simd===!1&&console.warn('Deprecated property "env.wasm.simd" is set to false. non-SIMD build is no longer provided, and this setting will be ignored.'),typeof z.wasm.proxy!="boolean"&&(z.wasm.proxy=!1),typeof z.wasm.trace!="boolean"&&(z.wasm.trace=!1),typeof z.wasm.numThreads!="number"||!Number.isInteger(z.wasm.numThreads)||z.wasm.numThreads<=0)if(typeof self<"u"&&!self.crossOriginIsolated)z.wasm.numThreads=1;else{let e=typeof navigator>"u"?Co("node:os").cpus().length:navigator.hardwareConcurrency;z.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},vo=class{async init(e){cd(),await rd(),await nd(e)}async createInferenceSessionHandler(e,o){let s=new wo;return await s.loadModel(e,o),Promise.resolve(s)}},Ug=new vo});Yt();Yt();Yt();var Ds="1.20.0";{let e=(Fp(),sn(Bp)).onnxjsBackend;nr("webgl",e,-10)}{let e=(dd(),sn(pd)).wasmBackend;nr("cpu",e,10),nr("wasm",e,10)}Object.defineProperty(z.versions,"web",{value:Ds,enumerable:!0});/*! Bundled license information: long/index.js: (** @@ -1927,7 +1927,7 @@ long/index.js: * * SPDX-License-Identifier: Apache-2.0 *) -*/const modelData=({clicks:e,tensor:o,modelScale:s})=>{const a=o;let $,c,nt,at;if(e){let st=e.length;$=new Float32Array(2*(st+1)),c=new Float32Array(st+1);for(let ct=0;ctreactExports.useContext(ModelContext);var browserPonyfill={exports:{}};(function(e,o){var s=typeof self<"u"?self:commonjsGlobal,a=function(){function c(){this.fetch=!1,this.DOMException=s.DOMException}return c.prototype=s,new c}();(function(c){(function(nt){var at={searchParams:"URLSearchParams"in c,iterable:"Symbol"in c&&"iterator"in Symbol,blob:"FileReader"in c&&"Blob"in c&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in c,arrayBuffer:"ArrayBuffer"in c};function lt(Ot){return Ot&&DataView.prototype.isPrototypeOf(Ot)}if(at.arrayBuffer)var et=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],it=ArrayBuffer.isView||function(Ot){return Ot&&et.indexOf(Object.prototype.toString.call(Ot))>-1};function st(Ot){if(typeof Ot!="string"&&(Ot=String(Ot)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(Ot))throw new TypeError("Invalid character in header field name");return Ot.toLowerCase()}function ct(Ot){return typeof Ot!="string"&&(Ot=String(Ot)),Ot}function ft(Ot){var gr={next:function(){var $o=Ot.shift();return{done:$o===void 0,value:$o}}};return at.iterable&&(gr[Symbol.iterator]=function(){return gr}),gr}function pt(Ot){this.map={},Ot instanceof pt?Ot.forEach(function(gr,$o){this.append($o,gr)},this):Array.isArray(Ot)?Ot.forEach(function(gr){this.append(gr[0],gr[1])},this):Ot&&Object.getOwnPropertyNames(Ot).forEach(function(gr){this.append(gr,Ot[gr])},this)}pt.prototype.append=function(Ot,gr){Ot=st(Ot),gr=ct(gr);var $o=this.map[Ot];this.map[Ot]=$o?$o+", "+gr:gr},pt.prototype.delete=function(Ot){delete this.map[st(Ot)]},pt.prototype.get=function(Ot){return Ot=st(Ot),this.has(Ot)?this.map[Ot]:null},pt.prototype.has=function(Ot){return this.map.hasOwnProperty(st(Ot))},pt.prototype.set=function(Ot,gr){this.map[st(Ot)]=ct(gr)},pt.prototype.forEach=function(Ot,gr){for(var $o in this.map)this.map.hasOwnProperty($o)&&Ot.call(gr,this.map[$o],$o,this)},pt.prototype.keys=function(){var Ot=[];return this.forEach(function(gr,$o){Ot.push($o)}),ft(Ot)},pt.prototype.values=function(){var Ot=[];return this.forEach(function(gr){Ot.push(gr)}),ft(Ot)},pt.prototype.entries=function(){var Ot=[];return this.forEach(function(gr,$o){Ot.push([$o,gr])}),ft(Ot)},at.iterable&&(pt.prototype[Symbol.iterator]=pt.prototype.entries);function gt(Ot){if(Ot.bodyUsed)return Promise.reject(new TypeError("Already read"));Ot.bodyUsed=!0}function wt(Ot){return new Promise(function(gr,$o){Ot.onload=function(){gr(Ot.result)},Ot.onerror=function(){$o(Ot.error)}})}function vt(Ot){var gr=new FileReader,$o=wt(gr);return gr.readAsArrayBuffer(Ot),$o}function _t(Ot){var gr=new FileReader,$o=wt(gr);return gr.readAsText(Ot),$o}function $t(Ot){for(var gr=new Uint8Array(Ot),$o=new Array(gr.length),On=0;On-1?gr:Ot}function Wt(Ot,gr){gr=gr||{};var $o=gr.body;if(Ot instanceof Wt){if(Ot.bodyUsed)throw new TypeError("Already read");this.url=Ot.url,this.credentials=Ot.credentials,gr.headers||(this.headers=new pt(Ot.headers)),this.method=Ot.method,this.mode=Ot.mode,this.signal=Ot.signal,!$o&&Ot._bodyInit!=null&&($o=Ot._bodyInit,Ot.bodyUsed=!0)}else this.url=String(Ot);if(this.credentials=gr.credentials||this.credentials||"same-origin",(gr.headers||!this.headers)&&(this.headers=new pt(gr.headers)),this.method=Ft(gr.method||this.method||"GET"),this.mode=gr.mode||this.mode||null,this.signal=gr.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&$o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody($o)}Wt.prototype.clone=function(){return new Wt(this,{body:this._bodyInit})};function _r(Ot){var gr=new FormData;return Ot.trim().split("&").forEach(function($o){if($o){var On=$o.split("="),en=On.shift().replace(/\+/g," "),Yr=On.join("=").replace(/\+/g," ");gr.append(decodeURIComponent(en),decodeURIComponent(Yr))}}),gr}function vr(Ot){var gr=new pt,$o=Ot.replace(/\r?\n[\t ]+/g," ");return $o.split(/\r?\n/).forEach(function(On){var en=On.split(":"),Yr=en.shift().trim();if(Yr){var So=en.join(":").trim();gr.append(Yr,So)}}),gr}Nt.call(Wt.prototype);function _o(Ot,gr){gr||(gr={}),this.type="default",this.status=gr.status===void 0?200:gr.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in gr?gr.statusText:"OK",this.headers=new pt(gr.headers),this.url=gr.url||"",this._initBody(Ot)}Nt.call(_o.prototype),_o.prototype.clone=function(){return new _o(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new pt(this.headers),url:this.url})},_o.error=function(){var Ot=new _o(null,{status:0,statusText:""});return Ot.type="error",Ot};var Jt=[301,302,303,307,308];_o.redirect=function(Ot,gr){if(Jt.indexOf(gr)===-1)throw new RangeError("Invalid status code");return new _o(null,{status:gr,headers:{location:Ot}})},nt.DOMException=c.DOMException;try{new nt.DOMException}catch{nt.DOMException=function(gr,$o){this.message=gr,this.name=$o;var On=Error(gr);this.stack=On.stack},nt.DOMException.prototype=Object.create(Error.prototype),nt.DOMException.prototype.constructor=nt.DOMException}function Kr(Ot,gr){return new Promise(function($o,On){var en=new Wt(Ot,gr);if(en.signal&&en.signal.aborted)return On(new nt.DOMException("Aborted","AbortError"));var Yr=new XMLHttpRequest;function So(){Yr.abort()}Yr.onload=function(){var Er={status:Yr.status,statusText:Yr.statusText,headers:vr(Yr.getAllResponseHeaders()||"")};Er.url="responseURL"in Yr?Yr.responseURL:Er.headers.get("X-Request-URL");var Ir="response"in Yr?Yr.response:Yr.responseText;$o(new _o(Ir,Er))},Yr.onerror=function(){On(new TypeError("Network request failed"))},Yr.ontimeout=function(){On(new TypeError("Network request failed"))},Yr.onabort=function(){On(new nt.DOMException("Aborted","AbortError"))},Yr.open(en.method,en.url,!0),en.credentials==="include"?Yr.withCredentials=!0:en.credentials==="omit"&&(Yr.withCredentials=!1),"responseType"in Yr&&at.blob&&(Yr.responseType="blob"),en.headers.forEach(function(Er,Ir){Yr.setRequestHeader(Ir,Er)}),en.signal&&(en.signal.addEventListener("abort",So),Yr.onreadystatechange=function(){Yr.readyState===4&&en.signal.removeEventListener("abort",So)}),Yr.send(typeof en._bodyInit>"u"?null:en._bodyInit)})}return Kr.polyfill=!0,c.fetch||(c.fetch=Kr,c.Headers=pt,c.Request=Wt,c.Response=_o),nt.Headers=pt,nt.Request=Wt,nt.Response=_o,nt.fetch=Kr,Object.defineProperty(nt,"__esModule",{value:!0}),nt})({})})(a),a.fetch.ponyfill=!0,delete a.fetch.polyfill;var $=a;o=$.fetch,o.default=$.fetch,o.fetch=$.fetch,o.Headers=$.Headers,o.Request=$.Request,o.Response=$.Response,e.exports=o})(browserPonyfill,browserPonyfill.exports);var browserPonyfillExports=browserPonyfill.exports;const fetch$1=getDefaultExportFromCjs(browserPonyfillExports);class npyjs{constructor(o){o&&console.error(["No arguments accepted to npyjs constructor.","For usage, go to https://github.com/jhuapl-boss/npyjs."].join(" ")),this.dtypes={"=0&&s<=MAX_ARRAY_INDEX}}function shallowProperty(e){return function(o){return o?.[e]}}const getByteLength=shallowProperty("byteLength"),isBufferLike=createSizePropertyCheck(getByteLength);var typedArrayPattern=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function isTypedArray(e){return nativeIsView?nativeIsView(e)&&!isDataView$1(e):isBufferLike(e)&&typedArrayPattern.test(toString.call(e))}const isTypedArray$1=supportsArrayBuffer?isTypedArray:constant(!1),getLength=shallowProperty("length");function emulatedSet(e){for(var o={},s=e.length,a=0;a":">",'"':""","'":"'","`":"`"},escape$1=createEscaper(escapeMap),unescapeMap=invert(escapeMap),unescape$1=createEscaper(unescapeMap),templateSettings=_$1.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var noMatch=/(.)^/,escapes={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},escapeRegExp=/\\|'|\r|\n|\u2028|\u2029/g;function escapeChar(e){return"\\"+escapes[e]}var bareIdentifier=/^\s*(\w|\$)+\s*$/;function template(e,o,s){!o&&s&&(o=s),o=defaults({},o,_$1.templateSettings);var a=RegExp([(o.escape||noMatch).source,(o.interpolate||noMatch).source,(o.evaluate||noMatch).source].join("|")+"|$","g"),$=0,c="__p+='";e.replace(a,function(et,it,st,ct,ft){return c+=e.slice($,ft).replace(escapeRegExp,escapeChar),$=ft+et.length,it?c+=`'+ +*/const modelData=({clicks:e,tensor:o,modelScale:s})=>{const a=o;let $,c,nt,at;if(e){let st=e.length;$=new Float32Array(2*(st+1)),c=new Float32Array(st+1);for(let ct=0;ctreactExports.useContext(ModelContext);var browserPonyfill={exports:{}};(function(e,o){var s=typeof self<"u"?self:commonjsGlobal,a=function(){function c(){this.fetch=!1,this.DOMException=s.DOMException}return c.prototype=s,new c}();(function(c){(function(nt){var at={searchParams:"URLSearchParams"in c,iterable:"Symbol"in c&&"iterator"in Symbol,blob:"FileReader"in c&&"Blob"in c&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in c,arrayBuffer:"ArrayBuffer"in c};function lt(Ot){return Ot&&DataView.prototype.isPrototypeOf(Ot)}if(at.arrayBuffer)var et=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],it=ArrayBuffer.isView||function(Ot){return Ot&&et.indexOf(Object.prototype.toString.call(Ot))>-1};function st(Ot){if(typeof Ot!="string"&&(Ot=String(Ot)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(Ot))throw new TypeError("Invalid character in header field name");return Ot.toLowerCase()}function ct(Ot){return typeof Ot!="string"&&(Ot=String(Ot)),Ot}function ft(Ot){var gr={next:function(){var $o=Ot.shift();return{done:$o===void 0,value:$o}}};return at.iterable&&(gr[Symbol.iterator]=function(){return gr}),gr}function pt(Ot){this.map={},Ot instanceof pt?Ot.forEach(function(gr,$o){this.append($o,gr)},this):Array.isArray(Ot)?Ot.forEach(function(gr){this.append(gr[0],gr[1])},this):Ot&&Object.getOwnPropertyNames(Ot).forEach(function(gr){this.append(gr,Ot[gr])},this)}pt.prototype.append=function(Ot,gr){Ot=st(Ot),gr=ct(gr);var $o=this.map[Ot];this.map[Ot]=$o?$o+", "+gr:gr},pt.prototype.delete=function(Ot){delete this.map[st(Ot)]},pt.prototype.get=function(Ot){return Ot=st(Ot),this.has(Ot)?this.map[Ot]:null},pt.prototype.has=function(Ot){return this.map.hasOwnProperty(st(Ot))},pt.prototype.set=function(Ot,gr){this.map[st(Ot)]=ct(gr)},pt.prototype.forEach=function(Ot,gr){for(var $o in this.map)this.map.hasOwnProperty($o)&&Ot.call(gr,this.map[$o],$o,this)},pt.prototype.keys=function(){var Ot=[];return this.forEach(function(gr,$o){Ot.push($o)}),ft(Ot)},pt.prototype.values=function(){var Ot=[];return this.forEach(function(gr){Ot.push(gr)}),ft(Ot)},pt.prototype.entries=function(){var Ot=[];return this.forEach(function(gr,$o){Ot.push([$o,gr])}),ft(Ot)},at.iterable&&(pt.prototype[Symbol.iterator]=pt.prototype.entries);function gt(Ot){if(Ot.bodyUsed)return Promise.reject(new TypeError("Already read"));Ot.bodyUsed=!0}function wt(Ot){return new Promise(function(gr,$o){Ot.onload=function(){gr(Ot.result)},Ot.onerror=function(){$o(Ot.error)}})}function vt(Ot){var gr=new FileReader,$o=wt(gr);return gr.readAsArrayBuffer(Ot),$o}function _t(Ot){var gr=new FileReader,$o=wt(gr);return gr.readAsText(Ot),$o}function $t(Ot){for(var gr=new Uint8Array(Ot),$o=new Array(gr.length),On=0;On-1?gr:Ot}function Wt(Ot,gr){gr=gr||{};var $o=gr.body;if(Ot instanceof Wt){if(Ot.bodyUsed)throw new TypeError("Already read");this.url=Ot.url,this.credentials=Ot.credentials,gr.headers||(this.headers=new pt(Ot.headers)),this.method=Ot.method,this.mode=Ot.mode,this.signal=Ot.signal,!$o&&Ot._bodyInit!=null&&($o=Ot._bodyInit,Ot.bodyUsed=!0)}else this.url=String(Ot);if(this.credentials=gr.credentials||this.credentials||"same-origin",(gr.headers||!this.headers)&&(this.headers=new pt(gr.headers)),this.method=Ft(gr.method||this.method||"GET"),this.mode=gr.mode||this.mode||null,this.signal=gr.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&$o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody($o)}Wt.prototype.clone=function(){return new Wt(this,{body:this._bodyInit})};function _r(Ot){var gr=new FormData;return Ot.trim().split("&").forEach(function($o){if($o){var On=$o.split("="),tn=On.shift().replace(/\+/g," "),Yr=On.join("=").replace(/\+/g," ");gr.append(decodeURIComponent(tn),decodeURIComponent(Yr))}}),gr}function vr(Ot){var gr=new pt,$o=Ot.replace(/\r?\n[\t ]+/g," ");return $o.split(/\r?\n/).forEach(function(On){var tn=On.split(":"),Yr=tn.shift().trim();if(Yr){var So=tn.join(":").trim();gr.append(Yr,So)}}),gr}Nt.call(Wt.prototype);function _o(Ot,gr){gr||(gr={}),this.type="default",this.status=gr.status===void 0?200:gr.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in gr?gr.statusText:"OK",this.headers=new pt(gr.headers),this.url=gr.url||"",this._initBody(Ot)}Nt.call(_o.prototype),_o.prototype.clone=function(){return new _o(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new pt(this.headers),url:this.url})},_o.error=function(){var Ot=new _o(null,{status:0,statusText:""});return Ot.type="error",Ot};var Jt=[301,302,303,307,308];_o.redirect=function(Ot,gr){if(Jt.indexOf(gr)===-1)throw new RangeError("Invalid status code");return new _o(null,{status:gr,headers:{location:Ot}})},nt.DOMException=c.DOMException;try{new nt.DOMException}catch{nt.DOMException=function(gr,$o){this.message=gr,this.name=$o;var On=Error(gr);this.stack=On.stack},nt.DOMException.prototype=Object.create(Error.prototype),nt.DOMException.prototype.constructor=nt.DOMException}function Kr(Ot,gr){return new Promise(function($o,On){var tn=new Wt(Ot,gr);if(tn.signal&&tn.signal.aborted)return On(new nt.DOMException("Aborted","AbortError"));var Yr=new XMLHttpRequest;function So(){Yr.abort()}Yr.onload=function(){var Ir={status:Yr.status,statusText:Yr.statusText,headers:vr(Yr.getAllResponseHeaders()||"")};Ir.url="responseURL"in Yr?Yr.responseURL:Ir.headers.get("X-Request-URL");var Lr="response"in Yr?Yr.response:Yr.responseText;$o(new _o(Lr,Ir))},Yr.onerror=function(){On(new TypeError("Network request failed"))},Yr.ontimeout=function(){On(new TypeError("Network request failed"))},Yr.onabort=function(){On(new nt.DOMException("Aborted","AbortError"))},Yr.open(tn.method,tn.url,!0),tn.credentials==="include"?Yr.withCredentials=!0:tn.credentials==="omit"&&(Yr.withCredentials=!1),"responseType"in Yr&&at.blob&&(Yr.responseType="blob"),tn.headers.forEach(function(Ir,Lr){Yr.setRequestHeader(Lr,Ir)}),tn.signal&&(tn.signal.addEventListener("abort",So),Yr.onreadystatechange=function(){Yr.readyState===4&&tn.signal.removeEventListener("abort",So)}),Yr.send(typeof tn._bodyInit>"u"?null:tn._bodyInit)})}return Kr.polyfill=!0,c.fetch||(c.fetch=Kr,c.Headers=pt,c.Request=Wt,c.Response=_o),nt.Headers=pt,nt.Request=Wt,nt.Response=_o,nt.fetch=Kr,Object.defineProperty(nt,"__esModule",{value:!0}),nt})({})})(a),a.fetch.ponyfill=!0,delete a.fetch.polyfill;var $=a;o=$.fetch,o.default=$.fetch,o.fetch=$.fetch,o.Headers=$.Headers,o.Request=$.Request,o.Response=$.Response,e.exports=o})(browserPonyfill,browserPonyfill.exports);var browserPonyfillExports=browserPonyfill.exports;const fetch$1=getDefaultExportFromCjs(browserPonyfillExports);class npyjs{constructor(o){o&&console.error(["No arguments accepted to npyjs constructor.","For usage, go to https://github.com/jhuapl-boss/npyjs."].join(" ")),this.dtypes={"=0&&s<=MAX_ARRAY_INDEX}}function shallowProperty(e){return function(o){return o?.[e]}}const getByteLength=shallowProperty("byteLength"),isBufferLike=createSizePropertyCheck(getByteLength);var typedArrayPattern=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function isTypedArray(e){return nativeIsView?nativeIsView(e)&&!isDataView$1(e):isBufferLike(e)&&typedArrayPattern.test(toString.call(e))}const isTypedArray$1=supportsArrayBuffer?isTypedArray:constant(!1),getLength=shallowProperty("length");function emulatedSet(e){for(var o={},s=e.length,a=0;a":">",'"':""","'":"'","`":"`"},escape$1=createEscaper(escapeMap),unescapeMap=invert(escapeMap),unescape$1=createEscaper(unescapeMap),templateSettings=_$1.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var noMatch=/(.)^/,escapes={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},escapeRegExp=/\\|'|\r|\n|\u2028|\u2029/g;function escapeChar(e){return"\\"+escapes[e]}var bareIdentifier=/^\s*(\w|\$)+\s*$/;function template(e,o,s){!o&&s&&(o=s),o=defaults({},o,_$1.templateSettings);var a=RegExp([(o.escape||noMatch).source,(o.interpolate||noMatch).source,(o.evaluate||noMatch).source].join("|")+"|$","g"),$=0,c="__p+='";e.replace(a,function(et,it,st,ct,ft){return c+=e.slice($,ft).replace(escapeRegExp,escapeChar),$=ft+et.length,it?c+=`'+ ((__t=(`+it+`))==null?'':_.escape(__t))+ '`:st?c+=`'+ ((__t=(`+st+`))==null?'':__t)+ @@ -1939,5 +1939,4 @@ __p+='`),et}),c+=`'; `,nt="obj";c=`var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; `+c+`return __p; `;var at;try{at=new Function(nt,"_",c)}catch(et){throw et.source=c,et}var lt=function(et){return at.call(this,et,_$1)};return lt.source="function("+nt+`){ -`+c+"}",lt}function result(e,o,s){o=toPath(o);var a=o.length;if(!a)return isFunction$1(s)?s.call(e):s;for(var $=0;$1)flatten$1(at,o-1,s,a),$=a.length;else for(var lt=0,et=at.length;lto?(a&&(clearTimeout(a),a=null),at=it,nt=e.apply($,c),a||($=c=null)):!a&&s.trailing!==!1&&(a=setTimeout(lt,st)),nt};return et.cancel=function(){clearTimeout(a),at=0,a=$=c=null},et}function debounce(e,o,s){var a,$,c,nt,at,lt=function(){var it=now()-$;o>it?a=setTimeout(lt,o-it):(a=null,s||(nt=e.apply(at,c)),a||(c=at=null))},et=restArguments(function(it){return at=this,c=it,$=now(),a||(a=setTimeout(lt,o),s&&(nt=e.apply(at,c))),nt});return et.cancel=function(){clearTimeout(a),a=c=at=null},et}function wrap(e,o){return partial(o,e)}function negate(e){return function(){return!e.apply(this,arguments)}}function compose(){var e=arguments,o=e.length-1;return function(){for(var s=o,a=e[o].apply(this,arguments);s--;)a=e[s].call(this,a);return a}}function after(e,o){return function(){if(--e<1)return o.apply(this,arguments)}}function before(e,o){var s;return function(){return--e>0&&(s=o.apply(this,arguments)),e<=1&&(o=null),s}}const once=partial(before,2);function findKey(e,o,s){o=cb(o,s);for(var a=keys(e),$,c=0,nt=a.length;c0?0:$-1;c>=0&&c<$;c+=e)if(s(o[c],c,o))return c;return-1}}const findIndex=createPredicateIndexFinder(1),findLastIndex=createPredicateIndexFinder(-1);function sortedIndex(e,o,s,a){s=cb(s,a,1);for(var $=s(o),c=0,nt=getLength(e);c0?nt=c>=0?c:Math.max(c+at,nt):at=c>=0?Math.min(c+1,at):c+at+1;else if(s&&c&&at)return c=s(a,$),a[c]===$?c:-1;if($!==$)return c=o(slice.call(a,nt,at),isNaN$1),c>=0?c+nt:-1;for(c=e>0?nt:at-1;c>=0&&c0?0:at-1;for(c||($=s[nt?nt[lt]:lt],lt+=e);lt>=0&<=3;return o(s,optimizeCb(a,c,4),$,nt)}}const reduce=createReduce(1),reduceRight=createReduce(-1);function filter(e,o,s){var a=[];return o=cb(o,s),each(e,function($,c,nt){o($,c,nt)&&a.push($)}),a}function reject(e,o,s){return filter(e,negate(cb(o)),s)}function every(e,o,s){o=cb(o,s);for(var a=!isArrayLike(e)&&keys(e),$=(a||e).length,c=0;c<$;c++){var nt=a?a[c]:c;if(!o(e[nt],nt,e))return!1}return!0}function some(e,o,s){o=cb(o,s);for(var a=!isArrayLike(e)&&keys(e),$=(a||e).length,c=0;c<$;c++){var nt=a?a[c]:c;if(o(e[nt],nt,e))return!0}return!1}function contains(e,o,s,a){return isArrayLike(e)||(e=values(e)),(typeof s!="number"||a)&&(s=0),indexOf(e,o,s)>=0}const invoke=restArguments(function(e,o,s){var a,$;return isFunction$1(o)?$=o:(o=toPath(o),a=o.slice(0,-1),o=o[o.length-1]),map(e,function(c){var nt=$;if(!nt){if(a&&a.length&&(c=deepGet(c,a)),c==null)return;nt=c[o]}return nt==null?nt:nt.apply(c,s)})});function pluck(e,o){return map(e,property(o))}function where(e,o){return filter(e,matcher(o))}function max(e,o,s){var a=-1/0,$=-1/0,c,nt;if(o==null||typeof o=="number"&&typeof e[0]!="object"&&e!=null){e=isArrayLike(e)?e:values(e);for(var at=0,lt=e.length;ata&&(a=c)}else o=cb(o,s),each(e,function(et,it,st){nt=o(et,it,st),(nt>$||nt===-1/0&&a===-1/0)&&(a=et,$=nt)});return a}function min(e,o,s){var a=1/0,$=1/0,c,nt;if(o==null||typeof o=="number"&&typeof e[0]!="object"&&e!=null){e=isArrayLike(e)?e:values(e);for(var at=0,lt=e.length;atat||nt===void 0)return 1;if(nt1&&(a=optimizeCb(a,o[1])),o=allKeys(e)):(a=keyInObj,o=flatten$1(o,!1,!1),e=Object(e));for(var $=0,c=o.length;$1&&(a=o[1])):(o=map(flatten$1(o,!1,!1),String),s=function($,c){return!contains(o,c)}),pick(e,s,a)});function initial(e,o,s){return slice.call(e,0,Math.max(0,e.length-(o==null||s?1:o)))}function first(e,o,s){return e==null||e.length<1?o==null||s?void 0:[]:o==null||s?e[0]:initial(e,e.length-o)}function rest(e,o,s){return slice.call(e,o==null||s?1:o)}function last(e,o,s){return e==null||e.length<1?o==null||s?void 0:[]:o==null||s?e[e.length-1]:rest(e,Math.max(0,e.length-o))}function compact(e){return filter(e,Boolean)}function flatten(e,o){return flatten$1(e,o,!1)}const difference=restArguments(function(e,o){return o=flatten$1(o,!0,!0),filter(e,function(s){return!contains(o,s)})}),without=restArguments(function(e,o){return difference(e,o)});function uniq(e,o,s,a){isBoolean(o)||(a=s,s=o,o=!1),s!=null&&(s=cb(s,a));for(var $=[],c=[],nt=0,at=getLength(e);nt"u"?it={autoBom:!1}:typeof it!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),it={autoBom:!it}),it.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(et.type)?new Blob(["\uFEFF",et],{type:et.type}):et}function a(et,it,st){var ct=new XMLHttpRequest;ct.open("GET",et),ct.responseType="blob",ct.onload=function(){lt(ct.response,it,st)},ct.onerror=function(){console.error("could not download file")},ct.send()}function $(et){var it=new XMLHttpRequest;it.open("HEAD",et,!1);try{it.send()}catch{}return 200<=it.status&&299>=it.status}function c(et){try{et.dispatchEvent(new MouseEvent("click"))}catch{var it=document.createEvent("MouseEvents");it.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),et.dispatchEvent(it)}}var nt=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof commonjsGlobal=="object"&&commonjsGlobal.global===commonjsGlobal?commonjsGlobal:void 0,at=nt.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),lt=nt.saveAs||(typeof window!="object"||window!==nt?function(){}:"download"in HTMLAnchorElement.prototype&&!at?function(et,it,st){var ct=nt.URL||nt.webkitURL,ft=document.createElement("a");it=it||et.name||"download",ft.download=it,ft.rel="noopener",typeof et=="string"?(ft.href=et,ft.origin===location.origin?c(ft):$(ft.href)?a(et,it,st):c(ft,ft.target="_blank")):(ft.href=ct.createObjectURL(et),setTimeout(function(){ct.revokeObjectURL(ft.href)},4e4),setTimeout(function(){c(ft)},0))}:"msSaveOrOpenBlob"in navigator?function(et,it,st){if(it=it||et.name||"download",typeof et!="string")navigator.msSaveOrOpenBlob(s(et,st),it);else if($(et))a(et,it,st);else{var ct=document.createElement("a");ct.href=et,ct.target="_blank",setTimeout(function(){c(ct)})}}:function(et,it,st,ct){if(ct=ct||open("","_blank"),ct&&(ct.document.title=ct.document.body.innerText="downloading..."),typeof et=="string")return a(et,it,st);var ft=et.type==="application/octet-stream",pt=/constructor/i.test(nt.HTMLElement)||nt.safari,gt=/CriOS\/[\d]+/.test(navigator.userAgent);if((gt||ft&&pt||at)&&typeof FileReader<"u"){var wt=new FileReader;wt.onloadend=function(){var $t=wt.result;$t=gt?$t:$t.replace(/^data:[^;]*;/,"data:attachment/file;"),ct?ct.location.href=$t:location=$t,ct=null},wt.readAsDataURL(et)}else{var vt=nt.URL||nt.webkitURL,_t=vt.createObjectURL(et);ct?ct.location=_t:location.href=_t,ct=null,setTimeout(function(){vt.revokeObjectURL(_t)},4e4)}});nt.saveAs=lt.saveAs=lt,e.exports=lt})})(FileSaver_min);var FileSaver_minExports=FileSaver_min.exports;const Segment=({param:e,index:o,handleInputChange:s,sourceImageID:a,template_id:$=null})=>{const[c,nt]=reactExports.useState([]),[at,lt]=reactExports.useState(null),[et,it]=reactExports.useState(null),[st,ct]=reactExports.useState(null),[ft,pt]=reactExports.useState(null),gt=useModel(),[wt,vt]=reactExports.useState(null),[_t,$t]=reactExports.useState(null),[Pt,Nt]=reactExports.useState({});reactExports.useState(null),reactExports.useState(null);const[Lt,Ft]=reactExports.useState(null),[Wt,_r]=reactExports.useState(null),[vr,_o]=reactExports.useState(null),[Jt,Kr]=reactExports.useState(null),[Ot,gr]=reactExports.useState(null),[$o,On]=reactExports.useState(null),en=reactExports.useRef(null),Yr=reactExports.useRef(null),[So,Er]=reactExports.useState("/api/resources/proxyurl/shangxiaobao.com:9001"),Ir=reactExports.useRef(null),Zr=reactExports.useRef(null);reactExports.useEffect(()=>{(()=>{const nn=document.createElement("script");nn.src="/assets/opencv.js",nn.async=!0,nn.onload=()=>{console.log("OpenCV.js loaded")},document.body.appendChild(nn)})()},[]),reactExports.useEffect(()=>{},[]),reactExports.useEffect(()=>{console.log("new source iamge id",a);const Oo={};Ir.current=Oo,(!a||et)&&(Kr(generateUniqueFilename("_embeddings.npy")),gr(generateUniqueFilename("_mask.png")),it(null),ct(null),$t(null),nt([]),Nt({}),pt(null),lt(null),vt(null),_r(null)),a&&getLocalResourceURL(a,$).then(nn=>{if(Ir.current!=Oo){console.log("cancel executions.",a);return}if(_o(nn.url),_n(nn.url),(!e.value||!e.value[1]||!e.value[1].name||$o)&&Jo(new URL(nn.url),Oo),Ir.current!=Oo){console.log("cancel executions.",a);return}On(a)})},[a]),reactExports.useEffect(()=>{const Oo={};Zr.current=Oo,(async Ao=>{if(!Lt&&!Wt&&e&&e.value&&Array.isArray(e.value)&&e.value.length>0&&e.value[1]){let Ko={url:null,file:null},Fo={url:null,file:null};if(Zr.current!==Ao){console.log("quit1");return}if(e.value[0]&&e.value[0].name){if(Ko=await getLocalResourceURL(`${e.value[0].name}_${e.value[0].type}_${e.value[0].size}`,$),Zr.current!==Ao){console.log("quit1");return}zo(Ko.url),Ft(Ko.file)}if(Zr.current!==Ao){console.log("quit2");return}if(e.value[1]&&e.value[1].name){if(Fo=await getLocalResourceURL(`${e.value[1].name}_${e.value[1].type}_${e.value[1].size}`,$),Zr.current!==Ao){console.log("quit1");return}_r(Fo.file),tn(Fo.file)}if(Zr.current!==Ao){console.log("quit3");return}s(o,{target:{name:Ko.file&&Ko.file.name?Ko.file.name:"mask.file",files:[Ko?.file,Fo.file]}})}else console.log("legacy flow.")})(Oo)},[e]),reactExports.useEffect(()=>{const Oo=()=>{et&&et.width/et.height},nn=new ResizeObserver(Ao=>{for(const Ko of Ao)Ko.target===document.body&&Oo()});return Oo(),nn.observe(document.body),()=>{nn.unobserve(document.body)}},[et]);const tn=async Oo=>{if(Oo)try{const nn=await Xo(Oo),Ao=await Js(nn,"float32");vt(Ao)}catch(nn){alert("internal error"),console.error("Failed to load tensor:",nn)}},_n=async Oo=>{try{if(!Oo)return;const nn=new Image;nn.src=new URL(Oo).href,nn.onload=()=>{const{height:Ao,width:Ko,samScale:Fo}=Bo(nn);$t({height:Ao,width:Ko,samScale:Fo}),nn.width=Ko,nn.height=Ao,it(nn)}}catch(nn){console.log(nn)}},zo=async Oo=>{try{if(!Oo){ct(null);return}const nn=new Image;nn.src=new URL(Oo).href,nn.onload=()=>{ct(nn)}}catch(nn){console.log(nn)}};function Xo(Oo){return new Promise((nn,Ao)=>{const Ko=new FileReader;Ko.onload=Fo=>{nn(Fo.target.result)},Ko.onerror=Fo=>{Ao(Fo)},Ko.readAsArrayBuffer(Oo)})}async function Do(Oo,nn){try{const Ao=new Blob([Oo],{type:"application/octet-stream"}),Ko=Jt,Fo=new File([Ao],Ko,{type:"application/octet-stream"});if(Ir.current!==nn){console.log("canceld:",Fo);return}if(_r(Fo),tn(Fo),Ir.current!==nn){console.log("canceld:",Fo);return}console.log("seding param change :",Fo),s(o,{target:{name:Ot,files:[null,Fo]}}),ct(null)}catch(Ao){console.error("Error saving ArrayBuffer:",Ao)}}const Yo=async Oo=>{const nn=await fetch(Oo).then(Fo=>Fo.blob()),Ao=new File([nn],"mask.png",{type:"image/png"}),Ko=new FormData;return Ko.append("file",nn),Ko.append("name",Ao.name),Ko.append("size",Ao.size),Ko.append("type",Ao.type),Ko},Jo=async(Oo,nn)=>{const Ao=await Yo(Oo);let Ko=0;for(;Ko<3;){try{if(Ir.current!==nn)return;let Fo=await fetch(`${WEB_SITE}${So}/getembeddings_refined`,{method:"POST",body:Ao});if(Fo.ok){const qs=await Fo.arrayBuffer();Do(qs,nn);break}else alert("网络阻塞,重试一下就好 ..."),console.error("Failed to get embeddings:",Fo.statusText)}catch(Fo){alert("网络阻塞,重试一下就好 ..."),console.error("Error loading image tensor:",Fo)}Ko+=1}},Bo=Oo=>{let Ao=Oo.naturalWidth,Ko=Oo.naturalHeight;const Fo=1024/Math.max(Ko,Ao);return{height:Ko,width:Ao,samScale:Fo}},Js=async(Oo,nn)=>{const Ko=await new npyjs().load(Oo);return new yt(nn,Ko.data,Ko.shape)};reactExports.useEffect(()=>{if(c){const Oo=ko();if(Oo){const nn=In(Oo);nn.onload=()=>{const Ao=document.createElement("canvas"),Ko=Ao.getContext("2d");Ao.width=Oo.width,Ao.height=Oo.height,Ko.fillStyle="white",Ko.fillRect(0,0,Ao.width,Ao.height),Ko.drawImage(nn,0,0);try{if(window.cv&&window.cv.imread){const Fo=window.cv.imread(Ao);if(Fo.empty())console.error("The source matrix is empty.");else{const qs=new window.cv.Mat;window.cv.cvtColor(Fo,qs,window.cv.COLOR_RGBA2GRAY,0);const Xs=new window.cv.Mat,na=new window.cv.Size(5,5);window.cv.GaussianBlur(qs,Xs,na,0,0,window.cv.BORDER_DEFAULT);const ba=window.cv.Mat.ones(5,5,window.cv.CV_8U),ga=new window.cv.Mat;window.cv.morphologyEx(Xs,ga,window.cv.MORPH_CLOSE,ba);const eu=new window.cv.Mat;window.cv.threshold(ga,eu,127,255,window.cv.THRESH_BINARY),window.cv.imshow(Ao,eu),Fo.delete(),qs.delete(),Xs.delete(),ga.delete(),eu.delete(),ba.delete()}}else console.error("OpenCV.js is not loaded properly.")}catch(Fo){console.error("OPENCV ERROR:",Fo)}Ao.toBlob(Fo=>{if(Fo){const qs=Ot,Xs=new File([Fo],qs,{type:"image/png"});Ft(Xs),s(o,{target:{name:Ot,files:[Xs,Wt]}})}},"image/png")},ct(nn)}else ct(null)}},[c]),reactExports.useEffect(()=>{if(!at){pt(null);return}if(gt===null||wt===null||_t===null)return;(async()=>{const nn=await tr({x:at.x,y:at.y}),Ao=In(nn);pt(Ao)})()},[at]),reactExports.useEffect(()=>{if(!st)return;const Oo=new window.Image;Oo.src=st.src,Oo.onload=()=>{const nn=en.current;if(!nn)return;const Ao=nn.getContext("2d");nn.width=Oo.width,nn.height=Oo.height,Ao.drawImage(Oo,0,0);const Ko=Ao.getImageData(0,0,nn.width,nn.height),Fo=Ko.data;for(let qs=0;qs{if(Oo.preventDefault(),!st)return;const nn=document.createElement("canvas");nn.width=st.width,nn.height=st.height;const Ao=nn.getContext("2d");Ao.drawImage(st,0,0);const Ko=Ao.getImageData(0,0,st.width,st.height).data,Fo=document.createElement("canvas");Fo.width=st.width,Fo.height=st.height;const qs=Fo.getContext("2d");qs.drawImage(et,0,0,st.width,st.height);const Xs=qs.getImageData(0,0,st.width,st.height).data;for(let na=0;na{const ba=URL.createObjectURL(na),ga=document.createElement("a");ga.download="extracted_areas.png",ga.href=ba,ga.click()},"image/png")},Dt=async Oo=>{if(gt===null||wt===null||_t===null)return;Oo.preventDefault();const nn=Oo.currentTarget.getBoundingClientRect(),Ao=(Oo.clientX-nn.left)*(_t.width/nn.width),Ko=(Oo.clientY-nn.top)*(_t.height/nn.height);if(Oo.button===0){const Fo=[...c,Lr(Ao,Ko)];let qs=await tr({x:Ao,y:Ko});Nt({...Pt,[`${Ao},${Ko},1`]:qs}),nt(Fo)}else if(Oo.button===2){const Fo=[...c,Lr(Ao,Ko,-1)];let qs=await tr({x:Ao,y:Ko});Nt({...Pt,[`${Ao},${Ko},-1`]:qs}),nt(Fo)}},vn=Oo=>{Oo.preventDefault()},Lr=(Oo,nn,Ao=1)=>({x:Oo,y:nn,clickType:Ao}),tr=async({x:Oo,y:nn})=>{try{if(gt===null||wt===null||_t===null)return;const Ao=[Lr(Oo,nn)],Ko=modelData({clicks:Ao,tensor:wt,modelScale:_t});if(Ko===void 0)return;const qs=(await gt.run(Ko))[gt.outputNames[0]];return er(qs.data,qs.dims[2],qs.dims[3])}catch(Ao){console.log(Ao)}return null};function er(Oo,nn,Ao){const[Ko,Fo,qs,Xs]=[0,114,189,255],na=new Uint8ClampedArray(4*nn*Ao).fill(0);for(let ba=0;ba0&&(na[4*ba+0]=Ko,na[4*ba+1]=Fo,na[4*ba+2]=qs,na[4*ba+3]=Xs);return new ImageData(na,Ao,nn)}function Dr(Oo){const nn=document.createElement("canvas");return nn.width=Oo.width,nn.height=Oo.height,nn.getContext("2d").putImageData(Oo,0,0),nn}const ko=()=>{if(Object.keys(Pt).length===0)return null;if(gt===null||wt===null||_t===null)return;Pt[Object.keys(Pt)[0]];const Oo=et.width,nn=et.height,Ao=document.createElement("canvas");Ao.getContext("2d"),Ao.width=Oo,Ao.height=nn;const Ko=new Uint8ClampedArray(4*Oo*nn).fill(0);return Object.entries(Pt).forEach(([qs,Xs])=>{const ba=Dr(Xs).getContext("2d").getImageData(0,0,Oo,nn).data,ga=parseInt(qs.split(",")[2]);if(ga===-1)for(let eu=0;eu0&&(Ko[eu+3]=0);else if(ga===1)for(let eu=0;eu0&&(Ko[eu+3]=255)}),new ImageData(Ko,Oo,nn)};function In(Oo){const nn=Dr(Oo),Ao=new Image;return Ao.src=nn.toDataURL(),Ao}const Jr=Oo=>{if(Oo.preventDefault(),!st)return;const nn=document.createElement("canvas"),Ao=nn.getContext("2d");if(nn.width=st.width,nn.height=st.height,Ao.fillStyle="white",Ao.fillRect(0,0,nn.width,nn.height),Ao.drawImage(st,0,0),window.cv)try{const Ko=window.cv.imread(nn),Fo=new window.cv.Mat;window.cv.cvtColor(Ko,Fo,window.cv.COLOR_RGBA2GRAY,0);const qs=new window.cv.Mat,Xs=new window.cv.Size(5,5);window.cv.GaussianBlur(Fo,qs,Xs,0,0,window.cv.BORDER_DEFAULT);const na=window.cv.Mat.ones(5,5,window.cv.CV_8U),ba=new window.cv.Mat;window.cv.morphologyEx(qs,ba,window.cv.MORPH_CLOSE,na);const ga=new window.cv.Mat;window.cv.threshold(ba,ga,127,255,window.cv.THRESH_BINARY),window.cv.imshow(nn,ga);const eu=nn.toDataURL("image/png");Ko.delete(),Fo.delete(),qs.delete(),ba.delete(),ga.delete(),na.delete();const mu=jo(eu);let gu=generateUniqueFilename("mask.png");FileSaver_minExports.saveAs(mu,gu)}catch(Ko){console.error("OPENCV ERROR:",Ko),nn.toBlob(Fo=>{let qs=generateUniqueFilename("mask.png");FileSaver_minExports.saveAs(Fo,qs)},"image/png")}};function jo(Oo){const nn=atob(Oo.split(",")[1]),Ao=new Array(nn.length);for(let Fo=0;Fo{Oo.preventDefault(),ct(null),nt([]),Nt({}),pt(null),lt(null),Ft(null),s(o,{target:{name:Ot,files:[null,Wt]}})},Po=_.throttle(Oo=>{if(gt===null||wt===null||_t===null)return;let nn=Oo.nativeEvent.target;const Ao=nn.getBoundingClientRect();let Ko=Oo.clientX-Ao.left,Fo=Oo.clientY-Ao.top;const qs=et?et.width/nn.offsetWidth:1;Ko*=qs,Fo*=qs;const Xs=Lr(Ko,Fo);Xs&<(Xs)},15),Zo=Oo=>{console.log("out"),lt(null),pt(null)};return reactExports.useState(null),reactExports.useState(500),jsxRuntimeExports.jsxs("div",{className:"my-file-drop-area",children:[(!wt||!gt||!_t)&&jsxRuntimeExports.jsx("div",{style:{fontSize:"14px",textAlign:"center",padding:"20px",zIndex:999,backgroundColor:"rgba(255, 255, 255, 0.9)"},children:et?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("img",{style:{width:"20px",height:"20px"},loading:"lazy",className:"mix_blend_mode",src:"/images/loading.gif",alt:"active-icon"}),window.innerWidth>1e3?"蒙版加载中,大概需要10-20秒,然后移动鼠标,稍作等待后,蓝色区域为备选区域(左键是加选,右键是减选),红色是已选区域(即:在结果中保留的部分)":"红色已选,点击选择"]}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:window.innerWidth>1e3?"这里是左边的原图的蒙版选择区域,红色选中的区域在结果图中不会变。 ":"蒙版"})}),wt&>&&_t&&at==null&&window.innerWidth>1e3&&jsxRuntimeExports.jsx("div",{style:{fontSize:"14px",textAlign:"center",padding:"20px",zIndex:999,backgroundColor:"rgba(255, 255, 255, 0.4)"},children:et?jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:window.innerWidth>1e3?"挪动鼠标,蓝色为待选区域,红色为结果图中不变的区域,左键➕,右键➖":"点击选择蒙版"}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:window.innerWidth>1e3?"这里是左边的原图的蒙版选择区域,红色选中的区域在结果图中不会变。 ":"蒙版"})}),!1,st&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("button",{onClick:Jr,style:{position:"absolute",top:"20px",left:0,background:"#31BE4B",border:"none",borderRadius:"4px",color:"#FFFFFF",margin:window.innerWidth>1e3?"10px":"0px",fontSize:"10px",zIndex:999},children:"下载"}),jsxRuntimeExports.jsx("button",{onClick:Lo,style:{position:"absolute",top:"50px",left:0,background:"#2C5ECE",border:"none",borderRadius:"4px",color:"#ffffff",margin:window.innerWidth>1e3?"10px":"0px",fontSize:"10px",zIndex:999},children:"剪裁"}),jsxRuntimeExports.jsx("button",{onClick:Qo,style:{position:"absolute",top:"80px",left:0,background:"#E6E6E6",border:"none",borderRadius:"4px",color:"#787878",margin:window.innerWidth>1e3?"10px":"0px",fontSize:"10px",zIndex:999},children:"清空"})]}),et&&jsxRuntimeExports.jsx("img",{src:et.src,name:"sourceimage",style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),st&&jsxRuntimeExports.jsx("canvas",{ref:en,style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),ft&&jsxRuntimeExports.jsx("img",{src:ft.src,style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",opacity:"0.5",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),et&&jsxRuntimeExports.jsx("img",{ref:Yr,src:et.src,name:"sourceimage",style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",top:"50%",left:"50%",opacity:"0.2",zIndex:"990",transform:"translate(-50%, -50%)"},onMouseDown:Dt,onMouseMove:Po,onMouseLeave:Zo,onContextMenu:vn})]})};function ImageEditor({param:e,canvasWidth:o,canvasHeight:s,url:a,handleChanged:$}){const c=reactExports.useRef(null),[nt,at]=reactExports.useState({x:0,y:0,width:0,height:0,scale:1}),[lt,et]=reactExports.useState(!1),[it,st]=reactExports.useState({x:0,y:0,width:0,height:0}),[ct,ft]=reactExports.useState(!1),[pt,gt]=reactExports.useState(null),[wt,vt]=reactExports.useState(!1),[_t,$t]=reactExports.useState(null),[Pt,Nt]=reactExports.useState(1),Lt=reactExports.useRef(null),[Ft,Wt]=reactExports.useState(null),_r=Zr=>{if(Zr){const tn=e.accept.split(","),_n=Zr.name.split(".").pop().toLowerCase();if(tn==""||tn.includes(`.${_n}`)){const zo={target:{name:e.name,files:[Zr]}};$(zo)}else alert("文件类型暂不支持,请上传如下类型文件:"+e.accept)}},vr=Zr=>{Zr.preventDefault(),Zr.stopPropagation(),Zr.target.files[0]&&$(Zr)};reactExports.useEffect(()=>{const Zr=new Image;Zr.src=a,Zr.onload=()=>{const tn=o/1.5/Zr.width,_n=s/1.5/Zr.height,zo=Math.min(_n,tn),Xo={image:Zr,x:(c.current.width-Zr.width*zo)/2,y:(c.current.height-Zr.height*zo)/2,width:Zr.width*zo,height:Zr.height*zo,scale:zo};at(Xo),st({x:Xo.x,y:Xo.y,width:Xo.width,height:Xo.height}),Wt(Xo),Nt(zo),et(!0),$t(Zr)}},[o,s,a]);const _o=Zr=>{Zr.preventDefault(),Ft&&(at(Ft),st({x:Ft.x,y:Ft.y,width:Ft.width,height:Ft.height}))},Jt=(Zr,tn)=>{const zo=tn.height/15,Xo=tn.width/15;for(let Do=0;Do{const tn=o/_t.width,_n=s/_t.height,zo=_t.width*tn,Xo=_t.height*_n;Zr.font="16px Arial",Zr.fillStyle="black",Zr.textAlign="right",Zr.font="12px Arial",Zr.fillText(`最大宽度: ${Math.round(zo/Pt)}px, 最大高度: ${Math.round(Xo/Pt)}px`,c.current.width-10,c.current.height-10)};reactExports.useEffect(()=>{const Zr=c.current,tn=Zr.getContext("2d");Zr.width=o,Zr.height=s,Jt(tn,Zr)},[]);const Ot=Zr=>{Zr.preventDefault(),Zr.stopPropagation();const _n=.01*(1024/_t.width),zo=Zr.clientX-c.current.getBoundingClientRect().left,Xo=Zr.clientY-c.current.getBoundingClientRect().top,Do=Zr.deltaY>0?-_n:_n;at(Yo=>{const Jo=Math.max(.02,Math.min(8,Yo.scale+Do)),Bo=_t.width*Jo,Js=_t.height*Jo,Lo=zo-(zo-Yo.x)*(Jo/Yo.scale),Dt=Xo-(Xo-Yo.y)*(Jo/Yo.scale);return{...Yo,x:Lo,y:Dt,width:Bo,height:Js,scale:Jo}})},gr=Zr=>{Zr.preventDefault();const tn={x:Zr.clientX-c.current.getBoundingClientRect().left,y:Zr.clientY-c.current.getBoundingClientRect().top},_n=8;if(Math.abs(tn.x-it.x)<_n&&Math.abs(tn.y-it.y)<_n){ft(!0),gt({x:tn.x-it.x,y:tn.y-it.y,corner:"topLeft"});return}else if(Math.abs(tn.x-(it.x+it.width))<_n&&Math.abs(tn.y-it.y)<_n){ft(!0),gt({x:tn.x-(it.x+it.width),y:tn.y-it.y,corner:"topRight"});return}else if(Math.abs(tn.x-it.x)<_n&&Math.abs(tn.y-(it.y+it.height))<_n){ft(!0),gt({x:tn.x-it.x,y:tn.y-(it.y+it.height),corner:"bottomLeft"});return}else if(Math.abs(tn.x-(it.x+it.width))<_n&&Math.abs(tn.y-(it.y+it.height))<_n){ft(!0),gt({x:tn.x-(it.x+it.width),y:tn.y-(it.y+it.height),corner:"bottomRight"});return}vt(!0),gt({x:tn.x-nt.x,y:tn.y-nt.y})},$o=Zr=>{if(Zr.preventDefault(),wt){const Do=Zr.clientX-c.current.getBoundingClientRect().left,Yo=Zr.clientY-c.current.getBoundingClientRect().top;at(Jo=>({...Jo,x:Do-pt.x,y:Yo-pt.y}));return}if(!ct)return;const tn=Zr.clientX-c.current.getBoundingClientRect().left,_n=Zr.clientY-c.current.getBoundingClientRect().top,zo=tn+pt.x,Xo=_n+pt.y;st(Do=>{switch(pt.corner){case"topLeft":return{...Do,x:zo,y:Xo,width:Do.width+(Do.x-zo),height:Do.height+(Do.y-Xo)};case"topRight":return{...Do,y:Xo,width:zo-Do.x,height:Do.height+(Do.y-Xo)};case"bottomLeft":return{...Do,x:zo,width:Do.width+(Do.x-zo),height:Xo-Do.y};case"bottomRight":return{...Do,width:zo-Do.x,height:Xo-Do.y};default:return Do}})},On=()=>{ft(!1),vt(!1)};reactExports.useEffect(()=>{if(lt&&nt){const Zr=c.current,tn=Zr.getContext("2d");tn.clearRect(0,0,Zr.width,Zr.height),Jt(tn,Zr),tn.drawImage(nt.image,nt.x,nt.y,nt.width,nt.height),en(tn),Kr(tn)}},[nt,lt,it]);const en=Zr=>{const tn=c.current;Zr.clearRect(0,0,tn.width,tn.height),Jt(Zr,tn),Zr.drawImage(_t,nt.x,nt.y,nt.width,nt.height),Zr.strokeStyle="grey",Zr.lineWidth=2,Zr.strokeRect(it.x,it.y,it.width,it.height);const _n=8;Zr.fillStyle="blue",Zr.fillRect(it.x-_n/2,it.y-_n/2,_n,_n),Zr.fillRect(it.x+it.width-_n/2,it.y-_n/2,_n,_n),Zr.fillRect(it.x-_n/2,it.y+it.height-_n/2,_n,_n),Zr.fillRect(it.x+it.width-_n/2,it.y+it.height-_n/2,_n,_n)};function Yr(Zr,tn){const _n=document.createElement("canvas"),zo=_n.getContext("2d");return _n.width=Zr.width/tn,_n.height=Zr.height/tn,zo.drawImage(Zr,0,0,_n.width,_n.height),_n}const So=Zr=>{Zr.preventDefault();const tn=document.createElement("canvas"),_n=tn.getContext("2d");tn.width=Math.round(it.width/Pt),tn.height=Math.round(it.height/Pt);const zo=Ft.width/nt.width,Xo=Yr(Ft.image,zo),Do=Xo.width,Yo=Xo.height,Jo=(nt.x-it.x)/Pt,Bo=(nt.y-it.y)/Pt;_n.drawImage(Xo,0,0,Do,Yo,Jo,Bo,Do,Yo),tn.toBlob(Js=>{const Lo=URL.createObjectURL(Js),Dt=document.createElement("a");Dt.href=Lo,Dt.download="saved-image.png",document.body.appendChild(Dt),Dt.click(),document.body.removeChild(Dt),URL.revokeObjectURL(Lo)},"image/png")},Er=Zr=>{Zr.preventDefault();const tn=document.createElement("canvas"),_n=tn.getContext("2d");tn.width=Math.round(it.width/Pt),tn.height=Math.round(it.height/Pt);const zo=Ft.width/nt.width,Xo=Yr(Ft.image,zo),Do=Xo.width,Yo=Xo.height,Jo=(nt.x-it.x)/Pt,Bo=(nt.y-it.y)/Pt;_n.drawImage(Xo,0,0,Do,Yo,Jo,Bo,Do,Yo),tn.toBlob(Js=>{URL.createObjectURL(Js),document.createElement("a");const Lo=Ir("edited_.png"),Dt=new File([Js],Lo,{type:"image/png"});_r(Dt)},"image/png")};function Ir(Zr){const tn=new Date,_n=tn.getFullYear()+("0"+(tn.getMonth()+1)).slice(-2)+("0"+tn.getDate()).slice(-2)+"_"+("0"+tn.getHours()).slice(-2)+("0"+tn.getMinutes()).slice(-2)+("0"+tn.getSeconds()).slice(-2),zo=v4().replace(/-/g,""),Xo=`${_n}_${zo}_`,Do=Zr.split("/").pop();return`${Xo}${Do}`}return jsxRuntimeExports.jsxs("div",{style:{position:"relative",width:"canvasWidthpx",height:"canvasHeightpx",border:"1px solid black"},children:[jsxRuntimeExports.jsx("canvas",{ref:c,onWheel:Ot,onMouseDown:gr,onMouseMove:$o,onMouseUp:On}),jsxRuntimeExports.jsxs("div",{style:{position:"absolute",top:"5px",left:"0px",fontSize:"10px",color:"#787878"},children:[jsxRuntimeExports.jsx("span",{style:{display:"inline-block",padding:"0 10px"},children:"拖动四个角改变结果图大小,滚轮缩放原始图像,拖动图像改变位置,"}),jsxRuntimeExports.jsxs("div",{style:{fontSize:"10px",padding:"0 10px"},children:["宽: ",Math.round(it.width/Pt),"px, 高: ",Math.round(it.height/Pt),"px; 原图在新图中坐标:( ",Math.round((nt.x-it.x)/Pt),", ",Math.round((nt.y-it.y)/Pt)," )"]}),jsxRuntimeExports.jsx("input",{type:"file",ref:Lt,style:{display:"none"},onChange:Zr=>{vr(Zr)}})]}),jsxRuntimeExports.jsx("div",{className:"newfileInput",children:jsxRuntimeExports.jsx("button",{onClick:Zr=>{Zr.preventDefault(),Lt.current.click()},children:"新建上传"})}),jsxRuntimeExports.jsxs("div",{className:"newfileInputCon",children:[jsxRuntimeExports.jsx("button",{onClick:Zr=>_o(Zr),style:{color:"#2C5ECE"},children:"复原"}),jsxRuntimeExports.jsx("button",{onClick:Zr=>So(Zr),style:{color:"#31BE4B"},children:"下载"}),jsxRuntimeExports.jsx("button",{onClick:Zr=>Er(Zr),style:{color:"#787878"},children:"确认"})]})]})}function EditableImage({index:e,param:o,handleInputChange:s,previewUrl:a}){const[$,c]=reactExports.useState(!1),nt=reactExports.useRef(null),at=ft=>{ft.preventDefault(),c(!0)},lt=ft=>{ft.preventDefault(),c(!1)},et=ft=>{ft.preventDefault()},it=ft=>{ft.preventDefault(),c(!1);const pt=ft.dataTransfer.files[0];if(pt){const gt=o.accept.split(","),wt=pt.name.split(".").pop().toLowerCase();if(gt==""||gt.includes(`.${wt}`)){const vt={target:{name:o.name,files:[pt]}};s(e,vt)}else alert("文件类型暂不支持,请上传如下类型文件:"+o.accept)}},st=ft=>async pt=>{await s(ft,pt)},ct=ft=>{ft.preventDefault(),ft.target.files[0]&&s(e,ft)};return jsxRuntimeExports.jsxs("div",{className:`my-file-drop-area ${$?"dragging":""}`,onDragEnter:at,onDragLeave:lt,onDragOver:et,onDrop:it,onClick:()=>{a||nt.current.click()},style:{position:"relative",minHeight:window.innerWidth>1e3?"500px":"320px",maxWidth:"100%",maxHeight:"100%"},children:[jsxRuntimeExports.jsx("input",{type:"file",ref:nt,style:{display:"none"},name:o.name,accept:o.accept,onChange:ft=>ct(ft)}),a?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ImageEditor,{param:o,canvasHeight:window.innerWidth>1e3?480:300,canvasWidth:window.innerWidth>1e3?320:200,url:a,handleChanged:st(e)}),jsxRuntimeExports.jsx("button",{type:"button",className:"cancel",onClick:ft=>{ft.stopPropagation(),nt.current.value="",s(e,null)},style:{position:"absolute",top:"10px",right:"10px",padding:"2px",fontSize:"10px",borderRadius:"5%",backgroundColor:"#ccc",border:"none",cursor:"pointer"},children:"X"})]}):jsxRuntimeExports.jsx("p",{style:{textAlign:"center",margin:0,fontSize:"13px"},children:"+"})]})}const DynamicParameterRender=({params:e,setParamFunc:o,template_id:s=null,is_author:a=!1})=>{const $=api$1.get("userType"),[c,nt]=reactExports.useState([]),[at,lt]=reactExports.useState({}),et=reactExports.useRef(null);reactExports.useState(!0);let it=new AbortController;reactExports.useEffect(()=>{it=new AbortController;const _t=it.signal;return pt(e,_t).then($t=>{if(_t.aborted)throw new Error("Fetch aborted");JSON.stringify(e)!==JSON.stringify($t)&&o&&o($t)}).catch($t=>{console.error("Failed to update parameters:",$t)}),()=>{it.abort()}},[e]);const st=async(_t,$t)=>{const Pt={};et.current=Pt;const Nt=e.findIndex(Wt=>Wt.maskSourceUrl===e[_t].name);let Lt=null;Nt>=0&&(Lt=null);const Ft=await Promise.all(e.map(async(Wt,_r)=>{try{if(_t===_r||_r==Nt)if(Wt.type==="file"||Wt.type==="combo_image_selection"||Wt.type==="image_editer"){if($t===void 0||$t==null){const{value:vr,..._o}=Wt;Wt=_o}else if($t.target.files[0])try{let vr=$t.target.files[0];const _o=URL.createObjectURL(vr);if(vr.type.startsWith("image/")){const Jt=await loadImage(_o),{height:Kr,width:Ot,samScale:gr}=handleImageScale(Jt);vr=await resizeImage(Jt,Ot,Kr,vr),saveFile(vr.file,`${vr.name}_${vr.type}_${vr.size}`)}else vr={file:vr,name:vr.name,size:vr.size,type:vr.type},saveFile(vr.file,`${vr.name}_${vr.type}_${vr.size}`);URL.revokeObjectURL(_o),Wt={...Wt,value:vr}}catch(vr){throw console.error("Error processing image:",vr),URL.revokeObjectURL(objectURL),vr}return Wt}else if(Wt.type==="mask")if(_r==Nt&&($t=Lt),$t)if($t.target.files.length>0){let vr=[];for(let _o=0;_o<$t.target.files.length;_o++){const Jt=$t.target.files[_o];if(Jt){const Kr={file:Jt,name:Jt.name,size:Jt.size,type:Jt.type},Ot=`${Kr.name}_${Kr.type}_${Kr.size}`;await saveFile(Kr.file,Ot),vr.push(Kr)}else Jt==""?vr.push(Wt.value?.[_o]):vr.push(null)}return Wt={...Wt,value:vr},Wt}else return Wt;else return Wt={...Wt,value:[null,null]},Wt;else if(Wt.type==="workflow"){if(_r==Nt)if($t)try{$t=await ct($t.target.files[0])}catch(vr){console.error("workflow is error:",vr),$t=[]}else $t=[];return Wt={...Wt,value:$t},Wt}else return Wt={...Wt,value:$t},Wt;return Wt}catch(vr){console.error("Error handling input change:",vr)}}));et.current!=Pt&&console.log("canceld input change: params are ",Ft),o&&o(Ft)},ct=async _t=>{try{if(!_t)return[];let $t=await transformNodesFromFile(_t);return console.log("Returned transformed nodes:",$t),$t}catch($t){throw console.error("Error:",$t),alert($t),$t}},ft=async(_t,$t,Pt)=>{if(Pt.aborted)throw new Error("Fetch aborted");if((_t.type==="file"||_t.type==="combo_image_selection"||_t.type==="image_editer")&&_t.value){let Nt=`${_t.value.name}_${_t.value.type}_${_t.value.size}`,Lt=_t.value.name?(await getLocalResourceURL(`${_t.value.name}_${_t.value.type}_${_t.value.size}`,s)).url:null;if(Nt!=`${_t.value.name}_${_t.value.type}_${_t.value.size}`)throw console.error("changed "+Nt),new Error("Fetch aborted already changed. ");if(Pt.aborted)throw new Error("Fetch aborted");if(Lt){const Ft=e.findIndex(Wt=>Wt.maskSourceUrl===_t.name);nt(Wt=>{const _r=[...Wt];return _r[$t]=Lt,Ft>=0&&(_r[Ft]=`${_t.value.name}_${_t.value.type}_${_t.value.size}`),_r})}}else(_t.type==="file"||_t.type==="combo_image_selection"||_t.type==="mask"||_t.type==="image_editer")&&!_t.value&&nt(Nt=>{const Lt=[...Nt];Lt[$t]=null;const Ft=e.findIndex(Wt=>Wt.maskSourceUrl===_t.name);return Ft>=0&&(Lt[Ft]=null),Lt});return _t},pt=async(_t,$t)=>{const Pt=_t.map(async(Nt,Lt)=>{if($t.aborted)throw new Error("Fetch aborted");if((Nt.type==="selection"||Nt.type==="image_selection")&&!Nt.value)try{const Ft=JSON.parse(Nt.options||Nt.default);if(Array.isArray(Ft))return{...Nt,value:Ft[0].value}}catch{const Wt=(Nt.options||Nt.default||"").split(",")[0].trim();return{...Nt,value:Wt}}else{if(Nt.type==="text"&&(Nt.value===void 0||Nt.value==null))return{...Nt,value:Nt.default};if(Nt.type==="file"||Nt.type==="combo_image_selection"||Nt.type==="mask"||Nt.type==="image_editer")return await ft(Nt,Lt,$t)}return Nt});if($t.aborted)throw new Error("Fetch aborted");return Promise.all(Pt)},gt=_t=>async $t=>{await st(_t,$t)},wt=(_t,$t)=>{const Pt={...at,[_t]:$t};lt(Pt);const Nt=e.map((Lt,Ft)=>_t===Ft&&(Lt.type==="image_selection"||Lt.type==="combo_image_selection")?{...Lt,value:$t}:Lt);o&&o(Nt)},vt=()=>{const _t=e.map((Lt,Ft)=>{switch(Lt.type){case"text":return jsxRuntimeExports.jsxs("div",{style:{height:($=="user"||$=="guest")&&Lt.visibleToUser==0?"0px":"fit-content"},children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,style:{fontSize:"12px"},children:[Lt.name,": "]})}),jsxRuntimeExports.jsx("textarea",{rows:1,className:"parameter_input_medium",style:{display:"block",marginLeft:"20px"},type:"text",name:Lt.name,placeholder:"请输入文字,地方不够,请拖动右下角",defaultValue:Lt.value||Lt.default||Lt.accept||"",onBlur:Wt=>st(Ft,Wt.target.value),onInput:Wt=>{Wt.target.style.height="auto",Wt.target.style.height=Wt.target.scrollHeight+"px"},onFocus:Wt=>{Wt.target.style.height="auto",Wt.target.style.height=Wt.target.scrollHeight+"px"}})]},Ft+JSON.stringify(Lt));case"selection":return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,style:{marginTop:"20px"},children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})]}),jsxRuntimeExports.jsx("select",{name:Lt.name,className:"dropdown_container_search",value:Lt.value,onChange:Wt=>st(Ft,Wt.target.value),children:(()=>{try{const Wt=JSON.parse(Lt.options||Lt.default);if(console.log(1),Array.isArray(Wt))return Wt.map((_r,vr)=>jsxRuntimeExports.jsx("option",{value:_r.value,children:_r.option},vr))}catch{return(Lt.options||Lt.default||"").split(",").map((_r,vr)=>jsxRuntimeExports.jsx("option",{value:_r.trim(),children:_r.trim()},vr))}})()})]},Ft+JSON.stringify(Lt));case"image_selection":return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"5px 10px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:(()=>{try{const Wt=JSON.parse(Lt.options||Lt.default||"{}");if(Array.isArray(Wt))return jsxRuntimeExports.jsx(ImageList,{optionsObject:Wt,param:Lt,handleImageSelect:wt,paramIndex:Ft})}catch{return(Lt.options||Lt.default||"").split(",").map((_r,vr)=>jsxRuntimeExports.jsx("div",{className:styles.image_option,children:jsxRuntimeExports.jsx("img",{src:_r.trim(),alt:`Option ${vr+1}`,onClick:()=>wt(Ft,_r.trim()),className:Lt.value===_r.trim()?styles.image_selected:""},vr)},vr))}})()})]},Ft+JSON.stringify(Lt));case"combo_image_selection":return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,style:{marginTop:"20px"},children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})]}),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx(ComboImageList,{optionsObject:Lt.options||Lt.default||"[]",param:Lt,paramIndex:Ft,handleImageSelect:wt,handleInputChange:st,uploadPreviewUrl:c[Ft]},Ft)})]},Ft+JSON.stringify(Lt));case"file":return jsxRuntimeExports.jsxs("div",{style:{minHeight:window.innerWidth>1e3?Lt.name=="图标"||Lt.accept.includes("json")?"100px":"550px":Lt.name=="图标"||Lt.accept&&Lt.accept.includes("json")?"30px":"350px",height:$!="admin"&&Lt.visibleToUser==0&&!a?"0px":"fit-content"},children:[($=="admin"||Lt.visibleToUser!==0||a)&&Lt.name!="图标"&&jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"20px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),jsxRuntimeExports.jsx("div",{style:{height:window.innerWidth>1e3?$!="admin"&&Lt.visibleToUser==0&&!a?"0px":Lt.name=="图标"||Lt.accept&&Lt.accept.includes("json")?"60px":"500px":$!="admin"&&Lt.visibleToUser==0&&!a?"0px":Lt.name=="图标"||Lt.accept.includes("json")?"60px":"300px"},children:o&&jsxRuntimeExports.jsx(FileUpload,{index:Ft,param:Lt,handleInputChange:st,previewUrl:c[Ft],visible:$=="admin"||Lt.visibleToUser!=0||a,verbose:!0},Ft)})]},Ft+JSON.stringify(Lt));case"image_editer":return jsxRuntimeExports.jsxs("div",{style:{minHeight:window.innerWidth>1e3?"550px":"350px",height:"fit-content",width:"100%",minWidth:"fit-content"},id:"dddd",children:[jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"10px 10px 0 10px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),o&&jsxRuntimeExports.jsx(EditableImage,{index:Ft,param:Lt,handleInputChange:st,previewUrl:c[Ft]},Ft)]},Ft+JSON.stringify(Lt));case"mask":return jsxRuntimeExports.jsxs("div",{style:{minHeight:window.innerWidth>1e3?"550px":"350px",height:"fit-content"},children:[jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"10px 10px 0 10px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),jsxRuntimeExports.jsx("div",{style:{height:window.innerWidth>1e3?"500px":"300px"},children:o&&jsxRuntimeExports.jsx(Segment,{param:Lt,index:Ft,handleInputChange:st,sourceImageID:c[Ft],template_id:s},Ft)})]},Ft);case"workflow":return jsxRuntimeExports.jsxs("div",{style:{height:"fit-content"},children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,style:{},children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})]}),jsxRuntimeExports.jsx("div",{style:{height:"fit-content"},children:o&&jsxRuntimeExports.jsx(DynamicParameterRender,{params:Lt.value,index:Ft,setParamFunc:gt(Ft),template_id:s},Ft+JSON.stringify(Lt)+"workflow")})]},Ft+JSON.stringify(Lt));default:return null}}),$t=[];let Pt=0,Nt=["image_selection","combo_image_selection","workflow"];for(;Pt<_t.length;)Nt.includes(e[Pt].type)?($t.push(jsxRuntimeExports.jsx("div",{style:{marginBottom:"25px",height:"fit-content"},className:"rightItenBottom",children:_t[Pt]},Pt)),Pt++):($=="user"||$=="guest")&&e[Pt].visibleToUser==0||e[Pt].type==="file"&&Pt+1<_t.length&&_t[Pt+1]&&!["file","mask"].includes(e[Pt+1].type)?($t.push(jsxRuntimeExports.jsxs("div",{className:"leftItemTop",children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label,children:["参数",jsxRuntimeExports.jsx("span",{style:{fontSize:"9px"},children:" (选填)"})]})]}),jsxRuntimeExports.jsx("div",{className:styles.compileCon,style:{display:"flex",marginBottom:"5px",height:$!="admin"&&e[Pt].visibleToUser==0&&!a?"0px":"fit-content"},children:jsxRuntimeExports.jsx("div",{style:{width:"90%",height:$!="admin"&&e[Pt].visibleToUser==0&&!a?"0px":"fit-content"},children:_t[Pt]})},Pt)]})),Pt++):($t.push(jsxRuntimeExports.jsxs("div",{id:"asasad",className:styles.compileCon,style:{width:"90%",marginBottom:"5px",height:"fit-content",marginTop:e[Pt].name==="图标"?"30px":"0",boxShadow:e[Pt].name==="图标"?"none":"0px 2px 4px 0px rgba(0,0,0,0.16)",border:e[Pt].name==="图标"?"1px solid #afafbc":"none",borderRadius:e[Pt].name==="图标"?"10px":"0 0 10px 10px",marginLeft:e[Pt].name==="图标"?"10px":"0"},children:[jsxRuntimeExports.jsx("div",{style:{height:"fit-content"},children:_t[Pt]}),jsxRuntimeExports.jsx("div",{style:{height:"fit-content"},children:Pt+1<_t.length&&_t[Pt+1]})]},Pt)),Pt+=2);return $t};return jsxRuntimeExports.jsx("form",{id:"dynamicForm",style:{width:"100%"},children:vt()})};function ImageDisplayCombo({file:e,watermark:o=!1}){const[s,a]=reactExports.useState(""),[$,c]=reactExports.useState(!1),[nt,at]=reactExports.useState(!0);reactExports.useEffect(()=>(fileDisplayAble(e)?fetchAndSetImage(e).then(it=>a(it)).catch(console.error):at(!1),()=>s&&URL.revokeObjectURL(s)),[e.id,e.type,e.name]);const lt=it=>{it.preventDefault(),c(!0),document.body.style.cursor="zoom-out"},et=()=>{c(!1),document.body.style.cursor="pointer"};return jsxRuntimeExports.jsxs("div",{style:{maxWidth:"100%",height:"auto"},children:[s?jsxRuntimeExports.jsx(MediaDisplay,{url:s,type:e.type,muted:!0,controls:!0,autoplay:!0,watermark:o,onMediaClick:lt}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:nt?jsxRuntimeExports.jsx("div",{children:"加载中..."}):jsxRuntimeExports.jsx("div",{children:"点击下载..."})}),jsxRuntimeExports.jsx(Popup,{visible:$,position:"bottom",style:{zIndex:1e6},bodyStyle:{width:"100%",height:"100%"},destroyOnClose:!0,closeOnMaskClick:!0,showCloseButton:!0,children:jsxRuntimeExports.jsx(ImageModal,{closeModal:et,imageUrl:s,filetype:e.type})})]})}function Files({files:e,downloadFile:o,returnResourceIcon:s,shareContent:a=null}){const $=api$1.get("userType");return jsxRuntimeExports.jsxs("div",{className:"gridContainer_resouce_new",children:[" ",e&&e.filter(c=>!c.name.endsWith(".npy")&&!c.name.endsWith(".json")).map(c=>jsxRuntimeExports.jsxs("div",{children:[" ",jsxRuntimeExports.jsxs("div",{className:styles.history_box,children:[" ",jsxRuntimeExports.jsx(ImageDisplayCombo,{file:c,watermark:$=="guest"}),jsxRuntimeExports.jsx("div",{style:{display:"flex",cursor:"pointer"},children:jsxRuntimeExports.jsxs("div",{className:styles.picListBot,children:[jsxRuntimeExports.jsx("div",{style:{fontSize:"10px",color:"#787878"},className:styles.single_line_block,onClick:()=>o(c.id,c.name),children:c.name}),jsxRuntimeExports.jsxs("div",{style:{fontSize:"9px",textAlign:"right"},onClick:()=>o(c.id,c.name),className:styles.downBth,children:[c.type.split("/")[1],c.size!==""?` • ${formatBytes(c.size)}`:"",jsxRuntimeExports.jsxs("span",{children:["点击下载",$=="user"||$=="guest"?"(含水印)":""]})]}),($=="user"||$=="guest")&&jsxRuntimeExports.jsxs("div",{style:{fontSize:"9px",textAlign:"right"},onClick:()=>o(c.id,c.name),className:styles.downBth,children:[c.type.split("/")[1],c.size!==""?` • ${formatBytes(c.size)}`:"",jsxRuntimeExports.jsx("span",{children:"注册去水印下载"})]}),a&&jsxRuntimeExports.jsx("div",{style:{fontSize:"9px",padding:"5px"},children:jsxRuntimeExports.jsx("button",{onClick:()=>a(c.id),style:{background:"#4591ee",width:"100%",border:"none",color:"#fff",borderRadius:"8px",padding:"7px 25px",fontSize:"12px"},children:"发布"})})]})})]})]},c.id))]})}function ResourceList({files:e,channel:o,runs:s,runid:a,selectedRunStatus:$}){const[c,nt]=reactExports.useState(null),at=reactExports.useMemo(()=>s.map(it=>{const st=e.filter(ct=>ct.agent_execution_id===it.id);return st.length!==0&&{run:it,files:st}}).filter(Boolean),[e,s]),lt=(it,st)=>{const ct=e.filter(ft=>ft.agent_execution_id===it);ct.length!==0&&downloadAllFiles(ct,st)},et=e.some(it=>it.agent_execution_id!==null);return jsxRuntimeExports.jsxs("div",{id:"resource-list",children:[o==="output"&&(!et||e.length<=0?jsxRuntimeExports.jsx("div",{className:"horizontal_space_between flex_wrap",children:$!=="ERROR_PAUSED"&&$!=="COMPLETED"&&$!=="TERMINATED"&&$!=="ITERATION_LIMIT_EXCEEDED"?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx("span",{className:"feed_title mt_8",children:"尚未执行完毕.或者没有输出文件."})}),jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx("img",{style:{width:"34px",height:"34px"},loading:"lazy",className:"mix_blend_mode",src:`${WEB_SITE}/images/loading.gif`,alt:"active-icon",tyle:{float:"left"}})})]}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx("span",{className:"feed_title mt_8",children:"已经结束!"})})})}):jsxRuntimeExports.jsx("div",{id:"division_by_runs",className:"horizontal_space_between flex_wrap",children:at.map((it,st)=>jsxRuntimeExports.jsx("div",{style:{width:"100%"},children:it.run.id===a&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("div",{className:"horizontal_container justify_space_between cursor_pointer padding_8_6",onClick:()=>nt(it.run.id===a?null:it.run.id),children:[jsxRuntimeExports.jsx("div",{className:"horizontal_container",children:jsxRuntimeExports.jsx("img",{src:a===it.run.id?`${WEB_SITE}/images/arrow_downward_dropdown.svg`:`${WEB_SITE}/images/arrow_forward.svg`,alt:"arrow",style:{width:"14px",height:"14px"}})}),jsxRuntimeExports.jsx("img",{src:`${WEB_SITE}/images/download.svg`,alt:"download_icon",style:{width:"20px",height:"21px"},onClick:()=>lt(it.run.id,it.run.name)})]}),jsxRuntimeExports.jsx(Files,{files:it.files,downloadFile,returnResourceIcon,shareContent})]})},at.length-st-1))})),o==="input"&&e&&jsxRuntimeExports.jsx(Files,{files:e,downloadFile,returnResourceIcon})]})}function ResourceManager({agentId:e,runs:o,runid:s,selectedRunStatus:a}){const[$,c]=reactExports.useState([]),[nt,at]=reactExports.useState([]);reactExports.useState("input"),reactExports.useState(!1),reactExports.useRef(null),reactExports.useEffect(()=>{const et=window.setInterval(function(){a!=="ERROR_PAUSED"&&a!=="COMPLETED"&&a!=="TERMINATED"&&a!=="ITERATION_LIMIT_EXCEEDED"&<()},5e3);return()=>clearInterval(et)},[s,a]),reactExports.useEffect(()=>{lt()},[e]);function lt(){getResources(e).then(et=>{const it=et.data,st=it.filter(ft=>ft.channel==="INPUT"),ct=it.filter(ft=>ft.channel==="OUTPUT");at(st),c(ct)}).catch(et=>{console.error("Error fetching resources:",et)})}return jsxRuntimeExports.jsxs("div",{className:"sectionCon",children:[jsxRuntimeExports.jsxs("div",{className:"section-area",children:[jsxRuntimeExports.jsx("div",{className:"detail_top mb_10",children:jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"运行结果"})]})}),jsxRuntimeExports.jsx("div",{className:"w_100 mr_10 mb_20",children:jsxRuntimeExports.jsx(ResourceList,{files:$,channel:"output",runs:o,runid:s,selectedRunStatus:a})})]}),jsxRuntimeExports.jsxs("div",{className:"section-area",children:[jsxRuntimeExports.jsx("div",{className:"detail_top mb_10 width=100%",children:jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"原始文件"})]})}),jsxRuntimeExports.jsx("div",{className:"w_100 mr_10 mb_20",children:jsxRuntimeExports.jsx(ResourceList,{files:nt,channel:"input",runs:o,selectedRunStatus:a})})]}),jsxRuntimeExports.jsx(k$1,{})]})}const WorkerAdmin=({sj_display:e,onUpdateDialog:o,onCloseWorkerAdmin:s,isvisible:a})=>{const[$,c]=reactExports.useState(!1);reactExports.useState("1");const[nt,at]=reactExports.useState(localStorage.getItem("keyHuaxiaobao")),[lt,et]=reactExports.useState(localStorage.getItem("accessTokenHuaxiaobao")),[it,st]=reactExports.useState(null),[ct,ft]=reactExports.useState(null),[pt,gt]=reactExports.useState(null),[wt,vt]=reactExports.useState(null),[_t,$t]=reactExports.useState(null),[Pt,Nt]=reactExports.useState(null),[Lt,Ft]=reactExports.useState(["百变真我学习趣味爱情节日短视频电商音乐电商跳舞其他","百变真我","学习","趣味","爱情","节日","短视频","电商","音乐","跳舞","其他"]),[Wt,_r]=reactExports.useState(!1),vr=reactExports.useRef(null);reactExports.useRef(null),reactExports.useRef(null),reactExports.useRef(null);const[_o,Jt]=reactExports.useState(!1),[Kr,Ot]=reactExports.useState(0),[gr,$o]=reactExports.useState(localStorage.getItem("usernameHuaxiaobao")),[On,en]=reactExports.useState(localStorage.getItem("usernameHuaxiaobao")+"的一件精品"),[Yr,So]=reactExports.useState("我想为你作一件事.."),[Er,Ir]=reactExports.useState("百变真我"),[Zr,tn]=reactExports.useState([{name:"图标",type:"file",accept:".png,.jpg,.jpeg,.webp,.gif"}]);reactExports.useEffect(()=>{(async()=>{try{const Dt=await getFileObject("newlogo1.png_image/png_70522");if(Dt){tn([{name:"图标",type:"file",value:{file:Dt,name:Dt.name,type:Dt.type,size:Dt.size},accept:".png,.jpg,.jpeg,.webp,.gif"}]);return}else{const vn=await fetch(`${WEB_SITE}/logo/newlogo1.png`);if(!vn.ok)throw new Error("Failed to fetch logo");const Lr=await vn.blob(),tr=new File([Lr],"newlogo1.png",{type:"image/png"});saveFile(tr,`${tr.name}_${tr.type}_${tr.size}`),tn([{name:"图标",type:"file",value:{file:tr,name:tr.name,type:tr.type,size:tr.size},accept:".png,.jpg,.jpeg,.webp,.gif"}])}}catch(Dt){console.error("Error fetching logo:",Dt)}})()},[]),reactExports.useEffect(()=>{c(a)},[a]);const _n=Lo=>{ft(Lo)},zo=Lo=>{tn(Lo)},Xo=()=>{if(On?.replace(/\s/g,"")==="")return alert("任务名称不能为空"),!1;if(Yr?.replace(/\s/g,"")==="")return alert("任务描述不能为空"),!1;if(!Zr[0].value)return alert("请添加logo"),!1;for(let Lo of Zr)if(Lo.type==="file"&&Lo.value===void 0)return alert(Lo.name+":图标(logo)中必须输入合适文件"),!1;return!0};reactExports.useEffect(()=>{const Lo=async vn=>{const Lr=await window.comfyui_app.graphToPrompt();console.log("MoneySetting initialized with response:",Lr);let tr=JSON.stringify(Lr.output,null,2);if(Object.values(Lr.output).some(er=>er.class_type==="ComfyUIAppstoreHost"))alert("请删除您的ComfyUIWebHost节点");else{console.log("No ComfyUIWebHost item found in the output.");const er=Math.max(...Object.keys(Lr.output).map(Jr=>parseInt(Jr)));Lr.output[er+1]={inputs:{"ComfyUI 主机地址":vn+".shangxiaobao.com:7000"},class_type:"ComfyUIAppstoreHost",_meta:{title:"ComfyUI Appstore Host (ComfyUI_Appstore)"}},tr=JSON.stringify(Lr.output,null,2);const Dr=new Blob([tr],{type:"application/json"}),ko=new File([Dr],"workflow_api.json",{type:"application/octet-stream"});console.log("MoneySetting initialized with response:",Lr);const In=await transformNodesFromFile(Dr);ft(In),st(ko)}};(async()=>{const Lr=await fetch("/manager/asset",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(!Lr.ok)throw new Error(`HTTP error! status: ${Lr.status}`);const tr=await Lr.json(),er=tr.message,Dr=tr.data;er=="success"&&(gt(Dr),Lo(Dr))})()},[]);const Do=async Lo=>{if(!Xo())return;Lo.preventDefault();const Dt=[{name:"工作流文件的名称",type:"file",value:{file:it,name:it.name,type:it.type,size:it.size},visibleToUser:0},{maskSourceUrl:"工作流文件的名称",name:"工作的配置",type:"workflow",value:ct,visibleToUser:1}],vn={token:nt,name:On,description:Yr,category:Er,host:pt,parameter:Dt,logo:Zr||[]};try{const Lr=await fetch(`${API_BASE_URL}agents/create_workflow_agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(vn)});if(!Lr.ok)throw new Error(`HTTP error! status: ${Lr.status}`);const tr=await Lr.json();console.log("Form submitted successfully");const er=tr.id,Dr=tr.name,ko=tr.execution_id;vt(er),uploadParameterFiles(Dt,er),uploadLogos(Zr,er,!1),updateExecution(ko,{status:"RUNNING"}).then(In=>{document.getElementById("trial").innerText="已经开始运行",$t(ko)}).catch(In=>{alert("失败"),console.error("Error updating execution:",In)}),console.log("Server response:",tr)}catch(Lr){console.error("Error submitting form:",Lr)}},Yo=Lo=>{setLocalStorageValue("agent_category",Lt[Lo],Ir),_r(!1)};reactExports.useEffect(()=>{function Lo(Dt){vr.current&&!vr.current.contains(Dt.target)&&_r(!1)}return document.addEventListener("mousedown",Lo),()=>{document.removeEventListener("mousedown",Lo)}},[]);const Jo=(Lo,Dt)=>{publishToMarketplace(Lo,parseFloat(Dt)).then(vn=>{Nt(vn.data.id),Jt(!1)}).catch(vn=>{console.error("Error publishing to marketplace:",vn)})},Bo=()=>{Jt(!1)},Js=Lo=>{Ot(Lo.target.value)};return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsxs(Popup,{visible:$,position:"right",bodyStyle:{direction:"ltl",paddingTop:"10px",zIndex:1999999999999,width:"50vw",height:"100vh",backgroundColor:"white",position:"fixed",right:"0px",top:"0px",overflow:"auto",padding:"10px 10px"},destroyOnClose:!1,children:[_o&&jsxRuntimeExports.jsx("div",{className:"modal",children:jsxRuntimeExports.jsxs("div",{className:"modal-content",style:{width:"75%"},onClick:Lo=>Lo.preventDefault(),children:[jsxRuntimeExports.jsx("div",{className:styles.detail_name,children:"准备好了吗?发布到市场!"}),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("label",{className:styles.form_label,children:"价格"}),jsxRuntimeExports.jsx("input",{className:"input_medium",type:"text",value:Kr,onChange:Js})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",justifyContent:"flex-end"},children:[jsxRuntimeExports.jsx("button",{className:"secondary_button",style:{marginRight:"10px"},onClick:Bo,children:"取消"}),jsxRuntimeExports.jsxs("button",{className:styles.run_button,style:{paddingLeft:"15px",paddingRight:"25px"},onClick:()=>Jo(_t,Kr),children:[jsxRuntimeExports.jsx("img",{style:{width:"14px",height:"14px"},src:`${WEB_SITE}/images/run_icon.svg`,alt:"run-icon"})," 发布"]})]})]})}),jsxRuntimeExports.jsx("div",{style:{padding:"10px"},children:jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{style:{paddingBottom:"20px"},children:[jsxRuntimeExports.jsx("span",{style:{display:"none"}}),jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"画小宝,ComfyUI作者变现的平台"})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row"},children:[jsxRuntimeExports.jsx("span",{children:" 画小宝 huaxiaobao.net 逛逛,马上入驻开店,开启工作流,开始赚钱"}),jsxRuntimeExports.jsx("span",{style:{cursor:"pointer",fontStyle:"italic"},onClick:()=>window.open("https://huaxiaobao.net","_blank"),children:"享受万元流量奖励"})]})]}),jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"第一步,游客登录,或者注册用户"})]}),!gr&&jsxRuntimeExports.jsxs("div",{id:"huaxiaobao_guest",style:{border:"dotted",borderWidth:"thin"},children:[jsxRuntimeExports.jsxs("span",{style:{display:"block"},children:["选项一:游客就可以玩,马上点击即获得价值10元”墨宝“奖励,优点:方便,缺点,只能这台机器玩"," "]}),jsxRuntimeExports.jsx("button",{id:"loginGuestButton",className:"secondary_button",onClick:async()=>{var Lo="Guest_"+Math.random().toString(36).substr(2,9);document.getElementById("loginGuestButton").textContent="登录中";const vn=await(await fetch(`${API_BASE_URL}register`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:Lo,smsCode:"Gues",password:Lo})})).json();vn.key?(console.log("Login successful, key:",vn.key),document.querySelector("button").style.display="none",document.getElementById("huaxiaobao_login").style.display="none",document.getElementById("huaxiaobao_guest").style.display="none",document.getElementById("huaxiaobao_token").style.display="block",document.getElementById("huaxiaobao_token").textContent=` 游客已登录,请记录画小宝账号信息:用户名:${Lo} 密码:${Lo}`,setLocalStorageValue("accessTokenHuaxiaobao",vn.token,et),setLocalStorageValue("usernameHuaxiaobao",Lo,$o),setLocalStorageValue("keyHuaxiaobao",vn.key,at),en(Lo+"的一个精品")):console.error("Login failed")},children:"一键登录"})]}),jsxRuntimeExports.jsx("span",{id:"huaxiaobao_token",style:{display:gr?"block":"none"},children:gr&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("br",{}),gr,' + "已经登录"',jsxRuntimeExports.jsx("button",{style:{marginRight:"7px"},className:"secondary_button",onClick:()=>{setLocalStorageValue("usernameHuaxiaobao",null,$o)},children:"登出"})]})}),!gr&&jsxRuntimeExports.jsxs("div",{id:"huaxiaobao_login",style:{border:"dotted",borderWidth:"thin"},children:[jsxRuntimeExports.jsxs("span",{style:{display:"block"},children:["选项二:画小宝登录,或者注册, 马上获得价值50元“墨宝奖励”"," "]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsx("label",{children:"手机号:"}),jsxRuntimeExports.jsx("input",{style:{width:"150px",fontSize:"13px"},className:"input_medium",type:"text",id:"username",placeholder:"输入手机号"}),jsxRuntimeExports.jsx("label",{children:"密码:"}),jsxRuntimeExports.jsx("input",{style:{width:"150px",fontSize:"13px"},className:"input_medium",type:"password",id:"password",placeholder:"输入密码"})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsx("button",{id:"loginButton",className:"secondary_button",onClick:async()=>{const Dt=await(await fetch(`${API_BASE_URL}login`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:document.getElementById("username").value,password:document.getElementById("password").value})})).json();Dt.key?(console.log("Login successful, key:",Dt.key),document.querySelectorAll("label").forEach(vn=>vn.style.display="none"),document.getElementById("huaxiaobao_login").style.display="none",document.getElementById("huaxiaobao_guest").style.display="none",document.getElementById("huaxiaobao_token").style.display="block",document.getElementById("huaxiaobao_token").textContent=" 正式用户登录",setLocalStorageValue("accessTokenHuaxiaobao",Dt.token,et),setLocalStorageValue("usernameHuaxiaobao",document.getElementById("username").value,$o),setLocalStorageValue("keyHuaxiaobao",Dt.key,at),en(document.getElementById("username").value+"的一个精品")):console.error("Login failed")},children:"登录"}),jsxRuntimeExports.jsx("button",{className:"secondary_button",onClick:()=>window.open("https://huaxiaobao.net/?register","_blank"),children:"注册"})]})]})]})}),gr&&jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{style:{padding:"10px"},children:[jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"第二步,修改工作流,标记参数并测试"})]}),jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%",background:"#324d61"},className:styles.compileCon,children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,children:[jsxRuntimeExports.jsx("span",{style:{cursor:"pointer"},children:"下面是显示给用户的区域:这里是跟着工作流中的appstore节点设定变化的。"}),jsxRuntimeExports.jsx("img",{src:`${WEB_SITE}/help/help.png`,onClick:()=>window.open("https://huaxiaobao.net/?help","_blank"),style:{width:"20px",height:"20px"}})]}),jsxRuntimeExports.jsx("div",{style:{margin:"5px"},children:ct&&jsxRuntimeExports.jsx(DynamicParameterRender,{params:ct,setParamFunc:_n})})]}),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%"},children:[jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["名称:"," "]})}),jsxRuntimeExports.jsx("input",{className:"input_medium",type:"text",value:On,onChange:Lo=>en(Lo.target.value),style:{fontSize:"13px"},placeholder:"简洁的名称,例子,马良的画笔"})]}),jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["分类"," "]})}),jsxRuntimeExports.jsxs("div",{className:"dropdown_container_search",style:{width:"40%"},children:[jsxRuntimeExports.jsxs("div",{className:"custom_select_container",onClick:()=>_r(!Wt),children:[Er,jsxRuntimeExports.jsx("img",{style:{width:"20px",height:"21px"},src:Wt?WEB_SITE+"/images/dropdown_up.svg":WEB_SITE+"/images/dropdown_down.svg",alt:"expand-icon"})]}),jsxRuntimeExports.jsx("div",{children:Wt&&jsxRuntimeExports.jsx("div",{className:"custom_select_options",ref:vr,style:{width:"100%"},children:jsxRuntimeExports.jsx("div",{className:"model_options",children:Lt.slice(1).map((Lo,Dt)=>jsxRuntimeExports.jsx("div",{className:"custom_select_option",onClick:()=>Yo(Dt+1),style:{maxWidth:"100%"},children:Lo},Dt+1))})})})]})]})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["简介:"," "]})}),jsxRuntimeExports.jsx("textarea",{value:Yr,className:"textarea_medium",rows:8,style:{fontSize:"13px"},onChange:Lo=>So(Lo.target.value),placeholder:"来两句介绍,功能和亮点!更有助于吸引用户"})]}),jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["Logo"," "]})}),jsxRuntimeExports.jsx(DynamicParameterRender,{params:Zr,setParamFunc:zo,is_author:!0})]})]})]}),jsxRuntimeExports.jsx("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:jsxRuntimeExports.jsx("button",{id:"trial",className:"button_auth",style:{width:"100%"},onClick:Lo=>Do(Lo),children:"试运行"})})]})]}),_t&&jsxRuntimeExports.jsx(ResourceManager,{agentId:wt,runs:[{id:_t}],runid:_t})]}),gr&&_t&&jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsxs("div",{style:{padding:"10px"},children:[jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"第三步,准备上架和赚钱"})]}),jsxRuntimeExports.jsx("button",{style:{marginRight:"7px",width:"100%"},className:"button_auth",onClick:()=>Jt(!0),children:"上架售卖!"}),jsxRuntimeExports.jsx("br",{}),jsxRuntimeExports.jsx("br",{}),jsxRuntimeExports.jsx("br",{}),Pt&&jsxRuntimeExports.jsx("button",{style:{marginRight:"7px",width:"100%"},className:"button_auth",onClick:()=>window.open(MARKETPLACE_SITE+"/?category=Create_Agent&targetid="+Pt,"_blank"),children:"已经发布! 查看市场!"})]})})]})})};React.forwardRef((e,o)=>(reactExports.useImperativeHandle(o,()=>({init:()=>{console.log("Initializing MoneySetting")}})),jsxRuntimeExports.jsx("div",{children:"MoneySetting Component"})));React.forwardRef((e,o)=>(reactExports.useImperativeHandle(o,()=>({initData:(s,a)=>{console.log(`Initializing WorkerList with id: ${s}, uniqueId: ${a}`)},ttSure:s=>{console.log(`ttSure in WorkerList with data: ${s}`)}})),jsxRuntimeExports.jsx("div",{children:"WorkerList Component"})));React.forwardRef((e,o)=>(reactExports.useImperativeHandle(o,()=>({getDetail:()=>{console.log("Getting details in Settings")}})),jsxRuntimeExports.jsx("div",{children:"Settings Component"})));const App=()=>{const[e,o]=reactExports.useState({right:10,top:120}),[s,a]=reactExports.useState(!1),$=reactExports.useRef(!1),c=reactExports.useRef({x:0,y:0}),nt=(it,st)=>{let ct=0;return(...ft)=>{const pt=new Date().getTime();pt-ct{it.button===0&&(it.stopPropagation(),$.current=!0,c.current={x:it.clientX,y:it.clientY})},lt=nt(it=>{$.current&&o(st=>{const ct=st.right-(it.clientX-c.current.x),ft=st.top+(it.clientY-c.current.y);return c.current={x:it.clientX,y:it.clientY},{right:ct,top:ft}})},30),et=()=>{$.current&&($.current=!1,console.log("Mouse Up: Stop Dragging"))};return reactExports.useEffect(()=>(document.addEventListener("mousemove",lt),document.addEventListener("mouseup",et),()=>{document.removeEventListener("mousemove",lt),document.removeEventListener("mouseup",et)}),[]),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(WorkerAdmin,{isvisible:s},s),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:0x71afd498cffff,backgroundColor:"transparent",right:`${e.right}px`,top:`${e.top}px`,height:"60px",cursor:"pointer"},onMouseDown:at,children:[jsxRuntimeExports.jsx("div",{style:{borderRadius:"10px",height:"30px"},children:jsxRuntimeExports.jsx("img",{style:{borderRadius:"10px",height:"100%",pointerEvents:"none"},src:`${WEB_SITE}/logo/newlogo1.png`})}),jsxRuntimeExports.jsx("div",{className:"secondary_button",onClick:()=>a(!s),children:s?"收起":"变现"})]})]})},GlobalContext=reactExports.createContext(),GlobalProvider=({children:e})=>jsxRuntimeExports.jsx(GlobalContext.Provider,{children:e}),root=client.createRoot(document.getElementById("admin-app-appstore"));root.render(jsxRuntimeExports.jsx(GlobalProvider,{children:jsxRuntimeExports.jsx(App,{})})); -//# sourceMappingURL=bundle.js.map +`+c+"}",lt}function result(e,o,s){o=toPath(o);var a=o.length;if(!a)return isFunction$1(s)?s.call(e):s;for(var $=0;$1)flatten$1(at,o-1,s,a),$=a.length;else for(var lt=0,et=at.length;lto?(a&&(clearTimeout(a),a=null),at=it,nt=e.apply($,c),a||($=c=null)):!a&&s.trailing!==!1&&(a=setTimeout(lt,st)),nt};return et.cancel=function(){clearTimeout(a),at=0,a=$=c=null},et}function debounce(e,o,s){var a,$,c,nt,at,lt=function(){var it=now()-$;o>it?a=setTimeout(lt,o-it):(a=null,s||(nt=e.apply(at,c)),a||(c=at=null))},et=restArguments(function(it){return at=this,c=it,$=now(),a||(a=setTimeout(lt,o),s&&(nt=e.apply(at,c))),nt});return et.cancel=function(){clearTimeout(a),a=c=at=null},et}function wrap(e,o){return partial(o,e)}function negate(e){return function(){return!e.apply(this,arguments)}}function compose(){var e=arguments,o=e.length-1;return function(){for(var s=o,a=e[o].apply(this,arguments);s--;)a=e[s].call(this,a);return a}}function after(e,o){return function(){if(--e<1)return o.apply(this,arguments)}}function before(e,o){var s;return function(){return--e>0&&(s=o.apply(this,arguments)),e<=1&&(o=null),s}}const once=partial(before,2);function findKey(e,o,s){o=cb(o,s);for(var a=keys(e),$,c=0,nt=a.length;c0?0:$-1;c>=0&&c<$;c+=e)if(s(o[c],c,o))return c;return-1}}const findIndex=createPredicateIndexFinder(1),findLastIndex=createPredicateIndexFinder(-1);function sortedIndex(e,o,s,a){s=cb(s,a,1);for(var $=s(o),c=0,nt=getLength(e);c0?nt=c>=0?c:Math.max(c+at,nt):at=c>=0?Math.min(c+1,at):c+at+1;else if(s&&c&&at)return c=s(a,$),a[c]===$?c:-1;if($!==$)return c=o(slice.call(a,nt,at),isNaN$1),c>=0?c+nt:-1;for(c=e>0?nt:at-1;c>=0&&c0?0:at-1;for(c||($=s[nt?nt[lt]:lt],lt+=e);lt>=0&<=3;return o(s,optimizeCb(a,c,4),$,nt)}}const reduce=createReduce(1),reduceRight=createReduce(-1);function filter(e,o,s){var a=[];return o=cb(o,s),each(e,function($,c,nt){o($,c,nt)&&a.push($)}),a}function reject(e,o,s){return filter(e,negate(cb(o)),s)}function every(e,o,s){o=cb(o,s);for(var a=!isArrayLike(e)&&keys(e),$=(a||e).length,c=0;c<$;c++){var nt=a?a[c]:c;if(!o(e[nt],nt,e))return!1}return!0}function some(e,o,s){o=cb(o,s);for(var a=!isArrayLike(e)&&keys(e),$=(a||e).length,c=0;c<$;c++){var nt=a?a[c]:c;if(o(e[nt],nt,e))return!0}return!1}function contains(e,o,s,a){return isArrayLike(e)||(e=values(e)),(typeof s!="number"||a)&&(s=0),indexOf(e,o,s)>=0}const invoke=restArguments(function(e,o,s){var a,$;return isFunction$1(o)?$=o:(o=toPath(o),a=o.slice(0,-1),o=o[o.length-1]),map(e,function(c){var nt=$;if(!nt){if(a&&a.length&&(c=deepGet(c,a)),c==null)return;nt=c[o]}return nt==null?nt:nt.apply(c,s)})});function pluck(e,o){return map(e,property(o))}function where(e,o){return filter(e,matcher(o))}function max(e,o,s){var a=-1/0,$=-1/0,c,nt;if(o==null||typeof o=="number"&&typeof e[0]!="object"&&e!=null){e=isArrayLike(e)?e:values(e);for(var at=0,lt=e.length;ata&&(a=c)}else o=cb(o,s),each(e,function(et,it,st){nt=o(et,it,st),(nt>$||nt===-1/0&&a===-1/0)&&(a=et,$=nt)});return a}function min(e,o,s){var a=1/0,$=1/0,c,nt;if(o==null||typeof o=="number"&&typeof e[0]!="object"&&e!=null){e=isArrayLike(e)?e:values(e);for(var at=0,lt=e.length;atat||nt===void 0)return 1;if(nt1&&(a=optimizeCb(a,o[1])),o=allKeys(e)):(a=keyInObj,o=flatten$1(o,!1,!1),e=Object(e));for(var $=0,c=o.length;$1&&(a=o[1])):(o=map(flatten$1(o,!1,!1),String),s=function($,c){return!contains(o,c)}),pick(e,s,a)});function initial(e,o,s){return slice.call(e,0,Math.max(0,e.length-(o==null||s?1:o)))}function first(e,o,s){return e==null||e.length<1?o==null||s?void 0:[]:o==null||s?e[0]:initial(e,e.length-o)}function rest(e,o,s){return slice.call(e,o==null||s?1:o)}function last(e,o,s){return e==null||e.length<1?o==null||s?void 0:[]:o==null||s?e[e.length-1]:rest(e,Math.max(0,e.length-o))}function compact(e){return filter(e,Boolean)}function flatten(e,o){return flatten$1(e,o,!1)}const difference=restArguments(function(e,o){return o=flatten$1(o,!0,!0),filter(e,function(s){return!contains(o,s)})}),without=restArguments(function(e,o){return difference(e,o)});function uniq(e,o,s,a){isBoolean(o)||(a=s,s=o,o=!1),s!=null&&(s=cb(s,a));for(var $=[],c=[],nt=0,at=getLength(e);nt"u"?it={autoBom:!1}:typeof it!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),it={autoBom:!it}),it.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(et.type)?new Blob(["\uFEFF",et],{type:et.type}):et}function a(et,it,st){var ct=new XMLHttpRequest;ct.open("GET",et),ct.responseType="blob",ct.onload=function(){lt(ct.response,it,st)},ct.onerror=function(){console.error("could not download file")},ct.send()}function $(et){var it=new XMLHttpRequest;it.open("HEAD",et,!1);try{it.send()}catch{}return 200<=it.status&&299>=it.status}function c(et){try{et.dispatchEvent(new MouseEvent("click"))}catch{var it=document.createEvent("MouseEvents");it.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),et.dispatchEvent(it)}}var nt=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof commonjsGlobal=="object"&&commonjsGlobal.global===commonjsGlobal?commonjsGlobal:void 0,at=nt.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),lt=nt.saveAs||(typeof window!="object"||window!==nt?function(){}:"download"in HTMLAnchorElement.prototype&&!at?function(et,it,st){var ct=nt.URL||nt.webkitURL,ft=document.createElement("a");it=it||et.name||"download",ft.download=it,ft.rel="noopener",typeof et=="string"?(ft.href=et,ft.origin===location.origin?c(ft):$(ft.href)?a(et,it,st):c(ft,ft.target="_blank")):(ft.href=ct.createObjectURL(et),setTimeout(function(){ct.revokeObjectURL(ft.href)},4e4),setTimeout(function(){c(ft)},0))}:"msSaveOrOpenBlob"in navigator?function(et,it,st){if(it=it||et.name||"download",typeof et!="string")navigator.msSaveOrOpenBlob(s(et,st),it);else if($(et))a(et,it,st);else{var ct=document.createElement("a");ct.href=et,ct.target="_blank",setTimeout(function(){c(ct)})}}:function(et,it,st,ct){if(ct=ct||open("","_blank"),ct&&(ct.document.title=ct.document.body.innerText="downloading..."),typeof et=="string")return a(et,it,st);var ft=et.type==="application/octet-stream",pt=/constructor/i.test(nt.HTMLElement)||nt.safari,gt=/CriOS\/[\d]+/.test(navigator.userAgent);if((gt||ft&&pt||at)&&typeof FileReader<"u"){var wt=new FileReader;wt.onloadend=function(){var $t=wt.result;$t=gt?$t:$t.replace(/^data:[^;]*;/,"data:attachment/file;"),ct?ct.location.href=$t:location=$t,ct=null},wt.readAsDataURL(et)}else{var vt=nt.URL||nt.webkitURL,_t=vt.createObjectURL(et);ct?ct.location=_t:location.href=_t,ct=null,setTimeout(function(){vt.revokeObjectURL(_t)},4e4)}});nt.saveAs=lt.saveAs=lt,e.exports=lt})})(FileSaver_min);var FileSaver_minExports=FileSaver_min.exports;const Segment=({param:e,index:o,handleInputChange:s,sourceImageID:a,template_id:$=null})=>{const[c,nt]=reactExports.useState([]),[at,lt]=reactExports.useState(null),[et,it]=reactExports.useState(null),[st,ct]=reactExports.useState(null),[ft,pt]=reactExports.useState(null),gt=useModel(),[wt,vt]=reactExports.useState(null),[_t,$t]=reactExports.useState(null),[Pt,Nt]=reactExports.useState({});reactExports.useState(null),reactExports.useState(null);const[Lt,Ft]=reactExports.useState(null),[Wt,_r]=reactExports.useState(null),[vr,_o]=reactExports.useState(null),[Jt,Kr]=reactExports.useState(null),[Ot,gr]=reactExports.useState(null),[$o,On]=reactExports.useState(null),tn=reactExports.useRef(null),Yr=reactExports.useRef(null),[So,Ir]=reactExports.useState("/api/resources/proxyurl/shangxiaobao.com:9001"),Lr=reactExports.useRef(null),Zr=reactExports.useRef(null);reactExports.useEffect(()=>{(()=>{const vn=document.createElement("script");vn.src="/assets/opencv.js",vn.async=!0,vn.onload=()=>{console.log("OpenCV.js loaded")},document.body.appendChild(vn)})()},[]),reactExports.useEffect(()=>{},[]),reactExports.useEffect(()=>{console.log("new source iamge id",a);const Oo={};Lr.current=Oo,(!a||et)&&(Kr(generateUniqueFilename("_embeddings.npy")),gr(generateUniqueFilename("_mask.png")),it(null),ct(null),$t(null),nt([]),Nt({}),pt(null),lt(null),vt(null),_r(null)),a&&getLocalResourceURL(a,$).then(vn=>{if(Lr.current!=Oo){console.log("cancel executions.",a);return}if(_o(vn.url),nn(vn.url),(!e.value||!e.value[1]||!e.value[1].name||$o)&&Zo(new URL(vn.url),Oo),Lr.current!=Oo){console.log("cancel executions.",a);return}On(a)})},[a]),reactExports.useEffect(()=>{const Oo={};Zr.current=Oo,(async Po=>{if(!Lt&&!Wt&&e&&e.value&&Array.isArray(e.value)&&e.value.length>0&&e.value[1]){let Yo={url:null,file:null},Lo={url:null,file:null};if(Zr.current!==Po){console.log("quit1");return}if(e.value[0]&&e.value[0].name){if(Yo=await getLocalResourceURL(`${e.value[0].name}_${e.value[0].type}_${e.value[0].size}`,$),Zr.current!==Po){console.log("quit1");return}Fo(Yo.url),Ft(Yo.file)}if(Zr.current!==Po){console.log("quit2");return}if(e.value[1]&&e.value[1].name){if(Lo=await getLocalResourceURL(`${e.value[1].name}_${e.value[1].type}_${e.value[1].size}`,$),Zr.current!==Po){console.log("quit1");return}_r(Lo.file),rn(Lo.file)}if(Zr.current!==Po){console.log("quit3");return}s(o,{target:{name:Yo.file&&Yo.file.name?Yo.file.name:"mask.file",files:[Yo?.file,Lo.file]}})}else console.log("legacy flow.")})(Oo)},[e]),reactExports.useEffect(()=>{const Oo=()=>{et&&et.width/et.height},vn=new ResizeObserver(Po=>{for(const Yo of Po)Yo.target===document.body&&Oo()});return Oo(),vn.observe(document.body),()=>{vn.unobserve(document.body)}},[et]);const rn=async Oo=>{if(Oo)try{const vn=await Ko(Oo),Po=await Js(vn,"float32");vt(Po)}catch(vn){alert("internal error"),console.error("Failed to load tensor:",vn)}},nn=async Oo=>{try{if(!Oo)return;const vn=new Image;vn.src=new URL(Oo).href,vn.onload=()=>{const{height:Po,width:Yo,samScale:Lo}=Bo(vn);$t({height:Po,width:Yo,samScale:Lo}),vn.width=Yo,vn.height=Po,it(vn)}}catch(vn){console.log(vn)}},Fo=async Oo=>{try{if(!Oo){ct(null);return}const vn=new Image;vn.src=new URL(Oo).href,vn.onload=()=>{ct(vn)}}catch(vn){console.log(vn)}};function Ko(Oo){return new Promise((vn,Po)=>{const Yo=new FileReader;Yo.onload=Lo=>{vn(Lo.target.result)},Yo.onerror=Lo=>{Po(Lo)},Yo.readAsArrayBuffer(Oo)})}async function jo(Oo,vn){try{const Po=new Blob([Oo],{type:"application/octet-stream"}),Yo=Jt,Lo=new File([Po],Yo,{type:"application/octet-stream"});if(Lr.current!==vn){console.log("canceld:",Lo);return}if(_r(Lo),rn(Lo),Lr.current!==vn){console.log("canceld:",Lo);return}console.log("seding param change :",Lo),s(o,{target:{name:Ot,files:[null,Lo]}}),ct(null)}catch(Po){console.error("Error saving ArrayBuffer:",Po)}}const zo=async Oo=>{const vn=await fetch(Oo).then(Lo=>Lo.blob()),Po=new File([vn],"mask.png",{type:"image/png"}),Yo=new FormData;return Yo.append("file",vn),Yo.append("name",Po.name),Yo.append("size",Po.size),Yo.append("type",Po.type),Yo},Zo=async(Oo,vn)=>{const Po=await zo(Oo);let Yo=0;for(;Yo<3;){try{if(Lr.current!==vn)return;let Lo=await fetch(`${WEB_SITE}${So}/getembeddings_refined`,{method:"POST",body:Po});if(Lo.ok){const Jo=await Lo.arrayBuffer();jo(Jo,vn);break}else alert("网络阻塞,重试一下就好 ..."),console.error("Failed to get embeddings:",Lo.statusText)}catch(Lo){alert("网络阻塞,重试一下就好 ..."),console.error("Error loading image tensor:",Lo)}Yo+=1}},Bo=Oo=>{let Po=Oo.naturalWidth,Yo=Oo.naturalHeight;const Lo=1024/Math.max(Yo,Po);return{height:Yo,width:Po,samScale:Lo}},Js=async(Oo,vn)=>{const Yo=await new npyjs().load(Oo);return new yt(vn,Yo.data,Yo.shape)};reactExports.useEffect(()=>{if(c){const Oo=Eo();if(Oo){const vn=In(Oo);vn.onload=()=>{const Po=document.createElement("canvas"),Yo=Po.getContext("2d");Po.width=Oo.width,Po.height=Oo.height,Yo.fillStyle="white",Yo.fillRect(0,0,Po.width,Po.height),Yo.drawImage(vn,0,0);try{if(window.cv&&window.cv.imread){const Lo=window.cv.imread(Po);if(Lo.empty())console.error("The source matrix is empty.");else{const Jo=new window.cv.Mat;window.cv.cvtColor(Lo,Jo,window.cv.COLOR_RGBA2GRAY,0);const Xs=new window.cv.Mat,na=new window.cv.Size(5,5);window.cv.GaussianBlur(Jo,Xs,na,0,0,window.cv.BORDER_DEFAULT);const ba=window.cv.Mat.ones(5,5,window.cv.CV_8U),ga=new window.cv.Mat;window.cv.morphologyEx(Xs,ga,window.cv.MORPH_CLOSE,ba);const eu=new window.cv.Mat;window.cv.threshold(ga,eu,127,255,window.cv.THRESH_BINARY),window.cv.imshow(Po,eu),Lo.delete(),Jo.delete(),Xs.delete(),ga.delete(),eu.delete(),ba.delete()}}else console.error("OpenCV.js is not loaded properly.")}catch(Lo){console.error("OPENCV ERROR:",Lo)}Po.toBlob(Lo=>{if(Lo){const Jo=Ot,Xs=new File([Lo],Jo,{type:"image/png"});Ft(Xs),s(o,{target:{name:Ot,files:[Xs,Wt]}})}},"image/png")},ct(vn)}else ct(null)}},[c]),reactExports.useEffect(()=>{if(!at){pt(null);return}if(gt===null||wt===null||_t===null)return;(async()=>{const vn=await tr({x:at.x,y:at.y}),Po=In(vn);pt(Po)})()},[at]),reactExports.useEffect(()=>{if(!st)return;const Oo=new window.Image;Oo.src=st.src,Oo.onload=()=>{const vn=tn.current;if(!vn)return;const Po=vn.getContext("2d");vn.width=Oo.width,vn.height=Oo.height,Po.drawImage(Oo,0,0);const Yo=Po.getImageData(0,0,vn.width,vn.height),Lo=Yo.data;for(let Jo=0;Jo{if(Oo.preventDefault(),!st)return;const vn=document.createElement("canvas");vn.width=st.width,vn.height=st.height;const Po=vn.getContext("2d");Po.drawImage(st,0,0);const Yo=Po.getImageData(0,0,st.width,st.height).data,Lo=document.createElement("canvas");Lo.width=st.width,Lo.height=st.height;const Jo=Lo.getContext("2d");Jo.drawImage(et,0,0,st.width,st.height);const Xs=Jo.getImageData(0,0,st.width,st.height).data;for(let na=0;na{const ba=URL.createObjectURL(na),ga=document.createElement("a");ga.download="extracted_areas.png",ga.href=ba,ga.click()},"image/png")},Dt=async Oo=>{if(gt===null||wt===null||_t===null)return;Oo.preventDefault();const vn=Oo.currentTarget.getBoundingClientRect(),Po=(Oo.clientX-vn.left)*(_t.width/vn.width),Yo=(Oo.clientY-vn.top)*(_t.height/vn.height);if(Oo.button===0){const Lo=[...c,Dr(Po,Yo)];let Jo=await tr({x:Po,y:Yo});Nt({...Pt,[`${Po},${Yo},1`]:Jo}),nt(Lo)}else if(Oo.button===2){const Lo=[...c,Dr(Po,Yo,-1)];let Jo=await tr({x:Po,y:Yo});Nt({...Pt,[`${Po},${Yo},-1`]:Jo}),nt(Lo)}},Jr=Oo=>{Oo.preventDefault()},Dr=(Oo,vn,Po=1)=>({x:Oo,y:vn,clickType:Po}),tr=async({x:Oo,y:vn})=>{try{if(gt===null||wt===null||_t===null)return;const Po=[Dr(Oo,vn)],Yo=modelData({clicks:Po,tensor:wt,modelScale:_t});if(Yo===void 0)return;const Jo=(await gt.run(Yo))[gt.outputNames[0]];return er(Jo.data,Jo.dims[2],Jo.dims[3])}catch(Po){console.log(Po)}return null};function er(Oo,vn,Po){const[Yo,Lo,Jo,Xs]=[0,114,189,255],na=new Uint8ClampedArray(4*vn*Po).fill(0);for(let ba=0;ba0&&(na[4*ba+0]=Yo,na[4*ba+1]=Lo,na[4*ba+2]=Jo,na[4*ba+3]=Xs);return new ImageData(na,Po,vn)}function Er(Oo){const vn=document.createElement("canvas");return vn.width=Oo.width,vn.height=Oo.height,vn.getContext("2d").putImageData(Oo,0,0),vn}const Eo=()=>{if(Object.keys(Pt).length===0)return null;if(gt===null||wt===null||_t===null)return;Pt[Object.keys(Pt)[0]];const Oo=et.width,vn=et.height,Po=document.createElement("canvas");Po.getContext("2d"),Po.width=Oo,Po.height=vn;const Yo=new Uint8ClampedArray(4*Oo*vn).fill(0);return Object.entries(Pt).forEach(([Jo,Xs])=>{const ba=Er(Xs).getContext("2d").getImageData(0,0,Oo,vn).data,ga=parseInt(Jo.split(",")[2]);if(ga===-1)for(let eu=0;eu0&&(Yo[eu+3]=0);else if(ga===1)for(let eu=0;eu0&&(Yo[eu+3]=255)}),new ImageData(Yo,Oo,vn)};function In(Oo){const vn=Er(Oo),Po=new Image;return Po.src=vn.toDataURL(),Po}const en=Oo=>{if(Oo.preventDefault(),!st)return;const vn=document.createElement("canvas"),Po=vn.getContext("2d");if(vn.width=st.width,vn.height=st.height,Po.fillStyle="white",Po.fillRect(0,0,vn.width,vn.height),Po.drawImage(st,0,0),window.cv)try{const Yo=window.cv.imread(vn),Lo=new window.cv.Mat;window.cv.cvtColor(Yo,Lo,window.cv.COLOR_RGBA2GRAY,0);const Jo=new window.cv.Mat,Xs=new window.cv.Size(5,5);window.cv.GaussianBlur(Lo,Jo,Xs,0,0,window.cv.BORDER_DEFAULT);const na=window.cv.Mat.ones(5,5,window.cv.CV_8U),ba=new window.cv.Mat;window.cv.morphologyEx(Jo,ba,window.cv.MORPH_CLOSE,na);const ga=new window.cv.Mat;window.cv.threshold(ba,ga,127,255,window.cv.THRESH_BINARY),window.cv.imshow(vn,ga);const eu=vn.toDataURL("image/png");Yo.delete(),Lo.delete(),Jo.delete(),ba.delete(),ga.delete(),na.delete();const mu=Io(eu);let gu=generateUniqueFilename("mask.png");FileSaver_minExports.saveAs(mu,gu)}catch(Yo){console.error("OPENCV ERROR:",Yo),vn.toBlob(Lo=>{let Jo=generateUniqueFilename("mask.png");FileSaver_minExports.saveAs(Lo,Jo)},"image/png")}};function Io(Oo){const vn=atob(Oo.split(",")[1]),Po=new Array(vn.length);for(let Lo=0;Lo{Oo.preventDefault(),ct(null),nt([]),Nt({}),pt(null),lt(null),Ft(null),s(o,{target:{name:Ot,files:[null,Wt]}})},Do=_.throttle(Oo=>{if(gt===null||wt===null||_t===null)return;let vn=Oo.nativeEvent.target;const Po=vn.getBoundingClientRect();let Yo=Oo.clientX-Po.left,Lo=Oo.clientY-Po.top;const Jo=et?et.width/vn.offsetWidth:1;Yo*=Jo,Lo*=Jo;const Xs=Dr(Yo,Lo);Xs&<(Xs)},15),Qo=Oo=>{console.log("out"),lt(null),pt(null)};return reactExports.useState(null),reactExports.useState(500),jsxRuntimeExports.jsxs("div",{className:"my-file-drop-area",children:[(!wt||!gt||!_t)&&jsxRuntimeExports.jsx("div",{style:{fontSize:"14px",textAlign:"center",padding:"20px",zIndex:999,backgroundColor:"rgba(255, 255, 255, 0.9)"},children:et?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("img",{style:{width:"20px",height:"20px"},loading:"lazy",className:"mix_blend_mode",src:"/images/loading.gif",alt:"active-icon"}),window.innerWidth>1e3?"蒙版加载中,大概需要10-20秒,然后移动鼠标,稍作等待后,蓝色区域为备选区域(左键是加选,右键是减选),红色是已选区域(即:在结果中保留的部分)":"红色已选,点击选择"]}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:window.innerWidth>1e3?"这里是左边的原图的蒙版选择区域,红色选中的区域在结果图中不会变。 ":"蒙版"})}),wt&>&&_t&&at==null&&window.innerWidth>1e3&&jsxRuntimeExports.jsx("div",{style:{fontSize:"14px",textAlign:"center",padding:"20px",zIndex:999,backgroundColor:"rgba(255, 255, 255, 0.4)"},children:et?jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:window.innerWidth>1e3?"挪动鼠标,蓝色为待选区域,红色为结果图中不变的区域,左键➕,右键➖":"点击选择蒙版"}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:window.innerWidth>1e3?"这里是左边的原图的蒙版选择区域,红色选中的区域在结果图中不会变。 ":"蒙版"})}),!1,st&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("button",{onClick:en,style:{position:"absolute",top:"20px",left:0,background:"#31BE4B",border:"none",borderRadius:"4px",color:"#FFFFFF",margin:window.innerWidth>1e3?"10px":"0px",fontSize:"10px",zIndex:999},children:"下载"}),jsxRuntimeExports.jsx("button",{onClick:Ks,style:{position:"absolute",top:"50px",left:0,background:"#2C5ECE",border:"none",borderRadius:"4px",color:"#ffffff",margin:window.innerWidth>1e3?"10px":"0px",fontSize:"10px",zIndex:999},children:"剪裁"}),jsxRuntimeExports.jsx("button",{onClick:Xo,style:{position:"absolute",top:"80px",left:0,background:"#E6E6E6",border:"none",borderRadius:"4px",color:"#787878",margin:window.innerWidth>1e3?"10px":"0px",fontSize:"10px",zIndex:999},children:"清空"})]}),et&&jsxRuntimeExports.jsx("img",{src:et.src,name:"sourceimage",style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),st&&jsxRuntimeExports.jsx("canvas",{ref:tn,style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),ft&&jsxRuntimeExports.jsx("img",{src:ft.src,style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",opacity:"0.5",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),et&&jsxRuntimeExports.jsx("img",{ref:Yr,src:et.src,name:"sourceimage",style:{position:"absolute",height:"auto",width:"auto",maxWidth:"100%",maxHeight:"100%",top:"50%",left:"50%",opacity:"0.2",zIndex:"990",transform:"translate(-50%, -50%)"},onMouseDown:Dt,onMouseMove:Do,onMouseLeave:Qo,onContextMenu:Jr})]})};function ImageEditor({param:e,canvasWidth:o,canvasHeight:s,url:a,handleChanged:$}){const c=reactExports.useRef(null),[nt,at]=reactExports.useState({x:0,y:0,width:0,height:0,scale:1}),[lt,et]=reactExports.useState(!1),[it,st]=reactExports.useState({x:0,y:0,width:0,height:0}),[ct,ft]=reactExports.useState(!1),[pt,gt]=reactExports.useState(null),[wt,vt]=reactExports.useState(!1),[_t,$t]=reactExports.useState(null),[Pt,Nt]=reactExports.useState(1),Lt=reactExports.useRef(null),[Ft,Wt]=reactExports.useState(null),_r=Zr=>{if(Zr){const rn=e.accept.split(","),nn=Zr.name.split(".").pop().toLowerCase();if(rn==""||rn.includes(`.${nn}`)){const Fo={target:{name:e.name,files:[Zr]}};$(Fo)}else alert("文件类型暂不支持,请上传如下类型文件:"+e.accept)}},vr=Zr=>{Zr.preventDefault(),Zr.stopPropagation(),Zr.target.files[0]&&$(Zr)};reactExports.useEffect(()=>{const Zr=new Image;Zr.src=a,Zr.onload=()=>{const rn=o/1.5/Zr.width,nn=s/1.5/Zr.height,Fo=Math.min(nn,rn),Ko={image:Zr,x:(c.current.width-Zr.width*Fo)/2,y:(c.current.height-Zr.height*Fo)/2,width:Zr.width*Fo,height:Zr.height*Fo,scale:Fo};at(Ko),st({x:Ko.x,y:Ko.y,width:Ko.width,height:Ko.height}),Wt(Ko),Nt(Fo),et(!0),$t(Zr)}},[o,s,a]);const _o=Zr=>{Zr.preventDefault(),Ft&&(at(Ft),st({x:Ft.x,y:Ft.y,width:Ft.width,height:Ft.height}))},Jt=(Zr,rn)=>{const Fo=rn.height/15,Ko=rn.width/15;for(let jo=0;jo{const rn=o/_t.width,nn=s/_t.height,Fo=_t.width*rn,Ko=_t.height*nn;Zr.font="16px Arial",Zr.fillStyle="black",Zr.textAlign="right",Zr.font="12px Arial",Zr.fillText(`最大宽度: ${Math.round(Fo/Pt)}px, 最大高度: ${Math.round(Ko/Pt)}px`,c.current.width-10,c.current.height-10)};reactExports.useEffect(()=>{const Zr=c.current,rn=Zr.getContext("2d");Zr.width=o,Zr.height=s,Jt(rn,Zr)},[]);const Ot=Zr=>{Zr.preventDefault(),Zr.stopPropagation();const nn=.01*(1024/_t.width),Fo=Zr.clientX-c.current.getBoundingClientRect().left,Ko=Zr.clientY-c.current.getBoundingClientRect().top,jo=Zr.deltaY>0?-nn:nn;at(zo=>{const Zo=Math.max(.02,Math.min(8,zo.scale+jo)),Bo=_t.width*Zo,Js=_t.height*Zo,Ks=Fo-(Fo-zo.x)*(Zo/zo.scale),Dt=Ko-(Ko-zo.y)*(Zo/zo.scale);return{...zo,x:Ks,y:Dt,width:Bo,height:Js,scale:Zo}})},gr=Zr=>{Zr.preventDefault();const rn={x:Zr.clientX-c.current.getBoundingClientRect().left,y:Zr.clientY-c.current.getBoundingClientRect().top},nn=8;if(Math.abs(rn.x-it.x){if(Zr.preventDefault(),wt){const jo=Zr.clientX-c.current.getBoundingClientRect().left,zo=Zr.clientY-c.current.getBoundingClientRect().top;at(Zo=>({...Zo,x:jo-pt.x,y:zo-pt.y}));return}if(!ct)return;const rn=Zr.clientX-c.current.getBoundingClientRect().left,nn=Zr.clientY-c.current.getBoundingClientRect().top,Fo=rn+pt.x,Ko=nn+pt.y;st(jo=>{switch(pt.corner){case"topLeft":return{...jo,x:Fo,y:Ko,width:jo.width+(jo.x-Fo),height:jo.height+(jo.y-Ko)};case"topRight":return{...jo,y:Ko,width:Fo-jo.x,height:jo.height+(jo.y-Ko)};case"bottomLeft":return{...jo,x:Fo,width:jo.width+(jo.x-Fo),height:Ko-jo.y};case"bottomRight":return{...jo,width:Fo-jo.x,height:Ko-jo.y};default:return jo}})},On=()=>{ft(!1),vt(!1)};reactExports.useEffect(()=>{if(lt&&nt){const Zr=c.current,rn=Zr.getContext("2d");rn.clearRect(0,0,Zr.width,Zr.height),Jt(rn,Zr),rn.drawImage(nt.image,nt.x,nt.y,nt.width,nt.height),tn(rn),Kr(rn)}},[nt,lt,it]);const tn=Zr=>{const rn=c.current;Zr.clearRect(0,0,rn.width,rn.height),Jt(Zr,rn),Zr.drawImage(_t,nt.x,nt.y,nt.width,nt.height),Zr.strokeStyle="grey",Zr.lineWidth=2,Zr.strokeRect(it.x,it.y,it.width,it.height);const nn=8;Zr.fillStyle="blue",Zr.fillRect(it.x-nn/2,it.y-nn/2,nn,nn),Zr.fillRect(it.x+it.width-nn/2,it.y-nn/2,nn,nn),Zr.fillRect(it.x-nn/2,it.y+it.height-nn/2,nn,nn),Zr.fillRect(it.x+it.width-nn/2,it.y+it.height-nn/2,nn,nn)};function Yr(Zr,rn){const nn=document.createElement("canvas"),Fo=nn.getContext("2d");return nn.width=Zr.width/rn,nn.height=Zr.height/rn,Fo.drawImage(Zr,0,0,nn.width,nn.height),nn}const So=Zr=>{Zr.preventDefault();const rn=document.createElement("canvas"),nn=rn.getContext("2d");rn.width=Math.round(it.width/Pt),rn.height=Math.round(it.height/Pt);const Fo=Ft.width/nt.width,Ko=Yr(Ft.image,Fo),jo=Ko.width,zo=Ko.height,Zo=(nt.x-it.x)/Pt,Bo=(nt.y-it.y)/Pt;nn.drawImage(Ko,0,0,jo,zo,Zo,Bo,jo,zo),rn.toBlob(Js=>{const Ks=URL.createObjectURL(Js),Dt=document.createElement("a");Dt.href=Ks,Dt.download="saved-image.png",document.body.appendChild(Dt),Dt.click(),document.body.removeChild(Dt),URL.revokeObjectURL(Ks)},"image/png")},Ir=Zr=>{Zr.preventDefault();const rn=document.createElement("canvas"),nn=rn.getContext("2d");rn.width=Math.round(it.width/Pt),rn.height=Math.round(it.height/Pt);const Fo=Ft.width/nt.width,Ko=Yr(Ft.image,Fo),jo=Ko.width,zo=Ko.height,Zo=(nt.x-it.x)/Pt,Bo=(nt.y-it.y)/Pt;nn.drawImage(Ko,0,0,jo,zo,Zo,Bo,jo,zo),rn.toBlob(Js=>{URL.createObjectURL(Js),document.createElement("a");const Ks=Lr("edited_.png"),Dt=new File([Js],Ks,{type:"image/png"});_r(Dt)},"image/png")};function Lr(Zr){const rn=new Date,nn=rn.getFullYear()+("0"+(rn.getMonth()+1)).slice(-2)+("0"+rn.getDate()).slice(-2)+"_"+("0"+rn.getHours()).slice(-2)+("0"+rn.getMinutes()).slice(-2)+("0"+rn.getSeconds()).slice(-2),Fo=v4().replace(/-/g,""),Ko=`${nn}_${Fo}_`,jo=Zr.split("/").pop();return`${Ko}${jo}`}return jsxRuntimeExports.jsxs("div",{style:{position:"relative",width:"canvasWidthpx",height:"canvasHeightpx",border:"1px solid black"},children:[jsxRuntimeExports.jsx("canvas",{ref:c,onWheel:Ot,onMouseDown:gr,onMouseMove:$o,onMouseUp:On}),jsxRuntimeExports.jsxs("div",{style:{position:"absolute",top:"5px",left:"0px",fontSize:"10px",color:"#787878"},children:[jsxRuntimeExports.jsx("span",{style:{display:"inline-block",padding:"0 10px"},children:"拖动四个角改变结果图大小,滚轮缩放原始图像,拖动图像改变位置,"}),jsxRuntimeExports.jsxs("div",{style:{fontSize:"10px",padding:"0 10px"},children:["宽: ",Math.round(it.width/Pt),"px, 高: ",Math.round(it.height/Pt),"px; 原图在新图中坐标:( ",Math.round((nt.x-it.x)/Pt),", ",Math.round((nt.y-it.y)/Pt)," )"]}),jsxRuntimeExports.jsx("input",{type:"file",ref:Lt,style:{display:"none"},onChange:Zr=>{vr(Zr)}})]}),jsxRuntimeExports.jsx("div",{className:"newfileInput",children:jsxRuntimeExports.jsx("button",{onClick:Zr=>{Zr.preventDefault(),Lt.current.click()},children:"新建上传"})}),jsxRuntimeExports.jsxs("div",{className:"newfileInputCon",children:[jsxRuntimeExports.jsx("button",{onClick:Zr=>_o(Zr),style:{color:"#2C5ECE"},children:"复原"}),jsxRuntimeExports.jsx("button",{onClick:Zr=>So(Zr),style:{color:"#31BE4B"},children:"下载"}),jsxRuntimeExports.jsx("button",{onClick:Zr=>Ir(Zr),style:{color:"#787878"},children:"确认"})]})]})}function EditableImage({index:e,param:o,handleInputChange:s,previewUrl:a}){const[$,c]=reactExports.useState(!1),nt=reactExports.useRef(null),at=ft=>{ft.preventDefault(),c(!0)},lt=ft=>{ft.preventDefault(),c(!1)},et=ft=>{ft.preventDefault()},it=ft=>{ft.preventDefault(),c(!1);const pt=ft.dataTransfer.files[0];if(pt){const gt=o.accept.split(","),wt=pt.name.split(".").pop().toLowerCase();if(gt==""||gt.includes(`.${wt}`)){const vt={target:{name:o.name,files:[pt]}};s(e,vt)}else alert("文件类型暂不支持,请上传如下类型文件:"+o.accept)}},st=ft=>async pt=>{await s(ft,pt)},ct=ft=>{ft.preventDefault(),ft.target.files[0]&&s(e,ft)};return jsxRuntimeExports.jsxs("div",{className:`my-file-drop-area ${$?"dragging":""}`,onDragEnter:at,onDragLeave:lt,onDragOver:et,onDrop:it,onClick:()=>{a||nt.current.click()},style:{position:"relative",minHeight:window.innerWidth>1e3?"500px":"320px",maxWidth:"100%",maxHeight:"100%"},children:[jsxRuntimeExports.jsx("input",{type:"file",ref:nt,style:{display:"none"},name:o.name,accept:o.accept,onChange:ft=>ct(ft)}),a?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ImageEditor,{param:o,canvasHeight:window.innerWidth>1e3?480:300,canvasWidth:window.innerWidth>1e3?320:200,url:a,handleChanged:st(e)}),jsxRuntimeExports.jsx("button",{type:"button",className:"cancel",onClick:ft=>{ft.stopPropagation(),nt.current.value="",s(e,null)},style:{position:"absolute",top:"10px",right:"10px",padding:"2px",fontSize:"10px",borderRadius:"5%",backgroundColor:"#ccc",border:"none",cursor:"pointer"},children:"X"})]}):jsxRuntimeExports.jsx("p",{style:{textAlign:"center",margin:0,fontSize:"13px"},children:"+"})]})}const DynamicParameterRender=({params:e,setParamFunc:o,template_id:s=null,is_author:a=!1})=>{const $=api$1.get("userType"),[c,nt]=reactExports.useState([]),[at,lt]=reactExports.useState({}),et=reactExports.useRef(null);reactExports.useState(!0);let it=new AbortController;reactExports.useEffect(()=>{it=new AbortController;const _t=it.signal;return pt(e,_t).then($t=>{if(_t.aborted)throw new Error("Fetch aborted");JSON.stringify(e)!==JSON.stringify($t)&&o&&o($t)}).catch($t=>{console.error("Failed to update parameters:",$t)}),()=>{it.abort()}},[e]);const st=async(_t,$t)=>{const Pt={};et.current=Pt;const Nt=e.findIndex(Wt=>Wt.maskSourceUrl===e[_t].name);let Lt=null;Nt>=0&&(Lt=null);const Ft=await Promise.all(e.map(async(Wt,_r)=>{try{if(_t===_r||_r==Nt)if(Wt.type==="file"||Wt.type==="combo_image_selection"||Wt.type==="image_editer"){if($t===void 0||$t==null){const{value:vr,..._o}=Wt;Wt=_o}else if($t.target.files[0])try{let vr=$t.target.files[0];const _o=URL.createObjectURL(vr);if(vr.type.startsWith("image/")){const Jt=await loadImage(_o),{height:Kr,width:Ot,samScale:gr}=handleImageScale(Jt);vr=await resizeImage(Jt,Ot,Kr,vr),saveFile(vr.file,`${vr.name}_${vr.type}_${vr.size}`)}else vr={file:vr,name:vr.name,size:vr.size,type:vr.type},saveFile(vr.file,`${vr.name}_${vr.type}_${vr.size}`);URL.revokeObjectURL(_o),Wt={...Wt,value:vr}}catch(vr){throw console.error("Error processing image:",vr),URL.revokeObjectURL(objectURL),vr}return Wt}else if(Wt.type==="mask")if(_r==Nt&&($t=Lt),$t)if($t.target.files.length>0){let vr=[];for(let _o=0;_o<$t.target.files.length;_o++){const Jt=$t.target.files[_o];if(Jt){const Kr={file:Jt,name:Jt.name,size:Jt.size,type:Jt.type},Ot=`${Kr.name}_${Kr.type}_${Kr.size}`;await saveFile(Kr.file,Ot),vr.push(Kr)}else Jt==""?vr.push(Wt.value?.[_o]):vr.push(null)}return Wt={...Wt,value:vr},Wt}else return Wt;else return Wt={...Wt,value:[null,null]},Wt;else if(Wt.type==="workflow"){if(_r==Nt)if($t)try{$t=await ct($t.target.files[0])}catch(vr){console.error("workflow is error:",vr),$t=[]}else $t=[];return Wt={...Wt,value:$t},Wt}else return Wt={...Wt,value:$t},Wt;return Wt}catch(vr){console.error("Error handling input change:",vr)}}));et.current!=Pt&&console.log("canceld input change: params are ",Ft),o&&o(Ft)},ct=async _t=>{try{if(!_t)return[];let $t=await transformNodesFromFile(_t);return console.log("Returned transformed nodes:",$t),$t}catch($t){throw console.error("Error:",$t),alert($t),$t}},ft=async(_t,$t,Pt)=>{if(Pt.aborted)throw new Error("Fetch aborted");if((_t.type==="file"||_t.type==="combo_image_selection"||_t.type==="image_editer")&&_t.value){let Nt=`${_t.value.name}_${_t.value.type}_${_t.value.size}`,Lt=_t.value.name?(await getLocalResourceURL(`${_t.value.name}_${_t.value.type}_${_t.value.size}`,s)).url:null;if(Nt!=`${_t.value.name}_${_t.value.type}_${_t.value.size}`)throw console.error("changed "+Nt),new Error("Fetch aborted already changed. ");if(Pt.aborted)throw new Error("Fetch aborted");if(Lt){const Ft=e.findIndex(Wt=>Wt.maskSourceUrl===_t.name);nt(Wt=>{const _r=[...Wt];return _r[$t]=Lt,Ft>=0&&(_r[Ft]=`${_t.value.name}_${_t.value.type}_${_t.value.size}`),_r})}}else(_t.type==="file"||_t.type==="combo_image_selection"||_t.type==="mask"||_t.type==="image_editer")&&!_t.value&&nt(Nt=>{const Lt=[...Nt];Lt[$t]=null;const Ft=e.findIndex(Wt=>Wt.maskSourceUrl===_t.name);return Ft>=0&&(Lt[Ft]=null),Lt});return _t},pt=async(_t,$t)=>{const Pt=_t.map(async(Nt,Lt)=>{if($t.aborted)throw new Error("Fetch aborted");if((Nt.type==="selection"||Nt.type==="image_selection")&&!Nt.value)try{const Ft=JSON.parse(Nt.options||Nt.default);if(Array.isArray(Ft))return{...Nt,value:Ft[0].value}}catch{const Wt=(Nt.options||Nt.default||"").split(",")[0].trim();return{...Nt,value:Wt}}else{if(Nt.type==="text"&&(Nt.value===void 0||Nt.value==null))return{...Nt,value:Nt.default};if(Nt.type==="file"||Nt.type==="combo_image_selection"||Nt.type==="mask"||Nt.type==="image_editer")return await ft(Nt,Lt,$t)}return Nt});if($t.aborted)throw new Error("Fetch aborted");return Promise.all(Pt)},gt=_t=>async $t=>{await st(_t,$t)},wt=(_t,$t)=>{const Pt={...at,[_t]:$t};lt(Pt);const Nt=e.map((Lt,Ft)=>_t===Ft&&(Lt.type==="image_selection"||Lt.type==="combo_image_selection")?{...Lt,value:$t}:Lt);o&&o(Nt)},vt=()=>{const _t=e.map((Lt,Ft)=>{switch(Lt.type){case"text":return jsxRuntimeExports.jsxs("div",{style:{height:($=="user"||$=="guest")&&Lt.visibleToUser==0?"0px":"fit-content"},children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,style:{fontSize:"12px"},children:[Lt.name,": "]})}),jsxRuntimeExports.jsx("textarea",{rows:1,className:"parameter_input_medium",style:{display:"block",marginLeft:"20px"},type:"text",name:Lt.name,placeholder:"请输入文字,地方不够,请拖动右下角",defaultValue:Lt.value||Lt.default||Lt.accept||"",onBlur:Wt=>st(Ft,Wt.target.value),onInput:Wt=>{Wt.target.style.height="auto",Wt.target.style.height=Wt.target.scrollHeight+"px"},onFocus:Wt=>{Wt.target.style.height="auto",Wt.target.style.height=Wt.target.scrollHeight+"px"}})]},Ft+JSON.stringify(Lt));case"selection":return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,style:{marginTop:"20px"},children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})]}),jsxRuntimeExports.jsx("select",{name:Lt.name,className:"dropdown_container_search",value:Lt.value,onChange:Wt=>st(Ft,Wt.target.value),children:(()=>{try{const Wt=JSON.parse(Lt.options||Lt.default);if(console.log(1),Array.isArray(Wt))return Wt.map((_r,vr)=>jsxRuntimeExports.jsx("option",{value:_r.value,children:_r.option},vr))}catch{return(Lt.options||Lt.default||"").split(",").map((_r,vr)=>jsxRuntimeExports.jsx("option",{value:_r.trim(),children:_r.trim()},vr))}})()})]},Ft+JSON.stringify(Lt));case"image_selection":return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"5px 10px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:(()=>{try{const Wt=JSON.parse(Lt.options||Lt.default||"{}");if(Array.isArray(Wt))return jsxRuntimeExports.jsx(ImageList,{optionsObject:Wt,param:Lt,handleImageSelect:wt,paramIndex:Ft})}catch{return(Lt.options||Lt.default||"").split(",").map((_r,vr)=>jsxRuntimeExports.jsx("div",{className:styles.image_option,children:jsxRuntimeExports.jsx("img",{src:_r.trim(),alt:`Option ${vr+1}`,onClick:()=>wt(Ft,_r.trim()),className:Lt.value===_r.trim()?styles.image_selected:""},vr)},vr))}})()})]},Ft+JSON.stringify(Lt));case"combo_image_selection":return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,style:{marginTop:"20px"},children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})]}),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx(ComboImageList,{optionsObject:Lt.options||Lt.default||"[]",param:Lt,paramIndex:Ft,handleImageSelect:wt,handleInputChange:st,uploadPreviewUrl:c[Ft]},Ft)})]},Ft+JSON.stringify(Lt));case"file":return jsxRuntimeExports.jsxs("div",{style:{minHeight:window.innerWidth>1e3?Lt.name=="图标"||Lt.accept.includes("json")?"100px":"550px":Lt.name=="图标"||Lt.accept&&Lt.accept.includes("json")?"30px":"350px",height:$!="admin"&&Lt.visibleToUser==0&&!a?"0px":"fit-content"},children:[($=="admin"||Lt.visibleToUser!==0||a)&&Lt.name!="图标"&&jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"20px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),jsxRuntimeExports.jsx("div",{style:{height:window.innerWidth>1e3?$!="admin"&&Lt.visibleToUser==0&&!a?"0px":Lt.name=="图标"||Lt.accept&&Lt.accept.includes("json")?"60px":"500px":$!="admin"&&Lt.visibleToUser==0&&!a?"0px":Lt.name=="图标"||Lt.accept.includes("json")?"60px":"300px"},children:o&&jsxRuntimeExports.jsx(FileUpload,{index:Ft,param:Lt,handleInputChange:st,previewUrl:c[Ft],visible:$=="admin"||Lt.visibleToUser!=0||a,verbose:!0},Ft)})]},Ft+JSON.stringify(Lt));case"image_editer":return jsxRuntimeExports.jsxs("div",{style:{minHeight:window.innerWidth>1e3?"550px":"350px",height:"fit-content",width:"100%",minWidth:"fit-content"},id:"dddd",children:[jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"10px 10px 0 10px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),o&&jsxRuntimeExports.jsx(EditableImage,{index:Ft,param:Lt,handleInputChange:st,previewUrl:c[Ft]},Ft)]},Ft+JSON.stringify(Lt));case"mask":return jsxRuntimeExports.jsxs("div",{style:{minHeight:window.innerWidth>1e3?"550px":"350px",height:"fit-content"},children:[jsxRuntimeExports.jsx("div",{className:styles.item_title_area,style:{padding:"10px 10px 0 10px"},children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})}),jsxRuntimeExports.jsx("div",{style:{height:window.innerWidth>1e3?"500px":"300px"},children:o&&jsxRuntimeExports.jsx(Segment,{param:Lt,index:Ft,handleInputChange:st,sourceImageID:c[Ft],template_id:s},Ft)})]},Ft);case"workflow":return jsxRuntimeExports.jsxs("div",{style:{height:"fit-content"},children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,style:{},children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,htmlFor:Lt.name,children:[Lt.name,": "]})]}),jsxRuntimeExports.jsx("div",{style:{height:"fit-content"},children:o&&jsxRuntimeExports.jsx(DynamicParameterRender,{params:Lt.value,index:Ft,setParamFunc:gt(Ft),template_id:s},Ft+JSON.stringify(Lt)+"workflow")})]},Ft+JSON.stringify(Lt));default:return null}}),$t=[];let Pt=0,Nt=["image_selection","combo_image_selection","workflow"];for(;Pt<_t.length;)Nt.includes(e[Pt].type)?($t.push(jsxRuntimeExports.jsx("div",{style:{marginBottom:"25px",height:"fit-content"},className:"rightItenBottom",children:_t[Pt]},Pt)),Pt++):($=="user"||$=="guest")&&e[Pt].visibleToUser==0||e[Pt].type==="file"&&Pt+1<_t.length&&_t[Pt+1]&&!["file","mask"].includes(e[Pt+1].type)?($t.push(jsxRuntimeExports.jsxs("div",{className:"leftItemTop",children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsxs("label",{className:styles.form_label,children:["参数",jsxRuntimeExports.jsx("span",{style:{fontSize:"9px"},children:" (选填)"})]})]}),jsxRuntimeExports.jsx("div",{className:styles.compileCon,style:{display:"flex",marginBottom:"5px",height:$!="admin"&&e[Pt].visibleToUser==0&&!a?"0px":"fit-content"},children:jsxRuntimeExports.jsx("div",{style:{width:"90%",height:$!="admin"&&e[Pt].visibleToUser==0&&!a?"0px":"fit-content"},children:_t[Pt]})},Pt)]})),Pt++):($t.push(jsxRuntimeExports.jsxs("div",{id:"asasad",className:styles.compileCon,style:{width:"90%",marginBottom:"5px",height:"fit-content",marginTop:e[Pt].name==="图标"?"30px":"0",boxShadow:e[Pt].name==="图标"?"none":"0px 2px 4px 0px rgba(0,0,0,0.16)",border:e[Pt].name==="图标"?"1px solid #afafbc":"none",borderRadius:e[Pt].name==="图标"?"10px":"0 0 10px 10px",marginLeft:e[Pt].name==="图标"?"10px":"0"},children:[jsxRuntimeExports.jsx("div",{style:{height:"fit-content"},children:_t[Pt]}),jsxRuntimeExports.jsx("div",{style:{height:"fit-content"},children:Pt+1<_t.length&&_t[Pt+1]})]},Pt)),Pt+=2);return $t};return jsxRuntimeExports.jsx("form",{id:"dynamicForm",style:{width:"100%"},children:vt()})};function ImageDisplayCombo({file:e,watermark:o=!1}){const[s,a]=reactExports.useState(""),[$,c]=reactExports.useState(!1),[nt,at]=reactExports.useState(!0);reactExports.useEffect(()=>(fileDisplayAble(e)?fetchAndSetImage(e).then(it=>a(it)).catch(console.error):at(!1),()=>s&&URL.revokeObjectURL(s)),[e.id,e.type,e.name]);const lt=it=>{it.preventDefault(),c(!0),document.body.style.cursor="zoom-out"},et=()=>{c(!1),document.body.style.cursor="pointer"};return jsxRuntimeExports.jsxs("div",{style:{maxWidth:"100%",height:"auto"},children:[s?jsxRuntimeExports.jsx(MediaDisplay,{url:s,type:e.type,muted:!0,controls:!0,autoplay:!0,watermark:o,onMediaClick:lt}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:nt?jsxRuntimeExports.jsx("div",{children:"加载中..."}):jsxRuntimeExports.jsx("div",{children:"点击下载..."})}),jsxRuntimeExports.jsx(Popup,{visible:$,position:"bottom",style:{zIndex:1e6},bodyStyle:{width:"100%",height:"100%"},destroyOnClose:!0,closeOnMaskClick:!0,showCloseButton:!0,children:jsxRuntimeExports.jsx(ImageModal,{closeModal:et,imageUrl:s,filetype:e.type})})]})}function Files({files:e,downloadFile:o,returnResourceIcon:s,shareContent:a=null}){const $=api$1.get("userType");return jsxRuntimeExports.jsxs("div",{className:"gridContainer_resouce_new",children:[" ",e&&e.filter(c=>!c.name.endsWith(".npy")&&!c.name.endsWith(".json")).map(c=>jsxRuntimeExports.jsxs("div",{children:[" ",jsxRuntimeExports.jsxs("div",{className:styles.history_box,children:[" ",jsxRuntimeExports.jsx(ImageDisplayCombo,{file:c,watermark:$=="guest"}),jsxRuntimeExports.jsx("div",{style:{display:"flex",cursor:"pointer"},children:jsxRuntimeExports.jsxs("div",{className:styles.picListBot,children:[jsxRuntimeExports.jsx("div",{style:{fontSize:"10px",color:"#787878"},className:styles.single_line_block,onClick:()=>o(c.id,c.name),children:c.name}),jsxRuntimeExports.jsxs("div",{style:{fontSize:"9px",textAlign:"right"},onClick:()=>o(c.id,c.name),className:styles.downBth,children:[c.type.split("/")[1],c.size!==""?` • ${formatBytes(c.size)}`:"",jsxRuntimeExports.jsxs("span",{children:["点击下载",$=="user"||$=="guest"?"(含水印)":""]})]}),($=="user"||$=="guest")&&jsxRuntimeExports.jsxs("div",{style:{fontSize:"9px",textAlign:"right"},onClick:()=>o(c.id,c.name),className:styles.downBth,children:[c.type.split("/")[1],c.size!==""?` • ${formatBytes(c.size)}`:"",jsxRuntimeExports.jsx("span",{children:"注册去水印下载"})]}),a&&jsxRuntimeExports.jsx("div",{style:{fontSize:"9px",padding:"5px"},children:jsxRuntimeExports.jsx("button",{onClick:()=>a(c.id),style:{background:"#4591ee",width:"100%",border:"none",color:"#fff",borderRadius:"8px",padding:"7px 25px",fontSize:"12px"},children:"发布"})})]})})]})]},c.id))]})}function ResourceList({files:e,channel:o,runs:s,runid:a,selectedRunStatus:$}){const[c,nt]=reactExports.useState(null),at=reactExports.useMemo(()=>s.map(it=>{const st=e.filter(ct=>ct.agent_execution_id===it.id);return st.length!==0&&{run:it,files:st}}).filter(Boolean),[e,s]),lt=(it,st)=>{const ct=e.filter(ft=>ft.agent_execution_id===it);ct.length!==0&&downloadAllFiles(ct,st)},et=e.some(it=>it.agent_execution_id!==null);return jsxRuntimeExports.jsxs("div",{id:"resource-list",children:[o==="output"&&(!et||e.length<=0?jsxRuntimeExports.jsx("div",{className:"horizontal_space_between flex_wrap",children:$!=="ERROR_PAUSED"&&$!=="COMPLETED"&&$!=="TERMINATED"&&$!=="ITERATION_LIMIT_EXCEEDED"?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx("span",{className:"feed_title mt_8",children:"尚未执行完毕.或者没有输出文件."})}),jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx("img",{style:{width:"34px",height:"34px"},loading:"lazy",className:"mix_blend_mode",src:`${WEB_SITE}/images/loading.gif`,alt:"active-icon",tyle:{float:"left"}})})]}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx("span",{className:"feed_title mt_8",children:"已经结束!"})})})}):jsxRuntimeExports.jsx("div",{id:"division_by_runs",className:"horizontal_space_between flex_wrap",children:at.map((it,st)=>jsxRuntimeExports.jsx("div",{style:{width:"100%"},children:it.run.id===a&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("div",{className:"horizontal_container justify_space_between cursor_pointer padding_8_6",onClick:()=>nt(it.run.id===a?null:it.run.id),children:[jsxRuntimeExports.jsx("div",{className:"horizontal_container",children:jsxRuntimeExports.jsx("img",{src:a===it.run.id?`${WEB_SITE}/images/arrow_downward_dropdown.svg`:`${WEB_SITE}/images/arrow_forward.svg`,alt:"arrow",style:{width:"14px",height:"14px"}})}),jsxRuntimeExports.jsx("img",{src:`${WEB_SITE}/images/download.svg`,alt:"download_icon",style:{width:"20px",height:"21px"},onClick:()=>lt(it.run.id,it.run.name)})]}),jsxRuntimeExports.jsx(Files,{files:it.files,downloadFile,returnResourceIcon,shareContent})]})},at.length-st-1))})),o==="input"&&e&&jsxRuntimeExports.jsx(Files,{files:e,downloadFile,returnResourceIcon})]})}function ResourceManager({agentId:e,runs:o,runid:s,selectedRunStatus:a}){const[$,c]=reactExports.useState([]),[nt,at]=reactExports.useState([]);reactExports.useState("input"),reactExports.useState(!1),reactExports.useRef(null),reactExports.useEffect(()=>{const et=window.setInterval(function(){a!=="ERROR_PAUSED"&&a!=="COMPLETED"&&a!=="TERMINATED"&&a!=="ITERATION_LIMIT_EXCEEDED"&<()},5e3);return()=>clearInterval(et)},[s,a]),reactExports.useEffect(()=>{lt()},[e]);function lt(){getResources(e).then(et=>{const it=et.data,st=it.filter(ft=>ft.channel==="INPUT"),ct=it.filter(ft=>ft.channel==="OUTPUT");at(st),c(ct)}).catch(et=>{console.error("Error fetching resources:",et)})}return jsxRuntimeExports.jsxs("div",{className:"sectionCon",children:[jsxRuntimeExports.jsxs("div",{className:"section-area",children:[jsxRuntimeExports.jsx("div",{className:"detail_top mb_10",children:jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"运行结果"})]})}),jsxRuntimeExports.jsx("div",{className:"w_100 mr_10 mb_20",children:jsxRuntimeExports.jsx(ResourceList,{files:$,channel:"output",runs:o,runid:s,selectedRunStatus:a})})]}),jsxRuntimeExports.jsxs("div",{className:"section-area",children:[jsxRuntimeExports.jsx("div",{className:"detail_top mb_10 width=100%",children:jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"原始文件"})]})}),jsxRuntimeExports.jsx("div",{className:"w_100 mr_10 mb_20",children:jsxRuntimeExports.jsx(ResourceList,{files:nt,channel:"input",runs:o,selectedRunStatus:a})})]}),jsxRuntimeExports.jsx(k$1,{})]})}const WorkerAdmin=({sj_display:e,onUpdateDialog:o,onCloseWorkerAdmin:s,isvisible:a})=>{const[$,c]=reactExports.useState(!1);reactExports.useState("1");const[nt,at]=reactExports.useState(localStorage.getItem("keyHuaxiaobao")),[lt,et]=reactExports.useState(localStorage.getItem("accessTokenHuaxiaobao")),[it,st]=reactExports.useState(null),[ct,ft]=reactExports.useState(null),[pt,gt]=reactExports.useState(null),[wt,vt]=reactExports.useState(null),[_t,$t]=reactExports.useState(null),[Pt,Nt]=reactExports.useState(null),[Lt,Ft]=reactExports.useState(["百变真我学习趣味爱情节日短视频电商音乐电商跳舞其他","百变真我","学习","趣味","爱情","节日","短视频","电商","音乐","跳舞","其他"]),[Wt,_r]=reactExports.useState(!1),[vr,_o]=reactExports.useState(!1),Jt=reactExports.useRef(null);reactExports.useRef(null),reactExports.useRef(null),reactExports.useRef(null);const[Kr,Ot]=reactExports.useState(!1),[gr,$o]=reactExports.useState(0),[On,tn]=reactExports.useState(localStorage.getItem("usernameHuaxiaobao")),[Yr,So]=reactExports.useState(localStorage.getItem("usernameHuaxiaobao")+"的一件精品"),[Ir,Lr]=reactExports.useState("我想为你作一件事.."),[Zr,rn]=reactExports.useState("百变真我"),[nn,Fo]=reactExports.useState([{name:"图标",type:"file",accept:".png,.jpg,.jpeg,.webp,.gif"}]);reactExports.useEffect(()=>{(async()=>{try{const Dr=await getFileObject("newlogo1.png_image/png_70522");if(Dr){Fo([{name:"图标",type:"file",value:{file:Dr,name:Dr.name,type:Dr.type,size:Dr.size},accept:".png,.jpg,.jpeg,.webp,.gif"}]);return}else{const tr=await fetch(`${WEB_SITE}/logo/newlogo1.png`);if(!tr.ok)throw new Error("Failed to fetch logo");const er=await tr.blob(),Er=new File([er],"newlogo1.png",{type:"image/png"});saveFile(Er,`${Er.name}_${Er.type}_${Er.size}`),Fo([{name:"图标",type:"file",value:{file:Er,name:Er.name,type:Er.type,size:Er.size},accept:".png,.jpg,.jpeg,.webp,.gif"}])}}catch(Dr){console.error("Error fetching logo:",Dr)}})()},[]),reactExports.useEffect(()=>{c(a)},[a]);const Ko=Jr=>{ft(Jr)},jo=Jr=>{Fo(Jr)},zo=()=>{if(!it)return alert("请在工作流内部添加参数标记节点,可以看帮助或者咨询客服微信v:aizhaoshulin了解"),!1;if(Yr?.replace(/\s/g,"")==="")return alert("任务名称不能为空"),!1;if(Ir?.replace(/\s/g,"")==="")return alert("任务描述不能为空"),!1;if(!nn[0].value)return alert("请添加logo"),!1;for(let Jr of nn)if(Jr.type==="file"&&Jr.value===void 0)return alert(Jr.name+":图标(logo)中必须输入合适文件"),!1;return!0};reactExports.useEffect(()=>{const Jr=async tr=>{const er=await window.comfyui_app.graphToPrompt();console.log("MoneySetting initialized with response:",er);let Er=JSON.stringify(er.output,null,2);if(Object.values(er.output).some(Eo=>Eo.class_type==="ComfyUIAppstoreHost"))alert("请删除您的ComfyUIWebHost节点");else{console.log("No ComfyUIWebHost item found in the output.");const Eo=Math.max(...Object.keys(er.output).map(Io=>parseInt(Io)));er.output[Eo+1]={inputs:{"ComfyUI 主机地址":tr+".shangxiaobao.com:7000"},class_type:"ComfyUIAppstoreHost",_meta:{title:"ComfyUI Appstore Host (ComfyUI_Appstore)"}},Er=JSON.stringify(er.output,null,2);const In=new Blob([Er],{type:"application/json"}),en=new File([In],"workflow_api.json",{type:"application/octet-stream"});console.log("MoneySetting initialized with response:",er);try{const Io=await transformNodesFromFile(In);ft(Io),st(en)}catch(Io){console.error("workflow not ready:",Io)}}};(async()=>{const er=await fetch("/manager/asset",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(!er.ok)throw new Error(`HTTP error! status: ${er.status}`);const Er=await er.json(),Eo=Er.message,In=Er.data;Eo=="success"&&(gt(In),Jr(In))})()},[]);const Zo=async Jr=>{if(!zo())return;Jr.preventDefault();const Dr=[{name:"工作流文件的名称",type:"file",value:{file:it,name:it.name,type:it.type,size:it.size},visibleToUser:0},{maskSourceUrl:"工作流文件的名称",name:"工作的配置",type:"workflow",value:ct,visibleToUser:1}],tr={token:nt,name:Yr,description:Ir,category:Zr,host:pt,parameter:Dr,logo:nn||[]};try{const er=await fetch(`${API_BASE_URL}agents/create_workflow_agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(tr)});if(!er.ok)throw new Error(`HTTP error! status: ${er.status}`);const Er=await er.json();console.log("Form submitted successfully");const Eo=Er.id,In=Er.name,en=Er.execution_id;vt(Eo),uploadParameterFiles(Dr,Eo),uploadLogos(nn,Eo,!1),updateExecution(en,{status:"RUNNING"}).then(Io=>{document.getElementById("trial").innerText="已经开始运行",$t(en)}).catch(Io=>{alert("失败"),console.error("Error updating execution:",Io)}),console.log("Server response:",Er)}catch(er){console.error("Error submitting form:",er)}},Bo=Jr=>{setLocalStorageValue("agent_category",Lt[Jr],rn),_r(!1)};reactExports.useEffect(()=>{function Jr(Dr){Jt.current&&!Jt.current.contains(Dr.target)&&_r(!1)}return document.addEventListener("mousedown",Jr),()=>{document.removeEventListener("mousedown",Jr)}},[]);const Js=(Jr,Dr)=>{publishToMarketplace(Jr,parseFloat(Dr)).then(tr=>{Nt(tr.data.id),Ot(!1)}).catch(tr=>{console.error("Error publishing to marketplace:",tr)})},Ks=()=>{Ot(!1)},Dt=Jr=>{$o(Jr.target.value)};return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:jsxRuntimeExports.jsxs(Popup,{visible:$,position:"right",bodyStyle:{direction:"ltl",paddingTop:"10px",zIndex:1999999999999,width:"50vw",height:"100vh",backgroundColor:"white",position:"fixed",right:"0px",top:"0px",overflow:"auto",padding:"10px 10px"},destroyOnClose:!1,children:[Kr&&jsxRuntimeExports.jsx("div",{className:"modal",children:jsxRuntimeExports.jsxs("div",{className:"modal-content",style:{width:"75%"},onClick:Jr=>Jr.preventDefault(),children:[jsxRuntimeExports.jsx("div",{className:styles.detail_name,children:"准备好了吗?发布到市场!"}),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("label",{className:styles.form_label,children:"价格"}),jsxRuntimeExports.jsx("input",{className:"input_medium",type:"text",value:gr,onChange:Dt})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",justifyContent:"flex-end"},children:[jsxRuntimeExports.jsx("button",{className:"secondary_button",style:{marginRight:"10px"},onClick:Ks,children:"取消"}),jsxRuntimeExports.jsxs("button",{className:styles.run_button,style:{paddingLeft:"15px",paddingRight:"25px"},onClick:()=>Js(_t,gr),children:[jsxRuntimeExports.jsx("img",{style:{width:"14px",height:"14px"},src:`${WEB_SITE}/images/run_icon.svg`,alt:"run-icon"})," 发布"]})]})]})}),vr&&jsxRuntimeExports.jsx("div",{className:"modal",children:jsxRuntimeExports.jsxs("div",{className:"modal-content",style:{width:"75%"},onClick:Jr=>Jr.preventDefault(),children:[jsxRuntimeExports.jsx("div",{className:styles.detail_name,children:"在工作流中需要用户输入的节点后面挂一个 ComfyUI Appstore Param 节点,选择丰富的类型,即可变成用户的丰富界面!"}),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("label",{className:styles.form_label,children:"加VX群了解"}),jsxRuntimeExports.jsx("img",{style:{width:"90%",cursor:"pointer"},src:"https://huaxiaobao.net/logo/dev_wechat.png"}),jsxRuntimeExports.jsx("br",{}),jsxRuntimeExports.jsx("label",{className:styles.form_label,children:"或者直接查看文档和帮助视频"}),jsxRuntimeExports.jsx("img",{src:`${WEB_SITE}/help/help.png`,onClick:()=>window.open("https://huaxiaobao.net/?category=help","_blank"),style:{width:"20px",height:"20px",cursor:"pointer"}})]}),jsxRuntimeExports.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:jsxRuntimeExports.jsx("button",{className:styles.run_button,style:{paddingLeft:"15px",paddingRight:"25px"},onClick:()=>_o(!1),children:"  OK"})})]})}),jsxRuntimeExports.jsx("div",{style:{padding:"10px"},children:jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{style:{paddingBottom:"20px"},children:[jsxRuntimeExports.jsx("span",{style:{display:"none"}}),jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"画小宝,ComfyUI作者变现的平台"})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row"},children:[jsxRuntimeExports.jsxs("span",{children:[" ","画小宝 huaxiaobao.net 逛逛,马上入驻开店,开启工作流,开始赚钱"]}),jsxRuntimeExports.jsx("span",{style:{cursor:"pointer",fontStyle:"italic"},onClick:()=>window.open("https://huaxiaobao.net/?category=promote&targetid=1","_blank"),children:"享受万元流量奖励"})]})]}),jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"第一步,游客登录,或者注册用户"})]}),!On&&jsxRuntimeExports.jsxs("div",{id:"huaxiaobao_guest",style:{border:"dotted",borderWidth:"thin"},children:[jsxRuntimeExports.jsxs("span",{style:{display:"block"},children:["选项一:游客就可以玩,马上点击即获得价值10元”墨宝“奖励,优点:方便,缺点,只能这台机器玩"," "]}),jsxRuntimeExports.jsx("button",{id:"loginGuestButton",className:"secondary_button",onClick:async()=>{var Jr="Guest_"+Math.random().toString(36).substr(2,9);document.getElementById("loginGuestButton").textContent="登录中";const tr=await(await fetch(`${API_BASE_URL}register`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:Jr,smsCode:"Gues",password:Jr})})).json();tr.key?(console.log("Login successful, key:",tr.key),document.querySelector("button").style.display="none",document.getElementById("huaxiaobao_login").style.display="none",document.getElementById("huaxiaobao_guest").style.display="none",document.getElementById("huaxiaobao_token").style.display="block",document.getElementById("huaxiaobao_token").textContent=` 游客已登录,请记录画小宝账号信息:用户名:${Jr} 密码:${Jr}`,setLocalStorageValue("accessTokenHuaxiaobao",tr.token,et),setLocalStorageValue("usernameHuaxiaobao",Jr,tn),setLocalStorageValue("keyHuaxiaobao",tr.key,at),So(Jr+"的一个精品")):console.error("Login failed")},children:"一键登录"})]}),jsxRuntimeExports.jsx("span",{id:"huaxiaobao_token",style:{display:On?"block":"none"},children:On&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("br",{}),On,' + "已经登录"',jsxRuntimeExports.jsx("button",{style:{marginRight:"7px"},className:"secondary_button",onClick:()=>{setLocalStorageValue("usernameHuaxiaobao",null,tn)},children:"登出"})]})}),!On&&jsxRuntimeExports.jsxs("div",{id:"huaxiaobao_login",style:{border:"dotted",borderWidth:"thin"},children:[jsxRuntimeExports.jsxs("span",{style:{display:"block"},children:["选项二:画小宝登录,或者注册, 马上获得价值50元“墨宝奖励”"," "]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsx("label",{children:"手机号:"}),jsxRuntimeExports.jsx("input",{style:{width:"150px",fontSize:"13px"},className:"input_medium",type:"text",id:"username",placeholder:"输入手机号"}),jsxRuntimeExports.jsx("label",{children:"密码:"}),jsxRuntimeExports.jsx("input",{style:{width:"150px",fontSize:"13px"},className:"input_medium",type:"password",id:"password",placeholder:"输入密码"})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsx("button",{id:"loginButton",className:"secondary_button",onClick:async()=>{const Dr=await(await fetch(`${API_BASE_URL}login`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:document.getElementById("username").value,password:document.getElementById("password").value})})).json();Dr.key?(console.log("Login successful"),document.querySelectorAll("label").forEach(tr=>tr.style.display="none"),document.getElementById("huaxiaobao_login").style.display="none",document.getElementById("huaxiaobao_guest").style.display="none",document.getElementById("huaxiaobao_token").style.display="block",document.getElementById("huaxiaobao_token").textContent=" 正式用户登录",setLocalStorageValue("accessTokenHuaxiaobao",Dr.token,et),setLocalStorageValue("usernameHuaxiaobao",document.getElementById("username").value,tn),setLocalStorageValue("keyHuaxiaobao",Dr.key,at),So(document.getElementById("username").value+"的一个精品")):console.error("Login failed")},children:"登录"}),jsxRuntimeExports.jsx("button",{className:"secondary_button",onClick:()=>window.open("https://huaxiaobao.net/?register","_blank"),children:"注册"})]})]})]})}),On&&jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{style:{padding:"10px"},children:[jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"第二步,修改工作流,标记参数并测试"})]}),jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%",background:"#324d61"},className:styles.compileCon,children:[jsxRuntimeExports.jsxs("div",{className:styles.form_label_con,children:[it?jsxRuntimeExports.jsx("span",{style:{cursor:"pointer"},children:"下面是显示给用户的区域:这里是跟着工作流中的appstore节点设定变化的。"}):jsxRuntimeExports.jsx("span",{style:{cursor:"pointer"},children:"请在工作流内部添加参数标记节点Appstore Param节点,可以看帮助或者咨询客服微信v:aizhaoshulin了解"}),jsxRuntimeExports.jsx("img",{src:`${WEB_SITE}/help/help.png`,onClick:()=>_o(!0),style:{width:"20px",height:"20px",cursor:"pointer"}})]}),jsxRuntimeExports.jsx("div",{style:{margin:"5px"},children:ct&&jsxRuntimeExports.jsx(DynamicParameterRender,{params:ct,setParamFunc:Ko})})]}),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%"},children:[jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["名称:"," "]})}),jsxRuntimeExports.jsx("input",{className:"input_medium",type:"text",value:Yr,onChange:Jr=>So(Jr.target.value),style:{fontSize:"13px"},placeholder:"简洁的名称,例子,马良的画笔"})]}),jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["分类"," "]})}),jsxRuntimeExports.jsxs("div",{className:"dropdown_container_search",style:{width:"90%"},children:[jsxRuntimeExports.jsxs("div",{className:"custom_select_container",onClick:()=>_r(!Wt),children:[Zr,jsxRuntimeExports.jsx("img",{style:{width:"20px",height:"21px"},src:Wt?WEB_SITE+"/images/dropdown_up.svg":WEB_SITE+"/images/dropdown_down.svg",alt:"expand-icon"})]}),jsxRuntimeExports.jsx("div",{children:Wt&&jsxRuntimeExports.jsx("div",{className:"custom_select_options",ref:Jt,style:{width:"100%"},children:jsxRuntimeExports.jsx("div",{className:"model_options",children:Lt.slice(1).map((Jr,Dr)=>jsxRuntimeExports.jsx("div",{className:"custom_select_option",onClick:()=>Bo(Dr+1),style:{maxWidth:"100%"},children:Jr},Dr+1))})})})]})]})]}),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:[jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["简介:"," "]})}),jsxRuntimeExports.jsx("textarea",{value:Ir,className:"textarea_medium",rows:8,style:{fontSize:"13px"},onChange:Jr=>Lr(Jr.target.value),placeholder:"来两句介绍,功能和亮点!更有助于吸引用户"})]}),jsxRuntimeExports.jsxs("div",{style:{marginTop:"10px",width:"100%",textAlign:"left",fontSize:"12px",height:"100%"},className:styles.compileCon,children:[jsxRuntimeExports.jsx("div",{className:styles.form_label_con,children:jsxRuntimeExports.jsxs("label",{className:styles.form_label_text,style:{fontSize:"12px"},children:["Logo"," "]})}),jsxRuntimeExports.jsx(DynamicParameterRender,{params:nn,setParamFunc:jo,is_author:!0})]})]})]}),jsxRuntimeExports.jsx("div",{style:{display:"flex",flexDirection:"row",height:"100%"},children:jsxRuntimeExports.jsx("button",{id:"trial",className:"button_auth",style:{width:"100%"},onClick:Jr=>Zo(Jr),children:"试运行"})})]})]}),_t&&jsxRuntimeExports.jsx(ResourceManager,{agentId:wt,runs:[{id:_t}],runid:_t})]}),On&&_t&&jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsxs("div",{style:{padding:"10px"},children:[jsxRuntimeExports.jsxs("div",{className:"documentTitle",children:[jsxRuntimeExports.jsx("i",{}),jsxRuntimeExports.jsx("span",{children:"第三步,准备上架和赚钱"})]}),jsxRuntimeExports.jsx("button",{style:{marginRight:"7px",width:"100%"},className:"button_auth",onClick:()=>Ot(!0),children:"上架售卖!"}),jsxRuntimeExports.jsx("br",{}),jsxRuntimeExports.jsx("br",{}),jsxRuntimeExports.jsx("br",{}),Pt&&jsxRuntimeExports.jsx("button",{style:{marginRight:"7px",width:"100%"},className:"button_auth",onClick:()=>window.open(MARKETPLACE_SITE+"/?category=Create_Agent&targetid="+Pt,"_blank"),children:"已经发布! 查看市场!"})]})})]})})};React.forwardRef((e,o)=>(reactExports.useImperativeHandle(o,()=>({init:()=>{console.log("Initializing MoneySetting")}})),jsxRuntimeExports.jsx("div",{children:"MoneySetting Component"})));React.forwardRef((e,o)=>(reactExports.useImperativeHandle(o,()=>({initData:(s,a)=>{console.log(`Initializing WorkerList with id: ${s}, uniqueId: ${a}`)},ttSure:s=>{console.log(`ttSure in WorkerList with data: ${s}`)}})),jsxRuntimeExports.jsx("div",{children:"WorkerList Component"})));React.forwardRef((e,o)=>(reactExports.useImperativeHandle(o,()=>({getDetail:()=>{console.log("Getting details in Settings")}})),jsxRuntimeExports.jsx("div",{children:"Settings Component"})));const App=()=>{const[e,o]=reactExports.useState({right:10,top:120}),[s,a]=reactExports.useState(!1),$=reactExports.useRef(!1),c=reactExports.useRef({x:0,y:0}),nt=(it,st)=>{let ct=0;return(...ft)=>{const pt=new Date().getTime();pt-ct{it.button===0&&(it.stopPropagation(),$.current=!0,c.current={x:it.clientX,y:it.clientY})},lt=nt(it=>{$.current&&o(st=>{const ct=st.right-(it.clientX-c.current.x),ft=st.top+(it.clientY-c.current.y);return c.current={x:it.clientX,y:it.clientY},{right:ct,top:ft}})},30),et=()=>{$.current&&($.current=!1,console.log("Mouse Up: Stop Dragging"))};return reactExports.useEffect(()=>(document.addEventListener("mousemove",lt),document.addEventListener("mouseup",et),()=>{document.removeEventListener("mousemove",lt),document.removeEventListener("mouseup",et)}),[]),jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx(WorkerAdmin,{isvisible:s},s),jsxRuntimeExports.jsxs("div",{style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:0x71afd498cffff,backgroundColor:"transparent",right:`${e.right}px`,top:`${e.top}px`,height:"60px",cursor:"pointer"},onMouseDown:at,children:[jsxRuntimeExports.jsx("div",{style:{borderRadius:"10px",height:"30px"},children:jsxRuntimeExports.jsx("img",{style:{borderRadius:"10px",height:"100%",pointerEvents:"none"},src:`${WEB_SITE}/logo/newlogo1.png`})}),jsxRuntimeExports.jsx("div",{className:"secondary_button",onClick:()=>a(!s),children:s?"收起":"变现"})]})]})},GlobalContext=reactExports.createContext(),GlobalProvider=({children:e})=>jsxRuntimeExports.jsx(GlobalContext.Provider,{children:e}),root=client.createRoot(document.getElementById("admin-app-appstore"));root.render(jsxRuntimeExports.jsx(GlobalProvider,{children:jsxRuntimeExports.jsx(App,{})})); diff --git a/appstore_panel/dist/bundle.js.map b/appstore_panel/dist/bundle.js.map deleted file mode 100644 index e9d1072..0000000 --- a/appstore_panel/dist/bundle.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bundle.js","sources":["../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/index.js","../node_modules/react-dom/client.js","../node_modules/antd-mobile/es/utils/can-use-dom.js","../node_modules/antd-mobile/es/global/index.js","../node_modules/antd-mobile/es/locales/zh-CN.js","../node_modules/antd-mobile/es/components/config-provider/config-provider.js","../node_modules/classnames/index.js","../node_modules/antd-mobile/es/utils/native-props.js","../node_modules/antd-mobile/es/utils/with-default-props.js","../node_modules/ahooks/es/utils/isBrowser.js","../node_modules/js-cookie/dist/js.cookie.mjs","../node_modules/ahooks/es/useIsomorphicLayoutEffect/index.js","../node_modules/ahooks/es/useUnmountedRef/index.js","../node_modules/antd-mobile/es/utils/use-touch.js","../node_modules/antd-mobile/es/utils/get-scroll-parent.js","../node_modules/antd-mobile/es/utils/supports-passive.js","../node_modules/antd-mobile/es/utils/use-lock-scroll.js","../node_modules/@react-spring/rafz/dist/react-spring-rafz.esm.js","../node_modules/@react-spring/shared/dist/react-spring-shared.esm.js","../node_modules/@react-spring/animated/dist/react-spring-animated.esm.js","../node_modules/@react-spring/core/dist/react-spring-core.esm.js","../node_modules/@react-spring/web/dist/react-spring-web.esm.js","../node_modules/antd-mobile/es/utils/get-container.js","../node_modules/antd-mobile/es/utils/render-to-container.js","../node_modules/antd-mobile/es/utils/use-initialized.js","../node_modules/antd-mobile/es/utils/should-render.js","../node_modules/antd-mobile/es/utils/with-stop-propagation.js","../node_modules/antd-mobile/es/components/mask/mask.js","../node_modules/antd-mobile-icons/es/CloseOutline.js","../node_modules/antd-mobile/es/components/popup/popup-base-props.js","../node_modules/antd-mobile/es/utils/use-inner-visible.js","../node_modules/@use-gesture/core/dist/maths-0ab39ae9.esm.js","../node_modules/@use-gesture/core/dist/actions-fe213e88.esm.js","../node_modules/@use-gesture/core/dist/use-gesture-core.esm.js","../node_modules/@use-gesture/react/dist/use-gesture-react.esm.js","../node_modules/antd-mobile/es/components/popup/popup.js","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/common/utils.js","../node_modules/axios/lib/platform/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/helpers/throttle.js","../node_modules/axios/lib/helpers/progressEventReducer.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/helpers/resolveConfig.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/helpers/composeSignals.js","../node_modules/axios/lib/helpers/trackStream.js","../node_modules/axios/lib/adapters/fetch.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../src/pages/api/apiConfig.jsx","../node_modules/jszip/dist/jszip.min.js","../node_modules/moment/dist/moment.js","../node_modules/mixpanel-browser/dist/mixpanel.module.js","../node_modules/clsx/dist/clsx.m.js","../node_modules/react-toastify/dist/react-toastify.esm.mjs","../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/native.js","../node_modules/uuid/dist/esm-browser/v4.js","../src/pages/api/DashboardService.jsx","../src/utils/utils.jsx","../src/pages/Content/Agents/fileuploader.jsx","../src/pages/Content/Agents/imagelist.jsx","../src/pages/Content/Agents/comboimagelist.jsx","../node_modules/onnxruntime-web/dist/ort.bundle.min.mjs","../src/utils/components/helpers/onnxModelAPI.jsx","../src/utils/Context/ModelContext.jsx","../node_modules/cross-fetch/dist/browser-ponyfill.js","../node_modules/npyjs/index.js","../node_modules/underscore/modules/_setup.js","../node_modules/underscore/modules/restArguments.js","../node_modules/underscore/modules/isObject.js","../node_modules/underscore/modules/isNull.js","../node_modules/underscore/modules/isUndefined.js","../node_modules/underscore/modules/isBoolean.js","../node_modules/underscore/modules/isElement.js","../node_modules/underscore/modules/_tagTester.js","../node_modules/underscore/modules/isString.js","../node_modules/underscore/modules/isNumber.js","../node_modules/underscore/modules/isDate.js","../node_modules/underscore/modules/isRegExp.js","../node_modules/underscore/modules/isError.js","../node_modules/underscore/modules/isSymbol.js","../node_modules/underscore/modules/isArrayBuffer.js","../node_modules/underscore/modules/isFunction.js","../node_modules/underscore/modules/_hasObjectTag.js","../node_modules/underscore/modules/_stringTagBug.js","../node_modules/underscore/modules/isDataView.js","../node_modules/underscore/modules/isArray.js","../node_modules/underscore/modules/_has.js","../node_modules/underscore/modules/isArguments.js","../node_modules/underscore/modules/isFinite.js","../node_modules/underscore/modules/isNaN.js","../node_modules/underscore/modules/constant.js","../node_modules/underscore/modules/_createSizePropertyCheck.js","../node_modules/underscore/modules/_shallowProperty.js","../node_modules/underscore/modules/_getByteLength.js","../node_modules/underscore/modules/_isBufferLike.js","../node_modules/underscore/modules/isTypedArray.js","../node_modules/underscore/modules/_getLength.js","../node_modules/underscore/modules/_collectNonEnumProps.js","../node_modules/underscore/modules/keys.js","../node_modules/underscore/modules/isEmpty.js","../node_modules/underscore/modules/isMatch.js","../node_modules/underscore/modules/underscore.js","../node_modules/underscore/modules/_toBufferView.js","../node_modules/underscore/modules/isEqual.js","../node_modules/underscore/modules/allKeys.js","../node_modules/underscore/modules/_methodFingerprint.js","../node_modules/underscore/modules/isMap.js","../node_modules/underscore/modules/isWeakMap.js","../node_modules/underscore/modules/isSet.js","../node_modules/underscore/modules/isWeakSet.js","../node_modules/underscore/modules/values.js","../node_modules/underscore/modules/pairs.js","../node_modules/underscore/modules/invert.js","../node_modules/underscore/modules/functions.js","../node_modules/underscore/modules/_createAssigner.js","../node_modules/underscore/modules/extend.js","../node_modules/underscore/modules/extendOwn.js","../node_modules/underscore/modules/defaults.js","../node_modules/underscore/modules/_baseCreate.js","../node_modules/underscore/modules/create.js","../node_modules/underscore/modules/clone.js","../node_modules/underscore/modules/tap.js","../node_modules/underscore/modules/toPath.js","../node_modules/underscore/modules/_toPath.js","../node_modules/underscore/modules/_deepGet.js","../node_modules/underscore/modules/get.js","../node_modules/underscore/modules/has.js","../node_modules/underscore/modules/identity.js","../node_modules/underscore/modules/matcher.js","../node_modules/underscore/modules/property.js","../node_modules/underscore/modules/_optimizeCb.js","../node_modules/underscore/modules/_baseIteratee.js","../node_modules/underscore/modules/iteratee.js","../node_modules/underscore/modules/_cb.js","../node_modules/underscore/modules/mapObject.js","../node_modules/underscore/modules/noop.js","../node_modules/underscore/modules/propertyOf.js","../node_modules/underscore/modules/times.js","../node_modules/underscore/modules/random.js","../node_modules/underscore/modules/now.js","../node_modules/underscore/modules/_createEscaper.js","../node_modules/underscore/modules/_escapeMap.js","../node_modules/underscore/modules/escape.js","../node_modules/underscore/modules/_unescapeMap.js","../node_modules/underscore/modules/unescape.js","../node_modules/underscore/modules/templateSettings.js","../node_modules/underscore/modules/template.js","../node_modules/underscore/modules/result.js","../node_modules/underscore/modules/uniqueId.js","../node_modules/underscore/modules/chain.js","../node_modules/underscore/modules/_executeBound.js","../node_modules/underscore/modules/partial.js","../node_modules/underscore/modules/bind.js","../node_modules/underscore/modules/_isArrayLike.js","../node_modules/underscore/modules/_flatten.js","../node_modules/underscore/modules/bindAll.js","../node_modules/underscore/modules/memoize.js","../node_modules/underscore/modules/delay.js","../node_modules/underscore/modules/defer.js","../node_modules/underscore/modules/throttle.js","../node_modules/underscore/modules/debounce.js","../node_modules/underscore/modules/wrap.js","../node_modules/underscore/modules/negate.js","../node_modules/underscore/modules/compose.js","../node_modules/underscore/modules/after.js","../node_modules/underscore/modules/before.js","../node_modules/underscore/modules/once.js","../node_modules/underscore/modules/findKey.js","../node_modules/underscore/modules/_createPredicateIndexFinder.js","../node_modules/underscore/modules/findIndex.js","../node_modules/underscore/modules/findLastIndex.js","../node_modules/underscore/modules/sortedIndex.js","../node_modules/underscore/modules/_createIndexFinder.js","../node_modules/underscore/modules/indexOf.js","../node_modules/underscore/modules/lastIndexOf.js","../node_modules/underscore/modules/find.js","../node_modules/underscore/modules/findWhere.js","../node_modules/underscore/modules/each.js","../node_modules/underscore/modules/map.js","../node_modules/underscore/modules/_createReduce.js","../node_modules/underscore/modules/reduce.js","../node_modules/underscore/modules/reduceRight.js","../node_modules/underscore/modules/filter.js","../node_modules/underscore/modules/reject.js","../node_modules/underscore/modules/every.js","../node_modules/underscore/modules/some.js","../node_modules/underscore/modules/contains.js","../node_modules/underscore/modules/invoke.js","../node_modules/underscore/modules/pluck.js","../node_modules/underscore/modules/where.js","../node_modules/underscore/modules/max.js","../node_modules/underscore/modules/min.js","../node_modules/underscore/modules/toArray.js","../node_modules/underscore/modules/sample.js","../node_modules/underscore/modules/shuffle.js","../node_modules/underscore/modules/sortBy.js","../node_modules/underscore/modules/_group.js","../node_modules/underscore/modules/groupBy.js","../node_modules/underscore/modules/indexBy.js","../node_modules/underscore/modules/countBy.js","../node_modules/underscore/modules/partition.js","../node_modules/underscore/modules/size.js","../node_modules/underscore/modules/_keyInObj.js","../node_modules/underscore/modules/pick.js","../node_modules/underscore/modules/omit.js","../node_modules/underscore/modules/initial.js","../node_modules/underscore/modules/first.js","../node_modules/underscore/modules/rest.js","../node_modules/underscore/modules/last.js","../node_modules/underscore/modules/compact.js","../node_modules/underscore/modules/flatten.js","../node_modules/underscore/modules/difference.js","../node_modules/underscore/modules/without.js","../node_modules/underscore/modules/uniq.js","../node_modules/underscore/modules/union.js","../node_modules/underscore/modules/intersection.js","../node_modules/underscore/modules/unzip.js","../node_modules/underscore/modules/zip.js","../node_modules/underscore/modules/object.js","../node_modules/underscore/modules/range.js","../node_modules/underscore/modules/chunk.js","../node_modules/underscore/modules/_chainResult.js","../node_modules/underscore/modules/mixin.js","../node_modules/underscore/modules/underscore-array-methods.js","../node_modules/underscore/modules/index-default.js","../node_modules/file-saver/dist/FileSaver.min.js","../src/pages/Content/Segment/Segment.jsx","../src/utils/components/imageeditor.jsx","../src/pages/Content/Agents/EditableImage.jsx","../src/pages/Content/Agents/DynamicParameterRenderer.jsx","../src/pages/Content/Agents/FileList.jsx","../src/pages/Content/Agents/ResourceList.jsx","../src/pages/Content/Agents/ResourceManager.jsx","../src/WorkerAdmin.jsx","../src/App.jsx","../src/context.jsx","../src/index.jsx"],"sourcesContent":["/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1>>1,e=a[d];if(0>>1;dg(C,c))ng(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&Ng(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=Lg(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Tg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Rg(f.type,f.key,f.props,null,a.mode,h),h.ref=Lg(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=Sg(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);Mg(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=Qg(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Ug=Og(!0),Vg=Og(!1),Wg=Uf(null),Xg=null,Yg=null,Zg=null;function $g(){Zg=Yg=Xg=null}function ah(a){var b=Wg.current;E(Wg);a._currentValue=b}function bh(a,b,c){for(;null!==a;){var d=a.alternate;(a.childLanes&b)!==b?(a.childLanes|=b,null!==d&&(d.childLanes|=b)):null!==d&&(d.childLanes&b)!==b&&(d.childLanes|=b);if(a===c)break;a=a.return}}\nfunction ch(a,b){Xg=a;Zg=Yg=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(dh=!0),a.firstContext=null)}function eh(a){var b=a._currentValue;if(Zg!==a)if(a={context:a,memoizedValue:b,next:null},null===Yg){if(null===Xg)throw Error(p(308));Yg=a;Xg.dependencies={lanes:0,firstContext:a}}else Yg=Yg.next=a;return b}var fh=null;function gh(a){null===fh?fh=[a]:fh.push(a)}\nfunction hh(a,b,c,d){var e=b.interleaved;null===e?(c.next=c,gh(b)):(c.next=e.next,e.next=c);b.interleaved=c;return ih(a,d)}function ih(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}var jh=!1;function kh(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}\nfunction lh(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function mh(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}\nfunction nh(a,b,c){var d=a.updateQueue;if(null===d)return null;d=d.shared;if(0!==(K&2)){var e=d.pending;null===e?b.next=b:(b.next=e.next,e.next=b);d.pending=b;return ih(a,c)}e=d.interleaved;null===e?(b.next=b,gh(d)):(b.next=e.next,e.next=b);d.interleaved=b;return ih(a,c)}function oh(a,b,c){b=b.updateQueue;if(null!==b&&(b=b.shared,0!==(c&4194240))){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nfunction ph(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction qh(a,b,c,d){var e=a.updateQueue;jh=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var m=a.alternate;null!==m&&(m=m.updateQueue,h=m.lastBaseUpdate,h!==g&&(null===h?m.firstBaseUpdate=l:h.next=l,m.lastBaseUpdate=k))}if(null!==f){var q=e.baseState;g=0;m=l=k=null;h=f;do{var r=h.lane,y=h.eventTime;if((d&r)===r){null!==m&&(m=m.next={eventTime:y,lane:0,tag:h.tag,payload:h.payload,callback:h.callback,\nnext:null});a:{var n=a,t=h;r=b;y=c;switch(t.tag){case 1:n=t.payload;if(\"function\"===typeof n){q=n.call(y,q,r);break a}q=n;break a;case 3:n.flags=n.flags&-65537|128;case 0:n=t.payload;r=\"function\"===typeof n?n.call(y,q,r):n;if(null===r||void 0===r)break a;q=A({},q,r);break a;case 2:jh=!0}}null!==h.callback&&0!==h.lane&&(a.flags|=64,r=e.effects,null===r?e.effects=[h]:r.push(h))}else y={eventTime:y,lane:r,tag:h.tag,payload:h.payload,callback:h.callback,next:null},null===m?(l=m=y,k=q):m=m.next=y,g|=r;\nh=h.next;if(null===h)if(h=e.shared.pending,null===h)break;else r=h,h=r.next,r.next=null,e.lastBaseUpdate=r,e.shared.pending=null}while(1);null===m&&(k=q);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=m;b=e.shared.interleaved;if(null!==b){e=b;do g|=e.lane,e=e.next;while(e!==b)}else null===f&&(e.shared.lanes=0);rh|=g;a.lanes=g;a.memoizedState=q}}\nfunction sh(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;bc?c:4;a(!0);var d=Gh.transition;Gh.transition={};try{a(!1),b()}finally{C=c,Gh.transition=d}}function wi(){return Uh().memoizedState}\nfunction xi(a,b,c){var d=yi(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,c);else if(c=hh(a,b,c,d),null!==c){var e=R();gi(c,a,d,e);Bi(c,b,d)}}\nfunction ii(a,b,c){var d=yi(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,gh(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=hh(a,b,e,d);null!==c&&(e=R(),gi(c,a,d,e),Bi(c,b,d))}}\nfunction zi(a){var b=a.alternate;return a===M||null!==b&&b===M}function Ai(a,b){Jh=Ih=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Bi(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar Rh={readContext:eh,useCallback:P,useContext:P,useEffect:P,useImperativeHandle:P,useInsertionEffect:P,useLayoutEffect:P,useMemo:P,useReducer:P,useRef:P,useState:P,useDebugValue:P,useDeferredValue:P,useTransition:P,useMutableSource:P,useSyncExternalStore:P,useId:P,unstable_isNewReconciler:!1},Oh={readContext:eh,useCallback:function(a,b){Th().memoizedState=[a,void 0===b?null:b];return a},useContext:eh,useEffect:mi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ki(4194308,\n4,pi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ki(4194308,4,a,b)},useInsertionEffect:function(a,b){return ki(4,2,a,b)},useMemo:function(a,b){var c=Th();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Th();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=xi.bind(null,M,a);return[d.memoizedState,a]},useRef:function(a){var b=\nTh();a={current:a};return b.memoizedState=a},useState:hi,useDebugValue:ri,useDeferredValue:function(a){return Th().memoizedState=a},useTransition:function(){var a=hi(!1),b=a[0];a=vi.bind(null,a[1]);Th().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=M,e=Th();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===Q)throw Error(p(349));0!==(Hh&30)||di(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;mi(ai.bind(null,d,\nf,a),[a]);d.flags|=2048;bi(9,ci.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=Th(),b=Q.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Kh++;0\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Of]=b;a[Pf]=d;zj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eGj&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304)}else{if(!d)if(a=Ch(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Dj(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Gj&&1073741824!==c&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=L.current,G(L,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Hj(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(fj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Ij(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return zh(),E(Wf),E(H),Eh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Bh(b),null;case 13:E(L);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(L),null;case 4:return zh(),null;case 10:return ah(b.type._context),null;case 22:case 23:return Hj(),\nnull;case 24:return null;default:return null}}var Jj=!1,U=!1,Kj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Lj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Mj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Nj=!1;\nfunction Oj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Ci(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Nj;Nj=!1;return n}\nfunction Pj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Mj(b,c,f)}e=e.next}while(e!==d)}}function Qj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Rj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Sj(a){var b=a.alternate;null!==b&&(a.alternate=null,Sj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Tj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Uj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Tj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Vj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=Bf));else if(4!==d&&(a=a.child,null!==a))for(Vj(a,b,c),a=a.sibling;null!==a;)Vj(a,b,c),a=a.sibling}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}var X=null,Xj=!1;function Yj(a,b,c){for(c=c.child;null!==c;)Zj(a,b,c),c=c.sibling}\nfunction Zj(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Lj(c,b);case 6:var d=X,e=Xj;X=null;Yj(a,b,c);X=d;Xj=e;null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Xj;X=c.stateNode.containerInfo;Xj=!0;\nYj(a,b,c);X=d;Xj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Mj(c,b,g):0!==(f&4)&&Mj(c,b,g));e=e.next}while(e!==d)}Yj(a,b,c);break;case 1:if(!U&&(Lj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Yj(a,b,c);break;case 21:Yj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Yj(a,b,c),U=d):Yj(a,b,c);break;default:Yj(a,b,c)}}function ak(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Kj);b.forEach(function(b){var d=bk.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction ck(a,b){var c=b.deletions;if(null!==c)for(var d=0;de&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*lk(d/1960))-d;if(10a?16:a;if(null===wk)var d=!1;else{a=wk;wk=null;xk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;kB()-fk?Kk(a,0):rk|=c);Dk(a,b)}function Yk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=R();a=ih(a,b);null!==a&&(Ac(a,b,c),Dk(a,c))}function uj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Yk(a,c)}\nfunction bk(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Yk(a,c)}var Vk;\nVk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)dh=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return dh=!1,yj(a,b,c);dh=0!==(a.flags&131072)?!0:!1}else dh=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;ij(a,b);a=b.pendingProps;var e=Yf(b,H.current);ch(b,c);e=Nh(null,b,d,a,e,c);var f=Sh();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,kh(b),e.updater=Ei,b.stateNode=e,e._reactInternals=b,Ii(b,d,a,c),b=jj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Xi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{ij(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=Zk(d);a=Ci(d,a);switch(e){case 0:b=cj(null,b,d,a,c);break a;case 1:b=hj(null,b,d,a,c);break a;case 11:b=Yi(null,b,d,a,c);break a;case 14:b=$i(null,b,d,Ci(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),cj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),hj(a,b,d,e,c);case 3:a:{kj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;lh(a,b);qh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ji(Error(p(423)),b);b=lj(a,b,d,c,e);break a}else if(d!==e){e=Ji(Error(p(424)),b);b=lj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Vg(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=Zi(a,b,c);break a}Xi(a,b,d,c)}b=b.child}return b;case 5:return Ah(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\ngj(a,b),Xi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return oj(a,b,c);case 4:return yh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Ug(b,null,d,c):Xi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),Yi(a,b,d,e,c);case 7:return Xi(a,b,b.pendingProps,c),b.child;case 8:return Xi(a,b,b.pendingProps.children,c),b.child;case 12:return Xi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Wg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=Zi(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=mh(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);bh(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);bh(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Xi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,ch(b,c),e=eh(e),d=d(e),b.flags|=1,Xi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Ci(d,b.pendingProps),e=Ci(d.type,e),$i(a,b,d,e,c);case 15:return bj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),ij(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,ch(b,c),Gi(b,d,e),Ii(b,d,e,c),jj(null,b,d,!0,a,c);case 19:return xj(a,b,c);case 22:return dj(a,b,c)}throw Error(p(156,b.tag));};function Fk(a,b){return ac(a,b)}\nfunction $k(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new $k(a,b,c,d)}function aj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction Zk(a){if(\"function\"===typeof a)return aj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction Pg(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Rg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)aj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Tg(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return pj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Tg(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function pj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function Qg(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction Sg(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction al(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function bl(a,b,c,d,e,f,g,h,k){a=new al(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};kh(f);return a}function cl(a,b,c){var d=3 {}, true);\n}\n// Only for debugging. Must COMMENT this line before commit:\n// import './css-vars-patch.less'","const typeTemplate = '${label}不是一个有效的${type}';\nconst zhCN = {\n locale: 'zh-CH',\n common: {\n confirm: '确定',\n cancel: '取消',\n loading: '加载中',\n close: '关闭'\n },\n Calendar: {\n title: '日期选择',\n confirm: '确认',\n start: '开始',\n end: '结束',\n today: '今日',\n markItems: ['一', '二', '三', '四', '五', '六', '日'],\n yearAndMonth: '${year}年${month}月'\n },\n Cascader: {\n placeholder: '请选择'\n },\n Dialog: {\n ok: '我知道了'\n },\n DatePicker: {\n tillNow: '至今'\n },\n ErrorBlock: {\n default: {\n title: '页面遇到一些小问题',\n description: '待会来试试'\n },\n busy: {\n title: '前方拥堵',\n description: '刷新试试'\n },\n disconnected: {\n title: '网络有点忙',\n description: '动动手指帮忙修复'\n },\n empty: {\n title: '没有找到你需要的东西',\n description: '找找其他的吧'\n }\n },\n Form: {\n required: '必填',\n optional: '选填',\n defaultValidateMessages: {\n default: '字段验证错误${label}',\n required: '请输入${label}',\n enum: '${label}必须是其中一个[${enum}]',\n whitespace: '${label}不能为空字符',\n date: {\n format: '${label}日期格式无效',\n parse: '${label}不能转换为日期',\n invalid: '${label}是一个无效日期'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n boolean: typeTemplate,\n integer: typeTemplate,\n float: typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label}须为${len}个字符',\n min: '${label}最少${min}个字符',\n max: '${label}最多${max}个字符',\n range: '${label}须在${min}-${max}字符之间'\n },\n number: {\n len: '${label}必须等于${len}',\n min: '${label}最小值为${min}',\n max: '${label}最大值为${max}',\n range: '${label}须在${min}-${max}之间'\n },\n array: {\n len: '须为${len}个${label}',\n min: '最少${min}个${label}',\n max: '最多${max}个${label}',\n range: '${label}数量须在${min}-${max}之间'\n },\n pattern: {\n mismatch: '${label}与模式不匹配${pattern}'\n }\n }\n },\n ImageUploader: {\n uploading: '上传中...',\n upload: '上传'\n },\n InfiniteScroll: {\n noMore: '没有更多了',\n failedToLoad: '加载失败',\n retry: '重新加载'\n },\n Input: {\n clear: '清除'\n },\n Mask: {\n name: '背景蒙层'\n },\n Modal: {\n ok: '我知道了'\n },\n PasscodeInput: {\n name: '密码输入框'\n },\n PullToRefresh: {\n pulling: '下拉刷新',\n canRelease: '释放立即刷新',\n complete: '刷新成功'\n },\n SearchBar: {\n name: '搜索框'\n },\n Slider: {\n name: '滑动输入条'\n },\n Stepper: {\n decrease: '减少',\n increase: '增加'\n },\n Switch: {\n name: '开关'\n },\n Selector: {\n name: '选择组'\n }\n};\nexport default zhCN;","import { __rest } from \"tslib\";\nimport React, { useContext } from 'react';\nimport zhCN from '../../locales/zh-CN';\nexport const defaultConfigRef = {\n current: {\n locale: zhCN\n }\n};\nexport function setDefaultConfig(config) {\n defaultConfigRef.current = config;\n}\nexport function getDefaultConfig() {\n return defaultConfigRef.current;\n}\nconst ConfigContext = React.createContext(null);\nexport const ConfigProvider = props => {\n const {\n children\n } = props,\n config = __rest(props, [\"children\"]);\n const parentConfig = useConfig();\n return React.createElement(ConfigContext.Provider, {\n value: Object.assign(Object.assign({}, parentConfig), config)\n }, children);\n};\nexport function useConfig() {\n var _a;\n return (_a = useContext(ConfigContext)) !== null && _a !== void 0 ? _a : getDefaultConfig();\n}","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from 'react';\nimport classNames from 'classnames';\nexport function withNativeProps(props, element) {\n const p = Object.assign({}, element.props);\n if (props.className) {\n p.className = classNames(element.props.className, props.className);\n }\n if (props.style) {\n p.style = Object.assign(Object.assign({}, p.style), props.style);\n }\n if (props.tabIndex !== undefined) {\n p.tabIndex = props.tabIndex;\n }\n for (const key in props) {\n if (!props.hasOwnProperty(key)) continue;\n if (key.startsWith('data-') || key.startsWith('aria-')) {\n p[key] = props[key];\n }\n }\n return React.cloneElement(element, p);\n}","export function mergeProps(...items) {\n const ret = {};\n items.forEach(item => {\n if (item) {\n Object.keys(item).forEach(key => {\n if (item[key] !== undefined) {\n ret[key] = item[key];\n }\n });\n }\n });\n return ret;\n}\n/**\n * Merge props and return the first non-undefined value.\n * The later has higher priority. e.g. (10, 1, 5) => 5 wins.\n * This is useful with legacy props that have been deprecated.\n */\nexport function mergeProp(defaultProp, ...propList) {\n for (let i = propList.length - 1; i >= 0; i -= 1) {\n if (propList[i] !== undefined) {\n return propList[i];\n }\n }\n return defaultProp;\n}","var isBrowser = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nexport default isBrowser;","/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n","import { useEffect, useLayoutEffect } from 'react';\nimport isBrowser from '../utils/isBrowser';\nvar useIsomorphicLayoutEffect = isBrowser ? useLayoutEffect : useEffect;\nexport default useIsomorphicLayoutEffect;","import { useEffect, useRef } from 'react';\nvar useUnmountedRef = function () {\n var unmountedRef = useRef(false);\n useEffect(function () {\n unmountedRef.current = false;\n return function () {\n unmountedRef.current = true;\n };\n }, []);\n return unmountedRef;\n};\nexport default useUnmountedRef;","import { useRef } from 'react';\nconst MIN_DISTANCE = 10;\nfunction getDirection(x, y) {\n if (x > y && x > MIN_DISTANCE) {\n return 'horizontal';\n }\n if (y > x && y > MIN_DISTANCE) {\n return 'vertical';\n }\n return '';\n}\nexport function useTouch() {\n const startX = useRef(0);\n const startY = useRef(0);\n const deltaX = useRef(0);\n const deltaY = useRef(0);\n const offsetX = useRef(0);\n const offsetY = useRef(0);\n const direction = useRef('');\n const isVertical = () => direction.current === 'vertical';\n const isHorizontal = () => direction.current === 'horizontal';\n const reset = () => {\n deltaX.current = 0;\n deltaY.current = 0;\n offsetX.current = 0;\n offsetY.current = 0;\n direction.current = '';\n };\n const start = event => {\n reset();\n startX.current = event.touches[0].clientX;\n startY.current = event.touches[0].clientY;\n };\n const move = event => {\n const touch = event.touches[0];\n // Fix: Safari back will set clientX to negative number\n deltaX.current = touch.clientX < 0 ? 0 : touch.clientX - startX.current;\n deltaY.current = touch.clientY - startY.current;\n offsetX.current = Math.abs(deltaX.current);\n offsetY.current = Math.abs(deltaY.current);\n if (!direction.current) {\n direction.current = getDirection(offsetX.current, offsetY.current);\n }\n };\n return {\n move,\n start,\n reset,\n startX,\n startY,\n deltaX,\n deltaY,\n offsetX,\n offsetY,\n direction,\n isVertical,\n isHorizontal\n };\n}","import { canUseDom } from './can-use-dom';\nconst defaultRoot = canUseDom ? window : undefined;\nconst overflowStylePatterns = ['scroll', 'auto', 'overlay'];\nfunction isElement(node) {\n const ELEMENT_NODE_TYPE = 1;\n return node.nodeType === ELEMENT_NODE_TYPE;\n}\nexport function getScrollParent(el, root = defaultRoot) {\n let node = el;\n while (node && node !== root && isElement(node)) {\n if (node === document.body) {\n return root;\n }\n const {\n overflowY\n } = window.getComputedStyle(node);\n if (overflowStylePatterns.includes(overflowY) && node.scrollHeight > node.clientHeight) {\n return node;\n }\n node = node.parentNode;\n }\n return root;\n}","import { canUseDom } from './can-use-dom';\nexport let supportsPassive = false;\nif (canUseDom) {\n try {\n const opts = {};\n Object.defineProperty(opts, 'passive', {\n get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}","import { useTouch } from './use-touch';\nimport { useEffect } from 'react';\nimport { getScrollParent } from './get-scroll-parent';\nimport { supportsPassive } from './supports-passive';\nlet totalLockCount = 0;\nconst BODY_LOCK_CLASS = 'adm-overflow-hidden';\nfunction getScrollableElement(el) {\n let current = el === null || el === void 0 ? void 0 : el.parentElement;\n while (current) {\n if (current.clientHeight < current.scrollHeight) {\n return current;\n }\n current = current.parentElement;\n }\n return null;\n}\n// 移植自vant:https://github.com/youzan/vant/blob/HEAD/src/composables/use-lock-scroll.ts\nexport function useLockScroll(rootRef, shouldLock) {\n const touch = useTouch();\n const onTouchMove = event => {\n touch.move(event);\n const direction = touch.deltaY.current > 0 ? '10' : '01';\n const el = getScrollParent(event.target, rootRef.current);\n if (!el) return;\n // This has perf cost but we have to compatible with iOS 12\n if (shouldLock === 'strict') {\n const scrollableParent = getScrollableElement(event.target);\n if (scrollableParent === document.body || scrollableParent === document.documentElement) {\n event.preventDefault();\n return;\n }\n }\n const {\n scrollHeight,\n offsetHeight,\n scrollTop\n } = el;\n const {\n height\n } = el.getBoundingClientRect();\n let status = '11';\n if (scrollTop === 0) {\n status = offsetHeight >= scrollHeight ? '00' : '01';\n } else if (scrollHeight <= Math.round(height + scrollTop)) {\n status = '10';\n }\n if (status !== '11' && touch.isVertical() && !(parseInt(status, 2) & parseInt(direction, 2))) {\n if (event.cancelable && supportsPassive) {\n // https://github.com/ant-design/ant-design-mobile/issues/6282\n event.preventDefault();\n }\n }\n };\n const lock = () => {\n document.addEventListener('touchstart', touch.start);\n document.addEventListener('touchmove', onTouchMove, supportsPassive ? {\n passive: false\n } : false);\n if (!totalLockCount) {\n document.body.classList.add(BODY_LOCK_CLASS);\n }\n totalLockCount++;\n };\n const unlock = () => {\n if (totalLockCount) {\n document.removeEventListener('touchstart', touch.start);\n document.removeEventListener('touchmove', onTouchMove);\n totalLockCount--;\n if (!totalLockCount) {\n document.body.classList.remove(BODY_LOCK_CLASS);\n }\n }\n };\n useEffect(() => {\n if (shouldLock) {\n lock();\n return () => {\n unlock();\n };\n }\n }, [shouldLock]);\n}","let updateQueue = makeQueue();\nconst raf = fn => schedule(fn, updateQueue);\nlet writeQueue = makeQueue();\n\nraf.write = fn => schedule(fn, writeQueue);\n\nlet onStartQueue = makeQueue();\n\nraf.onStart = fn => schedule(fn, onStartQueue);\n\nlet onFrameQueue = makeQueue();\n\nraf.onFrame = fn => schedule(fn, onFrameQueue);\n\nlet onFinishQueue = makeQueue();\n\nraf.onFinish = fn => schedule(fn, onFinishQueue);\n\nlet timeouts = [];\n\nraf.setTimeout = (handler, ms) => {\n let time = raf.now() + ms;\n\n let cancel = () => {\n let i = timeouts.findIndex(t => t.cancel == cancel);\n if (~i) timeouts.splice(i, 1);\n pendingCount -= ~i ? 1 : 0;\n };\n\n let timeout = {\n time,\n handler,\n cancel\n };\n timeouts.splice(findTimeout(time), 0, timeout);\n pendingCount += 1;\n start();\n return timeout;\n};\n\nlet findTimeout = time => ~(~timeouts.findIndex(t => t.time > time) || ~timeouts.length);\n\nraf.cancel = fn => {\n onStartQueue.delete(fn);\n onFrameQueue.delete(fn);\n onFinishQueue.delete(fn);\n updateQueue.delete(fn);\n writeQueue.delete(fn);\n};\n\nraf.sync = fn => {\n sync = true;\n raf.batchedUpdates(fn);\n sync = false;\n};\n\nraf.throttle = fn => {\n let lastArgs;\n\n function queuedFn() {\n try {\n fn(...lastArgs);\n } finally {\n lastArgs = null;\n }\n }\n\n function throttled(...args) {\n lastArgs = args;\n raf.onStart(queuedFn);\n }\n\n throttled.handler = fn;\n\n throttled.cancel = () => {\n onStartQueue.delete(queuedFn);\n lastArgs = null;\n };\n\n return throttled;\n};\n\nlet nativeRaf = typeof window != 'undefined' ? window.requestAnimationFrame : () => {};\n\nraf.use = impl => nativeRaf = impl;\n\nraf.now = typeof performance != 'undefined' ? () => performance.now() : Date.now;\n\nraf.batchedUpdates = fn => fn();\n\nraf.catch = console.error;\nraf.frameLoop = 'always';\n\nraf.advance = () => {\n if (raf.frameLoop !== 'demand') {\n console.warn('Cannot call the manual advancement of rafz whilst frameLoop is not set as demand');\n } else {\n update();\n }\n};\n\nlet ts = -1;\nlet pendingCount = 0;\nlet sync = false;\n\nfunction schedule(fn, queue) {\n if (sync) {\n queue.delete(fn);\n fn(0);\n } else {\n queue.add(fn);\n start();\n }\n}\n\nfunction start() {\n if (ts < 0) {\n ts = 0;\n\n if (raf.frameLoop !== 'demand') {\n nativeRaf(loop);\n }\n }\n}\n\nfunction stop() {\n ts = -1;\n}\n\nfunction loop() {\n if (~ts) {\n nativeRaf(loop);\n raf.batchedUpdates(update);\n }\n}\n\nfunction update() {\n let prevTs = ts;\n ts = raf.now();\n let count = findTimeout(ts);\n\n if (count) {\n eachSafely(timeouts.splice(0, count), t => t.handler());\n pendingCount -= count;\n }\n\n if (!pendingCount) {\n stop();\n return;\n }\n\n onStartQueue.flush();\n updateQueue.flush(prevTs ? Math.min(64, ts - prevTs) : 16.667);\n onFrameQueue.flush();\n writeQueue.flush();\n onFinishQueue.flush();\n}\n\nfunction makeQueue() {\n let next = new Set();\n let current = next;\n return {\n add(fn) {\n pendingCount += current == next && !next.has(fn) ? 1 : 0;\n next.add(fn);\n },\n\n delete(fn) {\n pendingCount -= current == next && next.has(fn) ? 1 : 0;\n return next.delete(fn);\n },\n\n flush(arg) {\n if (current.size) {\n next = new Set();\n pendingCount -= current.size;\n eachSafely(current, fn => fn(arg) && next.add(fn));\n pendingCount += next.size;\n current = next;\n }\n }\n\n };\n}\n\nfunction eachSafely(values, each) {\n values.forEach(value => {\n try {\n each(value);\n } catch (e) {\n raf.catch(e);\n }\n });\n}\n\nconst __raf = {\n count() {\n return pendingCount;\n },\n\n isRunning() {\n return ts >= 0;\n },\n\n clear() {\n ts = -1;\n timeouts = [];\n onStartQueue = makeQueue();\n updateQueue = makeQueue();\n onFrameQueue = makeQueue();\n writeQueue = makeQueue();\n onFinishQueue = makeQueue();\n pendingCount = 0;\n }\n\n};\n\nexport { __raf, raf };\n","import { raf } from '@react-spring/rafz';\nexport { raf } from '@react-spring/rafz';\nimport { useRef, useEffect, useLayoutEffect, useState } from 'react';\n\nfunction noop() {}\nconst defineHidden = (obj, key, value) => Object.defineProperty(obj, key, {\n value,\n writable: true,\n configurable: true\n});\nconst is = {\n arr: Array.isArray,\n obj: a => !!a && a.constructor.name === 'Object',\n fun: a => typeof a === 'function',\n str: a => typeof a === 'string',\n num: a => typeof a === 'number',\n und: a => a === undefined\n};\nfunction isEqual(a, b) {\n if (is.arr(a)) {\n if (!is.arr(b) || a.length !== b.length) return false;\n\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n\n return true;\n }\n\n return a === b;\n}\nconst each = (obj, fn) => obj.forEach(fn);\nfunction eachProp(obj, fn, ctx) {\n if (is.arr(obj)) {\n for (let i = 0; i < obj.length; i++) {\n fn.call(ctx, obj[i], `${i}`);\n }\n\n return;\n }\n\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n fn.call(ctx, obj[key], key);\n }\n }\n}\nconst toArray = a => is.und(a) ? [] : is.arr(a) ? a : [a];\nfunction flush(queue, iterator) {\n if (queue.size) {\n const items = Array.from(queue);\n queue.clear();\n each(items, iterator);\n }\n}\nconst flushCalls = (queue, ...args) => flush(queue, fn => fn(...args));\nconst isSSR = () => typeof window === 'undefined' || !window.navigator || /ServerSideRendering|^Deno\\//.test(window.navigator.userAgent);\n\nlet createStringInterpolator$1;\nlet to;\nlet colors$1 = null;\nlet skipAnimation = false;\nlet willAdvance = noop;\nconst assign = globals => {\n if (globals.to) to = globals.to;\n if (globals.now) raf.now = globals.now;\n if (globals.colors !== undefined) colors$1 = globals.colors;\n if (globals.skipAnimation != null) skipAnimation = globals.skipAnimation;\n if (globals.createStringInterpolator) createStringInterpolator$1 = globals.createStringInterpolator;\n if (globals.requestAnimationFrame) raf.use(globals.requestAnimationFrame);\n if (globals.batchedUpdates) raf.batchedUpdates = globals.batchedUpdates;\n if (globals.willAdvance) willAdvance = globals.willAdvance;\n if (globals.frameLoop) raf.frameLoop = globals.frameLoop;\n};\n\nvar globals = /*#__PURE__*/Object.freeze({\n __proto__: null,\n get createStringInterpolator () { return createStringInterpolator$1; },\n get to () { return to; },\n get colors () { return colors$1; },\n get skipAnimation () { return skipAnimation; },\n get willAdvance () { return willAdvance; },\n assign: assign\n});\n\nconst startQueue = new Set();\nlet currentFrame = [];\nlet prevFrame = [];\nlet priority = 0;\nconst frameLoop = {\n get idle() {\n return !startQueue.size && !currentFrame.length;\n },\n\n start(animation) {\n if (priority > animation.priority) {\n startQueue.add(animation);\n raf.onStart(flushStartQueue);\n } else {\n startSafely(animation);\n raf(advance);\n }\n },\n\n advance,\n\n sort(animation) {\n if (priority) {\n raf.onFrame(() => frameLoop.sort(animation));\n } else {\n const prevIndex = currentFrame.indexOf(animation);\n\n if (~prevIndex) {\n currentFrame.splice(prevIndex, 1);\n startUnsafely(animation);\n }\n }\n },\n\n clear() {\n currentFrame = [];\n startQueue.clear();\n }\n\n};\n\nfunction flushStartQueue() {\n startQueue.forEach(startSafely);\n startQueue.clear();\n raf(advance);\n}\n\nfunction startSafely(animation) {\n if (!currentFrame.includes(animation)) startUnsafely(animation);\n}\n\nfunction startUnsafely(animation) {\n currentFrame.splice(findIndex(currentFrame, other => other.priority > animation.priority), 0, animation);\n}\n\nfunction advance(dt) {\n const nextFrame = prevFrame;\n\n for (let i = 0; i < currentFrame.length; i++) {\n const animation = currentFrame[i];\n priority = animation.priority;\n\n if (!animation.idle) {\n willAdvance(animation);\n animation.advance(dt);\n\n if (!animation.idle) {\n nextFrame.push(animation);\n }\n }\n }\n\n priority = 0;\n prevFrame = currentFrame;\n prevFrame.length = 0;\n currentFrame = nextFrame;\n return currentFrame.length > 0;\n}\n\nfunction findIndex(arr, test) {\n const index = arr.findIndex(test);\n return index < 0 ? arr.length : index;\n}\n\nconst clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\nconst colors = {\n transparent: 0x00000000,\n aliceblue: 0xf0f8ffff,\n antiquewhite: 0xfaebd7ff,\n aqua: 0x00ffffff,\n aquamarine: 0x7fffd4ff,\n azure: 0xf0ffffff,\n beige: 0xf5f5dcff,\n bisque: 0xffe4c4ff,\n black: 0x000000ff,\n blanchedalmond: 0xffebcdff,\n blue: 0x0000ffff,\n blueviolet: 0x8a2be2ff,\n brown: 0xa52a2aff,\n burlywood: 0xdeb887ff,\n burntsienna: 0xea7e5dff,\n cadetblue: 0x5f9ea0ff,\n chartreuse: 0x7fff00ff,\n chocolate: 0xd2691eff,\n coral: 0xff7f50ff,\n cornflowerblue: 0x6495edff,\n cornsilk: 0xfff8dcff,\n crimson: 0xdc143cff,\n cyan: 0x00ffffff,\n darkblue: 0x00008bff,\n darkcyan: 0x008b8bff,\n darkgoldenrod: 0xb8860bff,\n darkgray: 0xa9a9a9ff,\n darkgreen: 0x006400ff,\n darkgrey: 0xa9a9a9ff,\n darkkhaki: 0xbdb76bff,\n darkmagenta: 0x8b008bff,\n darkolivegreen: 0x556b2fff,\n darkorange: 0xff8c00ff,\n darkorchid: 0x9932ccff,\n darkred: 0x8b0000ff,\n darksalmon: 0xe9967aff,\n darkseagreen: 0x8fbc8fff,\n darkslateblue: 0x483d8bff,\n darkslategray: 0x2f4f4fff,\n darkslategrey: 0x2f4f4fff,\n darkturquoise: 0x00ced1ff,\n darkviolet: 0x9400d3ff,\n deeppink: 0xff1493ff,\n deepskyblue: 0x00bfffff,\n dimgray: 0x696969ff,\n dimgrey: 0x696969ff,\n dodgerblue: 0x1e90ffff,\n firebrick: 0xb22222ff,\n floralwhite: 0xfffaf0ff,\n forestgreen: 0x228b22ff,\n fuchsia: 0xff00ffff,\n gainsboro: 0xdcdcdcff,\n ghostwhite: 0xf8f8ffff,\n gold: 0xffd700ff,\n goldenrod: 0xdaa520ff,\n gray: 0x808080ff,\n green: 0x008000ff,\n greenyellow: 0xadff2fff,\n grey: 0x808080ff,\n honeydew: 0xf0fff0ff,\n hotpink: 0xff69b4ff,\n indianred: 0xcd5c5cff,\n indigo: 0x4b0082ff,\n ivory: 0xfffff0ff,\n khaki: 0xf0e68cff,\n lavender: 0xe6e6faff,\n lavenderblush: 0xfff0f5ff,\n lawngreen: 0x7cfc00ff,\n lemonchiffon: 0xfffacdff,\n lightblue: 0xadd8e6ff,\n lightcoral: 0xf08080ff,\n lightcyan: 0xe0ffffff,\n lightgoldenrodyellow: 0xfafad2ff,\n lightgray: 0xd3d3d3ff,\n lightgreen: 0x90ee90ff,\n lightgrey: 0xd3d3d3ff,\n lightpink: 0xffb6c1ff,\n lightsalmon: 0xffa07aff,\n lightseagreen: 0x20b2aaff,\n lightskyblue: 0x87cefaff,\n lightslategray: 0x778899ff,\n lightslategrey: 0x778899ff,\n lightsteelblue: 0xb0c4deff,\n lightyellow: 0xffffe0ff,\n lime: 0x00ff00ff,\n limegreen: 0x32cd32ff,\n linen: 0xfaf0e6ff,\n magenta: 0xff00ffff,\n maroon: 0x800000ff,\n mediumaquamarine: 0x66cdaaff,\n mediumblue: 0x0000cdff,\n mediumorchid: 0xba55d3ff,\n mediumpurple: 0x9370dbff,\n mediumseagreen: 0x3cb371ff,\n mediumslateblue: 0x7b68eeff,\n mediumspringgreen: 0x00fa9aff,\n mediumturquoise: 0x48d1ccff,\n mediumvioletred: 0xc71585ff,\n midnightblue: 0x191970ff,\n mintcream: 0xf5fffaff,\n mistyrose: 0xffe4e1ff,\n moccasin: 0xffe4b5ff,\n navajowhite: 0xffdeadff,\n navy: 0x000080ff,\n oldlace: 0xfdf5e6ff,\n olive: 0x808000ff,\n olivedrab: 0x6b8e23ff,\n orange: 0xffa500ff,\n orangered: 0xff4500ff,\n orchid: 0xda70d6ff,\n palegoldenrod: 0xeee8aaff,\n palegreen: 0x98fb98ff,\n paleturquoise: 0xafeeeeff,\n palevioletred: 0xdb7093ff,\n papayawhip: 0xffefd5ff,\n peachpuff: 0xffdab9ff,\n peru: 0xcd853fff,\n pink: 0xffc0cbff,\n plum: 0xdda0ddff,\n powderblue: 0xb0e0e6ff,\n purple: 0x800080ff,\n rebeccapurple: 0x663399ff,\n red: 0xff0000ff,\n rosybrown: 0xbc8f8fff,\n royalblue: 0x4169e1ff,\n saddlebrown: 0x8b4513ff,\n salmon: 0xfa8072ff,\n sandybrown: 0xf4a460ff,\n seagreen: 0x2e8b57ff,\n seashell: 0xfff5eeff,\n sienna: 0xa0522dff,\n silver: 0xc0c0c0ff,\n skyblue: 0x87ceebff,\n slateblue: 0x6a5acdff,\n slategray: 0x708090ff,\n slategrey: 0x708090ff,\n snow: 0xfffafaff,\n springgreen: 0x00ff7fff,\n steelblue: 0x4682b4ff,\n tan: 0xd2b48cff,\n teal: 0x008080ff,\n thistle: 0xd8bfd8ff,\n tomato: 0xff6347ff,\n turquoise: 0x40e0d0ff,\n violet: 0xee82eeff,\n wheat: 0xf5deb3ff,\n white: 0xffffffff,\n whitesmoke: 0xf5f5f5ff,\n yellow: 0xffff00ff,\n yellowgreen: 0x9acd32ff\n};\n\nconst NUMBER = '[-+]?\\\\d*\\\\.?\\\\d+';\nconst PERCENTAGE = NUMBER + '%';\n\nfunction call(...parts) {\n return '\\\\(\\\\s*(' + parts.join(')\\\\s*,\\\\s*(') + ')\\\\s*\\\\)';\n}\n\nconst rgb = new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER));\nconst rgba = new RegExp('rgba' + call(NUMBER, NUMBER, NUMBER, NUMBER));\nconst hsl = new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE));\nconst hsla = new RegExp('hsla' + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER));\nconst hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nconst hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nconst hex6 = /^#([0-9a-fA-F]{6})$/;\nconst hex8 = /^#([0-9a-fA-F]{8})$/;\n\nfunction normalizeColor(color) {\n let match;\n\n if (typeof color === 'number') {\n return color >>> 0 === color && color >= 0 && color <= 0xffffffff ? color : null;\n }\n\n if (match = hex6.exec(color)) return parseInt(match[1] + 'ff', 16) >>> 0;\n\n if (colors$1 && colors$1[color] !== undefined) {\n return colors$1[color];\n }\n\n if (match = rgb.exec(color)) {\n return (parse255(match[1]) << 24 | parse255(match[2]) << 16 | parse255(match[3]) << 8 | 0x000000ff) >>> 0;\n }\n\n if (match = rgba.exec(color)) {\n return (parse255(match[1]) << 24 | parse255(match[2]) << 16 | parse255(match[3]) << 8 | parse1(match[4])) >>> 0;\n }\n\n if (match = hex3.exec(color)) {\n return parseInt(match[1] + match[1] + match[2] + match[2] + match[3] + match[3] + 'ff', 16) >>> 0;\n }\n\n if (match = hex8.exec(color)) return parseInt(match[1], 16) >>> 0;\n\n if (match = hex4.exec(color)) {\n return parseInt(match[1] + match[1] + match[2] + match[2] + match[3] + match[3] + match[4] + match[4], 16) >>> 0;\n }\n\n if (match = hsl.exec(color)) {\n return (hslToRgb(parse360(match[1]), parsePercentage(match[2]), parsePercentage(match[3])) | 0x000000ff) >>> 0;\n }\n\n if (match = hsla.exec(color)) {\n return (hslToRgb(parse360(match[1]), parsePercentage(match[2]), parsePercentage(match[3])) | parse1(match[4])) >>> 0;\n }\n\n return null;\n}\n\nfunction hue2rgb(p, q, t) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\n\nfunction hslToRgb(h, s, l) {\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n const r = hue2rgb(p, q, h + 1 / 3);\n const g = hue2rgb(p, q, h);\n const b = hue2rgb(p, q, h - 1 / 3);\n return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;\n}\n\nfunction parse255(str) {\n const int = parseInt(str, 10);\n if (int < 0) return 0;\n if (int > 255) return 255;\n return int;\n}\n\nfunction parse360(str) {\n const int = parseFloat(str);\n return (int % 360 + 360) % 360 / 360;\n}\n\nfunction parse1(str) {\n const num = parseFloat(str);\n if (num < 0) return 0;\n if (num > 1) return 255;\n return Math.round(num * 255);\n}\n\nfunction parsePercentage(str) {\n const int = parseFloat(str);\n if (int < 0) return 0;\n if (int > 100) return 1;\n return int / 100;\n}\n\nfunction colorToRgba(input) {\n let int32Color = normalizeColor(input);\n if (int32Color === null) return input;\n int32Color = int32Color || 0;\n let r = (int32Color & 0xff000000) >>> 24;\n let g = (int32Color & 0x00ff0000) >>> 16;\n let b = (int32Color & 0x0000ff00) >>> 8;\n let a = (int32Color & 0x000000ff) / 255;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n}\n\nconst createInterpolator = (range, output, extrapolate) => {\n if (is.fun(range)) {\n return range;\n }\n\n if (is.arr(range)) {\n return createInterpolator({\n range,\n output: output,\n extrapolate\n });\n }\n\n if (is.str(range.output[0])) {\n return createStringInterpolator$1(range);\n }\n\n const config = range;\n const outputRange = config.output;\n const inputRange = config.range || [0, 1];\n const extrapolateLeft = config.extrapolateLeft || config.extrapolate || 'extend';\n const extrapolateRight = config.extrapolateRight || config.extrapolate || 'extend';\n\n const easing = config.easing || (t => t);\n\n return input => {\n const range = findRange(input, inputRange);\n return interpolate(input, inputRange[range], inputRange[range + 1], outputRange[range], outputRange[range + 1], easing, extrapolateLeft, extrapolateRight, config.map);\n };\n};\n\nfunction interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {\n let result = map ? map(input) : input;\n\n if (result < inputMin) {\n if (extrapolateLeft === 'identity') return result;else if (extrapolateLeft === 'clamp') result = inputMin;\n }\n\n if (result > inputMax) {\n if (extrapolateRight === 'identity') return result;else if (extrapolateRight === 'clamp') result = inputMax;\n }\n\n if (outputMin === outputMax) return outputMin;\n if (inputMin === inputMax) return input <= inputMin ? outputMin : outputMax;\n if (inputMin === -Infinity) result = -result;else if (inputMax === Infinity) result = result - inputMin;else result = (result - inputMin) / (inputMax - inputMin);\n result = easing(result);\n if (outputMin === -Infinity) result = -result;else if (outputMax === Infinity) result = result + outputMin;else result = result * (outputMax - outputMin) + outputMin;\n return result;\n}\n\nfunction findRange(input, inputRange) {\n for (var i = 1; i < inputRange.length - 1; ++i) if (inputRange[i] >= input) break;\n\n return i - 1;\n}\n\nconst steps = (steps, direction = 'end') => progress => {\n progress = direction === 'end' ? Math.min(progress, 0.999) : Math.max(progress, 0.001);\n const expanded = progress * steps;\n const rounded = direction === 'end' ? Math.floor(expanded) : Math.ceil(expanded);\n return clamp(0, 1, rounded / steps);\n};\n\nconst c1 = 1.70158;\nconst c2 = c1 * 1.525;\nconst c3 = c1 + 1;\nconst c4 = 2 * Math.PI / 3;\nconst c5 = 2 * Math.PI / 4.5;\n\nconst bounceOut = x => {\n const n1 = 7.5625;\n const d1 = 2.75;\n\n if (x < 1 / d1) {\n return n1 * x * x;\n } else if (x < 2 / d1) {\n return n1 * (x -= 1.5 / d1) * x + 0.75;\n } else if (x < 2.5 / d1) {\n return n1 * (x -= 2.25 / d1) * x + 0.9375;\n } else {\n return n1 * (x -= 2.625 / d1) * x + 0.984375;\n }\n};\n\nconst easings = {\n linear: x => x,\n easeInQuad: x => x * x,\n easeOutQuad: x => 1 - (1 - x) * (1 - x),\n easeInOutQuad: x => x < 0.5 ? 2 * x * x : 1 - Math.pow(-2 * x + 2, 2) / 2,\n easeInCubic: x => x * x * x,\n easeOutCubic: x => 1 - Math.pow(1 - x, 3),\n easeInOutCubic: x => x < 0.5 ? 4 * x * x * x : 1 - Math.pow(-2 * x + 2, 3) / 2,\n easeInQuart: x => x * x * x * x,\n easeOutQuart: x => 1 - Math.pow(1 - x, 4),\n easeInOutQuart: x => x < 0.5 ? 8 * x * x * x * x : 1 - Math.pow(-2 * x + 2, 4) / 2,\n easeInQuint: x => x * x * x * x * x,\n easeOutQuint: x => 1 - Math.pow(1 - x, 5),\n easeInOutQuint: x => x < 0.5 ? 16 * x * x * x * x * x : 1 - Math.pow(-2 * x + 2, 5) / 2,\n easeInSine: x => 1 - Math.cos(x * Math.PI / 2),\n easeOutSine: x => Math.sin(x * Math.PI / 2),\n easeInOutSine: x => -(Math.cos(Math.PI * x) - 1) / 2,\n easeInExpo: x => x === 0 ? 0 : Math.pow(2, 10 * x - 10),\n easeOutExpo: x => x === 1 ? 1 : 1 - Math.pow(2, -10 * x),\n easeInOutExpo: x => x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? Math.pow(2, 20 * x - 10) / 2 : (2 - Math.pow(2, -20 * x + 10)) / 2,\n easeInCirc: x => 1 - Math.sqrt(1 - Math.pow(x, 2)),\n easeOutCirc: x => Math.sqrt(1 - Math.pow(x - 1, 2)),\n easeInOutCirc: x => x < 0.5 ? (1 - Math.sqrt(1 - Math.pow(2 * x, 2))) / 2 : (Math.sqrt(1 - Math.pow(-2 * x + 2, 2)) + 1) / 2,\n easeInBack: x => c3 * x * x * x - c1 * x * x,\n easeOutBack: x => 1 + c3 * Math.pow(x - 1, 3) + c1 * Math.pow(x - 1, 2),\n easeInOutBack: x => x < 0.5 ? Math.pow(2 * x, 2) * ((c2 + 1) * 2 * x - c2) / 2 : (Math.pow(2 * x - 2, 2) * ((c2 + 1) * (x * 2 - 2) + c2) + 2) / 2,\n easeInElastic: x => x === 0 ? 0 : x === 1 ? 1 : -Math.pow(2, 10 * x - 10) * Math.sin((x * 10 - 10.75) * c4),\n easeOutElastic: x => x === 0 ? 0 : x === 1 ? 1 : Math.pow(2, -10 * x) * Math.sin((x * 10 - 0.75) * c4) + 1,\n easeInOutElastic: x => x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? -(Math.pow(2, 20 * x - 10) * Math.sin((20 * x - 11.125) * c5)) / 2 : Math.pow(2, -20 * x + 10) * Math.sin((20 * x - 11.125) * c5) / 2 + 1,\n easeInBounce: x => 1 - bounceOut(1 - x),\n easeOutBounce: bounceOut,\n easeInOutBounce: x => x < 0.5 ? (1 - bounceOut(1 - 2 * x)) / 2 : (1 + bounceOut(2 * x - 1)) / 2,\n steps\n};\n\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nconst $get = Symbol.for('FluidValue.get');\nconst $observers = Symbol.for('FluidValue.observers');\n\nconst hasFluidValue = arg => Boolean(arg && arg[$get]);\n\nconst getFluidValue = arg => arg && arg[$get] ? arg[$get]() : arg;\n\nconst getFluidObservers = target => target[$observers] || null;\n\nfunction callFluidObserver(observer, event) {\n if (observer.eventObserved) {\n observer.eventObserved(event);\n } else {\n observer(event);\n }\n}\n\nfunction callFluidObservers(target, event) {\n let observers = target[$observers];\n\n if (observers) {\n observers.forEach(observer => {\n callFluidObserver(observer, event);\n });\n }\n}\n\nclass FluidValue {\n constructor(get) {\n this[$get] = void 0;\n this[$observers] = void 0;\n\n if (!get && !(get = this.get)) {\n throw Error('Unknown getter');\n }\n\n setFluidGetter(this, get);\n }\n\n}\n\nconst setFluidGetter = (target, get) => setHidden(target, $get, get);\n\nfunction addFluidObserver(target, observer) {\n if (target[$get]) {\n let observers = target[$observers];\n\n if (!observers) {\n setHidden(target, $observers, observers = new Set());\n }\n\n if (!observers.has(observer)) {\n observers.add(observer);\n\n if (target.observerAdded) {\n target.observerAdded(observers.size, observer);\n }\n }\n }\n\n return observer;\n}\n\nfunction removeFluidObserver(target, observer) {\n let observers = target[$observers];\n\n if (observers && observers.has(observer)) {\n const count = observers.size - 1;\n\n if (count) {\n observers.delete(observer);\n } else {\n target[$observers] = null;\n }\n\n if (target.observerRemoved) {\n target.observerRemoved(count, observer);\n }\n }\n}\n\nconst setHidden = (target, key, value) => Object.defineProperty(target, key, {\n value,\n writable: true,\n configurable: true\n});\n\nconst numberRegex = /[+\\-]?(?:0|[1-9]\\d*)(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g;\nconst colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\\((-?\\d+%?[,\\s]+){2,3}\\s*[\\d\\.]+%?\\))/gi;\nconst unitRegex = new RegExp(`(${numberRegex.source})(%|[a-z]+)`, 'i');\nconst rgbaRegex = /rgba\\(([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+)\\)/gi;\nconst cssVariableRegex = /var\\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\\)/;\n\nconst variableToRgba = input => {\n const [token, fallback] = parseCSSVariable(input);\n\n if (!token || isSSR()) {\n return input;\n }\n\n const value = window.getComputedStyle(document.documentElement).getPropertyValue(token);\n\n if (value) {\n return value.trim();\n } else if (fallback && fallback.startsWith('--')) {\n const _value = window.getComputedStyle(document.documentElement).getPropertyValue(fallback);\n\n if (_value) {\n return _value;\n } else {\n return input;\n }\n } else if (fallback && cssVariableRegex.test(fallback)) {\n return variableToRgba(fallback);\n } else if (fallback) {\n return fallback;\n }\n\n return input;\n};\n\nconst parseCSSVariable = current => {\n const match = cssVariableRegex.exec(current);\n if (!match) return [,];\n const [, token, fallback] = match;\n return [token, fallback];\n};\n\nlet namedColorRegex;\n\nconst rgbaRound = (_, p1, p2, p3, p4) => `rgba(${Math.round(p1)}, ${Math.round(p2)}, ${Math.round(p3)}, ${p4})`;\n\nconst createStringInterpolator = config => {\n if (!namedColorRegex) namedColorRegex = colors$1 ? new RegExp(`(${Object.keys(colors$1).join('|')})(?!\\\\w)`, 'g') : /^\\b$/;\n const output = config.output.map(value => {\n return getFluidValue(value).replace(cssVariableRegex, variableToRgba).replace(colorRegex, colorToRgba).replace(namedColorRegex, colorToRgba);\n });\n const keyframes = output.map(value => value.match(numberRegex).map(Number));\n const outputRanges = keyframes[0].map((_, i) => keyframes.map(values => {\n if (!(i in values)) {\n throw Error('The arity of each \"output\" value must be equal');\n }\n\n return values[i];\n }));\n const interpolators = outputRanges.map(output => createInterpolator(_extends({}, config, {\n output\n })));\n return input => {\n var _output$find;\n\n const missingUnit = !unitRegex.test(output[0]) && ((_output$find = output.find(value => unitRegex.test(value))) == null ? void 0 : _output$find.replace(numberRegex, ''));\n let i = 0;\n return output[0].replace(numberRegex, () => `${interpolators[i++](input)}${missingUnit || ''}`).replace(rgbaRegex, rgbaRound);\n };\n};\n\nconst prefix = 'react-spring: ';\nconst once = fn => {\n const func = fn;\n let called = false;\n\n if (typeof func != 'function') {\n throw new TypeError(`${prefix}once requires a function parameter`);\n }\n\n return (...args) => {\n if (!called) {\n func(...args);\n called = true;\n }\n };\n};\nconst warnInterpolate = once(console.warn);\nfunction deprecateInterpolate() {\n warnInterpolate(`${prefix}The \"interpolate\" function is deprecated in v9 (use \"to\" instead)`);\n}\nconst warnDirectCall = once(console.warn);\nfunction deprecateDirectCall() {\n warnDirectCall(`${prefix}Directly calling start instead of using the api object is deprecated in v9 (use \".start\" instead), this will be removed in later 0.X.0 versions`);\n}\n\nfunction isAnimatedString(value) {\n return is.str(value) && (value[0] == '#' || /\\d/.test(value) || !isSSR() && cssVariableRegex.test(value) || value in (colors$1 || {}));\n}\n\nlet observer;\nconst resizeHandlers = new WeakMap();\n\nconst handleObservation = entries => entries.forEach(({\n target,\n contentRect\n}) => {\n var _resizeHandlers$get;\n\n return (_resizeHandlers$get = resizeHandlers.get(target)) == null ? void 0 : _resizeHandlers$get.forEach(handler => handler(contentRect));\n});\n\nfunction resizeElement(handler, target) {\n if (!observer) {\n if (typeof ResizeObserver !== 'undefined') {\n observer = new ResizeObserver(handleObservation);\n }\n }\n\n let elementHandlers = resizeHandlers.get(target);\n\n if (!elementHandlers) {\n elementHandlers = new Set();\n resizeHandlers.set(target, elementHandlers);\n }\n\n elementHandlers.add(handler);\n\n if (observer) {\n observer.observe(target);\n }\n\n return () => {\n const elementHandlers = resizeHandlers.get(target);\n if (!elementHandlers) return;\n elementHandlers.delete(handler);\n\n if (!elementHandlers.size && observer) {\n observer.unobserve(target);\n }\n };\n}\n\nconst listeners = new Set();\nlet cleanupWindowResizeHandler;\n\nconst createResizeHandler = () => {\n const handleResize = () => {\n listeners.forEach(callback => callback({\n width: window.innerWidth,\n height: window.innerHeight\n }));\n };\n\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n};\n\nconst resizeWindow = callback => {\n listeners.add(callback);\n\n if (!cleanupWindowResizeHandler) {\n cleanupWindowResizeHandler = createResizeHandler();\n }\n\n return () => {\n listeners.delete(callback);\n\n if (!listeners.size && cleanupWindowResizeHandler) {\n cleanupWindowResizeHandler();\n cleanupWindowResizeHandler = undefined;\n }\n };\n};\n\nconst onResize = (callback, {\n container: _container = document.documentElement\n} = {}) => {\n if (_container === document.documentElement) {\n return resizeWindow(callback);\n } else {\n return resizeElement(callback, _container);\n }\n};\n\nconst progress = (min, max, value) => max - min === 0 ? 1 : (value - min) / (max - min);\n\nconst SCROLL_KEYS = {\n x: {\n length: 'Width',\n position: 'Left'\n },\n y: {\n length: 'Height',\n position: 'Top'\n }\n};\nclass ScrollHandler {\n constructor(callback, container) {\n this.callback = void 0;\n this.container = void 0;\n this.info = void 0;\n\n this.createAxis = () => ({\n current: 0,\n progress: 0,\n scrollLength: 0\n });\n\n this.updateAxis = axisName => {\n const axis = this.info[axisName];\n const {\n length,\n position\n } = SCROLL_KEYS[axisName];\n axis.current = this.container[`scroll${position}`];\n axis.scrollLength = this.container['scroll' + length] - this.container['client' + length];\n axis.progress = progress(0, axis.scrollLength, axis.current);\n };\n\n this.update = () => {\n this.updateAxis('x');\n this.updateAxis('y');\n };\n\n this.sendEvent = () => {\n this.callback(this.info);\n };\n\n this.advance = () => {\n this.update();\n this.sendEvent();\n };\n\n this.callback = callback;\n this.container = container;\n this.info = {\n time: 0,\n x: this.createAxis(),\n y: this.createAxis()\n };\n }\n\n}\n\nconst scrollListeners = new WeakMap();\nconst resizeListeners = new WeakMap();\nconst onScrollHandlers = new WeakMap();\n\nconst getTarget = container => container === document.documentElement ? window : container;\n\nconst onScroll = (callback, {\n container: _container = document.documentElement\n} = {}) => {\n let containerHandlers = onScrollHandlers.get(_container);\n\n if (!containerHandlers) {\n containerHandlers = new Set();\n onScrollHandlers.set(_container, containerHandlers);\n }\n\n const containerHandler = new ScrollHandler(callback, _container);\n containerHandlers.add(containerHandler);\n\n if (!scrollListeners.has(_container)) {\n const listener = () => {\n var _containerHandlers;\n\n (_containerHandlers = containerHandlers) == null ? void 0 : _containerHandlers.forEach(handler => handler.advance());\n return true;\n };\n\n scrollListeners.set(_container, listener);\n const target = getTarget(_container);\n window.addEventListener('resize', listener, {\n passive: true\n });\n\n if (_container !== document.documentElement) {\n resizeListeners.set(_container, onResize(listener, {\n container: _container\n }));\n }\n\n target.addEventListener('scroll', listener, {\n passive: true\n });\n }\n\n const animateScroll = scrollListeners.get(_container);\n raf(animateScroll);\n return () => {\n raf.cancel(animateScroll);\n const containerHandlers = onScrollHandlers.get(_container);\n if (!containerHandlers) return;\n containerHandlers.delete(containerHandler);\n if (containerHandlers.size) return;\n const listener = scrollListeners.get(_container);\n scrollListeners.delete(_container);\n\n if (listener) {\n var _resizeListeners$get;\n\n getTarget(_container).removeEventListener('scroll', listener);\n window.removeEventListener('resize', listener);\n (_resizeListeners$get = resizeListeners.get(_container)) == null ? void 0 : _resizeListeners$get();\n }\n };\n};\n\nfunction useConstant(init) {\n const ref = useRef(null);\n\n if (ref.current === null) {\n ref.current = init();\n }\n\n return ref.current;\n}\n\nconst useIsomorphicLayoutEffect = isSSR() ? useEffect : useLayoutEffect;\n\nconst useIsMounted = () => {\n const isMounted = useRef(false);\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return isMounted;\n};\n\nfunction useForceUpdate() {\n const update = useState()[1];\n const isMounted = useIsMounted();\n return () => {\n if (isMounted.current) {\n update(Math.random());\n }\n };\n}\n\nfunction useMemoOne(getResult, inputs) {\n const [initial] = useState(() => ({\n inputs,\n result: getResult()\n }));\n const committed = useRef();\n const prevCache = committed.current;\n let cache = prevCache;\n\n if (cache) {\n const useCache = Boolean(inputs && cache.inputs && areInputsEqual(inputs, cache.inputs));\n\n if (!useCache) {\n cache = {\n inputs,\n result: getResult()\n };\n }\n } else {\n cache = initial;\n }\n\n useEffect(() => {\n committed.current = cache;\n\n if (prevCache == initial) {\n initial.inputs = initial.result = undefined;\n }\n }, [cache]);\n return cache.result;\n}\n\nfunction areInputsEqual(next, prev) {\n if (next.length !== prev.length) {\n return false;\n }\n\n for (let i = 0; i < next.length; i++) {\n if (next[i] !== prev[i]) {\n return false;\n }\n }\n\n return true;\n}\n\nconst useOnce = effect => useEffect(effect, emptyDeps);\nconst emptyDeps = [];\n\nfunction usePrev(value) {\n const prevRef = useRef();\n useEffect(() => {\n prevRef.current = value;\n });\n return prevRef.current;\n}\n\nconst useReducedMotion = () => {\n const [reducedMotion, setReducedMotion] = useState(null);\n useIsomorphicLayoutEffect(() => {\n const mql = window.matchMedia('(prefers-reduced-motion)');\n\n const handleMediaChange = e => {\n setReducedMotion(e.matches);\n assign({\n skipAnimation: e.matches\n });\n };\n\n handleMediaChange(mql);\n mql.addEventListener('change', handleMediaChange);\n return () => {\n mql.removeEventListener('change', handleMediaChange);\n };\n }, []);\n return reducedMotion;\n};\n\nexport { FluidValue, globals as Globals, addFluidObserver, callFluidObserver, callFluidObservers, clamp, colorToRgba, colors, createInterpolator, createStringInterpolator, defineHidden, deprecateDirectCall, deprecateInterpolate, each, eachProp, easings, flush, flushCalls, frameLoop, getFluidObservers, getFluidValue, hasFluidValue, hex3, hex4, hex6, hex8, hsl, hsla, is, isAnimatedString, isEqual, isSSR, noop, onResize, onScroll, once, prefix, removeFluidObserver, rgb, rgba, setFluidGetter, toArray, useConstant, useForceUpdate, useIsomorphicLayoutEffect, useMemoOne, useOnce, usePrev, useReducedMotion };\n","import { defineHidden, is, createInterpolator, eachProp, hasFluidValue, getFluidValue, each, isAnimatedString, useForceUpdate, useIsomorphicLayoutEffect, addFluidObserver, removeFluidObserver, raf, useOnce } from '@react-spring/shared';\nimport * as React from 'react';\nimport { forwardRef, useRef, useCallback, useEffect } from 'react';\n\nconst $node = Symbol.for('Animated:node');\nconst isAnimated = value => !!value && value[$node] === value;\nconst getAnimated = owner => owner && owner[$node];\nconst setAnimated = (owner, node) => defineHidden(owner, $node, node);\nconst getPayload = owner => owner && owner[$node] && owner[$node].getPayload();\nclass Animated {\n constructor() {\n this.payload = void 0;\n setAnimated(this, this);\n }\n\n getPayload() {\n return this.payload || [];\n }\n\n}\n\nclass AnimatedValue extends Animated {\n constructor(_value) {\n super();\n this.done = true;\n this.elapsedTime = void 0;\n this.lastPosition = void 0;\n this.lastVelocity = void 0;\n this.v0 = void 0;\n this.durationProgress = 0;\n this._value = _value;\n\n if (is.num(this._value)) {\n this.lastPosition = this._value;\n }\n }\n\n static create(value) {\n return new AnimatedValue(value);\n }\n\n getPayload() {\n return [this];\n }\n\n getValue() {\n return this._value;\n }\n\n setValue(value, step) {\n if (is.num(value)) {\n this.lastPosition = value;\n\n if (step) {\n value = Math.round(value / step) * step;\n\n if (this.done) {\n this.lastPosition = value;\n }\n }\n }\n\n if (this._value === value) {\n return false;\n }\n\n this._value = value;\n return true;\n }\n\n reset() {\n const {\n done\n } = this;\n this.done = false;\n\n if (is.num(this._value)) {\n this.elapsedTime = 0;\n this.durationProgress = 0;\n this.lastPosition = this._value;\n if (done) this.lastVelocity = null;\n this.v0 = null;\n }\n }\n\n}\n\nclass AnimatedString extends AnimatedValue {\n constructor(value) {\n super(0);\n this._string = null;\n this._toString = void 0;\n this._toString = createInterpolator({\n output: [value, value]\n });\n }\n\n static create(value) {\n return new AnimatedString(value);\n }\n\n getValue() {\n let value = this._string;\n return value == null ? this._string = this._toString(this._value) : value;\n }\n\n setValue(value) {\n if (is.str(value)) {\n if (value == this._string) {\n return false;\n }\n\n this._string = value;\n this._value = 1;\n } else if (super.setValue(value)) {\n this._string = null;\n } else {\n return false;\n }\n\n return true;\n }\n\n reset(goal) {\n if (goal) {\n this._toString = createInterpolator({\n output: [this.getValue(), goal]\n });\n }\n\n this._value = 0;\n super.reset();\n }\n\n}\n\nconst TreeContext = {\n dependencies: null\n};\n\nclass AnimatedObject extends Animated {\n constructor(source) {\n super();\n this.source = source;\n this.setValue(source);\n }\n\n getValue(animated) {\n const values = {};\n eachProp(this.source, (source, key) => {\n if (isAnimated(source)) {\n values[key] = source.getValue(animated);\n } else if (hasFluidValue(source)) {\n values[key] = getFluidValue(source);\n } else if (!animated) {\n values[key] = source;\n }\n });\n return values;\n }\n\n setValue(source) {\n this.source = source;\n this.payload = this._makePayload(source);\n }\n\n reset() {\n if (this.payload) {\n each(this.payload, node => node.reset());\n }\n }\n\n _makePayload(source) {\n if (source) {\n const payload = new Set();\n eachProp(source, this._addToPayload, payload);\n return Array.from(payload);\n }\n }\n\n _addToPayload(source) {\n if (TreeContext.dependencies && hasFluidValue(source)) {\n TreeContext.dependencies.add(source);\n }\n\n const payload = getPayload(source);\n\n if (payload) {\n each(payload, node => this.add(node));\n }\n }\n\n}\n\nclass AnimatedArray extends AnimatedObject {\n constructor(source) {\n super(source);\n }\n\n static create(source) {\n return new AnimatedArray(source);\n }\n\n getValue() {\n return this.source.map(node => node.getValue());\n }\n\n setValue(source) {\n const payload = this.getPayload();\n\n if (source.length == payload.length) {\n return payload.map((node, i) => node.setValue(source[i])).some(Boolean);\n }\n\n super.setValue(source.map(makeAnimated));\n return true;\n }\n\n}\n\nfunction makeAnimated(value) {\n const nodeType = isAnimatedString(value) ? AnimatedString : AnimatedValue;\n return nodeType.create(value);\n}\n\nfunction getAnimatedType(value) {\n const parentNode = getAnimated(value);\n return parentNode ? parentNode.constructor : is.arr(value) ? AnimatedArray : isAnimatedString(value) ? AnimatedString : AnimatedValue;\n}\n\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nconst withAnimated = (Component, host) => {\n const hasInstance = !is.fun(Component) || Component.prototype && Component.prototype.isReactComponent;\n return forwardRef((givenProps, givenRef) => {\n const instanceRef = useRef(null);\n const ref = hasInstance && useCallback(value => {\n instanceRef.current = updateRef(givenRef, value);\n }, [givenRef]);\n const [props, deps] = getAnimatedState(givenProps, host);\n const forceUpdate = useForceUpdate();\n\n const callback = () => {\n const instance = instanceRef.current;\n\n if (hasInstance && !instance) {\n return;\n }\n\n const didUpdate = instance ? host.applyAnimatedValues(instance, props.getValue(true)) : false;\n\n if (didUpdate === false) {\n forceUpdate();\n }\n };\n\n const observer = new PropsObserver(callback, deps);\n const observerRef = useRef();\n useIsomorphicLayoutEffect(() => {\n observerRef.current = observer;\n each(deps, dep => addFluidObserver(dep, observer));\n return () => {\n if (observerRef.current) {\n each(observerRef.current.deps, dep => removeFluidObserver(dep, observerRef.current));\n raf.cancel(observerRef.current.update);\n }\n };\n });\n useEffect(callback, []);\n useOnce(() => () => {\n const observer = observerRef.current;\n each(observer.deps, dep => removeFluidObserver(dep, observer));\n });\n const usedProps = host.getComponentProps(props.getValue());\n return React.createElement(Component, _extends({}, usedProps, {\n ref: ref\n }));\n });\n};\n\nclass PropsObserver {\n constructor(update, deps) {\n this.update = update;\n this.deps = deps;\n }\n\n eventObserved(event) {\n if (event.type == 'change') {\n raf.write(this.update);\n }\n }\n\n}\n\nfunction getAnimatedState(props, host) {\n const dependencies = new Set();\n TreeContext.dependencies = dependencies;\n if (props.style) props = _extends({}, props, {\n style: host.createAnimatedStyle(props.style)\n });\n props = new AnimatedObject(props);\n TreeContext.dependencies = null;\n return [props, dependencies];\n}\n\nfunction updateRef(ref, value) {\n if (ref) {\n if (is.fun(ref)) ref(value);else ref.current = value;\n }\n\n return value;\n}\n\nconst cacheKey = Symbol.for('AnimatedComponent');\nconst createHost = (components, {\n applyAnimatedValues: _applyAnimatedValues = () => false,\n createAnimatedStyle: _createAnimatedStyle = style => new AnimatedObject(style),\n getComponentProps: _getComponentProps = props => props\n} = {}) => {\n const hostConfig = {\n applyAnimatedValues: _applyAnimatedValues,\n createAnimatedStyle: _createAnimatedStyle,\n getComponentProps: _getComponentProps\n };\n\n const animated = Component => {\n const displayName = getDisplayName(Component) || 'Anonymous';\n\n if (is.str(Component)) {\n Component = animated[Component] || (animated[Component] = withAnimated(Component, hostConfig));\n } else {\n Component = Component[cacheKey] || (Component[cacheKey] = withAnimated(Component, hostConfig));\n }\n\n Component.displayName = `Animated(${displayName})`;\n return Component;\n };\n\n eachProp(components, (Component, key) => {\n if (is.arr(components)) {\n key = getDisplayName(Component);\n }\n\n animated[key] = animated(Component);\n });\n return {\n animated\n };\n};\n\nconst getDisplayName = arg => is.str(arg) ? arg : arg && is.str(arg.displayName) ? arg.displayName : is.fun(arg) && arg.name || null;\n\nexport { Animated, AnimatedArray, AnimatedObject, AnimatedString, AnimatedValue, createHost, getAnimated, getAnimatedType, getPayload, isAnimated, setAnimated };\n","import { eachProp, is, toArray, getFluidValue, isAnimatedString, Globals, useIsomorphicLayoutEffect, each, easings, raf, flush, FluidValue, deprecateInterpolate, callFluidObservers, frameLoop, hasFluidValue, flushCalls, isEqual, getFluidObservers, addFluidObserver, removeFluidObserver, noop, useMemoOne, deprecateDirectCall, useForceUpdate, usePrev, useOnce, useConstant, onScroll, onResize, createInterpolator, createStringInterpolator } from '@react-spring/shared';\nexport { Globals, createInterpolator, easings, useIsomorphicLayoutEffect, useReducedMotion } from '@react-spring/shared';\nimport * as React from 'react';\nimport { useContext, useMemo, useRef, useState } from 'react';\nimport { getAnimated, AnimatedValue, getPayload, AnimatedString, getAnimatedType, setAnimated } from '@react-spring/animated';\nexport * from '@react-spring/types/animated';\nexport * from '@react-spring/types/interpolation';\n\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nfunction callProp(value, ...args) {\n return is.fun(value) ? value(...args) : value;\n}\nconst matchProp = (value, key) => value === true || !!(key && value && (is.fun(value) ? value(key) : toArray(value).includes(key)));\nconst resolveProp = (prop, key) => is.obj(prop) ? key && prop[key] : prop;\nconst getDefaultProp = (props, key) => props.default === true ? props[key] : props.default ? props.default[key] : undefined;\n\nconst noopTransform = value => value;\n\nconst getDefaultProps = (props, transform = noopTransform) => {\n let keys = DEFAULT_PROPS;\n\n if (props.default && props.default !== true) {\n props = props.default;\n keys = Object.keys(props);\n }\n\n const defaults = {};\n\n for (const key of keys) {\n const value = transform(props[key], key);\n\n if (!is.und(value)) {\n defaults[key] = value;\n }\n }\n\n return defaults;\n};\nconst DEFAULT_PROPS = ['config', 'onProps', 'onStart', 'onChange', 'onPause', 'onResume', 'onRest'];\nconst RESERVED_PROPS = {\n config: 1,\n from: 1,\n to: 1,\n ref: 1,\n loop: 1,\n reset: 1,\n pause: 1,\n cancel: 1,\n reverse: 1,\n immediate: 1,\n default: 1,\n delay: 1,\n onProps: 1,\n onStart: 1,\n onChange: 1,\n onPause: 1,\n onResume: 1,\n onRest: 1,\n onResolve: 1,\n items: 1,\n trail: 1,\n sort: 1,\n expires: 1,\n initial: 1,\n enter: 1,\n update: 1,\n leave: 1,\n children: 1,\n onDestroyed: 1,\n keys: 1,\n callId: 1,\n parentId: 1\n};\n\nfunction getForwardProps(props) {\n const forward = {};\n let count = 0;\n eachProp(props, (value, prop) => {\n if (!RESERVED_PROPS[prop]) {\n forward[prop] = value;\n count++;\n }\n });\n\n if (count) {\n return forward;\n }\n}\n\nfunction inferTo(props) {\n const to = getForwardProps(props);\n\n if (to) {\n const out = {\n to\n };\n eachProp(props, (val, key) => key in to || (out[key] = val));\n return out;\n }\n\n return _extends({}, props);\n}\nfunction computeGoal(value) {\n value = getFluidValue(value);\n return is.arr(value) ? value.map(computeGoal) : isAnimatedString(value) ? Globals.createStringInterpolator({\n range: [0, 1],\n output: [value, value]\n })(1) : value;\n}\nfunction hasProps(props) {\n for (const _ in props) return true;\n\n return false;\n}\nfunction isAsyncTo(to) {\n return is.fun(to) || is.arr(to) && is.obj(to[0]);\n}\nfunction detachRefs(ctrl, ref) {\n var _ctrl$ref;\n\n (_ctrl$ref = ctrl.ref) == null ? void 0 : _ctrl$ref.delete(ctrl);\n ref == null ? void 0 : ref.delete(ctrl);\n}\nfunction replaceRef(ctrl, ref) {\n if (ref && ctrl.ref !== ref) {\n var _ctrl$ref2;\n\n (_ctrl$ref2 = ctrl.ref) == null ? void 0 : _ctrl$ref2.delete(ctrl);\n ref.add(ctrl);\n ctrl.ref = ref;\n }\n}\n\nfunction useChain(refs, timeSteps, timeFrame = 1000) {\n useIsomorphicLayoutEffect(() => {\n if (timeSteps) {\n let prevDelay = 0;\n each(refs, (ref, i) => {\n const controllers = ref.current;\n\n if (controllers.length) {\n let delay = timeFrame * timeSteps[i];\n if (isNaN(delay)) delay = prevDelay;else prevDelay = delay;\n each(controllers, ctrl => {\n each(ctrl.queue, props => {\n const memoizedDelayProp = props.delay;\n\n props.delay = key => delay + callProp(memoizedDelayProp || 0, key);\n });\n });\n ref.start();\n }\n });\n } else {\n let p = Promise.resolve();\n each(refs, ref => {\n const controllers = ref.current;\n\n if (controllers.length) {\n const queues = controllers.map(ctrl => {\n const q = ctrl.queue;\n ctrl.queue = [];\n return q;\n });\n p = p.then(() => {\n each(controllers, (ctrl, i) => each(queues[i] || [], update => ctrl.queue.push(update)));\n return Promise.all(ref.start());\n });\n }\n });\n }\n });\n}\n\nconst config = {\n default: {\n tension: 170,\n friction: 26\n },\n gentle: {\n tension: 120,\n friction: 14\n },\n wobbly: {\n tension: 180,\n friction: 12\n },\n stiff: {\n tension: 210,\n friction: 20\n },\n slow: {\n tension: 280,\n friction: 60\n },\n molasses: {\n tension: 280,\n friction: 120\n }\n};\n\nconst defaults = _extends({}, config.default, {\n mass: 1,\n damping: 1,\n easing: easings.linear,\n clamp: false\n});\n\nclass AnimationConfig {\n constructor() {\n this.tension = void 0;\n this.friction = void 0;\n this.frequency = void 0;\n this.damping = void 0;\n this.mass = void 0;\n this.velocity = 0;\n this.restVelocity = void 0;\n this.precision = void 0;\n this.progress = void 0;\n this.duration = void 0;\n this.easing = void 0;\n this.clamp = void 0;\n this.bounce = void 0;\n this.decay = void 0;\n this.round = void 0;\n Object.assign(this, defaults);\n }\n\n}\nfunction mergeConfig(config, newConfig, defaultConfig) {\n if (defaultConfig) {\n defaultConfig = _extends({}, defaultConfig);\n sanitizeConfig(defaultConfig, newConfig);\n newConfig = _extends({}, defaultConfig, newConfig);\n }\n\n sanitizeConfig(config, newConfig);\n Object.assign(config, newConfig);\n\n for (const key in defaults) {\n if (config[key] == null) {\n config[key] = defaults[key];\n }\n }\n\n let {\n mass,\n frequency,\n damping\n } = config;\n\n if (!is.und(frequency)) {\n if (frequency < 0.01) frequency = 0.01;\n if (damping < 0) damping = 0;\n config.tension = Math.pow(2 * Math.PI / frequency, 2) * mass;\n config.friction = 4 * Math.PI * damping * mass / frequency;\n }\n\n return config;\n}\n\nfunction sanitizeConfig(config, props) {\n if (!is.und(props.decay)) {\n config.duration = undefined;\n } else {\n const isTensionConfig = !is.und(props.tension) || !is.und(props.friction);\n\n if (isTensionConfig || !is.und(props.frequency) || !is.und(props.damping) || !is.und(props.mass)) {\n config.duration = undefined;\n config.decay = undefined;\n }\n\n if (isTensionConfig) {\n config.frequency = undefined;\n }\n }\n}\n\nconst emptyArray = [];\nclass Animation {\n constructor() {\n this.changed = false;\n this.values = emptyArray;\n this.toValues = null;\n this.fromValues = emptyArray;\n this.to = void 0;\n this.from = void 0;\n this.config = new AnimationConfig();\n this.immediate = false;\n }\n\n}\n\nfunction scheduleProps(callId, {\n key,\n props,\n defaultProps,\n state,\n actions\n}) {\n return new Promise((resolve, reject) => {\n var _props$cancel;\n\n let delay;\n let timeout;\n let cancel = matchProp((_props$cancel = props.cancel) != null ? _props$cancel : defaultProps == null ? void 0 : defaultProps.cancel, key);\n\n if (cancel) {\n onStart();\n } else {\n if (!is.und(props.pause)) {\n state.paused = matchProp(props.pause, key);\n }\n\n let pause = defaultProps == null ? void 0 : defaultProps.pause;\n\n if (pause !== true) {\n pause = state.paused || matchProp(pause, key);\n }\n\n delay = callProp(props.delay || 0, key);\n\n if (pause) {\n state.resumeQueue.add(onResume);\n actions.pause();\n } else {\n actions.resume();\n onResume();\n }\n }\n\n function onPause() {\n state.resumeQueue.add(onResume);\n state.timeouts.delete(timeout);\n timeout.cancel();\n delay = timeout.time - raf.now();\n }\n\n function onResume() {\n if (delay > 0 && !Globals.skipAnimation) {\n state.delayed = true;\n timeout = raf.setTimeout(onStart, delay);\n state.pauseQueue.add(onPause);\n state.timeouts.add(timeout);\n } else {\n onStart();\n }\n }\n\n function onStart() {\n if (state.delayed) {\n state.delayed = false;\n }\n\n state.pauseQueue.delete(onPause);\n state.timeouts.delete(timeout);\n\n if (callId <= (state.cancelId || 0)) {\n cancel = true;\n }\n\n try {\n actions.start(_extends({}, props, {\n callId,\n cancel\n }), resolve);\n } catch (err) {\n reject(err);\n }\n }\n });\n}\n\nconst getCombinedResult = (target, results) => results.length == 1 ? results[0] : results.some(result => result.cancelled) ? getCancelledResult(target.get()) : results.every(result => result.noop) ? getNoopResult(target.get()) : getFinishedResult(target.get(), results.every(result => result.finished));\nconst getNoopResult = value => ({\n value,\n noop: true,\n finished: true,\n cancelled: false\n});\nconst getFinishedResult = (value, finished, cancelled = false) => ({\n value,\n finished,\n cancelled\n});\nconst getCancelledResult = value => ({\n value,\n cancelled: true,\n finished: false\n});\n\nfunction runAsync(to, props, state, target) {\n const {\n callId,\n parentId,\n onRest\n } = props;\n const {\n asyncTo: prevTo,\n promise: prevPromise\n } = state;\n\n if (!parentId && to === prevTo && !props.reset) {\n return prevPromise;\n }\n\n return state.promise = (async () => {\n state.asyncId = callId;\n state.asyncTo = to;\n const defaultProps = getDefaultProps(props, (value, key) => key === 'onRest' ? undefined : value);\n let preventBail;\n let bail;\n const bailPromise = new Promise((resolve, reject) => (preventBail = resolve, bail = reject));\n\n const bailIfEnded = bailSignal => {\n const bailResult = callId <= (state.cancelId || 0) && getCancelledResult(target) || callId !== state.asyncId && getFinishedResult(target, false);\n\n if (bailResult) {\n bailSignal.result = bailResult;\n bail(bailSignal);\n throw bailSignal;\n }\n };\n\n const animate = (arg1, arg2) => {\n const bailSignal = new BailSignal();\n const skipAnimationSignal = new SkipAnimationSignal();\n return (async () => {\n if (Globals.skipAnimation) {\n stopAsync(state);\n skipAnimationSignal.result = getFinishedResult(target, false);\n bail(skipAnimationSignal);\n throw skipAnimationSignal;\n }\n\n bailIfEnded(bailSignal);\n const props = is.obj(arg1) ? _extends({}, arg1) : _extends({}, arg2, {\n to: arg1\n });\n props.parentId = callId;\n eachProp(defaultProps, (value, key) => {\n if (is.und(props[key])) {\n props[key] = value;\n }\n });\n const result = await target.start(props);\n bailIfEnded(bailSignal);\n\n if (state.paused) {\n await new Promise(resume => {\n state.resumeQueue.add(resume);\n });\n }\n\n return result;\n })();\n };\n\n let result;\n\n if (Globals.skipAnimation) {\n stopAsync(state);\n return getFinishedResult(target, false);\n }\n\n try {\n let animating;\n\n if (is.arr(to)) {\n animating = (async queue => {\n for (const props of queue) {\n await animate(props);\n }\n })(to);\n } else {\n animating = Promise.resolve(to(animate, target.stop.bind(target)));\n }\n\n await Promise.all([animating.then(preventBail), bailPromise]);\n result = getFinishedResult(target.get(), true, false);\n } catch (err) {\n if (err instanceof BailSignal) {\n result = err.result;\n } else if (err instanceof SkipAnimationSignal) {\n result = err.result;\n } else {\n throw err;\n }\n } finally {\n if (callId == state.asyncId) {\n state.asyncId = parentId;\n state.asyncTo = parentId ? prevTo : undefined;\n state.promise = parentId ? prevPromise : undefined;\n }\n }\n\n if (is.fun(onRest)) {\n raf.batchedUpdates(() => {\n onRest(result, target, target.item);\n });\n }\n\n return result;\n })();\n}\nfunction stopAsync(state, cancelId) {\n flush(state.timeouts, t => t.cancel());\n state.pauseQueue.clear();\n state.resumeQueue.clear();\n state.asyncId = state.asyncTo = state.promise = undefined;\n if (cancelId) state.cancelId = cancelId;\n}\nclass BailSignal extends Error {\n constructor() {\n super('An async animation has been interrupted. You see this error because you ' + 'forgot to use `await` or `.catch(...)` on its returned promise.');\n this.result = void 0;\n }\n\n}\nclass SkipAnimationSignal extends Error {\n constructor() {\n super('SkipAnimationSignal');\n this.result = void 0;\n }\n\n}\n\nconst isFrameValue = value => value instanceof FrameValue;\nlet nextId$1 = 1;\nclass FrameValue extends FluidValue {\n constructor(...args) {\n super(...args);\n this.id = nextId$1++;\n this.key = void 0;\n this._priority = 0;\n }\n\n get priority() {\n return this._priority;\n }\n\n set priority(priority) {\n if (this._priority != priority) {\n this._priority = priority;\n\n this._onPriorityChange(priority);\n }\n }\n\n get() {\n const node = getAnimated(this);\n return node && node.getValue();\n }\n\n to(...args) {\n return Globals.to(this, args);\n }\n\n interpolate(...args) {\n deprecateInterpolate();\n return Globals.to(this, args);\n }\n\n toJSON() {\n return this.get();\n }\n\n observerAdded(count) {\n if (count == 1) this._attach();\n }\n\n observerRemoved(count) {\n if (count == 0) this._detach();\n }\n\n _attach() {}\n\n _detach() {}\n\n _onChange(value, idle = false) {\n callFluidObservers(this, {\n type: 'change',\n parent: this,\n value,\n idle\n });\n }\n\n _onPriorityChange(priority) {\n if (!this.idle) {\n frameLoop.sort(this);\n }\n\n callFluidObservers(this, {\n type: 'priority',\n parent: this,\n priority\n });\n }\n\n}\n\nconst $P = Symbol.for('SpringPhase');\nconst HAS_ANIMATED = 1;\nconst IS_ANIMATING = 2;\nconst IS_PAUSED = 4;\nconst hasAnimated = target => (target[$P] & HAS_ANIMATED) > 0;\nconst isAnimating = target => (target[$P] & IS_ANIMATING) > 0;\nconst isPaused = target => (target[$P] & IS_PAUSED) > 0;\nconst setActiveBit = (target, active) => active ? target[$P] |= IS_ANIMATING | HAS_ANIMATED : target[$P] &= ~IS_ANIMATING;\nconst setPausedBit = (target, paused) => paused ? target[$P] |= IS_PAUSED : target[$P] &= ~IS_PAUSED;\n\nclass SpringValue extends FrameValue {\n constructor(arg1, arg2) {\n super();\n this.key = void 0;\n this.animation = new Animation();\n this.queue = void 0;\n this.defaultProps = {};\n this._state = {\n paused: false,\n delayed: false,\n pauseQueue: new Set(),\n resumeQueue: new Set(),\n timeouts: new Set()\n };\n this._pendingCalls = new Set();\n this._lastCallId = 0;\n this._lastToId = 0;\n this._memoizedDuration = 0;\n\n if (!is.und(arg1) || !is.und(arg2)) {\n const props = is.obj(arg1) ? _extends({}, arg1) : _extends({}, arg2, {\n from: arg1\n });\n\n if (is.und(props.default)) {\n props.default = true;\n }\n\n this.start(props);\n }\n }\n\n get idle() {\n return !(isAnimating(this) || this._state.asyncTo) || isPaused(this);\n }\n\n get goal() {\n return getFluidValue(this.animation.to);\n }\n\n get velocity() {\n const node = getAnimated(this);\n return node instanceof AnimatedValue ? node.lastVelocity || 0 : node.getPayload().map(node => node.lastVelocity || 0);\n }\n\n get hasAnimated() {\n return hasAnimated(this);\n }\n\n get isAnimating() {\n return isAnimating(this);\n }\n\n get isPaused() {\n return isPaused(this);\n }\n\n get isDelayed() {\n return this._state.delayed;\n }\n\n advance(dt) {\n let idle = true;\n let changed = false;\n const anim = this.animation;\n let {\n config,\n toValues\n } = anim;\n const payload = getPayload(anim.to);\n\n if (!payload && hasFluidValue(anim.to)) {\n toValues = toArray(getFluidValue(anim.to));\n }\n\n anim.values.forEach((node, i) => {\n if (node.done) return;\n const to = node.constructor == AnimatedString ? 1 : payload ? payload[i].lastPosition : toValues[i];\n let finished = anim.immediate;\n let position = to;\n\n if (!finished) {\n position = node.lastPosition;\n\n if (config.tension <= 0) {\n node.done = true;\n return;\n }\n\n let elapsed = node.elapsedTime += dt;\n const from = anim.fromValues[i];\n const v0 = node.v0 != null ? node.v0 : node.v0 = is.arr(config.velocity) ? config.velocity[i] : config.velocity;\n let velocity;\n const precision = config.precision || (from == to ? 0.005 : Math.min(1, Math.abs(to - from) * 0.001));\n\n if (!is.und(config.duration)) {\n let p = 1;\n\n if (config.duration > 0) {\n if (this._memoizedDuration !== config.duration) {\n this._memoizedDuration = config.duration;\n\n if (node.durationProgress > 0) {\n node.elapsedTime = config.duration * node.durationProgress;\n elapsed = node.elapsedTime += dt;\n }\n }\n\n p = (config.progress || 0) + elapsed / this._memoizedDuration;\n p = p > 1 ? 1 : p < 0 ? 0 : p;\n node.durationProgress = p;\n }\n\n position = from + config.easing(p) * (to - from);\n velocity = (position - node.lastPosition) / dt;\n finished = p == 1;\n } else if (config.decay) {\n const decay = config.decay === true ? 0.998 : config.decay;\n const e = Math.exp(-(1 - decay) * elapsed);\n position = from + v0 / (1 - decay) * (1 - e);\n finished = Math.abs(node.lastPosition - position) <= precision;\n velocity = v0 * e;\n } else {\n velocity = node.lastVelocity == null ? v0 : node.lastVelocity;\n const restVelocity = config.restVelocity || precision / 10;\n const bounceFactor = config.clamp ? 0 : config.bounce;\n const canBounce = !is.und(bounceFactor);\n const isGrowing = from == to ? node.v0 > 0 : from < to;\n let isMoving;\n let isBouncing = false;\n const step = 1;\n const numSteps = Math.ceil(dt / step);\n\n for (let n = 0; n < numSteps; ++n) {\n isMoving = Math.abs(velocity) > restVelocity;\n\n if (!isMoving) {\n finished = Math.abs(to - position) <= precision;\n\n if (finished) {\n break;\n }\n }\n\n if (canBounce) {\n isBouncing = position == to || position > to == isGrowing;\n\n if (isBouncing) {\n velocity = -velocity * bounceFactor;\n position = to;\n }\n }\n\n const springForce = -config.tension * 0.000001 * (position - to);\n const dampingForce = -config.friction * 0.001 * velocity;\n const acceleration = (springForce + dampingForce) / config.mass;\n velocity = velocity + acceleration * step;\n position = position + velocity * step;\n }\n }\n\n node.lastVelocity = velocity;\n\n if (Number.isNaN(position)) {\n console.warn(`Got NaN while animating:`, this);\n finished = true;\n }\n }\n\n if (payload && !payload[i].done) {\n finished = false;\n }\n\n if (finished) {\n node.done = true;\n } else {\n idle = false;\n }\n\n if (node.setValue(position, config.round)) {\n changed = true;\n }\n });\n const node = getAnimated(this);\n const currVal = node.getValue();\n\n if (idle) {\n const finalVal = getFluidValue(anim.to);\n\n if ((currVal !== finalVal || changed) && !config.decay) {\n node.setValue(finalVal);\n\n this._onChange(finalVal);\n } else if (changed && config.decay) {\n this._onChange(currVal);\n }\n\n this._stop();\n } else if (changed) {\n this._onChange(currVal);\n }\n }\n\n set(value) {\n raf.batchedUpdates(() => {\n this._stop();\n\n this._focus(value);\n\n this._set(value);\n });\n return this;\n }\n\n pause() {\n this._update({\n pause: true\n });\n }\n\n resume() {\n this._update({\n pause: false\n });\n }\n\n finish() {\n if (isAnimating(this)) {\n const {\n to,\n config\n } = this.animation;\n raf.batchedUpdates(() => {\n this._onStart();\n\n if (!config.decay) {\n this._set(to, false);\n }\n\n this._stop();\n });\n }\n\n return this;\n }\n\n update(props) {\n const queue = this.queue || (this.queue = []);\n queue.push(props);\n return this;\n }\n\n start(to, arg2) {\n let queue;\n\n if (!is.und(to)) {\n queue = [is.obj(to) ? to : _extends({}, arg2, {\n to\n })];\n } else {\n queue = this.queue || [];\n this.queue = [];\n }\n\n return Promise.all(queue.map(props => {\n const up = this._update(props);\n\n return up;\n })).then(results => getCombinedResult(this, results));\n }\n\n stop(cancel) {\n const {\n to\n } = this.animation;\n\n this._focus(this.get());\n\n stopAsync(this._state, cancel && this._lastCallId);\n raf.batchedUpdates(() => this._stop(to, cancel));\n return this;\n }\n\n reset() {\n this._update({\n reset: true\n });\n }\n\n eventObserved(event) {\n if (event.type == 'change') {\n this._start();\n } else if (event.type == 'priority') {\n this.priority = event.priority + 1;\n }\n }\n\n _prepareNode(props) {\n const key = this.key || '';\n let {\n to,\n from\n } = props;\n to = is.obj(to) ? to[key] : to;\n\n if (to == null || isAsyncTo(to)) {\n to = undefined;\n }\n\n from = is.obj(from) ? from[key] : from;\n\n if (from == null) {\n from = undefined;\n }\n\n const range = {\n to,\n from\n };\n\n if (!hasAnimated(this)) {\n if (props.reverse) [to, from] = [from, to];\n from = getFluidValue(from);\n\n if (!is.und(from)) {\n this._set(from);\n } else if (!getAnimated(this)) {\n this._set(to);\n }\n }\n\n return range;\n }\n\n _update(_ref, isLoop) {\n let props = _extends({}, _ref);\n\n const {\n key,\n defaultProps\n } = this;\n if (props.default) Object.assign(defaultProps, getDefaultProps(props, (value, prop) => /^on/.test(prop) ? resolveProp(value, key) : value));\n mergeActiveFn(this, props, 'onProps');\n sendEvent(this, 'onProps', props, this);\n\n const range = this._prepareNode(props);\n\n if (Object.isFrozen(this)) {\n throw Error('Cannot animate a `SpringValue` object that is frozen. ' + 'Did you forget to pass your component to `animated(...)` before animating its props?');\n }\n\n const state = this._state;\n return scheduleProps(++this._lastCallId, {\n key,\n props,\n defaultProps,\n state,\n actions: {\n pause: () => {\n if (!isPaused(this)) {\n setPausedBit(this, true);\n flushCalls(state.pauseQueue);\n sendEvent(this, 'onPause', getFinishedResult(this, checkFinished(this, this.animation.to)), this);\n }\n },\n resume: () => {\n if (isPaused(this)) {\n setPausedBit(this, false);\n\n if (isAnimating(this)) {\n this._resume();\n }\n\n flushCalls(state.resumeQueue);\n sendEvent(this, 'onResume', getFinishedResult(this, checkFinished(this, this.animation.to)), this);\n }\n },\n start: this._merge.bind(this, range)\n }\n }).then(result => {\n if (props.loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props);\n\n if (nextProps) {\n return this._update(nextProps, true);\n }\n }\n\n return result;\n });\n }\n\n _merge(range, props, resolve) {\n if (props.cancel) {\n this.stop(true);\n return resolve(getCancelledResult(this));\n }\n\n const hasToProp = !is.und(range.to);\n const hasFromProp = !is.und(range.from);\n\n if (hasToProp || hasFromProp) {\n if (props.callId > this._lastToId) {\n this._lastToId = props.callId;\n } else {\n return resolve(getCancelledResult(this));\n }\n }\n\n const {\n key,\n defaultProps,\n animation: anim\n } = this;\n const {\n to: prevTo,\n from: prevFrom\n } = anim;\n let {\n to = prevTo,\n from = prevFrom\n } = range;\n\n if (hasFromProp && !hasToProp && (!props.default || is.und(to))) {\n to = from;\n }\n\n if (props.reverse) [to, from] = [from, to];\n const hasFromChanged = !isEqual(from, prevFrom);\n\n if (hasFromChanged) {\n anim.from = from;\n }\n\n from = getFluidValue(from);\n const hasToChanged = !isEqual(to, prevTo);\n\n if (hasToChanged) {\n this._focus(to);\n }\n\n const hasAsyncTo = isAsyncTo(props.to);\n const {\n config\n } = anim;\n const {\n decay,\n velocity\n } = config;\n\n if (hasToProp || hasFromProp) {\n config.velocity = 0;\n }\n\n if (props.config && !hasAsyncTo) {\n mergeConfig(config, callProp(props.config, key), props.config !== defaultProps.config ? callProp(defaultProps.config, key) : void 0);\n }\n\n let node = getAnimated(this);\n\n if (!node || is.und(to)) {\n return resolve(getFinishedResult(this, true));\n }\n\n const reset = is.und(props.reset) ? hasFromProp && !props.default : !is.und(from) && matchProp(props.reset, key);\n const value = reset ? from : this.get();\n const goal = computeGoal(to);\n const isAnimatable = is.num(goal) || is.arr(goal) || isAnimatedString(goal);\n const immediate = !hasAsyncTo && (!isAnimatable || matchProp(defaultProps.immediate || props.immediate, key));\n\n if (hasToChanged) {\n const nodeType = getAnimatedType(to);\n\n if (nodeType !== node.constructor) {\n if (immediate) {\n node = this._set(goal);\n } else throw Error(`Cannot animate between ${node.constructor.name} and ${nodeType.name}, as the \"to\" prop suggests`);\n }\n }\n\n const goalType = node.constructor;\n let started = hasFluidValue(to);\n let finished = false;\n\n if (!started) {\n const hasValueChanged = reset || !hasAnimated(this) && hasFromChanged;\n\n if (hasToChanged || hasValueChanged) {\n finished = isEqual(computeGoal(value), goal);\n started = !finished;\n }\n\n if (!isEqual(anim.immediate, immediate) && !immediate || !isEqual(config.decay, decay) || !isEqual(config.velocity, velocity)) {\n started = true;\n }\n }\n\n if (finished && isAnimating(this)) {\n if (anim.changed && !reset) {\n started = true;\n } else if (!started) {\n this._stop(prevTo);\n }\n }\n\n if (!hasAsyncTo) {\n if (started || hasFluidValue(prevTo)) {\n anim.values = node.getPayload();\n anim.toValues = hasFluidValue(to) ? null : goalType == AnimatedString ? [1] : toArray(goal);\n }\n\n if (anim.immediate != immediate) {\n anim.immediate = immediate;\n\n if (!immediate && !reset) {\n this._set(prevTo);\n }\n }\n\n if (started) {\n const {\n onRest\n } = anim;\n each(ACTIVE_EVENTS, type => mergeActiveFn(this, props, type));\n const result = getFinishedResult(this, checkFinished(this, prevTo));\n flushCalls(this._pendingCalls, result);\n\n this._pendingCalls.add(resolve);\n\n if (anim.changed) raf.batchedUpdates(() => {\n anim.changed = !reset;\n onRest == null ? void 0 : onRest(result, this);\n\n if (reset) {\n callProp(defaultProps.onRest, result);\n } else {\n anim.onStart == null ? void 0 : anim.onStart(result, this);\n }\n });\n }\n }\n\n if (reset) {\n this._set(value);\n }\n\n if (hasAsyncTo) {\n resolve(runAsync(props.to, props, this._state, this));\n } else if (started) {\n this._start();\n } else if (isAnimating(this) && !hasToChanged) {\n this._pendingCalls.add(resolve);\n } else {\n resolve(getNoopResult(value));\n }\n }\n\n _focus(value) {\n const anim = this.animation;\n\n if (value !== anim.to) {\n if (getFluidObservers(this)) {\n this._detach();\n }\n\n anim.to = value;\n\n if (getFluidObservers(this)) {\n this._attach();\n }\n }\n }\n\n _attach() {\n let priority = 0;\n const {\n to\n } = this.animation;\n\n if (hasFluidValue(to)) {\n addFluidObserver(to, this);\n\n if (isFrameValue(to)) {\n priority = to.priority + 1;\n }\n }\n\n this.priority = priority;\n }\n\n _detach() {\n const {\n to\n } = this.animation;\n\n if (hasFluidValue(to)) {\n removeFluidObserver(to, this);\n }\n }\n\n _set(arg, idle = true) {\n const value = getFluidValue(arg);\n\n if (!is.und(value)) {\n const oldNode = getAnimated(this);\n\n if (!oldNode || !isEqual(value, oldNode.getValue())) {\n const nodeType = getAnimatedType(value);\n\n if (!oldNode || oldNode.constructor != nodeType) {\n setAnimated(this, nodeType.create(value));\n } else {\n oldNode.setValue(value);\n }\n\n if (oldNode) {\n raf.batchedUpdates(() => {\n this._onChange(value, idle);\n });\n }\n }\n }\n\n return getAnimated(this);\n }\n\n _onStart() {\n const anim = this.animation;\n\n if (!anim.changed) {\n anim.changed = true;\n sendEvent(this, 'onStart', getFinishedResult(this, checkFinished(this, anim.to)), this);\n }\n }\n\n _onChange(value, idle) {\n if (!idle) {\n this._onStart();\n\n callProp(this.animation.onChange, value, this);\n }\n\n callProp(this.defaultProps.onChange, value, this);\n\n super._onChange(value, idle);\n }\n\n _start() {\n const anim = this.animation;\n getAnimated(this).reset(getFluidValue(anim.to));\n\n if (!anim.immediate) {\n anim.fromValues = anim.values.map(node => node.lastPosition);\n }\n\n if (!isAnimating(this)) {\n setActiveBit(this, true);\n\n if (!isPaused(this)) {\n this._resume();\n }\n }\n }\n\n _resume() {\n if (Globals.skipAnimation) {\n this.finish();\n } else {\n frameLoop.start(this);\n }\n }\n\n _stop(goal, cancel) {\n if (isAnimating(this)) {\n setActiveBit(this, false);\n const anim = this.animation;\n each(anim.values, node => {\n node.done = true;\n });\n\n if (anim.toValues) {\n anim.onChange = anim.onPause = anim.onResume = undefined;\n }\n\n callFluidObservers(this, {\n type: 'idle',\n parent: this\n });\n const result = cancel ? getCancelledResult(this.get()) : getFinishedResult(this.get(), checkFinished(this, goal != null ? goal : anim.to));\n flushCalls(this._pendingCalls, result);\n\n if (anim.changed) {\n anim.changed = false;\n sendEvent(this, 'onRest', result, this);\n }\n }\n }\n\n}\n\nfunction checkFinished(target, to) {\n const goal = computeGoal(to);\n const value = computeGoal(target.get());\n return isEqual(value, goal);\n}\n\nfunction createLoopUpdate(props, loop = props.loop, to = props.to) {\n let loopRet = callProp(loop);\n\n if (loopRet) {\n const overrides = loopRet !== true && inferTo(loopRet);\n const reverse = (overrides || props).reverse;\n const reset = !overrides || overrides.reset;\n return createUpdate(_extends({}, props, {\n loop,\n default: false,\n pause: undefined,\n to: !reverse || isAsyncTo(to) ? to : undefined,\n from: reset ? props.from : undefined,\n reset\n }, overrides));\n }\n}\nfunction createUpdate(props) {\n const {\n to,\n from\n } = props = inferTo(props);\n const keys = new Set();\n if (is.obj(to)) findDefined(to, keys);\n if (is.obj(from)) findDefined(from, keys);\n props.keys = keys.size ? Array.from(keys) : null;\n return props;\n}\nfunction declareUpdate(props) {\n const update = createUpdate(props);\n\n if (is.und(update.default)) {\n update.default = getDefaultProps(update);\n }\n\n return update;\n}\n\nfunction findDefined(values, keys) {\n eachProp(values, (value, key) => value != null && keys.add(key));\n}\n\nconst ACTIVE_EVENTS = ['onStart', 'onRest', 'onChange', 'onPause', 'onResume'];\n\nfunction mergeActiveFn(target, props, type) {\n target.animation[type] = props[type] !== getDefaultProp(props, type) ? resolveProp(props[type], target.key) : undefined;\n}\n\nfunction sendEvent(target, type, ...args) {\n var _target$animation$typ, _target$animation, _target$defaultProps$, _target$defaultProps;\n\n (_target$animation$typ = (_target$animation = target.animation)[type]) == null ? void 0 : _target$animation$typ.call(_target$animation, ...args);\n (_target$defaultProps$ = (_target$defaultProps = target.defaultProps)[type]) == null ? void 0 : _target$defaultProps$.call(_target$defaultProps, ...args);\n}\n\nconst BATCHED_EVENTS = ['onStart', 'onChange', 'onRest'];\nlet nextId = 1;\nclass Controller {\n constructor(props, flush) {\n this.id = nextId++;\n this.springs = {};\n this.queue = [];\n this.ref = void 0;\n this._flush = void 0;\n this._initialProps = void 0;\n this._lastAsyncId = 0;\n this._active = new Set();\n this._changed = new Set();\n this._started = false;\n this._item = void 0;\n this._state = {\n paused: false,\n pauseQueue: new Set(),\n resumeQueue: new Set(),\n timeouts: new Set()\n };\n this._events = {\n onStart: new Map(),\n onChange: new Map(),\n onRest: new Map()\n };\n this._onFrame = this._onFrame.bind(this);\n\n if (flush) {\n this._flush = flush;\n }\n\n if (props) {\n this.start(_extends({\n default: true\n }, props));\n }\n }\n\n get idle() {\n return !this._state.asyncTo && Object.values(this.springs).every(spring => {\n return spring.idle && !spring.isDelayed && !spring.isPaused;\n });\n }\n\n get item() {\n return this._item;\n }\n\n set item(item) {\n this._item = item;\n }\n\n get() {\n const values = {};\n this.each((spring, key) => values[key] = spring.get());\n return values;\n }\n\n set(values) {\n for (const key in values) {\n const value = values[key];\n\n if (!is.und(value)) {\n this.springs[key].set(value);\n }\n }\n }\n\n update(props) {\n if (props) {\n this.queue.push(createUpdate(props));\n }\n\n return this;\n }\n\n start(props) {\n let {\n queue\n } = this;\n\n if (props) {\n queue = toArray(props).map(createUpdate);\n } else {\n this.queue = [];\n }\n\n if (this._flush) {\n return this._flush(this, queue);\n }\n\n prepareKeys(this, queue);\n return flushUpdateQueue(this, queue);\n }\n\n stop(arg, keys) {\n if (arg !== !!arg) {\n keys = arg;\n }\n\n if (keys) {\n const springs = this.springs;\n each(toArray(keys), key => springs[key].stop(!!arg));\n } else {\n stopAsync(this._state, this._lastAsyncId);\n this.each(spring => spring.stop(!!arg));\n }\n\n return this;\n }\n\n pause(keys) {\n if (is.und(keys)) {\n this.start({\n pause: true\n });\n } else {\n const springs = this.springs;\n each(toArray(keys), key => springs[key].pause());\n }\n\n return this;\n }\n\n resume(keys) {\n if (is.und(keys)) {\n this.start({\n pause: false\n });\n } else {\n const springs = this.springs;\n each(toArray(keys), key => springs[key].resume());\n }\n\n return this;\n }\n\n each(iterator) {\n eachProp(this.springs, iterator);\n }\n\n _onFrame() {\n const {\n onStart,\n onChange,\n onRest\n } = this._events;\n const active = this._active.size > 0;\n const changed = this._changed.size > 0;\n\n if (active && !this._started || changed && !this._started) {\n this._started = true;\n flush(onStart, ([onStart, result]) => {\n result.value = this.get();\n onStart(result, this, this._item);\n });\n }\n\n const idle = !active && this._started;\n const values = changed || idle && onRest.size ? this.get() : null;\n\n if (changed && onChange.size) {\n flush(onChange, ([onChange, result]) => {\n result.value = values;\n onChange(result, this, this._item);\n });\n }\n\n if (idle) {\n this._started = false;\n flush(onRest, ([onRest, result]) => {\n result.value = values;\n onRest(result, this, this._item);\n });\n }\n }\n\n eventObserved(event) {\n if (event.type == 'change') {\n this._changed.add(event.parent);\n\n if (!event.idle) {\n this._active.add(event.parent);\n }\n } else if (event.type == 'idle') {\n this._active.delete(event.parent);\n } else return;\n\n raf.onFrame(this._onFrame);\n }\n\n}\nfunction flushUpdateQueue(ctrl, queue) {\n return Promise.all(queue.map(props => flushUpdate(ctrl, props))).then(results => getCombinedResult(ctrl, results));\n}\nasync function flushUpdate(ctrl, props, isLoop) {\n const {\n keys,\n to,\n from,\n loop,\n onRest,\n onResolve\n } = props;\n const defaults = is.obj(props.default) && props.default;\n\n if (loop) {\n props.loop = false;\n }\n\n if (to === false) props.to = null;\n if (from === false) props.from = null;\n const asyncTo = is.arr(to) || is.fun(to) ? to : undefined;\n\n if (asyncTo) {\n props.to = undefined;\n props.onRest = undefined;\n\n if (defaults) {\n defaults.onRest = undefined;\n }\n } else {\n each(BATCHED_EVENTS, key => {\n const handler = props[key];\n\n if (is.fun(handler)) {\n const queue = ctrl['_events'][key];\n\n props[key] = ({\n finished,\n cancelled\n }) => {\n const result = queue.get(handler);\n\n if (result) {\n if (!finished) result.finished = false;\n if (cancelled) result.cancelled = true;\n } else {\n queue.set(handler, {\n value: null,\n finished: finished || false,\n cancelled: cancelled || false\n });\n }\n };\n\n if (defaults) {\n defaults[key] = props[key];\n }\n }\n });\n }\n\n const state = ctrl['_state'];\n\n if (props.pause === !state.paused) {\n state.paused = props.pause;\n flushCalls(props.pause ? state.pauseQueue : state.resumeQueue);\n } else if (state.paused) {\n props.pause = true;\n }\n\n const promises = (keys || Object.keys(ctrl.springs)).map(key => ctrl.springs[key].start(props));\n const cancel = props.cancel === true || getDefaultProp(props, 'cancel') === true;\n\n if (asyncTo || cancel && state.asyncId) {\n promises.push(scheduleProps(++ctrl['_lastAsyncId'], {\n props,\n state,\n actions: {\n pause: noop,\n resume: noop,\n\n start(props, resolve) {\n if (cancel) {\n stopAsync(state, ctrl['_lastAsyncId']);\n resolve(getCancelledResult(ctrl));\n } else {\n props.onRest = onRest;\n resolve(runAsync(asyncTo, props, state, ctrl));\n }\n }\n\n }\n }));\n }\n\n if (state.paused) {\n await new Promise(resume => {\n state.resumeQueue.add(resume);\n });\n }\n\n const result = getCombinedResult(ctrl, await Promise.all(promises));\n\n if (loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props, loop, to);\n\n if (nextProps) {\n prepareKeys(ctrl, [nextProps]);\n return flushUpdate(ctrl, nextProps, true);\n }\n }\n\n if (onResolve) {\n raf.batchedUpdates(() => onResolve(result, ctrl, ctrl.item));\n }\n\n return result;\n}\nfunction getSprings(ctrl, props) {\n const springs = _extends({}, ctrl.springs);\n\n if (props) {\n each(toArray(props), props => {\n if (is.und(props.keys)) {\n props = createUpdate(props);\n }\n\n if (!is.obj(props.to)) {\n props = _extends({}, props, {\n to: undefined\n });\n }\n\n prepareSprings(springs, props, key => {\n return createSpring(key);\n });\n });\n }\n\n setSprings(ctrl, springs);\n return springs;\n}\nfunction setSprings(ctrl, springs) {\n eachProp(springs, (spring, key) => {\n if (!ctrl.springs[key]) {\n ctrl.springs[key] = spring;\n addFluidObserver(spring, ctrl);\n }\n });\n}\n\nfunction createSpring(key, observer) {\n const spring = new SpringValue();\n spring.key = key;\n\n if (observer) {\n addFluidObserver(spring, observer);\n }\n\n return spring;\n}\n\nfunction prepareSprings(springs, props, create) {\n if (props.keys) {\n each(props.keys, key => {\n const spring = springs[key] || (springs[key] = create(key));\n spring['_prepareNode'](props);\n });\n }\n}\n\nfunction prepareKeys(ctrl, queue) {\n each(queue, props => {\n prepareSprings(ctrl.springs, props, key => {\n return createSpring(key, ctrl);\n });\n });\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nconst _excluded$6 = [\"children\"];\nconst SpringContext = _ref => {\n let {\n children\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded$6);\n\n const inherited = useContext(ctx);\n const pause = props.pause || !!inherited.pause,\n immediate = props.immediate || !!inherited.immediate;\n props = useMemoOne(() => ({\n pause,\n immediate\n }), [pause, immediate]);\n const {\n Provider\n } = ctx;\n return React.createElement(Provider, {\n value: props\n }, children);\n};\nconst ctx = makeContext(SpringContext, {});\nSpringContext.Provider = ctx.Provider;\nSpringContext.Consumer = ctx.Consumer;\n\nfunction makeContext(target, init) {\n Object.assign(target, React.createContext(init));\n target.Provider._context = target;\n target.Consumer._context = target;\n return target;\n}\n\nconst SpringRef = () => {\n const current = [];\n\n const SpringRef = function SpringRef(props) {\n deprecateDirectCall();\n const results = [];\n each(current, (ctrl, i) => {\n if (is.und(props)) {\n results.push(ctrl.start());\n } else {\n const update = _getProps(props, ctrl, i);\n\n if (update) {\n results.push(ctrl.start(update));\n }\n }\n });\n return results;\n };\n\n SpringRef.current = current;\n\n SpringRef.add = function (ctrl) {\n if (!current.includes(ctrl)) {\n current.push(ctrl);\n }\n };\n\n SpringRef.delete = function (ctrl) {\n const i = current.indexOf(ctrl);\n if (~i) current.splice(i, 1);\n };\n\n SpringRef.pause = function () {\n each(current, ctrl => ctrl.pause(...arguments));\n return this;\n };\n\n SpringRef.resume = function () {\n each(current, ctrl => ctrl.resume(...arguments));\n return this;\n };\n\n SpringRef.set = function (values) {\n each(current, ctrl => ctrl.set(values));\n };\n\n SpringRef.start = function (props) {\n const results = [];\n each(current, (ctrl, i) => {\n if (is.und(props)) {\n results.push(ctrl.start());\n } else {\n const update = this._getProps(props, ctrl, i);\n\n if (update) {\n results.push(ctrl.start(update));\n }\n }\n });\n return results;\n };\n\n SpringRef.stop = function () {\n each(current, ctrl => ctrl.stop(...arguments));\n return this;\n };\n\n SpringRef.update = function (props) {\n each(current, (ctrl, i) => ctrl.update(this._getProps(props, ctrl, i)));\n return this;\n };\n\n const _getProps = function _getProps(arg, ctrl, index) {\n return is.fun(arg) ? arg(index, ctrl) : arg;\n };\n\n SpringRef._getProps = _getProps;\n return SpringRef;\n};\n\nfunction useSprings(length, props, deps) {\n const propsFn = is.fun(props) && props;\n if (propsFn && !deps) deps = [];\n const ref = useMemo(() => propsFn || arguments.length == 3 ? SpringRef() : void 0, []);\n const layoutId = useRef(0);\n const forceUpdate = useForceUpdate();\n const state = useMemo(() => ({\n ctrls: [],\n queue: [],\n\n flush(ctrl, updates) {\n const springs = getSprings(ctrl, updates);\n const canFlushSync = layoutId.current > 0 && !state.queue.length && !Object.keys(springs).some(key => !ctrl.springs[key]);\n return canFlushSync ? flushUpdateQueue(ctrl, updates) : new Promise(resolve => {\n setSprings(ctrl, springs);\n state.queue.push(() => {\n resolve(flushUpdateQueue(ctrl, updates));\n });\n forceUpdate();\n });\n }\n\n }), []);\n const ctrls = useRef([...state.ctrls]);\n const updates = [];\n const prevLength = usePrev(length) || 0;\n useMemo(() => {\n each(ctrls.current.slice(length, prevLength), ctrl => {\n detachRefs(ctrl, ref);\n ctrl.stop(true);\n });\n ctrls.current.length = length;\n declareUpdates(prevLength, length);\n }, [length]);\n useMemo(() => {\n declareUpdates(0, Math.min(prevLength, length));\n }, deps);\n\n function declareUpdates(startIndex, endIndex) {\n for (let i = startIndex; i < endIndex; i++) {\n const ctrl = ctrls.current[i] || (ctrls.current[i] = new Controller(null, state.flush));\n const update = propsFn ? propsFn(i, ctrl) : props[i];\n\n if (update) {\n updates[i] = declareUpdate(update);\n }\n }\n }\n\n const springs = ctrls.current.map((ctrl, i) => getSprings(ctrl, updates[i]));\n const context = useContext(SpringContext);\n const prevContext = usePrev(context);\n const hasContext = context !== prevContext && hasProps(context);\n useIsomorphicLayoutEffect(() => {\n layoutId.current++;\n state.ctrls = ctrls.current;\n const {\n queue\n } = state;\n\n if (queue.length) {\n state.queue = [];\n each(queue, cb => cb());\n }\n\n each(ctrls.current, (ctrl, i) => {\n ref == null ? void 0 : ref.add(ctrl);\n\n if (hasContext) {\n ctrl.start({\n default: context\n });\n }\n\n const update = updates[i];\n\n if (update) {\n replaceRef(ctrl, update.ref);\n\n if (ctrl.ref) {\n ctrl.queue.push(update);\n } else {\n ctrl.start(update);\n }\n }\n });\n });\n useOnce(() => () => {\n each(state.ctrls, ctrl => ctrl.stop(true));\n });\n const values = springs.map(x => _extends({}, x));\n return ref ? [values, ref] : values;\n}\n\nfunction useSpring(props, deps) {\n const isFn = is.fun(props);\n const [[values], ref] = useSprings(1, isFn ? props : [props], isFn ? deps || [] : deps);\n return isFn || arguments.length == 2 ? [values, ref] : values;\n}\n\nconst initSpringRef = () => SpringRef();\n\nconst useSpringRef = () => useState(initSpringRef)[0];\n\nconst useSpringValue = (initial, props) => {\n const springValue = useConstant(() => new SpringValue(initial, props));\n useOnce(() => () => {\n springValue.stop();\n });\n return springValue;\n};\n\nfunction useTrail(length, propsArg, deps) {\n const propsFn = is.fun(propsArg) && propsArg;\n if (propsFn && !deps) deps = [];\n let reverse = true;\n let passedRef = undefined;\n const result = useSprings(length, (i, ctrl) => {\n const props = propsFn ? propsFn(i, ctrl) : propsArg;\n passedRef = props.ref;\n reverse = reverse && props.reverse;\n return props;\n }, deps || [{}]);\n useIsomorphicLayoutEffect(() => {\n each(result[1].current, (ctrl, i) => {\n const parent = result[1].current[i + (reverse ? 1 : -1)];\n replaceRef(ctrl, passedRef);\n\n if (ctrl.ref) {\n if (parent) {\n ctrl.update({\n to: parent.springs\n });\n }\n\n return;\n }\n\n if (parent) {\n ctrl.start({\n to: parent.springs\n });\n } else {\n ctrl.start();\n }\n });\n }, deps);\n\n if (propsFn || arguments.length == 3) {\n var _passedRef;\n\n const ref = (_passedRef = passedRef) != null ? _passedRef : result[1];\n\n ref['_getProps'] = (propsArg, ctrl, i) => {\n const props = is.fun(propsArg) ? propsArg(i, ctrl) : propsArg;\n\n if (props) {\n const parent = ref.current[i + (props.reverse ? 1 : -1)];\n if (parent) props.to = parent.springs;\n return props;\n }\n };\n\n return result;\n }\n\n return result[0];\n}\n\nlet TransitionPhase;\n\n(function (TransitionPhase) {\n TransitionPhase[\"MOUNT\"] = \"mount\";\n TransitionPhase[\"ENTER\"] = \"enter\";\n TransitionPhase[\"UPDATE\"] = \"update\";\n TransitionPhase[\"LEAVE\"] = \"leave\";\n})(TransitionPhase || (TransitionPhase = {}));\n\nfunction useTransition(data, props, deps) {\n const propsFn = is.fun(props) && props;\n const {\n reset,\n sort,\n trail = 0,\n expires = true,\n exitBeforeEnter = false,\n onDestroyed,\n ref: propsRef,\n config: propsConfig\n } = propsFn ? propsFn() : props;\n const ref = useMemo(() => propsFn || arguments.length == 3 ? SpringRef() : void 0, []);\n const items = toArray(data);\n const transitions = [];\n const usedTransitions = useRef(null);\n const prevTransitions = reset ? null : usedTransitions.current;\n useIsomorphicLayoutEffect(() => {\n usedTransitions.current = transitions;\n });\n useOnce(() => {\n each(transitions, t => {\n ref == null ? void 0 : ref.add(t.ctrl);\n t.ctrl.ref = ref;\n });\n return () => {\n each(usedTransitions.current, t => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n }\n\n detachRefs(t.ctrl, ref);\n t.ctrl.stop(true);\n });\n };\n });\n const keys = getKeys(items, propsFn ? propsFn() : props, prevTransitions);\n const expired = reset && usedTransitions.current || [];\n useIsomorphicLayoutEffect(() => each(expired, ({\n ctrl,\n item,\n key\n }) => {\n detachRefs(ctrl, ref);\n callProp(onDestroyed, item, key);\n }));\n const reused = [];\n if (prevTransitions) each(prevTransitions, (t, i) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n expired.push(t);\n } else {\n i = reused[i] = keys.indexOf(t.key);\n if (~i) transitions[i] = t;\n }\n });\n each(items, (item, i) => {\n if (!transitions[i]) {\n transitions[i] = {\n key: keys[i],\n item,\n phase: TransitionPhase.MOUNT,\n ctrl: new Controller()\n };\n transitions[i].ctrl.item = item;\n }\n });\n\n if (reused.length) {\n let i = -1;\n const {\n leave\n } = propsFn ? propsFn() : props;\n each(reused, (keyIndex, prevIndex) => {\n const t = prevTransitions[prevIndex];\n\n if (~keyIndex) {\n i = transitions.indexOf(t);\n transitions[i] = _extends({}, t, {\n item: items[keyIndex]\n });\n } else if (leave) {\n transitions.splice(++i, 0, t);\n }\n });\n }\n\n if (is.fun(sort)) {\n transitions.sort((a, b) => sort(a.item, b.item));\n }\n\n let delay = -trail;\n const forceUpdate = useForceUpdate();\n const defaultProps = getDefaultProps(props);\n const changes = new Map();\n const exitingTransitions = useRef(new Map());\n const forceChange = useRef(false);\n each(transitions, (t, i) => {\n const key = t.key;\n const prevPhase = t.phase;\n const p = propsFn ? propsFn() : props;\n let to;\n let phase;\n let propsDelay = callProp(p.delay || 0, key);\n\n if (prevPhase == TransitionPhase.MOUNT) {\n to = p.enter;\n phase = TransitionPhase.ENTER;\n } else {\n const isLeave = keys.indexOf(key) < 0;\n\n if (prevPhase != TransitionPhase.LEAVE) {\n if (isLeave) {\n to = p.leave;\n phase = TransitionPhase.LEAVE;\n } else if (to = p.update) {\n phase = TransitionPhase.UPDATE;\n } else return;\n } else if (!isLeave) {\n to = p.enter;\n phase = TransitionPhase.ENTER;\n } else return;\n }\n\n to = callProp(to, t.item, i);\n to = is.obj(to) ? inferTo(to) : {\n to\n };\n\n if (!to.config) {\n const config = propsConfig || defaultProps.config;\n to.config = callProp(config, t.item, i, phase);\n }\n\n delay += trail;\n\n const payload = _extends({}, defaultProps, {\n delay: propsDelay + delay,\n ref: propsRef,\n immediate: p.immediate,\n reset: false\n }, to);\n\n if (phase == TransitionPhase.ENTER && is.und(payload.from)) {\n const _p = propsFn ? propsFn() : props;\n\n const from = is.und(_p.initial) || prevTransitions ? _p.from : _p.initial;\n payload.from = callProp(from, t.item, i);\n }\n\n const {\n onResolve\n } = payload;\n\n payload.onResolve = result => {\n callProp(onResolve, result);\n const transitions = usedTransitions.current;\n const t = transitions.find(t => t.key === key);\n if (!t) return;\n\n if (result.cancelled && t.phase != TransitionPhase.UPDATE) {\n return;\n }\n\n if (t.ctrl.idle) {\n const idle = transitions.every(t => t.ctrl.idle);\n\n if (t.phase == TransitionPhase.LEAVE) {\n const expiry = callProp(expires, t.item);\n\n if (expiry !== false) {\n const expiryMs = expiry === true ? 0 : expiry;\n t.expired = true;\n\n if (!idle && expiryMs > 0) {\n if (expiryMs <= 0x7fffffff) t.expirationId = setTimeout(forceUpdate, expiryMs);\n return;\n }\n }\n }\n\n if (idle && transitions.some(t => t.expired)) {\n exitingTransitions.current.delete(t);\n\n if (exitBeforeEnter) {\n forceChange.current = true;\n }\n\n forceUpdate();\n }\n }\n };\n\n const springs = getSprings(t.ctrl, payload);\n\n if (phase === TransitionPhase.LEAVE && exitBeforeEnter) {\n exitingTransitions.current.set(t, {\n phase,\n springs,\n payload\n });\n } else {\n changes.set(t, {\n phase,\n springs,\n payload\n });\n }\n });\n const context = useContext(SpringContext);\n const prevContext = usePrev(context);\n const hasContext = context !== prevContext && hasProps(context);\n useIsomorphicLayoutEffect(() => {\n if (hasContext) {\n each(transitions, t => {\n t.ctrl.start({\n default: context\n });\n });\n }\n }, [context]);\n each(changes, (_, t) => {\n if (exitingTransitions.current.size) {\n const ind = transitions.findIndex(state => state.key === t.key);\n transitions.splice(ind, 1);\n }\n });\n useIsomorphicLayoutEffect(() => {\n each(exitingTransitions.current.size ? exitingTransitions.current : changes, ({\n phase,\n payload\n }, t) => {\n const {\n ctrl\n } = t;\n t.phase = phase;\n ref == null ? void 0 : ref.add(ctrl);\n\n if (hasContext && phase == TransitionPhase.ENTER) {\n ctrl.start({\n default: context\n });\n }\n\n if (payload) {\n replaceRef(ctrl, payload.ref);\n\n if ((ctrl.ref || ref) && !forceChange.current) {\n ctrl.update(payload);\n } else {\n ctrl.start(payload);\n\n if (forceChange.current) {\n forceChange.current = false;\n }\n }\n }\n });\n }, reset ? void 0 : deps);\n\n const renderTransitions = render => React.createElement(React.Fragment, null, transitions.map((t, i) => {\n const {\n springs\n } = changes.get(t) || t.ctrl;\n const elem = render(_extends({}, springs), t.item, t, i);\n return elem && elem.type ? React.createElement(elem.type, _extends({}, elem.props, {\n key: is.str(t.key) || is.num(t.key) ? t.key : t.ctrl.id,\n ref: elem.ref\n })) : elem;\n }));\n\n return ref ? [renderTransitions, ref] : renderTransitions;\n}\nlet nextKey = 1;\n\nfunction getKeys(items, {\n key,\n keys = key\n}, prevTransitions) {\n if (keys === null) {\n const reused = new Set();\n return items.map(item => {\n const t = prevTransitions && prevTransitions.find(t => t.item === item && t.phase !== TransitionPhase.LEAVE && !reused.has(t));\n\n if (t) {\n reused.add(t);\n return t.key;\n }\n\n return nextKey++;\n });\n }\n\n return is.und(keys) ? items : is.fun(keys) ? items.map(keys) : toArray(keys);\n}\n\nconst _excluded$5 = [\"container\"];\nconst useScroll = (_ref = {}) => {\n let {\n container\n } = _ref,\n springOptions = _objectWithoutPropertiesLoose(_ref, _excluded$5);\n\n const [scrollValues, api] = useSpring(() => _extends({\n scrollX: 0,\n scrollY: 0,\n scrollXProgress: 0,\n scrollYProgress: 0\n }, springOptions), []);\n useIsomorphicLayoutEffect(() => {\n const cleanupScroll = onScroll(({\n x,\n y\n }) => {\n api.start({\n scrollX: x.current,\n scrollXProgress: x.progress,\n scrollY: y.current,\n scrollYProgress: y.progress\n });\n }, {\n container: (container == null ? void 0 : container.current) || undefined\n });\n return () => {\n each(Object.values(scrollValues), value => value.stop());\n cleanupScroll();\n };\n }, []);\n return scrollValues;\n};\n\nconst _excluded$4 = [\"container\"];\nconst useResize = _ref => {\n let {\n container\n } = _ref,\n springOptions = _objectWithoutPropertiesLoose(_ref, _excluded$4);\n\n const [sizeValues, api] = useSpring(() => _extends({\n width: 0,\n height: 0\n }, springOptions), []);\n useIsomorphicLayoutEffect(() => {\n const cleanupScroll = onResize(({\n width,\n height\n }) => {\n api.start({\n width,\n height,\n immediate: sizeValues.width.get() === 0 || sizeValues.height.get() === 0\n });\n }, {\n container: (container == null ? void 0 : container.current) || undefined\n });\n return () => {\n each(Object.values(sizeValues), value => value.stop());\n cleanupScroll();\n };\n }, []);\n return sizeValues;\n};\n\nconst _excluded$3 = [\"to\", \"from\"],\n _excluded2 = [\"root\", \"once\", \"amount\"];\nconst defaultThresholdOptions = {\n any: 0,\n all: 1\n};\nfunction useInView(props, args) {\n const [isInView, setIsInView] = useState(false);\n const ref = useRef();\n const propsFn = is.fun(props) && props;\n const springsProps = propsFn ? propsFn() : {};\n\n const {\n to = {},\n from = {}\n } = springsProps,\n restSpringProps = _objectWithoutPropertiesLoose(springsProps, _excluded$3);\n\n const intersectionArguments = propsFn ? args : props;\n const [springs, api] = useSpring(() => _extends({\n from\n }, restSpringProps), []);\n useIsomorphicLayoutEffect(() => {\n const element = ref.current;\n\n const _ref = intersectionArguments != null ? intersectionArguments : {},\n {\n root,\n once,\n amount = 'any'\n } = _ref,\n restArgs = _objectWithoutPropertiesLoose(_ref, _excluded2);\n\n if (!element || once && isInView || typeof IntersectionObserver === 'undefined') return;\n const activeIntersections = new WeakMap();\n\n const onEnter = () => {\n if (to) {\n api.start(to);\n }\n\n setIsInView(true);\n\n const cleanup = () => {\n if (from) {\n api.start(from);\n }\n\n setIsInView(false);\n };\n\n return once ? undefined : cleanup;\n };\n\n const handleIntersection = entries => {\n entries.forEach(entry => {\n const onLeave = activeIntersections.get(entry.target);\n\n if (entry.isIntersecting === Boolean(onLeave)) {\n return;\n }\n\n if (entry.isIntersecting) {\n const newOnLeave = onEnter();\n\n if (is.fun(newOnLeave)) {\n activeIntersections.set(entry.target, newOnLeave);\n } else {\n observer.unobserve(entry.target);\n }\n } else if (onLeave) {\n onLeave();\n activeIntersections.delete(entry.target);\n }\n });\n };\n\n const observer = new IntersectionObserver(handleIntersection, _extends({\n root: root && root.current || undefined,\n threshold: typeof amount === 'number' || Array.isArray(amount) ? amount : defaultThresholdOptions[amount]\n }, restArgs));\n observer.observe(element);\n return () => observer.unobserve(element);\n }, [intersectionArguments]);\n\n if (propsFn) {\n return [ref, springs];\n }\n\n return [ref, isInView];\n}\n\nconst _excluded$2 = [\"children\"];\nfunction Spring(_ref) {\n let {\n children\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded$2);\n\n return children(useSpring(props));\n}\n\nconst _excluded$1 = [\"items\", \"children\"];\nfunction Trail(_ref) {\n let {\n items,\n children\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded$1);\n\n const trails = useTrail(items.length, props);\n return items.map((item, index) => {\n const result = children(item, index);\n return is.fun(result) ? result(trails[index]) : result;\n });\n}\n\nconst _excluded = [\"items\", \"children\"];\nfunction Transition(_ref) {\n let {\n items,\n children\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n return useTransition(items, props)(children);\n}\n\nclass Interpolation extends FrameValue {\n constructor(source, args) {\n super();\n this.key = void 0;\n this.idle = true;\n this.calc = void 0;\n this._active = new Set();\n this.source = source;\n this.calc = createInterpolator(...args);\n\n const value = this._get();\n\n const nodeType = getAnimatedType(value);\n setAnimated(this, nodeType.create(value));\n }\n\n advance(_dt) {\n const value = this._get();\n\n const oldValue = this.get();\n\n if (!isEqual(value, oldValue)) {\n getAnimated(this).setValue(value);\n\n this._onChange(value, this.idle);\n }\n\n if (!this.idle && checkIdle(this._active)) {\n becomeIdle(this);\n }\n }\n\n _get() {\n const inputs = is.arr(this.source) ? this.source.map(getFluidValue) : toArray(getFluidValue(this.source));\n return this.calc(...inputs);\n }\n\n _start() {\n if (this.idle && !checkIdle(this._active)) {\n this.idle = false;\n each(getPayload(this), node => {\n node.done = false;\n });\n\n if (Globals.skipAnimation) {\n raf.batchedUpdates(() => this.advance());\n becomeIdle(this);\n } else {\n frameLoop.start(this);\n }\n }\n }\n\n _attach() {\n let priority = 1;\n each(toArray(this.source), source => {\n if (hasFluidValue(source)) {\n addFluidObserver(source, this);\n }\n\n if (isFrameValue(source)) {\n if (!source.idle) {\n this._active.add(source);\n }\n\n priority = Math.max(priority, source.priority + 1);\n }\n });\n this.priority = priority;\n\n this._start();\n }\n\n _detach() {\n each(toArray(this.source), source => {\n if (hasFluidValue(source)) {\n removeFluidObserver(source, this);\n }\n });\n\n this._active.clear();\n\n becomeIdle(this);\n }\n\n eventObserved(event) {\n if (event.type == 'change') {\n if (event.idle) {\n this.advance();\n } else {\n this._active.add(event.parent);\n\n this._start();\n }\n } else if (event.type == 'idle') {\n this._active.delete(event.parent);\n } else if (event.type == 'priority') {\n this.priority = toArray(this.source).reduce((highest, parent) => Math.max(highest, (isFrameValue(parent) ? parent.priority : 0) + 1), 0);\n }\n }\n\n}\n\nfunction isIdle(source) {\n return source.idle !== false;\n}\n\nfunction checkIdle(active) {\n return !active.size || Array.from(active).every(isIdle);\n}\n\nfunction becomeIdle(self) {\n if (!self.idle) {\n self.idle = true;\n each(getPayload(self), node => {\n node.done = true;\n });\n callFluidObservers(self, {\n type: 'idle',\n parent: self\n });\n }\n}\n\nconst to = (source, ...args) => new Interpolation(source, args);\nconst interpolate = (source, ...args) => (deprecateInterpolate(), new Interpolation(source, args));\n\nGlobals.assign({\n createStringInterpolator,\n to: (source, args) => new Interpolation(source, args)\n});\nconst update = frameLoop.advance;\n\nexport { BailSignal, Controller, FrameValue, Interpolation, Spring, SpringContext, SpringRef, SpringValue, Trail, Transition, config, inferTo, interpolate, to, update, useChain, useInView, useResize, useScroll, useSpring, useSpringRef, useSpringValue, useSprings, useTrail, useTransition };\n","import { Globals } from '@react-spring/core';\nexport * from '@react-spring/core';\nimport { unstable_batchedUpdates } from 'react-dom';\nimport { eachProp, is, toArray, FluidValue, each, getFluidValue, hasFluidValue, addFluidObserver, removeFluidObserver, callFluidObservers, createStringInterpolator, colors } from '@react-spring/shared';\nimport { AnimatedObject, createHost } from '@react-spring/animated';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nconst _excluded$2 = [\"style\", \"children\", \"scrollTop\", \"scrollLeft\", \"viewBox\"];\nconst isCustomPropRE = /^--/;\n\nfunction dangerousStyleValue(name, value) {\n if (value == null || typeof value === 'boolean' || value === '') return '';\n if (typeof value === 'number' && value !== 0 && !isCustomPropRE.test(name) && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name])) return value + 'px';\n return ('' + value).trim();\n}\n\nconst attributeCache = {};\nfunction applyAnimatedValues(instance, props) {\n if (!instance.nodeType || !instance.setAttribute) {\n return false;\n }\n\n const isFilterElement = instance.nodeName === 'filter' || instance.parentNode && instance.parentNode.nodeName === 'filter';\n\n const _ref = props,\n {\n style,\n children,\n scrollTop,\n scrollLeft,\n viewBox\n } = _ref,\n attributes = _objectWithoutPropertiesLoose(_ref, _excluded$2);\n\n const values = Object.values(attributes);\n const names = Object.keys(attributes).map(name => isFilterElement || instance.hasAttribute(name) ? name : attributeCache[name] || (attributeCache[name] = name.replace(/([A-Z])/g, n => '-' + n.toLowerCase())));\n\n if (children !== void 0) {\n instance.textContent = children;\n }\n\n for (let name in style) {\n if (style.hasOwnProperty(name)) {\n const value = dangerousStyleValue(name, style[name]);\n\n if (isCustomPropRE.test(name)) {\n instance.style.setProperty(name, value);\n } else {\n instance.style[name] = value;\n }\n }\n }\n\n names.forEach((name, i) => {\n instance.setAttribute(name, values[i]);\n });\n\n if (scrollTop !== void 0) {\n instance.scrollTop = scrollTop;\n }\n\n if (scrollLeft !== void 0) {\n instance.scrollLeft = scrollLeft;\n }\n\n if (viewBox !== void 0) {\n instance.setAttribute('viewBox', viewBox);\n }\n}\nlet isUnitlessNumber = {\n animationIterationCount: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n boxFlex: true,\n boxFlexGroup: true,\n boxOrdinalGroup: true,\n columnCount: true,\n columns: true,\n flex: true,\n flexGrow: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n flexOrder: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowSpan: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnSpan: true,\n gridColumnStart: true,\n fontWeight: true,\n lineClamp: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zIndex: true,\n zoom: true,\n fillOpacity: true,\n floodOpacity: true,\n stopOpacity: true,\n strokeDasharray: true,\n strokeDashoffset: true,\n strokeMiterlimit: true,\n strokeOpacity: true,\n strokeWidth: true\n};\n\nconst prefixKey = (prefix, key) => prefix + key.charAt(0).toUpperCase() + key.substring(1);\n\nconst prefixes = ['Webkit', 'Ms', 'Moz', 'O'];\nisUnitlessNumber = Object.keys(isUnitlessNumber).reduce((acc, prop) => {\n prefixes.forEach(prefix => acc[prefixKey(prefix, prop)] = acc[prop]);\n return acc;\n}, isUnitlessNumber);\n\nconst _excluded$1 = [\"x\", \"y\", \"z\"];\nconst domTransforms = /^(matrix|translate|scale|rotate|skew)/;\nconst pxTransforms = /^(translate)/;\nconst degTransforms = /^(rotate|skew)/;\n\nconst addUnit = (value, unit) => is.num(value) && value !== 0 ? value + unit : value;\n\nconst isValueIdentity = (value, id) => is.arr(value) ? value.every(v => isValueIdentity(v, id)) : is.num(value) ? value === id : parseFloat(value) === id;\n\nclass AnimatedStyle extends AnimatedObject {\n constructor(_ref) {\n let {\n x,\n y,\n z\n } = _ref,\n style = _objectWithoutPropertiesLoose(_ref, _excluded$1);\n\n const inputs = [];\n const transforms = [];\n\n if (x || y || z) {\n inputs.push([x || 0, y || 0, z || 0]);\n transforms.push(xyz => [`translate3d(${xyz.map(v => addUnit(v, 'px')).join(',')})`, isValueIdentity(xyz, 0)]);\n }\n\n eachProp(style, (value, key) => {\n if (key === 'transform') {\n inputs.push([value || '']);\n transforms.push(transform => [transform, transform === '']);\n } else if (domTransforms.test(key)) {\n delete style[key];\n if (is.und(value)) return;\n const unit = pxTransforms.test(key) ? 'px' : degTransforms.test(key) ? 'deg' : '';\n inputs.push(toArray(value));\n transforms.push(key === 'rotate3d' ? ([x, y, z, deg]) => [`rotate3d(${x},${y},${z},${addUnit(deg, unit)})`, isValueIdentity(deg, 0)] : input => [`${key}(${input.map(v => addUnit(v, unit)).join(',')})`, isValueIdentity(input, key.startsWith('scale') ? 1 : 0)]);\n }\n });\n\n if (inputs.length) {\n style.transform = new FluidTransform(inputs, transforms);\n }\n\n super(style);\n }\n\n}\n\nclass FluidTransform extends FluidValue {\n constructor(inputs, transforms) {\n super();\n this._value = null;\n this.inputs = inputs;\n this.transforms = transforms;\n }\n\n get() {\n return this._value || (this._value = this._get());\n }\n\n _get() {\n let transform = '';\n let identity = true;\n each(this.inputs, (input, i) => {\n const arg1 = getFluidValue(input[0]);\n const [t, id] = this.transforms[i](is.arr(arg1) ? arg1 : input.map(getFluidValue));\n transform += ' ' + t;\n identity = identity && id;\n });\n return identity ? 'none' : transform;\n }\n\n observerAdded(count) {\n if (count == 1) each(this.inputs, input => each(input, value => hasFluidValue(value) && addFluidObserver(value, this)));\n }\n\n observerRemoved(count) {\n if (count == 0) each(this.inputs, input => each(input, value => hasFluidValue(value) && removeFluidObserver(value, this)));\n }\n\n eventObserved(event) {\n if (event.type == 'change') {\n this._value = null;\n }\n\n callFluidObservers(this, event);\n }\n\n}\n\nconst primitives = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', 'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\nconst _excluded = [\"scrollTop\", \"scrollLeft\"];\nGlobals.assign({\n batchedUpdates: unstable_batchedUpdates,\n createStringInterpolator,\n colors\n});\nconst host = createHost(primitives, {\n applyAnimatedValues,\n createAnimatedStyle: style => new AnimatedStyle(style),\n getComponentProps: _ref => {\n let props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n return props;\n }\n});\nconst animated = host.animated;\n\nexport { animated as a, animated };\n","export function resolveContainer(getContainer) {\n const container = typeof getContainer === 'function' ? getContainer() : getContainer;\n return container || document.body;\n}","import { createPortal } from 'react-dom';\nimport { resolveContainer } from './get-container';\nimport { canUseDom } from './can-use-dom';\nexport function renderToContainer(getContainer, node) {\n if (canUseDom && getContainer) {\n const container = resolveContainer(getContainer);\n return createPortal(node, container);\n }\n return node;\n}","import { useRef } from 'react';\nexport function useInitialized(check) {\n const initializedRef = useRef(check);\n if (check) {\n initializedRef.current = true;\n }\n return !!initializedRef.current;\n}","import { useInitialized } from './use-initialized';\nexport const ShouldRender = props => {\n const shouldRender = useShouldRender(props.active, props.forceRender, props.destroyOnClose);\n return shouldRender ? props.children : null;\n};\nexport function useShouldRender(active, forceRender, destroyOnClose) {\n const initialized = useInitialized(active);\n if (forceRender) return true;\n if (active) return true;\n if (!initialized) return false;\n return !destroyOnClose;\n}","import React from 'react';\nconst eventToPropRecord = {\n 'click': 'onClick',\n 'touchstart': 'onTouchStart'\n};\nexport function withStopPropagation(events, element) {\n const props = Object.assign({}, element.props);\n for (const key of events) {\n const prop = eventToPropRecord[key];\n props[prop] = function (e) {\n var _a, _b;\n e.stopPropagation();\n (_b = (_a = element.props)[prop]) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n };\n }\n return React.cloneElement(element, props);\n}","import { withNativeProps } from '../../utils/native-props';\nimport React, { useMemo, useRef, useState } from 'react';\nimport { useUnmountedRef } from 'ahooks';\nimport { useLockScroll } from '../../utils/use-lock-scroll';\nimport { useSpring, animated } from '@react-spring/web';\nimport { renderToContainer } from '../../utils/render-to-container';\nimport { mergeProps } from '../../utils/with-default-props';\nimport { useConfig } from '../config-provider';\nimport { ShouldRender } from '../../utils/should-render';\nimport { withStopPropagation } from '../../utils/with-stop-propagation';\nconst classPrefix = `adm-mask`;\nconst opacityRecord = {\n default: 0.55,\n thin: 0.35,\n thick: 0.75\n};\nconst colorRecord = {\n black: '0, 0, 0',\n white: '255, 255, 255'\n};\nconst defaultProps = {\n visible: true,\n destroyOnClose: false,\n forceRender: false,\n color: 'black',\n opacity: 'default',\n disableBodyScroll: true,\n getContainer: null,\n stopPropagation: ['click']\n};\nexport const Mask = p => {\n const props = mergeProps(defaultProps, p);\n const {\n locale\n } = useConfig();\n const ref = useRef(null);\n useLockScroll(ref, props.visible && props.disableBodyScroll);\n const background = useMemo(() => {\n var _a;\n const opacity = (_a = opacityRecord[props.opacity]) !== null && _a !== void 0 ? _a : props.opacity;\n const rgb = colorRecord[props.color];\n return rgb ? `rgba(${rgb}, ${opacity})` : props.color;\n }, [props.color, props.opacity]);\n const [active, setActive] = useState(props.visible);\n const unmountedRef = useUnmountedRef();\n const {\n opacity\n } = useSpring({\n opacity: props.visible ? 1 : 0,\n config: {\n precision: 0.01,\n mass: 1,\n tension: 250,\n friction: 30,\n clamp: true\n },\n onStart: () => {\n setActive(true);\n },\n onRest: () => {\n var _a, _b;\n if (unmountedRef.current) return;\n setActive(props.visible);\n if (props.visible) {\n (_a = props.afterShow) === null || _a === void 0 ? void 0 : _a.call(props);\n } else {\n (_b = props.afterClose) === null || _b === void 0 ? void 0 : _b.call(props);\n }\n }\n });\n const node = withStopPropagation(props.stopPropagation, withNativeProps(props, React.createElement(animated.div, {\n className: classPrefix,\n ref: ref,\n \"aria-hidden\": true,\n style: Object.assign(Object.assign({}, props.style), {\n background,\n opacity,\n display: active ? undefined : 'none'\n }),\n onClick: e => {\n var _a;\n if (e.target === e.currentTarget) {\n (_a = props.onMaskClick) === null || _a === void 0 ? void 0 : _a.call(props, e);\n }\n }\n }, props.onMaskClick && React.createElement(\"div\", {\n className: `${classPrefix}-aria-button`,\n role: 'button',\n \"aria-label\": locale.Mask.name,\n onClick: props.onMaskClick\n }), React.createElement(\"div\", {\n className: `${classPrefix}-content`\n }, props.children))));\n return React.createElement(ShouldRender, {\n active: active,\n forceRender: props.forceRender,\n destroyOnClose: props.destroyOnClose\n }, renderToContainer(props.getContainer, node));\n};","import * as React from \"react\";\n\nfunction CloseOutline(props) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 48 48\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\"\n }, props, {\n style: Object.assign({\n verticalAlign: '-0.125em'\n }, props.style),\n className: ['antd-mobile-icon', props.className].filter(Boolean).join(' ')\n }), /*#__PURE__*/React.createElement(\"g\", {\n id: \"CloseOutline-CloseOutline\",\n stroke: \"none\",\n strokeWidth: 1,\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n id: \"CloseOutline-\\u7F16\\u7EC4\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n id: \"CloseOutline-\\u77E9\\u5F62\",\n fill: \"#FFFFFF\",\n opacity: 0,\n x: 0,\n y: 0,\n width: 48,\n height: 48\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.6085104,8.11754663 L24.1768397,21.8195031 L24.1768397,21.8195031 L37.7443031,8.1175556 C37.8194278,8.04168616 37.9217669,7.999 38.0285372,7.999 L41.1040268,7.999 C41.3249407,7.999 41.5040268,8.1780861 41.5040268,8.399 C41.5040268,8.50440471 41.4624226,8.60554929 41.3882578,8.68044752 L26.2773302,23.9408235 L26.2773302,23.9408235 L41.5021975,39.3175645 C41.65763,39.4745475 41.6563731,39.7278104 41.4993901,39.8832429 C41.4244929,39.9574004 41.3233534,39.999 41.2179546,39.999 L38.1434012,39.999 C38.0366291,39.999 37.9342885,39.9563124 37.8591634,39.8804408 L24.1768397,26.0621438 L24.1768397,26.0621438 L10.4936501,39.8804497 C10.4185257,39.9563159 10.3161889,39.999 10.2094212,39.999 L7.13584526,39.999 C6.91493136,39.999 6.73584526,39.8199139 6.73584526,39.599 C6.73584526,39.4936017 6.77744443,39.3924627 6.85160121,39.3175656 L22.0763492,23.9408235 L22.0763492,23.9408235 L6.96554081,8.68044639 C6.81010226,8.52346929 6.81134951,8.27020637 6.9683266,8.11476782 C7.04322474,8.04060377 7.14436883,7.999 7.24977299,7.999 L10.3242852,7.999 C10.4310511,7.999 10.5333863,8.04168267 10.6085104,8.11754663 Z\",\n id: \"CloseOutline-\\u8DEF\\u5F84\",\n fill: \"currentColor\",\n fillRule: \"nonzero\"\n }))));\n}\n\nexport default CloseOutline;","import React from 'react';\nimport { CloseOutline } from 'antd-mobile-icons';\nexport const defaultPopupBaseProps = {\n closeOnMaskClick: false,\n closeIcon: React.createElement(CloseOutline, null),\n destroyOnClose: false,\n disableBodyScroll: true,\n forceRender: false,\n getContainer: () => document.body,\n mask: true,\n showCloseButton: false,\n stopPropagation: ['click'],\n visible: false\n};","import { useState } from 'react';\nimport { useIsomorphicLayoutEffect } from 'ahooks';\nexport function useInnerVisible(outerVisible) {\n const [innerVisible, setInnerVisible] = useState(outerVisible);\n useIsomorphicLayoutEffect(() => {\n setInnerVisible(outerVisible);\n }, [outerVisible]);\n return innerVisible;\n}","function clamp(v, min, max) {\n return Math.max(min, Math.min(v, max));\n}\nconst V = {\n toVector(v, fallback) {\n if (v === undefined) v = fallback;\n return Array.isArray(v) ? v : [v, v];\n },\n add(v1, v2) {\n return [v1[0] + v2[0], v1[1] + v2[1]];\n },\n sub(v1, v2) {\n return [v1[0] - v2[0], v1[1] - v2[1]];\n },\n addTo(v1, v2) {\n v1[0] += v2[0];\n v1[1] += v2[1];\n },\n subTo(v1, v2) {\n v1[0] -= v2[0];\n v1[1] -= v2[1];\n }\n};\nfunction rubberband(distance, dimension, constant) {\n if (dimension === 0 || Math.abs(dimension) === Infinity) return Math.pow(distance, constant * 5);\n return distance * dimension * constant / (dimension + constant * distance);\n}\nfunction rubberbandIfOutOfBounds(position, min, max, constant = 0.15) {\n if (constant === 0) return clamp(position, min, max);\n if (position < min) return -rubberband(min - position, max - min, constant) + min;\n if (position > max) return +rubberband(position - max, max - min, constant) + max;\n return position;\n}\nfunction computeRubberband(bounds, [Vx, Vy], [Rx, Ry]) {\n const [[X0, X1], [Y0, Y1]] = bounds;\n return [rubberbandIfOutOfBounds(Vx, X0, X1, Rx), rubberbandIfOutOfBounds(Vy, Y0, Y1, Ry)];\n}\n\nexport { V, computeRubberband as c, rubberbandIfOutOfBounds as r };\n","import { V, c as computeRubberband } from './maths-0ab39ae9.esm.js';\n\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\n\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\n\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\n\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\n\nconst EVENT_TYPE_MAP = {\n pointer: {\n start: 'down',\n change: 'move',\n end: 'up'\n },\n mouse: {\n start: 'down',\n change: 'move',\n end: 'up'\n },\n touch: {\n start: 'start',\n change: 'move',\n end: 'end'\n },\n gesture: {\n start: 'start',\n change: 'change',\n end: 'end'\n }\n};\nfunction capitalize(string) {\n if (!string) return '';\n return string[0].toUpperCase() + string.slice(1);\n}\nconst actionsWithoutCaptureSupported = ['enter', 'leave'];\nfunction hasCapture(capture = false, actionKey) {\n return capture && !actionsWithoutCaptureSupported.includes(actionKey);\n}\nfunction toHandlerProp(device, action = '', capture = false) {\n const deviceProps = EVENT_TYPE_MAP[device];\n const actionKey = deviceProps ? deviceProps[action] || action : action;\n return 'on' + capitalize(device) + capitalize(actionKey) + (hasCapture(capture, actionKey) ? 'Capture' : '');\n}\nconst pointerCaptureEvents = ['gotpointercapture', 'lostpointercapture'];\nfunction parseProp(prop) {\n let eventKey = prop.substring(2).toLowerCase();\n const passive = !!~eventKey.indexOf('passive');\n if (passive) eventKey = eventKey.replace('passive', '');\n const captureKey = pointerCaptureEvents.includes(eventKey) ? 'capturecapture' : 'capture';\n const capture = !!~eventKey.indexOf(captureKey);\n if (capture) eventKey = eventKey.replace('capture', '');\n return {\n device: eventKey,\n capture,\n passive\n };\n}\nfunction toDomEventType(device, action = '') {\n const deviceProps = EVENT_TYPE_MAP[device];\n const actionKey = deviceProps ? deviceProps[action] || action : action;\n return device + actionKey;\n}\nfunction isTouch(event) {\n return 'touches' in event;\n}\nfunction getPointerType(event) {\n if (isTouch(event)) return 'touch';\n if ('pointerType' in event) return event.pointerType;\n return 'mouse';\n}\nfunction getCurrentTargetTouchList(event) {\n return Array.from(event.touches).filter(e => {\n var _event$currentTarget, _event$currentTarget$;\n return e.target === event.currentTarget || ((_event$currentTarget = event.currentTarget) === null || _event$currentTarget === void 0 || (_event$currentTarget$ = _event$currentTarget.contains) === null || _event$currentTarget$ === void 0 ? void 0 : _event$currentTarget$.call(_event$currentTarget, e.target));\n });\n}\nfunction getTouchList(event) {\n return event.type === 'touchend' || event.type === 'touchcancel' ? event.changedTouches : event.targetTouches;\n}\nfunction getValueEvent(event) {\n return isTouch(event) ? getTouchList(event)[0] : event;\n}\nfunction distanceAngle(P1, P2) {\n try {\n const dx = P2.clientX - P1.clientX;\n const dy = P2.clientY - P1.clientY;\n const cx = (P2.clientX + P1.clientX) / 2;\n const cy = (P2.clientY + P1.clientY) / 2;\n const distance = Math.hypot(dx, dy);\n const angle = -(Math.atan2(dx, dy) * 180) / Math.PI;\n const origin = [cx, cy];\n return {\n angle,\n distance,\n origin\n };\n } catch (_unused) {}\n return null;\n}\nfunction touchIds(event) {\n return getCurrentTargetTouchList(event).map(touch => touch.identifier);\n}\nfunction touchDistanceAngle(event, ids) {\n const [P1, P2] = Array.from(event.touches).filter(touch => ids.includes(touch.identifier));\n return distanceAngle(P1, P2);\n}\nfunction pointerId(event) {\n const valueEvent = getValueEvent(event);\n return isTouch(event) ? valueEvent.identifier : valueEvent.pointerId;\n}\nfunction pointerValues(event) {\n const valueEvent = getValueEvent(event);\n return [valueEvent.clientX, valueEvent.clientY];\n}\nconst LINE_HEIGHT = 40;\nconst PAGE_HEIGHT = 800;\nfunction wheelValues(event) {\n let {\n deltaX,\n deltaY,\n deltaMode\n } = event;\n if (deltaMode === 1) {\n deltaX *= LINE_HEIGHT;\n deltaY *= LINE_HEIGHT;\n } else if (deltaMode === 2) {\n deltaX *= PAGE_HEIGHT;\n deltaY *= PAGE_HEIGHT;\n }\n return [deltaX, deltaY];\n}\nfunction scrollValues(event) {\n var _ref, _ref2;\n const {\n scrollX,\n scrollY,\n scrollLeft,\n scrollTop\n } = event.currentTarget;\n return [(_ref = scrollX !== null && scrollX !== void 0 ? scrollX : scrollLeft) !== null && _ref !== void 0 ? _ref : 0, (_ref2 = scrollY !== null && scrollY !== void 0 ? scrollY : scrollTop) !== null && _ref2 !== void 0 ? _ref2 : 0];\n}\nfunction getEventDetails(event) {\n const payload = {};\n if ('buttons' in event) payload.buttons = event.buttons;\n if ('shiftKey' in event) {\n const {\n shiftKey,\n altKey,\n metaKey,\n ctrlKey\n } = event;\n Object.assign(payload, {\n shiftKey,\n altKey,\n metaKey,\n ctrlKey\n });\n }\n return payload;\n}\n\nfunction call(v, ...args) {\n if (typeof v === 'function') {\n return v(...args);\n } else {\n return v;\n }\n}\nfunction noop() {}\nfunction chain(...fns) {\n if (fns.length === 0) return noop;\n if (fns.length === 1) return fns[0];\n return function () {\n let result;\n for (const fn of fns) {\n result = fn.apply(this, arguments) || result;\n }\n return result;\n };\n}\nfunction assignDefault(value, fallback) {\n return Object.assign({}, fallback, value || {});\n}\n\nconst BEFORE_LAST_KINEMATICS_DELAY = 32;\nclass Engine {\n constructor(ctrl, args, key) {\n this.ctrl = ctrl;\n this.args = args;\n this.key = key;\n if (!this.state) {\n this.state = {};\n this.computeValues([0, 0]);\n this.computeInitial();\n if (this.init) this.init();\n this.reset();\n }\n }\n get state() {\n return this.ctrl.state[this.key];\n }\n set state(state) {\n this.ctrl.state[this.key] = state;\n }\n get shared() {\n return this.ctrl.state.shared;\n }\n get eventStore() {\n return this.ctrl.gestureEventStores[this.key];\n }\n get timeoutStore() {\n return this.ctrl.gestureTimeoutStores[this.key];\n }\n get config() {\n return this.ctrl.config[this.key];\n }\n get sharedConfig() {\n return this.ctrl.config.shared;\n }\n get handler() {\n return this.ctrl.handlers[this.key];\n }\n reset() {\n const {\n state,\n shared,\n ingKey,\n args\n } = this;\n shared[ingKey] = state._active = state.active = state._blocked = state._force = false;\n state._step = [false, false];\n state.intentional = false;\n state._movement = [0, 0];\n state._distance = [0, 0];\n state._direction = [0, 0];\n state._delta = [0, 0];\n state._bounds = [[-Infinity, Infinity], [-Infinity, Infinity]];\n state.args = args;\n state.axis = undefined;\n state.memo = undefined;\n state.elapsedTime = state.timeDelta = 0;\n state.direction = [0, 0];\n state.distance = [0, 0];\n state.overflow = [0, 0];\n state._movementBound = [false, false];\n state.velocity = [0, 0];\n state.movement = [0, 0];\n state.delta = [0, 0];\n state.timeStamp = 0;\n }\n start(event) {\n const state = this.state;\n const config = this.config;\n if (!state._active) {\n this.reset();\n this.computeInitial();\n state._active = true;\n state.target = event.target;\n state.currentTarget = event.currentTarget;\n state.lastOffset = config.from ? call(config.from, state) : state.offset;\n state.offset = state.lastOffset;\n state.startTime = state.timeStamp = event.timeStamp;\n }\n }\n computeValues(values) {\n const state = this.state;\n state._values = values;\n state.values = this.config.transform(values);\n }\n computeInitial() {\n const state = this.state;\n state._initial = state._values;\n state.initial = state.values;\n }\n compute(event) {\n const {\n state,\n config,\n shared\n } = this;\n state.args = this.args;\n let dt = 0;\n if (event) {\n state.event = event;\n if (config.preventDefault && event.cancelable) state.event.preventDefault();\n state.type = event.type;\n shared.touches = this.ctrl.pointerIds.size || this.ctrl.touchIds.size;\n shared.locked = !!document.pointerLockElement;\n Object.assign(shared, getEventDetails(event));\n shared.down = shared.pressed = shared.buttons % 2 === 1 || shared.touches > 0;\n dt = event.timeStamp - state.timeStamp;\n state.timeStamp = event.timeStamp;\n state.elapsedTime = state.timeStamp - state.startTime;\n }\n if (state._active) {\n const _absoluteDelta = state._delta.map(Math.abs);\n V.addTo(state._distance, _absoluteDelta);\n }\n if (this.axisIntent) this.axisIntent(event);\n const [_m0, _m1] = state._movement;\n const [t0, t1] = config.threshold;\n const {\n _step,\n values\n } = state;\n if (config.hasCustomTransform) {\n if (_step[0] === false) _step[0] = Math.abs(_m0) >= t0 && values[0];\n if (_step[1] === false) _step[1] = Math.abs(_m1) >= t1 && values[1];\n } else {\n if (_step[0] === false) _step[0] = Math.abs(_m0) >= t0 && Math.sign(_m0) * t0;\n if (_step[1] === false) _step[1] = Math.abs(_m1) >= t1 && Math.sign(_m1) * t1;\n }\n state.intentional = _step[0] !== false || _step[1] !== false;\n if (!state.intentional) return;\n const movement = [0, 0];\n if (config.hasCustomTransform) {\n const [v0, v1] = values;\n movement[0] = _step[0] !== false ? v0 - _step[0] : 0;\n movement[1] = _step[1] !== false ? v1 - _step[1] : 0;\n } else {\n movement[0] = _step[0] !== false ? _m0 - _step[0] : 0;\n movement[1] = _step[1] !== false ? _m1 - _step[1] : 0;\n }\n if (this.restrictToAxis && !state._blocked) this.restrictToAxis(movement);\n const previousOffset = state.offset;\n const gestureIsActive = state._active && !state._blocked || state.active;\n if (gestureIsActive) {\n state.first = state._active && !state.active;\n state.last = !state._active && state.active;\n state.active = shared[this.ingKey] = state._active;\n if (event) {\n if (state.first) {\n if ('bounds' in config) state._bounds = call(config.bounds, state);\n if (this.setup) this.setup();\n }\n state.movement = movement;\n this.computeOffset();\n }\n }\n const [ox, oy] = state.offset;\n const [[x0, x1], [y0, y1]] = state._bounds;\n state.overflow = [ox < x0 ? -1 : ox > x1 ? 1 : 0, oy < y0 ? -1 : oy > y1 ? 1 : 0];\n state._movementBound[0] = state.overflow[0] ? state._movementBound[0] === false ? state._movement[0] : state._movementBound[0] : false;\n state._movementBound[1] = state.overflow[1] ? state._movementBound[1] === false ? state._movement[1] : state._movementBound[1] : false;\n const rubberband = state._active ? config.rubberband || [0, 0] : [0, 0];\n state.offset = computeRubberband(state._bounds, state.offset, rubberband);\n state.delta = V.sub(state.offset, previousOffset);\n this.computeMovement();\n if (gestureIsActive && (!state.last || dt > BEFORE_LAST_KINEMATICS_DELAY)) {\n state.delta = V.sub(state.offset, previousOffset);\n const absoluteDelta = state.delta.map(Math.abs);\n V.addTo(state.distance, absoluteDelta);\n state.direction = state.delta.map(Math.sign);\n state._direction = state._delta.map(Math.sign);\n if (!state.first && dt > 0) {\n state.velocity = [absoluteDelta[0] / dt, absoluteDelta[1] / dt];\n state.timeDelta = dt;\n }\n }\n }\n emit() {\n const state = this.state;\n const shared = this.shared;\n const config = this.config;\n if (!state._active) this.clean();\n if ((state._blocked || !state.intentional) && !state._force && !config.triggerAllEvents) return;\n const memo = this.handler(_objectSpread2(_objectSpread2(_objectSpread2({}, shared), state), {}, {\n [this.aliasKey]: state.values\n }));\n if (memo !== undefined) state.memo = memo;\n }\n clean() {\n this.eventStore.clean();\n this.timeoutStore.clean();\n }\n}\n\nfunction selectAxis([dx, dy], threshold) {\n const absDx = Math.abs(dx);\n const absDy = Math.abs(dy);\n if (absDx > absDy && absDx > threshold) {\n return 'x';\n }\n if (absDy > absDx && absDy > threshold) {\n return 'y';\n }\n return undefined;\n}\nclass CoordinatesEngine extends Engine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"aliasKey\", 'xy');\n }\n reset() {\n super.reset();\n this.state.axis = undefined;\n }\n init() {\n this.state.offset = [0, 0];\n this.state.lastOffset = [0, 0];\n }\n computeOffset() {\n this.state.offset = V.add(this.state.lastOffset, this.state.movement);\n }\n computeMovement() {\n this.state.movement = V.sub(this.state.offset, this.state.lastOffset);\n }\n axisIntent(event) {\n const state = this.state;\n const config = this.config;\n if (!state.axis && event) {\n const threshold = typeof config.axisThreshold === 'object' ? config.axisThreshold[getPointerType(event)] : config.axisThreshold;\n state.axis = selectAxis(state._movement, threshold);\n }\n state._blocked = (config.lockDirection || !!config.axis) && !state.axis || !!config.axis && config.axis !== state.axis;\n }\n restrictToAxis(v) {\n if (this.config.axis || this.config.lockDirection) {\n switch (this.state.axis) {\n case 'x':\n v[1] = 0;\n break;\n case 'y':\n v[0] = 0;\n break;\n }\n }\n }\n}\n\nconst identity = v => v;\nconst DEFAULT_RUBBERBAND = 0.15;\nconst commonConfigResolver = {\n enabled(value = true) {\n return value;\n },\n eventOptions(value, _k, config) {\n return _objectSpread2(_objectSpread2({}, config.shared.eventOptions), value);\n },\n preventDefault(value = false) {\n return value;\n },\n triggerAllEvents(value = false) {\n return value;\n },\n rubberband(value = 0) {\n switch (value) {\n case true:\n return [DEFAULT_RUBBERBAND, DEFAULT_RUBBERBAND];\n case false:\n return [0, 0];\n default:\n return V.toVector(value);\n }\n },\n from(value) {\n if (typeof value === 'function') return value;\n if (value != null) return V.toVector(value);\n },\n transform(value, _k, config) {\n const transform = value || config.shared.transform;\n this.hasCustomTransform = !!transform;\n if (process.env.NODE_ENV === 'development') {\n const originalTransform = transform || identity;\n return v => {\n const r = originalTransform(v);\n if (!isFinite(r[0]) || !isFinite(r[1])) {\n console.warn(`[@use-gesture]: config.transform() must produce a valid result, but it was: [${r[0]},${[1]}]`);\n }\n return r;\n };\n }\n return transform || identity;\n },\n threshold(value) {\n return V.toVector(value, 0);\n }\n};\nif (process.env.NODE_ENV === 'development') {\n Object.assign(commonConfigResolver, {\n domTarget(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`domTarget\\` option has been renamed to \\`target\\`.`);\n }\n return NaN;\n },\n lockDirection(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`lockDirection\\` option has been merged with \\`axis\\`. Use it as in \\`{ axis: 'lock' }\\``);\n }\n return NaN;\n },\n initial(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`initial\\` option has been renamed to \\`from\\`.`);\n }\n return NaN;\n }\n });\n}\n\nconst DEFAULT_AXIS_THRESHOLD = 0;\nconst coordinatesConfigResolver = _objectSpread2(_objectSpread2({}, commonConfigResolver), {}, {\n axis(_v, _k, {\n axis\n }) {\n this.lockDirection = axis === 'lock';\n if (!this.lockDirection) return axis;\n },\n axisThreshold(value = DEFAULT_AXIS_THRESHOLD) {\n return value;\n },\n bounds(value = {}) {\n if (typeof value === 'function') {\n return state => coordinatesConfigResolver.bounds(value(state));\n }\n if ('current' in value) {\n return () => value.current;\n }\n if (typeof HTMLElement === 'function' && value instanceof HTMLElement) {\n return value;\n }\n const {\n left = -Infinity,\n right = Infinity,\n top = -Infinity,\n bottom = Infinity\n } = value;\n return [[left, right], [top, bottom]];\n }\n});\n\nconst KEYS_DELTA_MAP = {\n ArrowRight: (displacement, factor = 1) => [displacement * factor, 0],\n ArrowLeft: (displacement, factor = 1) => [-1 * displacement * factor, 0],\n ArrowUp: (displacement, factor = 1) => [0, -1 * displacement * factor],\n ArrowDown: (displacement, factor = 1) => [0, displacement * factor]\n};\nclass DragEngine extends CoordinatesEngine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"ingKey\", 'dragging');\n }\n reset() {\n super.reset();\n const state = this.state;\n state._pointerId = undefined;\n state._pointerActive = false;\n state._keyboardActive = false;\n state._preventScroll = false;\n state._delayed = false;\n state.swipe = [0, 0];\n state.tap = false;\n state.canceled = false;\n state.cancel = this.cancel.bind(this);\n }\n setup() {\n const state = this.state;\n if (state._bounds instanceof HTMLElement) {\n const boundRect = state._bounds.getBoundingClientRect();\n const targetRect = state.currentTarget.getBoundingClientRect();\n const _bounds = {\n left: boundRect.left - targetRect.left + state.offset[0],\n right: boundRect.right - targetRect.right + state.offset[0],\n top: boundRect.top - targetRect.top + state.offset[1],\n bottom: boundRect.bottom - targetRect.bottom + state.offset[1]\n };\n state._bounds = coordinatesConfigResolver.bounds(_bounds);\n }\n }\n cancel() {\n const state = this.state;\n if (state.canceled) return;\n state.canceled = true;\n state._active = false;\n setTimeout(() => {\n this.compute();\n this.emit();\n }, 0);\n }\n setActive() {\n this.state._active = this.state._pointerActive || this.state._keyboardActive;\n }\n clean() {\n this.pointerClean();\n this.state._pointerActive = false;\n this.state._keyboardActive = false;\n super.clean();\n }\n pointerDown(event) {\n const config = this.config;\n const state = this.state;\n if (event.buttons != null && (Array.isArray(config.pointerButtons) ? !config.pointerButtons.includes(event.buttons) : config.pointerButtons !== -1 && config.pointerButtons !== event.buttons)) return;\n const ctrlIds = this.ctrl.setEventIds(event);\n if (config.pointerCapture) {\n event.target.setPointerCapture(event.pointerId);\n }\n if (ctrlIds && ctrlIds.size > 1 && state._pointerActive) return;\n this.start(event);\n this.setupPointer(event);\n state._pointerId = pointerId(event);\n state._pointerActive = true;\n this.computeValues(pointerValues(event));\n this.computeInitial();\n if (config.preventScrollAxis && getPointerType(event) !== 'mouse') {\n state._active = false;\n this.setupScrollPrevention(event);\n } else if (config.delay > 0) {\n this.setupDelayTrigger(event);\n if (config.triggerAllEvents) {\n this.compute(event);\n this.emit();\n }\n } else {\n this.startPointerDrag(event);\n }\n }\n startPointerDrag(event) {\n const state = this.state;\n state._active = true;\n state._preventScroll = true;\n state._delayed = false;\n this.compute(event);\n this.emit();\n }\n pointerMove(event) {\n const state = this.state;\n const config = this.config;\n if (!state._pointerActive) return;\n const id = pointerId(event);\n if (state._pointerId !== undefined && id !== state._pointerId) return;\n const _values = pointerValues(event);\n if (document.pointerLockElement === event.target) {\n state._delta = [event.movementX, event.movementY];\n } else {\n state._delta = V.sub(_values, state._values);\n this.computeValues(_values);\n }\n V.addTo(state._movement, state._delta);\n this.compute(event);\n if (state._delayed && state.intentional) {\n this.timeoutStore.remove('dragDelay');\n state.active = false;\n this.startPointerDrag(event);\n return;\n }\n if (config.preventScrollAxis && !state._preventScroll) {\n if (state.axis) {\n if (state.axis === config.preventScrollAxis || config.preventScrollAxis === 'xy') {\n state._active = false;\n this.clean();\n return;\n } else {\n this.timeoutStore.remove('startPointerDrag');\n this.startPointerDrag(event);\n return;\n }\n } else {\n return;\n }\n }\n this.emit();\n }\n pointerUp(event) {\n this.ctrl.setEventIds(event);\n try {\n if (this.config.pointerCapture && event.target.hasPointerCapture(event.pointerId)) {\n ;\n event.target.releasePointerCapture(event.pointerId);\n }\n } catch (_unused) {\n if (process.env.NODE_ENV === 'development') {\n console.warn(`[@use-gesture]: If you see this message, it's likely that you're using an outdated version of \\`@react-three/fiber\\`. \\n\\nPlease upgrade to the latest version.`);\n }\n }\n const state = this.state;\n const config = this.config;\n if (!state._active || !state._pointerActive) return;\n const id = pointerId(event);\n if (state._pointerId !== undefined && id !== state._pointerId) return;\n this.state._pointerActive = false;\n this.setActive();\n this.compute(event);\n const [dx, dy] = state._distance;\n state.tap = dx <= config.tapsThreshold && dy <= config.tapsThreshold;\n if (state.tap && config.filterTaps) {\n state._force = true;\n } else {\n const [_dx, _dy] = state._delta;\n const [_mx, _my] = state._movement;\n const [svx, svy] = config.swipe.velocity;\n const [sx, sy] = config.swipe.distance;\n const sdt = config.swipe.duration;\n if (state.elapsedTime < sdt) {\n const _vx = Math.abs(_dx / state.timeDelta);\n const _vy = Math.abs(_dy / state.timeDelta);\n if (_vx > svx && Math.abs(_mx) > sx) state.swipe[0] = Math.sign(_dx);\n if (_vy > svy && Math.abs(_my) > sy) state.swipe[1] = Math.sign(_dy);\n }\n }\n this.emit();\n }\n pointerClick(event) {\n if (!this.state.tap && event.detail > 0) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n setupPointer(event) {\n const config = this.config;\n const device = config.device;\n if (process.env.NODE_ENV === 'development') {\n try {\n if (device === 'pointer' && config.preventScrollDelay === undefined) {\n const currentTarget = 'uv' in event ? event.sourceEvent.currentTarget : event.currentTarget;\n const style = window.getComputedStyle(currentTarget);\n if (style.touchAction === 'auto') {\n console.warn(`[@use-gesture]: The drag target has its \\`touch-action\\` style property set to \\`auto\\`. It is recommended to add \\`touch-action: 'none'\\` so that the drag gesture behaves correctly on touch-enabled devices. For more information read this: https://use-gesture.netlify.app/docs/extras/#touch-action.\\n\\nThis message will only show in development mode. It won't appear in production. If this is intended, you can ignore it.`, currentTarget);\n }\n }\n } catch (_unused2) {}\n }\n if (config.pointerLock) {\n event.currentTarget.requestPointerLock();\n }\n if (!config.pointerCapture) {\n this.eventStore.add(this.sharedConfig.window, device, 'change', this.pointerMove.bind(this));\n this.eventStore.add(this.sharedConfig.window, device, 'end', this.pointerUp.bind(this));\n this.eventStore.add(this.sharedConfig.window, device, 'cancel', this.pointerUp.bind(this));\n }\n }\n pointerClean() {\n if (this.config.pointerLock && document.pointerLockElement === this.state.currentTarget) {\n document.exitPointerLock();\n }\n }\n preventScroll(event) {\n if (this.state._preventScroll && event.cancelable) {\n event.preventDefault();\n }\n }\n setupScrollPrevention(event) {\n this.state._preventScroll = false;\n persistEvent(event);\n const remove = this.eventStore.add(this.sharedConfig.window, 'touch', 'change', this.preventScroll.bind(this), {\n passive: false\n });\n this.eventStore.add(this.sharedConfig.window, 'touch', 'end', remove);\n this.eventStore.add(this.sharedConfig.window, 'touch', 'cancel', remove);\n this.timeoutStore.add('startPointerDrag', this.startPointerDrag.bind(this), this.config.preventScrollDelay, event);\n }\n setupDelayTrigger(event) {\n this.state._delayed = true;\n this.timeoutStore.add('dragDelay', () => {\n this.state._step = [0, 0];\n this.startPointerDrag(event);\n }, this.config.delay);\n }\n keyDown(event) {\n const deltaFn = KEYS_DELTA_MAP[event.key];\n if (deltaFn) {\n const state = this.state;\n const factor = event.shiftKey ? 10 : event.altKey ? 0.1 : 1;\n this.start(event);\n state._delta = deltaFn(this.config.keyboardDisplacement, factor);\n state._keyboardActive = true;\n V.addTo(state._movement, state._delta);\n this.compute(event);\n this.emit();\n }\n }\n keyUp(event) {\n if (!(event.key in KEYS_DELTA_MAP)) return;\n this.state._keyboardActive = false;\n this.setActive();\n this.compute(event);\n this.emit();\n }\n bind(bindFunction) {\n const device = this.config.device;\n bindFunction(device, 'start', this.pointerDown.bind(this));\n if (this.config.pointerCapture) {\n bindFunction(device, 'change', this.pointerMove.bind(this));\n bindFunction(device, 'end', this.pointerUp.bind(this));\n bindFunction(device, 'cancel', this.pointerUp.bind(this));\n bindFunction('lostPointerCapture', '', this.pointerUp.bind(this));\n }\n if (this.config.keys) {\n bindFunction('key', 'down', this.keyDown.bind(this));\n bindFunction('key', 'up', this.keyUp.bind(this));\n }\n if (this.config.filterTaps) {\n bindFunction('click', '', this.pointerClick.bind(this), {\n capture: true,\n passive: false\n });\n }\n }\n}\nfunction persistEvent(event) {\n 'persist' in event && typeof event.persist === 'function' && event.persist();\n}\n\nconst isBrowser = typeof window !== 'undefined' && window.document && window.document.createElement;\nfunction supportsTouchEvents() {\n return isBrowser && 'ontouchstart' in window;\n}\nfunction isTouchScreen() {\n return supportsTouchEvents() || isBrowser && window.navigator.maxTouchPoints > 1;\n}\nfunction supportsPointerEvents() {\n return isBrowser && 'onpointerdown' in window;\n}\nfunction supportsPointerLock() {\n return isBrowser && 'exitPointerLock' in window.document;\n}\nfunction supportsGestureEvents() {\n try {\n return 'constructor' in GestureEvent;\n } catch (e) {\n return false;\n }\n}\nconst SUPPORT = {\n isBrowser,\n gesture: supportsGestureEvents(),\n touch: supportsTouchEvents(),\n touchscreen: isTouchScreen(),\n pointer: supportsPointerEvents(),\n pointerLock: supportsPointerLock()\n};\n\nconst DEFAULT_PREVENT_SCROLL_DELAY = 250;\nconst DEFAULT_DRAG_DELAY = 180;\nconst DEFAULT_SWIPE_VELOCITY = 0.5;\nconst DEFAULT_SWIPE_DISTANCE = 50;\nconst DEFAULT_SWIPE_DURATION = 250;\nconst DEFAULT_KEYBOARD_DISPLACEMENT = 10;\nconst DEFAULT_DRAG_AXIS_THRESHOLD = {\n mouse: 0,\n touch: 0,\n pen: 8\n};\nconst dragConfigResolver = _objectSpread2(_objectSpread2({}, coordinatesConfigResolver), {}, {\n device(_v, _k, {\n pointer: {\n touch = false,\n lock = false,\n mouse = false\n } = {}\n }) {\n this.pointerLock = lock && SUPPORT.pointerLock;\n if (SUPPORT.touch && touch) return 'touch';\n if (this.pointerLock) return 'mouse';\n if (SUPPORT.pointer && !mouse) return 'pointer';\n if (SUPPORT.touch) return 'touch';\n return 'mouse';\n },\n preventScrollAxis(value, _k, {\n preventScroll\n }) {\n this.preventScrollDelay = typeof preventScroll === 'number' ? preventScroll : preventScroll || preventScroll === undefined && value ? DEFAULT_PREVENT_SCROLL_DELAY : undefined;\n if (!SUPPORT.touchscreen || preventScroll === false) return undefined;\n return value ? value : preventScroll !== undefined ? 'y' : undefined;\n },\n pointerCapture(_v, _k, {\n pointer: {\n capture = true,\n buttons = 1,\n keys = true\n } = {}\n }) {\n this.pointerButtons = buttons;\n this.keys = keys;\n return !this.pointerLock && this.device === 'pointer' && capture;\n },\n threshold(value, _k, {\n filterTaps = false,\n tapsThreshold = 3,\n axis = undefined\n }) {\n const threshold = V.toVector(value, filterTaps ? tapsThreshold : axis ? 1 : 0);\n this.filterTaps = filterTaps;\n this.tapsThreshold = tapsThreshold;\n return threshold;\n },\n swipe({\n velocity = DEFAULT_SWIPE_VELOCITY,\n distance = DEFAULT_SWIPE_DISTANCE,\n duration = DEFAULT_SWIPE_DURATION\n } = {}) {\n return {\n velocity: this.transform(V.toVector(velocity)),\n distance: this.transform(V.toVector(distance)),\n duration\n };\n },\n delay(value = 0) {\n switch (value) {\n case true:\n return DEFAULT_DRAG_DELAY;\n case false:\n return 0;\n default:\n return value;\n }\n },\n axisThreshold(value) {\n if (!value) return DEFAULT_DRAG_AXIS_THRESHOLD;\n return _objectSpread2(_objectSpread2({}, DEFAULT_DRAG_AXIS_THRESHOLD), value);\n },\n keyboardDisplacement(value = DEFAULT_KEYBOARD_DISPLACEMENT) {\n return value;\n }\n});\nif (process.env.NODE_ENV === 'development') {\n Object.assign(dragConfigResolver, {\n useTouch(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`useTouch\\` option has been renamed to \\`pointer.touch\\`. Use it as in \\`{ pointer: { touch: true } }\\`.`);\n }\n return NaN;\n },\n experimental_preventWindowScrollY(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`experimental_preventWindowScrollY\\` option has been renamed to \\`preventScroll\\`.`);\n }\n return NaN;\n },\n swipeVelocity(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`swipeVelocity\\` option has been renamed to \\`swipe.velocity\\`. Use it as in \\`{ swipe: { velocity: 0.5 } }\\`.`);\n }\n return NaN;\n },\n swipeDistance(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`swipeDistance\\` option has been renamed to \\`swipe.distance\\`. Use it as in \\`{ swipe: { distance: 50 } }\\`.`);\n }\n return NaN;\n },\n swipeDuration(value) {\n if (value !== undefined) {\n throw Error(`[@use-gesture]: \\`swipeDuration\\` option has been renamed to \\`swipe.duration\\`. Use it as in \\`{ swipe: { duration: 250 } }\\`.`);\n }\n return NaN;\n }\n });\n}\n\nfunction clampStateInternalMovementToBounds(state) {\n const [ox, oy] = state.overflow;\n const [dx, dy] = state._delta;\n const [dirx, diry] = state._direction;\n if (ox < 0 && dx > 0 && dirx < 0 || ox > 0 && dx < 0 && dirx > 0) {\n state._movement[0] = state._movementBound[0];\n }\n if (oy < 0 && dy > 0 && diry < 0 || oy > 0 && dy < 0 && diry > 0) {\n state._movement[1] = state._movementBound[1];\n }\n}\n\nconst SCALE_ANGLE_RATIO_INTENT_DEG = 30;\nconst PINCH_WHEEL_RATIO = 100;\nclass PinchEngine extends Engine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"ingKey\", 'pinching');\n _defineProperty(this, \"aliasKey\", 'da');\n }\n init() {\n this.state.offset = [1, 0];\n this.state.lastOffset = [1, 0];\n this.state._pointerEvents = new Map();\n }\n reset() {\n super.reset();\n const state = this.state;\n state._touchIds = [];\n state.canceled = false;\n state.cancel = this.cancel.bind(this);\n state.turns = 0;\n }\n computeOffset() {\n const {\n type,\n movement,\n lastOffset\n } = this.state;\n if (type === 'wheel') {\n this.state.offset = V.add(movement, lastOffset);\n } else {\n this.state.offset = [(1 + movement[0]) * lastOffset[0], movement[1] + lastOffset[1]];\n }\n }\n computeMovement() {\n const {\n offset,\n lastOffset\n } = this.state;\n this.state.movement = [offset[0] / lastOffset[0], offset[1] - lastOffset[1]];\n }\n axisIntent() {\n const state = this.state;\n const [_m0, _m1] = state._movement;\n if (!state.axis) {\n const axisMovementDifference = Math.abs(_m0) * SCALE_ANGLE_RATIO_INTENT_DEG - Math.abs(_m1);\n if (axisMovementDifference < 0) state.axis = 'angle';else if (axisMovementDifference > 0) state.axis = 'scale';\n }\n }\n restrictToAxis(v) {\n if (this.config.lockDirection) {\n if (this.state.axis === 'scale') v[1] = 0;else if (this.state.axis === 'angle') v[0] = 0;\n }\n }\n cancel() {\n const state = this.state;\n if (state.canceled) return;\n setTimeout(() => {\n state.canceled = true;\n state._active = false;\n this.compute();\n this.emit();\n }, 0);\n }\n touchStart(event) {\n this.ctrl.setEventIds(event);\n const state = this.state;\n const ctrlTouchIds = this.ctrl.touchIds;\n if (state._active) {\n if (state._touchIds.every(id => ctrlTouchIds.has(id))) return;\n }\n if (ctrlTouchIds.size < 2) return;\n this.start(event);\n state._touchIds = Array.from(ctrlTouchIds).slice(0, 2);\n const payload = touchDistanceAngle(event, state._touchIds);\n if (!payload) return;\n this.pinchStart(event, payload);\n }\n pointerStart(event) {\n if (event.buttons != null && event.buttons % 2 !== 1) return;\n this.ctrl.setEventIds(event);\n event.target.setPointerCapture(event.pointerId);\n const state = this.state;\n const _pointerEvents = state._pointerEvents;\n const ctrlPointerIds = this.ctrl.pointerIds;\n if (state._active) {\n if (Array.from(_pointerEvents.keys()).every(id => ctrlPointerIds.has(id))) return;\n }\n if (_pointerEvents.size < 2) {\n _pointerEvents.set(event.pointerId, event);\n }\n if (state._pointerEvents.size < 2) return;\n this.start(event);\n const payload = distanceAngle(...Array.from(_pointerEvents.values()));\n if (!payload) return;\n this.pinchStart(event, payload);\n }\n pinchStart(event, payload) {\n const state = this.state;\n state.origin = payload.origin;\n this.computeValues([payload.distance, payload.angle]);\n this.computeInitial();\n this.compute(event);\n this.emit();\n }\n touchMove(event) {\n if (!this.state._active) return;\n const payload = touchDistanceAngle(event, this.state._touchIds);\n if (!payload) return;\n this.pinchMove(event, payload);\n }\n pointerMove(event) {\n const _pointerEvents = this.state._pointerEvents;\n if (_pointerEvents.has(event.pointerId)) {\n _pointerEvents.set(event.pointerId, event);\n }\n if (!this.state._active) return;\n const payload = distanceAngle(...Array.from(_pointerEvents.values()));\n if (!payload) return;\n this.pinchMove(event, payload);\n }\n pinchMove(event, payload) {\n const state = this.state;\n const prev_a = state._values[1];\n const delta_a = payload.angle - prev_a;\n let delta_turns = 0;\n if (Math.abs(delta_a) > 270) delta_turns += Math.sign(delta_a);\n this.computeValues([payload.distance, payload.angle - 360 * delta_turns]);\n state.origin = payload.origin;\n state.turns = delta_turns;\n state._movement = [state._values[0] / state._initial[0] - 1, state._values[1] - state._initial[1]];\n this.compute(event);\n this.emit();\n }\n touchEnd(event) {\n this.ctrl.setEventIds(event);\n if (!this.state._active) return;\n if (this.state._touchIds.some(id => !this.ctrl.touchIds.has(id))) {\n this.state._active = false;\n this.compute(event);\n this.emit();\n }\n }\n pointerEnd(event) {\n const state = this.state;\n this.ctrl.setEventIds(event);\n try {\n event.target.releasePointerCapture(event.pointerId);\n } catch (_unused) {}\n if (state._pointerEvents.has(event.pointerId)) {\n state._pointerEvents.delete(event.pointerId);\n }\n if (!state._active) return;\n if (state._pointerEvents.size < 2) {\n state._active = false;\n this.compute(event);\n this.emit();\n }\n }\n gestureStart(event) {\n if (event.cancelable) event.preventDefault();\n const state = this.state;\n if (state._active) return;\n this.start(event);\n this.computeValues([event.scale, event.rotation]);\n state.origin = [event.clientX, event.clientY];\n this.compute(event);\n this.emit();\n }\n gestureMove(event) {\n if (event.cancelable) event.preventDefault();\n if (!this.state._active) return;\n const state = this.state;\n this.computeValues([event.scale, event.rotation]);\n state.origin = [event.clientX, event.clientY];\n const _previousMovement = state._movement;\n state._movement = [event.scale - 1, event.rotation];\n state._delta = V.sub(state._movement, _previousMovement);\n this.compute(event);\n this.emit();\n }\n gestureEnd(event) {\n if (!this.state._active) return;\n this.state._active = false;\n this.compute(event);\n this.emit();\n }\n wheel(event) {\n const modifierKey = this.config.modifierKey;\n if (modifierKey && (Array.isArray(modifierKey) ? !modifierKey.find(k => event[k]) : !event[modifierKey])) return;\n if (!this.state._active) this.wheelStart(event);else this.wheelChange(event);\n this.timeoutStore.add('wheelEnd', this.wheelEnd.bind(this));\n }\n wheelStart(event) {\n this.start(event);\n this.wheelChange(event);\n }\n wheelChange(event) {\n const isR3f = ('uv' in event);\n if (!isR3f) {\n if (event.cancelable) {\n event.preventDefault();\n }\n if (process.env.NODE_ENV === 'development' && !event.defaultPrevented) {\n console.warn(`[@use-gesture]: To properly support zoom on trackpads, try using the \\`target\\` option.\\n\\nThis message will only appear in development mode.`);\n }\n }\n const state = this.state;\n state._delta = [-wheelValues(event)[1] / PINCH_WHEEL_RATIO * state.offset[0], 0];\n V.addTo(state._movement, state._delta);\n clampStateInternalMovementToBounds(state);\n this.state.origin = [event.clientX, event.clientY];\n this.compute(event);\n this.emit();\n }\n wheelEnd() {\n if (!this.state._active) return;\n this.state._active = false;\n this.compute();\n this.emit();\n }\n bind(bindFunction) {\n const device = this.config.device;\n if (!!device) {\n bindFunction(device, 'start', this[device + 'Start'].bind(this));\n bindFunction(device, 'change', this[device + 'Move'].bind(this));\n bindFunction(device, 'end', this[device + 'End'].bind(this));\n bindFunction(device, 'cancel', this[device + 'End'].bind(this));\n bindFunction('lostPointerCapture', '', this[device + 'End'].bind(this));\n }\n if (this.config.pinchOnWheel) {\n bindFunction('wheel', '', this.wheel.bind(this), {\n passive: false\n });\n }\n }\n}\n\nconst pinchConfigResolver = _objectSpread2(_objectSpread2({}, commonConfigResolver), {}, {\n device(_v, _k, {\n shared,\n pointer: {\n touch = false\n } = {}\n }) {\n const sharedConfig = shared;\n if (sharedConfig.target && !SUPPORT.touch && SUPPORT.gesture) return 'gesture';\n if (SUPPORT.touch && touch) return 'touch';\n if (SUPPORT.touchscreen) {\n if (SUPPORT.pointer) return 'pointer';\n if (SUPPORT.touch) return 'touch';\n }\n },\n bounds(_v, _k, {\n scaleBounds = {},\n angleBounds = {}\n }) {\n const _scaleBounds = state => {\n const D = assignDefault(call(scaleBounds, state), {\n min: -Infinity,\n max: Infinity\n });\n return [D.min, D.max];\n };\n const _angleBounds = state => {\n const A = assignDefault(call(angleBounds, state), {\n min: -Infinity,\n max: Infinity\n });\n return [A.min, A.max];\n };\n if (typeof scaleBounds !== 'function' && typeof angleBounds !== 'function') return [_scaleBounds(), _angleBounds()];\n return state => [_scaleBounds(state), _angleBounds(state)];\n },\n threshold(value, _k, config) {\n this.lockDirection = config.axis === 'lock';\n const threshold = V.toVector(value, this.lockDirection ? [0.1, 3] : 0);\n return threshold;\n },\n modifierKey(value) {\n if (value === undefined) return 'ctrlKey';\n return value;\n },\n pinchOnWheel(value = true) {\n return value;\n }\n});\n\nclass MoveEngine extends CoordinatesEngine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"ingKey\", 'moving');\n }\n move(event) {\n if (this.config.mouseOnly && event.pointerType !== 'mouse') return;\n if (!this.state._active) this.moveStart(event);else this.moveChange(event);\n this.timeoutStore.add('moveEnd', this.moveEnd.bind(this));\n }\n moveStart(event) {\n this.start(event);\n this.computeValues(pointerValues(event));\n this.compute(event);\n this.computeInitial();\n this.emit();\n }\n moveChange(event) {\n if (!this.state._active) return;\n const values = pointerValues(event);\n const state = this.state;\n state._delta = V.sub(values, state._values);\n V.addTo(state._movement, state._delta);\n this.computeValues(values);\n this.compute(event);\n this.emit();\n }\n moveEnd(event) {\n if (!this.state._active) return;\n this.state._active = false;\n this.compute(event);\n this.emit();\n }\n bind(bindFunction) {\n bindFunction('pointer', 'change', this.move.bind(this));\n bindFunction('pointer', 'leave', this.moveEnd.bind(this));\n }\n}\n\nconst moveConfigResolver = _objectSpread2(_objectSpread2({}, coordinatesConfigResolver), {}, {\n mouseOnly: (value = true) => value\n});\n\nclass ScrollEngine extends CoordinatesEngine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"ingKey\", 'scrolling');\n }\n scroll(event) {\n if (!this.state._active) this.start(event);\n this.scrollChange(event);\n this.timeoutStore.add('scrollEnd', this.scrollEnd.bind(this));\n }\n scrollChange(event) {\n if (event.cancelable) event.preventDefault();\n const state = this.state;\n const values = scrollValues(event);\n state._delta = V.sub(values, state._values);\n V.addTo(state._movement, state._delta);\n this.computeValues(values);\n this.compute(event);\n this.emit();\n }\n scrollEnd() {\n if (!this.state._active) return;\n this.state._active = false;\n this.compute();\n this.emit();\n }\n bind(bindFunction) {\n bindFunction('scroll', '', this.scroll.bind(this));\n }\n}\n\nconst scrollConfigResolver = coordinatesConfigResolver;\n\nclass WheelEngine extends CoordinatesEngine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"ingKey\", 'wheeling');\n }\n wheel(event) {\n if (!this.state._active) this.start(event);\n this.wheelChange(event);\n this.timeoutStore.add('wheelEnd', this.wheelEnd.bind(this));\n }\n wheelChange(event) {\n const state = this.state;\n state._delta = wheelValues(event);\n V.addTo(state._movement, state._delta);\n clampStateInternalMovementToBounds(state);\n this.compute(event);\n this.emit();\n }\n wheelEnd() {\n if (!this.state._active) return;\n this.state._active = false;\n this.compute();\n this.emit();\n }\n bind(bindFunction) {\n bindFunction('wheel', '', this.wheel.bind(this));\n }\n}\n\nconst wheelConfigResolver = coordinatesConfigResolver;\n\nclass HoverEngine extends CoordinatesEngine {\n constructor(...args) {\n super(...args);\n _defineProperty(this, \"ingKey\", 'hovering');\n }\n enter(event) {\n if (this.config.mouseOnly && event.pointerType !== 'mouse') return;\n this.start(event);\n this.computeValues(pointerValues(event));\n this.compute(event);\n this.emit();\n }\n leave(event) {\n if (this.config.mouseOnly && event.pointerType !== 'mouse') return;\n const state = this.state;\n if (!state._active) return;\n state._active = false;\n const values = pointerValues(event);\n state._movement = state._delta = V.sub(values, state._values);\n this.computeValues(values);\n this.compute(event);\n state.delta = state.movement;\n this.emit();\n }\n bind(bindFunction) {\n bindFunction('pointer', 'enter', this.enter.bind(this));\n bindFunction('pointer', 'leave', this.leave.bind(this));\n }\n}\n\nconst hoverConfigResolver = _objectSpread2(_objectSpread2({}, coordinatesConfigResolver), {}, {\n mouseOnly: (value = true) => value\n});\n\nconst EngineMap = new Map();\nconst ConfigResolverMap = new Map();\nfunction registerAction(action) {\n EngineMap.set(action.key, action.engine);\n ConfigResolverMap.set(action.key, action.resolver);\n}\nconst dragAction = {\n key: 'drag',\n engine: DragEngine,\n resolver: dragConfigResolver\n};\nconst hoverAction = {\n key: 'hover',\n engine: HoverEngine,\n resolver: hoverConfigResolver\n};\nconst moveAction = {\n key: 'move',\n engine: MoveEngine,\n resolver: moveConfigResolver\n};\nconst pinchAction = {\n key: 'pinch',\n engine: PinchEngine,\n resolver: pinchConfigResolver\n};\nconst scrollAction = {\n key: 'scroll',\n engine: ScrollEngine,\n resolver: scrollConfigResolver\n};\nconst wheelAction = {\n key: 'wheel',\n engine: WheelEngine,\n resolver: wheelConfigResolver\n};\n\nexport { ConfigResolverMap as C, EngineMap as E, SUPPORT as S, _objectSpread2 as _, _defineProperty as a, touchIds as b, chain as c, toHandlerProp as d, dragAction as e, pinchAction as f, hoverAction as h, isTouch as i, moveAction as m, parseProp as p, registerAction as r, scrollAction as s, toDomEventType as t, wheelAction as w };\n","import { S as SUPPORT, C as ConfigResolverMap, _ as _objectSpread2, a as _defineProperty, t as toDomEventType, i as isTouch, b as touchIds, E as EngineMap, c as chain, p as parseProp, d as toHandlerProp } from './actions-fe213e88.esm.js';\nimport './maths-0ab39ae9.esm.js';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\n\nconst sharedConfigResolver = {\n target(value) {\n if (value) {\n return () => 'current' in value ? value.current : value;\n }\n return undefined;\n },\n enabled(value = true) {\n return value;\n },\n window(value = SUPPORT.isBrowser ? window : undefined) {\n return value;\n },\n eventOptions({\n passive = true,\n capture = false\n } = {}) {\n return {\n passive,\n capture\n };\n },\n transform(value) {\n return value;\n }\n};\n\nconst _excluded = [\"target\", \"eventOptions\", \"window\", \"enabled\", \"transform\"];\nfunction resolveWith(config = {}, resolvers) {\n const result = {};\n for (const [key, resolver] of Object.entries(resolvers)) {\n switch (typeof resolver) {\n case 'function':\n if (process.env.NODE_ENV === 'development') {\n const r = resolver.call(result, config[key], key, config);\n if (!Number.isNaN(r)) result[key] = r;\n } else {\n result[key] = resolver.call(result, config[key], key, config);\n }\n break;\n case 'object':\n result[key] = resolveWith(config[key], resolver);\n break;\n case 'boolean':\n if (resolver) result[key] = config[key];\n break;\n }\n }\n return result;\n}\nfunction parse(newConfig, gestureKey, _config = {}) {\n const _ref = newConfig,\n {\n target,\n eventOptions,\n window,\n enabled,\n transform\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n _config.shared = resolveWith({\n target,\n eventOptions,\n window,\n enabled,\n transform\n }, sharedConfigResolver);\n if (gestureKey) {\n const resolver = ConfigResolverMap.get(gestureKey);\n _config[gestureKey] = resolveWith(_objectSpread2({\n shared: _config.shared\n }, rest), resolver);\n } else {\n for (const key in rest) {\n const resolver = ConfigResolverMap.get(key);\n if (resolver) {\n _config[key] = resolveWith(_objectSpread2({\n shared: _config.shared\n }, rest[key]), resolver);\n } else if (process.env.NODE_ENV === 'development') {\n if (!['drag', 'pinch', 'scroll', 'wheel', 'move', 'hover'].includes(key)) {\n if (key === 'domTarget') {\n throw Error(`[@use-gesture]: \\`domTarget\\` option has been renamed to \\`target\\`.`);\n }\n console.warn(`[@use-gesture]: Unknown config key \\`${key}\\` was used. Please read the documentation for further information.`);\n }\n }\n }\n }\n return _config;\n}\n\nclass EventStore {\n constructor(ctrl, gestureKey) {\n _defineProperty(this, \"_listeners\", new Set());\n this._ctrl = ctrl;\n this._gestureKey = gestureKey;\n }\n add(element, device, action, handler, options) {\n const listeners = this._listeners;\n const type = toDomEventType(device, action);\n const _options = this._gestureKey ? this._ctrl.config[this._gestureKey].eventOptions : {};\n const eventOptions = _objectSpread2(_objectSpread2({}, _options), options);\n element.addEventListener(type, handler, eventOptions);\n const remove = () => {\n element.removeEventListener(type, handler, eventOptions);\n listeners.delete(remove);\n };\n listeners.add(remove);\n return remove;\n }\n clean() {\n this._listeners.forEach(remove => remove());\n this._listeners.clear();\n }\n}\n\nclass TimeoutStore {\n constructor() {\n _defineProperty(this, \"_timeouts\", new Map());\n }\n add(key, callback, ms = 140, ...args) {\n this.remove(key);\n this._timeouts.set(key, window.setTimeout(callback, ms, ...args));\n }\n remove(key) {\n const timeout = this._timeouts.get(key);\n if (timeout) window.clearTimeout(timeout);\n }\n clean() {\n this._timeouts.forEach(timeout => void window.clearTimeout(timeout));\n this._timeouts.clear();\n }\n}\n\nclass Controller {\n constructor(handlers) {\n _defineProperty(this, \"gestures\", new Set());\n _defineProperty(this, \"_targetEventStore\", new EventStore(this));\n _defineProperty(this, \"gestureEventStores\", {});\n _defineProperty(this, \"gestureTimeoutStores\", {});\n _defineProperty(this, \"handlers\", {});\n _defineProperty(this, \"config\", {});\n _defineProperty(this, \"pointerIds\", new Set());\n _defineProperty(this, \"touchIds\", new Set());\n _defineProperty(this, \"state\", {\n shared: {\n shiftKey: false,\n metaKey: false,\n ctrlKey: false,\n altKey: false\n }\n });\n resolveGestures(this, handlers);\n }\n setEventIds(event) {\n if (isTouch(event)) {\n this.touchIds = new Set(touchIds(event));\n return this.touchIds;\n } else if ('pointerId' in event) {\n if (event.type === 'pointerup' || event.type === 'pointercancel') this.pointerIds.delete(event.pointerId);else if (event.type === 'pointerdown') this.pointerIds.add(event.pointerId);\n return this.pointerIds;\n }\n }\n applyHandlers(handlers, nativeHandlers) {\n this.handlers = handlers;\n this.nativeHandlers = nativeHandlers;\n }\n applyConfig(config, gestureKey) {\n this.config = parse(config, gestureKey, this.config);\n }\n clean() {\n this._targetEventStore.clean();\n for (const key of this.gestures) {\n this.gestureEventStores[key].clean();\n this.gestureTimeoutStores[key].clean();\n }\n }\n effect() {\n if (this.config.shared.target) this.bind();\n return () => this._targetEventStore.clean();\n }\n bind(...args) {\n const sharedConfig = this.config.shared;\n const props = {};\n let target;\n if (sharedConfig.target) {\n target = sharedConfig.target();\n if (!target) return;\n }\n if (sharedConfig.enabled) {\n for (const gestureKey of this.gestures) {\n const gestureConfig = this.config[gestureKey];\n const bindFunction = bindToProps(props, gestureConfig.eventOptions, !!target);\n if (gestureConfig.enabled) {\n const Engine = EngineMap.get(gestureKey);\n new Engine(this, args, gestureKey).bind(bindFunction);\n }\n }\n const nativeBindFunction = bindToProps(props, sharedConfig.eventOptions, !!target);\n for (const eventKey in this.nativeHandlers) {\n nativeBindFunction(eventKey, '', event => this.nativeHandlers[eventKey](_objectSpread2(_objectSpread2({}, this.state.shared), {}, {\n event,\n args\n })), undefined, true);\n }\n }\n for (const handlerProp in props) {\n props[handlerProp] = chain(...props[handlerProp]);\n }\n if (!target) return props;\n for (const handlerProp in props) {\n const {\n device,\n capture,\n passive\n } = parseProp(handlerProp);\n this._targetEventStore.add(target, device, '', props[handlerProp], {\n capture,\n passive\n });\n }\n }\n}\nfunction setupGesture(ctrl, gestureKey) {\n ctrl.gestures.add(gestureKey);\n ctrl.gestureEventStores[gestureKey] = new EventStore(ctrl, gestureKey);\n ctrl.gestureTimeoutStores[gestureKey] = new TimeoutStore();\n}\nfunction resolveGestures(ctrl, internalHandlers) {\n if (internalHandlers.drag) setupGesture(ctrl, 'drag');\n if (internalHandlers.wheel) setupGesture(ctrl, 'wheel');\n if (internalHandlers.scroll) setupGesture(ctrl, 'scroll');\n if (internalHandlers.move) setupGesture(ctrl, 'move');\n if (internalHandlers.pinch) setupGesture(ctrl, 'pinch');\n if (internalHandlers.hover) setupGesture(ctrl, 'hover');\n}\nconst bindToProps = (props, eventOptions, withPassiveOption) => (device, action, handler, options = {}, isNative = false) => {\n var _options$capture, _options$passive;\n const capture = (_options$capture = options.capture) !== null && _options$capture !== void 0 ? _options$capture : eventOptions.capture;\n const passive = (_options$passive = options.passive) !== null && _options$passive !== void 0 ? _options$passive : eventOptions.passive;\n let handlerProp = isNative ? device : toHandlerProp(device, action, capture);\n if (withPassiveOption && passive) handlerProp += 'Passive';\n props[handlerProp] = props[handlerProp] || [];\n props[handlerProp].push(handler);\n};\n\nconst RE_NOT_NATIVE = /^on(Drag|Wheel|Scroll|Move|Pinch|Hover)/;\nfunction sortHandlers(_handlers) {\n const native = {};\n const handlers = {};\n const actions = new Set();\n for (let key in _handlers) {\n if (RE_NOT_NATIVE.test(key)) {\n actions.add(RegExp.lastMatch);\n handlers[key] = _handlers[key];\n } else {\n native[key] = _handlers[key];\n }\n }\n return [handlers, native, actions];\n}\nfunction registerGesture(actions, handlers, handlerKey, key, internalHandlers, config) {\n if (!actions.has(handlerKey)) return;\n if (!EngineMap.has(key)) {\n if (process.env.NODE_ENV === 'development') {\n console.warn(`[@use-gesture]: You've created a custom handler that that uses the \\`${key}\\` gesture but isn't properly configured.\\n\\nPlease add \\`${key}Action\\` when creating your handler.`);\n }\n return;\n }\n const startKey = handlerKey + 'Start';\n const endKey = handlerKey + 'End';\n const fn = state => {\n let memo = undefined;\n if (state.first && startKey in handlers) handlers[startKey](state);\n if (handlerKey in handlers) memo = handlers[handlerKey](state);\n if (state.last && endKey in handlers) handlers[endKey](state);\n return memo;\n };\n internalHandlers[key] = fn;\n config[key] = config[key] || {};\n}\nfunction parseMergedHandlers(mergedHandlers, mergedConfig) {\n const [handlers, nativeHandlers, actions] = sortHandlers(mergedHandlers);\n const internalHandlers = {};\n registerGesture(actions, handlers, 'onDrag', 'drag', internalHandlers, mergedConfig);\n registerGesture(actions, handlers, 'onWheel', 'wheel', internalHandlers, mergedConfig);\n registerGesture(actions, handlers, 'onScroll', 'scroll', internalHandlers, mergedConfig);\n registerGesture(actions, handlers, 'onPinch', 'pinch', internalHandlers, mergedConfig);\n registerGesture(actions, handlers, 'onMove', 'move', internalHandlers, mergedConfig);\n registerGesture(actions, handlers, 'onHover', 'hover', internalHandlers, mergedConfig);\n return {\n handlers: internalHandlers,\n config: mergedConfig,\n nativeHandlers\n };\n}\n\nexport { Controller, parseMergedHandlers };\n","import { registerAction, dragAction, pinchAction, wheelAction, scrollAction, moveAction, hoverAction } from '@use-gesture/core/actions';\nexport * from '@use-gesture/core/actions';\nimport React from 'react';\nimport { Controller, parseMergedHandlers } from '@use-gesture/core';\nexport * from '@use-gesture/core/utils';\nexport * from '@use-gesture/core/types';\n\nfunction useRecognizers(handlers, config = {}, gestureKey, nativeHandlers) {\n const ctrl = React.useMemo(() => new Controller(handlers), []);\n ctrl.applyHandlers(handlers, nativeHandlers);\n ctrl.applyConfig(config, gestureKey);\n React.useEffect(ctrl.effect.bind(ctrl));\n React.useEffect(() => {\n return ctrl.clean.bind(ctrl);\n }, []);\n if (config.target === undefined) {\n return ctrl.bind.bind(ctrl);\n }\n return undefined;\n}\n\nfunction useDrag(handler, config) {\n registerAction(dragAction);\n return useRecognizers({\n drag: handler\n }, config || {}, 'drag');\n}\n\nfunction usePinch(handler, config) {\n registerAction(pinchAction);\n return useRecognizers({\n pinch: handler\n }, config || {}, 'pinch');\n}\n\nfunction useWheel(handler, config) {\n registerAction(wheelAction);\n return useRecognizers({\n wheel: handler\n }, config || {}, 'wheel');\n}\n\nfunction useScroll(handler, config) {\n registerAction(scrollAction);\n return useRecognizers({\n scroll: handler\n }, config || {}, 'scroll');\n}\n\nfunction useMove(handler, config) {\n registerAction(moveAction);\n return useRecognizers({\n move: handler\n }, config || {}, 'move');\n}\n\nfunction useHover(handler, config) {\n registerAction(hoverAction);\n return useRecognizers({\n hover: handler\n }, config || {}, 'hover');\n}\n\nfunction createUseGesture(actions) {\n actions.forEach(registerAction);\n return function useGesture(_handlers, _config) {\n const {\n handlers,\n nativeHandlers,\n config\n } = parseMergedHandlers(_handlers, _config || {});\n return useRecognizers(handlers, config, undefined, nativeHandlers);\n };\n}\n\nfunction useGesture(handlers, config) {\n const hook = createUseGesture([dragAction, pinchAction, scrollAction, wheelAction, moveAction, hoverAction]);\n return hook(handlers, config || {});\n}\n\nexport { createUseGesture, useDrag, useGesture, useHover, useMove, usePinch, useScroll, useWheel };\n","import classNames from 'classnames';\nimport React, { useState, useRef } from 'react';\nimport { useIsomorphicLayoutEffect, useUnmountedRef } from 'ahooks';\nimport { withNativeProps } from '../../utils/native-props';\nimport { mergeProps } from '../../utils/with-default-props';\nimport Mask from '../mask';\nimport { useLockScroll } from '../../utils/use-lock-scroll';\nimport { renderToContainer } from '../../utils/render-to-container';\nimport { useSpring, animated } from '@react-spring/web';\nimport { withStopPropagation } from '../../utils/with-stop-propagation';\nimport { ShouldRender } from '../../utils/should-render';\nimport { defaultPopupBaseProps } from './popup-base-props';\nimport { useInnerVisible } from '../../utils/use-inner-visible';\nimport { useConfig } from '../config-provider';\nimport { useDrag } from '@use-gesture/react';\nconst classPrefix = `adm-popup`;\nconst defaultProps = Object.assign(Object.assign({}, defaultPopupBaseProps), {\n closeOnSwipe: false,\n position: 'bottom'\n});\nexport const Popup = p => {\n const {\n locale,\n popup: componentConfig = {}\n } = useConfig();\n const props = mergeProps(defaultProps, componentConfig, p);\n const bodyCls = classNames(`${classPrefix}-body`, props.bodyClassName, `${classPrefix}-body-position-${props.position}`);\n const [active, setActive] = useState(props.visible);\n const ref = useRef(null);\n useLockScroll(ref, props.disableBodyScroll && active ? 'strict' : false);\n useIsomorphicLayoutEffect(() => {\n if (props.visible) {\n setActive(true);\n }\n }, [props.visible]);\n const unmountedRef = useUnmountedRef();\n const {\n percent\n } = useSpring({\n percent: props.visible ? 0 : 100,\n config: {\n precision: 0.1,\n mass: 0.4,\n tension: 300,\n friction: 30\n },\n onRest: () => {\n var _a, _b;\n if (unmountedRef.current) return;\n setActive(props.visible);\n if (props.visible) {\n (_a = props.afterShow) === null || _a === void 0 ? void 0 : _a.call(props);\n } else {\n (_b = props.afterClose) === null || _b === void 0 ? void 0 : _b.call(props);\n }\n }\n });\n const bind = useDrag(({\n swipe: [, swipeY]\n }) => {\n var _a;\n if (!props.closeOnSwipe) return;\n if (swipeY === 1 && props.position === 'bottom' || swipeY === -1 && props.position === 'top') {\n (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n }, {\n axis: 'y',\n enabled: ['top', 'bottom'].includes(props.position)\n });\n const maskVisible = useInnerVisible(active && props.visible);\n const node = withStopPropagation(props.stopPropagation, withNativeProps(props, React.createElement(\"div\", Object.assign({\n className: classPrefix,\n onClick: props.onClick,\n style: {\n display: active ? undefined : 'none',\n touchAction: ['top', 'bottom'].includes(props.position) ? 'none' : 'auto'\n }\n }, bind()), props.mask && React.createElement(Mask, {\n visible: maskVisible,\n forceRender: props.forceRender,\n destroyOnClose: props.destroyOnClose,\n onMaskClick: e => {\n var _a, _b;\n (_a = props.onMaskClick) === null || _a === void 0 ? void 0 : _a.call(props, e);\n if (props.closeOnMaskClick) {\n (_b = props.onClose) === null || _b === void 0 ? void 0 : _b.call(props);\n }\n },\n className: props.maskClassName,\n style: props.maskStyle,\n disableBodyScroll: false,\n stopPropagation: props.stopPropagation\n }), React.createElement(animated.div, {\n className: bodyCls,\n style: Object.assign(Object.assign({}, props.bodyStyle), {\n pointerEvents: percent.to(v => v === 0 ? 'unset' : 'none'),\n transform: percent.to(v => {\n if (props.position === 'bottom') {\n return `translate(0, ${v}%)`;\n }\n if (props.position === 'top') {\n return `translate(0, -${v}%)`;\n }\n if (props.position === 'left') {\n return `translate(-${v}%, 0)`;\n }\n if (props.position === 'right') {\n return `translate(${v}%, 0)`;\n }\n return 'none';\n })\n }),\n ref: ref\n }, props.showCloseButton && React.createElement(\"a\", {\n className: classNames(`${classPrefix}-close-icon`, 'adm-plain-anchor'),\n onClick: () => {\n var _a;\n (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props);\n },\n role: 'button',\n \"aria-label\": locale.common.close\n }, props.closeIcon), props.children))));\n return React.createElement(ShouldRender, {\n active: active,\n forceRender: props.forceRender,\n destroyOnClose: props.destroyOnClose\n }, renderToContainer(props.getContainer, node));\n};","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover its components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.7.7\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy;\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","import axios from 'axios';\nimport Cookies from \"js-cookie\";\n\nlet env =null\ntry{\n if (process == undefined || process.env== undefined){\n env = import.meta\n }else{\n env = process.env\n }\n}catch(e){\n env = {'VITE_API_BASE_URL':'http://localhost/api/', \n 'VITE_WEB_SITE':'/appstore_panel/dist', \n 'VITE_MARKETPLACE_SITE':'http://localhost', \n \"VITE_APP_BASE_URL\":'/appstore_panel/dist'\n }\n}\n\n\nconst GITHUB_CLIENT_ID = env.GITHUB_CLIENT_ID;\nexport const API_BASE_URL = env.VITE_API_BASE_URL || 'https://huaxiaobao.net/api/';\n\n\nexport const WEB_SITE = env.VITE_WEB_SITE || 'https://huaxiaobao.net'\nexport const MARKETPLACE_SITE = env.VITE_MARKETPLACE_SITE || 'https://huaxiaobao.net'\n\nexport const MARKET_API_BASE_URL = MARKETPLACE_SITE+'/api';\n\nconst GOOGLE_ANALYTICS_MEASUREMENT_ID = env.GOOGLE_ANALYTICS_MEASUREMENT_ID;\nconst GOOGLE_ANALYTICS_API_SECRET = env.GOOGLE_ANALYTICS_API_SECRET;\nconst MIXPANEL_AUTH_ID = env.NEXT_PUBLIC_MIXPANEL_AUTH_ID\n\n \nexport const baseUrl = () => {\n return API_BASE_URL;\n};\n\nexport const baseWebsite = () => {\n if ( window.location.hostname.includes('shangxiaobao')){\n return '.huaxiaobao.net'\n }else if (window.location.hostname.includes('taoai')) {\n return '.taoai.store'\n }else if (window.location.hostname.includes('aiugc')) {\n return '.aiugc.org'\n }else if (window.location.hostname.includes('dianxiaoshang')) {\n return '.dianxiaoshang.com'\n }else{\n return window.location.hostname;\n }\n}; \n\nexport const githubClientId = () => {\n return GITHUB_CLIENT_ID;\n};\n\nexport const analyticsMeasurementId = () => {\n return GOOGLE_ANALYTICS_MEASUREMENT_ID;\n};\n\nexport const analyticsApiSecret = () => {\n return GOOGLE_ANALYTICS_API_SECRET;\n};\n\nexport const mixpanelId = () => {\n return MIXPANEL_AUTH_ID;\n};\n\nconst api = axios.create({\n baseURL: API_BASE_URL,\n headers: {\n common: {\n 'Content-Type': 'application/json',\n },\n },\n proxy: {\n host: 'http://www.huaxiaobao.net',\n port: 8081\n }\n});\n\n\nconst market_api = axios.create({\n baseURL: \n MARKET_API_BASE_URL,\n headers: {\n common: {\n 'Content-Type': 'application/json',\n },\n },\n});\n\napi.interceptors.request.use(config => {\n if (typeof window !== 'undefined') {\n // const accessToken = localStorage.getItem(\"accessToken\");\n let accessToken = Cookies.get(\"accessToken\");\n if (!accessToken){\n accessToken= localStorage.getItem('accessTokenHuaxiaobao')\n }\n console.log(accessToken, 'we have the this token')\n if (accessToken!=undefined && accessToken!='') {\n config.headers['Authorization'] = `Bearer ${accessToken}`;\n }\n }\n return config;\n});\n\nexport default api;\n","/*!\n\nJSZip v3.10.1 - A JavaScript class for generating and reading zip files\n\n\n(c) 2009-2016 Stuart Knightley \nDual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown.\n\nJSZip uses the library pako released under the MIT license :\nhttps://github.com/nodeca/pako/blob/main/LICENSE\n*/\n\n!function(e){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=e();else if(\"function\"==typeof define&&define.amd)define([],e);else{(\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this).JSZip=e()}}(function(){return function s(a,o,h){function u(r,e){if(!o[r]){if(!a[r]){var t=\"function\"==typeof require&&require;if(!e&&t)return t(r,!0);if(l)return l(r,!0);var n=new Error(\"Cannot find module '\"+r+\"'\");throw n.code=\"MODULE_NOT_FOUND\",n}var i=o[r]={exports:{}};a[r][0].call(i.exports,function(e){var t=a[r][1][e];return u(t||e)},i,i.exports,s,a,o,h)}return o[r].exports}for(var l=\"function\"==typeof require&&require,e=0;e>2,s=(3&t)<<4|r>>4,a=1>6:64,o=2>4,r=(15&i)<<4|(s=p.indexOf(e.charAt(o++)))>>2,n=(3&s)<<6|(a=p.indexOf(e.charAt(o++))),l[h++]=t,64!==s&&(l[h++]=r),64!==a&&(l[h++]=n);return l}},{\"./support\":30,\"./utils\":32}],2:[function(e,t,r){\"use strict\";var n=e(\"./external\"),i=e(\"./stream/DataWorker\"),s=e(\"./stream/Crc32Probe\"),a=e(\"./stream/DataLengthProbe\");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a(\"data_length\")),t=this;return e.on(\"end\",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error(\"Bug : uncompressed data size mismatch\")}),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo(\"compressedSize\",this.compressedSize).withStreamInfo(\"uncompressedSize\",this.uncompressedSize).withStreamInfo(\"crc32\",this.crc32).withStreamInfo(\"compression\",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a(\"uncompressedSize\")).pipe(t.compressWorker(r)).pipe(new a(\"compressedSize\")).withStreamInfo(\"compression\",t)},t.exports=o},{\"./external\":6,\"./stream/Crc32Probe\":25,\"./stream/DataLengthProbe\":26,\"./stream/DataWorker\":27}],3:[function(e,t,r){\"use strict\";var n=e(\"./stream/GenericWorker\");r.STORE={magic:\"\\0\\0\",compressWorker:function(){return new n(\"STORE compression\")},uncompressWorker:function(){return new n(\"STORE decompression\")}},r.DEFLATE=e(\"./flate\")},{\"./flate\":7,\"./stream/GenericWorker\":28}],4:[function(e,t,r){\"use strict\";var n=e(\"./utils\");var o=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?\"string\"!==n.getTypeOf(e)?function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t[a])];return-1^e}(0|t,e,e.length,0):function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t.charCodeAt(a))];return-1^e}(0|t,e,e.length,0):0}},{\"./utils\":32}],5:[function(e,t,r){\"use strict\";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){\"use strict\";var n=null;n=\"undefined\"!=typeof Promise?Promise:e(\"lie\"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){\"use strict\";var n=\"undefined\"!=typeof Uint8Array&&\"undefined\"!=typeof Uint16Array&&\"undefined\"!=typeof Uint32Array,i=e(\"pako\"),s=e(\"./utils\"),a=e(\"./stream/GenericWorker\"),o=n?\"uint8array\":\"array\";function h(e,t){a.call(this,\"FlateWorker/\"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic=\"\\b\\0\",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var t=this;this._pako.onData=function(e){t.push({data:e,meta:t.meta})}},r.compressWorker=function(e){return new h(\"Deflate\",e)},r.uncompressWorker=function(){return new h(\"Inflate\",{})}},{\"./stream/GenericWorker\":28,\"./utils\":32,pako:38}],8:[function(e,t,r){\"use strict\";function A(e,t){var r,n=\"\";for(r=0;r>>=8;return n}function n(e,t,r,n,i,s){var a,o,h=e.file,u=e.compression,l=s!==O.utf8encode,f=I.transformTo(\"string\",s(h.name)),c=I.transformTo(\"string\",O.utf8encode(h.name)),d=h.comment,p=I.transformTo(\"string\",s(d)),m=I.transformTo(\"string\",O.utf8encode(d)),_=c.length!==h.name.length,g=m.length!==d.length,b=\"\",v=\"\",y=\"\",w=h.dir,k=h.date,x={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(x.crc32=e.crc32,x.compressedSize=e.compressedSize,x.uncompressedSize=e.uncompressedSize);var S=0;t&&(S|=8),l||!_&&!g||(S|=2048);var z=0,C=0;w&&(z|=16),\"UNIX\"===i?(C=798,z|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(h.unixPermissions,w)):(C=20,z|=function(e){return 63&(e||0)}(h.dosPermissions)),a=k.getUTCHours(),a<<=6,a|=k.getUTCMinutes(),a<<=5,a|=k.getUTCSeconds()/2,o=k.getUTCFullYear()-1980,o<<=4,o|=k.getUTCMonth()+1,o<<=5,o|=k.getUTCDate(),_&&(v=A(1,1)+A(B(f),4)+c,b+=\"up\"+A(v.length,2)+v),g&&(y=A(1,1)+A(B(p),4)+m,b+=\"uc\"+A(y.length,2)+y);var E=\"\";return E+=\"\\n\\0\",E+=A(S,2),E+=u.magic,E+=A(a,2),E+=A(o,2),E+=A(x.crc32,4),E+=A(x.compressedSize,4),E+=A(x.uncompressedSize,4),E+=A(f.length,2),E+=A(b.length,2),{fileRecord:R.LOCAL_FILE_HEADER+E+f+b,dirRecord:R.CENTRAL_FILE_HEADER+A(C,2)+E+A(p.length,2)+\"\\0\\0\\0\\0\"+A(z,4)+A(n,4)+f+b+p}}var I=e(\"../utils\"),i=e(\"../stream/GenericWorker\"),O=e(\"../utf8\"),B=e(\"../crc32\"),R=e(\"../signature\");function s(e,t,r,n){i.call(this,\"ZipFileWorker\"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}I.inherits(s,i),s.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,i.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},s.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=n(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},s.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=n(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return R.DATA_DESCRIPTOR+A(e.crc32,4)+A(e.compressedSize,4)+A(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},s.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo(\"string\",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{\"../utils\":32}],19:[function(e,t,r){\"use strict\";var n=e(\"./Uint8ArrayReader\");function i(e){n.call(this,e)}e(\"../utils\").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{\"../utils\":32,\"./Uint8ArrayReader\":21}],20:[function(e,t,r){\"use strict\";var n=e(\"./DataReader\");function i(e){n.call(this,e)}e(\"../utils\").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{\"../utils\":32,\"./DataReader\":18}],21:[function(e,t,r){\"use strict\";var n=e(\"./ArrayReader\");function i(e){n.call(this,e)}e(\"../utils\").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{\"../utils\":32,\"./ArrayReader\":17}],22:[function(e,t,r){\"use strict\";var n=e(\"../utils\"),i=e(\"../support\"),s=e(\"./ArrayReader\"),a=e(\"./StringReader\"),o=e(\"./NodeBufferReader\"),h=e(\"./Uint8ArrayReader\");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),\"string\"!==t||i.uint8array?\"nodebuffer\"===t?new o(e):i.uint8array?new h(n.transformTo(\"uint8array\",e)):new s(n.transformTo(\"array\",e)):new a(e)}},{\"../support\":30,\"../utils\":32,\"./ArrayReader\":17,\"./NodeBufferReader\":19,\"./StringReader\":20,\"./Uint8ArrayReader\":21}],23:[function(e,t,r){\"use strict\";r.LOCAL_FILE_HEADER=\"PK\u0003\u0004\",r.CENTRAL_FILE_HEADER=\"PK\u0001\u0002\",r.CENTRAL_DIRECTORY_END=\"PK\u0005\u0006\",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR=\"PK\u0006\u0007\",r.ZIP64_CENTRAL_DIRECTORY_END=\"PK\u0006\u0006\",r.DATA_DESCRIPTOR=\"PK\u0007\\b\"},{}],24:[function(e,t,r){\"use strict\";var n=e(\"./GenericWorker\"),i=e(\"../utils\");function s(e){n.call(this,\"ConvertWorker to \"+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{\"../utils\":32,\"./GenericWorker\":28}],25:[function(e,t,r){\"use strict\";var n=e(\"./GenericWorker\"),i=e(\"../crc32\");function s(){n.call(this,\"Crc32Probe\"),this.withStreamInfo(\"crc32\",0)}e(\"../utils\").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{\"../crc32\":4,\"../utils\":32,\"./GenericWorker\":28}],26:[function(e,t,r){\"use strict\";var n=e(\"../utils\"),i=e(\"./GenericWorker\");function s(e){i.call(this,\"DataLengthProbe for \"+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{\"../utils\":32,\"./GenericWorker\":28}],27:[function(e,t,r){\"use strict\";var n=e(\"../utils\"),i=e(\"./GenericWorker\");function s(e){i.call(this,\"DataWorker\");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type=\"\",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case\"string\":e=this.data.substring(this.index,t);break;case\"uint8array\":e=this.data.subarray(this.index,t);break;case\"array\":case\"nodebuffer\":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{\"../utils\":32,\"./GenericWorker\":28}],28:[function(e,t,r){\"use strict\";function n(e){this.name=e||\"default\",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit(\"data\",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit(\"end\"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit(\"error\",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit(\"error\",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r \"+e:e}},t.exports=n},{}],29:[function(e,t,r){\"use strict\";var h=e(\"../utils\"),i=e(\"./ConvertWorker\"),s=e(\"./GenericWorker\"),u=e(\"../base64\"),n=e(\"../support\"),a=e(\"../external\"),o=null;if(n.nodestream)try{o=e(\"../nodejs/NodejsStreamOutputAdapter\")}catch(e){}function l(e,o){return new a.Promise(function(t,r){var n=[],i=e._internalType,s=e._outputType,a=e._mimeType;e.on(\"data\",function(e,t){n.push(e),o&&o(t)}).on(\"error\",function(e){n=[],r(e)}).on(\"end\",function(){try{var e=function(e,t,r){switch(e){case\"blob\":return h.newBlob(h.transformTo(\"arraybuffer\",t),r);case\"base64\":return u.encode(t);default:return h.transformTo(e,t)}}(s,function(e,t){var r,n=0,i=null,s=0;for(r=0;r>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t}(e)},s.utf8decode=function(e){return h.nodebuffer?o.transformTo(\"nodebuffer\",e).toString(\"utf-8\"):function(e){var t,r,n,i,s=e.length,a=new Array(2*s);for(t=r=0;t>10&1023,a[r++]=56320|1023&n)}return a.length!==r&&(a.subarray?a=a.subarray(0,r):a.length=r),o.applyFromCharCode(a)}(e=o.transformTo(h.uint8array?\"uint8array\":\"array\",e))},o.inherits(a,n),a.prototype.processChunk=function(e){var t=o.transformTo(h.uint8array?\"uint8array\":\"array\",e.data);if(this.leftOver&&this.leftOver.length){if(h.uint8array){var r=t;(t=new Uint8Array(r.length+this.leftOver.length)).set(this.leftOver,0),t.set(r,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var n=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0?t:0===r?t:r+u[e[r]]>t?r:t}(t),i=t;n!==t.length&&(h.uint8array?(i=t.subarray(0,n),this.leftOver=t.subarray(n,t.length)):(i=t.slice(0,n),this.leftOver=t.slice(n,t.length))),this.push({data:s.utf8decode(i),meta:e.meta})},a.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:s.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},s.Utf8DecodeWorker=a,o.inherits(l,n),l.prototype.processChunk=function(e){this.push({data:s.utf8encode(e.data),meta:e.meta})},s.Utf8EncodeWorker=l},{\"./nodejsUtils\":14,\"./stream/GenericWorker\":28,\"./support\":30,\"./utils\":32}],32:[function(e,t,a){\"use strict\";var o=e(\"./support\"),h=e(\"./base64\"),r=e(\"./nodejsUtils\"),u=e(\"./external\");function n(e){return e}function l(e,t){for(var r=0;r>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||\"/\"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===s.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===s.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===s.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===s.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t},r.buf2binstring=function(e){return l(e,e.length)},r.binstring2buf=function(e){for(var t=new h.Buf8(e.length),r=0,n=t.length;r>10&1023,o[n++]=56320|1023&i)}return l(o,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0?t:0===r?t:r+u[e[r]]>t?r:t}},{\"./common\":41}],43:[function(e,t,r){\"use strict\";t.exports=function(e,t,r,n){for(var i=65535&e|0,s=e>>>16&65535|0,a=0;0!==r;){for(r-=a=2e3>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t[a])];return-1^e}},{}],46:[function(e,t,r){\"use strict\";var h,c=e(\"../utils/common\"),u=e(\"./trees\"),d=e(\"./adler32\"),p=e(\"./crc32\"),n=e(\"./messages\"),l=0,f=4,m=0,_=-2,g=-1,b=4,i=2,v=8,y=9,s=286,a=30,o=19,w=2*s+1,k=15,x=3,S=258,z=S+x+1,C=42,E=113,A=1,I=2,O=3,B=4;function R(e,t){return e.msg=n[t],t}function T(e){return(e<<1)-(4e.avail_out&&(r=e.avail_out),0!==r&&(c.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function N(e,t){u._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,F(e.strm)}function U(e,t){e.pending_buf[e.pending++]=t}function P(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function L(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-z?e.strstart-(e.w_size-z):0,u=e.window,l=e.w_mask,f=e.prev,c=e.strstart+S,d=u[s+a-1],p=u[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(u[(r=t)+a]===p&&u[r+a-1]===d&&u[r]===u[s]&&u[++r]===u[s+1]){s+=2,r++;do{}while(u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&sh&&0!=--i);return a<=e.lookahead?a:e.lookahead}function j(e){var t,r,n,i,s,a,o,h,u,l,f=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-z)){for(c.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=r=e.hash_size;n=e.head[--t],e.head[t]=f<=n?n-f:0,--r;);for(t=r=f;n=e.prev[--t],e.prev[t]=f<=n?n-f:0,--r;);i+=f}if(0===e.strm.avail_in)break;if(a=e.strm,o=e.window,h=e.strstart+e.lookahead,u=i,l=void 0,l=a.avail_in,u=x)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x)if(n=u._tr_tally(e,e.strstart-e.match_start,e.match_length-x),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=x){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-x,n=u._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-x),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(j(e),0===e.lookahead&&t===l)return A;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,N(e,!1),0===e.strm.avail_out))return A;if(e.strstart-e.block_start>=e.w_size-z&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):(e.strstart>e.block_start&&(N(e,!1),e.strm.avail_out),A)}),new M(4,4,8,4,Z),new M(4,5,16,8,Z),new M(4,6,32,32,Z),new M(4,4,16,16,W),new M(8,16,32,32,W),new M(8,16,128,128,W),new M(8,32,128,256,W),new M(32,128,258,1024,W),new M(32,258,258,4096,W)],r.deflateInit=function(e,t){return Y(e,t,v,15,8,0)},r.deflateInit2=Y,r.deflateReset=K,r.deflateResetKeep=G,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?_:(e.state.gzhead=t,m):_},r.deflate=function(e,t){var r,n,i,s;if(!e||!e.state||5>8&255),U(n,n.gzhead.time>>16&255),U(n,n.gzhead.time>>24&255),U(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),U(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(U(n,255&n.gzhead.extra.length),U(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=p(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(U(n,0),U(n,0),U(n,0),U(n,0),U(n,0),U(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),U(n,3),n.status=E);else{var a=v+(n.w_bits-8<<4)<<8;a|=(2<=n.strategy||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(a|=32),a+=31-a%31,n.status=E,P(n,a),0!==n.strstart&&(P(n,e.adler>>>16),P(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending!==n.pending_buf_size));)U(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}s=n.gzindexi&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),0===s&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}s=n.gzindexi&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),0===s&&(n.status=103)}else n.status=103;if(103===n.status&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&F(e),n.pending+2<=n.pending_buf_size&&(U(n,255&e.adler),U(n,e.adler>>8&255),e.adler=0,n.status=E)):n.status=E),0!==n.pending){if(F(e),0===e.avail_out)return n.last_flush=-1,m}else if(0===e.avail_in&&T(t)<=T(r)&&t!==f)return R(e,-5);if(666===n.status&&0!==e.avail_in)return R(e,-5);if(0!==e.avail_in||0!==n.lookahead||t!==l&&666!==n.status){var o=2===n.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(j(e),0===e.lookahead)){if(t===l)return A;break}if(e.match_length=0,r=u._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):e.last_lit&&(N(e,!1),0===e.strm.avail_out)?A:I}(n,t):3===n.strategy?function(e,t){for(var r,n,i,s,a=e.window;;){if(e.lookahead<=S){if(j(e),e.lookahead<=S&&t===l)return A;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=x&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=x?(r=u._tr_tally(e,1,e.match_length-x),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=u._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):e.last_lit&&(N(e,!1),0===e.strm.avail_out)?A:I}(n,t):h[n.level].func(n,t);if(o!==O&&o!==B||(n.status=666),o===A||o===O)return 0===e.avail_out&&(n.last_flush=-1),m;if(o===I&&(1===t?u._tr_align(n):5!==t&&(u._tr_stored_block(n,0,0,!1),3===t&&(D(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),F(e),0===e.avail_out))return n.last_flush=-1,m}return t!==f?m:n.wrap<=0?1:(2===n.wrap?(U(n,255&e.adler),U(n,e.adler>>8&255),U(n,e.adler>>16&255),U(n,e.adler>>24&255),U(n,255&e.total_in),U(n,e.total_in>>8&255),U(n,e.total_in>>16&255),U(n,e.total_in>>24&255)):(P(n,e.adler>>>16),P(n,65535&e.adler)),F(e),0=r.w_size&&(0===s&&(D(r.head),r.strstart=0,r.block_start=0,r.insert=0),u=new c.Buf8(r.w_size),c.arraySet(u,t,l-r.w_size,r.w_size,0),t=u,l=r.w_size),a=e.avail_in,o=e.next_in,h=e.input,e.avail_in=l,e.next_in=0,e.input=t,j(r);r.lookahead>=x;){for(n=r.strstart,i=r.lookahead-(x-1);r.ins_h=(r.ins_h<>>=y=v>>>24,p-=y,0===(y=v>>>16&255))C[s++]=65535&v;else{if(!(16&y)){if(0==(64&y)){v=m[(65535&v)+(d&(1<>>=y,p-=y),p<15&&(d+=z[n++]<>>=y=v>>>24,p-=y,!(16&(y=v>>>16&255))){if(0==(64&y)){v=_[(65535&v)+(d&(1<>>=y,p-=y,(y=s-a)>3,d&=(1<<(p-=w<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function s(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new I.Buf16(320),this.work=new I.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function a(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg=\"\",t.wrap&&(e.adler=1&t.wrap),t.mode=P,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new I.Buf32(n),t.distcode=t.distdyn=new I.Buf32(i),t.sane=1,t.back=-1,N):U}function o(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,a(e)):U}function h(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=s.wsize?(I.arraySet(s.window,t,r-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(n<(i=s.wsize-s.wnext)&&(i=n),I.arraySet(s.window,t,r-n,i,s.wnext),(n-=i)?(I.arraySet(s.window,t,r-n,n,0),s.wnext=n,s.whave=s.wsize):(s.wnext+=i,s.wnext===s.wsize&&(s.wnext=0),s.whave>>8&255,r.check=B(r.check,E,2,0),l=u=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg=\"incorrect header check\",r.mode=30;break}if(8!=(15&u)){e.msg=\"unknown compression method\",r.mode=30;break}if(l-=4,k=8+(15&(u>>>=4)),0===r.wbits)r.wbits=k;else if(k>r.wbits){e.msg=\"invalid window size\",r.mode=30;break}r.dmax=1<>8&1),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=3;case 3:for(;l<32;){if(0===o)break e;o--,u+=n[s++]<>>8&255,E[2]=u>>>16&255,E[3]=u>>>24&255,r.check=B(r.check,E,4,0)),l=u=0,r.mode=4;case 4:for(;l<16;){if(0===o)break e;o--,u+=n[s++]<>8),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=5;case 5:if(1024&r.flags){for(;l<16;){if(0===o)break e;o--,u+=n[s++]<>>8&255,r.check=B(r.check,E,2,0)),l=u=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(o<(d=r.length)&&(d=o),d&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),I.arraySet(r.head.extra,n,s,d,k)),512&r.flags&&(r.check=B(r.check,n,d,s)),o-=d,s+=d,r.length-=d),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===o)break e;for(d=0;k=n[s+d++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k)),k&&d>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;l<32;){if(0===o)break e;o--,u+=n[s++]<>>=7&l,l-=7&l,r.mode=27;break}for(;l<3;){if(0===o)break e;o--,u+=n[s++]<>>=1)){case 0:r.mode=14;break;case 1:if(j(r),r.mode=20,6!==t)break;u>>>=2,l-=2;break e;case 2:r.mode=17;break;case 3:e.msg=\"invalid block type\",r.mode=30}u>>>=2,l-=2;break;case 14:for(u>>>=7&l,l-=7&l;l<32;){if(0===o)break e;o--,u+=n[s++]<>>16^65535)){e.msg=\"invalid stored block lengths\",r.mode=30;break}if(r.length=65535&u,l=u=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(d=r.length){if(o>>=5,l-=5,r.ndist=1+(31&u),u>>>=5,l-=5,r.ncode=4+(15&u),u>>>=4,l-=4,286>>=3,l-=3}for(;r.have<19;)r.lens[A[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},x=T(0,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,x){e.msg=\"invalid code lengths set\",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=_,l-=_,r.lens[r.have++]=b;else{if(16===b){for(z=_+2;l>>=_,l-=_,0===r.have){e.msg=\"invalid bit length repeat\",r.mode=30;break}k=r.lens[r.have-1],d=3+(3&u),u>>>=2,l-=2}else if(17===b){for(z=_+3;l>>=_)),u>>>=3,l-=3}else{for(z=_+7;l>>=_)),u>>>=7,l-=7}if(r.have+d>r.nlen+r.ndist){e.msg=\"invalid bit length repeat\",r.mode=30;break}for(;d--;)r.lens[r.have++]=k}}if(30===r.mode)break;if(0===r.lens[256]){e.msg=\"invalid code -- missing end-of-block\",r.mode=30;break}if(r.lenbits=9,S={bits:r.lenbits},x=T(D,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,x){e.msg=\"invalid literal/lengths set\",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},x=T(F,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,x){e.msg=\"invalid distances set\",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=o&&258<=h){e.next_out=a,e.avail_out=h,e.next_in=s,e.avail_in=o,r.hold=u,r.bits=l,R(e,c),a=e.next_out,i=e.output,h=e.avail_out,s=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;g=(C=r.lencode[u&(1<>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,r.length=b,0===g){r.mode=26;break}if(32&g){r.back=-1,r.mode=12;break}if(64&g){e.msg=\"invalid literal/length code\",r.mode=30;break}r.extra=15&g,r.mode=22;case 22:if(r.extra){for(z=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;g=(C=r.distcode[u&(1<>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,64&g){e.msg=\"invalid distance code\",r.mode=30;break}r.offset=b,r.extra=15&g,r.mode=24;case 24:if(r.extra){for(z=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg=\"invalid distance too far back\",r.mode=30;break}r.mode=25;case 25:if(0===h)break e;if(d=c-h,r.offset>d){if((d=r.offset-d)>r.whave&&r.sane){e.msg=\"invalid distance too far back\",r.mode=30;break}p=d>r.wnext?(d-=r.wnext,r.wsize-d):r.wnext-d,d>r.length&&(d=r.length),m=r.window}else m=i,p=a-r.offset,d=r.length;for(hd?(m=R[T+a[v]],A[I+a[v]]):(m=96,0),h=1<>S)+(u-=h)]=p<<24|m<<16|_|0,0!==u;);for(h=1<>=1;if(0!==h?(E&=h-1,E+=h):E=0,v++,0==--O[b]){if(b===w)break;b=t[r+a[v]]}if(k>>7)]}function U(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function P(e,t,r){e.bi_valid>d-r?(e.bi_buf|=t<>d-e.bi_valid,e.bi_valid+=r-d):(e.bi_buf|=t<>>=1,r<<=1,0<--t;);return r>>>1}function Z(e,t,r){var n,i,s=new Array(g+1),a=0;for(n=1;n<=g;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=j(s[o]++,o))}}function W(e){var t;for(t=0;t>1;1<=r;r--)G(e,s,r);for(i=h;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],G(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,G(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,h=t.dyn_tree,u=t.max_code,l=t.stat_desc.static_tree,f=t.stat_desc.has_stree,c=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,m=0;for(s=0;s<=g;s++)e.bl_count[s]=0;for(h[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<_;r++)p<(s=h[2*h[2*(n=e.heap[r])+1]+1]+1)&&(s=p,m++),h[2*n+1]=s,u>=7;n>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return o;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return h;for(t=32;t>>3,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=r+5,r+4<=i&&-1!==t?J(e,t,r,n):4===e.strategy||s===i?(P(e,2+(n?1:0),3),K(e,z,C)):(P(e,4+(n?1:0),3),function(e,t,r,n){var i;for(P(e,t-257,5),P(e,r-1,5),P(e,n-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(A[r]+u+1)]++,e.dyn_dtree[2*N(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){P(e,2,3),L(e,m,z),function(e){16===e.bi_valid?(U(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{\"../utils/common\":41}],53:[function(e,t,r){\"use strict\";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=\"\",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,r){(function(e){!function(r,n){\"use strict\";if(!r.setImmediate){var i,s,t,a,o=1,h={},u=!1,l=r.document,e=Object.getPrototypeOf&&Object.getPrototypeOf(r);e=e&&e.setTimeout?e:r,i=\"[object process]\"==={}.toString.call(r.process)?function(e){process.nextTick(function(){c(e)})}:function(){if(r.postMessage&&!r.importScripts){var e=!0,t=r.onmessage;return r.onmessage=function(){e=!1},r.postMessage(\"\",\"*\"),r.onmessage=t,e}}()?(a=\"setImmediate$\"+Math.random()+\"$\",r.addEventListener?r.addEventListener(\"message\",d,!1):r.attachEvent(\"onmessage\",d),function(e){r.postMessage(a+e,\"*\")}):r.MessageChannel?((t=new MessageChannel).port1.onmessage=function(e){c(e.data)},function(e){t.port2.postMessage(e)}):l&&\"onreadystatechange\"in l.createElement(\"script\")?(s=l.documentElement,function(e){var t=l.createElement(\"script\");t.onreadystatechange=function(){c(e),t.onreadystatechange=null,s.removeChild(t),t=null},s.appendChild(t)}):function(e){setTimeout(c,0,e)},e.setImmediate=function(e){\"function\"!=typeof e&&(e=new Function(\"\"+e));for(var t=new Array(arguments.length-1),r=0;r>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n}\n\nfunction isValid(m) {\n var flags = null,\n parsedParts = false,\n isNowValid = m._d && !isNaN(m._d.getTime());\n if (isNowValid) {\n flags = getParsingFlags(m);\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n });\n isNowValid =\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n }\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n return m._isValid;\n}\n\nfunction createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n}\n\n// Plugins that add properties should also add the key here (null value),\n// so we can properly clone ourselves.\nvar momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\nfunction copyConfig(to, from) {\n var i,\n prop,\n val,\n momentPropertiesLen = momentProperties.length;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentPropertiesLen > 0) {\n for (i = 0; i < momentPropertiesLen; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n}\n\n// Moment prototype object\nfunction Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n}\n\nfunction isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n}\n\nfunction warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n}\n\nfunction deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key,\n argLen = arguments.length;\n for (i = 0; i < argLen; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n}\n\nvar deprecations = {};\n\nfunction deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n}\n\nhooks.suppressDeprecationWarnings = false;\nhooks.deprecationHandler = null;\n\nfunction isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n}\n\nfunction set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n}\n\nfunction mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n}\n\nfunction Locale(config) {\n if (config != null) {\n this.set(config);\n }\n}\n\nvar keys;\n\nif (Object.keys) {\n keys = Object.keys;\n} else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n}\n\nvar defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n};\n\nfunction calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n}\n\nfunction zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n}\n\nvar formattingTokens =\n /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n// token: 'M'\n// padded: ['MM', 2]\n// ordinal: 'Mo'\n// callback: function () { this.month() + 1 }\nfunction addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n}\n\nfunction removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n}\n\nfunction makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n}\n\n// format date using native date object\nfunction formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n}\n\nfunction expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n}\n\nvar defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n};\n\nfunction longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n}\n\nvar defaultInvalidDate = 'Invalid date';\n\nfunction invalidDate() {\n return this._invalidDate;\n}\n\nvar defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\nfunction ordinal(number) {\n return this._ordinal.replace('%d', number);\n}\n\nvar defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n};\n\nfunction relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n}\n\nfunction pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n}\n\nvar aliases = {\n D: 'date',\n dates: 'date',\n date: 'date',\n d: 'day',\n days: 'day',\n day: 'day',\n e: 'weekday',\n weekdays: 'weekday',\n weekday: 'weekday',\n E: 'isoWeekday',\n isoweekdays: 'isoWeekday',\n isoweekday: 'isoWeekday',\n DDD: 'dayOfYear',\n dayofyears: 'dayOfYear',\n dayofyear: 'dayOfYear',\n h: 'hour',\n hours: 'hour',\n hour: 'hour',\n ms: 'millisecond',\n milliseconds: 'millisecond',\n millisecond: 'millisecond',\n m: 'minute',\n minutes: 'minute',\n minute: 'minute',\n M: 'month',\n months: 'month',\n month: 'month',\n Q: 'quarter',\n quarters: 'quarter',\n quarter: 'quarter',\n s: 'second',\n seconds: 'second',\n second: 'second',\n gg: 'weekYear',\n weekyears: 'weekYear',\n weekyear: 'weekYear',\n GG: 'isoWeekYear',\n isoweekyears: 'isoWeekYear',\n isoweekyear: 'isoWeekYear',\n w: 'week',\n weeks: 'week',\n week: 'week',\n W: 'isoWeek',\n isoweeks: 'isoWeek',\n isoweek: 'isoWeek',\n y: 'year',\n years: 'year',\n year: 'year',\n};\n\nfunction normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n}\n\nfunction normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n}\n\nvar priorities = {\n date: 9,\n day: 11,\n weekday: 11,\n isoWeekday: 11,\n dayOfYear: 4,\n hour: 13,\n millisecond: 16,\n minute: 14,\n month: 8,\n quarter: 7,\n second: 15,\n weekYear: 1,\n isoWeekYear: 1,\n week: 5,\n isoWeek: 5,\n year: 1,\n};\n\nfunction getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n}\n\nvar match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord =\n /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n match1to2NoLeadingZero = /^[1-9]\\d?/, // 1-99\n match1to2HasZero = /^([1-9]\\d|\\d)/, // 0-99\n regexes;\n\nregexes = {};\n\nfunction addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n}\n\nfunction getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n}\n\n// Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\nfunction unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(\n /\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,\n function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }\n )\n );\n}\n\nfunction regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n\nfunction absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n}\n\nfunction toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n}\n\nvar tokens = {};\n\nfunction addParseToken(token, callback) {\n var i,\n func = callback,\n tokenLen;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n tokenLen = token.length;\n for (i = 0; i < tokenLen; i++) {\n tokens[token[i]] = func;\n }\n}\n\nfunction addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n}\n\nfunction addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n}\n\nfunction isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n}\n\nvar YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\n// FORMATTING\n\naddFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n});\n\naddFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n});\n\naddFormatToken(0, ['YYYY', 4], 0, 'year');\naddFormatToken(0, ['YYYYY', 5], 0, 'year');\naddFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n// PARSING\n\naddRegexToken('Y', matchSigned);\naddRegexToken('YY', match1to2, match2);\naddRegexToken('YYYY', match1to4, match4);\naddRegexToken('YYYYY', match1to6, match6);\naddRegexToken('YYYYYY', match1to6, match6);\n\naddParseToken(['YYYYY', 'YYYYYY'], YEAR);\naddParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n});\naddParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n});\naddParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n});\n\n// HELPERS\n\nfunction daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n}\n\n// HOOKS\n\nhooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n};\n\n// MOMENTS\n\nvar getSetYear = makeGetSet('FullYear', true);\n\nfunction getIsLeapYear() {\n return isLeapYear(this.year());\n}\n\nfunction makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n}\n\nfunction get(mom, unit) {\n if (!mom.isValid()) {\n return NaN;\n }\n\n var d = mom._d,\n isUTC = mom._isUTC;\n\n switch (unit) {\n case 'Milliseconds':\n return isUTC ? d.getUTCMilliseconds() : d.getMilliseconds();\n case 'Seconds':\n return isUTC ? d.getUTCSeconds() : d.getSeconds();\n case 'Minutes':\n return isUTC ? d.getUTCMinutes() : d.getMinutes();\n case 'Hours':\n return isUTC ? d.getUTCHours() : d.getHours();\n case 'Date':\n return isUTC ? d.getUTCDate() : d.getDate();\n case 'Day':\n return isUTC ? d.getUTCDay() : d.getDay();\n case 'Month':\n return isUTC ? d.getUTCMonth() : d.getMonth();\n case 'FullYear':\n return isUTC ? d.getUTCFullYear() : d.getFullYear();\n default:\n return NaN; // Just in case\n }\n}\n\nfunction set$1(mom, unit, value) {\n var d, isUTC, year, month, date;\n\n if (!mom.isValid() || isNaN(value)) {\n return;\n }\n\n d = mom._d;\n isUTC = mom._isUTC;\n\n switch (unit) {\n case 'Milliseconds':\n return void (isUTC\n ? d.setUTCMilliseconds(value)\n : d.setMilliseconds(value));\n case 'Seconds':\n return void (isUTC ? d.setUTCSeconds(value) : d.setSeconds(value));\n case 'Minutes':\n return void (isUTC ? d.setUTCMinutes(value) : d.setMinutes(value));\n case 'Hours':\n return void (isUTC ? d.setUTCHours(value) : d.setHours(value));\n case 'Date':\n return void (isUTC ? d.setUTCDate(value) : d.setDate(value));\n // case 'Day': // Not real\n // return void (isUTC ? d.setUTCDay(value) : d.setDay(value));\n // case 'Month': // Not used because we need to pass two variables\n // return void (isUTC ? d.setUTCMonth(value) : d.setMonth(value));\n case 'FullYear':\n break; // See below ...\n default:\n return; // Just in case\n }\n\n year = value;\n month = mom.month();\n date = mom.date();\n date = date === 29 && month === 1 && !isLeapYear(year) ? 28 : date;\n void (isUTC\n ? d.setUTCFullYear(year, month, date)\n : d.setFullYear(year, month, date));\n}\n\n// MOMENTS\n\nfunction stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n}\n\nfunction stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i,\n prioritizedLen = prioritized.length;\n for (i = 0; i < prioritizedLen; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n}\n\nfunction mod(n, x) {\n return ((n % x) + x) % x;\n}\n\nvar indexOf;\n\nif (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n} else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n}\n\nfunction daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n}\n\n// FORMATTING\n\naddFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n});\n\naddFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n});\n\naddFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n});\n\n// PARSING\n\naddRegexToken('M', match1to2, match1to2NoLeadingZero);\naddRegexToken('MM', match1to2, match2);\naddRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n});\naddRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n});\n\naddParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n});\n\naddParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n});\n\n// LOCALES\n\nvar defaultLocaleMonths =\n 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort =\n 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\nfunction localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n}\n\nfunction localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n}\n\nfunction handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n}\n\nfunction localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n}\n\n// MOMENTS\n\nfunction setMonth(mom, value) {\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n var month = value,\n date = mom.date();\n\n date = date < 29 ? date : Math.min(date, daysInMonth(mom.year(), month));\n void (mom._isUTC\n ? mom._d.setUTCMonth(month, date)\n : mom._d.setMonth(month, date));\n return mom;\n}\n\nfunction getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n}\n\nfunction getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n}\n\nfunction monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n}\n\nfunction monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n}\n\nfunction computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n shortP,\n longP;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortP = regexEscape(this.monthsShort(mom, ''));\n longP = regexEscape(this.months(mom, ''));\n shortPieces.push(shortP);\n longPieces.push(longP);\n mixedPieces.push(longP);\n mixedPieces.push(shortP);\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n}\n\nfunction createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n}\n\nfunction createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n}\n\n// start-of-first-week - start-of-year\nfunction firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n}\n\n// https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\nfunction dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n}\n\nfunction weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n}\n\nfunction weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n}\n\n// FORMATTING\n\naddFormatToken('w', ['ww', 2], 'wo', 'week');\naddFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n// PARSING\n\naddRegexToken('w', match1to2, match1to2NoLeadingZero);\naddRegexToken('ww', match1to2, match2);\naddRegexToken('W', match1to2, match1to2NoLeadingZero);\naddRegexToken('WW', match1to2, match2);\n\naddWeekParseToken(\n ['w', 'ww', 'W', 'WW'],\n function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n }\n);\n\n// HELPERS\n\n// LOCALES\n\nfunction localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n}\n\nvar defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n};\n\nfunction localeFirstDayOfWeek() {\n return this._week.dow;\n}\n\nfunction localeFirstDayOfYear() {\n return this._week.doy;\n}\n\n// MOMENTS\n\nfunction getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n}\n\nfunction getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n}\n\n// FORMATTING\n\naddFormatToken('d', 0, 'do', 'day');\n\naddFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n});\n\naddFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n});\n\naddFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n});\n\naddFormatToken('e', 0, 0, 'weekday');\naddFormatToken('E', 0, 0, 'isoWeekday');\n\n// PARSING\n\naddRegexToken('d', match1to2);\naddRegexToken('e', match1to2);\naddRegexToken('E', match1to2);\naddRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n});\naddRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n});\naddRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n});\n\naddWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n});\n\naddWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n});\n\n// HELPERS\n\nfunction parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n}\n\nfunction parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n}\n\n// LOCALES\nfunction shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n}\n\nvar defaultLocaleWeekdays =\n 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\nfunction localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n}\n\nfunction localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n}\n\nfunction localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n}\n\nfunction handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n}\n\nfunction localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n}\n\n// MOMENTS\n\nfunction getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n var day = get(this, 'Day');\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n}\n\nfunction getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n}\n\nfunction getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n}\n\nfunction weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n}\n\nfunction weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n}\n\nfunction weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n}\n\nfunction computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n}\n\n// FORMATTING\n\nfunction hFormat() {\n return this.hours() % 12 || 12;\n}\n\nfunction kFormat() {\n return this.hours() || 24;\n}\n\naddFormatToken('H', ['HH', 2], 0, 'hour');\naddFormatToken('h', ['hh', 2], 0, hFormat);\naddFormatToken('k', ['kk', 2], 0, kFormat);\n\naddFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n});\n\naddFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n});\n\naddFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n});\n\naddFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n});\n\nfunction meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n}\n\nmeridiem('a', true);\nmeridiem('A', false);\n\n// PARSING\n\nfunction matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n}\n\naddRegexToken('a', matchMeridiem);\naddRegexToken('A', matchMeridiem);\naddRegexToken('H', match1to2, match1to2HasZero);\naddRegexToken('h', match1to2, match1to2NoLeadingZero);\naddRegexToken('k', match1to2, match1to2NoLeadingZero);\naddRegexToken('HH', match1to2, match2);\naddRegexToken('hh', match1to2, match2);\naddRegexToken('kk', match1to2, match2);\n\naddRegexToken('hmm', match3to4);\naddRegexToken('hmmss', match5to6);\naddRegexToken('Hmm', match3to4);\naddRegexToken('Hmmss', match5to6);\n\naddParseToken(['H', 'HH'], HOUR);\naddParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n});\naddParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n});\naddParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n});\naddParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n});\n\n// LOCALES\n\nfunction localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n}\n\nvar defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\nfunction localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n}\n\nvar baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n};\n\n// internal storage for locale config files\nvar locales = {},\n localeFamilies = {},\n globalLocale;\n\nfunction commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n}\n\nfunction normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n}\n\n// pick the locale from the array\n// try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n// substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\nfunction chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n}\n\nfunction isLocaleNameSane(name) {\n // Prevent names that look like filesystem paths, i.e contain '/' or '\\'\n // Ensure name is available and function returns boolean\n return !!(name && name.match('^[^/\\\\\\\\]*$'));\n}\n\nfunction loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports &&\n isLocaleNameSane(name)\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n}\n\n// This function will load locale and then set the global locale. If\n// no arguments are passed in, it will simply return the current global\n// locale key.\nfunction getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n}\n\nfunction defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n}\n\nfunction updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n}\n\n// returns locale data\nfunction getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n}\n\nfunction listLocales() {\n return keys(locales);\n}\n\nfunction checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n}\n\n// iso 8601 regex\n// 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\nvar extendedIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 =\n /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n// date from iso format\nfunction configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat,\n isoDatesLen = isoDates.length,\n isoTimesLen = isoTimes.length;\n\n if (match) {\n getParsingFlags(config).iso = true;\n for (i = 0, l = isoDatesLen; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimesLen; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n}\n\nfunction extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n}\n\nfunction untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n}\n\nfunction preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^()]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n}\n\nfunction checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n}\n\nfunction calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n}\n\n// date and time from ref 2822 format\nfunction configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n}\n\n// date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\nfunction configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n}\n\nhooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n);\n\n// Pick the first defined of two or three arguments.\nfunction defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n}\n\nfunction currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n}\n\n// convert an array to a date.\n// the array should mirror the parameters below\n// note: all values past the year are optional and will default to the lowest possible value.\n// [year, month, day , hour, minute, second, millisecond]\nfunction configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n}\n\nfunction dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n}\n\n// constant that refers to the ISO standard\nhooks.ISO_8601 = function () {};\n\n// constant that refers to the RFC 2822 form\nhooks.RFC_2822 = function () {};\n\n// date from string and format string\nfunction configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era,\n tokenLen;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n tokenLen = tokens.length;\n for (i = 0; i < tokenLen; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n}\n\nfunction meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n}\n\n// date from string and array of format strings\nfunction configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false,\n configfLen = config._f.length;\n\n if (configfLen === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < configfLen; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n}\n\nfunction configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n}\n\nfunction createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n}\n\nfunction prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n}\n\nfunction configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n}\n\nfunction createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n}\n\nfunction createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n}\n\nvar prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n// Pick a moment m from moments so that m[fn](other) is true for all\n// other. This relies on the function fn to be transitive.\n//\n// moments should either be an array of moment objects or an array, whose\n// first element is an array of moment objects.\nfunction pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n}\n\n// TODO: Use [].sort instead?\nfunction min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n}\n\nfunction max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n}\n\nvar now = function () {\n return Date.now ? Date.now() : +new Date();\n};\n\nvar ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n];\n\nfunction isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i,\n orderLen = ordering.length;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < orderLen; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n}\n\nfunction isValid$1() {\n return this._isValid;\n}\n\nfunction createInvalid$1() {\n return createDuration(NaN);\n}\n\nfunction Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n}\n\nfunction isDuration(obj) {\n return obj instanceof Duration;\n}\n\nfunction absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n}\n\n// compare two arrays, return the number of differences\nfunction compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n}\n\n// FORMATTING\n\nfunction offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n}\n\noffset('Z', ':');\noffset('ZZ', '');\n\n// PARSING\n\naddRegexToken('Z', matchShortOffset);\naddRegexToken('ZZ', matchShortOffset);\naddParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n});\n\n// HELPERS\n\n// timezone chunker\n// '+10:00' > ['10', '00']\n// '-1530' > ['-15', '30']\nvar chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\nfunction offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n}\n\n// Return a moment from input, that is local/utc/zone equivalent to model.\nfunction cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n}\n\nfunction getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n}\n\n// HOOKS\n\n// This function will be called whenever a moment is mutated.\n// It is intended to keep the offset in sync with the timezone.\nhooks.updateOffset = function () {};\n\n// MOMENTS\n\n// keepLocalTime = true means only change the timezone, without\n// affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n// +0200, so we adjust the time as needed, to be valid.\n//\n// Keeping the time actually adds/subtracts (one hour)\n// from the actual represented time. That is why we call updateOffset\n// a second time. In case it wants us to change the offset again\n// _changeInProgress == true case, then we have to adjust, because\n// there is no such time in the given timezone.\nfunction getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n}\n\nfunction getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n}\n\nfunction setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n}\n\nfunction setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n}\n\nfunction setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n}\n\nfunction hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n}\n\nfunction isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n}\n\nfunction isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n}\n\nfunction isLocal() {\n return this.isValid() ? !this._isUTC : false;\n}\n\nfunction isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n}\n\nfunction isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n}\n\n// ASP.NET json date format regex\nvar aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\nfunction createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n}\n\ncreateDuration.fn = Duration.prototype;\ncreateDuration.invalid = createInvalid$1;\n\nfunction parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n}\n\nfunction positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n}\n\nfunction momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n}\n\n// TODO: remove 'name' arg after deprecation is removed\nfunction createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n}\n\nfunction addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n}\n\nvar add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\nfunction isString(input) {\n return typeof input === 'string' || input instanceof String;\n}\n\n// type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\nfunction isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n}\n\nfunction isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property,\n propertyLen = properties.length;\n\n for (i = 0; i < propertyLen; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n}\n\nfunction isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n}\n\nfunction isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n}\n\nfunction getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n}\n\nfunction calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n}\n\nfunction clone() {\n return new Moment(this);\n}\n\nfunction isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n}\n\nfunction isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n}\n\nfunction isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n}\n\nfunction isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n}\n\nfunction isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n}\n\nfunction isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n}\n\nfunction diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n}\n\nfunction monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n}\n\nhooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\nhooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\nfunction toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n}\n\nfunction toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n}\n\n/**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\nfunction inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n}\n\nfunction format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n}\n\nfunction from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n}\n\nfunction to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n}\n\n// If passed a locale key, it will set the locale for this\n// instance. Otherwise, it will return the locale configuration\n// variables for this instance.\nfunction locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n}\n\nvar lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n);\n\nfunction localeData() {\n return this._locale;\n}\n\nvar MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n// actual modulo - handles negative numbers (for dates before 1970):\nfunction mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n}\n\nfunction localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n}\n\nfunction utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n}\n\nfunction startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n}\n\nfunction endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n}\n\nfunction valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n}\n\nfunction unix() {\n return Math.floor(this.valueOf() / 1000);\n}\n\nfunction toDate() {\n return new Date(this.valueOf());\n}\n\nfunction toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n}\n\nfunction toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n}\n\nfunction toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n}\n\nfunction isValid$2() {\n return isValid(this);\n}\n\nfunction parsingFlags() {\n return extend({}, getParsingFlags(this));\n}\n\nfunction invalidAt() {\n return getParsingFlags(this).overflow;\n}\n\nfunction creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n}\n\naddFormatToken('N', 0, 0, 'eraAbbr');\naddFormatToken('NN', 0, 0, 'eraAbbr');\naddFormatToken('NNN', 0, 0, 'eraAbbr');\naddFormatToken('NNNN', 0, 0, 'eraName');\naddFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\naddFormatToken('y', ['y', 1], 'yo', 'eraYear');\naddFormatToken('y', ['yy', 2], 0, 'eraYear');\naddFormatToken('y', ['yyy', 3], 0, 'eraYear');\naddFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\naddRegexToken('N', matchEraAbbr);\naddRegexToken('NN', matchEraAbbr);\naddRegexToken('NNN', matchEraAbbr);\naddRegexToken('NNNN', matchEraName);\naddRegexToken('NNNNN', matchEraNarrow);\n\naddParseToken(\n ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],\n function (input, array, config, token) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n }\n);\n\naddRegexToken('y', matchUnsigned);\naddRegexToken('yy', matchUnsigned);\naddRegexToken('yyy', matchUnsigned);\naddRegexToken('yyyy', matchUnsigned);\naddRegexToken('yo', matchEraYearOrdinal);\n\naddParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\naddParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n});\n\nfunction localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n}\n\nfunction localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n}\n\nfunction localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n}\n\nfunction getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n}\n\nfunction getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n}\n\nfunction getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n}\n\nfunction getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n}\n\nfunction erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n}\n\nfunction erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n}\n\nfunction erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n}\n\nfunction matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n}\n\nfunction matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n}\n\nfunction matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n}\n\nfunction matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n}\n\nfunction computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n erasName,\n erasAbbr,\n erasNarrow,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n erasName = regexEscape(eras[i].name);\n erasAbbr = regexEscape(eras[i].abbr);\n erasNarrow = regexEscape(eras[i].narrow);\n\n namePieces.push(erasName);\n abbrPieces.push(erasAbbr);\n narrowPieces.push(erasNarrow);\n mixedPieces.push(erasName);\n mixedPieces.push(erasAbbr);\n mixedPieces.push(erasNarrow);\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n}\n\n// FORMATTING\n\naddFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n});\n\naddFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n});\n\nfunction addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n}\n\naddWeekYearFormatToken('gggg', 'weekYear');\naddWeekYearFormatToken('ggggg', 'weekYear');\naddWeekYearFormatToken('GGGG', 'isoWeekYear');\naddWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n// ALIASES\n\n// PARSING\n\naddRegexToken('G', matchSigned);\naddRegexToken('g', matchSigned);\naddRegexToken('GG', match1to2, match2);\naddRegexToken('gg', match1to2, match2);\naddRegexToken('GGGG', match1to4, match4);\naddRegexToken('gggg', match1to4, match4);\naddRegexToken('GGGGG', match1to6, match6);\naddRegexToken('ggggg', match1to6, match6);\n\naddWeekParseToken(\n ['gggg', 'ggggg', 'GGGG', 'GGGGG'],\n function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n }\n);\n\naddWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n});\n\n// MOMENTS\n\nfunction getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday() + this.localeData()._week.dow,\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n}\n\nfunction getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n}\n\nfunction getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n}\n\nfunction getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n}\n\nfunction getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n}\n\nfunction getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n}\n\nfunction getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n}\n\nfunction setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n}\n\n// FORMATTING\n\naddFormatToken('Q', 0, 'Qo', 'quarter');\n\n// PARSING\n\naddRegexToken('Q', match1);\naddParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n});\n\n// MOMENTS\n\nfunction getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n}\n\n// FORMATTING\n\naddFormatToken('D', ['DD', 2], 'Do', 'date');\n\n// PARSING\n\naddRegexToken('D', match1to2, match1to2NoLeadingZero);\naddRegexToken('DD', match1to2, match2);\naddRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n});\n\naddParseToken(['D', 'DD'], DATE);\naddParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n});\n\n// MOMENTS\n\nvar getSetDayOfMonth = makeGetSet('Date', true);\n\n// FORMATTING\n\naddFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n// PARSING\n\naddRegexToken('DDD', match1to3);\naddRegexToken('DDDD', match3);\naddParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n});\n\n// HELPERS\n\n// MOMENTS\n\nfunction getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n}\n\n// FORMATTING\n\naddFormatToken('m', ['mm', 2], 0, 'minute');\n\n// PARSING\n\naddRegexToken('m', match1to2, match1to2HasZero);\naddRegexToken('mm', match1to2, match2);\naddParseToken(['m', 'mm'], MINUTE);\n\n// MOMENTS\n\nvar getSetMinute = makeGetSet('Minutes', false);\n\n// FORMATTING\n\naddFormatToken('s', ['ss', 2], 0, 'second');\n\n// PARSING\n\naddRegexToken('s', match1to2, match1to2HasZero);\naddRegexToken('ss', match1to2, match2);\naddParseToken(['s', 'ss'], SECOND);\n\n// MOMENTS\n\nvar getSetSecond = makeGetSet('Seconds', false);\n\n// FORMATTING\n\naddFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n});\n\naddFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n});\n\naddFormatToken(0, ['SSS', 3], 0, 'millisecond');\naddFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n});\naddFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n});\naddFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n});\naddFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n});\naddFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n});\naddFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n});\n\n// PARSING\n\naddRegexToken('S', match1to3, match1);\naddRegexToken('SS', match1to3, match2);\naddRegexToken('SSS', match1to3, match3);\n\nvar token, getSetMillisecond;\nfor (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n}\n\nfunction parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n}\n\nfor (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n}\n\ngetSetMillisecond = makeGetSet('Milliseconds', false);\n\n// FORMATTING\n\naddFormatToken('z', 0, 0, 'zoneAbbr');\naddFormatToken('zz', 0, 0, 'zoneName');\n\n// MOMENTS\n\nfunction getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n}\n\nfunction getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n}\n\nvar proto = Moment.prototype;\n\nproto.add = add;\nproto.calendar = calendar$1;\nproto.clone = clone;\nproto.diff = diff;\nproto.endOf = endOf;\nproto.format = format;\nproto.from = from;\nproto.fromNow = fromNow;\nproto.to = to;\nproto.toNow = toNow;\nproto.get = stringGet;\nproto.invalidAt = invalidAt;\nproto.isAfter = isAfter;\nproto.isBefore = isBefore;\nproto.isBetween = isBetween;\nproto.isSame = isSame;\nproto.isSameOrAfter = isSameOrAfter;\nproto.isSameOrBefore = isSameOrBefore;\nproto.isValid = isValid$2;\nproto.lang = lang;\nproto.locale = locale;\nproto.localeData = localeData;\nproto.max = prototypeMax;\nproto.min = prototypeMin;\nproto.parsingFlags = parsingFlags;\nproto.set = stringSet;\nproto.startOf = startOf;\nproto.subtract = subtract;\nproto.toArray = toArray;\nproto.toObject = toObject;\nproto.toDate = toDate;\nproto.toISOString = toISOString;\nproto.inspect = inspect;\nif (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n}\nproto.toJSON = toJSON;\nproto.toString = toString;\nproto.unix = unix;\nproto.valueOf = valueOf;\nproto.creationData = creationData;\nproto.eraName = getEraName;\nproto.eraNarrow = getEraNarrow;\nproto.eraAbbr = getEraAbbr;\nproto.eraYear = getEraYear;\nproto.year = getSetYear;\nproto.isLeapYear = getIsLeapYear;\nproto.weekYear = getSetWeekYear;\nproto.isoWeekYear = getSetISOWeekYear;\nproto.quarter = proto.quarters = getSetQuarter;\nproto.month = getSetMonth;\nproto.daysInMonth = getDaysInMonth;\nproto.week = proto.weeks = getSetWeek;\nproto.isoWeek = proto.isoWeeks = getSetISOWeek;\nproto.weeksInYear = getWeeksInYear;\nproto.weeksInWeekYear = getWeeksInWeekYear;\nproto.isoWeeksInYear = getISOWeeksInYear;\nproto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\nproto.date = getSetDayOfMonth;\nproto.day = proto.days = getSetDayOfWeek;\nproto.weekday = getSetLocaleDayOfWeek;\nproto.isoWeekday = getSetISODayOfWeek;\nproto.dayOfYear = getSetDayOfYear;\nproto.hour = proto.hours = getSetHour;\nproto.minute = proto.minutes = getSetMinute;\nproto.second = proto.seconds = getSetSecond;\nproto.millisecond = proto.milliseconds = getSetMillisecond;\nproto.utcOffset = getSetOffset;\nproto.utc = setOffsetToUTC;\nproto.local = setOffsetToLocal;\nproto.parseZone = setOffsetToParsedOffset;\nproto.hasAlignedHourOffset = hasAlignedHourOffset;\nproto.isDST = isDaylightSavingTime;\nproto.isLocal = isLocal;\nproto.isUtcOffset = isUtcOffset;\nproto.isUtc = isUtc;\nproto.isUTC = isUtc;\nproto.zoneAbbr = getZoneAbbr;\nproto.zoneName = getZoneName;\nproto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n);\nproto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n);\nproto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n);\nproto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n);\nproto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n);\n\nfunction createUnix(input) {\n return createLocal(input * 1000);\n}\n\nfunction createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n}\n\nfunction preParsePostFormat(string) {\n return string;\n}\n\nvar proto$1 = Locale.prototype;\n\nproto$1.calendar = calendar;\nproto$1.longDateFormat = longDateFormat;\nproto$1.invalidDate = invalidDate;\nproto$1.ordinal = ordinal;\nproto$1.preparse = preParsePostFormat;\nproto$1.postformat = preParsePostFormat;\nproto$1.relativeTime = relativeTime;\nproto$1.pastFuture = pastFuture;\nproto$1.set = set;\nproto$1.eras = localeEras;\nproto$1.erasParse = localeErasParse;\nproto$1.erasConvertYear = localeErasConvertYear;\nproto$1.erasAbbrRegex = erasAbbrRegex;\nproto$1.erasNameRegex = erasNameRegex;\nproto$1.erasNarrowRegex = erasNarrowRegex;\n\nproto$1.months = localeMonths;\nproto$1.monthsShort = localeMonthsShort;\nproto$1.monthsParse = localeMonthsParse;\nproto$1.monthsRegex = monthsRegex;\nproto$1.monthsShortRegex = monthsShortRegex;\nproto$1.week = localeWeek;\nproto$1.firstDayOfYear = localeFirstDayOfYear;\nproto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\nproto$1.weekdays = localeWeekdays;\nproto$1.weekdaysMin = localeWeekdaysMin;\nproto$1.weekdaysShort = localeWeekdaysShort;\nproto$1.weekdaysParse = localeWeekdaysParse;\n\nproto$1.weekdaysRegex = weekdaysRegex;\nproto$1.weekdaysShortRegex = weekdaysShortRegex;\nproto$1.weekdaysMinRegex = weekdaysMinRegex;\n\nproto$1.isPM = localeIsPM;\nproto$1.meridiem = localeMeridiem;\n\nfunction get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n}\n\nfunction listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n}\n\n// ()\n// (5)\n// (fmt, 5)\n// (fmt)\n// (true)\n// (true, 5)\n// (true, fmt, 5)\n// (true, fmt)\nfunction listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n}\n\nfunction listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n}\n\nfunction listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n}\n\nfunction listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n}\n\nfunction listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n}\n\nfunction listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n}\n\ngetSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n});\n\n// Side effect imports\n\nhooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n);\nhooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n);\n\nvar mathAbs = Math.abs;\n\nfunction abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n}\n\nfunction addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n}\n\n// supports only 2.0-style add(1, 's') or add(duration)\nfunction add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n}\n\n// supports only 2.0-style subtract(1, 's') or subtract(duration)\nfunction subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n}\n\nfunction absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n}\n\nfunction bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n}\n\nfunction daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n}\n\nfunction monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n}\n\nfunction as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n}\n\nfunction makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n}\n\nvar asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y'),\n valueOf$1 = asMilliseconds;\n\nfunction clone$1() {\n return createDuration(this);\n}\n\nfunction get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n}\n\nfunction makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n}\n\nvar milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\nfunction weeks() {\n return absFloor(this.days() / 7);\n}\n\nvar round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n// helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\nfunction substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n}\n\nfunction relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n}\n\n// This function allows you to set the rounding function for relative time strings\nfunction getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n}\n\n// This function allows you to set a threshold for relative time strings\nfunction getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n}\n\nfunction humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n}\n\nvar abs$1 = Math.abs;\n\nfunction sign(x) {\n return (x > 0) - (x < 0) || +x;\n}\n\nfunction toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n}\n\nvar proto$2 = Duration.prototype;\n\nproto$2.isValid = isValid$1;\nproto$2.abs = abs;\nproto$2.add = add$1;\nproto$2.subtract = subtract$1;\nproto$2.as = as;\nproto$2.asMilliseconds = asMilliseconds;\nproto$2.asSeconds = asSeconds;\nproto$2.asMinutes = asMinutes;\nproto$2.asHours = asHours;\nproto$2.asDays = asDays;\nproto$2.asWeeks = asWeeks;\nproto$2.asMonths = asMonths;\nproto$2.asQuarters = asQuarters;\nproto$2.asYears = asYears;\nproto$2.valueOf = valueOf$1;\nproto$2._bubble = bubble;\nproto$2.clone = clone$1;\nproto$2.get = get$2;\nproto$2.milliseconds = milliseconds;\nproto$2.seconds = seconds;\nproto$2.minutes = minutes;\nproto$2.hours = hours;\nproto$2.days = days;\nproto$2.weeks = weeks;\nproto$2.months = months;\nproto$2.years = years;\nproto$2.humanize = humanize;\nproto$2.toISOString = toISOString$1;\nproto$2.toString = toISOString$1;\nproto$2.toJSON = toISOString$1;\nproto$2.locale = locale;\nproto$2.localeData = localeData;\n\nproto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n);\nproto$2.lang = lang;\n\n// FORMATTING\n\naddFormatToken('X', 0, 0, 'unix');\naddFormatToken('x', 0, 0, 'valueOf');\n\n// PARSING\n\naddRegexToken('x', matchSigned);\naddRegexToken('X', matchTimestamp);\naddParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n});\naddParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n});\n\n//! moment.js\n\nhooks.version = '2.30.1';\n\nsetHookCallback(createLocal);\n\nhooks.fn = proto;\nhooks.min = min;\nhooks.max = max;\nhooks.now = now;\nhooks.utc = createUTC;\nhooks.unix = createUnix;\nhooks.months = listMonths;\nhooks.isDate = isDate;\nhooks.locale = getSetGlobalLocale;\nhooks.invalid = createInvalid;\nhooks.duration = createDuration;\nhooks.isMoment = isMoment;\nhooks.weekdays = listWeekdays;\nhooks.parseZone = createInZone;\nhooks.localeData = getLocale;\nhooks.isDuration = isDuration;\nhooks.monthsShort = listMonthsShort;\nhooks.weekdaysMin = listWeekdaysMin;\nhooks.defineLocale = defineLocale;\nhooks.updateLocale = updateLocale;\nhooks.locales = listLocales;\nhooks.weekdaysShort = listWeekdaysShort;\nhooks.normalizeUnits = normalizeUnits;\nhooks.relativeTimeRounding = getSetRelativeTimeRounding;\nhooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\nhooks.calendarFormat = getCalendarFormat;\nhooks.prototype = proto;\n\n// currently HTML5 input type only supports 24-hour formats\nhooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // \n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // \n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // \n DATE: 'YYYY-MM-DD', // \n TIME: 'HH:mm', // \n TIME_SECONDS: 'HH:mm:ss', // \n TIME_MS: 'HH:mm:ss.SSS', // \n WEEK: 'GGGG-[W]WW', // \n MONTH: 'YYYY-MM', // \n};\n\nexport default hooks;\n","var NodeType;\r\n(function (NodeType) {\r\n NodeType[NodeType[\"Document\"] = 0] = \"Document\";\r\n NodeType[NodeType[\"DocumentType\"] = 1] = \"DocumentType\";\r\n NodeType[NodeType[\"Element\"] = 2] = \"Element\";\r\n NodeType[NodeType[\"Text\"] = 3] = \"Text\";\r\n NodeType[NodeType[\"CDATA\"] = 4] = \"CDATA\";\r\n NodeType[NodeType[\"Comment\"] = 5] = \"Comment\";\r\n})(NodeType || (NodeType = {}));\n\nfunction isElement(n) {\r\n return n.nodeType === n.ELEMENT_NODE;\r\n}\r\nfunction isShadowRoot(n) {\r\n const host = n === null || n === void 0 ? void 0 : n.host;\r\n return Boolean((host === null || host === void 0 ? void 0 : host.shadowRoot) === n);\r\n}\r\nfunction isNativeShadowDom(shadowRoot) {\r\n return Object.prototype.toString.call(shadowRoot) === '[object ShadowRoot]';\r\n}\r\nfunction fixBrowserCompatibilityIssuesInCSS(cssText) {\r\n if (cssText.includes(' background-clip: text;') &&\r\n !cssText.includes(' -webkit-background-clip: text;')) {\r\n cssText = cssText.replace(' background-clip: text;', ' -webkit-background-clip: text; background-clip: text;');\r\n }\r\n return cssText;\r\n}\r\nfunction escapeImportStatement(rule) {\r\n const { cssText } = rule;\r\n if (cssText.split('\"').length < 3)\r\n return cssText;\r\n const statement = ['@import', `url(${JSON.stringify(rule.href)})`];\r\n if (rule.layerName === '') {\r\n statement.push(`layer`);\r\n }\r\n else if (rule.layerName) {\r\n statement.push(`layer(${rule.layerName})`);\r\n }\r\n if (rule.supportsText) {\r\n statement.push(`supports(${rule.supportsText})`);\r\n }\r\n if (rule.media.length) {\r\n statement.push(rule.media.mediaText);\r\n }\r\n return statement.join(' ') + ';';\r\n}\r\nfunction stringifyStylesheet(s) {\r\n try {\r\n const rules = s.rules || s.cssRules;\r\n return rules\r\n ? fixBrowserCompatibilityIssuesInCSS(Array.from(rules, stringifyRule).join(''))\r\n : null;\r\n }\r\n catch (error) {\r\n return null;\r\n }\r\n}\r\nfunction stringifyRule(rule) {\r\n let importStringified;\r\n if (isCSSImportRule(rule)) {\r\n try {\r\n importStringified =\r\n stringifyStylesheet(rule.styleSheet) ||\r\n escapeImportStatement(rule);\r\n }\r\n catch (error) {\r\n }\r\n }\r\n else if (isCSSStyleRule(rule) && rule.selectorText.includes(':')) {\r\n return fixSafariColons(rule.cssText);\r\n }\r\n return importStringified || rule.cssText;\r\n}\r\nfunction fixSafariColons(cssStringified) {\r\n const regex = /(\\[(?:[\\w-]+)[^\\\\])(:(?:[\\w-]+)\\])/gm;\r\n return cssStringified.replace(regex, '$1\\\\$2');\r\n}\r\nfunction isCSSImportRule(rule) {\r\n return 'styleSheet' in rule;\r\n}\r\nfunction isCSSStyleRule(rule) {\r\n return 'selectorText' in rule;\r\n}\r\nclass Mirror {\r\n constructor() {\r\n this.idNodeMap = new Map();\r\n this.nodeMetaMap = new WeakMap();\r\n }\r\n getId(n) {\r\n var _a;\r\n if (!n)\r\n return -1;\r\n const id = (_a = this.getMeta(n)) === null || _a === void 0 ? void 0 : _a.id;\r\n return id !== null && id !== void 0 ? id : -1;\r\n }\r\n getNode(id) {\r\n return this.idNodeMap.get(id) || null;\r\n }\r\n getIds() {\r\n return Array.from(this.idNodeMap.keys());\r\n }\r\n getMeta(n) {\r\n return this.nodeMetaMap.get(n) || null;\r\n }\r\n removeNodeFromMap(n) {\r\n const id = this.getId(n);\r\n this.idNodeMap.delete(id);\r\n if (n.childNodes) {\r\n n.childNodes.forEach((childNode) => this.removeNodeFromMap(childNode));\r\n }\r\n }\r\n has(id) {\r\n return this.idNodeMap.has(id);\r\n }\r\n hasNode(node) {\r\n return this.nodeMetaMap.has(node);\r\n }\r\n add(n, meta) {\r\n const id = meta.id;\r\n this.idNodeMap.set(id, n);\r\n this.nodeMetaMap.set(n, meta);\r\n }\r\n replace(id, n) {\r\n const oldNode = this.getNode(id);\r\n if (oldNode) {\r\n const meta = this.nodeMetaMap.get(oldNode);\r\n if (meta)\r\n this.nodeMetaMap.set(n, meta);\r\n }\r\n this.idNodeMap.set(id, n);\r\n }\r\n reset() {\r\n this.idNodeMap = new Map();\r\n this.nodeMetaMap = new WeakMap();\r\n }\r\n}\r\nfunction createMirror() {\r\n return new Mirror();\r\n}\r\nfunction maskInputValue({ element, maskInputOptions, tagName, type, value, maskInputFn, }) {\r\n let text = value || '';\r\n const actualType = type && toLowerCase(type);\r\n if (maskInputOptions[tagName.toLowerCase()] ||\r\n (actualType && maskInputOptions[actualType])) {\r\n if (maskInputFn) {\r\n text = maskInputFn(text, element);\r\n }\r\n else {\r\n text = '*'.repeat(text.length);\r\n }\r\n }\r\n return text;\r\n}\r\nfunction toLowerCase(str) {\r\n return str.toLowerCase();\r\n}\r\nconst ORIGINAL_ATTRIBUTE_NAME = '__rrweb_original__';\r\nfunction is2DCanvasBlank(canvas) {\r\n const ctx = canvas.getContext('2d');\r\n if (!ctx)\r\n return true;\r\n const chunkSize = 50;\r\n for (let x = 0; x < canvas.width; x += chunkSize) {\r\n for (let y = 0; y < canvas.height; y += chunkSize) {\r\n const getImageData = ctx.getImageData;\r\n const originalGetImageData = ORIGINAL_ATTRIBUTE_NAME in getImageData\r\n ? getImageData[ORIGINAL_ATTRIBUTE_NAME]\r\n : getImageData;\r\n const pixelBuffer = new Uint32Array(originalGetImageData.call(ctx, x, y, Math.min(chunkSize, canvas.width - x), Math.min(chunkSize, canvas.height - y)).data.buffer);\r\n if (pixelBuffer.some((pixel) => pixel !== 0))\r\n return false;\r\n }\r\n }\r\n return true;\r\n}\r\nfunction getInputType(element) {\r\n const type = element.type;\r\n return element.hasAttribute('data-rr-is-password')\r\n ? 'password'\r\n : type\r\n ?\r\n toLowerCase(type)\r\n : null;\r\n}\r\nfunction extractFileExtension(path, baseURL) {\r\n var _a;\r\n let url;\r\n try {\r\n url = new URL(path, baseURL !== null && baseURL !== void 0 ? baseURL : window.location.href);\r\n }\r\n catch (err) {\r\n return null;\r\n }\r\n const regex = /\\.([0-9a-z]+)(?:$)/i;\r\n const match = url.pathname.match(regex);\r\n return (_a = match === null || match === void 0 ? void 0 : match[1]) !== null && _a !== void 0 ? _a : null;\r\n}\n\nlet _id = 1;\r\nconst tagNameRegex = new RegExp('[^a-z0-9-_:]');\r\nconst IGNORED_NODE = -2;\r\nfunction genId() {\r\n return _id++;\r\n}\r\nfunction getValidTagName(element) {\r\n if (element instanceof HTMLFormElement) {\r\n return 'form';\r\n }\r\n const processedTagName = toLowerCase(element.tagName);\r\n if (tagNameRegex.test(processedTagName)) {\r\n return 'div';\r\n }\r\n return processedTagName;\r\n}\r\nfunction extractOrigin(url) {\r\n let origin = '';\r\n if (url.indexOf('//') > -1) {\r\n origin = url.split('/').slice(0, 3).join('/');\r\n }\r\n else {\r\n origin = url.split('/')[0];\r\n }\r\n origin = origin.split('?')[0];\r\n return origin;\r\n}\r\nlet canvasService;\r\nlet canvasCtx;\r\nconst URL_IN_CSS_REF = /url\\((?:(')([^']*)'|(\")(.*?)\"|([^)]*))\\)/gm;\r\nconst URL_PROTOCOL_MATCH = /^(?:[a-z+]+:)?\\/\\//i;\r\nconst URL_WWW_MATCH = /^www\\..*/i;\r\nconst DATA_URI = /^(data:)([^,]*),(.*)/i;\r\nfunction absoluteToStylesheet(cssText, href) {\r\n return (cssText || '').replace(URL_IN_CSS_REF, (origin, quote1, path1, quote2, path2, path3) => {\r\n const filePath = path1 || path2 || path3;\r\n const maybeQuote = quote1 || quote2 || '';\r\n if (!filePath) {\r\n return origin;\r\n }\r\n if (URL_PROTOCOL_MATCH.test(filePath) || URL_WWW_MATCH.test(filePath)) {\r\n return `url(${maybeQuote}${filePath}${maybeQuote})`;\r\n }\r\n if (DATA_URI.test(filePath)) {\r\n return `url(${maybeQuote}${filePath}${maybeQuote})`;\r\n }\r\n if (filePath[0] === '/') {\r\n return `url(${maybeQuote}${extractOrigin(href) + filePath}${maybeQuote})`;\r\n }\r\n const stack = href.split('/');\r\n const parts = filePath.split('/');\r\n stack.pop();\r\n for (const part of parts) {\r\n if (part === '.') {\r\n continue;\r\n }\r\n else if (part === '..') {\r\n stack.pop();\r\n }\r\n else {\r\n stack.push(part);\r\n }\r\n }\r\n return `url(${maybeQuote}${stack.join('/')}${maybeQuote})`;\r\n });\r\n}\r\nconst SRCSET_NOT_SPACES = /^[^ \\t\\n\\r\\u000c]+/;\r\nconst SRCSET_COMMAS_OR_SPACES = /^[, \\t\\n\\r\\u000c]+/;\r\nfunction getAbsoluteSrcsetString(doc, attributeValue) {\r\n if (attributeValue.trim() === '') {\r\n return attributeValue;\r\n }\r\n let pos = 0;\r\n function collectCharacters(regEx) {\r\n let chars;\r\n const match = regEx.exec(attributeValue.substring(pos));\r\n if (match) {\r\n chars = match[0];\r\n pos += chars.length;\r\n return chars;\r\n }\r\n return '';\r\n }\r\n const output = [];\r\n while (true) {\r\n collectCharacters(SRCSET_COMMAS_OR_SPACES);\r\n if (pos >= attributeValue.length) {\r\n break;\r\n }\r\n let url = collectCharacters(SRCSET_NOT_SPACES);\r\n if (url.slice(-1) === ',') {\r\n url = absoluteToDoc(doc, url.substring(0, url.length - 1));\r\n output.push(url);\r\n }\r\n else {\r\n let descriptorsStr = '';\r\n url = absoluteToDoc(doc, url);\r\n let inParens = false;\r\n while (true) {\r\n const c = attributeValue.charAt(pos);\r\n if (c === '') {\r\n output.push((url + descriptorsStr).trim());\r\n break;\r\n }\r\n else if (!inParens) {\r\n if (c === ',') {\r\n pos += 1;\r\n output.push((url + descriptorsStr).trim());\r\n break;\r\n }\r\n else if (c === '(') {\r\n inParens = true;\r\n }\r\n }\r\n else {\r\n if (c === ')') {\r\n inParens = false;\r\n }\r\n }\r\n descriptorsStr += c;\r\n pos += 1;\r\n }\r\n }\r\n }\r\n return output.join(', ');\r\n}\r\nfunction absoluteToDoc(doc, attributeValue) {\r\n if (!attributeValue || attributeValue.trim() === '') {\r\n return attributeValue;\r\n }\r\n const a = doc.createElement('a');\r\n a.href = attributeValue;\r\n return a.href;\r\n}\r\nfunction isSVGElement(el) {\r\n return Boolean(el.tagName === 'svg' || el.ownerSVGElement);\r\n}\r\nfunction getHref() {\r\n const a = document.createElement('a');\r\n a.href = '';\r\n return a.href;\r\n}\r\nfunction transformAttribute(doc, tagName, name, value) {\r\n if (!value) {\r\n return value;\r\n }\r\n if (name === 'src' ||\r\n (name === 'href' && !(tagName === 'use' && value[0] === '#'))) {\r\n return absoluteToDoc(doc, value);\r\n }\r\n else if (name === 'xlink:href' && value[0] !== '#') {\r\n return absoluteToDoc(doc, value);\r\n }\r\n else if (name === 'background' &&\r\n (tagName === 'table' || tagName === 'td' || tagName === 'th')) {\r\n return absoluteToDoc(doc, value);\r\n }\r\n else if (name === 'srcset') {\r\n return getAbsoluteSrcsetString(doc, value);\r\n }\r\n else if (name === 'style') {\r\n return absoluteToStylesheet(value, getHref());\r\n }\r\n else if (tagName === 'object' && name === 'data') {\r\n return absoluteToDoc(doc, value);\r\n }\r\n return value;\r\n}\r\nfunction ignoreAttribute(tagName, name, _value) {\r\n return (tagName === 'video' || tagName === 'audio') && name === 'autoplay';\r\n}\r\nfunction _isBlockedElement(element, blockClass, blockSelector) {\r\n try {\r\n if (typeof blockClass === 'string') {\r\n if (element.classList.contains(blockClass)) {\r\n return true;\r\n }\r\n }\r\n else {\r\n for (let eIndex = element.classList.length; eIndex--;) {\r\n const className = element.classList[eIndex];\r\n if (blockClass.test(className)) {\r\n return true;\r\n }\r\n }\r\n }\r\n if (blockSelector) {\r\n return element.matches(blockSelector);\r\n }\r\n }\r\n catch (e) {\r\n }\r\n return false;\r\n}\r\nfunction classMatchesRegex(node, regex, checkAncestors) {\r\n if (!node)\r\n return false;\r\n if (node.nodeType !== node.ELEMENT_NODE) {\r\n if (!checkAncestors)\r\n return false;\r\n return classMatchesRegex(node.parentNode, regex, checkAncestors);\r\n }\r\n for (let eIndex = node.classList.length; eIndex--;) {\r\n const className = node.classList[eIndex];\r\n if (regex.test(className)) {\r\n return true;\r\n }\r\n }\r\n if (!checkAncestors)\r\n return false;\r\n return classMatchesRegex(node.parentNode, regex, checkAncestors);\r\n}\r\nfunction needMaskingText(node, maskTextClass, maskTextSelector, checkAncestors) {\r\n try {\r\n const el = node.nodeType === node.ELEMENT_NODE\r\n ? node\r\n : node.parentElement;\r\n if (el === null)\r\n return false;\r\n if (typeof maskTextClass === 'string') {\r\n if (checkAncestors) {\r\n if (el.closest(`.${maskTextClass}`))\r\n return true;\r\n }\r\n else {\r\n if (el.classList.contains(maskTextClass))\r\n return true;\r\n }\r\n }\r\n else {\r\n if (classMatchesRegex(el, maskTextClass, checkAncestors))\r\n return true;\r\n }\r\n if (maskTextSelector) {\r\n if (checkAncestors) {\r\n if (el.closest(maskTextSelector))\r\n return true;\r\n }\r\n else {\r\n if (el.matches(maskTextSelector))\r\n return true;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n }\r\n return false;\r\n}\r\nfunction onceIframeLoaded(iframeEl, listener, iframeLoadTimeout) {\r\n const win = iframeEl.contentWindow;\r\n if (!win) {\r\n return;\r\n }\r\n let fired = false;\r\n let readyState;\r\n try {\r\n readyState = win.document.readyState;\r\n }\r\n catch (error) {\r\n return;\r\n }\r\n if (readyState !== 'complete') {\r\n const timer = setTimeout(() => {\r\n if (!fired) {\r\n listener();\r\n fired = true;\r\n }\r\n }, iframeLoadTimeout);\r\n iframeEl.addEventListener('load', () => {\r\n clearTimeout(timer);\r\n fired = true;\r\n listener();\r\n });\r\n return;\r\n }\r\n const blankUrl = 'about:blank';\r\n if (win.location.href !== blankUrl ||\r\n iframeEl.src === blankUrl ||\r\n iframeEl.src === '') {\r\n setTimeout(listener, 0);\r\n return iframeEl.addEventListener('load', listener);\r\n }\r\n iframeEl.addEventListener('load', listener);\r\n}\r\nfunction onceStylesheetLoaded(link, listener, styleSheetLoadTimeout) {\r\n let fired = false;\r\n let styleSheetLoaded;\r\n try {\r\n styleSheetLoaded = link.sheet;\r\n }\r\n catch (error) {\r\n return;\r\n }\r\n if (styleSheetLoaded)\r\n return;\r\n const timer = setTimeout(() => {\r\n if (!fired) {\r\n listener();\r\n fired = true;\r\n }\r\n }, styleSheetLoadTimeout);\r\n link.addEventListener('load', () => {\r\n clearTimeout(timer);\r\n fired = true;\r\n listener();\r\n });\r\n}\r\nfunction serializeNode(n, options) {\r\n const { doc, mirror, blockClass, blockSelector, needsMask, inlineStylesheet, maskInputOptions = {}, maskTextFn, maskInputFn, dataURLOptions = {}, inlineImages, recordCanvas, keepIframeSrcFn, newlyAddedElement = false, } = options;\r\n const rootId = getRootId(doc, mirror);\r\n switch (n.nodeType) {\r\n case n.DOCUMENT_NODE:\r\n if (n.compatMode !== 'CSS1Compat') {\r\n return {\r\n type: NodeType.Document,\r\n childNodes: [],\r\n compatMode: n.compatMode,\r\n };\r\n }\r\n else {\r\n return {\r\n type: NodeType.Document,\r\n childNodes: [],\r\n };\r\n }\r\n case n.DOCUMENT_TYPE_NODE:\r\n return {\r\n type: NodeType.DocumentType,\r\n name: n.name,\r\n publicId: n.publicId,\r\n systemId: n.systemId,\r\n rootId,\r\n };\r\n case n.ELEMENT_NODE:\r\n return serializeElementNode(n, {\r\n doc,\r\n blockClass,\r\n blockSelector,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n maskInputFn,\r\n dataURLOptions,\r\n inlineImages,\r\n recordCanvas,\r\n keepIframeSrcFn,\r\n newlyAddedElement,\r\n rootId,\r\n });\r\n case n.TEXT_NODE:\r\n return serializeTextNode(n, {\r\n needsMask,\r\n maskTextFn,\r\n rootId,\r\n });\r\n case n.CDATA_SECTION_NODE:\r\n return {\r\n type: NodeType.CDATA,\r\n textContent: '',\r\n rootId,\r\n };\r\n case n.COMMENT_NODE:\r\n return {\r\n type: NodeType.Comment,\r\n textContent: n.textContent || '',\r\n rootId,\r\n };\r\n default:\r\n return false;\r\n }\r\n}\r\nfunction getRootId(doc, mirror) {\r\n if (!mirror.hasNode(doc))\r\n return undefined;\r\n const docId = mirror.getId(doc);\r\n return docId === 1 ? undefined : docId;\r\n}\r\nfunction serializeTextNode(n, options) {\r\n var _a;\r\n const { needsMask, maskTextFn, rootId } = options;\r\n const parentTagName = n.parentNode && n.parentNode.tagName;\r\n let textContent = n.textContent;\r\n const isStyle = parentTagName === 'STYLE' ? true : undefined;\r\n const isScript = parentTagName === 'SCRIPT' ? true : undefined;\r\n if (isStyle && textContent) {\r\n try {\r\n if (n.nextSibling || n.previousSibling) {\r\n }\r\n else if ((_a = n.parentNode.sheet) === null || _a === void 0 ? void 0 : _a.cssRules) {\r\n textContent = stringifyStylesheet(n.parentNode.sheet);\r\n }\r\n }\r\n catch (err) {\r\n console.warn(`Cannot get CSS styles from text's parentNode. Error: ${err}`, n);\r\n }\r\n textContent = absoluteToStylesheet(textContent, getHref());\r\n }\r\n if (isScript) {\r\n textContent = 'SCRIPT_PLACEHOLDER';\r\n }\r\n if (!isStyle && !isScript && textContent && needsMask) {\r\n textContent = maskTextFn\r\n ? maskTextFn(textContent, n.parentElement)\r\n : textContent.replace(/[\\S]/g, '*');\r\n }\r\n return {\r\n type: NodeType.Text,\r\n textContent: textContent || '',\r\n isStyle,\r\n rootId,\r\n };\r\n}\r\nfunction serializeElementNode(n, options) {\r\n const { doc, blockClass, blockSelector, inlineStylesheet, maskInputOptions = {}, maskInputFn, dataURLOptions = {}, inlineImages, recordCanvas, keepIframeSrcFn, newlyAddedElement = false, rootId, } = options;\r\n const needBlock = _isBlockedElement(n, blockClass, blockSelector);\r\n const tagName = getValidTagName(n);\r\n let attributes = {};\r\n const len = n.attributes.length;\r\n for (let i = 0; i < len; i++) {\r\n const attr = n.attributes[i];\r\n if (!ignoreAttribute(tagName, attr.name, attr.value)) {\r\n attributes[attr.name] = transformAttribute(doc, tagName, toLowerCase(attr.name), attr.value);\r\n }\r\n }\r\n if (tagName === 'link' && inlineStylesheet) {\r\n const stylesheet = Array.from(doc.styleSheets).find((s) => {\r\n return s.href === n.href;\r\n });\r\n let cssText = null;\r\n if (stylesheet) {\r\n cssText = stringifyStylesheet(stylesheet);\r\n }\r\n if (cssText) {\r\n delete attributes.rel;\r\n delete attributes.href;\r\n attributes._cssText = absoluteToStylesheet(cssText, stylesheet.href);\r\n }\r\n }\r\n if (tagName === 'style' &&\r\n n.sheet &&\r\n !(n.innerText || n.textContent || '').trim().length) {\r\n const cssText = stringifyStylesheet(n.sheet);\r\n if (cssText) {\r\n attributes._cssText = absoluteToStylesheet(cssText, getHref());\r\n }\r\n }\r\n if (tagName === 'input' || tagName === 'textarea' || tagName === 'select') {\r\n const value = n.value;\r\n const checked = n.checked;\r\n if (attributes.type !== 'radio' &&\r\n attributes.type !== 'checkbox' &&\r\n attributes.type !== 'submit' &&\r\n attributes.type !== 'button' &&\r\n value) {\r\n attributes.value = maskInputValue({\r\n element: n,\r\n type: getInputType(n),\r\n tagName,\r\n value,\r\n maskInputOptions,\r\n maskInputFn,\r\n });\r\n }\r\n else if (checked) {\r\n attributes.checked = checked;\r\n }\r\n }\r\n if (tagName === 'option') {\r\n if (n.selected && !maskInputOptions['select']) {\r\n attributes.selected = true;\r\n }\r\n else {\r\n delete attributes.selected;\r\n }\r\n }\r\n if (tagName === 'canvas' && recordCanvas) {\r\n if (n.__context === '2d') {\r\n if (!is2DCanvasBlank(n)) {\r\n attributes.rr_dataURL = n.toDataURL(dataURLOptions.type, dataURLOptions.quality);\r\n }\r\n }\r\n else if (!('__context' in n)) {\r\n const canvasDataURL = n.toDataURL(dataURLOptions.type, dataURLOptions.quality);\r\n const blankCanvas = document.createElement('canvas');\r\n blankCanvas.width = n.width;\r\n blankCanvas.height = n.height;\r\n const blankCanvasDataURL = blankCanvas.toDataURL(dataURLOptions.type, dataURLOptions.quality);\r\n if (canvasDataURL !== blankCanvasDataURL) {\r\n attributes.rr_dataURL = canvasDataURL;\r\n }\r\n }\r\n }\r\n if (tagName === 'img' && inlineImages) {\r\n if (!canvasService) {\r\n canvasService = doc.createElement('canvas');\r\n canvasCtx = canvasService.getContext('2d');\r\n }\r\n const image = n;\r\n const oldValue = image.crossOrigin;\r\n image.crossOrigin = 'anonymous';\r\n const recordInlineImage = () => {\r\n image.removeEventListener('load', recordInlineImage);\r\n try {\r\n canvasService.width = image.naturalWidth;\r\n canvasService.height = image.naturalHeight;\r\n canvasCtx.drawImage(image, 0, 0);\r\n attributes.rr_dataURL = canvasService.toDataURL(dataURLOptions.type, dataURLOptions.quality);\r\n }\r\n catch (err) {\r\n console.warn(`Cannot inline img src=${image.currentSrc}! Error: ${err}`);\r\n }\r\n oldValue\r\n ? (attributes.crossOrigin = oldValue)\r\n : image.removeAttribute('crossorigin');\r\n };\r\n if (image.complete && image.naturalWidth !== 0)\r\n recordInlineImage();\r\n else\r\n image.addEventListener('load', recordInlineImage);\r\n }\r\n if (tagName === 'audio' || tagName === 'video') {\r\n const mediaAttributes = attributes;\r\n mediaAttributes.rr_mediaState = n.paused\r\n ? 'paused'\r\n : 'played';\r\n mediaAttributes.rr_mediaCurrentTime = n.currentTime;\r\n mediaAttributes.rr_mediaPlaybackRate = n.playbackRate;\r\n mediaAttributes.rr_mediaMuted = n.muted;\r\n mediaAttributes.rr_mediaLoop = n.loop;\r\n mediaAttributes.rr_mediaVolume = n.volume;\r\n }\r\n if (!newlyAddedElement) {\r\n if (n.scrollLeft) {\r\n attributes.rr_scrollLeft = n.scrollLeft;\r\n }\r\n if (n.scrollTop) {\r\n attributes.rr_scrollTop = n.scrollTop;\r\n }\r\n }\r\n if (needBlock) {\r\n const { width, height } = n.getBoundingClientRect();\r\n attributes = {\r\n class: attributes.class,\r\n rr_width: `${width}px`,\r\n rr_height: `${height}px`,\r\n };\r\n }\r\n if (tagName === 'iframe' && !keepIframeSrcFn(attributes.src)) {\r\n if (!n.contentDocument) {\r\n attributes.rr_src = attributes.src;\r\n }\r\n delete attributes.src;\r\n }\r\n let isCustomElement;\r\n try {\r\n if (customElements.get(tagName))\r\n isCustomElement = true;\r\n }\r\n catch (e) {\r\n }\r\n return {\r\n type: NodeType.Element,\r\n tagName,\r\n attributes,\r\n childNodes: [],\r\n isSVG: isSVGElement(n) || undefined,\r\n needBlock,\r\n rootId,\r\n isCustom: isCustomElement,\r\n };\r\n}\r\nfunction lowerIfExists(maybeAttr) {\r\n if (maybeAttr === undefined || maybeAttr === null) {\r\n return '';\r\n }\r\n else {\r\n return maybeAttr.toLowerCase();\r\n }\r\n}\r\nfunction slimDOMExcluded(sn, slimDOMOptions) {\r\n if (slimDOMOptions.comment && sn.type === NodeType.Comment) {\r\n return true;\r\n }\r\n else if (sn.type === NodeType.Element) {\r\n if (slimDOMOptions.script &&\r\n (sn.tagName === 'script' ||\r\n (sn.tagName === 'link' &&\r\n (sn.attributes.rel === 'preload' ||\r\n sn.attributes.rel === 'modulepreload') &&\r\n sn.attributes.as === 'script') ||\r\n (sn.tagName === 'link' &&\r\n sn.attributes.rel === 'prefetch' &&\r\n typeof sn.attributes.href === 'string' &&\r\n extractFileExtension(sn.attributes.href) === 'js'))) {\r\n return true;\r\n }\r\n else if (slimDOMOptions.headFavicon &&\r\n ((sn.tagName === 'link' && sn.attributes.rel === 'shortcut icon') ||\r\n (sn.tagName === 'meta' &&\r\n (lowerIfExists(sn.attributes.name).match(/^msapplication-tile(image|color)$/) ||\r\n lowerIfExists(sn.attributes.name) === 'application-name' ||\r\n lowerIfExists(sn.attributes.rel) === 'icon' ||\r\n lowerIfExists(sn.attributes.rel) === 'apple-touch-icon' ||\r\n lowerIfExists(sn.attributes.rel) === 'shortcut icon')))) {\r\n return true;\r\n }\r\n else if (sn.tagName === 'meta') {\r\n if (slimDOMOptions.headMetaDescKeywords &&\r\n lowerIfExists(sn.attributes.name).match(/^description|keywords$/)) {\r\n return true;\r\n }\r\n else if (slimDOMOptions.headMetaSocial &&\r\n (lowerIfExists(sn.attributes.property).match(/^(og|twitter|fb):/) ||\r\n lowerIfExists(sn.attributes.name).match(/^(og|twitter):/) ||\r\n lowerIfExists(sn.attributes.name) === 'pinterest')) {\r\n return true;\r\n }\r\n else if (slimDOMOptions.headMetaRobots &&\r\n (lowerIfExists(sn.attributes.name) === 'robots' ||\r\n lowerIfExists(sn.attributes.name) === 'googlebot' ||\r\n lowerIfExists(sn.attributes.name) === 'bingbot')) {\r\n return true;\r\n }\r\n else if (slimDOMOptions.headMetaHttpEquiv &&\r\n sn.attributes['http-equiv'] !== undefined) {\r\n return true;\r\n }\r\n else if (slimDOMOptions.headMetaAuthorship &&\r\n (lowerIfExists(sn.attributes.name) === 'author' ||\r\n lowerIfExists(sn.attributes.name) === 'generator' ||\r\n lowerIfExists(sn.attributes.name) === 'framework' ||\r\n lowerIfExists(sn.attributes.name) === 'publisher' ||\r\n lowerIfExists(sn.attributes.name) === 'progid' ||\r\n lowerIfExists(sn.attributes.property).match(/^article:/) ||\r\n lowerIfExists(sn.attributes.property).match(/^product:/))) {\r\n return true;\r\n }\r\n else if (slimDOMOptions.headMetaVerification &&\r\n (lowerIfExists(sn.attributes.name) === 'google-site-verification' ||\r\n lowerIfExists(sn.attributes.name) === 'yandex-verification' ||\r\n lowerIfExists(sn.attributes.name) === 'csrf-token' ||\r\n lowerIfExists(sn.attributes.name) === 'p:domain_verify' ||\r\n lowerIfExists(sn.attributes.name) === 'verify-v1' ||\r\n lowerIfExists(sn.attributes.name) === 'verification' ||\r\n lowerIfExists(sn.attributes.name) === 'shopify-checkout-api-token')) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n}\r\nfunction serializeNodeWithId(n, options) {\r\n const { doc, mirror, blockClass, blockSelector, maskTextClass, maskTextSelector, skipChild = false, inlineStylesheet = true, maskInputOptions = {}, maskTextFn, maskInputFn, slimDOMOptions, dataURLOptions = {}, inlineImages = false, recordCanvas = false, onSerialize, onIframeLoad, iframeLoadTimeout = 5000, onStylesheetLoad, stylesheetLoadTimeout = 5000, keepIframeSrcFn = () => false, newlyAddedElement = false, } = options;\r\n let { needsMask } = options;\r\n let { preserveWhiteSpace = true } = options;\r\n if (!needsMask &&\r\n n.childNodes) {\r\n const checkAncestors = needsMask === undefined;\r\n needsMask = needMaskingText(n, maskTextClass, maskTextSelector, checkAncestors);\r\n }\r\n const _serializedNode = serializeNode(n, {\r\n doc,\r\n mirror,\r\n blockClass,\r\n blockSelector,\r\n needsMask,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n maskTextFn,\r\n maskInputFn,\r\n dataURLOptions,\r\n inlineImages,\r\n recordCanvas,\r\n keepIframeSrcFn,\r\n newlyAddedElement,\r\n });\r\n if (!_serializedNode) {\r\n console.warn(n, 'not serialized');\r\n return null;\r\n }\r\n let id;\r\n if (mirror.hasNode(n)) {\r\n id = mirror.getId(n);\r\n }\r\n else if (slimDOMExcluded(_serializedNode, slimDOMOptions) ||\r\n (!preserveWhiteSpace &&\r\n _serializedNode.type === NodeType.Text &&\r\n !_serializedNode.isStyle &&\r\n !_serializedNode.textContent.replace(/^\\s+|\\s+$/gm, '').length)) {\r\n id = IGNORED_NODE;\r\n }\r\n else {\r\n id = genId();\r\n }\r\n const serializedNode = Object.assign(_serializedNode, { id });\r\n mirror.add(n, serializedNode);\r\n if (id === IGNORED_NODE) {\r\n return null;\r\n }\r\n if (onSerialize) {\r\n onSerialize(n);\r\n }\r\n let recordChild = !skipChild;\r\n if (serializedNode.type === NodeType.Element) {\r\n recordChild = recordChild && !serializedNode.needBlock;\r\n delete serializedNode.needBlock;\r\n const shadowRoot = n.shadowRoot;\r\n if (shadowRoot && isNativeShadowDom(shadowRoot))\r\n serializedNode.isShadowHost = true;\r\n }\r\n if ((serializedNode.type === NodeType.Document ||\r\n serializedNode.type === NodeType.Element) &&\r\n recordChild) {\r\n if (slimDOMOptions.headWhitespace &&\r\n serializedNode.type === NodeType.Element &&\r\n serializedNode.tagName === 'head') {\r\n preserveWhiteSpace = false;\r\n }\r\n const bypassOptions = {\r\n doc,\r\n mirror,\r\n blockClass,\r\n blockSelector,\r\n needsMask,\r\n maskTextClass,\r\n maskTextSelector,\r\n skipChild,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n maskTextFn,\r\n maskInputFn,\r\n slimDOMOptions,\r\n dataURLOptions,\r\n inlineImages,\r\n recordCanvas,\r\n preserveWhiteSpace,\r\n onSerialize,\r\n onIframeLoad,\r\n iframeLoadTimeout,\r\n onStylesheetLoad,\r\n stylesheetLoadTimeout,\r\n keepIframeSrcFn,\r\n };\r\n if (serializedNode.type === NodeType.Element &&\r\n serializedNode.tagName === 'textarea' &&\r\n serializedNode.attributes.value !== undefined) ;\r\n else {\r\n for (const childN of Array.from(n.childNodes)) {\r\n const serializedChildNode = serializeNodeWithId(childN, bypassOptions);\r\n if (serializedChildNode) {\r\n serializedNode.childNodes.push(serializedChildNode);\r\n }\r\n }\r\n }\r\n if (isElement(n) && n.shadowRoot) {\r\n for (const childN of Array.from(n.shadowRoot.childNodes)) {\r\n const serializedChildNode = serializeNodeWithId(childN, bypassOptions);\r\n if (serializedChildNode) {\r\n isNativeShadowDom(n.shadowRoot) &&\r\n (serializedChildNode.isShadow = true);\r\n serializedNode.childNodes.push(serializedChildNode);\r\n }\r\n }\r\n }\r\n }\r\n if (n.parentNode &&\r\n isShadowRoot(n.parentNode) &&\r\n isNativeShadowDom(n.parentNode)) {\r\n serializedNode.isShadow = true;\r\n }\r\n if (serializedNode.type === NodeType.Element &&\r\n serializedNode.tagName === 'iframe') {\r\n onceIframeLoaded(n, () => {\r\n const iframeDoc = n.contentDocument;\r\n if (iframeDoc && onIframeLoad) {\r\n const serializedIframeNode = serializeNodeWithId(iframeDoc, {\r\n doc: iframeDoc,\r\n mirror,\r\n blockClass,\r\n blockSelector,\r\n needsMask,\r\n maskTextClass,\r\n maskTextSelector,\r\n skipChild: false,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n maskTextFn,\r\n maskInputFn,\r\n slimDOMOptions,\r\n dataURLOptions,\r\n inlineImages,\r\n recordCanvas,\r\n preserveWhiteSpace,\r\n onSerialize,\r\n onIframeLoad,\r\n iframeLoadTimeout,\r\n onStylesheetLoad,\r\n stylesheetLoadTimeout,\r\n keepIframeSrcFn,\r\n });\r\n if (serializedIframeNode) {\r\n onIframeLoad(n, serializedIframeNode);\r\n }\r\n }\r\n }, iframeLoadTimeout);\r\n }\r\n if (serializedNode.type === NodeType.Element &&\r\n serializedNode.tagName === 'link' &&\r\n typeof serializedNode.attributes.rel === 'string' &&\r\n (serializedNode.attributes.rel === 'stylesheet' ||\r\n (serializedNode.attributes.rel === 'preload' &&\r\n typeof serializedNode.attributes.href === 'string' &&\r\n extractFileExtension(serializedNode.attributes.href) === 'css'))) {\r\n onceStylesheetLoaded(n, () => {\r\n if (onStylesheetLoad) {\r\n const serializedLinkNode = serializeNodeWithId(n, {\r\n doc,\r\n mirror,\r\n blockClass,\r\n blockSelector,\r\n needsMask,\r\n maskTextClass,\r\n maskTextSelector,\r\n skipChild: false,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n maskTextFn,\r\n maskInputFn,\r\n slimDOMOptions,\r\n dataURLOptions,\r\n inlineImages,\r\n recordCanvas,\r\n preserveWhiteSpace,\r\n onSerialize,\r\n onIframeLoad,\r\n iframeLoadTimeout,\r\n onStylesheetLoad,\r\n stylesheetLoadTimeout,\r\n keepIframeSrcFn,\r\n });\r\n if (serializedLinkNode) {\r\n onStylesheetLoad(n, serializedLinkNode);\r\n }\r\n }\r\n }, stylesheetLoadTimeout);\r\n }\r\n return serializedNode;\r\n}\r\nfunction snapshot(n, options) {\r\n const { mirror = new Mirror(), blockClass = 'rr-block', blockSelector = null, maskTextClass = 'rr-mask', maskTextSelector = null, inlineStylesheet = true, inlineImages = false, recordCanvas = false, maskAllInputs = false, maskTextFn, maskInputFn, slimDOM = false, dataURLOptions, preserveWhiteSpace, onSerialize, onIframeLoad, iframeLoadTimeout, onStylesheetLoad, stylesheetLoadTimeout, keepIframeSrcFn = () => false, } = options || {};\r\n const maskInputOptions = maskAllInputs === true\r\n ? {\r\n color: true,\r\n date: true,\r\n 'datetime-local': true,\r\n email: true,\r\n month: true,\r\n number: true,\r\n range: true,\r\n search: true,\r\n tel: true,\r\n text: true,\r\n time: true,\r\n url: true,\r\n week: true,\r\n textarea: true,\r\n select: true,\r\n password: true,\r\n }\r\n : maskAllInputs === false\r\n ? {\r\n password: true,\r\n }\r\n : maskAllInputs;\r\n const slimDOMOptions = slimDOM === true || slimDOM === 'all'\r\n ?\r\n {\r\n script: true,\r\n comment: true,\r\n headFavicon: true,\r\n headWhitespace: true,\r\n headMetaDescKeywords: slimDOM === 'all',\r\n headMetaSocial: true,\r\n headMetaRobots: true,\r\n headMetaHttpEquiv: true,\r\n headMetaAuthorship: true,\r\n headMetaVerification: true,\r\n }\r\n : slimDOM === false\r\n ? {}\r\n : slimDOM;\r\n return serializeNodeWithId(n, {\r\n doc: n,\r\n mirror,\r\n blockClass,\r\n blockSelector,\r\n maskTextClass,\r\n maskTextSelector,\r\n skipChild: false,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n maskTextFn,\r\n maskInputFn,\r\n slimDOMOptions,\r\n dataURLOptions,\r\n inlineImages,\r\n recordCanvas,\r\n preserveWhiteSpace,\r\n onSerialize,\r\n onIframeLoad,\r\n iframeLoadTimeout,\r\n onStylesheetLoad,\r\n stylesheetLoadTimeout,\r\n keepIframeSrcFn,\r\n newlyAddedElement: false,\r\n });\r\n}\n\nfunction on(type, fn, target = document) {\r\n const options = { capture: true, passive: true };\r\n target.addEventListener(type, fn, options);\r\n return () => target.removeEventListener(type, fn, options);\r\n}\r\nconst DEPARTED_MIRROR_ACCESS_WARNING = 'Please stop import mirror directly. Instead of that,' +\r\n '\\r\\n' +\r\n 'now you can use replayer.getMirror() to access the mirror instance of a replayer,' +\r\n '\\r\\n' +\r\n 'or you can use record.mirror to access the mirror instance during recording.';\r\nlet _mirror = {\r\n map: {},\r\n getId() {\r\n console.error(DEPARTED_MIRROR_ACCESS_WARNING);\r\n return -1;\r\n },\r\n getNode() {\r\n console.error(DEPARTED_MIRROR_ACCESS_WARNING);\r\n return null;\r\n },\r\n removeNodeFromMap() {\r\n console.error(DEPARTED_MIRROR_ACCESS_WARNING);\r\n },\r\n has() {\r\n console.error(DEPARTED_MIRROR_ACCESS_WARNING);\r\n return false;\r\n },\r\n reset() {\r\n console.error(DEPARTED_MIRROR_ACCESS_WARNING);\r\n },\r\n};\r\nif (typeof window !== 'undefined' && window.Proxy && window.Reflect) {\r\n _mirror = new Proxy(_mirror, {\r\n get(target, prop, receiver) {\r\n if (prop === 'map') {\r\n console.error(DEPARTED_MIRROR_ACCESS_WARNING);\r\n }\r\n return Reflect.get(target, prop, receiver);\r\n },\r\n });\r\n}\r\nfunction throttle(func, wait, options = {}) {\r\n let timeout = null;\r\n let previous = 0;\r\n return function (...args) {\r\n const now = Date.now();\r\n if (!previous && options.leading === false) {\r\n previous = now;\r\n }\r\n const remaining = wait - (now - previous);\r\n const context = this;\r\n if (remaining <= 0 || remaining > wait) {\r\n if (timeout) {\r\n clearTimeout(timeout);\r\n timeout = null;\r\n }\r\n previous = now;\r\n func.apply(context, args);\r\n }\r\n else if (!timeout && options.trailing !== false) {\r\n timeout = setTimeout(() => {\r\n previous = options.leading === false ? 0 : Date.now();\r\n timeout = null;\r\n func.apply(context, args);\r\n }, remaining);\r\n }\r\n };\r\n}\r\nfunction hookSetter(target, key, d, isRevoked, win = window) {\r\n const original = win.Object.getOwnPropertyDescriptor(target, key);\r\n win.Object.defineProperty(target, key, isRevoked\r\n ? d\r\n : {\r\n set(value) {\r\n setTimeout(() => {\r\n d.set.call(this, value);\r\n }, 0);\r\n if (original && original.set) {\r\n original.set.call(this, value);\r\n }\r\n },\r\n });\r\n return () => hookSetter(target, key, original || {}, true);\r\n}\r\nfunction patch(source, name, replacement) {\r\n try {\r\n if (!(name in source)) {\r\n return () => {\r\n };\r\n }\r\n const original = source[name];\r\n const wrapped = replacement(original);\r\n if (typeof wrapped === 'function') {\r\n wrapped.prototype = wrapped.prototype || {};\r\n Object.defineProperties(wrapped, {\r\n __rrweb_original__: {\r\n enumerable: false,\r\n value: original,\r\n },\r\n });\r\n }\r\n source[name] = wrapped;\r\n return () => {\r\n source[name] = original;\r\n };\r\n }\r\n catch (_a) {\r\n return () => {\r\n };\r\n }\r\n}\r\nlet nowTimestamp = Date.now;\r\nif (!(/[1-9][0-9]{12}/.test(Date.now().toString()))) {\r\n nowTimestamp = () => new Date().getTime();\r\n}\r\nfunction getWindowScroll(win) {\r\n var _a, _b, _c, _d, _e, _f;\r\n const doc = win.document;\r\n return {\r\n left: doc.scrollingElement\r\n ? doc.scrollingElement.scrollLeft\r\n : win.pageXOffset !== undefined\r\n ? win.pageXOffset\r\n : (doc === null || doc === void 0 ? void 0 : doc.documentElement.scrollLeft) ||\r\n ((_b = (_a = doc === null || doc === void 0 ? void 0 : doc.body) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.scrollLeft) ||\r\n ((_c = doc === null || doc === void 0 ? void 0 : doc.body) === null || _c === void 0 ? void 0 : _c.scrollLeft) ||\r\n 0,\r\n top: doc.scrollingElement\r\n ? doc.scrollingElement.scrollTop\r\n : win.pageYOffset !== undefined\r\n ? win.pageYOffset\r\n : (doc === null || doc === void 0 ? void 0 : doc.documentElement.scrollTop) ||\r\n ((_e = (_d = doc === null || doc === void 0 ? void 0 : doc.body) === null || _d === void 0 ? void 0 : _d.parentElement) === null || _e === void 0 ? void 0 : _e.scrollTop) ||\r\n ((_f = doc === null || doc === void 0 ? void 0 : doc.body) === null || _f === void 0 ? void 0 : _f.scrollTop) ||\r\n 0,\r\n };\r\n}\r\nfunction getWindowHeight() {\r\n return (window.innerHeight ||\r\n (document.documentElement && document.documentElement.clientHeight) ||\r\n (document.body && document.body.clientHeight));\r\n}\r\nfunction getWindowWidth() {\r\n return (window.innerWidth ||\r\n (document.documentElement && document.documentElement.clientWidth) ||\r\n (document.body && document.body.clientWidth));\r\n}\r\nfunction closestElementOfNode(node) {\r\n if (!node) {\r\n return null;\r\n }\r\n const el = node.nodeType === node.ELEMENT_NODE\r\n ? node\r\n : node.parentElement;\r\n return el;\r\n}\r\nfunction isBlocked(node, blockClass, blockSelector, checkAncestors) {\r\n if (!node) {\r\n return false;\r\n }\r\n const el = closestElementOfNode(node);\r\n if (!el) {\r\n return false;\r\n }\r\n try {\r\n if (typeof blockClass === 'string') {\r\n if (el.classList.contains(blockClass))\r\n return true;\r\n if (checkAncestors && el.closest('.' + blockClass) !== null)\r\n return true;\r\n }\r\n else {\r\n if (classMatchesRegex(el, blockClass, checkAncestors))\r\n return true;\r\n }\r\n }\r\n catch (e) {\r\n }\r\n if (blockSelector) {\r\n if (el.matches(blockSelector))\r\n return true;\r\n if (checkAncestors && el.closest(blockSelector) !== null)\r\n return true;\r\n }\r\n return false;\r\n}\r\nfunction isSerialized(n, mirror) {\r\n return mirror.getId(n) !== -1;\r\n}\r\nfunction isIgnored(n, mirror) {\r\n return mirror.getId(n) === IGNORED_NODE;\r\n}\r\nfunction isAncestorRemoved(target, mirror) {\r\n if (isShadowRoot(target)) {\r\n return false;\r\n }\r\n const id = mirror.getId(target);\r\n if (!mirror.has(id)) {\r\n return true;\r\n }\r\n if (target.parentNode &&\r\n target.parentNode.nodeType === target.DOCUMENT_NODE) {\r\n return false;\r\n }\r\n if (!target.parentNode) {\r\n return true;\r\n }\r\n return isAncestorRemoved(target.parentNode, mirror);\r\n}\r\nfunction legacy_isTouchEvent(event) {\r\n return Boolean(event.changedTouches);\r\n}\r\nfunction polyfill(win = window) {\r\n if ('NodeList' in win && !win.NodeList.prototype.forEach) {\r\n win.NodeList.prototype.forEach = Array.prototype\r\n .forEach;\r\n }\r\n if ('DOMTokenList' in win && !win.DOMTokenList.prototype.forEach) {\r\n win.DOMTokenList.prototype.forEach = Array.prototype\r\n .forEach;\r\n }\r\n if (!Node.prototype.contains) {\r\n Node.prototype.contains = (...args) => {\r\n let node = args[0];\r\n if (!(0 in args)) {\r\n throw new TypeError('1 argument is required');\r\n }\r\n do {\r\n if (this === node) {\r\n return true;\r\n }\r\n } while ((node = node && node.parentNode));\r\n return false;\r\n };\r\n }\r\n}\r\nfunction isSerializedIframe(n, mirror) {\r\n return Boolean(n.nodeName === 'IFRAME' && mirror.getMeta(n));\r\n}\r\nfunction isSerializedStylesheet(n, mirror) {\r\n return Boolean(n.nodeName === 'LINK' &&\r\n n.nodeType === n.ELEMENT_NODE &&\r\n n.getAttribute &&\r\n n.getAttribute('rel') === 'stylesheet' &&\r\n mirror.getMeta(n));\r\n}\r\nfunction hasShadowRoot(n) {\r\n return Boolean(n === null || n === void 0 ? void 0 : n.shadowRoot);\r\n}\r\nclass StyleSheetMirror {\r\n constructor() {\r\n this.id = 1;\r\n this.styleIDMap = new WeakMap();\r\n this.idStyleMap = new Map();\r\n }\r\n getId(stylesheet) {\r\n var _a;\r\n return (_a = this.styleIDMap.get(stylesheet)) !== null && _a !== void 0 ? _a : -1;\r\n }\r\n has(stylesheet) {\r\n return this.styleIDMap.has(stylesheet);\r\n }\r\n add(stylesheet, id) {\r\n if (this.has(stylesheet))\r\n return this.getId(stylesheet);\r\n let newId;\r\n if (id === undefined) {\r\n newId = this.id++;\r\n }\r\n else\r\n newId = id;\r\n this.styleIDMap.set(stylesheet, newId);\r\n this.idStyleMap.set(newId, stylesheet);\r\n return newId;\r\n }\r\n getStyle(id) {\r\n return this.idStyleMap.get(id) || null;\r\n }\r\n reset() {\r\n this.styleIDMap = new WeakMap();\r\n this.idStyleMap = new Map();\r\n this.id = 1;\r\n }\r\n generateId() {\r\n return this.id++;\r\n }\r\n}\r\nfunction getShadowHost(n) {\r\n var _a, _b;\r\n let shadowHost = null;\r\n if (((_b = (_a = n.getRootNode) === null || _a === void 0 ? void 0 : _a.call(n)) === null || _b === void 0 ? void 0 : _b.nodeType) === Node.DOCUMENT_FRAGMENT_NODE &&\r\n n.getRootNode().host)\r\n shadowHost = n.getRootNode().host;\r\n return shadowHost;\r\n}\r\nfunction getRootShadowHost(n) {\r\n let rootShadowHost = n;\r\n let shadowHost;\r\n while ((shadowHost = getShadowHost(rootShadowHost)))\r\n rootShadowHost = shadowHost;\r\n return rootShadowHost;\r\n}\r\nfunction shadowHostInDom(n) {\r\n const doc = n.ownerDocument;\r\n if (!doc)\r\n return false;\r\n const shadowHost = getRootShadowHost(n);\r\n return doc.contains(shadowHost);\r\n}\r\nfunction inDom(n) {\r\n const doc = n.ownerDocument;\r\n if (!doc)\r\n return false;\r\n return doc.contains(n) || shadowHostInDom(n);\r\n}\n\nvar EventType$1 = /* @__PURE__ */ ((EventType2) => {\n EventType2[EventType2[\"DomContentLoaded\"] = 0] = \"DomContentLoaded\";\n EventType2[EventType2[\"Load\"] = 1] = \"Load\";\n EventType2[EventType2[\"FullSnapshot\"] = 2] = \"FullSnapshot\";\n EventType2[EventType2[\"IncrementalSnapshot\"] = 3] = \"IncrementalSnapshot\";\n EventType2[EventType2[\"Meta\"] = 4] = \"Meta\";\n EventType2[EventType2[\"Custom\"] = 5] = \"Custom\";\n EventType2[EventType2[\"Plugin\"] = 6] = \"Plugin\";\n return EventType2;\n})(EventType$1 || {});\nvar IncrementalSource$1 = /* @__PURE__ */ ((IncrementalSource2) => {\n IncrementalSource2[IncrementalSource2[\"Mutation\"] = 0] = \"Mutation\";\n IncrementalSource2[IncrementalSource2[\"MouseMove\"] = 1] = \"MouseMove\";\n IncrementalSource2[IncrementalSource2[\"MouseInteraction\"] = 2] = \"MouseInteraction\";\n IncrementalSource2[IncrementalSource2[\"Scroll\"] = 3] = \"Scroll\";\n IncrementalSource2[IncrementalSource2[\"ViewportResize\"] = 4] = \"ViewportResize\";\n IncrementalSource2[IncrementalSource2[\"Input\"] = 5] = \"Input\";\n IncrementalSource2[IncrementalSource2[\"TouchMove\"] = 6] = \"TouchMove\";\n IncrementalSource2[IncrementalSource2[\"MediaInteraction\"] = 7] = \"MediaInteraction\";\n IncrementalSource2[IncrementalSource2[\"StyleSheetRule\"] = 8] = \"StyleSheetRule\";\n IncrementalSource2[IncrementalSource2[\"CanvasMutation\"] = 9] = \"CanvasMutation\";\n IncrementalSource2[IncrementalSource2[\"Font\"] = 10] = \"Font\";\n IncrementalSource2[IncrementalSource2[\"Log\"] = 11] = \"Log\";\n IncrementalSource2[IncrementalSource2[\"Drag\"] = 12] = \"Drag\";\n IncrementalSource2[IncrementalSource2[\"StyleDeclaration\"] = 13] = \"StyleDeclaration\";\n IncrementalSource2[IncrementalSource2[\"Selection\"] = 14] = \"Selection\";\n IncrementalSource2[IncrementalSource2[\"AdoptedStyleSheet\"] = 15] = \"AdoptedStyleSheet\";\n IncrementalSource2[IncrementalSource2[\"CustomElement\"] = 16] = \"CustomElement\";\n return IncrementalSource2;\n})(IncrementalSource$1 || {});\nvar MouseInteractions = /* @__PURE__ */ ((MouseInteractions2) => {\n MouseInteractions2[MouseInteractions2[\"MouseUp\"] = 0] = \"MouseUp\";\n MouseInteractions2[MouseInteractions2[\"MouseDown\"] = 1] = \"MouseDown\";\n MouseInteractions2[MouseInteractions2[\"Click\"] = 2] = \"Click\";\n MouseInteractions2[MouseInteractions2[\"ContextMenu\"] = 3] = \"ContextMenu\";\n MouseInteractions2[MouseInteractions2[\"DblClick\"] = 4] = \"DblClick\";\n MouseInteractions2[MouseInteractions2[\"Focus\"] = 5] = \"Focus\";\n MouseInteractions2[MouseInteractions2[\"Blur\"] = 6] = \"Blur\";\n MouseInteractions2[MouseInteractions2[\"TouchStart\"] = 7] = \"TouchStart\";\n MouseInteractions2[MouseInteractions2[\"TouchMove_Departed\"] = 8] = \"TouchMove_Departed\";\n MouseInteractions2[MouseInteractions2[\"TouchEnd\"] = 9] = \"TouchEnd\";\n MouseInteractions2[MouseInteractions2[\"TouchCancel\"] = 10] = \"TouchCancel\";\n return MouseInteractions2;\n})(MouseInteractions || {});\nvar PointerTypes = /* @__PURE__ */ ((PointerTypes2) => {\n PointerTypes2[PointerTypes2[\"Mouse\"] = 0] = \"Mouse\";\n PointerTypes2[PointerTypes2[\"Pen\"] = 1] = \"Pen\";\n PointerTypes2[PointerTypes2[\"Touch\"] = 2] = \"Touch\";\n return PointerTypes2;\n})(PointerTypes || {});\nvar CanvasContext = /* @__PURE__ */ ((CanvasContext2) => {\n CanvasContext2[CanvasContext2[\"2D\"] = 0] = \"2D\";\n CanvasContext2[CanvasContext2[\"WebGL\"] = 1] = \"WebGL\";\n CanvasContext2[CanvasContext2[\"WebGL2\"] = 2] = \"WebGL2\";\n return CanvasContext2;\n})(CanvasContext || {});\n\nfunction isNodeInLinkedList(n) {\r\n return '__ln' in n;\r\n}\r\nclass DoubleLinkedList {\r\n constructor() {\r\n this.length = 0;\r\n this.head = null;\r\n this.tail = null;\r\n }\r\n get(position) {\r\n if (position >= this.length) {\r\n throw new Error('Position outside of list range');\r\n }\r\n let current = this.head;\r\n for (let index = 0; index < position; index++) {\r\n current = (current === null || current === void 0 ? void 0 : current.next) || null;\r\n }\r\n return current;\r\n }\r\n addNode(n) {\r\n const node = {\r\n value: n,\r\n previous: null,\r\n next: null,\r\n };\r\n n.__ln = node;\r\n if (n.previousSibling && isNodeInLinkedList(n.previousSibling)) {\r\n const current = n.previousSibling.__ln.next;\r\n node.next = current;\r\n node.previous = n.previousSibling.__ln;\r\n n.previousSibling.__ln.next = node;\r\n if (current) {\r\n current.previous = node;\r\n }\r\n }\r\n else if (n.nextSibling &&\r\n isNodeInLinkedList(n.nextSibling) &&\r\n n.nextSibling.__ln.previous) {\r\n const current = n.nextSibling.__ln.previous;\r\n node.previous = current;\r\n node.next = n.nextSibling.__ln;\r\n n.nextSibling.__ln.previous = node;\r\n if (current) {\r\n current.next = node;\r\n }\r\n }\r\n else {\r\n if (this.head) {\r\n this.head.previous = node;\r\n }\r\n node.next = this.head;\r\n this.head = node;\r\n }\r\n if (node.next === null) {\r\n this.tail = node;\r\n }\r\n this.length++;\r\n }\r\n removeNode(n) {\r\n const current = n.__ln;\r\n if (!this.head) {\r\n return;\r\n }\r\n if (!current.previous) {\r\n this.head = current.next;\r\n if (this.head) {\r\n this.head.previous = null;\r\n }\r\n else {\r\n this.tail = null;\r\n }\r\n }\r\n else {\r\n current.previous.next = current.next;\r\n if (current.next) {\r\n current.next.previous = current.previous;\r\n }\r\n else {\r\n this.tail = current.previous;\r\n }\r\n }\r\n if (n.__ln) {\r\n delete n.__ln;\r\n }\r\n this.length--;\r\n }\r\n}\r\nconst moveKey = (id, parentId) => `${id}@${parentId}`;\r\nclass MutationBuffer {\r\n constructor() {\r\n this.frozen = false;\r\n this.locked = false;\r\n this.texts = [];\r\n this.attributes = [];\r\n this.attributeMap = new WeakMap();\r\n this.removes = [];\r\n this.mapRemoves = [];\r\n this.movedMap = {};\r\n this.addedSet = new Set();\r\n this.movedSet = new Set();\r\n this.droppedSet = new Set();\r\n this.processMutations = (mutations) => {\r\n mutations.forEach(this.processMutation);\r\n this.emit();\r\n };\r\n this.emit = () => {\r\n if (this.frozen || this.locked) {\r\n return;\r\n }\r\n const adds = [];\r\n const addedIds = new Set();\r\n const addList = new DoubleLinkedList();\r\n const getNextId = (n) => {\r\n let ns = n;\r\n let nextId = IGNORED_NODE;\r\n while (nextId === IGNORED_NODE) {\r\n ns = ns && ns.nextSibling;\r\n nextId = ns && this.mirror.getId(ns);\r\n }\r\n return nextId;\r\n };\r\n const pushAdd = (n) => {\r\n if (!n.parentNode ||\r\n !inDom(n) ||\r\n n.parentNode.tagName === 'TEXTAREA') {\r\n return;\r\n }\r\n const parentId = isShadowRoot(n.parentNode)\r\n ? this.mirror.getId(getShadowHost(n))\r\n : this.mirror.getId(n.parentNode);\r\n const nextId = getNextId(n);\r\n if (parentId === -1 || nextId === -1) {\r\n return addList.addNode(n);\r\n }\r\n const sn = serializeNodeWithId(n, {\r\n doc: this.doc,\r\n mirror: this.mirror,\r\n blockClass: this.blockClass,\r\n blockSelector: this.blockSelector,\r\n maskTextClass: this.maskTextClass,\r\n maskTextSelector: this.maskTextSelector,\r\n skipChild: true,\r\n newlyAddedElement: true,\r\n inlineStylesheet: this.inlineStylesheet,\r\n maskInputOptions: this.maskInputOptions,\r\n maskTextFn: this.maskTextFn,\r\n maskInputFn: this.maskInputFn,\r\n slimDOMOptions: this.slimDOMOptions,\r\n dataURLOptions: this.dataURLOptions,\r\n recordCanvas: this.recordCanvas,\r\n inlineImages: this.inlineImages,\r\n onSerialize: (currentN) => {\r\n if (isSerializedIframe(currentN, this.mirror)) {\r\n this.iframeManager.addIframe(currentN);\r\n }\r\n if (isSerializedStylesheet(currentN, this.mirror)) {\r\n this.stylesheetManager.trackLinkElement(currentN);\r\n }\r\n if (hasShadowRoot(n)) {\r\n this.shadowDomManager.addShadowRoot(n.shadowRoot, this.doc);\r\n }\r\n },\r\n onIframeLoad: (iframe, childSn) => {\r\n this.iframeManager.attachIframe(iframe, childSn);\r\n this.shadowDomManager.observeAttachShadow(iframe);\r\n },\r\n onStylesheetLoad: (link, childSn) => {\r\n this.stylesheetManager.attachLinkElement(link, childSn);\r\n },\r\n });\r\n if (sn) {\r\n adds.push({\r\n parentId,\r\n nextId,\r\n node: sn,\r\n });\r\n addedIds.add(sn.id);\r\n }\r\n };\r\n while (this.mapRemoves.length) {\r\n this.mirror.removeNodeFromMap(this.mapRemoves.shift());\r\n }\r\n for (const n of this.movedSet) {\r\n if (isParentRemoved(this.removes, n, this.mirror) &&\r\n !this.movedSet.has(n.parentNode)) {\r\n continue;\r\n }\r\n pushAdd(n);\r\n }\r\n for (const n of this.addedSet) {\r\n if (!isAncestorInSet(this.droppedSet, n) &&\r\n !isParentRemoved(this.removes, n, this.mirror)) {\r\n pushAdd(n);\r\n }\r\n else if (isAncestorInSet(this.movedSet, n)) {\r\n pushAdd(n);\r\n }\r\n else {\r\n this.droppedSet.add(n);\r\n }\r\n }\r\n let candidate = null;\r\n while (addList.length) {\r\n let node = null;\r\n if (candidate) {\r\n const parentId = this.mirror.getId(candidate.value.parentNode);\r\n const nextId = getNextId(candidate.value);\r\n if (parentId !== -1 && nextId !== -1) {\r\n node = candidate;\r\n }\r\n }\r\n if (!node) {\r\n let tailNode = addList.tail;\r\n while (tailNode) {\r\n const _node = tailNode;\r\n tailNode = tailNode.previous;\r\n if (_node) {\r\n const parentId = this.mirror.getId(_node.value.parentNode);\r\n const nextId = getNextId(_node.value);\r\n if (nextId === -1)\r\n continue;\r\n else if (parentId !== -1) {\r\n node = _node;\r\n break;\r\n }\r\n else {\r\n const unhandledNode = _node.value;\r\n if (unhandledNode.parentNode &&\r\n unhandledNode.parentNode.nodeType ===\r\n Node.DOCUMENT_FRAGMENT_NODE) {\r\n const shadowHost = unhandledNode.parentNode\r\n .host;\r\n const parentId = this.mirror.getId(shadowHost);\r\n if (parentId !== -1) {\r\n node = _node;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (!node) {\r\n while (addList.head) {\r\n addList.removeNode(addList.head.value);\r\n }\r\n break;\r\n }\r\n candidate = node.previous;\r\n addList.removeNode(node.value);\r\n pushAdd(node.value);\r\n }\r\n const payload = {\r\n texts: this.texts\r\n .map((text) => {\r\n const n = text.node;\r\n if (n.parentNode &&\r\n n.parentNode.tagName === 'TEXTAREA') {\r\n this.genTextAreaValueMutation(n.parentNode);\r\n }\r\n return {\r\n id: this.mirror.getId(n),\r\n value: text.value,\r\n };\r\n })\r\n .filter((text) => !addedIds.has(text.id))\r\n .filter((text) => this.mirror.has(text.id)),\r\n attributes: this.attributes\r\n .map((attribute) => {\r\n const { attributes } = attribute;\r\n if (typeof attributes.style === 'string') {\r\n const diffAsStr = JSON.stringify(attribute.styleDiff);\r\n const unchangedAsStr = JSON.stringify(attribute._unchangedStyles);\r\n if (diffAsStr.length < attributes.style.length) {\r\n if ((diffAsStr + unchangedAsStr).split('var(').length ===\r\n attributes.style.split('var(').length) {\r\n attributes.style = attribute.styleDiff;\r\n }\r\n }\r\n }\r\n return {\r\n id: this.mirror.getId(attribute.node),\r\n attributes: attributes,\r\n };\r\n })\r\n .filter((attribute) => !addedIds.has(attribute.id))\r\n .filter((attribute) => this.mirror.has(attribute.id)),\r\n removes: this.removes,\r\n adds,\r\n };\r\n if (!payload.texts.length &&\r\n !payload.attributes.length &&\r\n !payload.removes.length &&\r\n !payload.adds.length) {\r\n return;\r\n }\r\n this.texts = [];\r\n this.attributes = [];\r\n this.attributeMap = new WeakMap();\r\n this.removes = [];\r\n this.addedSet = new Set();\r\n this.movedSet = new Set();\r\n this.droppedSet = new Set();\r\n this.movedMap = {};\r\n this.mutationCb(payload);\r\n };\r\n this.genTextAreaValueMutation = (textarea) => {\r\n let item = this.attributeMap.get(textarea);\r\n if (!item) {\r\n item = {\r\n node: textarea,\r\n attributes: {},\r\n styleDiff: {},\r\n _unchangedStyles: {},\r\n };\r\n this.attributes.push(item);\r\n this.attributeMap.set(textarea, item);\r\n }\r\n item.attributes.value = Array.from(textarea.childNodes, (cn) => cn.textContent || '').join('');\r\n };\r\n this.processMutation = (m) => {\r\n if (isIgnored(m.target, this.mirror)) {\r\n return;\r\n }\r\n switch (m.type) {\r\n case 'characterData': {\r\n const value = m.target.textContent;\r\n if (!isBlocked(m.target, this.blockClass, this.blockSelector, false) &&\r\n value !== m.oldValue) {\r\n this.texts.push({\r\n value: needMaskingText(m.target, this.maskTextClass, this.maskTextSelector, true) && value\r\n ? this.maskTextFn\r\n ? this.maskTextFn(value, closestElementOfNode(m.target))\r\n : value.replace(/[\\S]/g, '*')\r\n : value,\r\n node: m.target,\r\n });\r\n }\r\n break;\r\n }\r\n case 'attributes': {\r\n const target = m.target;\r\n let attributeName = m.attributeName;\r\n let value = m.target.getAttribute(attributeName);\r\n if (attributeName === 'value') {\r\n const type = getInputType(target);\r\n value = maskInputValue({\r\n element: target,\r\n maskInputOptions: this.maskInputOptions,\r\n tagName: target.tagName,\r\n type,\r\n value,\r\n maskInputFn: this.maskInputFn,\r\n });\r\n }\r\n if (isBlocked(m.target, this.blockClass, this.blockSelector, false) ||\r\n value === m.oldValue) {\r\n return;\r\n }\r\n let item = this.attributeMap.get(m.target);\r\n if (target.tagName === 'IFRAME' &&\r\n attributeName === 'src' &&\r\n !this.keepIframeSrcFn(value)) {\r\n if (!target.contentDocument) {\r\n attributeName = 'rr_src';\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n if (!item) {\r\n item = {\r\n node: m.target,\r\n attributes: {},\r\n styleDiff: {},\r\n _unchangedStyles: {},\r\n };\r\n this.attributes.push(item);\r\n this.attributeMap.set(m.target, item);\r\n }\r\n if (attributeName === 'type' &&\r\n target.tagName === 'INPUT' &&\r\n (m.oldValue || '').toLowerCase() === 'password') {\r\n target.setAttribute('data-rr-is-password', 'true');\r\n }\r\n if (!ignoreAttribute(target.tagName, attributeName)) {\r\n item.attributes[attributeName] = transformAttribute(this.doc, toLowerCase(target.tagName), toLowerCase(attributeName), value);\r\n if (attributeName === 'style') {\r\n if (!this.unattachedDoc) {\r\n try {\r\n this.unattachedDoc =\r\n document.implementation.createHTMLDocument();\r\n }\r\n catch (e) {\r\n this.unattachedDoc = this.doc;\r\n }\r\n }\r\n const old = this.unattachedDoc.createElement('span');\r\n if (m.oldValue) {\r\n old.setAttribute('style', m.oldValue);\r\n }\r\n for (const pname of Array.from(target.style)) {\r\n const newValue = target.style.getPropertyValue(pname);\r\n const newPriority = target.style.getPropertyPriority(pname);\r\n if (newValue !== old.style.getPropertyValue(pname) ||\r\n newPriority !== old.style.getPropertyPriority(pname)) {\r\n if (newPriority === '') {\r\n item.styleDiff[pname] = newValue;\r\n }\r\n else {\r\n item.styleDiff[pname] = [newValue, newPriority];\r\n }\r\n }\r\n else {\r\n item._unchangedStyles[pname] = [newValue, newPriority];\r\n }\r\n }\r\n for (const pname of Array.from(old.style)) {\r\n if (target.style.getPropertyValue(pname) === '') {\r\n item.styleDiff[pname] = false;\r\n }\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n case 'childList': {\r\n if (isBlocked(m.target, this.blockClass, this.blockSelector, true))\r\n return;\r\n if (m.target.tagName === 'TEXTAREA') {\r\n this.genTextAreaValueMutation(m.target);\r\n return;\r\n }\r\n m.addedNodes.forEach((n) => this.genAdds(n, m.target));\r\n m.removedNodes.forEach((n) => {\r\n const nodeId = this.mirror.getId(n);\r\n const parentId = isShadowRoot(m.target)\r\n ? this.mirror.getId(m.target.host)\r\n : this.mirror.getId(m.target);\r\n if (isBlocked(m.target, this.blockClass, this.blockSelector, false) ||\r\n isIgnored(n, this.mirror) ||\r\n !isSerialized(n, this.mirror)) {\r\n return;\r\n }\r\n if (this.addedSet.has(n)) {\r\n deepDelete(this.addedSet, n);\r\n this.droppedSet.add(n);\r\n }\r\n else if (this.addedSet.has(m.target) && nodeId === -1) ;\r\n else if (isAncestorRemoved(m.target, this.mirror)) ;\r\n else if (this.movedSet.has(n) &&\r\n this.movedMap[moveKey(nodeId, parentId)]) {\r\n deepDelete(this.movedSet, n);\r\n }\r\n else {\r\n this.removes.push({\r\n parentId,\r\n id: nodeId,\r\n isShadow: isShadowRoot(m.target) && isNativeShadowDom(m.target)\r\n ? true\r\n : undefined,\r\n });\r\n }\r\n this.mapRemoves.push(n);\r\n });\r\n break;\r\n }\r\n }\r\n };\r\n this.genAdds = (n, target) => {\r\n if (this.processedNodeManager.inOtherBuffer(n, this))\r\n return;\r\n if (this.addedSet.has(n) || this.movedSet.has(n))\r\n return;\r\n if (this.mirror.hasNode(n)) {\r\n if (isIgnored(n, this.mirror)) {\r\n return;\r\n }\r\n this.movedSet.add(n);\r\n let targetId = null;\r\n if (target && this.mirror.hasNode(target)) {\r\n targetId = this.mirror.getId(target);\r\n }\r\n if (targetId && targetId !== -1) {\r\n this.movedMap[moveKey(this.mirror.getId(n), targetId)] = true;\r\n }\r\n }\r\n else {\r\n this.addedSet.add(n);\r\n this.droppedSet.delete(n);\r\n }\r\n if (!isBlocked(n, this.blockClass, this.blockSelector, false)) {\r\n n.childNodes.forEach((childN) => this.genAdds(childN));\r\n if (hasShadowRoot(n)) {\r\n n.shadowRoot.childNodes.forEach((childN) => {\r\n this.processedNodeManager.add(childN, this);\r\n this.genAdds(childN, n);\r\n });\r\n }\r\n }\r\n };\r\n }\r\n init(options) {\r\n [\r\n 'mutationCb',\r\n 'blockClass',\r\n 'blockSelector',\r\n 'maskTextClass',\r\n 'maskTextSelector',\r\n 'inlineStylesheet',\r\n 'maskInputOptions',\r\n 'maskTextFn',\r\n 'maskInputFn',\r\n 'keepIframeSrcFn',\r\n 'recordCanvas',\r\n 'inlineImages',\r\n 'slimDOMOptions',\r\n 'dataURLOptions',\r\n 'doc',\r\n 'mirror',\r\n 'iframeManager',\r\n 'stylesheetManager',\r\n 'shadowDomManager',\r\n 'canvasManager',\r\n 'processedNodeManager',\r\n ].forEach((key) => {\r\n this[key] = options[key];\r\n });\r\n }\r\n freeze() {\r\n this.frozen = true;\r\n this.canvasManager.freeze();\r\n }\r\n unfreeze() {\r\n this.frozen = false;\r\n this.canvasManager.unfreeze();\r\n this.emit();\r\n }\r\n isFrozen() {\r\n return this.frozen;\r\n }\r\n lock() {\r\n this.locked = true;\r\n this.canvasManager.lock();\r\n }\r\n unlock() {\r\n this.locked = false;\r\n this.canvasManager.unlock();\r\n this.emit();\r\n }\r\n reset() {\r\n this.shadowDomManager.reset();\r\n this.canvasManager.reset();\r\n }\r\n}\r\nfunction deepDelete(addsSet, n) {\r\n addsSet.delete(n);\r\n n.childNodes.forEach((childN) => deepDelete(addsSet, childN));\r\n}\r\nfunction isParentRemoved(removes, n, mirror) {\r\n if (removes.length === 0)\r\n return false;\r\n return _isParentRemoved(removes, n, mirror);\r\n}\r\nfunction _isParentRemoved(removes, n, mirror) {\r\n const { parentNode } = n;\r\n if (!parentNode) {\r\n return false;\r\n }\r\n const parentId = mirror.getId(parentNode);\r\n if (removes.some((r) => r.id === parentId)) {\r\n return true;\r\n }\r\n return _isParentRemoved(removes, parentNode, mirror);\r\n}\r\nfunction isAncestorInSet(set, n) {\r\n if (set.size === 0)\r\n return false;\r\n return _isAncestorInSet(set, n);\r\n}\r\nfunction _isAncestorInSet(set, n) {\r\n const { parentNode } = n;\r\n if (!parentNode) {\r\n return false;\r\n }\r\n if (set.has(parentNode)) {\r\n return true;\r\n }\r\n return _isAncestorInSet(set, parentNode);\r\n}\n\nlet errorHandler;\r\nfunction registerErrorHandler(handler) {\r\n errorHandler = handler;\r\n}\r\nfunction unregisterErrorHandler() {\r\n errorHandler = undefined;\r\n}\r\nconst callbackWrapper = (cb) => {\r\n if (!errorHandler) {\r\n return cb;\r\n }\r\n const rrwebWrapped = ((...rest) => {\r\n try {\r\n return cb(...rest);\r\n }\r\n catch (error) {\r\n if (errorHandler && errorHandler(error) === true) {\r\n return;\r\n }\r\n throw error;\r\n }\r\n });\r\n return rrwebWrapped;\r\n};\n\nconst mutationBuffers = [];\r\nfunction getEventTarget(event) {\r\n try {\r\n if ('composedPath' in event) {\r\n const path = event.composedPath();\r\n if (path.length) {\r\n return path[0];\r\n }\r\n }\r\n else if ('path' in event && event.path.length) {\r\n return event.path[0];\r\n }\r\n }\r\n catch (_a) {\r\n }\r\n return event && event.target;\r\n}\r\nfunction initMutationObserver(options, rootEl) {\r\n var _a, _b;\r\n const mutationBuffer = new MutationBuffer();\r\n mutationBuffers.push(mutationBuffer);\r\n mutationBuffer.init(options);\r\n let mutationObserverCtor = window.MutationObserver ||\r\n window.__rrMutationObserver;\r\n const angularZoneSymbol = (_b = (_a = window === null || window === void 0 ? void 0 : window.Zone) === null || _a === void 0 ? void 0 : _a.__symbol__) === null || _b === void 0 ? void 0 : _b.call(_a, 'MutationObserver');\r\n if (angularZoneSymbol &&\r\n window[angularZoneSymbol]) {\r\n mutationObserverCtor = window[angularZoneSymbol];\r\n }\r\n const observer = new mutationObserverCtor(callbackWrapper(mutationBuffer.processMutations.bind(mutationBuffer)));\r\n observer.observe(rootEl, {\r\n attributes: true,\r\n attributeOldValue: true,\r\n characterData: true,\r\n characterDataOldValue: true,\r\n childList: true,\r\n subtree: true,\r\n });\r\n return observer;\r\n}\r\nfunction initMoveObserver({ mousemoveCb, sampling, doc, mirror, }) {\r\n if (sampling.mousemove === false) {\r\n return () => {\r\n };\r\n }\r\n const threshold = typeof sampling.mousemove === 'number' ? sampling.mousemove : 50;\r\n const callbackThreshold = typeof sampling.mousemoveCallback === 'number'\r\n ? sampling.mousemoveCallback\r\n : 500;\r\n let positions = [];\r\n let timeBaseline;\r\n const wrappedCb = throttle(callbackWrapper((source) => {\r\n const totalOffset = Date.now() - timeBaseline;\r\n mousemoveCb(positions.map((p) => {\r\n p.timeOffset -= totalOffset;\r\n return p;\r\n }), source);\r\n positions = [];\r\n timeBaseline = null;\r\n }), callbackThreshold);\r\n const updatePosition = callbackWrapper(throttle(callbackWrapper((evt) => {\r\n const target = getEventTarget(evt);\r\n const { clientX, clientY } = legacy_isTouchEvent(evt)\r\n ? evt.changedTouches[0]\r\n : evt;\r\n if (!timeBaseline) {\r\n timeBaseline = nowTimestamp();\r\n }\r\n positions.push({\r\n x: clientX,\r\n y: clientY,\r\n id: mirror.getId(target),\r\n timeOffset: nowTimestamp() - timeBaseline,\r\n });\r\n wrappedCb(typeof DragEvent !== 'undefined' && evt instanceof DragEvent\r\n ? IncrementalSource$1.Drag\r\n : evt instanceof MouseEvent\r\n ? IncrementalSource$1.MouseMove\r\n : IncrementalSource$1.TouchMove);\r\n }), threshold, {\r\n trailing: false,\r\n }));\r\n const handlers = [\r\n on('mousemove', updatePosition, doc),\r\n on('touchmove', updatePosition, doc),\r\n on('drag', updatePosition, doc),\r\n ];\r\n return callbackWrapper(() => {\r\n handlers.forEach((h) => h());\r\n });\r\n}\r\nfunction initMouseInteractionObserver({ mouseInteractionCb, doc, mirror, blockClass, blockSelector, sampling, }) {\r\n if (sampling.mouseInteraction === false) {\r\n return () => {\r\n };\r\n }\r\n const disableMap = sampling.mouseInteraction === true ||\r\n sampling.mouseInteraction === undefined\r\n ? {}\r\n : sampling.mouseInteraction;\r\n const handlers = [];\r\n let currentPointerType = null;\r\n const getHandler = (eventKey) => {\r\n return (event) => {\r\n const target = getEventTarget(event);\r\n if (isBlocked(target, blockClass, blockSelector, true)) {\r\n return;\r\n }\r\n let pointerType = null;\r\n let thisEventKey = eventKey;\r\n if ('pointerType' in event) {\r\n switch (event.pointerType) {\r\n case 'mouse':\r\n pointerType = PointerTypes.Mouse;\r\n break;\r\n case 'touch':\r\n pointerType = PointerTypes.Touch;\r\n break;\r\n case 'pen':\r\n pointerType = PointerTypes.Pen;\r\n break;\r\n }\r\n if (pointerType === PointerTypes.Touch) {\r\n if (MouseInteractions[eventKey] === MouseInteractions.MouseDown) {\r\n thisEventKey = 'TouchStart';\r\n }\r\n else if (MouseInteractions[eventKey] === MouseInteractions.MouseUp) {\r\n thisEventKey = 'TouchEnd';\r\n }\r\n }\r\n else if (pointerType === PointerTypes.Pen) ;\r\n }\r\n else if (legacy_isTouchEvent(event)) {\r\n pointerType = PointerTypes.Touch;\r\n }\r\n if (pointerType !== null) {\r\n currentPointerType = pointerType;\r\n if ((thisEventKey.startsWith('Touch') &&\r\n pointerType === PointerTypes.Touch) ||\r\n (thisEventKey.startsWith('Mouse') &&\r\n pointerType === PointerTypes.Mouse)) {\r\n pointerType = null;\r\n }\r\n }\r\n else if (MouseInteractions[eventKey] === MouseInteractions.Click) {\r\n pointerType = currentPointerType;\r\n currentPointerType = null;\r\n }\r\n const e = legacy_isTouchEvent(event) ? event.changedTouches[0] : event;\r\n if (!e) {\r\n return;\r\n }\r\n const id = mirror.getId(target);\r\n const { clientX, clientY } = e;\r\n callbackWrapper(mouseInteractionCb)(Object.assign({ type: MouseInteractions[thisEventKey], id, x: clientX, y: clientY }, (pointerType !== null && { pointerType })));\r\n };\r\n };\r\n Object.keys(MouseInteractions)\r\n .filter((key) => Number.isNaN(Number(key)) &&\r\n !key.endsWith('_Departed') &&\r\n disableMap[key] !== false)\r\n .forEach((eventKey) => {\r\n let eventName = toLowerCase(eventKey);\r\n const handler = getHandler(eventKey);\r\n if (window.PointerEvent) {\r\n switch (MouseInteractions[eventKey]) {\r\n case MouseInteractions.MouseDown:\r\n case MouseInteractions.MouseUp:\r\n eventName = eventName.replace('mouse', 'pointer');\r\n break;\r\n case MouseInteractions.TouchStart:\r\n case MouseInteractions.TouchEnd:\r\n return;\r\n }\r\n }\r\n handlers.push(on(eventName, handler, doc));\r\n });\r\n return callbackWrapper(() => {\r\n handlers.forEach((h) => h());\r\n });\r\n}\r\nfunction initScrollObserver({ scrollCb, doc, mirror, blockClass, blockSelector, sampling, }) {\r\n const updatePosition = callbackWrapper(throttle(callbackWrapper((evt) => {\r\n const target = getEventTarget(evt);\r\n if (!target ||\r\n isBlocked(target, blockClass, blockSelector, true)) {\r\n return;\r\n }\r\n const id = mirror.getId(target);\r\n if (target === doc && doc.defaultView) {\r\n const scrollLeftTop = getWindowScroll(doc.defaultView);\r\n scrollCb({\r\n id,\r\n x: scrollLeftTop.left,\r\n y: scrollLeftTop.top,\r\n });\r\n }\r\n else {\r\n scrollCb({\r\n id,\r\n x: target.scrollLeft,\r\n y: target.scrollTop,\r\n });\r\n }\r\n }), sampling.scroll || 100));\r\n return on('scroll', updatePosition, doc);\r\n}\r\nfunction initViewportResizeObserver({ viewportResizeCb }, { win }) {\r\n let lastH = -1;\r\n let lastW = -1;\r\n const updateDimension = callbackWrapper(throttle(callbackWrapper(() => {\r\n const height = getWindowHeight();\r\n const width = getWindowWidth();\r\n if (lastH !== height || lastW !== width) {\r\n viewportResizeCb({\r\n width: Number(width),\r\n height: Number(height),\r\n });\r\n lastH = height;\r\n lastW = width;\r\n }\r\n }), 200));\r\n return on('resize', updateDimension, win);\r\n}\r\nconst INPUT_TAGS = ['INPUT', 'TEXTAREA', 'SELECT'];\r\nconst lastInputValueMap = new WeakMap();\r\nfunction initInputObserver({ inputCb, doc, mirror, blockClass, blockSelector, ignoreClass, ignoreSelector, maskInputOptions, maskInputFn, sampling, userTriggeredOnInput, }) {\r\n function eventHandler(event) {\r\n let target = getEventTarget(event);\r\n const userTriggered = event.isTrusted;\r\n const tagName = target && target.tagName;\r\n if (target && tagName === 'OPTION') {\r\n target = target.parentElement;\r\n }\r\n if (!target ||\r\n !tagName ||\r\n INPUT_TAGS.indexOf(tagName) < 0 ||\r\n isBlocked(target, blockClass, blockSelector, true)) {\r\n return;\r\n }\r\n if (target.classList.contains(ignoreClass) ||\r\n (ignoreSelector && target.matches(ignoreSelector))) {\r\n return;\r\n }\r\n let text = target.value;\r\n let isChecked = false;\r\n const type = getInputType(target) || '';\r\n if (type === 'radio' || type === 'checkbox') {\r\n isChecked = target.checked;\r\n }\r\n else if (maskInputOptions[tagName.toLowerCase()] ||\r\n maskInputOptions[type]) {\r\n text = maskInputValue({\r\n element: target,\r\n maskInputOptions,\r\n tagName,\r\n type,\r\n value: text,\r\n maskInputFn,\r\n });\r\n }\r\n cbWithDedup(target, userTriggeredOnInput\r\n ? { text, isChecked, userTriggered }\r\n : { text, isChecked });\r\n const name = target.name;\r\n if (type === 'radio' && name && isChecked) {\r\n doc\r\n .querySelectorAll(`input[type=\"radio\"][name=\"${name}\"]`)\r\n .forEach((el) => {\r\n if (el !== target) {\r\n const text = el.value;\r\n cbWithDedup(el, userTriggeredOnInput\r\n ? { text, isChecked: !isChecked, userTriggered: false }\r\n : { text, isChecked: !isChecked });\r\n }\r\n });\r\n }\r\n }\r\n function cbWithDedup(target, v) {\r\n const lastInputValue = lastInputValueMap.get(target);\r\n if (!lastInputValue ||\r\n lastInputValue.text !== v.text ||\r\n lastInputValue.isChecked !== v.isChecked) {\r\n lastInputValueMap.set(target, v);\r\n const id = mirror.getId(target);\r\n callbackWrapper(inputCb)(Object.assign(Object.assign({}, v), { id }));\r\n }\r\n }\r\n const events = sampling.input === 'last' ? ['change'] : ['input', 'change'];\r\n const handlers = events.map((eventName) => on(eventName, callbackWrapper(eventHandler), doc));\r\n const currentWindow = doc.defaultView;\r\n if (!currentWindow) {\r\n return () => {\r\n handlers.forEach((h) => h());\r\n };\r\n }\r\n const propertyDescriptor = currentWindow.Object.getOwnPropertyDescriptor(currentWindow.HTMLInputElement.prototype, 'value');\r\n const hookProperties = [\r\n [currentWindow.HTMLInputElement.prototype, 'value'],\r\n [currentWindow.HTMLInputElement.prototype, 'checked'],\r\n [currentWindow.HTMLSelectElement.prototype, 'value'],\r\n [currentWindow.HTMLTextAreaElement.prototype, 'value'],\r\n [currentWindow.HTMLSelectElement.prototype, 'selectedIndex'],\r\n [currentWindow.HTMLOptionElement.prototype, 'selected'],\r\n ];\r\n if (propertyDescriptor && propertyDescriptor.set) {\r\n handlers.push(...hookProperties.map((p) => hookSetter(p[0], p[1], {\r\n set() {\r\n callbackWrapper(eventHandler)({\r\n target: this,\r\n isTrusted: false,\r\n });\r\n },\r\n }, false, currentWindow)));\r\n }\r\n return callbackWrapper(() => {\r\n handlers.forEach((h) => h());\r\n });\r\n}\r\nfunction getNestedCSSRulePositions(rule) {\r\n const positions = [];\r\n function recurse(childRule, pos) {\r\n if ((hasNestedCSSRule('CSSGroupingRule') &&\r\n childRule.parentRule instanceof CSSGroupingRule) ||\r\n (hasNestedCSSRule('CSSMediaRule') &&\r\n childRule.parentRule instanceof CSSMediaRule) ||\r\n (hasNestedCSSRule('CSSSupportsRule') &&\r\n childRule.parentRule instanceof CSSSupportsRule) ||\r\n (hasNestedCSSRule('CSSConditionRule') &&\r\n childRule.parentRule instanceof CSSConditionRule)) {\r\n const rules = Array.from(childRule.parentRule.cssRules);\r\n const index = rules.indexOf(childRule);\r\n pos.unshift(index);\r\n }\r\n else if (childRule.parentStyleSheet) {\r\n const rules = Array.from(childRule.parentStyleSheet.cssRules);\r\n const index = rules.indexOf(childRule);\r\n pos.unshift(index);\r\n }\r\n return pos;\r\n }\r\n return recurse(rule, positions);\r\n}\r\nfunction getIdAndStyleId(sheet, mirror, styleMirror) {\r\n let id, styleId;\r\n if (!sheet)\r\n return {};\r\n if (sheet.ownerNode)\r\n id = mirror.getId(sheet.ownerNode);\r\n else\r\n styleId = styleMirror.getId(sheet);\r\n return {\r\n styleId,\r\n id,\r\n };\r\n}\r\nfunction initStyleSheetObserver({ styleSheetRuleCb, mirror, stylesheetManager }, { win }) {\r\n if (!win.CSSStyleSheet || !win.CSSStyleSheet.prototype) {\r\n return () => {\r\n };\r\n }\r\n const insertRule = win.CSSStyleSheet.prototype.insertRule;\r\n win.CSSStyleSheet.prototype.insertRule = new Proxy(insertRule, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n const [rule, index] = argumentsList;\r\n const { id, styleId } = getIdAndStyleId(thisArg, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleSheetRuleCb({\r\n id,\r\n styleId,\r\n adds: [{ rule, index }],\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n const deleteRule = win.CSSStyleSheet.prototype.deleteRule;\r\n win.CSSStyleSheet.prototype.deleteRule = new Proxy(deleteRule, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n const [index] = argumentsList;\r\n const { id, styleId } = getIdAndStyleId(thisArg, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleSheetRuleCb({\r\n id,\r\n styleId,\r\n removes: [{ index }],\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n let replace;\r\n if (win.CSSStyleSheet.prototype.replace) {\r\n replace = win.CSSStyleSheet.prototype.replace;\r\n win.CSSStyleSheet.prototype.replace = new Proxy(replace, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n const [text] = argumentsList;\r\n const { id, styleId } = getIdAndStyleId(thisArg, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleSheetRuleCb({\r\n id,\r\n styleId,\r\n replace: text,\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n }\r\n let replaceSync;\r\n if (win.CSSStyleSheet.prototype.replaceSync) {\r\n replaceSync = win.CSSStyleSheet.prototype.replaceSync;\r\n win.CSSStyleSheet.prototype.replaceSync = new Proxy(replaceSync, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n const [text] = argumentsList;\r\n const { id, styleId } = getIdAndStyleId(thisArg, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleSheetRuleCb({\r\n id,\r\n styleId,\r\n replaceSync: text,\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n }\r\n const supportedNestedCSSRuleTypes = {};\r\n if (canMonkeyPatchNestedCSSRule('CSSGroupingRule')) {\r\n supportedNestedCSSRuleTypes.CSSGroupingRule = win.CSSGroupingRule;\r\n }\r\n else {\r\n if (canMonkeyPatchNestedCSSRule('CSSMediaRule')) {\r\n supportedNestedCSSRuleTypes.CSSMediaRule = win.CSSMediaRule;\r\n }\r\n if (canMonkeyPatchNestedCSSRule('CSSConditionRule')) {\r\n supportedNestedCSSRuleTypes.CSSConditionRule = win.CSSConditionRule;\r\n }\r\n if (canMonkeyPatchNestedCSSRule('CSSSupportsRule')) {\r\n supportedNestedCSSRuleTypes.CSSSupportsRule = win.CSSSupportsRule;\r\n }\r\n }\r\n const unmodifiedFunctions = {};\r\n Object.entries(supportedNestedCSSRuleTypes).forEach(([typeKey, type]) => {\r\n unmodifiedFunctions[typeKey] = {\r\n insertRule: type.prototype.insertRule,\r\n deleteRule: type.prototype.deleteRule,\r\n };\r\n type.prototype.insertRule = new Proxy(unmodifiedFunctions[typeKey].insertRule, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n const [rule, index] = argumentsList;\r\n const { id, styleId } = getIdAndStyleId(thisArg.parentStyleSheet, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleSheetRuleCb({\r\n id,\r\n styleId,\r\n adds: [\r\n {\r\n rule,\r\n index: [\r\n ...getNestedCSSRulePositions(thisArg),\r\n index || 0,\r\n ],\r\n },\r\n ],\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n type.prototype.deleteRule = new Proxy(unmodifiedFunctions[typeKey].deleteRule, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n const [index] = argumentsList;\r\n const { id, styleId } = getIdAndStyleId(thisArg.parentStyleSheet, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleSheetRuleCb({\r\n id,\r\n styleId,\r\n removes: [\r\n { index: [...getNestedCSSRulePositions(thisArg), index] },\r\n ],\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n });\r\n return callbackWrapper(() => {\r\n win.CSSStyleSheet.prototype.insertRule = insertRule;\r\n win.CSSStyleSheet.prototype.deleteRule = deleteRule;\r\n replace && (win.CSSStyleSheet.prototype.replace = replace);\r\n replaceSync && (win.CSSStyleSheet.prototype.replaceSync = replaceSync);\r\n Object.entries(supportedNestedCSSRuleTypes).forEach(([typeKey, type]) => {\r\n type.prototype.insertRule = unmodifiedFunctions[typeKey].insertRule;\r\n type.prototype.deleteRule = unmodifiedFunctions[typeKey].deleteRule;\r\n });\r\n });\r\n}\r\nfunction initAdoptedStyleSheetObserver({ mirror, stylesheetManager, }, host) {\r\n var _a, _b, _c;\r\n let hostId = null;\r\n if (host.nodeName === '#document')\r\n hostId = mirror.getId(host);\r\n else\r\n hostId = mirror.getId(host.host);\r\n const patchTarget = host.nodeName === '#document'\r\n ? (_a = host.defaultView) === null || _a === void 0 ? void 0 : _a.Document\r\n : (_c = (_b = host.ownerDocument) === null || _b === void 0 ? void 0 : _b.defaultView) === null || _c === void 0 ? void 0 : _c.ShadowRoot;\r\n const originalPropertyDescriptor = (patchTarget === null || patchTarget === void 0 ? void 0 : patchTarget.prototype)\r\n ? Object.getOwnPropertyDescriptor(patchTarget === null || patchTarget === void 0 ? void 0 : patchTarget.prototype, 'adoptedStyleSheets')\r\n : undefined;\r\n if (hostId === null ||\r\n hostId === -1 ||\r\n !patchTarget ||\r\n !originalPropertyDescriptor)\r\n return () => {\r\n };\r\n Object.defineProperty(host, 'adoptedStyleSheets', {\r\n configurable: originalPropertyDescriptor.configurable,\r\n enumerable: originalPropertyDescriptor.enumerable,\r\n get() {\r\n var _a;\r\n return (_a = originalPropertyDescriptor.get) === null || _a === void 0 ? void 0 : _a.call(this);\r\n },\r\n set(sheets) {\r\n var _a;\r\n const result = (_a = originalPropertyDescriptor.set) === null || _a === void 0 ? void 0 : _a.call(this, sheets);\r\n if (hostId !== null && hostId !== -1) {\r\n try {\r\n stylesheetManager.adoptStyleSheets(sheets, hostId);\r\n }\r\n catch (e) {\r\n }\r\n }\r\n return result;\r\n },\r\n });\r\n return callbackWrapper(() => {\r\n Object.defineProperty(host, 'adoptedStyleSheets', {\r\n configurable: originalPropertyDescriptor.configurable,\r\n enumerable: originalPropertyDescriptor.enumerable,\r\n get: originalPropertyDescriptor.get,\r\n set: originalPropertyDescriptor.set,\r\n });\r\n });\r\n}\r\nfunction initStyleDeclarationObserver({ styleDeclarationCb, mirror, ignoreCSSAttributes, stylesheetManager, }, { win }) {\r\n const setProperty = win.CSSStyleDeclaration.prototype.setProperty;\r\n win.CSSStyleDeclaration.prototype.setProperty = new Proxy(setProperty, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n var _a;\r\n const [property, value, priority] = argumentsList;\r\n if (ignoreCSSAttributes.has(property)) {\r\n return setProperty.apply(thisArg, [property, value, priority]);\r\n }\r\n const { id, styleId } = getIdAndStyleId((_a = thisArg.parentRule) === null || _a === void 0 ? void 0 : _a.parentStyleSheet, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleDeclarationCb({\r\n id,\r\n styleId,\r\n set: {\r\n property,\r\n value,\r\n priority,\r\n },\r\n index: getNestedCSSRulePositions(thisArg.parentRule),\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n const removeProperty = win.CSSStyleDeclaration.prototype.removeProperty;\r\n win.CSSStyleDeclaration.prototype.removeProperty = new Proxy(removeProperty, {\r\n apply: callbackWrapper((target, thisArg, argumentsList) => {\r\n var _a;\r\n const [property] = argumentsList;\r\n if (ignoreCSSAttributes.has(property)) {\r\n return removeProperty.apply(thisArg, [property]);\r\n }\r\n const { id, styleId } = getIdAndStyleId((_a = thisArg.parentRule) === null || _a === void 0 ? void 0 : _a.parentStyleSheet, mirror, stylesheetManager.styleMirror);\r\n if ((id && id !== -1) || (styleId && styleId !== -1)) {\r\n styleDeclarationCb({\r\n id,\r\n styleId,\r\n remove: {\r\n property,\r\n },\r\n index: getNestedCSSRulePositions(thisArg.parentRule),\r\n });\r\n }\r\n return target.apply(thisArg, argumentsList);\r\n }),\r\n });\r\n return callbackWrapper(() => {\r\n win.CSSStyleDeclaration.prototype.setProperty = setProperty;\r\n win.CSSStyleDeclaration.prototype.removeProperty = removeProperty;\r\n });\r\n}\r\nfunction initMediaInteractionObserver({ mediaInteractionCb, blockClass, blockSelector, mirror, sampling, doc, }) {\r\n const handler = callbackWrapper((type) => throttle(callbackWrapper((event) => {\r\n const target = getEventTarget(event);\r\n if (!target ||\r\n isBlocked(target, blockClass, blockSelector, true)) {\r\n return;\r\n }\r\n const { currentTime, volume, muted, playbackRate, loop } = target;\r\n mediaInteractionCb({\r\n type,\r\n id: mirror.getId(target),\r\n currentTime,\r\n volume,\r\n muted,\r\n playbackRate,\r\n loop,\r\n });\r\n }), sampling.media || 500));\r\n const handlers = [\r\n on('play', handler(0), doc),\r\n on('pause', handler(1), doc),\r\n on('seeked', handler(2), doc),\r\n on('volumechange', handler(3), doc),\r\n on('ratechange', handler(4), doc),\r\n ];\r\n return callbackWrapper(() => {\r\n handlers.forEach((h) => h());\r\n });\r\n}\r\nfunction initFontObserver({ fontCb, doc }) {\r\n const win = doc.defaultView;\r\n if (!win) {\r\n return () => {\r\n };\r\n }\r\n const handlers = [];\r\n const fontMap = new WeakMap();\r\n const originalFontFace = win.FontFace;\r\n win.FontFace = function FontFace(family, source, descriptors) {\r\n const fontFace = new originalFontFace(family, source, descriptors);\r\n fontMap.set(fontFace, {\r\n family,\r\n buffer: typeof source !== 'string',\r\n descriptors,\r\n fontSource: typeof source === 'string'\r\n ? source\r\n : JSON.stringify(Array.from(new Uint8Array(source))),\r\n });\r\n return fontFace;\r\n };\r\n const restoreHandler = patch(doc.fonts, 'add', function (original) {\r\n return function (fontFace) {\r\n setTimeout(callbackWrapper(() => {\r\n const p = fontMap.get(fontFace);\r\n if (p) {\r\n fontCb(p);\r\n fontMap.delete(fontFace);\r\n }\r\n }), 0);\r\n return original.apply(this, [fontFace]);\r\n };\r\n });\r\n handlers.push(() => {\r\n win.FontFace = originalFontFace;\r\n });\r\n handlers.push(restoreHandler);\r\n return callbackWrapper(() => {\r\n handlers.forEach((h) => h());\r\n });\r\n}\r\nfunction initSelectionObserver(param) {\r\n const { doc, mirror, blockClass, blockSelector, selectionCb } = param;\r\n let collapsed = true;\r\n const updateSelection = callbackWrapper(() => {\r\n const selection = doc.getSelection();\r\n if (!selection || (collapsed && (selection === null || selection === void 0 ? void 0 : selection.isCollapsed)))\r\n return;\r\n collapsed = selection.isCollapsed || false;\r\n const ranges = [];\r\n const count = selection.rangeCount || 0;\r\n for (let i = 0; i < count; i++) {\r\n const range = selection.getRangeAt(i);\r\n const { startContainer, startOffset, endContainer, endOffset } = range;\r\n const blocked = isBlocked(startContainer, blockClass, blockSelector, true) ||\r\n isBlocked(endContainer, blockClass, blockSelector, true);\r\n if (blocked)\r\n continue;\r\n ranges.push({\r\n start: mirror.getId(startContainer),\r\n startOffset,\r\n end: mirror.getId(endContainer),\r\n endOffset,\r\n });\r\n }\r\n selectionCb({ ranges });\r\n });\r\n updateSelection();\r\n return on('selectionchange', updateSelection);\r\n}\r\nfunction initCustomElementObserver({ doc, customElementCb, }) {\r\n const win = doc.defaultView;\r\n if (!win || !win.customElements)\r\n return () => { };\r\n const restoreHandler = patch(win.customElements, 'define', function (original) {\r\n return function (name, constructor, options) {\r\n try {\r\n customElementCb({\r\n define: {\r\n name,\r\n },\r\n });\r\n }\r\n catch (e) {\r\n console.warn(`Custom element callback failed for ${name}`);\r\n }\r\n return original.apply(this, [name, constructor, options]);\r\n };\r\n });\r\n return restoreHandler;\r\n}\r\nfunction mergeHooks(o, hooks) {\r\n const { mutationCb, mousemoveCb, mouseInteractionCb, scrollCb, viewportResizeCb, inputCb, mediaInteractionCb, styleSheetRuleCb, styleDeclarationCb, canvasMutationCb, fontCb, selectionCb, customElementCb, } = o;\r\n o.mutationCb = (...p) => {\r\n if (hooks.mutation) {\r\n hooks.mutation(...p);\r\n }\r\n mutationCb(...p);\r\n };\r\n o.mousemoveCb = (...p) => {\r\n if (hooks.mousemove) {\r\n hooks.mousemove(...p);\r\n }\r\n mousemoveCb(...p);\r\n };\r\n o.mouseInteractionCb = (...p) => {\r\n if (hooks.mouseInteraction) {\r\n hooks.mouseInteraction(...p);\r\n }\r\n mouseInteractionCb(...p);\r\n };\r\n o.scrollCb = (...p) => {\r\n if (hooks.scroll) {\r\n hooks.scroll(...p);\r\n }\r\n scrollCb(...p);\r\n };\r\n o.viewportResizeCb = (...p) => {\r\n if (hooks.viewportResize) {\r\n hooks.viewportResize(...p);\r\n }\r\n viewportResizeCb(...p);\r\n };\r\n o.inputCb = (...p) => {\r\n if (hooks.input) {\r\n hooks.input(...p);\r\n }\r\n inputCb(...p);\r\n };\r\n o.mediaInteractionCb = (...p) => {\r\n if (hooks.mediaInteaction) {\r\n hooks.mediaInteaction(...p);\r\n }\r\n mediaInteractionCb(...p);\r\n };\r\n o.styleSheetRuleCb = (...p) => {\r\n if (hooks.styleSheetRule) {\r\n hooks.styleSheetRule(...p);\r\n }\r\n styleSheetRuleCb(...p);\r\n };\r\n o.styleDeclarationCb = (...p) => {\r\n if (hooks.styleDeclaration) {\r\n hooks.styleDeclaration(...p);\r\n }\r\n styleDeclarationCb(...p);\r\n };\r\n o.canvasMutationCb = (...p) => {\r\n if (hooks.canvasMutation) {\r\n hooks.canvasMutation(...p);\r\n }\r\n canvasMutationCb(...p);\r\n };\r\n o.fontCb = (...p) => {\r\n if (hooks.font) {\r\n hooks.font(...p);\r\n }\r\n fontCb(...p);\r\n };\r\n o.selectionCb = (...p) => {\r\n if (hooks.selection) {\r\n hooks.selection(...p);\r\n }\r\n selectionCb(...p);\r\n };\r\n o.customElementCb = (...c) => {\r\n if (hooks.customElement) {\r\n hooks.customElement(...c);\r\n }\r\n customElementCb(...c);\r\n };\r\n}\r\nfunction initObservers(o, hooks = {}) {\r\n const currentWindow = o.doc.defaultView;\r\n if (!currentWindow) {\r\n return () => {\r\n };\r\n }\r\n mergeHooks(o, hooks);\r\n let mutationObserver;\r\n if (o.recordDOM) {\r\n mutationObserver = initMutationObserver(o, o.doc);\r\n }\r\n const mousemoveHandler = initMoveObserver(o);\r\n const mouseInteractionHandler = initMouseInteractionObserver(o);\r\n const scrollHandler = initScrollObserver(o);\r\n const viewportResizeHandler = initViewportResizeObserver(o, {\r\n win: currentWindow,\r\n });\r\n const inputHandler = initInputObserver(o);\r\n const mediaInteractionHandler = initMediaInteractionObserver(o);\r\n let styleSheetObserver = () => { };\r\n let adoptedStyleSheetObserver = () => { };\r\n let styleDeclarationObserver = () => { };\r\n let fontObserver = () => { };\r\n if (o.recordDOM) {\r\n styleSheetObserver = initStyleSheetObserver(o, { win: currentWindow });\r\n adoptedStyleSheetObserver = initAdoptedStyleSheetObserver(o, o.doc);\r\n styleDeclarationObserver = initStyleDeclarationObserver(o, {\r\n win: currentWindow,\r\n });\r\n if (o.collectFonts) {\r\n fontObserver = initFontObserver(o);\r\n }\r\n }\r\n const selectionObserver = initSelectionObserver(o);\r\n const customElementObserver = initCustomElementObserver(o);\r\n const pluginHandlers = [];\r\n for (const plugin of o.plugins) {\r\n pluginHandlers.push(plugin.observer(plugin.callback, currentWindow, plugin.options));\r\n }\r\n return callbackWrapper(() => {\r\n mutationBuffers.forEach((b) => b.reset());\r\n mutationObserver === null || mutationObserver === void 0 ? void 0 : mutationObserver.disconnect();\r\n mousemoveHandler();\r\n mouseInteractionHandler();\r\n scrollHandler();\r\n viewportResizeHandler();\r\n inputHandler();\r\n mediaInteractionHandler();\r\n styleSheetObserver();\r\n adoptedStyleSheetObserver();\r\n styleDeclarationObserver();\r\n fontObserver();\r\n selectionObserver();\r\n customElementObserver();\r\n pluginHandlers.forEach((h) => h());\r\n });\r\n}\r\nfunction hasNestedCSSRule(prop) {\r\n return typeof window[prop] !== 'undefined';\r\n}\r\nfunction canMonkeyPatchNestedCSSRule(prop) {\r\n return Boolean(typeof window[prop] !== 'undefined' &&\r\n window[prop].prototype &&\r\n 'insertRule' in window[prop].prototype &&\r\n 'deleteRule' in window[prop].prototype);\r\n}\n\nclass CrossOriginIframeMirror {\r\n constructor(generateIdFn) {\r\n this.generateIdFn = generateIdFn;\r\n this.iframeIdToRemoteIdMap = new WeakMap();\r\n this.iframeRemoteIdToIdMap = new WeakMap();\r\n }\r\n getId(iframe, remoteId, idToRemoteMap, remoteToIdMap) {\r\n const idToRemoteIdMap = idToRemoteMap || this.getIdToRemoteIdMap(iframe);\r\n const remoteIdToIdMap = remoteToIdMap || this.getRemoteIdToIdMap(iframe);\r\n let id = idToRemoteIdMap.get(remoteId);\r\n if (!id) {\r\n id = this.generateIdFn();\r\n idToRemoteIdMap.set(remoteId, id);\r\n remoteIdToIdMap.set(id, remoteId);\r\n }\r\n return id;\r\n }\r\n getIds(iframe, remoteId) {\r\n const idToRemoteIdMap = this.getIdToRemoteIdMap(iframe);\r\n const remoteIdToIdMap = this.getRemoteIdToIdMap(iframe);\r\n return remoteId.map((id) => this.getId(iframe, id, idToRemoteIdMap, remoteIdToIdMap));\r\n }\r\n getRemoteId(iframe, id, map) {\r\n const remoteIdToIdMap = map || this.getRemoteIdToIdMap(iframe);\r\n if (typeof id !== 'number')\r\n return id;\r\n const remoteId = remoteIdToIdMap.get(id);\r\n if (!remoteId)\r\n return -1;\r\n return remoteId;\r\n }\r\n getRemoteIds(iframe, ids) {\r\n const remoteIdToIdMap = this.getRemoteIdToIdMap(iframe);\r\n return ids.map((id) => this.getRemoteId(iframe, id, remoteIdToIdMap));\r\n }\r\n reset(iframe) {\r\n if (!iframe) {\r\n this.iframeIdToRemoteIdMap = new WeakMap();\r\n this.iframeRemoteIdToIdMap = new WeakMap();\r\n return;\r\n }\r\n this.iframeIdToRemoteIdMap.delete(iframe);\r\n this.iframeRemoteIdToIdMap.delete(iframe);\r\n }\r\n getIdToRemoteIdMap(iframe) {\r\n let idToRemoteIdMap = this.iframeIdToRemoteIdMap.get(iframe);\r\n if (!idToRemoteIdMap) {\r\n idToRemoteIdMap = new Map();\r\n this.iframeIdToRemoteIdMap.set(iframe, idToRemoteIdMap);\r\n }\r\n return idToRemoteIdMap;\r\n }\r\n getRemoteIdToIdMap(iframe) {\r\n let remoteIdToIdMap = this.iframeRemoteIdToIdMap.get(iframe);\r\n if (!remoteIdToIdMap) {\r\n remoteIdToIdMap = new Map();\r\n this.iframeRemoteIdToIdMap.set(iframe, remoteIdToIdMap);\r\n }\r\n return remoteIdToIdMap;\r\n }\r\n}\n\nclass IframeManager {\r\n constructor(options) {\r\n this.iframes = new WeakMap();\r\n this.crossOriginIframeMap = new WeakMap();\r\n this.crossOriginIframeMirror = new CrossOriginIframeMirror(genId);\r\n this.crossOriginIframeRootIdMap = new WeakMap();\r\n this.mutationCb = options.mutationCb;\r\n this.wrappedEmit = options.wrappedEmit;\r\n this.stylesheetManager = options.stylesheetManager;\r\n this.recordCrossOriginIframes = options.recordCrossOriginIframes;\r\n this.crossOriginIframeStyleMirror = new CrossOriginIframeMirror(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror));\r\n this.mirror = options.mirror;\r\n if (this.recordCrossOriginIframes) {\r\n window.addEventListener('message', this.handleMessage.bind(this));\r\n }\r\n }\r\n addIframe(iframeEl) {\r\n this.iframes.set(iframeEl, true);\r\n if (iframeEl.contentWindow)\r\n this.crossOriginIframeMap.set(iframeEl.contentWindow, iframeEl);\r\n }\r\n addLoadListener(cb) {\r\n this.loadListener = cb;\r\n }\r\n attachIframe(iframeEl, childSn) {\r\n var _a;\r\n this.mutationCb({\r\n adds: [\r\n {\r\n parentId: this.mirror.getId(iframeEl),\r\n nextId: null,\r\n node: childSn,\r\n },\r\n ],\r\n removes: [],\r\n texts: [],\r\n attributes: [],\r\n isAttachIframe: true,\r\n });\r\n (_a = this.loadListener) === null || _a === void 0 ? void 0 : _a.call(this, iframeEl);\r\n if (iframeEl.contentDocument &&\r\n iframeEl.contentDocument.adoptedStyleSheets &&\r\n iframeEl.contentDocument.adoptedStyleSheets.length > 0)\r\n this.stylesheetManager.adoptStyleSheets(iframeEl.contentDocument.adoptedStyleSheets, this.mirror.getId(iframeEl.contentDocument));\r\n }\r\n handleMessage(message) {\r\n const crossOriginMessageEvent = message;\r\n if (crossOriginMessageEvent.data.type !== 'rrweb' ||\r\n crossOriginMessageEvent.origin !== crossOriginMessageEvent.data.origin)\r\n return;\r\n const iframeSourceWindow = message.source;\r\n if (!iframeSourceWindow)\r\n return;\r\n const iframeEl = this.crossOriginIframeMap.get(message.source);\r\n if (!iframeEl)\r\n return;\r\n const transformedEvent = this.transformCrossOriginEvent(iframeEl, crossOriginMessageEvent.data.event);\r\n if (transformedEvent)\r\n this.wrappedEmit(transformedEvent, crossOriginMessageEvent.data.isCheckout);\r\n }\r\n transformCrossOriginEvent(iframeEl, e) {\r\n var _a;\r\n switch (e.type) {\r\n case EventType$1.FullSnapshot: {\r\n this.crossOriginIframeMirror.reset(iframeEl);\r\n this.crossOriginIframeStyleMirror.reset(iframeEl);\r\n this.replaceIdOnNode(e.data.node, iframeEl);\r\n const rootId = e.data.node.id;\r\n this.crossOriginIframeRootIdMap.set(iframeEl, rootId);\r\n this.patchRootIdOnNode(e.data.node, rootId);\r\n return {\r\n timestamp: e.timestamp,\r\n type: EventType$1.IncrementalSnapshot,\r\n data: {\r\n source: IncrementalSource$1.Mutation,\r\n adds: [\r\n {\r\n parentId: this.mirror.getId(iframeEl),\r\n nextId: null,\r\n node: e.data.node,\r\n },\r\n ],\r\n removes: [],\r\n texts: [],\r\n attributes: [],\r\n isAttachIframe: true,\r\n },\r\n };\r\n }\r\n case EventType$1.Meta:\r\n case EventType$1.Load:\r\n case EventType$1.DomContentLoaded: {\r\n return false;\r\n }\r\n case EventType$1.Plugin: {\r\n return e;\r\n }\r\n case EventType$1.Custom: {\r\n this.replaceIds(e.data.payload, iframeEl, ['id', 'parentId', 'previousId', 'nextId']);\r\n return e;\r\n }\r\n case EventType$1.IncrementalSnapshot: {\r\n switch (e.data.source) {\r\n case IncrementalSource$1.Mutation: {\r\n e.data.adds.forEach((n) => {\r\n this.replaceIds(n, iframeEl, [\r\n 'parentId',\r\n 'nextId',\r\n 'previousId',\r\n ]);\r\n this.replaceIdOnNode(n.node, iframeEl);\r\n const rootId = this.crossOriginIframeRootIdMap.get(iframeEl);\r\n rootId && this.patchRootIdOnNode(n.node, rootId);\r\n });\r\n e.data.removes.forEach((n) => {\r\n this.replaceIds(n, iframeEl, ['parentId', 'id']);\r\n });\r\n e.data.attributes.forEach((n) => {\r\n this.replaceIds(n, iframeEl, ['id']);\r\n });\r\n e.data.texts.forEach((n) => {\r\n this.replaceIds(n, iframeEl, ['id']);\r\n });\r\n return e;\r\n }\r\n case IncrementalSource$1.Drag:\r\n case IncrementalSource$1.TouchMove:\r\n case IncrementalSource$1.MouseMove: {\r\n e.data.positions.forEach((p) => {\r\n this.replaceIds(p, iframeEl, ['id']);\r\n });\r\n return e;\r\n }\r\n case IncrementalSource$1.ViewportResize: {\r\n return false;\r\n }\r\n case IncrementalSource$1.MediaInteraction:\r\n case IncrementalSource$1.MouseInteraction:\r\n case IncrementalSource$1.Scroll:\r\n case IncrementalSource$1.CanvasMutation:\r\n case IncrementalSource$1.Input: {\r\n this.replaceIds(e.data, iframeEl, ['id']);\r\n return e;\r\n }\r\n case IncrementalSource$1.StyleSheetRule:\r\n case IncrementalSource$1.StyleDeclaration: {\r\n this.replaceIds(e.data, iframeEl, ['id']);\r\n this.replaceStyleIds(e.data, iframeEl, ['styleId']);\r\n return e;\r\n }\r\n case IncrementalSource$1.Font: {\r\n return e;\r\n }\r\n case IncrementalSource$1.Selection: {\r\n e.data.ranges.forEach((range) => {\r\n this.replaceIds(range, iframeEl, ['start', 'end']);\r\n });\r\n return e;\r\n }\r\n case IncrementalSource$1.AdoptedStyleSheet: {\r\n this.replaceIds(e.data, iframeEl, ['id']);\r\n this.replaceStyleIds(e.data, iframeEl, ['styleIds']);\r\n (_a = e.data.styles) === null || _a === void 0 ? void 0 : _a.forEach((style) => {\r\n this.replaceStyleIds(style, iframeEl, ['styleId']);\r\n });\r\n return e;\r\n }\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n replace(iframeMirror, obj, iframeEl, keys) {\r\n for (const key of keys) {\r\n if (!Array.isArray(obj[key]) && typeof obj[key] !== 'number')\r\n continue;\r\n if (Array.isArray(obj[key])) {\r\n obj[key] = iframeMirror.getIds(iframeEl, obj[key]);\r\n }\r\n else {\r\n obj[key] = iframeMirror.getId(iframeEl, obj[key]);\r\n }\r\n }\r\n return obj;\r\n }\r\n replaceIds(obj, iframeEl, keys) {\r\n return this.replace(this.crossOriginIframeMirror, obj, iframeEl, keys);\r\n }\r\n replaceStyleIds(obj, iframeEl, keys) {\r\n return this.replace(this.crossOriginIframeStyleMirror, obj, iframeEl, keys);\r\n }\r\n replaceIdOnNode(node, iframeEl) {\r\n this.replaceIds(node, iframeEl, ['id', 'rootId']);\r\n if ('childNodes' in node) {\r\n node.childNodes.forEach((child) => {\r\n this.replaceIdOnNode(child, iframeEl);\r\n });\r\n }\r\n }\r\n patchRootIdOnNode(node, rootId) {\r\n if (node.type !== NodeType.Document && !node.rootId)\r\n node.rootId = rootId;\r\n if ('childNodes' in node) {\r\n node.childNodes.forEach((child) => {\r\n this.patchRootIdOnNode(child, rootId);\r\n });\r\n }\r\n }\r\n}\n\nclass ShadowDomManager {\r\n constructor(options) {\r\n this.shadowDoms = new WeakSet();\r\n this.restoreHandlers = [];\r\n this.mutationCb = options.mutationCb;\r\n this.scrollCb = options.scrollCb;\r\n this.bypassOptions = options.bypassOptions;\r\n this.mirror = options.mirror;\r\n this.init();\r\n }\r\n init() {\r\n this.reset();\r\n this.patchAttachShadow(Element, document);\r\n }\r\n addShadowRoot(shadowRoot, doc) {\r\n if (!isNativeShadowDom(shadowRoot))\r\n return;\r\n if (this.shadowDoms.has(shadowRoot))\r\n return;\r\n this.shadowDoms.add(shadowRoot);\r\n const observer = initMutationObserver(Object.assign(Object.assign({}, this.bypassOptions), { doc, mutationCb: this.mutationCb, mirror: this.mirror, shadowDomManager: this }), shadowRoot);\r\n this.restoreHandlers.push(() => observer.disconnect());\r\n this.restoreHandlers.push(initScrollObserver(Object.assign(Object.assign({}, this.bypassOptions), { scrollCb: this.scrollCb, doc: shadowRoot, mirror: this.mirror })));\r\n setTimeout(() => {\r\n if (shadowRoot.adoptedStyleSheets &&\r\n shadowRoot.adoptedStyleSheets.length > 0)\r\n this.bypassOptions.stylesheetManager.adoptStyleSheets(shadowRoot.adoptedStyleSheets, this.mirror.getId(shadowRoot.host));\r\n this.restoreHandlers.push(initAdoptedStyleSheetObserver({\r\n mirror: this.mirror,\r\n stylesheetManager: this.bypassOptions.stylesheetManager,\r\n }, shadowRoot));\r\n }, 0);\r\n }\r\n observeAttachShadow(iframeElement) {\r\n if (!iframeElement.contentWindow || !iframeElement.contentDocument)\r\n return;\r\n this.patchAttachShadow(iframeElement.contentWindow.Element, iframeElement.contentDocument);\r\n }\r\n patchAttachShadow(element, doc) {\r\n const manager = this;\r\n this.restoreHandlers.push(patch(element.prototype, 'attachShadow', function (original) {\r\n return function (option) {\r\n const shadowRoot = original.call(this, option);\r\n if (this.shadowRoot && inDom(this))\r\n manager.addShadowRoot(this.shadowRoot, doc);\r\n return shadowRoot;\r\n };\r\n }));\r\n }\r\n reset() {\r\n this.restoreHandlers.forEach((handler) => {\r\n try {\r\n handler();\r\n }\r\n catch (e) {\r\n }\r\n });\r\n this.restoreHandlers = [];\r\n this.shadowDoms = new WeakSet();\r\n }\r\n}\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\n\n/*\n * base64-arraybuffer 1.0.1 \n * Copyright (c) 2021 Niklas von Hertzen \n * Released under MIT License\n */\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n// Use a lookup table to find the index.\nvar lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (var i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\nvar encode = function (arraybuffer) {\n var bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n }\n else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n return base64;\n};\n\nconst canvasVarMap = new Map();\r\nfunction variableListFor(ctx, ctor) {\r\n let contextMap = canvasVarMap.get(ctx);\r\n if (!contextMap) {\r\n contextMap = new Map();\r\n canvasVarMap.set(ctx, contextMap);\r\n }\r\n if (!contextMap.has(ctor)) {\r\n contextMap.set(ctor, []);\r\n }\r\n return contextMap.get(ctor);\r\n}\r\nconst saveWebGLVar = (value, win, ctx) => {\r\n if (!value ||\r\n !(isInstanceOfWebGLObject(value, win) || typeof value === 'object'))\r\n return;\r\n const name = value.constructor.name;\r\n const list = variableListFor(ctx, name);\r\n let index = list.indexOf(value);\r\n if (index === -1) {\r\n index = list.length;\r\n list.push(value);\r\n }\r\n return index;\r\n};\r\nfunction serializeArg(value, win, ctx) {\r\n if (value instanceof Array) {\r\n return value.map((arg) => serializeArg(arg, win, ctx));\r\n }\r\n else if (value === null) {\r\n return value;\r\n }\r\n else if (value instanceof Float32Array ||\r\n value instanceof Float64Array ||\r\n value instanceof Int32Array ||\r\n value instanceof Uint32Array ||\r\n value instanceof Uint8Array ||\r\n value instanceof Uint16Array ||\r\n value instanceof Int16Array ||\r\n value instanceof Int8Array ||\r\n value instanceof Uint8ClampedArray) {\r\n const name = value.constructor.name;\r\n return {\r\n rr_type: name,\r\n args: [Object.values(value)],\r\n };\r\n }\r\n else if (value instanceof ArrayBuffer) {\r\n const name = value.constructor.name;\r\n const base64 = encode(value);\r\n return {\r\n rr_type: name,\r\n base64,\r\n };\r\n }\r\n else if (value instanceof DataView) {\r\n const name = value.constructor.name;\r\n return {\r\n rr_type: name,\r\n args: [\r\n serializeArg(value.buffer, win, ctx),\r\n value.byteOffset,\r\n value.byteLength,\r\n ],\r\n };\r\n }\r\n else if (value instanceof HTMLImageElement) {\r\n const name = value.constructor.name;\r\n const { src } = value;\r\n return {\r\n rr_type: name,\r\n src,\r\n };\r\n }\r\n else if (value instanceof HTMLCanvasElement) {\r\n const name = 'HTMLImageElement';\r\n const src = value.toDataURL();\r\n return {\r\n rr_type: name,\r\n src,\r\n };\r\n }\r\n else if (value instanceof ImageData) {\r\n const name = value.constructor.name;\r\n return {\r\n rr_type: name,\r\n args: [serializeArg(value.data, win, ctx), value.width, value.height],\r\n };\r\n }\r\n else if (isInstanceOfWebGLObject(value, win) || typeof value === 'object') {\r\n const name = value.constructor.name;\r\n const index = saveWebGLVar(value, win, ctx);\r\n return {\r\n rr_type: name,\r\n index: index,\r\n };\r\n }\r\n return value;\r\n}\r\nconst serializeArgs = (args, win, ctx) => {\r\n return args.map((arg) => serializeArg(arg, win, ctx));\r\n};\r\nconst isInstanceOfWebGLObject = (value, win) => {\r\n const webGLConstructorNames = [\r\n 'WebGLActiveInfo',\r\n 'WebGLBuffer',\r\n 'WebGLFramebuffer',\r\n 'WebGLProgram',\r\n 'WebGLRenderbuffer',\r\n 'WebGLShader',\r\n 'WebGLShaderPrecisionFormat',\r\n 'WebGLTexture',\r\n 'WebGLUniformLocation',\r\n 'WebGLVertexArrayObject',\r\n 'WebGLVertexArrayObjectOES',\r\n ];\r\n const supportedWebGLConstructorNames = webGLConstructorNames.filter((name) => typeof win[name] === 'function');\r\n return Boolean(supportedWebGLConstructorNames.find((name) => value instanceof win[name]));\r\n};\n\nfunction initCanvas2DMutationObserver(cb, win, blockClass, blockSelector) {\r\n const handlers = [];\r\n const props2D = Object.getOwnPropertyNames(win.CanvasRenderingContext2D.prototype);\r\n for (const prop of props2D) {\r\n try {\r\n if (typeof win.CanvasRenderingContext2D.prototype[prop] !== 'function') {\r\n continue;\r\n }\r\n const restoreHandler = patch(win.CanvasRenderingContext2D.prototype, prop, function (original) {\r\n return function (...args) {\r\n if (!isBlocked(this.canvas, blockClass, blockSelector, true)) {\r\n setTimeout(() => {\r\n const recordArgs = serializeArgs(args, win, this);\r\n cb(this.canvas, {\r\n type: CanvasContext['2D'],\r\n property: prop,\r\n args: recordArgs,\r\n });\r\n }, 0);\r\n }\r\n return original.apply(this, args);\r\n };\r\n });\r\n handlers.push(restoreHandler);\r\n }\r\n catch (_a) {\r\n const hookHandler = hookSetter(win.CanvasRenderingContext2D.prototype, prop, {\r\n set(v) {\r\n cb(this.canvas, {\r\n type: CanvasContext['2D'],\r\n property: prop,\r\n args: [v],\r\n setter: true,\r\n });\r\n },\r\n });\r\n handlers.push(hookHandler);\r\n }\r\n }\r\n return () => {\r\n handlers.forEach((h) => h());\r\n };\r\n}\n\nfunction getNormalizedContextName(contextType) {\r\n return contextType === 'experimental-webgl' ? 'webgl' : contextType;\r\n}\r\nfunction initCanvasContextObserver(win, blockClass, blockSelector, setPreserveDrawingBufferToTrue) {\r\n const handlers = [];\r\n try {\r\n const restoreHandler = patch(win.HTMLCanvasElement.prototype, 'getContext', function (original) {\r\n return function (contextType, ...args) {\r\n if (!isBlocked(this, blockClass, blockSelector, true)) {\r\n const ctxName = getNormalizedContextName(contextType);\r\n if (!('__context' in this))\r\n this.__context = ctxName;\r\n if (setPreserveDrawingBufferToTrue &&\r\n ['webgl', 'webgl2'].includes(ctxName)) {\r\n if (args[0] && typeof args[0] === 'object') {\r\n const contextAttributes = args[0];\r\n if (!contextAttributes.preserveDrawingBuffer) {\r\n contextAttributes.preserveDrawingBuffer = true;\r\n }\r\n }\r\n else {\r\n args.splice(0, 1, {\r\n preserveDrawingBuffer: true,\r\n });\r\n }\r\n }\r\n }\r\n return original.apply(this, [contextType, ...args]);\r\n };\r\n });\r\n handlers.push(restoreHandler);\r\n }\r\n catch (_a) {\r\n console.error('failed to patch HTMLCanvasElement.prototype.getContext');\r\n }\r\n return () => {\r\n handlers.forEach((h) => h());\r\n };\r\n}\n\nfunction patchGLPrototype(prototype, type, cb, blockClass, blockSelector, mirror, win) {\r\n const handlers = [];\r\n const props = Object.getOwnPropertyNames(prototype);\r\n for (const prop of props) {\r\n if ([\r\n 'isContextLost',\r\n 'canvas',\r\n 'drawingBufferWidth',\r\n 'drawingBufferHeight',\r\n ].includes(prop)) {\r\n continue;\r\n }\r\n try {\r\n if (typeof prototype[prop] !== 'function') {\r\n continue;\r\n }\r\n const restoreHandler = patch(prototype, prop, function (original) {\r\n return function (...args) {\r\n const result = original.apply(this, args);\r\n saveWebGLVar(result, win, this);\r\n if ('tagName' in this.canvas &&\r\n !isBlocked(this.canvas, blockClass, blockSelector, true)) {\r\n const recordArgs = serializeArgs(args, win, this);\r\n const mutation = {\r\n type,\r\n property: prop,\r\n args: recordArgs,\r\n };\r\n cb(this.canvas, mutation);\r\n }\r\n return result;\r\n };\r\n });\r\n handlers.push(restoreHandler);\r\n }\r\n catch (_a) {\r\n const hookHandler = hookSetter(prototype, prop, {\r\n set(v) {\r\n cb(this.canvas, {\r\n type,\r\n property: prop,\r\n args: [v],\r\n setter: true,\r\n });\r\n },\r\n });\r\n handlers.push(hookHandler);\r\n }\r\n }\r\n return handlers;\r\n}\r\nfunction initCanvasWebGLMutationObserver(cb, win, blockClass, blockSelector, mirror) {\r\n const handlers = [];\r\n handlers.push(...patchGLPrototype(win.WebGLRenderingContext.prototype, CanvasContext.WebGL, cb, blockClass, blockSelector, mirror, win));\r\n if (typeof win.WebGL2RenderingContext !== 'undefined') {\r\n handlers.push(...patchGLPrototype(win.WebGL2RenderingContext.prototype, CanvasContext.WebGL2, cb, blockClass, blockSelector, mirror, win));\r\n }\r\n return () => {\r\n handlers.forEach((h) => h());\r\n };\r\n}\n\nfunction funcToSource(fn, sourcemapArg) {\n var sourcemap = sourcemapArg === undefined ? null : sourcemapArg;\n var source = fn.toString();\n var lines = source.split('\\n');\n lines.pop();\n lines.shift();\n var blankPrefixLength = lines[0].search(/\\S/);\n var regex = /(['\"])__worker_loader_strict__(['\"])/g;\n for (var i = 0, n = lines.length; i < n; ++i) {\n lines[i] = lines[i].substring(blankPrefixLength).replace(regex, '$1use strict$2') + '\\n';\n }\n if (sourcemap) {\n lines.push('\\/\\/# sourceMappingURL=' + sourcemap + '\\n');\n }\n return lines;\n}\n\nfunction createURL(fn, sourcemapArg) {\n var lines = funcToSource(fn, sourcemapArg);\n var blob = new Blob(lines, { type: 'application/javascript' });\n return URL.createObjectURL(blob);\n}\n\nfunction createInlineWorkerFactory(fn, sourcemapArg) {\n var url;\n return function WorkerFactory(options) {\n url = url || createURL(fn, sourcemapArg);\n return new Worker(url, options);\n };\n}\n\nvar WorkerFactory = createInlineWorkerFactory(/* rollup-plugin-web-worker-loader */function () {\n(function () {\n '__worker_loader_strict__';\n\n /*! *****************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n\r\n function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n }\n\n /*\n * base64-arraybuffer 1.0.1 \n * Copyright (c) 2021 Niklas von Hertzen \n * Released under MIT License\n */\n var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n // Use a lookup table to find the index.\n var lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\n for (var i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n }\n var encode = function (arraybuffer) {\n var bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n }\n else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n return base64;\n };\n\n const lastBlobMap = new Map();\r\n const transparentBlobMap = new Map();\r\n function getTransparentBlobFor(width, height, dataURLOptions) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const id = `${width}-${height}`;\r\n if ('OffscreenCanvas' in globalThis) {\r\n if (transparentBlobMap.has(id))\r\n return transparentBlobMap.get(id);\r\n const offscreen = new OffscreenCanvas(width, height);\r\n offscreen.getContext('2d');\r\n const blob = yield offscreen.convertToBlob(dataURLOptions);\r\n const arrayBuffer = yield blob.arrayBuffer();\r\n const base64 = encode(arrayBuffer);\r\n transparentBlobMap.set(id, base64);\r\n return base64;\r\n }\r\n else {\r\n return '';\r\n }\r\n });\r\n }\r\n const worker = self;\r\n worker.onmessage = function (e) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if ('OffscreenCanvas' in globalThis) {\r\n const { id, bitmap, width, height, dataURLOptions } = e.data;\r\n const transparentBase64 = getTransparentBlobFor(width, height, dataURLOptions);\r\n const offscreen = new OffscreenCanvas(width, height);\r\n const ctx = offscreen.getContext('2d');\r\n ctx.drawImage(bitmap, 0, 0);\r\n bitmap.close();\r\n const blob = yield offscreen.convertToBlob(dataURLOptions);\r\n const type = blob.type;\r\n const arrayBuffer = yield blob.arrayBuffer();\r\n const base64 = encode(arrayBuffer);\r\n if (!lastBlobMap.has(id) && (yield transparentBase64) === base64) {\r\n lastBlobMap.set(id, base64);\r\n return worker.postMessage({ id });\r\n }\r\n if (lastBlobMap.get(id) === base64)\r\n return worker.postMessage({ id });\r\n worker.postMessage({\r\n id,\r\n type,\r\n base64,\r\n width,\r\n height,\r\n });\r\n lastBlobMap.set(id, base64);\r\n }\r\n else {\r\n return worker.postMessage({ id: e.data.id });\r\n }\r\n });\r\n };\n\n})();\n}, null);\n\nclass CanvasManager {\r\n reset() {\r\n this.pendingCanvasMutations.clear();\r\n this.resetObservers && this.resetObservers();\r\n }\r\n freeze() {\r\n this.frozen = true;\r\n }\r\n unfreeze() {\r\n this.frozen = false;\r\n }\r\n lock() {\r\n this.locked = true;\r\n }\r\n unlock() {\r\n this.locked = false;\r\n }\r\n constructor(options) {\r\n this.pendingCanvasMutations = new Map();\r\n this.rafStamps = { latestId: 0, invokeId: null };\r\n this.frozen = false;\r\n this.locked = false;\r\n this.processMutation = (target, mutation) => {\r\n const newFrame = this.rafStamps.invokeId &&\r\n this.rafStamps.latestId !== this.rafStamps.invokeId;\r\n if (newFrame || !this.rafStamps.invokeId)\r\n this.rafStamps.invokeId = this.rafStamps.latestId;\r\n if (!this.pendingCanvasMutations.has(target)) {\r\n this.pendingCanvasMutations.set(target, []);\r\n }\r\n this.pendingCanvasMutations.get(target).push(mutation);\r\n };\r\n const { sampling = 'all', win, blockClass, blockSelector, recordCanvas, dataURLOptions, } = options;\r\n this.mutationCb = options.mutationCb;\r\n this.mirror = options.mirror;\r\n if (recordCanvas && sampling === 'all')\r\n this.initCanvasMutationObserver(win, blockClass, blockSelector);\r\n if (recordCanvas && typeof sampling === 'number')\r\n this.initCanvasFPSObserver(sampling, win, blockClass, blockSelector, {\r\n dataURLOptions,\r\n });\r\n }\r\n initCanvasFPSObserver(fps, win, blockClass, blockSelector, options) {\r\n const canvasContextReset = initCanvasContextObserver(win, blockClass, blockSelector, true);\r\n const snapshotInProgressMap = new Map();\r\n const worker = new WorkerFactory();\r\n worker.onmessage = (e) => {\r\n const { id } = e.data;\r\n snapshotInProgressMap.set(id, false);\r\n if (!('base64' in e.data))\r\n return;\r\n const { base64, type, width, height } = e.data;\r\n this.mutationCb({\r\n id,\r\n type: CanvasContext['2D'],\r\n commands: [\r\n {\r\n property: 'clearRect',\r\n args: [0, 0, width, height],\r\n },\r\n {\r\n property: 'drawImage',\r\n args: [\r\n {\r\n rr_type: 'ImageBitmap',\r\n args: [\r\n {\r\n rr_type: 'Blob',\r\n data: [{ rr_type: 'ArrayBuffer', base64 }],\r\n type,\r\n },\r\n ],\r\n },\r\n 0,\r\n 0,\r\n ],\r\n },\r\n ],\r\n });\r\n };\r\n const timeBetweenSnapshots = 1000 / fps;\r\n let lastSnapshotTime = 0;\r\n let rafId;\r\n const getCanvas = () => {\r\n const matchedCanvas = [];\r\n win.document.querySelectorAll('canvas').forEach((canvas) => {\r\n if (!isBlocked(canvas, blockClass, blockSelector, true)) {\r\n matchedCanvas.push(canvas);\r\n }\r\n });\r\n return matchedCanvas;\r\n };\r\n const takeCanvasSnapshots = (timestamp) => {\r\n if (lastSnapshotTime &&\r\n timestamp - lastSnapshotTime < timeBetweenSnapshots) {\r\n rafId = requestAnimationFrame(takeCanvasSnapshots);\r\n return;\r\n }\r\n lastSnapshotTime = timestamp;\r\n getCanvas()\r\n .forEach((canvas) => __awaiter(this, void 0, void 0, function* () {\r\n var _a;\r\n const id = this.mirror.getId(canvas);\r\n if (snapshotInProgressMap.get(id))\r\n return;\r\n if (canvas.width === 0 || canvas.height === 0)\r\n return;\r\n snapshotInProgressMap.set(id, true);\r\n if (['webgl', 'webgl2'].includes(canvas.__context)) {\r\n const context = canvas.getContext(canvas.__context);\r\n if (((_a = context === null || context === void 0 ? void 0 : context.getContextAttributes()) === null || _a === void 0 ? void 0 : _a.preserveDrawingBuffer) === false) {\r\n context.clear(context.COLOR_BUFFER_BIT);\r\n }\r\n }\r\n const bitmap = yield createImageBitmap(canvas);\r\n worker.postMessage({\r\n id,\r\n bitmap,\r\n width: canvas.width,\r\n height: canvas.height,\r\n dataURLOptions: options.dataURLOptions,\r\n }, [bitmap]);\r\n }));\r\n rafId = requestAnimationFrame(takeCanvasSnapshots);\r\n };\r\n rafId = requestAnimationFrame(takeCanvasSnapshots);\r\n this.resetObservers = () => {\r\n canvasContextReset();\r\n cancelAnimationFrame(rafId);\r\n };\r\n }\r\n initCanvasMutationObserver(win, blockClass, blockSelector) {\r\n this.startRAFTimestamping();\r\n this.startPendingCanvasMutationFlusher();\r\n const canvasContextReset = initCanvasContextObserver(win, blockClass, blockSelector, false);\r\n const canvas2DReset = initCanvas2DMutationObserver(this.processMutation.bind(this), win, blockClass, blockSelector);\r\n const canvasWebGL1and2Reset = initCanvasWebGLMutationObserver(this.processMutation.bind(this), win, blockClass, blockSelector, this.mirror);\r\n this.resetObservers = () => {\r\n canvasContextReset();\r\n canvas2DReset();\r\n canvasWebGL1and2Reset();\r\n };\r\n }\r\n startPendingCanvasMutationFlusher() {\r\n requestAnimationFrame(() => this.flushPendingCanvasMutations());\r\n }\r\n startRAFTimestamping() {\r\n const setLatestRAFTimestamp = (timestamp) => {\r\n this.rafStamps.latestId = timestamp;\r\n requestAnimationFrame(setLatestRAFTimestamp);\r\n };\r\n requestAnimationFrame(setLatestRAFTimestamp);\r\n }\r\n flushPendingCanvasMutations() {\r\n this.pendingCanvasMutations.forEach((values, canvas) => {\r\n const id = this.mirror.getId(canvas);\r\n this.flushPendingCanvasMutationFor(canvas, id);\r\n });\r\n requestAnimationFrame(() => this.flushPendingCanvasMutations());\r\n }\r\n flushPendingCanvasMutationFor(canvas, id) {\r\n if (this.frozen || this.locked) {\r\n return;\r\n }\r\n const valuesWithType = this.pendingCanvasMutations.get(canvas);\r\n if (!valuesWithType || id === -1)\r\n return;\r\n const values = valuesWithType.map((value) => {\r\n const rest = __rest(value, [\"type\"]);\r\n return rest;\r\n });\r\n const { type } = valuesWithType[0];\r\n this.mutationCb({ id, type, commands: values });\r\n this.pendingCanvasMutations.delete(canvas);\r\n }\r\n}\n\nclass StylesheetManager {\r\n constructor(options) {\r\n this.trackedLinkElements = new WeakSet();\r\n this.styleMirror = new StyleSheetMirror();\r\n this.mutationCb = options.mutationCb;\r\n this.adoptedStyleSheetCb = options.adoptedStyleSheetCb;\r\n }\r\n attachLinkElement(linkEl, childSn) {\r\n if ('_cssText' in childSn.attributes)\r\n this.mutationCb({\r\n adds: [],\r\n removes: [],\r\n texts: [],\r\n attributes: [\r\n {\r\n id: childSn.id,\r\n attributes: childSn\r\n .attributes,\r\n },\r\n ],\r\n });\r\n this.trackLinkElement(linkEl);\r\n }\r\n trackLinkElement(linkEl) {\r\n if (this.trackedLinkElements.has(linkEl))\r\n return;\r\n this.trackedLinkElements.add(linkEl);\r\n this.trackStylesheetInLinkElement(linkEl);\r\n }\r\n adoptStyleSheets(sheets, hostId) {\r\n if (sheets.length === 0)\r\n return;\r\n const adoptedStyleSheetData = {\r\n id: hostId,\r\n styleIds: [],\r\n };\r\n const styles = [];\r\n for (const sheet of sheets) {\r\n let styleId;\r\n if (!this.styleMirror.has(sheet)) {\r\n styleId = this.styleMirror.add(sheet);\r\n styles.push({\r\n styleId,\r\n rules: Array.from(sheet.rules || CSSRule, (r, index) => ({\r\n rule: stringifyRule(r),\r\n index,\r\n })),\r\n });\r\n }\r\n else\r\n styleId = this.styleMirror.getId(sheet);\r\n adoptedStyleSheetData.styleIds.push(styleId);\r\n }\r\n if (styles.length > 0)\r\n adoptedStyleSheetData.styles = styles;\r\n this.adoptedStyleSheetCb(adoptedStyleSheetData);\r\n }\r\n reset() {\r\n this.styleMirror.reset();\r\n this.trackedLinkElements = new WeakSet();\r\n }\r\n trackStylesheetInLinkElement(linkEl) {\r\n }\r\n}\n\nclass ProcessedNodeManager {\r\n constructor() {\r\n this.nodeMap = new WeakMap();\r\n this.loop = true;\r\n this.periodicallyClear();\r\n }\r\n periodicallyClear() {\r\n requestAnimationFrame(() => {\r\n this.clear();\r\n if (this.loop)\r\n this.periodicallyClear();\r\n });\r\n }\r\n inOtherBuffer(node, thisBuffer) {\r\n const buffers = this.nodeMap.get(node);\r\n return (buffers && Array.from(buffers).some((buffer) => buffer !== thisBuffer));\r\n }\r\n add(node, buffer) {\r\n this.nodeMap.set(node, (this.nodeMap.get(node) || new Set()).add(buffer));\r\n }\r\n clear() {\r\n this.nodeMap = new WeakMap();\r\n }\r\n destroy() {\r\n this.loop = false;\r\n }\r\n}\n\nfunction wrapEvent(e) {\r\n return Object.assign(Object.assign({}, e), { timestamp: nowTimestamp() });\r\n}\r\nlet wrappedEmit;\r\nlet takeFullSnapshot;\r\nlet canvasManager;\r\nlet recording = false;\r\nconst mirror = createMirror();\r\nfunction record(options = {}) {\r\n const { emit, checkoutEveryNms, checkoutEveryNth, blockClass = 'rr-block', blockSelector = null, ignoreClass = 'rr-ignore', ignoreSelector = null, maskTextClass = 'rr-mask', maskTextSelector = null, inlineStylesheet = true, maskAllInputs, maskInputOptions: _maskInputOptions, slimDOMOptions: _slimDOMOptions, maskInputFn, maskTextFn, hooks, packFn, sampling = {}, dataURLOptions = {}, mousemoveWait, recordDOM = true, recordCanvas = false, recordCrossOriginIframes = false, recordAfter = options.recordAfter === 'DOMContentLoaded'\r\n ? options.recordAfter\r\n : 'load', userTriggeredOnInput = false, collectFonts = false, inlineImages = false, plugins, keepIframeSrcFn = () => false, ignoreCSSAttributes = new Set([]), errorHandler, } = options;\r\n registerErrorHandler(errorHandler);\r\n const inEmittingFrame = recordCrossOriginIframes\r\n ? window.parent === window\r\n : true;\r\n let passEmitsToParent = false;\r\n if (!inEmittingFrame) {\r\n try {\r\n if (window.parent.document) {\r\n passEmitsToParent = false;\r\n }\r\n }\r\n catch (e) {\r\n passEmitsToParent = true;\r\n }\r\n }\r\n if (inEmittingFrame && !emit) {\r\n throw new Error('emit function is required');\r\n }\r\n if (mousemoveWait !== undefined && sampling.mousemove === undefined) {\r\n sampling.mousemove = mousemoveWait;\r\n }\r\n mirror.reset();\r\n const maskInputOptions = maskAllInputs === true\r\n ? {\r\n color: true,\r\n date: true,\r\n 'datetime-local': true,\r\n email: true,\r\n month: true,\r\n number: true,\r\n range: true,\r\n search: true,\r\n tel: true,\r\n text: true,\r\n time: true,\r\n url: true,\r\n week: true,\r\n textarea: true,\r\n select: true,\r\n password: true,\r\n }\r\n : _maskInputOptions !== undefined\r\n ? _maskInputOptions\r\n : { password: true };\r\n const slimDOMOptions = _slimDOMOptions === true || _slimDOMOptions === 'all'\r\n ? {\r\n script: true,\r\n comment: true,\r\n headFavicon: true,\r\n headWhitespace: true,\r\n headMetaSocial: true,\r\n headMetaRobots: true,\r\n headMetaHttpEquiv: true,\r\n headMetaVerification: true,\r\n headMetaAuthorship: _slimDOMOptions === 'all',\r\n headMetaDescKeywords: _slimDOMOptions === 'all',\r\n }\r\n : _slimDOMOptions\r\n ? _slimDOMOptions\r\n : {};\r\n polyfill();\r\n let lastFullSnapshotEvent;\r\n let incrementalSnapshotCount = 0;\r\n const eventProcessor = (e) => {\r\n for (const plugin of plugins || []) {\r\n if (plugin.eventProcessor) {\r\n e = plugin.eventProcessor(e);\r\n }\r\n }\r\n if (packFn &&\r\n !passEmitsToParent) {\r\n e = packFn(e);\r\n }\r\n return e;\r\n };\r\n wrappedEmit = (e, isCheckout) => {\r\n var _a;\r\n if (((_a = mutationBuffers[0]) === null || _a === void 0 ? void 0 : _a.isFrozen()) &&\r\n e.type !== EventType$1.FullSnapshot &&\r\n !(e.type === EventType$1.IncrementalSnapshot &&\r\n e.data.source === IncrementalSource$1.Mutation)) {\r\n mutationBuffers.forEach((buf) => buf.unfreeze());\r\n }\r\n if (inEmittingFrame) {\r\n emit === null || emit === void 0 ? void 0 : emit(eventProcessor(e), isCheckout);\r\n }\r\n else if (passEmitsToParent) {\r\n const message = {\r\n type: 'rrweb',\r\n event: eventProcessor(e),\r\n origin: window.location.origin,\r\n isCheckout,\r\n };\r\n window.parent.postMessage(message, '*');\r\n }\r\n if (e.type === EventType$1.FullSnapshot) {\r\n lastFullSnapshotEvent = e;\r\n incrementalSnapshotCount = 0;\r\n }\r\n else if (e.type === EventType$1.IncrementalSnapshot) {\r\n if (e.data.source === IncrementalSource$1.Mutation &&\r\n e.data.isAttachIframe) {\r\n return;\r\n }\r\n incrementalSnapshotCount++;\r\n const exceedCount = checkoutEveryNth && incrementalSnapshotCount >= checkoutEveryNth;\r\n const exceedTime = checkoutEveryNms &&\r\n e.timestamp - lastFullSnapshotEvent.timestamp > checkoutEveryNms;\r\n if (exceedCount || exceedTime) {\r\n takeFullSnapshot(true);\r\n }\r\n }\r\n };\r\n const wrappedMutationEmit = (m) => {\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.Mutation }, m),\r\n }));\r\n };\r\n const wrappedScrollEmit = (p) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.Scroll }, p),\r\n }));\r\n const wrappedCanvasMutationEmit = (p) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.CanvasMutation }, p),\r\n }));\r\n const wrappedAdoptedStyleSheetEmit = (a) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.AdoptedStyleSheet }, a),\r\n }));\r\n const stylesheetManager = new StylesheetManager({\r\n mutationCb: wrappedMutationEmit,\r\n adoptedStyleSheetCb: wrappedAdoptedStyleSheetEmit,\r\n });\r\n const iframeManager = new IframeManager({\r\n mirror,\r\n mutationCb: wrappedMutationEmit,\r\n stylesheetManager: stylesheetManager,\r\n recordCrossOriginIframes,\r\n wrappedEmit,\r\n });\r\n for (const plugin of plugins || []) {\r\n if (plugin.getMirror)\r\n plugin.getMirror({\r\n nodeMirror: mirror,\r\n crossOriginIframeMirror: iframeManager.crossOriginIframeMirror,\r\n crossOriginIframeStyleMirror: iframeManager.crossOriginIframeStyleMirror,\r\n });\r\n }\r\n const processedNodeManager = new ProcessedNodeManager();\r\n canvasManager = new CanvasManager({\r\n recordCanvas,\r\n mutationCb: wrappedCanvasMutationEmit,\r\n win: window,\r\n blockClass,\r\n blockSelector,\r\n mirror,\r\n sampling: sampling.canvas,\r\n dataURLOptions,\r\n });\r\n const shadowDomManager = new ShadowDomManager({\r\n mutationCb: wrappedMutationEmit,\r\n scrollCb: wrappedScrollEmit,\r\n bypassOptions: {\r\n blockClass,\r\n blockSelector,\r\n maskTextClass,\r\n maskTextSelector,\r\n inlineStylesheet,\r\n maskInputOptions,\r\n dataURLOptions,\r\n maskTextFn,\r\n maskInputFn,\r\n recordCanvas,\r\n inlineImages,\r\n sampling,\r\n slimDOMOptions,\r\n iframeManager,\r\n stylesheetManager,\r\n canvasManager,\r\n keepIframeSrcFn,\r\n processedNodeManager,\r\n },\r\n mirror,\r\n });\r\n takeFullSnapshot = (isCheckout = false) => {\r\n if (!recordDOM) {\r\n return;\r\n }\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.Meta,\r\n data: {\r\n href: window.location.href,\r\n width: getWindowWidth(),\r\n height: getWindowHeight(),\r\n },\r\n }), isCheckout);\r\n stylesheetManager.reset();\r\n shadowDomManager.init();\r\n mutationBuffers.forEach((buf) => buf.lock());\r\n const node = snapshot(document, {\r\n mirror,\r\n blockClass,\r\n blockSelector,\r\n maskTextClass,\r\n maskTextSelector,\r\n inlineStylesheet,\r\n maskAllInputs: maskInputOptions,\r\n maskTextFn,\r\n slimDOM: slimDOMOptions,\r\n dataURLOptions,\r\n recordCanvas,\r\n inlineImages,\r\n onSerialize: (n) => {\r\n if (isSerializedIframe(n, mirror)) {\r\n iframeManager.addIframe(n);\r\n }\r\n if (isSerializedStylesheet(n, mirror)) {\r\n stylesheetManager.trackLinkElement(n);\r\n }\r\n if (hasShadowRoot(n)) {\r\n shadowDomManager.addShadowRoot(n.shadowRoot, document);\r\n }\r\n },\r\n onIframeLoad: (iframe, childSn) => {\r\n iframeManager.attachIframe(iframe, childSn);\r\n shadowDomManager.observeAttachShadow(iframe);\r\n },\r\n onStylesheetLoad: (linkEl, childSn) => {\r\n stylesheetManager.attachLinkElement(linkEl, childSn);\r\n },\r\n keepIframeSrcFn,\r\n });\r\n if (!node) {\r\n return console.warn('Failed to snapshot the document');\r\n }\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.FullSnapshot,\r\n data: {\r\n node,\r\n initialOffset: getWindowScroll(window),\r\n },\r\n }), isCheckout);\r\n mutationBuffers.forEach((buf) => buf.unlock());\r\n if (document.adoptedStyleSheets && document.adoptedStyleSheets.length > 0)\r\n stylesheetManager.adoptStyleSheets(document.adoptedStyleSheets, mirror.getId(document));\r\n };\r\n try {\r\n const handlers = [];\r\n const observe = (doc) => {\r\n var _a;\r\n return callbackWrapper(initObservers)({\r\n mutationCb: wrappedMutationEmit,\r\n mousemoveCb: (positions, source) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: {\r\n source,\r\n positions,\r\n },\r\n })),\r\n mouseInteractionCb: (d) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.MouseInteraction }, d),\r\n })),\r\n scrollCb: wrappedScrollEmit,\r\n viewportResizeCb: (d) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.ViewportResize }, d),\r\n })),\r\n inputCb: (v) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.Input }, v),\r\n })),\r\n mediaInteractionCb: (p) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.MediaInteraction }, p),\r\n })),\r\n styleSheetRuleCb: (r) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.StyleSheetRule }, r),\r\n })),\r\n styleDeclarationCb: (r) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.StyleDeclaration }, r),\r\n })),\r\n canvasMutationCb: wrappedCanvasMutationEmit,\r\n fontCb: (p) => wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.Font }, p),\r\n })),\r\n selectionCb: (p) => {\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.Selection }, p),\r\n }));\r\n },\r\n customElementCb: (c) => {\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.IncrementalSnapshot,\r\n data: Object.assign({ source: IncrementalSource$1.CustomElement }, c),\r\n }));\r\n },\r\n blockClass,\r\n ignoreClass,\r\n ignoreSelector,\r\n maskTextClass,\r\n maskTextSelector,\r\n maskInputOptions,\r\n inlineStylesheet,\r\n sampling,\r\n recordDOM,\r\n recordCanvas,\r\n inlineImages,\r\n userTriggeredOnInput,\r\n collectFonts,\r\n doc,\r\n maskInputFn,\r\n maskTextFn,\r\n keepIframeSrcFn,\r\n blockSelector,\r\n slimDOMOptions,\r\n dataURLOptions,\r\n mirror,\r\n iframeManager,\r\n stylesheetManager,\r\n shadowDomManager,\r\n processedNodeManager,\r\n canvasManager,\r\n ignoreCSSAttributes,\r\n plugins: ((_a = plugins === null || plugins === void 0 ? void 0 : plugins.filter((p) => p.observer)) === null || _a === void 0 ? void 0 : _a.map((p) => ({\r\n observer: p.observer,\r\n options: p.options,\r\n callback: (payload) => wrappedEmit(wrapEvent({\r\n type: EventType$1.Plugin,\r\n data: {\r\n plugin: p.name,\r\n payload,\r\n },\r\n })),\r\n }))) || [],\r\n }, hooks);\r\n };\r\n iframeManager.addLoadListener((iframeEl) => {\r\n try {\r\n handlers.push(observe(iframeEl.contentDocument));\r\n }\r\n catch (error) {\r\n console.warn(error);\r\n }\r\n });\r\n const init = () => {\r\n takeFullSnapshot();\r\n handlers.push(observe(document));\r\n recording = true;\r\n };\r\n if (document.readyState === 'interactive' ||\r\n document.readyState === 'complete') {\r\n init();\r\n }\r\n else {\r\n handlers.push(on('DOMContentLoaded', () => {\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.DomContentLoaded,\r\n data: {},\r\n }));\r\n if (recordAfter === 'DOMContentLoaded')\r\n init();\r\n }));\r\n handlers.push(on('load', () => {\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.Load,\r\n data: {},\r\n }));\r\n if (recordAfter === 'load')\r\n init();\r\n }, window));\r\n }\r\n return () => {\r\n handlers.forEach((h) => h());\r\n processedNodeManager.destroy();\r\n recording = false;\r\n unregisterErrorHandler();\r\n };\r\n }\r\n catch (error) {\r\n console.warn(error);\r\n }\r\n}\r\nrecord.addCustomEvent = (tag, payload) => {\r\n if (!recording) {\r\n throw new Error('please add custom event after start recording');\r\n }\r\n wrappedEmit(wrapEvent({\r\n type: EventType$1.Custom,\r\n data: {\r\n tag,\r\n payload,\r\n },\r\n }));\r\n};\r\nrecord.freezePage = () => {\r\n mutationBuffers.forEach((buf) => buf.freeze());\r\n};\r\nrecord.takeFullSnapshot = (isCheckout) => {\r\n if (!recording) {\r\n throw new Error('please take full snapshot after start recording');\r\n }\r\n takeFullSnapshot(isCheckout);\r\n};\r\nrecord.mirror = mirror;\n\nvar EventType = /* @__PURE__ */ ((EventType2) => {\n EventType2[EventType2[\"DomContentLoaded\"] = 0] = \"DomContentLoaded\";\n EventType2[EventType2[\"Load\"] = 1] = \"Load\";\n EventType2[EventType2[\"FullSnapshot\"] = 2] = \"FullSnapshot\";\n EventType2[EventType2[\"IncrementalSnapshot\"] = 3] = \"IncrementalSnapshot\";\n EventType2[EventType2[\"Meta\"] = 4] = \"Meta\";\n EventType2[EventType2[\"Custom\"] = 5] = \"Custom\";\n EventType2[EventType2[\"Plugin\"] = 6] = \"Plugin\";\n return EventType2;\n})(EventType || {});\nvar IncrementalSource = /* @__PURE__ */ ((IncrementalSource2) => {\n IncrementalSource2[IncrementalSource2[\"Mutation\"] = 0] = \"Mutation\";\n IncrementalSource2[IncrementalSource2[\"MouseMove\"] = 1] = \"MouseMove\";\n IncrementalSource2[IncrementalSource2[\"MouseInteraction\"] = 2] = \"MouseInteraction\";\n IncrementalSource2[IncrementalSource2[\"Scroll\"] = 3] = \"Scroll\";\n IncrementalSource2[IncrementalSource2[\"ViewportResize\"] = 4] = \"ViewportResize\";\n IncrementalSource2[IncrementalSource2[\"Input\"] = 5] = \"Input\";\n IncrementalSource2[IncrementalSource2[\"TouchMove\"] = 6] = \"TouchMove\";\n IncrementalSource2[IncrementalSource2[\"MediaInteraction\"] = 7] = \"MediaInteraction\";\n IncrementalSource2[IncrementalSource2[\"StyleSheetRule\"] = 8] = \"StyleSheetRule\";\n IncrementalSource2[IncrementalSource2[\"CanvasMutation\"] = 9] = \"CanvasMutation\";\n IncrementalSource2[IncrementalSource2[\"Font\"] = 10] = \"Font\";\n IncrementalSource2[IncrementalSource2[\"Log\"] = 11] = \"Log\";\n IncrementalSource2[IncrementalSource2[\"Drag\"] = 12] = \"Drag\";\n IncrementalSource2[IncrementalSource2[\"StyleDeclaration\"] = 13] = \"StyleDeclaration\";\n IncrementalSource2[IncrementalSource2[\"Selection\"] = 14] = \"Selection\";\n IncrementalSource2[IncrementalSource2[\"AdoptedStyleSheet\"] = 15] = \"AdoptedStyleSheet\";\n IncrementalSource2[IncrementalSource2[\"CustomElement\"] = 16] = \"CustomElement\";\n return IncrementalSource2;\n})(IncrementalSource || {});\n\nvar Config = {\n DEBUG: false,\n LIB_VERSION: '2.55.1'\n};\n\n/* eslint camelcase: \"off\", eqeqeq: \"off\" */\n\n// since es6 imports are static and we run unit tests from the console, window won't be defined when importing this file\nvar win;\nif (typeof(window) === 'undefined') {\n var loc = {\n hostname: ''\n };\n win = {\n navigator: { userAgent: '', onLine: true },\n document: {\n location: loc,\n referrer: ''\n },\n screen: { width: 0, height: 0 },\n location: loc\n };\n} else {\n win = window;\n}\n\n// Maximum allowed session recording length\nvar MAX_RECORDING_MS = 24 * 60 * 60 * 1000; // 24 hours\n// Maximum allowed value for minimum session recording length\nvar MAX_VALUE_FOR_MIN_RECORDING_MS = 8 * 1000; // 8 seconds\n\n/*\n * Saved references to long variable names, so that closure compiler can\n * minimize file size.\n */\n\nvar ArrayProto = Array.prototype,\n FuncProto = Function.prototype,\n ObjProto = Object.prototype,\n slice = ArrayProto.slice,\n toString = ObjProto.toString,\n hasOwnProperty = ObjProto.hasOwnProperty,\n windowConsole = win.console,\n navigator = win.navigator,\n document$1 = win.document,\n windowOpera = win.opera,\n screen = win.screen,\n userAgent = navigator.userAgent;\n\nvar nativeBind = FuncProto.bind,\n nativeForEach = ArrayProto.forEach,\n nativeIndexOf = ArrayProto.indexOf,\n nativeMap = ArrayProto.map,\n nativeIsArray = Array.isArray,\n breaker = {};\n\nvar _ = {\n trim: function(str) {\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\n return str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n }\n};\n\n// Console override\nvar console$1 = {\n /** @type {function(...*)} */\n log: function() {\n if (Config.DEBUG && !_.isUndefined(windowConsole) && windowConsole) {\n try {\n windowConsole.log.apply(windowConsole, arguments);\n } catch (err) {\n _.each(arguments, function(arg) {\n windowConsole.log(arg);\n });\n }\n }\n },\n /** @type {function(...*)} */\n warn: function() {\n if (Config.DEBUG && !_.isUndefined(windowConsole) && windowConsole) {\n var args = ['Mixpanel warning:'].concat(_.toArray(arguments));\n try {\n windowConsole.warn.apply(windowConsole, args);\n } catch (err) {\n _.each(args, function(arg) {\n windowConsole.warn(arg);\n });\n }\n }\n },\n /** @type {function(...*)} */\n error: function() {\n if (Config.DEBUG && !_.isUndefined(windowConsole) && windowConsole) {\n var args = ['Mixpanel error:'].concat(_.toArray(arguments));\n try {\n windowConsole.error.apply(windowConsole, args);\n } catch (err) {\n _.each(args, function(arg) {\n windowConsole.error(arg);\n });\n }\n }\n },\n /** @type {function(...*)} */\n critical: function() {\n if (!_.isUndefined(windowConsole) && windowConsole) {\n var args = ['Mixpanel error:'].concat(_.toArray(arguments));\n try {\n windowConsole.error.apply(windowConsole, args);\n } catch (err) {\n _.each(args, function(arg) {\n windowConsole.error(arg);\n });\n }\n }\n }\n};\n\nvar log_func_with_prefix = function(func, prefix) {\n return function() {\n arguments[0] = '[' + prefix + '] ' + arguments[0];\n return func.apply(console$1, arguments);\n };\n};\nvar console_with_prefix = function(prefix) {\n return {\n log: log_func_with_prefix(console$1.log, prefix),\n error: log_func_with_prefix(console$1.error, prefix),\n critical: log_func_with_prefix(console$1.critical, prefix)\n };\n};\n\n\n// UNDERSCORE\n// Embed part of the Underscore Library\n_.bind = function(func, context) {\n var args, bound;\n if (nativeBind && func.bind === nativeBind) {\n return nativeBind.apply(func, slice.call(arguments, 1));\n }\n if (!_.isFunction(func)) {\n throw new TypeError();\n }\n args = slice.call(arguments, 2);\n bound = function() {\n if (!(this instanceof bound)) {\n return func.apply(context, args.concat(slice.call(arguments)));\n }\n var ctor = {};\n ctor.prototype = func.prototype;\n var self = new ctor();\n ctor.prototype = null;\n var result = func.apply(self, args.concat(slice.call(arguments)));\n if (Object(result) === result) {\n return result;\n }\n return self;\n };\n return bound;\n};\n\n/**\n * @param {*=} obj\n * @param {function(...*)=} iterator\n * @param {Object=} context\n */\n_.each = function(obj, iterator, context) {\n if (obj === null || obj === undefined) {\n return;\n }\n if (nativeForEach && obj.forEach === nativeForEach) {\n obj.forEach(iterator, context);\n } else if (obj.length === +obj.length) {\n for (var i = 0, l = obj.length; i < l; i++) {\n if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) {\n return;\n }\n }\n } else {\n for (var key in obj) {\n if (hasOwnProperty.call(obj, key)) {\n if (iterator.call(context, obj[key], key, obj) === breaker) {\n return;\n }\n }\n }\n }\n};\n\n_.extend = function(obj) {\n _.each(slice.call(arguments, 1), function(source) {\n for (var prop in source) {\n if (source[prop] !== void 0) {\n obj[prop] = source[prop];\n }\n }\n });\n return obj;\n};\n\n_.isArray = nativeIsArray || function(obj) {\n return toString.call(obj) === '[object Array]';\n};\n\n// from a comment on http://dbj.org/dbj/?p=286\n// fails on only one very rare and deliberate custom object:\n// var bomb = { toString : undefined, valueOf: function(o) { return \"function BOMBA!\"; }};\n_.isFunction = function(f) {\n try {\n return /^\\s*\\bfunction\\b/.test(f);\n } catch (x) {\n return false;\n }\n};\n\n_.isArguments = function(obj) {\n return !!(obj && hasOwnProperty.call(obj, 'callee'));\n};\n\n_.toArray = function(iterable) {\n if (!iterable) {\n return [];\n }\n if (iterable.toArray) {\n return iterable.toArray();\n }\n if (_.isArray(iterable)) {\n return slice.call(iterable);\n }\n if (_.isArguments(iterable)) {\n return slice.call(iterable);\n }\n return _.values(iterable);\n};\n\n_.map = function(arr, callback, context) {\n if (nativeMap && arr.map === nativeMap) {\n return arr.map(callback, context);\n } else {\n var results = [];\n _.each(arr, function(item) {\n results.push(callback.call(context, item));\n });\n return results;\n }\n};\n\n_.keys = function(obj) {\n var results = [];\n if (obj === null) {\n return results;\n }\n _.each(obj, function(value, key) {\n results[results.length] = key;\n });\n return results;\n};\n\n_.values = function(obj) {\n var results = [];\n if (obj === null) {\n return results;\n }\n _.each(obj, function(value) {\n results[results.length] = value;\n });\n return results;\n};\n\n_.include = function(obj, target) {\n var found = false;\n if (obj === null) {\n return found;\n }\n if (nativeIndexOf && obj.indexOf === nativeIndexOf) {\n return obj.indexOf(target) != -1;\n }\n _.each(obj, function(value) {\n if (found || (found = (value === target))) {\n return breaker;\n }\n });\n return found;\n};\n\n_.includes = function(str, needle) {\n return str.indexOf(needle) !== -1;\n};\n\n// Underscore Addons\n_.inherit = function(subclass, superclass) {\n subclass.prototype = new superclass();\n subclass.prototype.constructor = subclass;\n subclass.superclass = superclass.prototype;\n return subclass;\n};\n\n_.isObject = function(obj) {\n return (obj === Object(obj) && !_.isArray(obj));\n};\n\n_.isEmptyObject = function(obj) {\n if (_.isObject(obj)) {\n for (var key in obj) {\n if (hasOwnProperty.call(obj, key)) {\n return false;\n }\n }\n return true;\n }\n return false;\n};\n\n_.isUndefined = function(obj) {\n return obj === void 0;\n};\n\n_.isString = function(obj) {\n return toString.call(obj) == '[object String]';\n};\n\n_.isDate = function(obj) {\n return toString.call(obj) == '[object Date]';\n};\n\n_.isNumber = function(obj) {\n return toString.call(obj) == '[object Number]';\n};\n\n_.isElement = function(obj) {\n return !!(obj && obj.nodeType === 1);\n};\n\n_.encodeDates = function(obj) {\n _.each(obj, function(v, k) {\n if (_.isDate(v)) {\n obj[k] = _.formatDate(v);\n } else if (_.isObject(v)) {\n obj[k] = _.encodeDates(v); // recurse\n }\n });\n return obj;\n};\n\n_.timestamp = function() {\n Date.now = Date.now || function() {\n return +new Date;\n };\n return Date.now();\n};\n\n_.formatDate = function(d) {\n // YYYY-MM-DDTHH:MM:SS in UTC\n function pad(n) {\n return n < 10 ? '0' + n : n;\n }\n return d.getUTCFullYear() + '-' +\n pad(d.getUTCMonth() + 1) + '-' +\n pad(d.getUTCDate()) + 'T' +\n pad(d.getUTCHours()) + ':' +\n pad(d.getUTCMinutes()) + ':' +\n pad(d.getUTCSeconds());\n};\n\n_.strip_empty_properties = function(p) {\n var ret = {};\n _.each(p, function(v, k) {\n if (_.isString(v) && v.length > 0) {\n ret[k] = v;\n }\n });\n return ret;\n};\n\n/*\n * this function returns a copy of object after truncating it. If\n * passed an Array or Object it will iterate through obj and\n * truncate all the values recursively.\n */\n_.truncate = function(obj, length) {\n var ret;\n\n if (typeof(obj) === 'string') {\n ret = obj.slice(0, length);\n } else if (_.isArray(obj)) {\n ret = [];\n _.each(obj, function(val) {\n ret.push(_.truncate(val, length));\n });\n } else if (_.isObject(obj)) {\n ret = {};\n _.each(obj, function(val, key) {\n ret[key] = _.truncate(val, length);\n });\n } else {\n ret = obj;\n }\n\n return ret;\n};\n\n_.JSONEncode = (function() {\n return function(mixed_val) {\n var value = mixed_val;\n var quote = function(string) {\n var escapable = /[\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g; // eslint-disable-line no-control-regex\n var meta = { // table of character substitutions\n '\\b': '\\\\b',\n '\\t': '\\\\t',\n '\\n': '\\\\n',\n '\\f': '\\\\f',\n '\\r': '\\\\r',\n '\"': '\\\\\"',\n '\\\\': '\\\\\\\\'\n };\n\n escapable.lastIndex = 0;\n return escapable.test(string) ?\n '\"' + string.replace(escapable, function(a) {\n var c = meta[a];\n return typeof c === 'string' ? c :\n '\\\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n }) + '\"' :\n '\"' + string + '\"';\n };\n\n var str = function(key, holder) {\n var gap = '';\n var indent = ' ';\n var i = 0; // The loop counter.\n var k = ''; // The member key.\n var v = ''; // The member value.\n var length = 0;\n var mind = gap;\n var partial = [];\n var value = holder[key];\n\n // If the value has a toJSON method, call it to obtain a replacement value.\n if (value && typeof value === 'object' &&\n typeof value.toJSON === 'function') {\n value = value.toJSON(key);\n }\n\n // What happens next depends on the value's type.\n switch (typeof value) {\n case 'string':\n return quote(value);\n\n case 'number':\n // JSON numbers must be finite. Encode non-finite numbers as null.\n return isFinite(value) ? String(value) : 'null';\n\n case 'boolean':\n case 'null':\n // If the value is a boolean or null, convert it to a string. Note:\n // typeof null does not produce 'null'. The case is included here in\n // the remote chance that this gets fixed someday.\n\n return String(value);\n\n case 'object':\n // If the type is 'object', we might be dealing with an object or an array or\n // null.\n // Due to a specification blunder in ECMAScript, typeof null is 'object',\n // so watch out for that case.\n if (!value) {\n return 'null';\n }\n\n // Make an array to hold the partial results of stringifying this object value.\n gap += indent;\n partial = [];\n\n // Is the value an array?\n if (toString.apply(value) === '[object Array]') {\n // The value is an array. Stringify every element. Use null as a placeholder\n // for non-JSON values.\n\n length = value.length;\n for (i = 0; i < length; i += 1) {\n partial[i] = str(i, value) || 'null';\n }\n\n // Join all of the elements together, separated with commas, and wrap them in\n // brackets.\n v = partial.length === 0 ? '[]' :\n gap ? '[\\n' + gap +\n partial.join(',\\n' + gap) + '\\n' +\n mind + ']' :\n '[' + partial.join(',') + ']';\n gap = mind;\n return v;\n }\n\n // Iterate through all of the keys in the object.\n for (k in value) {\n if (hasOwnProperty.call(value, k)) {\n v = str(k, value);\n if (v) {\n partial.push(quote(k) + (gap ? ': ' : ':') + v);\n }\n }\n }\n\n // Join all of the member texts together, separated with commas,\n // and wrap them in braces.\n v = partial.length === 0 ? '{}' :\n gap ? '{' + partial.join(',') + '' +\n mind + '}' : '{' + partial.join(',') + '}';\n gap = mind;\n return v;\n }\n };\n\n // Make a fake root object containing our value under the key of ''.\n // Return the result of stringifying the value.\n return str('', {\n '': value\n });\n };\n})();\n\n/**\n * From https://github.com/douglascrockford/JSON-js/blob/master/json_parse.js\n * Slightly modified to throw a real Error rather than a POJO\n */\n_.JSONDecode = (function() {\n var at, // The index of the current character\n ch, // The current character\n escapee = {\n '\"': '\"',\n '\\\\': '\\\\',\n '/': '/',\n 'b': '\\b',\n 'f': '\\f',\n 'n': '\\n',\n 'r': '\\r',\n 't': '\\t'\n },\n text,\n error = function(m) {\n var e = new SyntaxError(m);\n e.at = at;\n e.text = text;\n throw e;\n },\n next = function(c) {\n // If a c parameter is provided, verify that it matches the current character.\n if (c && c !== ch) {\n error('Expected \\'' + c + '\\' instead of \\'' + ch + '\\'');\n }\n // Get the next character. When there are no more characters,\n // return the empty string.\n ch = text.charAt(at);\n at += 1;\n return ch;\n },\n number = function() {\n // Parse a number value.\n var number,\n string = '';\n\n if (ch === '-') {\n string = '-';\n next('-');\n }\n while (ch >= '0' && ch <= '9') {\n string += ch;\n next();\n }\n if (ch === '.') {\n string += '.';\n while (next() && ch >= '0' && ch <= '9') {\n string += ch;\n }\n }\n if (ch === 'e' || ch === 'E') {\n string += ch;\n next();\n if (ch === '-' || ch === '+') {\n string += ch;\n next();\n }\n while (ch >= '0' && ch <= '9') {\n string += ch;\n next();\n }\n }\n number = +string;\n if (!isFinite(number)) {\n error('Bad number');\n } else {\n return number;\n }\n },\n\n string = function() {\n // Parse a string value.\n var hex,\n i,\n string = '',\n uffff;\n // When parsing for string values, we must look for \" and \\ characters.\n if (ch === '\"') {\n while (next()) {\n if (ch === '\"') {\n next();\n return string;\n }\n if (ch === '\\\\') {\n next();\n if (ch === 'u') {\n uffff = 0;\n for (i = 0; i < 4; i += 1) {\n hex = parseInt(next(), 16);\n if (!isFinite(hex)) {\n break;\n }\n uffff = uffff * 16 + hex;\n }\n string += String.fromCharCode(uffff);\n } else if (typeof escapee[ch] === 'string') {\n string += escapee[ch];\n } else {\n break;\n }\n } else {\n string += ch;\n }\n }\n }\n error('Bad string');\n },\n white = function() {\n // Skip whitespace.\n while (ch && ch <= ' ') {\n next();\n }\n },\n word = function() {\n // true, false, or null.\n switch (ch) {\n case 't':\n next('t');\n next('r');\n next('u');\n next('e');\n return true;\n case 'f':\n next('f');\n next('a');\n next('l');\n next('s');\n next('e');\n return false;\n case 'n':\n next('n');\n next('u');\n next('l');\n next('l');\n return null;\n }\n error('Unexpected \"' + ch + '\"');\n },\n value, // Placeholder for the value function.\n array = function() {\n // Parse an array value.\n var array = [];\n\n if (ch === '[') {\n next('[');\n white();\n if (ch === ']') {\n next(']');\n return array; // empty array\n }\n while (ch) {\n array.push(value());\n white();\n if (ch === ']') {\n next(']');\n return array;\n }\n next(',');\n white();\n }\n }\n error('Bad array');\n },\n object = function() {\n // Parse an object value.\n var key,\n object = {};\n\n if (ch === '{') {\n next('{');\n white();\n if (ch === '}') {\n next('}');\n return object; // empty object\n }\n while (ch) {\n key = string();\n white();\n next(':');\n if (Object.hasOwnProperty.call(object, key)) {\n error('Duplicate key \"' + key + '\"');\n }\n object[key] = value();\n white();\n if (ch === '}') {\n next('}');\n return object;\n }\n next(',');\n white();\n }\n }\n error('Bad object');\n };\n\n value = function() {\n // Parse a JSON value. It could be an object, an array, a string,\n // a number, or a word.\n white();\n switch (ch) {\n case '{':\n return object();\n case '[':\n return array();\n case '\"':\n return string();\n case '-':\n return number();\n default:\n return ch >= '0' && ch <= '9' ? number() : word();\n }\n };\n\n // Return the json_parse function. It will have access to all of the\n // above functions and variables.\n return function(source) {\n var result;\n\n text = source;\n at = 0;\n ch = ' ';\n result = value();\n white();\n if (ch) {\n error('Syntax error');\n }\n\n return result;\n };\n})();\n\n_.base64Encode = function(data) {\n var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var o1, o2, o3, h1, h2, h3, h4, bits, i = 0,\n ac = 0,\n enc = '',\n tmp_arr = [];\n\n if (!data) {\n return data;\n }\n\n data = _.utf8Encode(data);\n\n do { // pack three octets into four hexets\n o1 = data.charCodeAt(i++);\n o2 = data.charCodeAt(i++);\n o3 = data.charCodeAt(i++);\n\n bits = o1 << 16 | o2 << 8 | o3;\n\n h1 = bits >> 18 & 0x3f;\n h2 = bits >> 12 & 0x3f;\n h3 = bits >> 6 & 0x3f;\n h4 = bits & 0x3f;\n\n // use hexets to index into b64, and append result to encoded string\n tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);\n } while (i < data.length);\n\n enc = tmp_arr.join('');\n\n switch (data.length % 3) {\n case 1:\n enc = enc.slice(0, -2) + '==';\n break;\n case 2:\n enc = enc.slice(0, -1) + '=';\n break;\n }\n\n return enc;\n};\n\n_.utf8Encode = function(string) {\n string = (string + '').replace(/\\r\\n/g, '\\n').replace(/\\r/g, '\\n');\n\n var utftext = '',\n start,\n end;\n var stringl = 0,\n n;\n\n start = end = 0;\n stringl = string.length;\n\n for (n = 0; n < stringl; n++) {\n var c1 = string.charCodeAt(n);\n var enc = null;\n\n if (c1 < 128) {\n end++;\n } else if ((c1 > 127) && (c1 < 2048)) {\n enc = String.fromCharCode((c1 >> 6) | 192, (c1 & 63) | 128);\n } else {\n enc = String.fromCharCode((c1 >> 12) | 224, ((c1 >> 6) & 63) | 128, (c1 & 63) | 128);\n }\n if (enc !== null) {\n if (end > start) {\n utftext += string.substring(start, end);\n }\n utftext += enc;\n start = end = n + 1;\n }\n }\n\n if (end > start) {\n utftext += string.substring(start, string.length);\n }\n\n return utftext;\n};\n\n_.UUID = (function() {\n\n // Time-based entropy\n var T = function() {\n var time = 1 * new Date(); // cross-browser version of Date.now()\n var ticks;\n if (win.performance && win.performance.now) {\n ticks = win.performance.now();\n } else {\n // fall back to busy loop\n ticks = 0;\n\n // this while loop figures how many browser ticks go by\n // before 1*new Date() returns a new number, ie the amount\n // of ticks that go by per millisecond\n while (time == 1 * new Date()) {\n ticks++;\n }\n }\n return time.toString(16) + Math.floor(ticks).toString(16);\n };\n\n // Math.Random entropy\n var R = function() {\n return Math.random().toString(16).replace('.', '');\n };\n\n // User agent entropy\n // This function takes the user agent string, and then xors\n // together each sequence of 8 bytes. This produces a final\n // sequence of 8 bytes which it returns as hex.\n var UA = function() {\n var ua = userAgent,\n i, ch, buffer = [],\n ret = 0;\n\n function xor(result, byte_array) {\n var j, tmp = 0;\n for (j = 0; j < byte_array.length; j++) {\n tmp |= (buffer[j] << j * 8);\n }\n return result ^ tmp;\n }\n\n for (i = 0; i < ua.length; i++) {\n ch = ua.charCodeAt(i);\n buffer.unshift(ch & 0xFF);\n if (buffer.length >= 4) {\n ret = xor(ret, buffer);\n buffer = [];\n }\n }\n\n if (buffer.length > 0) {\n ret = xor(ret, buffer);\n }\n\n return ret.toString(16);\n };\n\n return function() {\n var se = (screen.height * screen.width).toString(16);\n return (T() + '-' + R() + '-' + UA() + '-' + se + '-' + T());\n };\n})();\n\n// _.isBlockedUA()\n// This is to block various web spiders from executing our JS and\n// sending false tracking data\nvar BLOCKED_UA_STRS = [\n 'ahrefsbot',\n 'ahrefssiteaudit',\n 'baiduspider',\n 'bingbot',\n 'bingpreview',\n 'chrome-lighthouse',\n 'facebookexternal',\n 'petalbot',\n 'pinterest',\n 'screaming frog',\n 'yahoo! slurp',\n 'yandexbot',\n\n // a whole bunch of goog-specific crawlers\n // https://developers.google.com/search/docs/advanced/crawling/overview-google-crawlers\n 'adsbot-google',\n 'apis-google',\n 'duplexweb-google',\n 'feedfetcher-google',\n 'google favicon',\n 'google web preview',\n 'google-read-aloud',\n 'googlebot',\n 'googleweblight',\n 'mediapartners-google',\n 'storebot-google'\n];\n_.isBlockedUA = function(ua) {\n var i;\n ua = ua.toLowerCase();\n for (i = 0; i < BLOCKED_UA_STRS.length; i++) {\n if (ua.indexOf(BLOCKED_UA_STRS[i]) !== -1) {\n return true;\n }\n }\n return false;\n};\n\n/**\n * @param {Object=} formdata\n * @param {string=} arg_separator\n */\n_.HTTPBuildQuery = function(formdata, arg_separator) {\n var use_val, use_key, tmp_arr = [];\n\n if (_.isUndefined(arg_separator)) {\n arg_separator = '&';\n }\n\n _.each(formdata, function(val, key) {\n use_val = encodeURIComponent(val.toString());\n use_key = encodeURIComponent(key);\n tmp_arr[tmp_arr.length] = use_key + '=' + use_val;\n });\n\n return tmp_arr.join(arg_separator);\n};\n\n_.getQueryParam = function(url, param) {\n // Expects a raw URL\n\n param = param.replace(/[[]/g, '\\\\[').replace(/[\\]]/g, '\\\\]');\n var regexS = '[\\\\?&]' + param + '=([^&#]*)',\n regex = new RegExp(regexS),\n results = regex.exec(url);\n if (results === null || (results && typeof(results[1]) !== 'string' && results[1].length)) {\n return '';\n } else {\n var result = results[1];\n try {\n result = decodeURIComponent(result);\n } catch(err) {\n console$1.error('Skipping decoding for malformed query param: ' + result);\n }\n return result.replace(/\\+/g, ' ');\n }\n};\n\n\n// _.cookie\n// Methods partially borrowed from quirksmode.org/js/cookies.html\n_.cookie = {\n get: function(name) {\n var nameEQ = name + '=';\n var ca = document$1.cookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1, c.length);\n }\n if (c.indexOf(nameEQ) === 0) {\n return decodeURIComponent(c.substring(nameEQ.length, c.length));\n }\n }\n return null;\n },\n\n parse: function(name) {\n var cookie;\n try {\n cookie = _.JSONDecode(_.cookie.get(name)) || {};\n } catch (err) {\n // noop\n }\n return cookie;\n },\n\n set_seconds: function(name, value, seconds, is_cross_subdomain, is_secure, is_cross_site, domain_override) {\n var cdomain = '',\n expires = '',\n secure = '';\n\n if (domain_override) {\n cdomain = '; domain=' + domain_override;\n } else if (is_cross_subdomain) {\n var domain = extract_domain(document$1.location.hostname);\n cdomain = domain ? '; domain=.' + domain : '';\n }\n\n if (seconds) {\n var date = new Date();\n date.setTime(date.getTime() + (seconds * 1000));\n expires = '; expires=' + date.toGMTString();\n }\n\n if (is_cross_site) {\n is_secure = true;\n secure = '; SameSite=None';\n }\n if (is_secure) {\n secure += '; secure';\n }\n\n document$1.cookie = name + '=' + encodeURIComponent(value) + expires + '; path=/' + cdomain + secure;\n },\n\n set: function(name, value, days, is_cross_subdomain, is_secure, is_cross_site, domain_override) {\n var cdomain = '', expires = '', secure = '';\n\n if (domain_override) {\n cdomain = '; domain=' + domain_override;\n } else if (is_cross_subdomain) {\n var domain = extract_domain(document$1.location.hostname);\n cdomain = domain ? '; domain=.' + domain : '';\n }\n\n if (days) {\n var date = new Date();\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\n expires = '; expires=' + date.toGMTString();\n }\n\n if (is_cross_site) {\n is_secure = true;\n secure = '; SameSite=None';\n }\n if (is_secure) {\n secure += '; secure';\n }\n\n var new_cookie_val = name + '=' + encodeURIComponent(value) + expires + '; path=/' + cdomain + secure;\n document$1.cookie = new_cookie_val;\n return new_cookie_val;\n },\n\n remove: function(name, is_cross_subdomain, domain_override) {\n _.cookie.set(name, '', -1, is_cross_subdomain, false, false, domain_override);\n }\n};\n\nvar _localStorageSupported = null;\nvar localStorageSupported = function(storage, forceCheck) {\n if (_localStorageSupported !== null && !forceCheck) {\n return _localStorageSupported;\n }\n\n var supported = true;\n try {\n storage = storage || window.localStorage;\n var key = '__mplss_' + cheap_guid(8),\n val = 'xyz';\n storage.setItem(key, val);\n if (storage.getItem(key) !== val) {\n supported = false;\n }\n storage.removeItem(key);\n } catch (err) {\n supported = false;\n }\n\n _localStorageSupported = supported;\n return supported;\n};\n\n// _.localStorage\n_.localStorage = {\n is_supported: function(force_check) {\n var supported = localStorageSupported(null, force_check);\n if (!supported) {\n console$1.error('localStorage unsupported; falling back to cookie store');\n }\n return supported;\n },\n\n error: function(msg) {\n console$1.error('localStorage error: ' + msg);\n },\n\n get: function(name) {\n try {\n return window.localStorage.getItem(name);\n } catch (err) {\n _.localStorage.error(err);\n }\n return null;\n },\n\n parse: function(name) {\n try {\n return _.JSONDecode(_.localStorage.get(name)) || {};\n } catch (err) {\n // noop\n }\n return null;\n },\n\n set: function(name, value) {\n try {\n window.localStorage.setItem(name, value);\n } catch (err) {\n _.localStorage.error(err);\n }\n },\n\n remove: function(name) {\n try {\n window.localStorage.removeItem(name);\n } catch (err) {\n _.localStorage.error(err);\n }\n }\n};\n\n_.register_event = (function() {\n // written by Dean Edwards, 2005\n // with input from Tino Zijdel - crisp@xs4all.nl\n // with input from Carl Sverre - mail@carlsverre.com\n // with input from Mixpanel\n // http://dean.edwards.name/weblog/2005/10/add-event/\n // https://gist.github.com/1930440\n\n /**\n * @param {Object} element\n * @param {string} type\n * @param {function(...*)} handler\n * @param {boolean=} oldSchool\n * @param {boolean=} useCapture\n */\n var register_event = function(element, type, handler, oldSchool, useCapture) {\n if (!element) {\n console$1.error('No valid element provided to register_event');\n return;\n }\n\n if (element.addEventListener && !oldSchool) {\n element.addEventListener(type, handler, !!useCapture);\n } else {\n var ontype = 'on' + type;\n var old_handler = element[ontype]; // can be undefined\n element[ontype] = makeHandler(element, handler, old_handler);\n }\n };\n\n function makeHandler(element, new_handler, old_handlers) {\n var handler = function(event) {\n event = event || fixEvent(window.event);\n\n // this basically happens in firefox whenever another script\n // overwrites the onload callback and doesn't pass the event\n // object to previously defined callbacks. All the browsers\n // that don't define window.event implement addEventListener\n // so the dom_loaded handler will still be fired as usual.\n if (!event) {\n return undefined;\n }\n\n var ret = true;\n var old_result, new_result;\n\n if (_.isFunction(old_handlers)) {\n old_result = old_handlers(event);\n }\n new_result = new_handler.call(element, event);\n\n if ((false === old_result) || (false === new_result)) {\n ret = false;\n }\n\n return ret;\n };\n\n return handler;\n }\n\n function fixEvent(event) {\n if (event) {\n event.preventDefault = fixEvent.preventDefault;\n event.stopPropagation = fixEvent.stopPropagation;\n }\n return event;\n }\n fixEvent.preventDefault = function() {\n this.returnValue = false;\n };\n fixEvent.stopPropagation = function() {\n this.cancelBubble = true;\n };\n\n return register_event;\n})();\n\n\nvar TOKEN_MATCH_REGEX = new RegExp('^(\\\\w*)\\\\[(\\\\w+)([=~\\\\|\\\\^\\\\$\\\\*]?)=?\"?([^\\\\]\"]*)\"?\\\\]$');\n\n_.dom_query = (function() {\n /* document.getElementsBySelector(selector)\n - returns an array of element objects from the current document\n matching the CSS selector. Selectors can contain element names,\n class names and ids and can be nested. For example:\n\n elements = document.getElementsBySelector('div#main p a.external')\n\n Will return an array of all 'a' elements with 'external' in their\n class attribute that are contained inside 'p' elements that are\n contained inside the 'div' element which has id=\"main\"\n\n New in version 0.4: Support for CSS2 and CSS3 attribute selectors:\n See http://www.w3.org/TR/css3-selectors/#attribute-selectors\n\n Version 0.4 - Simon Willison, March 25th 2003\n -- Works in Phoenix 0.5, Mozilla 1.3, Opera 7, Internet Explorer 6, Internet Explorer 5 on Windows\n -- Opera 7 fails\n\n Version 0.5 - Carl Sverre, Jan 7th 2013\n -- Now uses jQuery-esque `hasClass` for testing class name\n equality. This fixes a bug related to '-' characters being\n considered not part of a 'word' in regex.\n */\n\n function getAllChildren(e) {\n // Returns all children of element. Workaround required for IE5/Windows. Ugh.\n return e.all ? e.all : e.getElementsByTagName('*');\n }\n\n var bad_whitespace = /[\\t\\r\\n]/g;\n\n function hasClass(elem, selector) {\n var className = ' ' + selector + ' ';\n return ((' ' + elem.className + ' ').replace(bad_whitespace, ' ').indexOf(className) >= 0);\n }\n\n function getElementsBySelector(selector) {\n // Attempt to fail gracefully in lesser browsers\n if (!document$1.getElementsByTagName) {\n return [];\n }\n // Split selector in to tokens\n var tokens = selector.split(' ');\n var token, bits, tagName, found, foundCount, i, j, k, elements, currentContextIndex;\n var currentContext = [document$1];\n for (i = 0; i < tokens.length; i++) {\n token = tokens[i].replace(/^\\s+/, '').replace(/\\s+$/, '');\n if (token.indexOf('#') > -1) {\n // Token is an ID selector\n bits = token.split('#');\n tagName = bits[0];\n var id = bits[1];\n var element = document$1.getElementById(id);\n if (!element || (tagName && element.nodeName.toLowerCase() != tagName)) {\n // element not found or tag with that ID not found, return false\n return [];\n }\n // Set currentContext to contain just this element\n currentContext = [element];\n continue; // Skip to next token\n }\n if (token.indexOf('.') > -1) {\n // Token contains a class selector\n bits = token.split('.');\n tagName = bits[0];\n var className = bits[1];\n if (!tagName) {\n tagName = '*';\n }\n // Get elements matching tag, filter them for class selector\n found = [];\n foundCount = 0;\n for (j = 0; j < currentContext.length; j++) {\n if (tagName == '*') {\n elements = getAllChildren(currentContext[j]);\n } else {\n elements = currentContext[j].getElementsByTagName(tagName);\n }\n for (k = 0; k < elements.length; k++) {\n found[foundCount++] = elements[k];\n }\n }\n currentContext = [];\n currentContextIndex = 0;\n for (j = 0; j < found.length; j++) {\n if (found[j].className &&\n _.isString(found[j].className) && // some SVG elements have classNames which are not strings\n hasClass(found[j], className)\n ) {\n currentContext[currentContextIndex++] = found[j];\n }\n }\n continue; // Skip to next token\n }\n // Code to deal with attribute selectors\n var token_match = token.match(TOKEN_MATCH_REGEX);\n if (token_match) {\n tagName = token_match[1];\n var attrName = token_match[2];\n var attrOperator = token_match[3];\n var attrValue = token_match[4];\n if (!tagName) {\n tagName = '*';\n }\n // Grab all of the tagName elements within current context\n found = [];\n foundCount = 0;\n for (j = 0; j < currentContext.length; j++) {\n if (tagName == '*') {\n elements = getAllChildren(currentContext[j]);\n } else {\n elements = currentContext[j].getElementsByTagName(tagName);\n }\n for (k = 0; k < elements.length; k++) {\n found[foundCount++] = elements[k];\n }\n }\n currentContext = [];\n currentContextIndex = 0;\n var checkFunction; // This function will be used to filter the elements\n switch (attrOperator) {\n case '=': // Equality\n checkFunction = function(e) {\n return (e.getAttribute(attrName) == attrValue);\n };\n break;\n case '~': // Match one of space seperated words\n checkFunction = function(e) {\n return (e.getAttribute(attrName).match(new RegExp('\\\\b' + attrValue + '\\\\b')));\n };\n break;\n case '|': // Match start with value followed by optional hyphen\n checkFunction = function(e) {\n return (e.getAttribute(attrName).match(new RegExp('^' + attrValue + '-?')));\n };\n break;\n case '^': // Match starts with value\n checkFunction = function(e) {\n return (e.getAttribute(attrName).indexOf(attrValue) === 0);\n };\n break;\n case '$': // Match ends with value - fails with \"Warning\" in Opera 7\n checkFunction = function(e) {\n return (e.getAttribute(attrName).lastIndexOf(attrValue) == e.getAttribute(attrName).length - attrValue.length);\n };\n break;\n case '*': // Match ends with value\n checkFunction = function(e) {\n return (e.getAttribute(attrName).indexOf(attrValue) > -1);\n };\n break;\n default:\n // Just test for existence of attribute\n checkFunction = function(e) {\n return e.getAttribute(attrName);\n };\n }\n currentContext = [];\n currentContextIndex = 0;\n for (j = 0; j < found.length; j++) {\n if (checkFunction(found[j])) {\n currentContext[currentContextIndex++] = found[j];\n }\n }\n // alert('Attribute Selector: '+tagName+' '+attrName+' '+attrOperator+' '+attrValue);\n continue; // Skip to next token\n }\n // If we get here, token is JUST an element (not a class or ID selector)\n tagName = token;\n found = [];\n foundCount = 0;\n for (j = 0; j < currentContext.length; j++) {\n elements = currentContext[j].getElementsByTagName(tagName);\n for (k = 0; k < elements.length; k++) {\n found[foundCount++] = elements[k];\n }\n }\n currentContext = found;\n }\n return currentContext;\n }\n\n return function(query) {\n if (_.isElement(query)) {\n return [query];\n } else if (_.isObject(query) && !_.isUndefined(query.length)) {\n return query;\n } else {\n return getElementsBySelector.call(this, query);\n }\n };\n})();\n\nvar CAMPAIGN_KEYWORDS = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_content', 'utm_term', 'utm_id', 'utm_source_platform','utm_campaign_id', 'utm_creative_format', 'utm_marketing_tactic'];\nvar CLICK_IDS = ['dclid', 'fbclid', 'gclid', 'ko_click_id', 'li_fat_id', 'msclkid', 'sccid', 'ttclid', 'twclid', 'wbraid'];\n\n_.info = {\n campaignParams: function(default_value) {\n var kw = '',\n params = {};\n _.each(CAMPAIGN_KEYWORDS, function(kwkey) {\n kw = _.getQueryParam(document$1.URL, kwkey);\n if (kw.length) {\n params[kwkey] = kw;\n } else if (default_value !== undefined) {\n params[kwkey] = default_value;\n }\n });\n\n return params;\n },\n\n clickParams: function() {\n var id = '',\n params = {};\n _.each(CLICK_IDS, function(idkey) {\n id = _.getQueryParam(document$1.URL, idkey);\n if (id.length) {\n params[idkey] = id;\n }\n });\n\n return params;\n },\n\n marketingParams: function() {\n return _.extend(_.info.campaignParams(), _.info.clickParams());\n },\n\n searchEngine: function(referrer) {\n if (referrer.search('https?://(.*)google.([^/?]*)') === 0) {\n return 'google';\n } else if (referrer.search('https?://(.*)bing.com') === 0) {\n return 'bing';\n } else if (referrer.search('https?://(.*)yahoo.com') === 0) {\n return 'yahoo';\n } else if (referrer.search('https?://(.*)duckduckgo.com') === 0) {\n return 'duckduckgo';\n } else {\n return null;\n }\n },\n\n searchInfo: function(referrer) {\n var search = _.info.searchEngine(referrer),\n param = (search != 'yahoo') ? 'q' : 'p',\n ret = {};\n\n if (search !== null) {\n ret['$search_engine'] = search;\n\n var keyword = _.getQueryParam(referrer, param);\n if (keyword.length) {\n ret['mp_keyword'] = keyword;\n }\n }\n\n return ret;\n },\n\n /**\n * This function detects which browser is running this script.\n * The order of the checks are important since many user agents\n * include key words used in later checks.\n */\n browser: function(user_agent, vendor, opera) {\n vendor = vendor || ''; // vendor is undefined for at least IE9\n if (opera || _.includes(user_agent, ' OPR/')) {\n if (_.includes(user_agent, 'Mini')) {\n return 'Opera Mini';\n }\n return 'Opera';\n } else if (/(BlackBerry|PlayBook|BB10)/i.test(user_agent)) {\n return 'BlackBerry';\n } else if (_.includes(user_agent, 'IEMobile') || _.includes(user_agent, 'WPDesktop')) {\n return 'Internet Explorer Mobile';\n } else if (_.includes(user_agent, 'SamsungBrowser/')) {\n // https://developer.samsung.com/internet/user-agent-string-format\n return 'Samsung Internet';\n } else if (_.includes(user_agent, 'Edge') || _.includes(user_agent, 'Edg/')) {\n return 'Microsoft Edge';\n } else if (_.includes(user_agent, 'FBIOS')) {\n return 'Facebook Mobile';\n } else if (_.includes(user_agent, 'Chrome')) {\n return 'Chrome';\n } else if (_.includes(user_agent, 'CriOS')) {\n return 'Chrome iOS';\n } else if (_.includes(user_agent, 'UCWEB') || _.includes(user_agent, 'UCBrowser')) {\n return 'UC Browser';\n } else if (_.includes(user_agent, 'FxiOS')) {\n return 'Firefox iOS';\n } else if (_.includes(vendor, 'Apple')) {\n if (_.includes(user_agent, 'Mobile')) {\n return 'Mobile Safari';\n }\n return 'Safari';\n } else if (_.includes(user_agent, 'Android')) {\n return 'Android Mobile';\n } else if (_.includes(user_agent, 'Konqueror')) {\n return 'Konqueror';\n } else if (_.includes(user_agent, 'Firefox')) {\n return 'Firefox';\n } else if (_.includes(user_agent, 'MSIE') || _.includes(user_agent, 'Trident/')) {\n return 'Internet Explorer';\n } else if (_.includes(user_agent, 'Gecko')) {\n return 'Mozilla';\n } else {\n return '';\n }\n },\n\n /**\n * This function detects which browser version is running this script,\n * parsing major and minor version (e.g., 42.1). User agent strings from:\n * http://www.useragentstring.com/pages/useragentstring.php\n */\n browserVersion: function(userAgent, vendor, opera) {\n var browser = _.info.browser(userAgent, vendor, opera);\n var versionRegexs = {\n 'Internet Explorer Mobile': /rv:(\\d+(\\.\\d+)?)/,\n 'Microsoft Edge': /Edge?\\/(\\d+(\\.\\d+)?)/,\n 'Chrome': /Chrome\\/(\\d+(\\.\\d+)?)/,\n 'Chrome iOS': /CriOS\\/(\\d+(\\.\\d+)?)/,\n 'UC Browser' : /(UCBrowser|UCWEB)\\/(\\d+(\\.\\d+)?)/,\n 'Safari': /Version\\/(\\d+(\\.\\d+)?)/,\n 'Mobile Safari': /Version\\/(\\d+(\\.\\d+)?)/,\n 'Opera': /(Opera|OPR)\\/(\\d+(\\.\\d+)?)/,\n 'Firefox': /Firefox\\/(\\d+(\\.\\d+)?)/,\n 'Firefox iOS': /FxiOS\\/(\\d+(\\.\\d+)?)/,\n 'Konqueror': /Konqueror:(\\d+(\\.\\d+)?)/,\n 'BlackBerry': /BlackBerry (\\d+(\\.\\d+)?)/,\n 'Android Mobile': /android\\s(\\d+(\\.\\d+)?)/,\n 'Samsung Internet': /SamsungBrowser\\/(\\d+(\\.\\d+)?)/,\n 'Internet Explorer': /(rv:|MSIE )(\\d+(\\.\\d+)?)/,\n 'Mozilla': /rv:(\\d+(\\.\\d+)?)/\n };\n var regex = versionRegexs[browser];\n if (regex === undefined) {\n return null;\n }\n var matches = userAgent.match(regex);\n if (!matches) {\n return null;\n }\n return parseFloat(matches[matches.length - 2]);\n },\n\n os: function() {\n var a = userAgent;\n if (/Windows/i.test(a)) {\n if (/Phone/.test(a) || /WPDesktop/.test(a)) {\n return 'Windows Phone';\n }\n return 'Windows';\n } else if (/(iPhone|iPad|iPod)/.test(a)) {\n return 'iOS';\n } else if (/Android/.test(a)) {\n return 'Android';\n } else if (/(BlackBerry|PlayBook|BB10)/i.test(a)) {\n return 'BlackBerry';\n } else if (/Mac/i.test(a)) {\n return 'Mac OS X';\n } else if (/Linux/.test(a)) {\n return 'Linux';\n } else if (/CrOS/.test(a)) {\n return 'Chrome OS';\n } else {\n return '';\n }\n },\n\n device: function(user_agent) {\n if (/Windows Phone/i.test(user_agent) || /WPDesktop/.test(user_agent)) {\n return 'Windows Phone';\n } else if (/iPad/.test(user_agent)) {\n return 'iPad';\n } else if (/iPod/.test(user_agent)) {\n return 'iPod Touch';\n } else if (/iPhone/.test(user_agent)) {\n return 'iPhone';\n } else if (/(BlackBerry|PlayBook|BB10)/i.test(user_agent)) {\n return 'BlackBerry';\n } else if (/Android/.test(user_agent)) {\n return 'Android';\n } else {\n return '';\n }\n },\n\n referringDomain: function(referrer) {\n var split = referrer.split('/');\n if (split.length >= 3) {\n return split[2];\n }\n return '';\n },\n\n currentUrl: function() {\n return win.location.href;\n },\n\n properties: function(extra_props) {\n if (typeof extra_props !== 'object') {\n extra_props = {};\n }\n return _.extend(_.strip_empty_properties({\n '$os': _.info.os(),\n '$browser': _.info.browser(userAgent, navigator.vendor, windowOpera),\n '$referrer': document$1.referrer,\n '$referring_domain': _.info.referringDomain(document$1.referrer),\n '$device': _.info.device(userAgent)\n }), {\n '$current_url': _.info.currentUrl(),\n '$browser_version': _.info.browserVersion(userAgent, navigator.vendor, windowOpera),\n '$screen_height': screen.height,\n '$screen_width': screen.width,\n 'mp_lib': 'web',\n '$lib_version': Config.LIB_VERSION,\n '$insert_id': cheap_guid(),\n 'time': _.timestamp() / 1000 // epoch time in seconds\n }, _.strip_empty_properties(extra_props));\n },\n\n people_properties: function() {\n return _.extend(_.strip_empty_properties({\n '$os': _.info.os(),\n '$browser': _.info.browser(userAgent, navigator.vendor, windowOpera)\n }), {\n '$browser_version': _.info.browserVersion(userAgent, navigator.vendor, windowOpera)\n });\n },\n\n mpPageViewProperties: function() {\n return _.strip_empty_properties({\n 'current_page_title': document$1.title,\n 'current_domain': win.location.hostname,\n 'current_url_path': win.location.pathname,\n 'current_url_protocol': win.location.protocol,\n 'current_url_search': win.location.search\n });\n }\n};\n\nvar cheap_guid = function(maxlen) {\n var guid = Math.random().toString(36).substring(2, 10) + Math.random().toString(36).substring(2, 10);\n return maxlen ? guid.substring(0, maxlen) : guid;\n};\n\n// naive way to extract domain name (example.com) from full hostname (my.sub.example.com)\nvar SIMPLE_DOMAIN_MATCH_REGEX = /[a-z0-9][a-z0-9-]*\\.[a-z]+$/i;\n// this next one attempts to account for some ccSLDs, e.g. extracting oxford.ac.uk from www.oxford.ac.uk\nvar DOMAIN_MATCH_REGEX = /[a-z0-9][a-z0-9-]+\\.[a-z.]{2,6}$/i;\n/**\n * Attempts to extract main domain name from full hostname, using a few blunt heuristics. For\n * common TLDs like .com/.org that always have a simple SLD.TLD structure (example.com), we\n * simply extract the last two .-separated parts of the hostname (SIMPLE_DOMAIN_MATCH_REGEX).\n * For others, we attempt to account for short ccSLD+TLD combos (.ac.uk) with the legacy\n * DOMAIN_MATCH_REGEX (kept to maintain backwards compatibility with existing Mixpanel\n * integrations). The only _reliable_ way to extract domain from hostname is with an up-to-date\n * list like at https://publicsuffix.org/ so for cases that this helper fails at, the SDK\n * offers the 'cookie_domain' config option to set it explicitly.\n * @example\n * extract_domain('my.sub.example.com')\n * // 'example.com'\n */\nvar extract_domain = function(hostname) {\n var domain_regex = DOMAIN_MATCH_REGEX;\n var parts = hostname.split('.');\n var tld = parts[parts.length - 1];\n if (tld.length > 4 || tld === 'com' || tld === 'org') {\n domain_regex = SIMPLE_DOMAIN_MATCH_REGEX;\n }\n var matches = hostname.match(domain_regex);\n return matches ? matches[0] : '';\n};\n\n/**\n * Check whether we have network connection. default to true for browsers that don't support navigator.onLine (IE)\n * @returns {boolean}\n */\nvar isOnline = function() {\n var onLine = win.navigator['onLine'];\n return _.isUndefined(onLine) || onLine;\n};\n\nvar JSONStringify = null, JSONParse = null;\nif (typeof JSON !== 'undefined') {\n JSONStringify = JSON.stringify;\n JSONParse = JSON.parse;\n}\nJSONStringify = JSONStringify || _.JSONEncode;\nJSONParse = JSONParse || _.JSONDecode;\n\n// EXPORTS (for closure compiler)\n_['toArray'] = _.toArray;\n_['isObject'] = _.isObject;\n_['JSONEncode'] = _.JSONEncode;\n_['JSONDecode'] = _.JSONDecode;\n_['isBlockedUA'] = _.isBlockedUA;\n_['isEmptyObject'] = _.isEmptyObject;\n_['info'] = _.info;\n_['info']['device'] = _.info.device;\n_['info']['browser'] = _.info.browser;\n_['info']['browserVersion'] = _.info.browserVersion;\n_['info']['properties'] = _.info.properties;\n\n/**\n * GDPR utils\n *\n * The General Data Protection Regulation (GDPR) is a regulation in EU law on data protection\n * and privacy for all individuals within the European Union. It addresses the export of personal\n * data outside the EU. The GDPR aims primarily to give control back to citizens and residents\n * over their personal data and to simplify the regulatory environment for international business\n * by unifying the regulation within the EU.\n *\n * This set of utilities is intended to enable opt in/out functionality in the Mixpanel JS SDK.\n * These functions are used internally by the SDK and are not intended to be publicly exposed.\n */\n\n/**\n * A function used to track a Mixpanel event (e.g. MixpanelLib.track)\n * @callback trackFunction\n * @param {String} event_name The name of the event. This can be anything the user does - 'Button Click', 'Sign Up', 'Item Purchased', etc.\n * @param {Object} [properties] A set of properties to include with the event you're sending. These describe the user who did the event or details about the event itself.\n * @param {Function} [callback] If provided, the callback function will be called after tracking the event.\n */\n\n/** Public **/\n\nvar GDPR_DEFAULT_PERSISTENCE_PREFIX = '__mp_opt_in_out_';\n\n/**\n * Opt the user in to data tracking and cookies/localstorage for the given token\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {trackFunction} [options.track] - function used for tracking a Mixpanel event to record the opt-in action\n * @param {string} [options.trackEventName] - event name to be used for tracking the opt-in action\n * @param {Object} [options.trackProperties] - set of properties to be tracked along with the opt-in action\n * @param {string} [options.persistenceType] Persistence mechanism used - cookie or localStorage\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookieExpiration] - number of days until the opt-in cookie expires\n * @param {string} [options.cookieDomain] - custom cookie domain\n * @param {boolean} [options.crossSiteCookie] - whether the opt-in cookie is set as cross-site-enabled\n * @param {boolean} [options.crossSubdomainCookie] - whether the opt-in cookie is set as cross-subdomain or not\n * @param {boolean} [options.secureCookie] - whether the opt-in cookie is set as secure or not\n */\nfunction optIn(token, options) {\n _optInOut(true, token, options);\n}\n\n/**\n * Opt the user out of data tracking and cookies/localstorage for the given token\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {string} [options.persistenceType] Persistence mechanism used - cookie or localStorage\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookieExpiration] - number of days until the opt-out cookie expires\n * @param {string} [options.cookieDomain] - custom cookie domain\n * @param {boolean} [options.crossSiteCookie] - whether the opt-in cookie is set as cross-site-enabled\n * @param {boolean} [options.crossSubdomainCookie] - whether the opt-out cookie is set as cross-subdomain or not\n * @param {boolean} [options.secureCookie] - whether the opt-out cookie is set as secure or not\n */\nfunction optOut(token, options) {\n _optInOut(false, token, options);\n}\n\n/**\n * Check whether the user has opted in to data tracking and cookies/localstorage for the given token\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {string} [options.persistenceType] Persistence mechanism used - cookie or localStorage\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @returns {boolean} whether the user has opted in to the given opt type\n */\nfunction hasOptedIn(token, options) {\n return _getStorageValue(token, options) === '1';\n}\n\n/**\n * Check whether the user has opted out of data tracking and cookies/localstorage for the given token\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {string} [options.persistenceType] Persistence mechanism used - cookie or localStorage\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @param {boolean} [options.ignoreDnt] - flag to ignore browser DNT settings and always return false\n * @returns {boolean} whether the user has opted out of the given opt type\n */\nfunction hasOptedOut(token, options) {\n if (_hasDoNotTrackFlagOn(options)) {\n console$1.warn('This browser has \"Do Not Track\" enabled. This will prevent the Mixpanel SDK from sending any data. To ignore the \"Do Not Track\" browser setting, initialize the Mixpanel instance with the config \"ignore_dnt: true\"');\n return true;\n }\n var optedOut = _getStorageValue(token, options) === '0';\n if (optedOut) {\n console$1.warn('You are opted out of Mixpanel tracking. This will prevent the Mixpanel SDK from sending any data.');\n }\n return optedOut;\n}\n\n/**\n * Wrap a MixpanelLib method with a check for whether the user is opted out of data tracking and cookies/localstorage for the given token\n * If the user has opted out, return early instead of executing the method.\n * If a callback argument was provided, execute it passing the 0 error code.\n * @param {function} method - wrapped method to be executed if the user has not opted out\n * @returns {*} the result of executing method OR undefined if the user has opted out\n */\nfunction addOptOutCheckMixpanelLib(method) {\n return _addOptOutCheck(method, function(name) {\n return this.get_config(name);\n });\n}\n\n/**\n * Wrap a MixpanelPeople method with a check for whether the user is opted out of data tracking and cookies/localstorage for the given token\n * If the user has opted out, return early instead of executing the method.\n * If a callback argument was provided, execute it passing the 0 error code.\n * @param {function} method - wrapped method to be executed if the user has not opted out\n * @returns {*} the result of executing method OR undefined if the user has opted out\n */\nfunction addOptOutCheckMixpanelPeople(method) {\n return _addOptOutCheck(method, function(name) {\n return this._get_config(name);\n });\n}\n\n/**\n * Wrap a MixpanelGroup method with a check for whether the user is opted out of data tracking and cookies/localstorage for the given token\n * If the user has opted out, return early instead of executing the method.\n * If a callback argument was provided, execute it passing the 0 error code.\n * @param {function} method - wrapped method to be executed if the user has not opted out\n * @returns {*} the result of executing method OR undefined if the user has opted out\n */\nfunction addOptOutCheckMixpanelGroup(method) {\n return _addOptOutCheck(method, function(name) {\n return this._get_config(name);\n });\n}\n\n/**\n * Clear the user's opt in/out status of data tracking and cookies/localstorage for the given token\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {string} [options.persistenceType] Persistence mechanism used - cookie or localStorage\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookieExpiration] - number of days until the opt-in cookie expires\n * @param {string} [options.cookieDomain] - custom cookie domain\n * @param {boolean} [options.crossSiteCookie] - whether the opt-in cookie is set as cross-site-enabled\n * @param {boolean} [options.crossSubdomainCookie] - whether the opt-in cookie is set as cross-subdomain or not\n * @param {boolean} [options.secureCookie] - whether the opt-in cookie is set as secure or not\n */\nfunction clearOptInOut(token, options) {\n options = options || {};\n _getStorage(options).remove(\n _getStorageKey(token, options), !!options.crossSubdomainCookie, options.cookieDomain\n );\n}\n\n/** Private **/\n\n/**\n * Get storage util\n * @param {Object} [options]\n * @param {string} [options.persistenceType]\n * @returns {object} either _.cookie or _.localstorage\n */\nfunction _getStorage(options) {\n options = options || {};\n return options.persistenceType === 'localStorage' ? _.localStorage : _.cookie;\n}\n\n/**\n * Get the name of the cookie that is used for the given opt type (tracking, cookie, etc.)\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @returns {string} the name of the cookie for the given opt type\n */\nfunction _getStorageKey(token, options) {\n options = options || {};\n return (options.persistencePrefix || GDPR_DEFAULT_PERSISTENCE_PREFIX) + token;\n}\n\n/**\n * Get the value of the cookie that is used for the given opt type (tracking, cookie, etc.)\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @returns {string} the value of the cookie for the given opt type\n */\nfunction _getStorageValue(token, options) {\n return _getStorage(options).get(_getStorageKey(token, options));\n}\n\n/**\n * Check whether the user has set the DNT/doNotTrack setting to true in their browser\n * @param {Object} [options]\n * @param {string} [options.window] - alternate window object to check; used to force various DNT settings in browser tests\n * @param {boolean} [options.ignoreDnt] - flag to ignore browser DNT settings and always return false\n * @returns {boolean} whether the DNT setting is true\n */\nfunction _hasDoNotTrackFlagOn(options) {\n if (options && options.ignoreDnt) {\n return false;\n }\n var win$1 = (options && options.window) || win;\n var nav = win$1['navigator'] || {};\n var hasDntOn = false;\n\n _.each([\n nav['doNotTrack'], // standard\n nav['msDoNotTrack'],\n win$1['doNotTrack']\n ], function(dntValue) {\n if (_.includes([true, 1, '1', 'yes'], dntValue)) {\n hasDntOn = true;\n }\n });\n\n return hasDntOn;\n}\n\n/**\n * Set cookie/localstorage for the user indicating that they are opted in or out for the given opt type\n * @param {boolean} optValue - whether to opt the user in or out for the given opt type\n * @param {string} token - Mixpanel project tracking token\n * @param {Object} [options]\n * @param {trackFunction} [options.track] - function used for tracking a Mixpanel event to record the opt-in action\n * @param {string} [options.trackEventName] - event name to be used for tracking the opt-in action\n * @param {Object} [options.trackProperties] - set of properties to be tracked along with the opt-in action\n * @param {string} [options.persistencePrefix=__mp_opt_in_out] - custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookieExpiration] - number of days until the opt-in cookie expires\n * @param {string} [options.cookieDomain] - custom cookie domain\n * @param {boolean} [options.crossSiteCookie] - whether the opt-in cookie is set as cross-site-enabled\n * @param {boolean} [options.crossSubdomainCookie] - whether the opt-in cookie is set as cross-subdomain or not\n * @param {boolean} [options.secureCookie] - whether the opt-in cookie is set as secure or not\n */\nfunction _optInOut(optValue, token, options) {\n if (!_.isString(token) || !token.length) {\n console$1.error('gdpr.' + (optValue ? 'optIn' : 'optOut') + ' called with an invalid token');\n return;\n }\n\n options = options || {};\n\n _getStorage(options).set(\n _getStorageKey(token, options),\n optValue ? 1 : 0,\n _.isNumber(options.cookieExpiration) ? options.cookieExpiration : null,\n !!options.crossSubdomainCookie,\n !!options.secureCookie,\n !!options.crossSiteCookie,\n options.cookieDomain\n );\n\n if (options.track && optValue) { // only track event if opting in (optValue=true)\n options.track(options.trackEventName || '$opt_in', options.trackProperties, {\n 'send_immediately': true\n });\n }\n}\n\n/**\n * Wrap a method with a check for whether the user is opted out of data tracking and cookies/localstorage for the given token\n * If the user has opted out, return early instead of executing the method.\n * If a callback argument was provided, execute it passing the 0 error code.\n * @param {function} method - wrapped method to be executed if the user has not opted out\n * @param {function} getConfigValue - getter function for the Mixpanel API token and other options to be used with opt-out check\n * @returns {*} the result of executing method OR undefined if the user has opted out\n */\nfunction _addOptOutCheck(method, getConfigValue) {\n return function() {\n var optedOut = false;\n\n try {\n var token = getConfigValue.call(this, 'token');\n var ignoreDnt = getConfigValue.call(this, 'ignore_dnt');\n var persistenceType = getConfigValue.call(this, 'opt_out_tracking_persistence_type');\n var persistencePrefix = getConfigValue.call(this, 'opt_out_tracking_cookie_prefix');\n var win = getConfigValue.call(this, 'window'); // used to override window during browser tests\n\n if (token) { // if there was an issue getting the token, continue method execution as normal\n optedOut = hasOptedOut(token, {\n ignoreDnt: ignoreDnt,\n persistenceType: persistenceType,\n persistencePrefix: persistencePrefix,\n window: win\n });\n }\n } catch(err) {\n console$1.error('Unexpected error when checking tracking opt-out status: ' + err);\n }\n\n if (!optedOut) {\n return method.apply(this, arguments);\n }\n\n var callback = arguments[arguments.length - 1];\n if (typeof(callback) === 'function') {\n callback(0);\n }\n\n return;\n };\n}\n\nvar logger$3 = console_with_prefix('lock');\n\n/**\n * SharedLock: a mutex built on HTML5 localStorage, to ensure that only one browser\n * window/tab at a time will be able to access shared resources.\n *\n * Based on the Alur and Taubenfeld fast lock\n * (http://www.cs.rochester.edu/research/synchronization/pseudocode/fastlock.html)\n * with an added timeout to ensure there will be eventual progress in the event\n * that a window is closed in the middle of the callback.\n *\n * Implementation based on the original version by David Wolever (https://github.com/wolever)\n * at https://gist.github.com/wolever/5fd7573d1ef6166e8f8c4af286a69432.\n *\n * @example\n * const myLock = new SharedLock('some-key');\n * myLock.withLock(function() {\n * console.log('I hold the mutex!');\n * });\n *\n * @constructor\n */\nvar SharedLock = function(key, options) {\n options = options || {};\n\n this.storageKey = key;\n this.storage = options.storage || window.localStorage;\n this.pollIntervalMS = options.pollIntervalMS || 100;\n this.timeoutMS = options.timeoutMS || 2000;\n};\n\n// pass in a specific pid to test contention scenarios; otherwise\n// it is chosen randomly for each acquisition attempt\nSharedLock.prototype.withLock = function(lockedCB, errorCB, pid) {\n if (!pid && typeof errorCB !== 'function') {\n pid = errorCB;\n errorCB = null;\n }\n\n var i = pid || (new Date().getTime() + '|' + Math.random());\n var startTime = new Date().getTime();\n\n var key = this.storageKey;\n var pollIntervalMS = this.pollIntervalMS;\n var timeoutMS = this.timeoutMS;\n var storage = this.storage;\n\n var keyX = key + ':X';\n var keyY = key + ':Y';\n var keyZ = key + ':Z';\n\n var reportError = function(err) {\n errorCB && errorCB(err);\n };\n\n var delay = function(cb) {\n if (new Date().getTime() - startTime > timeoutMS) {\n logger$3.error('Timeout waiting for mutex on ' + key + '; clearing lock. [' + i + ']');\n storage.removeItem(keyZ);\n storage.removeItem(keyY);\n loop();\n return;\n }\n setTimeout(function() {\n try {\n cb();\n } catch(err) {\n reportError(err);\n }\n }, pollIntervalMS * (Math.random() + 0.1));\n };\n\n var waitFor = function(predicate, cb) {\n if (predicate()) {\n cb();\n } else {\n delay(function() {\n waitFor(predicate, cb);\n });\n }\n };\n\n var getSetY = function() {\n var valY = storage.getItem(keyY);\n if (valY && valY !== i) { // if Y == i then this process already has the lock (useful for test cases)\n return false;\n } else {\n storage.setItem(keyY, i);\n if (storage.getItem(keyY) === i) {\n return true;\n } else {\n if (!localStorageSupported(storage, true)) {\n throw new Error('localStorage support dropped while acquiring lock');\n }\n return false;\n }\n }\n };\n\n var loop = function() {\n storage.setItem(keyX, i);\n\n waitFor(getSetY, function() {\n if (storage.getItem(keyX) === i) {\n criticalSection();\n return;\n }\n\n delay(function() {\n if (storage.getItem(keyY) !== i) {\n loop();\n return;\n }\n waitFor(function() {\n return !storage.getItem(keyZ);\n }, criticalSection);\n });\n });\n };\n\n var criticalSection = function() {\n storage.setItem(keyZ, '1');\n try {\n lockedCB();\n } finally {\n storage.removeItem(keyZ);\n if (storage.getItem(keyY) === i) {\n storage.removeItem(keyY);\n }\n if (storage.getItem(keyX) === i) {\n storage.removeItem(keyX);\n }\n }\n };\n\n try {\n if (localStorageSupported(storage, true)) {\n loop();\n } else {\n throw new Error('localStorage support check failed');\n }\n } catch(err) {\n reportError(err);\n }\n};\n\nvar logger$2 = console_with_prefix('batch');\n\n/**\n * RequestQueue: queue for batching API requests with localStorage backup for retries.\n * Maintains an in-memory queue which represents the source of truth for the current\n * page, but also writes all items out to a copy in the browser's localStorage, which\n * can be read on subsequent pageloads and retried. For batchability, all the request\n * items in the queue should be of the same type (events, people updates, group updates)\n * so they can be sent in a single request to the same API endpoint.\n *\n * LocalStorage keying and locking: In order for reloads and subsequent pageloads of\n * the same site to access the same persisted data, they must share the same localStorage\n * key (for instance based on project token and queue type). Therefore access to the\n * localStorage entry is guarded by an asynchronous mutex (SharedLock) to prevent\n * simultaneously open windows/tabs from overwriting each other's data (which would lead\n * to data loss in some situations).\n * @constructor\n */\nvar RequestQueue = function(storageKey, options) {\n options = options || {};\n this.storageKey = storageKey;\n this.storage = options.storage || window.localStorage;\n this.reportError = options.errorReporter || _.bind(logger$2.error, logger$2);\n this.lock = new SharedLock(storageKey, {storage: this.storage});\n\n this.usePersistence = options.usePersistence;\n this.pid = options.pid || null; // pass pid to test out storage lock contention scenarios\n\n this.memQueue = [];\n};\n\n/**\n * Add one item to queues (memory and localStorage). The queued entry includes\n * the given item along with an auto-generated ID and a \"flush-after\" timestamp.\n * It is expected that the item will be sent over the network and dequeued\n * before the flush-after time; if this doesn't happen it is considered orphaned\n * (e.g., the original tab where it was enqueued got closed before it could be\n * sent) and the item can be sent by any tab that finds it in localStorage.\n *\n * The final callback param is called with a param indicating success or\n * failure of the enqueue operation; it is asynchronous because the localStorage\n * lock is asynchronous.\n */\nRequestQueue.prototype.enqueue = function(item, flushInterval, cb) {\n var queueEntry = {\n 'id': cheap_guid(),\n 'flushAfter': new Date().getTime() + flushInterval * 2,\n 'payload': item\n };\n\n if (!this.usePersistence) {\n this.memQueue.push(queueEntry);\n if (cb) {\n cb(true);\n }\n } else {\n this.lock.withLock(_.bind(function lockAcquired() {\n var succeeded;\n try {\n var storedQueue = this.readFromStorage();\n storedQueue.push(queueEntry);\n succeeded = this.saveToStorage(storedQueue);\n if (succeeded) {\n // only add to in-memory queue when storage succeeds\n this.memQueue.push(queueEntry);\n }\n } catch(err) {\n this.reportError('Error enqueueing item', item);\n succeeded = false;\n }\n if (cb) {\n cb(succeeded);\n }\n }, this), _.bind(function lockFailure(err) {\n this.reportError('Error acquiring storage lock', err);\n if (cb) {\n cb(false);\n }\n }, this), this.pid);\n }\n};\n\n/**\n * Read out the given number of queue entries. If this.memQueue\n * has fewer than batchSize items, then look for \"orphaned\" items\n * in the persisted queue (items where the 'flushAfter' time has\n * already passed).\n */\nRequestQueue.prototype.fillBatch = function(batchSize) {\n var batch = this.memQueue.slice(0, batchSize);\n if (this.usePersistence && batch.length < batchSize) {\n // don't need lock just to read events; localStorage is thread-safe\n // and the worst that could happen is a duplicate send of some\n // orphaned events, which will be deduplicated on the server side\n var storedQueue = this.readFromStorage();\n if (storedQueue.length) {\n // item IDs already in batch; don't duplicate out of storage\n var idsInBatch = {}; // poor man's Set\n _.each(batch, function(item) { idsInBatch[item['id']] = true; });\n\n for (var i = 0; i < storedQueue.length; i++) {\n var item = storedQueue[i];\n if (new Date().getTime() > item['flushAfter'] && !idsInBatch[item['id']]) {\n item.orphaned = true;\n batch.push(item);\n if (batch.length >= batchSize) {\n break;\n }\n }\n }\n }\n }\n return batch;\n};\n\n/**\n * Remove items with matching 'id' from array (immutably)\n * also remove any item without a valid id (e.g., malformed\n * storage entries).\n */\nvar filterOutIDsAndInvalid = function(items, idSet) {\n var filteredItems = [];\n _.each(items, function(item) {\n if (item['id'] && !idSet[item['id']]) {\n filteredItems.push(item);\n }\n });\n return filteredItems;\n};\n\n/**\n * Remove items with matching IDs from both in-memory queue\n * and persisted queue\n */\nRequestQueue.prototype.removeItemsByID = function(ids, cb) {\n var idSet = {}; // poor man's Set\n _.each(ids, function(id) { idSet[id] = true; });\n\n this.memQueue = filterOutIDsAndInvalid(this.memQueue, idSet);\n if (!this.usePersistence) {\n if (cb) {\n cb(true);\n }\n } else {\n var removeFromStorage = _.bind(function() {\n var succeeded;\n try {\n var storedQueue = this.readFromStorage();\n storedQueue = filterOutIDsAndInvalid(storedQueue, idSet);\n succeeded = this.saveToStorage(storedQueue);\n\n // an extra check: did storage report success but somehow\n // the items are still there?\n if (succeeded) {\n storedQueue = this.readFromStorage();\n for (var i = 0; i < storedQueue.length; i++) {\n var item = storedQueue[i];\n if (item['id'] && !!idSet[item['id']]) {\n this.reportError('Item not removed from storage');\n return false;\n }\n }\n }\n } catch(err) {\n this.reportError('Error removing items', ids);\n succeeded = false;\n }\n return succeeded;\n }, this);\n\n this.lock.withLock(function lockAcquired() {\n var succeeded = removeFromStorage();\n if (cb) {\n cb(succeeded);\n }\n }, _.bind(function lockFailure(err) {\n var succeeded = false;\n this.reportError('Error acquiring storage lock', err);\n if (!localStorageSupported(this.storage, true)) {\n // Looks like localStorage writes have stopped working sometime after\n // initialization (probably full), and so nobody can acquire locks\n // anymore. Consider it temporarily safe to remove items without the\n // lock, since nobody's writing successfully anyway.\n succeeded = removeFromStorage();\n if (!succeeded) {\n // OK, we couldn't even write out the smaller queue. Try clearing it\n // entirely.\n try {\n this.storage.removeItem(this.storageKey);\n } catch(err) {\n this.reportError('Error clearing queue', err);\n }\n }\n }\n if (cb) {\n cb(succeeded);\n }\n }, this), this.pid);\n }\n\n};\n\n// internal helper for RequestQueue.updatePayloads\nvar updatePayloads = function(existingItems, itemsToUpdate) {\n var newItems = [];\n _.each(existingItems, function(item) {\n var id = item['id'];\n if (id in itemsToUpdate) {\n var newPayload = itemsToUpdate[id];\n if (newPayload !== null) {\n item['payload'] = newPayload;\n newItems.push(item);\n }\n } else {\n // no update\n newItems.push(item);\n }\n });\n return newItems;\n};\n\n/**\n * Update payloads of given items in both in-memory queue and\n * persisted queue. Items set to null are removed from queues.\n */\nRequestQueue.prototype.updatePayloads = function(itemsToUpdate, cb) {\n this.memQueue = updatePayloads(this.memQueue, itemsToUpdate);\n if (!this.usePersistence) {\n if (cb) {\n cb(true);\n }\n } else {\n this.lock.withLock(_.bind(function lockAcquired() {\n var succeeded;\n try {\n var storedQueue = this.readFromStorage();\n storedQueue = updatePayloads(storedQueue, itemsToUpdate);\n succeeded = this.saveToStorage(storedQueue);\n } catch(err) {\n this.reportError('Error updating items', itemsToUpdate);\n succeeded = false;\n }\n if (cb) {\n cb(succeeded);\n }\n }, this), _.bind(function lockFailure(err) {\n this.reportError('Error acquiring storage lock', err);\n if (cb) {\n cb(false);\n }\n }, this), this.pid);\n }\n\n};\n\n/**\n * Read and parse items array from localStorage entry, handling\n * malformed/missing data if necessary.\n */\nRequestQueue.prototype.readFromStorage = function() {\n var storageEntry;\n try {\n storageEntry = this.storage.getItem(this.storageKey);\n if (storageEntry) {\n storageEntry = JSONParse(storageEntry);\n if (!_.isArray(storageEntry)) {\n this.reportError('Invalid storage entry:', storageEntry);\n storageEntry = null;\n }\n }\n } catch (err) {\n this.reportError('Error retrieving queue', err);\n storageEntry = null;\n }\n return storageEntry || [];\n};\n\n/**\n * Serialize the given items array to localStorage.\n */\nRequestQueue.prototype.saveToStorage = function(queue) {\n try {\n this.storage.setItem(this.storageKey, JSONStringify(queue));\n return true;\n } catch (err) {\n this.reportError('Error saving queue', err);\n return false;\n }\n};\n\n/**\n * Clear out queues (memory and localStorage).\n */\nRequestQueue.prototype.clear = function() {\n this.memQueue = [];\n\n if (this.usePersistence) {\n this.storage.removeItem(this.storageKey);\n }\n};\n\n// maximum interval between request retries after exponential backoff\nvar MAX_RETRY_INTERVAL_MS = 10 * 60 * 1000; // 10 minutes\n\nvar logger$1 = console_with_prefix('batch');\n\n/**\n * RequestBatcher: manages the queueing, flushing, retry etc of requests of one\n * type (events, people, groups).\n * Uses RequestQueue to manage the backing store.\n * @constructor\n */\nvar RequestBatcher = function(storageKey, options) {\n this.errorReporter = options.errorReporter;\n this.queue = new RequestQueue(storageKey, {\n errorReporter: _.bind(this.reportError, this),\n storage: options.storage,\n usePersistence: options.usePersistence\n });\n\n this.libConfig = options.libConfig;\n this.sendRequest = options.sendRequestFunc;\n this.beforeSendHook = options.beforeSendHook;\n this.stopAllBatching = options.stopAllBatchingFunc;\n\n // seed variable batch size + flush interval with configured values\n this.batchSize = this.libConfig['batch_size'];\n this.flushInterval = this.libConfig['batch_flush_interval_ms'];\n\n this.stopped = !this.libConfig['batch_autostart'];\n this.consecutiveRemovalFailures = 0;\n\n // extra client-side dedupe\n this.itemIdsSentSuccessfully = {};\n\n // Make the flush occur at the interval specified by flushIntervalMs, default behavior will attempt consecutive flushes\n // as long as the queue is not empty. This is useful for high-frequency events like Session Replay where we might end up\n // in a request loop and get ratelimited by the server.\n this.flushOnlyOnInterval = options.flushOnlyOnInterval || false;\n};\n\n/**\n * Add one item to queue.\n */\nRequestBatcher.prototype.enqueue = function(item, cb) {\n this.queue.enqueue(item, this.flushInterval, cb);\n};\n\n/**\n * Start flushing batches at the configured time interval. Must call\n * this method upon SDK init in order to send anything over the network.\n */\nRequestBatcher.prototype.start = function() {\n this.stopped = false;\n this.consecutiveRemovalFailures = 0;\n this.flush();\n};\n\n/**\n * Stop flushing batches. Can be restarted by calling start().\n */\nRequestBatcher.prototype.stop = function() {\n this.stopped = true;\n if (this.timeoutID) {\n clearTimeout(this.timeoutID);\n this.timeoutID = null;\n }\n};\n\n/**\n * Clear out queue.\n */\nRequestBatcher.prototype.clear = function() {\n this.queue.clear();\n};\n\n/**\n * Restore batch size configuration to whatever is set in the main SDK.\n */\nRequestBatcher.prototype.resetBatchSize = function() {\n this.batchSize = this.libConfig['batch_size'];\n};\n\n/**\n * Restore flush interval time configuration to whatever is set in the main SDK.\n */\nRequestBatcher.prototype.resetFlush = function() {\n this.scheduleFlush(this.libConfig['batch_flush_interval_ms']);\n};\n\n/**\n * Schedule the next flush in the given number of milliseconds.\n */\nRequestBatcher.prototype.scheduleFlush = function(flushMS) {\n this.flushInterval = flushMS;\n if (!this.stopped) { // don't schedule anymore if batching has been stopped\n this.timeoutID = setTimeout(_.bind(function() {\n if (!this.stopped) {\n this.flush();\n }\n }, this), this.flushInterval);\n }\n};\n\n/**\n * Flush one batch to network. Depending on success/failure modes, it will either\n * remove the batch from the queue or leave it in for retry, and schedule the next\n * flush. In cases of most network or API failures, it will back off exponentially\n * when retrying.\n * @param {Object} [options]\n * @param {boolean} [options.sendBeacon] - whether to send batch with\n * navigator.sendBeacon (only useful for sending batches before page unloads, as\n * sendBeacon offers no callbacks or status indications)\n */\nRequestBatcher.prototype.flush = function(options) {\n try {\n\n if (this.requestInProgress) {\n logger$1.log('Flush: Request already in progress');\n return;\n }\n\n options = options || {};\n var timeoutMS = this.libConfig['batch_request_timeout_ms'];\n var startTime = new Date().getTime();\n var currentBatchSize = this.batchSize;\n var batch = this.queue.fillBatch(currentBatchSize);\n // if there's more items in the queue than the batch size, attempt\n // to flush again after the current batch is done.\n var attemptSecondaryFlush = batch.length === currentBatchSize;\n var dataForRequest = [];\n var transformedItems = {};\n _.each(batch, function(item) {\n var payload = item['payload'];\n if (this.beforeSendHook && !item.orphaned) {\n payload = this.beforeSendHook(payload);\n }\n if (payload) {\n // mp_sent_by_lib_version prop captures which lib version actually\n // sends each event (regardless of which version originally queued\n // it for sending)\n if (payload['event'] && payload['properties']) {\n payload['properties'] = _.extend(\n {},\n payload['properties'],\n {'mp_sent_by_lib_version': Config.LIB_VERSION}\n );\n }\n var addPayload = true;\n var itemId = item['id'];\n if (itemId) {\n if ((this.itemIdsSentSuccessfully[itemId] || 0) > 5) {\n this.reportError('[dupe] item ID sent too many times, not sending', {\n item: item,\n batchSize: batch.length,\n timesSent: this.itemIdsSentSuccessfully[itemId]\n });\n addPayload = false;\n }\n } else {\n this.reportError('[dupe] found item with no ID', {item: item});\n }\n\n if (addPayload) {\n dataForRequest.push(payload);\n }\n }\n transformedItems[item['id']] = payload;\n }, this);\n if (dataForRequest.length < 1) {\n this.resetFlush();\n return; // nothing to do\n }\n\n this.requestInProgress = true;\n\n var batchSendCallback = _.bind(function(res) {\n this.requestInProgress = false;\n\n try {\n\n // handle API response in a try-catch to make sure we can reset the\n // flush operation if something goes wrong\n\n var removeItemsFromQueue = false;\n if (options.unloading) {\n // update persisted data to include hook transformations\n this.queue.updatePayloads(transformedItems);\n } else if (\n _.isObject(res) &&\n res.error === 'timeout' &&\n new Date().getTime() - startTime >= timeoutMS\n ) {\n this.reportError('Network timeout; retrying');\n this.flush();\n } else if (\n _.isObject(res) &&\n (\n res.httpStatusCode >= 500\n || res.httpStatusCode === 429\n || (res.httpStatusCode <= 0 && !isOnline())\n || res.error === 'timeout'\n )\n ) {\n // network or API error, or 429 Too Many Requests, retry\n var retryMS = this.flushInterval * 2;\n if (res.retryAfter) {\n retryMS = (parseInt(res.retryAfter, 10) * 1000) || retryMS;\n }\n retryMS = Math.min(MAX_RETRY_INTERVAL_MS, retryMS);\n this.reportError('Error; retry in ' + retryMS + ' ms');\n this.scheduleFlush(retryMS);\n } else if (_.isObject(res) && res.httpStatusCode === 413) {\n // 413 Payload Too Large\n if (batch.length > 1) {\n var halvedBatchSize = Math.max(1, Math.floor(currentBatchSize / 2));\n this.batchSize = Math.min(this.batchSize, halvedBatchSize, batch.length - 1);\n this.reportError('413 response; reducing batch size to ' + this.batchSize);\n this.resetFlush();\n } else {\n this.reportError('Single-event request too large; dropping', batch);\n this.resetBatchSize();\n removeItemsFromQueue = true;\n }\n } else {\n // successful network request+response; remove each item in batch from queue\n // (even if it was e.g. a 400, in which case retrying won't help)\n removeItemsFromQueue = true;\n }\n\n if (removeItemsFromQueue) {\n this.queue.removeItemsByID(\n _.map(batch, function(item) { return item['id']; }),\n _.bind(function(succeeded) {\n if (succeeded) {\n this.consecutiveRemovalFailures = 0;\n if (this.flushOnlyOnInterval && !attemptSecondaryFlush) {\n this.resetFlush(); // schedule next batch with a delay\n } else {\n this.flush(); // handle next batch if the queue isn't empty\n }\n } else {\n this.reportError('Failed to remove items from queue');\n if (++this.consecutiveRemovalFailures > 5) {\n this.reportError('Too many queue failures; disabling batching system.');\n this.stopAllBatching();\n } else {\n this.resetFlush();\n }\n }\n }, this)\n );\n\n // client-side dedupe\n _.each(batch, _.bind(function(item) {\n var itemId = item['id'];\n if (itemId) {\n this.itemIdsSentSuccessfully[itemId] = this.itemIdsSentSuccessfully[itemId] || 0;\n this.itemIdsSentSuccessfully[itemId]++;\n if (this.itemIdsSentSuccessfully[itemId] > 5) {\n this.reportError('[dupe] item ID sent too many times', {\n item: item,\n batchSize: batch.length,\n timesSent: this.itemIdsSentSuccessfully[itemId]\n });\n }\n } else {\n this.reportError('[dupe] found item with no ID while removing', {item: item});\n }\n }, this));\n }\n\n } catch(err) {\n this.reportError('Error handling API response', err);\n this.resetFlush();\n }\n }, this);\n var requestOptions = {\n method: 'POST',\n verbose: true,\n ignore_json_errors: true, // eslint-disable-line camelcase\n timeout_ms: timeoutMS // eslint-disable-line camelcase\n };\n if (options.unloading) {\n requestOptions.transport = 'sendBeacon';\n }\n logger$1.log('MIXPANEL REQUEST:', dataForRequest);\n this.sendRequest(dataForRequest, requestOptions, batchSendCallback);\n } catch(err) {\n this.reportError('Error flushing request queue', err);\n this.resetFlush();\n }\n};\n\n/**\n * Log error to global logger and optional user-defined logger.\n */\nRequestBatcher.prototype.reportError = function(msg, err) {\n logger$1.error.apply(logger$1.error, arguments);\n if (this.errorReporter) {\n try {\n if (!(err instanceof Error)) {\n err = new Error(msg);\n }\n this.errorReporter(msg, err);\n } catch(err) {\n logger$1.error(err);\n }\n }\n};\n\nvar logger = console_with_prefix('recorder');\nvar CompressionStream = win['CompressionStream'];\n\nvar RECORDER_BATCHER_LIB_CONFIG = {\n 'batch_size': 1000,\n 'batch_flush_interval_ms': 10 * 1000,\n 'batch_request_timeout_ms': 90 * 1000,\n 'batch_autostart': true\n};\n\nvar ACTIVE_SOURCES = new Set([\n IncrementalSource.MouseMove,\n IncrementalSource.MouseInteraction,\n IncrementalSource.Scroll,\n IncrementalSource.ViewportResize,\n IncrementalSource.Input,\n IncrementalSource.TouchMove,\n IncrementalSource.MediaInteraction,\n IncrementalSource.Drag,\n IncrementalSource.Selection,\n]);\n\nfunction isUserEvent(ev) {\n return ev.type === EventType.IncrementalSnapshot && ACTIVE_SOURCES.has(ev.data.source);\n}\n\nvar MixpanelRecorder = function(mixpanelInstance) {\n this._mixpanel = mixpanelInstance;\n\n // internal rrweb stopRecording function\n this._stopRecording = null;\n\n this.recEvents = [];\n this.seqNo = 0;\n this.replayId = null;\n this.replayStartTime = null;\n this.sendBatchId = null;\n\n this.idleTimeoutId = null;\n this.maxTimeoutId = null;\n\n this.recordMaxMs = MAX_RECORDING_MS;\n this.recordMinMs = 0;\n this._initBatcher();\n};\n\n\nMixpanelRecorder.prototype._initBatcher = function () {\n this.batcher = new RequestBatcher('__mprec', {\n libConfig: RECORDER_BATCHER_LIB_CONFIG,\n sendRequestFunc: _.bind(this.flushEventsWithOptOut, this),\n errorReporter: _.bind(this.reportError, this),\n flushOnlyOnInterval: true,\n usePersistence: false\n });\n};\n\n// eslint-disable-next-line camelcase\nMixpanelRecorder.prototype.get_config = function(configVar) {\n return this._mixpanel.get_config(configVar);\n};\n\nMixpanelRecorder.prototype.startRecording = function (shouldStopBatcher) {\n if (this._stopRecording !== null) {\n logger.log('Recording already in progress, skipping startRecording.');\n return;\n }\n\n this.recordMaxMs = this.get_config('record_max_ms');\n if (this.recordMaxMs > MAX_RECORDING_MS) {\n this.recordMaxMs = MAX_RECORDING_MS;\n logger.critical('record_max_ms cannot be greater than ' + MAX_RECORDING_MS + 'ms. Capping value.');\n }\n\n this.recordMinMs = this.get_config('record_min_ms');\n if (this.recordMinMs > MAX_VALUE_FOR_MIN_RECORDING_MS) {\n this.recordMinMs = MAX_VALUE_FOR_MIN_RECORDING_MS;\n logger.critical('record_min_ms cannot be greater than ' + MAX_VALUE_FOR_MIN_RECORDING_MS + 'ms. Capping value.');\n }\n\n this.recEvents = [];\n this.seqNo = 0;\n this.replayStartTime = new Date().getTime();\n\n this.replayId = _.UUID();\n\n if (shouldStopBatcher || this.recordMinMs > 0) {\n // the primary case for shouldStopBatcher is when we're starting recording after a reset\n // and don't want to send anything over the network until there's\n // actual user activity\n // this also applies if the minimum recording length has not been hit yet\n // so that we don't send data until we know the recording will be long enough\n this.batcher.stop();\n } else {\n this.batcher.start();\n }\n\n var resetIdleTimeout = _.bind(function () {\n clearTimeout(this.idleTimeoutId);\n this.idleTimeoutId = setTimeout(_.bind(function () {\n logger.log('Idle timeout reached, restarting recording.');\n this.resetRecording();\n }, this), this.get_config('record_idle_timeout_ms'));\n }, this);\n\n var blockSelector = this.get_config('record_block_selector');\n if (blockSelector === '' || blockSelector === null) {\n blockSelector = undefined;\n }\n\n this._stopRecording = record({\n 'emit': _.bind(function (ev) {\n this.batcher.enqueue(ev);\n if (isUserEvent(ev)) {\n if (this.batcher.stopped && new Date().getTime() - this.replayStartTime >= this.recordMinMs) {\n // start flushing again after user activity\n this.batcher.start();\n }\n resetIdleTimeout();\n }\n }, this),\n 'blockClass': this.get_config('record_block_class'),\n 'blockSelector': blockSelector,\n 'collectFonts': this.get_config('record_collect_fonts'),\n 'inlineImages': this.get_config('record_inline_images'),\n 'maskAllInputs': true,\n 'maskTextClass': this.get_config('record_mask_text_class'),\n 'maskTextSelector': this.get_config('record_mask_text_selector')\n });\n\n resetIdleTimeout();\n\n this.maxTimeoutId = setTimeout(_.bind(this.resetRecording, this), this.recordMaxMs);\n};\n\nMixpanelRecorder.prototype.resetRecording = function () {\n this.stopRecording();\n this.startRecording(true);\n};\n\nMixpanelRecorder.prototype.stopRecording = function () {\n if (this._stopRecording !== null) {\n this._stopRecording();\n this._stopRecording = null;\n }\n\n if (this.batcher.stopped) {\n // never got user activity to flush after reset, so just clear the batcher\n this.batcher.clear();\n } else {\n // flush any remaining events from running batcher\n this.batcher.flush();\n this.batcher.stop();\n }\n this.replayId = null;\n\n clearTimeout(this.idleTimeoutId);\n clearTimeout(this.maxTimeoutId);\n};\n\n/**\n * Flushes the current batch of events to the server, but passes an opt-out callback to make sure\n * we stop recording and dump any queued events if the user has opted out.\n */\nMixpanelRecorder.prototype.flushEventsWithOptOut = function (data, options, cb) {\n this._flushEvents(data, options, cb, _.bind(this._onOptOut, this));\n};\n\nMixpanelRecorder.prototype._onOptOut = function (code) {\n // addOptOutCheckMixpanelLib invokes this function with code=0 when the user has opted out\n if (code === 0) {\n this.recEvents = [];\n this.stopRecording();\n }\n};\n\nMixpanelRecorder.prototype._sendRequest = function(currentReplayId, reqParams, reqBody, callback) {\n var onSuccess = _.bind(function (response, responseBody) {\n // Increment sequence counter only if the request was successful to guarantee ordering.\n // RequestBatcher will always flush the next batch after the previous one succeeds.\n // extra check to see if the replay ID has changed so that we don't increment the seqNo on the wrong replay\n if (response.status === 200 && this.replayId === currentReplayId) {\n this.seqNo++;\n }\n callback({\n status: 0,\n httpStatusCode: response.status,\n responseBody: responseBody,\n retryAfter: response.headers.get('Retry-After')\n });\n }, this);\n\n win['fetch'](this.get_config('api_host') + '/' + this.get_config('api_routes')['record'] + '?' + new URLSearchParams(reqParams), {\n 'method': 'POST',\n 'headers': {\n 'Authorization': 'Basic ' + btoa(this.get_config('token') + ':'),\n 'Content-Type': 'application/octet-stream'\n },\n 'body': reqBody,\n }).then(function (response) {\n response.json().then(function (responseBody) {\n onSuccess(response, responseBody);\n }).catch(function (error) {\n callback({error: error});\n });\n }).catch(function (error) {\n callback({error: error, httpStatusCode: 0});\n });\n};\n\nMixpanelRecorder.prototype._flushEvents = addOptOutCheckMixpanelLib(function (data, options, callback) {\n const numEvents = data.length;\n\n if (numEvents > 0) {\n var replayId = this.replayId;\n // each rrweb event has a timestamp - leverage those to get time properties\n var batchStartTime = data[0].timestamp;\n if (this.seqNo === 0 || !this.replayStartTime) {\n // extra safety net so that we don't send a null replay start time\n if (this.seqNo !== 0) {\n this.reportError('Replay start time not set but seqNo is not 0. Using current batch start time as a fallback.');\n }\n\n this.replayStartTime = batchStartTime;\n }\n var replayLengthMs = data[numEvents - 1].timestamp - this.replayStartTime;\n\n var reqParams = {\n 'distinct_id': String(this._mixpanel.get_distinct_id()),\n 'seq': this.seqNo,\n 'batch_start_time': batchStartTime / 1000,\n 'replay_id': replayId,\n 'replay_length_ms': replayLengthMs,\n 'replay_start_time': this.replayStartTime / 1000\n };\n var eventsJson = _.JSONEncode(data);\n\n // send ID management props if they exist\n var deviceId = this._mixpanel.get_property('$device_id');\n if (deviceId) {\n reqParams['$device_id'] = deviceId;\n }\n var userId = this._mixpanel.get_property('$user_id');\n if (userId) {\n reqParams['$user_id'] = userId;\n }\n\n if (CompressionStream) {\n var jsonStream = new Blob([eventsJson], {type: 'application/json'}).stream();\n var gzipStream = jsonStream.pipeThrough(new CompressionStream('gzip'));\n new Response(gzipStream)\n .blob()\n .then(_.bind(function(compressedBlob) {\n reqParams['format'] = 'gzip';\n this._sendRequest(replayId, reqParams, compressedBlob, callback);\n }, this));\n } else {\n reqParams['format'] = 'body';\n this._sendRequest(replayId, reqParams, eventsJson, callback);\n }\n }\n});\n\n\nMixpanelRecorder.prototype.reportError = function(msg, err) {\n logger.error.apply(logger.error, arguments);\n try {\n if (!err && !(msg instanceof Error)) {\n msg = new Error(msg);\n }\n this.get_config('error_reporter')(msg, err);\n } catch(err) {\n logger.error(err);\n }\n};\n\n\nwin['__mp_recorder'] = MixpanelRecorder;\n\n/* eslint camelcase: \"off\" */\n\n/**\n * DomTracker Object\n * @constructor\n */\nvar DomTracker = function() {};\n\n\n// interface\nDomTracker.prototype.create_properties = function() {};\nDomTracker.prototype.event_handler = function() {};\nDomTracker.prototype.after_track_handler = function() {};\n\nDomTracker.prototype.init = function(mixpanel_instance) {\n this.mp = mixpanel_instance;\n return this;\n};\n\n/**\n * @param {Object|string} query\n * @param {string} event_name\n * @param {Object=} properties\n * @param {function=} user_callback\n */\nDomTracker.prototype.track = function(query, event_name, properties, user_callback) {\n var that = this;\n var elements = _.dom_query(query);\n\n if (elements.length === 0) {\n console$1.error('The DOM query (' + query + ') returned 0 elements');\n return;\n }\n\n _.each(elements, function(element) {\n _.register_event(element, this.override_event, function(e) {\n var options = {};\n var props = that.create_properties(properties, this);\n var timeout = that.mp.get_config('track_links_timeout');\n\n that.event_handler(e, this, options);\n\n // in case the mixpanel servers don't get back to us in time\n window.setTimeout(that.track_callback(user_callback, props, options, true), timeout);\n\n // fire the tracking event\n that.mp.track(event_name, props, that.track_callback(user_callback, props, options));\n });\n }, this);\n\n return true;\n};\n\n/**\n * @param {function} user_callback\n * @param {Object} props\n * @param {boolean=} timeout_occured\n */\nDomTracker.prototype.track_callback = function(user_callback, props, options, timeout_occured) {\n timeout_occured = timeout_occured || false;\n var that = this;\n\n return function() {\n // options is referenced from both callbacks, so we can have\n // a 'lock' of sorts to ensure only one fires\n if (options.callback_fired) { return; }\n options.callback_fired = true;\n\n if (user_callback && user_callback(timeout_occured, props) === false) {\n // user can prevent the default functionality by\n // returning false from their callback\n return;\n }\n\n that.after_track_handler(props, options, timeout_occured);\n };\n};\n\nDomTracker.prototype.create_properties = function(properties, element) {\n var props;\n\n if (typeof(properties) === 'function') {\n props = properties(element);\n } else {\n props = _.extend({}, properties);\n }\n\n return props;\n};\n\n/**\n * LinkTracker Object\n * @constructor\n * @extends DomTracker\n */\nvar LinkTracker = function() {\n this.override_event = 'click';\n};\n_.inherit(LinkTracker, DomTracker);\n\nLinkTracker.prototype.create_properties = function(properties, element) {\n var props = LinkTracker.superclass.create_properties.apply(this, arguments);\n\n if (element.href) { props['url'] = element.href; }\n\n return props;\n};\n\nLinkTracker.prototype.event_handler = function(evt, element, options) {\n options.new_tab = (\n evt.which === 2 ||\n evt.metaKey ||\n evt.ctrlKey ||\n element.target === '_blank'\n );\n options.href = element.href;\n\n if (!options.new_tab) {\n evt.preventDefault();\n }\n};\n\nLinkTracker.prototype.after_track_handler = function(props, options) {\n if (options.new_tab) { return; }\n\n setTimeout(function() {\n window.location = options.href;\n }, 0);\n};\n\n/**\n * FormTracker Object\n * @constructor\n * @extends DomTracker\n */\nvar FormTracker = function() {\n this.override_event = 'submit';\n};\n_.inherit(FormTracker, DomTracker);\n\nFormTracker.prototype.event_handler = function(evt, element, options) {\n options.element = element;\n evt.preventDefault();\n};\n\nFormTracker.prototype.after_track_handler = function(props, options) {\n setTimeout(function() {\n options.element.submit();\n }, 0);\n};\n\n/* eslint camelcase: \"off\" */\n\n/** @const */ var SET_ACTION = '$set';\n/** @const */ var SET_ONCE_ACTION = '$set_once';\n/** @const */ var UNSET_ACTION = '$unset';\n/** @const */ var ADD_ACTION = '$add';\n/** @const */ var APPEND_ACTION = '$append';\n/** @const */ var UNION_ACTION = '$union';\n/** @const */ var REMOVE_ACTION = '$remove';\n/** @const */ var DELETE_ACTION = '$delete';\n\n// Common internal methods for mixpanel.people and mixpanel.group APIs.\n// These methods shouldn't involve network I/O.\nvar apiActions = {\n set_action: function(prop, to) {\n var data = {};\n var $set = {};\n if (_.isObject(prop)) {\n _.each(prop, function(v, k) {\n if (!this._is_reserved_property(k)) {\n $set[k] = v;\n }\n }, this);\n } else {\n $set[prop] = to;\n }\n\n data[SET_ACTION] = $set;\n return data;\n },\n\n unset_action: function(prop) {\n var data = {};\n var $unset = [];\n if (!_.isArray(prop)) {\n prop = [prop];\n }\n\n _.each(prop, function(k) {\n if (!this._is_reserved_property(k)) {\n $unset.push(k);\n }\n }, this);\n\n data[UNSET_ACTION] = $unset;\n return data;\n },\n\n set_once_action: function(prop, to) {\n var data = {};\n var $set_once = {};\n if (_.isObject(prop)) {\n _.each(prop, function(v, k) {\n if (!this._is_reserved_property(k)) {\n $set_once[k] = v;\n }\n }, this);\n } else {\n $set_once[prop] = to;\n }\n data[SET_ONCE_ACTION] = $set_once;\n return data;\n },\n\n union_action: function(list_name, values) {\n var data = {};\n var $union = {};\n if (_.isObject(list_name)) {\n _.each(list_name, function(v, k) {\n if (!this._is_reserved_property(k)) {\n $union[k] = _.isArray(v) ? v : [v];\n }\n }, this);\n } else {\n $union[list_name] = _.isArray(values) ? values : [values];\n }\n data[UNION_ACTION] = $union;\n return data;\n },\n\n append_action: function(list_name, value) {\n var data = {};\n var $append = {};\n if (_.isObject(list_name)) {\n _.each(list_name, function(v, k) {\n if (!this._is_reserved_property(k)) {\n $append[k] = v;\n }\n }, this);\n } else {\n $append[list_name] = value;\n }\n data[APPEND_ACTION] = $append;\n return data;\n },\n\n remove_action: function(list_name, value) {\n var data = {};\n var $remove = {};\n if (_.isObject(list_name)) {\n _.each(list_name, function(v, k) {\n if (!this._is_reserved_property(k)) {\n $remove[k] = v;\n }\n }, this);\n } else {\n $remove[list_name] = value;\n }\n data[REMOVE_ACTION] = $remove;\n return data;\n },\n\n delete_action: function() {\n var data = {};\n data[DELETE_ACTION] = '';\n return data;\n }\n};\n\n/* eslint camelcase: \"off\" */\n\n/**\n * Mixpanel Group Object\n * @constructor\n */\nvar MixpanelGroup = function() {};\n\n_.extend(MixpanelGroup.prototype, apiActions);\n\nMixpanelGroup.prototype._init = function(mixpanel_instance, group_key, group_id) {\n this._mixpanel = mixpanel_instance;\n this._group_key = group_key;\n this._group_id = group_id;\n};\n\n/**\n * Set properties on a group.\n *\n * ### Usage:\n *\n * mixpanel.get_group('company', 'mixpanel').set('Location', '405 Howard');\n *\n * // or set multiple properties at once\n * mixpanel.get_group('company', 'mixpanel').set({\n * 'Location': '405 Howard',\n * 'Founded' : 2009,\n * });\n * // properties can be strings, integers, dates, or lists\n *\n * @param {Object|String} prop If a string, this is the name of the property. If an object, this is an associative array of names and values.\n * @param {*} [to] A value to set on the given property name\n * @param {Function} [callback] If provided, the callback will be called after the tracking event\n */\nMixpanelGroup.prototype.set = addOptOutCheckMixpanelGroup(function(prop, to, callback) {\n var data = this.set_action(prop, to);\n if (_.isObject(prop)) {\n callback = to;\n }\n return this._send_request(data, callback);\n});\n\n/**\n * Set properties on a group, only if they do not yet exist.\n * This will not overwrite previous group property values, unlike\n * group.set().\n *\n * ### Usage:\n *\n * mixpanel.get_group('company', 'mixpanel').set_once('Location', '405 Howard');\n *\n * // or set multiple properties at once\n * mixpanel.get_group('company', 'mixpanel').set_once({\n * 'Location': '405 Howard',\n * 'Founded' : 2009,\n * });\n * // properties can be strings, integers, lists or dates\n *\n * @param {Object|String} prop If a string, this is the name of the property. If an object, this is an associative array of names and values.\n * @param {*} [to] A value to set on the given property name\n * @param {Function} [callback] If provided, the callback will be called after the tracking event\n */\nMixpanelGroup.prototype.set_once = addOptOutCheckMixpanelGroup(function(prop, to, callback) {\n var data = this.set_once_action(prop, to);\n if (_.isObject(prop)) {\n callback = to;\n }\n return this._send_request(data, callback);\n});\n\n/**\n * Unset properties on a group permanently.\n *\n * ### Usage:\n *\n * mixpanel.get_group('company', 'mixpanel').unset('Founded');\n *\n * @param {String} prop The name of the property.\n * @param {Function} [callback] If provided, the callback will be called after the tracking event\n */\nMixpanelGroup.prototype.unset = addOptOutCheckMixpanelGroup(function(prop, callback) {\n var data = this.unset_action(prop);\n return this._send_request(data, callback);\n});\n\n/**\n * Merge a given list with a list-valued group property, excluding duplicate values.\n *\n * ### Usage:\n *\n * // merge a value to a list, creating it if needed\n * mixpanel.get_group('company', 'mixpanel').union('Location', ['San Francisco', 'London']);\n *\n * @param {String} list_name Name of the property.\n * @param {Array} values Values to merge with the given property\n * @param {Function} [callback] If provided, the callback will be called after the tracking event\n */\nMixpanelGroup.prototype.union = addOptOutCheckMixpanelGroup(function(list_name, values, callback) {\n if (_.isObject(list_name)) {\n callback = values;\n }\n var data = this.union_action(list_name, values);\n return this._send_request(data, callback);\n});\n\n/**\n * Permanently delete a group.\n *\n * ### Usage:\n *\n * mixpanel.get_group('company', 'mixpanel').delete();\n *\n * @param {Function} [callback] If provided, the callback will be called after the tracking event\n */\nMixpanelGroup.prototype['delete'] = addOptOutCheckMixpanelGroup(function(callback) {\n // bracket notation above prevents a minification error related to reserved words\n var data = this.delete_action();\n return this._send_request(data, callback);\n});\n\n/**\n * Remove a property from a group. The value will be ignored if doesn't exist.\n *\n * ### Usage:\n *\n * mixpanel.get_group('company', 'mixpanel').remove('Location', 'London');\n *\n * @param {String} list_name Name of the property.\n * @param {Object} value Value to remove from the given group property\n * @param {Function} [callback] If provided, the callback will be called after the tracking event\n */\nMixpanelGroup.prototype.remove = addOptOutCheckMixpanelGroup(function(list_name, value, callback) {\n var data = this.remove_action(list_name, value);\n return this._send_request(data, callback);\n});\n\nMixpanelGroup.prototype._send_request = function(data, callback) {\n data['$group_key'] = this._group_key;\n data['$group_id'] = this._group_id;\n data['$token'] = this._get_config('token');\n\n var date_encoded_data = _.encodeDates(data);\n return this._mixpanel._track_or_batch({\n type: 'groups',\n data: date_encoded_data,\n endpoint: this._get_config('api_host') + '/' + this._get_config('api_routes')['groups'],\n batcher: this._mixpanel.request_batchers.groups\n }, callback);\n};\n\nMixpanelGroup.prototype._is_reserved_property = function(prop) {\n return prop === '$group_key' || prop === '$group_id';\n};\n\nMixpanelGroup.prototype._get_config = function(conf) {\n return this._mixpanel.get_config(conf);\n};\n\nMixpanelGroup.prototype.toString = function() {\n return this._mixpanel.toString() + '.group.' + this._group_key + '.' + this._group_id;\n};\n\n// MixpanelGroup Exports\nMixpanelGroup.prototype['remove'] = MixpanelGroup.prototype.remove;\nMixpanelGroup.prototype['set'] = MixpanelGroup.prototype.set;\nMixpanelGroup.prototype['set_once'] = MixpanelGroup.prototype.set_once;\nMixpanelGroup.prototype['union'] = MixpanelGroup.prototype.union;\nMixpanelGroup.prototype['unset'] = MixpanelGroup.prototype.unset;\nMixpanelGroup.prototype['toString'] = MixpanelGroup.prototype.toString;\n\n/* eslint camelcase: \"off\" */\n\n/**\n * Mixpanel People Object\n * @constructor\n */\nvar MixpanelPeople = function() {};\n\n_.extend(MixpanelPeople.prototype, apiActions);\n\nMixpanelPeople.prototype._init = function(mixpanel_instance) {\n this._mixpanel = mixpanel_instance;\n};\n\n/*\n* Set properties on a user record.\n*\n* ### Usage:\n*\n* mixpanel.people.set('gender', 'm');\n*\n* // or set multiple properties at once\n* mixpanel.people.set({\n* 'Company': 'Acme',\n* 'Plan': 'Premium',\n* 'Upgrade date': new Date()\n* });\n* // properties can be strings, integers, dates, or lists\n*\n* @param {Object|String} prop If a string, this is the name of the property. If an object, this is an associative array of names and values.\n* @param {*} [to] A value to set on the given property name\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.set = addOptOutCheckMixpanelPeople(function(prop, to, callback) {\n var data = this.set_action(prop, to);\n if (_.isObject(prop)) {\n callback = to;\n }\n // make sure that the referrer info has been updated and saved\n if (this._get_config('save_referrer')) {\n this._mixpanel['persistence'].update_referrer_info(document.referrer);\n }\n\n // update $set object with default people properties\n data[SET_ACTION] = _.extend(\n {},\n _.info.people_properties(),\n data[SET_ACTION]\n );\n return this._send_request(data, callback);\n});\n\n/*\n* Set properties on a user record, only if they do not yet exist.\n* This will not overwrite previous people property values, unlike\n* people.set().\n*\n* ### Usage:\n*\n* mixpanel.people.set_once('First Login Date', new Date());\n*\n* // or set multiple properties at once\n* mixpanel.people.set_once({\n* 'First Login Date': new Date(),\n* 'Starting Plan': 'Premium'\n* });\n*\n* // properties can be strings, integers or dates\n*\n* @param {Object|String} prop If a string, this is the name of the property. If an object, this is an associative array of names and values.\n* @param {*} [to] A value to set on the given property name\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.set_once = addOptOutCheckMixpanelPeople(function(prop, to, callback) {\n var data = this.set_once_action(prop, to);\n if (_.isObject(prop)) {\n callback = to;\n }\n return this._send_request(data, callback);\n});\n\n/*\n* Unset properties on a user record (permanently removes the properties and their values from a profile).\n*\n* ### Usage:\n*\n* mixpanel.people.unset('gender');\n*\n* // or unset multiple properties at once\n* mixpanel.people.unset(['gender', 'Company']);\n*\n* @param {Array|String} prop If a string, this is the name of the property. If an array, this is a list of property names.\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.unset = addOptOutCheckMixpanelPeople(function(prop, callback) {\n var data = this.unset_action(prop);\n return this._send_request(data, callback);\n});\n\n/*\n* Increment/decrement numeric people analytics properties.\n*\n* ### Usage:\n*\n* mixpanel.people.increment('page_views', 1);\n*\n* // or, for convenience, if you're just incrementing a counter by\n* // 1, you can simply do\n* mixpanel.people.increment('page_views');\n*\n* // to decrement a counter, pass a negative number\n* mixpanel.people.increment('credits_left', -1);\n*\n* // like mixpanel.people.set(), you can increment multiple\n* // properties at once:\n* mixpanel.people.increment({\n* counter1: 1,\n* counter2: 6\n* });\n*\n* @param {Object|String} prop If a string, this is the name of the property. If an object, this is an associative array of names and numeric values.\n* @param {Number} [by] An amount to increment the given property\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.increment = addOptOutCheckMixpanelPeople(function(prop, by, callback) {\n var data = {};\n var $add = {};\n if (_.isObject(prop)) {\n _.each(prop, function(v, k) {\n if (!this._is_reserved_property(k)) {\n if (isNaN(parseFloat(v))) {\n console$1.error('Invalid increment value passed to mixpanel.people.increment - must be a number');\n return;\n } else {\n $add[k] = v;\n }\n }\n }, this);\n callback = by;\n } else {\n // convenience: mixpanel.people.increment('property'); will\n // increment 'property' by 1\n if (_.isUndefined(by)) {\n by = 1;\n }\n $add[prop] = by;\n }\n data[ADD_ACTION] = $add;\n\n return this._send_request(data, callback);\n});\n\n/*\n* Append a value to a list-valued people analytics property.\n*\n* ### Usage:\n*\n* // append a value to a list, creating it if needed\n* mixpanel.people.append('pages_visited', 'homepage');\n*\n* // like mixpanel.people.set(), you can append multiple\n* // properties at once:\n* mixpanel.people.append({\n* list1: 'bob',\n* list2: 123\n* });\n*\n* @param {Object|String} list_name If a string, this is the name of the property. If an object, this is an associative array of names and values.\n* @param {*} [value] value An item to append to the list\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.append = addOptOutCheckMixpanelPeople(function(list_name, value, callback) {\n if (_.isObject(list_name)) {\n callback = value;\n }\n var data = this.append_action(list_name, value);\n return this._send_request(data, callback);\n});\n\n/*\n* Remove a value from a list-valued people analytics property.\n*\n* ### Usage:\n*\n* mixpanel.people.remove('School', 'UCB');\n*\n* @param {Object|String} list_name If a string, this is the name of the property. If an object, this is an associative array of names and values.\n* @param {*} [value] value Item to remove from the list\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.remove = addOptOutCheckMixpanelPeople(function(list_name, value, callback) {\n if (_.isObject(list_name)) {\n callback = value;\n }\n var data = this.remove_action(list_name, value);\n return this._send_request(data, callback);\n});\n\n/*\n* Merge a given list with a list-valued people analytics property,\n* excluding duplicate values.\n*\n* ### Usage:\n*\n* // merge a value to a list, creating it if needed\n* mixpanel.people.union('pages_visited', 'homepage');\n*\n* // like mixpanel.people.set(), you can append multiple\n* // properties at once:\n* mixpanel.people.union({\n* list1: 'bob',\n* list2: 123\n* });\n*\n* // like mixpanel.people.append(), you can append multiple\n* // values to the same list:\n* mixpanel.people.union({\n* list1: ['bob', 'billy']\n* });\n*\n* @param {Object|String} list_name If a string, this is the name of the property. If an object, this is an associative array of names and values.\n* @param {*} [value] Value / values to merge with the given property\n* @param {Function} [callback] If provided, the callback will be called after tracking the event.\n*/\nMixpanelPeople.prototype.union = addOptOutCheckMixpanelPeople(function(list_name, values, callback) {\n if (_.isObject(list_name)) {\n callback = values;\n }\n var data = this.union_action(list_name, values);\n return this._send_request(data, callback);\n});\n\n/*\n * Record that you have charged the current user a certain amount\n * of money. Charges recorded with track_charge() will appear in the\n * Mixpanel revenue report.\n *\n * ### Usage:\n *\n * // charge a user $50\n * mixpanel.people.track_charge(50);\n *\n * // charge a user $30.50 on the 2nd of january\n * mixpanel.people.track_charge(30.50, {\n * '$time': new Date('jan 1 2012')\n * });\n *\n * @param {Number} amount The amount of money charged to the current user\n * @param {Object} [properties] An associative array of properties associated with the charge\n * @param {Function} [callback] If provided, the callback will be called when the server responds\n * @deprecated\n */\nMixpanelPeople.prototype.track_charge = addOptOutCheckMixpanelPeople(function(amount, properties, callback) {\n if (!_.isNumber(amount)) {\n amount = parseFloat(amount);\n if (isNaN(amount)) {\n console$1.error('Invalid value passed to mixpanel.people.track_charge - must be a number');\n return;\n }\n }\n\n return this.append('$transactions', _.extend({\n '$amount': amount\n }, properties), callback);\n});\n\n/*\n * Permanently clear all revenue report transactions from the\n * current user's people analytics profile.\n *\n * ### Usage:\n *\n * mixpanel.people.clear_charges();\n *\n * @param {Function} [callback] If provided, the callback will be called after tracking the event.\n * @deprecated\n */\nMixpanelPeople.prototype.clear_charges = function(callback) {\n return this.set('$transactions', [], callback);\n};\n\n/*\n* Permanently deletes the current people analytics profile from\n* Mixpanel (using the current distinct_id).\n*\n* ### Usage:\n*\n* // remove the all data you have stored about the current user\n* mixpanel.people.delete_user();\n*\n*/\nMixpanelPeople.prototype.delete_user = function() {\n if (!this._identify_called()) {\n console$1.error('mixpanel.people.delete_user() requires you to call identify() first');\n return;\n }\n var data = {'$delete': this._mixpanel.get_distinct_id()};\n return this._send_request(data);\n};\n\nMixpanelPeople.prototype.toString = function() {\n return this._mixpanel.toString() + '.people';\n};\n\nMixpanelPeople.prototype._send_request = function(data, callback) {\n data['$token'] = this._get_config('token');\n data['$distinct_id'] = this._mixpanel.get_distinct_id();\n var device_id = this._mixpanel.get_property('$device_id');\n var user_id = this._mixpanel.get_property('$user_id');\n var had_persisted_distinct_id = this._mixpanel.get_property('$had_persisted_distinct_id');\n if (device_id) {\n data['$device_id'] = device_id;\n }\n if (user_id) {\n data['$user_id'] = user_id;\n }\n if (had_persisted_distinct_id) {\n data['$had_persisted_distinct_id'] = had_persisted_distinct_id;\n }\n\n var date_encoded_data = _.encodeDates(data);\n\n if (!this._identify_called()) {\n this._enqueue(data);\n if (!_.isUndefined(callback)) {\n if (this._get_config('verbose')) {\n callback({status: -1, error: null});\n } else {\n callback(-1);\n }\n }\n return _.truncate(date_encoded_data, 255);\n }\n\n return this._mixpanel._track_or_batch({\n type: 'people',\n data: date_encoded_data,\n endpoint: this._get_config('api_host') + '/' + this._get_config('api_routes')['engage'],\n batcher: this._mixpanel.request_batchers.people\n }, callback);\n};\n\nMixpanelPeople.prototype._get_config = function(conf_var) {\n return this._mixpanel.get_config(conf_var);\n};\n\nMixpanelPeople.prototype._identify_called = function() {\n return this._mixpanel._flags.identify_called === true;\n};\n\n// Queue up engage operations if identify hasn't been called yet.\nMixpanelPeople.prototype._enqueue = function(data) {\n if (SET_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(SET_ACTION, data);\n } else if (SET_ONCE_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(SET_ONCE_ACTION, data);\n } else if (UNSET_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(UNSET_ACTION, data);\n } else if (ADD_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(ADD_ACTION, data);\n } else if (APPEND_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(APPEND_ACTION, data);\n } else if (REMOVE_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(REMOVE_ACTION, data);\n } else if (UNION_ACTION in data) {\n this._mixpanel['persistence']._add_to_people_queue(UNION_ACTION, data);\n } else {\n console$1.error('Invalid call to _enqueue():', data);\n }\n};\n\nMixpanelPeople.prototype._flush_one_queue = function(action, action_method, callback, queue_to_params_fn) {\n var _this = this;\n var queued_data = _.extend({}, this._mixpanel['persistence'].load_queue(action));\n var action_params = queued_data;\n\n if (!_.isUndefined(queued_data) && _.isObject(queued_data) && !_.isEmptyObject(queued_data)) {\n _this._mixpanel['persistence']._pop_from_people_queue(action, queued_data);\n _this._mixpanel['persistence'].save();\n if (queue_to_params_fn) {\n action_params = queue_to_params_fn(queued_data);\n }\n action_method.call(_this, action_params, function(response, data) {\n // on bad response, we want to add it back to the queue\n if (response === 0) {\n _this._mixpanel['persistence']._add_to_people_queue(action, queued_data);\n }\n if (!_.isUndefined(callback)) {\n callback(response, data);\n }\n });\n }\n};\n\n// Flush queued engage operations - order does not matter,\n// and there are network level race conditions anyway\nMixpanelPeople.prototype._flush = function(\n _set_callback, _add_callback, _append_callback, _set_once_callback, _union_callback, _unset_callback, _remove_callback\n) {\n var _this = this;\n\n this._flush_one_queue(SET_ACTION, this.set, _set_callback);\n this._flush_one_queue(SET_ONCE_ACTION, this.set_once, _set_once_callback);\n this._flush_one_queue(UNSET_ACTION, this.unset, _unset_callback, function(queue) { return _.keys(queue); });\n this._flush_one_queue(ADD_ACTION, this.increment, _add_callback);\n this._flush_one_queue(UNION_ACTION, this.union, _union_callback);\n\n // we have to fire off each $append individually since there is\n // no concat method server side\n var $append_queue = this._mixpanel['persistence'].load_queue(APPEND_ACTION);\n if (!_.isUndefined($append_queue) && _.isArray($append_queue) && $append_queue.length) {\n var $append_item;\n var append_callback = function(response, data) {\n if (response === 0) {\n _this._mixpanel['persistence']._add_to_people_queue(APPEND_ACTION, $append_item);\n }\n if (!_.isUndefined(_append_callback)) {\n _append_callback(response, data);\n }\n };\n for (var i = $append_queue.length - 1; i >= 0; i--) {\n $append_queue = this._mixpanel['persistence'].load_queue(APPEND_ACTION);\n $append_item = $append_queue.pop();\n _this._mixpanel['persistence'].save();\n if (!_.isEmptyObject($append_item)) {\n _this.append($append_item, append_callback);\n }\n }\n }\n\n // same for $remove\n var $remove_queue = this._mixpanel['persistence'].load_queue(REMOVE_ACTION);\n if (!_.isUndefined($remove_queue) && _.isArray($remove_queue) && $remove_queue.length) {\n var $remove_item;\n var remove_callback = function(response, data) {\n if (response === 0) {\n _this._mixpanel['persistence']._add_to_people_queue(REMOVE_ACTION, $remove_item);\n }\n if (!_.isUndefined(_remove_callback)) {\n _remove_callback(response, data);\n }\n };\n for (var j = $remove_queue.length - 1; j >= 0; j--) {\n $remove_queue = this._mixpanel['persistence'].load_queue(REMOVE_ACTION);\n $remove_item = $remove_queue.pop();\n _this._mixpanel['persistence'].save();\n if (!_.isEmptyObject($remove_item)) {\n _this.remove($remove_item, remove_callback);\n }\n }\n }\n};\n\nMixpanelPeople.prototype._is_reserved_property = function(prop) {\n return prop === '$distinct_id' || prop === '$token' || prop === '$device_id' || prop === '$user_id' || prop === '$had_persisted_distinct_id';\n};\n\n// MixpanelPeople Exports\nMixpanelPeople.prototype['set'] = MixpanelPeople.prototype.set;\nMixpanelPeople.prototype['set_once'] = MixpanelPeople.prototype.set_once;\nMixpanelPeople.prototype['unset'] = MixpanelPeople.prototype.unset;\nMixpanelPeople.prototype['increment'] = MixpanelPeople.prototype.increment;\nMixpanelPeople.prototype['append'] = MixpanelPeople.prototype.append;\nMixpanelPeople.prototype['remove'] = MixpanelPeople.prototype.remove;\nMixpanelPeople.prototype['union'] = MixpanelPeople.prototype.union;\nMixpanelPeople.prototype['track_charge'] = MixpanelPeople.prototype.track_charge;\nMixpanelPeople.prototype['clear_charges'] = MixpanelPeople.prototype.clear_charges;\nMixpanelPeople.prototype['delete_user'] = MixpanelPeople.prototype.delete_user;\nMixpanelPeople.prototype['toString'] = MixpanelPeople.prototype.toString;\n\n/* eslint camelcase: \"off\" */\n\n/*\n * Constants\n */\n/** @const */ var SET_QUEUE_KEY = '__mps';\n/** @const */ var SET_ONCE_QUEUE_KEY = '__mpso';\n/** @const */ var UNSET_QUEUE_KEY = '__mpus';\n/** @const */ var ADD_QUEUE_KEY = '__mpa';\n/** @const */ var APPEND_QUEUE_KEY = '__mpap';\n/** @const */ var REMOVE_QUEUE_KEY = '__mpr';\n/** @const */ var UNION_QUEUE_KEY = '__mpu';\n// This key is deprecated, but we want to check for it to see whether aliasing is allowed.\n/** @const */ var PEOPLE_DISTINCT_ID_KEY = '$people_distinct_id';\n/** @const */ var ALIAS_ID_KEY = '__alias';\n/** @const */ var EVENT_TIMERS_KEY = '__timers';\n/** @const */ var RESERVED_PROPERTIES = [\n SET_QUEUE_KEY,\n SET_ONCE_QUEUE_KEY,\n UNSET_QUEUE_KEY,\n ADD_QUEUE_KEY,\n APPEND_QUEUE_KEY,\n REMOVE_QUEUE_KEY,\n UNION_QUEUE_KEY,\n PEOPLE_DISTINCT_ID_KEY,\n ALIAS_ID_KEY,\n EVENT_TIMERS_KEY\n];\n\n/**\n * Mixpanel Persistence Object\n * @constructor\n */\nvar MixpanelPersistence = function(config) {\n this['props'] = {};\n this.campaign_params_saved = false;\n\n if (config['persistence_name']) {\n this.name = 'mp_' + config['persistence_name'];\n } else {\n this.name = 'mp_' + config['token'] + '_mixpanel';\n }\n\n var storage_type = config['persistence'];\n if (storage_type !== 'cookie' && storage_type !== 'localStorage') {\n console$1.critical('Unknown persistence type ' + storage_type + '; falling back to cookie');\n storage_type = config['persistence'] = 'cookie';\n }\n\n if (storage_type === 'localStorage' && _.localStorage.is_supported()) {\n this.storage = _.localStorage;\n } else {\n this.storage = _.cookie;\n }\n\n this.load();\n this.update_config(config);\n this.upgrade();\n this.save();\n};\n\nMixpanelPersistence.prototype.properties = function() {\n var p = {};\n\n this.load();\n\n // Filter out reserved properties\n _.each(this['props'], function(v, k) {\n if (!_.include(RESERVED_PROPERTIES, k)) {\n p[k] = v;\n }\n });\n return p;\n};\n\nMixpanelPersistence.prototype.load = function() {\n if (this.disabled) { return; }\n\n var entry = this.storage.parse(this.name);\n\n if (entry) {\n this['props'] = _.extend({}, entry);\n }\n};\n\nMixpanelPersistence.prototype.upgrade = function() {\n var old_cookie,\n old_localstorage;\n\n // if transferring from cookie to localStorage or vice-versa, copy existing\n // super properties over to new storage mode\n if (this.storage === _.localStorage) {\n old_cookie = _.cookie.parse(this.name);\n\n _.cookie.remove(this.name);\n _.cookie.remove(this.name, true);\n\n if (old_cookie) {\n this.register_once(old_cookie);\n }\n } else if (this.storage === _.cookie) {\n old_localstorage = _.localStorage.parse(this.name);\n\n _.localStorage.remove(this.name);\n\n if (old_localstorage) {\n this.register_once(old_localstorage);\n }\n }\n};\n\nMixpanelPersistence.prototype.save = function() {\n if (this.disabled) { return; }\n\n this.storage.set(\n this.name,\n _.JSONEncode(this['props']),\n this.expire_days,\n this.cross_subdomain,\n this.secure,\n this.cross_site,\n this.cookie_domain\n );\n};\n\nMixpanelPersistence.prototype.load_prop = function(key) {\n this.load();\n return this['props'][key];\n};\n\nMixpanelPersistence.prototype.remove = function() {\n // remove both domain and subdomain cookies\n this.storage.remove(this.name, false, this.cookie_domain);\n this.storage.remove(this.name, true, this.cookie_domain);\n};\n\n// removes the storage entry and deletes all loaded data\n// forced name for tests\nMixpanelPersistence.prototype.clear = function() {\n this.remove();\n this['props'] = {};\n};\n\n/**\n* @param {Object} props\n* @param {*=} default_value\n* @param {number=} days\n*/\nMixpanelPersistence.prototype.register_once = function(props, default_value, days) {\n if (_.isObject(props)) {\n if (typeof(default_value) === 'undefined') { default_value = 'None'; }\n this.expire_days = (typeof(days) === 'undefined') ? this.default_expiry : days;\n\n this.load();\n\n _.each(props, function(val, prop) {\n if (!this['props'].hasOwnProperty(prop) || this['props'][prop] === default_value) {\n this['props'][prop] = val;\n }\n }, this);\n\n this.save();\n\n return true;\n }\n return false;\n};\n\n/**\n* @param {Object} props\n* @param {number=} days\n*/\nMixpanelPersistence.prototype.register = function(props, days) {\n if (_.isObject(props)) {\n this.expire_days = (typeof(days) === 'undefined') ? this.default_expiry : days;\n\n this.load();\n _.extend(this['props'], props);\n this.save();\n\n return true;\n }\n return false;\n};\n\nMixpanelPersistence.prototype.unregister = function(prop) {\n this.load();\n if (prop in this['props']) {\n delete this['props'][prop];\n this.save();\n }\n};\n\nMixpanelPersistence.prototype.update_search_keyword = function(referrer) {\n this.register(_.info.searchInfo(referrer));\n};\n\n// EXPORTED METHOD, we test this directly.\nMixpanelPersistence.prototype.update_referrer_info = function(referrer) {\n // If referrer doesn't exist, we want to note the fact that it was type-in traffic.\n this.register_once({\n '$initial_referrer': referrer || '$direct',\n '$initial_referring_domain': _.info.referringDomain(referrer) || '$direct'\n }, '');\n};\n\nMixpanelPersistence.prototype.get_referrer_info = function() {\n return _.strip_empty_properties({\n '$initial_referrer': this['props']['$initial_referrer'],\n '$initial_referring_domain': this['props']['$initial_referring_domain']\n });\n};\n\nMixpanelPersistence.prototype.update_config = function(config) {\n this.default_expiry = this.expire_days = config['cookie_expiration'];\n this.set_disabled(config['disable_persistence']);\n this.set_cookie_domain(config['cookie_domain']);\n this.set_cross_site(config['cross_site_cookie']);\n this.set_cross_subdomain(config['cross_subdomain_cookie']);\n this.set_secure(config['secure_cookie']);\n};\n\nMixpanelPersistence.prototype.set_disabled = function(disabled) {\n this.disabled = disabled;\n if (this.disabled) {\n this.remove();\n } else {\n this.save();\n }\n};\n\nMixpanelPersistence.prototype.set_cookie_domain = function(cookie_domain) {\n if (cookie_domain !== this.cookie_domain) {\n this.remove();\n this.cookie_domain = cookie_domain;\n this.save();\n }\n};\n\nMixpanelPersistence.prototype.set_cross_site = function(cross_site) {\n if (cross_site !== this.cross_site) {\n this.cross_site = cross_site;\n this.remove();\n this.save();\n }\n};\n\nMixpanelPersistence.prototype.set_cross_subdomain = function(cross_subdomain) {\n if (cross_subdomain !== this.cross_subdomain) {\n this.cross_subdomain = cross_subdomain;\n this.remove();\n this.save();\n }\n};\n\nMixpanelPersistence.prototype.get_cross_subdomain = function() {\n return this.cross_subdomain;\n};\n\nMixpanelPersistence.prototype.set_secure = function(secure) {\n if (secure !== this.secure) {\n this.secure = secure ? true : false;\n this.remove();\n this.save();\n }\n};\n\nMixpanelPersistence.prototype._add_to_people_queue = function(queue, data) {\n var q_key = this._get_queue_key(queue),\n q_data = data[queue],\n set_q = this._get_or_create_queue(SET_ACTION),\n set_once_q = this._get_or_create_queue(SET_ONCE_ACTION),\n unset_q = this._get_or_create_queue(UNSET_ACTION),\n add_q = this._get_or_create_queue(ADD_ACTION),\n union_q = this._get_or_create_queue(UNION_ACTION),\n remove_q = this._get_or_create_queue(REMOVE_ACTION, []),\n append_q = this._get_or_create_queue(APPEND_ACTION, []);\n\n if (q_key === SET_QUEUE_KEY) {\n // Update the set queue - we can override any existing values\n _.extend(set_q, q_data);\n // if there was a pending increment, override it\n // with the set.\n this._pop_from_people_queue(ADD_ACTION, q_data);\n // if there was a pending union, override it\n // with the set.\n this._pop_from_people_queue(UNION_ACTION, q_data);\n this._pop_from_people_queue(UNSET_ACTION, q_data);\n } else if (q_key === SET_ONCE_QUEUE_KEY) {\n // only queue the data if there is not already a set_once call for it.\n _.each(q_data, function(v, k) {\n if (!(k in set_once_q)) {\n set_once_q[k] = v;\n }\n });\n this._pop_from_people_queue(UNSET_ACTION, q_data);\n } else if (q_key === UNSET_QUEUE_KEY) {\n _.each(q_data, function(prop) {\n\n // undo previously-queued actions on this key\n _.each([set_q, set_once_q, add_q, union_q], function(enqueued_obj) {\n if (prop in enqueued_obj) {\n delete enqueued_obj[prop];\n }\n });\n _.each(append_q, function(append_obj) {\n if (prop in append_obj) {\n delete append_obj[prop];\n }\n });\n\n unset_q[prop] = true;\n\n });\n } else if (q_key === ADD_QUEUE_KEY) {\n _.each(q_data, function(v, k) {\n // If it exists in the set queue, increment\n // the value\n if (k in set_q) {\n set_q[k] += v;\n } else {\n // If it doesn't exist, update the add\n // queue\n if (!(k in add_q)) {\n add_q[k] = 0;\n }\n add_q[k] += v;\n }\n }, this);\n this._pop_from_people_queue(UNSET_ACTION, q_data);\n } else if (q_key === UNION_QUEUE_KEY) {\n _.each(q_data, function(v, k) {\n if (_.isArray(v)) {\n if (!(k in union_q)) {\n union_q[k] = [];\n }\n // We may send duplicates, the server will dedup them.\n union_q[k] = union_q[k].concat(v);\n }\n });\n this._pop_from_people_queue(UNSET_ACTION, q_data);\n } else if (q_key === REMOVE_QUEUE_KEY) {\n remove_q.push(q_data);\n this._pop_from_people_queue(APPEND_ACTION, q_data);\n } else if (q_key === APPEND_QUEUE_KEY) {\n append_q.push(q_data);\n this._pop_from_people_queue(UNSET_ACTION, q_data);\n }\n\n console$1.log('MIXPANEL PEOPLE REQUEST (QUEUED, PENDING IDENTIFY):');\n console$1.log(data);\n\n this.save();\n};\n\nMixpanelPersistence.prototype._pop_from_people_queue = function(queue, data) {\n var q = this['props'][this._get_queue_key(queue)];\n if (!_.isUndefined(q)) {\n _.each(data, function(v, k) {\n if (queue === APPEND_ACTION || queue === REMOVE_ACTION) {\n // list actions: only remove if both k+v match\n // e.g. remove should not override append in a case like\n // append({foo: 'bar'}); remove({foo: 'qux'})\n _.each(q, function(queued_action) {\n if (queued_action[k] === v) {\n delete queued_action[k];\n }\n });\n } else {\n delete q[k];\n }\n }, this);\n }\n};\n\nMixpanelPersistence.prototype.load_queue = function(queue) {\n return this.load_prop(this._get_queue_key(queue));\n};\n\nMixpanelPersistence.prototype._get_queue_key = function(queue) {\n if (queue === SET_ACTION) {\n return SET_QUEUE_KEY;\n } else if (queue === SET_ONCE_ACTION) {\n return SET_ONCE_QUEUE_KEY;\n } else if (queue === UNSET_ACTION) {\n return UNSET_QUEUE_KEY;\n } else if (queue === ADD_ACTION) {\n return ADD_QUEUE_KEY;\n } else if (queue === APPEND_ACTION) {\n return APPEND_QUEUE_KEY;\n } else if (queue === REMOVE_ACTION) {\n return REMOVE_QUEUE_KEY;\n } else if (queue === UNION_ACTION) {\n return UNION_QUEUE_KEY;\n } else {\n console$1.error('Invalid queue:', queue);\n }\n};\n\nMixpanelPersistence.prototype._get_or_create_queue = function(queue, default_val) {\n var key = this._get_queue_key(queue);\n default_val = _.isUndefined(default_val) ? {} : default_val;\n return this['props'][key] || (this['props'][key] = default_val);\n};\n\nMixpanelPersistence.prototype.set_event_timer = function(event_name, timestamp) {\n var timers = this.load_prop(EVENT_TIMERS_KEY) || {};\n timers[event_name] = timestamp;\n this['props'][EVENT_TIMERS_KEY] = timers;\n this.save();\n};\n\nMixpanelPersistence.prototype.remove_event_timer = function(event_name) {\n var timers = this.load_prop(EVENT_TIMERS_KEY) || {};\n var timestamp = timers[event_name];\n if (!_.isUndefined(timestamp)) {\n delete this['props'][EVENT_TIMERS_KEY][event_name];\n this.save();\n }\n return timestamp;\n};\n\n/* eslint camelcase: \"off\" */\n\n/*\n * Mixpanel JS Library\n *\n * Copyright 2012, Mixpanel, Inc. All Rights Reserved\n * http://mixpanel.com/\n *\n * Includes portions of Underscore.js\n * http://documentcloud.github.com/underscore/\n * (c) 2011 Jeremy Ashkenas, DocumentCloud Inc.\n * Released under the MIT License.\n */\n\n// ==ClosureCompiler==\n// @compilation_level ADVANCED_OPTIMIZATIONS\n// @output_file_name mixpanel-2.8.min.js\n// ==/ClosureCompiler==\n\n/*\nSIMPLE STYLE GUIDE:\n\nthis.x === public function\nthis._x === internal - only use within this file\nthis.__x === private - only use within the class\n\nGlobals should be all caps\n*/\n\nvar init_type; // MODULE or SNIPPET loader\n// allow bundlers to specify how extra code (recorder bundle) should be loaded\n// eslint-disable-next-line no-unused-vars\nvar load_extra_bundle = function(src, _onload) {\n throw new Error(src + ' not available in this build.');\n};\n\nvar mixpanel_master; // main mixpanel instance / object\nvar INIT_MODULE = 0;\nvar INIT_SNIPPET = 1;\n\nvar IDENTITY_FUNC = function(x) {return x;};\nvar NOOP_FUNC = function() {};\n\n/** @const */ var PRIMARY_INSTANCE_NAME = 'mixpanel';\n/** @const */ var PAYLOAD_TYPE_BASE64 = 'base64';\n/** @const */ var PAYLOAD_TYPE_JSON = 'json';\n/** @const */ var DEVICE_ID_PREFIX = '$device:';\n\n\n/*\n * Dynamic... constants? Is that an oxymoron?\n */\n// http://hacks.mozilla.org/2009/07/cross-site-xmlhttprequest-with-cors/\n// https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest#withCredentials\nvar USE_XHR = (win.XMLHttpRequest && 'withCredentials' in new XMLHttpRequest());\n\n// IE<10 does not support cross-origin XHR's but script tags\n// with defer won't block window.onload; ENQUEUE_REQUESTS\n// should only be true for Opera<12\nvar ENQUEUE_REQUESTS = !USE_XHR && (userAgent.indexOf('MSIE') === -1) && (userAgent.indexOf('Mozilla') === -1);\n\n// save reference to navigator.sendBeacon so it can be minified\nvar sendBeacon = null;\nif (navigator['sendBeacon']) {\n sendBeacon = function() {\n // late reference to navigator.sendBeacon to allow patching/spying\n return navigator['sendBeacon'].apply(navigator, arguments);\n };\n}\n\nvar DEFAULT_API_ROUTES = {\n 'track': 'track/',\n 'engage': 'engage/',\n 'groups': 'groups/',\n 'record': 'record/'\n};\n\n/*\n * Module-level globals\n */\nvar DEFAULT_CONFIG = {\n 'api_host': 'https://api-js.mixpanel.com',\n 'api_routes': DEFAULT_API_ROUTES,\n 'api_method': 'POST',\n 'api_transport': 'XHR',\n 'api_payload_format': PAYLOAD_TYPE_BASE64,\n 'app_host': 'https://mixpanel.com',\n 'cdn': 'https://cdn.mxpnl.com',\n 'cross_site_cookie': false,\n 'cross_subdomain_cookie': true,\n 'error_reporter': NOOP_FUNC,\n 'persistence': 'cookie',\n 'persistence_name': '',\n 'cookie_domain': '',\n 'cookie_name': '',\n 'loaded': NOOP_FUNC,\n 'mp_loader': null,\n 'track_marketing': true,\n 'track_pageview': false,\n 'skip_first_touch_marketing': false,\n 'store_google': true,\n 'stop_utm_persistence': false,\n 'save_referrer': true,\n 'test': false,\n 'verbose': false,\n 'img': false,\n 'debug': false,\n 'track_links_timeout': 300,\n 'cookie_expiration': 365,\n 'upgrade': false,\n 'disable_persistence': false,\n 'disable_cookie': false,\n 'secure_cookie': false,\n 'ip': true,\n 'opt_out_tracking_by_default': false,\n 'opt_out_persistence_by_default': false,\n 'opt_out_tracking_persistence_type': 'localStorage',\n 'opt_out_tracking_cookie_prefix': null,\n 'property_blacklist': [],\n 'xhr_headers': {}, // { header: value, header2: value }\n 'ignore_dnt': false,\n 'batch_requests': true,\n 'batch_size': 50,\n 'batch_flush_interval_ms': 5000,\n 'batch_request_timeout_ms': 90000,\n 'batch_autostart': true,\n 'hooks': {},\n 'record_block_class': new RegExp('^(mp-block|fs-exclude|amp-block|rr-block|ph-no-capture)$'),\n 'record_block_selector': 'img, video',\n 'record_collect_fonts': false,\n 'record_idle_timeout_ms': 30 * 60 * 1000, // 30 minutes\n 'record_inline_images': false,\n 'record_mask_text_class': new RegExp('^(mp-mask|fs-mask|amp-mask|rr-mask|ph-mask)$'),\n 'record_mask_text_selector': '*',\n 'record_max_ms': MAX_RECORDING_MS,\n 'record_min_ms': 0,\n 'record_sessions_percent': 0,\n 'recorder_src': 'https://cdn.mxpnl.com/libs/mixpanel-recorder.min.js'\n};\n\nvar DOM_LOADED = false;\n\n/**\n * Mixpanel Library Object\n * @constructor\n */\nvar MixpanelLib = function() {};\n\n\n/**\n * create_mplib(token:string, config:object, name:string)\n *\n * This function is used by the init method of MixpanelLib objects\n * as well as the main initializer at the end of the JSLib (that\n * initializes document.mixpanel as well as any additional instances\n * declared before this file has loaded).\n */\nvar create_mplib = function(token, config, name) {\n var instance,\n target = (name === PRIMARY_INSTANCE_NAME) ? mixpanel_master : mixpanel_master[name];\n\n if (target && init_type === INIT_MODULE) {\n instance = target;\n } else {\n if (target && !_.isArray(target)) {\n console$1.error('You have already initialized ' + name);\n return;\n }\n instance = new MixpanelLib();\n }\n\n instance._cached_groups = {}; // cache groups in a pool\n\n instance._init(token, config, name);\n\n instance['people'] = new MixpanelPeople();\n instance['people']._init(instance);\n\n if (!instance.get_config('skip_first_touch_marketing')) {\n // We need null UTM params in the object because\n // UTM parameters act as a tuple. If any UTM param\n // is present, then we set all UTM params including\n // empty ones together\n var utm_params = _.info.campaignParams(null);\n var initial_utm_params = {};\n var has_utm = false;\n _.each(utm_params, function(utm_value, utm_key) {\n initial_utm_params['initial_' + utm_key] = utm_value;\n if (utm_value) {\n has_utm = true;\n }\n });\n if (has_utm) {\n instance['people'].set_once(initial_utm_params);\n }\n }\n\n // if any instance on the page has debug = true, we set the\n // global debug to be true\n Config.DEBUG = Config.DEBUG || instance.get_config('debug');\n\n // if target is not defined, we called init after the lib already\n // loaded, so there won't be an array of things to execute\n if (!_.isUndefined(target) && _.isArray(target)) {\n // Crunch through the people queue first - we queue this data up &\n // flush on identify, so it's better to do all these operations first\n instance._execute_array.call(instance['people'], target['people']);\n instance._execute_array(target);\n }\n\n return instance;\n};\n\n// Initialization methods\n\n/**\n * This function initializes a new instance of the Mixpanel tracking object.\n * All new instances are added to the main mixpanel object as sub properties (such as\n * mixpanel.library_name) and also returned by this function. To define a\n * second instance on the page, you would call:\n *\n * mixpanel.init('new token', { your: 'config' }, 'library_name');\n *\n * and use it like so:\n *\n * mixpanel.library_name.track(...);\n *\n * @param {String} token Your Mixpanel API token\n * @param {Object} [config] A dictionary of config options to override. See a list of default config options.\n * @param {String} [name] The name for the new mixpanel instance that you want created\n */\nMixpanelLib.prototype.init = function (token, config, name) {\n if (_.isUndefined(name)) {\n this.report_error('You must name your new library: init(token, config, name)');\n return;\n }\n if (name === PRIMARY_INSTANCE_NAME) {\n this.report_error('You must initialize the main mixpanel object right after you include the Mixpanel js snippet');\n return;\n }\n\n var instance = create_mplib(token, config, name);\n mixpanel_master[name] = instance;\n instance._loaded();\n\n return instance;\n};\n\n// mixpanel._init(token:string, config:object, name:string)\n//\n// This function sets up the current instance of the mixpanel\n// library. The difference between this method and the init(...)\n// method is this one initializes the actual instance, whereas the\n// init(...) method sets up a new library and calls _init on it.\n//\nMixpanelLib.prototype._init = function(token, config, name) {\n config = config || {};\n\n this['__loaded'] = true;\n this['config'] = {};\n\n var variable_features = {};\n\n // default to JSON payload for standard mixpanel.com API hosts\n if (!('api_payload_format' in config)) {\n var api_host = config['api_host'] || DEFAULT_CONFIG['api_host'];\n if (api_host.match(/\\.mixpanel\\.com/)) {\n variable_features['api_payload_format'] = PAYLOAD_TYPE_JSON;\n }\n }\n\n this.set_config(_.extend({}, DEFAULT_CONFIG, variable_features, config, {\n 'name': name,\n 'token': token,\n 'callback_fn': ((name === PRIMARY_INSTANCE_NAME) ? name : PRIMARY_INSTANCE_NAME + '.' + name) + '._jsc'\n }));\n\n this['_jsc'] = NOOP_FUNC;\n\n this.__dom_loaded_queue = [];\n this.__request_queue = [];\n this.__disabled_events = [];\n this._flags = {\n 'disable_all_events': false,\n 'identify_called': false\n };\n\n // set up request queueing/batching\n this.request_batchers = {};\n this._batch_requests = this.get_config('batch_requests');\n if (this._batch_requests) {\n if (!_.localStorage.is_supported(true) || !USE_XHR) {\n this._batch_requests = false;\n console$1.log('Turning off Mixpanel request-queueing; needs XHR and localStorage support');\n _.each(this.get_batcher_configs(), function(batcher_config) {\n console$1.log('Clearing batch queue ' + batcher_config.queue_key);\n _.localStorage.remove(batcher_config.queue_key);\n });\n } else {\n this.init_batchers();\n if (sendBeacon && win.addEventListener) {\n // Before page closes or hides (user tabs away etc), attempt to flush any events\n // queued up via navigator.sendBeacon. Since sendBeacon doesn't report success/failure,\n // events will not be removed from the persistent store; if the site is loaded again,\n // the events will be flushed again on startup and deduplicated on the Mixpanel server\n // side.\n // There is no reliable way to capture only page close events, so we lean on the\n // visibilitychange and pagehide events as recommended at\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/unload_event#usage_notes.\n // These events fire when the user clicks away from the current page/tab, so will occur\n // more frequently than page unload, but are the only mechanism currently for capturing\n // this scenario somewhat reliably.\n var flush_on_unload = _.bind(function() {\n if (!this.request_batchers.events.stopped) {\n this.request_batchers.events.flush({unloading: true});\n }\n }, this);\n win.addEventListener('pagehide', function(ev) {\n if (ev['persisted']) {\n flush_on_unload();\n }\n });\n win.addEventListener('visibilitychange', function() {\n if (document$1['visibilityState'] === 'hidden') {\n flush_on_unload();\n }\n });\n }\n }\n }\n\n this['persistence'] = this['cookie'] = new MixpanelPersistence(this['config']);\n this.unpersisted_superprops = {};\n this._gdpr_init();\n\n var uuid = _.UUID();\n if (!this.get_distinct_id()) {\n // There is no need to set the distinct id\n // or the device id if something was already stored\n // in the persitence\n this.register_once({\n 'distinct_id': DEVICE_ID_PREFIX + uuid,\n '$device_id': uuid\n }, '');\n }\n\n var track_pageview_option = this.get_config('track_pageview');\n if (track_pageview_option) {\n this._init_url_change_tracking(track_pageview_option);\n }\n\n if (this.get_config('record_sessions_percent') > 0 && Math.random() * 100 <= this.get_config('record_sessions_percent')) {\n this.start_session_recording();\n }\n};\n\nMixpanelLib.prototype.start_session_recording = addOptOutCheckMixpanelLib(function () {\n if (!win['MutationObserver']) {\n console$1.critical('Browser does not support MutationObserver; skipping session recording');\n return;\n }\n\n var handleLoadedRecorder = _.bind(function() {\n this._recorder = this._recorder || new win['__mp_recorder'](this);\n this._recorder['startRecording']();\n }, this);\n\n if (_.isUndefined(win['__mp_recorder'])) {\n load_extra_bundle(this.get_config('recorder_src'), handleLoadedRecorder);\n } else {\n handleLoadedRecorder();\n }\n});\n\nMixpanelLib.prototype.stop_session_recording = function () {\n if (this._recorder) {\n this._recorder['stopRecording']();\n } else {\n console$1.critical('Session recorder module not loaded');\n }\n};\n\nMixpanelLib.prototype.get_session_recording_properties = function () {\n var props = {};\n if (this._recorder) {\n var replay_id = this._recorder['replayId'];\n if (replay_id) {\n props['$mp_replay_id'] = replay_id;\n }\n }\n return props;\n};\n\n// Private methods\n\nMixpanelLib.prototype._loaded = function() {\n this.get_config('loaded')(this);\n this._set_default_superprops();\n this['people'].set_once(this['persistence'].get_referrer_info());\n\n // `store_google` is now deprecated and previously stored UTM parameters are cleared\n // from persistence by default.\n if (this.get_config('store_google') && this.get_config('stop_utm_persistence')) {\n var utm_params = _.info.campaignParams(null);\n _.each(utm_params, function(_utm_value, utm_key) {\n // We need to unregister persisted UTM parameters so old values\n // are not mixed with the new UTM parameters\n this.unregister(utm_key);\n }.bind(this));\n }\n};\n\n// update persistence with info on referrer, UTM params, etc\nMixpanelLib.prototype._set_default_superprops = function() {\n this['persistence'].update_search_keyword(document$1.referrer);\n // Registering super properties for UTM persistence by 'store_google' is deprecated.\n if (this.get_config('store_google') && !this.get_config('stop_utm_persistence')) {\n this.register(_.info.campaignParams());\n }\n if (this.get_config('save_referrer')) {\n this['persistence'].update_referrer_info(document$1.referrer);\n }\n};\n\nMixpanelLib.prototype._dom_loaded = function() {\n _.each(this.__dom_loaded_queue, function(item) {\n this._track_dom.apply(this, item);\n }, this);\n\n if (!this.has_opted_out_tracking()) {\n _.each(this.__request_queue, function(item) {\n this._send_request.apply(this, item);\n }, this);\n }\n\n delete this.__dom_loaded_queue;\n delete this.__request_queue;\n};\n\nMixpanelLib.prototype._track_dom = function(DomClass, args) {\n if (this.get_config('img')) {\n this.report_error('You can\\'t use DOM tracking functions with img = true.');\n return false;\n }\n\n if (!DOM_LOADED) {\n this.__dom_loaded_queue.push([DomClass, args]);\n return false;\n }\n\n var dt = new DomClass().init(this);\n return dt.track.apply(dt, args);\n};\n\nMixpanelLib.prototype._init_url_change_tracking = function(track_pageview_option) {\n var previous_tracked_url = '';\n var tracked = this.track_pageview();\n if (tracked) {\n previous_tracked_url = _.info.currentUrl();\n }\n\n if (_.include(['full-url', 'url-with-path-and-query-string', 'url-with-path'], track_pageview_option)) {\n win.addEventListener('popstate', function() {\n win.dispatchEvent(new Event('mp_locationchange'));\n });\n win.addEventListener('hashchange', function() {\n win.dispatchEvent(new Event('mp_locationchange'));\n });\n var nativePushState = win.history.pushState;\n if (typeof nativePushState === 'function') {\n win.history.pushState = function(state, unused, url) {\n nativePushState.call(win.history, state, unused, url);\n win.dispatchEvent(new Event('mp_locationchange'));\n };\n }\n var nativeReplaceState = win.history.replaceState;\n if (typeof nativeReplaceState === 'function') {\n win.history.replaceState = function(state, unused, url) {\n nativeReplaceState.call(win.history, state, unused, url);\n win.dispatchEvent(new Event('mp_locationchange'));\n };\n }\n win.addEventListener('mp_locationchange', function() {\n var current_url = _.info.currentUrl();\n var should_track = false;\n if (track_pageview_option === 'full-url') {\n should_track = current_url !== previous_tracked_url;\n } else if (track_pageview_option === 'url-with-path-and-query-string') {\n should_track = current_url.split('#')[0] !== previous_tracked_url.split('#')[0];\n } else if (track_pageview_option === 'url-with-path') {\n should_track = current_url.split('#')[0].split('?')[0] !== previous_tracked_url.split('#')[0].split('?')[0];\n }\n\n if (should_track) {\n var tracked = this.track_pageview();\n if (tracked) {\n previous_tracked_url = current_url;\n }\n }\n }.bind(this));\n }\n};\n\n/**\n * _prepare_callback() should be called by callers of _send_request for use\n * as the callback argument.\n *\n * If there is no callback, this returns null.\n * If we are going to make XHR/XDR requests, this returns a function.\n * If we are going to use script tags, this returns a string to use as the\n * callback GET param.\n */\nMixpanelLib.prototype._prepare_callback = function(callback, data) {\n if (_.isUndefined(callback)) {\n return null;\n }\n\n if (USE_XHR) {\n var callback_function = function(response) {\n callback(response, data);\n };\n return callback_function;\n } else {\n // if the user gives us a callback, we store as a random\n // property on this instances jsc function and update our\n // callback string to reflect that.\n var jsc = this['_jsc'];\n var randomized_cb = '' + Math.floor(Math.random() * 100000000);\n var callback_string = this.get_config('callback_fn') + '[' + randomized_cb + ']';\n jsc[randomized_cb] = function(response) {\n delete jsc[randomized_cb];\n callback(response, data);\n };\n return callback_string;\n }\n};\n\nMixpanelLib.prototype._send_request = function(url, data, options, callback) {\n var succeeded = true;\n\n if (ENQUEUE_REQUESTS) {\n this.__request_queue.push(arguments);\n return succeeded;\n }\n\n var DEFAULT_OPTIONS = {\n method: this.get_config('api_method'),\n transport: this.get_config('api_transport'),\n verbose: this.get_config('verbose')\n };\n var body_data = null;\n\n if (!callback && (_.isFunction(options) || typeof options === 'string')) {\n callback = options;\n options = null;\n }\n options = _.extend(DEFAULT_OPTIONS, options || {});\n if (!USE_XHR) {\n options.method = 'GET';\n }\n var use_post = options.method === 'POST';\n var use_sendBeacon = sendBeacon && use_post && options.transport.toLowerCase() === 'sendbeacon';\n\n // needed to correctly format responses\n var verbose_mode = options.verbose;\n if (data['verbose']) { verbose_mode = true; }\n\n if (this.get_config('test')) { data['test'] = 1; }\n if (verbose_mode) { data['verbose'] = 1; }\n if (this.get_config('img')) { data['img'] = 1; }\n if (!USE_XHR) {\n if (callback) {\n data['callback'] = callback;\n } else if (verbose_mode || this.get_config('test')) {\n // Verbose output (from verbose mode, or an error in test mode) is a json blob,\n // which by itself is not valid javascript. Without a callback, this verbose output will\n // cause an error when returned via jsonp, so we force a no-op callback param.\n // See the ECMA script spec: http://www.ecma-international.org/ecma-262/5.1/#sec-12.4\n data['callback'] = '(function(){})';\n }\n }\n\n data['ip'] = this.get_config('ip')?1:0;\n data['_'] = new Date().getTime().toString();\n\n if (use_post) {\n body_data = 'data=' + encodeURIComponent(data['data']);\n delete data['data'];\n }\n\n url += '?' + _.HTTPBuildQuery(data);\n\n var lib = this;\n if ('img' in data) {\n var img = document$1.createElement('img');\n img.src = url;\n document$1.body.appendChild(img);\n } else if (use_sendBeacon) {\n try {\n succeeded = sendBeacon(url, body_data);\n } catch (e) {\n lib.report_error(e);\n succeeded = false;\n }\n try {\n if (callback) {\n callback(succeeded ? 1 : 0);\n }\n } catch (e) {\n lib.report_error(e);\n }\n } else if (USE_XHR) {\n try {\n var req = new XMLHttpRequest();\n req.open(options.method, url, true);\n\n var headers = this.get_config('xhr_headers');\n if (use_post) {\n headers['Content-Type'] = 'application/x-www-form-urlencoded';\n }\n _.each(headers, function(headerValue, headerName) {\n req.setRequestHeader(headerName, headerValue);\n });\n\n if (options.timeout_ms && typeof req.timeout !== 'undefined') {\n req.timeout = options.timeout_ms;\n var start_time = new Date().getTime();\n }\n\n // send the mp_optout cookie\n // withCredentials cannot be modified until after calling .open on Android and Mobile Safari\n req.withCredentials = true;\n req.onreadystatechange = function () {\n if (req.readyState === 4) { // XMLHttpRequest.DONE == 4, except in safari 4\n if (req.status === 200) {\n if (callback) {\n if (verbose_mode) {\n var response;\n try {\n response = _.JSONDecode(req.responseText);\n } catch (e) {\n lib.report_error(e);\n if (options.ignore_json_errors) {\n response = req.responseText;\n } else {\n return;\n }\n }\n callback(response);\n } else {\n callback(Number(req.responseText));\n }\n }\n } else {\n var error;\n if (\n req.timeout &&\n !req.status &&\n new Date().getTime() - start_time >= req.timeout\n ) {\n error = 'timeout';\n } else {\n error = 'Bad HTTP status: ' + req.status + ' ' + req.statusText;\n }\n lib.report_error(error);\n if (callback) {\n if (verbose_mode) {\n var response_headers = req['responseHeaders'] || {};\n callback({status: 0, httpStatusCode: req['status'], error: error, retryAfter: response_headers['Retry-After']});\n } else {\n callback(0);\n }\n }\n }\n }\n };\n req.send(body_data);\n } catch (e) {\n lib.report_error(e);\n succeeded = false;\n }\n } else {\n var script = document$1.createElement('script');\n script.type = 'text/javascript';\n script.async = true;\n script.defer = true;\n script.src = url;\n var s = document$1.getElementsByTagName('script')[0];\n s.parentNode.insertBefore(script, s);\n }\n\n return succeeded;\n};\n\n/**\n * _execute_array() deals with processing any mixpanel function\n * calls that were called before the Mixpanel library were loaded\n * (and are thus stored in an array so they can be called later)\n *\n * Note: we fire off all the mixpanel function calls && user defined\n * functions BEFORE we fire off mixpanel tracking calls. This is so\n * identify/register/set_config calls can properly modify early\n * tracking calls.\n *\n * @param {Array} array\n */\nMixpanelLib.prototype._execute_array = function(array) {\n var fn_name, alias_calls = [], other_calls = [], tracking_calls = [];\n _.each(array, function(item) {\n if (item) {\n fn_name = item[0];\n if (_.isArray(fn_name)) {\n tracking_calls.push(item); // chained call e.g. mixpanel.get_group().set()\n } else if (typeof(item) === 'function') {\n item.call(this);\n } else if (_.isArray(item) && fn_name === 'alias') {\n alias_calls.push(item);\n } else if (_.isArray(item) && fn_name.indexOf('track') !== -1 && typeof(this[fn_name]) === 'function') {\n tracking_calls.push(item);\n } else {\n other_calls.push(item);\n }\n }\n }, this);\n\n var execute = function(calls, context) {\n _.each(calls, function(item) {\n if (_.isArray(item[0])) {\n // chained call\n var caller = context;\n _.each(item, function(call) {\n caller = caller[call[0]].apply(caller, call.slice(1));\n });\n } else {\n this[item[0]].apply(this, item.slice(1));\n }\n }, context);\n };\n\n execute(alias_calls, this);\n execute(other_calls, this);\n execute(tracking_calls, this);\n};\n\n// request queueing utils\n\nMixpanelLib.prototype.are_batchers_initialized = function() {\n return !!this.request_batchers.events;\n};\n\nMixpanelLib.prototype.get_batcher_configs = function() {\n var queue_prefix = '__mpq_' + this.get_config('token');\n var api_routes = this.get_config('api_routes');\n this._batcher_configs = this._batcher_configs || {\n events: {type: 'events', endpoint: '/' + api_routes['track'], queue_key: queue_prefix + '_ev'},\n people: {type: 'people', endpoint: '/' + api_routes['engage'], queue_key: queue_prefix + '_pp'},\n groups: {type: 'groups', endpoint: '/' + api_routes['groups'], queue_key: queue_prefix + '_gr'}\n };\n return this._batcher_configs;\n};\n\nMixpanelLib.prototype.init_batchers = function() {\n if (!this.are_batchers_initialized()) {\n var batcher_for = _.bind(function(attrs) {\n return new RequestBatcher(\n attrs.queue_key,\n {\n libConfig: this['config'],\n errorReporter: this.get_config('error_reporter'),\n sendRequestFunc: _.bind(function(data, options, cb) {\n this._send_request(\n this.get_config('api_host') + attrs.endpoint,\n this._encode_data_for_request(data),\n options,\n this._prepare_callback(cb, data)\n );\n }, this),\n beforeSendHook: _.bind(function(item) {\n return this._run_hook('before_send_' + attrs.type, item);\n }, this),\n stopAllBatchingFunc: _.bind(this.stop_batch_senders, this),\n usePersistence: true\n }\n );\n }, this);\n var batcher_configs = this.get_batcher_configs();\n this.request_batchers = {\n events: batcher_for(batcher_configs.events),\n people: batcher_for(batcher_configs.people),\n groups: batcher_for(batcher_configs.groups)\n };\n }\n if (this.get_config('batch_autostart')) {\n this.start_batch_senders();\n }\n};\n\nMixpanelLib.prototype.start_batch_senders = function() {\n this._batchers_were_started = true;\n if (this.are_batchers_initialized()) {\n this._batch_requests = true;\n _.each(this.request_batchers, function(batcher) {\n batcher.start();\n });\n }\n};\n\nMixpanelLib.prototype.stop_batch_senders = function() {\n this._batch_requests = false;\n _.each(this.request_batchers, function(batcher) {\n batcher.stop();\n batcher.clear();\n });\n};\n\n/**\n * push() keeps the standard async-array-push\n * behavior around after the lib is loaded.\n * This is only useful for external integrations that\n * do not wish to rely on our convenience methods\n * (created in the snippet).\n *\n * ### Usage:\n * mixpanel.push(['register', { a: 'b' }]);\n *\n * @param {Array} item A [function_name, args...] array to be executed\n */\nMixpanelLib.prototype.push = function(item) {\n this._execute_array([item]);\n};\n\n/**\n * Disable events on the Mixpanel object. If passed no arguments,\n * this function disables tracking of any event. If passed an\n * array of event names, those events will be disabled, but other\n * events will continue to be tracked.\n *\n * Note: this function does not stop other mixpanel functions from\n * firing, such as register() or people.set().\n *\n * @param {Array} [events] An array of event names to disable\n */\nMixpanelLib.prototype.disable = function(events) {\n if (typeof(events) === 'undefined') {\n this._flags.disable_all_events = true;\n } else {\n this.__disabled_events = this.__disabled_events.concat(events);\n }\n};\n\nMixpanelLib.prototype._encode_data_for_request = function(data) {\n var encoded_data = _.JSONEncode(data);\n if (this.get_config('api_payload_format') === PAYLOAD_TYPE_BASE64) {\n encoded_data = _.base64Encode(encoded_data);\n }\n return {'data': encoded_data};\n};\n\n// internal method for handling track vs batch-enqueue logic\nMixpanelLib.prototype._track_or_batch = function(options, callback) {\n var truncated_data = _.truncate(options.data, 255);\n var endpoint = options.endpoint;\n var batcher = options.batcher;\n var should_send_immediately = options.should_send_immediately;\n var send_request_options = options.send_request_options || {};\n callback = callback || NOOP_FUNC;\n\n var request_enqueued_or_initiated = true;\n var send_request_immediately = _.bind(function() {\n if (!send_request_options.skip_hooks) {\n truncated_data = this._run_hook('before_send_' + options.type, truncated_data);\n }\n if (truncated_data) {\n console$1.log('MIXPANEL REQUEST:');\n console$1.log(truncated_data);\n return this._send_request(\n endpoint,\n this._encode_data_for_request(truncated_data),\n send_request_options,\n this._prepare_callback(callback, truncated_data)\n );\n } else {\n return null;\n }\n }, this);\n\n if (this._batch_requests && !should_send_immediately) {\n batcher.enqueue(truncated_data, function(succeeded) {\n if (succeeded) {\n callback(1, truncated_data);\n } else {\n send_request_immediately();\n }\n });\n } else {\n request_enqueued_or_initiated = send_request_immediately();\n }\n\n return request_enqueued_or_initiated && truncated_data;\n};\n\n/**\n * Track an event. This is the most important and\n * frequently used Mixpanel function.\n *\n * ### Usage:\n *\n * // track an event named 'Registered'\n * mixpanel.track('Registered', {'Gender': 'Male', 'Age': 21});\n *\n * // track an event using navigator.sendBeacon\n * mixpanel.track('Left page', {'duration_seconds': 35}, {transport: 'sendBeacon'});\n *\n * To track link clicks or form submissions, see track_links() or track_forms().\n *\n * @param {String} event_name The name of the event. This can be anything the user does - 'Button Click', 'Sign Up', 'Item Purchased', etc.\n * @param {Object} [properties] A set of properties to include with the event you're sending. These describe the user who did the event or details about the event itself.\n * @param {Object} [options] Optional configuration for this track request.\n * @param {String} [options.transport] Transport method for network request ('xhr' or 'sendBeacon').\n * @param {Boolean} [options.send_immediately] Whether to bypass batching/queueing and send track request immediately.\n * @param {Function} [callback] If provided, the callback function will be called after tracking the event.\n * @returns {Boolean|Object} If the tracking request was successfully initiated/queued, an object\n * with the tracking payload sent to the API server is returned; otherwise false.\n */\nMixpanelLib.prototype.track = addOptOutCheckMixpanelLib(function(event_name, properties, options, callback) {\n if (!callback && typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n var transport = options['transport']; // external API, don't minify 'transport' prop\n if (transport) {\n options.transport = transport; // 'transport' prop name can be minified internally\n }\n var should_send_immediately = options['send_immediately'];\n if (typeof callback !== 'function') {\n callback = NOOP_FUNC;\n }\n\n if (_.isUndefined(event_name)) {\n this.report_error('No event name provided to mixpanel.track');\n return;\n }\n\n if (this._event_is_disabled(event_name)) {\n callback(0);\n return;\n }\n\n // set defaults\n properties = _.extend({}, properties);\n properties['token'] = this.get_config('token');\n\n // set $duration if time_event was previously called for this event\n var start_timestamp = this['persistence'].remove_event_timer(event_name);\n if (!_.isUndefined(start_timestamp)) {\n var duration_in_ms = new Date().getTime() - start_timestamp;\n properties['$duration'] = parseFloat((duration_in_ms / 1000).toFixed(3));\n }\n\n this._set_default_superprops();\n\n var marketing_properties = this.get_config('track_marketing')\n ? _.info.marketingParams()\n : {};\n\n // note: extend writes to the first object, so lets make sure we\n // don't write to the persistence properties object and info\n // properties object by passing in a new object\n\n // update properties with pageview info and super-properties\n properties = _.extend(\n {},\n _.info.properties({'mp_loader': this.get_config('mp_loader')}),\n marketing_properties,\n this['persistence'].properties(),\n this.unpersisted_superprops,\n this.get_session_recording_properties(),\n properties\n );\n\n var property_blacklist = this.get_config('property_blacklist');\n if (_.isArray(property_blacklist)) {\n _.each(property_blacklist, function(blacklisted_prop) {\n delete properties[blacklisted_prop];\n });\n } else {\n this.report_error('Invalid value for property_blacklist config: ' + property_blacklist);\n }\n\n var data = {\n 'event': event_name,\n 'properties': properties\n };\n var ret = this._track_or_batch({\n type: 'events',\n data: data,\n endpoint: this.get_config('api_host') + '/' + this.get_config('api_routes')['track'],\n batcher: this.request_batchers.events,\n should_send_immediately: should_send_immediately,\n send_request_options: options\n }, callback);\n\n return ret;\n});\n\n/**\n * Register the current user into one/many groups.\n *\n * ### Usage:\n *\n * mixpanel.set_group('company', ['mixpanel', 'google']) // an array of IDs\n * mixpanel.set_group('company', 'mixpanel')\n * mixpanel.set_group('company', 128746312)\n *\n * @param {String} group_key Group key\n * @param {Array|String|Number} group_ids An array of group IDs, or a singular group ID\n * @param {Function} [callback] If provided, the callback will be called after tracking the event.\n *\n */\nMixpanelLib.prototype.set_group = addOptOutCheckMixpanelLib(function(group_key, group_ids, callback) {\n if (!_.isArray(group_ids)) {\n group_ids = [group_ids];\n }\n var prop = {};\n prop[group_key] = group_ids;\n this.register(prop);\n return this['people'].set(group_key, group_ids, callback);\n});\n\n/**\n * Add a new group for this user.\n *\n * ### Usage:\n *\n * mixpanel.add_group('company', 'mixpanel')\n *\n * @param {String} group_key Group key\n * @param {*} group_id A valid Mixpanel property type\n * @param {Function} [callback] If provided, the callback will be called after tracking the event.\n */\nMixpanelLib.prototype.add_group = addOptOutCheckMixpanelLib(function(group_key, group_id, callback) {\n var old_values = this.get_property(group_key);\n var prop = {};\n if (old_values === undefined) {\n prop[group_key] = [group_id];\n this.register(prop);\n } else {\n if (old_values.indexOf(group_id) === -1) {\n old_values.push(group_id);\n prop[group_key] = old_values;\n this.register(prop);\n }\n }\n return this['people'].union(group_key, group_id, callback);\n});\n\n/**\n * Remove a group from this user.\n *\n * ### Usage:\n *\n * mixpanel.remove_group('company', 'mixpanel')\n *\n * @param {String} group_key Group key\n * @param {*} group_id A valid Mixpanel property type\n * @param {Function} [callback] If provided, the callback will be called after tracking the event.\n */\nMixpanelLib.prototype.remove_group = addOptOutCheckMixpanelLib(function(group_key, group_id, callback) {\n var old_value = this.get_property(group_key);\n // if the value doesn't exist, the persistent store is unchanged\n if (old_value !== undefined) {\n var idx = old_value.indexOf(group_id);\n if (idx > -1) {\n old_value.splice(idx, 1);\n this.register({group_key: old_value});\n }\n if (old_value.length === 0) {\n this.unregister(group_key);\n }\n }\n return this['people'].remove(group_key, group_id, callback);\n});\n\n/**\n * Track an event with specific groups.\n *\n * ### Usage:\n *\n * mixpanel.track_with_groups('purchase', {'product': 'iphone'}, {'University': ['UCB', 'UCLA']})\n *\n * @param {String} event_name The name of the event (see `mixpanel.track()`)\n * @param {Object=} properties A set of properties to include with the event you're sending (see `mixpanel.track()`)\n * @param {Object=} groups An object mapping group name keys to one or more values\n * @param {Function} [callback] If provided, the callback will be called after tracking the event.\n */\nMixpanelLib.prototype.track_with_groups = addOptOutCheckMixpanelLib(function(event_name, properties, groups, callback) {\n var tracking_props = _.extend({}, properties || {});\n _.each(groups, function(v, k) {\n if (v !== null && v !== undefined) {\n tracking_props[k] = v;\n }\n });\n return this.track(event_name, tracking_props, callback);\n});\n\nMixpanelLib.prototype._create_map_key = function (group_key, group_id) {\n return group_key + '_' + JSON.stringify(group_id);\n};\n\nMixpanelLib.prototype._remove_group_from_cache = function (group_key, group_id) {\n delete this._cached_groups[this._create_map_key(group_key, group_id)];\n};\n\n/**\n * Look up reference to a Mixpanel group\n *\n * ### Usage:\n *\n * mixpanel.get_group(group_key, group_id)\n *\n * @param {String} group_key Group key\n * @param {Object} group_id A valid Mixpanel property type\n * @returns {Object} A MixpanelGroup identifier\n */\nMixpanelLib.prototype.get_group = function (group_key, group_id) {\n var map_key = this._create_map_key(group_key, group_id);\n var group = this._cached_groups[map_key];\n if (group === undefined || group._group_key !== group_key || group._group_id !== group_id) {\n group = new MixpanelGroup();\n group._init(this, group_key, group_id);\n this._cached_groups[map_key] = group;\n }\n return group;\n};\n\n/**\n * Track a default Mixpanel page view event, which includes extra default event properties to\n * improve page view data.\n *\n * ### Usage:\n *\n * // track a default $mp_web_page_view event\n * mixpanel.track_pageview();\n *\n * // track a page view event with additional event properties\n * mixpanel.track_pageview({'ab_test_variant': 'card-layout-b'});\n *\n * // example approach to track page views on different page types as event properties\n * mixpanel.track_pageview({'page': 'pricing'});\n * mixpanel.track_pageview({'page': 'homepage'});\n *\n * // UNCOMMON: Tracking a page view event with a custom event_name option. NOT expected to be used for\n * // individual pages on the same site or product. Use cases for custom event_name may be page\n * // views on different products or internal applications that are considered completely separate\n * mixpanel.track_pageview({'page': 'customer-search'}, {'event_name': '[internal] Admin Page View'});\n *\n * ### Notes:\n *\n * The `config.track_pageview` option for mixpanel.init()\n * may be turned on for tracking page loads automatically.\n *\n * // track only page loads\n * mixpanel.init(PROJECT_TOKEN, {track_pageview: true});\n *\n * // track when the URL changes in any manner\n * mixpanel.init(PROJECT_TOKEN, {track_pageview: 'full-url'});\n *\n * // track when the URL changes, ignoring any changes in the hash part\n * mixpanel.init(PROJECT_TOKEN, {track_pageview: 'url-with-path-and-query-string'});\n *\n * // track when the path changes, ignoring any query parameter or hash changes\n * mixpanel.init(PROJECT_TOKEN, {track_pageview: 'url-with-path'});\n *\n * @param {Object} [properties] An optional set of additional properties to send with the page view event\n * @param {Object} [options] Page view tracking options\n * @param {String} [options.event_name] - Alternate name for the tracking event\n * @returns {Boolean|Object} If the tracking request was successfully initiated/queued, an object\n * with the tracking payload sent to the API server is returned; otherwise false.\n */\nMixpanelLib.prototype.track_pageview = addOptOutCheckMixpanelLib(function(properties, options) {\n if (typeof properties !== 'object') {\n properties = {};\n }\n options = options || {};\n var event_name = options['event_name'] || '$mp_web_page_view';\n\n var default_page_properties = _.extend(\n _.info.mpPageViewProperties(),\n _.info.campaignParams(),\n _.info.clickParams()\n );\n\n var event_properties = _.extend(\n {},\n default_page_properties,\n properties\n );\n\n return this.track(event_name, event_properties);\n});\n\n/**\n * Track clicks on a set of document elements. Selector must be a\n * valid query. Elements must exist on the page at the time track_links is called.\n *\n * ### Usage:\n *\n * // track click for link id #nav\n * mixpanel.track_links('#nav', 'Clicked Nav Link');\n *\n * ### Notes:\n *\n * This function will wait up to 300 ms for the Mixpanel\n * servers to respond. If they have not responded by that time\n * it will head to the link without ensuring that your event\n * has been tracked. To configure this timeout please see the\n * set_config() documentation below.\n *\n * If you pass a function in as the properties argument, the\n * function will receive the DOMElement that triggered the\n * event as an argument. You are expected to return an object\n * from the function; any properties defined on this object\n * will be sent to mixpanel as event properties.\n *\n * @type {Function}\n * @param {Object|String} query A valid DOM query, element or jQuery-esque list\n * @param {String} event_name The name of the event to track\n * @param {Object|Function} [properties] A properties object or function that returns a dictionary of properties when passed a DOMElement\n */\nMixpanelLib.prototype.track_links = function() {\n return this._track_dom.call(this, LinkTracker, arguments);\n};\n\n/**\n * Track form submissions. Selector must be a valid query.\n *\n * ### Usage:\n *\n * // track submission for form id 'register'\n * mixpanel.track_forms('#register', 'Created Account');\n *\n * ### Notes:\n *\n * This function will wait up to 300 ms for the mixpanel\n * servers to respond, if they have not responded by that time\n * it will head to the link without ensuring that your event\n * has been tracked. To configure this timeout please see the\n * set_config() documentation below.\n *\n * If you pass a function in as the properties argument, the\n * function will receive the DOMElement that triggered the\n * event as an argument. You are expected to return an object\n * from the function; any properties defined on this object\n * will be sent to mixpanel as event properties.\n *\n * @type {Function}\n * @param {Object|String} query A valid DOM query, element or jQuery-esque list\n * @param {String} event_name The name of the event to track\n * @param {Object|Function} [properties] This can be a set of properties, or a function that returns a set of properties after being passed a DOMElement\n */\nMixpanelLib.prototype.track_forms = function() {\n return this._track_dom.call(this, FormTracker, arguments);\n};\n\n/**\n * Time an event by including the time between this call and a\n * later 'track' call for the same event in the properties sent\n * with the event.\n *\n * ### Usage:\n *\n * // time an event named 'Registered'\n * mixpanel.time_event('Registered');\n * mixpanel.track('Registered', {'Gender': 'Male', 'Age': 21});\n *\n * When called for a particular event name, the next track call for that event\n * name will include the elapsed time between the 'time_event' and 'track'\n * calls. This value is stored as seconds in the '$duration' property.\n *\n * @param {String} event_name The name of the event.\n */\nMixpanelLib.prototype.time_event = function(event_name) {\n if (_.isUndefined(event_name)) {\n this.report_error('No event name provided to mixpanel.time_event');\n return;\n }\n\n if (this._event_is_disabled(event_name)) {\n return;\n }\n\n this['persistence'].set_event_timer(event_name, new Date().getTime());\n};\n\nvar REGISTER_DEFAULTS = {\n 'persistent': true\n};\n/**\n * Helper to parse options param for register methods, maintaining\n * legacy support for plain \"days\" param instead of options object\n * @param {Number|Object} [days_or_options] 'days' option (Number), or Options object for register methods\n * @returns {Object} options object\n */\nvar options_for_register = function(days_or_options) {\n var options;\n if (_.isObject(days_or_options)) {\n options = days_or_options;\n } else if (!_.isUndefined(days_or_options)) {\n options = {'days': days_or_options};\n } else {\n options = {};\n }\n return _.extend({}, REGISTER_DEFAULTS, options);\n};\n\n/**\n * Register a set of super properties, which are included with all\n * events. This will overwrite previous super property values.\n *\n * ### Usage:\n *\n * // register 'Gender' as a super property\n * mixpanel.register({'Gender': 'Female'});\n *\n * // register several super properties when a user signs up\n * mixpanel.register({\n * 'Email': 'jdoe@example.com',\n * 'Account Type': 'Free'\n * });\n *\n * // register only for the current pageload\n * mixpanel.register({'Name': 'Pat'}, {persistent: false});\n *\n * @param {Object} properties An associative array of properties to store about the user\n * @param {Number|Object} [days_or_options] Options object or number of days since the user's last visit to store the super properties (only valid for persisted props)\n * @param {boolean} [days_or_options.days] - number of days since the user's last visit to store the super properties (only valid for persisted props)\n * @param {boolean} [days_or_options.persistent=true] - whether to put in persistent storage (cookie/localStorage)\n */\nMixpanelLib.prototype.register = function(props, days_or_options) {\n var options = options_for_register(days_or_options);\n if (options['persistent']) {\n this['persistence'].register(props, options['days']);\n } else {\n _.extend(this.unpersisted_superprops, props);\n }\n};\n\n/**\n * Register a set of super properties only once. This will not\n * overwrite previous super property values, unlike register().\n *\n * ### Usage:\n *\n * // register a super property for the first time only\n * mixpanel.register_once({\n * 'First Login Date': new Date().toISOString()\n * });\n *\n * // register once, only for the current pageload\n * mixpanel.register_once({\n * 'First interaction time': new Date().toISOString()\n * }, 'None', {persistent: false});\n *\n * ### Notes:\n *\n * If default_value is specified, current super properties\n * with that value will be overwritten.\n *\n * @param {Object} properties An associative array of properties to store about the user\n * @param {*} [default_value] Value to override if already set in super properties (ex: 'False') Default: 'None'\n * @param {Number|Object} [days_or_options] Options object or number of days since the user's last visit to store the super properties (only valid for persisted props)\n * @param {boolean} [days_or_options.days] - number of days since the user's last visit to store the super properties (only valid for persisted props)\n * @param {boolean} [days_or_options.persistent=true] - whether to put in persistent storage (cookie/localStorage)\n */\nMixpanelLib.prototype.register_once = function(props, default_value, days_or_options) {\n var options = options_for_register(days_or_options);\n if (options['persistent']) {\n this['persistence'].register_once(props, default_value, options['days']);\n } else {\n if (typeof(default_value) === 'undefined') {\n default_value = 'None';\n }\n _.each(props, function(val, prop) {\n if (!this.unpersisted_superprops.hasOwnProperty(prop) || this.unpersisted_superprops[prop] === default_value) {\n this.unpersisted_superprops[prop] = val;\n }\n }, this);\n }\n};\n\n/**\n * Delete a super property stored with the current user.\n *\n * @param {String} property The name of the super property to remove\n * @param {Object} [options]\n * @param {boolean} [options.persistent=true] - whether to look in persistent storage (cookie/localStorage)\n */\nMixpanelLib.prototype.unregister = function(property, options) {\n options = options_for_register(options);\n if (options['persistent']) {\n this['persistence'].unregister(property);\n } else {\n delete this.unpersisted_superprops[property];\n }\n};\n\nMixpanelLib.prototype._register_single = function(prop, value) {\n var props = {};\n props[prop] = value;\n this.register(props);\n};\n\n/**\n * Identify a user with a unique ID to track user activity across\n * devices, tie a user to their events, and create a user profile.\n * If you never call this method, unique visitors are tracked using\n * a UUID generated the first time they visit the site.\n *\n * Call identify when you know the identity of the current user,\n * typically after login or signup. We recommend against using\n * identify for anonymous visitors to your site.\n *\n * ### Notes:\n * If your project has\n * ID Merge\n * enabled, the identify method will connect pre- and\n * post-authentication events when appropriate.\n *\n * If your project does not have ID Merge enabled, identify will\n * change the user's local distinct_id to the unique ID you pass.\n * Events tracked prior to authentication will not be connected\n * to the same user identity. If ID Merge is disabled, alias can\n * be used to connect pre- and post-registration events.\n *\n * @param {String} [unique_id] A string that uniquely identifies a user. If not provided, the distinct_id currently in the persistent store (cookie or localStorage) will be used.\n */\nMixpanelLib.prototype.identify = function(\n new_distinct_id, _set_callback, _add_callback, _append_callback, _set_once_callback, _union_callback, _unset_callback, _remove_callback\n) {\n // Optional Parameters\n // _set_callback:function A callback to be run if and when the People set queue is flushed\n // _add_callback:function A callback to be run if and when the People add queue is flushed\n // _append_callback:function A callback to be run if and when the People append queue is flushed\n // _set_once_callback:function A callback to be run if and when the People set_once queue is flushed\n // _union_callback:function A callback to be run if and when the People union queue is flushed\n // _unset_callback:function A callback to be run if and when the People unset queue is flushed\n\n var previous_distinct_id = this.get_distinct_id();\n if (new_distinct_id && previous_distinct_id !== new_distinct_id) {\n // we allow the following condition if previous distinct_id is same as new_distinct_id\n // so that you can force flush people updates for anonymous profiles.\n if (typeof new_distinct_id === 'string' && new_distinct_id.indexOf(DEVICE_ID_PREFIX) === 0) {\n this.report_error('distinct_id cannot have $device: prefix');\n return -1;\n }\n this.register({'$user_id': new_distinct_id});\n }\n\n if (!this.get_property('$device_id')) {\n // The persisted distinct id might not actually be a device id at all\n // it might be a distinct id of the user from before\n var device_id = previous_distinct_id;\n this.register_once({\n '$had_persisted_distinct_id': true,\n '$device_id': device_id\n }, '');\n }\n\n // identify only changes the distinct id if it doesn't match either the existing or the alias;\n // if it's new, blow away the alias as well.\n if (new_distinct_id !== previous_distinct_id && new_distinct_id !== this.get_property(ALIAS_ID_KEY)) {\n this.unregister(ALIAS_ID_KEY);\n this.register({'distinct_id': new_distinct_id});\n }\n this._flags.identify_called = true;\n // Flush any queued up people requests\n this['people']._flush(_set_callback, _add_callback, _append_callback, _set_once_callback, _union_callback, _unset_callback, _remove_callback);\n\n // send an $identify event any time the distinct_id is changing - logic on the server\n // will determine whether or not to do anything with it.\n if (new_distinct_id !== previous_distinct_id) {\n this.track('$identify', {\n 'distinct_id': new_distinct_id,\n '$anon_distinct_id': previous_distinct_id\n }, {skip_hooks: true});\n }\n};\n\n/**\n * Clears super properties and generates a new random distinct_id for this instance.\n * Useful for clearing data when a user logs out.\n */\nMixpanelLib.prototype.reset = function() {\n this['persistence'].clear();\n this._flags.identify_called = false;\n var uuid = _.UUID();\n this.register_once({\n 'distinct_id': DEVICE_ID_PREFIX + uuid,\n '$device_id': uuid\n }, '');\n};\n\n/**\n * Returns the current distinct id of the user. This is either the id automatically\n * generated by the library or the id that has been passed by a call to identify().\n *\n * ### Notes:\n *\n * get_distinct_id() can only be called after the Mixpanel library has finished loading.\n * init() has a loaded function available to handle this automatically. For example:\n *\n * // set distinct_id after the mixpanel library has loaded\n * mixpanel.init('YOUR PROJECT TOKEN', {\n * loaded: function(mixpanel) {\n * distinct_id = mixpanel.get_distinct_id();\n * }\n * });\n */\nMixpanelLib.prototype.get_distinct_id = function() {\n return this.get_property('distinct_id');\n};\n\n/**\n * The alias method creates an alias which Mixpanel will use to\n * remap one id to another. Multiple aliases can point to the\n * same identifier.\n *\n * The following is a valid use of alias:\n *\n * mixpanel.alias('new_id', 'existing_id');\n * // You can add multiple id aliases to the existing ID\n * mixpanel.alias('newer_id', 'existing_id');\n *\n * Aliases can also be chained - the following is a valid example:\n *\n * mixpanel.alias('new_id', 'existing_id');\n * // chain newer_id - new_id - existing_id\n * mixpanel.alias('newer_id', 'new_id');\n *\n * Aliases cannot point to multiple identifiers - the following\n * example will not work:\n *\n * mixpanel.alias('new_id', 'existing_id');\n * // this is invalid as 'new_id' already points to 'existing_id'\n * mixpanel.alias('new_id', 'newer_id');\n *\n * ### Notes:\n *\n * If your project does not have\n * ID Merge\n * enabled, the best practice is to call alias once when a unique\n * ID is first created for a user (e.g., when a user first registers\n * for an account). Do not use alias multiple times for a single\n * user without ID Merge enabled.\n *\n * @param {String} alias A unique identifier that you want to use for this user in the future.\n * @param {String} [original] The current identifier being used for this user.\n */\nMixpanelLib.prototype.alias = function(alias, original) {\n // If the $people_distinct_id key exists in persistence, there has been a previous\n // mixpanel.people.identify() call made for this user. It is VERY BAD to make an alias with\n // this ID, as it will duplicate users.\n if (alias === this.get_property(PEOPLE_DISTINCT_ID_KEY)) {\n this.report_error('Attempting to create alias for existing People user - aborting.');\n return -2;\n }\n\n var _this = this;\n if (_.isUndefined(original)) {\n original = this.get_distinct_id();\n }\n if (alias !== original) {\n this._register_single(ALIAS_ID_KEY, alias);\n return this.track('$create_alias', {\n 'alias': alias,\n 'distinct_id': original\n }, {\n skip_hooks: true\n }, function() {\n // Flush the people queue\n _this.identify(alias);\n });\n } else {\n this.report_error('alias matches current distinct_id - skipping api call.');\n this.identify(alias);\n return -1;\n }\n};\n\n/**\n * Provide a string to recognize the user by. The string passed to\n * this method will appear in the Mixpanel Streams product rather\n * than an automatically generated name. Name tags do not have to\n * be unique.\n *\n * This value will only be included in Streams data.\n *\n * @param {String} name_tag A human readable name for the user\n * @deprecated\n */\nMixpanelLib.prototype.name_tag = function(name_tag) {\n this._register_single('mp_name_tag', name_tag);\n};\n\n/**\n * Update the configuration of a mixpanel library instance.\n *\n * The default config is:\n *\n * {\n * // host for requests (customizable for e.g. a local proxy)\n * api_host: 'https://api-js.mixpanel.com',\n *\n * // endpoints for different types of requests\n * api_routes: {\n * track: 'track/',\n * engage: 'engage/',\n * groups: 'groups/',\n * }\n *\n * // HTTP method for tracking requests\n * api_method: 'POST'\n *\n * // transport for sending requests ('XHR' or 'sendBeacon')\n * // NB: sendBeacon should only be used for scenarios such as\n * // page unload where a \"best-effort\" attempt to send is\n * // acceptable; the sendBeacon API does not support callbacks\n * // or any way to know the result of the request. Mixpanel\n * // tracking via sendBeacon will not support any event-\n * // batching or retry mechanisms.\n * api_transport: 'XHR'\n *\n * // request-batching/queueing/retry\n * batch_requests: true,\n *\n * // maximum number of events/updates to send in a single\n * // network request\n * batch_size: 50,\n *\n * // milliseconds to wait between sending batch requests\n * batch_flush_interval_ms: 5000,\n *\n * // milliseconds to wait for network responses to batch requests\n * // before they are considered timed-out and retried\n * batch_request_timeout_ms: 90000,\n *\n * // override value for cookie domain, only useful for ensuring\n * // correct cross-subdomain cookies on unusual domains like\n * // subdomain.mainsite.avocat.fr; NB this cannot be used to\n * // set cookies on a different domain than the current origin\n * cookie_domain: ''\n *\n * // super properties cookie expiration (in days)\n * cookie_expiration: 365\n *\n * // if true, cookie will be set with SameSite=None; Secure\n * // this is only useful in special situations, like embedded\n * // 3rd-party iframes that set up a Mixpanel instance\n * cross_site_cookie: false\n *\n * // super properties span subdomains\n * cross_subdomain_cookie: true\n *\n * // debug mode\n * debug: false\n *\n * // if this is true, the mixpanel cookie or localStorage entry\n * // will be deleted, and no user persistence will take place\n * disable_persistence: false\n *\n * // if this is true, Mixpanel will automatically determine\n * // City, Region and Country data using the IP address of\n * //the client\n * ip: true\n *\n * // opt users out of tracking by this Mixpanel instance by default\n * opt_out_tracking_by_default: false\n *\n * // opt users out of browser data storage by this Mixpanel instance by default\n * opt_out_persistence_by_default: false\n *\n * // persistence mechanism used by opt-in/opt-out methods - cookie\n * // or localStorage - falls back to cookie if localStorage is unavailable\n * opt_out_tracking_persistence_type: 'localStorage'\n *\n * // customize the name of cookie/localStorage set by opt-in/opt-out methods\n * opt_out_tracking_cookie_prefix: null\n *\n * // type of persistent store for super properties (cookie/\n * // localStorage) if set to 'localStorage', any existing\n * // mixpanel cookie value with the same persistence_name\n * // will be transferred to localStorage and deleted\n * persistence: 'cookie'\n *\n * // name for super properties persistent store\n * persistence_name: ''\n *\n * // names of properties/superproperties which should never\n * // be sent with track() calls\n * property_blacklist: []\n *\n * // if this is true, mixpanel cookies will be marked as\n * // secure, meaning they will only be transmitted over https\n * secure_cookie: false\n *\n * // disables enriching user profiles with first touch marketing data\n * skip_first_touch_marketing: false\n *\n * // the amount of time track_links will\n * // wait for Mixpanel's servers to respond\n * track_links_timeout: 300\n *\n * // adds any UTM parameters and click IDs present on the page to any events fired\n * track_marketing: true\n *\n * // enables automatic page view tracking using default page view events through\n * // the track_pageview() method\n * track_pageview: false\n *\n * // if you set upgrade to be true, the library will check for\n * // a cookie from our old js library and import super\n * // properties from it, then the old cookie is deleted\n * // The upgrade config option only works in the initialization,\n * // so make sure you set it when you create the library.\n * upgrade: false\n *\n * // extra HTTP request headers to set for each API request, in\n * // the format {'Header-Name': value}\n * xhr_headers: {}\n *\n * // whether to ignore or respect the web browser's Do Not Track setting\n * ignore_dnt: false\n * }\n *\n *\n * @param {Object} config A dictionary of new configuration values to update\n */\nMixpanelLib.prototype.set_config = function(config) {\n if (_.isObject(config)) {\n _.extend(this['config'], config);\n\n var new_batch_size = config['batch_size'];\n if (new_batch_size) {\n _.each(this.request_batchers, function(batcher) {\n batcher.resetBatchSize();\n });\n }\n\n if (!this.get_config('persistence_name')) {\n this['config']['persistence_name'] = this['config']['cookie_name'];\n }\n if (!this.get_config('disable_persistence')) {\n this['config']['disable_persistence'] = this['config']['disable_cookie'];\n }\n\n if (this['persistence']) {\n this['persistence'].update_config(this['config']);\n }\n Config.DEBUG = Config.DEBUG || this.get_config('debug');\n }\n};\n\n/**\n * returns the current config object for the library.\n */\nMixpanelLib.prototype.get_config = function(prop_name) {\n return this['config'][prop_name];\n};\n\n/**\n * Fetch a hook function from config, with safe default, and run it\n * against the given arguments\n * @param {string} hook_name which hook to retrieve\n * @returns {any|null} return value of user-provided hook, or null if nothing was returned\n */\nMixpanelLib.prototype._run_hook = function(hook_name) {\n var ret = (this['config']['hooks'][hook_name] || IDENTITY_FUNC).apply(this, slice.call(arguments, 1));\n if (typeof ret === 'undefined') {\n this.report_error(hook_name + ' hook did not return a value');\n ret = null;\n }\n return ret;\n};\n\n/**\n * Returns the value of the super property named property_name. If no such\n * property is set, get_property() will return the undefined value.\n *\n * ### Notes:\n *\n * get_property() can only be called after the Mixpanel library has finished loading.\n * init() has a loaded function available to handle this automatically. For example:\n *\n * // grab value for 'user_id' after the mixpanel library has loaded\n * mixpanel.init('YOUR PROJECT TOKEN', {\n * loaded: function(mixpanel) {\n * user_id = mixpanel.get_property('user_id');\n * }\n * });\n *\n * @param {String} property_name The name of the super property you want to retrieve\n */\nMixpanelLib.prototype.get_property = function(property_name) {\n return this['persistence'].load_prop([property_name]);\n};\n\nMixpanelLib.prototype.toString = function() {\n var name = this.get_config('name');\n if (name !== PRIMARY_INSTANCE_NAME) {\n name = PRIMARY_INSTANCE_NAME + '.' + name;\n }\n return name;\n};\n\nMixpanelLib.prototype._event_is_disabled = function(event_name) {\n return _.isBlockedUA(userAgent) ||\n this._flags.disable_all_events ||\n _.include(this.__disabled_events, event_name);\n};\n\n// perform some housekeeping around GDPR opt-in/out state\nMixpanelLib.prototype._gdpr_init = function() {\n var is_localStorage_requested = this.get_config('opt_out_tracking_persistence_type') === 'localStorage';\n\n // try to convert opt-in/out cookies to localStorage if possible\n if (is_localStorage_requested && _.localStorage.is_supported()) {\n if (!this.has_opted_in_tracking() && this.has_opted_in_tracking({'persistence_type': 'cookie'})) {\n this.opt_in_tracking({'enable_persistence': false});\n }\n if (!this.has_opted_out_tracking() && this.has_opted_out_tracking({'persistence_type': 'cookie'})) {\n this.opt_out_tracking({'clear_persistence': false});\n }\n this.clear_opt_in_out_tracking({\n 'persistence_type': 'cookie',\n 'enable_persistence': false\n });\n }\n\n // check whether the user has already opted out - if so, clear & disable persistence\n if (this.has_opted_out_tracking()) {\n this._gdpr_update_persistence({'clear_persistence': true});\n\n // check whether we should opt out by default\n // note: we don't clear persistence here by default since opt-out default state is often\n // used as an initial state while GDPR information is being collected\n } else if (!this.has_opted_in_tracking() && (\n this.get_config('opt_out_tracking_by_default') || _.cookie.get('mp_optout')\n )) {\n _.cookie.remove('mp_optout');\n this.opt_out_tracking({\n 'clear_persistence': this.get_config('opt_out_persistence_by_default')\n });\n }\n};\n\n/**\n * Enable or disable persistence based on options\n * only enable/disable if persistence is not already in this state\n * @param {boolean} [options.clear_persistence] If true, will delete all data stored by the sdk in persistence and disable it\n * @param {boolean} [options.enable_persistence] If true, will re-enable sdk persistence\n */\nMixpanelLib.prototype._gdpr_update_persistence = function(options) {\n var disabled;\n if (options && options['clear_persistence']) {\n disabled = true;\n } else if (options && options['enable_persistence']) {\n disabled = false;\n } else {\n return;\n }\n\n if (!this.get_config('disable_persistence') && this['persistence'].disabled !== disabled) {\n this['persistence'].set_disabled(disabled);\n }\n\n if (disabled) {\n this.stop_batch_senders();\n } else {\n // only start batchers after opt-in if they have previously been started\n // in order to avoid unintentionally starting up batching for the first time\n if (this._batchers_were_started) {\n this.start_batch_senders();\n }\n }\n};\n\n// call a base gdpr function after constructing the appropriate token and options args\nMixpanelLib.prototype._gdpr_call_func = function(func, options) {\n options = _.extend({\n 'track': _.bind(this.track, this),\n 'persistence_type': this.get_config('opt_out_tracking_persistence_type'),\n 'cookie_prefix': this.get_config('opt_out_tracking_cookie_prefix'),\n 'cookie_expiration': this.get_config('cookie_expiration'),\n 'cross_site_cookie': this.get_config('cross_site_cookie'),\n 'cross_subdomain_cookie': this.get_config('cross_subdomain_cookie'),\n 'cookie_domain': this.get_config('cookie_domain'),\n 'secure_cookie': this.get_config('secure_cookie'),\n 'ignore_dnt': this.get_config('ignore_dnt')\n }, options);\n\n // check if localStorage can be used for recording opt out status, fall back to cookie if not\n if (!_.localStorage.is_supported()) {\n options['persistence_type'] = 'cookie';\n }\n\n return func(this.get_config('token'), {\n track: options['track'],\n trackEventName: options['track_event_name'],\n trackProperties: options['track_properties'],\n persistenceType: options['persistence_type'],\n persistencePrefix: options['cookie_prefix'],\n cookieDomain: options['cookie_domain'],\n cookieExpiration: options['cookie_expiration'],\n crossSiteCookie: options['cross_site_cookie'],\n crossSubdomainCookie: options['cross_subdomain_cookie'],\n secureCookie: options['secure_cookie'],\n ignoreDnt: options['ignore_dnt']\n });\n};\n\n/**\n * Opt the user in to data tracking and cookies/localstorage for this Mixpanel instance\n *\n * ### Usage:\n *\n * // opt user in\n * mixpanel.opt_in_tracking();\n *\n * // opt user in with specific event name, properties, cookie configuration\n * mixpanel.opt_in_tracking({\n * track_event_name: 'User opted in',\n * track_event_properties: {\n * 'Email': 'jdoe@example.com'\n * },\n * cookie_expiration: 30,\n * secure_cookie: true\n * });\n *\n * @param {Object} [options] A dictionary of config options to override\n * @param {function} [options.track] Function used for tracking a Mixpanel event to record the opt-in action (default is this Mixpanel instance's track method)\n * @param {string} [options.track_event_name=$opt_in] Event name to be used for tracking the opt-in action\n * @param {Object} [options.track_properties] Set of properties to be tracked along with the opt-in action\n * @param {boolean} [options.enable_persistence=true] If true, will re-enable sdk persistence\n * @param {string} [options.persistence_type=localStorage] Persistence mechanism used - cookie or localStorage - falls back to cookie if localStorage is unavailable\n * @param {string} [options.cookie_prefix=__mp_opt_in_out] Custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookie_expiration] Number of days until the opt-in cookie expires (overrides value specified in this Mixpanel instance's config)\n * @param {string} [options.cookie_domain] Custom cookie domain (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.cross_site_cookie] Whether the opt-in cookie is set as cross-site-enabled (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.cross_subdomain_cookie] Whether the opt-in cookie is set as cross-subdomain or not (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.secure_cookie] Whether the opt-in cookie is set as secure or not (overrides value specified in this Mixpanel instance's config)\n */\nMixpanelLib.prototype.opt_in_tracking = function(options) {\n options = _.extend({\n 'enable_persistence': true\n }, options);\n\n this._gdpr_call_func(optIn, options);\n this._gdpr_update_persistence(options);\n};\n\n/**\n * Opt the user out of data tracking and cookies/localstorage for this Mixpanel instance\n *\n * ### Usage:\n *\n * // opt user out\n * mixpanel.opt_out_tracking();\n *\n * // opt user out with different cookie configuration from Mixpanel instance\n * mixpanel.opt_out_tracking({\n * cookie_expiration: 30,\n * secure_cookie: true\n * });\n *\n * @param {Object} [options] A dictionary of config options to override\n * @param {boolean} [options.delete_user=true] If true, will delete the currently identified user's profile and clear all charges after opting the user out\n * @param {boolean} [options.clear_persistence=true] If true, will delete all data stored by the sdk in persistence\n * @param {string} [options.persistence_type=localStorage] Persistence mechanism used - cookie or localStorage - falls back to cookie if localStorage is unavailable\n * @param {string} [options.cookie_prefix=__mp_opt_in_out] Custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookie_expiration] Number of days until the opt-in cookie expires (overrides value specified in this Mixpanel instance's config)\n * @param {string} [options.cookie_domain] Custom cookie domain (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.cross_site_cookie] Whether the opt-in cookie is set as cross-site-enabled (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.cross_subdomain_cookie] Whether the opt-in cookie is set as cross-subdomain or not (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.secure_cookie] Whether the opt-in cookie is set as secure or not (overrides value specified in this Mixpanel instance's config)\n */\nMixpanelLib.prototype.opt_out_tracking = function(options) {\n options = _.extend({\n 'clear_persistence': true,\n 'delete_user': true\n }, options);\n\n // delete user and clear charges since these methods may be disabled by opt-out\n if (options['delete_user'] && this['people'] && this['people']._identify_called()) {\n this['people'].delete_user();\n this['people'].clear_charges();\n }\n\n this._gdpr_call_func(optOut, options);\n this._gdpr_update_persistence(options);\n};\n\n/**\n * Check whether the user has opted in to data tracking and cookies/localstorage for this Mixpanel instance\n *\n * ### Usage:\n *\n * var has_opted_in = mixpanel.has_opted_in_tracking();\n * // use has_opted_in value\n *\n * @param {Object} [options] A dictionary of config options to override\n * @param {string} [options.persistence_type=localStorage] Persistence mechanism used - cookie or localStorage - falls back to cookie if localStorage is unavailable\n * @param {string} [options.cookie_prefix=__mp_opt_in_out] Custom prefix to be used in the cookie/localstorage name\n * @returns {boolean} current opt-in status\n */\nMixpanelLib.prototype.has_opted_in_tracking = function(options) {\n return this._gdpr_call_func(hasOptedIn, options);\n};\n\n/**\n * Check whether the user has opted out of data tracking and cookies/localstorage for this Mixpanel instance\n *\n * ### Usage:\n *\n * var has_opted_out = mixpanel.has_opted_out_tracking();\n * // use has_opted_out value\n *\n * @param {Object} [options] A dictionary of config options to override\n * @param {string} [options.persistence_type=localStorage] Persistence mechanism used - cookie or localStorage - falls back to cookie if localStorage is unavailable\n * @param {string} [options.cookie_prefix=__mp_opt_in_out] Custom prefix to be used in the cookie/localstorage name\n * @returns {boolean} current opt-out status\n */\nMixpanelLib.prototype.has_opted_out_tracking = function(options) {\n return this._gdpr_call_func(hasOptedOut, options);\n};\n\n/**\n * Clear the user's opt in/out status of data tracking and cookies/localstorage for this Mixpanel instance\n *\n * ### Usage:\n *\n * // clear user's opt-in/out status\n * mixpanel.clear_opt_in_out_tracking();\n *\n * // clear user's opt-in/out status with specific cookie configuration - should match\n * // configuration used when opt_in_tracking/opt_out_tracking methods were called.\n * mixpanel.clear_opt_in_out_tracking({\n * cookie_expiration: 30,\n * secure_cookie: true\n * });\n *\n * @param {Object} [options] A dictionary of config options to override\n * @param {boolean} [options.enable_persistence=true] If true, will re-enable sdk persistence\n * @param {string} [options.persistence_type=localStorage] Persistence mechanism used - cookie or localStorage - falls back to cookie if localStorage is unavailable\n * @param {string} [options.cookie_prefix=__mp_opt_in_out] Custom prefix to be used in the cookie/localstorage name\n * @param {Number} [options.cookie_expiration] Number of days until the opt-in cookie expires (overrides value specified in this Mixpanel instance's config)\n * @param {string} [options.cookie_domain] Custom cookie domain (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.cross_site_cookie] Whether the opt-in cookie is set as cross-site-enabled (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.cross_subdomain_cookie] Whether the opt-in cookie is set as cross-subdomain or not (overrides value specified in this Mixpanel instance's config)\n * @param {boolean} [options.secure_cookie] Whether the opt-in cookie is set as secure or not (overrides value specified in this Mixpanel instance's config)\n */\nMixpanelLib.prototype.clear_opt_in_out_tracking = function(options) {\n options = _.extend({\n 'enable_persistence': true\n }, options);\n\n this._gdpr_call_func(clearOptInOut, options);\n this._gdpr_update_persistence(options);\n};\n\nMixpanelLib.prototype.report_error = function(msg, err) {\n console$1.error.apply(console$1.error, arguments);\n try {\n if (!err && !(msg instanceof Error)) {\n msg = new Error(msg);\n }\n this.get_config('error_reporter')(msg, err);\n } catch(err) {\n console$1.error(err);\n }\n};\n\n// EXPORTS (for closure compiler)\n\n// MixpanelLib Exports\nMixpanelLib.prototype['init'] = MixpanelLib.prototype.init;\nMixpanelLib.prototype['reset'] = MixpanelLib.prototype.reset;\nMixpanelLib.prototype['disable'] = MixpanelLib.prototype.disable;\nMixpanelLib.prototype['time_event'] = MixpanelLib.prototype.time_event;\nMixpanelLib.prototype['track'] = MixpanelLib.prototype.track;\nMixpanelLib.prototype['track_links'] = MixpanelLib.prototype.track_links;\nMixpanelLib.prototype['track_forms'] = MixpanelLib.prototype.track_forms;\nMixpanelLib.prototype['track_pageview'] = MixpanelLib.prototype.track_pageview;\nMixpanelLib.prototype['register'] = MixpanelLib.prototype.register;\nMixpanelLib.prototype['register_once'] = MixpanelLib.prototype.register_once;\nMixpanelLib.prototype['unregister'] = MixpanelLib.prototype.unregister;\nMixpanelLib.prototype['identify'] = MixpanelLib.prototype.identify;\nMixpanelLib.prototype['alias'] = MixpanelLib.prototype.alias;\nMixpanelLib.prototype['name_tag'] = MixpanelLib.prototype.name_tag;\nMixpanelLib.prototype['set_config'] = MixpanelLib.prototype.set_config;\nMixpanelLib.prototype['get_config'] = MixpanelLib.prototype.get_config;\nMixpanelLib.prototype['get_property'] = MixpanelLib.prototype.get_property;\nMixpanelLib.prototype['get_distinct_id'] = MixpanelLib.prototype.get_distinct_id;\nMixpanelLib.prototype['toString'] = MixpanelLib.prototype.toString;\nMixpanelLib.prototype['opt_out_tracking'] = MixpanelLib.prototype.opt_out_tracking;\nMixpanelLib.prototype['opt_in_tracking'] = MixpanelLib.prototype.opt_in_tracking;\nMixpanelLib.prototype['has_opted_out_tracking'] = MixpanelLib.prototype.has_opted_out_tracking;\nMixpanelLib.prototype['has_opted_in_tracking'] = MixpanelLib.prototype.has_opted_in_tracking;\nMixpanelLib.prototype['clear_opt_in_out_tracking'] = MixpanelLib.prototype.clear_opt_in_out_tracking;\nMixpanelLib.prototype['get_group'] = MixpanelLib.prototype.get_group;\nMixpanelLib.prototype['set_group'] = MixpanelLib.prototype.set_group;\nMixpanelLib.prototype['add_group'] = MixpanelLib.prototype.add_group;\nMixpanelLib.prototype['remove_group'] = MixpanelLib.prototype.remove_group;\nMixpanelLib.prototype['track_with_groups'] = MixpanelLib.prototype.track_with_groups;\nMixpanelLib.prototype['start_batch_senders'] = MixpanelLib.prototype.start_batch_senders;\nMixpanelLib.prototype['stop_batch_senders'] = MixpanelLib.prototype.stop_batch_senders;\nMixpanelLib.prototype['start_session_recording'] = MixpanelLib.prototype.start_session_recording;\nMixpanelLib.prototype['stop_session_recording'] = MixpanelLib.prototype.stop_session_recording;\nMixpanelLib.prototype['get_session_recording_properties'] = MixpanelLib.prototype.get_session_recording_properties;\nMixpanelLib.prototype['DEFAULT_API_ROUTES'] = DEFAULT_API_ROUTES;\n\n// MixpanelPersistence Exports\nMixpanelPersistence.prototype['properties'] = MixpanelPersistence.prototype.properties;\nMixpanelPersistence.prototype['update_search_keyword'] = MixpanelPersistence.prototype.update_search_keyword;\nMixpanelPersistence.prototype['update_referrer_info'] = MixpanelPersistence.prototype.update_referrer_info;\nMixpanelPersistence.prototype['get_cross_subdomain'] = MixpanelPersistence.prototype.get_cross_subdomain;\nMixpanelPersistence.prototype['clear'] = MixpanelPersistence.prototype.clear;\n\n\nvar instances = {};\nvar extend_mp = function() {\n // add all the sub mixpanel instances\n _.each(instances, function(instance, name) {\n if (name !== PRIMARY_INSTANCE_NAME) { mixpanel_master[name] = instance; }\n });\n\n // add private functions as _\n mixpanel_master['_'] = _;\n};\n\nvar override_mp_init_func = function() {\n // we override the snippets init function to handle the case where a\n // user initializes the mixpanel library after the script loads & runs\n mixpanel_master['init'] = function(token, config, name) {\n if (name) {\n // initialize a sub library\n if (!mixpanel_master[name]) {\n mixpanel_master[name] = instances[name] = create_mplib(token, config, name);\n mixpanel_master[name]._loaded();\n }\n return mixpanel_master[name];\n } else {\n var instance = mixpanel_master;\n\n if (instances[PRIMARY_INSTANCE_NAME]) {\n // main mixpanel lib already initialized\n instance = instances[PRIMARY_INSTANCE_NAME];\n } else if (token) {\n // intialize the main mixpanel lib\n instance = create_mplib(token, config, PRIMARY_INSTANCE_NAME);\n instance._loaded();\n instances[PRIMARY_INSTANCE_NAME] = instance;\n }\n\n mixpanel_master = instance;\n if (init_type === INIT_SNIPPET) {\n win[PRIMARY_INSTANCE_NAME] = mixpanel_master;\n }\n extend_mp();\n }\n };\n};\n\nvar add_dom_loaded_handler = function() {\n // Cross browser DOM Loaded support\n function dom_loaded_handler() {\n // function flag since we only want to execute this once\n if (dom_loaded_handler.done) { return; }\n dom_loaded_handler.done = true;\n\n DOM_LOADED = true;\n ENQUEUE_REQUESTS = false;\n\n _.each(instances, function(inst) {\n inst._dom_loaded();\n });\n }\n\n function do_scroll_check() {\n try {\n document$1.documentElement.doScroll('left');\n } catch(e) {\n setTimeout(do_scroll_check, 1);\n return;\n }\n\n dom_loaded_handler();\n }\n\n if (document$1.addEventListener) {\n if (document$1.readyState === 'complete') {\n // safari 4 can fire the DOMContentLoaded event before loading all\n // external JS (including this file). you will see some copypasta\n // on the internet that checks for 'complete' and 'loaded', but\n // 'loaded' is an IE thing\n dom_loaded_handler();\n } else {\n document$1.addEventListener('DOMContentLoaded', dom_loaded_handler, false);\n }\n } else if (document$1.attachEvent) {\n // IE\n document$1.attachEvent('onreadystatechange', dom_loaded_handler);\n\n // check to make sure we arn't in a frame\n var toplevel = false;\n try {\n toplevel = win.frameElement === null;\n } catch(e) {\n // noop\n }\n\n if (document$1.documentElement.doScroll && toplevel) {\n do_scroll_check();\n }\n }\n\n // fallback handler, always will work\n _.register_event(win, 'load', dom_loaded_handler, true);\n};\n\nfunction init_as_module(bundle_loader) {\n load_extra_bundle = bundle_loader;\n init_type = INIT_MODULE;\n mixpanel_master = new MixpanelLib();\n\n override_mp_init_func();\n mixpanel_master['init']();\n add_dom_loaded_handler();\n\n return mixpanel_master;\n}\n\n// For loading separate bundles asynchronously via script tag\n\n// For builds that have everything in one bundle, no extra work.\nfunction loadNoop (_src, onload) {\n onload();\n}\n\n/* eslint camelcase: \"off\" */\n\nvar mixpanel = init_as_module(loadNoop);\n\nexport { mixpanel as default };\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t\"number\"==typeof t&&!isNaN(t),d=t=>\"string\"==typeof t,p=t=>\"function\"==typeof t,m=t=>d(t)||p(t)?t:null,f=t=>e(t)||d(t)||p(t)||u(t);function g(t,e,n){void 0===n&&(n=300);const{scrollHeight:o,style:s}=t;requestAnimationFrame(()=>{s.minHeight=\"initial\",s.height=o+\"px\",s.transition=`all ${n}ms`,requestAnimationFrame(()=>{s.height=\"0\",s.padding=\"0\",s.margin=\"0\",setTimeout(e,n)})})}function h(e){let{enter:a,exit:r,appendPosition:i=!1,collapse:l=!0,collapseDuration:c=300}=e;return function(e){let{children:u,position:d,preventExitTransition:p,done:m,nodeRef:f,isIn:h}=e;const y=i?`${a}--${d}`:a,v=i?`${r}--${d}`:r,T=n(0);return o(()=>{const t=f.current,e=y.split(\" \"),n=o=>{o.target===f.current&&(t.dispatchEvent(new Event(\"d\")),t.removeEventListener(\"animationend\",n),t.removeEventListener(\"animationcancel\",n),0===T.current&&\"animationcancel\"!==o.type&&t.classList.remove(...e))};t.classList.add(...e),t.addEventListener(\"animationend\",n),t.addEventListener(\"animationcancel\",n)},[]),s(()=>{const t=f.current,e=()=>{t.removeEventListener(\"animationend\",e),l?g(t,m,c):m()};h||(p?e():(T.current=1,t.className+=` ${v}`,t.addEventListener(\"animationend\",e)))},[h]),t.createElement(t.Fragment,null,u)}}function y(t,e){return null!=t?{content:t.content,containerId:t.props.containerId,id:t.props.toastId,theme:t.props.theme,type:t.props.type,data:t.props.data||{},isLoading:t.props.isLoading,icon:t.props.icon,status:e}:{}}const v={list:new Map,emitQueue:new Map,on(t,e){return this.list.has(t)||this.list.set(t,[]),this.list.get(t).push(e),this},off(t,e){if(e){const n=this.list.get(t).filter(t=>t!==e);return this.list.set(t,n),this}return this.list.delete(t),this},cancelEmit(t){const e=this.emitQueue.get(t);return e&&(e.forEach(clearTimeout),this.emitQueue.delete(t)),this},emit(t){this.list.has(t)&&this.list.get(t).forEach(e=>{const n=setTimeout(()=>{e(...[].slice.call(arguments,1))},0);this.emitQueue.has(t)||this.emitQueue.set(t,[]),this.emitQueue.get(t).push(n)})}},T=e=>{let{theme:n,type:o,...s}=e;return t.createElement(\"svg\",{viewBox:\"0 0 24 24\",width:\"100%\",height:\"100%\",fill:\"colored\"===n?\"currentColor\":`var(--toastify-icon-color-${o})`,...s})},E={info:function(e){return t.createElement(T,{...e},t.createElement(\"path\",{d:\"M12 0a12 12 0 1012 12A12.013 12.013 0 0012 0zm.25 5a1.5 1.5 0 11-1.5 1.5 1.5 1.5 0 011.5-1.5zm2.25 13.5h-4a1 1 0 010-2h.75a.25.25 0 00.25-.25v-4.5a.25.25 0 00-.25-.25h-.75a1 1 0 010-2h1a2 2 0 012 2v4.75a.25.25 0 00.25.25h.75a1 1 0 110 2z\"}))},warning:function(e){return t.createElement(T,{...e},t.createElement(\"path\",{d:\"M23.32 17.191L15.438 2.184C14.728.833 13.416 0 11.996 0c-1.42 0-2.733.833-3.443 2.184L.533 17.448a4.744 4.744 0 000 4.368C1.243 23.167 2.555 24 3.975 24h16.05C22.22 24 24 22.044 24 19.632c0-.904-.251-1.746-.68-2.44zm-9.622 1.46c0 1.033-.724 1.823-1.698 1.823s-1.698-.79-1.698-1.822v-.043c0-1.028.724-1.822 1.698-1.822s1.698.79 1.698 1.822v.043zm.039-12.285l-.84 8.06c-.057.581-.408.943-.897.943-.49 0-.84-.367-.896-.942l-.84-8.065c-.057-.624.25-1.095.779-1.095h1.91c.528.005.84.476.784 1.1z\"}))},success:function(e){return t.createElement(T,{...e},t.createElement(\"path\",{d:\"M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z\"}))},error:function(e){return t.createElement(T,{...e},t.createElement(\"path\",{d:\"M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z\"}))},spinner:function(){return t.createElement(\"div\",{className:\"Toastify__spinner\"})}};function C(t){const[,o]=r(t=>t+1,0),[l,c]=i([]),g=n(null),h=n(new Map).current,T=t=>-1!==l.indexOf(t),C=n({toastKey:1,displayedToast:0,count:0,queue:[],props:t,containerId:null,isToastActive:T,getToast:t=>h.get(t)}).current;function b(t){let{containerId:e}=t;const{limit:n}=C.props;!n||e&&C.containerId!==e||(C.count-=C.queue.length,C.queue=[])}function I(t){c(e=>null==t?[]:e.filter(e=>e!==t))}function _(){const{toastContent:t,toastProps:e,staleId:n}=C.queue.shift();O(t,e,n)}function L(t,n){let{delay:s,staleId:r,...i}=n;if(!f(t)||function(t){return!g.current||C.props.enableMultiContainer&&t.containerId!==C.props.containerId||h.has(t.toastId)&&null==t.updateId}(i))return;const{toastId:l,updateId:c,data:T}=i,{props:b}=C,L=()=>I(l),N=null==c;N&&C.count++;const M={...b,style:b.toastStyle,key:C.toastKey++,...Object.fromEntries(Object.entries(i).filter(t=>{let[e,n]=t;return null!=n})),toastId:l,updateId:c,data:T,closeToast:L,isIn:!1,className:m(i.className||b.toastClassName),bodyClassName:m(i.bodyClassName||b.bodyClassName),progressClassName:m(i.progressClassName||b.progressClassName),autoClose:!i.isLoading&&(R=i.autoClose,w=b.autoClose,!1===R||u(R)&&R>0?R:w),deleteToast(){const t=y(h.get(l),\"removed\");h.delete(l),v.emit(4,t);const e=C.queue.length;if(C.count=null==l?C.count-C.displayedToast:C.count-1,C.count<0&&(C.count=0),e>0){const t=null==l?C.props.limit:1;if(1===e||1===t)C.displayedToast++,_();else{const n=t>e?e:t;C.displayedToast=n;for(let t=0;tt in E)(o)&&(i=E[o](l))),i}(M),p(i.onOpen)&&(M.onOpen=i.onOpen),p(i.onClose)&&(M.onClose=i.onClose),M.closeButton=b.closeButton,!1===i.closeButton||f(i.closeButton)?M.closeButton=i.closeButton:!0===i.closeButton&&(M.closeButton=!f(b.closeButton)||b.closeButton);let x=t;e(t)&&!d(t.type)?x=a(t,{closeToast:L,toastProps:M,data:T}):p(t)&&(x=t({closeToast:L,toastProps:M,data:T})),b.limit&&b.limit>0&&C.count>b.limit&&N?C.queue.push({toastContent:x,toastProps:M,staleId:r}):u(s)?setTimeout(()=>{O(x,M,r)},s):O(x,M,r)}function O(t,e,n){const{toastId:o}=e;n&&h.delete(n);const s={content:t,props:e};h.set(o,s),c(t=>[...t,o].filter(t=>t!==n)),v.emit(4,y(s,null==s.props.updateId?\"added\":\"updated\"))}return s(()=>(C.containerId=t.containerId,v.cancelEmit(3).on(0,L).on(1,t=>g.current&&I(t)).on(5,b).emit(2,C),()=>{h.clear(),v.emit(3,C)}),[]),s(()=>{C.props=t,C.isToastActive=T,C.displayedToast=l.length}),{getToastToRender:function(e){const n=new Map,o=Array.from(h.values());return t.newestOnTop&&o.reverse(),o.forEach(t=>{const{position:e}=t.props;n.has(e)||n.set(e,[]),n.get(e).push(t)}),Array.from(n,t=>e(t[0],t[1]))},containerRef:g,isToastActive:T}}function b(t){return t.targetTouches&&t.targetTouches.length>=1?t.targetTouches[0].clientX:t.clientX}function I(t){return t.targetTouches&&t.targetTouches.length>=1?t.targetTouches[0].clientY:t.clientY}function _(t){const[o,a]=i(!1),[r,l]=i(!1),c=n(null),u=n({start:0,x:0,y:0,delta:0,removalDistance:0,canCloseOnClick:!0,canDrag:!1,boundingRect:null,didMove:!1}).current,d=n(t),{autoClose:m,pauseOnHover:f,closeToast:g,onClick:h,closeOnClick:y}=t;function v(e){if(t.draggable){\"touchstart\"===e.nativeEvent.type&&e.nativeEvent.preventDefault(),u.didMove=!1,document.addEventListener(\"mousemove\",_),document.addEventListener(\"mouseup\",L),document.addEventListener(\"touchmove\",_),document.addEventListener(\"touchend\",L);const n=c.current;u.canCloseOnClick=!0,u.canDrag=!0,u.boundingRect=n.getBoundingClientRect(),n.style.transition=\"\",u.x=b(e.nativeEvent),u.y=I(e.nativeEvent),\"x\"===t.draggableDirection?(u.start=u.x,u.removalDistance=n.offsetWidth*(t.draggablePercent/100)):(u.start=u.y,u.removalDistance=n.offsetHeight*(80===t.draggablePercent?1.5*t.draggablePercent:t.draggablePercent/100))}}function T(e){if(u.boundingRect){const{top:n,bottom:o,left:s,right:a}=u.boundingRect;\"touchend\"!==e.nativeEvent.type&&t.pauseOnHover&&u.x>=s&&u.x<=a&&u.y>=n&&u.y<=o?C():E()}}function E(){a(!0)}function C(){a(!1)}function _(e){const n=c.current;u.canDrag&&n&&(u.didMove=!0,o&&C(),u.x=b(e),u.y=I(e),u.delta=\"x\"===t.draggableDirection?u.x-u.start:u.y-u.start,u.start!==u.x&&(u.canCloseOnClick=!1),n.style.transform=`translate${t.draggableDirection}(${u.delta}px)`,n.style.opacity=\"\"+(1-Math.abs(u.delta/u.removalDistance)))}function L(){document.removeEventListener(\"mousemove\",_),document.removeEventListener(\"mouseup\",L),document.removeEventListener(\"touchmove\",_),document.removeEventListener(\"touchend\",L);const e=c.current;if(u.canDrag&&u.didMove&&e){if(u.canDrag=!1,Math.abs(u.delta)>u.removalDistance)return l(!0),void t.closeToast();e.style.transition=\"transform 0.2s, opacity 0.2s\",e.style.transform=`translate${t.draggableDirection}(0)`,e.style.opacity=\"1\"}}s(()=>{d.current=t}),s(()=>(c.current&&c.current.addEventListener(\"d\",E,{once:!0}),p(t.onOpen)&&t.onOpen(e(t.children)&&t.children.props),()=>{const t=d.current;p(t.onClose)&&t.onClose(e(t.children)&&t.children.props)}),[]),s(()=>(t.pauseOnFocusLoss&&(document.hasFocus()||C(),window.addEventListener(\"focus\",E),window.addEventListener(\"blur\",C)),()=>{t.pauseOnFocusLoss&&(window.removeEventListener(\"focus\",E),window.removeEventListener(\"blur\",C))}),[t.pauseOnFocusLoss]);const O={onMouseDown:v,onTouchStart:v,onMouseUp:T,onTouchEnd:T};return m&&f&&(O.onMouseEnter=C,O.onMouseLeave=E),y&&(O.onClick=t=>{h&&h(t),u.canCloseOnClick&&g()}),{playToast:E,pauseToast:C,isRunning:o,preventExitTransition:r,toastRef:c,eventHandlers:O}}function L(e){let{closeToast:n,theme:o,ariaLabel:s=\"close\"}=e;return t.createElement(\"button\",{className:`Toastify__close-button Toastify__close-button--${o}`,type:\"button\",onClick:t=>{t.stopPropagation(),n(t)},\"aria-label\":s},t.createElement(\"svg\",{\"aria-hidden\":\"true\",viewBox:\"0 0 14 16\"},t.createElement(\"path\",{fillRule:\"evenodd\",d:\"M7.71 8.23l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75L1 11.98l3.75-3.75L1 4.48 2.48 3l3.75 3.75L9.98 3l1.48 1.48-3.75 3.75z\"})))}function O(e){let{delay:n,isRunning:o,closeToast:s,type:a=\"default\",hide:r,className:i,style:l,controlledProgress:u,progress:d,rtl:m,isIn:f,theme:g}=e;const h=r||u&&0===d,y={...l,animationDuration:`${n}ms`,animationPlayState:o?\"running\":\"paused\",opacity:h?0:1};u&&(y.transform=`scaleX(${d})`);const v=c(\"Toastify__progress-bar\",u?\"Toastify__progress-bar--controlled\":\"Toastify__progress-bar--animated\",`Toastify__progress-bar-theme--${g}`,`Toastify__progress-bar--${a}`,{\"Toastify__progress-bar--rtl\":m}),T=p(i)?i({rtl:m,type:a,defaultClassName:v}):c(v,i);return t.createElement(\"div\",{role:\"progressbar\",\"aria-hidden\":h?\"true\":\"false\",\"aria-label\":\"notification timer\",className:T,style:y,[u&&d>=1?\"onTransitionEnd\":\"onAnimationEnd\"]:u&&d<1?null:()=>{f&&s()}})}const N=n=>{const{isRunning:o,preventExitTransition:s,toastRef:r,eventHandlers:i}=_(n),{closeButton:l,children:u,autoClose:d,onClick:m,type:f,hideProgressBar:g,closeToast:h,transition:y,position:v,className:T,style:E,bodyClassName:C,bodyStyle:b,progressClassName:I,progressStyle:N,updateId:M,role:R,progress:w,rtl:x,toastId:$,deleteToast:k,isIn:P,isLoading:B,iconOut:D,closeOnClick:A,theme:z}=n,F=c(\"Toastify__toast\",`Toastify__toast-theme--${z}`,`Toastify__toast--${f}`,{\"Toastify__toast--rtl\":x},{\"Toastify__toast--close-on-click\":A}),H=p(T)?T({rtl:x,position:v,type:f,defaultClassName:F}):c(F,T),S=!!w||!d,q={closeToast:h,type:f,theme:z};let Q=null;return!1===l||(Q=p(l)?l(q):e(l)?a(l,q):L(q)),t.createElement(y,{isIn:P,done:k,position:v,preventExitTransition:s,nodeRef:r},t.createElement(\"div\",{id:$,onClick:m,className:H,...i,style:E,ref:r},t.createElement(\"div\",{...P&&{role:R},className:p(C)?C({type:f}):c(\"Toastify__toast-body\",C),style:b},null!=D&&t.createElement(\"div\",{className:c(\"Toastify__toast-icon\",{\"Toastify--animate-icon Toastify__zoom-enter\":!B})},D),t.createElement(\"div\",null,u)),Q,t.createElement(O,{...M&&!S?{key:`pb-${M}`}:{},rtl:x,theme:z,delay:d,isRunning:o,isIn:P,closeToast:h,hide:g,type:f,style:N,className:I,controlledProgress:S,progress:w||0})))},M=function(t,e){return void 0===e&&(e=!1),{enter:`Toastify--animate Toastify__${t}-enter`,exit:`Toastify--animate Toastify__${t}-exit`,appendPosition:e}},R=h(M(\"bounce\",!0)),w=h(M(\"slide\",!0)),x=h(M(\"zoom\")),$=h(M(\"flip\")),k=l((e,n)=>{const{getToastToRender:o,containerRef:a,isToastActive:r}=C(e),{className:i,style:l,rtl:u,containerId:d}=e;function f(t){const e=c(\"Toastify__toast-container\",`Toastify__toast-container--${t}`,{\"Toastify__toast-container--rtl\":u});return p(i)?i({position:t,rtl:u,defaultClassName:e}):c(e,m(i))}return s(()=>{n&&(n.current=a.current)},[]),t.createElement(\"div\",{ref:a,className:\"Toastify\",id:d},o((e,n)=>{const o=n.length?{...l}:{...l,pointerEvents:\"none\"};return t.createElement(\"div\",{className:f(e),style:o,key:`container-${e}`},n.map((e,o)=>{let{content:s,props:a}=e;return t.createElement(N,{...a,isIn:r(a.toastId),style:{...a.style,\"--nth\":o+1,\"--len\":n.length},key:`toast-${a.key}`},s)}))}))});k.displayName=\"ToastContainer\",k.defaultProps={position:\"top-right\",transition:R,autoClose:5e3,closeButton:L,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,draggable:!0,draggablePercent:80,draggableDirection:\"x\",role:\"alert\",theme:\"light\"};let P,B=new Map,D=[],A=1;function z(){return\"\"+A++}function F(t){return t&&(d(t.toastId)||u(t.toastId))?t.toastId:z()}function H(t,e){return B.size>0?v.emit(0,t,e):D.push({content:t,options:e}),e.toastId}function S(t,e){return{...e,type:e&&e.type||t,toastId:F(e)}}function q(t){return(e,n)=>H(e,S(t,n))}function Q(t,e){return H(t,S(\"default\",e))}Q.loading=(t,e)=>H(t,S(\"default\",{isLoading:!0,autoClose:!1,closeOnClick:!1,closeButton:!1,draggable:!1,...e})),Q.promise=function(t,e,n){let o,{pending:s,error:a,success:r}=e;s&&(o=d(s)?Q.loading(s,n):Q.loading(s.render,{...n,...s}));const i={isLoading:null,autoClose:null,closeOnClick:null,closeButton:null,draggable:null},l=(t,e,s)=>{if(null==e)return void Q.dismiss(o);const a={type:t,...i,...n,data:s},r=d(e)?{render:e}:e;return o?Q.update(o,{...a,...r}):Q(r.render,{...a,...r}),s},c=p(t)?t():t;return c.then(t=>l(\"success\",r,t)).catch(t=>l(\"error\",a,t)),c},Q.success=q(\"success\"),Q.info=q(\"info\"),Q.error=q(\"error\"),Q.warning=q(\"warning\"),Q.warn=Q.warning,Q.dark=(t,e)=>H(t,S(\"default\",{theme:\"dark\",...e})),Q.dismiss=t=>{B.size>0?v.emit(1,t):D=D.filter(e=>null!=t&&e.options.toastId!==t)},Q.clearWaitingQueue=function(t){return void 0===t&&(t={}),v.emit(5,t)},Q.isActive=t=>{let e=!1;return B.forEach(n=>{n.isToastActive&&n.isToastActive(t)&&(e=!0)}),e},Q.update=function(t,e){void 0===e&&(e={}),setTimeout(()=>{const n=function(t,e){let{containerId:n}=e;const o=B.get(n||P);return o&&o.getToast(t)}(t,e);if(n){const{props:o,content:s}=n,a={delay:100,...o,...e,toastId:e.toastId||t,updateId:z()};a.toastId!==t&&(a.staleId=t);const r=a.render||s;delete a.render,H(r,a)}},0)},Q.done=t=>{Q.update(t,{progress:1})},Q.onChange=t=>(v.on(4,t),()=>{v.off(4,t)}),Q.POSITION={TOP_LEFT:\"top-left\",TOP_RIGHT:\"top-right\",TOP_CENTER:\"top-center\",BOTTOM_LEFT:\"bottom-left\",BOTTOM_RIGHT:\"bottom-right\",BOTTOM_CENTER:\"bottom-center\"},Q.TYPE={INFO:\"info\",SUCCESS:\"success\",WARNING:\"warning\",ERROR:\"error\",DEFAULT:\"default\"},v.on(2,t=>{P=t.containerId||t,B.set(P,t),D.forEach(t=>{v.emit(0,t.content,t.options)}),D=[]}).on(3,t=>{B.delete(t.containerId||t),0===B.size&&v.off(0).off(1).off(5)});export{R as Bounce,$ as Flip,E as Icons,w as Slide,k as ToastContainer,x as Zoom,g as collapseToast,h as cssTransition,Q as toast,_ as useToast,C as useToastContainer};\n//# sourceMappingURL=react-toastify.esm.mjs.map\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","import api from './apiConfig';\nimport market_api from './apiConfig'\nimport axios from 'axios';\nimport {baseUrl} from './apiConfig'\nimport Cookies from \"js-cookie\";\n\nexport const getOrganisation = (userId) => {\n return api.get(`/organisations/get/user/${userId}`);\n};\n\nexport const getGithubClientId = () => {\n return api.get(`/get/github_client_id`);\n};\n\nexport function create_order (userData) {\n return api.post(`/create_order`, userData);\n};\n\nexport function create_order_debug (userData) {\n return api.post(`/create_order_debug`, userData);\n};\n\nexport function close_machine (userData) {\n return api.post(`/close_machine`, userData);\n};\n\nexport const addUser = (userData) => {\n return api.post(`/users/add`, userData);\n};\n\nexport const login = (userData) => {\n return api.post(`/login`, userData);\n};\n\nexport const register = (userData) => {\n return api.post(`/register`, userData);\n};\n\nexport const getProject = (organisationId) => {\n return api.get(`/projects/get/organisation/${organisationId}`);\n};\n\nexport const getAgents = (projectId) => {\n return api.get(`/agents/get/project/${projectId}`);\n};\n\nexport const getToolKit = () => {\n return api.get(`/toolkits/get/local/list`);\n};\n\nexport const getTools = () => {\n return api.get(`/tools/list`);\n};\n\nexport const executeTool = (commandline) =>{\n return api.post(`/tools/execute`, {command:commandline})\n}\n\nexport const getAgentDetails = (agentId, agentExecutionId) => {\n return api.get(`/agent_executions_configs/details/agent_id/${agentId}/agent_execution_id/${agentExecutionId}`);\n};\n\nexport const getAgentExecutions = (agentId) => {\n return api.get(`/agentexecutions/get/agent/${agentId}`);\n};\n\nexport const getExecutionFeeds = (executionId) => {\n return api.get(`/agentexecutionfeeds/get/execution/${executionId}`);\n};\n\nexport const getExecutionTasks = (executionId) => {\n return api.get(`/agentexecutionfeeds/get/tasks/${executionId}`);\n};\n\nexport const createAgent = (agentData, scheduledCreate) => {\n return api.post(scheduledCreate ? `/agents/schedule` : `/agents/create`, agentData);\n};\n\nexport const createAgentWorkflow = (agentData) => {\n return api.post(`/agents/create_workflow_agent`, agentData);\n};\n\n\nexport const addAgentRun = (agentData) => {\n return api.post( `/agentexecutions/add_run`, agentData);\n};\n\nexport const addTool = (toolData) => {\n return api.post(`/toolkits/get/local/install`, toolData);\n};\n\nexport const updateExecution = (executionId, executionData) => {\n return api.put(`/agentexecutions/update/${executionId}`, executionData);\n};\n\nexport const editAgentTemplate = (agentTemplateId, agentTemplateData) => {\n return api.put(`/agent_templates/update_agent_template/${agentTemplateId}`, agentTemplateData)\n};\n\nexport const addExecution = (executionData) => {\n return api.get(`/agentexecutions/add`, executionData);\n};\n\nexport const getResources = (agentId) => {\n return api.get(`/resources/get/all/${agentId}`);\n};\n\nexport const getTemplateResource = (templateId, resourcename) => {\n return api.get(`/resources/get/template/${templateId}/name/${resourcename}`);\n};\n\n\nexport const getMarketTemplateResource = (templateId, resourcename) => {\n return market_api.get(`/resources/get/marketTemplate/${templateId}/name/${resourcename}`);\n};\n\n\nexport const getAgentRunResources = (agentId, runId) => {\n return api.get(`/resources/get/all/${agentId}/agent_execution_id/${runId}`);\n};\n\n\nexport const getLastActiveAgent = (projectId) => {\n return api.get(`/agentexecutions/get/latest/agent/project/${projectId}`);\n};\n\nexport const uploadFile = async(agentId, formData) => {\n let key1= Cookies.get('accessToken')\n let key= localStorage.getItem('accessTokenHuaxiaobao')\n try {\n const response = await axios.post(`${baseUrl()}resources/add/${agentId}`, formData, {\n headers: {\n Authorization: `Bearer ${key}`, // Replace with actual token variable\n // Do NOT set Content-Type explicitly here; let Axios handle it for FormData\n },\n });\n return response.data;\n } catch (error) {\n console.error(\"Upload failed:\", error.response ? error.response.data : error.message);\n }\n\n //\n //return api.post(`/resources/add/${agentId}`, formData);\n};\n\nexport const wechatShare = (url) => {\n return api.post(`/wechat/signature`, {url: url});\n};\n\n\nexport const shareFile = (fileid) => {\n return api.get(`/resources/share/${fileid}`);\n};\n\nexport const listContributors = (page, itemsperpage) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/resources/contributors/${page}/${itemsperpage}`);\n};\n\nexport const listContributorsSpecific = (page, itemsperpage, categoryFilter, authorFilter, contributorFilter, appFilter,nameFilter ) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.post(`/resources/ccontributors_filter/${page}/${itemsperpage}`, {categoryFilter, authorFilter, contributorFilter, appFilter, nameFilter});\n};\n\nexport const listContents = (page, itemsperpage) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/resources/contents/${page}/${itemsperpage}`);\n};\n\nexport const getContentById = (contentid) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/resources/contentsbyid/${contentid}`);\n};\n\n\nexport const recommendContent = (contentid) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/resources/recommendcontent/${contentid}`);\n};\n\n\nexport const unrecommendContent = (contentid) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/resources/unrecommendcontent/${contentid}`);\n};\n\n\nexport const unshareContent = (contentid) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/resources/unshare/${contentid}`);\n};\n\nexport const recommendTemplate = (templateid) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/agent_templates/recommendtemplate/${templateid}`);\n};\n\n\nexport const unrecommendTemplate = (templateid) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.get(`/agent_templates/unrecommendTemplate/${templateid}`);\n};\n\n\nexport const listContentsSpecific = (page, itemsperpage, categoryFilter, authorFilter, contributorFilter, appFilter,nameFilter ) => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.post(`/resources/contents_filter/${page}/${itemsperpage}`, {categoryFilter, authorFilter, contributorFilter, appFilter, nameFilter});\n};\n\nexport const getembeddings = (formData) => {\n return api.post(`/resources/getembeddings`, formData);\n};\n\nexport const getMasks = (formData) => {\n return api.post(`/resources/getmasks`, formData);\n};\n\nexport const validateAccessToken = () => {\n return api.get(`/validate-access-token`);\n};\n\nexport const validateLLMApiKey = (model_source, model_api_key) => {\n return api.post(`/validate-llm-api-key`, {model_source, model_api_key});\n};\n\nexport const checkEnvironment = () => {\n return api.get(`/configs/get/env`);\n};\n\nexport const getOrganisationModelConfig = (organisationId, key) => {\n return api.get(`/configs/get/organisation/${organisationId}//${key}`);\n};\n\nexport const getOrganisationConfig = (organisationId, key) => {\n return api.get(`/configs/get/organisation/${organisationId}/key/${key}`);\n};\n\nexport const getOrganisationAsset = (organisationId) => {\n return api.get(`/configs/get/organisation/${organisationId}/asset`);\n};\n\nexport const updateOrganisationConfig = (organisationId, configData) => {\n return api.post(`/configs/add/organisation/${organisationId}`, configData);\n};\n\nexport const getOrganisationInformation = (organisationId) => {\n return api.get(`/configs/get/organisation/information/${organisationId}`);\n}\n\nexport const updateOrganisationInformation = (organisationId,information) => {\n return api.post(`/configs/update/organisation/information/${organisationId}`, {information});\n};\n\nexport const fetchAgentTemplateDetails = (templateId) => {\n return api.get(`/agent_templates/get/${templateId}`);\n};\n\nexport const deleteAgentTemplate = (templateId) => {\n return api.get(`/agent_templates/delete/${templateId}`);\n};\n\nexport const getToolConfig = (toolKitName) => {\n return api.get(`/tool_configs/get/toolkit/${toolKitName}`);\n};\n\nexport const updateToolConfig = (toolKitName, configData) => {\n return api.post(`/tool_configs/add/${toolKitName}`, configData);\n};\n\nexport const fetchAgentTemplateList = (template_source='local', page=-1, itemsperpage=30, categoryFilter='all', contributorFilter='all',nameFilter='all') => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.post(`/agent_templates/list/${page}/${itemsperpage}?template_source=${template_source}`, {categoryFilter, contributorFilter, nameFilter});\n};\n\nexport const fetchMarketTemplateList = (page=0, itemsperpage=30, categoryFilter='all', contributorFilter='all',nameFilter='all') => {\n // page -1 means all .\n // 返回一组dict {url:url, name:agentname, description:discription,contributor:contributor}\n return api.post(`/agent_templates/marketplace/list?page=${page}&itemsperpage=${itemsperpage}`, {categoryFilter, contributorFilter, nameFilter});\n};\n\nexport const installAndFetchAgentTemplate = (templateId) => {\n return api.get(`/agent_templates/installandget/${templateId}`);\n};\n\nexport const saveAgentAsTemplate = (agentId, executionId) => {\n return api.post(`/agent_templates/save_agent_as_template/agent_id/${agentId}/agent_execution_id/${executionId}`);\n};\n\nexport const fetchAgentTemplateConfig = (templateId) => {\n return api.get(`/agent_templates/get/${templateId}?template_source=marketplace`);\n};\n\nexport const installAgentTemplate = (templateId) => {\n return api.post(`/agent_templates/download?agent_template_id=${templateId}`);\n};\n\nexport const getAgentTemplate = (market_template_id) => {\n return api.post(`/agent_templates/get_dependent?market_template_id=${market_template_id}`);\n};\n\n\n\nexport const fetchAgentTemplateConfigLocal = (templateId) => {\n return api.get(`/agent_templates/agent_config?agent_template_id=${templateId}`);\n};\n\nexport const updatePermissions = (permissionId, data) => {\n return api.put(`/agentexecutionpermissions/update/status/${permissionId}`, data)\n};\n\nexport const deleteAgent = (agentId) => {\n return api.put(`/agents/delete/${agentId}`)\n};\n\nexport const authenticateGoogleCred = (toolKitId) => {\n return api.get(`/google/get_google_creds/toolkit_id/${toolKitId}`);\n};\n\nexport const authenticateTwitterCred = (toolKitId) => {\n return api.get(`/twitter/get_twitter_creds/toolkit_id/${toolKitId}`);\n};\n\nexport const sendTwitterCreds = (twitter_creds) => {\n return api.post(`/twitter/send_twitter_creds/${twitter_creds}`);\n};\n\nexport const sendGoogleCreds = (google_creds, toolkit_id) => {\n return api.post(`/google/send_google_creds/toolkit_id/${toolkit_id}`, google_creds);\n};\n\nexport const fetchToolTemplateList = () => {\n return api.get(`/toolkits/get/list?page=0`);\n};\n\nexport const fetchKnowledgeTemplateList = () => {\n return api.get(`/knowledges/get/list?page=0`);\n};\n\nexport const fetchToolTemplateOverview = (toolTemplateName) => {\n return api.get(`/toolkits/marketplace/readme/${toolTemplateName}`);\n};\n\nexport const updateMarketplaceToolTemplate = (templateName) => {\n return api.put(`/toolkits/update/${templateName}`);\n};\n\nexport const installToolkitTemplate = (templateName) => {\n return api.get(`/toolkits/get/install/${templateName}`);\n};\n\nexport const checkToolkitUpdate = (templateName) => {\n return api.get(`/toolkits/check_update/${templateName}`);\n};\n\nexport const getExecutionDetails = (executionId, agentId) => {\n return api.get(`/agent_executions_configs/details/agent/${agentId}/agent_execution/${executionId}`);\n};\n\nexport const stopSchedule = (agentId) => {\n return api.post(`/agents/stop/schedule?agent_id=${agentId}`);\n};\n\nexport const createAndScheduleRun = (requestData) => {\n return api.post(`/agentexecutions/schedule`, requestData);\n};\n\nexport const agentScheduleComponent = (agentId) => {\n return api.get(`/agents/get/schedule_data/${agentId}`);\n};\n\nexport const updateSchedule = (requestData) => {\n return api.put(`/agents/edit/schedule`, requestData);\n};\n\nexport const getDateTime = (agentId) => {\n return api.get(`/agents/get/schedule_data/${agentId}`);\n};\n\nexport const getMetrics = () => {\n return api.get(`/analytics/metrics`)\n};\n\nexport const getAllAgents = () => {\n return api.get(`/analytics/agents/all`)\n};\n\nexport const getAgentRuns = (agent_id) => {\n return api.get(`analytics/agents/${agent_id}`);\n};\n\nexport const getActiveRuns = () => {\n return api.get(`analytics/runs/active`);\n};\n\nexport const getToolsUsage = () => {\n return api.get(`analytics/tools/used`);\n};\n\nexport const modelInfo = (model) => {\n return api.get(`analytics/model_details/${model}`)\n}\n\nexport const getLlmModels = () => {\n return api.get(`organisations/llm_models`);\n};\n\nexport const getAgentWorkflows = () => {\n return api.get(`organisations/agent_workflows`);\n};\n\nexport const fetchVectorDBList = () => {\n return api.get(`/vector_dbs/get/list`);\n};\n\nexport const getVectorDatabases = () => {\n return api.get(`/vector_dbs/user/list`);\n};\n\nexport const getVectorDBDetails = (vectorDBId) => {\n return api.get(`/vector_dbs/db/details/${vectorDBId}`);\n};\n\nexport const deleteVectorDB = (vectorDBId) => {\n return api.post(`/vector_dbs/delete/${vectorDBId}`);\n};\n\nexport const updateVectorDB = (vectorDBId, newIndices) => {\n return api.put(`/vector_dbs/update/vector_db/${vectorDBId}`, newIndices);\n};\n\nexport const connectPinecone = (pineconeData) => {\n return api.post(`/vector_dbs/connect/pinecone`, pineconeData);\n};\n\nexport const connectQdrant = (qdrantData) => {\n return api.post(`/vector_dbs/connect/qdrant`, qdrantData);\n};\n\nexport const connectWeaviate = (weaviateData) => {\n return api.post(`/vector_dbs/connect/weaviate`, weaviateData);\n};\n\nexport const getKnowledge = () => {\n return api.get(`/knowledges/user/list`);\n};\n\nexport const getKnowledgeDetails = (knowledgeId) => {\n return api.get(`/knowledges/user/get/details/${knowledgeId}`);\n};\n\nexport const deleteCustomKnowledge = (knowledgeId) => {\n return api.post(`/knowledges/delete/${knowledgeId}`);\n};\n\nexport const deleteMarketplaceKnowledge = (knowledgeName) => {\n return api.post(`/knowledges/uninstall/${knowledgeName}`);\n};\n\nexport const addUpdateKnowledge = (knowledgeData) => {\n return api.post(`/knowledges/add_or_update/data`, knowledgeData);\n};\n\nexport const getValidIndices = () => {\n return api.get(`/vector_db_indices/user/valid_indices`);\n};\n\nexport const getValidMarketplaceIndices = (knowledgeName) => {\n return api.get(`/vector_db_indices/marketplace/valid_indices/${knowledgeName}`);\n};\n\nexport const fetchKnowledgeTemplateOverview = (knowledgeName) => {\n return api.get(`/knowledges/marketplace/get/details/${knowledgeName}`);\n};\n\nexport const installKnowledgeTemplate = (knowledgeName, indexId) => {\n return api.get(`/knowledges/install/${knowledgeName}/index/${indexId}`);\n};\n\nexport const createApiKey = (apiName) => {\n return api.post(`/api-keys`, apiName);\n};\n\nexport const getApiKeys = () => {\n return api.get(`/api-keys`);\n};\n\nexport const editApiKey = (apiDetails) => {\n return api.put(`/api-keys`, apiDetails);\n};\n\nexport const deleteApiKey = (apiId) => {\n return api.delete(`/api-keys/${apiId}`);\n};\n\nexport const saveWebhook = (webhook) => {\n return api.post(`/webhook/add`, webhook);\n};\n\nexport const getWebhook = () => {\n return api.get(`/webhook/get`);\n};\n\nexport const editWebhook = (webhook_id, webook_data) => {\n return api.post(`/webhook/edit/${webhook_id}`, webook_data);\n};\n\nexport const publishToMarketplace = (agent_execution_id, price) => {\n return api.post(`/agent_templates/publish_template/with_executionid`,{agent_execution_id, price});\n};\n\nexport const storeApiKey = (model_provider, model_api_key) => {\n return api.post(`/models_controller/store_api_keys`, {model_provider, model_api_key});\n}\n\nexport const fetchApiKeys = () => {\n return api.get(`/models_controller/get_api_keys`);\n}\n\n\nexport const fetchBalance = () => {\n return api.get(`/models_controller/get_api_keys`);\n}\n\nexport const fetchApiKey = (model_provider) => {\n return api.get(`/models_controller/get_api_key?model_provider=${model_provider}`);\n}\n\nexport const verifyEndPoint = (model_api_key, end_point, model_provider) => {\n return api.get(`/models_controller/verify_end_point`, {\n params: { model_api_key, end_point, model_provider }\n });\n}\n\nexport const storeModel = (model_name, description, end_point, model_provider_id, token_limit, type, version, context_length, price) => {\n return api.post(`/models_controller/store_model`,{model_name, description, end_point, model_provider_id, token_limit, type, version, context_length, price});\n}\n\nexport const testModel = () => {\n return api.get(`/models_controller/test_local_llm`);\n}\n\nexport const fetchModels = () => {\n return api.get(`/models_controller/fetch_models`);\n}\n\nexport const fetchModel = (model_id) => {\n return api.get(`/models_controller/fetch_model/${model_id}`);\n}\n\nexport const fetchModelData = (model) => {\n return api.post(`/models_controller/fetch_model_data`, { model: model })\n}\n\nexport const fetchMarketPlaceModel = () => {\n return api.get(`/models_controller/get/list`)\n}\n\nexport const getToolMetrics = (toolName) => {\n return api.get(`analytics/tools/${toolName}/usage`)\n}\n//action: str= Body('', embed=True), object: int = Body('', embed=True)\nexport const adddata = (organisation_id, action, object_id) => {\n return api.post(`/analytics/adddata`, { organisation_id:organisation_id,action: action, object_id:object_id });\n};\n//organisation_id: str= Body('', embed=True), action: str= Body('', embed=True), object: int = Body('', embed=True)\nexport const querydata = (organisation_id,action, object_id) => {\n return api.post(`/analytics/querydata`, { organisation_id:organisation_id,action: action, object_id:object_id });\n};\n\nexport const getToolLogs = (toolName) => {\n return api.get(`analytics/tools/${toolName}/logs`)\n}\n\nexport const publishTemplateToMarketplace = (agentData) => {\n return api.post(`/agent_templates/publish_template`, agentData);\n};\n\nexport const unpublishTemplateToMarketplace = (template_id) => {\n return api.get(`/agent_templates/unpublish_template/${template_id}`);\n};\n\n\nexport const pushToAll = (agentData) => {\n return api.post(`/agent_templates/push_template`, agentData);\n};\n\nexport const getKnowledgeMetrics = (knowledgeName) => {\n return api.get(`analytics/knowledge/${knowledgeName}/usage`)\n}\n\nexport const getKnowledgeLogs = (knowledgeName) => {\n return api.get(`analytics/knowledge/${knowledgeName}/logs`)\n}\n\nexport const getFirstSignup = (source) => {\n return api.post(`/users/first_login_source/${source}`,);\n};\n\n\nexport const heartBeat = (organisationId) => {\n return api.get(`/users/heartbeat/${organisationId}`);\n};\n","import {formatDistanceToNow, format, addMinutes} from 'date-fns';\nimport {utcToZonedTime} from 'date-fns-tz';\nimport {baseUrl, analyticsMeasurementId, analyticsApiSecret, mixpanelId} from \"../pages/api/apiConfig.jsx\";\nimport {EventBus} from \"./eventBus.jsx\";\nimport JSZip, { file } from \"jszip\";\nimport moment from 'moment';\nimport mixpanel from 'mixpanel-browser'\nimport Cookies from \"js-cookie\";\nimport React, { useState, useEffect, useRef, useCallback} from 'react';\nimport { toast } from \"react-toastify\";\nimport { v4 as uuidv4 } from 'uuid';\nimport { getTemplateResource, shareFile, uploadFile } from \"../pages/api/DashboardService.jsx\";\nimport axios from 'axios';\n\n\nconst toolkitData = {\n 'Jira Toolkit': '/images/tools_icon.svg',\n '邮件工具集': '/images/gmail_icon.svg',\n 'Google 日历工具集': '/images/tools_icon.svg',\n 'GitHub 工具集': '/images/github_icon.svg',\n 'Google 搜索工具集': '/images/google_search_icon.svg',\n 'Searx Toolkit': '/images/searx_icon.svg',\n 'Slack Toolkit': '/images/slack_icon.svg',\n 'web信息抓取工具集': '/images/webscraper_icon.svg',\n 'Twitter工具集': '/images/twitter_icon.svg',\n 'Google SERP Toolkit': '/images/google_serp_icon.svg',\n '文件工具集': '/images/filemanager_icon.svg',\n 'CodingToolkit': '/images/shangxiaobao3.webp',\n 'Thinking Toolkit': '/images/shangxiaobao3.webp',\n '图像生成工具集': '/images/',\n 'DuckDuckGo Search Toolkit': '/images/duckduckgo_icon.png',\n 'Instagram Toolkit': '/images/instagram.png',\n 'Knowledge Search Toolkit': '/images/knowledeg_logo.png',\n 'Notion Toolkit': '/images/notion_logo.png',\n 'Apollo工具集': '/images/apollo_logo.png',\n 'Google Analytics Toolkit': '/images/google_analytics_logo.png'\n};\n\nexport const getUserTimezone = () => {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n}\n\n\nexport const getUserClass = () => {\n userType = Cookies.get('userType')\n if (userType == undefined){\n return 0\n }\n if (userType == 'guest'){\n return 1\n }\n if ((userType == 'user' || userType == 'guest')){\n return 2\n }\n if (userType == 'comfyauthor'){\n return 3\n }\n if (userType == 'admin'){\n return 4\n }\n\n}\n\n\nexport const converdate = (originalDatetimeStr) => {\n // Convert the UTC string to a Date object\n var originalDatetime = moment.tz(originalDatetimeStr, 'GMT').tz('Asia/Shanghai');\n const localDatetimeStr = originalDatetime.format('MM/DD HH:mm');\n\n return localDatetimeStr;\n}\n\nexport const converdate_tosec = (originalDatetimeStr) => {\n // Convert the UTC string to a Date object\n var originalDatetime = moment.tz(originalDatetimeStr, 'GMT').tz('Asia/Shanghai');\n const localDatetimeStr = originalDatetime.format('MM/DD HH:mm:ss');\n \n return localDatetimeStr;\n}\n\nexport const converdate_utc = (originalDatetimeStr)=>{\n //Convert the string to a Date object\n //alert(originalDatetimeStr)// Convert the string to a Date object\n var originalDatetime = new Date(originalDatetimeStr);\n // Get month, day, hours, and minutes\n var month = ('0' + (originalDatetime.getMonth() + 1)).slice(-2);\n var day = ('0' + originalDatetime.getDate()).slice(-2);\n var hours = ('0' + originalDatetime.getHours()).slice(-2);\n var minutes = ('0' + originalDatetime.getMinutes()).slice(-2);\n\n // Formatted datetime string\n var formattedDatetimeStr = month + day + '-' + hours + ':' + minutes;\n return formattedDatetimeStr\n}\n\nexport const convertToGMT = (dateTime) => {\n if (!dateTime) {\n return null;\n }\n return moment.utc(dateTime).format('YYYY-MM-DD HH:mm:ss');\n};\n\nexport const formatTimeDifference = (timeDifference) => {\n const units = ['years', 'months', 'days', 'hours', 'minutes'];\n const singularUnits = ['year', 'month', 'day', 'hour', 'minute'];\n\n for (let i = 0; i < units.length; i++) {\n const unit = units[i];\n if (timeDifference[unit] !== 0) {\n if (unit === 'minutes') {\n return `${timeDifference[unit]} ${timeDifference[unit] === 1 ? singularUnits[i] : unit} 之前`;\n } else {\n return `${timeDifference[unit]} ${timeDifference[unit] === 1 ? singularUnits[i] : unit} 之前`;\n }\n }\n }\n\n return '刚才';\n};\n\nexport const formatNumber = (number) => {\n if (number === null || number === undefined || number === 0) {\n return '0';\n }\n\n const suffixes = ['', 'k', 'M', 'B', 'T'];\n const magnitude = Math.floor(Math.log10(number) / 3);\n const scaledNumber = number / Math.pow(10, magnitude * 3);\n const suffix = suffixes[magnitude];\n\n if (scaledNumber % 1 === 0) {\n return scaledNumber.toFixed(0) + suffix;\n }\n\n return scaledNumber.toFixed(1) + suffix;\n};\n\nexport const formatTime = (lastExecutionTime) => {\n try {\n const parsedTime = new Date(lastExecutionTime + 'Z'); // append 'Z' to indicate UTC\n if (isNaN(parsedTime.getTime())) {\n throw new Error('Invalid time value');\n }\n\n const timeZone = 'Asia/Kolkata';\n const zonedTime = utcToZonedTime(parsedTime, timeZone);\n\n return formatDistanceToNow(zonedTime, {\n addSuffix: true,\n includeSeconds: true\n }).replace(/about\\s/, '')\n .replace(/minutes?/, 'min')\n .replace(/hours?/, 'hrs')\n .replace(/days?/, 'day')\n .replace(/weeks?/, 'week');\n } catch (error) {\n console.error('Error formatting time:', error);\n return 'Invalid Time';\n }\n};\n\nexport const formatBytes = (bytes, decimals = 2) => {\n if (bytes === 0) {\n return '0 Bytes';\n }\n\n const k = 1024;\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n const formattedValue = parseFloat((bytes / Math.pow(k, i)).toFixed(decimals));\n\n return `${formattedValue} ${sizes[i]}`;\n};\n\nexport const downloadFile = (fileId, fileName = null) => {\n // const authToken = localStorage.getItem('accessToken');\n const authToken = Cookies.get(\"accessToken\");\n const url = `${baseUrl()}/resources/get/${fileId}`;\n const env = localStorage.getItem('applicationEnvironment');\n\n if (env === 'PROD') {\n const headers = {\n Authorization: `Bearer ${authToken}`,\n };\n\n return fetch(url, {headers})\n .then((response) => response.blob())\n .then((blob) => {\n if (fileName) {\n const fileUrl = window.URL.createObjectURL(blob);\n const anchorElement = document.createElement('a');\n anchorElement.href = fileUrl;\n anchorElement.download = fileName;\n anchorElement.click();\n window.URL.revokeObjectURL(fileUrl);\n } else {\n return blob;\n }\n })\n .catch((error) => {\n console.error('Error downloading file:', error);\n });\n } else {\n if (fileName) {\n window.open(url, '_blank');\n } else {\n return fetch(url)\n .then((response) => response.blob())\n .catch((error) => {\n console.error('Error downloading file:', error);\n });\n }\n }\n};\n\n\n\nexport const shareContent = (fileId) => {\n shareFile(fileId)\n .then((response) => {\n if (response.data.result == 'success'){\n alert(response.data.message)\n }else{\n alert(response.data.message)\n }\n\n })\n .catch((error) => {\n console.error('Error fetching project:', error);\n });\n};\n\nexport const downloadAllFiles = (files, run_name) => {\n const zip = new JSZip();\n const promises = [];\n const fileNamesCount = {};\n\n files.forEach((file, index) => {\n fileNamesCount[file.name]\n ? fileNamesCount[file.name]++\n : (fileNamesCount[file.name] = 1);\n\n let modifiedFileName = file.name;\n if (fileNamesCount[file.name] > 1) {\n const fileExtensionIndex = file.name.lastIndexOf(\".\");\n const name = file.name.substring(0, fileExtensionIndex);\n const extension = file.name.substring(fileExtensionIndex + 1);\n modifiedFileName = `${name} (${fileNamesCount[file.name] - 1}).${extension}`;\n }\n\n const promise = downloadFile(file.id)\n .then((blob) => {\n const fileBlob = new Blob([blob], {type: file.type});\n zip.file(modifiedFileName, fileBlob);\n })\n .catch((error) => {\n console.error(\"Error downloading file:\", error);\n });\n\n promises.push(promise);\n });\n\n Promise.all(promises)\n .then(() => {\n zip.generateAsync({type: \"blob\"})\n .then((content) => {\n const now = new Date();\n const timestamp = `${now.getFullYear()}-${(\"0\" + (now.getMonth() + 1)).slice(-2)}-${(\"0\" + now.getDate()).slice(-2)}_${now.getHours()}:${now.getMinutes()}:${now.getSeconds()}`.replace(/:/g, '-');\n const zipFilename = `${run_name}_${timestamp}.zip`;\n const downloadLink = document.createElement(\"a\");\n downloadLink.href = URL.createObjectURL(content);\n downloadLink.download = zipFilename;\n downloadLink.click();\n })\n .catch((error) => {\n console.error(\"Error generating zip:\", error);\n });\n });\n};\n\nexport const refreshUrl = () => {\n if (typeof window === 'undefined') {\n return;\n }\n\n const {origin, pathname} = window.location;\n const urlWithoutToken = origin + pathname;\n window.history.replaceState({}, document.title, urlWithoutToken);\n};\n\nexport const getFileExtension=(filename) =>{\n // Split the filename by dot (.)\n const parts = filename.split('.');\n // Return the last part of the split array, which represents the file extension\n return parts[parts.length - 1];\n}\n\nexport const loadingTextEffect = (loadingText, setLoadingText, timer) => {\n const text = loadingText;\n let dots = '';\n\n const interval = setInterval(() => {\n dots = dots.length < 3 ? dots + '.' : '';\n setLoadingText(`${text}${dots}`);\n }, timer);\n\n return () => clearInterval(interval)\n};\n\nexport const openNewTabComplex = (itemElement, id, name, contentType, hasInternalId = false) => {\n EventBus.emit('openNewTab', {\n element: { ...itemElement, ...{id: id, name: name, contentType: contentType, internalId: hasInternalId ? createInternalId() : 0} }\n });\n};\n\n\nexport const openNewTab = (id, name, contentType, hasInternalId = false) => {\n EventBus.emit('openNewTab', {\n element: {id: id, name: name, contentType: contentType, internalId: hasInternalId ? createInternalId() : 0}\n });\n};\n\nexport const openNewTabNative = (id, name, contentType, hasInternalId = false) => {\n EventBus.emit('openNewTab', {\n element: {id: id, name: name, contentType: contentType, internalId: hasInternalId ? createInternalId() : 0}\n });\n};\n\nexport const removeTab = (id, name, contentType, internalId) => {\n EventBus.emit('removeTab', {\n element: {id: id, name: name, contentType: contentType, internalId: internalId}\n });\n};\n\nexport const setLocalStorageValue = (key, value, stateFunction) => {\n stateFunction(value);\n localStorage.setItem(key, value);\n};\n\nexport const setLocalStorageArray = (key, value, stateFunction) => {\n stateFunction(value);\n const arrayString = JSON.stringify(value);\n localStorage.setItem(key, arrayString);\n};\n\nconst getInternalIds = () => {\n const internal_ids = localStorage.getItem(\"agi_internal_ids\");\n return internal_ids ? JSON.parse(internal_ids) : [];\n};\n//avatar_2\nconst getHeaderPic = () => {\n const headerPic = localStorage.getItem(\"avatar_2\");\n return headerPic ? headerPic : 'https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/avatars/DefaultOrganization-43_43/fef8eaddecec0402f8902952ac3c945e.jpg';\n};\nconst removeAgentInternalId = (internalId) => {\n let idsArray = getInternalIds();\n const internalIdIndex = idsArray.indexOf(internalId);\n\n if (internalIdIndex !== -1) {\n idsArray.splice(internalIdIndex, 1);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n localStorage.removeItem(\"agent_create_click_\" + String(internalId));\n localStorage.removeItem(\"agent_name_\" + String(internalId));\n localStorage.removeItem(\"agent_description_\" + String(internalId));\n localStorage.removeItem(\"agent_category_\" + String(internalId));\n localStorage.removeItem(\"agent_goals_\" + String(internalId));\n localStorage.removeItem(\"agent_instructions_\" + String(internalId));\n localStorage.removeItem(\"agent_parameters_\" + String(internalId));\n localStorage.removeItem(\"agent_constraints_\" + String(internalId));\n localStorage.removeItem(\"agent_model_\" + String(internalId));\n localStorage.removeItem(\"agent_type_\" + String(internalId));\n localStorage.removeItem(\"tool_names_\" + String(internalId));\n localStorage.removeItem(\"tool_ids_\" + String(internalId));\n localStorage.removeItem(\"agent_rolling_window_\" + String(internalId));\n localStorage.removeItem(\"agent_database_\" + String(internalId));\n localStorage.removeItem(\"agent_permission_\" + String(internalId));\n localStorage.removeItem(\"agent_exit_criterion_\" + String(internalId));\n localStorage.removeItem(\"agent_iterations_\" + String(internalId));\n localStorage.removeItem(\"agent_step_time_\" + String(internalId));\n localStorage.removeItem(\"advanced_options_\" + String(internalId));\n localStorage.removeItem(\"advanced_editions_\" + String(internalId));\n localStorage.removeItem(\"has_LTM_\" + String(internalId));\n localStorage.removeItem(\"has_resource_\" + String(internalId));\n localStorage.removeItem(\"agent_files_\" + String(internalId));\n localStorage.removeItem(\"agent_start_time_\" + String(internalId));\n localStorage.removeItem(\"agent_expiry_date_\" + String(internalId));\n localStorage.removeItem(\"agent_expiry_type_\" + String(internalId));\n localStorage.removeItem(\"agent_expiry_runs_\" + String(internalId));\n localStorage.removeItem(\"agent_time_unit_\" + String(internalId));\n localStorage.removeItem(\"agent_time_value_\" + String(internalId));\n localStorage.removeItem(\"agent_is_recurring_\" + String(internalId));\n localStorage.removeItem(\"is_agent_template_\" + String(internalId));\n localStorage.removeItem(\"agent_template_id_\" + String(internalId));\n localStorage.removeItem(\"agent_knowledge_\" + String(internalId));\n localStorage.removeItem(\"agent_knowledge_id_\" + String(internalId));\n localStorage.removeItem(\"is_editing_agent_\" + String(internalId));\n }\n};\n\nconst removeAddToolkitInternalId = (internalId) => {\n let idsArray = getInternalIds();\n const internalIdIndex = idsArray.indexOf(internalId);\n\n if (internalIdIndex !== -1) {\n idsArray.splice(internalIdIndex, 1);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n localStorage.removeItem('tool_github_' + String(internalId));\n }\n};\n\nconst removeToolkitsInternalId = (internalId) => {\n let idsArray = getInternalIds();\n const internalIdIndex = idsArray.indexOf(internalId);\n\n if (internalIdIndex !== -1) {\n idsArray.splice(internalIdIndex, 1);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n localStorage.removeItem('toolkit_tab_' + String(internalId));\n localStorage.removeItem('api_configs_' + String(internalId));\n }\n};\n\nconst removeKnowledgeInternalId = (internalId) => {\n let idsArray = getInternalIds();\n const internalIdIndex = idsArray.indexOf(internalId);\n\n if (internalIdIndex !== -1) {\n idsArray.splice(internalIdIndex, 1);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n localStorage.removeItem('knowledge_name_' + String(internalId));\n localStorage.removeItem('knowledge_description_' + String(internalId));\n localStorage.removeItem('knowledge_index_' + String(internalId));\n }\n}\n\nconst removeAddDatabaseInternalId = (internalId) => {\n let idsArray = getInternalIds();\n const internalIdIndex = idsArray.indexOf(internalId);\n\n if (internalIdIndex !== -1) {\n idsArray.splice(internalIdIndex, 1);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n localStorage.removeItem('add_database_tab_' + String(internalId));\n localStorage.removeItem('selected_db_' + String(internalId));\n localStorage.removeItem('db_name_' + String(internalId));\n localStorage.removeItem('db_collections_' + String(internalId));\n localStorage.removeItem('pincone_api_' + String(internalId));\n localStorage.removeItem('pinecone_env_' + String(internalId));\n localStorage.removeItem('qdrant_api_' + String(internalId));\n localStorage.removeItem('qdrant_url_' + String(internalId));\n localStorage.removeItem('qdrant_port_' + String(internalId));\n }\n}\n\nconst removeDatabaseInternalId = (internalId) => {\n let idsArray = getInternalIds();\n const internalIdIndex = idsArray.indexOf(internalId);\n\n if (internalIdIndex !== -1) {\n idsArray.splice(internalIdIndex, 1);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n localStorage.removeItem('db_details_collections_' + String(internalId));\n }\n}\n\n\nexport function shuffleArray(array) {\n let currentIndex = array.length, randomIndex;\n\n // While there remain elements to shuffle.\n while (currentIndex !== 0) {\n\n // Pick a remaining element.\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex--;\n\n // And swap it with the current element.\n [array[currentIndex], array[randomIndex]] = [\n array[randomIndex], array[currentIndex]];\n }\n\n return array;\n}\n\nexport const resetLocalStorage = (contentType, internalId) => {\n switch (contentType) {\n case 'Create_Agent':\n removeAgentInternalId(internalId);\n break;\n case 'Create_Content':\n //removeAgentInternalId(internalId);\n break;\n case 'Add_Toolkit':\n removeAddToolkitInternalId(internalId);\n break;\n case 'Marketplace':\n localStorage.removeItem('marketplace_tab');\n localStorage.removeItem('market_item_clicked');\n localStorage.removeItem('market_detail_type');\n localStorage.removeItem('market_item');\n break;\n case 'Toolkits':\n removeToolkitsInternalId(internalId);\n break;\n case 'Knowledge':\n removeKnowledgeInternalId(internalId);\n break;\n case 'Add_Knowledge':\n removeKnowledgeInternalId(internalId);\n break;\n case 'Add_Database':\n removeAddDatabaseInternalId(internalId);\n break;\n case 'Database':\n removeDatabaseInternalId(internalId);\n break;\n case 'Settings':\n localStorage.removeItem('settings_tab');\n break;\n case 'Earnings':\n localStorage.removeItem('earnings_tab');\n break;\n default:\n break;\n }\n};\n\nexport const createInternalId = () => {\n let newId = 1;\n\n if (typeof window !== 'undefined') {\n let idsArray = getInternalIds();\n let found = false;\n\n for (let i = 1; !found; i++) {\n if (!idsArray.includes(i)) {\n newId = i;\n found = true;\n }\n }\n\n idsArray.push(newId);\n localStorage.setItem('agi_internal_ids', JSON.stringify(idsArray));\n }\n\n return newId;\n};\n\nexport const returnToolkitIcon = (toolkitName) => {\n return toolkitData[toolkitName] || '/images/filemanager_icon.svg';\n};\n\nexport const returnResourceIcon = (file) => {\n const fileType = file.type;\n\n switch (true) {\n case fileType.includes('image'):\n return '/images/img_file.svg';\n case fileType === 'application/pdf':\n return '/images/pdf_file.svg';\n case fileType === 'application/txt' || fileType === 'text/plain':\n return '/images/txt_file.svg';\n default:\n return '/images/default_file.svg';\n }\n};\n\nexport const returnDatabaseIcon = (database) => {\n const dbTypeIcons = {\n 'Pinecone': '/images/pinecone.svg',\n 'Qdrant': '/images/qdrant.svg',\n 'Weaviate' : '/images/weaviate.svg'\n };\n\n return dbTypeIcons[database]\n};\n\nexport const convertToTitleCase = (str) => {\n if (!str) {\n return '';\n }\n\n const words = str.toLowerCase().split('_');\n const capitalizedWords = words.map((word) => word.charAt(0).toUpperCase() + word.slice(1));\n return capitalizedWords.join(' ');\n};\n\nexport const preventDefault = (e) => {\n e.stopPropagation();\n};\n\nexport const excludedToolkits = () => {\n return [\"Thinking Toolkit\", \"Human Input Toolkit\", \"Resource Toolkit\", \"USER_INTERACTION Toolkit\"];\n}\n\nexport const getFormattedDate = (data) => {\n let date = new Date(data);\n const year = date.getFullYear();\n const day = date.getDate();\n const months = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const month = months[date.getMonth()];\n return `${day} ${month} ${year}`;\n}\n\nexport const modelIcon = (model) => {\n const icons = {\n 'Qwen': '/images/openai_logo.svg',\n 'Hugging Face': '/images/huggingface_logo.svg',\n 'Google Palm': '/images/google_palm_logo.svg',\n 'Replicate': '/images/replicate_logo.svg',\n 'OpenAI': '/images/openai_logo.svg',\n }\n\n return icons[model];\n}\n\nexport const modelGetAuth = (modelProvider) => {\n const externalLinks = {\n 'Qwen': 'https://dashscope.console.aliyun.com/apiKey',\n 'Replicate': 'https://replicate.com/account/api-tokens',\n 'Hugging Face': 'https://huggingface.co/settings/tokens',\n 'OpenAI': 'https://platform.openai.com/account/api-keys',\n 'Google Palm': 'https://developers.generativeai.google/products/palm',\n }\n\n return externalLinks[modelProvider]\n}\n\nexport const formatDateTime = (dateTimeString) => {\n const date = new Date(dateTimeString);\n const adjustedDate = addMinutes(addMinutes(date, 5 * 60), 30);\n const formattedDate = format(adjustedDate, 'd MMM yyyy HH:mm');\n\n return formattedDate;\n};\n\nexport const convertWaitingPeriod = (waitingPeriod) => {\n let convertedValue = waitingPeriod;\n let unit = 'seconds';\n\n if (convertedValue >= 60 && convertedValue < 3600) {\n convertedValue = Math.floor(convertedValue / 60);\n unit = 'minutes';\n } else if (convertedValue >= 3600 && convertedValue < 86400) {\n convertedValue = Math.floor(convertedValue / 3600);\n unit = 'hours';\n } else if (convertedValue >= 86400 && convertedValue < 604800) {\n convertedValue = Math.floor(convertedValue / 86400);\n unit = 'days';\n } else if (convertedValue >= 604800) {\n convertedValue = Math.floor(convertedValue / 604800);\n unit = 'weeks';\n }\n\n return convertedValue + ' ' + unit;\n}\n\nexport const getUTMParametersFromURL = () => {\n const params = new URLSearchParams(window.location.search);\n\n const utmParams = {\n utm_source: params.get('utm_source') || '',\n utm_medium: params.get('utm_medium') || '',\n utm_campaign: params.get('utm_campaign') || '',\n };\n\n if (!utmParams.utm_source && !utmParams.utm_medium && !utmParams.utm_campaign) {\n return null;\n }\n\n return utmParams;\n}\n\nexport const getUserClick = (event, props) => {\n const env = localStorage.getItem('applicationEnvironment');\n if(env === 'PROD' && mixpanelId()){\n mixpanel.track(event, props)\n }\n}\n\nexport const sendGAEvent = async (client, eventName, params) => {\n const measurement_id = analyticsMeasurementId();\n const api_secret = analyticsApiSecret();\n await fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {\n method: \"POST\",\n body: JSON.stringify({\n client_id: client,\n events: [{\n name: eventName,\n params: params\n }]\n })\n });\n}\n\n\n\nexport function openDatabase() {\n const request = indexedDB.open(\"MyFilesDB\", 1);\n\n return new Promise((resolve, reject) => {\n request.onerror = () => reject(request.error);\n request.onsuccess = () => resolve(request.result);\n\n // Run this code when we first create the database or need to update its version\n request.onupgradeneeded = event => {\n const db = event.target.result;\n if (!db.objectStoreNames.contains('files')) {\n db.createObjectStore('files', { keyPath: 'id' });\n }\n };\n });\n}\n\nexport async function saveFileOld(file, fileId) {\n const db = await openDatabase();\n const transaction = db.transaction('files', 'readwrite');\n const store = transaction.objectStore('files');\n const request = store.put({ id: fileId, file: file });\n\n return new Promise((resolve, reject) => {\n request.onerror = () => {\n db.close();\n reject(request.error);\n };\n request.onsuccess = () => {\n db.close();\n resolve();\n };\n });\n}\n\nexport async function saveFile(file, fileId) {\n return new Promise((resolve, reject) => {\n openDatabase().then(db => {\n const transaction = db.transaction('files', 'readwrite');\n const store = transaction.objectStore('files');\n\n // Check if the file with the given ID already exists\n const getRequest = store.get(fileId);\n\n getRequest.onsuccess = () => {\n if (getRequest.result) {\n // File with the given ID already exists, return its URL\n db.close();\n resolve(URL.createObjectURL(getRequest.result.file));\n } else {\n // File with the given ID doesn't exist, save the new file\n const putRequest = store.put({ id: fileId, file: file });\n\n putRequest.onerror = () => {\n db.close();\n reject(putRequest.error);\n };\n\n putRequest.onsuccess = () => {\n // Store the URL associated with the file content\n const url = URL.createObjectURL(file);\n db.close();\n resolve(url);\n };\n }\n };\n\n getRequest.onerror = () => {\n db.close();\n reject(getRequest.error);\n };\n }).catch(error => {\n reject(error);\n });\n });\n}\n\n\n\n\nexport function parseIdentifier(identifier) {\n const parts = identifier.split('_');\n \n if (parts.length < 3) {\n console.error('Invalid identifier: expected at least three parts');\n return null;\n }\n \n // The size is the last part\n const filesize = parts.pop();\n \n // The type is the second to last part\n const filetype = parts.pop();\n \n // The name is everything else, joined back together in case it contained underscores\n const filename = parts.join('_');\n \n return { filename, filetype, filesize };\n}\n\nexport async function getLocalResourceURL (identifier, temp_id){\n if (!identifier){\n return {url:null, file:null}\n }\n const {filename, filetype, filesize} = parseIdentifier(identifier)\n \n var url = await getFileUrl(identifier, false);\n var file = null\n if (!url && temp_id) { // this is template.and this might be a logo.\n // we are getting from the server. \n const fileR = await fetchResources(temp_id, filename)\n if (fileR) {\n var blob = await fetchMedia_indirect(fileR)\n url = URL.createObjectURL(blob);\n const lowerCaseFilename = filename.toLowerCase();\n const extension = lowerCaseFilename.match(/\\.(jpg|png|webp|jpeg)$/)?.[0].substring(1);\n const fileType = extension ? `image/${extension}` : blob.type;\n file = new File([blob], filename, { type: fileType });\n await saveFile(file, identifier);\n }\n }else{\n file = await getFileObject(identifier)\n }\n\n return {url:url, file:file}\n};\n\n\nexport async function fetchResources(template_id, resourcename) {\n try {\n const response = await getTemplateResource(template_id, resourcename);\n const resources = response.data;\n if (resources && resources.length > 0) {\n const resource = resources.find(res => res.name === resourcename);\n return resource || null; // Return the found resource or null if \n }\n return null; // Return null if no resources are available\n } catch (error) {\n console.error('Error fetching resources:', error);\n return null; // Return null in case of errors\n }\n}\n\n\nexport async function getFileUrl(fileId, autodelete=false) {\n const db = await openDatabase();\n const transaction = db.transaction('files', 'readwrite');\n const store = transaction.objectStore('files');\n const request = store.get(fileId);\n\n return new Promise((resolve, reject) => {\n request.onerror = () => {\n db.close();\n reject(request.error);\n };\n request.onsuccess = () => {\n const file = request.result ? request.result.file : null;\n if (file) {\n // Generate a new URL and associate it with the file content\n const url = URL.createObjectURL(file);\n \n // Delete the file from the database if autodelete is true\n if (autodelete) {\n //alert('deleting'+fileId)\n const deleteRequest = store.delete(fileId);\n deleteRequest.onsuccess = () => {\n db.close();\n resolve(null)\n };\n deleteRequest.onerror = () => {\n db.close();\n reject('Error deleting file from database');\n };\n } else {\n db.close();\n resolve(url);\n } \n } else {\n // No file associated with the fileId or the file does not exist in the database\n db.close();\n resolve(null); // Return null when no file is found\n }\n };\n });\n}\n\n\nexport async function getFileUrl_old(fileId, autodelete=false) {\n const db = await openDatabase();\n const transaction = db.transaction('files', 'readwrite');\n const store = transaction.objectStore('files');\n const request = store.get(fileId);\n\n return new Promise((resolve, reject) => {\n request.onerror = () => {\n db.close();\n reject(request.error);\n };\n request.onsuccess = () => {\n \n const file = request.result ? request.result.file : null;\n if (file) {\n const url = URL.createObjectURL(file);\n // Delete the file from the database\n if (autodelete){\n const deleteRequest = store.delete(fileId);\n deleteRequest.onsuccess = () => {\n db.close();\n resolve(url);\n };\n deleteRequest.onerror = () => {\n db.close();\n resolve(null)\n };\n }else{\n db.close();\n resolve(url);\n }\n } else {\n db.close();\n resolve(null)\n }\n };\n });\n}\n\nexport async function getFileObject(fileId, autodelete=false) {\n const db = await openDatabase(); // Ensure your openDatabase function is defined as shown previously\n const transaction = db.transaction('files', 'readwrite');\n const store = transaction.objectStore('files');\n const request = store.get(fileId);\n\n return new Promise((resolve, reject) => {\n request.onerror = () => {\n db.close();\n reject(request.error);\n };\n request.onsuccess = () => {\n const file = request.result ? request.result.file : null;\n if (file) {\n if (autodelete){\n //alert('deleting'+fileId)\n // Delete the file from the database\n const deleteRequest = store.delete(fileId);\n deleteRequest.onsuccess = () => {\n db.close();\n resolve(null);\n };\n deleteRequest.onerror = () => {\n db.close();\n resolve(null)\n };\n }else{\n db.close()\n resolve(file)\n }\n } else {\n db.close();\n resolve(null)\n }\n };\n });\n}\n\nexport async function uploadResource(agentId, fileData, channel = \"INPUT\") {\n const formData = new FormData();\n\n if (!(fileData.file instanceof Blob)){\n fileData.file = await getFileObject(`${fileData.name}_${fileData.type}_${fileData.size}`)\n /*\n getFileObject(`${fileData.name}_${fileData.type}_${fileData.size}`, false)\n .then((file) => {\n if(file){\n fileData.file = file\n if (!(file instanceof Blob)) {\n toast.error(fileData.name + \":文件失效,请重新点击选择上传\", { autoClose: 1800 });\n return false; // This can now effectively return from the enclosing function\n alert('BIGGG ERROORRRR')\n }\n }\n })\n .catch(error => {\n console.error('Error retrieving file URL:', error);\n return 'error'\n });\n */\n }\n formData.append('file', fileData.file);\n formData.append('name', fileData.name);\n formData.append('size', fileData.size);\n formData.append('type', fileData.type);\n formData.append('channel', channel);\n\n return await uploadFile(agentId, formData);\n}\n\n// 假设已经有以下辅助函数\nexport async function fetchBlob(url) {\n try {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(`Failed to fetch blob from ${url}`);\n }\n return await response.blob();\n } catch (error) {\n console.error(\"Error downloading the file\", error);\n return null;\n }\n}\n\n// 新函数,将远程URL转换为本地Blob URL\nexport async function getLocalResourceFromURL(value, option) {\n if (!value || !option) {\n return { url: null, file: null };\n }\n\n // 尝试从数据库中获取文件\n let file = await getFileObject(value);\n if (!file) {\n // 如果数据库中没有文件,从远程URL获取Blob\n const blob = await fetchBlob(option);\n if (!blob) {\n return { url: null, file: null };\n }\n file = new File([blob], value, { type: blob.type });\n // 保存文件到数据库\n const url = await saveFile(file, value);\n return { url, file };\n } else {\n // 如果文件已存在于数据库中,创建本地URL\n const url = URL.createObjectURL(file);\n return { url, file };\n }\n}\n\nexport function balanceToMoney(balance){\n return (parseFloat(balance)*0.1).toFixed((parseFloat(balance)*0.1) % 1 === 0 ? 0 : 2)\n //return (balance * 0.1) //.toFixed(0)\n}\n\nexport function MediaDisplay({ url, type='', onMediaClick, style, content='', contentstyle=null, muted=false,controls=true, autoplay=true, watermark=false}) {\n const [hovered, setHovered] = useState(false);\n const [mediaType, setMediaType] = useState(type); // Manage type state loc\n\n const handleMouseEnter = () => {\n setHovered(true);\n document.body.style.cursor = 'zoom-in'; // Change cursor to magnifier\n };\n\n const handleMouseLeave = () => {\n setHovered(false);\n document.body.style.cursor = 'auto'; // Restore default cursor\n };\n\n\n // Helper function to get media type from file extension\n const getMediaTypeFromUrl = (url) => {\n if (type==''){\n const extension = url.split('.').pop();\n if (['jpg', 'jpeg', 'png', 'gif', 'webp'].includes(extension)) return 'image/' + extension;\n if (['mp4', 'mov'].includes(extension)) return 'video/' + extension;\n if (['mp3', 'wav'].includes(extension)) return 'audio/' + extension;\n if (['json'].includes(extension)) return 'application/json';\n return '';\n }else{\n return type\n }\n };\n\n function render () {\n return (<>\n {getMediaTypeFromUrl(url).startsWith('image/') && (\n
\n \n {watermark &&\n \n }\n
\n )}\n {(getMediaTypeFromUrl(url).startsWith('video/') ||url.includes('mp4'))&& (\n
\n \n \n Your browser does not support the video tag.\n \n {watermark &&\n \n }\n
)}\n {getMediaTypeFromUrl(url).startsWith('audio/') && (\n \n \n Your browser does not support the audio tag.\n \n )}\n\n {getMediaTypeFromUrl(url).startsWith('application/json') && (\n \n {content} 工作流文件只有作者可以看得到, 用户不可见\n \n )}\n )\n };\n\n return (\n
\n {render()}\n
\n );\n}\n\nexport function sortTemplateList(data){\n\n // Define the desired order\n const order = ['百变真我学习趣味爱情节日短视频电商音乐电商跳舞其他','百变真我','产品背景图','宠物','音乐','电商','图像去水印和文字','简易图像编辑'];\n\n // Create a map to hold the order index\n const orderMap = {};\n order.forEach((item, index) => {\n orderMap[item] = index;\n });\n\n // Sort the data based on the predefined order, with items not in the order array going last\n data.sort((a, b) => {\n const orderA = orderMap.hasOwnProperty(a.name) ? orderMap[a.name] : Number.MAX_SAFE_INTEGER;\n const orderB = orderMap.hasOwnProperty(b.name) ? orderMap[b.name] : Number.MAX_SAFE_INTEGER;\n return orderA - orderB;\n });\n return data\n}\n\nexport function ImageModal({ imageUrl, closeModal }) {\n const containerRef = useRef(null);\n const imageRef = useRef(null);\n const [isDragging, setIsDragging] = useState(false);\n const [startX, setStartX] = useState(0);\n const [startY, setStartY] = useState(0);\n const [startScrollX, setStartScrollX] = useState(0);\n const [startScrollY, setStartScrollY] = useState(0);\n const [scale, setScale] = useState(1); // State to keep track of image scale\n\n useEffect(() => {\n const handleKeyDown = (event) => {\n if (event.key === 'Escape') {\n closeModal();\n }\n };\n\n document.addEventListener('keydown', handleKeyDown);\n return () => {\n document.removeEventListener('keydown', handleKeyDown);\n };\n }, [closeModal]);\n\n const onMouseDown = useCallback((event) => {\n event.preventDefault();\n setIsDragging(true);\n setStartX(event.pageX);\n setStartY(event.pageY);\n setStartScrollX(containerRef.current.scrollLeft);\n setStartScrollY(containerRef.current.scrollTop);\n containerRef.current.style.cursor = 'grabbing';\n }, []);\n\n const onMouseMove = useCallback((event) => {\n if (!isDragging) return;\n event.preventDefault();\n const x = event.pageX;\n const y = event.pageY;\n const walkX = (x - startX) * 3;\n const walkY = (y - startY) * 3;\n containerRef.current.scrollLeft = startScrollX - walkX;\n containerRef.current.scrollTop = startScrollY - walkY;\n }, [isDragging, startX, startY, startScrollX, startScrollY]);\n\n const onMouseUp = useCallback(() => {\n setIsDragging(false);\n containerRef.current.style.cursor = 'grab';\n }, []);\n\n const onMouseLeave = useCallback(() => {\n if (isDragging) {\n setIsDragging(false);\n containerRef.current.style.cursor = 'grab';\n }\n }, [isDragging]);\n\n const onDragStart = useCallback((event) => {\n event.preventDefault();\n }, []);\n\n const onWheel = useCallback((event) => {\n const newScale = scale + event.deltaY * -0.01;\n // Limit the scale between 0.5 and 3 for usability\n setScale(Math.min(Math.max(0.5, newScale), 3)); \n }, [scale]);\n\n // Adjust the image dimensions based on the scale\n useEffect(() => {\n if (imageRef.current) {\n const naturalWidth = imageRef.current.naturalWidth;\n const naturalHeight = imageRef.current.naturalHeight;\n imageRef.current.style.width = `${naturalWidth * scale}px`;\n imageRef.current.style.height = `${naturalHeight * scale}px`;\n }\n }, [scale]);\n // Adjust the image dimensions based on the scale\n \n useEffect(() => {\n toast.success(\"滚轮放大缩小,拖动上下观察,ESC健或者右上角X关闭\", { autoClose: 1800 });\n }, []);\n\n \n\n return (\n\n
\n \n
\n \"Original\n
\n
\n\n\n );\n}\n\n\n\nexport async function fetchMedia_indirect(file){\n const authToken = Cookies.get(\"accessToken\");\n const url = `${baseUrl()}/resources/get/${file.id}`;\n const headers = {\n Authorization: `Bearer ${authToken}`,\n };\n try {\n const response = await fetch(url, { headers });\n const blob = await response.blob();\n return blob\n \n } catch (error) {\n console.error('Error fetching image:', error);\n }\n};\n\n\n\nexport function handleImageScale(img) {\n const maxDimension = 2048; // Maximum size of the longest side\n\n // Get the original dimensions of the image\n const originalWidth = img.width;\n const originalHeight = img.height;\n\n // Determine the scaling factor\n const aspectRatio = originalWidth / originalHeight;\n let newWidth, newHeight;\n\n if (originalWidth > originalHeight) { // Landscape or square orientation\n newWidth = Math.min(originalWidth, maxDimension);\n newHeight = newWidth / aspectRatio;\n } else { // Portrait orientation\n newHeight = Math.min(originalHeight, maxDimension);\n newWidth = newHeight * aspectRatio;\n }\n\n // Calculate the scaling factor applied\n const scale = newWidth / originalWidth;\n\n // Return new dimensions and the scaling factor\n return {\n width: Math.round(newWidth),\n height: Math.round(newHeight),\n samScale: scale // This is how much the image was scaled down\n };\n}\n\n\nexport function loadImage(src) {\n return new Promise((resolve, reject) => {\n const img = new Image();\n img.onload = () => resolve(img);\n img.onerror = reject;\n img.src = src;\n });\n}\n\nexport function resizeImage(img, width, height, file) {\n const fileData = {\n file: file,\n name: file.name,\n size: file.size,\n type: file.type,\n };\n return new Promise((resolve, reject) => {\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n canvas.width = width;\n canvas.height = height;\n ctx.drawImage(img, 0, 0, width, height);\n\n canvas.toBlob(blob => {\n const resizedFile = new File([blob], fileData.name, {\n type: fileData.type,\n lastModified: Date.now()\n });\n\n // Replace original file with resized file in fileData\n const updatedFileData = {\n ...fileData,\n file: resizedFile,\n size: resizedFile.size\n };\n \n resolve(updatedFileData);\n }, fileData.type);\n });\n}\n\n\nexport function generateUniqueFilename(path) {\n // Get the current datetime and format it as a string '20240503_123456'\n const now = new Date();\n const dateStr = now.getFullYear() +\n ('0' + (now.getMonth() + 1)).slice(-2) +\n ('0' + now.getDate()).slice(-2) + '_' +\n ('0' + now.getHours()).slice(-2) +\n ('0' + now.getMinutes()).slice(-2) +\n ('0' + now.getSeconds()).slice(-2);\n\n // Generate a random UUID and convert it to a string\n const randomUuid = uuidv4().replace(/-/g, ''); // Removes dashes to match Python's uuid.hex\n \n // Create the unique prefix combining the date and UUID\n const uniquePrefix = `${dateStr}_${randomUuid}_`;\n\n // Extract the base name of the file from the path\n const baseName = path.split('/').pop(); // Assumes a '/' path delimiter\n\n // Prepend the unique prefix to the base name\n const newFilename = `${uniquePrefix}${baseName}`;\n\n return newFilename;\n}\n\nexport const fetchMediaURL = async (file) => {\n const authToken = Cookies.get(\"accessToken\");\n const url = `${baseUrl()}/resources/getresourceurl/${file.id}`;\n const headers = {\n Authorization: `Bearer ${authToken}`,\n };\n\n try {\n const response = await fetch(url, { headers });\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n const data = await response.json();\n console.log('Resource URL:', data.url);\n const fileUrl = data.url;\n return fileUrl\n \n } catch (error) {\n console.error('Error fetching media:', error);\n }\n};\n\n\n\nexport const uploadParameterFiles = (params, agentId) => {\n const uploadPromises = params.map(parameter => {\n if (parameter.type === 'file' || parameter.type === 'image_editer' || (parameter.type==='combo_image_selection' && parameter.value.file)) {\n const fileData = parameter.value\n uploadResource(agentId, fileData, 'INPUT')\n .then(response => {\n console.log('Upload successful:', response);\n // Handle successful upload response here, if needed\n return Promise.resolve();\n })\n .catch(error => {\n console.error('Error uploading resource:', error);\n alert('不支持这个文件类型' + agentId)\n return Promise.reject(error);\n });\n \n } else if (parameter.type ==='mask') {\n const fileDatas = parameter.value\n // Assuming `fileDatas` is an array of file data\n fileDatas.forEach(fileData => {\n uploadResource(agentId, fileData, 'INPUT')\n .then(response => {\n console.log('Upload successful:', response);\n // Handle successful upload response here, if needed\n })\n .catch(error => {\n console.error('Error uploading resource:', error);\n alert('不支持这个文件类型 ' + agentId);\n return Promise.reject(error);\n // Here, you might want to handle the error or reject a promise if this is part of a larger promise chain\n });\n });\n return Promise.resolve();\n\n } else if (parameter.type ==='workflow') {\n const fileDatas = parameter.value\n uploadParameterFiles(fileDatas, agentId)\n return Promise.resolve();\n } else {\n return Promise.resolve();\n }\n });\n\n Promise.all(uploadPromises)\n .then(() => {\n console.info('success uploading files:');\n })\n .catch(error => {\n console.error('Error uploading files:', error);\n });\n}\n\nexport const uploadLogos = (logos, agentId, isTemplate=false) => {\n const uploadPromises = logos.map(logo => {\n if (logo.type == 'file') {\n const fileData = logo.value\n \n return uploadResource(agentId, fileData, isTemplate?'PUBLIC':'LOGO_AGENT')\n .catch(error => {\n console.error('Error uploading resource:', error);\n alert('不支持这个文件类型' + agentId)\n return Promise.reject(error);\n });\n } else {\n return Promise.resolve();\n }\n });\n\n Promise.all(uploadPromises)\n .then(() => {\n\n })\n .catch(error => {\n console.error('Error uploading files:', error);\n });\n}\n\nexport const uploadResources = (addResources, input, agentId, name, executionId) => {\n if (addResources && input.length > 0) {\n const uploadPromises = input.map(fileData => {\n return uploadResource(agentId, fileData, 'INPUT')\n .catch(error => {\n console.error('Error uploading resource:', error);\n return Promise.reject(error);\n });\n });\n\n Promise.all(uploadPromises)\n .then(() => {\n runDecision(agentId, name, executionId)\n })\n .catch(error => {\n console.error('Error uploading files:', error);\n setCreateClickable(true);\n });\n } else {\n runDecision(agentId, name, executionId)\n }\n}\n\nexport const fetchAndSetImage = async (file) => {\n const resourceId = `resource_${file.id}`;\n let fileUrl = await getFileUrl(resourceId); // Try to get the file from local storage first\n if (!fileUrl) { // If the file is not in local storage\n fileUrl = await fetchMediaURL(file)\n //const blob = await fetchMedia_indirect(file); // Fetch the media from the server\n //if (blob) {\n // const fileObject = new File([blob], file.name, { type: blob.type }); // Create a File object from the blob\n // fileUrl = URL.createObjectURL(fileObject); // Create a URL for the File object\n // await saveFile(fileObject, resourceId); // Save the File object to local storage for future use\n //}\n }\n return fileUrl\n \n};\n\n\nexport const customStyleGrid = `\n#react-waterfall-grid-comps li>div{\n border-radius: 12px;\n overflow: hidden;\n margin:0px;\n}\n#react-waterfall-grid-comps li>div>img {\n font-size: 20px;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.6);\n margin:0px;\n background: rgb(255, 255, 255);\n transition: all 0.5s;\n width: 100%;\n}\n#react-waterfall-grid-comps li>div>img:hover {\n transform: scale(1.2);\n transition: all 0.6s;\n}\n\n#react-waterfall-grid-comps li>div>video {\n font-size: 20px;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.6);\n margin:0px;\n background: rgb(255, 255, 255);\n transition: all 0.5s;\n width: 100%;\n}\n#react-waterfall-grid-comps li>div>video:hover {\n transform: scale(1.2);\n transition: all 0.6s;\n}`\n\n\n\n\n\nexport const fileDisplayAble = async (file) => {\n if (\n file.type.startsWith('image/') ||\n file.type.startsWith('video/') ||\n file.type.startsWith('audio/') ||\n (file.type === 'application/misc' && ['mp3', 'wav'].includes(getFileExtension(file.name))) ||\n (file.type === 'application/octet-stream' && ['png', 'jpg','jpeg','webp'].includes(getFileExtension(file.name))) ||\n (file.type === 'application/misc' && file.name.toLowerCase().endsWith('.mp4'))\n ) {\n return true\n }else{\n return false\n }\n}\n\n\n\nexport const transformNodesFromFile = async (file) =>{\n return new Promise((resolve, reject) => {\n let reader = new FileReader();\n \n reader.onload = function(event) {\n try {\n let fileContent = JSON.parse(event.target.result);\n let transformedNodes = [];\n let annotator = 0\n let websocket = 0\n for (let key in fileContent) {\n if (fileContent.hasOwnProperty(key) && fileContent[key].class_type=='ComfyUIAppstoreParam') {\n let oldNode = fileContent[key];\n //let partentNode = oldNode.标注节点接入[0];\n //let oldNode = fileContent[partentNode];\n const matches = [0,oldNode.inputs && oldNode.inputs.序号,\n oldNode.inputs && oldNode.inputs.参数名称,\n oldNode.inputs && oldNode.inputs.类型,\n oldNode.inputs && oldNode.inputs.数值约束或依赖项,\n oldNode.inputs && oldNode.inputs.替换项]\n\n if (matches) {\n let newNode = tranformNodes(matches, oldNode.inputs && oldNode.inputs.标注节点接入[0])\n transformedNodes.push(newNode);\n annotator +=1\n } \n }else if (fileContent.hasOwnProperty(key) && fileContent[key].class_type=='SaveImageWebsocket'){\n websocket +=1\n }\n }\n\n if (annotator < 1) {\n reject(new Error('文件不符合要求,至少包括一个ComfyUIAppstoreParam节点'));\n } else {\n transformedNodes.sort((a, b) => a.index - b.index);\n resolve(transformedNodes);\n }\n } catch (error) {\n reject(error);\n }\n };\n \n reader.onerror = function(error) {\n reject(error);\n };\n\n reader.readAsText(file);\n });\n}\n\n\nexport const transformNodesFromFile_fromTitle = async (file) =>{\n return new Promise((resolve, reject) => {\n let reader = new FileReader();\n \n reader.onload = function(event) {\n try {\n let fileContent = JSON.parse(event.target.result);\n let transformedNodes = [];\n\n for (let key in fileContent) {\n if (fileContent.hasOwnProperty(key)) {\n let oldNode = fileContent[key];\n let title = oldNode._meta && oldNode._meta.title;\n\n if (title && title.startsWith(\"taoai_input\")) {\n let regex = /taoai_input_{(.*?)}_{(.*?)}_{(.*?)}_{(.*?)}_{(.*?)}/;\n let matches = title.match(regex);\n\n if (matches) {\n let newNode = tranformNodes(matches, title)\n transformedNodes.push(newNode);\n }\n }\n }\n }\n transformedNodes.sort((a, b) => a.index - b.index);\n resolve(transformedNodes);\n } catch (error) {\n reject(error);\n }\n };\n \n reader.onerror = function(error) {\n reject(error);\n };\n\n reader.readAsText(file);\n });\n}\n\n\nexport const tranformNodes_fromTitle = (matches, title) =>{\n\n if (matches) {\n let index = matches[1] || \"\";\n let name = matches[2] || \"\";\n let type = matches[3] || \"\";\n let accept = matches[4] || \"\";\n let target = matches[5] || \"\";\n\n let newNode = {\n \"index\":index,\n \"name\": name,\n \"type\": type,\n \"accept\": accept,\n \"value\": \"\",\n \"target\": target,\n \"title\": title // must inlcude this because we wil find it.\n };\n if (type==='combo_image_selection'){\n if (accept === '模特'){\n newNode.options = ('[{\"value\":\"/app/workspace/public/new_ref_models/男模特07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B907.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特05.jpg\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B905.jpg\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特14.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B914.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特13.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B913.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特12.jpg\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B912.jpg\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特11.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B911.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特10.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B910.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特09.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B909.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特08.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B908.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B907.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特10.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B910.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特09.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B909.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特08.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B908.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B907.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B901.png\"}]')\n //newNode.options = ('[{\"value\":\"/app/workspace/public/models/03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/03.png\"},{\"value\":\"/app/workspace/public/models/04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/04.png\"},{\"value\":\"/app/workspace/public/models/05.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/05.png\"},{\"value\":\"/app/workspace/public/models/06.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/06.png\"},{\"value\":\"/app/workspace/public/models/07.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/07.png\"},{\"value\":\"/app/workspace/public/models/08.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/08.png\"},{\"value\":\"/app/workspace/public/models/09.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/09.png\"},{\"value\":\"/app/workspace/public/models/10.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/10.png\"},{\"value\":\"/app/workspace/public/models/16.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/16.png\"},{\"value\":\"/app/workspace/public/models/17.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/17.png\"},{\"value\":\"/app/workspace/public/models/35.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/35.png\"},{\"value\":\"/app/workspace/public/models/39.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/39.png\"},{\"value\":\"/app/workspace/public/models/42.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/42.png\"},{\"value\":\"/app/workspace/public/models/48.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/48.png\"},{\"value\":\"/app/workspace/public/models/49.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/49.png\"},{\"value\":\"/app/workspace/public/models/53.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/53.png\"},{\"value\":\"/app/workspace/public/models/58.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/58.png\"},{\"value\":\"/app/workspace/public/models/71.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/71.png\"},{\"value\":\"/app/workspace/public/models/76.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/76.png\"},{\"value\":\"/app/workspace/public/models/80.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/80.png\"},{\"value\":\"/app/workspace/public/models/84.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/84.png\"},{\"value\":\"/app/workspace/public/models/89.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/89.png\"},{\"value\":\"/app/workspace/public/models/96.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/96.png\"},{\"value\":\"/app/workspace/public/models/99.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/99.png\"}]')\n }else if (accept === '背景'){\n newNode.options = ('[{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D05.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D04.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D03.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D01.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/草地01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%8D%89%E5%9C%B001.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/背景墙01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%83%8C%E6%99%AF%E5%A2%9901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-白.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰白.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A204.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内背景墙02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内背景墙01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A402.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A401.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD01.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景09.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF09.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景08.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF08.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF07.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF06.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF05.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF04.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF03.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF01.png\"}]')\n //newNode.options = ('[{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D04.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D03.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D01.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/草地01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%8D%89%E5%9C%B001.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/背景墙01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%83%8C%E6%99%AF%E5%A2%9901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-白.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰白.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边06.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边05.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A204.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A402.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A401.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD01.png\"}]')\n }else if (accept === '近景'){\n newNode.options = ('[{\"value\":\"/app/workspace/public/backgrounds/9.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/9.png\"},{\"value\":\"/app/workspace/public/backgrounds/8.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/8.png\"},{\"value\":\"/app/workspace/public/backgrounds/7.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/7.png\"},{\"value\":\"/app/workspace/public/backgrounds/6.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/6.png\"},{\"value\":\"/app/workspace/public/backgrounds/5.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/5.png\"},{\"value\":\"/app/workspace/public/backgrounds/4.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/4.png\"},{\"value\":\"/app/workspace/public/backgrounds/39.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/39.png\"},{\"value\":\"/app/workspace/public/backgrounds/38.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/38.png\"},{\"value\":\"/app/workspace/public/backgrounds/37.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/37.png\"},{\"value\":\"/app/workspace/public/backgrounds/36.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/36.png\"},{\"value\":\"/app/workspace/public/backgrounds/35.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/35.png\"},{\"value\":\"/app/workspace/public/backgrounds/34.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/34.png\"},{\"value\":\"/app/workspace/public/backgrounds/33.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/33.png\"},{\"value\":\"/app/workspace/public/backgrounds/32.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/32.png\"},{\"value\":\"/app/workspace/public/backgrounds/31.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/31.png\"},{\"value\":\"/app/workspace/public/backgrounds/30.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/30.png\"},{\"value\":\"/app/workspace/public/backgrounds/3.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/3.png\"},{\"value\":\"/app/workspace/public/backgrounds/29.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/29.png\"},{\"value\":\"/app/workspace/public/backgrounds/28.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/28.png\"},{\"value\":\"/app/workspace/public/backgrounds/27.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/27.png\"},{\"value\":\"/app/workspace/public/backgrounds/26.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/26.png\"},{\"value\":\"/app/workspace/public/backgrounds/25.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/25.png\"},{\"value\":\"/app/workspace/public/backgrounds/24.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/24.png\"},{\"value\":\"/app/workspace/public/backgrounds/23.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/23.png\"},{\"value\":\"/app/workspace/public/backgrounds/22.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/22.png\"},{\"value\":\"/app/workspace/public/backgrounds/21.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/21.png\"},{\"value\":\"/app/workspace/public/backgrounds/20.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/20.png\"},{\"value\":\"/app/workspace/public/backgrounds/2.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/2.png\"},{\"value\":\"/app/workspace/public/backgrounds/19.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/19.png\"},{\"value\":\"/app/workspace/public/backgrounds/18.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/18.png\"},{\"value\":\"/app/workspace/public/backgrounds/17.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/17.png\"},{\"value\":\"/app/workspace/public/backgrounds/16.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/16.png\"},{\"value\":\"/app/workspace/public/backgrounds/15.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/15.png\"},{\"value\":\"/app/workspace/public/backgrounds/14.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/14.png\"},{\"value\":\"/app/workspace/public/backgrounds/12.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/12.png\"},{\"value\":\"/app/workspace/public/backgrounds/11.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/11.png\"},{\"value\":\"/app/workspace/public/backgrounds/10.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/10.png\"},{\"value\":\"/app/workspace/public/backgrounds/1.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/1.png\"}]')\n }\n\n\n }else if (type === 'selection'){\n newNode.options = accept\n }else if (type === 'mask'){\n newNode.maskSourceUrl = accept\n } else if (type === 'text'){\n newNode.default = accept\n }\n\n return (newNode);\n }else{\n return null\n }\n}\n\nexport const isMobile=()=>{\n if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {\n console.log('移动端')\n return true\n } else {\n console.log('PC端')\n return false\n }\n}\n\n\nexport const tranformNodes = (matches, key) =>{\n\n if (matches) {\n let index = matches[1] || \"\";\n let name = matches[2] || \"\";\n let type = matches[3] || \"\";\n let accept = matches[4] || \"\";\n let target = matches[5] || \"\";\n\n let newNode = {\n \"index\":index,\n \"name\": name,\n \"type\": type,\n \"accept\": accept,\n \"value\": \"\",\n \"target\": target, \n \"key\": key\n };\n if (type==='combo_image_selection'){\n if (accept === '模特'){\n newNode.options = ('[{\"value\":\"/app/workspace/public/new_ref_models/男模特07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B907.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特05.jpg\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B905.jpg\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/男模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E7%94%B7%E6%A8%A1%E7%89%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特14.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B914.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特13.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B913.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特12.jpg\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B912.jpg\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特11.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B911.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特10.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B910.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特09.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B909.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特08.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B908.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B907.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/女模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%A5%B3%E6%A8%A1%E7%89%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特10.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B910.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特09.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B909.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特08.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B908.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B907.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/儿童模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E5%84%BF%E7%AB%A5%E6%A8%A1%E7%89%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_models/中老年模特01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_models/%E4%B8%AD%E8%80%81%E5%B9%B4%E6%A8%A1%E7%89%B901.png\"}]')\n //newNode.options = ('[{\"value\":\"/app/workspace/public/models/03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/03.png\"},{\"value\":\"/app/workspace/public/models/04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/04.png\"},{\"value\":\"/app/workspace/public/models/05.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/05.png\"},{\"value\":\"/app/workspace/public/models/06.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/06.png\"},{\"value\":\"/app/workspace/public/models/07.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/07.png\"},{\"value\":\"/app/workspace/public/models/08.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/08.png\"},{\"value\":\"/app/workspace/public/models/09.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/09.png\"},{\"value\":\"/app/workspace/public/models/10.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/10.png\"},{\"value\":\"/app/workspace/public/models/16.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/16.png\"},{\"value\":\"/app/workspace/public/models/17.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/17.png\"},{\"value\":\"/app/workspace/public/models/35.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/35.png\"},{\"value\":\"/app/workspace/public/models/39.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/39.png\"},{\"value\":\"/app/workspace/public/models/42.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/42.png\"},{\"value\":\"/app/workspace/public/models/48.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/48.png\"},{\"value\":\"/app/workspace/public/models/49.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/49.png\"},{\"value\":\"/app/workspace/public/models/53.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/53.png\"},{\"value\":\"/app/workspace/public/models/58.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/58.png\"},{\"value\":\"/app/workspace/public/models/71.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/71.png\"},{\"value\":\"/app/workspace/public/models/76.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/76.png\"},{\"value\":\"/app/workspace/public/models/80.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/80.png\"},{\"value\":\"/app/workspace/public/models/84.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/84.png\"},{\"value\":\"/app/workspace/public/models/89.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/89.png\"},{\"value\":\"/app/workspace/public/models/96.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/96.png\"},{\"value\":\"/app/workspace/public/models/99.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/models/99.png\"}]')\n }else if (accept === '背景'){\n newNode.options = ('[{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D05.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D04.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D03.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D01.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/草地01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%8D%89%E5%9C%B001.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/背景墙01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E8%83%8C%E6%99%AF%E5%A2%9901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-白.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰白.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A204.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内背景墙02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内背景墙01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%85%E8%83%8C%E6%99%AF%E5%A2%9901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A402.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A401.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD01.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景09.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF09.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景08.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF08.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景07.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF07.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景06.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF06.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景05.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF05.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景04.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF04.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景03.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF03.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景02.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/光影背景01.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/new_ref_backgrounds/%E5%85%89%E5%BD%B1%E8%83%8C%E6%99%AF01.png\"}]')\n //newNode.options = ('[{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/酒店大堂01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E9%85%92%E5%BA%97%E5%A4%A7%E5%A0%8201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D04.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D03.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/街拍01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%A1%97%E6%8B%8D01.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/草地01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%8D%89%E5%9C%B001.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/背景墙01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E8%83%8C%E6%99%AF%E5%A2%9901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-白.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰白.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0%E7%99%BD.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/纯色背景-灰.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%BA%AF%E8%89%B2%E8%83%8C%E6%99%AF-%E7%81%B0.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/秋天01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E7%A7%8B%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/湖边01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B9%96%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边06.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B906.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边05.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B905.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B904.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/海边01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E6%B5%B7%E8%BE%B901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院04.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A204.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A203.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A202.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/庭院01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%BA%AD%E9%99%A201.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/室内01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%AE%A4%E5%86%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8503.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8502.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/咖啡厅01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%92%96%E5%95%A1%E5%8E%8501.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A402.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/办公室01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%8A%9E%E5%85%AC%E5%AE%A401.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天03.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A903.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A902.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/冬天01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%86%AC%E5%A4%A901.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园02.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD02.png\"},{\"value\":\"/app/workspace/public/new_ref_backgrounds/公园01.png\",\"option\":\"/api/resources/proxy/resources/app/workspace/public/new_ref_backgrounds/%E5%85%AC%E5%9B%AD01.png\"}]')\n }else if (accept === '近景'){\n newNode.options = ('[{\"value\":\"/app/workspace/public/backgrounds/9.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/9.png\"},{\"value\":\"/app/workspace/public/backgrounds/8.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/8.png\"},{\"value\":\"/app/workspace/public/backgrounds/7.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/7.png\"},{\"value\":\"/app/workspace/public/backgrounds/6.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/6.png\"},{\"value\":\"/app/workspace/public/backgrounds/5.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/5.png\"},{\"value\":\"/app/workspace/public/backgrounds/4.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/4.png\"},{\"value\":\"/app/workspace/public/backgrounds/39.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/39.png\"},{\"value\":\"/app/workspace/public/backgrounds/38.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/38.png\"},{\"value\":\"/app/workspace/public/backgrounds/37.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/37.png\"},{\"value\":\"/app/workspace/public/backgrounds/36.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/36.png\"},{\"value\":\"/app/workspace/public/backgrounds/35.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/35.png\"},{\"value\":\"/app/workspace/public/backgrounds/34.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/34.png\"},{\"value\":\"/app/workspace/public/backgrounds/33.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/33.png\"},{\"value\":\"/app/workspace/public/backgrounds/32.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/32.png\"},{\"value\":\"/app/workspace/public/backgrounds/31.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/31.png\"},{\"value\":\"/app/workspace/public/backgrounds/30.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/30.png\"},{\"value\":\"/app/workspace/public/backgrounds/3.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/3.png\"},{\"value\":\"/app/workspace/public/backgrounds/29.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/29.png\"},{\"value\":\"/app/workspace/public/backgrounds/28.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/28.png\"},{\"value\":\"/app/workspace/public/backgrounds/27.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/27.png\"},{\"value\":\"/app/workspace/public/backgrounds/26.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/26.png\"},{\"value\":\"/app/workspace/public/backgrounds/25.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/25.png\"},{\"value\":\"/app/workspace/public/backgrounds/24.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/24.png\"},{\"value\":\"/app/workspace/public/backgrounds/23.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/23.png\"},{\"value\":\"/app/workspace/public/backgrounds/22.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/22.png\"},{\"value\":\"/app/workspace/public/backgrounds/21.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/21.png\"},{\"value\":\"/app/workspace/public/backgrounds/20.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/20.png\"},{\"value\":\"/app/workspace/public/backgrounds/2.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/2.png\"},{\"value\":\"/app/workspace/public/backgrounds/19.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/19.png\"},{\"value\":\"/app/workspace/public/backgrounds/18.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/18.png\"},{\"value\":\"/app/workspace/public/backgrounds/17.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/17.png\"},{\"value\":\"/app/workspace/public/backgrounds/16.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/16.png\"},{\"value\":\"/app/workspace/public/backgrounds/15.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/15.png\"},{\"value\":\"/app/workspace/public/backgrounds/14.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/14.png\"},{\"value\":\"/app/workspace/public/backgrounds/12.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/12.png\"},{\"value\":\"/app/workspace/public/backgrounds/11.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/11.png\"},{\"value\":\"/app/workspace/public/backgrounds/10.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/10.png\"},{\"value\":\"/app/workspace/public/backgrounds/1.png\",\"option\":\"https://taoaibj.oss-rg-china-mainland.aliyuncs.com/resources/app/workspace/public/backgrounds/1.png\"}]')\n }\n }else if (type === 'selection'){\n newNode.options = accept\n }else if (type === 'mask'){\n newNode.maskSourceUrl = accept\n } else if (type === 'text'){\n newNode.default = accept\n newNode.value = accept\n }\n\n return (newNode);\n }else{\n return null\n }\n}\n","import React, { useEffect, useState } from 'react';\nimport { useRef } from 'react';\nimport Cookies from \"js-cookie\";\nimport { MediaDisplay } from '../../../utils/utils.jsx';\n\n// Inside your functional component\nfunction FileUpload({ index, param, handleInputChange, previewUrl,visible=true, verbose=true }) {\n const userType = Cookies.get('userType')\n const [isDragging, setIsDragging] = useState(false);\n const [disabled, setDisabled] = useState(true);\n\n const fileInputRef = useRef(null);\n const parentDiv = useRef(null);\n\n const handleDragEnter = (e) => {\n e.preventDefault();\n setIsDragging(true);\n };\n\n const handleDragLeave = (e) => {\n e.preventDefault();\n setIsDragging(false);\n };\n\n const handleDragOver = (e) => {\n e.preventDefault();\n };\n\n const handleDrop = (e) => {\n e.stopPropagation(); // 阻止事件冒泡\n if (disabled){\n alert(\"请稍等加载中\")\n return \n }\n\n e.preventDefault();\n setIsDragging(false);\n const file = e.dataTransfer.files[0];\n if (file) {\n /*\n if (file.name.length > 30) {\n alert('文件名称过长,请上传文件名不超过30个字符的文件。');\n return; // Stop further execution if the file name is too long\n }*/\n const validExtensions = param.accept.split(',');\n const fileExtension = file.name.split('.').pop().toLowerCase();\n if (validExtensions==\"\" || validExtensions.includes(`.${fileExtension}`)) {\n const syntheticEvent = {\n target: {\n name: param.name,\n files: [file],\n },\n };\n handleInputChange(index, syntheticEvent);\n } else {\n alert('文件类型暂不支持,请上传如下类型文件:'+param.accept);\n }\n }\n };\n\n const handleImageChange = (e) => {\n e.preventDefault();\n const file = e.target.files[0];\n if (file) {\n /*\n if (file.name.length > 30) {\n alert('文件名称过长,请上传文件名不超过30个字符的文件。');\n return; // Stop further execution if the file name is too long\n }*/\n handleInputChange(index, e); \n }\n };\n\n const handleCancel = () => {\n handleInputChange(index, null); \n };\n\n useEffect(() => {\n if (param.type == 'file' && param.value && !previewUrl){\n setDisabled(true)\n }else{\n setDisabled(false)\n }\n }, [previewUrl]);\n\n return (\n
{\n if (false){\n alert(\"请稍等加载中\")\n }else{\n fileInputRef.current.click()\n }\n }} // Trigger file input click on area click\n style={{ position: 'relative', width: '100%', height:'100%', maxWidth: '100%', maxHeight: '100%' ,background:'none'}} // Ensure the container resizes with the image\n >\n {\n if (false){\n alert(\"请稍等加载中\")\n }else{\n handleImageChange(e)\n }\n }}\n />\n {previewUrl ? (\n //
\n <>\n {(visible) &&\n
\n \n {\n e.stopPropagation(); // Prevent click event from bubbling up to the file drop area\n fileInputRef.current.value = '';\n handleInputChange(index, null); // Call the close handler\n }}\n style={{\n position: 'absolute',\n top: '0px',\n right: '10px',\n padding: '2px',\n fontSize: '10px',\n borderRadius: '5%',\n border: 'none',\n cursor: 'pointer',\n }}\n >\n X\n \n
\n }\n \n ) : (\n <>\n {disabled ?(\n

\n \"loading-icon\"/加载中,稍等。或者点击上传新的图像

\n ):(\n

{(window.innerWidth > 1000 ) ? '点击上传, 或者拖入文件:'+(param.accept?param.accept:'.json') : verbose?'点击上传, 或者拖入文件':'+'}

\n )}\n \n )}\n \n
\n\n\n );\n}\n\nexport default FileUpload;\n","import React, { useEffect, useState } from 'react';\nimport styles from \"../../Content/Agents/Agents.module.css\";\n\n\nconst ImageList = ({ optionsObject, param, handleImageSelect, paramIndex }) => {\n const [displayedImages, setDisplayedImages] = useState(20); // Assuming 5 images per row, start with 2 rows (10 images)\n const imagesPerRow = 10; // Define how many images you want per row\n const rowMultiplier = 2; // Each click increases the number of displayed images by 2 rows\n\n const handleMoreClick = () => {\n setDisplayedImages(prev => prev + imagesPerRow * rowMultiplier); // Increase by two rows of images\n };\n\n const handleLessClick = () => {\n setDisplayedImages(20); // Reset to initial two rows (10 images)\n };\n const shouldShowMoreButton = optionsObject.length > displayedImages;\n const shouldShowLessButton = displayedImages > imagesPerRow * rowMultiplier;\n\n return (\n
\n
\n {optionsObject.slice(0, displayedImages).map((option, index) => (\n
\n handleImageSelect(paramIndex, option.value)}\n className={param.value === option.value ? styles.image_selected : ''}\n />\n
\n ))}\n
\n
\n

\n
\n
\n {shouldShowMoreButton && (\n
\n 更多\n
\n )}\n {shouldShowLessButton && (\n
\n 收回\n
\n )}\n
\n
\n );\n};\n\nexport default ImageList;\n","import React, { useEffect, useState, useRef } from 'react';\nimport styles from \"../../Content/Agents/Agents.module.css\";\nimport FileUpload from './fileuploader';\nimport { getLocalResourceFromURL } from \"../../../utils/utils.jsx\";\n\nconst ComboImageList = ({ optionsObject, param, paramIndex, handleImageSelect, handleInputChange, uploadPreviewUrl}) => {\n \n const imagesPerRow = useRef(0); // Calculate images per row based on parent width\n const rowMultiplier = 4; // Each click increases the number of displayed images by 2 rows\n const [displayedImages, setDisplayedImages] = useState(imagesPerRow.current*rowMultiplier); // Assuming 5 images per row, start with 2 rows (10 images)\n\n const [fileSelected, setFileSelected] = useState(param.type=='file')\n const firstOptionRef = useRef(null);\n const isMounted = useRef(true); // 用于跟踪组件的挂载状态\n\n const [localOptionsObject, setLocalOptionsObject] = useState(JSON.parse(optionsObject))\n const divRef = useRef(null)\n\n useEffect(() => {\n if (divRef && divRef.current) {\n imagesPerRow.current = Math.floor(window.innerWidth > 1000 ? (divRef.current.clientWidth-5) / (80+5) : (divRef.current.clientWidth-5) / (50+5))\n setDisplayedImages(imagesPerRow.current*rowMultiplier)\n // You can now use divWidth for any purpose within this component\n }\n }, [divRef.current]);\n\n const handleMoreClick = () => {\n setDisplayedImages(prev => prev + imagesPerRow.current * rowMultiplier); // Increase by two rows of images\n };\n\n const handleLessClick = () => {\n setDisplayedImages(imagesPerRow.current*rowMultiplier); // Reset to initial two rows (10 images)\n };\n \n const shouldShowMoreButton = optionsObject.length > displayedImages;\n const shouldShowLessButton = displayedImages > imagesPerRow.current * rowMultiplier;\n\n const handleFileSelected = (index, newValue) => {\n if (newValue) {\n setFileSelected(true)\n } else {\n setFileSelected(false)\n if (firstOptionRef.current) {\n firstOptionRef.current.click();\n }\n }\n handleInputChange(index, newValue)\n }\n\n\n // 处理 optionsObject 函数\n const transformOptionsObject = async (options) => {\n let newOptionsObject = [];\n\n for (const item of options) {\n if (!isMounted.current) break; // 如果组件已卸载,则终止循环\n\n const localresource = await getLocalResourceFromURL(item.value, item.option);\n if (localresource.url) {\n newOptionsObject.push({\n value: item.value,\n option: localresource.url,\n });\n } else {\n newOptionsObject.push(item); // 如果没有找到资源,添加 原来的。\n }\n console.log(item)\n }\n\n if (!isMounted.current) return null; // 循环结束后再次检查组件挂载状态\n return newOptionsObject.filter(option => option !== null); // 过滤掉所有 null 值\n };\n\n\n\n\n useEffect(()=>{\n if (param){\n if (param.type == 'file'){\n setfilevalue(param.value)\n }\n }\n }, [param])\n\n\n return (\n
\n
\n
\n \n
\n {localOptionsObject.slice(0, displayedImages - 1).map((option, index) => (\n
\n
{\n setFileSelected(false);\n handleImageSelect(paramIndex, option.value);\n }}>\n \n
\n

{option.value.split('/').pop().split('.')[0]}\n

\n
\n
\n
\n ))}\n
\n
\n

\n
\n
\n {shouldShowMoreButton && (\n
\n 更多\n
\n )}\n {shouldShowLessButton && (\n
\n 收回\n
\n )}\n
\n
\n );\n};\n\nexport default ComboImageList;\n","/*!\n * ONNX Runtime Web v1.20.0\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\nvar Hd=Object.create;var an=Object.defineProperty;var qd=Object.getOwnPropertyDescriptor;var jd=Object.getOwnPropertyNames;var Xd=Object.getPrototypeOf,Kd=Object.prototype.hasOwnProperty;var Co=(i=>typeof require<\"u\"?require:typeof Proxy<\"u\"?new Proxy(i,{get:(e,o)=>(typeof require<\"u\"?require:e)[o]}):i)(function(i){if(typeof require<\"u\")return require.apply(this,arguments);throw Error('Dynamic require of \"'+i+'\" is not supported')});var O=(i,e)=>()=>(i&&(e=i(i=0)),e);var mt=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),Or=(i,e)=>{for(var o in e)an(i,o,{get:e[o],enumerable:!0})},Qa=(i,e,o,t)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let r of jd(e))!Kd.call(i,r)&&r!==o&&an(i,r,{get:()=>e[r],enumerable:!(t=qd(e,r))||t.enumerable});return i};var rr=(i,e,o)=>(o=i!=null?Hd(Xd(i)):{},Qa(e||!i||!i.__esModule?an(o,\"default\",{value:i,enumerable:!0}):o,i)),sn=i=>Qa(an({},\"__esModule\",{value:!0}),i);var un,ke,nr,Jd,ln,fn=O(()=>{\"use strict\";un=new Map,ke=[],nr=(i,e,o)=>{if(e&&typeof e.init==\"function\"&&typeof e.createInferenceSessionHandler==\"function\"){let t=un.get(i);if(t===void 0)un.set(i,{backend:e,priority:o});else{if(t.priority>o)return;if(t.priority===o&&t.backend!==e)throw new Error(`cannot register backend \"${i}\" using priority ${o}`)}if(o>=0){let r=ke.indexOf(i);r!==-1&&ke.splice(r,1);for(let n=0;n{let e=un.get(i);if(!e)return\"backend not found.\";if(e.initialized)return e.backend;if(e.aborted)return e.error;{let o=!!e.initPromise;try{return o||(e.initPromise=e.backend.init(i)),await e.initPromise,e.initialized=!0,e.backend}catch(t){return o||(e.error=`${t}`,e.aborted=!0),e.error}finally{delete e.initPromise}}},ln=async i=>{let e=i.executionProviders||[],o=e.map(u=>typeof u==\"string\"?u:u.name),t=o.length===0?ke:o,r,n=[],s=new Set;for(let u of t){let l=await Jd(u);typeof l==\"string\"?n.push({name:u,err:l}):(r||(r=l),r===l&&s.add(u))}if(!r)throw new Error(`no available backend found. ERR: ${n.map(u=>`[${u.name}] ${u.err}`).join(\", \")}`);for(let{name:u,err:l}of n)o.includes(u)&&console.warn(`removing requested execution provider \"${u}\" from session options because it is not available: ${l}`);let a=e.filter(u=>s.has(typeof u==\"string\"?u:u.name));return[r,new Proxy(i,{get:(u,l)=>l===\"executionProviders\"?a:Reflect.get(u,l)})]}});var ts=O(()=>{\"use strict\";fn()});var es,rs=O(()=>{\"use strict\";es=\"1.20.0\"});var ns,Gt,No=O(()=>{\"use strict\";rs();ns=\"warning\",Gt={wasm:{},webgl:{},webgpu:{},versions:{common:es},set logLevel(i){if(i!==void 0){if(typeof i!=\"string\"||[\"verbose\",\"info\",\"warning\",\"error\",\"fatal\"].indexOf(i)===-1)throw new Error(`Unsupported logging level: ${i}`);ns=i}},get logLevel(){return ns}};Object.defineProperty(Gt,\"logLevel\",{enumerable:!0})});var z,os=O(()=>{\"use strict\";No();z=Gt});var is,as,ss=O(()=>{\"use strict\";is=(i,e)=>{let o=typeof document<\"u\"?document.createElement(\"canvas\"):new OffscreenCanvas(1,1);o.width=i.dims[3],o.height=i.dims[2];let t=o.getContext(\"2d\");if(t!=null){let r,n;e?.tensorLayout!==void 0&&e.tensorLayout===\"NHWC\"?(r=i.dims[2],n=i.dims[3]):(r=i.dims[3],n=i.dims[2]);let s=e?.format!==void 0?e.format:\"RGB\",a=e?.norm,u,l;a===void 0||a.mean===void 0?u=[255,255,255,255]:typeof a.mean==\"number\"?u=[a.mean,a.mean,a.mean,a.mean]:(u=[a.mean[0],a.mean[1],a.mean[2],0],a.mean[3]!==void 0&&(u[3]=a.mean[3])),a===void 0||a.bias===void 0?l=[0,0,0,0]:typeof a.bias==\"number\"?l=[a.bias,a.bias,a.bias,a.bias]:(l=[a.bias[0],a.bias[1],a.bias[2],0],a.bias[3]!==void 0&&(l[3]=a.bias[3]));let f=n*r,p=0,d=f,y=f*2,T=-1;s===\"RGBA\"?(p=0,d=f,y=f*2,T=f*3):s===\"RGB\"?(p=0,d=f,y=f*2):s===\"RBG\"&&(p=0,y=f,d=f*2);for(let v=0;v{let o=typeof document<\"u\"?document.createElement(\"canvas\").getContext(\"2d\"):new OffscreenCanvas(1,1).getContext(\"2d\"),t;if(o!=null){let r,n,s;e?.tensorLayout!==void 0&&e.tensorLayout===\"NHWC\"?(r=i.dims[2],n=i.dims[1],s=i.dims[3]):(r=i.dims[3],n=i.dims[2],s=i.dims[1]);let a=e!==void 0&&e.format!==void 0?e.format:\"RGB\",u=e?.norm,l,f;u===void 0||u.mean===void 0?l=[255,255,255,255]:typeof u.mean==\"number\"?l=[u.mean,u.mean,u.mean,u.mean]:(l=[u.mean[0],u.mean[1],u.mean[2],255],u.mean[3]!==void 0&&(l[3]=u.mean[3])),u===void 0||u.bias===void 0?f=[0,0,0,0]:typeof u.bias==\"number\"?f=[u.bias,u.bias,u.bias,u.bias]:(f=[u.bias[0],u.bias[1],u.bias[2],0],u.bias[3]!==void 0&&(f[3]=u.bias[3]));let p=n*r;if(e!==void 0&&(e.format!==void 0&&s===4&&e.format!==\"RGBA\"||s===3&&e.format!==\"RGB\"&&e.format!==\"BGR\"))throw new Error(\"Tensor format doesn't match input tensor dims\");let d=4,y=0,T=1,v=2,S=3,L=0,P=p,A=p*2,M=-1;a===\"RGBA\"?(L=0,P=p,A=p*2,M=p*3):a===\"RGB\"?(L=0,P=p,A=p*2):a===\"RBG\"&&(L=0,A=p,P=p*2),t=o.createImageData(r,n);for(let V=0;V{\"use strict\";cn();Ro=(i,e)=>{if(i===void 0)throw new Error(\"Image buffer must be defined\");if(e.height===void 0||e.width===void 0)throw new Error(\"Image height and width must be defined\");if(e.tensorLayout===\"NHWC\")throw new Error(\"NHWC Tensor layout is not supported yet\");let{height:o,width:t}=e,r=e.norm??{mean:255,bias:0},n,s;typeof r.mean==\"number\"?n=[r.mean,r.mean,r.mean,r.mean]:n=[r.mean[0],r.mean[1],r.mean[2],r.mean[3]??255],typeof r.bias==\"number\"?s=[r.bias,r.bias,r.bias,r.bias]:s=[r.bias[0],r.bias[1],r.bias[2],r.bias[3]??0];let a=e.format!==void 0?e.format:\"RGBA\",u=e.tensorFormat!==void 0&&e.tensorFormat!==void 0?e.tensorFormat:\"RGB\",l=o*t,f=u===\"RGBA\"?new Float32Array(l*4):new Float32Array(l*3),p=4,d=0,y=1,T=2,v=3,S=0,L=l,P=l*2,A=-1;a===\"RGB\"&&(p=3,d=0,y=1,T=2,v=-1),u===\"RGBA\"?A=l*3:u===\"RBG\"?(S=0,P=l,L=l*2):u===\"BGR\"&&(P=0,L=l,S=l*2);for(let V=0;V{let o=typeof HTMLImageElement<\"u\"&&i instanceof HTMLImageElement,t=typeof ImageData<\"u\"&&i instanceof ImageData,r=typeof ImageBitmap<\"u\"&&i instanceof ImageBitmap,n=typeof i==\"string\",s,a=e??{},u=()=>{if(typeof document<\"u\")return document.createElement(\"canvas\");if(typeof OffscreenCanvas<\"u\")return new OffscreenCanvas(1,1);throw new Error(\"Canvas is not supported\")},l=f=>typeof HTMLCanvasElement<\"u\"&&f instanceof HTMLCanvasElement||f instanceof OffscreenCanvas?f.getContext(\"2d\"):null;if(o){let f=u();f.width=i.width,f.height=i.height;let p=l(f);if(p!=null){let d=i.height,y=i.width;if(e!==void 0&&e.resizedHeight!==void 0&&e.resizedWidth!==void 0&&(d=e.resizedHeight,y=e.resizedWidth),e!==void 0){if(a=e,e.tensorFormat!==void 0)throw new Error(\"Image input config format must be RGBA for HTMLImageElement\");a.tensorFormat=\"RGBA\",a.height=d,a.width=y}else a.tensorFormat=\"RGBA\",a.height=d,a.width=y;p.drawImage(i,0,0),s=p.getImageData(0,0,y,d).data}else throw new Error(\"Can not access image data\")}else if(t){let f,p;if(e!==void 0&&e.resizedWidth!==void 0&&e.resizedHeight!==void 0?(f=e.resizedHeight,p=e.resizedWidth):(f=i.height,p=i.width),e!==void 0&&(a=e),a.format=\"RGBA\",a.height=f,a.width=p,e!==void 0){let d=u();d.width=p,d.height=f;let y=l(d);if(y!=null)y.putImageData(i,0,0),s=y.getImageData(0,0,p,f).data;else throw new Error(\"Can not access image data\")}else s=i.data}else if(r){if(e===void 0)throw new Error(\"Please provide image config with format for Imagebitmap\");let f=u();f.width=i.width,f.height=i.height;let p=l(f);if(p!=null){let d=i.height,y=i.width;return p.drawImage(i,0,0,y,d),s=p.getImageData(0,0,y,d).data,a.height=d,a.width=y,Ro(s,a)}else throw new Error(\"Can not access image data\")}else{if(n)return new Promise((f,p)=>{let d=u(),y=l(d);if(!i||!y)return p();let T=new Image;T.crossOrigin=\"Anonymous\",T.src=i,T.onload=()=>{d.width=T.width,d.height=T.height,y.drawImage(T,0,0,d.width,d.height);let v=y.getImageData(0,0,d.width,d.height);a.height=d.height,a.width=d.width,f(Ro(v.data,a))}});throw new Error(\"Input data provided is not supported - aborted tensor creation\")}if(s!==void 0)return Ro(s,a);throw new Error(\"Input data provided is not supported - aborted tensor creation\")},ls=(i,e)=>{let{width:o,height:t,download:r,dispose:n}=e,s=[1,t,o,4];return new St({location:\"texture\",type:\"float32\",texture:i,dims:s,download:r,dispose:n})},fs=(i,e)=>{let{dataType:o,dims:t,download:r,dispose:n}=e;return new St({location:\"gpu-buffer\",type:o??\"float32\",gpuBuffer:i,dims:t,download:r,dispose:n})},cs=(i,e)=>{let{dataType:o,dims:t,download:r,dispose:n}=e;return new St({location:\"ml-tensor\",type:o??\"float32\",mlTensor:i,dims:t,download:r,dispose:n})},ps=(i,e,o)=>new St({location:\"cpu-pinned\",type:i,data:e,dims:o??[e.length]})});var Be,Sr,hs,ms,bs=O(()=>{\"use strict\";Be=new Map([[\"float32\",Float32Array],[\"uint8\",Uint8Array],[\"int8\",Int8Array],[\"uint16\",Uint16Array],[\"int16\",Int16Array],[\"int32\",Int32Array],[\"bool\",Uint8Array],[\"float64\",Float64Array],[\"uint32\",Uint32Array],[\"int4\",Uint8Array],[\"uint4\",Uint8Array]]),Sr=new Map([[Float32Array,\"float32\"],[Uint8Array,\"uint8\"],[Int8Array,\"int8\"],[Uint16Array,\"uint16\"],[Int16Array,\"int16\"],[Int32Array,\"int32\"],[Float64Array,\"float64\"],[Uint32Array,\"uint32\"]]),hs=!1,ms=()=>{if(!hs){hs=!0;let i=typeof BigInt64Array<\"u\"&&BigInt64Array.from,e=typeof BigUint64Array<\"u\"&&BigUint64Array.from,o=typeof Float16Array<\"u\"&&Float16Array.from;i&&(Be.set(\"int64\",BigInt64Array),Sr.set(BigInt64Array,\"int64\")),e&&(Be.set(\"uint64\",BigUint64Array),Sr.set(BigUint64Array,\"uint64\")),o?(Be.set(\"float16\",Float16Array),Sr.set(Float16Array,\"float16\")):Be.set(\"float16\",Uint16Array)}}});var gs,ys,xs=O(()=>{\"use strict\";cn();gs=i=>{let e=1;for(let o=0;o{switch(i.location){case\"cpu\":return new St(i.type,i.data,e);case\"cpu-pinned\":return new St({location:\"cpu-pinned\",data:i.data,type:i.type,dims:e});case\"texture\":return new St({location:\"texture\",texture:i.texture,type:i.type,dims:e});case\"gpu-buffer\":return new St({location:\"gpu-buffer\",gpuBuffer:i.gpuBuffer,type:i.type,dims:e});case\"ml-tensor\":return new St({location:\"ml-tensor\",mlTensor:i.mlTensor,type:i.type,dims:e});default:throw new Error(`tensorReshape: tensor location ${i.location} is not supported`)}}});var St,cn=O(()=>{\"use strict\";ss();ds();bs();xs();St=class{constructor(e,o,t){ms();let r,n;if(typeof e==\"object\"&&\"location\"in e)switch(this.dataLocation=e.location,r=e.type,n=e.dims,e.location){case\"cpu-pinned\":{let a=Be.get(r);if(!a)throw new TypeError(`unsupported type \"${r}\" to create tensor from pinned buffer`);if(!(e.data instanceof a))throw new TypeError(`buffer should be of type ${a.name}`);this.cpuData=e.data;break}case\"texture\":{if(r!==\"float32\")throw new TypeError(`unsupported type \"${r}\" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break}case\"gpu-buffer\":{if(r!==\"float32\"&&r!==\"float16\"&&r!==\"int32\"&&r!==\"int64\"&&r!==\"uint32\"&&r!==\"uint8\"&&r!==\"bool\"&&r!==\"uint4\"&&r!==\"int4\")throw new TypeError(`unsupported type \"${r}\" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break}case\"ml-tensor\":{if(r!==\"float32\"&&r!==\"float16\"&&r!==\"int32\"&&r!==\"int64\"&&r!==\"uint32\"&&r!==\"uint64\"&&r!==\"int8\"&&r!==\"uint8\"&&r!==\"bool\")throw new TypeError(`unsupported type \"${r}\" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break}default:throw new Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,u;if(typeof e==\"string\")if(r=e,u=t,e===\"string\"){if(!Array.isArray(o))throw new TypeError(\"A string tensor's data must be a string array.\");a=o}else{let l=Be.get(e);if(l===void 0)throw new TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(o)){if(e===\"float16\"&&l===Uint16Array||e===\"uint4\"||e===\"int4\")throw new TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${l.name} as data.`);e===\"uint64\"||e===\"int64\"?a=l.from(o,BigInt):a=l.from(o)}else if(o instanceof l)a=o;else if(o instanceof Uint8ClampedArray)if(e===\"uint8\")a=Uint8Array.from(o);else throw new TypeError(\"A Uint8ClampedArray tensor's data must be type of uint8\");else throw new TypeError(`A ${r} tensor's data must be type of ${l}`)}else if(u=o,Array.isArray(e)){if(e.length===0)throw new TypeError(\"Tensor type cannot be inferred from an empty array.\");let l=typeof e[0];if(l===\"string\")r=\"string\",a=e;else if(l===\"boolean\")r=\"bool\",a=Uint8Array.from(e);else throw new TypeError(`Invalid element type of data array: ${l}.`)}else if(e instanceof Uint8ClampedArray)r=\"uint8\",a=Uint8Array.from(e);else{let l=Sr.get(e.constructor);if(l===void 0)throw new TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=l,a=e}if(u===void 0)u=[a.length];else if(!Array.isArray(u))throw new TypeError(\"A tensor's dims must be a number array\");n=u,this.cpuData=a,this.dataLocation=\"cpu\"}let s=gs(n);if(this.cpuData&&s!==this.cpuData.length&&!((r===\"uint4\"||r===\"int4\")&&Math.ceil(s/2)===this.cpuData.length))throw new Error(`Tensor's size(${s}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=n,this.size=s}static async fromImage(e,o){return us(e,o)}static fromTexture(e,o){return ls(e,o)}static fromGpuBuffer(e,o){return fs(e,o)}static fromMLTensor(e,o){return cs(e,o)}static fromPinnedBuffer(e,o,t){return ps(e,o,t)}toDataURL(e){return is(this,e)}toImageData(e){return as(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw new Error(\"The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.\");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw new Error(\"The data is not stored as a WebGL texture.\");return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw new Error(\"The data is not stored as a WebGPU buffer.\");return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw new Error(\"The data is not stored as a WebNN MLTensor.\");return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case\"cpu\":case\"cpu-pinned\":return this.data;case\"texture\":case\"gpu-buffer\":case\"ml-tensor\":{if(!this.downloader)throw new Error(\"The current tensor is not created with a specified data downloader.\");if(this.isDownloading)throw new Error(\"The current tensor is being downloaded.\");try{this.isDownloading=!0;let o=await this.downloader();return this.downloader=void 0,this.dataLocation=\"cpu\",this.cpuData=o,e&&this.disposer&&(this.disposer(),this.disposer=void 0),o}finally{this.isDownloading=!1}}default:throw new Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw new Error(\"The current tensor is being downloaded.\");this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=\"none\"}ensureValid(){if(this.dataLocation===\"none\")throw new Error(\"The tensor is disposed.\")}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw new Error(\"Cannot reshape a tensor that owns GPU resource.\");return ys(this,e)}}});var yt,pn=O(()=>{\"use strict\";cn();yt=St});var Ts,ws,Fe,Ce,Go=O(()=>{\"use strict\";No();Ts=(i,e)=>{(typeof Gt.trace>\"u\"?!Gt.wasm.trace:!Gt.trace)||console.timeStamp(`${i}::ORT::${e}`)},ws=(i,e)=>{let o=new Error().stack?.split(/\\r\\n|\\r|\\n/g)||[],t=!1;for(let r=0;r{(typeof Gt.trace>\"u\"?!Gt.wasm.trace:!Gt.trace)||ws(\"BEGIN\",i)},Ce=i=>{(typeof Gt.trace>\"u\"?!Gt.wasm.trace:!Gt.trace)||ws(\"END\",i)}});var dn,vs=O(()=>{\"use strict\";fn();pn();Go();dn=class i{constructor(e){this.handler=e}async run(e,o,t){Fe();let r={},n={};if(typeof e!=\"object\"||e===null||e instanceof yt||Array.isArray(e))throw new TypeError(\"'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.\");let s=!0;if(typeof o==\"object\"){if(o===null)throw new TypeError(\"Unexpected argument[1]: cannot be null.\");if(o instanceof yt)throw new TypeError(\"'fetches' cannot be a Tensor\");if(Array.isArray(o)){if(o.length===0)throw new TypeError(\"'fetches' cannot be an empty array.\");s=!1;for(let l of o){if(typeof l!=\"string\")throw new TypeError(\"'fetches' must be a string array or an object.\");if(this.outputNames.indexOf(l)===-1)throw new RangeError(`'fetches' contains invalid output name: ${l}.`);r[l]=null}if(typeof t==\"object\"&&t!==null)n=t;else if(typeof t<\"u\")throw new TypeError(\"'options' must be an object.\")}else{let l=!1,f=Object.getOwnPropertyNames(o);for(let p of this.outputNames)if(f.indexOf(p)!==-1){let d=o[p];(d===null||d instanceof yt)&&(l=!0,s=!1,r[p]=d)}if(l){if(typeof t==\"object\"&&t!==null)n=t;else if(typeof t<\"u\")throw new TypeError(\"'options' must be an object.\")}else n=o}}else if(typeof o<\"u\")throw new TypeError(\"Unexpected argument[1]: must be 'fetches' or 'options'.\");for(let l of this.inputNames)if(typeof e[l]>\"u\")throw new Error(`input '${l}' is missing in 'feeds'.`);if(s)for(let l of this.outputNames)r[l]=null;let a=await this.handler.run(e,r,n),u={};for(let l in a)if(Object.hasOwnProperty.call(a,l)){let f=a[l];f instanceof yt?u[l]=f:u[l]=new yt(f.type,f.data,f.dims)}return Ce(),u}async release(){return this.handler.dispose()}static async create(e,o,t,r){Fe();let n,s={};if(typeof e==\"string\"){if(n=e,typeof o==\"object\"&&o!==null)s=o;else if(typeof o<\"u\")throw new TypeError(\"'options' must be an object.\")}else if(e instanceof Uint8Array){if(n=e,typeof o==\"object\"&&o!==null)s=o;else if(typeof o<\"u\")throw new TypeError(\"'options' must be an object.\")}else if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<\"u\"&&e instanceof SharedArrayBuffer){let f=e,p=0,d=e.byteLength;if(typeof o==\"object\"&&o!==null)s=o;else if(typeof o==\"number\"){if(p=o,!Number.isSafeInteger(p))throw new RangeError(\"'byteOffset' must be an integer.\");if(p<0||p>=f.byteLength)throw new RangeError(`'byteOffset' is out of range [0, ${f.byteLength}).`);if(d=e.byteLength-p,typeof t==\"number\"){if(d=t,!Number.isSafeInteger(d))throw new RangeError(\"'byteLength' must be an integer.\");if(d<=0||p+d>f.byteLength)throw new RangeError(`'byteLength' is out of range (0, ${f.byteLength-p}].`);if(typeof r==\"object\"&&r!==null)s=r;else if(typeof r<\"u\")throw new TypeError(\"'options' must be an object.\")}else if(typeof t<\"u\")throw new TypeError(\"'byteLength' must be a number.\")}else if(typeof o<\"u\")throw new TypeError(\"'options' must be an object.\");n=new Uint8Array(f,p,d)}else throw new TypeError(\"Unexpected argument[0]: must be 'path' or 'buffer'.\");let[a,u]=await ln(s),l=await a.createInferenceSessionHandler(n,u);return Ce(),new i(l)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}}});var Yd,Is=O(()=>{\"use strict\";vs();Yd=dn});var _s=O(()=>{\"use strict\"});var Os=O(()=>{\"use strict\"});var Ss=O(()=>{\"use strict\"});var As=O(()=>{\"use strict\"});var Zd,hn,Ps=O(()=>{\"use strict\";fn();pn();Zd=\"Training backend could not be resolved. Make sure you're using the correct configuration & WebAssembly files.\",hn=class i{constructor(e,o,t){this.handler=e,this.hasOptimizerModel=o,this.hasEvalModel=t}get trainingInputNames(){return this.handler.inputNames}get trainingOutputNames(){return this.handler.outputNames}get evalInputNames(){if(this.hasEvalModel)return this.handler.evalInputNames;throw new Error(\"This training session has no evalModel loaded.\")}get evalOutputNames(){if(this.hasEvalModel)return this.handler.evalOutputNames;throw new Error(\"This training session has no evalModel loaded.\")}static async create(e,o){let t=e.evalModel||\"\",r=e.optimizerModel||\"\",n=o||{},[s,a]=await ln(n);if(s.createTrainingSessionHandler){let u=await s.createTrainingSessionHandler(e.checkpointState,e.trainModel,t,r,a);return new i(u,!!e.optimizerModel,!!e.evalModel)}else throw new Error(Zd)}typeNarrowingForRunStep(e,o,t,r,n){let s={},a={};if(typeof t!=\"object\"||t===null||t instanceof yt||Array.isArray(t))throw new TypeError(\"'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.\");let u=!0;if(typeof r==\"object\"){if(r===null)throw new TypeError(\"Unexpected argument[1]: cannot be null.\");if(r instanceof yt)throw new TypeError(\"'fetches' cannot be a Tensor\");if(Array.isArray(r)){if(r.length===0)throw new TypeError(\"'fetches' cannot be an empty array.\");u=!1;for(let l of r){if(typeof l!=\"string\")throw new TypeError(\"'fetches' must be a string array or an object.\");if(o.indexOf(l)===-1)throw new RangeError(`'fetches' contains invalid output name: ${l}.`);s[l]=null}if(typeof n==\"object\"&&n!==null)a=n;else if(typeof n<\"u\")throw new TypeError(\"'options' must be an object.\")}else{let l=!1,f=Object.getOwnPropertyNames(r);for(let p of o)if(f.indexOf(p)!==-1){let d=r[p];(d===null||d instanceof yt)&&(l=!0,u=!1,s[p]=d)}if(l){if(typeof n==\"object\"&&n!==null)a=n;else if(typeof n<\"u\")throw new TypeError(\"'options' must be an object.\")}else a=r}}else if(typeof r<\"u\")throw new TypeError(\"Unexpected argument[1]: must be 'fetches' or 'options'.\");for(let l of e)if(typeof t[l]>\"u\")throw new Error(`input '${l}' is missing in 'feeds'.`);if(u)for(let l of o)s[l]=null;return[s,a]}convertHandlerReturnTypeToMapOfTensors(e){let o={};for(let t in e)if(Object.hasOwnProperty.call(e,t)){let r=e[t];r instanceof yt?o[t]=r:o[t]=new yt(r.type,r.data,r.dims)}return o}async lazyResetGrad(){await this.handler.lazyResetGrad()}async runTrainStep(e,o,t){let[r,n]=this.typeNarrowingForRunStep(this.trainingInputNames,this.trainingOutputNames,e,o,t),s=await this.handler.runTrainStep(e,r,n);return this.convertHandlerReturnTypeToMapOfTensors(s)}async runOptimizerStep(e){if(this.hasOptimizerModel)await this.handler.runOptimizerStep(e||{});else throw new Error(\"This TrainingSession has no OptimizerModel loaded.\")}async runEvalStep(e,o,t){if(this.hasEvalModel){let[r,n]=this.typeNarrowingForRunStep(this.evalInputNames,this.evalOutputNames,e,o,t),s=await this.handler.runEvalStep(e,r,n);return this.convertHandlerReturnTypeToMapOfTensors(s)}else throw new Error(\"This TrainingSession has no EvalModel loaded.\")}async getParametersSize(e=!0){return this.handler.getParametersSize(e)}async loadParametersBuffer(e,o=!0){let t=await this.getParametersSize(o);if(e.length!==4*t)throw new Error(\"Size of the buffer passed into loadParametersBuffer must match the number of parameters in the model. Please use getParametersSize method to check.\");return this.handler.loadParametersBuffer(e,o)}async getContiguousParameters(e=!0){return this.handler.getContiguousParameters(e)}async release(){return this.handler.dispose()}}});var Qd,Es=O(()=>{\"use strict\";Ps();Qd=hn});var Mo={};Or(Mo,{InferenceSession:()=>Yd,TRACE:()=>Ts,TRACE_FUNC_BEGIN:()=>Fe,TRACE_FUNC_END:()=>Ce,Tensor:()=>yt,TrainingSession:()=>Qd,env:()=>z,registerBackend:()=>nr});var Yt=O(()=>{\"use strict\";ts();os();Is();pn();_s();Os();Go();Ss();As();Es()});function _e(i,e,o,t){if(e===void 0)return eh(i);if(o===void 0)mn(i,e,1);else if(typeof o==\"number\"&&t===void 0)mn(i,e,o);else if(typeof o==\"string\"&&t===void 0)mn(i,o,1,e);else if(typeof o==\"string\"&&typeof t==\"number\")mn(i,o,t,e);else throw new TypeError(\"input is valid\")}function eh(i){return{verbose:_e.verbose.bind(null,i),info:_e.info.bind(null,i),warning:_e.warning.bind(null,i),error:_e.error.bind(null,i),fatal:_e.fatal.bind(null,i)}}function mn(i,e,o,t){let r=Ar[t||\"\"]||Ar[\"\"];Ls[i]{\"use strict\";Uo=class{log(e,o,t){}},Vo=class{log(e,o,t){console.log(`${this.color(e)} ${t?\"\\x1B[35m\"+t+\"\\x1B[0m \":\"\"}${o}`)}color(e){switch(e){case\"verbose\":return\"\\x1B[34;40mv\\x1B[0m\";case\"info\":return\"\\x1B[32mi\\x1B[0m\";case\"warning\":return\"\\x1B[30;43mw\\x1B[0m\";case\"error\":return\"\\x1B[31;40me\\x1B[0m\";case\"fatal\":return\"\\x1B[101mf\\x1B[0m\";default:throw new Error(`unsupported severity: ${e}`)}}},Ls={verbose:1e3,info:2e3,warning:4e3,error:5e3,fatal:6e3},th={none:new Uo,console:new Vo},$s={provider:\"console\",minimalSeverity:\"warning\",logDateTime:!0,logSourceLocation:!1},Ar={\"\":$s};(u=>{function i(l,f){u(\"verbose\",l,f)}u.verbose=i;function e(l,f){u(\"info\",l,f)}u.info=e;function o(l,f){u(\"warning\",l,f)}u.warning=o;function t(l,f){u(\"error\",l,f)}u.error=t;function r(l,f){u(\"fatal\",l,f)}u.fatal=r;function n(l){Ar={},s(\"\",l||{})}u.reset=n;function s(l,f){if(l===\"*\")n(f);else{let p=Ar[l]||$s;Ar[l]={provider:f.provider||p.provider,minimalSeverity:f.minimalSeverity||p.minimalSeverity,logDateTime:f.logDateTime===void 0?p.logDateTime:f.logDateTime,logSourceLocation:f.logSourceLocation===void 0?p.logSourceLocation:f.logSourceLocation}}}u.set=s;function a(l){let f={};l.logLevel&&(f.minimalSeverity=l.logLevel),s(\"\",f)}u.setWithEnv=a})(_e||={});tt=_e,gn=class{constructor(e,o,t,r,n,s){this.category=e;this.name=o;this.startTime=t;this.endCallback=r;this.timer=n;this.ctx=s}async end(){return this.endCallback(this)}async checkTimer(){if(this.ctx===void 0||this.timer===void 0)throw new Error(\"No webgl timer found\");return this.ctx.endTimer(),this.ctx.waitForQueryAndGetTime(this.timer)}},yn=class{constructor(e,o,t,r){this.category=e;this.name=o;this.startTime=t;this.endTime=r}},xn=class{constructor(e,o,t){this._started=!1;this._flushPointer=0;this._started=!1,this._maxNumberEvents=e===void 0?1e4:e,this._flushBatchSize=o===void 0?10:o,this._flushIntervalInMilliseconds=t===void 0?5e3:t}static create(e){return e===void 0?new this:new this(e.maxNumberEvents,e.flushBatchSize,e.flushIntervalInMilliseconds)}start(){this._started=!0,this._timingEvents=[],this._flushTime=bn(),this._flushPointer=0}stop(){for(this._started=!1;this._flushPointer{a.then(async f=>{n&&await n.end(),u(f)},async f=>{n&&await n.end(),l(f)})});if(!s&&n){let u=n.end();if(u&&typeof u.then==\"function\")return new Promise((l,f)=>{u.then(()=>{l(a)},p=>{f(p)})})}return a}begin(e,o,t){if(!this._started)throw new Error(\"profiler is not started yet\");if(t===void 0){let r=bn();return this.flush(r),new gn(e,o,r,n=>this.endSync(n))}else{let r=t.beginTimer();return new gn(e,o,0,async n=>this.end(n),r,t)}}async end(e){let o=await e.checkTimer();this._timingEvents.length=this._flushBatchSize||e-this._flushTime>=this._flushIntervalInMilliseconds){for(let o=this._flushPointer;this._flushPointerperformance.now():Date.now});function ks(i,e,o){for(let t of o){let r=t[0],n=t[1],s=t[2],a=t[3],u=t[4];if(i.opType===r){for(let l of e)if((l.domain===n||l.domain===\"ai.onnx\"&&n===\"\")&&rh(l.version,s))return{opImpl:a,opInit:u}}}throw new TypeError(`cannot resolve operator '${i.opType}' with opsets: ${e.map(t=>`${t.domain||\"ai.onnx\"} v${t.version}`).join(\", \")}`)}function rh(i,e){if(e.endsWith(\"+\")){let o=Number.parseInt(e.substring(0,e.length-1),10);return!isNaN(o)&&o<=i}else if(e.split(\"-\").length===2){let o=e.split(\"-\"),t=Number.parseInt(o[0],10),r=Number.parseInt(o[1],10);return!isNaN(t)&&!isNaN(r)&&t<=i&&i<=r}else return Number.parseInt(e,10)===i}var Bs=O(()=>{\"use strict\"});var Fs=mt(zo=>{\"use strict\";zo.__esModule=!0;var nh=function(){function i(e){if(!e)throw new TypeError(\"Invalid argument; `value` has no value.\");this.value=i.EMPTY,e&&i.isGuid(e)&&(this.value=e)}return i.isGuid=function(e){var o=e.toString();return e&&(e instanceof i||i.validator.test(o))},i.create=function(){return new i([i.gen(2),i.gen(1),i.gen(1),i.gen(1),i.gen(3)].join(\"-\"))},i.createEmpty=function(){return new i(\"emptyguid\")},i.parse=function(e){return new i(e)},i.raw=function(){return[i.gen(2),i.gen(1),i.gen(1),i.gen(1),i.gen(3)].join(\"-\")},i.gen=function(e){for(var o=\"\",t=0;t>>=0,(r=0<=i&&i<256)&&(t=Rs[i],t)?t:(o=J(i,0,!0),r&&(Rs[i]=o),o)):(i|=0,(r=-128<=i&&i<128)&&(t=Ns[i],t)?t:(o=J(i,i<0?-1:0,!1),r&&(Ns[i]=o),o))}function zt(i,e){if(isNaN(i))return e?ye:Zt;if(e){if(i<0)return ye;if(i>=Vs)return Hs}else{if(i<=-Ms)return Ct;if(i+1>=Ms)return Ws}return i<0?zt(-i,e).neg():J(i%ir|0,i/ir|0,e)}function J(i,e,o){return new rt(i,e,o)}function Ho(i,e,o){if(i.length===0)throw Error(\"empty string\");if(typeof e==\"number\"?(o=e,e=!1):e=!!e,i===\"NaN\"||i===\"Infinity\"||i===\"+Infinity\"||i===\"-Infinity\")return e?ye:Zt;if(o=o||10,o<2||360)throw Error(\"interior hyphen\");if(t===0)return Ho(i.substring(1),e,o).neg();for(var r=zt(Tn(o,8)),n=Zt,s=0;s{Vt=null;try{Vt=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}rt.prototype.__isLong__;Object.defineProperty(rt.prototype,\"__isLong__\",{value:!0});rt.isLong=Et;Ns={},Rs={};rt.fromInt=Ne;rt.fromNumber=zt;rt.fromBits=J;Tn=Math.pow;rt.fromString=Ho;rt.fromValue=Qt;Gs=65536,oh=1<<24,ir=Gs*Gs,Vs=ir*ir,Ms=Vs/2,Us=Ne(oh),Zt=Ne(0);rt.ZERO=Zt;ye=Ne(0,!0);rt.UZERO=ye;or=Ne(1);rt.ONE=or;zs=Ne(1,!0);rt.UONE=zs;Wo=Ne(-1);rt.NEG_ONE=Wo;Ws=J(-1,2147483647,!1);rt.MAX_VALUE=Ws;Hs=J(-1,-1,!0);rt.MAX_UNSIGNED_VALUE=Hs;Ct=J(0,-2147483648,!1);rt.MIN_VALUE=Ct;D=rt.prototype;D.toInt=function(){return this.unsigned?this.low>>>0:this.low};D.toNumber=function(){return this.unsigned?(this.high>>>0)*ir+(this.low>>>0):this.high*ir+(this.low>>>0)};D.toString=function(e){if(e=e||10,e<2||36>>0,f=l.toString(e);if(s=u,s.isZero())return f+a;for(;f.length<6;)f=\"0\"+f;a=\"\"+f+a}};D.getHighBits=function(){return this.high};D.getHighBitsUnsigned=function(){return this.high>>>0};D.getLowBits=function(){return this.low};D.getLowBitsUnsigned=function(){return this.low>>>0};D.getNumBitsAbs=function(){if(this.isNegative())return this.eq(Ct)?64:this.neg().getNumBitsAbs();for(var e=this.high!=0?this.high:this.low,o=31;o>0&&!(e&1<=0};D.isOdd=function(){return(this.low&1)===1};D.isEven=function(){return(this.low&1)===0};D.equals=function(e){return Et(e)||(e=Qt(e)),this.unsigned!==e.unsigned&&this.high>>>31===1&&e.high>>>31===1?!1:this.high===e.high&&this.low===e.low};D.eq=D.equals;D.notEquals=function(e){return!this.eq(e)};D.neq=D.notEquals;D.ne=D.notEquals;D.lessThan=function(e){return this.comp(e)<0};D.lt=D.lessThan;D.lessThanOrEqual=function(e){return this.comp(e)<=0};D.lte=D.lessThanOrEqual;D.le=D.lessThanOrEqual;D.greaterThan=function(e){return this.comp(e)>0};D.gt=D.greaterThan;D.greaterThanOrEqual=function(e){return this.comp(e)>=0};D.gte=D.greaterThanOrEqual;D.ge=D.greaterThanOrEqual;D.compare=function(e){if(Et(e)||(e=Qt(e)),this.eq(e))return 0;var o=this.isNegative(),t=e.isNegative();return o&&!t?-1:!o&&t?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1};D.comp=D.compare;D.negate=function(){return!this.unsigned&&this.eq(Ct)?Ct:this.not().add(or)};D.neg=D.negate;D.add=function(e){Et(e)||(e=Qt(e));var o=this.high>>>16,t=this.high&65535,r=this.low>>>16,n=this.low&65535,s=e.high>>>16,a=e.high&65535,u=e.low>>>16,l=e.low&65535,f=0,p=0,d=0,y=0;return y+=n+l,d+=y>>>16,y&=65535,d+=r+u,p+=d>>>16,d&=65535,p+=t+a,f+=p>>>16,p&=65535,f+=o+s,f&=65535,J(d<<16|y,f<<16|p,this.unsigned)};D.subtract=function(e){return Et(e)||(e=Qt(e)),this.add(e.neg())};D.sub=D.subtract;D.multiply=function(e){if(this.isZero())return this;if(Et(e)||(e=Qt(e)),Vt){var o=Vt.mul(this.low,this.high,e.low,e.high);return J(o,Vt.get_high(),this.unsigned)}if(e.isZero())return this.unsigned?ye:Zt;if(this.eq(Ct))return e.isOdd()?Ct:Zt;if(e.eq(Ct))return this.isOdd()?Ct:Zt;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(Us)&&e.lt(Us))return zt(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,r=this.high&65535,n=this.low>>>16,s=this.low&65535,a=e.high>>>16,u=e.high&65535,l=e.low>>>16,f=e.low&65535,p=0,d=0,y=0,T=0;return T+=s*f,y+=T>>>16,T&=65535,y+=n*f,d+=y>>>16,y&=65535,y+=s*l,d+=y>>>16,y&=65535,d+=r*f,p+=d>>>16,d&=65535,d+=n*l,p+=d>>>16,d&=65535,d+=s*u,p+=d>>>16,d&=65535,p+=t*f+r*l+n*u+s*a,p&=65535,J(y<<16|T,p<<16|d,this.unsigned)};D.mul=D.multiply;D.divide=function(e){if(Et(e)||(e=Qt(e)),e.isZero())throw Error(\"division by zero\");if(Vt){if(!this.unsigned&&this.high===-2147483648&&e.low===-1&&e.high===-1)return this;var o=(this.unsigned?Vt.div_u:Vt.div_s)(this.low,this.high,e.low,e.high);return J(o,Vt.get_high(),this.unsigned)}if(this.isZero())return this.unsigned?ye:Zt;var t,r,n;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return ye;if(e.gt(this.shru(1)))return zs;n=ye}else{if(this.eq(Ct)){if(e.eq(or)||e.eq(Wo))return Ct;if(e.eq(Ct))return or;var s=this.shr(1);return t=s.div(e).shl(1),t.eq(Zt)?e.isNegative()?or:Wo:(r=this.sub(e.mul(t)),n=t.add(r.div(e)),n)}else if(e.eq(Ct))return this.unsigned?ye:Zt;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();n=Zt}for(r=this;r.gte(e);){t=Math.max(1,Math.floor(r.toNumber()/e.toNumber()));for(var a=Math.ceil(Math.log(t)/Math.LN2),u=a<=48?1:Tn(2,a-48),l=zt(t),f=l.mul(e);f.isNegative()||f.gt(r);)t-=u,l=zt(t,this.unsigned),f=l.mul(e);l.isZero()&&(l=or),n=n.add(l),r=r.sub(f)}return n};D.div=D.divide;D.modulo=function(e){if(Et(e)||(e=Qt(e)),Vt){var o=(this.unsigned?Vt.rem_u:Vt.rem_s)(this.low,this.high,e.low,e.high);return J(o,Vt.get_high(),this.unsigned)}return this.sub(this.div(e).mul(e))};D.mod=D.modulo;D.rem=D.modulo;D.not=function(){return J(~this.low,~this.high,this.unsigned)};D.countLeadingZeros=function(){return this.high?Math.clz32(this.high):Math.clz32(this.low)+32};D.clz=D.countLeadingZeros;D.countTrailingZeros=function(){return this.low?Cs(this.low):Cs(this.high)+32};D.ctz=D.countTrailingZeros;D.and=function(e){return Et(e)||(e=Qt(e)),J(this.low&e.low,this.high&e.high,this.unsigned)};D.or=function(e){return Et(e)||(e=Qt(e)),J(this.low|e.low,this.high|e.high,this.unsigned)};D.xor=function(e){return Et(e)||(e=Qt(e)),J(this.low^e.low,this.high^e.high,this.unsigned)};D.shiftLeft=function(e){return Et(e)&&(e=e.toInt()),(e&=63)===0?this:e<32?J(this.low<>>32-e,this.unsigned):J(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):J(this.high>>e-32,this.high>=0?0:-1,this.unsigned)};D.shr=D.shiftRight;D.shiftRightUnsigned=function(e){return Et(e)&&(e=e.toInt()),(e&=63)===0?this:e<32?J(this.low>>>e|this.high<<32-e,this.high>>>e,this.unsigned):e===32?J(this.high,0,this.unsigned):J(this.high>>>e-32,0,this.unsigned)};D.shru=D.shiftRightUnsigned;D.shr_u=D.shiftRightUnsigned;D.rotateLeft=function(e){var o;return Et(e)&&(e=e.toInt()),(e&=63)===0?this:e===32?J(this.high,this.low,this.unsigned):e<32?(o=32-e,J(this.low<>>o,this.high<>>o,this.unsigned)):(e-=32,o=32-e,J(this.high<>>o,this.low<>>o,this.unsigned))};D.rotl=D.rotateLeft;D.rotateRight=function(e){var o;return Et(e)&&(e=e.toInt()),(e&=63)===0?this:e===32?J(this.high,this.low,this.unsigned):e<32?(o=32-e,J(this.high<>>e,this.low<>>e,this.unsigned)):(e-=32,o=32-e,J(this.low<>>e,this.high<>>e,this.unsigned))};D.rotr=D.rotateRight;D.toSigned=function(){return this.unsigned?J(this.low,this.high,!1):this};D.toUnsigned=function(){return this.unsigned?this:J(this.low,this.high,!0)};D.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()};D.toBytesLE=function(){var e=this.high,o=this.low;return[o&255,o>>>8&255,o>>>16&255,o>>>24,e&255,e>>>8&255,e>>>16&255,e>>>24]};D.toBytesBE=function(){var e=this.high,o=this.low;return[e>>>24,e>>>16&255,e>>>8&255,e&255,o>>>24,o>>>16&255,o>>>8&255,o&255]};rt.fromBytes=function(e,o,t){return t?rt.fromBytesLE(e,o):rt.fromBytesBE(e,o)};rt.fromBytesLE=function(e,o){return new rt(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,o)};rt.fromBytesBE=function(e,o){return new rt(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],o)};xe=rt});var w,wn=O(()=>{w={};w.Offset;w.Table;w.SIZEOF_SHORT=2;w.SIZEOF_INT=4;w.FILE_IDENTIFIER_LENGTH=4;w.SIZE_PREFIX_LENGTH=4;w.Encoding={UTF8_BYTES:1,UTF16_STRING:2};w.int32=new Int32Array(2);w.float32=new Float32Array(w.int32.buffer);w.float64=new Float64Array(w.int32.buffer);w.isLittleEndian=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;w.Long=function(i,e){this.low=i|0,this.high=e|0};w.Long.create=function(i,e){return i==0&&e==0?w.Long.ZERO:new w.Long(i,e)};w.Long.prototype.toFloat64=function(){return(this.low>>>0)+this.high*4294967296};w.Long.prototype.equals=function(i){return this.low==i.low&&this.high==i.high};w.Long.ZERO=new w.Long(0,0);w.Builder=function(i){if(i)var e=i;else var e=1024;this.bb=w.ByteBuffer.allocate(e),this.space=e,this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1};w.Builder.prototype.clear=function(){this.bb.clear(),this.space=this.bb.capacity(),this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1};w.Builder.prototype.forceDefaults=function(i){this.force_defaults=i};w.Builder.prototype.dataBuffer=function(){return this.bb};w.Builder.prototype.asUint8Array=function(){return this.bb.bytes().subarray(this.bb.position(),this.bb.position()+this.offset())};w.Builder.prototype.prep=function(i,e){i>this.minalign&&(this.minalign=i);for(var o=~(this.bb.capacity()-this.space+e)+1&i-1;this.space=0&&this.vtable[e]==0;e--);for(var o=e+1;e>=0;e--)this.addInt16(this.vtable[e]!=0?i-this.vtable[e]:0);var t=2;this.addInt16(i-this.object_start);var r=(o+t)*w.SIZEOF_SHORT;this.addInt16(r);var n=0,s=this.space;t:for(e=0;e=0;n--)this.writeInt8(r.charCodeAt(n))}this.prep(this.minalign,w.SIZEOF_INT+t),this.addOffset(i),t&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)};w.Builder.prototype.finishSizePrefixed=function(i,e){this.finish(i,e,!0)};w.Builder.prototype.requiredField=function(i,e){var o=this.bb.capacity()-i,t=o-this.bb.readInt32(o),r=this.bb.readInt16(t+e)!=0;if(!r)throw new Error(\"FlatBuffers: field \"+e+\" must be set\")};w.Builder.prototype.startVector=function(i,e,o){this.notNested(),this.vector_num_elems=e,this.prep(w.SIZEOF_INT,i*e),this.prep(o,i*e)};w.Builder.prototype.endVector=function(){return this.writeInt32(this.vector_num_elems),this.offset()};w.Builder.prototype.createString=function(i){if(i instanceof Uint8Array)var e=i;else for(var e=[],o=0;o=56320)t=r;else{var n=i.charCodeAt(o++);t=(r<<10)+n+(65536-56623104-56320)}t<128?e.push(t):(t<2048?e.push(t>>6&31|192):(t<65536?e.push(t>>12&15|224):e.push(t>>18&7|240,t>>12&63|128),e.push(t>>6&63|128)),e.push(t&63|128))}this.addInt8(0),this.startVector(1,e.length,1),this.bb.setPosition(this.space-=e.length);for(var o=0,s=this.space,a=this.bb.bytes();o>24};w.ByteBuffer.prototype.readUint8=function(i){return this.bytes_[i]};w.ByteBuffer.prototype.readInt16=function(i){return this.readUint16(i)<<16>>16};w.ByteBuffer.prototype.readUint16=function(i){return this.bytes_[i]|this.bytes_[i+1]<<8};w.ByteBuffer.prototype.readInt32=function(i){return this.bytes_[i]|this.bytes_[i+1]<<8|this.bytes_[i+2]<<16|this.bytes_[i+3]<<24};w.ByteBuffer.prototype.readUint32=function(i){return this.readInt32(i)>>>0};w.ByteBuffer.prototype.readInt64=function(i){return new w.Long(this.readInt32(i),this.readInt32(i+4))};w.ByteBuffer.prototype.readUint64=function(i){return new w.Long(this.readUint32(i),this.readUint32(i+4))};w.ByteBuffer.prototype.readFloat32=function(i){return w.int32[0]=this.readInt32(i),w.float32[0]};w.ByteBuffer.prototype.readFloat64=function(i){return w.int32[w.isLittleEndian?0:1]=this.readInt32(i),w.int32[w.isLittleEndian?1:0]=this.readInt32(i+4),w.float64[0]};w.ByteBuffer.prototype.writeInt8=function(i,e){this.bytes_[i]=e};w.ByteBuffer.prototype.writeUint8=function(i,e){this.bytes_[i]=e};w.ByteBuffer.prototype.writeInt16=function(i,e){this.bytes_[i]=e,this.bytes_[i+1]=e>>8};w.ByteBuffer.prototype.writeUint16=function(i,e){this.bytes_[i]=e,this.bytes_[i+1]=e>>8};w.ByteBuffer.prototype.writeInt32=function(i,e){this.bytes_[i]=e,this.bytes_[i+1]=e>>8,this.bytes_[i+2]=e>>16,this.bytes_[i+3]=e>>24};w.ByteBuffer.prototype.writeUint32=function(i,e){this.bytes_[i]=e,this.bytes_[i+1]=e>>8,this.bytes_[i+2]=e>>16,this.bytes_[i+3]=e>>24};w.ByteBuffer.prototype.writeInt64=function(i,e){this.writeInt32(i,e.low),this.writeInt32(i+4,e.high)};w.ByteBuffer.prototype.writeUint64=function(i,e){this.writeUint32(i,e.low),this.writeUint32(i+4,e.high)};w.ByteBuffer.prototype.writeFloat32=function(i,e){w.float32[0]=e,this.writeInt32(i,w.int32[0])};w.ByteBuffer.prototype.writeFloat64=function(i,e){w.float64[0]=e,this.writeInt32(i,w.int32[w.isLittleEndian?0:1]),this.writeInt32(i+4,w.int32[w.isLittleEndian?1:0])};w.ByteBuffer.prototype.getBufferIdentifier=function(){if(this.bytes_.length>10)+55296,(n&1024-1)+56320))}return t};w.ByteBuffer.prototype.__indirect=function(i){return i+this.readInt32(i)};w.ByteBuffer.prototype.__vector=function(i){return i+this.readInt32(i)+w.SIZEOF_INT};w.ByteBuffer.prototype.__vector_len=function(i){return this.readInt32(i+this.readInt32(i))};w.ByteBuffer.prototype.__has_identifier=function(i){if(i.length!=w.FILE_IDENTIFIER_LENGTH)throw new Error(\"FlatBuffers: file identifier must be length \"+w.FILE_IDENTIFIER_LENGTH);for(var e=0;e{\"use strict\";wn();(e=>{let i;(t=>{let o;(n=>{let r;(A=>(A[A.UNDEFINED=0]=\"UNDEFINED\",A[A.FLOAT=1]=\"FLOAT\",A[A.INT=2]=\"INT\",A[A.STRING=3]=\"STRING\",A[A.TENSOR=4]=\"TENSOR\",A[A.GRAPH=5]=\"GRAPH\",A[A.FLOATS=6]=\"FLOATS\",A[A.INTS=7]=\"INTS\",A[A.STRINGS=8]=\"STRINGS\",A[A.TENSORS=9]=\"TENSORS\",A[A.GRAPHS=10]=\"GRAPHS\",A[A.SPARSE_TENSOR=11]=\"SPARSE_TENSOR\",A[A.SPARSE_TENSORS=12]=\"SPARSE_TENSORS\"))(r=n.AttributeType||={})})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{let r;(l=>(l[l.UNKNOWN=0]=\"UNKNOWN\",l[l.VALUE=1]=\"VALUE\",l[l.PARAM=2]=\"PARAM\"))(r=n.DimensionValueType||={})})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{let r;(C=>(C[C.UNDEFINED=0]=\"UNDEFINED\",C[C.FLOAT=1]=\"FLOAT\",C[C.UINT8=2]=\"UINT8\",C[C.INT8=3]=\"INT8\",C[C.UINT16=4]=\"UINT16\",C[C.INT16=5]=\"INT16\",C[C.INT32=6]=\"INT32\",C[C.INT64=7]=\"INT64\",C[C.STRING=8]=\"STRING\",C[C.BOOL=9]=\"BOOL\",C[C.FLOAT16=10]=\"FLOAT16\",C[C.DOUBLE=11]=\"DOUBLE\",C[C.UINT32=12]=\"UINT32\",C[C.UINT64=13]=\"UINT64\",C[C.COMPLEX64=14]=\"COMPLEX64\",C[C.COMPLEX128=15]=\"COMPLEX128\",C[C.BFLOAT16=16]=\"BFLOAT16\",C[C.FLOAT8E4M3FN=17]=\"FLOAT8E4M3FN\",C[C.FLOAT8E4M3FNUZ=18]=\"FLOAT8E4M3FNUZ\",C[C.FLOAT8E5M2=19]=\"FLOAT8E5M2\",C[C.FLOAT8E5M2FNUZ=20]=\"FLOAT8E5M2FNUZ\"))(r=n.TensorDataType||={})})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{let r;(u=>(u[u.Primitive=0]=\"Primitive\",u[u.Fused=1]=\"Fused\"))(r=n.NodeType||={})})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{let r;(f=>(f[f.NONE=0]=\"NONE\",f[f.tensor_type=1]=\"tensor_type\",f[f.sequence_type=2]=\"sequence_type\",f[f.map_type=3]=\"map_type\"))(r=n.TypeInfoValue||={})})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsShape(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsShape(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}dim(a,u){let l=this.bb.__offset(this.bb_pos,4);return l?(u||new e.experimental.fbs.Dimension).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}dimLength(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.__vector_len(this.bb_pos+a):0}static startShape(a){a.startObject(1)}static addDim(a,u){a.addFieldOffset(0,u,0)}static createDimVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startDimVector(a,u){a.startVector(4,u,4)}static endShape(a){return a.endObject()}static createShape(a,u){return r.startShape(a),r.addDim(a,u),r.endShape(a)}}n.Shape=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsDimension(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsDimension(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}value(a){let u=this.bb.__offset(this.bb_pos,4);return u?(a||new e.experimental.fbs.DimensionValue).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}denotation(a){let u=this.bb.__offset(this.bb_pos,6);return u?this.bb.__string(this.bb_pos+u,a):null}static startDimension(a){a.startObject(2)}static addValue(a,u){a.addFieldOffset(0,u,0)}static addDenotation(a,u){a.addFieldOffset(1,u,0)}static endDimension(a){return a.endObject()}static createDimension(a,u,l){return r.startDimension(a),r.addValue(a,u),r.addDenotation(a,l),r.endDimension(a)}}n.Dimension=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsDimensionValue(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsDimensionValue(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}dimType(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.readInt8(this.bb_pos+a):0}dimValue(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.readInt64(this.bb_pos+a):this.bb.createLong(0,0)}dimParam(a){let u=this.bb.__offset(this.bb_pos,8);return u?this.bb.__string(this.bb_pos+u,a):null}static startDimensionValue(a){a.startObject(3)}static addDimType(a,u){a.addFieldInt8(0,u,0)}static addDimValue(a,u){a.addFieldInt64(1,u,a.createLong(0,0))}static addDimParam(a,u){a.addFieldOffset(2,u,0)}static endDimensionValue(a){return a.endObject()}static createDimensionValue(a,u,l,f){return r.startDimensionValue(a),r.addDimType(a,u),r.addDimValue(a,l),r.addDimParam(a,f),r.endDimensionValue(a)}}n.DimensionValue=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsTensorTypeAndShape(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsTensorTypeAndShape(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}elemType(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.readInt32(this.bb_pos+a):0}shape(a){let u=this.bb.__offset(this.bb_pos,6);return u?(a||new e.experimental.fbs.Shape).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}static startTensorTypeAndShape(a){a.startObject(2)}static addElemType(a,u){a.addFieldInt32(0,u,0)}static addShape(a,u){a.addFieldOffset(1,u,0)}static endTensorTypeAndShape(a){return a.endObject()}static createTensorTypeAndShape(a,u,l){return r.startTensorTypeAndShape(a),r.addElemType(a,u),r.addShape(a,l),r.endTensorTypeAndShape(a)}}n.TensorTypeAndShape=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsMapType(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsMapType(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}keyType(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.readInt32(this.bb_pos+a):0}valueType(a){let u=this.bb.__offset(this.bb_pos,6);return u?(a||new e.experimental.fbs.TypeInfo).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}static startMapType(a){a.startObject(2)}static addKeyType(a,u){a.addFieldInt32(0,u,0)}static addValueType(a,u){a.addFieldOffset(1,u,0)}static endMapType(a){return a.endObject()}static createMapType(a,u,l){return r.startMapType(a),r.addKeyType(a,u),r.addValueType(a,l),r.endMapType(a)}}n.MapType=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsSequenceType(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsSequenceType(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}elemType(a){let u=this.bb.__offset(this.bb_pos,4);return u?(a||new e.experimental.fbs.TypeInfo).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}static startSequenceType(a){a.startObject(1)}static addElemType(a,u){a.addFieldOffset(0,u,0)}static endSequenceType(a){return a.endObject()}static createSequenceType(a,u){return r.startSequenceType(a),r.addElemType(a,u),r.endSequenceType(a)}}n.SequenceType=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}nodeIndex(){return this.bb.readUint32(this.bb_pos)}srcArgIndex(){return this.bb.readInt32(this.bb_pos+4)}dstArgIndex(){return this.bb.readInt32(this.bb_pos+8)}static createEdgeEnd(a,u,l,f){return a.prep(4,12),a.writeInt32(f),a.writeInt32(l),a.writeInt32(u),a.offset()}}n.EdgeEnd=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsNodeEdge(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsNodeEdge(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}nodeIndex(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.readUint32(this.bb_pos+a):0}inputEdges(a,u){let l=this.bb.__offset(this.bb_pos,6);return l?(u||new e.experimental.fbs.EdgeEnd).__init(this.bb.__vector(this.bb_pos+l)+a*12,this.bb):null}inputEdgesLength(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.__vector_len(this.bb_pos+a):0}outputEdges(a,u){let l=this.bb.__offset(this.bb_pos,8);return l?(u||new e.experimental.fbs.EdgeEnd).__init(this.bb.__vector(this.bb_pos+l)+a*12,this.bb):null}outputEdgesLength(){let a=this.bb.__offset(this.bb_pos,8);return a?this.bb.__vector_len(this.bb_pos+a):0}static startNodeEdge(a){a.startObject(3)}static addNodeIndex(a,u){a.addFieldInt32(0,u,0)}static addInputEdges(a,u){a.addFieldOffset(1,u,0)}static startInputEdgesVector(a,u){a.startVector(12,u,4)}static addOutputEdges(a,u){a.addFieldOffset(2,u,0)}static startOutputEdgesVector(a,u){a.startVector(12,u,4)}static endNodeEdge(a){return a.endObject()}static createNodeEdge(a,u,l,f){return r.startNodeEdge(a),r.addNodeIndex(a,u),r.addInputEdges(a,l),r.addOutputEdges(a,f),r.endNodeEdge(a)}}n.NodeEdge=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsNode(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsNode(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}name(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}docString(a){let u=this.bb.__offset(this.bb_pos,6);return u?this.bb.__string(this.bb_pos+u,a):null}domain(a){let u=this.bb.__offset(this.bb_pos,8);return u?this.bb.__string(this.bb_pos+u,a):null}sinceVersion(){let a=this.bb.__offset(this.bb_pos,10);return a?this.bb.readInt32(this.bb_pos+a):0}index(){let a=this.bb.__offset(this.bb_pos,12);return a?this.bb.readUint32(this.bb_pos+a):0}opType(a){let u=this.bb.__offset(this.bb_pos,14);return u?this.bb.__string(this.bb_pos+u,a):null}type(){let a=this.bb.__offset(this.bb_pos,16);return a?this.bb.readInt32(this.bb_pos+a):0}executionProviderType(a){let u=this.bb.__offset(this.bb_pos,18);return u?this.bb.__string(this.bb_pos+u,a):null}inputs(a,u){let l=this.bb.__offset(this.bb_pos,20);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}inputsLength(){let a=this.bb.__offset(this.bb_pos,20);return a?this.bb.__vector_len(this.bb_pos+a):0}outputs(a,u){let l=this.bb.__offset(this.bb_pos,22);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}outputsLength(){let a=this.bb.__offset(this.bb_pos,22);return a?this.bb.__vector_len(this.bb_pos+a):0}attributes(a,u){let l=this.bb.__offset(this.bb_pos,24);return l?(u||new e.experimental.fbs.Attribute).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}attributesLength(){let a=this.bb.__offset(this.bb_pos,24);return a?this.bb.__vector_len(this.bb_pos+a):0}inputArgCounts(a){let u=this.bb.__offset(this.bb_pos,26);return u?this.bb.readInt32(this.bb.__vector(this.bb_pos+u)+a*4):0}inputArgCountsLength(){let a=this.bb.__offset(this.bb_pos,26);return a?this.bb.__vector_len(this.bb_pos+a):0}inputArgCountsArray(){let a=this.bb.__offset(this.bb_pos,26);return a?new Int32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+a),this.bb.__vector_len(this.bb_pos+a)):null}implicitInputs(a,u){let l=this.bb.__offset(this.bb_pos,28);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}implicitInputsLength(){let a=this.bb.__offset(this.bb_pos,28);return a?this.bb.__vector_len(this.bb_pos+a):0}static startNode(a){a.startObject(13)}static addName(a,u){a.addFieldOffset(0,u,0)}static addDocString(a,u){a.addFieldOffset(1,u,0)}static addDomain(a,u){a.addFieldOffset(2,u,0)}static addSinceVersion(a,u){a.addFieldInt32(3,u,0)}static addIndex(a,u){a.addFieldInt32(4,u,0)}static addOpType(a,u){a.addFieldOffset(5,u,0)}static addType(a,u){a.addFieldInt32(6,u,0)}static addExecutionProviderType(a,u){a.addFieldOffset(7,u,0)}static addInputs(a,u){a.addFieldOffset(8,u,0)}static createInputsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startInputsVector(a,u){a.startVector(4,u,4)}static addOutputs(a,u){a.addFieldOffset(9,u,0)}static createOutputsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startOutputsVector(a,u){a.startVector(4,u,4)}static addAttributes(a,u){a.addFieldOffset(10,u,0)}static createAttributesVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startAttributesVector(a,u){a.startVector(4,u,4)}static addInputArgCounts(a,u){a.addFieldOffset(11,u,0)}static createInputArgCountsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addInt32(u[l]);return a.endVector()}static startInputArgCountsVector(a,u){a.startVector(4,u,4)}static addImplicitInputs(a,u){a.addFieldOffset(12,u,0)}static createImplicitInputsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startImplicitInputsVector(a,u){a.startVector(4,u,4)}static endNode(a){return a.endObject()}static createNode(a,u,l,f,p,d,y,T,v,S,L,P,A,M){return r.startNode(a),r.addName(a,u),r.addDocString(a,l),r.addDomain(a,f),r.addSinceVersion(a,p),r.addIndex(a,d),r.addOpType(a,y),r.addType(a,T),r.addExecutionProviderType(a,v),r.addInputs(a,S),r.addOutputs(a,L),r.addAttributes(a,P),r.addInputArgCounts(a,A),r.addImplicitInputs(a,M),r.endNode(a)}}n.Node=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsValueInfo(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsValueInfo(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}name(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}docString(a){let u=this.bb.__offset(this.bb_pos,6);return u?this.bb.__string(this.bb_pos+u,a):null}type(a){let u=this.bb.__offset(this.bb_pos,8);return u?(a||new e.experimental.fbs.TypeInfo).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}static startValueInfo(a){a.startObject(3)}static addName(a,u){a.addFieldOffset(0,u,0)}static addDocString(a,u){a.addFieldOffset(1,u,0)}static addType(a,u){a.addFieldOffset(2,u,0)}static endValueInfo(a){return a.endObject()}static createValueInfo(a,u,l,f){return r.startValueInfo(a),r.addName(a,u),r.addDocString(a,l),r.addType(a,f),r.endValueInfo(a)}}n.ValueInfo=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsTypeInfo(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsTypeInfo(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}denotation(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}valueType(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.readUint8(this.bb_pos+a):0}value(a){let u=this.bb.__offset(this.bb_pos,8);return u?this.bb.__union(a,this.bb_pos+u):null}static startTypeInfo(a){a.startObject(3)}static addDenotation(a,u){a.addFieldOffset(0,u,0)}static addValueType(a,u){a.addFieldInt8(1,u,0)}static addValue(a,u){a.addFieldOffset(2,u,0)}static endTypeInfo(a){return a.endObject()}static createTypeInfo(a,u,l,f){return r.startTypeInfo(a),r.addDenotation(a,u),r.addValueType(a,l),r.addValue(a,f),r.endTypeInfo(a)}}n.TypeInfo=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsOperatorSetId(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsOperatorSetId(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}domain(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}version(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.readInt64(this.bb_pos+a):this.bb.createLong(0,0)}static startOperatorSetId(a){a.startObject(2)}static addDomain(a,u){a.addFieldOffset(0,u,0)}static addVersion(a,u){a.addFieldInt64(1,u,a.createLong(0,0))}static endOperatorSetId(a){return a.endObject()}static createOperatorSetId(a,u,l){return r.startOperatorSetId(a),r.addDomain(a,u),r.addVersion(a,l),r.endOperatorSetId(a)}}n.OperatorSetId=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsTensor(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsTensor(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}name(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}docString(a){let u=this.bb.__offset(this.bb_pos,6);return u?this.bb.__string(this.bb_pos+u,a):null}dims(a){let u=this.bb.__offset(this.bb_pos,8);return u?this.bb.readInt64(this.bb.__vector(this.bb_pos+u)+a*8):this.bb.createLong(0,0)}dimsLength(){let a=this.bb.__offset(this.bb_pos,8);return a?this.bb.__vector_len(this.bb_pos+a):0}dataType(){let a=this.bb.__offset(this.bb_pos,10);return a?this.bb.readInt32(this.bb_pos+a):0}rawData(a){let u=this.bb.__offset(this.bb_pos,12);return u?this.bb.readUint8(this.bb.__vector(this.bb_pos+u)+a):0}rawDataLength(){let a=this.bb.__offset(this.bb_pos,12);return a?this.bb.__vector_len(this.bb_pos+a):0}rawDataArray(){let a=this.bb.__offset(this.bb_pos,12);return a?new Uint8Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+a),this.bb.__vector_len(this.bb_pos+a)):null}stringData(a,u){let l=this.bb.__offset(this.bb_pos,14);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}stringDataLength(){let a=this.bb.__offset(this.bb_pos,14);return a?this.bb.__vector_len(this.bb_pos+a):0}static startTensor(a){a.startObject(6)}static addName(a,u){a.addFieldOffset(0,u,0)}static addDocString(a,u){a.addFieldOffset(1,u,0)}static addDims(a,u){a.addFieldOffset(2,u,0)}static createDimsVector(a,u){a.startVector(8,u.length,8);for(let l=u.length-1;l>=0;l--)a.addInt64(u[l]);return a.endVector()}static startDimsVector(a,u){a.startVector(8,u,8)}static addDataType(a,u){a.addFieldInt32(3,u,0)}static addRawData(a,u){a.addFieldOffset(4,u,0)}static createRawDataVector(a,u){a.startVector(1,u.length,1);for(let l=u.length-1;l>=0;l--)a.addInt8(u[l]);return a.endVector()}static startRawDataVector(a,u){a.startVector(1,u,1)}static addStringData(a,u){a.addFieldOffset(5,u,0)}static createStringDataVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startStringDataVector(a,u){a.startVector(4,u,4)}static endTensor(a){return a.endObject()}static createTensor(a,u,l,f,p,d,y){return r.startTensor(a),r.addName(a,u),r.addDocString(a,l),r.addDims(a,f),r.addDataType(a,p),r.addRawData(a,d),r.addStringData(a,y),r.endTensor(a)}}n.Tensor=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsSparseTensor(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsSparseTensor(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}values(a){let u=this.bb.__offset(this.bb_pos,4);return u?(a||new e.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}indices(a){let u=this.bb.__offset(this.bb_pos,6);return u?(a||new e.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}dims(a){let u=this.bb.__offset(this.bb_pos,8);return u?this.bb.readInt64(this.bb.__vector(this.bb_pos+u)+a*8):this.bb.createLong(0,0)}dimsLength(){let a=this.bb.__offset(this.bb_pos,8);return a?this.bb.__vector_len(this.bb_pos+a):0}static startSparseTensor(a){a.startObject(3)}static addValues(a,u){a.addFieldOffset(0,u,0)}static addIndices(a,u){a.addFieldOffset(1,u,0)}static addDims(a,u){a.addFieldOffset(2,u,0)}static createDimsVector(a,u){a.startVector(8,u.length,8);for(let l=u.length-1;l>=0;l--)a.addInt64(u[l]);return a.endVector()}static startDimsVector(a,u){a.startVector(8,u,8)}static endSparseTensor(a){return a.endObject()}static createSparseTensor(a,u,l,f){return r.startSparseTensor(a),r.addValues(a,u),r.addIndices(a,l),r.addDims(a,f),r.endSparseTensor(a)}}n.SparseTensor=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsAttribute(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsAttribute(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}name(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}docString(a){let u=this.bb.__offset(this.bb_pos,6);return u?this.bb.__string(this.bb_pos+u,a):null}type(){let a=this.bb.__offset(this.bb_pos,8);return a?this.bb.readInt32(this.bb_pos+a):0}f(){let a=this.bb.__offset(this.bb_pos,10);return a?this.bb.readFloat32(this.bb_pos+a):0}i(){let a=this.bb.__offset(this.bb_pos,12);return a?this.bb.readInt64(this.bb_pos+a):this.bb.createLong(0,0)}s(a){let u=this.bb.__offset(this.bb_pos,14);return u?this.bb.__string(this.bb_pos+u,a):null}t(a){let u=this.bb.__offset(this.bb_pos,16);return u?(a||new e.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}g(a){let u=this.bb.__offset(this.bb_pos,18);return u?(a||new e.experimental.fbs.Graph).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}floats(a){let u=this.bb.__offset(this.bb_pos,20);return u?this.bb.readFloat32(this.bb.__vector(this.bb_pos+u)+a*4):0}floatsLength(){let a=this.bb.__offset(this.bb_pos,20);return a?this.bb.__vector_len(this.bb_pos+a):0}floatsArray(){let a=this.bb.__offset(this.bb_pos,20);return a?new Float32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+a),this.bb.__vector_len(this.bb_pos+a)):null}ints(a){let u=this.bb.__offset(this.bb_pos,22);return u?this.bb.readInt64(this.bb.__vector(this.bb_pos+u)+a*8):this.bb.createLong(0,0)}intsLength(){let a=this.bb.__offset(this.bb_pos,22);return a?this.bb.__vector_len(this.bb_pos+a):0}strings(a,u){let l=this.bb.__offset(this.bb_pos,24);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}stringsLength(){let a=this.bb.__offset(this.bb_pos,24);return a?this.bb.__vector_len(this.bb_pos+a):0}tensors(a,u){let l=this.bb.__offset(this.bb_pos,26);return l?(u||new e.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}tensorsLength(){let a=this.bb.__offset(this.bb_pos,26);return a?this.bb.__vector_len(this.bb_pos+a):0}graphs(a,u){let l=this.bb.__offset(this.bb_pos,28);return l?(u||new e.experimental.fbs.Graph).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}graphsLength(){let a=this.bb.__offset(this.bb_pos,28);return a?this.bb.__vector_len(this.bb_pos+a):0}static startAttribute(a){a.startObject(13)}static addName(a,u){a.addFieldOffset(0,u,0)}static addDocString(a,u){a.addFieldOffset(1,u,0)}static addType(a,u){a.addFieldInt32(2,u,0)}static addF(a,u){a.addFieldFloat32(3,u,0)}static addI(a,u){a.addFieldInt64(4,u,a.createLong(0,0))}static addS(a,u){a.addFieldOffset(5,u,0)}static addT(a,u){a.addFieldOffset(6,u,0)}static addG(a,u){a.addFieldOffset(7,u,0)}static addFloats(a,u){a.addFieldOffset(8,u,0)}static createFloatsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addFloat32(u[l]);return a.endVector()}static startFloatsVector(a,u){a.startVector(4,u,4)}static addInts(a,u){a.addFieldOffset(9,u,0)}static createIntsVector(a,u){a.startVector(8,u.length,8);for(let l=u.length-1;l>=0;l--)a.addInt64(u[l]);return a.endVector()}static startIntsVector(a,u){a.startVector(8,u,8)}static addStrings(a,u){a.addFieldOffset(10,u,0)}static createStringsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startStringsVector(a,u){a.startVector(4,u,4)}static addTensors(a,u){a.addFieldOffset(11,u,0)}static createTensorsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startTensorsVector(a,u){a.startVector(4,u,4)}static addGraphs(a,u){a.addFieldOffset(12,u,0)}static createGraphsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startGraphsVector(a,u){a.startVector(4,u,4)}static endAttribute(a){return a.endObject()}static createAttribute(a,u,l,f,p,d,y,T,v,S,L,P,A,M){return r.startAttribute(a),r.addName(a,u),r.addDocString(a,l),r.addType(a,f),r.addF(a,p),r.addI(a,d),r.addS(a,y),r.addT(a,T),r.addG(a,v),r.addFloats(a,S),r.addInts(a,L),r.addStrings(a,P),r.addTensors(a,A),r.addGraphs(a,M),r.endAttribute(a)}}n.Attribute=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsGraph(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsGraph(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}initializers(a,u){let l=this.bb.__offset(this.bb_pos,4);return l?(u||new e.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}initializersLength(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.__vector_len(this.bb_pos+a):0}nodeArgs(a,u){let l=this.bb.__offset(this.bb_pos,6);return l?(u||new e.experimental.fbs.ValueInfo).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}nodeArgsLength(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.__vector_len(this.bb_pos+a):0}nodes(a,u){let l=this.bb.__offset(this.bb_pos,8);return l?(u||new e.experimental.fbs.Node).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}nodesLength(){let a=this.bb.__offset(this.bb_pos,8);return a?this.bb.__vector_len(this.bb_pos+a):0}maxNodeIndex(){let a=this.bb.__offset(this.bb_pos,10);return a?this.bb.readUint32(this.bb_pos+a):0}nodeEdges(a,u){let l=this.bb.__offset(this.bb_pos,12);return l?(u||new e.experimental.fbs.NodeEdge).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}nodeEdgesLength(){let a=this.bb.__offset(this.bb_pos,12);return a?this.bb.__vector_len(this.bb_pos+a):0}inputs(a,u){let l=this.bb.__offset(this.bb_pos,14);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}inputsLength(){let a=this.bb.__offset(this.bb_pos,14);return a?this.bb.__vector_len(this.bb_pos+a):0}outputs(a,u){let l=this.bb.__offset(this.bb_pos,16);return l?this.bb.__string(this.bb.__vector(this.bb_pos+l)+a*4,u):null}outputsLength(){let a=this.bb.__offset(this.bb_pos,16);return a?this.bb.__vector_len(this.bb_pos+a):0}sparseInitializers(a,u){let l=this.bb.__offset(this.bb_pos,18);return l?(u||new e.experimental.fbs.SparseTensor).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}sparseInitializersLength(){let a=this.bb.__offset(this.bb_pos,18);return a?this.bb.__vector_len(this.bb_pos+a):0}static startGraph(a){a.startObject(8)}static addInitializers(a,u){a.addFieldOffset(0,u,0)}static createInitializersVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startInitializersVector(a,u){a.startVector(4,u,4)}static addNodeArgs(a,u){a.addFieldOffset(1,u,0)}static createNodeArgsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startNodeArgsVector(a,u){a.startVector(4,u,4)}static addNodes(a,u){a.addFieldOffset(2,u,0)}static createNodesVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startNodesVector(a,u){a.startVector(4,u,4)}static addMaxNodeIndex(a,u){a.addFieldInt32(3,u,0)}static addNodeEdges(a,u){a.addFieldOffset(4,u,0)}static createNodeEdgesVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startNodeEdgesVector(a,u){a.startVector(4,u,4)}static addInputs(a,u){a.addFieldOffset(5,u,0)}static createInputsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startInputsVector(a,u){a.startVector(4,u,4)}static addOutputs(a,u){a.addFieldOffset(6,u,0)}static createOutputsVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startOutputsVector(a,u){a.startVector(4,u,4)}static addSparseInitializers(a,u){a.addFieldOffset(7,u,0)}static createSparseInitializersVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startSparseInitializersVector(a,u){a.startVector(4,u,4)}static endGraph(a){return a.endObject()}static createGraph(a,u,l,f,p,d,y,T,v){return r.startGraph(a),r.addInitializers(a,u),r.addNodeArgs(a,l),r.addNodes(a,f),r.addMaxNodeIndex(a,p),r.addNodeEdges(a,d),r.addInputs(a,y),r.addOutputs(a,T),r.addSparseInitializers(a,v),r.endGraph(a)}}n.Graph=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsModel(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsModel(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}irVersion(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.readInt64(this.bb_pos+a):this.bb.createLong(0,0)}opsetImport(a,u){let l=this.bb.__offset(this.bb_pos,6);return l?(u||new e.experimental.fbs.OperatorSetId).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}opsetImportLength(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.__vector_len(this.bb_pos+a):0}producerName(a){let u=this.bb.__offset(this.bb_pos,8);return u?this.bb.__string(this.bb_pos+u,a):null}producerVersion(a){let u=this.bb.__offset(this.bb_pos,10);return u?this.bb.__string(this.bb_pos+u,a):null}domain(a){let u=this.bb.__offset(this.bb_pos,12);return u?this.bb.__string(this.bb_pos+u,a):null}modelVersion(){let a=this.bb.__offset(this.bb_pos,14);return a?this.bb.readInt64(this.bb_pos+a):this.bb.createLong(0,0)}docString(a){let u=this.bb.__offset(this.bb_pos,16);return u?this.bb.__string(this.bb_pos+u,a):null}graph(a){let u=this.bb.__offset(this.bb_pos,18);return u?(a||new e.experimental.fbs.Graph).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}graphDocString(a){let u=this.bb.__offset(this.bb_pos,20);return u?this.bb.__string(this.bb_pos+u,a):null}static startModel(a){a.startObject(9)}static addIrVersion(a,u){a.addFieldInt64(0,u,a.createLong(0,0))}static addOpsetImport(a,u){a.addFieldOffset(1,u,0)}static createOpsetImportVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startOpsetImportVector(a,u){a.startVector(4,u,4)}static addProducerName(a,u){a.addFieldOffset(2,u,0)}static addProducerVersion(a,u){a.addFieldOffset(3,u,0)}static addDomain(a,u){a.addFieldOffset(4,u,0)}static addModelVersion(a,u){a.addFieldInt64(5,u,a.createLong(0,0))}static addDocString(a,u){a.addFieldOffset(6,u,0)}static addGraph(a,u){a.addFieldOffset(7,u,0)}static addGraphDocString(a,u){a.addFieldOffset(8,u,0)}static endModel(a){return a.endObject()}static createModel(a,u,l,f,p,d,y,T,v,S){return r.startModel(a),r.addIrVersion(a,u),r.addOpsetImport(a,l),r.addProducerName(a,f),r.addProducerVersion(a,p),r.addDomain(a,d),r.addModelVersion(a,y),r.addDocString(a,T),r.addGraph(a,v),r.addGraphDocString(a,S),r.endModel(a)}}n.Model=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsKernelCreateInfos(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsKernelCreateInfos(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}nodeIndices(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.readUint32(this.bb.__vector(this.bb_pos+u)+a*4):0}nodeIndicesLength(){let a=this.bb.__offset(this.bb_pos,4);return a?this.bb.__vector_len(this.bb_pos+a):0}nodeIndicesArray(){let a=this.bb.__offset(this.bb_pos,4);return a?new Uint32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+a),this.bb.__vector_len(this.bb_pos+a)):null}kernelDefHashes(a){let u=this.bb.__offset(this.bb_pos,6);return u?this.bb.readUint64(this.bb.__vector(this.bb_pos+u)+a*8):this.bb.createLong(0,0)}kernelDefHashesLength(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.__vector_len(this.bb_pos+a):0}static startKernelCreateInfos(a){a.startObject(2)}static addNodeIndices(a,u){a.addFieldOffset(0,u,0)}static createNodeIndicesVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addInt32(u[l]);return a.endVector()}static startNodeIndicesVector(a,u){a.startVector(4,u,4)}static addKernelDefHashes(a,u){a.addFieldOffset(1,u,0)}static createKernelDefHashesVector(a,u){a.startVector(8,u.length,8);for(let l=u.length-1;l>=0;l--)a.addInt64(u[l]);return a.endVector()}static startKernelDefHashesVector(a,u){a.startVector(8,u,8)}static endKernelCreateInfos(a){return a.endObject()}static createKernelCreateInfos(a,u,l){return r.startKernelCreateInfos(a),r.addNodeIndices(a,u),r.addKernelDefHashes(a,l),r.endKernelCreateInfos(a)}}n.KernelCreateInfos=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsSubGraphSessionState(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsSubGraphSessionState(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}graphId(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}sessionState(a){let u=this.bb.__offset(this.bb_pos,6);return u?(a||new e.experimental.fbs.SessionState).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}static startSubGraphSessionState(a){a.startObject(2)}static addGraphId(a,u){a.addFieldOffset(0,u,0)}static addSessionState(a,u){a.addFieldOffset(1,u,0)}static endSubGraphSessionState(a){let u=a.endObject();return a.requiredField(u,4),u}static createSubGraphSessionState(a,u,l){return r.startSubGraphSessionState(a),r.addGraphId(a,u),r.addSessionState(a,l),r.endSubGraphSessionState(a)}}n.SubGraphSessionState=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsSessionState(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsSessionState(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}kernels(a){let u=this.bb.__offset(this.bb_pos,4);return u?(a||new e.experimental.fbs.KernelCreateInfos).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}subGraphSessionStates(a,u){let l=this.bb.__offset(this.bb_pos,6);return l?(u||new e.experimental.fbs.SubGraphSessionState).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+l)+a*4),this.bb):null}subGraphSessionStatesLength(){let a=this.bb.__offset(this.bb_pos,6);return a?this.bb.__vector_len(this.bb_pos+a):0}static startSessionState(a){a.startObject(2)}static addKernels(a,u){a.addFieldOffset(0,u,0)}static addSubGraphSessionStates(a,u){a.addFieldOffset(1,u,0)}static createSubGraphSessionStatesVector(a,u){a.startVector(4,u.length,4);for(let l=u.length-1;l>=0;l--)a.addOffset(u[l]);return a.endVector()}static startSubGraphSessionStatesVector(a,u){a.startVector(4,u,4)}static endSessionState(a){return a.endObject()}static createSessionState(a,u,l){return r.startSessionState(a),r.addKernels(a,u),r.addSubGraphSessionStates(a,l),r.endSessionState(a)}}n.SessionState=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={});(e=>{let i;(t=>{let o;(n=>{class r{constructor(){this.bb=null;this.bb_pos=0}__init(a,u){return this.bb_pos=a,this.bb=u,this}static getRootAsInferenceSession(a,u){return(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static getSizePrefixedRootAsInferenceSession(a,u){return a.setPosition(a.position()+w.SIZE_PREFIX_LENGTH),(u||new r).__init(a.readInt32(a.position())+a.position(),a)}static bufferHasIdentifier(a){return a.__has_identifier(\"ORTM\")}ortVersion(a){let u=this.bb.__offset(this.bb_pos,4);return u?this.bb.__string(this.bb_pos+u,a):null}model(a){let u=this.bb.__offset(this.bb_pos,6);return u?(a||new e.experimental.fbs.Model).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}sessionState(a){let u=this.bb.__offset(this.bb_pos,8);return u?(a||new e.experimental.fbs.SessionState).__init(this.bb.__indirect(this.bb_pos+u),this.bb):null}static startInferenceSession(a){a.startObject(3)}static addOrtVersion(a,u){a.addFieldOffset(0,u,0)}static addModel(a,u){a.addFieldOffset(1,u,0)}static addSessionState(a,u){a.addFieldOffset(2,u,0)}static endInferenceSession(a){return a.endObject()}static finishInferenceSessionBuffer(a,u){a.finish(u,\"ORTM\")}static finishSizePrefixedInferenceSessionBuffer(a,u){a.finish(u,\"ORTM\",!0)}static createInferenceSession(a,u,l,f){return r.startInferenceSession(a),r.addOrtVersion(a,u),r.addModel(a,l),r.addSessionState(a,f),r.endInferenceSession(a)}}n.InferenceSession=r})(o=t.fbs||={})})(i=e.experimental||={})})(F||={})});var js=mt((Vy,qs)=>{\"use strict\";qs.exports=ih;function ih(i,e){for(var o=new Array(arguments.length-1),t=0,r=2,n=!0;r{\"use strict\";var vn=Js;vn.length=function(e){var o=e.length;if(!o)return 0;for(var t=0;--o%4>1&&e.charAt(o)===\"=\";)++t;return Math.ceil(e.length*3)/4-t};var ar=new Array(64),Ks=new Array(123);for(te=0;te<64;)Ks[ar[te]=te<26?te+65:te<52?te+71:te<62?te-4:te-59|43]=te++;var te;vn.encode=function(e,o,t){for(var r=null,n=[],s=0,a=0,u;o>2],u=(l&3)<<4,a=1;break;case 1:n[s++]=ar[u|l>>4],u=(l&15)<<2,a=2;break;case 2:n[s++]=ar[u|l>>6],n[s++]=ar[l&63],a=0;break}s>8191&&((r||(r=[])).push(String.fromCharCode.apply(String,n)),s=0)}return a&&(n[s++]=ar[u],n[s++]=61,a===1&&(n[s++]=61)),r?(s&&r.push(String.fromCharCode.apply(String,n.slice(0,s))),r.join(\"\")):String.fromCharCode.apply(String,n.slice(0,s))};var Xs=\"invalid encoding\";vn.decode=function(e,o,t){for(var r=t,n=0,s,a=0;a1)break;if((u=Ks[u])===void 0)throw Error(Xs);switch(n){case 0:s=u,n=1;break;case 1:o[t++]=s<<2|(u&48)>>4,s=u,n=2;break;case 2:o[t++]=(s&15)<<4|(u&60)>>2,s=u,n=3;break;case 3:o[t++]=(s&3)<<6|u,n=0;break}}if(n===1)throw Error(Xs);return t-r};vn.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}});var Qs=mt((Wy,Zs)=>{\"use strict\";Zs.exports=In;function In(){this._listeners={}}In.prototype.on=function(e,o,t){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:o,ctx:t||this}),this};In.prototype.off=function(e,o){if(e===void 0)this._listeners={};else if(o===void 0)this._listeners[e]=[];else for(var t=this._listeners[e],r=0;r{\"use strict\";iu.exports=tu(tu);function tu(i){return typeof Float32Array<\"u\"?function(){var e=new Float32Array([-0]),o=new Uint8Array(e.buffer),t=o[3]===128;function r(u,l,f){e[0]=u,l[f]=o[0],l[f+1]=o[1],l[f+2]=o[2],l[f+3]=o[3]}function n(u,l,f){e[0]=u,l[f]=o[3],l[f+1]=o[2],l[f+2]=o[1],l[f+3]=o[0]}i.writeFloatLE=t?r:n,i.writeFloatBE=t?n:r;function s(u,l){return o[0]=u[l],o[1]=u[l+1],o[2]=u[l+2],o[3]=u[l+3],e[0]}function a(u,l){return o[3]=u[l],o[2]=u[l+1],o[1]=u[l+2],o[0]=u[l+3],e[0]}i.readFloatLE=t?s:a,i.readFloatBE=t?a:s}():function(){function e(t,r,n,s){var a=r<0?1:0;if(a&&(r=-r),r===0)t(1/r>0?0:2147483648,n,s);else if(isNaN(r))t(2143289344,n,s);else if(r>34028234663852886e22)t((a<<31|2139095040)>>>0,n,s);else if(r<11754943508222875e-54)t((a<<31|Math.round(r/1401298464324817e-60))>>>0,n,s);else{var u=Math.floor(Math.log(r)/Math.LN2),l=Math.round(r*Math.pow(2,-u)*8388608)&8388607;t((a<<31|u+127<<23|l)>>>0,n,s)}}i.writeFloatLE=e.bind(null,eu),i.writeFloatBE=e.bind(null,ru);function o(t,r,n){var s=t(r,n),a=(s>>31)*2+1,u=s>>>23&255,l=s&8388607;return u===255?l?NaN:a*(1/0):u===0?a*1401298464324817e-60*l:a*Math.pow(2,u-150)*(l+8388608)}i.readFloatLE=o.bind(null,nu),i.readFloatBE=o.bind(null,ou)}(),typeof Float64Array<\"u\"?function(){var e=new Float64Array([-0]),o=new Uint8Array(e.buffer),t=o[7]===128;function r(u,l,f){e[0]=u,l[f]=o[0],l[f+1]=o[1],l[f+2]=o[2],l[f+3]=o[3],l[f+4]=o[4],l[f+5]=o[5],l[f+6]=o[6],l[f+7]=o[7]}function n(u,l,f){e[0]=u,l[f]=o[7],l[f+1]=o[6],l[f+2]=o[5],l[f+3]=o[4],l[f+4]=o[3],l[f+5]=o[2],l[f+6]=o[1],l[f+7]=o[0]}i.writeDoubleLE=t?r:n,i.writeDoubleBE=t?n:r;function s(u,l){return o[0]=u[l],o[1]=u[l+1],o[2]=u[l+2],o[3]=u[l+3],o[4]=u[l+4],o[5]=u[l+5],o[6]=u[l+6],o[7]=u[l+7],e[0]}function a(u,l){return o[7]=u[l],o[6]=u[l+1],o[5]=u[l+2],o[4]=u[l+3],o[3]=u[l+4],o[2]=u[l+5],o[1]=u[l+6],o[0]=u[l+7],e[0]}i.readDoubleLE=t?s:a,i.readDoubleBE=t?a:s}():function(){function e(t,r,n,s,a,u){var l=s<0?1:0;if(l&&(s=-s),s===0)t(0,a,u+r),t(1/s>0?0:2147483648,a,u+n);else if(isNaN(s))t(0,a,u+r),t(2146959360,a,u+n);else if(s>17976931348623157e292)t(0,a,u+r),t((l<<31|2146435072)>>>0,a,u+n);else{var f;if(s<22250738585072014e-324)f=s/5e-324,t(f>>>0,a,u+r),t((l<<31|f/4294967296)>>>0,a,u+n);else{var p=Math.floor(Math.log(s)/Math.LN2);p===1024&&(p=1023),f=s*Math.pow(2,-p),t(f*4503599627370496>>>0,a,u+r),t((l<<31|p+1023<<20|f*1048576&1048575)>>>0,a,u+n)}}}i.writeDoubleLE=e.bind(null,eu,0,4),i.writeDoubleBE=e.bind(null,ru,4,0);function o(t,r,n,s,a){var u=t(s,a+r),l=t(s,a+n),f=(l>>31)*2+1,p=l>>>20&2047,d=4294967296*(l&1048575)+u;return p===2047?d?NaN:f*(1/0):p===0?f*5e-324*d:f*Math.pow(2,p-1075)*(d+4503599627370496)}i.readDoubleLE=o.bind(null,nu,0,4),i.readDoubleBE=o.bind(null,ou,4,0)}(),i}function eu(i,e,o){e[o]=i&255,e[o+1]=i>>>8&255,e[o+2]=i>>>16&255,e[o+3]=i>>>24}function ru(i,e,o){e[o]=i>>>24,e[o+1]=i>>>16&255,e[o+2]=i>>>8&255,e[o+3]=i&255}function nu(i,e){return(i[e]|i[e+1]<<8|i[e+2]<<16|i[e+3]<<24)>>>0}function ou(i,e){return(i[e]<<24|i[e+1]<<16|i[e+2]<<8|i[e+3])>>>0}});var su=mt((exports,module)=>{\"use strict\";module.exports=inquire;function inquire(moduleName){try{var mod=eval(\"quire\".replace(/^/,\"re\"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(i){}return null}});var lu=mt(uu=>{\"use strict\";var jo=uu;jo.length=function(e){for(var o=0,t=0,r=0;r191&&u<224?s[a++]=(u&31)<<6|e[o++]&63:u>239&&u<365?(u=((u&7)<<18|(e[o++]&63)<<12|(e[o++]&63)<<6|e[o++]&63)-65536,s[a++]=55296+(u>>10),s[a++]=56320+(u&1023)):s[a++]=(u&15)<<12|(e[o++]&63)<<6|e[o++]&63,a>8191&&((n||(n=[])).push(String.fromCharCode.apply(String,s)),a=0);return n?(a&&n.push(String.fromCharCode.apply(String,s.slice(0,a))),n.join(\"\")):String.fromCharCode.apply(String,s.slice(0,a))};jo.write=function(e,o,t){for(var r=t,n,s,a=0;a>6|192,o[t++]=n&63|128):(n&64512)===55296&&((s=e.charCodeAt(a+1))&64512)===56320?(n=65536+((n&1023)<<10)+(s&1023),++a,o[t++]=n>>18|240,o[t++]=n>>12&63|128,o[t++]=n>>6&63|128,o[t++]=n&63|128):(o[t++]=n>>12|224,o[t++]=n>>6&63|128,o[t++]=n&63|128);return t-r}});var cu=mt((jy,fu)=>{\"use strict\";fu.exports=ah;function ah(i,e,o){var t=o||8192,r=t>>>1,n=null,s=t;return function(u){if(u<1||u>r)return i(u);s+u>t&&(n=i(t),s=0);var l=e.call(n,s,s+=u);return s&7&&(s=(s|7)+1),l}}});var du=mt((Xy,pu)=>{\"use strict\";pu.exports=vt;var Er=Se();function vt(i,e){this.lo=i>>>0,this.hi=e>>>0}var Re=vt.zero=new vt(0,0);Re.toNumber=function(){return 0};Re.zzEncode=Re.zzDecode=function(){return this};Re.length=function(){return 1};var sh=vt.zeroHash=\"\\0\\0\\0\\0\\0\\0\\0\\0\";vt.fromNumber=function(e){if(e===0)return Re;var o=e<0;o&&(e=-e);var t=e>>>0,r=(e-t)/4294967296>>>0;return o&&(r=~r>>>0,t=~t>>>0,++t>4294967295&&(t=0,++r>4294967295&&(r=0))),new vt(t,r)};vt.from=function(e){if(typeof e==\"number\")return vt.fromNumber(e);if(Er.isString(e))if(Er.Long)e=Er.Long.fromString(e);else return vt.fromNumber(parseInt(e,10));return e.low||e.high?new vt(e.low>>>0,e.high>>>0):Re};vt.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var o=~this.lo+1>>>0,t=~this.hi>>>0;return o||(t=t+1>>>0),-(o+t*4294967296)}return this.lo+this.hi*4294967296};vt.prototype.toLong=function(e){return Er.Long?new Er.Long(this.lo|0,this.hi|0,!!e):{low:this.lo|0,high:this.hi|0,unsigned:!!e}};var Oe=String.prototype.charCodeAt;vt.fromHash=function(e){return e===sh?Re:new vt((Oe.call(e,0)|Oe.call(e,1)<<8|Oe.call(e,2)<<16|Oe.call(e,3)<<24)>>>0,(Oe.call(e,4)|Oe.call(e,5)<<8|Oe.call(e,6)<<16|Oe.call(e,7)<<24)>>>0)};vt.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};vt.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this};vt.prototype.zzDecode=function(){var e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this};vt.prototype.length=function(){var e=this.lo,o=(this.lo>>>28|this.hi<<4)>>>0,t=this.hi>>>24;return t===0?o===0?e<16384?e<128?1:2:e<2097152?3:4:o<16384?o<128?5:6:o<2097152?7:8:t<128?9:10}});var Se=mt(Xo=>{\"use strict\";var N=Xo;N.asPromise=js();N.base64=Ys();N.EventEmitter=Qs();N.float=au();N.inquire=su();N.utf8=lu();N.pool=cu();N.LongBits=du();N.isNode=!!(typeof global<\"u\"&&global&&global.process&&global.process.versions&&global.process.versions.node);N.global=N.isNode&&global||typeof window<\"u\"&&window||typeof self<\"u\"&&self||Xo;N.emptyArray=Object.freeze?Object.freeze([]):[];N.emptyObject=Object.freeze?Object.freeze({}):{};N.isInteger=Number.isInteger||function(e){return typeof e==\"number\"&&isFinite(e)&&Math.floor(e)===e};N.isString=function(e){return typeof e==\"string\"||e instanceof String};N.isObject=function(e){return e&&typeof e==\"object\"};N.isset=N.isSet=function(e,o){var t=e[o];return t!=null&&e.hasOwnProperty(o)?typeof t!=\"object\"||(Array.isArray(t)?t.length:Object.keys(t).length)>0:!1};N.Buffer=function(){try{var i=N.inquire(\"buffer\").Buffer;return i.prototype.utf8Write?i:null}catch{return null}}();N._Buffer_from=null;N._Buffer_allocUnsafe=null;N.newBuffer=function(e){return typeof e==\"number\"?N.Buffer?N._Buffer_allocUnsafe(e):new N.Array(e):N.Buffer?N._Buffer_from(e):typeof Uint8Array>\"u\"?e:new Uint8Array(e)};N.Array=typeof Uint8Array<\"u\"?Uint8Array:Array;N.Long=N.global.dcodeIO&&N.global.dcodeIO.Long||N.global.Long||N.inquire(\"long\");N.key2Re=/^true|false|0|1$/;N.key32Re=/^-?(?:0|[1-9][0-9]*)$/;N.key64Re=/^(?:[\\\\x00-\\\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;N.longToHash=function(e){return e?N.LongBits.from(e).toHash():N.LongBits.zeroHash};N.longFromHash=function(e,o){var t=N.LongBits.fromHash(e);return N.Long?N.Long.fromBits(t.lo,t.hi,o):t.toNumber(!!o)};function hu(i,e,o){for(var t=Object.keys(e),r=0;r-1;--n)if(o[r[n]]===1&&this[r[n]]!==void 0&&this[r[n]]!==null)return r[n]}};N.oneOfSetter=function(e){return function(o){for(var t=0;t{\"use strict\";xu.exports=X;var Wt=Se(),Ko,_n=Wt.LongBits,bu=Wt.base64,gu=Wt.utf8;function Dr(i,e,o){this.fn=i,this.len=e,this.next=void 0,this.val=o}function Yo(){}function uh(i){this.head=i.head,this.tail=i.tail,this.len=i.len,this.next=i.states}function X(){this.len=0,this.head=new Dr(Yo,0,0),this.tail=this.head,this.states=null}var yu=function(){return Wt.Buffer?function(){return(X.create=function(){return new Ko})()}:function(){return new X}};X.create=yu();X.alloc=function(e){return new Wt.Array(e)};Wt.Array!==Array&&(X.alloc=Wt.pool(X.alloc,Wt.Array.prototype.subarray));X.prototype._push=function(e,o,t){return this.tail=this.tail.next=new Dr(e,o,t),this.len+=o,this};function Zo(i,e,o){e[o]=i&255}function lh(i,e,o){for(;i>127;)e[o++]=i&127|128,i>>>=7;e[o]=i}function Qo(i,e){this.len=i,this.next=void 0,this.val=e}Qo.prototype=Object.create(Dr.prototype);Qo.prototype.fn=lh;X.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new Qo((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this};X.prototype.int32=function(e){return e<0?this._push(ti,10,_n.fromNumber(e)):this.uint32(e)};X.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)};function ti(i,e,o){for(;i.hi;)e[o++]=i.lo&127|128,i.lo=(i.lo>>>7|i.hi<<25)>>>0,i.hi>>>=7;for(;i.lo>127;)e[o++]=i.lo&127|128,i.lo=i.lo>>>7;e[o++]=i.lo}X.prototype.uint64=function(e){var o=_n.from(e);return this._push(ti,o.length(),o)};X.prototype.int64=X.prototype.uint64;X.prototype.sint64=function(e){var o=_n.from(e).zzEncode();return this._push(ti,o.length(),o)};X.prototype.bool=function(e){return this._push(Zo,1,e?1:0)};function Jo(i,e,o){e[o]=i&255,e[o+1]=i>>>8&255,e[o+2]=i>>>16&255,e[o+3]=i>>>24}X.prototype.fixed32=function(e){return this._push(Jo,4,e>>>0)};X.prototype.sfixed32=X.prototype.fixed32;X.prototype.fixed64=function(e){var o=_n.from(e);return this._push(Jo,4,o.lo)._push(Jo,4,o.hi)};X.prototype.sfixed64=X.prototype.fixed64;X.prototype.float=function(e){return this._push(Wt.float.writeFloatLE,4,e)};X.prototype.double=function(e){return this._push(Wt.float.writeDoubleLE,8,e)};var fh=Wt.Array.prototype.set?function(e,o,t){o.set(e,t)}:function(e,o,t){for(var r=0;r>>0;if(!o)return this._push(Zo,1,0);if(Wt.isString(e)){var t=X.alloc(o=bu.length(e));bu.decode(e,t,0),e=t}return this.uint32(o)._push(fh,o,e)};X.prototype.string=function(e){var o=gu.length(e);return o?this.uint32(o)._push(gu.write,o,e):this._push(Zo,1,0)};X.prototype.fork=function(){return this.states=new uh(this),this.head=this.tail=new Dr(Yo,0,0),this.len=0,this};X.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Dr(Yo,0,0),this.len=0),this};X.prototype.ldelim=function(){var e=this.head,o=this.tail,t=this.len;return this.reset().uint32(t),t&&(this.tail.next=e.next,this.tail=o,this.len+=t),this};X.prototype.finish=function(){for(var e=this.head.next,o=this.constructor.alloc(this.len),t=0;e;)e.fn(e.val,o,t),t+=e.len,e=e.next;return o};X._configure=function(i){Ko=i,X.create=yu(),Ko._configure()}});var vu=mt((Yy,wu)=>{\"use strict\";wu.exports=ce;var Tu=ei();(ce.prototype=Object.create(Tu.prototype)).constructor=ce;var Ae=Se();function ce(){Tu.call(this)}ce._configure=function(){ce.alloc=Ae._Buffer_allocUnsafe,ce.writeBytesBuffer=Ae.Buffer&&Ae.Buffer.prototype instanceof Uint8Array&&Ae.Buffer.prototype.set.name===\"set\"?function(e,o,t){o.set(e,t)}:function(e,o,t){if(e.copy)e.copy(o,t,0,e.length);else for(var r=0;r>>0;return this.uint32(o),o&&this._push(ce.writeBytesBuffer,o,e),this};function ch(i,e,o){i.length<40?Ae.utf8.write(i,e,o):e.utf8Write?e.utf8Write(i,o):e.write(i,o)}ce.prototype.string=function(e){var o=Ae.Buffer.byteLength(e);return this.uint32(o),o&&this._push(ch,o,e),this};ce._configure()});var oi=mt((Zy,Au)=>{\"use strict\";Au.exports=ct;var ee=Se(),ni,Ou=ee.LongBits,ph=ee.utf8;function re(i,e){return RangeError(\"index out of range: \"+i.pos+\" + \"+(e||1)+\" > \"+i.len)}function ct(i){this.buf=i,this.pos=0,this.len=i.length}var Iu=typeof Uint8Array<\"u\"?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new ct(e);throw Error(\"illegal buffer\")}:function(e){if(Array.isArray(e))return new ct(e);throw Error(\"illegal buffer\")},Su=function(){return ee.Buffer?function(o){return(ct.create=function(r){return ee.Buffer.isBuffer(r)?new ni(r):Iu(r)})(o)}:Iu};ct.create=Su();ct.prototype._slice=ee.Array.prototype.subarray||ee.Array.prototype.slice;ct.prototype.uint32=function(){var e=4294967295;return function(){if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,re(this,10);return e}}();ct.prototype.int32=function(){return this.uint32()|0};ct.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(e&1)|0};function ri(){var i=new Ou(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(i.lo=(i.lo|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return i;if(i.lo=(i.lo|(this.buf[this.pos]&127)<<28)>>>0,i.hi=(i.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return i;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw re(this);if(i.lo=(i.lo|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return i}return i.lo=(i.lo|(this.buf[this.pos++]&127)<>>0,i}if(this.len-this.pos>4){for(;e<5;++e)if(i.hi=(i.hi|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return i}else for(;e<5;++e){if(this.pos>=this.len)throw re(this);if(i.hi=(i.hi|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return i}throw Error(\"invalid varint encoding\")}ct.prototype.bool=function(){return this.uint32()!==0};function On(i,e){return(i[e-4]|i[e-3]<<8|i[e-2]<<16|i[e-1]<<24)>>>0}ct.prototype.fixed32=function(){if(this.pos+4>this.len)throw re(this,4);return On(this.buf,this.pos+=4)};ct.prototype.sfixed32=function(){if(this.pos+4>this.len)throw re(this,4);return On(this.buf,this.pos+=4)|0};function _u(){if(this.pos+8>this.len)throw re(this,8);return new Ou(On(this.buf,this.pos+=4),On(this.buf,this.pos+=4))}ct.prototype.float=function(){if(this.pos+4>this.len)throw re(this,4);var e=ee.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e};ct.prototype.double=function(){if(this.pos+8>this.len)throw re(this,4);var e=ee.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e};ct.prototype.bytes=function(){var e=this.uint32(),o=this.pos,t=this.pos+e;if(t>this.len)throw re(this,e);if(this.pos+=e,Array.isArray(this.buf))return this.buf.slice(o,t);if(o===t){var r=ee.Buffer;return r?r.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,o,t)};ct.prototype.string=function(){var e=this.bytes();return ph.read(e,0,e.length)};ct.prototype.skip=function(e){if(typeof e==\"number\"){if(this.pos+e>this.len)throw re(this,e);this.pos+=e}else do if(this.pos>=this.len)throw re(this);while(this.buf[this.pos++]&128);return this};ct.prototype.skipType=function(i){switch(i){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(i=this.uint32()&7)!==4;)this.skipType(i);break;case 5:this.skip(4);break;default:throw Error(\"invalid wire type \"+i+\" at offset \"+this.pos)}return this};ct._configure=function(i){ni=i,ct.create=Su(),ni._configure();var e=ee.Long?\"toLong\":\"toNumber\";ee.merge(ct.prototype,{int64:function(){return ri.call(this)[e](!1)},uint64:function(){return ri.call(this)[e](!0)},sint64:function(){return ri.call(this).zzDecode()[e](!1)},fixed64:function(){return _u.call(this)[e](!0)},sfixed64:function(){return _u.call(this)[e](!1)}})}});var Lu=mt((Qy,Du)=>{\"use strict\";Du.exports=Ge;var Eu=oi();(Ge.prototype=Object.create(Eu.prototype)).constructor=Ge;var Pu=Se();function Ge(i){Eu.call(this,i)}Ge._configure=function(){Pu.Buffer&&(Ge.prototype._slice=Pu.Buffer.prototype.slice)};Ge.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString(\"utf-8\",this.pos,this.pos=Math.min(this.pos+e,this.len))};Ge._configure()});var ku=mt((tx,$u)=>{\"use strict\";$u.exports=Lr;var ii=Se();(Lr.prototype=Object.create(ii.EventEmitter.prototype)).constructor=Lr;function Lr(i,e,o){if(typeof i!=\"function\")throw TypeError(\"rpcImpl must be a function\");ii.EventEmitter.call(this),this.rpcImpl=i,this.requestDelimited=!!e,this.responseDelimited=!!o}Lr.prototype.rpcCall=function i(e,o,t,r,n){if(!r)throw TypeError(\"request must be specified\");var s=this;if(!n)return ii.asPromise(i,s,e,o,t,r);if(!s.rpcImpl){setTimeout(function(){n(Error(\"already ended\"))},0);return}try{return s.rpcImpl(e,o[s.requestDelimited?\"encodeDelimited\":\"encode\"](r).finish(),function(u,l){if(u)return s.emit(\"error\",u,e),n(u);if(l===null){s.end(!0);return}if(!(l instanceof t))try{l=t[s.responseDelimited?\"decodeDelimited\":\"decode\"](l)}catch(f){return s.emit(\"error\",f,e),n(f)}return s.emit(\"data\",l,e),n(null,l)})}catch(a){s.emit(\"error\",a,e),setTimeout(function(){n(a)},0);return}};Lr.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit(\"end\").off()),this}});var Fu=mt(Bu=>{\"use strict\";var dh=Bu;dh.Service=ku()});var Nu=mt((rx,Cu)=>{\"use strict\";Cu.exports={}});var Mu=mt(Gu=>{\"use strict\";var Nt=Gu;Nt.build=\"minimal\";Nt.Writer=ei();Nt.BufferWriter=vu();Nt.Reader=oi();Nt.BufferReader=Lu();Nt.util=Se();Nt.rpc=Fu();Nt.roots=Nu();Nt.configure=Ru;function Ru(){Nt.util._configure(),Nt.Writer._configure(Nt.BufferWriter),Nt.Reader._configure(Nt.BufferReader)}Ru()});var Vu=mt((ox,Uu)=>{\"use strict\";Uu.exports=Mu()});var sr=mt((ix,zu)=>{\"use strict\";var nt=Vu(),$=nt.Reader,pt=nt.Writer,b=nt.util,h=nt.roots.default||(nt.roots.default={});h.onnx=function(){var i={};return i.Version=function(){var e={},o=Object.create(e);return o[e[0]=\"_START_VERSION\"]=0,o[e[1]=\"IR_VERSION_2017_10_10\"]=1,o[e[2]=\"IR_VERSION_2017_10_30\"]=2,o[e[3]=\"IR_VERSION_2017_11_3\"]=3,o[e[4]=\"IR_VERSION_2019_1_22\"]=4,o[e[5]=\"IR_VERSION_2019_3_18\"]=5,o[e[6]=\"IR_VERSION_2019_9_19\"]=6,o[e[7]=\"IR_VERSION_2020_5_8\"]=7,o[e[8]=\"IR_VERSION_2021_7_30\"]=8,o[e[9]=\"IR_VERSION\"]=9,o}(),i.AttributeProto=function(){function e(o){if(this.floats=[],this.ints=[],this.strings=[],this.tensors=[],this.graphs=[],this.sparseTensors=[],this.typeProtos=[],o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.name=t.string();break}case 21:{s.refAttrName=t.string();break}case 13:{s.docString=t.string();break}case 20:{s.type=t.int32();break}case 2:{s.f=t.float();break}case 3:{s.i=t.int64();break}case 4:{s.s=t.bytes();break}case 5:{s.t=h.onnx.TensorProto.decode(t,t.uint32());break}case 6:{s.g=h.onnx.GraphProto.decode(t,t.uint32());break}case 22:{s.sparseTensor=h.onnx.SparseTensorProto.decode(t,t.uint32());break}case 14:{s.tp=h.onnx.TypeProto.decode(t,t.uint32());break}case 7:{if(s.floats&&s.floats.length||(s.floats=[]),(a&7)===2)for(var u=t.uint32()+t.pos;t.pos>>0,t.i.high>>>0).toNumber())),t.s!=null&&(typeof t.s==\"string\"?b.base64.decode(t.s,r.s=b.newBuffer(b.base64.length(t.s)),0):t.s.length>=0&&(r.s=t.s)),t.t!=null){if(typeof t.t!=\"object\")throw TypeError(\".onnx.AttributeProto.t: object expected\");r.t=h.onnx.TensorProto.fromObject(t.t)}if(t.g!=null){if(typeof t.g!=\"object\")throw TypeError(\".onnx.AttributeProto.g: object expected\");r.g=h.onnx.GraphProto.fromObject(t.g)}if(t.sparseTensor!=null){if(typeof t.sparseTensor!=\"object\")throw TypeError(\".onnx.AttributeProto.sparseTensor: object expected\");r.sparseTensor=h.onnx.SparseTensorProto.fromObject(t.sparseTensor)}if(t.tp!=null){if(typeof t.tp!=\"object\")throw TypeError(\".onnx.AttributeProto.tp: object expected\");r.tp=h.onnx.TypeProto.fromObject(t.tp)}if(t.floats){if(!Array.isArray(t.floats))throw TypeError(\".onnx.AttributeProto.floats: array expected\");r.floats=[];for(var n=0;n>>0,t.ints[n].high>>>0).toNumber())}if(t.strings){if(!Array.isArray(t.strings))throw TypeError(\".onnx.AttributeProto.strings: array expected\");r.strings=[];for(var n=0;n=0&&(r.strings[n]=t.strings[n])}if(t.tensors){if(!Array.isArray(t.tensors))throw TypeError(\".onnx.AttributeProto.tensors: array expected\");r.tensors=[];for(var n=0;n>>0,t.i.high>>>0).toNumber():t.i),t.s!=null&&t.hasOwnProperty(\"s\")&&(n.s=r.bytes===String?b.base64.encode(t.s,0,t.s.length):r.bytes===Array?Array.prototype.slice.call(t.s):t.s),t.t!=null&&t.hasOwnProperty(\"t\")&&(n.t=h.onnx.TensorProto.toObject(t.t,r)),t.g!=null&&t.hasOwnProperty(\"g\")&&(n.g=h.onnx.GraphProto.toObject(t.g,r)),t.floats&&t.floats.length){n.floats=[];for(var a=0;a>>0,t.ints[a].high>>>0).toNumber():t.ints[a]}if(t.strings&&t.strings.length){n.strings=[];for(var a=0;a>>3){case 1:{s.name=t.string();break}case 2:{s.type=h.onnx.TypeProto.decode(t,t.uint32());break}case 3:{s.docString=t.string();break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.name!=null&&t.hasOwnProperty(\"name\")&&!b.isString(t.name))return\"name: string expected\";if(t.type!=null&&t.hasOwnProperty(\"type\")){var r=h.onnx.TypeProto.verify(t.type);if(r)return\"type.\"+r}return t.docString!=null&&t.hasOwnProperty(\"docString\")&&!b.isString(t.docString)?\"docString: string expected\":null},e.fromObject=function(t){if(t instanceof h.onnx.ValueInfoProto)return t;var r=new h.onnx.ValueInfoProto;if(t.name!=null&&(r.name=String(t.name)),t.type!=null){if(typeof t.type!=\"object\")throw TypeError(\".onnx.ValueInfoProto.type: object expected\");r.type=h.onnx.TypeProto.fromObject(t.type)}return t.docString!=null&&(r.docString=String(t.docString)),r},e.toObject=function(t,r){r||(r={});var n={};return r.defaults&&(n.name=\"\",n.type=null,n.docString=\"\"),t.name!=null&&t.hasOwnProperty(\"name\")&&(n.name=t.name),t.type!=null&&t.hasOwnProperty(\"type\")&&(n.type=h.onnx.TypeProto.toObject(t.type,r)),t.docString!=null&&t.hasOwnProperty(\"docString\")&&(n.docString=t.docString),n},e.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},e.getTypeUrl=function(t){return t===void 0&&(t=\"type.googleapis.com\"),t+\"/onnx.ValueInfoProto\"},e}(),i.NodeProto=function(){function e(o){if(this.input=[],this.output=[],this.attribute=[],o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.input&&s.input.length||(s.input=[]),s.input.push(t.string());break}case 2:{s.output&&s.output.length||(s.output=[]),s.output.push(t.string());break}case 3:{s.name=t.string();break}case 4:{s.opType=t.string();break}case 7:{s.domain=t.string();break}case 5:{s.attribute&&s.attribute.length||(s.attribute=[]),s.attribute.push(h.onnx.AttributeProto.decode(t,t.uint32()));break}case 6:{s.docString=t.string();break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.input!=null&&t.hasOwnProperty(\"input\")){if(!Array.isArray(t.input))return\"input: array expected\";for(var r=0;r>>3){case 1:{s.initialization=h.onnx.GraphProto.decode(t,t.uint32());break}case 2:{s.algorithm=h.onnx.GraphProto.decode(t,t.uint32());break}case 3:{s.initializationBinding&&s.initializationBinding.length||(s.initializationBinding=[]),s.initializationBinding.push(h.onnx.StringStringEntryProto.decode(t,t.uint32()));break}case 4:{s.updateBinding&&s.updateBinding.length||(s.updateBinding=[]),s.updateBinding.push(h.onnx.StringStringEntryProto.decode(t,t.uint32()));break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.initialization!=null&&t.hasOwnProperty(\"initialization\")){var r=h.onnx.GraphProto.verify(t.initialization);if(r)return\"initialization.\"+r}if(t.algorithm!=null&&t.hasOwnProperty(\"algorithm\")){var r=h.onnx.GraphProto.verify(t.algorithm);if(r)return\"algorithm.\"+r}if(t.initializationBinding!=null&&t.hasOwnProperty(\"initializationBinding\")){if(!Array.isArray(t.initializationBinding))return\"initializationBinding: array expected\";for(var n=0;n>>3){case 1:{s.irVersion=t.int64();break}case 8:{s.opsetImport&&s.opsetImport.length||(s.opsetImport=[]),s.opsetImport.push(h.onnx.OperatorSetIdProto.decode(t,t.uint32()));break}case 2:{s.producerName=t.string();break}case 3:{s.producerVersion=t.string();break}case 4:{s.domain=t.string();break}case 5:{s.modelVersion=t.int64();break}case 6:{s.docString=t.string();break}case 7:{s.graph=h.onnx.GraphProto.decode(t,t.uint32());break}case 14:{s.metadataProps&&s.metadataProps.length||(s.metadataProps=[]),s.metadataProps.push(h.onnx.StringStringEntryProto.decode(t,t.uint32()));break}case 20:{s.trainingInfo&&s.trainingInfo.length||(s.trainingInfo=[]),s.trainingInfo.push(h.onnx.TrainingInfoProto.decode(t,t.uint32()));break}case 25:{s.functions&&s.functions.length||(s.functions=[]),s.functions.push(h.onnx.FunctionProto.decode(t,t.uint32()));break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.irVersion!=null&&t.hasOwnProperty(\"irVersion\")&&!b.isInteger(t.irVersion)&&!(t.irVersion&&b.isInteger(t.irVersion.low)&&b.isInteger(t.irVersion.high)))return\"irVersion: integer|Long expected\";if(t.opsetImport!=null&&t.hasOwnProperty(\"opsetImport\")){if(!Array.isArray(t.opsetImport))return\"opsetImport: array expected\";for(var r=0;r>>0,t.irVersion.high>>>0).toNumber())),t.opsetImport){if(!Array.isArray(t.opsetImport))throw TypeError(\".onnx.ModelProto.opsetImport: array expected\");r.opsetImport=[];for(var n=0;n>>0,t.modelVersion.high>>>0).toNumber())),t.docString!=null&&(r.docString=String(t.docString)),t.graph!=null){if(typeof t.graph!=\"object\")throw TypeError(\".onnx.ModelProto.graph: object expected\");r.graph=h.onnx.GraphProto.fromObject(t.graph)}if(t.metadataProps){if(!Array.isArray(t.metadataProps))throw TypeError(\".onnx.ModelProto.metadataProps: array expected\");r.metadataProps=[];for(var n=0;n>>0,t.irVersion.high>>>0).toNumber():t.irVersion),t.producerName!=null&&t.hasOwnProperty(\"producerName\")&&(n.producerName=t.producerName),t.producerVersion!=null&&t.hasOwnProperty(\"producerVersion\")&&(n.producerVersion=t.producerVersion),t.domain!=null&&t.hasOwnProperty(\"domain\")&&(n.domain=t.domain),t.modelVersion!=null&&t.hasOwnProperty(\"modelVersion\")&&(typeof t.modelVersion==\"number\"?n.modelVersion=r.longs===String?String(t.modelVersion):t.modelVersion:n.modelVersion=r.longs===String?b.Long.prototype.toString.call(t.modelVersion):r.longs===Number?new b.LongBits(t.modelVersion.low>>>0,t.modelVersion.high>>>0).toNumber():t.modelVersion),t.docString!=null&&t.hasOwnProperty(\"docString\")&&(n.docString=t.docString),t.graph!=null&&t.hasOwnProperty(\"graph\")&&(n.graph=h.onnx.GraphProto.toObject(t.graph,r)),t.opsetImport&&t.opsetImport.length){n.opsetImport=[];for(var a=0;a>>3){case 1:{s.key=t.string();break}case 2:{s.value=t.string();break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){return typeof t!=\"object\"||t===null?\"object expected\":t.key!=null&&t.hasOwnProperty(\"key\")&&!b.isString(t.key)?\"key: string expected\":t.value!=null&&t.hasOwnProperty(\"value\")&&!b.isString(t.value)?\"value: string expected\":null},e.fromObject=function(t){if(t instanceof h.onnx.StringStringEntryProto)return t;var r=new h.onnx.StringStringEntryProto;return t.key!=null&&(r.key=String(t.key)),t.value!=null&&(r.value=String(t.value)),r},e.toObject=function(t,r){r||(r={});var n={};return r.defaults&&(n.key=\"\",n.value=\"\"),t.key!=null&&t.hasOwnProperty(\"key\")&&(n.key=t.key),t.value!=null&&t.hasOwnProperty(\"value\")&&(n.value=t.value),n},e.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},e.getTypeUrl=function(t){return t===void 0&&(t=\"type.googleapis.com\"),t+\"/onnx.StringStringEntryProto\"},e}(),i.TensorAnnotation=function(){function e(o){if(this.quantParameterTensorNames=[],o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.tensorName=t.string();break}case 2:{s.quantParameterTensorNames&&s.quantParameterTensorNames.length||(s.quantParameterTensorNames=[]),s.quantParameterTensorNames.push(h.onnx.StringStringEntryProto.decode(t,t.uint32()));break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.tensorName!=null&&t.hasOwnProperty(\"tensorName\")&&!b.isString(t.tensorName))return\"tensorName: string expected\";if(t.quantParameterTensorNames!=null&&t.hasOwnProperty(\"quantParameterTensorNames\")){if(!Array.isArray(t.quantParameterTensorNames))return\"quantParameterTensorNames: array expected\";for(var r=0;r>>3){case 1:{s.node&&s.node.length||(s.node=[]),s.node.push(h.onnx.NodeProto.decode(t,t.uint32()));break}case 2:{s.name=t.string();break}case 5:{s.initializer&&s.initializer.length||(s.initializer=[]),s.initializer.push(h.onnx.TensorProto.decode(t,t.uint32()));break}case 15:{s.sparseInitializer&&s.sparseInitializer.length||(s.sparseInitializer=[]),s.sparseInitializer.push(h.onnx.SparseTensorProto.decode(t,t.uint32()));break}case 10:{s.docString=t.string();break}case 11:{s.input&&s.input.length||(s.input=[]),s.input.push(h.onnx.ValueInfoProto.decode(t,t.uint32()));break}case 12:{s.output&&s.output.length||(s.output=[]),s.output.push(h.onnx.ValueInfoProto.decode(t,t.uint32()));break}case 13:{s.valueInfo&&s.valueInfo.length||(s.valueInfo=[]),s.valueInfo.push(h.onnx.ValueInfoProto.decode(t,t.uint32()));break}case 14:{s.quantizationAnnotation&&s.quantizationAnnotation.length||(s.quantizationAnnotation=[]),s.quantizationAnnotation.push(h.onnx.TensorAnnotation.decode(t,t.uint32()));break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.node!=null&&t.hasOwnProperty(\"node\")){if(!Array.isArray(t.node))return\"node: array expected\";for(var r=0;r>>3){case 1:{if(s.dims&&s.dims.length||(s.dims=[]),(a&7)===2)for(var u=t.uint32()+t.pos;t.pos>>0,t.dims[n].high>>>0).toNumber())}if(t.dataType!=null&&(r.dataType=t.dataType|0),t.segment!=null){if(typeof t.segment!=\"object\")throw TypeError(\".onnx.TensorProto.segment: object expected\");r.segment=h.onnx.TensorProto.Segment.fromObject(t.segment)}if(t.floatData){if(!Array.isArray(t.floatData))throw TypeError(\".onnx.TensorProto.floatData: array expected\");r.floatData=[];for(var n=0;n=0&&(r.stringData[n]=t.stringData[n])}if(t.int64Data){if(!Array.isArray(t.int64Data))throw TypeError(\".onnx.TensorProto.int64Data: array expected\");r.int64Data=[];for(var n=0;n>>0,t.int64Data[n].high>>>0).toNumber())}if(t.name!=null&&(r.name=String(t.name)),t.docString!=null&&(r.docString=String(t.docString)),t.rawData!=null&&(typeof t.rawData==\"string\"?b.base64.decode(t.rawData,r.rawData=b.newBuffer(b.base64.length(t.rawData)),0):t.rawData.length>=0&&(r.rawData=t.rawData)),t.externalData){if(!Array.isArray(t.externalData))throw TypeError(\".onnx.TensorProto.externalData: array expected\");r.externalData=[];for(var n=0;n>>0,t.uint64Data[n].high>>>0).toNumber(!0))}return r},e.toObject=function(t,r){r||(r={});var n={};if((r.arrays||r.defaults)&&(n.dims=[],n.floatData=[],n.int32Data=[],n.stringData=[],n.int64Data=[],n.doubleData=[],n.uint64Data=[],n.externalData=[]),r.defaults&&(n.dataType=0,n.segment=null,n.name=\"\",r.bytes===String?n.rawData=\"\":(n.rawData=[],r.bytes!==Array&&(n.rawData=b.newBuffer(n.rawData))),n.docString=\"\",n.dataLocation=r.enums===String?\"DEFAULT\":0),t.dims&&t.dims.length){n.dims=[];for(var s=0;s>>0,t.dims[s].high>>>0).toNumber():t.dims[s]}if(t.dataType!=null&&t.hasOwnProperty(\"dataType\")&&(n.dataType=t.dataType),t.segment!=null&&t.hasOwnProperty(\"segment\")&&(n.segment=h.onnx.TensorProto.Segment.toObject(t.segment,r)),t.floatData&&t.floatData.length){n.floatData=[];for(var s=0;s>>0,t.int64Data[s].high>>>0).toNumber():t.int64Data[s]}if(t.name!=null&&t.hasOwnProperty(\"name\")&&(n.name=t.name),t.rawData!=null&&t.hasOwnProperty(\"rawData\")&&(n.rawData=r.bytes===String?b.base64.encode(t.rawData,0,t.rawData.length):r.bytes===Array?Array.prototype.slice.call(t.rawData):t.rawData),t.doubleData&&t.doubleData.length){n.doubleData=[];for(var s=0;s>>0,t.uint64Data[s].high>>>0).toNumber(!0):t.uint64Data[s]}if(t.docString!=null&&t.hasOwnProperty(\"docString\")&&(n.docString=t.docString),t.externalData&&t.externalData.length){n.externalData=[];for(var s=0;s>>3){case 1:{a.begin=r.int64();break}case 2:{a.end=r.int64();break}default:r.skipType(u&7);break}}return a},o.decodeDelimited=function(r){return r instanceof $||(r=new $(r)),this.decode(r,r.uint32())},o.verify=function(r){return typeof r!=\"object\"||r===null?\"object expected\":r.begin!=null&&r.hasOwnProperty(\"begin\")&&!b.isInteger(r.begin)&&!(r.begin&&b.isInteger(r.begin.low)&&b.isInteger(r.begin.high))?\"begin: integer|Long expected\":r.end!=null&&r.hasOwnProperty(\"end\")&&!b.isInteger(r.end)&&!(r.end&&b.isInteger(r.end.low)&&b.isInteger(r.end.high))?\"end: integer|Long expected\":null},o.fromObject=function(r){if(r instanceof h.onnx.TensorProto.Segment)return r;var n=new h.onnx.TensorProto.Segment;return r.begin!=null&&(b.Long?(n.begin=b.Long.fromValue(r.begin)).unsigned=!1:typeof r.begin==\"string\"?n.begin=parseInt(r.begin,10):typeof r.begin==\"number\"?n.begin=r.begin:typeof r.begin==\"object\"&&(n.begin=new b.LongBits(r.begin.low>>>0,r.begin.high>>>0).toNumber())),r.end!=null&&(b.Long?(n.end=b.Long.fromValue(r.end)).unsigned=!1:typeof r.end==\"string\"?n.end=parseInt(r.end,10):typeof r.end==\"number\"?n.end=r.end:typeof r.end==\"object\"&&(n.end=new b.LongBits(r.end.low>>>0,r.end.high>>>0).toNumber())),n},o.toObject=function(r,n){n||(n={});var s={};if(n.defaults){if(b.Long){var a=new b.Long(0,0,!1);s.begin=n.longs===String?a.toString():n.longs===Number?a.toNumber():a}else s.begin=n.longs===String?\"0\":0;if(b.Long){var a=new b.Long(0,0,!1);s.end=n.longs===String?a.toString():n.longs===Number?a.toNumber():a}else s.end=n.longs===String?\"0\":0}return r.begin!=null&&r.hasOwnProperty(\"begin\")&&(typeof r.begin==\"number\"?s.begin=n.longs===String?String(r.begin):r.begin:s.begin=n.longs===String?b.Long.prototype.toString.call(r.begin):n.longs===Number?new b.LongBits(r.begin.low>>>0,r.begin.high>>>0).toNumber():r.begin),r.end!=null&&r.hasOwnProperty(\"end\")&&(typeof r.end==\"number\"?s.end=n.longs===String?String(r.end):r.end:s.end=n.longs===String?b.Long.prototype.toString.call(r.end):n.longs===Number?new b.LongBits(r.end.low>>>0,r.end.high>>>0).toNumber():r.end),s},o.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},o.getTypeUrl=function(r){return r===void 0&&(r=\"type.googleapis.com\"),r+\"/onnx.TensorProto.Segment\"},o}(),e.DataLocation=function(){var o={},t=Object.create(o);return t[o[0]=\"DEFAULT\"]=0,t[o[1]=\"EXTERNAL\"]=1,t}(),e}(),i.SparseTensorProto=function(){function e(o){if(this.dims=[],o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.values=h.onnx.TensorProto.decode(t,t.uint32());break}case 2:{s.indices=h.onnx.TensorProto.decode(t,t.uint32());break}case 3:{if(s.dims&&s.dims.length||(s.dims=[]),(a&7)===2)for(var u=t.uint32()+t.pos;t.pos>>0,t.dims[n].high>>>0).toNumber())}return r},e.toObject=function(t,r){r||(r={});var n={};if((r.arrays||r.defaults)&&(n.dims=[]),r.defaults&&(n.values=null,n.indices=null),t.values!=null&&t.hasOwnProperty(\"values\")&&(n.values=h.onnx.TensorProto.toObject(t.values,r)),t.indices!=null&&t.hasOwnProperty(\"indices\")&&(n.indices=h.onnx.TensorProto.toObject(t.indices,r)),t.dims&&t.dims.length){n.dims=[];for(var s=0;s>>0,t.dims[s].high>>>0).toNumber():t.dims[s]}return n},e.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},e.getTypeUrl=function(t){return t===void 0&&(t=\"type.googleapis.com\"),t+\"/onnx.SparseTensorProto\"},e}(),i.TensorShapeProto=function(){function e(o){if(this.dim=[],o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.dim&&s.dim.length||(s.dim=[]),s.dim.push(h.onnx.TensorShapeProto.Dimension.decode(t,t.uint32()));break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.dim!=null&&t.hasOwnProperty(\"dim\")){if(!Array.isArray(t.dim))return\"dim: array expected\";for(var r=0;r>>3){case 1:{u.dimValue=n.int64();break}case 2:{u.dimParam=n.string();break}case 3:{u.denotation=n.string();break}default:n.skipType(l&7);break}}return u},o.decodeDelimited=function(n){return n instanceof $||(n=new $(n)),this.decode(n,n.uint32())},o.verify=function(n){if(typeof n!=\"object\"||n===null)return\"object expected\";var s={};if(n.dimValue!=null&&n.hasOwnProperty(\"dimValue\")&&(s.value=1,!b.isInteger(n.dimValue)&&!(n.dimValue&&b.isInteger(n.dimValue.low)&&b.isInteger(n.dimValue.high))))return\"dimValue: integer|Long expected\";if(n.dimParam!=null&&n.hasOwnProperty(\"dimParam\")){if(s.value===1)return\"value: multiple values\";if(s.value=1,!b.isString(n.dimParam))return\"dimParam: string expected\"}return n.denotation!=null&&n.hasOwnProperty(\"denotation\")&&!b.isString(n.denotation)?\"denotation: string expected\":null},o.fromObject=function(n){if(n instanceof h.onnx.TensorShapeProto.Dimension)return n;var s=new h.onnx.TensorShapeProto.Dimension;return n.dimValue!=null&&(b.Long?(s.dimValue=b.Long.fromValue(n.dimValue)).unsigned=!1:typeof n.dimValue==\"string\"?s.dimValue=parseInt(n.dimValue,10):typeof n.dimValue==\"number\"?s.dimValue=n.dimValue:typeof n.dimValue==\"object\"&&(s.dimValue=new b.LongBits(n.dimValue.low>>>0,n.dimValue.high>>>0).toNumber())),n.dimParam!=null&&(s.dimParam=String(n.dimParam)),n.denotation!=null&&(s.denotation=String(n.denotation)),s},o.toObject=function(n,s){s||(s={});var a={};return s.defaults&&(a.denotation=\"\"),n.dimValue!=null&&n.hasOwnProperty(\"dimValue\")&&(typeof n.dimValue==\"number\"?a.dimValue=s.longs===String?String(n.dimValue):n.dimValue:a.dimValue=s.longs===String?b.Long.prototype.toString.call(n.dimValue):s.longs===Number?new b.LongBits(n.dimValue.low>>>0,n.dimValue.high>>>0).toNumber():n.dimValue,s.oneofs&&(a.value=\"dimValue\")),n.dimParam!=null&&n.hasOwnProperty(\"dimParam\")&&(a.dimParam=n.dimParam,s.oneofs&&(a.value=\"dimParam\")),n.denotation!=null&&n.hasOwnProperty(\"denotation\")&&(a.denotation=n.denotation),a},o.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},o.getTypeUrl=function(n){return n===void 0&&(n=\"type.googleapis.com\"),n+\"/onnx.TensorShapeProto.Dimension\"},o}(),e}(),i.TypeProto=function(){function e(t){if(t)for(var r=Object.keys(t),n=0;n>>3){case 1:{a.tensorType=h.onnx.TypeProto.Tensor.decode(r,r.uint32());break}case 4:{a.sequenceType=h.onnx.TypeProto.Sequence.decode(r,r.uint32());break}case 5:{a.mapType=h.onnx.TypeProto.Map.decode(r,r.uint32());break}case 9:{a.optionalType=h.onnx.TypeProto.Optional.decode(r,r.uint32());break}case 8:{a.sparseTensorType=h.onnx.TypeProto.SparseTensor.decode(r,r.uint32());break}case 6:{a.denotation=r.string();break}default:r.skipType(u&7);break}}return a},e.decodeDelimited=function(r){return r instanceof $||(r=new $(r)),this.decode(r,r.uint32())},e.verify=function(r){if(typeof r!=\"object\"||r===null)return\"object expected\";var n={};if(r.tensorType!=null&&r.hasOwnProperty(\"tensorType\")){n.value=1;{var s=h.onnx.TypeProto.Tensor.verify(r.tensorType);if(s)return\"tensorType.\"+s}}if(r.sequenceType!=null&&r.hasOwnProperty(\"sequenceType\")){if(n.value===1)return\"value: multiple values\";n.value=1;{var s=h.onnx.TypeProto.Sequence.verify(r.sequenceType);if(s)return\"sequenceType.\"+s}}if(r.mapType!=null&&r.hasOwnProperty(\"mapType\")){if(n.value===1)return\"value: multiple values\";n.value=1;{var s=h.onnx.TypeProto.Map.verify(r.mapType);if(s)return\"mapType.\"+s}}if(r.optionalType!=null&&r.hasOwnProperty(\"optionalType\")){if(n.value===1)return\"value: multiple values\";n.value=1;{var s=h.onnx.TypeProto.Optional.verify(r.optionalType);if(s)return\"optionalType.\"+s}}if(r.sparseTensorType!=null&&r.hasOwnProperty(\"sparseTensorType\")){if(n.value===1)return\"value: multiple values\";n.value=1;{var s=h.onnx.TypeProto.SparseTensor.verify(r.sparseTensorType);if(s)return\"sparseTensorType.\"+s}}return r.denotation!=null&&r.hasOwnProperty(\"denotation\")&&!b.isString(r.denotation)?\"denotation: string expected\":null},e.fromObject=function(r){if(r instanceof h.onnx.TypeProto)return r;var n=new h.onnx.TypeProto;if(r.tensorType!=null){if(typeof r.tensorType!=\"object\")throw TypeError(\".onnx.TypeProto.tensorType: object expected\");n.tensorType=h.onnx.TypeProto.Tensor.fromObject(r.tensorType)}if(r.sequenceType!=null){if(typeof r.sequenceType!=\"object\")throw TypeError(\".onnx.TypeProto.sequenceType: object expected\");n.sequenceType=h.onnx.TypeProto.Sequence.fromObject(r.sequenceType)}if(r.mapType!=null){if(typeof r.mapType!=\"object\")throw TypeError(\".onnx.TypeProto.mapType: object expected\");n.mapType=h.onnx.TypeProto.Map.fromObject(r.mapType)}if(r.optionalType!=null){if(typeof r.optionalType!=\"object\")throw TypeError(\".onnx.TypeProto.optionalType: object expected\");n.optionalType=h.onnx.TypeProto.Optional.fromObject(r.optionalType)}if(r.sparseTensorType!=null){if(typeof r.sparseTensorType!=\"object\")throw TypeError(\".onnx.TypeProto.sparseTensorType: object expected\");n.sparseTensorType=h.onnx.TypeProto.SparseTensor.fromObject(r.sparseTensorType)}return r.denotation!=null&&(n.denotation=String(r.denotation)),n},e.toObject=function(r,n){n||(n={});var s={};return n.defaults&&(s.denotation=\"\"),r.tensorType!=null&&r.hasOwnProperty(\"tensorType\")&&(s.tensorType=h.onnx.TypeProto.Tensor.toObject(r.tensorType,n),n.oneofs&&(s.value=\"tensorType\")),r.sequenceType!=null&&r.hasOwnProperty(\"sequenceType\")&&(s.sequenceType=h.onnx.TypeProto.Sequence.toObject(r.sequenceType,n),n.oneofs&&(s.value=\"sequenceType\")),r.mapType!=null&&r.hasOwnProperty(\"mapType\")&&(s.mapType=h.onnx.TypeProto.Map.toObject(r.mapType,n),n.oneofs&&(s.value=\"mapType\")),r.denotation!=null&&r.hasOwnProperty(\"denotation\")&&(s.denotation=r.denotation),r.sparseTensorType!=null&&r.hasOwnProperty(\"sparseTensorType\")&&(s.sparseTensorType=h.onnx.TypeProto.SparseTensor.toObject(r.sparseTensorType,n),n.oneofs&&(s.value=\"sparseTensorType\")),r.optionalType!=null&&r.hasOwnProperty(\"optionalType\")&&(s.optionalType=h.onnx.TypeProto.Optional.toObject(r.optionalType,n),n.oneofs&&(s.value=\"optionalType\")),s},e.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},e.getTypeUrl=function(r){return r===void 0&&(r=\"type.googleapis.com\"),r+\"/onnx.TypeProto\"},e.Tensor=function(){function t(r){if(r)for(var n=Object.keys(r),s=0;s>>3){case 1:{u.elemType=n.int32();break}case 2:{u.shape=h.onnx.TensorShapeProto.decode(n,n.uint32());break}default:n.skipType(l&7);break}}return u},t.decodeDelimited=function(n){return n instanceof $||(n=new $(n)),this.decode(n,n.uint32())},t.verify=function(n){if(typeof n!=\"object\"||n===null)return\"object expected\";if(n.elemType!=null&&n.hasOwnProperty(\"elemType\")&&!b.isInteger(n.elemType))return\"elemType: integer expected\";if(n.shape!=null&&n.hasOwnProperty(\"shape\")){var s=h.onnx.TensorShapeProto.verify(n.shape);if(s)return\"shape.\"+s}return null},t.fromObject=function(n){if(n instanceof h.onnx.TypeProto.Tensor)return n;var s=new h.onnx.TypeProto.Tensor;if(n.elemType!=null&&(s.elemType=n.elemType|0),n.shape!=null){if(typeof n.shape!=\"object\")throw TypeError(\".onnx.TypeProto.Tensor.shape: object expected\");s.shape=h.onnx.TensorShapeProto.fromObject(n.shape)}return s},t.toObject=function(n,s){s||(s={});var a={};return s.defaults&&(a.elemType=0,a.shape=null),n.elemType!=null&&n.hasOwnProperty(\"elemType\")&&(a.elemType=n.elemType),n.shape!=null&&n.hasOwnProperty(\"shape\")&&(a.shape=h.onnx.TensorShapeProto.toObject(n.shape,s)),a},t.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},t.getTypeUrl=function(n){return n===void 0&&(n=\"type.googleapis.com\"),n+\"/onnx.TypeProto.Tensor\"},t}(),e.Sequence=function(){function t(r){if(r)for(var n=Object.keys(r),s=0;s>>3){case 1:{u.elemType=h.onnx.TypeProto.decode(n,n.uint32());break}default:n.skipType(l&7);break}}return u},t.decodeDelimited=function(n){return n instanceof $||(n=new $(n)),this.decode(n,n.uint32())},t.verify=function(n){if(typeof n!=\"object\"||n===null)return\"object expected\";if(n.elemType!=null&&n.hasOwnProperty(\"elemType\")){var s=h.onnx.TypeProto.verify(n.elemType);if(s)return\"elemType.\"+s}return null},t.fromObject=function(n){if(n instanceof h.onnx.TypeProto.Sequence)return n;var s=new h.onnx.TypeProto.Sequence;if(n.elemType!=null){if(typeof n.elemType!=\"object\")throw TypeError(\".onnx.TypeProto.Sequence.elemType: object expected\");s.elemType=h.onnx.TypeProto.fromObject(n.elemType)}return s},t.toObject=function(n,s){s||(s={});var a={};return s.defaults&&(a.elemType=null),n.elemType!=null&&n.hasOwnProperty(\"elemType\")&&(a.elemType=h.onnx.TypeProto.toObject(n.elemType,s)),a},t.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},t.getTypeUrl=function(n){return n===void 0&&(n=\"type.googleapis.com\"),n+\"/onnx.TypeProto.Sequence\"},t}(),e.Map=function(){function t(r){if(r)for(var n=Object.keys(r),s=0;s>>3){case 1:{u.keyType=n.int32();break}case 2:{u.valueType=h.onnx.TypeProto.decode(n,n.uint32());break}default:n.skipType(l&7);break}}return u},t.decodeDelimited=function(n){return n instanceof $||(n=new $(n)),this.decode(n,n.uint32())},t.verify=function(n){if(typeof n!=\"object\"||n===null)return\"object expected\";if(n.keyType!=null&&n.hasOwnProperty(\"keyType\")&&!b.isInteger(n.keyType))return\"keyType: integer expected\";if(n.valueType!=null&&n.hasOwnProperty(\"valueType\")){var s=h.onnx.TypeProto.verify(n.valueType);if(s)return\"valueType.\"+s}return null},t.fromObject=function(n){if(n instanceof h.onnx.TypeProto.Map)return n;var s=new h.onnx.TypeProto.Map;if(n.keyType!=null&&(s.keyType=n.keyType|0),n.valueType!=null){if(typeof n.valueType!=\"object\")throw TypeError(\".onnx.TypeProto.Map.valueType: object expected\");s.valueType=h.onnx.TypeProto.fromObject(n.valueType)}return s},t.toObject=function(n,s){s||(s={});var a={};return s.defaults&&(a.keyType=0,a.valueType=null),n.keyType!=null&&n.hasOwnProperty(\"keyType\")&&(a.keyType=n.keyType),n.valueType!=null&&n.hasOwnProperty(\"valueType\")&&(a.valueType=h.onnx.TypeProto.toObject(n.valueType,s)),a},t.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},t.getTypeUrl=function(n){return n===void 0&&(n=\"type.googleapis.com\"),n+\"/onnx.TypeProto.Map\"},t}(),e.Optional=function(){function t(r){if(r)for(var n=Object.keys(r),s=0;s>>3){case 1:{u.elemType=h.onnx.TypeProto.decode(n,n.uint32());break}default:n.skipType(l&7);break}}return u},t.decodeDelimited=function(n){return n instanceof $||(n=new $(n)),this.decode(n,n.uint32())},t.verify=function(n){if(typeof n!=\"object\"||n===null)return\"object expected\";if(n.elemType!=null&&n.hasOwnProperty(\"elemType\")){var s=h.onnx.TypeProto.verify(n.elemType);if(s)return\"elemType.\"+s}return null},t.fromObject=function(n){if(n instanceof h.onnx.TypeProto.Optional)return n;var s=new h.onnx.TypeProto.Optional;if(n.elemType!=null){if(typeof n.elemType!=\"object\")throw TypeError(\".onnx.TypeProto.Optional.elemType: object expected\");s.elemType=h.onnx.TypeProto.fromObject(n.elemType)}return s},t.toObject=function(n,s){s||(s={});var a={};return s.defaults&&(a.elemType=null),n.elemType!=null&&n.hasOwnProperty(\"elemType\")&&(a.elemType=h.onnx.TypeProto.toObject(n.elemType,s)),a},t.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},t.getTypeUrl=function(n){return n===void 0&&(n=\"type.googleapis.com\"),n+\"/onnx.TypeProto.Optional\"},t}(),e.SparseTensor=function(){function t(r){if(r)for(var n=Object.keys(r),s=0;s>>3){case 1:{u.elemType=n.int32();break}case 2:{u.shape=h.onnx.TensorShapeProto.decode(n,n.uint32());break}default:n.skipType(l&7);break}}return u},t.decodeDelimited=function(n){return n instanceof $||(n=new $(n)),this.decode(n,n.uint32())},t.verify=function(n){if(typeof n!=\"object\"||n===null)return\"object expected\";if(n.elemType!=null&&n.hasOwnProperty(\"elemType\")&&!b.isInteger(n.elemType))return\"elemType: integer expected\";if(n.shape!=null&&n.hasOwnProperty(\"shape\")){var s=h.onnx.TensorShapeProto.verify(n.shape);if(s)return\"shape.\"+s}return null},t.fromObject=function(n){if(n instanceof h.onnx.TypeProto.SparseTensor)return n;var s=new h.onnx.TypeProto.SparseTensor;if(n.elemType!=null&&(s.elemType=n.elemType|0),n.shape!=null){if(typeof n.shape!=\"object\")throw TypeError(\".onnx.TypeProto.SparseTensor.shape: object expected\");s.shape=h.onnx.TensorShapeProto.fromObject(n.shape)}return s},t.toObject=function(n,s){s||(s={});var a={};return s.defaults&&(a.elemType=0,a.shape=null),n.elemType!=null&&n.hasOwnProperty(\"elemType\")&&(a.elemType=n.elemType),n.shape!=null&&n.hasOwnProperty(\"shape\")&&(a.shape=h.onnx.TensorShapeProto.toObject(n.shape,s)),a},t.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},t.getTypeUrl=function(n){return n===void 0&&(n=\"type.googleapis.com\"),n+\"/onnx.TypeProto.SparseTensor\"},t}(),e}(),i.OperatorSetIdProto=function(){function e(o){if(o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.domain=t.string();break}case 2:{s.version=t.int64();break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){return typeof t!=\"object\"||t===null?\"object expected\":t.domain!=null&&t.hasOwnProperty(\"domain\")&&!b.isString(t.domain)?\"domain: string expected\":t.version!=null&&t.hasOwnProperty(\"version\")&&!b.isInteger(t.version)&&!(t.version&&b.isInteger(t.version.low)&&b.isInteger(t.version.high))?\"version: integer|Long expected\":null},e.fromObject=function(t){if(t instanceof h.onnx.OperatorSetIdProto)return t;var r=new h.onnx.OperatorSetIdProto;return t.domain!=null&&(r.domain=String(t.domain)),t.version!=null&&(b.Long?(r.version=b.Long.fromValue(t.version)).unsigned=!1:typeof t.version==\"string\"?r.version=parseInt(t.version,10):typeof t.version==\"number\"?r.version=t.version:typeof t.version==\"object\"&&(r.version=new b.LongBits(t.version.low>>>0,t.version.high>>>0).toNumber())),r},e.toObject=function(t,r){r||(r={});var n={};if(r.defaults)if(n.domain=\"\",b.Long){var s=new b.Long(0,0,!1);n.version=r.longs===String?s.toString():r.longs===Number?s.toNumber():s}else n.version=r.longs===String?\"0\":0;return t.domain!=null&&t.hasOwnProperty(\"domain\")&&(n.domain=t.domain),t.version!=null&&t.hasOwnProperty(\"version\")&&(typeof t.version==\"number\"?n.version=r.longs===String?String(t.version):t.version:n.version=r.longs===String?b.Long.prototype.toString.call(t.version):r.longs===Number?new b.LongBits(t.version.low>>>0,t.version.high>>>0).toNumber():t.version),n},e.prototype.toJSON=function(){return this.constructor.toObject(this,nt.util.toJSONOptions)},e.getTypeUrl=function(t){return t===void 0&&(t=\"type.googleapis.com\"),t+\"/onnx.OperatorSetIdProto\"},e}(),i.OperatorStatus=function(){var e={},o=Object.create(e);return o[e[0]=\"EXPERIMENTAL\"]=0,o[e[1]=\"STABLE\"]=1,o}(),i.FunctionProto=function(){function e(o){if(this.input=[],this.output=[],this.attribute=[],this.attributeProto=[],this.node=[],this.opsetImport=[],o)for(var t=Object.keys(o),r=0;r>>3){case 1:{s.name=t.string();break}case 4:{s.input&&s.input.length||(s.input=[]),s.input.push(t.string());break}case 5:{s.output&&s.output.length||(s.output=[]),s.output.push(t.string());break}case 6:{s.attribute&&s.attribute.length||(s.attribute=[]),s.attribute.push(t.string());break}case 11:{s.attributeProto&&s.attributeProto.length||(s.attributeProto=[]),s.attributeProto.push(h.onnx.AttributeProto.decode(t,t.uint32()));break}case 7:{s.node&&s.node.length||(s.node=[]),s.node.push(h.onnx.NodeProto.decode(t,t.uint32()));break}case 8:{s.docString=t.string();break}case 9:{s.opsetImport&&s.opsetImport.length||(s.opsetImport=[]),s.opsetImport.push(h.onnx.OperatorSetIdProto.decode(t,t.uint32()));break}case 10:{s.domain=t.string();break}default:t.skipType(a&7);break}}return s},e.decodeDelimited=function(t){return t instanceof $||(t=new $(t)),this.decode(t,t.uint32())},e.verify=function(t){if(typeof t!=\"object\"||t===null)return\"object expected\";if(t.name!=null&&t.hasOwnProperty(\"name\")&&!b.isString(t.name))return\"name: string expected\";if(t.input!=null&&t.hasOwnProperty(\"input\")){if(!Array.isArray(t.input))return\"input: array expected\";for(var r=0;r{\"use strict\";wn();qo();ot=rr(sr());We();Me=class{static arraysEqual(e,o){if(e.length!==o.length)return!1;for(let t=0;t1&&f>1)return;a[s-u]=Math.max(l,f)}return a}static index(e,o){let t=new Array(o.length);return i.fillIndex(e,o,t),t}static fillIndex(e,o,t){let r=e.length-o.length;for(let n=0;n=0;P--)l[P]=S%s[P],S=Math.floor(S/s[P]);T||(i.fillIndex(l,e.dims,f),d=e.get(f)),v||(i.fillIndex(l,o.dims,p),y=o.get(p)),u.set(l,t(d,y))}}return u}}static isValidBroadcast(e,o){let t=e.length,r=o.length;if(t>r)return!1;for(let n=1;n<=t;n++)if(e[t-n]!==1&&e[t-n]!==o[r-n])return!1;return!0}static getBroadcastDims(e,o){let t=e.length,r=[];for(let n=0;n1&&a===1&&r.unshift(s)}return r}},Sn=class{static getShapeOfGemmResult(e,o,t,r,n){if(e.length!==2||t.length!==2)throw new Error(\"shape need to be of size 2\");let s,a,u;o?(s=e[1],a=e[0]):(s=e[0],a=e[1]);let l=-1;if(r?(u=t[0],l=1):(u=t[1],l=0),t[l]!==a)throw new Error(\"dimension mismatch\");if(s<=0||u<=0||a<=0)throw new Error(\"invalid shape specified\");if(n&&!kt.isValidBroadcast(n,[s,u]))throw new Error(\"gemm: invalid bias shape for broadcast\");return[s,u,a]}},At=class i{static tensorDataTypeFromProto(e){switch(e){case ot.onnx.TensorProto.DataType.INT8:return\"int8\";case ot.onnx.TensorProto.DataType.UINT8:return\"uint8\";case ot.onnx.TensorProto.DataType.BOOL:return\"bool\";case ot.onnx.TensorProto.DataType.INT16:return\"int16\";case ot.onnx.TensorProto.DataType.UINT16:return\"uint16\";case ot.onnx.TensorProto.DataType.INT32:return\"int32\";case ot.onnx.TensorProto.DataType.UINT32:return\"uint32\";case ot.onnx.TensorProto.DataType.FLOAT:return\"float32\";case ot.onnx.TensorProto.DataType.DOUBLE:return\"float64\";case ot.onnx.TensorProto.DataType.STRING:return\"string\";case ot.onnx.TensorProto.DataType.INT64:return\"int32\";case ot.onnx.TensorProto.DataType.UINT64:return\"uint32\";default:throw new Error(`unsupported data type: ${ot.onnx.TensorProto.DataType[e]}`)}}static tensorDataTypeStringToEnum(e){switch(e){case\"int8\":return ot.onnx.TensorProto.DataType.INT8;case\"uint8\":return ot.onnx.TensorProto.DataType.UINT8;case\"bool\":return ot.onnx.TensorProto.DataType.BOOL;case\"int16\":return ot.onnx.TensorProto.DataType.INT16;case\"uint16\":return ot.onnx.TensorProto.DataType.UINT16;case\"int32\":return ot.onnx.TensorProto.DataType.INT32;case\"uint32\":return ot.onnx.TensorProto.DataType.UINT32;case\"float32\":return ot.onnx.TensorProto.DataType.FLOAT;case\"float64\":return ot.onnx.TensorProto.DataType.DOUBLE;case\"string\":return ot.onnx.TensorProto.DataType.STRING;case\"int64\":return ot.onnx.TensorProto.DataType.INT64;case\"uint64\":return ot.onnx.TensorProto.DataType.UINT64;default:throw new Error(`unsupported data type: ${e}`)}}static tensorDimsFromProto(e){return e.map(o=>xe.isLong(o)?o.toNumber():o)}static tensorValueTypeFromProto(e){return{tensorType:i.tensorDataTypeFromProto(e.elemType),shape:{dims:i.tensorDimsFromProto(e.shape.dim.map(o=>o.dimValue))}}}static tensorDimsFromORTFormat(e){let o=[];for(let t=0;te.length)throw new Error(`invalid dimension of ${o} for sizeFromDimension as Tensor has ${e.length} dimensions.`);return i.getSizeFromDimensionRange(e,o,e.length)}static sizeToDimension(e,o){if(o<0||o>e.length)throw new Error(`invalid dimension of ${o} for sizeToDimension as Tensor has ${e.length} dimensions.`);return i.getSizeFromDimensionRange(e,0,o)}static getSizeFromDimensionRange(e,o,t){let r=1;for(let n=o;n=0;--r)t[r]=t[r+1]*e[r+1];return t}static transpose(e){return e.slice().reverse()}static indicesToOffset(e,o,t){t===void 0&&(t=e.length);let r=0;for(let n=0;n=o)throw new Error(\"unsupported axis for this operation.\");return e<0?e+o:e}static normalizeAxes(e,o){return e.map(t=>this.normalizeAxis(t,o))}static incrementIndex(e,o,t){if(o.length===0||e.length===0)throw new Error(\"Index incrementing unsupported for scalar Tensor\");if(t===void 0)t=o.length;else if(t<=0||t>o.length)throw new Error(\"Incorrect axis to increment on\");for(let r=t-1;r>=0&&(e[r]++,!(e[r]=e.length)throw new Error(\"the dimension with value zero exceeds the dimension size of the input tensor\");r[u]=e[u]}else r[u]=o[u];s*=r[u]}}let a=i.size(e);if(n!==-1){if(a%s!==0)throw new Error(`the input tensor cannot be reshaped to the requested shape. Input shape: [${e}] Output shape: [${o}]`);r[n]=a/s}else if(s!==a)throw new Error(\"reshapedDims and originalDims don't have matching sizes\");return r}static sortBasedOnPerm(e,o){return o?o.map(t=>e[t]):e.slice().reverse()}static padShape(e,o){let t=e.length;return e.map((r,n)=>r+o[n]+o[n+t])}static areEqual(e,o){return e.length!==o.length?!1:e.every((t,r)=>t===o[r])}static validateDimsAndCalcSize(e){if(e.length>6)throw new TypeError(\"Only rank 0 to 6 is supported for tensor shape.\");let o=1;for(let t of e){if(!Number.isInteger(t))throw new TypeError(`Invalid shape: ${t} is not an integer`);if(t<0||t>2147483647)throw new TypeError(`Invalid shape: length ${t} is not allowed`);o*=t}return o}static flattenShape(e,o){o<0&&(o+=e.length);let t=e.reduce((s,a)=>s*a,1),r=e.slice(o).reduce((s,a)=>s*a,1);return[t/r,r]}static squeezeShape(e,o){let t=new Array;o=i.normalizeAxes(o,e.length);for(let r=0;r=0;if(n&&e[r]!==1)throw new Error(\"squeeze an axis of size different than 1\");(o.length===0&&e[r]>1||o.length>0&&!n)&&t.push(e[r])}return t}static unsqueezeShape(e,o){let t=new Array(e.length+o.length);t.fill(0);for(let n=0;n=t.length)throw new Error(\"'axes' has an out of range axis\");if(t[s]!==0)throw new Error(\"'axes' has a duplicate axis\");t[s]=1}let r=0;for(let n=0;n=t.length?t.push(o[a+2]):t[a]=o[a+2];for(let a=0;a=t[a]||s[a+t.length]>=t[a])throw new Error(\"pads should be smaller than kernel\")}}static adjustPadsBasedOnAutoPad(e,o,t,r,n,s){if(s){if(n.length!==2*(e.length-2))throw new Error(\"length of pads should be twice the length of data dimensions\");if(o.length!==e.length-2)throw new Error(\"length of strides should be the length of data dimensions\");if(r.length!==e.length-2)throw new Error(\"length of kernel shapes should be the length of data dimensions\");for(let a=0;a{\"use strict\";qu=rr(Fs());qo();Pr();H=rr(sr());Y();si=F.experimental.fbs,bt=class i{constructor(e,o,t,r,n,s=qu.Guid.create()){this.dims=e;this.type=o;this.dataProvider=t;this.asyncDataProvider=r;this.cache=n;this.dataId=s;this.size=B.validateDimsAndCalcSize(e);let a=this.size,u=t===void 0&&r===void 0&&n===void 0;if(n!==void 0&&n.length!==a)throw new RangeError(\"Input dims doesn't match data length.\");if(o===\"string\"){if(n!==void 0&&(!Array.isArray(n)||!n.every(l=>typeof l==\"string\")))throw new TypeError(\"cache should be a string array\");u&&(this.cache=new Array(a))}else{if(n!==void 0){let l=ju(o);if(!(n instanceof l))throw new TypeError(`cache should be type ${l.name}`)}if(u){let l=new ArrayBuffer(a*hh(o));this.cache=mh(l,o)}}}get data(){if(this.cache===void 0){let e=this.dataProvider(this.dataId);if(e.length!==this.size)throw new Error(\"Length of data provided by the Data Provider is inconsistent with the dims of this Tensor.\");this.cache=e}return this.cache}get stringData(){if(this.type!==\"string\")throw new TypeError(\"data type is not string\");return this.data}get integerData(){switch(this.type){case\"uint8\":case\"int8\":case\"uint16\":case\"int16\":case\"int32\":case\"uint32\":case\"bool\":return this.data;default:throw new TypeError(\"data type is not integer (uint8, int8, uint16, int16, int32, uint32, bool)\")}}get floatData(){switch(this.type){case\"float32\":case\"float64\":return this.data;default:throw new TypeError(\"data type is not float (float32, float64)\")}}get numberData(){if(this.type!==\"string\")return this.data;throw new TypeError(\"type cannot be non-number (string)\")}get(e){return this.data[B.indicesToOffset(e,this.strides)]}set(e,o){this.data[B.indicesToOffset(e,this.strides)]=o}async getData(){return this.cache===void 0&&(this.cache=await this.asyncDataProvider(this.dataId)),this.cache}get strides(){return this._strides||(this._strides=B.computeStrides(this.dims)),this._strides}static fromProto(e){if(!e)throw new Error(\"cannot construct Value from an empty tensor\");let o=At.tensorDataTypeFromProto(e.dataType),t=At.tensorDimsFromProto(e.dims),r=new i(t,o);if(o===\"string\")e.stringData.forEach((n,s)=>{r.data[s]=kr(n)});else if(e.rawData&&typeof e.rawData.byteLength==\"number\"&&e.rawData.byteLength>0){let n=r.data,s=new DataView(e.rawData.buffer,e.rawData.byteOffset,e.rawData.byteLength),a=Wu(e.dataType),u=e.rawData.byteLength/a;if(e.rawData.byteLength%a!==0)throw new Error(\"invalid buffer length\");if(n.length!==u)throw new Error(\"buffer length mismatch\");for(let l=0;l0){let n=r.data,s=new DataView(e.rawDataArray().buffer,e.rawDataArray().byteOffset,e.rawDataLength()),a=Wu(e.dataType()),u=e.rawDataLength()/a;if(e.rawDataLength()%a!==0)throw new Error(\"invalid buffer length\");if(n.length!==u)throw new Error(\"buffer length mismatch\");for(let l=0;l{\"use strict\";bh={version:\"\",attribute:\"attribute\",varyingVertex:\"varying\",varyingFrag:\"varying\",texture2D:\"texture2D\",output:\"gl_FragColor\",outputDeclaration:\"\"},gh={version:\"#version 300 es\",attribute:\"in\",varyingVertex:\"out\",varyingFrag:\"in\",texture2D:\"texture\",output:\"outputColor\",outputDeclaration:\"out vec4 outputColor;\"}});var j=O(()=>{\"use strict\"});async function li(i,e=t=>0,o){return new Promise((t,r)=>{let n=0,s=()=>{if(i()){t();return}n++;let a=e(n);if(o!=null&&n>=o){r();return}setTimeout(s,a)};s()})}function An(i){return ur(typeof i<\"u\"&&i.length!==0,()=>\"empty string found for sampler name\"),\"get\"+i.charAt(0).toUpperCase()+i.slice(1)}function Yu(i){return ur(typeof i<\"u\"&&i.length!==0,()=>\"empty string found for sampler name\"),\"get\"+i.charAt(0).toUpperCase()+i.slice(1)+\"AtOutCoords\"}function lr(i,e){let o=JSON.parse(JSON.stringify(i));return o=e,o}function fr(i,e){return e.map(o=>i[o]).join(\", \")}function Bt(i){if(i<=1)return\"int\";if(i===2)return\"ivec2\";if(i===3)return\"ivec3\";if(i===4)return\"ivec4\";if(i===5)return\"ivec5\";if(i===6)return\"ivec6\";throw Error(`GPU for rank ${i} is not yet supported`)}function ne(i=6){return[\"x\",\"y\",\"z\",\"w\",\"u\",\"v\"].slice(0,i)}var pe=O(()=>{\"use strict\";Y()});function yh(i,e){return ne(e).map(o=>`${i}.${o}`)}function cr(i,e){return e===1?[i]:yh(i,e)}function de(){return`\n float getChannel(vec4 frag, int dim) {\n int modCoord = imod(dim, 2);\n return modCoord == 0 ? frag.r : frag.g;\n }\n\n float getChannel(vec4 frag, vec2 innerDims) {\n vec2 modCoord = mod(innerDims, 2.);\n return modCoord.x == 0. ?\n (modCoord.y == 0. ? frag.r : frag.g) :\n (modCoord.y == 0. ? frag.b : frag.a);\n }\n `}var He=O(()=>{\"use strict\";pe()});function Th(i,e,o){if(i===0)return\"false\";if(i===1)return`rc > ${e[0]}`;let t=\"\";for(let r=i-2;r= ${e[r-i+2]}`,r= ${i[0]} ? 0. : getA(rc + 1),\n 0, 0`;let t=\"r, c\",r=\"r, cp1\",n=\"rp1, c\",s=\"rp1, cp1\",a=\"\";if(o>2)for(let u=0;u= ${t};\n bool cEdge = cp1 >= ${o};\n `}var Zu,xh,Qu,tl=O(()=>{\"use strict\";ut();j();pe();He();Zu={name:\"pack\",inputNames:[\"A\"],inputTypes:[1]},xh=(i,e)=>{let o=G(i.session.backend.glContext.version),t=e.dims,r=t.length,n=e.dims.length,s=Bt(n),a=cr(\"rc\",n),u=vh(n,a,t[t.length-2],t[t.length-1]),l;r===0?l=[1,1]:r===1?l=[t[0],1]:l=[t[n-1],t[n-2]];let f=Th(n,l,a),p=wh(t,a),d=`\n void main() {\n ${s} rc = getOutputCoords();\n\n if(${f}) {\n ${o.output} = vec4(0);\n } else {\n ${u}\n\n ${o.output} = vec4(${p});\n }\n }\n `;return{...Zu,hasMain:!0,output:{dims:e.dims,type:e.type,textureType:2},shaderSource:d}},Qu=(i,e)=>({...Zu,get:()=>xh(i,e)})});function fi(i){if(i.length===0)return[1,1,1];let e=1;for(let o=0;o1?i[i.length-2]:1,i[i.length-1]]}function rl(i,e){let o=!1;return i.length===0||e.length===0?o=!0:i.length<2||e.length<2?o=i[i.length-1]===e[e.length-1]:o=i[i.length-1]===e[e.length-1]&&i[i.length-2]===e[e.length-2],o}function Oh(i){let e=B.computeStrides(i),o=[\"b\",\"r\",\"c\"],t=\"index\";return`\n ivec3 inputCoordsFromReshapedOutCoords(int index) {\n ${e.map((n,s)=>{let a=`int ${o[s]} = ${t} / ${n}`,u=s===e.length-1?`int ${o[s+1]} = ${t} - ${o[s]} * ${n}`:`index -= ${o[s]} * ${n}`;return`${a}; ${u};`}).join(\"\")}\n return ivec3(b, r, c);\n }\n `}function Sh(i){let e=B.computeStrides(i);return`\n int getFlattenedIndex(ivec3 coords) {\n // reverse y, z order\n return coords.x * ${e[0]} + coords.z * ${e[1]} + coords.y;\n }\n`}var Ih,_h,el,nl=O(()=>{\"use strict\";Y();ut();j();He();Ih=i=>({name:\"Reshape (packed)\",inputTypes:[2],inputNames:[\"A\"],cacheHint:`${i}`}),_h=(i,e,o,t)=>{let r=e.dims,n=t,s=\"\";for(let l=0;l<4;l++){let f=\"\";switch(l){case 0:f=\"outputCoords = rc;\";break;case 1:f=\"outputCoords = ivec3(rc.x, rc.y+1, rc.z);\";break;case 2:f=\"outputCoords = ivec3(rc.x, rc.y, rc.z+1);\";break;case 3:f=\"outputCoords = ivec3(rc.x, rc.y+1, rc.z+1);\";break;default:throw new Error}s+=`\n ${f}\n ${l>0?\"if(outputCoords.y < rows && outputCoords.z < cols){\":\"\"}\n int flattenedIndex = getFlattenedIndex(outputCoords);\n\n ivec3 inputRC = inputCoordsFromReshapedOutCoords(flattenedIndex);\n vec2 innerDims = vec2(float(inputRC.y),float(inputRC.z));\n\n result[${l}] = getChannel(getA(inputRC.x, inputRC.y, inputRC.z), innerDims);\n\n ${l>0?\"}\":\"\"}\n `}let a=G(i.session.backend.glContext.version),u=`\n ${Oh(r)}\n ${Sh(n)}\n ${de()}\n\n void main() {\n ivec3 rc = getOutputCoords();\n\n vec4 result = vec4(0.0);\n\n ivec3 outputCoords;\n int rows = ${n[2]};\n int cols = ${n[1]};\n\n ${s}\n ${a.output} = result;\n }\n `;return{...o,output:{dims:n,type:e.type,textureType:2},shaderSource:u,hasMain:!0}},el=(i,e,o)=>{let t=Ih(o);return{...t,get:()=>_h(i,e,t,o)}}});var ci,ol=O(()=>{\"use strict\";ut();j();ci=(i,e)=>{let o=e.shape,t=G(i.session.backend.glContext.version),r=`\n const float FLOAT_MAX = 1.70141184e38;\n const float FLOAT_MIN = 1.17549435e-38;\n\n bool isNaN(float val) {\n return (val < 1.0 || 0.0 < val || val == 0.0) ? false : true;\n }\n\n highp vec4 encodeAsUint8(highp float v) {\n if (isNaN(v)) {\n return vec4(255, 255, 255, 255);\n }\n\n highp float av = abs(v);\n\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 127.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 255.0) / 255.0;\n }\n\n highp vec4 c = vec4(0,0,0,0);\n\n highp float e = floor(log2(av));\n highp float m = exp2(fract(log2(av))) - 1.0;\n\n c[2] = floor(128.0 * m);\n m -= c[2] / 128.0;\n c[1] = floor(32768.0 * m);\n m -= c[1] / 32768.0;\n c[0] = floor(8388608.0 * m);\n\n highp float ebias = e + 127.0;\n c[3] = floor(ebias / 2.0);\n ebias -= c[3] * 2.0;\n c[2] += floor(ebias) * 128.0;\n\n c[3] += 128.0 * step(0.0, -v);\n\n return c / 255.0;\n }\n\n void main() {\n float value = ${t.texture2D}(X,TexCoords).r;\n ${t.output} = encodeAsUint8(value);\n }`,n={name:\"Uint8Encode\",inputTypes:[0],inputNames:[\"X\"],output:{dims:o,type:e.tensor.type,textureType:3},shaderSource:r,hasMain:!0};return i.executeProgram(n,[e.tensor])}});function Ph(i,e){if(i===1)return\"rc\";let o=\"\";for(let t=0;t{\"use strict\";ut();j();pe();He();il={name:\"unpack\",inputNames:[\"A\"],inputTypes:[2]},Ah=(i,e)=>{let o=e.dims.length,t=cr(\"rc\",o),r=t.slice(-2),n=Bt(o),s=de(),u=e.dims.length===0?\"\":Ph(o,t),l=o<=1?\"rc\":`vec2(${r.join(\",\")})`,f=G(i.session.backend.glContext.version),p=`\n ${s}\n void main() {\n ${n} rc = getOutputCoords();\n\n // Sample the texture with the coords to get the rgba channel value.\n vec4 packedInput = getA(${u});\n\n ${f.output} = vec4(getChannel(packedInput, ${l}), 0, 0, 0);\n }\n `;return{...il,hasMain:!0,output:{dims:e.dims,type:e.type,textureType:0},shaderSource:p}},al=(i,e)=>({...il,get:()=>Ah(i,e)})});var Pn,Br,En,Fr=O(()=>{\"use strict\";Ut();Pn=class{constructor(e,o=1){if(o===1)this.internalFormat=e.R32F,this.format=e.RED,this.textureType=e.FLOAT,this.channelSize=o;else if(o===4)this.internalFormat=e.RGBA32F,this.format=e.RGBA,this.textureType=e.FLOAT,this.channelSize=o;else throw new Error(`Invalid number of channels: ${o}`)}encode(e,o){let t,r;return e.constructor!==Float32Array&&(tt.warning(\"Encoder\",\"data was not of type Float32; creating new Float32Array\"),r=new Float32Array(e)),o*this.channelSize>e.length?(tt.warning(\"Encoder\",\"Source data too small. Allocating larger array\"),r=e,t=this.allocate(o*this.channelSize),r.forEach((n,s)=>t[s]=n)):(r=e,t=r),t}allocate(e){return new Float32Array(e*4)}decode(e,o){return this.channelSize===1?e.filter((r,n)=>n%4===0).subarray(0,o):e.subarray(0,o)}},Br=class{constructor(e,o=1,t){if(o!==1&&o!==4)throw new Error(`Invalid number of channels: ${o}`);this.internalFormat=e.RGBA,this.format=e.RGBA,this.channelSize=o,this.textureType=t||e.FLOAT}encode(e,o){let t=e;return this.channelSize===1&&(tt.verbose(\"Encoder\",\"Exploding into a larger array\"),t=this.allocate(o),e.forEach((r,n)=>t[n*4]=r)),t}allocate(e){return new Float32Array(e*4)}decode(e,o){return this.channelSize===1?e.filter((r,n)=>n%4===0).subarray(0,o):e.subarray(0,o)}},En=class{constructor(e,o=1){this.channelSize=4;if(o===1)this.internalFormat=e.ALPHA,this.format=e.ALPHA,this.textureType=e.UNSIGNED_BYTE,this.channelSize=o;else if(o===4)this.internalFormat=e.RGBA,this.format=e.RGBA,this.textureType=e.UNSIGNED_BYTE,this.channelSize=o;else throw new Error(`Invalid number of channels: ${o}`)}encode(e,o){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}allocate(e){return new Uint8Array(e*this.channelSize)}decode(e,o){if(e instanceof Uint8Array)return e.subarray(0,o);throw new Error(`Invalid array type: ${e.constructor}`)}}});var Cr,ul,pi,ll=O(()=>{\"use strict\";Y();j();Cr=(i,e,o)=>{let t=o===0||o===1?1:4,r=o===2,n=o===1||o===2,s=o===4?e.length-1:void 0,a=o===4?e.map((u,l)=>l===e.length-1?u*4:u):void 0;return pi(i,e,t,a,{isPacked:r,reverseWH:n,breakAxis:s})},ul=(i,e,o)=>{let t=Cr(i,e,o);return[t.width,t.height]},pi=(i,e,o=1,t,r)=>{let n=!!(r&&r.isPacked),[s,a]=i.computeTextureWH(n&&t||e,r),u=e.length,l=e.slice(0);if(u===0&&(l=[1]),o===1)t=e;else if(n){if(o!==4)throw new Error(\"a packed texture must be 4-channel\");t=e,u>0&&(l[u-1]=Math.ceil(l[u-1]/2)),u>1&&(l[u-2]=Math.ceil(l[u-2]/2))}else if(!t)throw new Error(\"Unpacked shape is needed when using channels > 1\");return{width:s,height:a,channels:o,isPacked:n,shape:l,strides:B.computeStrides(l),unpackedShape:t,reversedWH:r&&r.reverseWH}}});var Dh,Dn,cl=O(()=>{\"use strict\";Ut();We();Y();tl();nl();ol();sl();Fr();ll();j();Dh=(i,e)=>{let o=e.map(r=>`${r.unpackedShape.join(\",\")};${r.width}x${r.height}`).join(\"_\"),t=i.name;return i.cacheHint&&(t+=\"[\"+i.cacheHint+\"]\"),t+=\":\"+o,t},Dn=class{constructor(e){this.session=e;this.packedTextureDataCache=new Map,this.unpackedTextureDataCache=new Map}calculateTextureWidthAndHeight(e,o){return ul(this.session.layoutStrategy,e,o)}executeProgram(e,o){if(o.lengththis.readTexture(s),async a=>this.readTextureAsync(s),void 0,n),texture:t};return this.setTextureData(s.tensor.dataId,s,e.isPacked),s}getTextureData(e,o=!1){return this.session.isInitializer(e)?this.session.getTextureData(e,o):o?this.packedTextureDataCache.get(e):this.unpackedTextureDataCache.get(e)}setTextureData(e,o,t=!1){this.session.isInitializer(e)?this.session.setTextureData(e,o,t):(t?this.packedTextureDataCache:this.unpackedTextureDataCache).set(e,o)}isTextureLayoutCached(e,o=!1){return!!this.getTextureData(e.dataId,o)}dispose(){this.session.textureManager.clearActiveTextures(),this.packedTextureDataCache.forEach(e=>this.session.textureManager.releaseTexture(e)),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache.forEach(e=>this.session.textureManager.releaseTexture(e)),this.unpackedTextureDataCache=new Map}readTexture(e){return e.isPacked?this.readTexture(this.unpack(e)):this.session.backend.glContext.isFloat32DownloadSupported?this.session.textureManager.readTexture(e,e.tensor.type,e.channels):this.session.textureManager.readUint8TextureAsFloat(ci(this,e))}async readTextureAsync(e){return e.isPacked?this.readTextureAsync(this.unpack(e)):this.session.backend.glContext.isFloat32DownloadSupported?this.session.textureManager.readTextureAsync(e,e.tensor.type,e.channels):this.session.textureManager.readUint8TextureAsFloat(ci(this,e))}pack(e){return this.executeProgram(Qu(this,e.tensor),[e.tensor])}unpack(e){return this.executeProgram(al(this,e.tensor),[e.tensor])}}});var di,W,It=O(()=>{\"use strict\";di=class{constructor(e){Object.assign(this,e)}get cacheKey(){return this.key||(this.key=Object.getOwnPropertyNames(this).sort().map(e=>`${this[e]}`).join(\";\")),this.key}},W=i=>new di(i)});var pl,dl,hl,Lh,$h,ml=O(()=>{\"use strict\";It();ut();j();pl={name:\"BatchNormalization\",inputNames:[\"A\",\"Scale\",\"B\",\"Mean\",\"Variance\"],inputTypes:[0,0,0,0,0]},dl=(i,e,o)=>($h(e),[i.run({...pl,cacheHint:o.cacheKey,get:()=>Lh(i,e,o)},e)]),hl=i=>{let e=i.attributes.getFloat(\"epsilon\",1e-5),o=i.attributes.getFloat(\"momentum\",.9),t=i.attributes.getInt(\"spatial\",1);return W({epsilon:e,momentum:o,spatial:t})},Lh=(i,e,o)=>{let t=G(i.session.backend.glContext.version),r=e[0].dims.length,[n,s]=i.calculateTextureWidthAndHeight(e[1].dims,0),a=`\n float process(int[${r}] indices) {\n vec2 position = offsetToCoords(indices[1], ${n}, ${s});\n float scale = getColorAsFloat(${t.texture2D}(Scale, position));\n float mean = getColorAsFloat(${t.texture2D}(Mean, position));\n float variance = getColorAsFloat(${t.texture2D}(Variance, position));\n float b = getColorAsFloat(${t.texture2D}(B, position));\n\n return scale * ( (_A(indices) - mean) / sqrt(variance + float(${o.epsilon})) ) + b;\n }`;return{...pl,output:{dims:e[0].dims,type:e[0].type,textureType:0},shaderSource:a}},$h=i=>{if(!i||i.length!==5)throw new Error(\"BatchNormalization requires 5 inputs.\");let e=i[0],o=i[1],t=i[2],r=i[3],n=i[4];if(e.dims.length<3||o.dims.length!==1||t.dims.length!==1||r.dims.length!==1||n.dims.length!==1)throw new Error(\"invalid input shape.\");if(o.dims[0]!==e.dims[1]||t.dims[0]!==e.dims[1]||r.dims[0]!==e.dims[1]||n.dims[0]!==e.dims[1])throw new Error(\"invalid input shape.\");if(e.type!==\"float32\"&&e.type!==\"float64\"||o.type!==\"float32\"&&o.type!==\"float64\"||t.type!==\"float32\"&&t.type!==\"float64\"||r.type!==\"float32\"&&r.type!==\"float64\"||n.type!==\"float32\"&&n.type!==\"float64\")throw new Error(\"invalid input tensor types.\")}});var Ln,Ht,k,Nr,$n,Te=O(()=>{\"use strict\";Ln=class{constructor(e,o,t,r){this.glContext=e;this.programInfo=o;this.inputTextureLayouts=t;this.outputTextureLayout=r}},Ht=class{constructor(e){this.context=e}},k=class{constructor(e,o){this.routineBody=e;this.dependencies=o}},Nr=class{constructor(e,o,t){this.name=e;t?this.dependencies=t:this.dependencies=[],o&&(this.routineBody=o)}addDependency(e){e&&this.dependencies.push(e)}},$n=class{static returnOrderedNodes(e){if(!e||e.length===0)return[];if(e.length===1)return e;let o=new Set,t=new Set,r=new Array;return this.createOrderedNodes(e,o,t,r),r}static createOrderedNodes(e,o,t,r){for(let n=0;n0)for(let s=0;s b);\n }\n vec4 ${i}(vec4 v1, vec4 v2) {\n return vec4( v1.r > v2.r ,\n v1.g > v2.g,\n v1.b > v2.b,\n v1.a > v2.a );\n }\n `,name:i,type:0}}function Mh(){let i=\"less_\";return{body:`\n float ${i}(float a, float b) {\n return float(a < b);\n }\n vec4 ${i}(vec4 v1, vec4 v2) {\n return vec4( v1.r < v2.r ,\n v1.g < v2.g,\n v1.b < v2.b,\n v1.a < v2.a );\n }\n `,name:i,type:0}}function Uh(){let i=\"and_\";return{body:`\n float ${i}(float a, float b) {\n return float( bool(a) && bool(b) );\n }\n vec4 ${i}(vec4 v1, vec4 v2) {\n bvec4 b1 = bvec4(v1);\n bvec4 b2 = bvec4(v2);\n return vec4( b1.r && b2.r ,\n b1.g && b2.g,\n b1.b && b2.b,\n b1.a && b2.a );\n }\n `,name:i,type:0}}function Vh(){let i=\"or_\";return{body:`\n float ${i}(float a, float b) {\n return float( bool(a) || bool(b) );\n }\n vec4 ${i}(vec4 v1, vec4 v2) {\n bvec4 b1 = bvec4(v1);\n bvec4 b2 = bvec4(v2);\n return vec4( b1.r || b2.r ,\n b1.g || b2.g,\n b1.b || b2.b,\n b1.a || b2.a );\n }\n `,name:i,type:0}}function zh(){let i=\"xor_\";return{body:`\n float ${i}(float a, float b) {\n return float( bool(a) ^^ bool(b) );\n }\n vec4 ${i}(vec4 v1, vec4 v2) {\n bvec4 b1 = bvec4(v1);\n bvec4 b2 = bvec4(v2);\n return vec4( b1.r ^^ b2.r ,\n b1.g ^^ b2.g,\n b1.b ^^ b2.b,\n b1.a ^^ b2.a );\n }\n `,name:i,type:0}}function Wh(){return qh(\"pow\")}function Hh(){let i=\"prelu_\";return{body:`\n float ${i}(float a, float b) {\n return a < 0.0 ? a * b: a;\n }\n vec4 ${i}(vec4 v1, vec4 v2) {\n return vec4(\n v1.r < 0.0 ? v1.r * v2.r: v1.r,\n v1.g < 0.0 ? v1.g * v2.g: v1.g,\n v1.b < 0.0 ? v1.b * v2.b: v1.b,\n v1.a < 0.0 ? v1.a * v2.a: v1.a\n );\n }\n `,name:i,type:0}}function qh(i){let e=`${i}_`;return{body:`\n float ${e}(float a, float b) {\n return ${i}(a, b);\n }\n vec4 ${e}(vec4 v1, vec4 v2) {\n return ${i}(v1, v2);\n }\n `,name:e,type:0}}var qt,jh,bl,gl,yl,xl,Tl,wl,vl,Il,_l,Ol,Sl,Al,Pl=O(()=>{\"use strict\";Y();Te();ut();j();qt=(i,e,o,t=e[0].type,r)=>{let n=i.session.pack?2:0;return{name:o.name,inputNames:[\"A\",\"B\"],inputTypes:[n,n],cacheHint:r,get:()=>jh(i,e,o,t)}},jh=(i,e,o,t=e[0].type)=>{let r=i.session.pack?2:0,n=!B.areEqual(e[0].dims,e[1].dims),s=e[0].dims,a=i.session.pack;if(n){let f=kt.calcShape(e[0].dims,e[1].dims,!1);if(!f)throw new Error(\"Can't perform binary op on the given tensors\");s=f;let p=s.length,d=e[0].dims.length!==0?e[0].dims.length:1,y=e[1].dims.length!==0?e[1].dims.length:1,T=e[0].dims.length!==0?\"bcastIndices_A(indices, aindices);\":\"aindices[0] = 0;\",v=e[1].dims.length!==0?\"bcastIndices_B(indices, bindices);\":\"bindices[0] = 0;\",S=G(i.session.backend.glContext.version),L=a?`\n ${o.body}\n void main() {\n vec4 a = getAAtOutCoords();\n vec4 b = getBAtOutCoords();\n vec4 result = ${o.name}(a, b);\n ${S.output} = result;\n }`:`\n ${o.body}\n float process(int indices[${p}]) {\n int aindices[${d}];\n int bindices[${y}];\n ${T}\n ${v}\n return ${o.name}(_A(aindices), _B(bindices));\n }`;return{name:o.name,inputNames:[\"A\",\"B\"],inputTypes:[r,r],output:{dims:s,type:t,textureType:r},shaderSource:L,hasMain:a}}let u=G(i.session.backend.glContext.version),l=`\n ${o.body}\n void main() {\n vec4 v1 = ${u.texture2D}(A, TexCoords);\n vec4 v2 = ${u.texture2D}(B, TexCoords);\n vec4 result = ${o.name}(v1, v2);\n ${u.output} = result;\n }\n `;return{name:o.name,inputNames:[\"A\",\"B\"],inputTypes:[r,r],output:{dims:e[0].dims,type:t,textureType:r},shaderSource:l,hasMain:!0}},bl=(i,e)=>[i.run(qt(i,e,Bh()),e)],gl=(i,e)=>[i.run(qt(i,e,Uh(),\"bool\"),e)],yl=(i,e)=>[i.run(qt(i,e,Fh()),e)],xl=(i,e)=>[i.run(qt(i,e,Rh(),\"bool\"),e)],Tl=(i,e)=>[i.run(qt(i,e,Gh(),\"bool\"),e)],wl=(i,e)=>[i.run(qt(i,e,Mh(),\"bool\"),e)],vl=(i,e)=>[i.run(qt(i,e,Ch()),e)],Il=(i,e)=>[i.run(qt(i,e,Vh(),\"bool\"),e)],_l=(i,e)=>[i.run(qt(i,e,Wh()),e)],Ol=(i,e)=>[i.run(qt(i,e,Hh()),e)],Sl=(i,e)=>[i.run(qt(i,e,Nh()),e)],Al=(i,e)=>[i.run(qt(i,e,zh(),\"bool\"),e)]});var El,Dl,Kh,Ll=O(()=>{\"use strict\";Y();El=(i,e,o)=>(Kh(e),[i.cast(e[0],o)]),Dl=i=>At.tensorDataTypeFromProto(i.attributes.getInt(\"to\")),Kh=i=>{if(!i||i.length!==1)throw new Error(\"Cast requires 1 input.\");if(i[0].type===\"string\")throw new Error(\"Invalid input type.\")}});var Jh,Yh,$l,kn,kl=O(()=>{\"use strict\";ut();j();pe();He();Jh=(i,e)=>({name:\"Concat (packed)\",inputNames:Array.from({length:i},(o,t)=>`X${t}`),inputTypes:Array(i).fill(2),cacheHint:e}),Yh=(i,e,o,t)=>{let r=o[0].dims.slice();if(t>=r.length||t<-1*r.length)throw new Error(\"axis specified for concat doesn't match input dimensionality\");t<0&&(t=r.length+t);let n=r.slice(0);for(let V=1;VV.dims),p=ne(s),d=new Array(f.length-1);d[0]=f[0][t];for(let V=1;V= ${d[V-1]}) {\n return getChannel(\n getX${V}(${kn(p,y,lt)}),\n vec2(${kn(T,y,lt)}));\n }`}let L=d.length,P=d[d.length-1];S+=`\n return getChannel(\n getX${L}(${kn(p,y,P)}),\n vec2(${kn(T,y,P)}));`;let A=G(i.session.backend.glContext.version),M=`\n ${l}\n float getValue(${p.map(V=>\"int \"+V)}) {\n ${S}\n }\n\n void main() {\n ${u} coords = getOutputCoords();\n int lastDim = coords.${p[s-1]};\n coords.${p[s-1]} = coords.${p[s-2]};\n coords.${p[s-2]} = lastDim;\n\n vec4 result = vec4(getValue(${a}), 0., 0., 0.);\n\n ${a[s-1]} = ${a[s-1]} + 1;\n if (${a[s-1]} < ${n[s-1]}) {\n result.g = getValue(${a});\n }\n\n ${a[s-2]} = ${a[s-2]} + 1;\n if (${a[s-2]} < ${n[s-2]}) {\n result.a = getValue(${a});\n }\n\n ${a[s-1]} = ${a[s-1]} - 1;\n if (${a[s-2]} < ${n[s-2]} &&\n ${a[s-1]} < ${n[s-1]}) {\n result.b = getValue(${a});\n }\n ${A.output} = result;\n }\n `;return{...e,output:{dims:n,type:o[0].type,textureType:2},shaderSource:M,hasMain:!0}},$l=(i,e,o)=>{let t=Jh(e.length,o.cacheKey);return{...t,get:()=>Yh(i,t,e,o.axis)}},kn=(i,e,o)=>{let t=i.indexOf(e);return i.map((n,s)=>s===t?`${n} - ${o}`:n).join()}});var Bl,Zh,Qh,tm,Fl,em,rm,nm,Cl,om,Nl=O(()=>{\"use strict\";It();j();kl();Bl=(i,e,o)=>(om(e),i.session.pack&&e[0].dims.length>1?[i.run($l(i,e,o),e)]:[i.run(tm(i,e,o),e)]),Zh=(i,e)=>({name:\"Concat\",inputNames:Array.from({length:i},(o,t)=>`X${t}`),inputTypes:Array(i).fill(0),cacheHint:e}),Qh=(i,e,o,t)=>{let r=o[0].dims.slice();if(t>=r.length||t<-1*r.length)throw new Error(\"axis specified for concat doesn't match input dimensionality\");t<0&&(t=r.length+t);let n=r.slice(0);for(let y=1;y{let t=Zh(e.length,o.cacheKey);return{...t,get:()=>Qh(i,t,e,o.axis)}},Fl=i=>`int getTextureWhereDataResides(int index) {\n ${i.map((o,t)=>`if(index<${o}) {return ${t};}\n`).join(\"\")}\n }`,em=i=>Fl(i),rm=(i,e)=>{let o=[`float fetchDataFromCorrectTexture(int textureIndex, int indices[${e}]) {`];for(let t=0;t{let e=[\"int getSizeInConcatAxisValueFromIndex(int index) {\"];for(let o=0;oW({axis:i.attributes.getInt(\"axis\")}),om=i=>{if(!i||i.length<1)throw new Error(\"too few inputs\");let e=i[0].type,o=i[0].dims.length;if(e===\"string\")throw new Error(\"string tensor is not supported yet\");for(let t of i){if(t.type!==e)throw new Error(\"input tensors should be one type\");if(t.dims.length!==o)throw new Error(\"input tensors should have the same shape\")}}});function im(){return jt(\"abs\")}function am(){return jt(\"acos\")}function sm(){return jt(\"asin\")}function um(){return jt(\"atan\")}function lm(){return jt(\"ceil\")}function fm(){return jt(\"cos\")}function cm(i){let e=\"elu\";return{body:`\n const float alpha = float(${i});\n\n float ${e}_(float a) {\n return a >= 0.0 ? a: (exp(a) - 1.0) * alpha;\n }\n vec4 ${e}_(vec4 v) {\n return vec4(${e}_(v.x), ${e}_(v.y), ${e}_(v.z), ${e}_(v.w));\n }\n `,name:e,type:0}}function pm(){return jt(\"exp\")}function dm(){return jt(\"floor\")}function hi(i,e){let o=\"clip\";return{body:`\n const float min = float(${i});\n const float max = float(${e});\n\n float ${o}_(float a) {\n return clamp(a, min, max);\n }\n vec4 ${o}_(vec4 v) {\n return clamp(v, min, max);\n }\n `,name:o,type:0}}function hm(){let i=\"indentity\";return{body:`\n float ${i}_(float a) {\n return a;\n }\n vec4 ${i}_(vec4 v) {\n return v;\n }\n `,name:i,type:0}}function mm(i){let e=\"leakyRelu\";return{body:`\n const float alpha = float(${i});\n\n float ${e}_(float a) {\n return a < 0.0 ? a * alpha : a;\n }\n vec4 ${e}_(vec4 v) {\n return vec4(${e}_(v.x), ${e}_(v.y), ${e}_(v.z), ${e}_(v.w));\n }\n `,name:e,type:0}}function bm(){return jt(\"log\")}function gm(){let i=\"neg\";return{body:`\n float ${i}_(float a) {\n return -a;\n }\n vec4 ${i}_(vec4 v) {\n return -v;\n }\n `,name:i,type:0}}function ym(){let i=\"not\";return{body:`\n float ${i}_(float a) {\n return float( ! bool(a) );\n }\n bool ${i}_(bool a) {\n return !a;\n }\n vec4 ${i}_(vec4 v) {\n return vec4(!bool(v.x), !bool(v.y), !bool(v.z), !bool(v.w));\n }\n bvec4 ${i}_(bvec4 v) {\n return bvec4(!v.x, !v.y, !v.z, !v.w);\n }\n `,name:i,type:0}}function xm(){return jt(\"sin\")}function mi(){let i=\"relu\";return{body:`\n float ${i}_(float a) {\n return max( a, 0.0 );\n }\n vec4 ${i}_(vec4 v) {\n return max( v, 0.0 );\n }\n `,name:i,type:0}}function bi(){let i=\"sigmoid\";return{body:`\n float ${i}_(float a) {\n return 1.0 / (1.0 + exp(-a));\n }\n vec4 ${i}_(vec4 v) {\n return 1.0 / (1.0 + exp(-v));\n }\n `,name:i,type:0}}function Tm(){return jt(\"sqrt\")}function wm(){return jt(\"tan\")}function vm(){let i=\"tanh\";return{body:`\n float ${i}_(float a) {\n a = clamp(a, -10., 10.);\n a = exp(2.*a);\n return (a - 1.) / (a + 1.);\n }\n vec4 ${i}_(vec4 v) {\n v = clamp(v, -10., 10.);\n v = exp(2.*v);\n return (v - 1.) / (v + 1.);\n }\n `,name:i,type:0}}function jt(i){return{body:`\n float ${i}_(float a) {\n return ${i}(a);\n }\n vec4 ${i}_(vec4 v) {\n return ${i}(v);\n }\n `,name:i,type:0}}var Im,dt,Rl,Gl,Ml,Ul,gi,Vl,zl,_m,Wl,Hl,ql,jl,Xl,Kl,yi,Jl,Yl,Zl,Ql,tf,ef,rf,nf,of,af,sf,xi=O(()=>{\"use strict\";It();Y();Te();ut();j();Im=(i,e,o,t)=>{let r=i.session.pack?2:0,n=G(i.session.backend.glContext.version);return{...e,output:{dims:o.dims,type:o.type,textureType:r},shaderSource:`\n ${t.body}\n void main() {\n vec4 v = ${n.texture2D}(A, TexCoords);\n v = ${t.name}_(v);\n ${n.output} = v;\n }\n `,hasMain:!0}},dt=(i,e,o,t)=>{let r=i.session.pack?2:0,n={name:o.name,inputTypes:[r],inputNames:[\"A\"],cacheHint:t};return{...n,get:()=>Im(i,n,e,o)}},Rl=(i,e)=>[i.run(dt(i,e[0],im()),e)],Gl=(i,e)=>[i.run(dt(i,e[0],am()),e)],Ml=(i,e)=>[i.run(dt(i,e[0],sm()),e)],Ul=(i,e)=>[i.run(dt(i,e[0],um()),e)],gi=(i,e,o)=>[i.run(dt(i,e[0],hi(o.min,o.max),o.cacheKey),e)],Vl=i=>W({min:i.attributes.getFloat(\"min\",Ve),max:i.attributes.getFloat(\"max\",ze)}),zl=(i,e)=>{let o=_m(i,e);return gi(i,[e[0]],o)},_m=(i,e)=>{if(e.length>=3&&(!i.session.isInitializer(e[1].dataId)||!i.session.isInitializer(e[2].dataId)))throw new Error(\"dynamic clip attributes are not allowed\");let o=e.length>=3?e[1].numberData[0]:Ve,t=e.length>=3?e[2].numberData[0]:ze;return W({min:o,max:t})},Wl=(i,e)=>[i.run(dt(i,e[0],lm()),e)],Hl=(i,e)=>[i.run(dt(i,e[0],fm()),e)],ql=(i,e,o)=>[i.run(dt(i,e[0],cm(o.alpha),o.cacheKey),e)],jl=i=>W({alpha:i.attributes.getFloat(\"alpha\",1)}),Xl=(i,e)=>[i.run(dt(i,e[0],pm()),e)],Kl=(i,e)=>[i.run(dt(i,e[0],dm()),e)],yi=(i,e)=>[i.run(dt(i,e[0],hm()),e)],Jl=(i,e,o)=>[i.run(dt(i,e[0],mm(o.alpha),o.cacheKey),e)],Yl=i=>W({alpha:i.attributes.getFloat(\"alpha\",.01)}),Zl=(i,e)=>[i.run(dt(i,e[0],bm()),e)],Ql=(i,e)=>[i.run(dt(i,e[0],gm()),e)],tf=(i,e)=>[i.run(dt(i,e[0],ym()),e)],ef=(i,e)=>[i.run(dt(i,e[0],mi()),e)],rf=(i,e)=>[i.run(dt(i,e[0],bi()),e)],nf=(i,e)=>[i.run(dt(i,e[0],xm()),e)],of=(i,e)=>[i.run(dt(i,e[0],Tm()),e)],af=(i,e)=>[i.run(dt(i,e[0],wm()),e)],sf=(i,e)=>[i.run(dt(i,e[0],vm()),e)]});function he(i){let e;switch(i.activation){case\"Relu\":e=mi();break;case\"Sigmoid\":e=bi();break;case\"Clip\":e=hi(i.clipMin,i.clipMax);break;default:return{activationFunction:\"\",applyActivation:\"\"}}let o=e.name,t=e.body,r=`value = ${o}_(value);`;return{activationFunction:t,applyActivation:r}}var pr,qe=O(()=>{\"use strict\";Y();xi();pr=i=>{let e=i.getString(\"activation\",\"\");if(e===\"Clip\"){let[o,t]=i.getFloats(\"activation_params\",[Ve,ze]);return{activation:e,clipMax:t,clipMin:o,activationCacheKey:`${e}:${o},${t}`}}return{activation:e,activationCacheKey:e}}});var Sm,Am,uf,lf=O(()=>{\"use strict\";Ut();ut();j();Bn();qe();Sm=(i,e)=>({name:\"GroupedConv\",inputNames:i?[\"X\",\"W\",\"Bias\"]:[\"X\",\"W\"],inputTypes:i?[0,0,0]:[0,0],cacheHint:e}),Am=(i,e,o,t)=>{let n=e.length>2?\"value += getBias(output_channel);\":\"\",s=e[0].dims.slice(),a=e[1].dims.slice(),u=a[0]/t.group;tt.verbose(\"GroupedConv\",`autpPad:${t.autoPad}, dilations:${t.dilations}, group:${t.group}, kernelShape:${t.kernelShape}, pads:${t.pads}, strides:${t.strides}`);let l=dr(s,a,t.dilations,t.pads,t.strides),f=G(i.session.backend.glContext.version),{activationFunction:p,applyActivation:d}=he(t),y=`\n const ivec2 strides = ivec2(${t.strides[0]}, ${t.strides[1]});\n const ivec2 pads = ivec2(${t.pads[0]}, ${t.pads[1]});\n ${p}\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords.x;\n int output_channel = coords.y;\n ivec2 xRCCorner = coords.zw * strides - pads;\n int group_id = output_channel / ${u};\n\n float value = 0.0;\n for (int wInChannel = 0; wInChannel < ${a[1]}; wInChannel++) {\n int input_channel = group_id * ${a[1]} + wInChannel;\n for (int wHeight = 0; wHeight < ${a[2]}; wHeight++) {\n int xHeight = xRCCorner.x + wHeight * ${t.dilations[0]};\n\n if (xHeight < 0 || xHeight >= ${s[2]}) {\n continue;\n }\n\n for (int wWidth = 0; wWidth < ${a[3]}; wWidth++) {\n int xWidth = xRCCorner.y + wWidth * ${t.dilations[1]};\n if (xWidth < 0 || xWidth >= ${s[3]}) {\n continue;\n }\n\n float xVal = getX(batch, input_channel, xWidth, xHeight);\n float wVal = getW(output_channel, wInChannel, wWidth, wHeight);\n value += xVal*wVal;\n }\n }\n }\n ${n}\n ${d}\n ${f.output} = vec4(value, .0, .0, .0);\n }\n`;return{...o,output:{dims:l,type:e[0].type,textureType:0},shaderSource:y,hasMain:!0}},uf=(i,e,o)=>{let t=Sm(e.length>2,o.cacheKey);return{...t,get:()=>Am(i,e,t,o)}}});var Pm,Em,ff,cf=O(()=>{\"use strict\";ut();j();He();Pm=i=>({name:\"Im2Col (packed)\",inputNames:[\"A\"],inputTypes:[2],cacheHint:i}),Em=(i,e,o,t,r,n)=>{let s=o.dims,a=t.dims,u=2,l=3,f=r.length,p=[a[1]*a[2]*a[3],r[2]*r[3]],d=a[2]*a[3],y=de(),T=G(i.session.backend.glContext.version),v=\"\";for(let L=0;L<=1;L++)for(let P=0;P<=1;P++)v+=`\n blockIndex = rc.x + ${P};\n pos = rc.y + ${L};\n\n if(blockIndex < ${p[1]} && pos < ${p[0]}) {\n offsetY = int(blockIndex / (${r[f-1]})) * ${n.strides[0]} -\n ${n.pads[0]};\n d0 = offsetY + ${n.dilations[0]} * (imod(pos, ${d}) / ${a[2]});\n\n if(d0 < ${s[u]} && d0 >= 0) {\n offsetX = imod(blockIndex, ${r[f-1]}) * ${n.strides[1]} -\n ${n.pads[1]};\n d1 = offsetX + ${n.dilations[1]} * imod(imod(pos, ${d}), ${a[2]});\n\n if(d1 < ${s[l]} && d1 >= 0) {\n\n ch = int(float(pos)/ ${d}.);\n innerDims = vec2(d0, d1);\n result[${L*2+P}] = getChannel(\n getA(0, ch, int(innerDims.x),\n int(innerDims.y)), innerDims);\n }\n }\n }\n\n `;let S=`\n ${y}\n\n void main() {\n ivec2 rc = getOutputCoords();\n vec4 result = vec4(0.0);\n int blockIndex, pos, offsetY, d0, offsetX, d1, ch;\n vec2 innerDims;\n ${v}\n ${T.output} = result;\n }\n `;return{...e,output:{dims:p,type:o.type,textureType:2},shaderSource:S,hasMain:!0}},ff=(i,e,o,t,r)=>{let n=Pm(r.cacheKey);return{...n,get:()=>Em(i,n,e,o,t,r)}}});function Lm(i,e,o){let t=e[0].dims,r=e[1].dims,n=kt.calcShape(t,r,!0);if(!n)throw new Error(\"Can't use matmul on the given tensors\");let s=Bt(n.length),a=ne(),{activationFunction:u,applyActivation:l}=he(o),f=e.length>2,p=f?\"value += getBiasForMatmul();\":\"\",d=f?`${wi(s,a,e[2].dims,n,!1)}`:\"\",y=n.length,T=t.length,v=r.length,S=t[t.length-1],L=`\n ${u}\n ${d}\n float process(int indices[${y}]) {\n int a[${T}];\n int b[${v}];\n bcastMatmulIndices_A(indices, a);\n bcastMatmulIndices_B(indices, b);\n\n float value;\n for (int k=0; k<${S}; ++k) {\n a[${T-1}] = k;\n b[${v-2}] = k;\n value += _A(a) * _B(b);\n }\n ${p}\n ${l}\n return value;\n }`;return{...i,output:{dims:n,type:e[0].type,textureType:0},shaderSource:L}}function Ti(i,e){let o=Dm(i.length>2,e.activationCacheKey);return{...o,get:()=>Lm(o,i,e)}}function wi(i,e,o,t,r){let n=\"\",s=o.length,a=t.length,u=a-s;a<2&&s>0?n=\"coords\":n=o.map((v,S)=>`coords.${e[S+u]}`).join(\", \");let f=kt.getBroadcastDims(o,t).map(v=>`coords.${e[v+u]} = 0;`).join(`\n`),d=B.size(o)===1,y=\"vec4(outputValue.xx, outputValue.yy)\";return d&&(y=\"vec4(outputValue.x)\"),r?`\nvec4 getBiasForMatmul() {\n ${i} coords = getOutputCoords();\n ${f}\n vec4 outputValue = getBias(${n});\n return ${y};\n}`:`\nfloat getBiasForMatmul() {\n ${i} coords = getOutputCoords();\n ${f}\n return getBias(coords.x);\n}`}var pf,df,Dm,$m,Fn=O(()=>{\"use strict\";Y();j();pe();qe();vi();pf=(i,e,o)=>($m(e),i.session.pack?[i.run(Cn(i,e,o),e)]:[i.run(Ti(e,o),e)]),df=i=>pr(i.attributes),Dm=(i,e)=>({name:\"MatMul\",inputNames:i?[\"A\",\"B\",\"Bias\"]:[\"A\",\"B\"],inputTypes:i?[0,0,0]:[0,0],cacheHint:e});$m=i=>{if(!i||i.length!==2)throw new Error(\"MatMul requires 2 inputs.\");if(i[0].dims[i[0].dims.length-1]!==i[1].dims[i[1].dims.length-2])throw new Error(\"shared dimension does not match.\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\"||i[1].type!==\"float32\"&&i[1].type!==\"float64\")throw new Error(\"inputs should be float type\");if(i[0].type!==i[1].type)throw new Error(\"inputs types should match\")}});function Fm(i,e,o,t){let r=[],n=[],s=o[0].dims,a=o[1].dims,u=s.length,l=a.length,f=t.length,p=f-u,d=f-l;r=s.map((A,M)=>`coords.${e[M+p]}`),r[u-1]=\"i*2\",r.join(\", \"),n=a.map((A,M)=>`coords.${e[M+d]}`),n[l-2]=\"i*2\",n.join(\", \");let y=kt.getBroadcastDims(s,t),T=kt.getBroadcastDims(a,t),v=y.map(A=>`coords.${e[A+p]} = 0;`).join(`\n`),S=T.map(A=>`coords.${e[A+d]} = 0;`).join(`\n`),L=`int lastDim = coords.${e[f-1]};\n coords.${e[f-1]} = coords.${e[f-2]};\n coords.${e[f-2]} = lastDim;`;return`\nvec4 getAAtOutCoordsMatmul(int i) {\n ${i} coords = getOutputCoords();\n ${L}\n ${v}\n vec4 outputValue = getA(${r});\n return outputValue;\n}\n\nvec4 getBAtOutCoordsMatmul(int i) {\n ${i} coords = getOutputCoords();\n ${L}\n ${S}\n vec4 outputValue = getB(${n});\n return outputValue;\n}`}function Cm(i,e){let o=\"\";for(let t=0;t{\"use strict\";Y();ut();j();pe();qe();Fn();km=(i,e)=>({name:\"MatMul (packed)\",inputNames:i?[\"A\",\"B\",\"Bias\"]:[\"A\",\"B\"],inputTypes:i?[2,2,2]:[2,2],cacheHint:e}),Bm=(i,e,o,t)=>{let r=o.length>2,n=r?\"value += getBiasForMatmul();\":\"\",s=o[0].dims,a=o[1].dims,u=kt.calcShape(s,a,!0),l=!B.areEqual(o[0].dims,o[1].dims);if(!u)throw new Error(\"Can't use matmul on the given tensors\");let f=s[s.length-1],p=Math.ceil(f/2),d=s.length,y=a.length,T=G(i.session.backend.glContext.version),v=Bt(u.length),S=u.length,L=ne(),{activationFunction:P,applyActivation:A}=he(t),M=r?`${wi(v,L,o[2].dims,u,!0)}`:\"\",V=l?`${Fm(v,L,o,u)}`:\"\",lt=l?\"getAAtOutCoordsMatmul(i)\":`getA(${Cm(L,d)})`,wt=l?\"getBAtOutCoordsMatmul(i)\":`getB(${Nm(L,y)})`,et=l?\"\":`${v} rc =\n getOutputCoords(); int lastDim = rc.${L[S-1]}; rc.${L[S-1]} =\n rc.${L[S-2]}; rc.${L[S-2]} = lastDim;\n `,Dt=`\n ${V}\n ${M}\n ${P}\n void main() {\n ${et}\n\n vec4 value = vec4(0);\n for (int i = 0; i < ${p}; i++) {\n vec4 a = ${lt};\n vec4 b = ${wt};\n\n value += (a.rrbb * b.rgrg);\n value += (a.ggaa * b.baba);\n }\n ${n}\n ${A}\n ${T.output} = value;\n }`;return{...e,output:{dims:u,type:o[0].type,textureType:2},shaderSource:Dt,hasMain:!0}},Cn=(i,e,o)=>{let t=km(e.length>2,o.activationCacheKey);return{...t,get:()=>Bm(i,t,e,o)}}});var hf,mf=O(()=>{\"use strict\";Bn();cf();vi();hf=(i,e,o)=>{let t=e[0].dims,r=e[1].dims,n=dr(t,r,o.dilations,o.pads,o.strides),s=i.run(ff(i,e[0],e[1],n,o),[e[0]]),a=i.reshapePacked(e[1],[r[0],r[1]*r[2]*r[3]]),u=e.length===3?[a,s,e[2]]:[a,s],l=i.run(Cn(i,u,o),u);return i.reshapePacked(l,n)}});var Rm,Gm,bf,Ii,_i=O(()=>{\"use strict\";j();Rm=i=>({name:\"Im2Col\",inputNames:[\"X\"],inputTypes:[0],cacheHint:i}),Gm=(i,e,o,t,r,n)=>{let s=o.dims,a=t.dims,u=r.length,l=Ii(s,a,r,4),f=`\n const int XC = ${s[1]};\n const int XH = ${s[2]};\n const int XW = ${s[3]};\n const int KH = ${n.kernelShape[0]};\n const int KW = ${n.kernelShape[1]};\n const int dilationH = ${n.dilations[0]};\n const int dilationW = ${n.dilations[1]};\n const int strideH = ${n.strides[0]};\n const int strideW = ${n.strides[1]};\n const int padH = ${n.pads[0]};\n const int padW = ${n.pads[1]};\n const int KHKW = KH*KW;\n const int XCKHKW = XC * KHKW;\n const int outputChannels = 4;\n vec4 process(int indices[${u}]) {\n int b = indices[0]; // batch size\n int oh = indices[1] * strideH - padH; //output height\n int ow = indices[2] * strideW - padW; //output width\n int p = indices[3] * outputChannels; //patch\n vec4 value = vec4(0.0);\n for(int i=0; i < outputChannels; ++i) {\n if(p < XCKHKW) {\n int patchC = p / KHKW;\n int patchH = (p - patchC*KHKW) / KW;\n int patchW = (p - patchC*KHKW) - patchH * KW;\n int xh2 = oh + patchH * dilationH;\n int xw2 = ow + patchW * dilationW;\n int x[${s.length}];\n x[0] = b;\n x[1] = patchC;\n x[2] = xh2;\n x[3] = xw2;\n if(xh2 >= 0 &&\n xh2 < XH &&\n xw2 >= 0 &&\n xw2 < XW) {\n value[i] = _X(x);\n }\n }\n ++p;\n }\n return value;\n }\n `;return{...e,output:{dims:l,type:o.type,textureType:4},shaderSource:f}},bf=(i,e,o,t,r)=>{let n=Rm(r.cacheKey);return{...n,get:()=>Gm(i,n,e,o,t,r)}},Ii=(i,e,o,t=4)=>[o[0],o[2],o[3],Math.ceil(i[1]*e[2]*e[3]/t)]});var Mm,Um,gf,yf=O(()=>{\"use strict\";Y();ut();j();qe();_i();Mm=(i,e)=>({name:\"ConvDotProduct\",inputNames:i?[\"Im2Col\",\"K\",\"B\"]:[\"Im2Col\",\"K\"],inputTypes:i?[0,4,0]:[0,4],cacheKey:e.activationCacheKey}),Um=(i,e,o,t,r)=>{let n=o[0].dims,s=o[1].dims,a=[s[0],Math.ceil(n[1]*s[2]*s[3]/4)],u=Ii(n,s,t),[l,f]=i.calculateTextureWidthAndHeight(a,4),p=B.computeStrides(u),[d,y]=i.calculateTextureWidthAndHeight(u,4),T=t.length,v=o.length<3?\"0.0\":\"_B(b)\",S=Math.ceil(n[1]*s[2]*s[3]/4),{activationFunction:L,applyActivation:P}=he(r),A=G(i.session.backend.glContext.version),M=`\n${L}\nfloat process(int indices[${T}]) {\n int b[1];\n b[0] = indices[1];\n int im2col[4];\n im2col[0] = indices[0];\n im2col[1] = indices[2];\n im2col[2] = indices[3];\n int im2colOffset = im2col[0] * ${p[0]} + im2col[1] * ${p[1]} + im2col[2] * ${p[2]};\n int kernelOffset = indices[1] * ${a[1]};\n float value = ${v};\n for (int i = 0; i < ${S}; ++i) {\n vec2 im2colCoords = offsetToCoords(im2colOffset, ${d}, ${y});\n vec2 kernelCoords = offsetToCoords(kernelOffset, ${l}, ${f});\n value += dot(${A.texture2D}(Im2Col, im2colCoords), ${A.texture2D}(K, kernelCoords));\n ++im2colOffset;\n ++kernelOffset;\n }\n ${P}\n return value;\n}`;return{...e,output:{dims:t,type:o[0].type,textureType:0},shaderSource:M}},gf=(i,e,o,t)=>{let r=Mm(e.length>2,t);return{...r,get:()=>Um(i,r,e,o,t)}}});var dr,Oi,Vm,zm,Wm,Hm,Si,qm,Bn=O(()=>{\"use strict\";It();Y();lf();mf();yf();qe();_i();Fn();dr=(i,e,o,t,r)=>{let n=i[0],s=i.slice(2),a=s.length,u=e[0],f=e.slice(2).map((T,v)=>T+(T-1)*(o[v]-1)),d=s.map((T,v)=>T+t[v]+t[v+a]).map((T,v)=>Math.floor((T-f[v]+r[v])/r[v]));return[n,u].concat(...d)},Oi=(i,e,o)=>(qm(e,o),Vm(i,e,o)),Vm=(i,e,o)=>{let t=Hm(o,e),r=i.session.pack,n=t.kernelShape[0]===1&&t.kernelShape[1]===1;return t.group>1?[i.run(uf(i,e,t),e)]:n&&r?[zm(i,e,t)]:r&&e[0].dims.length===4&&e[0].dims[0]===1&&!n?[hf(i,e,t)]:[Wm(i,e,t)]},zm=(i,e,o)=>{let t=e[0].dims,r=e[1].dims,n=dr(t,r,o.dilations,o.pads,o.strides),s=i.reshapeUnpacked(e[0],[t[1],t[2]*t[3]]),a=i.reshapeUnpacked(e[1],[r[0],r[1]]),u=e.length>2?[a,s,e[2]]:[a,s],l=i.run(Ti(u,o),u);return i.reshapeUnpacked(l,n)},Wm=(i,e,o)=>{let t=e[0].dims,r=e[1].dims,n=dr(t,r,o.dilations,o.pads,o.strides),s=i.run(bf(i,e[0],e[1],n,o),[e[0]]),a=e.length===3?[s,e[1],e[2]]:[s,e[1]];return i.run(gf(i,e,n,o),a)},Hm=(i,e)=>{let o=i.kernelShape.slice();if(i.kernelShape.length===0)for(let n=2;n{let e=i.attributes,o=pr(e),t=e.getString(\"auto_pad\",\"NOTSET\"),r=e.getInts(\"dilations\",[1,1]),n=e.getInt(\"group\",1),s=e.getInts(\"kernel_shape\",[]),a=e.getInts(\"pads\",[0,0,0,0]),u=e.getInts(\"strides\",[1,1]);return W({autoPad:t,dilations:r,group:n,kernelShape:s,pads:a,strides:u,...o})},qm=(i,e)=>{if(!i||i.length!==2&&i.length!==3)throw new Error(\"Conv requires 2 or 3 inputs\");if(i[0].dims.length!==4||i[1].dims.length!==4)throw new Error(\"currently only support 2-dimensional conv\");let o=i[0].dims[1],t=i[1].dims[1]*e.group;if(o!==t)throw new Error(\"FILTER_IN_CHANNEL should be equal to DATA_CHANNEL\");if(i.length===3&&(i[2].dims.length!==1||i[1].dims[0]!==i[2].dims[0]))throw new Error(\"invalid bias\");let r=i[0].dims.length-2;if(e.dilations.length!==r)throw new Error(`dilations should be ${r}D`);if(e.strides.length!==r)throw new Error(`strides should be ${r}D`);if(e.pads.length!==r*2)throw new Error(`pads should be ${r*2}D`);if(e.kernelShape.length!==0&&e.kernelShape.length!==i[1].dims.length-2)throw new Error(\"invalid kernel shape\");if(i[0].type!==\"float32\"||i[1].type!==\"float32\")throw new Error(\"Conv input(X,W) should be float tensor\");if(i.length===3&&i[2].type!==\"float32\")throw new Error(\"Conv input(bias) should be float tensor\")}});var jm,Xm,Km,xf,Jm,Ym,Zm,Qm,tb,eb,Tf,rb,wf=O(()=>{\"use strict\";It();ut();j();qe();jm=(i,e,o,t,r,n)=>(i-1)*e+o+(t-1)*r+1-n,Xm=(i,e,o,t,r)=>{let n=Math.floor(i/2);e===\"SAME_UPPER\"?(o[t]=n,o[r]=i-n):e===\"SAME_LOWER\"&&(o[t]=i-n,o[r]=n)},Km=(i,e,o,t,r,n,s,a)=>{let u=i.length-2,l=a.length===0;for(let f=0;f(rb(e,o),Jm(i,e,o)),Jm=(i,e,o)=>{let t=eb(o,e);return[tb(i,e,t)]},Ym=(i,e)=>({name:\"ConvTranspose\",inputNames:i?[\"X\",\"W\",\"B\"]:[\"X\",\"W\"],inputTypes:i?[0,0,0]:[0,0],cacheHint:e}),Zm=(i,e,o,t)=>{let n=e.length>2?\"getB(output_channel)\":\"0.0\",s=e[0].dims,a=e[1].dims,u=a[1],l=a[0]/t.group,f=[e[0].dims[0],e[1].dims[1]*t.group,...t.outputShape],p=G(i.session.backend.glContext.version),{activationFunction:d,applyActivation:y}=he(t),T=`\n const ivec2 strides = ivec2(${t.strides[0]}, ${t.strides[1]});\n const ivec2 pads = ivec2(${t.pads[0]}, ${t.pads[1]});\n ${d}\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords.x;\n int output_channel = coords.y;\n\n ivec2 loc = coords.zw + pads;\n\n int group_id = output_channel / ${u};\n int wOutChannel = output_channel - group_id * ${u};\n\n float value = ${n};\n for (int inChannelOffset = 0; inChannelOffset < ${l}; inChannelOffset++) {\n int input_channel = group_id * ${l} + inChannelOffset;\n for (int wWOff = 0; wWOff < ${a[2]}; wWOff++) {\n for (int wHOff = 0; wHOff < ${a[3]}; wHOff++) {\n ivec2 wOff = ivec2(wWOff * ${t.dilations[0]}, wHOff * ${t.dilations[1]});\n ivec2 wLoc = loc - wOff;\n ivec2 wLocIn = wLoc / strides;\n if (\n wLocIn * strides == wLoc &&\n wLocIn.x >= 0 && wLocIn.x < ${s[2]} &&\n wLocIn.y >= 0 && wLocIn.y < ${s[3]}\n ) {\n float xVal = getX(batch, input_channel, wLocIn.y, wLocIn.x);\n float wVal = getW(input_channel, wOutChannel, wHOff, wWOff);\n value += xVal * wVal;\n }\n }\n }\n }\n ${y}\n ${p.output} = vec4(value, .0, .0, .0);\n }\n`;return{...o,output:{dims:f,type:e[0].type,textureType:0},shaderSource:T,hasMain:!0}},Qm=(i,e,o)=>{let t=Ym(e.length>2,o.cacheKey);return{...t,get:()=>Zm(i,e,t,o)}},tb=(i,e,o)=>i.run(Qm(i,e,o),e),eb=(i,e)=>{let o=i.kernelShape.slice();if(i.kernelShape.length===0)for(let a=2;a{let e=i.attributes,o=pr(e),t=e.getString(\"auto_pad\",\"NOTSET\"),r=e.getInts(\"dilations\",[1,1]),n=e.getInt(\"group\",1),s=e.getInts(\"kernel_shape\",[]),a=e.getInts(\"output_padding\",[0,0]),u=e.getInts(\"output_shape\",[]),l=e.getInts(\"pads\",[0,0,0,0]),f=e.getInts(\"strides\",[1,1]);return W({autoPad:t,dilations:r,group:n,kernelShape:s,outputPadding:a,outputShape:u,pads:l,strides:f,...o})},rb=(i,e)=>{if(!i||i.length!==2&&i.length!==3)throw new Error(\"Conv requires 2 or 3 inputs\");if(i[0].dims.length!==4||i[1].dims.length!==4)throw new Error(\"currently only support 2-dimensional conv\");let o=i[0].dims[1],t=i[1].dims[0];if(o!==t)throw new Error(\"FILTER_IN_CHANNEL should be equal to DATA_CHANNEL\");let r=i[1].dims[1]*e.group;if(i.length===3&&(i[2].dims.length!==1||i[2].dims[0]!==r))throw new Error(\"invalid bias\");let n=i[0].dims.length-2;if(e.dilations.length!==n)throw new Error(`dilations should be ${n}D`);if(e.strides.length!==n)throw new Error(`strides should be ${n}D`);if(e.pads.length!==n*2)throw new Error(`pads should be ${n*2}D`);if(e.outputPadding.length!==n)throw new Error(`output_padding should be ${n}D`);if(e.kernelShape.length!==0&&e.kernelShape.length!==i[1].dims.length-2)throw new Error(\"invalid kernel shape\");if(e.outputShape.length!==0&&e.outputShape.length!==i[0].dims.length-2)throw new Error(\"invalid output shape\");if(i[0].type!==\"float32\"||i[1].type!==\"float32\")throw new Error(\"ConvTranspose input(X,W) should be float tensor\");if(i.length===3&&i[2].type!==\"float32\")throw new Error(\"ConvTranspose input(bias) should be float tensor\")}});var vf,je,If,nb,_f,ob,ib,ab,Nn=O(()=>{\"use strict\";It();Y();j();vf={name:\"Transpose\",inputNames:[\"A\"],inputTypes:[0]},je=(i,e,o)=>(ab(e),[i.run({...vf,cacheHint:o.cacheKey,get:()=>nb(i,e[0],o.perm)},e)]),If=i=>W({perm:i.attributes.getInts(\"perm\",[])}),nb=(i,e,o)=>{let t=e.dims;o=_f(t,o);let r=ob(t,o),n=t.length,s=`\n ${ib(\"perm\",o,n)}\n float process(int indices[${n}]) {\n int a[${n}];\n perm(a, indices);\n return _A(a);\n }`;return{...vf,output:{dims:r,type:e.type,textureType:0},shaderSource:s}},_f=(i,e)=>(e&&e.length!==i.length&&(e=[...i.keys()].reverse()),e),ob=(i,e)=>(e=_f(i,e),B.sortBasedOnPerm(i,e)),ib=(i,e,o)=>{let t=[];t.push(`void ${i}(out int a[${o}], int src[${o}]) {`);for(let r=0;r{if(!i||i.length!==1)throw new Error(\"Transpose requires 1 input.\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\")throw new Error(\"input should be float tensor\")}});var Of,Sf,sb,Af=O(()=>{\"use strict\";Nn();Of=(i,e,o)=>{sb(e);let t=o.blocksize,r=t*t,n=o.mode===\"DCR\"?[0,3,4,1,5,2]:[0,1,4,2,5,3],s=o.mode===\"DCR\"?[e[0].dims[0],t,t,e[0].dims[1]/r,e[0].dims[2],e[0].dims[3]]:[e[0].dims[0],e[0].dims[1]/r,t,t,e[0].dims[2],e[0].dims[3]],a=i.reshapeUnpacked(e[0],s),u={perm:n,cacheKey:`${n}`},[l]=je(i,[a],u),f=[e[0].dims[0],e[0].dims[1]/r,e[0].dims[2]*t,e[0].dims[3]*t];return[i.reshapeUnpacked(l,f)]},Sf=i=>{let e=i.attributes.getInt(\"blocksize\");if(e<1)throw new Error(`blocksize must be >= 1, but got : ${e} for DepthToSpace`);let o=i.attributes.getString(\"mode\",\"DCR\");if(o!==\"DCR\"&&o!==\"CRD\")throw new Error(`unrecognized mode: ${o} for DepthToSpace`);return{mode:o,blocksize:e}},sb=i=>{if(i.length!==1)throw new Error(`DepthToSpace expect 1 inputs, but got ${i.length}`);if(i[0].type===\"string\"||i[0].dims.length!==4)throw new TypeError(\"DepthToSpace input should be a 4-D numeric tensor\")}});var Pf,Ef,ub,Df=O(()=>{\"use strict\";Y();Pf=(i,e,o)=>{ub(e,o);let t=B.flattenShape(e[0].dims,o);return[i.reshapeUnpacked(e[0],t)]},Ef=i=>i.attributes.getInt(\"axis\",1),ub=(i,e)=>{if(!i||i.length!==1)throw new Error(\"Flatten requires 1 input.\");let o=i[0].dims.length;if(o===0)throw new Error(\"scalar tensor is not supported.\");if(e<-o||e>o)throw new Error(\"Invalid axis\");if(i[0].type===\"string\")throw new Error(\"string tensor is not supported.\")}});var Pe,Rr=O(()=>{\"use strict\";Pe=[\"float32\",\"float64\",\"int32\",\"int16\",\"int8\",\"uint16\",\"uint32\",\"uint8\"]});var Lf,$f,lb,fb,cb,pb,kf=O(()=>{\"use strict\";It();Rr();Y();j();Lf=(i,e,o)=>(pb(e,o.axis),[i.run(cb(i,e,o),e)]),$f=i=>W({axis:i.attributes.getInt(\"axis\",0)}),lb={name:\"Gather\",inputNames:[\"A\",\"B\"],inputTypes:[0,0]},fb=(i,e,o,t)=>{let r=o[0].dims.slice(),n=o[1].dims.slice(),s=new Array(r.length+n.length-1);t=B.normalizeAxis(t,r.length);let a=[];for(let d=0;d{let t={...lb,cacheHint:o.cacheKey};return{...t,get:()=>fb(i,t,e,o.axis)}},pb=(i,e)=>{if(!i||i.length!==2)throw new Error(\"Gather requires 2 inputs.\");let o=i[0].dims.length;if(o<1)throw new Error(\"Invalid input shape.\");if(e<-o||e>o-1)throw new Error(\"Invalid axis.\");if(Pe.indexOf(i[0].type)===-1)throw new Error(\"Invaid input type.\");if(i[1].type!==\"int32\"&&i[1].type!==\"int16\")throw new Error(\"Invaid input type.\")}});var Ai,Bf,Ff,Cf,db,hb,mb,Nf=O(()=>{\"use strict\";It();Y();j();Ai=(i,e,o)=>(mb(e,o),[i.run(db(e,o),e)]),Bf=(i,e)=>{let o=i.attributes.getInt(\"transA\",0)!==0,t=i.attributes.getInt(\"transB\",0)!==0,r=i.attributes.getFloat(\"alpha\",1),n=i.attributes.getFloat(\"beta\",1);return W({transA:o,transB:t,alpha:r,beta:n,isOptionalC:e})},Ff=i=>Bf(i,!1),Cf=i=>Bf(i,!0),db=(i,e)=>{let o={name:\"Gemm\",inputNames:i.length===3?[\"A\",\"B\",\"C\"]:[\"A\",\"B\"],inputTypes:i.length===3?[0,0,0]:[0,0],key:e.cacheKey};return{...o,get:()=>hb(o,i,e)}},hb=(i,e,o)=>{let t=e[0].dims.slice(),r=e[1].dims.slice(),[n,s]=Sn.getShapeOfGemmResult(t,o.transA,r,o.transB,e.length===3?e[2].dims:void 0),a=[n,s];if(!a)throw new Error(\"Can't use gemm on the given tensors\");let u=t[t.length-1],l=\"\";o.transA&&(u=t[0]),o.transA&&o.transB?l=\"value += _A_T(a) * _B_T(b);\":o.transA&&!o.transB?l=\"value += _A_T(a) * _B(b);\":!o.transA&&o.transB?l=\"value += _A(a) * _B_T(b);\":!o.transA&&!o.transB&&(l=\"value += _A(a) * _B(b);\");let f=a.length,p=e.length===3?`int c[${e[2].dims.length}];`:\"\",d=e.length===3?\"bcastIndices_C(indices, c);\":\"\",y=e.length===3?\"value += beta * _C(c);\":\"\",T=`\n float process(int indices[${f}]) {\n int a[${f}];\n int b[${f}];\n ${p}\n\n copyVec(indices, a);\n copyVec(indices, b);\n ${d}\n\n float value = 0.0;\n for (int k=0; k<${u}; ++k) {\n a[${f-1}] = k;\n b[${f-2}] = k;\n ${l}\n }\n\n value = value * alpha;\n ${y}\n return value;\n }`;return{...i,output:{dims:a,type:e[0].type,textureType:0},variables:[{name:\"alpha\",type:\"float\",data:o.alpha},{name:\"beta\",type:\"float\",data:o.beta}],shaderSource:T}},mb=(i,e)=>{if(!i)throw new Error(\"Input is missing\");if(e.isOptionalC&&(i.length<2||i.length>3))throw new Error(\"Invaid input shape.\");if(!e.isOptionalC&&i.length!==3)throw new Error(\"Gemm requires 3 inputs\");if(i.length===3&&i[2].dims.length!==1&&i[2].dims.length!==2)throw new Error(\"Invalid input shape of C\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\"||i[1].type!==\"float32\"&&i[1].type!==\"float64\"||i.length===3&&i[2].type!==\"float32\"&&i[2].type!==\"float64\")throw new Error(\"Invalid input type.\");if(i[0].type!==i[1].type||i.length===3&&i[0].type!==i[2].type)throw new Error(\"Input types are mismatched\")}});var Rf,Gf,bb,gb,yb,xb,Tb,Mf=O(()=>{\"use strict\";It();j();Rf=(i,e,o)=>(Tb(e),[i.run(yb(i,e,o),e)]),Gf=i=>{let e=i.attributes.getFloat(\"scale\"),o=i.attributes.getFloats(\"bias\");return W({scale:e,bias:o})},bb={name:\"ImageScaler\",inputNames:[\"X\"],inputTypes:[0]},gb=(i,e,o,t)=>{let r=o[0].dims.slice(),n=r.length,a=`\n ${xb(t.bias.length)}\n float process(int indices[${n}]) {\n return _X(indices) * scale + getBias(bias, indices[1]);\n }`;return{...e,output:{dims:r,type:o[0].type,textureType:0},variables:[{name:\"bias\",type:\"float\",arrayLength:t.bias.length,data:t.bias},{name:\"scale\",type:\"float\",data:t.scale}],shaderSource:a}},yb=(i,e,o)=>{let t={...bb,cacheHint:o.cacheKey};return{...t,get:()=>gb(i,t,e,o)}},xb=i=>{let e=[`float getBias(float bias[${i}], int channel) {`];for(let o=0;o{if(!i||i.length!==1)throw new Error(\"ImageScaler requires 1 input.\");if(i[0].dims.length!==4)throw new Error(\"Invalid input shape.\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\")throw new Error(\"Invalid input type.\")}});var Vf,zf,Uf,wb,vb,Ib,_b,Ob,Sb,Wf=O(()=>{\"use strict\";ut();j();Vf=(i,e,o)=>{Sb(e);let t=i.run(vb(e[0]),e);return[i.run(Ob(i,e[0],o,t.dims),[e[0],t,e[1],e[2]])]},zf=i=>i.attributes.getFloat(\"epsilon\",1e-5),Uf={name:\"InstanceNormalization_MeanAndVariance\",inputNames:[\"X\"],inputTypes:[0]},wb=(i,e)=>{let o=e.dims.slice(),t=o[1],r=o[2]*o[3],n=[o[0],t],s=`\n vec4 process(int[2] indices) {\n vec4 v = vec4(0.0);\n int a[4];\n a[0] = indices[0];\n a[1] = indices[1];\n float temp = 0.0;\n for(int a2=0; a2<${o[2]}; a2++) {\n a[2] = a2;\n for(int a3=0; a3<${o[3]}; a3++) {\n a[3] = a3;\n float x = _X(a);\n temp += x;\n }\n }\n float mean = temp / float(${r});\n temp = 0.0;\n for(int a2=0; a2<${o[2]}; a2++) {\n a[2] = a2;\n for(int a3=0; a3<${o[3]}; a3++) {\n a[3] = a3;\n float x = _X(a);\n temp += (x - mean) * (x - mean);\n }\n }\n v.r = mean;\n v.g = temp / float(${r});\n\n return v;\n }`;return{...i,output:{dims:n,type:e.type,textureType:4},shaderSource:s}},vb=i=>({...Uf,get:()=>wb(Uf,i)}),Ib={name:\"InstanceNormalization_ComputeOutput\",inputNames:[\"X\",\"MeanAndVariance\",\"Scale\",\"B\"],inputTypes:[0,4,0,0]},_b=(i,e,o,t,r)=>{let n=G(i.session.backend.glContext.version),[s,a]=i.calculateTextureWidthAndHeight(r,4),[u,l]=[s/4,a],f=`\n vec4 get_MeanAndVariance(int[2] mv) {\n int offset = indicesToOffset_MeanAndVariance(mv);\n vec2 coords = offsetToCoords(offset, ${u}, ${l});\n return ${n.texture2D}(MeanAndVariance, coords);\n }\n\n float process(int[4] indices) {\n int mv[2];\n mv[0] = indices[0];\n mv[1] = indices[1];\n vec4 mean_and_variance = get_MeanAndVariance(mv);\n float mean = mean_and_variance.r;\n float variance = mean_and_variance.g;\n\n int sb[1];\n sb[0] = indices[1];\n float scale = _Scale(sb);\n float b = _B(sb);\n\n return scale * (_X(indices) - mean) / sqrt(variance + epsilon) + b;\n }`;return{...e,output:{dims:o.dims,type:o.type,textureType:0},variables:[{name:\"epsilon\",type:\"float\",data:t}],shaderSource:f}},Ob=(i,e,o,t)=>{let r={...Ib,cacheHint:`${o}`};return{...r,get:()=>_b(i,r,e,o,t)}},Sb=i=>{if(!i||i.length!==3)throw new Error(\"InstanceNormalization requires 3 inputs.\");let e=i[0],o=i[1],t=i[2];if(e.dims.length<3||o.dims.length!==1||t.dims.length!==1)throw new Error(\"Invalid input shape.\");if(o.dims[0]!==e.dims[1]||t.dims[0]!==e.dims[1])throw new Error(\"Input shapes are mismatched.\");if(e.type!==\"float32\"&&e.type!==\"float64\"||o.type!==\"float32\"&&o.type!==\"float64\"||t.type!==\"float32\"&&t.type!==\"float64\")throw new Error(\"Invalid input type.\");if(i[0].dims.length!==4)throw new Error(\"Only support 4-D input shape.\")}});function Ab(i,e){let o=i[0].dims[1],t=i[0].dims.length,r=-Math.floor((e.size-1)/2),n=Math.ceil((e.size-1)/2),s=`float(${e.alpha}) / float(${e.size})`,a=`float(${e.bias})`,u=`float(${e.beta})`,l=`\n float process(int indices[${t}]) {\n int c = indices[1];\n float x = _X(indices);\n float square_sum = 0.0;\n\n for (int i = ${r}; i <= ${n}; i++) {\n int idx = c + i;\n if (c >= 0 && c < ${o}) {\n indices[1] = idx;\n float j = _X(indices);\n square_sum += j * j;\n }\n }\n return x / pow(${a} + ${s} * square_sum, ${u});\n }`;return{...jf,cacheHint:e.cacheKey,output:{dims:i[0].dims,type:i[0].type,textureType:0},shaderSource:l}}function Pb(i,e){return{...jf,cacheHint:e.cacheKey,get:()=>Ab(i,e)}}var Hf,qf,jf,Eb,Xf=O(()=>{\"use strict\";It();j();Hf=(i,e,o)=>(Eb(e),[i.run(Pb(e,o),e)]),qf=i=>{let e=i.attributes.getFloat(\"alpha\",1e-4),o=i.attributes.getFloat(\"beta\",.75),t=i.attributes.getFloat(\"bias\",1),r=i.attributes.getInt(\"size\");return W({alpha:e,beta:o,bias:t,size:r})},jf={name:\"LRN\",inputNames:[\"X\"],inputTypes:[0]};Eb=i=>{if(!i||i.length!==1)throw new Error(\"LRN requires 1 input.\");if(i[0].dims.length!==4)throw new Error('currently only support LRN for input with \"NCHW\" format');if(i[0].type!==\"float32\")throw new Error(\"input should be float type\")}});var Db,Pi,Kf,Jf,Yf,Lb,$b,kb,Bb,Fb,Cb,Nb,Rb,Zf=O(()=>{\"use strict\";It();Y();ut();j();Db={name:\"Pad\",inputNames:[\"A\"],inputTypes:[0]},Pi=(i,e,o)=>(kb(e),[i.run({...Db,cacheHint:o.cacheKey,get:()=>$b(i,e[0],o)},e)]),Kf=i=>{let e=i.attributes.getString(\"mode\",\"constant\"),o=i.attributes.getFloat(\"value\",0),t=i.attributes.getInts(\"pads\");return W({mode:e,value:o,pads:t})},Jf=(i,e,o)=>{Bb(e);let t=Lb(i,e,o);return Pi(i,[e[0]],t)},Yf=i=>i.attributes.getString(\"mode\",\"constant\"),Lb=(i,e,o)=>{if(!i.session.isInitializer(e[1].dataId)||e.length>=3&&!i.session.isInitializer(e[2].dataId))throw new Error(\"dynamic pad attributes are not allowed\");let t=Array.from(e[1].integerData),r=e.length>=3?e[2].floatData[0]:0;return W({mode:o,pads:t,value:r})},$b=(i,e,o)=>{let t=B.padShape(e.dims.slice(),o.pads),r=t.length,s=`\n ${Fb(i,e,o)}\n float process(int[${r}] indices) {\n return padA(indices);\n }`;return{name:\"Pad\",inputNames:[\"A\"],inputTypes:[0],output:{dims:t,type:e.type,textureType:0},shaderSource:s}},kb=i=>{if(!i||i.length!==1)throw new Error(\"Pad requires 1 input\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\")throw new Error(\"Invalid input type.\")},Bb=i=>{if(!i||i.length!==2&&i.length!==3)throw new Error(\"Pad requires 2 or 3 inputs\");if(i[1].type!==\"int32\")throw new Error(\"Invalid input type.\");if(i.length>=3&&i[2].type===\"string\")throw new Error(\"Invalid input type.\")},Fb=(i,e,o)=>{let t=G(i.session.backend.glContext.version),[r,n]=i.calculateTextureWidthAndHeight(e.dims,0),s=B.computeStrides(e.dims);switch(o.mode){case\"constant\":return Cb(t,e.dims,s,r,n,o.pads,o.value);case\"reflect\":return Nb(t,e.dims,s,r,n,o.pads);case\"edge\":return Rb(t,e.dims,s,r,n,o.pads);default:throw new Error(\"Invalid mode\")}},Cb=(i,e,o,t,r,n,s)=>{let a=e.length,u=\"\";for(let l=a-1;l>=0;--l)u+=`\n k = m[${l}] - ${n[l]};\n if (k < 0) return constant;\n if (k >= ${e[l]}) return constant;\n offset += k * ${o[l]};\n `;return`\n float padA(int m[${a}]) {\n const float constant = float(${s});\n int offset = 0;\n int k = 0;\n ${u}\n vec2 coords = offsetToCoords(offset, ${t}, ${r});\n float value = getColorAsFloat(${i.texture2D}(A, coords));\n return value;\n }\n `},Nb=(i,e,o,t,r,n)=>{let s=e.length,a=\"\";for(let u=s-1;u>=0;--u)a+=`\n k = m[${u}] - ${n[u]};\n if (k < 0) { k = -k; }\n {\n const int _2n_1 = ${2*(e[u]-1)};\n k = int( mod( float(k), float(_2n_1) ) ) ;\n if(k >= ${e[u]}) { k = _2n_1 - k; }\n }\n offset += k * ${o[u]};\n `;return`\n float padA(int m[${s}]) {\n int offset = 0;\n int k = 0;\n ${a}\n vec2 coords = offsetToCoords(offset, ${t}, ${r});\n float value = getColorAsFloat(${i.texture2D}(A, coords));\n return value;\n }\n `},Rb=(i,e,o,t,r,n)=>{let s=e.length,a=\"\";for(let u=s-1;u>=0;--u)a+=`\n k = m[${u}] - ${n[u]};\n if (k < 0) k = 0;\n if (k >= ${e[u]}) k = ${e[u]-1};\n offset += k * ${o[u]};\n `;return`\n float padA(int m[${s}]) {\n int offset = 0;\n int k = 0;\n ${a}\n vec2 coords = offsetToCoords(offset, ${t}, ${r});\n float value = getColorAsFloat(${i.texture2D}(A, coords));\n return value;\n }\n `}});var tc,ec,rc,nc,oc,ic,ac,sc,uc,Gb,Qf,lc,Gn,fc,Rn,Mb,cc=O(()=>{\"use strict\";It();Y();j();tc=(i,e,o)=>{Gn(e);let t={name:\"AveragePool\",inputNames:[\"X\"],inputTypes:[0],cacheHint:o.cacheKey};return[i.run({...t,get:()=>rc(e,t,!1,o)},e)]},ec=i=>{let e=i.attributes.getString(\"auto_pad\",\"NOTSET\"),o=i.attributes.getInt(\"ceil_mode\",0),t=i.attributes.getInt(\"count_include_pad\",0)!==0,r=i.attributes.getInts(\"kernel_shape\"),n=i.attributes.getInts(\"strides\",[]),s=i.attributes.getInts(\"pads\",[]);if(o!==0)throw new Error(\"using ceil() in shape computation is not yet supported for AveragePool\");return W({autoPad:e,ceilMode:o,countIncludePad:t,kernelShape:r,strides:n,pads:s})},rc=(i,e,o,t)=>{let[r,n]=uc(i,t,o),s=B.size(r.kernelShape),a=\"value += _X(x);\",u=\"\";r.countIncludePad?u+=`value /= float(${s});`:u+=`value /= float(${s} - pad);`;let f=`\n ${fc(i[0].dims,r,a,u,\"0.0\")}\n `;return{...e,output:{dims:n,type:i[0].type,textureType:0},shaderSource:f}},nc=(i,e,o)=>{Gn(e);let t={name:\"GlobalAveragePool\",inputNames:[\"X\"],inputTypes:[0],cacheHint:`${o.countIncludePad}`};return[i.run({...t,get:()=>rc(e,t,!0,o)},e)]},oc=i=>{let e=i.attributes.getInt(\"count_include_pad\",0)!==0;return W({autoPad:\"\",ceilMode:0,countIncludePad:e,kernelShape:[],strides:[],pads:[]})},ic=(i,e,o)=>{Gn(e);let t={name:\"MaxPool\",inputNames:[\"X\"],inputTypes:[0],cacheHint:o.cacheKey};return[i.run({...t,get:()=>sc(e,t,!1,o)},e)]},ac=i=>{let e=i.attributes.getString(\"auto_pad\",\"NOTSET\"),o=i.attributes.getInt(\"ceil_mode\",0),t=i.attributes.getInts(\"kernel_shape\"),r=i.attributes.getInts(\"strides\",[]),n=i.attributes.getInts(\"pads\",[]),s=i.attributes.getInt(\"storage_order\",0),a=i.attributes.getInts(\"dilations\",[]);if(s!==0)throw new Error(\"column major storage order is not yet supported for MaxPool\");if(o!==0)throw new Error(\"using ceil() in shape computation is not yet supported for MaxPool\");return W({autoPad:e,ceilMode:o,countIncludePad:!1,kernelShape:t,strides:r,pads:n,storageOrder:s,dilations:a})},sc=(i,e,o,t)=>{let[r,n]=uc(i,t,o),s=`\n value = max(_X(x), value);\n `,a=\"\",l=`\n ${fc(i[0].dims,r,s,a,\"-1e5\")}\n `;return{...e,output:{dims:n,type:i[0].type,textureType:0},shaderSource:l}},uc=(i,e,o)=>{let t=i[0].dims.slice(),r=Object.hasOwnProperty.call(e,\"dilations\"),n=e.kernelShape.slice(),s=e.strides.slice(),a=r?e.dilations.slice():[],u=e.pads.slice();Ue.adjustPoolAttributes(o,t,n,s,a,u);let l=Ue.computePoolOutputShape(o,t,s,a,n,u,e.autoPad),f=Object.assign({},e);return r?Object.assign(f,{kernelShape:n,strides:s,pads:u,dilations:a,cacheKey:e.cacheKey}):Object.assign(f,{kernelShape:n,strides:s,pads:u,cacheKey:e.cacheKey}),[f,l]},Gb={autoPad:\"\",ceilMode:0,countIncludePad:!1,kernelShape:[],strides:[],pads:[],storageOrder:0,dilations:[],cacheKey:\"\"},Qf={name:\"GlobalMaxPool\",inputNames:[\"X\"],inputTypes:[0]},lc=(i,e)=>(Gn(e),[i.run({...Qf,get:()=>sc(e,Qf,!0,Gb)},e)]),Gn=i=>{if(!i||i.length!==1)throw new Error(\"Pool ops requires 1 input.\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\")throw new Error(\"Invalid input type.\")},fc=(i,e,o,t,r)=>{let n=i.length;if(e.kernelShape.length<=2){let s=e.kernelShape[e.kernelShape.length-1],a=e.strides[e.strides.length-1],u=e.pads[e.pads.length/2-1],l=e.pads[e.pads.length-1],f=i[n-1],p=\"\",d=\"\",y=\"\";if(u+l!==0?p=`\n for (int i = 0; i < ${s}; i++) {\n x[${n} - 1] = indices[${n} - 1] * ${a} - ${u} + i;\n if (x[${n} - 1] < 0 || x[${n} - 1] >= ${f}) {\n pad++;\n continue;\n }\n ${o}\n }`:p=`\n for (int i = 0; i < ${s}; i++) {\n x[${n} - 1] = indices[${n} - 1] * ${a} - ${u} + i;\n ${o}\n }`,e.kernelShape.length===2){let v=e.kernelShape[e.kernelShape.length-2],S=e.strides[e.strides.length-2],L=e.pads[e.pads.length/2-2],P=e.pads[e.pads.length-2],A=i[n-2];L+P!==0?d=`\n for (int j = 0; j < ${v}; j++) {\n x[${n} - 2] = indices[${n} - 2] * ${S} - ${L} + j;\n if (x[${n} - 2] < 0 || x[${n} - 2] >= ${A}) {\n pad+= ${s};\n continue;\n }\n `:d=`\n for (int j = 0; j < ${v}; j++) {\n x[${n} - 2] = indices[${n} - 2] * ${S} - ${L} + j;\n `,y=`\n }\n `}return`\n float process(int indices[${n}]) {\n int x[${n}];\n copyVec(indices, x);\n\n float value = ${r};\n int pad = 0;\n ${d}\n ${p}\n ${y}\n ${t}\n return value;\n }\n `}else{let s=B.size(e.kernelShape),a=B.computeStrides(e.kernelShape),u=a.length,l=e.pads.length,f=Mb(u),p=Rn(i,\"inputDims\"),d=Rn(e.pads,\"pads\"),y=Rn(a,\"kernelStrides\"),T=Rn(e.strides,\"strides\"),v=e.pads.reduce((P,A)=>P+A),S=\"\";return v?S=`\n if (x[j] >= inputDims[j] || x[j] < 0) {\n pad++;\n isPad = true;\n break;\n }\n }\n if (!isPad) {\n ${o}\n }`:S=`\n }\n ${o}\n `,`\n ${f}\n float process(int indices[${n}]) {\n int x[${n}];\n copyVec(indices, x);\n int offset[${u}];\n int pads[${l}];\n int inputDims[${n}];\n int kernelStrides[${u}];\n int strides[${u}];\n ${d}\n ${p}\n ${T}\n ${y}\n\n float value = ${r};\n int pad = 0;\n bool isPad = false;\n for (int i = 0; i < ${s}; i++) {\n offsetToIndices(i, kernelStrides, offset);\n isPad = false;\n for (int j = ${n} - ${u}; j < ${n}; j++) {\n x[j] = indices[j] * strides[j - ${n} + ${u}]\n + offset[j - ${n} + ${u}] - pads[j - 2];\n ${S}\n }\n ${t}\n\n return value;\n }\n `}},Rn=(i,e)=>{let o=\"\";for(let t=0;t`\n void offsetToIndices(int offset, int[${i}] strides, out int[${i}] indices) {\n if (${i} == 0) {\n return;\n }\n for (int i = 0; i < ${i} - 1; ++i) {\n indices[i] = offset / strides[i];\n offset -= indices[i] * strides[i];\n }\n indices[${i} - 1] = offset;\n }`});var Xe,Ee,Ub,Vb,pc,dc,hc,mc,bc,gc,yc,xc=O(()=>{\"use strict\";It();Rr();Y();j();Xe=(i,e,o,t,r)=>{Vb(e);let n={name:t,inputNames:[\"A\"],inputTypes:[0]};return[i.run({...n,cacheHint:o.cacheKey,get:()=>Ub(i,e,o,t,r,n)},e)]},Ee=i=>{let e=i.attributes.getInts(\"axes\",[]),o=i.attributes.getInt(\"keepdims\",1)===1;return W({axes:e,keepDims:o})},Ub=(i,e,o,t,r,n)=>{let s=[],a=e[0].dims.length||1,u=[],l=B.normalizeAxes(o.axes,e[0].dims.length),f=r(e,l),p=f[1];for(let T=0;T=0||l.length===0?(o.keepDims&&s.push(1),p=`\n for(int j${T} = 0; j${T} < ${e[0].dims[T]}; j${T}++) {\n inputIdx[${T}] = j${T};\n ${p}\n }`):(u.push(`inputIdx[${T}] = outputIdx[${s.length}];`),s.push(e[0].dims[T]));let y=`\n float process(int outputIdx[${s.length||1}]) {\n float value; // final result\n int inputIdx[${a}]; // addressing input data\n ${u.join(`\n`)}\n ${f[0]} // init ops for reduce max/min\n ${p}\n ${f[2]} // final computation for reduce mean\n return value;\n }`;return{...n,output:{dims:s,type:e[0].type,textureType:0},shaderSource:y}},Vb=i=>{if(!i||i.length!==1)throw new Error(\"Reduce op requires 1 input.\");if(Pe.indexOf(i[0].type)===-1)throw new Error(\"Invalid input type.\")},pc=(i,e,o)=>Xe(i,e,o,\"ReduceSum\",()=>[\"value = 0.0;\",\"value += _A(inputIdx);\",\"\"]),dc=(i,e,o)=>Xe(i,e,o,\"ReduceMean\",(r,n)=>{let s=1;for(let a=0;a=0||n.length===0)&&(s*=r[0].dims[a]);return[\"value = 0.0;\",\"value += _A(inputIdx);\",`value /= ${s}.;`]}),hc=(i,e,o)=>Xe(i,e,o,\"ReduceMax\",(r,n)=>{let s=[];for(let a=0;a=0||n.length===0)&&s.push(`inputIdx[${a}] = 0;`);return[`${s.join(`\n`)}\nvalue = _A(inputIdx);`,\"value = max(value, _A(inputIdx));\",\"\"]}),mc=(i,e,o)=>Xe(i,e,o,\"ReduceMin\",(r,n)=>{let s=[];for(let a=0;a=0||n.length===0)&&s.push(`inputIdx[${a}] = 0;`);return[`${s.join(`\n`)}\nvalue = _A(inputIdx);`,\"value = min(value, _A(inputIdx));\",\"\"]}),bc=(i,e,o)=>Xe(i,e,o,\"ReduceProd\",()=>[\"value = 1.0;\",\"value *= _A(inputIdx);\",\"\"]),gc=(i,e,o)=>Xe(i,e,o,\"ReduceLogSum\",()=>[\"value = 0.0;\",\"value += _A(inputIdx);\",\"value = log(value);\"]),yc=(i,e,o)=>Xe(i,e,o,\"ReduceLogSumSquare\",()=>[\"float t; value = 0.0;\",\"t = _A(inputIdx); value += t * t;\",\"\"])});var Tc,wc=O(()=>{\"use strict\";Y();Tc=(i,e)=>{let o=B.calculateReshapedDims(e[0].dims,e[1].integerData);return i.session.pack?[i.reshapePacked(e[0],o)]:[i.reshapeUnpacked(e[0],o)]}});var vc,Ei,Ic,_c,Gr,zb,Di,Mn,Li=O(()=>{\"use strict\";It();ut();j();vc={name:\"Upsample\",inputNames:[\"X\"],inputTypes:[0]},Ei=(i,e,o)=>(Di(e,o),[i.run({...vc,cacheHint:o.cacheKey,get:()=>zb(i,e,o)},e)]),Ic=i=>Gr(i,7),_c=i=>Gr(i,9),Gr=(i,e)=>{let o=e>=10,t=i.attributes.getString(\"mode\",\"nearest\");if(t!==\"nearest\"&&t!==\"linear\"&&(e<11||t!==\"cubic\"))throw new Error(`unrecognized mode: ${t}`);let r=[];e<9&&(r=i.attributes.getFloats(\"scales\"),Mn(r,t,o));let n=i.attributes.getFloat(\"extrapolation_value\",0),s=e>10?i.attributes.getString(\"coordinate_transformation_mode\",\"half_pixel\"):\"asymmetric\";if([\"asymmetric\",\"pytorch_half_pixel\",\"tf_half_pixel_for_nn\",\"align_corners\",\"tf_crop_and_resize\",\"half_pixel\"].indexOf(s)===-1)throw new Error(`coordinate_transform_mode '${s}' is not supported`);let a=s===\"tf_crop_and_resize\",u=a,l=t===\"nearest\"&&e>=11?i.attributes.getString(\"nearest_mode\",\"round_prefer_floor\"):\"\";if([\"round_prefer_floor\",\"round_prefer_ceil\",\"floor\",\"ceil\",\"\"].indexOf(l)===-1)throw new Error(`nearest_mode '${l}' is not supported`);let f=i.attributes.getFloat(\"cubic_coeff_a\",-.75),p=i.attributes.getInt(\"exclude_outside\",0)!==0;if(p&&t!==\"cubic\")throw new Error(\"exclude_outside can be set to 1 only when mode is CUBIC.\");let d=e<11?!0:t===\"nearest\"&&s===\"asymmetric\"&&l===\"floor\",y=0,T=0,v=0;return e>10?i.inputs.length>2?(y=1,T=2,v=3):(T=1,v=2):e===9&&(T=1),W({opset:e,isResize:o,mode:t,scales:r,extrapolationValue:n,coordinateTransformMode:s,useExtrapolation:u,needRoiInput:a,nearestMode:l,cubicCoefficientA:f,excludeOutside:p,useNearest2xOptimization:d,roiInputIdx:y,scalesInputIdx:T,sizesInputIdx:v})},zb=(i,e,o)=>{let t=G(i.session.backend.glContext.version),[r,n]=i.calculateTextureWidthAndHeight(e[0].dims,0),s=e[0].dims.map((v,S)=>Math.floor(v*o.scales[S])),[a,u]=i.calculateTextureWidthAndHeight(s,0),l=s.length,f=new Array(l),p=new Array(l),d=`\n int output_pitches[${l}];\n int input_pitches[${l}];\n `;for(let v=l-1;v>=0;v--)f[v]=v===l-1?1:f[v+1]*s[v+1],p[v]=v===l-1?1:p[v+1]*e[0].dims[v+1],d+=`\n output_pitches[${v}] = ${f[v]};\n input_pitches[${v}] = ${p[v]};\n `;let y=`\n float getInputFloat(int index) {\n vec2 coords = offsetToCoords(index, ${r}, ${n});\n float value = getColorAsFloat(${t.texture2D}(X, coords));\n return value;\n }\n `,T=o.mode===\"nearest\"?`\n ${y}\n float process(int indices[${l}]) {\n int input_index = 0;\n int output_index = coordsToOffset(TexCoords, ${a}, ${u});\n\n ${d}\n\n int d, m;\n for (int dim = 0; dim < ${l}; ++dim) {\n d = output_index / output_pitches[dim];\n m = output_index - d * output_pitches[dim];\n output_index = m;\n\n if (scales[dim] != 1 && d > 0) {\n int d2 = d / scales[dim];\n m = d - d2 * scales[dim];\n d = d2;\n }\n input_index += input_pitches[dim] * d;\n }\n\n return getInputFloat(input_index);\n }`:l===4?`\n ${y}\n float process(int indices[4]) {\n int input_index = 0;\n int output_index = coordsToOffset(TexCoords, ${a}, ${u});\n\n ${d}\n\n int m;\n int index_of_dim0, index_of_dim1, index_of_dim2, index_of_dim3;\n index_of_dim0 = output_index / output_pitches[0];\n m = output_index - index_of_dim0 * output_pitches[0];\n index_of_dim1 = m / output_pitches[1];\n m = m - index_of_dim1 * output_pitches[1];\n index_of_dim2 = m / output_pitches[2];\n m = m - index_of_dim2 * output_pitches[2];\n index_of_dim3 = m;\n\n int index_of_input_dim2, index_of_input_dim3, x_offset, y_offset;\n index_of_input_dim2 = index_of_dim2 / scales[2];\n y_offset = index_of_dim2 - index_of_input_dim2 * scales[2];\n index_of_input_dim3 = index_of_dim3 / scales[3];\n x_offset = index_of_dim3 - index_of_input_dim3 * scales[3];\n\n input_index = index_of_dim0 * input_pitches[0] +\n index_of_dim1 * input_pitches[1] +\n index_of_input_dim2 * input_pitches[2] +\n index_of_input_dim3;\n\n float x00 = getInputFloat(input_index);\n float x10, x01, x11;\n\n bool end_of_dim2 = false;\n if (index_of_input_dim2 == (${e[0].dims[2]} - 1)) {\n // It's the end in dimension 2\n x01 = x00;\n end_of_dim2 = true;\n } else {\n x01 = getInputFloat(input_index + input_pitches[2]);\n }\n\n if (index_of_input_dim3 == (input_pitches[2] - 1)) {\n // It's the end in dimension 3\n x10 = x00;\n x11 = x01;\n }\n else {\n x10 = getInputFloat(input_index + 1);\n x11 = end_of_dim2 ? x10 : getInputFloat(input_index + input_pitches[2] + 1);\n }\n\n float y0 = x00 + float(y_offset) * (x01 - x00) / float(scales[2]);\n float y1 = x10 + float(y_offset) * (x11 - x10) / float(scales[2]);\n return y0 + float(x_offset) * (y1 - y0) / float(scales[3]);\n }`:`\n ${y}\n float process(int indices[2]) {\n int input_index = 0;\n int output_index = coordsToOffset(TexCoords, ${a}, ${u});\n\n ${d}\n\n int m;\n int index_of_dim0, index_of_dim1;\n index_of_dim0 = output_index / output_pitches[0];\n m = output_index - index_of_dim0 * output_pitches[0];\n index_of_dim1 = m;\n\n int index_of_input_dim0, index_of_input_dim1, x_offset, y_offset;\n index_of_input_dim0 = index_of_dim0 / scales[0];\n y_offset = index_of_dim0 - index_of_input_dim0 * scales[0];\n index_of_input_dim1 = index_of_dim1 / scales[1];\n x_offset = index_of_dim1 - index_of_input_dim1 * scales[1];\n\n input_index = index_of_input_dim0 * input_pitches[0] + index_of_input_dim1;\n\n float x00 = getInputFloat(input_index);\n float x10, x01, x11;\n\n bool end_of_dim0 = false;\n if (index_of_input_dim0 == (${e[0].dims[0]} - 1)) {\n // It's the end in dimension 0\n x01 = x00;\n end_of_dim0 = true;\n } else {\n x01 = getInputFloat(input_index + input_pitches[0]);\n }\n\n if (index_of_input_dim1 == (input_pitches[0] - 1)) {\n // It's the end in dimension 1\n x10 = x00;\n x11 = x01;\n }\n else {\n x10 = getInputFloat(input_index + 1);\n x11 = end_of_dim0 ? x10 : getInputFloat(input_index + input_pitches[0] + 1);\n }\n\n float y0 = x00 + float(y_offset) * (x01 - x00) / float(scales[0]);\n float y1 = x10 + float(y_offset) * (x11 - x10) / float(scales[0]);\n return y0 + float(x_offset) * (y1 - y0) / float(scales[1]);\n }`;return{...vc,output:{dims:s,type:e[0].type,textureType:0},shaderSource:T,variables:[{name:\"scales\",type:\"int\",arrayLength:o.scales.length,data:o.scales.map(v=>Math.ceil(v))}]}},Di=(i,e)=>{if(!i||e.opset<9&&i.length!==1||e.opset>=9&&e.opset<11&&i.length!==2||e.opset>=11&&i.length<2)throw new Error(\"invalid inputs.\");if(e.scales.length>0&&i[0].dims.length!==e.scales.length)throw new Error(\"Invalid input shape.\");if(i[0].type===\"string\")throw new Error(\"Invalid input tensor types.\")},Mn=(i,e,o)=>{if(o){for(let t of i)if(t<=0)throw new Error(\"Scale value should be greater than 0.\")}else for(let t of i)if(t<1)throw new Error(\"Scale value should be greater than or equal to 1.\");if((e===\"linear\"||e===\"cubic\")&&i.length!==2&&(i.length!==4||i[0]!==1||i[1]!==1))throw new Error(`'Linear' mode and 'Cubic' mode only support 2-D inputs ('Bilinear', 'Bicubic') or 4-D inputs with the corresponding outermost 2 scale values being 1 in the ${o?\"Resize\":\"Upsample\"} opeartor.`)}});var $i,ki,Oc,Sc,Wb,Hb,qb,jb,Ac=O(()=>{\"use strict\";ut();j();pe();He();Li();$i={name:\"Resize\",inputNames:[\"A\"],inputTypes:[2]},ki=(i,e,o)=>(Di(e,o),[i.run({...$i,cacheHint:o.cacheKey,get:()=>Wb(i,e,o)},e)]),Oc=i=>Gr(i,10),Sc=i=>Gr(i,11),Wb=(i,e,o)=>{let t=G(i.session.backend.glContext.version),[r,n]=Hb(e,o);if(r.every(A=>A===1)&&o.coordinateTransformMode!==\"tf_crop_and_resize\")return{...$i,output:{dims:n,type:e[0].type,textureType:2},hasMain:!0,shaderSource:`void main() {\n vec4 v = ${t.texture2D}(X, TexCoords);\n ${t.output} = v;\n }`};let a=n.length;if(a<2)throw new Error(`output dimension should be at least 2, but got ${a}`);let u=n[a-2],l=n[a-1],f=e[0].dims;if(a!==f.length)throw new Error(`output dimension should match input ${f.length}, but got ${a}`);let p=f[a-2],d=f[a-1],y=r[a-2],T=r[a-1],v=\"\";if(o.mode!==\"linear\")throw new Error(`resize (packed) does not support mode: '${o.mode}'`);switch(o.coordinateTransformMode){case\"asymmetric\":v=`\n vec4 getSourceFracIndex(ivec4 coords) {\n return vec4(coords) / scaleWHWH;\n }\n `;break;case\"half_pixel\":v=`\n vec4 getSourceFracIndex(ivec4 coords) {\n return (vec4(coords) + 0.5) / scaleWHWH - 0.5;\n }\n `;break;case\"pytorch_half_pixel\":v=`\n vec4 getSourceFracIndex(ivec4 coords) {\n vec4 fcoords = vec4(coords);\n return vec4(\n ${l}.0 > 1.0 ? (fcoords.x + 0.5) / scaleWHWH.x - 0.5 : 0.0,\n ${u}.0 > 1.0 ? (fcoords.y + 0.5) / scaleWHWH.y - 0.5 : 0.0,\n ${l}.0 > 1.0 ? (fcoords.z + 0.5) / scaleWHWH.z - 0.5 : 0.0,\n ${u}.0 > 1.0 ? (fcoords.w + 0.5) / scaleWHWH.w - 0.5 : 0.0\n );\n }\n `;break;case\"align_corners\":v=`\n vec4 getSourceFracIndex(ivec4 coords) {\n vec4 resized = vec4(${l}.0 - 1.0, ${u}.0 - 1.0, ${l}.0 - 1.0,\n ${u}.0 - 1.0);\n vec4 original = vec4(${d}.0 - 1.0, ${p}.0 - 1.0, ${d}.0 - 1.0,\n ${p}.0 - 1.0);\n vec4 new_scale = original / resized;\n return vec4(coords) * new_scale;\n }\n `;break;default:throw new Error(`resize (packed) does not support coordinateTransformMode: '${o.coordinateTransformMode}'`)}let S=Bt(a),L=de(),P=`\n const vec2 inputWH = vec2(${p}.0, ${d}.0);\n const vec4 scaleWHWH = vec4(float(${y}), float(${T}), float(${y}), float(${T}));\n ${L}\n ${v}\n float getAValue(int x10, int r, int c, int d) {\n return getChannel(getA(x10, r, c, d), vec2(c, d));\n }\n void main() {\n ${S} rc = getOutputCoords();\n\n int batch = rc[0];\n int depth = rc[1];\n\n // retrieve the 4 coordinates that is used in the 4 packed output values.\n ivec4 coords = ivec4(rc.wz, rc.w + 1, rc.z + 1);\n\n // calculate the source index in fraction\n vec4 sourceFrac = getSourceFracIndex(coords);\n\n // get the lower and upper bound of the 4 values that will be packed into one texel.\n ivec4 x00 = ivec4(max(sourceFrac.xy, vec2(0.0)), min(inputWH - 1.0, ceil(sourceFrac.xy)));\n ivec4 x01 = ivec4(max(sourceFrac.xw, vec2(0.0)), min(inputWH - 1.0, ceil(sourceFrac.xw)));\n ivec4 x10 = ivec4(max(sourceFrac.zy, vec2(0.0)), min(inputWH - 1.0, ceil(sourceFrac.zy)));\n ivec4 x11 = ivec4(max(sourceFrac.zw, vec2(0.0)), min(inputWH - 1.0, ceil(sourceFrac.zw)));\n\n bool hasNextRow = rc.w < ${u-1};\n bool hasNextCol = rc.z < ${l-1};\n\n // pack x00, x01, x10, x11's top-left corner into one vec4 structure\n vec4 topLeft = vec4(\n getAValue(batch, depth, x00.x, x00.y),\n hasNextCol ? getAValue(batch, depth, x01.x, x01.y) : 0.0,\n hasNextRow ? getAValue(batch, depth, x10.x, x10.y) : 0.0,\n (hasNextRow && hasNextCol) ? getAValue(batch, depth, x11.x, x11.y) : 0.0);\n\n // pack x00, x01, x10, x11's top-right corner into one vec4 structure\n vec4 topRight = vec4(\n getAValue(batch, depth, x00.x, x00.w),\n hasNextCol ? getAValue(batch, depth, x01.x, x01.w) : 0.0,\n hasNextRow ? getAValue(batch, depth, x10.x, x10.w) : 0.0,\n (hasNextRow && hasNextCol) ? getAValue(batch, depth, x11.x, x11.w) : 0.0);\n\n // pack x00, x01, x10, x11's bottom-left corner into one vec4 structure\n vec4 bottomLeft = vec4(\n getAValue(batch, depth, x00.z, x00.y),\n hasNextCol ? getAValue(batch, depth, x01.z, x01.y) : 0.0,\n hasNextRow ? getAValue(batch, depth, x10.z, x10.y) : 0.0,\n (hasNextRow && hasNextCol) ? getAValue(batch, depth, x11.z, x11.y) : 0.0);\n\n // pack x00, x01, x10, x11's bottom-right corner into one vec4 structure\n vec4 bottomRight = vec4(\n getAValue(batch, depth, x00.z, x00.w),\n hasNextCol ? getAValue(batch, depth, x01.z, x01.w) : 0.0,\n hasNextRow ? getAValue(batch, depth, x10.z, x10.w) : 0.0,\n (hasNextRow && hasNextCol) ? getAValue(batch, depth, x11.z, x11.w) : 0.0);\n\n // calculate the interpolation fraction on u and v direction\n vec4 frac = vec4(sourceFrac) - floor(sourceFrac);\n vec4 clampFrac = clamp(frac, vec4(0.0), vec4(1.0));\n\n vec4 top = mix(topLeft, topRight, clampFrac.ywyw);\n vec4 bottom = mix(bottomLeft, bottomRight, clampFrac.ywyw);\n vec4 newValue = mix(top, bottom, clampFrac.xxzz);\n\n ${t.output} = vec4(newValue);\n }\n `;return{...$i,output:{dims:n,type:e[0].type,textureType:2},hasMain:!0,shaderSource:P}},Hb=(i,e)=>{let t=i[0].dims,r=e.scales,n;if(r.length===0){let a=i[e.scalesInputIdx];if(a&&a.size!==0){if(i[e.sizesInputIdx])throw new Error(\"Only one of scales or sizes must be provided as input.\");r=qb(a,e.mode,e.isResize)}else{let u=i[e.sizesInputIdx];if(!u||u.size===0)throw new Error(\"Either scales or sizes MUST be provided as input.\");n=Array.from(u.integerData),r=jb(n,t,e.mode,e.isResize)}}else if(i[e.sizesInputIdx])throw new Error(\"Only one of scales or sizes must be provided as input.\");let s=n||t.map((a,u)=>Math.floor(a*r[u]));return[r,s]},qb=(i,e,o)=>{let t=Array.from(i.floatData);return Mn(t,e,o),t},jb=(i,e,o,t)=>{let r=e.length,n=new Array(r);for(let s=0,a=r;s{\"use strict\";We();Pc=(i,e)=>(Xb(e),[new bt([e[0].dims.length],\"int32\",void 0,void 0,new Int32Array(e[0].dims))]),Xb=i=>{if(!i||i.length!==1)throw new Error(\"Shape requires 1 input.\")}});var Bi,Dc,Lc,$c,Kb,kc,Jb,Yb,Bc=O(()=>{\"use strict\";It();Rr();Y();j();Bi={name:\"Slice\",inputNames:[\"A\"],inputTypes:[0]},Dc=(i,e,o)=>(Kb(e),[i.run({...Bi,cacheHint:o.cacheKey,get:()=>$c(i,e[0],o)},e)]),Lc=i=>{let e=i.attributes.getInts(\"starts\"),o=i.attributes.getInts(\"ends\"),t=i.attributes.getInts(\"axes\",[]);return W({starts:e,ends:o,axes:t})},$c=(i,e,o)=>{let t=o.axes.length===0?e.dims.slice(0).map((p,d)=>d):o.axes,r=B.normalizeAxes(t,e.dims.length),n=o.starts.map((p,d)=>p>e.dims[r[d]]-1?e.dims[r[d]]:B.normalizeAxis(p,e.dims[r[d]])),s=o.ends.map((p,d)=>p>e.dims[r[d]]-1?e.dims[r[d]]:B.normalizeAxis(p,e.dims[r[d]])),a=e.dims.slice(),u=[];for(let p=0;p0&&u.push(`outputIdx[${r[p]}] += ${n[p]};`);let f=`\n float process(int outputIdx[${a.length}]) {\n ${u.join(`\n `)}\n return _A(outputIdx);\n }`;return{...Bi,output:{dims:a,type:e.type,textureType:0},shaderSource:f}},Kb=i=>{if(!i||i.length!==1)throw new Error(\"Slice requires 1 input.\");if(Pe.indexOf(i[0].type)===-1)throw new Error(\"Invalid input type.\")},kc=(i,e)=>{Yb(e);let o=Jb(i,e);return[i.run({...Bi,cacheHint:o.cacheKey,get:()=>$c(i,e[0],o)},[e[0]])]},Jb=(i,e)=>{if(!i.session.isInitializer(e[1].dataId)||!i.session.isInitializer(e[2].dataId)||e.length>=4&&!i.session.isInitializer(e[3].dataId)||e.length>=5&&!i.session.isInitializer(e[4].dataId))throw new Error(\"dynamic slice attributes are not allowed\");if(e.length>=5&&e[4].integerData.some(s=>s!==1))throw new Error(\"currently non-1 steps is not supported for Slice\");let o=Array.from(e[1].integerData),t=Array.from(e[2].integerData),r=e.length>=4?Array.from(e[3].integerData):[],n=`${r};${o};${t}`;return{starts:o,ends:t,axes:r,cacheKey:n}},Yb=i=>{if(!i||i.length<3||i.length>5)throw new Error(\"Invalid input number.\");if(i[1].type!==\"int32\"||i[1].dims.length!==1)throw new Error(\"Invalid input type.\");if(i[2].type!==\"int32\"||i[2].dims.length!==1)throw new Error(\"Invalid input type.\");if(i.length>=4&&(i[3].type!==\"int32\"||i[3].dims.length!==1))throw new Error(\"Invalid input type.\");if(i.length>=5&&(i[4].type!==\"int32\"||i[4].dims.length!==1))throw new Error(\"Invalid input type.\")}});var Fc,Cc,Nc,Rc,Gc,Mc,Uc,Vc,Zb,Qb,tg,zc,Wc=O(()=>{\"use strict\";It();Y();ut();j();Nn();Fc={name:\"SoftmaxComputeMax\",inputNames:[\"A\"],inputTypes:[0]},Cc={name:\"SoftmaxComputeScale\",inputNames:[\"A\",\"Max\"],inputTypes:[0,0]},Nc={name:\"SoftMax\",inputNames:[\"A\",\"Max\",\"Norm\"],inputTypes:[0,0,0]},Rc=(i,e,o)=>{zc(e);let t=e[0].dims.slice(),r=B.normalizeAxis(o.axis,t.length),n=B.sizeToDimension(t,r),s=B.sizeFromDimension(t,r);return Vc(i,e,o,n,s)},Gc=i=>W({axis:i.attributes.getInt(\"axis\",1)}),Mc=i=>W({axis:i.attributes.getInt(\"axis\",-1)}),Uc=(i,e,o)=>{zc(e);let t=e[0].dims.slice(),r=B.normalizeAxis(o.axis,t.length),n=t.length,s=r!==n-1,a=[],u=[],l=[],f;s&&(u=Array.from({length:n}).map((T,v)=>v),u[r]=n-1,u[n-1]=r,u.map(T=>a.push(t[T])),f=W({perm:u}),l=je(i,e,f));let p=s?B.sizeToDimension(a,n-1):B.sizeToDimension(t,n-1),d=s?B.sizeFromDimension(a,n-1):B.sizeFromDimension(t,n-1),y=Vc(i,s?l:e,o,p,d);return s?je(i,y,f):y},Vc=(i,e,o,t,r)=>{let n=Zb(i,e[0],t,r,[t]),s=i.run({...Fc,cacheHint:o.cacheKey,get:()=>n},e),a=Qb(i,e[0],t,r,n.output.dims,[t]),u=i.run({...Cc,cacheHint:o.cacheKey,get:()=>a},[e[0],s]),l=tg(i,e[0],t,r,n.output.dims,a.output.dims);return[i.run({...Nc,cacheHint:o.cacheKey,get:()=>l},[e[0],s,u])]},Zb=(i,e,o,t,r)=>{let[n,s]=i.calculateTextureWidthAndHeight(e.dims,0),a=r.length;if(o<1||t<1)throw new Error(\"Logical row count N and feature count D must be greater than or equal to 1\");if(r.length!==1)throw new Error(\"Dimensionality of the output should be 1\");if(r[0]!==o)throw new Error(\"Shape of the output should be equal to logical row count\");let u=G(i.session.backend.glContext.version),l=`\n float process(int[${a}] indices) {\n int logical_row_start_offset = indices[0] * ${t};\n\n float max = getColorAsFloat(${u.texture2D}(A, offsetToCoords(logical_row_start_offset, ${n},\n ${s} )));\n for(int i=1; i<${t}; ++i)\n {\n float current = getColorAsFloat(${u.texture2D}(A, offsetToCoords(logical_row_start_offset + i,\n ${n}, ${s})));\n if(current > max)\n max = current;\n }\n\n return max;\n }`;return{...Fc,output:{dims:r,type:e.type,textureType:0},shaderSource:l}},Qb=(i,e,o,t,r,n)=>{let[s,a]=i.calculateTextureWidthAndHeight(e.dims,0),u=n.length;if(o<1||t<1)throw new Error(\"Logical row count N and feature count D must be greater than or equal to 1\");if(n.length!==1)throw new Error(\"Dimensionality of the output should be 1\");if(n[0]!==o)throw new Error(\"Shape of the output should be equal to logical row count\");if(r.length!==1)throw new Error(\"Dimensionality of the intermediate results should be 1\");if(r[0]!==o)throw new Error(\"Shape of the intermediate results should be equal to logical row count\");let l=G(i.session.backend.glContext.version),f=`\n float process(int[${u}] indices) {\n int logical_row_start_offset = indices[0] * ${t};\n\n float norm_factor = 0.0;\n float max = _Max(indices);\n for(int i=0; i<${t}; ++i)\n {\n norm_factor += exp(getColorAsFloat(${l.texture2D}(A, offsetToCoords(logical_row_start_offset + i,\n ${s}, ${a}))) - max);\n }\n\n return norm_factor;\n }`;return{...Cc,output:{dims:n,type:e.type,textureType:0},shaderSource:f}},tg=(i,e,o,t,r,n)=>{let[s,a]=i.calculateTextureWidthAndHeight(e.dims,0),u=e.dims.length;if(o<1||t<1)throw new Error(\"Logical row count N and feature count D must be greater than or equal to 1\");if(r.length!==1||n.length!==1)throw new Error(\"Dimensionality of the intermediate results should be 1\");if(r[0]!==o||n[0]!==o)throw new Error(\"Shape of the intermediate results should be equal to logical row count\");let l=`\n float process(int[${u}] indices) {\n\n // get offset of current logical tensor index from the 2-D texture coordinates (TexCoords)\n int offset = coordsToOffset(TexCoords, ${s}, ${a});\n\n //determine the logical row for this index\n int logical_row_index[1];\n logical_row_index[0] = offset / ${t};\n\n float norm_factor = _Norm(logical_row_index);\n\n // avoid possible division by 0\n // if norm_facor is 0, all elements are zero\n // if so, return 0\n if(norm_factor == 0.0)\n return 0.0;\n\n return exp(_A(indices) - _Max(logical_row_index)) / norm_factor;\n }`;return{...Nc,output:{dims:e.dims,type:e.type,textureType:0},shaderSource:l}},zc=i=>{if(!i||i.length!==1)throw new Error(\"Softmax requires 1 input.\");if(i[0].type!==\"float32\"&&i[0].type!==\"float64\")throw new Error(\"Invalid input type\")}});var Hc,qc,jc,eg,rg,ng,Xc=O(()=>{\"use strict\";It();Y();j();Hc={name:\"Split\",inputNames:[\"A\"],inputTypes:[0]},qc=(i,e,o)=>{ng(e);let t=B.normalizeAxis(o.axis,e[0].dims.length),r=eg(i,e,t,o),n=[];for(let s=0;srg(i,e[0],o,t,s)},e));return n},jc=i=>{let e=i.attributes.getInt(\"axis\",0),o=i.attributes.getInts(\"split\",[]),t=i.outputs.length;return W({axis:e,split:o,numOutputs:t})},eg=(i,e,o,t)=>{let[,r]=$r.splitShape(e[0].dims,o,t.split,t.numOutputs);return r.length},rg=(i,e,o,t,r)=>{let[n,s]=$r.splitShape(e.dims,t,o.split,o.numOutputs),a=s[r],u=n[r],f=`\n float process(int indices[${u.length}]) {\n indices[${t}] += ${a};\n return _A(indices);\n }\n `;return{...Hc,cacheHint:`${o.cacheKey}:${r}`,output:{dims:u,type:e.type,textureType:0},shaderSource:f}},ng=i=>{if(!i||i.length!==1)throw new Error(\"Split requires one input.\");if(i[0].type!==\"int8\"&&i[0].type!==\"uint8\"&&i[0].type!==\"int16\"&&i[0].type!==\"uint16\"&&i[0].type!==\"int32\"&&i[0].type!==\"uint32\"&&i[0].type!==\"float32\"&&i[0].type!==\"float64\"&&i[0].type!==\"bool\")throw new Error(\"Invalid input type.\")}});var Fi,Kc,Jc,og,ig,Yc=O(()=>{\"use strict\";Y();Fi=(i,e,o)=>{og(e);let t=B.squeezeShape(e[0].dims,o);return[i.reshapeUnpacked(e[0],t)]},Kc=(i,e)=>(ig(e),Fi(i,[e[0]],Array.from(e[1].integerData))),Jc=i=>i.attributes.getInts(\"axes\"),og=i=>{if(!i||i.length!==1)throw new Error(\"Squeeze requires 1 input.\");if(i[0].type===\"string\")throw new Error(\"invalid input tensor types.\")},ig=i=>{if(!i||i.length!==2)throw new Error(\"Squeeze requires 2 inputs.\");if(i[1].type!==\"int32\")throw new Error(\"Invalid input type.\")}});var Zc,ag,sg,Qc=O(()=>{\"use strict\";ut();j();Zc=(i,e)=>{sg(e);let o={name:\"Sum\",inputNames:e.map((r,n)=>`X${n}`),inputTypes:new Array(e.length).fill(0)};return[i.run({...o,get:()=>ag(i,e,o)},e)]},ag=(i,e,o)=>{let t=G(i.session.backend.glContext.version),r=e[0].dims.slice(),s=`\n void main() {\n vec4 result = ${e.map((a,u)=>`${t.texture2D}(X${u},TexCoords)`).join(\" + \")};\n ${t.output} = result;\n }\n `;return{...o,output:{dims:r,type:e[0].type,textureType:0},hasMain:!0,shaderSource:s}},sg=i=>{if(!i||i.length===0)throw new Error(\"Sum requires inputs.\");let e=i[0].dims.length;for(let o=1;o{\"use strict\";Rr();j();tp=(i,e)=>{lg(e);let o={name:\"Tile\",inputNames:[\"A\"],inputTypes:[0]};return[i.run({...o,get:()=>ug(i,e,o)},e)]},ug=(i,e,o)=>{let t=e[0].dims.slice(),r=new Array(t.length),n=[];for(let u=0;u{if(!i||i.length!==2)throw new Error(\"Tile requires 2 input.\");if(i[1].dims.length!==1)throw new Error(\"The second input shape must 1 dimension.\");if(i[1].dims[0]!==i[0].dims.length)throw new Error(\"Invalid input shape.\");if(Pe.indexOf(i[0].type)===-1)throw new Error(\"Invalid input type.\");if(i[1].type!==\"int32\"&&i[1].type!==\"int16\")throw new Error(\"Invalid repeat type.\")}});var Ci,rp,np,fg,cg,op=O(()=>{\"use strict\";Y();Ci=(i,e,o)=>{fg(e);let t=B.unsqueezeShape(e[0].dims,o);return[i.reshapeUnpacked(e[0],t)]},rp=(i,e)=>(cg(e),Ci(i,[e[0]],Array.from(e[1].integerData))),np=i=>i.attributes.getInts(\"axes\"),fg=i=>{if(!i||i.length!==1)throw new Error(\"Unsqueeze requires 1 input.\");if(i[0].type===\"string\")throw new Error(\"invalid input tensor types.\")},cg=i=>{if(!i||i.length!==2)throw new Error(\"Unsqueeze requires 2 inputs.\");if(i[1].type!==\"int32\")throw new Error(\"Invalid input type.\")}});var ip,ap=O(()=>{\"use strict\";ml();Pl();Ll();Nl();Bn();wf();Af();Df();kf();Nf();Mf();Wf();Xf();Fn();Zf();cc();xc();wc();Ac();Ec();Bc();Wc();Xc();Yc();Qc();ep();Nn();xi();op();Li();ip=[[\"Abs\",\"\",\"6+\",Rl],[\"Acos\",\"\",\"7+\",Gl],[\"Add\",\"\",\"7+\",bl],[\"And\",\"\",\"7+\",gl],[\"Asin\",\"\",\"7+\",Ml],[\"Atan\",\"\",\"7+\",Ul],[\"AveragePool\",\"\",\"7+\",tc,ec],[\"BatchNormalization\",\"\",\"7+\",dl,hl],[\"Cast\",\"\",\"6+\",El,Dl],[\"Ceil\",\"\",\"6+\",Wl],[\"Clip\",\"\",\"6-10\",gi,Vl],[\"Clip\",\"\",\"11+\",zl],[\"Concat\",\"\",\"4+\",Bl,Cl],[\"Conv\",\"\",\"1+\",Oi,Si],[\"ConvTranspose\",\"\",\"1+\",xf,Tf],[\"Cos\",\"\",\"7+\",Hl],[\"Div\",\"\",\"7+\",yl],[\"Dropout\",\"\",\"7+\",yi],[\"DepthToSpace\",\"\",\"1+\",Of,Sf],[\"Equal\",\"\",\"7+\",xl],[\"Elu\",\"\",\"6+\",ql,jl],[\"Exp\",\"\",\"6+\",Xl],[\"Flatten\",\"\",\"1+\",Pf,Ef],[\"Floor\",\"\",\"6+\",Kl],[\"FusedConv\",\"com.microsoft\",\"1+\",Oi,Si],[\"Gather\",\"\",\"1+\",Lf,$f],[\"Gemm\",\"\",\"7-10\",Ai,Ff],[\"Gemm\",\"\",\"11+\",Ai,Cf],[\"GlobalAveragePool\",\"\",\"1+\",nc,oc],[\"GlobalMaxPool\",\"\",\"1+\",lc],[\"Greater\",\"\",\"7+\",Tl],[\"Identity\",\"\",\"1+\",yi],[\"ImageScaler\",\"\",\"1+\",Rf,Gf],[\"InstanceNormalization\",\"\",\"6+\",Vf,zf],[\"LeakyRelu\",\"\",\"6+\",Jl,Yl],[\"Less\",\"\",\"7+\",wl],[\"LRN\",\"\",\"1+\",Hf,qf],[\"Log\",\"\",\"6+\",Zl],[\"MatMul\",\"\",\"1+\",pf,df],[\"MaxPool\",\"\",\"1+\",ic,ac],[\"Mul\",\"\",\"7+\",vl],[\"Neg\",\"\",\"6+\",Ql],[\"Not\",\"\",\"1+\",tf],[\"Or\",\"\",\"7+\",Il],[\"Pad\",\"\",\"2-10\",Pi,Kf],[\"Pad\",\"\",\"11+\",Jf,Yf],[\"Pow\",\"\",\"7+\",_l],[\"PRelu\",\"\",\"7+\",Ol],[\"ReduceLogSum\",\"\",\"1+\",gc,Ee],[\"ReduceMax\",\"\",\"1+\",hc,Ee],[\"ReduceMean\",\"\",\"1+\",dc,Ee],[\"ReduceMin\",\"\",\"1+\",mc,Ee],[\"ReduceProd\",\"\",\"1+\",bc,Ee],[\"ReduceSum\",\"\",\"1-12\",pc,Ee],[\"ReduceSumSquare\",\"\",\"1+\",yc,Ee],[\"Relu\",\"\",\"6+\",ef],[\"Reshape\",\"\",\"5+\",Tc],[\"Resize\",\"\",\"10\",ki,Oc],[\"Resize\",\"\",\"11+\",ki,Sc],[\"Shape\",\"\",\"1+\",Pc],[\"Sigmoid\",\"\",\"6+\",rf],[\"Sin\",\"\",\"7+\",nf],[\"Slice\",\"\",\"10+\",kc],[\"Slice\",\"\",\"1-9\",Dc,Lc],[\"Softmax\",\"\",\"1-12\",Rc,Gc],[\"Softmax\",\"\",\"13+\",Uc,Mc],[\"Split\",\"\",\"2-12\",qc,jc],[\"Sqrt\",\"\",\"6+\",of],[\"Squeeze\",\"\",\"1-12\",Fi,Jc],[\"Squeeze\",\"\",\"13+\",Kc],[\"Sub\",\"\",\"7+\",Sl],[\"Sum\",\"\",\"6+\",Zc],[\"Tan\",\"\",\"7+\",af],[\"Tanh\",\"\",\"6+\",sf],[\"Tile\",\"\",\"6+\",tp],[\"Transpose\",\"\",\"1+\",je,If],[\"Upsample\",\"\",\"7-8\",Ei,Ic],[\"Upsample\",\"\",\"9\",Ei,_c],[\"Unsqueeze\",\"\",\"1-12\",Ci,np],[\"Unsqueeze\",\"\",\"13+\",rp],[\"Xor\",\"\",\"7+\",Al]]});function up(i){let e={},o;for(;(o=sp.exec(i))!==null;){let t=o[3].split(\",\").map(r=>{let n=r.trim().split(\" \");return n&&n.length===2?{type:n[0],name:n[1]}:null}).filter(r=>r!==null);e[o[2]]={params:t,body:o[4]}}for(let t in e){let r=pg.replace(\"__FUNC__\",t),n=new RegExp(r,\"gm\");for(;(o=n.exec(i))!==null;){let s=o[1],a=o[2],u=o[3].split(\",\"),l=s?`${s} ${a};`:\"\",f=e[t].body,p=\"\";e[t].params.forEach((y,T)=>{y&&(p+=`${y.type} ${y.name} = ${u[T]};\n`)}),f=`${p}\n ${f}`,f=f.replace(\"return\",`${a} = `);let d=`\n ${l}\n {\n ${f}\n }\n `;i=i.replace(o[0],d)}}return i=i.replace(sp,\"\"),i}var sp,pg,lp=O(()=>{\"use strict\";sp=/@inline[\\s\\n\\r]+(\\w+)[\\s\\n\\r]+([0-9a-zA-Z_]+)\\s*\\(([^)]*)\\)\\s*{(([^}]|[\\n\\r])*)}/gm,pg=\"(\\\\w+)?\\\\s+([_0-9a-zA-Z]+)\\\\s+=\\\\s+__FUNC__\\\\((.*)\\\\)\\\\s*;\"});function hr(i,e){let o=[],t=[],r=e!=null&&Array.isArray(e)&&e.length===0,n=e==null||r?null:dg(e,i).sort(),s=0;for(let a=0;aa)&&i[a]===1&&(o.push(i[a]),t.push(a)),n[s]<=a&&s++}i[a]!==1&&(o.push(i[a]),t.push(a))}return{newShape:o,keptDims:t}}function dg(i,e){let o=e.length;return i=i==null?e.map((t,r)=>r):[].concat(i),ur(i.every(t=>t>=-o&&t`All values in axis param must be in range [-${o}, ${o}) but got axis ${i}`),ur(i.every(hg),()=>`All values in axis param must be integers but got axis ${i}`),i.map(t=>t<0?o+t:t)}function hg(i){return i%1===0}function mg(i){if(i.length===0)return 1;let e=i[0];for(let o=1;o{\"use strict\";Ut();Y();Un=class{constructor(e){this.maxTextureSize=e}computeTextureWH(e,o){let t=this.computeTexture(e,o);return o&&o.isPacked&&(t[0]/=2,t[1]/=2),o&&o.reverseWH?[t[1],t[0]]:t}computeTexture(e,o){let t=o&&o.isPacked;if(e.length===0)return t?[2,2]:[1,1];let r=this.maxTextureSize;if(o&&o.breakAxis!==void 0){let a=o.breakAxis>=e.length?1:e.slice(o.breakAxis).reduce((l,f)=>l*f),u=o.breakAxis<=0?1:e.slice(0,o.breakAxis).reduce((l,f)=>l*f);if(a>r||u>r)tt.verbose(\"TextureLayout\",`Given width/height preferences were unattainable: shape:${e}, breakAxis:${o.breakAxis}`);else return[a,u]}let n=e.slice(0);t&&(r=r*2,n=n.map((a,u)=>u>=n.length-2?n[u]%2===0?n[u]:n[u]+1:n[u]),n.length===1&&(n=[2,n[0]])),n.length!==2&&(n=hr(n).newShape);let s=mg(n);return n.length<=1&&s<=r?[1,s]:n.length===2&&n[0]<=r&&n[1]<=r?n:n.length===3&&n[0]*n[1]<=r&&n[2]<=r?[n[0]*n[1],n[2]]:n.length===3&&n[0]<=r&&n[1]*n[2]<=r?[n[0],n[1]*n[2]]:n.length===4&&n[0]*n[1]*n[2]<=r&&n[3]<=r?[n[0]*n[1]*n[2],n[3]]:n.length===4&&n[0]<=r&&n[1]*n[2]*n[3]<=r?[n[0],n[1]*n[2]*n[3]]:t?fp(s/4).map(a=>a*2):fp(s)}}});var Vn,cp=O(()=>{\"use strict\";Y();Te();ut();Ni();pe();Vn=class extends Ht{constructor(o){super(o)}getFunctions(){return{...this.offsetToCoords(),...this.coordsToOffset(),...this.toVec(),...this.valueFrom(),...this.getCommonUtilFuncs(),...this.getInputsSamplingSnippets(),...this.getOutputSamplingSnippet()}}getCustomTypes(){return{}}offsetToCoords(){let o=\"offsetToCoords\";return{offsetToCoords:new k(`\n vec2 ${o}(int offset, int width, int height) {\n int t = offset / width;\n int s = offset - t*width;\n vec2 coords = (vec2(s,t) + vec2(0.5,0.5)) / vec2(width, height);\n return coords;\n }\n `)}}coordsToOffset(){let o=\"coordsToOffset\";return{coordsToOffset:new k(`\n int ${o}(vec2 coords, int width, int height) {\n float s = coords.s * float(width);\n float t = coords.t * float(height);\n int offset = int(t) * width + int(s);\n return offset;\n }\n `)}}getOutputSamplingSnippet(){let o=this.context.outputTextureLayout;return o.isPacked?this.getPackedOutputSamplingSnippet(o):this.getUnpackedOutputSamplingSnippet(o)}getPackedOutputSamplingSnippet(o){let t=o.unpackedShape,r=[o.width,o.height],n={},s=\"getOutputCoords\";switch(t.length){case 0:n[s]=this.getOutputScalarCoords();break;case 1:n[s]=this.getOutputPacked1DCoords(t,r);break;case 2:n[s]=this.getOutputPacked2DCoords(t,r);break;case 3:n[s]=this.getOutputPacked3DCoords(t,r);break;default:n[s]=this.getOutputPackedNDCoords(t,r)}let u=`\n void setOutput(vec4 val) {\n ${G(this.context.glContext.version).output} = val;\n }\n `,l=\"floatTextureSetRGBA\";return n[l]=new k(u),n}getUnpackedOutputSamplingSnippet(o){let t=o.unpackedShape,r=[o.width,o.height],n={},s=\"getOutputCoords\";switch(t.length){case 0:n[s]=this.getOutputScalarCoords();break;case 1:n[s]=this.getOutputUnpacked1DCoords(t,r);break;case 2:n[s]=this.getOutputUnpacked2DCoords(t,r);break;case 3:n[s]=this.getOutputUnpacked3DCoords(t,r);break;case 4:n[s]=this.getOutputUnpacked4DCoords(t,r);break;case 5:n[s]=this.getOutputUnpacked5DCoords(t,r);break;case 6:n[s]=this.getOutputUnpacked6DCoords(t,r);break;default:throw new Error(`Unsupported output dimensionality: ${t.length}`)}let u=`\n void setOutput(float val) {\n ${G(this.context.glContext.version).output} = vec4(val, 0, 0, 0);\n }\n `,l=\"floatTextureSetR\";return n[l]=new k(u),n}getOutputScalarCoords(){return new k(`\n int getOutputCoords() {\n return 0;\n }\n `)}getOutputPacked1DCoords(o,t){let r=t,n=\"\";return r[0]===1?(n=`\n int getOutputCoords() {\n return 2 * int(TexCoords.y * ${r[1]}.0);\n }\n `,new k(n)):r[1]===1?(n=`\n int getOutputCoords() {\n return 2 * int(TexCoords.x * ${r[0]}.0);\n }\n `,new k(n)):(n=`\n int getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${r[0]}, ${r[1]}));\n return 2 * (resTexRC.y * ${r[0]} + resTexRC.x);\n }\n `,new k(n))}getOutputPacked2DCoords(o,t){let r=\"\";if(Me.arraysEqual(o,t))return r=`\n ivec2 getOutputCoords() {\n return 2 * ivec2(TexCoords.xy * vec2(${t[0]}, ${t[1]}));\n }\n `,new k(r);let n=t,s=Math.ceil(o[1]/2);return r=`\n ivec2 getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${n[0]}, ${n[1]}));\n\n int index = resTexRC.y * ${n[0]} + resTexRC.x;\n\n // reverse r and c order for packed texture\n int r = imod(index, ${s}) * 2;\n int c = 2 * (index / ${s});\n\n return ivec2(r, c);\n }\n `,new k(r)}getOutputPacked3DCoords(o,t){let r=[t[0],t[1]],n=Math.ceil(o[2]/2),s=n*Math.ceil(o[1]/2),a=`\n ivec3 getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${r[0]}, ${r[1]}));\n int index = resTexRC.y * ${r[0]} + resTexRC.x;\n\n int b = index / ${s};\n index -= b * ${s};\n\n // reverse r and c order for packed texture\n int r = imod(index, ${n}) * 2;\n int c = 2 * (index / ${n});\n\n return ivec3(b, r, c);\n }\n `;return new k(a)}getOutputPackedNDCoords(o,t){let r=[t[0],t[1]],n=Math.ceil(o[o.length-1]/2),s=n*Math.ceil(o[o.length-2]/2),a=s,u=\"\",l=\"b, r, c\";for(let p=2;p=0;--l)s[l]=s[l+1]*o[l+1];let a=[\"r\",\"c\",\"d\"],u=s.map((l,f)=>{let p=`int ${a[f]} = index / ${l}`,d=f===s.length-1?`int ${a[f+1]} = index - ${a[f]} * ${l}`:`index -= ${a[f]} * ${l}`;return`${p}; ${d};`}).join(\"\");return r=`\n ivec3 getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${t[0]}, ${t[1]}));\n int index = resTexRC.y * ${t[0]} + resTexRC.x;\n ${u}\n return ivec3(r, c, d);\n }\n `,new k(r)}getOutputUnpacked4DCoords(o,t){let r=\"\",n=o.length,s=null;n<2&&(s=[]),s=new Array(n-1),s[n-2]=o[n-1];for(let l=n-3;l>=0;--l)s[l]=s[l+1]*o[l+1];let a=[\"r\",\"c\",\"d\",\"d2\"],u=s.map((l,f)=>{let p=`int ${a[f]} = index / ${l}`,d=f===s.length-1?`int ${a[f+1]} = index - ${a[f]} * ${l}`:`index -= ${a[f]} * ${l}`;return`${p}; ${d};`}).join(\"\");return r=`\n ivec4 getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${t[0]}, ${t[1]}));\n int index = resTexRC.y * ${t[0]} + resTexRC.x;\n ${u}\n return ivec4(r, c, d, d2);\n }\n `,new k(r)}getOutputUnpacked5DCoords(o,t){let r=\"\",n=o.length,s=null;n<2&&(s=[]),s=new Array(n-1),s[n-2]=o[n-1];for(let l=n-3;l>=0;--l)s[l]=s[l+1]*o[l+1];let a=[\"r\",\"c\",\"d\",\"d2\",\"d3\"],u=s.map((l,f)=>{let p=`int ${a[f]} = index / ${l}`,d=f===s.length-1?`int ${a[f+1]} = index - ${a[f]} * ${l}`:`index -= ${a[f]} * ${l}`;return`${p}; ${d};`}).join(\"\");return r=`\n ivec5 getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${t[0]}, ${t[1]}));\n int index = resTexRC.y * ${t[0]} + resTexRC.x;\n ${u}\n return ivec5(r, c, d, d2, d3);\n }\n `,new k(r)}getOutputUnpacked6DCoords(o,t){let r=\"\",n=o.length,s=null;n<2&&(s=[]),s=new Array(n-1),s[n-2]=o[n-1];for(let l=n-3;l>=0;--l)s[l]=s[l+1]*o[l+1];let a=[\"r\",\"c\",\"d\",\"d2\",\"d3\",\"d4\"],u=s.map((l,f)=>{let p=`int ${a[f]} = index / ${l}`,d=f===s.length-1?`int ${a[f+1]} = index - ${a[f]} * ${l}`:`index -= ${a[f]} * ${l}`;return`${p}; ${d};`}).join(\"\");return r=`\n ivec6 getOutputCoords() {\n ivec2 resTexRC = ivec2(TexCoords.xy *\n vec2(${t[0]}, ${t[1]}));\n int index = resTexRC.y * ${t[0]} + resTexRC.x;\n ${u}\n return ivec6(r, c, d, d2, d3, d4);\n }\n `,new k(r)}getCommonUtilFuncs(){let o={},t=\"uvFromFlat\";o[t]=new k(`\n vec2 uvFromFlat(int texNumR, int texNumC, int index) {\n int texC = index / texNumR;\n int texR = index - texC * texNumR;\n // TODO: swap texR, texC order in following function so row is corresponding to u and column is corresponding to\n // v.\n return (vec2(texR, texC) + halfCR) / vec2(texNumR, texNumC);\n }\n `),t=\"packedUVfrom1D\",o[t]=new k(`\n vec2 packedUVfrom1D(int texNumR, int texNumC, int index) {\n int texelIndex = index / 2;\n int texR = texelIndex / texNumC;\n int texC = texelIndex - texR * texNumC;\n return (vec2(texC, texR) + halfCR) / vec2(texNumC, texNumR);\n }\n `),t=\"packedUVfrom2D\",o[t]=new k(`\n vec2 packedUVfrom2D(int texNumR, int texNumC, int texelsInLogicalRow, int row, int col) {\n int texelIndex = (row / 2) * texelsInLogicalRow + (col / 2);\n int texR = texelIndex / texNumC;\n int texC = texelIndex - texR * texNumC;\n return (vec2(texC, texR) + halfCR) / vec2(texNumC, texNumR);\n }\n `),t=\"packedUVfrom3D\",o[t]=new k(`\n vec2 packedUVfrom3D(int texNumR, int texNumC,\n int texelsInBatch, int texelsInLogicalRow, int b,\n int row, int col) {\n int index = b * texelsInBatch + (row / 2) * texelsInLogicalRow + (col / 2);\n int texR = index / texNumC;\n int texC = index - texR * texNumC;\n return (vec2(texC, texR) + halfCR) / vec2(texNumC, texNumR);\n }\n `),t=\"sampleTexture\";let r=G(this.context.glContext.version);return o[t]=new k(`\n float sampleTexture(sampler2D textureSampler, vec2 uv) {\n return ${r.texture2D}(textureSampler, uv).r;\n }`),o}getInputsSamplingSnippets(){let o={},t=this.context.outputTextureLayout;return this.context.programInfo.inputNames.forEach((r,n)=>{let s=this.context.inputTextureLayouts[n],a=An(r);s.isPacked?o[a]=this.getPackedSamplerFromInput(a,r,s):o[a]=this.getUnpackedSamplerFromInput(a,r,s);let u=Yu(r);s.unpackedShape.length<=t.unpackedShape.length&&(s.isPacked?o[u]=this.getPackedSamplerAtOutputCoords(u,s,t,r):o[u]=this.getUnpackedSamplerAtOutputCoords(u,s,t,r))}),o}getPackedSamplerAtOutputCoords(o,t,r,n){let s=t.unpackedShape,a=r.unpackedShape,l=An(n),f=s.length,p=a.length,d=kt.getBroadcastDims(s,a),y=Bt(p),T=p-f,v,S=ne();f===0?v=\"\":p<2&&d.length>=1?v=\"coords = 0;\":v=d.map(Dt=>`coords.${S[Dt+T]} = 0;`).join(`\n`);let L=\"\";p<2&&f>0?L=\"coords\":L=s.map((Dt,_t)=>`coords.${S[_t+T]}`).join(\", \");let P=\"return outputValue;\",M=B.size(s)===1,lt=B.size(a)===1;if(f===1&&!M&&!lt)P=`\n return vec4(outputValue.xy, outputValue.xy);\n `;else if(M&&!lt)p===1?P=`\n return vec4(outputValue.x, outputValue.x, 0., 0.);\n `:P=`\n return vec4(outputValue.x);\n `;else if(d.length){let Dt=f-2,_t=f-1;d.indexOf(Dt)>-1&&d.indexOf(_t)>-1?P=\"return vec4(outputValue.x);\":d.indexOf(Dt)>-1?P=\"return vec4(outputValue.x, outputValue.y, outputValue.x, outputValue.y);\":d.indexOf(_t)>-1&&(P=\"return vec4(outputValue.xx, outputValue.zz);\")}let wt=`\n int lastDim = coords.${S[p-1]};\n coords.${S[p-1]} = coords.${S[p-2]};\n coords.${S[p-2]} = lastDim;\n `,et=`\n vec4 ${o}() {\n ${y} coords = getOutputCoords();\n ${wt}\n ${v}\n vec4 outputValue = ${l}(${L});\n ${P}\n }\n `;return new k(et,[\"coordinates.getOutputCoords\"])}getUnpackedSamplerAtOutputCoords(o,t,r,n){let s=[r.width,r.height],a=[t.width,t.height],u=t.unpackedShape.length,l=r.unpackedShape.length,f=t.unpackedShape,p=r.unpackedShape,d=An(n);if(u===l&&Me.arraysEqual(a,s)){let M=`\n float ${o}() {\n return sampleTexture(${n}, TexCoords);\n }\n `;return new k(M,[\"coordinates.sampleTexture\"])}let y=Bt(l),T=kt.getBroadcastDims(f,p),v=l-u,S,L=ne();u===0?S=\"\":l<2&&T.length>=1?S=\"coords = 0;\":S=T.map(M=>`coords.${L[M+v]} = 0;`).join(`\n`);let P=\"\";l<2&&u>0?P=\"coords\":P=t.unpackedShape.map((M,V)=>`coords.${L[V+v]}`).join(\", \");let A=`\n float ${o}() {\n ${y} coords = getOutputCoords();\n ${S}\n return ${d}(${P});\n }\n `;return new k(A,[\"coordinates.getOutputCoords\"])}getPackedSamplerFromInput(o,t,r){switch(r.unpackedShape.length){case 0:return this.getPackedSamplerScalar(o,t);case 1:return this.getPackedSampler1D(o,t,r);case 2:return this.getPackedSampler2D(o,t,r);case 3:return this.getPackedSampler3D(o,t,r);default:return this.getPackedSamplerND(o,t,r)}}getUnpackedSamplerFromInput(o,t,r){let n=r.unpackedShape;switch(n.length){case 0:return this.getUnpackedSamplerScalar(o,t,r);case 1:return this.getUnpackedSampler1D(o,t,r);case 2:return this.getUnpackedSampler2D(o,t,r);case 3:return this.getUnpackedSampler3D(o,t,r);case 4:return this.getUnpackedSampler4D(o,t,r);case 5:return this.getUnpackedSampler5D(o,t,r);case 6:return this.getUnpackedSampler6D(o,t,r);default:throw new Error(`Unsupported dimension ${n.length}-D`)}}getPackedSamplerScalar(o,t){let r=G(this.context.glContext.version),n=`\n vec4 ${o}() {\n return ${r.texture2D}(${t}, halfCR);\n }\n `;return new k(n)}getPackedSampler1D(o,t,r){let n=[r.width,r.height],s=[n[1],n[0]],a=G(this.context.glContext.version),l=`vec4 ${o}(int index) {\n vec2 uv = packedUVfrom1D(\n ${s[0]}, ${s[1]}, index);\n return ${a.texture2D}(${t}, uv);\n }`;return new k(l,[\"coordinates.packedUVfrom1D\"])}getPackedSampler2D(o,t,r){let n=r.unpackedShape,s=[r.width,r.height],a=G(this.context.glContext.version),u=s[0],l=s[1];if(s!=null&&Me.arraysEqual(n,s)){let T=`vec4 ${o}(int row, int col) {\n vec2 uv = (vec2(col, row) + halfCR) / vec2(${l}.0, ${u}.0);\n return ${a.texture2D}(${t}, uv);\n }`;return new k(T)}let f=s,p=Math.ceil(n[1]/2),y=`vec4 ${o}(int row, int col) {\n vec2 uv = packedUVfrom2D(${f[1]}, ${f[0]}, ${p}, row, col);\n return ${a.texture2D}(${t}, uv);\n }`;return new k(y,[\"coordinates.packedUVfrom2D\"])}getPackedSampler3D(o,t,r){let n=r.unpackedShape,s=[r.width,r.height],a=[s[0],s[1]],u=G(this.context.glContext.version);if(n[0]===1){let v=n.slice(1),S=[1,2],L=lr(n,v),P=[\"b\",\"row\",\"col\"],A=JSON.parse(JSON.stringify(r));A.unpackedShape=L;let M=this.getPackedSamplerFromInput(o,t,A),lt=`${M.routineBody}\n vec4 ${o}(int b, int row, int col) {\n return ${o}(${fr(P,S)});\n } `;return new k(lt,M.dependencies)}let l=a[0],f=a[1],p=Math.ceil(n[2]/2),d=p*Math.ceil(n[1]/2),T=`vec4 ${o}(int b, int row, int col) {\n vec2 uv = packedUVfrom3D(\n ${f}, ${l}, ${d}, ${p}, b, row, col);\n return ${u.texture2D}(${t}, uv);}`;return new k(T,[\"coordinates.packedUVfrom3D\"])}getPackedSamplerND(o,t,r){let n=r.unpackedShape,s=n.length,a=[r.width,r.height],u=G(this.context.glContext.version),l=[a[0],a[1]],f=l[1],p=l[0],d=Math.ceil(n[s-1]/2),y=d*Math.ceil(n[s-2]/2),T=\"int b, int row, int col\",v=`b * ${y} + (row / 2) * ${d} + (col / 2)`;for(let P=2;P{let n=this.context.inputTextureLayouts[r],a=(n.unpackedShape.length>0?n.unpackedShape:n.shape).length,u=`_${t}`;o[u]=new k(this.getValueFromSingle(t,a,n.width,n.height,!1),[`shapeUtils.indicesToOffset${u}`,\"coordinates.offsetToCoords\",\"fragcolor.getColorAsFloat\"]),u=u+\"_T\",o[u]=new k(this.getValueFromSingle(t,a,n.width,n.height,!0),[`shapeUtils.indicesToOffset${u}`,\"coordinates.offsetToCoords\",\"fragcolor.getColorAsFloat\"])}),o}getValueFromSingle(o,t,r,n,s){let a=`_${o}`;s&&(a=a+\"_T\");let u=G(this.context.glContext.version);return`\n float ${a}(int m[${t}]) {\n int offset = indicesToOffset${a}(m);\n vec2 coords = offsetToCoords(offset, ${r}, ${n});\n float value = getColorAsFloat(${u.texture2D}(${o}, coords));\n return value;\n }\n `}getPackedValueFrom(o,t,r,n,s){let a=`_${o}_Pack`;s&&(a=a+\"_T\");let u=G(this.context.glContext.version);return`\n vec4 ${a}(int m[${t}]) {\n int offset = indicesToOffset_${o}(m);\n vec2 coords = offsetToCoords(offset, ${r}, ${n});\n return ${u.texture2D}(${o}, coords);\n }\n `}}});var zn,pp=O(()=>{\"use strict\";Te();zn=class i extends Ht{constructor(e){super(e)}getFunctions(){return{...this.encodeFloat32(),...this.decodeFloat32()}}getCustomTypes(){return{}}encodeFloat32(){return{encode:new k(`highp vec4 encode(highp float f) {\n return vec4(f, 0.0, 0.0, 0.0);\n }\n `)}}decodeFloat32(){return{decode:new k(`highp float decode(highp vec4 rgba) {\n return rgba.r;\n }\n `)}}encodeUint8(){let e=i.isLittleEndian()?\"rgba.rgba=rgba.abgr;\":\"\";return{encode:new k(`\n highp vec4 encode(highp float f) {\n highp float F = abs(f);\n highp float Sign = step(0.0,-f);\n highp float Exponent = floor(log2(F));\n highp float Mantissa = (exp2(- Exponent) * F);\n Exponent = floor(log2(F) + 127.0) + floor(log2(Mantissa));\n highp vec4 rgba;\n rgba[0] = 128.0 * Sign + floor(Exponent*exp2(-1.0));\n rgba[1] = 128.0 * mod(Exponent,2.0) + mod(floor(Mantissa*128.0),128.0);\n rgba[2] = floor(mod(floor(Mantissa*exp2(23.0 -8.0)),exp2(8.0)));\n rgba[3] = floor(exp2(23.0)*mod(Mantissa,exp2(-15.0)));\n ${e}\n rgba = rgba / 255.0; // values need to be normalized to [0,1]\n return rgba;\n }\n `)}}decodeUint8(){let e=i.isLittleEndian()?\"rgba.rgba=rgba.abgr;\":\"\";return{decode:new k(`\n highp float decode(highp vec4 rgba) {\n rgba = rgba * 255.0; // values need to be de-normalized from [0,1] to [0,255]\n ${e}\n highp float Sign = 1.0 - step(128.0,rgba[0])*2.0;\n highp float Exponent = 2.0 * mod(rgba[0],128.0) + step(128.0,rgba[1]) - 127.0;\n highp float Mantissa = mod(rgba[1],128.0)*65536.0 + rgba[2]*256.0 +rgba[3] + float(0x800000);\n highp float Result = Sign * exp2(Exponent) * (Mantissa * exp2(-23.0 ));\n return Result;\n }\n `)}}static isLittleEndian(){let e=new ArrayBuffer(4),o=new Uint32Array(e),t=new Uint8Array(e);if(o[0]=3735928559,t[0]===239)return!0;if(t[0]===222)return!1;throw new Error(\"unknown endianness\")}}});var Wn,dp=O(()=>{\"use strict\";Te();ut();Wn=class extends Ht{constructor(e){super(e)}getFunctions(){return{...this.setFragColor(),...this.getColorAsFloat()}}getCustomTypes(){return{}}setFragColor(){let e=G(this.context.glContext.version);return{setFragColor:new k(`\n void setFragColor(float value) {\n ${e.output} = encode(value);\n }\n `,[\"encoding.encode\"])}}getColorAsFloat(){return{getColorAsFloat:new k(`\n float getColorAsFloat(vec4 color) {\n return decode(color);\n }\n `,[\"encoding.decode\"])}}}});var Hn,hp=O(()=>{\"use strict\";Te();Hn=class i extends Ht{constructor(e){super(e)}getFunctions(){return{...this.bcastIndex(),...this.bcastMatmulIndex(),...this.offsetToIndices(),...this.indicesToOffset(),...this.incrementIndices()}}getCustomTypes(){return{}}bcastIndex(){let e=this.context.outputTextureLayout.shape.length,o={};return this.context.programInfo.inputNames.forEach((t,r)=>{let n=this.context.inputTextureLayouts[r].unpackedShape;if(n.length<=e){let s=n.length,a=e-s,u=`bcastIndices_${t}`,l=\"\";for(let p=0;p{let n=this.context.inputTextureLayouts[r].shape;if(!(n.length<2||n.length>e)){let s=n.length,a=e-s,u=`bcastMatmulIndices_${t}`,l=\"\";for(let p=0;p{let r=this.context.inputTextureLayouts[t].shape,n=this.context.inputTextureLayouts[t].strides,s=r.length,a=`indicesToOffset_${o}`;e[a]=new k(i.indexToOffsetSingle(a,s,n)),a=`indicesToOffset_${o}_T`,e[a]=new k(i.indexToOffsetSingle(a,s,n.slice().reverse()))}),e}static indexToOffsetSingle(e,o,t){let r=\"\";for(let n=o-1;n>=0;--n)r+=`\n offset += indices[${n}] * ${t[n]};\n `;return`\n int ${e}(int indices[${o}]) {\n int offset = 0;\n ${r}\n return offset;\n }\n `}offsetToIndices(){let e={};return this.context.programInfo.inputNames.forEach((o,t)=>{let r=this.context.inputTextureLayouts[t].shape,n=this.context.inputTextureLayouts[t].strides,s=r.length,a=`offsetToIndices_${o}`;e[a]=new k(i.offsetToIndicesSingle(a,s,n)),a=`offsetToIndices_${o}_T`,e[a]=new k(i.offsetToIndicesSingle(a,s,n.slice().reverse()))}),e}static offsetToIndicesSingle(e,o,t){let r=[];for(let n=0;n{let r=this.context.inputTextureLayouts[t].shape,n=r.length,s=`incrementIndices_${o}`,a=\"\";for(let l=0;l= 0; --i) {\n if(i > axis) continue;\n indices[i] += 1;\n if(indices[i] < shape[i]) {\n break;\n }\n indices[i] = 0;\n }\n }\n `;e[s]=new k(u)}),e}}});var qn,mp=O(()=>{\"use strict\";Te();qn=class extends Ht{constructor(e){super(e)}getCustomTypes(){return{}}getFunctions(){return{...this.binaryVecFunctions(),...this.copyVec(),...this.setVecItem(),...this.getVecItem()}}binaryVecFunctions(){let o=this.context.outputTextureLayout.shape.length,t={add:\"+=\",sub:\"-=\",mul:\"*=\",div:\"/=\"},r={};for(let n in t){let s=`${n}Vec`,a=\"\";for(let l=0;l{\"use strict\";cp();pp();dp();hp();mp();Ri={encoding:zn,fragcolor:Wn,vec:qn,shapeUtils:Hn,coordinates:Vn}});var jn,gp=O(()=>{\"use strict\";Te();lp();bp();ut();jn=class{constructor(e,o,t,r){this.libs={};this.glslLibRoutineDependencyGraph={};this.context=new Ln(e,o,t,r),Object.keys(Ri).forEach(s=>{let a=new Ri[s](this.context);this.libs[s]=a});let n=this.glslLibRoutineDependencyGraph;for(let s in this.libs){let u=this.libs[s].getFunctions();for(let l in u){let f=s+\".\"+l,p;n[f]?(p=n[f],p.routineBody=u[l].routineBody):(p=new Nr(f,u[l].routineBody),n[f]=p);let d=u[l].dependencies;if(d)for(let y=0;y{let r=t.split(\".\")[1];e.indexOf(r)!==-1&&o.push(this.glslLibRoutineDependencyGraph[t])}),$n.returnOrderedNodes(o)}getUniforms(e,o){let t=[];if(e)for(let r of e)t.push(`uniform sampler2D ${r};`);if(o)for(let r of o)t.push(`uniform ${r.type} ${r.name}${r.arrayLength?`[${r.arrayLength}]`:\"\"};`);return t.join(`\n`)}}});var Xn,yp=O(()=>{\"use strict\";Yt();Ut();gp();ut();Xn=class{constructor(e,o,t){this.profiler=e;this.glContext=o;this.textureLayoutStrategy=t;this.repo=new Map,this.attributesBound=!1}getArtifact(e){return this.repo.get(e)}setArtifact(e,o){this.repo.set(e,o)}run(e,o,t){this.profiler.event(\"op\",`ProgramManager.run ${e.programInfo.name??\"unknown kernel\"}`,()=>{let r=this.glContext.gl,n=e.program;r.useProgram(n);try{this.bindOutput(t),this.attributesBound||this.bindAttributes(e.attribLocations),this.bindUniforms(e.uniformLocations,e.programInfo.variables??[],o)}catch(s){throw tt.error(\"ProgramManager\",e.programInfo.shaderSource),s}this.profiler.event(\"backend\",\"GlContext.draw()\",()=>{this.glContext.draw()})},this.glContext)}dispose(){this.vertexShader&&this.glContext.deleteShader(this.vertexShader),this.repo.forEach(e=>this.glContext.deleteProgram(e.program))}build(e,o,t){return this.profiler.event(\"backend\",\"ProgramManager.build\",()=>{let r=new jn(this.glContext,e,o,t),n=r.preprocess(),s=this.compile(n);return{programInfo:e,program:s,uniformLocations:this.getUniformLocations(s,r.context.programInfo.inputNames,r.context.programInfo.variables),attribLocations:this.getAttribLocations(s)}})}compile(e){if(!this.vertexShader){tt.verbose(\"ProrgramManager\",\"Compiling and caching Vertex shader for the first time\");let r=Xu(this.glContext.version);this.vertexShader=this.glContext.compileShader(r,this.glContext.gl.VERTEX_SHADER)}z.debug&&tt.verbose(\"ProrgramManager\",`FragShader:\n${e}\n`);let o=this.glContext.compileShader(e,this.glContext.gl.FRAGMENT_SHADER),t=this.glContext.createProgram(this.vertexShader,o);return this.glContext.deleteShader(o),t}bindOutput(e){let o=e.width,t=e.height;tt.verbose(\"ProrgramManager\",`Binding output texture to Framebuffer: w/h=${o}/${t}, shape=${e.shape}, type=${e.tensor.type}`),this.glContext.attachFramebuffer(e.texture,o,t)}bindAttributes(e){let o=e.position,t=e.textureCoord;this.glContext.setVertexAttributes(o,t),this.attributesBound=!0}bindUniforms(e,o,t){let r=this.glContext.gl,n=0;for(let{name:s,type:a,location:u,arrayLength:l}of e){let f=o.find(p=>p.name===s)?.data;if(a!==\"sampler2D\"&&!f)throw new Error(`variable '${s}' does not have data defined in program info`);switch(a){case\"sampler2D\":this.bindTexture(t[n],u,n),n++;break;case\"float\":l?r.uniform1fv(u,f):r.uniform1f(u,f);break;case\"int\":l?r.uniform1iv(u,f):r.uniform1i(u,f);break;default:throw new Error(`Uniform not implemented: ${a}`)}}}bindTexture(e,o,t){this.glContext.bindTextureToUniform(e.texture,t,o)}getAttribLocations(e){return{position:this.getAttribLocation(e,\"position\"),textureCoord:this.getAttribLocation(e,\"textureCoord\")}}getUniformLocations(e,o,t){let r=[];if(o)for(let n of o)r.push({name:n,type:\"sampler2D\",location:this.getUniformLocation(e,n)});if(t)for(let n of t)r.push({...n,location:this.getUniformLocation(e,n.name)});return r}getUniformLocation(e,o){let r=this.glContext.gl.getUniformLocation(e,o);if(r===null)throw new Error(`Uniform ${o} not found.`);return r}getAttribLocation(e,o){return this.glContext.gl.getAttribLocation(e,o)}}});var Kn,xp=O(()=>{\"use strict\";Ut();Fr();Kn=class{constructor(e,o,t,r){this.glContext=e;this.layoutStrategy=o;this.profiler=t;this.config=r;this.pendingRead=new Map;r.reuseTextures&&(this.inUseTextures=new Map,this.idleTextures=new Map,this.textureLookup=new Map)}createTextureFromLayout(e,o,t,r){let n=this.toEncoderType(e),s=this.glContext.getEncoder(n,o.channels||1,r);if(o.isPacked&&r===1)throw new Error(\"not implemented\");let a=o.width,u=o.height,l,f;if(this.config.reuseTextures){l=`${a}x${u}_${s.format}_${s.internalFormat}_${s.textureType}`,f=this.inUseTextures.get(l),f||(f=[],this.inUseTextures.set(l,f));let d=this.idleTextures.get(l);if(d&&d.length>0){let y=d.pop();return f.push(y),r===1&&this.glContext.updateTexture(y,a,u,s,this.toTextureData(e,t)),y}}tt.verbose(\"TextureManager\",`Creating new texture of size ${o.width}x${o.height}`);let p=this.glContext.allocateTexture(a,u,s,this.toTextureData(e,t));return this.config.reuseTextures&&(f.push(p),this.textureLookup.set(p,l)),p}readTexture(e,o,t){return t||(t=1),this.profiler.event(\"backend\",\"TextureManager.readTexture\",()=>{let r=e.shape.reduce((s,a)=>s*a)*t,n=this.glContext.readTexture(e.texture,e.width,e.height,r,this.toEncoderType(o),t);return this.toTensorData(o,n)})}async readTextureAsync(e,o,t){let r=e.tensor.dataId;if(t||(t=1),this.pendingRead.has(r)){let n=this.pendingRead.get(r);return new Promise(s=>n?.push(s))}return this.profiler.event(\"backend\",\"TextureManager.readTextureAsync\",async()=>{this.pendingRead.set(r,[]);let n=e.shape.reduce((l,f)=>l*f)*t;await this.glContext.createAndWaitForFence();let s=this.glContext.readTexture(e.texture,e.width,e.height,n,this.toEncoderType(o),t),a=this.toTensorData(o,s),u=this.pendingRead.get(r);return this.pendingRead.delete(r),u?.forEach(l=>l(a)),a})}readUint8TextureAsFloat(e){return this.profiler.event(\"backend\",\"TextureManager.readUint8TextureAsFloat\",()=>{let o=e.shape.reduce((r,n)=>r*n),t=this.glContext.readTexture(e.texture,e.width,e.height,o*4,\"byte\",4);return new Float32Array(t.buffer,t.byteOffset,o)})}releaseTexture(e,o){let t;if(this.config.reuseTextures&&(t=this.textureLookup.get(e.texture),t)){o&&this.textureLookup.delete(t);let r=this.inUseTextures.get(t);if(r){let n=r.indexOf(e.texture);if(n!==-1){r.splice(n,1);let s=this.idleTextures.get(t);s||(s=[],this.idleTextures.set(t,s)),s.push(e.texture)}}}(!t||o)&&(tt.verbose(\"TextureManager\",`Deleting texture of size ${e.width}x${e.height}`),this.glContext.deleteTexture(e.texture))}toTensorData(e,o){switch(e){case\"int16\":return o instanceof Int16Array?o:Int16Array.from(o);case\"int32\":return o instanceof Int32Array?o:Int32Array.from(o);case\"int8\":return o instanceof Int8Array?o:Int8Array.from(o);case\"uint16\":return o instanceof Uint16Array?o:Uint16Array.from(o);case\"uint32\":return o instanceof Uint32Array?o:Uint32Array.from(o);case\"uint8\":case\"bool\":return o instanceof Uint8Array?o:Uint8Array.from(o);case\"float32\":return o instanceof Float32Array?o:Float32Array.from(o);case\"float64\":return o instanceof Float64Array?o:Float64Array.from(o);default:throw new Error(`TensorData type ${e} is not supported`)}}toTextureData(e,o){if(o)return o instanceof Float32Array?o:new Float32Array(o)}toEncoderType(e){return\"float\"}clearActiveTextures(){this.glContext.clearActiveTextures()}}});var Jn,Tp=O(()=>{\"use strict\";Ut();Bs();cl();ap();yp();Ni();xp();Jn=class{constructor(e,o){this.backend=e;this.context=o;this.layoutStrategy=new Un(e.glContext.maxTextureSize),this.programManager=new Xn(this.context.profiler,e.glContext,this.layoutStrategy),this.textureManager=new Kn(e.glContext,this.layoutStrategy,this.context.profiler,{reuseTextures:e.textureCacheMode===\"full\"}),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache=new Map,this.pack=e.pack,this.pack2unpackMap=new Map,this.unpack2packMap=new Map}createInferenceHandler(){return new Dn(this)}onGraphInitialized(e){let o=e.getValues().filter(t=>t.from===-1&&t.tensor).map(t=>t.tensor.dataId);this.initializers=new Set(o)}isInitializer(e){return this.initializers?this.initializers.has(e):!1}addInitializer(e){this.initializers.add(e)}getTextureData(e,o){return o?this.packedTextureDataCache.get(e):this.unpackedTextureDataCache.get(e)}setTextureData(e,o,t=!1){tt.verbose(\"WebGLSessionHandler\",\"Storing Texture data in cache\"),t?this.packedTextureDataCache.set(e,o):this.unpackedTextureDataCache.set(e,o)}dispose(){this.programManager.dispose(),this.textureManager.clearActiveTextures(),this.packedTextureDataCache.forEach(e=>this.textureManager.releaseTexture(e,!0)),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache.forEach(e=>this.textureManager.releaseTexture(e,!0)),this.unpackedTextureDataCache=new Map}resolve(e,o,t){let r=ks(e,o,ip);return{impl:r.opImpl,context:r.opInit?r.opInit(e,t):e}}}});function bg(i){let e=0;for(;e{\"use strict\";Yt();Fr();Fr();pe();Mr=class{constructor(e,o){this.frameBufferBound=!1;this.itemsToPoll=[];this.gl=e,this.version=o,this.getExtensions(),this.vertexbuffer=this.createVertexbuffer(),this.framebuffer=this.createFramebuffer(),this.queryVitalParameters()}allocateTexture(e,o,t,r){let n=this.gl,s=n.createTexture();n.bindTexture(n.TEXTURE_2D,s),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.NEAREST),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.NEAREST),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE);let a=r?t.encode(r,e*o):null;return n.texImage2D(n.TEXTURE_2D,0,t.internalFormat,e,o,0,t.format,t.textureType,a),this.checkError(),s}updateTexture(e,o,t,r,n){let s=this.gl;s.bindTexture(s.TEXTURE_2D,e);let a=r.encode(n,o*t);s.texSubImage2D(s.TEXTURE_2D,0,0,0,o,t,r.format,r.textureType,a),this.checkError()}attachFramebuffer(e,o,t){let r=this.gl;r.bindTexture(r.TEXTURE_2D,e),r.bindFramebuffer(r.FRAMEBUFFER,this.framebuffer),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,e,0),this.checkError(),r.viewport(0,0,o,t),r.scissor(0,0,o,t)}readTexture(e,o,t,r,n,s){let a=this.gl;s||(s=1),this.frameBufferBound||this.attachFramebuffer(e,o,t);let u=this.getEncoder(n,s),l=u.allocate(o*t);return a.bindTexture(a.TEXTURE_2D,e),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,e,0),a.readPixels(0,0,o,t,a.RGBA,u.textureType,l),this.checkError(),u.decode(l,r)}isFramebufferReady(){return!0}getActiveTexture(){let e=this.gl;return`TEXTURE${e.getParameter(this.gl.ACTIVE_TEXTURE)-e.TEXTURE0}`}getTextureBinding(){return this.gl.getParameter(this.gl.TEXTURE_BINDING_2D)}getFramebufferBinding(){return this.gl.getParameter(this.gl.FRAMEBUFFER_BINDING)}setVertexAttributes(e,o){let t=this.gl;t.vertexAttribPointer(e,3,t.FLOAT,!1,20,0),t.enableVertexAttribArray(e),o!==-1&&(t.vertexAttribPointer(o,2,t.FLOAT,!1,20,12),t.enableVertexAttribArray(o)),this.checkError()}createProgram(e,o){let t=this.gl,r=t.createProgram();return t.attachShader(r,e),t.attachShader(r,o),t.linkProgram(r),r}compileShader(e,o){let t=this.gl,r=t.createShader(o);if(!r)throw new Error(`createShader() returned null with type ${o}`);if(t.shaderSource(r,e),t.compileShader(r),t.getShaderParameter(r,t.COMPILE_STATUS)===!1)throw new Error(`Failed to compile shader: ${t.getShaderInfoLog(r)}\nShader source:\n${e}`);return r}deleteShader(e){this.gl.deleteShader(e)}bindTextureToUniform(e,o,t){let r=this.gl;r.activeTexture(r.TEXTURE0+o),this.checkError(),r.bindTexture(r.TEXTURE_2D,e),this.checkError(),r.uniform1i(t,o),this.checkError()}draw(){this.gl.drawArrays(this.gl.TRIANGLE_STRIP,0,4),this.checkError()}checkError(){if(z.debug){let e=this.gl,o=e.getError(),t=\"\";switch(o){case e.NO_ERROR:return;case e.INVALID_ENUM:t=\"INVALID_ENUM\";break;case e.INVALID_VALUE:t=\"INVALID_VALUE\";break;case e.INVALID_OPERATION:t=\"INVALID_OPERATION\";break;case e.INVALID_FRAMEBUFFER_OPERATION:t=\"INVALID_FRAMEBUFFER_OPERATION\";break;case e.OUT_OF_MEMORY:t=\"OUT_OF_MEMORY\";break;case e.CONTEXT_LOST_WEBGL:t=\"CONTEXT_LOST_WEBGL\";break;default:t=`Unknown WebGL Error: ${o.toString(16)}`}throw new Error(t)}}deleteTexture(e){this.gl.deleteTexture(e)}deleteProgram(e){this.gl.deleteProgram(e)}getEncoder(e,o,t=0){if(this.version===2)return new Pn(this.gl,o);switch(e){case\"float\":return t===1||this.isRenderFloat32Supported?new Br(this.gl,o):new Br(this.gl,o,this.textureHalfFloatExtension.HALF_FLOAT_OES);case\"int\":throw new Error(\"not implemented\");case\"byte\":return new En(this.gl,o);default:throw new Error(`Invalid dataType: ${e}`)}}clearActiveTextures(){let e=this.gl;for(let o=0;othis.isTimerResultAvailable(e)),this.getTimerResult(e)}async createAndWaitForFence(){let e=this.createFence(this.gl);return this.pollFence(e)}createFence(e){let o,t=e,r=t.fenceSync(t.SYNC_GPU_COMMANDS_COMPLETE,0);return e.flush(),r===null?o=()=>!0:o=()=>{let n=t.clientWaitSync(r,0,0);return n===t.ALREADY_SIGNALED||n===t.CONDITION_SATISFIED},{query:r,isFencePassed:o}}async pollFence(e){return new Promise(o=>{this.addItemToPoll(()=>e.isFencePassed(),()=>o())})}pollItems(){let e=bg(this.itemsToPoll.map(o=>o.isDoneFn));for(let o=0;o<=e;++o){let{resolveFn:t}=this.itemsToPoll[o];t()}this.itemsToPoll=this.itemsToPoll.slice(e+1)}async addItemToPoll(e,o){this.itemsToPoll.push({isDoneFn:e,resolveFn:o}),!(this.itemsToPoll.length>1)&&await li(()=>(this.pollItems(),this.itemsToPoll.length===0))}}});function Gi(i){let e;if((!i||i===\"webgl2\")&&\"webgl2\"in mr?e=mr.webgl2:(!i||i===\"webgl\")&&\"webgl\"in mr&&(e=mr.webgl),!e)try{let t=yg();e=vp(t,i)}catch{let r=gg();e=vp(r,i)}i=i||e.version===1?\"webgl\":\"webgl2\";let o=e.gl;return mr[i]=e,o.isContextLost()?(delete mr[i],Gi(i)):(o.disable(o.DEPTH_TEST),o.disable(o.STENCIL_TEST),o.disable(o.BLEND),o.disable(o.DITHER),o.disable(o.POLYGON_OFFSET_FILL),o.disable(o.SAMPLE_COVERAGE),o.enable(o.SCISSOR_TEST),o.enable(o.CULL_FACE),o.cullFace(o.BACK),e)}function vp(i,e){let o={alpha:!1,depth:!1,antialias:!1,stencil:!1,preserveDrawingBuffer:!1,premultipliedAlpha:!1,failIfMajorPerformanceCaveat:!1},t,r=o;if((!e||e===\"webgl2\")&&(t=i.getContext(\"webgl2\",r),t))try{return new Mr(t,2)}catch(n){tt.warning(\"GlContextFactory\",`failed to create WebGLContext using contextId 'webgl2'. Error: ${n}`)}if((!e||e===\"webgl\")&&(t=i.getContext(\"webgl\",r)||i.getContext(\"experimental-webgl\",r),t))try{return new Mr(t,1)}catch(n){tt.warning(\"GlContextFactory\",`failed to create WebGLContext using contextId 'webgl' or 'experimental-webgl'. Error: ${n}`)}throw new Error(\"WebGL is not supported\")}function gg(){if(typeof document>\"u\")throw new TypeError(\"failed to create canvas: document is not supported\");let i=document.createElement(\"canvas\");return i.width=1,i.height=1,i}function yg(){if(typeof OffscreenCanvas>\"u\")throw new TypeError(\"failed to create offscreen canvas: OffscreenCanvas is not supported\");return new OffscreenCanvas(1,1)}var mr,Ip=O(()=>{\"use strict\";Ut();wp();mr={}});var Yn,_p=O(()=>{\"use strict\";Yt();Ut();Tp();Ip();Yn=class{get contextId(){return z.webgl.contextId}set contextId(e){z.webgl.contextId=e}get matmulMaxBatchSize(){return z.webgl.matmulMaxBatchSize}set matmulMaxBatchSize(e){z.webgl.matmulMaxBatchSize=e}get textureCacheMode(){return z.webgl.textureCacheMode}set textureCacheMode(e){z.webgl.textureCacheMode=e}get pack(){return z.webgl.pack}set pack(e){z.webgl.pack=e}get async(){return z.webgl.async}set async(e){z.webgl.async=e}initialize(){try{return this.glContext=Gi(this.contextId),typeof this.matmulMaxBatchSize!=\"number\"&&(this.matmulMaxBatchSize=16),typeof this.textureCacheMode!=\"string\"&&(this.textureCacheMode=\"full\"),typeof this.pack!=\"boolean\"&&(this.pack=!1),typeof this.async!=\"boolean\"&&(this.async=!1),tt.setWithEnv(z),z.webgl.context||Object.defineProperty(z.webgl,\"context\",{value:this.glContext.gl}),tt.verbose(\"WebGLBackend\",`Created WebGLContext: ${typeof this.glContext} with matmulMaxBatchSize: ${this.matmulMaxBatchSize}; textureCacheMode: ${this.textureCacheMode}; pack: ${this.pack}; async: ${this.async}.`),!0}catch(e){return tt.warning(\"WebGLBackend\",`Unable to initialize WebGLBackend. ${e}`),!1}}createSessionHandler(e){return new Jn(this,e)}dispose(){this.glContext.dispose()}}});async function Mi(i){if(i){let e=typeof i==\"string\"?[i]:i;for(let o of e){let t=Op.get(o);if(t)return t;let r=await Tg(o);if(r)return r}}else return Mi([\"webgl\"]);throw new Error(\"no available backend to use\")}async function Tg(i){let e=xg;if(typeof e[i]<\"u\"&&wg(e[i])){let o=e[i],t=o.initialize();if(typeof t==\"object\"&&\"then\"in t&&(t=await t),t)return Op.set(i,o),o}}function wg(i){let e=i;return\"initialize\"in e&&typeof e.initialize==\"function\"&&\"createSessionHandler\"in e&&typeof e.createSessionHandler==\"function\"&&\"dispose\"in e&&typeof e.dispose==\"function\"}var Op,xg,Sp=O(()=>{\"use strict\";_p();Op=new Map,xg={webgl:new Yn}});var Ui,Zn,Ap=O(()=>{\"use strict\";Ut();Ui=class{constructor(e,o){this.op=e;this.node=o}},Zn=class{constructor(e,o,t){this.graph=e;this.profiler=t;this.initialize(o)}initialize(e){this.profiler.event(\"session\",\"ExecutionPlan.initialize\",()=>{let o=this.graph.getNodes();if(o.length!==e.length)throw new Error(\"The size of nodes and OPs do not match.\");this._ops=e.map((t,r)=>new Ui(t,o[r])),this.reset(),this._starter=[],this._ops.forEach((t,r)=>{let n=!0;for(let s of t.node.inputs)if(!this._values[s]&&this.graph.getInputIndices().indexOf(s)===-1){n=!1;break}n&&this._starter.push(r)})})}reset(){this._values=this.graph.getValues().map(e=>e.tensor)}async execute(e,o){return this.profiler.event(\"session\",\"ExecutionPlan.execute\",async()=>{this.reset();let t=e.createInferenceHandler(),r=this.graph.getInputIndices();if(o.length!==r.length)throw new Error(`number of input tensors don't match the number of inputs to the model: actual: ${o.length} expected: ${r.length}`);o.forEach((f,p)=>{let d=r[p];this._values[d]=f});let n=this._starter.slice(0),s=this.graph.getValues(),a=this.graph.getNodes(),u=0;for(;uthis._values[S]);if(d.indexOf(void 0)!==-1)throw new Error(`unresolved input detected: op: ${p.node}`);let y=d;tt.verbose(\"ExecPlan\",`Running op:${p.node.name} (${y.map((S,L)=>`'${p.node.inputs[L]}': ${S.type}[${S.dims.join(\",\")}]`).join(\", \")})`);let T=await this.profiler.event(\"node\",p.node.name,async()=>p.op.impl(t,y,p.op.context));if(T.length!==p.node.outputs.length)throw new Error(\"the size of output does not match model definition.\");T.forEach((S,L)=>{let P=p.node.outputs[L];if(this._values[P])throw new Error(`output [${P}] already has value: op:${p.node.name}`);this._values[P]=S});let v=new Set;T.forEach((S,L)=>{let P=p.node.outputs[L];for(let A of s[P].to){let M=a[A],V=!0;for(let lt of M.inputs)if(!this._values[lt]){V=!1;break}V&&v.add(A)}}),n.push(...v)}let l=[];for(let f=0;f{\"use strict\";Pr();q=rr(sr());We();Y();Xt=F.experimental.fbs,Ur=class i{constructor(e){if(this._attributes=new Map,e!=null){for(let o of e)o instanceof q.onnx.AttributeProto?this._attributes.set(o.name,[i.getValue(o),i.getType(o)]):o instanceof Xt.Attribute&&this._attributes.set(o.name(),[i.getValue(o),i.getType(o)]);if(this._attributes.sizebt.fromProto(n));if(e instanceof Xt.Attribute)return t.map(n=>bt.fromOrtTensor(n))}return o===q.onnx.AttributeProto.AttributeType.STRING&&e instanceof q.onnx.AttributeProto?kr(t):o===q.onnx.AttributeProto.AttributeType.STRINGS&&e instanceof q.onnx.AttributeProto?t.map(kr):t}static getValueNoCheck(e){return e instanceof q.onnx.AttributeProto?this.getValueNoCheckFromOnnxFormat(e):this.getValueNoCheckFromOrtFormat(e)}static getValueNoCheckFromOnnxFormat(e){switch(e.type){case q.onnx.AttributeProto.AttributeType.FLOAT:return e.f;case q.onnx.AttributeProto.AttributeType.INT:return e.i;case q.onnx.AttributeProto.AttributeType.STRING:return e.s;case q.onnx.AttributeProto.AttributeType.TENSOR:return e.t;case q.onnx.AttributeProto.AttributeType.GRAPH:return e.g;case q.onnx.AttributeProto.AttributeType.FLOATS:return e.floats;case q.onnx.AttributeProto.AttributeType.INTS:return e.ints;case q.onnx.AttributeProto.AttributeType.STRINGS:return e.strings;case q.onnx.AttributeProto.AttributeType.TENSORS:return e.tensors;case q.onnx.AttributeProto.AttributeType.GRAPHS:return e.graphs;default:throw new Error(`unsupported attribute type: ${q.onnx.AttributeProto.AttributeType[e.type]}`)}}static getValueNoCheckFromOrtFormat(e){switch(e.type()){case Xt.AttributeType.FLOAT:return e.f();case Xt.AttributeType.INT:return e.i();case Xt.AttributeType.STRING:return e.s();case Xt.AttributeType.TENSOR:return e.t();case Xt.AttributeType.GRAPH:return e.g();case Xt.AttributeType.FLOATS:return e.floatsArray();case Xt.AttributeType.INTS:{let o=[];for(let t=0;t{\"use strict\";Pp();Pr();zi=rr(sr());We();Y();Qn=F.experimental.fbs,Wi={from:(i,e)=>new Vi(i,e)},me=class{constructor(e){this._from=void 0,this._to=[],this.tensor=void 0,this.type=void 0,e&&(this.type=At.tensorValueTypeFromProto(e.type.tensorType))}get from(){return this._from}get to(){return this._to}},to=class{constructor(e,o){e instanceof zi.onnx.NodeProto?(this.name=e.name,this.opType=e.opType,this.attributes=new Ur(e.attribute)):e instanceof Qn.Node&&(this.name=o??e.name(),this.opType=e.opType(),this.attributes=new Ur(At.tensorAttributesFromORTFormat(e))),this.inputs=[],this.outputs=[],this.executeNode=!0}},Vi=class{constructor(e,o){if(!e)throw new TypeError(\"graph is empty\");this.buildGraph(e),this.transformGraph(o),this.checkIsAcyclic()}getInputIndices(){return this._allInputIndices}getInputNames(){return this._allInputNames}getOutputIndices(){return this._allOutputIndices}getOutputNames(){return this._allOutputNames}getValues(){return this._allData}getNodes(){return this._nodes}buildGraph(e){if(e instanceof zi.onnx.GraphProto)this.buildGraphFromOnnxFormat(e);else if(e instanceof Qn.Graph)this.buildGraphFromOrtFormat(e);else throw new TypeError(\"Graph type is not supported.\")}buildGraphFromOnnxFormat(e){let o=new Map;this._allData=[],this._allInputIndices=[],this._allInputNames=[],this._allOutputIndices=[],this._allOutputNames=[],this._nodes=[];let t=new Map;if(!e.input)throw new Error(\"missing information in graph: input\");let r=[];for(let n of e.input){if(o.has(n.name))throw new Error(`duplicated input name: ${n.name}`);let s=this._allData.push(new me(n))-1;o.set(n.name,s),r.push(n.name)}if(!e.initializer)throw new Error(\"missing information in graph: initializer\");for(let n of e.initializer){let s=o.get(n.name);if(s===void 0){let a=new me;a.type={shape:{dims:At.tensorDimsFromProto(n.dims)},tensorType:At.tensorDataTypeFromProto(n.dataType)},s=this._allData.push(a)-1,o.set(n.name,s)}this._allData[s]._from=-1,this._allData[s].tensor=bt.fromProto(n)}for(let n=0;n\"u\"&&(l=this._allData.push(new me)-1,o.set(u,l)),s.outputs.push(l),this._allData[l]._from!==void 0)throw new Error(`multiple nodes output to one data value: ${l}`);if(this._allData[l]._from=n,a.opType===\"Constant\"){if(!a.attribute||a.attribute.length!==1||!a.attribute[0].t)throw new Error(\"missing attributes or missing tensor value in attributes for this Constant operator\");if(!a.output||a.output.length!==1)throw new Error(\"missing output or incorrect number of outputs for this Constant operator\");s.outputs.pop(),s.executeNode=!1,this._allData[l]._from=-1,this._allData[l].tensor=bt.fromProto(a.attribute[0].t)}}}for(let n=0;n\"u\"){if(u===\"\"&&(a.input.length===3||a.input.length===4)&&a.opType===\"Resize\")continue;throw new Error(`unrecognized input '${u}' for node: ${a.name}`)}s.inputs.push(l),this._allData[l]._to.push(n)}}return!0}buildGraphFromOrtFormat(e){let o=new Map;this._allData=[],this._allInputIndices=[],this._allInputNames=[],this._allOutputIndices=[],this._allOutputNames=[],this._nodes=[];let t=new Map,r=[];for(let n=0;n\"u\"&&(f=this._allData.push(new me)-1,o.set(l,f)),s.outputs.push(f),this._allData[f]._from!==void 0)throw new Error(`multiple nodes output to one data value: ${f}`);if(this._allData[f]._from=n,a.opType()===\"Constant\"){if(a.attributesLength()!==1||!a.attributes(0).t())throw new Error(\"missing attributes or missing tensor value in attributes for this Constant operator\");if(a.outputsLength()!==1)throw new Error(\"missing output or incorrect number of outputs for this Constant operator\");s.outputs.pop(),s.executeNode=!1,this._allData[f]._from=-1,this._allData[f].tensor=bt.fromOrtTensor(a.attributes(0).t())}}}for(let n=0;n\"u\")throw new Error(`unrecognized input '${l}' for node: ${a.name()}`);s.inputs.push(f),this._allData[f]._to.push(n)}}}checkIsAcyclic(){let e=new Set;this._allInputIndices.forEach(r=>{this._allData[r]._to.forEach(s=>{e.add(s)})});let o=Array.from(e),t=new Array(this._nodes.length).fill(\"white\");for(;o.length>0;){let r=o.pop();t[r]===\"gray\"?t[r]=\"black\":(o.push(r),t[r]=\"gray\",this._nodes[r].outputs.forEach(n=>{let s=this._allData[n];if(typeof s.tensor<\"u\")throw new Error(\"node outputs should not be initialized\");if(s._from!==r)throw new Error(\"from property of the Value object doesn't match index of Node being processed\");s._to.forEach(a=>{if(t[a]===\"gray\")throw new Error(\"model graph is cyclic\");t[a]===\"white\"&&o.push(a)})}))}}transformGraph(e){this.removeAllIdentityNodes(),this.removeAllDropoutNodes(),this.fuseConvActivationNodes(),e&&e.transformGraph(this),this.finalizeGraph()}finalizeGraph(){let e=0,o=new Array(this._nodes.length,0),t=0;for(let r=0;r{this._allData[n]._from=-2});this._nodes.splice(t,this._nodes.length-t);for(let r=0;r=0)n._to[s]=o[n._to[s]];else throw new Error(\"Trying to update a removed node\")}e=0;for(let r=0;r0){let n=-1;this._allData[r].from!==void 0&&this._allData[r].from!==-1?(n=this._nodes[this._allData[r].from].outputs.indexOf(r+e),n!==-1&&(this._nodes[this._allData[r].from].outputs[n]=r)):(n=this._allInputIndices.indexOf(r+e),n!==-1&&(this._allInputIndices[n]=r)),this._allData[r].to.forEach(s=>{n=this._nodes[s].inputs.indexOf(r+e),n!==-1&&(this._nodes[s].inputs[n]=r)}),this._allData[r].to.length===0&&(n=this._allOutputIndices.indexOf(r+e),n!==-1&&(this._allOutputIndices[n]=r))}}}deleteNode(e){let o=this._nodes[e];if(o.outputs.length>1){for(let a=1;a0)throw new Error(\"Node deletion with more than one output connected to other nodes is not supported. \")}o.executeNode=!1;let t=o.inputs[0],r=o.outputs[0],n=this._allData[r].to;for(let a=0;a0)for(let a of n){let u=this._nodes[a].inputs.indexOf(r);if(u===-1)throw new Error(\"The Node object doesn't have the output Value in it's 'inputs' property \");this._nodes[a].inputs[u]=t,this._allData[t].to.push(a)}}removeAllDropoutNodes(){let e=0;for(let o of this._nodes){if(o.opType===\"Dropout\"){if(o.inputs.length!==1)throw new Error(\"Dropout nodes should only contain one input. \");if(o.outputs.length!==1&&o.outputs.length!==2)throw new Error(\"Dropout nodes should contain either 1 or 2 output(s)\");if(o.outputs.length===2&&this._allData[o.outputs[1]]._to.length!==0)throw new Error(\"Dropout nodes's second output should not be referenced by other nodes\");this.deleteNode(e)}e++}}removeAllIdentityNodes(){let e=0;for(let o of this._nodes)o.opType===\"Identity\"&&this.deleteNode(e),e++}isActivation(e){switch(e.opType){case\"Relu\":case\"Sigmoid\":case\"Clip\":return!0;default:return!1}}fuseConvActivationNodes(){for(let e of this._nodes)if(e.opType===\"Conv\"){let o=this._allData[e.outputs[0]]._to;if(o.length===1&&this.isActivation(this._nodes[o[0]])){let t=this._nodes[o[0]];if(t.opType===\"Clip\")if(t.inputs.length===1)try{e.attributes.set(\"activation_params\",\"floats\",[t.attributes.getFloat(\"min\"),t.attributes.getFloat(\"max\")])}catch{e.attributes.set(\"activation_params\",\"floats\",[Ve,ze])}else if(t.inputs.length>=3&&this._allData[t.inputs[1]].tensor!==void 0&&this._allData[t.inputs[2]].tensor!==void 0)e.attributes.set(\"activation_params\",\"floats\",[this._allData[t.inputs[1]].tensor.floatData[0],this._allData[t.inputs[2]].tensor.floatData[0]]);else continue;e.attributes.set(\"activation\",\"string\",t.opType),this.deleteNode(o[0])}}}}});var Dp,vg,eo,Lp=O(()=>{\"use strict\";wn();Ep();Pr();Dp=rr(sr());Y();vg=F.experimental.fbs,eo=class{constructor(){}load(e,o,t){let r;if(!t)try{this.loadFromOnnxFormat(e,o);return}catch(n){if(t!==void 0)throw n;r=n}try{this.loadFromOrtFormat(e,o)}catch(n){throw t!==void 0?n:new Error(`Failed to load model as ONNX format: ${r}\nas ORT format: ${n}`)}}loadFromOnnxFormat(e,o){let t=Dp.onnx.ModelProto.decode(e);if(Rt.longToNumber(t.irVersion)<3)throw new Error(\"only support ONNX model with IR_VERSION>=3\");this._opsets=t.opsetImport.map(n=>({domain:n.domain,version:Rt.longToNumber(n.version)})),this._graph=Wi.from(t.graph,o)}loadFromOrtFormat(e,o){let t=new w.ByteBuffer(e),r=vg.InferenceSession.getRootAsInferenceSession(t).model();if(Rt.longToNumber(r.irVersion())<3)throw new Error(\"only support ONNX model with IR_VERSION>=3\");this._opsets=[];for(let s=0;s{\"use strict\";Sp();Ap();Ut();Lp();ro=class{constructor(e={}){this._initialized=!1,this.backendHint=e.backendHint,this.profiler=xn.create(e.profiler),this.context={profiler:this.profiler,graphInputTypes:[],graphInputDims:[]}}get inputNames(){return this._model.graph.getInputNames()}get outputNames(){return this._model.graph.getOutputNames()}startProfiling(){this.profiler.start()}endProfiling(){this.profiler.stop()}async loadModel(e,o,t){await this.profiler.event(\"session\",\"Session.loadModel\",async()=>{let r=await Mi(this.backendHint);if(this.sessionHandler=r.createSessionHandler(this.context),this._model=new eo,typeof e==\"string\"){let n=e.endsWith(\".ort\");{let a=await(await fetch(e)).arrayBuffer();this.initialize(new Uint8Array(a),n)}}else if(ArrayBuffer.isView(e))this.initialize(e);else{let n=new Uint8Array(e,o||0,t||e.byteLength);this.initialize(n)}})}initialize(e,o){if(this._initialized)throw new Error(\"already initialized\");this.profiler.event(\"session\",\"Session.initialize\",()=>{let t=this.sessionHandler.transformGraph?this.sessionHandler:void 0;this._model.load(e,t,o),this.sessionHandler.onGraphInitialized&&this.sessionHandler.onGraphInitialized(this._model.graph),this.initializeOps(this._model.graph),this._executionPlan=new Zn(this._model.graph,this._ops,this.profiler)}),this._initialized=!0}async run(e){if(!this._initialized)throw new Error(\"session not initialized yet\");return this.profiler.event(\"session\",\"Session.run\",async()=>{let o=this.normalizeAndValidateInputs(e),t=await this._executionPlan.execute(this.sessionHandler,o);return this.createOutput(t)})}normalizeAndValidateInputs(e){let o=this._model.graph.getInputNames();if(Array.isArray(e)){if(e.length!==o.length)throw new Error(`incorrect input array length: expected ${o.length} but got ${e.length}`)}else{if(e.size!==o.length)throw new Error(`incorrect input map size: expected ${o.length} but got ${e.size}`);let t=new Array(e.size),r=0;for(let n=0;n{\"use strict\";Yt();We();no=class{constructor(e){this.session=e;this.inputNames=this.session.inputNames,this.outputNames=this.session.outputNames}async dispose(){}async run(e,o,t){let r=new Map;for(let a in e)if(Object.hasOwnProperty.call(e,a)){let u=e[a];r.set(a,new bt(u.dims,u.type,void 0,void 0,u.data))}let n=await this.session.run(r),s={};return n.forEach((a,u)=>{s[u]=new yt(a.type,a.data,a.dims)}),s}startProfiling(){this.session.startProfiling()}endProfiling(){this.session.endProfiling()}}});var Bp={};Or(Bp,{onnxjsBackend:()=>Ig});var Hi,Ig,Fp=O(()=>{\"use strict\";$p();kp();Hi=class{async init(){}async createInferenceSessionHandler(e,o){let t=new ro(o);return typeof e==\"string\"?await t.loadModel(e):await t.loadModel(e),new no(t)}},Ig=new Hi});var oo=O(()=>{\"use strict\"});var Rp={};Or(Rp,{default:()=>_g});var Cp,Np,_g,Gp=O(()=>{\"use strict\";qi();Ke();Vr();Cp=\"ort-wasm-proxy-worker\",Np=globalThis.self?.name===Cp;Np&&(self.onmessage=i=>{let{type:e,in:o}=i.data;try{switch(e){case\"init-wasm\":io(o.wasm).then(()=>{ao(o).then(()=>{postMessage({type:e})},t=>{postMessage({type:e,err:t})})},t=>{postMessage({type:e,err:t})});break;case\"init-ep\":{let{epName:t,env:r}=o;so(r,t).then(()=>{postMessage({type:e})},n=>{postMessage({type:e,err:n})});break}case\"copy-from\":{let{buffer:t}=o,r=zr(t);postMessage({type:e,out:r});break}case\"create\":{let{model:t,options:r}=o;uo(t,r).then(n=>{postMessage({type:e,out:n})},n=>{postMessage({type:e,err:n})});break}case\"release\":lo(o),postMessage({type:e});break;case\"run\":{let{sessionId:t,inputIndices:r,inputs:n,outputIndices:s,options:a}=o;fo(t,r,n,s,new Array(s.length).fill(null),a).then(u=>{u.some(l=>l[3]!==\"cpu\")?postMessage({type:e,err:\"Proxy does not support non-cpu tensor location.\"}):postMessage({type:e,out:u},po([...n,...u]))},u=>{postMessage({type:e,err:u})});break}case\"end-profiling\":co(o),postMessage({type:e});break;default:}}catch(t){postMessage({type:e,err:t})}});_g=Np?null:i=>new Worker(i??br,{type:\"module\",name:Cp})});var Up={};Or(Up,{default:()=>Og});var ji,Mp,Og,Vp=O(()=>{\"use strict\";Mp=(ji=import.meta.url,async function(i={}){function e(){return C.buffer!=oe.buffer&&it(),oe}function o(){return C.buffer!=oe.buffer&&it(),be}function t(){return C.buffer!=oe.buffer&&it(),Z}function r(){return C.buffer!=oe.buffer&&it(),ge}function n(){return C.buffer!=oe.buffer&&it(),ae}var s,a,u=Object.assign({},i),l=new Promise((c,m)=>{s=c,a=m}),f=typeof window==\"object\",p=typeof importScripts==\"function\",d=p&&self.name==\"em-pthread\";u.mountExternalData=(c,m)=>{c.startsWith(\"./\")&&(c=c.substring(2)),(u.Ua||(u.Ua=new Map)).set(c,m)},u.unmountExternalData=()=>{delete u.Ua};var y,T,v=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,shared:!0}).buffer.constructor,S=Object.assign({},u),L=\"./this.program\",P=(c,m)=>{throw m},A=\"\";(f||p)&&(p?A=self.location.href:typeof document<\"u\"&&document.currentScript&&(A=document.currentScript.src),ji&&(A=ji),A=A.startsWith(\"blob:\")?\"\":A.substr(0,A.replace(/[?#].*/,\"\").lastIndexOf(\"/\")+1),p&&(T=c=>{var m=new XMLHttpRequest;return m.open(\"GET\",c,!1),m.responseType=\"arraybuffer\",m.send(null),new Uint8Array(m.response)}),y=(c,m,g)=>{var x=new XMLHttpRequest;x.open(\"GET\",c,!0),x.responseType=\"arraybuffer\",x.onload=()=>{x.status==200||x.status==0&&x.response?m(x.response):g()},x.onerror=g,x.send(null)});var M,V=console.log.bind(console),lt=console.error.bind(console),wt=V,et=lt;if(Object.assign(u,S),S=null,d){let c=function(m){try{var g=m.data,x=g.cmd;if(x===\"load\"){let I=[];self.onmessage=E=>I.push(E),self.startWorker=()=>{postMessage({cmd:\"loaded\"});for(let E of I)c(E);self.onmessage=c};for(let E of g.handlers)u[E]&&!u[E].proxy||(u[E]=(...R)=>{postMessage({Za:\"callHandler\",kb:E,args:R})},E==\"print\"&&(wt=u[E]),E==\"printErr\"&&(et=u[E]));C=g.wasmMemory,it(),Dt(g.wasmModule)}else if(x===\"run\"){$o(g.pthread_ptr,0,0,1,0,0),Ao(g.pthread_ptr),md(),aa(),_t||=!0;try{bd(g.start_routine,g.arg)}catch(I){if(I!=\"unwind\")throw I}}else x===\"cancel\"?er()&&nn(-1):g.target!==\"setimmediate\"&&(x===\"checkMailbox\"?_t&&tn():x&&(et(`worker: received unknown command ${x}`),et(g)))}catch(I){throw Ha(),I}};var Vg=c,Dt,_t=!1;et=function(...m){m=m.join(\" \"),console.error(m)},self.alert=function(...m){postMessage({Za:\"alert\",text:m.join(\" \"),nb:er()})},u.instantiateWasm=(m,g)=>new Promise(x=>{Dt=I=>{I=new WebAssembly.Instance(I,Yr()),g(I),x()}}),self.onunhandledrejection=m=>{throw m.reason||m},self.onmessage=c}u.wasmBinary&&(M=u.wasmBinary);var C,Kr,we,oe,be,Z,ge,ie,ae,se=!1;function it(){var c=C.buffer;u.HEAP8=oe=new Int8Array(c),u.HEAP16=new Int16Array(c),u.HEAPU8=be=new Uint8Array(c),u.HEAPU16=new Uint16Array(c),u.HEAP32=Z=new Int32Array(c),u.HEAPU32=ge=new Uint32Array(c),u.HEAPF32=new Float32Array(c),u.HEAPF64=ae=new Float64Array(c),u.HEAP64=ie=new BigInt64Array(c),u.HEAPU64=new BigUint64Array(c)}if(!d){if(!((C=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0})).buffer instanceof v))throw et(\"requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag\"),Error(\"bad memory\");it()}var Lt=[],Jr=[],Ye=[],ue=0,Ze=null,De=null;function le(){if(--ue==0&&(Ze!==null&&(clearInterval(Ze),Ze=null),De)){var c=De;De=null,c()}}function Mt(c){throw et(c=\"Aborted(\"+c+\")\"),se=!0,we=1,c=new WebAssembly.RuntimeError(c+\". Build with -sASSERTIONS for more info.\"),a(c),c}var ve,gt=c=>c.startsWith(\"data:application/octet-stream;base64,\"),Ot=c=>c.startsWith(\"file://\");function Jt(c){if(c==ve&&M)return new Uint8Array(M);if(T)return T(c);throw\"both async and sync fetching of the wasm failed\"}function wr(c,m,g){return function(x){if(!M&&(f||p)){if(typeof fetch==\"function\"&&!Ot(x))return fetch(x,{credentials:\"same-origin\"}).then(I=>{if(!I.ok)throw`failed to load wasm binary file at '${x}'`;return I.arrayBuffer()}).catch(()=>Jt(x));if(y)return new Promise((I,E)=>{y(x,R=>I(new Uint8Array(R)),E)})}return Promise.resolve().then(()=>Jt(x))}(c).then(x=>WebAssembly.instantiate(x,m)).then(g,x=>{et(`failed to asynchronously prepare wasm: ${x}`),Mt(x)})}function Yr(){return{a:{j:hd,b:yd,E:ca,g:ha,V:ma,A:ya,C:xa,W:Ta,T:wa,L:va,S:Ia,o:_a,B:Oa,y:Sa,U:Aa,z:Pa,_:xd,Z:Td,P:wd,w:vd,F:Id,k:_d,O:Ao,Y:Od,I:Sd,J:Ad,K:Pd,G:La,H:$a,v:Ed,q:Dd,l:Ld,p:$d,e:kd,X:Bd,x:Fd,d:ka,f:Cd,i:Nd,u:Rd,t:Gd,s:Md,Q:Ca,R:Na,D:So,h:Ra,n:Ga,M:Ma,m:Ua,a:C,r:Oo,N:Wa,c:zd}}}var ea={836900:(c,m,g,x,I)=>{if(u===void 0||!u.Ua)return 1;if((c=Ir(c>>>0)).startsWith(\"./\")&&(c=c.substring(2)),!(c=u.Ua.get(c)))return 2;if(x>>>=0,(m>>>=0)+(g>>>=0)>c.byteLength)return 3;try{let E=c.subarray(m,m+g);switch(I){case 0:o().set(E,x>>>0);break;case 1:u.mb(x,E);break;default:return 4}return 0}catch{return 4}},837583:()=>typeof wasmOffsetConverter<\"u\"};function hd(){return typeof wasmOffsetConverter<\"u\"}function Io(c){this.name=\"ExitStatus\",this.message=`Program terminated with exit(${c})`,this.status=c}var _o=c=>{c.terminate(),c.onmessage=()=>{}},ra=c=>{Ie.length==0&&(ua(),sa(Ie[0]));var m=Ie.pop();if(!m)return 6;Le.push(m),fe[c.Ra]=m,m.Ra=c.Ra;var g={cmd:\"run\",start_routine:c.cb,arg:c.ab,pthread_ptr:c.Ra};return m.postMessage(g,c.ib),0},vr=0,st=(c,m,...g)=>{for(var x=2*g.length,I=Fo(),E=Bo(8*x),R=E>>>3,at=0;at>>0]=Pt)}return c=qa(c,0,x,E,m),on(I),c};function Oo(c){if(d)return st(0,1,c);if(we=c,!(0{if(we=c,d)throw na(c),\"unwind\";Oo(c)},Ie=[],Le=[],oa=[],fe={},ia=c=>{var m=c.Ra;delete fe[m],Ie.push(c),Le.splice(Le.indexOf(c),1),c.Ra=0,ko(m)};function aa(){oa.forEach(c=>c())}var sa=c=>new Promise(m=>{c.onmessage=I=>{var E=(I=I.data).cmd;if(I.targetThread&&I.targetThread!=er()){var R=fe[I.targetThread];R?R.postMessage(I,I.transferList):et(`Internal error! Worker sent a message \"${E}\" to target pthread ${I.targetThread}, but that thread no longer exists!`)}else E===\"checkMailbox\"?tn():E===\"spawnThread\"?ra(I):E===\"cleanupThread\"?ia(fe[I.thread]):E===\"killThread\"?(I=I.thread,E=fe[I],delete fe[I],_o(E),ko(I),Le.splice(Le.indexOf(E),1),E.Ra=0):E===\"cancelThread\"?fe[I.thread].postMessage({cmd:\"cancel\"}):E===\"loaded\"?(c.loaded=!0,m(c)):E===\"alert\"?alert(`Thread ${I.threadId}: ${I.text}`):I.target===\"setimmediate\"?c.postMessage(I):E===\"callHandler\"?u[I.handler](...I.args):E&&et(`worker sent an unknown command ${E}`)},c.onerror=I=>{throw et(`worker sent an error! ${I.filename}:${I.lineno}: ${I.message}`),I};var g,x=[];for(g of[])u.hasOwnProperty(g)&&x.push(g);c.postMessage({cmd:\"load\",handlers:x,wasmMemory:C,wasmModule:Kr})});function ua(){var c=new Worker(new URL(import.meta.url),{type:\"module\",workerData:\"em-pthread\",name:\"em-pthread\"});Ie.push(c)}var la,Zr=c=>{for(;0{var c=er(),m=r()[c+52>>>2>>>0];c=r()[c+56>>>2>>>0],Xa(m,m-c),on(m)},Qr=[],bd=(c,m)=>{vr=0;var g=Qr[c];g||(c>=Qr.length&&(Qr.length=c+1),Qr[c]=g=la.get(c)),c=g(m),0>>=0);throw m>>>=0,g>>>=0,r()[x.Xa+16>>>2>>>0]=0,r()[x.Xa+4>>>2>>>0]=m,r()[x.Xa+8>>>2>>>0]=g,c}function fa(c,m,g,x){return d?st(2,1,c,m,g,x):ca(c,m,g,x)}function ca(c,m,g,x){if(c>>>=0,m>>>=0,g>>>=0,x>>>=0,v===void 0)return et(\"Current environment does not support SharedArrayBuffer, pthreads are not available!\"),6;var I=[];return d&&I.length===0?fa(c,m,g,x):(c={cb:g,Ra:c,ab:x,ib:I},d?(c.Za=\"spawnThread\",postMessage(c,I),0):ra(c))}var pa=typeof TextDecoder<\"u\"?new TextDecoder(\"utf8\"):void 0,da=(c,m,g)=>{var x=(m>>>=0)+g;for(g=m;c[g]&&!(g>=x);)++g;if(16(I=(240&I)==224?(15&I)<<12|E<<6|R:(7&I)<<18|E<<12|R<<6|63&c[m++])?x+=String.fromCharCode(I):(I-=65536,x+=String.fromCharCode(55296|I>>10,56320|1023&I))}}else x+=String.fromCharCode(I)}return x},Ir=(c,m)=>(c>>>=0)?da(o(),c,m):\"\";function ha(c,m,g){return d?st(3,1,c,m,g):0}function ma(c,m){if(d)return st(4,1,c,m)}var ba=c=>{for(var m=0,g=0;g=x?m++:2047>=x?m+=2:55296<=x&&57343>=x?(m+=4,++g):m+=3}return m},ga=(c,m,g,x)=>{if(!(0>>=0;x=g+x-1;for(var E=0;E=R&&(R=65536+((1023&R)<<10)|1023&c.charCodeAt(++E)),127>=R){if(g>=x)break;m[g++>>>0]=R}else{if(2047>=R){if(g+1>=x)break;m[g++>>>0]=192|R>>6}else{if(65535>=R){if(g+2>=x)break;m[g++>>>0]=224|R>>12}else{if(g+3>=x)break;m[g++>>>0]=240|R>>18,m[g++>>>0]=128|R>>12&63}m[g++>>>0]=128|R>>6&63}m[g++>>>0]=128|63&R}}return m[g>>>0]=0,g-I},_r=(c,m,g)=>ga(c,o(),m,g);function ya(c,m){if(d)return st(5,1,c,m)}function xa(c,m,g){if(d)return st(6,1,c,m,g)}function Ta(c,m,g){return d?st(7,1,c,m,g):0}function wa(c,m){if(d)return st(8,1,c,m)}function va(c,m,g){if(d)return st(9,1,c,m,g)}function Ia(c,m,g,x){if(d)return st(10,1,c,m,g,x)}function _a(c,m,g,x){if(d)return st(11,1,c,m,g,x)}function Oa(c,m,g,x){if(d)return st(12,1,c,m,g,x)}function Sa(c){if(d)return st(13,1,c)}function Aa(c,m){if(d)return st(14,1,c,m)}function Pa(c,m,g){if(d)return st(15,1,c,m,g)}var xd=()=>{Mt(\"\")},Td=()=>1;function wd(c){$o(c>>>0,!p,1,!f,131072,!1),aa()}function Ao(c){c>>>=0,typeof Atomics.jb==\"function\"&&(Atomics.jb(t(),c>>>2,c).value.then(tn),c+=128,Atomics.store(t(),c>>>2,1))}var tn=()=>{var c=er();if(c&&(Ao(c),c=ja,!se))try{if(c(),!(0>>=0)==m>>>0?setTimeout(tn):d?postMessage({targetThread:c,cmd:\"checkMailbox\"}):(c=fe[c])&&c.postMessage({cmd:\"checkMailbox\"})}var Po=[];function Id(c,m,g,x,I){for(m>>>=0,x/=2,Po.length=x,g=I>>>0>>>3,I=0;I>>0];return(m?ea[m]:Wd[c])(...Po)}function _d(c){c>>>=0,d?postMessage({cmd:\"cleanupThread\",thread:c}):ia(fe[c])}function Od(c){}function Sd(c,m){c=-9007199254740992>c||9007199254740992>>=0,c=new Date(1e3*c),t()[m>>>2>>>0]=c.getUTCSeconds(),t()[m+4>>>2>>>0]=c.getUTCMinutes(),t()[m+8>>>2>>>0]=c.getUTCHours(),t()[m+12>>>2>>>0]=c.getUTCDate(),t()[m+16>>>2>>>0]=c.getUTCMonth(),t()[m+20>>>2>>>0]=c.getUTCFullYear()-1900,t()[m+24>>>2>>>0]=c.getUTCDay(),c=(c.getTime()-Date.UTC(c.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,t()[m+28>>>2>>>0]=c}var Qe=c=>c%4==0&&(c%100!=0||c%400==0),Ea=[0,31,60,91,121,152,182,213,244,274,305,335],Da=[0,31,59,90,120,151,181,212,243,273,304,334];function Ad(c,m){c=-9007199254740992>c||9007199254740992>>=0,c=new Date(1e3*c),t()[m>>>2>>>0]=c.getSeconds(),t()[m+4>>>2>>>0]=c.getMinutes(),t()[m+8>>>2>>>0]=c.getHours(),t()[m+12>>>2>>>0]=c.getDate(),t()[m+16>>>2>>>0]=c.getMonth(),t()[m+20>>>2>>>0]=c.getFullYear()-1900,t()[m+24>>>2>>>0]=c.getDay();var g=(Qe(c.getFullYear())?Ea:Da)[c.getMonth()]+c.getDate()-1|0;t()[m+28>>>2>>>0]=g,t()[m+36>>>2>>>0]=-60*c.getTimezoneOffset(),g=new Date(c.getFullYear(),6,1).getTimezoneOffset();var x=new Date(c.getFullYear(),0,1).getTimezoneOffset();c=0|(g!=x&&c.getTimezoneOffset()==Math.min(x,g)),t()[m+32>>>2>>>0]=c}function Pd(c){c>>>=0;var m=new Date(t()[c+20>>>2>>>0]+1900,t()[c+16>>>2>>>0],t()[c+12>>>2>>>0],t()[c+8>>>2>>>0],t()[c+4>>>2>>>0],t()[c>>>2>>>0],0),g=t()[c+32>>>2>>>0],x=m.getTimezoneOffset(),I=new Date(m.getFullYear(),6,1).getTimezoneOffset(),E=new Date(m.getFullYear(),0,1).getTimezoneOffset(),R=Math.min(E,I);return 0>g?t()[c+32>>>2>>>0]=+(I!=E&&R==x):0>>2>>>0]=m.getDay(),g=(Qe(m.getFullYear())?Ea:Da)[m.getMonth()]+m.getDate()-1|0,t()[c+28>>>2>>>0]=g,t()[c>>>2>>>0]=m.getSeconds(),t()[c+4>>>2>>>0]=m.getMinutes(),t()[c+8>>>2>>>0]=m.getHours(),t()[c+12>>>2>>>0]=m.getDate(),t()[c+16>>>2>>>0]=m.getMonth(),t()[c+20>>>2>>>0]=m.getYear(),c=m.getTime(),BigInt(isNaN(c)?-1:c/1e3)}function La(c,m,g,x,I,E,R){return d?st(16,1,c,m,g,x,I,E,R):-52}function $a(c,m,g,x,I,E){if(d)return st(17,1,c,m,g,x,I,E)}function Ed(c,m,g,x){c>>>=0,m>>>=0,g>>>=0,x>>>=0;var I=new Date().getFullYear(),E=new Date(I,0,1),R=new Date(I,6,1);I=E.getTimezoneOffset();var at=R.getTimezoneOffset(),Pt=Math.max(I,at);r()[c>>>2>>>0]=60*Pt,t()[m>>>2>>>0]=+(I!=at),E=(c=$t=>$t.toLocaleTimeString(void 0,{hour12:!1,timeZoneName:\"short\"}).split(\" \")[1])(E),R=c(R),at>>=0,m>>>=0,g>>>=0,Eo.length=0;for(var x;x=o()[m++>>>0];){var I=x!=105;g+=(I&=x!=112)&&g%8?4:0,Eo.push(x==112?r()[g>>>2>>>0]:x==106?ie[g>>>3]:x==105?t()[g>>>2>>>0]:n()[g>>>3>>>0]),g+=I?8:4}return ea[c](...Eo)}var Ld=()=>{},$d=()=>Date.now();function kd(c,m){return et(Ir(c>>>0,m>>>0))}var ka,Bd=()=>{throw vr+=1,\"unwind\"};function Fd(){return 4294901760}ka=()=>performance.timeOrigin+performance.now();var Cd=()=>navigator.hardwareConcurrency;function Nd(){return Mt(\"Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER\"),0}function Rd(c){c>>>=0;var m=o().length;if(c<=m||4294901760=g;g*=2){var x=m*(1+.2/g);x=Math.min(x,c+100663296);var I=Math;x=Math.max(c,x);t:{I=(I.min.call(I,4294901760,x+(65536-x%65536)%65536)-C.buffer.byteLength+65535)/65536;try{C.grow(I),it();var E=1;break t}catch{}E=void 0}if(E)return!0}return!1}var en=()=>(Mt(\"Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER\"),0),tr={},Ba=c=>{c.forEach(m=>{var g=en();g&&(tr[g]=m)})};function Gd(){var c=Error().stack.toString().split(`\n`);return c[0]==\"Error\"&&c.shift(),Ba(c),tr.$a=en(),tr.bb=c,tr.$a}function Md(c,m,g){if(c>>>=0,m>>>=0,tr.$a==c)var x=tr.bb;else(x=Error().stack.toString().split(`\n`))[0]==\"Error\"&&x.shift(),Ba(x);for(var I=3;x[I]&&en()!=c;)++I;for(c=0;c>>2>>>0]=en();return c}var Do,Lo={},Fa=()=>{if(!Do){var c,m={USER:\"web_user\",LOGNAME:\"web_user\",PATH:\"/\",PWD:\"/\",HOME:\"/home/web_user\",LANG:(typeof navigator==\"object\"&&navigator.languages&&navigator.languages[0]||\"C\").replace(\"-\",\"_\")+\".UTF-8\",_:L||\"./this.program\"};for(c in Lo)Lo[c]===void 0?delete m[c]:m[c]=Lo[c];var g=[];for(c in m)g.push(`${c}=${m[c]}`);Do=g}return Do};function Ca(c,m){if(d)return st(18,1,c,m);c>>>=0,m>>>=0;var g=0;return Fa().forEach((x,I)=>{var E=m+g;for(I=r()[c+4*I>>>2>>>0]=E,E=0;E>>0]=x.charCodeAt(E);e()[I>>>0]=0,g+=x.length+1}),0}function Na(c,m){if(d)return st(19,1,c,m);c>>>=0,m>>>=0;var g=Fa();r()[c>>>2>>>0]=g.length;var x=0;return g.forEach(I=>x+=I.length+1),r()[m>>>2>>>0]=x,0}function Ra(c){return d?st(20,1,c):52}function Ga(c,m,g,x){return d?st(21,1,c,m,g,x):52}function Ma(c,m,g,x){return d?st(22,1,c,m,g,x):70}var Ud=[null,[],[]];function Ua(c,m,g,x){if(d)return st(23,1,c,m,g,x);m>>>=0,g>>>=0,x>>>=0;for(var I=0,E=0;E>>2>>>0],at=r()[m+4>>>2>>>0];m+=8;for(var Pt=0;Pt>>0],Ft=Ud[c];$t===0||$t===10?((c===1?wt:et)(da(Ft,0)),Ft.length=0):Ft.push($t)}I+=at}return r()[x>>>2>>>0]=I,0}var Va=[31,29,31,30,31,30,31,31,30,31,30,31],za=[31,28,31,30,31,30,31,31,30,31,30,31],Vd=(c,m)=>{e().set(c,m>>>0)};function Wa(c,m,g,x){function I(_,Q,ft){for(_=typeof _==\"number\"?_.toString():_||\"\";_.lengthZa?-1:0$e-_.getDate())){_.setDate(_.getDate()+Q);break}Q-=$e-_.getDate()+1,_.setDate(1),11>ft?_.setMonth(ft+1):(_.setMonth(0),_.setFullYear(_.getFullYear()+1))}return ft=new Date(_.getFullYear()+1,0,4),Q=at(new Date(_.getFullYear(),0,4)),ft=at(ft),0>=R(Q,_)?0>=R(ft,_)?_.getFullYear()+1:_.getFullYear():_.getFullYear()-1}c>>>=0,m>>>=0,g>>>=0,x>>>=0;var $t=r()[x+40>>>2>>>0];for(var Ft in x={gb:t()[x>>>2>>>0],fb:t()[x+4>>>2>>>0],Va:t()[x+8>>>2>>>0],Ya:t()[x+12>>>2>>>0],Wa:t()[x+16>>>2>>>0],Ta:t()[x+20>>>2>>>0],Qa:t()[x+24>>>2>>>0],Sa:t()[x+28>>>2>>>0],ob:t()[x+32>>>2>>>0],eb:t()[x+36>>>2>>>0],hb:$t?Ir($t):\"\"},g=Ir(g),$t={\"%c\":\"%a %b %d %H:%M:%S %Y\",\"%D\":\"%m/%d/%y\",\"%F\":\"%Y-%m-%d\",\"%h\":\"%b\",\"%r\":\"%I:%M:%S %p\",\"%R\":\"%H:%M\",\"%T\":\"%H:%M:%S\",\"%x\":\"%m/%d/%y\",\"%X\":\"%H:%M:%S\",\"%Ec\":\"%c\",\"%EC\":\"%C\",\"%Ex\":\"%m/%d/%y\",\"%EX\":\"%H:%M:%S\",\"%Ey\":\"%y\",\"%EY\":\"%Y\",\"%Od\":\"%d\",\"%Oe\":\"%e\",\"%OH\":\"%H\",\"%OI\":\"%I\",\"%Om\":\"%m\",\"%OM\":\"%M\",\"%OS\":\"%S\",\"%Ou\":\"%u\",\"%OU\":\"%U\",\"%OV\":\"%V\",\"%Ow\":\"%w\",\"%OW\":\"%W\",\"%Oy\":\"%y\"})g=g.replace(new RegExp(Ft,\"g\"),$t[Ft]);var Ja=\"Sunday Monday Tuesday Wednesday Thursday Friday Saturday\".split(\" \"),Ya=\"January February March April May June July August September October November December\".split(\" \");for(Ft in $t={\"%a\":_=>Ja[_.Qa].substring(0,3),\"%A\":_=>Ja[_.Qa],\"%b\":_=>Ya[_.Wa].substring(0,3),\"%B\":_=>Ya[_.Wa],\"%C\":_=>E((_.Ta+1900)/100|0,2),\"%d\":_=>E(_.Ya,2),\"%e\":_=>I(_.Ya,2,\" \"),\"%g\":_=>Pt(_).toString().substring(2),\"%G\":Pt,\"%H\":_=>E(_.Va,2),\"%I\":_=>((_=_.Va)==0?_=12:12<_&&(_-=12),E(_,2)),\"%j\":_=>{for(var Q=0,ft=0;ft<=_.Wa-1;Q+=(Qe(_.Ta+1900)?Va:za)[ft++]);return E(_.Ya+Q,3)},\"%m\":_=>E(_.Wa+1,2),\"%M\":_=>E(_.fb,2),\"%n\":()=>`\n`,\"%p\":_=>0<=_.Va&&12>_.Va?\"AM\":\"PM\",\"%S\":_=>E(_.gb,2),\"%t\":()=>\"\t\",\"%u\":_=>_.Qa||7,\"%U\":_=>E(Math.floor((_.Sa+7-_.Qa)/7),2),\"%V\":_=>{var Q=Math.floor((_.Sa+7-(_.Qa+6)%7)/7);if(2>=(_.Qa+371-_.Sa-2)%7&&Q++,Q)Q==53&&((ft=(_.Qa+371-_.Sa)%7)==4||ft==3&&Qe(_.Ta)||(Q=1));else{Q=52;var ft=(_.Qa+7-_.Sa-1)%7;(ft==4||ft==5&&Qe(_.Ta%400-1))&&Q++}return E(Q,2)},\"%w\":_=>_.Qa,\"%W\":_=>E(Math.floor((_.Sa+7-(_.Qa+6)%7)/7),2),\"%y\":_=>(_.Ta+1900).toString().substring(2),\"%Y\":_=>_.Ta+1900,\"%z\":_=>{var Q=0<=(_=_.eb);return _=Math.abs(_)/60,(Q?\"+\":\"-\")+(\"0000\"+(_/60*100+_%60)).slice(-4)},\"%Z\":_=>_.hb,\"%%\":()=>\"%\"},g=g.replace(/%%/g,\"\\0\\0\"),$t)g.includes(Ft)&&(g=g.replace(new RegExp(Ft,\"g\"),$t[Ft](x)));return Ft=function(_){var Q=Array(ba(_)+1);return ga(_,Q,0,Q.length),Q}(g=g.replace(/\\0\\0/g,\"%\")),Ft.length>m?0:(Vd(Ft,c),Ft.length-1)}function zd(c,m,g,x){return Wa(c>>>0,m>>>0,g>>>0,x>>>0)}d||function(){for(var c=u.numThreads-1;c--;)ua();Lt.unshift(()=>{ue++,function(m){d?m():Promise.all(Ie.map(sa)).then(m)}(()=>le())})}();var Wd=[Oo,na,fa,ha,ma,ya,xa,Ta,wa,va,Ia,_a,Oa,Sa,Aa,Pa,La,$a,Ca,Na,Ra,Ga,Ma,Ua],U=function(){function c(g,x){return U=g.exports,U=function(){var I=U,E=at=>()=>at()>>>0,R=at=>Pt=>at(Pt)>>>0;return(I=Object.assign({},I)).Ba=E(I.Ba),I.Ca=R(I.Ca),I.emscripten_main_runtime_thread_id=E(I.emscripten_main_runtime_thread_id),I.Oa=R(I.Oa),I.Pa=E(I.Pa),I}(),oa.push(U.Ea),la=U.Fa,Jr.unshift(U.$),Kr=x,le(),U}var m=Yr();if(ue++,u.instantiateWasm)try{return u.instantiateWasm(m,c)}catch(g){et(`Module.instantiateWasm callback failed with error: ${g}`),a(g)}return ve||=u.locateFile?gt(\"ort-wasm-simd-threaded.wasm\")?\"ort-wasm-simd-threaded.wasm\":u.locateFile?u.locateFile(\"ort-wasm-simd-threaded.wasm\",A):A+\"ort-wasm-simd-threaded.wasm\":new URL(\"ort-wasm-simd-threaded.wasm\",import.meta.url).href,function(g,x){var I=ve;return M||typeof WebAssembly.instantiateStreaming!=\"function\"||gt(I)||Ot(I)||typeof fetch!=\"function\"?wr(I,g,x):fetch(I,{credentials:\"same-origin\"}).then(E=>WebAssembly.instantiateStreaming(E,g).then(x,function(R){return et(`wasm streaming compile failed: ${R}`),et(\"falling back to ArrayBuffer instantiation\"),wr(I,g,x)}))}(m,function(g){c(g.instance,g.module)}).catch(a),{}}();u._OrtInit=(c,m)=>(u._OrtInit=U.aa)(c,m),u._OrtGetLastError=(c,m)=>(u._OrtGetLastError=U.ba)(c,m),u._OrtCreateSessionOptions=(c,m,g,x,I,E,R,at,Pt,$t)=>(u._OrtCreateSessionOptions=U.ca)(c,m,g,x,I,E,R,at,Pt,$t),u._OrtAppendExecutionProvider=(c,m)=>(u._OrtAppendExecutionProvider=U.da)(c,m),u._OrtAddFreeDimensionOverride=(c,m,g)=>(u._OrtAddFreeDimensionOverride=U.ea)(c,m,g),u._OrtAddSessionConfigEntry=(c,m,g)=>(u._OrtAddSessionConfigEntry=U.fa)(c,m,g),u._OrtReleaseSessionOptions=c=>(u._OrtReleaseSessionOptions=U.ga)(c),u._OrtCreateSession=(c,m,g)=>(u._OrtCreateSession=U.ha)(c,m,g),u._OrtReleaseSession=c=>(u._OrtReleaseSession=U.ia)(c),u._OrtGetInputOutputCount=(c,m,g)=>(u._OrtGetInputOutputCount=U.ja)(c,m,g),u._OrtGetInputName=(c,m)=>(u._OrtGetInputName=U.ka)(c,m),u._OrtGetOutputName=(c,m)=>(u._OrtGetOutputName=U.la)(c,m),u._OrtFree=c=>(u._OrtFree=U.ma)(c),u._OrtCreateTensor=(c,m,g,x,I,E)=>(u._OrtCreateTensor=U.na)(c,m,g,x,I,E),u._OrtGetTensorData=(c,m,g,x,I)=>(u._OrtGetTensorData=U.oa)(c,m,g,x,I),u._OrtReleaseTensor=c=>(u._OrtReleaseTensor=U.pa)(c),u._OrtCreateRunOptions=(c,m,g,x)=>(u._OrtCreateRunOptions=U.qa)(c,m,g,x),u._OrtAddRunConfigEntry=(c,m,g)=>(u._OrtAddRunConfigEntry=U.ra)(c,m,g),u._OrtReleaseRunOptions=c=>(u._OrtReleaseRunOptions=U.sa)(c),u._OrtCreateBinding=c=>(u._OrtCreateBinding=U.ta)(c),u._OrtBindInput=(c,m,g)=>(u._OrtBindInput=U.ua)(c,m,g),u._OrtBindOutput=(c,m,g,x)=>(u._OrtBindOutput=U.va)(c,m,g,x),u._OrtClearBoundOutputs=c=>(u._OrtClearBoundOutputs=U.wa)(c),u._OrtReleaseBinding=c=>(u._OrtReleaseBinding=U.xa)(c),u._OrtRunWithBinding=(c,m,g,x,I)=>(u._OrtRunWithBinding=U.ya)(c,m,g,x,I),u._OrtRun=(c,m,g,x,I,E,R,at)=>(u._OrtRun=U.za)(c,m,g,x,I,E,R,at),u._OrtEndProfiling=c=>(u._OrtEndProfiling=U.Aa)(c);var er=()=>(er=U.Ba)();u._malloc=c=>(u._malloc=U.Ca)(c),u._free=c=>(u._free=U.Da)(c);var rn,$o=(c,m,g,x,I,E)=>($o=U.Ga)(c,m,g,x,I,E),Ha=()=>(Ha=U.Ha)(),qa=(c,m,g,x,I)=>(qa=U.Ia)(c,m,g,x,I),ko=c=>(ko=U.Ja)(c),nn=c=>(nn=U.Ka)(c),ja=()=>(ja=U.La)(),Xa=(c,m)=>(Xa=U.Ma)(c,m),on=c=>(on=U.Na)(c),Bo=c=>(Bo=U.Oa)(c),Fo=()=>(Fo=U.Pa)();function Ka(){0Fo(),u.stackRestore=c=>on(c),u.stackAlloc=c=>Bo(c),u.UTF8ToString=Ir,u.stringToUTF8=_r,u.lengthBytesUTF8=ba,De=function c(){rn||Ka(),rn||(De=c)},Ka(),l}),Og=Mp;globalThis.self?.name===\"em-pthread\"&&Mp()});var br,Sg,Ag,Pg,zp,Wp,Eg,Hp,Vr=O(()=>{\"use strict\";oo();br=!1?void 0:import.meta.url??(typeof document<\"u\"?document.currentScript?.src:typeof self<\"u\"?self.location?.href:void 0),Sg=!1||typeof location>\"u\"?void 0:location.origin,Ag=(i,e)=>{try{let o=e??br;return(o?new URL(i,o):new URL(i)).origin===Sg}catch{return!1}},Pg=async i=>{let o=await(await fetch(i,{credentials:\"same-origin\"})).blob();return URL.createObjectURL(o)},zp=(Gp(),sn(Rp)).default,Wp=async()=>{if(!br)throw new Error(\"Failed to load proxy worker: cannot determine the script source URL.\");if(Ag(br))return[void 0,zp()];let i=await Pg(br);return[i,zp(i)]},Eg=(Vp(),sn(Up)).default,Hp=async(i,e,o)=>[void 0,Eg]});var Xi,Ki,ho,qp,Dg,Lg,io,xt,Ke=O(()=>{\"use strict\";Vr();Ki=!1,ho=!1,qp=!1,Dg=()=>{if(typeof SharedArrayBuffer>\"u\")return!1;try{return typeof MessageChannel<\"u\"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},Lg=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},io=async i=>{if(Ki)return Promise.resolve();if(ho)throw new Error(\"multiple calls to 'initializeWebAssembly()' detected.\");if(qp)throw new Error(\"previous call to 'initializeWebAssembly()' failed.\");ho=!0;let e=i.initTimeout,o=i.numThreads;if(!Lg())throw new Error(\"WebAssembly SIMD is not supported in the current environment.\");let t=Dg();o>1&&!t&&(typeof self<\"u\"&&!self.crossOriginIsolated&&console.warn(\"env.wasm.numThreads is set to \"+o+\", but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info.\"),console.warn(\"WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading.\"),i.numThreads=o=1);let r=i.wasmPaths,n=typeof r==\"string\"?r:void 0,s=r?.mjs,a=s?.href??s,u=r?.wasm,l=u?.href??u,f=i.wasmBinary,[p,d]=await Hp(a,n,o>1),y=!1,T=[];if(e>0&&T.push(new Promise(v=>{setTimeout(()=>{y=!0,v()},e)})),T.push(new Promise((v,S)=>{let L={numThreads:o};f?L.wasmBinary=f:(l||n)&&(L.locateFile=(P,A)=>l??(n??A)+P),d(L).then(P=>{ho=!1,Ki=!0,Xi=P,v(),p&&URL.revokeObjectURL(p)},P=>{ho=!1,qp=!0,S(P)})})),await Promise.race(T),y)throw new Error(`WebAssembly backend initializing failed due to timeout: ${e}ms`)},xt=()=>{if(Ki&&Xi)return Xi;throw new Error(\"WebAssembly is not initialized yet.\")}});var Tt,Wr,ht,mo=O(()=>{\"use strict\";Ke();Tt=(i,e)=>{let o=xt(),t=o.lengthBytesUTF8(i)+1,r=o._malloc(t);return o.stringToUTF8(i,r,t),e.push(r),r},Wr=(i,e,o,t)=>{if(typeof i==\"object\"&&i!==null){if(o.has(i))throw new Error(\"Circular reference in options\");o.add(i)}Object.entries(i).forEach(([r,n])=>{let s=e?e+r:r;if(typeof n==\"object\")Wr(n,s+\".\",o,t);else if(typeof n==\"string\"||typeof n==\"number\")t(s,n.toString());else if(typeof n==\"boolean\")t(s,n?\"1\":\"0\");else throw new Error(`Can't handle extra config type: ${typeof n}`)})},ht=i=>{let e=xt(),o=e.stackSave();try{let t=e.stackAlloc(8);e._OrtGetLastError(t,t+4);let r=e.HEAP32[t/4],n=e.HEAPU32[t/4+1],s=n?e.UTF8ToString(n):\"\";throw new Error(`${i} ERROR_CODE: ${r}, ERROR_MESSAGE: ${s}`)}finally{e.stackRestore(o)}}});var jp,Xp=O(()=>{\"use strict\";Ke();mo();jp=i=>{let e=xt(),o=0,t=[],r=i||{};try{if(i?.logSeverityLevel===void 0)r.logSeverityLevel=2;else if(typeof i.logSeverityLevel!=\"number\"||!Number.isInteger(i.logSeverityLevel)||i.logSeverityLevel<0||i.logSeverityLevel>4)throw new Error(`log serverity level is not valid: ${i.logSeverityLevel}`);if(i?.logVerbosityLevel===void 0)r.logVerbosityLevel=0;else if(typeof i.logVerbosityLevel!=\"number\"||!Number.isInteger(i.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${i.logVerbosityLevel}`);i?.terminate===void 0&&(r.terminate=!1);let n=0;return i?.tag!==void 0&&(n=Tt(i.tag,t)),o=e._OrtCreateRunOptions(r.logSeverityLevel,r.logVerbosityLevel,!!r.terminate,n),o===0&&ht(\"Can't create run options.\"),i?.extra!==void 0&&Wr(i.extra,\"\",new WeakSet,(s,a)=>{let u=Tt(s,t),l=Tt(a,t);e._OrtAddRunConfigEntry(o,u,l)!==0&&ht(`Can't set a run config entry: ${s} - ${a}.`)}),[o,t]}catch(n){throw o!==0&&e._OrtReleaseRunOptions(o),t.forEach(s=>e._free(s)),n}}});var $g,kg,Bg,Fg,Kp,Jp=O(()=>{\"use strict\";Ke();mo();$g=i=>{switch(i){case\"disabled\":return 0;case\"basic\":return 1;case\"extended\":return 2;case\"all\":return 99;default:throw new Error(`unsupported graph optimization level: ${i}`)}},kg=i=>{switch(i){case\"sequential\":return 0;case\"parallel\":return 1;default:throw new Error(`unsupported execution mode: ${i}`)}},Bg=i=>{i.extra||(i.extra={}),i.extra.session||(i.extra.session={});let e=i.extra.session;e.use_ort_model_bytes_directly||(e.use_ort_model_bytes_directly=\"1\"),i.executionProviders&&i.executionProviders.some(o=>(typeof o==\"string\"?o:o.name)===\"webgpu\")&&(i.enableMemPattern=!1)},Fg=(i,e,o)=>{for(let t of e){let r=typeof t==\"string\"?t:t.name;switch(r){case\"webnn\":if(r=\"WEBNN\",typeof t!=\"string\"){let a=t?.deviceType;if(a){let u=Tt(\"deviceType\",o),l=Tt(a,o);xt()._OrtAddSessionConfigEntry(i,u,l)!==0&&ht(`Can't set a session config entry: 'deviceType' - ${a}.`)}}break;case\"webgpu\":if(r=\"JS\",typeof t!=\"string\"){let s=t;if(s?.preferredLayout){if(s.preferredLayout!==\"NCHW\"&&s.preferredLayout!==\"NHWC\")throw new Error(`preferredLayout must be either 'NCHW' or 'NHWC': ${s.preferredLayout}`);let a=Tt(\"preferredLayout\",o),u=Tt(s.preferredLayout,o);xt()._OrtAddSessionConfigEntry(i,a,u)!==0&&ht(`Can't set a session config entry: 'preferredLayout' - ${s.preferredLayout}.`)}}break;case\"wasm\":case\"cpu\":continue;default:throw new Error(`not supported execution provider: ${r}`)}let n=Tt(r,o);xt()._OrtAppendExecutionProvider(i,n)!==0&&ht(`Can't append execution provider: ${r}.`)}},Kp=i=>{let e=xt(),o=0,t=[],r=i||{};Bg(r);try{let n=$g(r.graphOptimizationLevel??\"all\"),s=kg(r.executionMode??\"sequential\"),a=typeof r.logId==\"string\"?Tt(r.logId,t):0,u=r.logSeverityLevel??2;if(!Number.isInteger(u)||u<0||u>4)throw new Error(`log serverity level is not valid: ${u}`);let l=r.logVerbosityLevel??0;if(!Number.isInteger(l)||l<0||l>4)throw new Error(`log verbosity level is not valid: ${l}`);let f=typeof r.optimizedModelFilePath==\"string\"?Tt(r.optimizedModelFilePath,t):0;if(o=e._OrtCreateSessionOptions(n,!!r.enableCpuMemArena,!!r.enableMemPattern,s,!!r.enableProfiling,0,a,u,l,f),o===0&&ht(\"Can't create session options.\"),r.executionProviders&&Fg(o,r.executionProviders,t),r.enableGraphCapture!==void 0){if(typeof r.enableGraphCapture!=\"boolean\")throw new Error(`enableGraphCapture must be a boolean value: ${r.enableGraphCapture}`);let p=Tt(\"enableGraphCapture\",t),d=Tt(r.enableGraphCapture.toString(),t);e._OrtAddSessionConfigEntry(o,p,d)!==0&&ht(`Can't set a session config entry: 'enableGraphCapture' - ${r.enableGraphCapture}.`)}if(r.freeDimensionOverrides)for(let[p,d]of Object.entries(r.freeDimensionOverrides)){if(typeof p!=\"string\")throw new Error(`free dimension override name must be a string: ${p}`);if(typeof d!=\"number\"||!Number.isInteger(d)||d<0)throw new Error(`free dimension override value must be a non-negative integer: ${d}`);let y=Tt(p,t);e._OrtAddFreeDimensionOverride(o,y,d)!==0&&ht(`Can't set a free dimension override: ${p} - ${d}.`)}return r.extra!==void 0&&Wr(r.extra,\"\",new WeakSet,(p,d)=>{let y=Tt(p,t),T=Tt(d,t);e._OrtAddSessionConfigEntry(o,y,T)!==0&&ht(`Can't set a session config entry: ${p} - ${d}.`)}),[o,t]}catch(n){throw o!==0&&e._OrtReleaseSessionOptions(o),t.forEach(s=>e._free(s)),n}}});var Hr,Yp,qr,Zp,Qp,bo,go,td,Ji=O(()=>{\"use strict\";Hr=i=>{switch(i){case\"int8\":return 3;case\"uint8\":return 2;case\"bool\":return 9;case\"int16\":return 5;case\"uint16\":return 4;case\"int32\":return 6;case\"uint32\":return 12;case\"float16\":return 10;case\"float32\":return 1;case\"float64\":return 11;case\"string\":return 8;case\"int64\":return 7;case\"uint64\":return 13;case\"int4\":return 22;case\"uint4\":return 21;default:throw new Error(`unsupported data type: ${i}`)}},Yp=i=>{switch(i){case 3:return\"int8\";case 2:return\"uint8\";case 9:return\"bool\";case 5:return\"int16\";case 4:return\"uint16\";case 6:return\"int32\";case 12:return\"uint32\";case 10:return\"float16\";case 1:return\"float32\";case 11:return\"float64\";case 8:return\"string\";case 7:return\"int64\";case 13:return\"uint64\";case 22:return\"int4\";case 21:return\"uint4\";default:throw new Error(`unsupported data type: ${i}`)}},qr=(i,e)=>{let o=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][i],t=typeof e==\"number\"?e:e.reduce((r,n)=>r*n,1);return o>0?Math.ceil(t*o):void 0},Zp=i=>{switch(i){case\"float16\":return typeof Float16Array<\"u\"&&Float16Array.from?Float16Array:Uint16Array;case\"float32\":return Float32Array;case\"uint8\":return Uint8Array;case\"int8\":return Int8Array;case\"uint16\":return Uint16Array;case\"int16\":return Int16Array;case\"int32\":return Int32Array;case\"bool\":return Uint8Array;case\"float64\":return Float64Array;case\"uint32\":return Uint32Array;case\"int64\":return BigInt64Array;case\"uint64\":return BigUint64Array;default:throw new Error(`unsupported type: ${i}`)}},Qp=i=>{switch(i){case\"verbose\":return 0;case\"info\":return 1;case\"warning\":return 2;case\"error\":return 3;case\"fatal\":return 4;default:throw new Error(`unsupported logging level: ${i}`)}},bo=i=>i===\"float32\"||i===\"float16\"||i===\"int32\"||i===\"int64\"||i===\"uint32\"||i===\"uint8\"||i===\"bool\"||i===\"uint4\"||i===\"int4\",go=i=>i===\"float32\"||i===\"float16\"||i===\"int32\"||i===\"int64\"||i===\"uint32\"||i===\"uint64\"||i===\"int8\"||i===\"uint8\"||i===\"bool\",td=i=>{switch(i){case\"none\":return 0;case\"cpu\":return 1;case\"cpu-pinned\":return 2;case\"texture\":return 3;case\"gpu-buffer\":return 4;case\"ml-tensor\":return 5;default:throw new Error(`unsupported data location: ${i}`)}}});var jr,Yi=O(()=>{\"use strict\";oo();jr=async i=>{if(typeof i==\"string\")if(!1)try{let{readFile:e}=Co(\"node:fs/promises\");return new Uint8Array(await e(i))}catch(e){if(e.code===\"ERR_FS_FILE_TOO_LARGE\"){let{createReadStream:o}=Co(\"node:fs\"),t=o(i),r=[];for await(let n of t)r.push(n);return new Uint8Array(Buffer.concat(r))}throw e}else{let e=await fetch(i);if(!e.ok)throw new Error(`failed to load external data file: ${i}`);let o=e.headers.get(\"Content-Length\"),t=o?parseInt(o,10):0;if(t<1073741824)return new Uint8Array(await e.arrayBuffer());{if(!e.body)throw new Error(`failed to load external data file: ${i}, no response body.`);let r=e.body.getReader(),n;try{n=new ArrayBuffer(t)}catch(a){if(a instanceof RangeError){let u=Math.ceil(t/65536);n=new WebAssembly.Memory({initial:u,maximum:u}).buffer}else throw a}let s=0;for(;;){let{done:a,value:u}=await r.read();if(a)break;let l=u.byteLength;new Uint8Array(n,s,l).set(u),s+=l}return new Uint8Array(n,0,t)}}else return i instanceof Blob?new Uint8Array(await i.arrayBuffer()):i instanceof Uint8Array?i:new Uint8Array(i)}});var Cg,ao,so,yr,Ng,zr,uo,lo,ed,fo,co,po,qi=O(()=>{\"use strict\";Xp();Jp();Ji();Ke();mo();Yi();Cg=(i,e)=>{xt()._OrtInit(i,e)!==0&&ht(\"Can't initialize onnxruntime.\")},ao=async i=>{Cg(i.wasm.numThreads,Qp(i.logLevel))},so=async(i,e)=>{},yr=new Map,Ng=i=>{let e=xt(),o=e.stackSave();try{let t=e.stackAlloc(8);return e._OrtGetInputOutputCount(i,t,t+4)!==0&&ht(\"Can't get session input/output count.\"),[e.HEAP32[t/4],e.HEAP32[t/4+1]]}finally{e.stackRestore(o)}},zr=i=>{let e=xt(),o=e._malloc(i.byteLength);if(o===0)throw new Error(`Can't create a session. failed to allocate a buffer of size ${i.byteLength}.`);return e.HEAPU8.set(i,o),[o,i.byteLength]},uo=async(i,e)=>{let o,t,r=xt();Array.isArray(i)?[o,t]=i:i.buffer===r.HEAPU8.buffer?[o,t]=[i.byteOffset,i.byteLength]:[o,t]=zr(i);let n=0,s=0,a=0,u=[],l=[],f=[];try{if([s,u]=Kp(e),e?.externalData&&r.mountExternalData){let P=[];for(let A of e.externalData){let M=typeof A==\"string\"?A:A.path;P.push(jr(typeof A==\"string\"?A:A.data).then(V=>{r.mountExternalData(M,V)}))}await Promise.all(P)}for(let P of e?.executionProviders??[])if((typeof P==\"string\"?P:P.name)===\"webnn\"){if(r.shouldTransferToMLTensor=!1,r.currentContext)throw new Error(\"WebNN execution provider is already set.\");if(typeof P!=\"string\"){let M=P,V=M?.context,lt=M?.gpuDevice,wt=M?.deviceType,et=M?.numThreads,Dt=M?.powerPreference;V?r.currentContext=V:lt?r.currentContext=await navigator.ml.createContext(lt):r.currentContext=await navigator.ml.createContext({deviceType:wt,numThreads:et,powerPreference:Dt})}else r.currentContext=await navigator.ml.createContext();break}n=await r._OrtCreateSession(o,t,s),n===0&&ht(\"Can't create a session.\"),r.currentContext&&(r.jsepRegisterMLContext(n,r.currentContext),r.currentContext=void 0,r.shouldTransferToMLTensor=!0);let[p,d]=Ng(n),y=!!e?.enableGraphCapture,T=[],v=[],S=[];for(let P=0;Pr._OrtFree(d)),f.forEach(d=>r._OrtFree(d)),a!==0&&r._OrtReleaseBinding(a),n!==0&&r._OrtReleaseSession(n),p}finally{r._free(o),s!==0&&r._OrtReleaseSessionOptions(s),u.forEach(p=>r._free(p)),r.unmountExternalData?.()}},lo=i=>{let e=xt(),o=yr.get(i);if(!o)throw new Error(`cannot release session. invalid session id: ${i}`);let[t,r,n,s,a]=o;s&&(a&&e._OrtClearBoundOutputs(s.handle),e._OrtReleaseBinding(s.handle)),e.jsepOnReleaseSession?.(i),r.forEach(u=>e._OrtFree(u)),n.forEach(u=>e._OrtFree(u)),e._OrtReleaseSession(t),yr.delete(i)},ed=(i,e,o,t,r,n=!1)=>{if(!i){e.push(0);return}let s=xt(),a=i[0],u=i[1],l=i[3],f,p;if(a===\"string\"&&(l===\"gpu-buffer\"||l===\"ml-tensor\"))throw new Error(\"String tensor is not supported on GPU.\");if(n&&l!==\"gpu-buffer\")throw new Error(`External buffer must be provided for input/output index ${r} when enableGraphCapture is true.`);if(l===\"gpu-buffer\"){let T=i[2].gpuBuffer;p=qr(Hr(a),u);let v=s.jsepRegisterBuffer;if(!v)throw new Error('Tensor location \"gpu-buffer\" is not supported without using WebGPU.');f=v(t,r,T,p)}else if(l===\"ml-tensor\"){let T=i[2].mlTensor;p=qr(Hr(a),u);let v=s.jsepRegisterMLTensor;if(!v)throw new Error('Tensor location \"ml-tensor\" is not supported without using WebNN.');f=v(T,Hr(a),u)}else{let T=i[2];if(Array.isArray(T)){p=4*T.length,f=s._malloc(p),o.push(f);let v=f/4;for(let S=0;Ss.HEAP32[T++]=S);let v=s._OrtCreateTensor(Hr(a),f,p,y,u.length,td(l));v===0&&ht(`Can't create tensor for input/output. session=${t}, index=${r}.`),e.push(v)}finally{s.stackRestore(d)}},fo=async(i,e,o,t,r,n)=>{let s=xt(),a=yr.get(i);if(!a)throw new Error(`cannot run inference. invalid session id: ${i}`);let u=a[0],l=a[1],f=a[2],p=a[3],d=a[4],y=a[5],T=e.length,v=t.length,S=0,L=[],P=[],A=[],M=[],V=s.stackSave(),lt=s.stackAlloc(T*4),wt=s.stackAlloc(T*4),et=s.stackAlloc(v*4),Dt=s.stackAlloc(v*4);try{s.jsepOnRunStart?.(u),[S,L]=jp(n);for(let Z=0;Zgt*Ot,1);it=Yp(ue);let ve=p?.outputPreferredLocations[t[Z]];if(it===\"string\"){if(ve===\"gpu-buffer\"||ve===\"ml-tensor\")throw new Error(\"String tensor is not supported on GPU.\");let gt=[],Ot=Lt/4;for(let Jt=0;Jt0){let gt=s.jsepGetBuffer;if(!gt)throw new Error('preferredLocation \"gpu-buffer\" is not supported without using WebGPU.');let Ot=gt(Lt),Jt=qr(ue,Mt);if(Jt===void 0||!bo(it))throw new Error(`Unsupported data type: ${it}`);se=!0,be.push([it,le,{gpuBuffer:Ot,download:s.jsepCreateDownloader(Ot,Jt,it),dispose:()=>{s._OrtReleaseTensor(ge)}},\"gpu-buffer\"])}else if(ve===\"ml-tensor\"&&Mt>0){let gt=s.jsepEnsureTensor;if(!gt)throw new Error('preferredLocation \"ml-tensor\" is not supported without using WebNN.');if(qr(ue,Mt)===void 0||!go(it))throw new Error(`Unsupported data type: ${it}`);let Jt=await gt(Lt,ue,le,!1);se=!0,be.push([it,le,{mlTensor:Jt,download:s.jsepCreateMLTensorDownloader(Lt,it),dispose:()=>{s.jsepReleaseTensorId(Lt),s._OrtReleaseTensor(ge)}},\"ml-tensor\"])}else{let gt=Zp(it),Ot=new gt(Mt);new Uint8Array(Ot.buffer,Ot.byteOffset,Ot.byteLength).set(s.HEAPU8.subarray(Lt,Lt+Ot.byteLength)),be.push([it,le,Ot,\"cpu\"])}}finally{s.stackRestore(ie),it===\"string\"&&Lt&&s._free(Lt),se||s._OrtReleaseTensor(ge)}}return p&&!d&&(s._OrtClearBoundOutputs(p.handle),yr.set(i,[u,l,f,p,d,!1])),be}finally{s.stackRestore(V),P.forEach(_t=>s._OrtReleaseTensor(_t)),A.forEach(_t=>s._OrtReleaseTensor(_t)),M.forEach(_t=>s._free(_t)),S!==0&&s._OrtReleaseRunOptions(S),L.forEach(_t=>s._free(_t))}},co=i=>{let e=xt(),o=yr.get(i);if(!o)throw new Error(\"invalid session id\");let t=o[0],r=e._OrtEndProfiling(t);r===0&&ht(\"Can't get an profile file name.\"),e._OrtFree(r)},po=i=>{let e=[];for(let o of i){let t=o[2];!Array.isArray(t)&&\"buffer\"in t&&e.push(t.buffer)}return e}});var Je,Kt,Xr,xo,To,yo,Zi,Qi,xr,Tr,Gg,rd,nd,od,id,ad,sd,ud,ta=O(()=>{\"use strict\";Yt();qi();Ke();Vr();Je=()=>!!z.wasm.proxy&&typeof document<\"u\",Xr=!1,xo=!1,To=!1,Qi=new Map,xr=(i,e)=>{let o=Qi.get(i);o?o.push(e):Qi.set(i,[e])},Tr=()=>{if(Xr||!xo||To||!Kt)throw new Error(\"worker not ready\")},Gg=i=>{switch(i.data.type){case\"init-wasm\":Xr=!1,i.data.err?(To=!0,Zi[1](i.data.err)):(xo=!0,Zi[0]()),yo&&(URL.revokeObjectURL(yo),yo=void 0);break;case\"init-ep\":case\"copy-from\":case\"create\":case\"release\":case\"run\":case\"end-profiling\":{let e=Qi.get(i.data.type);i.data.err?e.shift()[1](i.data.err):e.shift()[0](i.data.out);break}default:}},rd=async()=>{if(!xo){if(Xr)throw new Error(\"multiple calls to 'initWasm()' detected.\");if(To)throw new Error(\"previous call to 'initWasm()' failed.\");if(Xr=!0,Je())return new Promise((i,e)=>{Kt?.terminate(),Wp().then(([o,t])=>{try{Kt=t,Kt.onerror=n=>e(n),Kt.onmessage=Gg,Zi=[i,e];let r={type:\"init-wasm\",in:z};Kt.postMessage(r),yo=o}catch(r){e(r)}},e)});try{await io(z.wasm),await ao(z),xo=!0}catch(i){throw To=!0,i}finally{Xr=!1}}},nd=async i=>{if(Je())return Tr(),new Promise((e,o)=>{xr(\"init-ep\",[e,o]);let t={type:\"init-ep\",in:{epName:i,env:z}};Kt.postMessage(t)});await so(z,i)},od=async i=>Je()?(Tr(),new Promise((e,o)=>{xr(\"copy-from\",[e,o]);let t={type:\"copy-from\",in:{buffer:i}};Kt.postMessage(t,[i.buffer])})):zr(i),id=async(i,e)=>{if(Je()){if(e?.preferredOutputLocation)throw new Error('session option \"preferredOutputLocation\" is not supported for proxy.');return Tr(),new Promise((o,t)=>{xr(\"create\",[o,t]);let r={type:\"create\",in:{model:i,options:{...e}}},n=[];i instanceof Uint8Array&&n.push(i.buffer),Kt.postMessage(r,n)})}else return uo(i,e)},ad=async i=>{if(Je())return Tr(),new Promise((e,o)=>{xr(\"release\",[e,o]);let t={type:\"release\",in:i};Kt.postMessage(t)});lo(i)},sd=async(i,e,o,t,r,n)=>{if(Je()){if(o.some(s=>s[3]!==\"cpu\"))throw new Error(\"input tensor on GPU is not supported for proxy.\");if(r.some(s=>s))throw new Error(\"pre-allocated output tensor is not supported for proxy.\");return Tr(),new Promise((s,a)=>{xr(\"run\",[s,a]);let u=o,l={type:\"run\",in:{sessionId:i,inputIndices:e,inputs:u,outputIndices:t,options:n}};Kt.postMessage(l,po(u))})}else return fo(i,e,o,t,r,n)},ud=async i=>{if(Je())return Tr(),new Promise((e,o)=>{xr(\"end-profiling\",[e,o]);let t={type:\"end-profiling\",in:i};Kt.postMessage(t)});co(i)}});var ld,Mg,wo,fd=O(()=>{\"use strict\";Yt();ta();Ji();oo();Yi();ld=(i,e)=>{switch(i.location){case\"cpu\":return[i.type,i.dims,i.data,\"cpu\"];case\"gpu-buffer\":return[i.type,i.dims,{gpuBuffer:i.gpuBuffer},\"gpu-buffer\"];case\"ml-tensor\":return[i.type,i.dims,{mlTensor:i.mlTensor},\"ml-tensor\"];default:throw new Error(`invalid data location: ${i.location} for ${e()}`)}},Mg=i=>{switch(i[3]){case\"cpu\":return new yt(i[0],i[2],i[1]);case\"gpu-buffer\":{let e=i[0];if(!bo(e))throw new Error(`not supported data type: ${e} for deserializing GPU tensor`);let{gpuBuffer:o,download:t,dispose:r}=i[2];return yt.fromGpuBuffer(o,{dataType:e,dims:i[1],download:t,dispose:r})}case\"ml-tensor\":{let e=i[0];if(!go(e))throw new Error(`not supported data type: ${e} for deserializing MLTensor tensor`);let{mlTensor:o,download:t,dispose:r}=i[2];return yt.fromMLTensor(o,{dataType:e,dims:i[1],download:t,dispose:r})}default:throw new Error(`invalid data location: ${i[3]}`)}},wo=class{async fetchModelAndCopyToWasmMemory(e){return od(await jr(e))}async loadModel(e,o){Fe();let t;typeof e==\"string\"?!1?t=await jr(e):t=await this.fetchModelAndCopyToWasmMemory(e):t=e,[this.sessionId,this.inputNames,this.outputNames]=await id(t,o),Ce()}async dispose(){return ad(this.sessionId)}async run(e,o,t){Fe();let r=[],n=[];Object.entries(e).forEach(d=>{let y=d[0],T=d[1],v=this.inputNames.indexOf(y);if(v===-1)throw new Error(`invalid input '${y}'`);r.push(T),n.push(v)});let s=[],a=[];Object.entries(o).forEach(d=>{let y=d[0],T=d[1],v=this.outputNames.indexOf(y);if(v===-1)throw new Error(`invalid output '${y}'`);s.push(T),a.push(v)});let u=r.map((d,y)=>ld(d,()=>`input \"${this.inputNames[n[y]]}\"`)),l=s.map((d,y)=>d?ld(d,()=>`output \"${this.outputNames[a[y]]}\"`):null),f=await sd(this.sessionId,n,u,a,l,t),p={};for(let d=0;dvo,initializeFlags:()=>cd,wasmBackend:()=>Ug});var cd,vo,Ug,dd=O(()=>{\"use strict\";Yt();ta();fd();Vr();cd=()=>{if((typeof z.wasm.initTimeout!=\"number\"||z.wasm.initTimeout<0)&&(z.wasm.initTimeout=0),z.wasm.simd===!1&&console.warn('Deprecated property \"env.wasm.simd\" is set to false. non-SIMD build is no longer provided, and this setting will be ignored.'),typeof z.wasm.proxy!=\"boolean\"&&(z.wasm.proxy=!1),typeof z.wasm.trace!=\"boolean\"&&(z.wasm.trace=!1),typeof z.wasm.numThreads!=\"number\"||!Number.isInteger(z.wasm.numThreads)||z.wasm.numThreads<=0)if(typeof self<\"u\"&&!self.crossOriginIsolated)z.wasm.numThreads=1;else{let i=typeof navigator>\"u\"?Co(\"node:os\").cpus().length:navigator.hardwareConcurrency;z.wasm.numThreads=Math.min(4,Math.ceil((i||1)/2))}},vo=class{async init(e){cd(),await rd(),await nd(e)}async createInferenceSessionHandler(e,o){let t=new wo;return await t.loadModel(e,o),Promise.resolve(t)}},Ug=new vo});Yt();Yt();Yt();var Ds=\"1.20.0\";var mO=Mo;{let i=(Fp(),sn(Bp)).onnxjsBackend;nr(\"webgl\",i,-10)}{let i=(dd(),sn(pd)).wasmBackend;nr(\"cpu\",i,10),nr(\"wasm\",i,10)}Object.defineProperty(z.versions,\"web\",{value:Ds,enumerable:!0});export{Yd as InferenceSession,Ts as TRACE,Fe as TRACE_FUNC_BEGIN,Ce as TRACE_FUNC_END,yt as Tensor,Qd as TrainingSession,mO as default,z as env,nr as registerBackend};\n/*! Bundled license information:\n\nlong/index.js:\n (**\n * @license\n * Copyright 2009 The Closure Library Authors\n * Copyright 2020 Daniel Wirtz / The long.js Authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *)\n*/\n//# sourceMappingURL=ort.bundle.min.mjs.map\n","// Copyright (c) Meta Platforms, Inc. and affiliates.\n// All rights reserved.\n\n// This source code is licensed under the license found in the\n// LICENSE file in the root directory of this source tree.\n\nimport { Tensor } from \"onnxruntime-web\";\n\nconst modelData = ({ clicks, tensor, modelScale }) => {\n const imageEmbedding = tensor;\n let pointCoords;\n let pointLabels;\n let pointCoordsTensor;\n let pointLabelsTensor;\n\n // Check there are input click prompts\n if (clicks) {\n let n = clicks.length;\n\n // If there is no box input, a single padding point with \n // label -1 and coordinates (0.0, 0.0) should be concatenated\n // so initialize the array to support (n + 1) points.\n pointCoords = new Float32Array(2 * (n + 1));\n pointLabels = new Float32Array(n + 1);\n\n // Add clicks and scale to what SAM expects\n for (let i = 0; i < n; i++) {\n pointCoords[2 * i] = clicks[i].x * modelScale.samScale;\n pointCoords[2 * i + 1] = clicks[i].y * modelScale.samScale;\n pointLabels[i] = clicks[i].clickType;\n }\n\n // Add in the extra point/label when only clicks and no box\n // The extra point is at (0, 0) with label -1\n pointCoords[2 * n] = 0.0;\n pointCoords[2 * n + 1] = 0.0;\n pointLabels[n] = -1.0;\n\n // Create the tensor\n pointCoordsTensor = new Tensor(\"float32\", pointCoords, [1, n + 1, 2]);\n pointLabelsTensor = new Tensor(\"float32\", pointLabels, [1, n + 1]);\n }\n const imageSizeTensor = new Tensor(\"float32\", [\n modelScale.height,\n modelScale.width,\n ]);\n\n if (pointCoordsTensor === undefined || pointLabelsTensor === undefined)\n return;\n\n // There is no previous mask, so default to an empty tensor\n const maskInput = new Tensor(\n \"float32\",\n new Float32Array(256 * 256),\n [1, 1, 256, 256]\n );\n // There is no previous mask, so default to 0\n const hasMaskInput = new Tensor(\"float32\", [0]);\n\n return {\n image_embeddings: imageEmbedding,\n point_coords: pointCoordsTensor,\n point_labels: pointLabelsTensor,\n orig_im_size: imageSizeTensor,\n mask_input: maskInput,\n has_mask_input: hasMaskInput,\n };\n};\n\n\nconst isFirstClick = (clicks) => {\n return (\n (clicks.length === 1 &&\n (clicks[0].clickType === 1.0 ||\n clicks[0].clickType === 2.0)) ||\n (clicks.length === 2 &&\n clicks.every(\n (c) =>\n c.clickType === 3.0 ||\n c.clickType === 4.0\n ))\n );\n};\n\nconst modelData_interactive = ({\n clicks,\n tensor,\n modelScale,\n point_coords,\n point_labels,\n last_pred_mask,\n}) => {\n const lowResTensor = tensor;\n let pointCoords;\n let pointLabels;\n let pointCoordsTensor;\n let pointLabelsTensor;\n // point_coords, point_labels params below are only truthy in text model\n // if (point_coords && point_labels) {\n // pointCoords = new Float32Array(4);\n // pointLabels = new Float32Array(2);\n // pointCoords[0] = point_coords[0][0];\n // pointCoords[1] = point_coords[0][1];\n // pointLabels[0] = point_labels[0]; // UPPER_LEFT\n // pointCoords[2] = point_coords[1][0];\n // pointCoords[3] = point_coords[1][1];\n // pointLabels[1] = point_labels[1]; // BOTTOM_RIGHT\n // pointCoordsTensor = new Tensor(\"float32\", pointCoords, [1, 2, 2]);\n // pointLabelsTensor = new Tensor(\"float32\", pointLabels, [1, 2]);\n // }\n // point click model check\n if (clicks) {\n let n = clicks.length;\n const clicksFromBox = clicks[0].clickType === 2 ? 2 : 0;\n\n // For click only input (no box) need to add an extra\n // negative point and label\n pointCoords = new Float32Array(2 * (n + 1));\n pointLabels = new Float32Array(n + 1);\n\n // Check if there is a box input\n if (clicksFromBox) {\n // For box model need to include the box clicks in the point\n // coordinates and also don't need to include the extra\n // negative point\n pointCoords = new Float32Array(2 * (n + clicksFromBox));\n pointLabels = new Float32Array(n + clicksFromBox);\n const {\n upperLeft,\n bottomRight,\n } = getPointsFromBox(clicks[0]);\n pointCoords = new Float32Array(2 * (n + clicksFromBox));\n pointLabels = new Float32Array(n + clicksFromBox);\n pointCoords[0] = upperLeft.x / modelScale.onnxScale;\n pointCoords[1] = upperLeft.y / modelScale.onnxScale;\n pointLabels[0] = 2.0; // UPPER_LEFT\n pointCoords[2] = bottomRight.x / modelScale.onnxScale;\n pointCoords[3] = bottomRight.y / modelScale.onnxScale;\n pointLabels[1] = 3.0; // BOTTOM_RIGHT\n\n last_pred_mask = null;\n }\n\n // Add regular clicks\n for (let i = 0; i < n; i++) {\n pointCoords[2 * (i + clicksFromBox)] = clicks[i].x / modelScale.onnxScale;\n pointCoords[2 * (i + clicksFromBox) + 1] =\n clicks[i].y / modelScale.onnxScale;\n pointLabels[i + clicksFromBox] = clicks[i].clickType;\n }\n\n // Add in the extra point/label when only clicks and no box\n // The extra point is at (0, 0) with label -1\n if (!clicksFromBox) {\n pointCoords[2 * n] = 0.0;\n pointCoords[2 * n + 1] = 0.0;\n pointLabels[n] = -1.0;\n // update n for creating the tensor\n n = n + 1;\n }\n\n // Create the tensor\n pointCoordsTensor = new Tensor(\"float32\", pointCoords, [\n 1,\n n + clicksFromBox,\n 2,\n ]);\n pointLabelsTensor = new Tensor(\"float32\", pointLabels, [\n 1,\n n + clicksFromBox,\n ]);\n }\n const imageSizeTensor = new Tensor(\"float32\", [\n modelScale.maskHeight,\n modelScale.maskWidth,\n ]);\n if (pointCoordsTensor === undefined || pointLabelsTensor === undefined)\n return;\n\n // if there is a previous tensor, use it, otherwise we default to an empty tensor\n const lastPredMaskTensor =\n last_pred_mask && clicks && !isFirstClick(clicks)\n ? last_pred_mask\n : new Tensor(\"float32\", new Float32Array(256 * 256), [1, 1, 256, 256]);\n\n // +!! is javascript shorthand to convert truthy value to 1, falsey value to 0\n const hasLastPredTensor = new Tensor(\"float32\", [\n +!!(last_pred_mask && clicks && !isFirstClick(clicks)),\n ]);\n\n return {\n low_res_embedding: lowResTensor,\n point_coords: pointCoordsTensor,\n point_labels: pointLabelsTensor,\n image_size: imageSizeTensor,\n last_pred_mask: lastPredMaskTensor,\n has_last_pred: hasLastPredTensor,\n };\n};\n\nexport { modelData, modelData_interactive };\n","import React, { createContext, useState, useEffect, useContext } from 'react';\nimport * as ort from 'onnxruntime-web';\n\nconst ModelContext = createContext();\n\n\n// Define image, embedding, and model paths\nconst IMAGE_PATH = \"/assets/data/dogs.jpg\";\nconst IMAGE_EMBEDDING = \"/assets/data/dogs_embedding.npy\";\nconst MODEL_DIR = \"/assets/data/sam_onnx_example.onnx\";\n\nexport const useModel = () => {\n return useContext(ModelContext);\n};\n\nexport const ModelProvider = ({ children }) => {\n const [model, setModel] = useState(null);\n\n useEffect(() => {\n const initModel = async () => {\n try {\n if (MODEL_DIR === undefined) return;\n const URL = MODEL_DIR;\n //ort.env.wasm.wasmPaths = \"https://cdn.jsdelivr.net/npm/onnxruntime-web@1.14.0/dist/\";\n\n ort.env.wasm.wasmPaths = '/';\n const model = await ort.InferenceSession.create(MODEL_DIR);\n setModel(model);\n } catch (e) {\n console.log(e);\n }\n };\n initModel();\n }, []);\n\n return (\n \n {children}\n \n );\n};\n","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","import fetch from 'cross-fetch';\n\nclass npyjs {\n\n constructor(opts) {\n if (opts) {\n console.error([\n \"No arguments accepted to npyjs constructor.\",\n \"For usage, go to https://github.com/jhuapl-boss/npyjs.\"\n ].join(\" \"));\n }\n\n this.dtypes = {\n \" true\n .replace(/'/g, '\"')\n .replace(\"(\", \"[\")\n .replace(/,*\\),*/g, \"]\")\n );\n const shape = header.shape;\n const dtype = this.dtypes[header.descr];\n const nums = new dtype[\"arrayConstructor\"](\n arrayBufferContents,\n offsetBytes\n );\n return {\n dtype: dtype.name,\n data: nums,\n shape,\n fortranOrder: header.fortran_order\n };\n }\n\n async load(filename, callback, fetchArgs) {\n /*\n Loads an array from a stream of bytes.\n */\n fetchArgs = fetchArgs || {};\n let arrayBuf;\n // If filename is ArrayBuffer\n if (filename instanceof ArrayBuffer) {\n arrayBuf = filename;\n }\n // If filename is a file path\n else {\n const resp = await fetch(filename, { ...fetchArgs });\n arrayBuf = await resp.arrayBuffer();\n }\n const result = this.parse(arrayBuf);\n if (callback) {\n return callback(result);\n }\n return result;\n }\n}\n\nexport default npyjs;\n","// Current version.\nexport var VERSION = '1.13.7';\n\n// Establish the root object, `window` (`self`) in the browser, `global`\n// on the server, or `this` in some virtual machines. We use `self`\n// instead of `window` for `WebWorker` support.\nexport var root = (typeof self == 'object' && self.self === self && self) ||\n (typeof global == 'object' && global.global === global && global) ||\n Function('return this')() ||\n {};\n\n// Save bytes in the minified (but not gzipped) version:\nexport var ArrayProto = Array.prototype, ObjProto = Object.prototype;\nexport var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null;\n\n// Create quick reference variables for speed access to core prototypes.\nexport var push = ArrayProto.push,\n slice = ArrayProto.slice,\n toString = ObjProto.toString,\n hasOwnProperty = ObjProto.hasOwnProperty;\n\n// Modern feature detection.\nexport var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined',\n supportsDataView = typeof DataView !== 'undefined';\n\n// All **ECMAScript 5+** native function implementations that we hope to use\n// are declared here.\nexport var nativeIsArray = Array.isArray,\n nativeKeys = Object.keys,\n nativeCreate = Object.create,\n nativeIsView = supportsArrayBuffer && ArrayBuffer.isView;\n\n// Create references to these builtin functions because we override them.\nexport var _isNaN = isNaN,\n _isFinite = isFinite;\n\n// Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.\nexport var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');\nexport var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',\n 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];\n\n// The largest integer that can be represented exactly.\nexport var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;\n","// Some functions take a variable number of arguments, or a few expected\n// arguments at the beginning and then a variable number of values to operate\n// on. This helper accumulates all remaining arguments past the function’s\n// argument length (or an explicit `startIndex`), into an array that becomes\n// the last argument. Similar to ES6’s \"rest parameter\".\nexport default function restArguments(func, startIndex) {\n startIndex = startIndex == null ? func.length - 1 : +startIndex;\n return function() {\n var length = Math.max(arguments.length - startIndex, 0),\n rest = Array(length),\n index = 0;\n for (; index < length; index++) {\n rest[index] = arguments[index + startIndex];\n }\n switch (startIndex) {\n case 0: return func.call(this, rest);\n case 1: return func.call(this, arguments[0], rest);\n case 2: return func.call(this, arguments[0], arguments[1], rest);\n }\n var args = Array(startIndex + 1);\n for (index = 0; index < startIndex; index++) {\n args[index] = arguments[index];\n }\n args[startIndex] = rest;\n return func.apply(this, args);\n };\n}\n","// Is a given variable an object?\nexport default function isObject(obj) {\n var type = typeof obj;\n return type === 'function' || (type === 'object' && !!obj);\n}\n","// Is a given value equal to null?\nexport default function isNull(obj) {\n return obj === null;\n}\n","// Is a given variable undefined?\nexport default function isUndefined(obj) {\n return obj === void 0;\n}\n","import { toString } from './_setup.js';\n\n// Is a given value a boolean?\nexport default function isBoolean(obj) {\n return obj === true || obj === false || toString.call(obj) === '[object Boolean]';\n}\n","// Is a given value a DOM element?\nexport default function isElement(obj) {\n return !!(obj && obj.nodeType === 1);\n}\n","import { toString } from './_setup.js';\n\n// Internal function for creating a `toString`-based type tester.\nexport default function tagTester(name) {\n var tag = '[object ' + name + ']';\n return function(obj) {\n return toString.call(obj) === tag;\n };\n}\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('String');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Number');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Date');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('RegExp');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Error');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Symbol');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('ArrayBuffer');\n","import tagTester from './_tagTester.js';\nimport { root } from './_setup.js';\n\nvar isFunction = tagTester('Function');\n\n// Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old\n// v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236).\nvar nodelist = root.document && root.document.childNodes;\nif (typeof /./ != 'function' && typeof Int8Array != 'object' && typeof nodelist != 'function') {\n isFunction = function(obj) {\n return typeof obj == 'function' || false;\n };\n}\n\nexport default isFunction;\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Object');\n","import { supportsDataView } from './_setup.js';\nimport hasObjectTag from './_hasObjectTag.js';\n\n// In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.\n// In IE 11, the most common among them, this problem also applies to\n// `Map`, `WeakMap` and `Set`.\n// Also, there are cases where an application can override the native\n// `DataView` object, in cases like that we can't use the constructor\n// safely and should just rely on alternate `DataView` checks\nexport var hasDataViewBug = (\n supportsDataView && (!/\\[native code\\]/.test(String(DataView)) || hasObjectTag(new DataView(new ArrayBuffer(8))))\n ),\n isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map));\n","import tagTester from './_tagTester.js';\nimport isFunction from './isFunction.js';\nimport isArrayBuffer from './isArrayBuffer.js';\nimport { hasDataViewBug } from './_stringTagBug.js';\n\nvar isDataView = tagTester('DataView');\n\n// In IE 10 - Edge 13, we need a different heuristic\n// to determine whether an object is a `DataView`.\n// Also, in cases where the native `DataView` is\n// overridden we can't rely on the tag itself.\nfunction alternateIsDataView(obj) {\n return obj != null && isFunction(obj.getInt8) && isArrayBuffer(obj.buffer);\n}\n\nexport default (hasDataViewBug ? alternateIsDataView : isDataView);\n","import { nativeIsArray } from './_setup.js';\nimport tagTester from './_tagTester.js';\n\n// Is a given value an array?\n// Delegates to ECMA5's native `Array.isArray`.\nexport default nativeIsArray || tagTester('Array');\n","import { hasOwnProperty } from './_setup.js';\n\n// Internal function to check whether `key` is an own property name of `obj`.\nexport default function has(obj, key) {\n return obj != null && hasOwnProperty.call(obj, key);\n}\n","import tagTester from './_tagTester.js';\nimport has from './_has.js';\n\nvar isArguments = tagTester('Arguments');\n\n// Define a fallback version of the method in browsers (ahem, IE < 9), where\n// there isn't any inspectable \"Arguments\" type.\n(function() {\n if (!isArguments(arguments)) {\n isArguments = function(obj) {\n return has(obj, 'callee');\n };\n }\n}());\n\nexport default isArguments;\n","import { _isFinite } from './_setup.js';\nimport isSymbol from './isSymbol.js';\n\n// Is a given object a finite number?\nexport default function isFinite(obj) {\n return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj));\n}\n","import { _isNaN } from './_setup.js';\nimport isNumber from './isNumber.js';\n\n// Is the given value `NaN`?\nexport default function isNaN(obj) {\n return isNumber(obj) && _isNaN(obj);\n}\n","// Predicate-generating function. Often useful outside of Underscore.\nexport default function constant(value) {\n return function() {\n return value;\n };\n}\n","import { MAX_ARRAY_INDEX } from './_setup.js';\n\n// Common internal logic for `isArrayLike` and `isBufferLike`.\nexport default function createSizePropertyCheck(getSizeProperty) {\n return function(collection) {\n var sizeProperty = getSizeProperty(collection);\n return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;\n }\n}\n","// Internal helper to generate a function to obtain property `key` from `obj`.\nexport default function shallowProperty(key) {\n return function(obj) {\n return obj == null ? void 0 : obj[key];\n };\n}\n","import shallowProperty from './_shallowProperty.js';\n\n// Internal helper to obtain the `byteLength` property of an object.\nexport default shallowProperty('byteLength');\n","import createSizePropertyCheck from './_createSizePropertyCheck.js';\nimport getByteLength from './_getByteLength.js';\n\n// Internal helper to determine whether we should spend extensive checks against\n// `ArrayBuffer` et al.\nexport default createSizePropertyCheck(getByteLength);\n","import { supportsArrayBuffer, nativeIsView, toString } from './_setup.js';\nimport isDataView from './isDataView.js';\nimport constant from './constant.js';\nimport isBufferLike from './_isBufferLike.js';\n\n// Is a given value a typed array?\nvar typedArrayPattern = /\\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\\]/;\nfunction isTypedArray(obj) {\n // `ArrayBuffer.isView` is the most future-proof, so use it when available.\n // Otherwise, fall back on the above regular expression.\n return nativeIsView ? (nativeIsView(obj) && !isDataView(obj)) :\n isBufferLike(obj) && typedArrayPattern.test(toString.call(obj));\n}\n\nexport default supportsArrayBuffer ? isTypedArray : constant(false);\n","import shallowProperty from './_shallowProperty.js';\n\n// Internal helper to obtain the `length` property of an object.\nexport default shallowProperty('length');\n","import { nonEnumerableProps, ObjProto } from './_setup.js';\nimport isFunction from './isFunction.js';\nimport has from './_has.js';\n\n// Internal helper to create a simple lookup structure.\n// `collectNonEnumProps` used to depend on `_.contains`, but this led to\n// circular imports. `emulatedSet` is a one-off solution that only works for\n// arrays of strings.\nfunction emulatedSet(keys) {\n var hash = {};\n for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true;\n return {\n contains: function(key) { return hash[key] === true; },\n push: function(key) {\n hash[key] = true;\n return keys.push(key);\n }\n };\n}\n\n// Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't\n// be iterated by `for key in ...` and thus missed. Extends `keys` in place if\n// needed.\nexport default function collectNonEnumProps(obj, keys) {\n keys = emulatedSet(keys);\n var nonEnumIdx = nonEnumerableProps.length;\n var constructor = obj.constructor;\n var proto = (isFunction(constructor) && constructor.prototype) || ObjProto;\n\n // Constructor is a special case.\n var prop = 'constructor';\n if (has(obj, prop) && !keys.contains(prop)) keys.push(prop);\n\n while (nonEnumIdx--) {\n prop = nonEnumerableProps[nonEnumIdx];\n if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) {\n keys.push(prop);\n }\n }\n}\n","import isObject from './isObject.js';\nimport { nativeKeys, hasEnumBug } from './_setup.js';\nimport has from './_has.js';\nimport collectNonEnumProps from './_collectNonEnumProps.js';\n\n// Retrieve the names of an object's own properties.\n// Delegates to **ECMAScript 5**'s native `Object.keys`.\nexport default function keys(obj) {\n if (!isObject(obj)) return [];\n if (nativeKeys) return nativeKeys(obj);\n var keys = [];\n for (var key in obj) if (has(obj, key)) keys.push(key);\n // Ahem, IE < 9.\n if (hasEnumBug) collectNonEnumProps(obj, keys);\n return keys;\n}\n","import getLength from './_getLength.js';\nimport isArray from './isArray.js';\nimport isString from './isString.js';\nimport isArguments from './isArguments.js';\nimport keys from './keys.js';\n\n// Is a given array, string, or object empty?\n// An \"empty\" object has no enumerable own-properties.\nexport default function isEmpty(obj) {\n if (obj == null) return true;\n // Skip the more expensive `toString`-based type checks if `obj` has no\n // `.length`.\n var length = getLength(obj);\n if (typeof length == 'number' && (\n isArray(obj) || isString(obj) || isArguments(obj)\n )) return length === 0;\n return getLength(keys(obj)) === 0;\n}\n","import keys from './keys.js';\n\n// Returns whether an object has a given set of `key:value` pairs.\nexport default function isMatch(object, attrs) {\n var _keys = keys(attrs), length = _keys.length;\n if (object == null) return !length;\n var obj = Object(object);\n for (var i = 0; i < length; i++) {\n var key = _keys[i];\n if (attrs[key] !== obj[key] || !(key in obj)) return false;\n }\n return true;\n}\n","import { VERSION } from './_setup.js';\n\n// If Underscore is called as a function, it returns a wrapped object that can\n// be used OO-style. This wrapper holds altered versions of all functions added\n// through `_.mixin`. Wrapped objects may be chained.\nexport default function _(obj) {\n if (obj instanceof _) return obj;\n if (!(this instanceof _)) return new _(obj);\n this._wrapped = obj;\n}\n\n_.VERSION = VERSION;\n\n// Extracts the result from a wrapped and chained object.\n_.prototype.value = function() {\n return this._wrapped;\n};\n\n// Provide unwrapping proxies for some methods used in engine operations\n// such as arithmetic and JSON stringification.\n_.prototype.valueOf = _.prototype.toJSON = _.prototype.value;\n\n_.prototype.toString = function() {\n return String(this._wrapped);\n};\n","import getByteLength from './_getByteLength.js';\n\n// Internal function to wrap or shallow-copy an ArrayBuffer,\n// typed array or DataView to a new view, reusing the buffer.\nexport default function toBufferView(bufferSource) {\n return new Uint8Array(\n bufferSource.buffer || bufferSource,\n bufferSource.byteOffset || 0,\n getByteLength(bufferSource)\n );\n}\n","import _ from './underscore.js';\nimport { toString, SymbolProto } from './_setup.js';\nimport getByteLength from './_getByteLength.js';\nimport isTypedArray from './isTypedArray.js';\nimport isFunction from './isFunction.js';\nimport { hasDataViewBug } from './_stringTagBug.js';\nimport isDataView from './isDataView.js';\nimport keys from './keys.js';\nimport has from './_has.js';\nimport toBufferView from './_toBufferView.js';\n\n// We use this string twice, so give it a name for minification.\nvar tagDataView = '[object DataView]';\n\n// Internal recursive comparison function for `_.isEqual`.\nfunction eq(a, b, aStack, bStack) {\n // Identical objects are equal. `0 === -0`, but they aren't identical.\n // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).\n if (a === b) return a !== 0 || 1 / a === 1 / b;\n // `null` or `undefined` only equal to itself (strict comparison).\n if (a == null || b == null) return false;\n // `NaN`s are equivalent, but non-reflexive.\n if (a !== a) return b !== b;\n // Exhaust primitive checks\n var type = typeof a;\n if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;\n return deepEq(a, b, aStack, bStack);\n}\n\n// Internal recursive comparison function for `_.isEqual`.\nfunction deepEq(a, b, aStack, bStack) {\n // Unwrap any wrapped objects.\n if (a instanceof _) a = a._wrapped;\n if (b instanceof _) b = b._wrapped;\n // Compare `[[Class]]` names.\n var className = toString.call(a);\n if (className !== toString.call(b)) return false;\n // Work around a bug in IE 10 - Edge 13.\n if (hasDataViewBug && className == '[object Object]' && isDataView(a)) {\n if (!isDataView(b)) return false;\n className = tagDataView;\n }\n switch (className) {\n // These types are compared by value.\n case '[object RegExp]':\n // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')\n case '[object String]':\n // Primitives and their corresponding object wrappers are equivalent; thus, `\"5\"` is\n // equivalent to `new String(\"5\")`.\n return '' + a === '' + b;\n case '[object Number]':\n // `NaN`s are equivalent, but non-reflexive.\n // Object(NaN) is equivalent to NaN.\n if (+a !== +a) return +b !== +b;\n // An `egal` comparison is performed for other numeric values.\n return +a === 0 ? 1 / +a === 1 / b : +a === +b;\n case '[object Date]':\n case '[object Boolean]':\n // Coerce dates and booleans to numeric primitive values. Dates are compared by their\n // millisecond representations. Note that invalid dates with millisecond representations\n // of `NaN` are not equivalent.\n return +a === +b;\n case '[object Symbol]':\n return SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b);\n case '[object ArrayBuffer]':\n case tagDataView:\n // Coerce to typed array so we can fall through.\n return deepEq(toBufferView(a), toBufferView(b), aStack, bStack);\n }\n\n var areArrays = className === '[object Array]';\n if (!areArrays && isTypedArray(a)) {\n var byteLength = getByteLength(a);\n if (byteLength !== getByteLength(b)) return false;\n if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) return true;\n areArrays = true;\n }\n if (!areArrays) {\n if (typeof a != 'object' || typeof b != 'object') return false;\n\n // Objects with different constructors are not equivalent, but `Object`s or `Array`s\n // from different frames are.\n var aCtor = a.constructor, bCtor = b.constructor;\n if (aCtor !== bCtor && !(isFunction(aCtor) && aCtor instanceof aCtor &&\n isFunction(bCtor) && bCtor instanceof bCtor)\n && ('constructor' in a && 'constructor' in b)) {\n return false;\n }\n }\n // Assume equality for cyclic structures. The algorithm for detecting cyclic\n // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.\n\n // Initializing stack of traversed objects.\n // It's done here since we only need them for objects and arrays comparison.\n aStack = aStack || [];\n bStack = bStack || [];\n var length = aStack.length;\n while (length--) {\n // Linear search. Performance is inversely proportional to the number of\n // unique nested structures.\n if (aStack[length] === a) return bStack[length] === b;\n }\n\n // Add the first object to the stack of traversed objects.\n aStack.push(a);\n bStack.push(b);\n\n // Recursively compare objects and arrays.\n if (areArrays) {\n // Compare array lengths to determine if a deep comparison is necessary.\n length = a.length;\n if (length !== b.length) return false;\n // Deep compare the contents, ignoring non-numeric properties.\n while (length--) {\n if (!eq(a[length], b[length], aStack, bStack)) return false;\n }\n } else {\n // Deep compare objects.\n var _keys = keys(a), key;\n length = _keys.length;\n // Ensure that both objects contain the same number of properties before comparing deep equality.\n if (keys(b).length !== length) return false;\n while (length--) {\n // Deep compare each member\n key = _keys[length];\n if (!(has(b, key) && eq(a[key], b[key], aStack, bStack))) return false;\n }\n }\n // Remove the first object from the stack of traversed objects.\n aStack.pop();\n bStack.pop();\n return true;\n}\n\n// Perform a deep comparison to check if two objects are equal.\nexport default function isEqual(a, b) {\n return eq(a, b);\n}\n","import isObject from './isObject.js';\nimport { hasEnumBug } from './_setup.js';\nimport collectNonEnumProps from './_collectNonEnumProps.js';\n\n// Retrieve all the enumerable property names of an object.\nexport default function allKeys(obj) {\n if (!isObject(obj)) return [];\n var keys = [];\n for (var key in obj) keys.push(key);\n // Ahem, IE < 9.\n if (hasEnumBug) collectNonEnumProps(obj, keys);\n return keys;\n}\n","import getLength from './_getLength.js';\nimport isFunction from './isFunction.js';\nimport allKeys from './allKeys.js';\n\n// Since the regular `Object.prototype.toString` type tests don't work for\n// some types in IE 11, we use a fingerprinting heuristic instead, based\n// on the methods. It's not great, but it's the best we got.\n// The fingerprint method lists are defined below.\nexport function ie11fingerprint(methods) {\n var length = getLength(methods);\n return function(obj) {\n if (obj == null) return false;\n // `Map`, `WeakMap` and `Set` have no enumerable keys.\n var keys = allKeys(obj);\n if (getLength(keys)) return false;\n for (var i = 0; i < length; i++) {\n if (!isFunction(obj[methods[i]])) return false;\n }\n // If we are testing against `WeakMap`, we need to ensure that\n // `obj` doesn't have a `forEach` method in order to distinguish\n // it from a regular `Map`.\n return methods !== weakMapMethods || !isFunction(obj[forEachName]);\n };\n}\n\n// In the interest of compact minification, we write\n// each string in the fingerprints only once.\nvar forEachName = 'forEach',\n hasName = 'has',\n commonInit = ['clear', 'delete'],\n mapTail = ['get', hasName, 'set'];\n\n// `Map`, `WeakMap` and `Set` each have slightly different\n// combinations of the above sublists.\nexport var mapMethods = commonInit.concat(forEachName, mapTail),\n weakMapMethods = commonInit.concat(mapTail),\n setMethods = ['add'].concat(commonInit, forEachName, hasName);\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, mapMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map');\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, weakMapMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap');\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, setMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(setMethods) : tagTester('Set');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('WeakSet');\n","import keys from './keys.js';\n\n// Retrieve the values of an object's properties.\nexport default function values(obj) {\n var _keys = keys(obj);\n var length = _keys.length;\n var values = Array(length);\n for (var i = 0; i < length; i++) {\n values[i] = obj[_keys[i]];\n }\n return values;\n}\n","import keys from './keys.js';\n\n// Convert an object into a list of `[key, value]` pairs.\n// The opposite of `_.object` with one argument.\nexport default function pairs(obj) {\n var _keys = keys(obj);\n var length = _keys.length;\n var pairs = Array(length);\n for (var i = 0; i < length; i++) {\n pairs[i] = [_keys[i], obj[_keys[i]]];\n }\n return pairs;\n}\n","import keys from './keys.js';\n\n// Invert the keys and values of an object. The values must be serializable.\nexport default function invert(obj) {\n var result = {};\n var _keys = keys(obj);\n for (var i = 0, length = _keys.length; i < length; i++) {\n result[obj[_keys[i]]] = _keys[i];\n }\n return result;\n}\n","import isFunction from './isFunction.js';\n\n// Return a sorted list of the function names available on the object.\nexport default function functions(obj) {\n var names = [];\n for (var key in obj) {\n if (isFunction(obj[key])) names.push(key);\n }\n return names.sort();\n}\n","// An internal function for creating assigner functions.\nexport default function createAssigner(keysFunc, defaults) {\n return function(obj) {\n var length = arguments.length;\n if (defaults) obj = Object(obj);\n if (length < 2 || obj == null) return obj;\n for (var index = 1; index < length; index++) {\n var source = arguments[index],\n keys = keysFunc(source),\n l = keys.length;\n for (var i = 0; i < l; i++) {\n var key = keys[i];\n if (!defaults || obj[key] === void 0) obj[key] = source[key];\n }\n }\n return obj;\n };\n}\n","import createAssigner from './_createAssigner.js';\nimport allKeys from './allKeys.js';\n\n// Extend a given object with all the properties in passed-in object(s).\nexport default createAssigner(allKeys);\n","import createAssigner from './_createAssigner.js';\nimport keys from './keys.js';\n\n// Assigns a given object with all the own properties in the passed-in\n// object(s).\n// (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)\nexport default createAssigner(keys);\n","import createAssigner from './_createAssigner.js';\nimport allKeys from './allKeys.js';\n\n// Fill in a given object with default properties.\nexport default createAssigner(allKeys, true);\n","import isObject from './isObject.js';\nimport { nativeCreate } from './_setup.js';\n\n// Create a naked function reference for surrogate-prototype-swapping.\nfunction ctor() {\n return function(){};\n}\n\n// An internal function for creating a new object that inherits from another.\nexport default function baseCreate(prototype) {\n if (!isObject(prototype)) return {};\n if (nativeCreate) return nativeCreate(prototype);\n var Ctor = ctor();\n Ctor.prototype = prototype;\n var result = new Ctor;\n Ctor.prototype = null;\n return result;\n}\n","import baseCreate from './_baseCreate.js';\nimport extendOwn from './extendOwn.js';\n\n// Creates an object that inherits from the given prototype object.\n// If additional properties are provided then they will be added to the\n// created object.\nexport default function create(prototype, props) {\n var result = baseCreate(prototype);\n if (props) extendOwn(result, props);\n return result;\n}\n","import isObject from './isObject.js';\nimport isArray from './isArray.js';\nimport extend from './extend.js';\n\n// Create a (shallow-cloned) duplicate of an object.\nexport default function clone(obj) {\n if (!isObject(obj)) return obj;\n return isArray(obj) ? obj.slice() : extend({}, obj);\n}\n","// Invokes `interceptor` with the `obj` and then returns `obj`.\n// The primary purpose of this method is to \"tap into\" a method chain, in\n// order to perform operations on intermediate results within the chain.\nexport default function tap(obj, interceptor) {\n interceptor(obj);\n return obj;\n}\n","import _ from './underscore.js';\nimport isArray from './isArray.js';\n\n// Normalize a (deep) property `path` to array.\n// Like `_.iteratee`, this function can be customized.\nexport default function toPath(path) {\n return isArray(path) ? path : [path];\n}\n_.toPath = toPath;\n","import _ from './underscore.js';\nimport './toPath.js';\n\n// Internal wrapper for `_.toPath` to enable minification.\n// Similar to `cb` for `_.iteratee`.\nexport default function toPath(path) {\n return _.toPath(path);\n}\n","// Internal function to obtain a nested property in `obj` along `path`.\nexport default function deepGet(obj, path) {\n var length = path.length;\n for (var i = 0; i < length; i++) {\n if (obj == null) return void 0;\n obj = obj[path[i]];\n }\n return length ? obj : void 0;\n}\n","import toPath from './_toPath.js';\nimport deepGet from './_deepGet.js';\nimport isUndefined from './isUndefined.js';\n\n// Get the value of the (deep) property on `path` from `object`.\n// If any property in `path` does not exist or if the value is\n// `undefined`, return `defaultValue` instead.\n// The `path` is normalized through `_.toPath`.\nexport default function get(object, path, defaultValue) {\n var value = deepGet(object, toPath(path));\n return isUndefined(value) ? defaultValue : value;\n}\n","import _has from './_has.js';\nimport toPath from './_toPath.js';\n\n// Shortcut function for checking if an object has a given property directly on\n// itself (in other words, not on a prototype). Unlike the internal `has`\n// function, this public version can also traverse nested properties.\nexport default function has(obj, path) {\n path = toPath(path);\n var length = path.length;\n for (var i = 0; i < length; i++) {\n var key = path[i];\n if (!_has(obj, key)) return false;\n obj = obj[key];\n }\n return !!length;\n}\n","// Keep the identity function around for default iteratees.\nexport default function identity(value) {\n return value;\n}\n","import extendOwn from './extendOwn.js';\nimport isMatch from './isMatch.js';\n\n// Returns a predicate for checking whether an object has a given set of\n// `key:value` pairs.\nexport default function matcher(attrs) {\n attrs = extendOwn({}, attrs);\n return function(obj) {\n return isMatch(obj, attrs);\n };\n}\n","import deepGet from './_deepGet.js';\nimport toPath from './_toPath.js';\n\n// Creates a function that, when passed an object, will traverse that object’s\n// properties down the given `path`, specified as an array of keys or indices.\nexport default function property(path) {\n path = toPath(path);\n return function(obj) {\n return deepGet(obj, path);\n };\n}\n","// Internal function that returns an efficient (for current engines) version\n// of the passed-in callback, to be repeatedly applied in other Underscore\n// functions.\nexport default function optimizeCb(func, context, argCount) {\n if (context === void 0) return func;\n switch (argCount == null ? 3 : argCount) {\n case 1: return function(value) {\n return func.call(context, value);\n };\n // The 2-argument case is omitted because we’re not using it.\n case 3: return function(value, index, collection) {\n return func.call(context, value, index, collection);\n };\n case 4: return function(accumulator, value, index, collection) {\n return func.call(context, accumulator, value, index, collection);\n };\n }\n return function() {\n return func.apply(context, arguments);\n };\n}\n","import identity from './identity.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isArray from './isArray.js';\nimport matcher from './matcher.js';\nimport property from './property.js';\nimport optimizeCb from './_optimizeCb.js';\n\n// An internal function to generate callbacks that can be applied to each\n// element in a collection, returning the desired result — either `_.identity`,\n// an arbitrary callback, a property matcher, or a property accessor.\nexport default function baseIteratee(value, context, argCount) {\n if (value == null) return identity;\n if (isFunction(value)) return optimizeCb(value, context, argCount);\n if (isObject(value) && !isArray(value)) return matcher(value);\n return property(value);\n}\n","import _ from './underscore.js';\nimport baseIteratee from './_baseIteratee.js';\n\n// External wrapper for our callback generator. Users may customize\n// `_.iteratee` if they want additional predicate/iteratee shorthand styles.\n// This abstraction hides the internal-only `argCount` argument.\nexport default function iteratee(value, context) {\n return baseIteratee(value, context, Infinity);\n}\n_.iteratee = iteratee;\n","import _ from './underscore.js';\nimport baseIteratee from './_baseIteratee.js';\nimport iteratee from './iteratee.js';\n\n// The function we call internally to generate a callback. It invokes\n// `_.iteratee` if overridden, otherwise `baseIteratee`.\nexport default function cb(value, context, argCount) {\n if (_.iteratee !== iteratee) return _.iteratee(value, context);\n return baseIteratee(value, context, argCount);\n}\n","import cb from './_cb.js';\nimport keys from './keys.js';\n\n// Returns the results of applying the `iteratee` to each element of `obj`.\n// In contrast to `_.map` it returns an object.\nexport default function mapObject(obj, iteratee, context) {\n iteratee = cb(iteratee, context);\n var _keys = keys(obj),\n length = _keys.length,\n results = {};\n for (var index = 0; index < length; index++) {\n var currentKey = _keys[index];\n results[currentKey] = iteratee(obj[currentKey], currentKey, obj);\n }\n return results;\n}\n","// Predicate-generating function. Often useful outside of Underscore.\nexport default function noop(){}\n","import noop from './noop.js';\nimport get from './get.js';\n\n// Generates a function for a given object that returns a given property.\nexport default function propertyOf(obj) {\n if (obj == null) return noop;\n return function(path) {\n return get(obj, path);\n };\n}\n","import optimizeCb from './_optimizeCb.js';\n\n// Run a function **n** times.\nexport default function times(n, iteratee, context) {\n var accum = Array(Math.max(0, n));\n iteratee = optimizeCb(iteratee, context, 1);\n for (var i = 0; i < n; i++) accum[i] = iteratee(i);\n return accum;\n}\n","// Return a random integer between `min` and `max` (inclusive).\nexport default function random(min, max) {\n if (max == null) {\n max = min;\n min = 0;\n }\n return min + Math.floor(Math.random() * (max - min + 1));\n}\n","// A (possibly faster) way to get the current timestamp as an integer.\nexport default Date.now || function() {\n return new Date().getTime();\n};\n","import keys from './keys.js';\n\n// Internal helper to generate functions for escaping and unescaping strings\n// to/from HTML interpolation.\nexport default function createEscaper(map) {\n var escaper = function(match) {\n return map[match];\n };\n // Regexes for identifying a key that needs to be escaped.\n var source = '(?:' + keys(map).join('|') + ')';\n var testRegexp = RegExp(source);\n var replaceRegexp = RegExp(source, 'g');\n return function(string) {\n string = string == null ? '' : '' + string;\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\n };\n}\n","// Internal list of HTML entities for escaping.\nexport default {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '`': '`'\n};\n","import createEscaper from './_createEscaper.js';\nimport escapeMap from './_escapeMap.js';\n\n// Function for escaping strings to HTML interpolation.\nexport default createEscaper(escapeMap);\n","import invert from './invert.js';\nimport escapeMap from './_escapeMap.js';\n\n// Internal list of HTML entities for unescaping.\nexport default invert(escapeMap);\n","import createEscaper from './_createEscaper.js';\nimport unescapeMap from './_unescapeMap.js';\n\n// Function for unescaping strings from HTML interpolation.\nexport default createEscaper(unescapeMap);\n","import _ from './underscore.js';\n\n// By default, Underscore uses ERB-style template delimiters. Change the\n// following template settings to use alternative delimiters.\nexport default _.templateSettings = {\n evaluate: /<%([\\s\\S]+?)%>/g,\n interpolate: /<%=([\\s\\S]+?)%>/g,\n escape: /<%-([\\s\\S]+?)%>/g\n};\n","import defaults from './defaults.js';\nimport _ from './underscore.js';\nimport './templateSettings.js';\n\n// When customizing `_.templateSettings`, if you don't want to define an\n// interpolation, evaluation or escaping regex, we need one that is\n// guaranteed not to match.\nvar noMatch = /(.)^/;\n\n// Certain characters need to be escaped so that they can be put into a\n// string literal.\nvar escapes = {\n \"'\": \"'\",\n '\\\\': '\\\\',\n '\\r': 'r',\n '\\n': 'n',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n};\n\nvar escapeRegExp = /\\\\|'|\\r|\\n|\\u2028|\\u2029/g;\n\nfunction escapeChar(match) {\n return '\\\\' + escapes[match];\n}\n\n// In order to prevent third-party code injection through\n// `_.templateSettings.variable`, we test it against the following regular\n// expression. It is intentionally a bit more liberal than just matching valid\n// identifiers, but still prevents possible loopholes through defaults or\n// destructuring assignment.\nvar bareIdentifier = /^\\s*(\\w|\\$)+\\s*$/;\n\n// JavaScript micro-templating, similar to John Resig's implementation.\n// Underscore templating handles arbitrary delimiters, preserves whitespace,\n// and correctly escapes quotes within interpolated code.\n// NB: `oldSettings` only exists for backwards compatibility.\nexport default function template(text, settings, oldSettings) {\n if (!settings && oldSettings) settings = oldSettings;\n settings = defaults({}, settings, _.templateSettings);\n\n // Combine delimiters into one regular expression via alternation.\n var matcher = RegExp([\n (settings.escape || noMatch).source,\n (settings.interpolate || noMatch).source,\n (settings.evaluate || noMatch).source\n ].join('|') + '|$', 'g');\n\n // Compile the template source, escaping string literals appropriately.\n var index = 0;\n var source = \"__p+='\";\n text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {\n source += text.slice(index, offset).replace(escapeRegExp, escapeChar);\n index = offset + match.length;\n\n if (escape) {\n source += \"'+\\n((__t=(\" + escape + \"))==null?'':_.escape(__t))+\\n'\";\n } else if (interpolate) {\n source += \"'+\\n((__t=(\" + interpolate + \"))==null?'':__t)+\\n'\";\n } else if (evaluate) {\n source += \"';\\n\" + evaluate + \"\\n__p+='\";\n }\n\n // Adobe VMs need the match returned to produce the correct offset.\n return match;\n });\n source += \"';\\n\";\n\n var argument = settings.variable;\n if (argument) {\n // Insure against third-party code injection. (CVE-2021-23358)\n if (!bareIdentifier.test(argument)) throw new Error(\n 'variable is not a bare identifier: ' + argument\n );\n } else {\n // If a variable is not specified, place data values in local scope.\n source = 'with(obj||{}){\\n' + source + '}\\n';\n argument = 'obj';\n }\n\n source = \"var __t,__p='',__j=Array.prototype.join,\" +\n \"print=function(){__p+=__j.call(arguments,'');};\\n\" +\n source + 'return __p;\\n';\n\n var render;\n try {\n render = new Function(argument, '_', source);\n } catch (e) {\n e.source = source;\n throw e;\n }\n\n var template = function(data) {\n return render.call(this, data, _);\n };\n\n // Provide the compiled source as a convenience for precompilation.\n template.source = 'function(' + argument + '){\\n' + source + '}';\n\n return template;\n}\n","import isFunction from './isFunction.js';\nimport toPath from './_toPath.js';\n\n// Traverses the children of `obj` along `path`. If a child is a function, it\n// is invoked with its parent as context. Returns the value of the final\n// child, or `fallback` if any child is undefined.\nexport default function result(obj, path, fallback) {\n path = toPath(path);\n var length = path.length;\n if (!length) {\n return isFunction(fallback) ? fallback.call(obj) : fallback;\n }\n for (var i = 0; i < length; i++) {\n var prop = obj == null ? void 0 : obj[path[i]];\n if (prop === void 0) {\n prop = fallback;\n i = length; // Ensure we don't continue iterating.\n }\n obj = isFunction(prop) ? prop.call(obj) : prop;\n }\n return obj;\n}\n","// Generate a unique integer id (unique within the entire client session).\n// Useful for temporary DOM ids.\nvar idCounter = 0;\nexport default function uniqueId(prefix) {\n var id = ++idCounter + '';\n return prefix ? prefix + id : id;\n}\n","import _ from './underscore.js';\n\n// Start chaining a wrapped Underscore object.\nexport default function chain(obj) {\n var instance = _(obj);\n instance._chain = true;\n return instance;\n}\n","import baseCreate from './_baseCreate.js';\nimport isObject from './isObject.js';\n\n// Internal function to execute `sourceFunc` bound to `context` with optional\n// `args`. Determines whether to execute a function as a constructor or as a\n// normal function.\nexport default function executeBound(sourceFunc, boundFunc, context, callingContext, args) {\n if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);\n var self = baseCreate(sourceFunc.prototype);\n var result = sourceFunc.apply(self, args);\n if (isObject(result)) return result;\n return self;\n}\n","import restArguments from './restArguments.js';\nimport executeBound from './_executeBound.js';\nimport _ from './underscore.js';\n\n// Partially apply a function by creating a version that has had some of its\n// arguments pre-filled, without changing its dynamic `this` context. `_` acts\n// as a placeholder by default, allowing any combination of arguments to be\n// pre-filled. Set `_.partial.placeholder` for a custom placeholder argument.\nvar partial = restArguments(function(func, boundArgs) {\n var placeholder = partial.placeholder;\n var bound = function() {\n var position = 0, length = boundArgs.length;\n var args = Array(length);\n for (var i = 0; i < length; i++) {\n args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i];\n }\n while (position < arguments.length) args.push(arguments[position++]);\n return executeBound(func, bound, this, this, args);\n };\n return bound;\n});\n\npartial.placeholder = _;\nexport default partial;\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport executeBound from './_executeBound.js';\n\n// Create a function bound to a given object (assigning `this`, and arguments,\n// optionally).\nexport default restArguments(function(func, context, args) {\n if (!isFunction(func)) throw new TypeError('Bind must be called on a function');\n var bound = restArguments(function(callArgs) {\n return executeBound(func, bound, context, this, args.concat(callArgs));\n });\n return bound;\n});\n","import createSizePropertyCheck from './_createSizePropertyCheck.js';\nimport getLength from './_getLength.js';\n\n// Internal helper for collection methods to determine whether a collection\n// should be iterated as an array or as an object.\n// Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength\n// Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094\nexport default createSizePropertyCheck(getLength);\n","import getLength from './_getLength.js';\nimport isArrayLike from './_isArrayLike.js';\nimport isArray from './isArray.js';\nimport isArguments from './isArguments.js';\n\n// Internal implementation of a recursive `flatten` function.\nexport default function flatten(input, depth, strict, output) {\n output = output || [];\n if (!depth && depth !== 0) {\n depth = Infinity;\n } else if (depth <= 0) {\n return output.concat(input);\n }\n var idx = output.length;\n for (var i = 0, length = getLength(input); i < length; i++) {\n var value = input[i];\n if (isArrayLike(value) && (isArray(value) || isArguments(value))) {\n // Flatten current level of array or arguments object.\n if (depth > 1) {\n flatten(value, depth - 1, strict, output);\n idx = output.length;\n } else {\n var j = 0, len = value.length;\n while (j < len) output[idx++] = value[j++];\n }\n } else if (!strict) {\n output[idx++] = value;\n }\n }\n return output;\n}\n","import restArguments from './restArguments.js';\nimport flatten from './_flatten.js';\nimport bind from './bind.js';\n\n// Bind a number of an object's methods to that object. Remaining arguments\n// are the method names to be bound. Useful for ensuring that all callbacks\n// defined on an object belong to it.\nexport default restArguments(function(obj, keys) {\n keys = flatten(keys, false, false);\n var index = keys.length;\n if (index < 1) throw new Error('bindAll must be passed function names');\n while (index--) {\n var key = keys[index];\n obj[key] = bind(obj[key], obj);\n }\n return obj;\n});\n","import has from './_has.js';\n\n// Memoize an expensive function by storing its results.\nexport default function memoize(func, hasher) {\n var memoize = function(key) {\n var cache = memoize.cache;\n var address = '' + (hasher ? hasher.apply(this, arguments) : key);\n if (!has(cache, address)) cache[address] = func.apply(this, arguments);\n return cache[address];\n };\n memoize.cache = {};\n return memoize;\n}\n","import restArguments from './restArguments.js';\n\n// Delays a function for the given number of milliseconds, and then calls\n// it with the arguments supplied.\nexport default restArguments(function(func, wait, args) {\n return setTimeout(function() {\n return func.apply(null, args);\n }, wait);\n});\n","import partial from './partial.js';\nimport delay from './delay.js';\nimport _ from './underscore.js';\n\n// Defers a function, scheduling it to run after the current call stack has\n// cleared.\nexport default partial(delay, _, 1);\n","import now from './now.js';\n\n// Returns a function, that, when invoked, will only be triggered at most once\n// during a given window of time. Normally, the throttled function will run\n// as much as it can, without ever going more than once per `wait` duration;\n// but if you'd like to disable the execution on the leading edge, pass\n// `{leading: false}`. To disable execution on the trailing edge, ditto.\nexport default function throttle(func, wait, options) {\n var timeout, context, args, result;\n var previous = 0;\n if (!options) options = {};\n\n var later = function() {\n previous = options.leading === false ? 0 : now();\n timeout = null;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n };\n\n var throttled = function() {\n var _now = now();\n if (!previous && options.leading === false) previous = _now;\n var remaining = wait - (_now - previous);\n context = this;\n args = arguments;\n if (remaining <= 0 || remaining > wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n previous = _now;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n } else if (!timeout && options.trailing !== false) {\n timeout = setTimeout(later, remaining);\n }\n return result;\n };\n\n throttled.cancel = function() {\n clearTimeout(timeout);\n previous = 0;\n timeout = context = args = null;\n };\n\n return throttled;\n}\n","import restArguments from './restArguments.js';\nimport now from './now.js';\n\n// When a sequence of calls of the returned function ends, the argument\n// function is triggered. The end of a sequence is defined by the `wait`\n// parameter. If `immediate` is passed, the argument function will be\n// triggered at the beginning of the sequence instead of at the end.\nexport default function debounce(func, wait, immediate) {\n var timeout, previous, args, result, context;\n\n var later = function() {\n var passed = now() - previous;\n if (wait > passed) {\n timeout = setTimeout(later, wait - passed);\n } else {\n timeout = null;\n if (!immediate) result = func.apply(context, args);\n // This check is needed because `func` can recursively invoke `debounced`.\n if (!timeout) args = context = null;\n }\n };\n\n var debounced = restArguments(function(_args) {\n context = this;\n args = _args;\n previous = now();\n if (!timeout) {\n timeout = setTimeout(later, wait);\n if (immediate) result = func.apply(context, args);\n }\n return result;\n });\n\n debounced.cancel = function() {\n clearTimeout(timeout);\n timeout = args = context = null;\n };\n\n return debounced;\n}\n","import partial from './partial.js';\n\n// Returns the first function passed as an argument to the second,\n// allowing you to adjust arguments, run code before and after, and\n// conditionally execute the original function.\nexport default function wrap(func, wrapper) {\n return partial(wrapper, func);\n}\n","// Returns a negated version of the passed-in predicate.\nexport default function negate(predicate) {\n return function() {\n return !predicate.apply(this, arguments);\n };\n}\n","// Returns a function that is the composition of a list of functions, each\n// consuming the return value of the function that follows.\nexport default function compose() {\n var args = arguments;\n var start = args.length - 1;\n return function() {\n var i = start;\n var result = args[start].apply(this, arguments);\n while (i--) result = args[i].call(this, result);\n return result;\n };\n}\n","// Returns a function that will only be executed on and after the Nth call.\nexport default function after(times, func) {\n return function() {\n if (--times < 1) {\n return func.apply(this, arguments);\n }\n };\n}\n","// Returns a function that will only be executed up to (but not including) the\n// Nth call.\nexport default function before(times, func) {\n var memo;\n return function() {\n if (--times > 0) {\n memo = func.apply(this, arguments);\n }\n if (times <= 1) func = null;\n return memo;\n };\n}\n","import partial from './partial.js';\nimport before from './before.js';\n\n// Returns a function that will be executed at most one time, no matter how\n// often you call it. Useful for lazy initialization.\nexport default partial(before, 2);\n","import cb from './_cb.js';\nimport keys from './keys.js';\n\n// Returns the first key on an object that passes a truth test.\nexport default function findKey(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = keys(obj), key;\n for (var i = 0, length = _keys.length; i < length; i++) {\n key = _keys[i];\n if (predicate(obj[key], key, obj)) return key;\n }\n}\n","import cb from './_cb.js';\nimport getLength from './_getLength.js';\n\n// Internal function to generate `_.findIndex` and `_.findLastIndex`.\nexport default function createPredicateIndexFinder(dir) {\n return function(array, predicate, context) {\n predicate = cb(predicate, context);\n var length = getLength(array);\n var index = dir > 0 ? 0 : length - 1;\n for (; index >= 0 && index < length; index += dir) {\n if (predicate(array[index], index, array)) return index;\n }\n return -1;\n };\n}\n","import createPredicateIndexFinder from './_createPredicateIndexFinder.js';\n\n// Returns the first index on an array-like that passes a truth test.\nexport default createPredicateIndexFinder(1);\n","import createPredicateIndexFinder from './_createPredicateIndexFinder.js';\n\n// Returns the last index on an array-like that passes a truth test.\nexport default createPredicateIndexFinder(-1);\n","import cb from './_cb.js';\nimport getLength from './_getLength.js';\n\n// Use a comparator function to figure out the smallest index at which\n// an object should be inserted so as to maintain order. Uses binary search.\nexport default function sortedIndex(array, obj, iteratee, context) {\n iteratee = cb(iteratee, context, 1);\n var value = iteratee(obj);\n var low = 0, high = getLength(array);\n while (low < high) {\n var mid = Math.floor((low + high) / 2);\n if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;\n }\n return low;\n}\n","import getLength from './_getLength.js';\nimport { slice } from './_setup.js';\nimport isNaN from './isNaN.js';\n\n// Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions.\nexport default function createIndexFinder(dir, predicateFind, sortedIndex) {\n return function(array, item, idx) {\n var i = 0, length = getLength(array);\n if (typeof idx == 'number') {\n if (dir > 0) {\n i = idx >= 0 ? idx : Math.max(idx + length, i);\n } else {\n length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;\n }\n } else if (sortedIndex && idx && length) {\n idx = sortedIndex(array, item);\n return array[idx] === item ? idx : -1;\n }\n if (item !== item) {\n idx = predicateFind(slice.call(array, i, length), isNaN);\n return idx >= 0 ? idx + i : -1;\n }\n for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {\n if (array[idx] === item) return idx;\n }\n return -1;\n };\n}\n","import sortedIndex from './sortedIndex.js';\nimport findIndex from './findIndex.js';\nimport createIndexFinder from './_createIndexFinder.js';\n\n// Return the position of the first occurrence of an item in an array,\n// or -1 if the item is not included in the array.\n// If the array is large and already in sort order, pass `true`\n// for **isSorted** to use binary search.\nexport default createIndexFinder(1, findIndex, sortedIndex);\n","import findLastIndex from './findLastIndex.js';\nimport createIndexFinder from './_createIndexFinder.js';\n\n// Return the position of the last occurrence of an item in an array,\n// or -1 if the item is not included in the array.\nexport default createIndexFinder(-1, findLastIndex);\n","import isArrayLike from './_isArrayLike.js';\nimport findIndex from './findIndex.js';\nimport findKey from './findKey.js';\n\n// Return the first value which passes a truth test.\nexport default function find(obj, predicate, context) {\n var keyFinder = isArrayLike(obj) ? findIndex : findKey;\n var key = keyFinder(obj, predicate, context);\n if (key !== void 0 && key !== -1) return obj[key];\n}\n","import find from './find.js';\nimport matcher from './matcher.js';\n\n// Convenience version of a common use case of `_.find`: getting the first\n// object containing specific `key:value` pairs.\nexport default function findWhere(obj, attrs) {\n return find(obj, matcher(attrs));\n}\n","import optimizeCb from './_optimizeCb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// The cornerstone for collection functions, an `each`\n// implementation, aka `forEach`.\n// Handles raw objects in addition to array-likes. Treats all\n// sparse array-likes as if they were dense.\nexport default function each(obj, iteratee, context) {\n iteratee = optimizeCb(iteratee, context);\n var i, length;\n if (isArrayLike(obj)) {\n for (i = 0, length = obj.length; i < length; i++) {\n iteratee(obj[i], i, obj);\n }\n } else {\n var _keys = keys(obj);\n for (i = 0, length = _keys.length; i < length; i++) {\n iteratee(obj[_keys[i]], _keys[i], obj);\n }\n }\n return obj;\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Return the results of applying the iteratee to each element.\nexport default function map(obj, iteratee, context) {\n iteratee = cb(iteratee, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length,\n results = Array(length);\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n results[index] = iteratee(obj[currentKey], currentKey, obj);\n }\n return results;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\nimport optimizeCb from './_optimizeCb.js';\n\n// Internal helper to create a reducing function, iterating left or right.\nexport default function createReduce(dir) {\n // Wrap code that reassigns argument variables in a separate function than\n // the one that accesses `arguments.length` to avoid a perf hit. (#1991)\n var reducer = function(obj, iteratee, memo, initial) {\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length,\n index = dir > 0 ? 0 : length - 1;\n if (!initial) {\n memo = obj[_keys ? _keys[index] : index];\n index += dir;\n }\n for (; index >= 0 && index < length; index += dir) {\n var currentKey = _keys ? _keys[index] : index;\n memo = iteratee(memo, obj[currentKey], currentKey, obj);\n }\n return memo;\n };\n\n return function(obj, iteratee, memo, context) {\n var initial = arguments.length >= 3;\n return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial);\n };\n}\n","import createReduce from './_createReduce.js';\n\n// **Reduce** builds up a single result from a list of values, aka `inject`,\n// or `foldl`.\nexport default createReduce(1);\n","import createReduce from './_createReduce.js';\n\n// The right-associative version of reduce, also known as `foldr`.\nexport default createReduce(-1);\n","import cb from './_cb.js';\nimport each from './each.js';\n\n// Return all the elements that pass a truth test.\nexport default function filter(obj, predicate, context) {\n var results = [];\n predicate = cb(predicate, context);\n each(obj, function(value, index, list) {\n if (predicate(value, index, list)) results.push(value);\n });\n return results;\n}\n","import filter from './filter.js';\nimport negate from './negate.js';\nimport cb from './_cb.js';\n\n// Return all the elements for which a truth test fails.\nexport default function reject(obj, predicate, context) {\n return filter(obj, negate(cb(predicate)), context);\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Determine whether all of the elements pass a truth test.\nexport default function every(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length;\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n if (!predicate(obj[currentKey], currentKey, obj)) return false;\n }\n return true;\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Determine if at least one element in the object passes a truth test.\nexport default function some(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length;\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n if (predicate(obj[currentKey], currentKey, obj)) return true;\n }\n return false;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport indexOf from './indexOf.js';\n\n// Determine if the array or object contains a given item (using `===`).\nexport default function contains(obj, item, fromIndex, guard) {\n if (!isArrayLike(obj)) obj = values(obj);\n if (typeof fromIndex != 'number' || guard) fromIndex = 0;\n return indexOf(obj, item, fromIndex) >= 0;\n}\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport map from './map.js';\nimport deepGet from './_deepGet.js';\nimport toPath from './_toPath.js';\n\n// Invoke a method (with arguments) on every item in a collection.\nexport default restArguments(function(obj, path, args) {\n var contextPath, func;\n if (isFunction(path)) {\n func = path;\n } else {\n path = toPath(path);\n contextPath = path.slice(0, -1);\n path = path[path.length - 1];\n }\n return map(obj, function(context) {\n var method = func;\n if (!method) {\n if (contextPath && contextPath.length) {\n context = deepGet(context, contextPath);\n }\n if (context == null) return void 0;\n method = context[path];\n }\n return method == null ? method : method.apply(context, args);\n });\n});\n","import map from './map.js';\nimport property from './property.js';\n\n// Convenience version of a common use case of `_.map`: fetching a property.\nexport default function pluck(obj, key) {\n return map(obj, property(key));\n}\n","import filter from './filter.js';\nimport matcher from './matcher.js';\n\n// Convenience version of a common use case of `_.filter`: selecting only\n// objects containing specific `key:value` pairs.\nexport default function where(obj, attrs) {\n return filter(obj, matcher(attrs));\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport cb from './_cb.js';\nimport each from './each.js';\n\n// Return the maximum element (or element-based computation).\nexport default function max(obj, iteratee, context) {\n var result = -Infinity, lastComputed = -Infinity,\n value, computed;\n if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {\n obj = isArrayLike(obj) ? obj : values(obj);\n for (var i = 0, length = obj.length; i < length; i++) {\n value = obj[i];\n if (value != null && value > result) {\n result = value;\n }\n }\n } else {\n iteratee = cb(iteratee, context);\n each(obj, function(v, index, list) {\n computed = iteratee(v, index, list);\n if (computed > lastComputed || (computed === -Infinity && result === -Infinity)) {\n result = v;\n lastComputed = computed;\n }\n });\n }\n return result;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport cb from './_cb.js';\nimport each from './each.js';\n\n// Return the minimum element (or element-based computation).\nexport default function min(obj, iteratee, context) {\n var result = Infinity, lastComputed = Infinity,\n value, computed;\n if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {\n obj = isArrayLike(obj) ? obj : values(obj);\n for (var i = 0, length = obj.length; i < length; i++) {\n value = obj[i];\n if (value != null && value < result) {\n result = value;\n }\n }\n } else {\n iteratee = cb(iteratee, context);\n each(obj, function(v, index, list) {\n computed = iteratee(v, index, list);\n if (computed < lastComputed || (computed === Infinity && result === Infinity)) {\n result = v;\n lastComputed = computed;\n }\n });\n }\n return result;\n}\n","import isArray from './isArray.js';\nimport { slice } from './_setup.js';\nimport isString from './isString.js';\nimport isArrayLike from './_isArrayLike.js';\nimport map from './map.js';\nimport identity from './identity.js';\nimport values from './values.js';\n\n// Safely create a real, live array from anything iterable.\nvar reStrSymbol = /[^\\ud800-\\udfff]|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff]/g;\nexport default function toArray(obj) {\n if (!obj) return [];\n if (isArray(obj)) return slice.call(obj);\n if (isString(obj)) {\n // Keep surrogate pair characters together.\n return obj.match(reStrSymbol);\n }\n if (isArrayLike(obj)) return map(obj, identity);\n return values(obj);\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport getLength from './_getLength.js';\nimport random from './random.js';\nimport toArray from './toArray.js';\n\n// Sample **n** random values from a collection using the modern version of the\n// [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle).\n// If **n** is not specified, returns a single random element.\n// The internal `guard` argument allows it to work with `_.map`.\nexport default function sample(obj, n, guard) {\n if (n == null || guard) {\n if (!isArrayLike(obj)) obj = values(obj);\n return obj[random(obj.length - 1)];\n }\n var sample = toArray(obj);\n var length = getLength(sample);\n n = Math.max(Math.min(n, length), 0);\n var last = length - 1;\n for (var index = 0; index < n; index++) {\n var rand = random(index, last);\n var temp = sample[index];\n sample[index] = sample[rand];\n sample[rand] = temp;\n }\n return sample.slice(0, n);\n}\n","import sample from './sample.js';\n\n// Shuffle a collection.\nexport default function shuffle(obj) {\n return sample(obj, Infinity);\n}\n","import cb from './_cb.js';\nimport pluck from './pluck.js';\nimport map from './map.js';\n\n// Sort the object's values by a criterion produced by an iteratee.\nexport default function sortBy(obj, iteratee, context) {\n var index = 0;\n iteratee = cb(iteratee, context);\n return pluck(map(obj, function(value, key, list) {\n return {\n value: value,\n index: index++,\n criteria: iteratee(value, key, list)\n };\n }).sort(function(left, right) {\n var a = left.criteria;\n var b = right.criteria;\n if (a !== b) {\n if (a > b || a === void 0) return 1;\n if (a < b || b === void 0) return -1;\n }\n return left.index - right.index;\n }), 'value');\n}\n","import cb from './_cb.js';\nimport each from './each.js';\n\n// An internal function used for aggregate \"group by\" operations.\nexport default function group(behavior, partition) {\n return function(obj, iteratee, context) {\n var result = partition ? [[], []] : {};\n iteratee = cb(iteratee, context);\n each(obj, function(value, index) {\n var key = iteratee(value, index, obj);\n behavior(result, value, key);\n });\n return result;\n };\n}\n","import group from './_group.js';\nimport has from './_has.js';\n\n// Groups the object's values by a criterion. Pass either a string attribute\n// to group by, or a function that returns the criterion.\nexport default group(function(result, value, key) {\n if (has(result, key)) result[key].push(value); else result[key] = [value];\n});\n","import group from './_group.js';\n\n// Indexes the object's values by a criterion, similar to `_.groupBy`, but for\n// when you know that your index values will be unique.\nexport default group(function(result, value, key) {\n result[key] = value;\n});\n","import group from './_group.js';\nimport has from './_has.js';\n\n// Counts instances of an object that group by a certain criterion. Pass\n// either a string attribute to count by, or a function that returns the\n// criterion.\nexport default group(function(result, value, key) {\n if (has(result, key)) result[key]++; else result[key] = 1;\n});\n","import group from './_group.js';\n\n// Split a collection into two arrays: one whose elements all pass the given\n// truth test, and one whose elements all do not pass the truth test.\nexport default group(function(result, value, pass) {\n result[pass ? 0 : 1].push(value);\n}, true);\n","import isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Return the number of elements in a collection.\nexport default function size(obj) {\n if (obj == null) return 0;\n return isArrayLike(obj) ? obj.length : keys(obj).length;\n}\n","// Internal `_.pick` helper function to determine whether `key` is an enumerable\n// property name of `obj`.\nexport default function keyInObj(value, key, obj) {\n return key in obj;\n}\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport optimizeCb from './_optimizeCb.js';\nimport allKeys from './allKeys.js';\nimport keyInObj from './_keyInObj.js';\nimport flatten from './_flatten.js';\n\n// Return a copy of the object only containing the allowed properties.\nexport default restArguments(function(obj, keys) {\n var result = {}, iteratee = keys[0];\n if (obj == null) return result;\n if (isFunction(iteratee)) {\n if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]);\n keys = allKeys(obj);\n } else {\n iteratee = keyInObj;\n keys = flatten(keys, false, false);\n obj = Object(obj);\n }\n for (var i = 0, length = keys.length; i < length; i++) {\n var key = keys[i];\n var value = obj[key];\n if (iteratee(value, key, obj)) result[key] = value;\n }\n return result;\n});\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport negate from './negate.js';\nimport map from './map.js';\nimport flatten from './_flatten.js';\nimport contains from './contains.js';\nimport pick from './pick.js';\n\n// Return a copy of the object without the disallowed properties.\nexport default restArguments(function(obj, keys) {\n var iteratee = keys[0], context;\n if (isFunction(iteratee)) {\n iteratee = negate(iteratee);\n if (keys.length > 1) context = keys[1];\n } else {\n keys = map(flatten(keys, false, false), String);\n iteratee = function(value, key) {\n return !contains(keys, key);\n };\n }\n return pick(obj, iteratee, context);\n});\n","import { slice } from './_setup.js';\n\n// Returns everything but the last entry of the array. Especially useful on\n// the arguments object. Passing **n** will return all the values in\n// the array, excluding the last N.\nexport default function initial(array, n, guard) {\n return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));\n}\n","import initial from './initial.js';\n\n// Get the first element of an array. Passing **n** will return the first N\n// values in the array. The **guard** check allows it to work with `_.map`.\nexport default function first(array, n, guard) {\n if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\n if (n == null || guard) return array[0];\n return initial(array, array.length - n);\n}\n","import { slice } from './_setup.js';\n\n// Returns everything but the first entry of the `array`. Especially useful on\n// the `arguments` object. Passing an **n** will return the rest N values in the\n// `array`.\nexport default function rest(array, n, guard) {\n return slice.call(array, n == null || guard ? 1 : n);\n}\n","import rest from './rest.js';\n\n// Get the last element of an array. Passing **n** will return the last N\n// values in the array.\nexport default function last(array, n, guard) {\n if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\n if (n == null || guard) return array[array.length - 1];\n return rest(array, Math.max(0, array.length - n));\n}\n","import filter from './filter.js';\n\n// Trim out all falsy values from an array.\nexport default function compact(array) {\n return filter(array, Boolean);\n}\n","import _flatten from './_flatten.js';\n\n// Flatten out an array, either recursively (by default), or up to `depth`.\n// Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively.\nexport default function flatten(array, depth) {\n return _flatten(array, depth, false);\n}\n","import restArguments from './restArguments.js';\nimport flatten from './_flatten.js';\nimport filter from './filter.js';\nimport contains from './contains.js';\n\n// Take the difference between one array and a number of other arrays.\n// Only the elements present in just the first array will remain.\nexport default restArguments(function(array, rest) {\n rest = flatten(rest, true, true);\n return filter(array, function(value){\n return !contains(rest, value);\n });\n});\n","import restArguments from './restArguments.js';\nimport difference from './difference.js';\n\n// Return a version of the array that does not contain the specified value(s).\nexport default restArguments(function(array, otherArrays) {\n return difference(array, otherArrays);\n});\n","import isBoolean from './isBoolean.js';\nimport cb from './_cb.js';\nimport getLength from './_getLength.js';\nimport contains from './contains.js';\n\n// Produce a duplicate-free version of the array. If the array has already\n// been sorted, you have the option of using a faster algorithm.\n// The faster algorithm will not work with an iteratee if the iteratee\n// is not a one-to-one function, so providing an iteratee will disable\n// the faster algorithm.\nexport default function uniq(array, isSorted, iteratee, context) {\n if (!isBoolean(isSorted)) {\n context = iteratee;\n iteratee = isSorted;\n isSorted = false;\n }\n if (iteratee != null) iteratee = cb(iteratee, context);\n var result = [];\n var seen = [];\n for (var i = 0, length = getLength(array); i < length; i++) {\n var value = array[i],\n computed = iteratee ? iteratee(value, i, array) : value;\n if (isSorted && !iteratee) {\n if (!i || seen !== computed) result.push(value);\n seen = computed;\n } else if (iteratee) {\n if (!contains(seen, computed)) {\n seen.push(computed);\n result.push(value);\n }\n } else if (!contains(result, value)) {\n result.push(value);\n }\n }\n return result;\n}\n","import restArguments from './restArguments.js';\nimport uniq from './uniq.js';\nimport flatten from './_flatten.js';\n\n// Produce an array that contains the union: each distinct element from all of\n// the passed-in arrays.\nexport default restArguments(function(arrays) {\n return uniq(flatten(arrays, true, true));\n});\n","import getLength from './_getLength.js';\nimport contains from './contains.js';\n\n// Produce an array that contains every item shared between all the\n// passed-in arrays.\nexport default function intersection(array) {\n var result = [];\n var argsLength = arguments.length;\n for (var i = 0, length = getLength(array); i < length; i++) {\n var item = array[i];\n if (contains(result, item)) continue;\n var j;\n for (j = 1; j < argsLength; j++) {\n if (!contains(arguments[j], item)) break;\n }\n if (j === argsLength) result.push(item);\n }\n return result;\n}\n","import max from './max.js';\nimport getLength from './_getLength.js';\nimport pluck from './pluck.js';\n\n// Complement of zip. Unzip accepts an array of arrays and groups\n// each array's elements on shared indices.\nexport default function unzip(array) {\n var length = (array && max(array, getLength).length) || 0;\n var result = Array(length);\n\n for (var index = 0; index < length; index++) {\n result[index] = pluck(array, index);\n }\n return result;\n}\n","import restArguments from './restArguments.js';\nimport unzip from './unzip.js';\n\n// Zip together multiple lists into a single array -- elements that share\n// an index go together.\nexport default restArguments(unzip);\n","import getLength from './_getLength.js';\n\n// Converts lists into objects. Pass either a single array of `[key, value]`\n// pairs, or two parallel arrays of the same length -- one of keys, and one of\n// the corresponding values. Passing by pairs is the reverse of `_.pairs`.\nexport default function object(list, values) {\n var result = {};\n for (var i = 0, length = getLength(list); i < length; i++) {\n if (values) {\n result[list[i]] = values[i];\n } else {\n result[list[i][0]] = list[i][1];\n }\n }\n return result;\n}\n","// Generate an integer Array containing an arithmetic progression. A port of\n// the native Python `range()` function. See\n// [the Python documentation](https://docs.python.org/library/functions.html#range).\nexport default function range(start, stop, step) {\n if (stop == null) {\n stop = start || 0;\n start = 0;\n }\n if (!step) {\n step = stop < start ? -1 : 1;\n }\n\n var length = Math.max(Math.ceil((stop - start) / step), 0);\n var range = Array(length);\n\n for (var idx = 0; idx < length; idx++, start += step) {\n range[idx] = start;\n }\n\n return range;\n}\n","import { slice } from './_setup.js';\n\n// Chunk a single array into multiple arrays, each containing `count` or fewer\n// items.\nexport default function chunk(array, count) {\n if (count == null || count < 1) return [];\n var result = [];\n var i = 0, length = array.length;\n while (i < length) {\n result.push(slice.call(array, i, i += count));\n }\n return result;\n}\n","import _ from './underscore.js';\n\n// Helper function to continue chaining intermediate results.\nexport default function chainResult(instance, obj) {\n return instance._chain ? _(obj).chain() : obj;\n}\n","import _ from './underscore.js';\nimport each from './each.js';\nimport functions from './functions.js';\nimport { push } from './_setup.js';\nimport chainResult from './_chainResult.js';\n\n// Add your own custom functions to the Underscore object.\nexport default function mixin(obj) {\n each(functions(obj), function(name) {\n var func = _[name] = obj[name];\n _.prototype[name] = function() {\n var args = [this._wrapped];\n push.apply(args, arguments);\n return chainResult(this, func.apply(_, args));\n };\n });\n return _;\n}\n","import _ from './underscore.js';\nimport each from './each.js';\nimport { ArrayProto } from './_setup.js';\nimport chainResult from './_chainResult.js';\n\n// Add all mutator `Array` functions to the wrapper.\neach(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {\n var method = ArrayProto[name];\n _.prototype[name] = function() {\n var obj = this._wrapped;\n if (obj != null) {\n method.apply(obj, arguments);\n if ((name === 'shift' || name === 'splice') && obj.length === 0) {\n delete obj[0];\n }\n }\n return chainResult(this, obj);\n };\n});\n\n// Add all accessor `Array` functions to the wrapper.\neach(['concat', 'join', 'slice'], function(name) {\n var method = ArrayProto[name];\n _.prototype[name] = function() {\n var obj = this._wrapped;\n if (obj != null) obj = method.apply(obj, arguments);\n return chainResult(this, obj);\n };\n});\n\nexport default _;\n","// Default Export\n// ==============\n// In this module, we mix our bundled exports into the `_` object and export\n// the result. This is analogous to setting `module.exports = _` in CommonJS.\n// Hence, this module is also the entry point of our UMD bundle and the package\n// entry point for CommonJS and AMD users. In other words, this is (the source\n// of) the module you are interfacing with when you do any of the following:\n//\n// ```js\n// // CommonJS\n// var _ = require('underscore');\n//\n// // AMD\n// define(['underscore'], function(_) {...});\n//\n// // UMD in the browser\n// // _ is available as a global variable\n// ```\nimport * as allExports from './index.js';\nimport { mixin } from './index.js';\n\n// Add all of the Underscore functions to the wrapper object.\nvar _ = mixin(allExports);\n// Legacy Node.js API.\n_._ = _;\n// Export the Underscore API.\nexport default _;\n","(function(a,b){if(\"function\"==typeof define&&define.amd)define([],b);else if(\"undefined\"!=typeof exports)b();else{b(),a.FileSaver={exports:{}}.exports}})(this,function(){\"use strict\";function b(a,b){return\"undefined\"==typeof b?b={autoBom:!1}:\"object\"!=typeof b&&(console.warn(\"Deprecated: Expected third argument to be a object\"),b={autoBom:!b}),b.autoBom&&/^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(a.type)?new Blob([\"\\uFEFF\",a],{type:a.type}):a}function c(a,b,c){var d=new XMLHttpRequest;d.open(\"GET\",a),d.responseType=\"blob\",d.onload=function(){g(d.response,b,c)},d.onerror=function(){console.error(\"could not download file\")},d.send()}function d(a){var b=new XMLHttpRequest;b.open(\"HEAD\",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent(\"click\"))}catch(c){var b=document.createEvent(\"MouseEvents\");b.initMouseEvent(\"click\",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f=\"object\"==typeof window&&window.window===window?window:\"object\"==typeof self&&self.self===self?self:\"object\"==typeof global&&global.global===global?global:void 0,a=f.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),g=f.saveAs||(\"object\"!=typeof window||window!==f?function(){}:\"download\"in HTMLAnchorElement.prototype&&!a?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement(\"a\");g=g||b.name||\"download\",j.download=g,j.rel=\"noopener\",\"string\"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target=\"_blank\")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:\"msSaveOrOpenBlob\"in navigator?function(f,g,h){if(g=g||f.name||\"download\",\"string\"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement(\"a\");i.href=f,i.target=\"_blank\",setTimeout(function(){e(i)})}}:function(b,d,e,g){if(g=g||open(\"\",\"_blank\"),g&&(g.document.title=g.document.body.innerText=\"downloading...\"),\"string\"==typeof b)return c(b,d,e);var h=\"application/octet-stream\"===b.type,i=/constructor/i.test(f.HTMLElement)||f.safari,j=/CriOS\\/[\\d]+/.test(navigator.userAgent);if((j||h&&i||a)&&\"undefined\"!=typeof FileReader){var k=new FileReader;k.onloadend=function(){var a=k.result;a=j?a:a.replace(/^data:[^;]*;/,\"data:attachment/file;\"),g?g.location.href=a:location=a,g=null},k.readAsDataURL(b)}else{var l=f.URL||f.webkitURL,m=l.createObjectURL(b);g?g.location=m:location.href=m,g=null,setTimeout(function(){l.revokeObjectURL(m)},4E4)}});f.saveAs=g.saveAs=g,\"undefined\"!=typeof module&&(module.exports=g)});\n\n//# sourceMappingURL=FileSaver.min.js.map","\nimport React, { useEffect, useState, useRef, lazy } from \"react\";\nimport { getFileObject, saveFile,getLocalResourceURL,getFileUrl, generateUniqueFilename } from \"../../../utils/utils.jsx\";\nimport { modelData } from \"../../../utils/components/helpers/onnxModelAPI.jsx\";\nimport { useModel } from '../../../utils/Context/ModelContext.jsx'\nimport npyjs from \"npyjs\";\n\nimport _, { last } from \"underscore\";\nimport * as ort from 'onnxruntime-web';\n\nimport { saveAs } from \"file-saver\";\n// If you are using modules, import the necessary modules\nimport { v4 as uuidv4 } from 'uuid';\n\n// Define image, embedding, and model paths\nconst IMAGE_PATH = \"/assets/data/dogs.jpg\";\nconst IMAGE_EMBEDDING = \"/assets/data/dogs_embedding.npy\";\nconst MODEL_DIR = \"/assets/data/sam_onnx_example.onnx\";\n\nimport {WEB_SITE} from \"../../api/apiConfig.jsx\"\n\nimport { toast } from \"react-toastify\";\n\nconst Segment = ({param, index, handleInputChange, sourceImageID, template_id=null}) => {\n \n const [clicks, setClicks] = useState([]);\n const [mouseMove, setMouseMove] = useState(null);\n const [image, setImage] = useState(null);\n const [maskImg, setMaskImg] = useState(null);\n const [moveMaskImg, setMoveMaskImg] = useState(null);\n\n const model = useModel();\n const [tensor, setTensor] = useState(null); // Image embedding tensor\n\n // The ONNX model expects the input to be rescaled to 1024. \n // The modelScale state variable keeps track of the scale values.\n const [modelScale, setModelScale] = useState(null);\n // Dictionary to store masks corresponding to clicks\n const [clickMaskMap, setClickMaskMap] = useState({});\n\n\n const [currentIndex, setCurrentIndex] = useState(null);\n const [totalURLS, settotalURLS] = useState(null);\n \n // 为了给上传时候保存\n const [maskFileForUpload, setMaskFileForUpload] = useState(null);\n const [NpyFile, setNPYFile] = useState(null);\n\n const [sourceurl, setSourceUrl] = useState(null)\n const [npy, setnpy] = useState(null)\n const [maskname, setmaskname] = useState(null)\n\n const [lastSourceImageID, setLastSourceImageID] = useState(null)\n\n \n const canvasRef = useRef(null);\n const coverRef = useRef(null);\n\n //const [segmentserver, setegmentserver] = useState(baseUrl()+'/resources'); // the mask task we are doing. \n //const [segmentserver, setegmentserver] = useState('http://192.168.101.18:8001'); // the mask task we are doing. http://192.168.101.18:8001/\n //const [segmentserver, setegmentserver] = useState('https://mask.cpolar.top'); // the mask task we are doing. \n //const [segmentserver, setegmentserver] = useState('/api/resources/proxyurl/front.shangxiaobao.com:7002'); // the mask task we are doing. \n const [segmentserver, setegmentserver] = useState('/api/resources/proxyurl/shangxiaobao.com:9001'); // the mask task we are doing. \n //const [segmentserver, setegmentserver] = useState('http://dianxiaoshang.com:7002'); // the mask task we are doing. \n //const [segmentserver, setegmentserver] = useState('https://front.dianxiaoshang.com:7005'); // the mask task we are doing. \n //const [segmentserver, setegmentserver] = useState('http://back.dianxiaoshang.com:7005'); // the mask task we are doing. @ qingjiao\n \n const cancelTokenRef = useRef(null); // 使用useRef来存储取消令牌\n const cancelParamTokenRef = useRef(null); // 使用useRef来存储取消令牌\n\n\n // Dynamically load OpenCV.js\n useEffect(() => {\n const loadOpenCv = () => {\n const script = document.createElement('script');\n script.src = '/assets/opencv.js';\n script.async = true;\n script.onload = () => {\n console.log('OpenCV.js loaded');\n };\n document.body.appendChild(script);\n };\n\n loadOpenCv();\n }, []);\n\n useEffect(() => {\n \n }, []);\n\n useEffect(() => {\n\n console.log('new source iamge id', sourceImageID)\n const newToken = {}; // 创建一个新的取消令牌\n cancelTokenRef.current = newToken; // 直接在引用中设置新的取消令牌\n \n if (!sourceImageID || image){ //清空, 或者替换的时候\n setnpy(generateUniqueFilename('_embeddings.npy'))\n setmaskname(generateUniqueFilename('_mask.png'))\n setImage(null) // all the image related will be changed. \n setMaskImg(null) // this will also clear the maskfilefor upload. \n setModelScale(null)\n setClicks([]) \n setClickMaskMap({})\n setMoveMaskImg(null)\n setMouseMove(null)\n setTensor(null)\n\n setNPYFile(null) // this will also set the tensor to null.\n\n }\n if(sourceImageID){\n getLocalResourceURL(sourceImageID, template_id).then(file=>{ // 这个时候肯定已经搞定了。 因为已经有这个sourceImageID了。 是soruceimage设定的。\n if (cancelTokenRef.current!=newToken){\n console.log(\"cancel executions.\",sourceImageID)\n return\n }\n setSourceUrl(file.url)\n loadImage(file.url);\n if (!param.value || !param.value[1] || !param.value[1].name || lastSourceImageID){ // when we dont have the npy file ready, we get it. // todo 这里搞清楚一下。 // 注意不要死循环\n loadImageTensor_refined(new URL(file.url), newToken);\n }\n if (cancelTokenRef.current!=newToken){\n console.log(\"cancel executions.\",sourceImageID)\n return\n }\n setLastSourceImageID(sourceImageID)\n });\n }\n }, [sourceImageID]);\n\n\n\n useEffect(() => {\n \n const newToken = {}; // 创建一个新的取消令牌\n cancelParamTokenRef.current = newToken; // 直接在引用中设置新的取消令牌\n\n const fetchFiles = async (token) => {\n // Only fetch mask and npy from params if maskFileForUpload and NpyFile are not set\n if (!maskFileForUpload && !NpyFile && param && param.value && Array.isArray(param.value) && param.value.length > 0 && param.value[1]) {\n // Initialize file objects\n let maskfile = { url: null, file: null };\n let npyfile = { url: null, file: null };\n\n if (cancelParamTokenRef.current !== token) {\n console.log('quit1')\n return;\n }\n \n // Fetch mask file if available\n if (param.value[0] && param.value[0].name) {\n maskfile = await getLocalResourceURL(`${param.value[0].name}_${param.value[0].type}_${param.value[0].size}`, template_id);\n if (cancelParamTokenRef.current !== token) {\n console.log('quit1')\n return;\n }\n loadMaskImage(maskfile.url); // Load mask image and update the state\n setMaskFileForUpload(maskfile.file);\n }\n if (cancelParamTokenRef.current !== token) {\n console.log('quit2')\n return;\n }\n \n // Fetch npy file if available\n if (param.value[1] && param.value[1].name) {\n npyfile = await getLocalResourceURL(`${param.value[1].name}_${param.value[1].type}_${param.value[1].size}`, template_id);\n if (cancelParamTokenRef.current !== token) {\n console.log('quit1')\n return;\n }\n setNPYFile(npyfile.file);\n transforNpyToTensor(npyfile.file); // Transform npy file to tensor\n }\n\n if (cancelParamTokenRef.current !== token) {\n console.log('quit3')\n return;\n }\n \n // Handle input change with index to update parent\n handleInputChange(index, {\n target: {\n name: maskfile.file && maskfile.file.name ? maskfile.file.name : 'mask.file',\n files: [maskfile?.file, npyfile.file] // Update with the fetched files\n }\n });\n } else {\n // Legacy flow\n // alert('legacy')\n console.log('legacy flow.');\n }\n };\n \n fetchFiles(newToken); // Call the inner function\n\n }, [param]);\n \n\n useEffect(() => {\n const fitToPage = () => {\n if (!image) return;\n // Function to handle getting the image width\n \n const imageAspectRatio = image.width / image.height;\n const screenAspectRatio = window.innerWidth / window.innerHeight;\n //setShouldFitToWidth(imageAspectRatio > screenAspectRatio);\n };\n\n const resizeObserver = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === document.body) {\n fitToPage();\n }\n }\n });\n\n fitToPage();\n resizeObserver.observe(document.body);\n\n \n return () => {\n resizeObserver.unobserve(document.body);\n };\n }, [image]);\n\n\n const transforNpyToTensor = async (npyfile) => {\n if (!npyfile){\n return \n }\n try {\n // Get ArrayBuffer from NpyFile\n const arrayBuffer = await getArrayBufferFromFile(npyfile);\n // Assuming loadNpyTensor returns a tensor\n const tensor = await loadNpyTensor(arrayBuffer, \"float32\");\n setTensor(tensor);\n } catch (error) {\n alert('internal error')\n console.error(\"Failed to load tensor:\", error);\n }\n };\n\n \n\n const loadImage = async (url) => {\n try {\n if (!url){\n return \n }\n const img = new Image();\n img.src = new URL(url).href;\n img.onload = () => {\n const { height, width, samScale } = handleImageScaleModel(img);\n setModelScale({\n height: height, // original image height\n width: width, // original image width\n samScale: samScale, // scaling factor for image which has been resized to longest side 1024\n });\n img.width = width; \n img.height = height; \n setImage(img);\n };\n } catch (error) {\n console.log(error);\n }\n };\n\n const loadMaskImage = async (url) => {\n try {\n if (!url){\n setMaskImg(null)\n return \n }\n const img = new Image();\n img.src = new URL(url).href;\n img.onload = () => {\n setMaskImg(img);\n };\n } catch (error) {\n console.log(error);\n }\n };\n\n\n const base64ToArrayBuffer= (base64)=>{\n var binaryString = window.atob(base64); // Decode base64 to a binary string\n var bytes = new Uint8Array(binaryString.length);\n for (var i = 0; i < binaryString.length; i++) {\n bytes[i] = binaryString.charCodeAt(i);\n }\n return bytes.buffer; // Convert Uint8Array to ArrayBuffer\n }\n \n\n // Assuming `url` is the Blob URL you've created with URL.createObjectURL\n async function convertUrlToArrayBuffer(url) {\n try {\n // Fetch the Blob from the URL\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error('Failed to fetch the Blob from the URL');\n }\n\n // Retrieve the Blob from the response\n const blob = await response.blob();\n\n // Convert the Blob to an ArrayBuffer\n const arrayBuffer = await blob.arrayBuffer();\n \n // Now `arrayBuffer` is ready for use\n return arrayBuffer;\n } catch (error) {\n console.error('Error converting URL to ArrayBuffer:', error);\n }\n }\n\n\n\n function getArrayBufferFromFile(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = (event) => {\n // The result attribute contains the ArrayBuffer\n resolve(event.target.result);\n };\n\n reader.onerror = (error) => {\n reject(error);\n };\n\n reader.readAsArrayBuffer(file);\n });\n }\n \n const getArrayBufferFromFile2 = (file) => {\n // Create a new instance of FileReader\n const reader = new FileReader();\n \n // Define what happens once the file is read\n reader.onload = (event) => {\n // The result attribute contains the ArrayBuffer\n const arrayBuffer = event.target.result;\n console.log(\"ArrayBuffer retrieved:\", arrayBuffer);\n \n // Here, you can perform further actions with the arrayBuffer\n // For example, you might want to set it back to some state or use it directly\n // setOriginalArrayBuffer(arrayBuffer); // Uncomment or modify this according to your needs\n };\n \n // If there's an error in reading the file\n reader.onerror = (error) => {\n console.error(\"Error reading the file:\", error);\n };\n \n // Start reading the file's contents\n reader.readAsArrayBuffer(file);\n };\n\n\n // Assuming `url` is the Blob URL you've created with URL.createObjectURL\n async function saveNPY(arrayBuffer, token) {\n try {\n // Create a Blob from the ArrayBuffer\n const npyblob = new Blob([arrayBuffer], {type: 'application/octet-stream'}); // You can change 'application/octet-stream' to the appropriate MIME type\n const filename = npy\n const file = new File([npyblob], filename, { type: 'application/octet-stream' });\n if (cancelTokenRef.current !== token) {\n console.log('canceld:', file);\n return\n }\n setNPYFile(file)\n transforNpyToTensor(file) // get the tensor.\n\n if (cancelTokenRef.current !== token) {\n console.log('canceld:', file);\n return \n }\n console.log('seding param change :', file);\n // 我们要把param里面的改掉。 \n handleInputChange(index, {\n target: {\n name: maskname, // Assuming param.name is the name of the file input\n files: [null, file] //这里永远要把maskfile重置掉, 否则, 就会返回来调用param,然后等setMaskImg(null)后又设定上。 \n },\n })\n setMaskImg(null)\n } catch (error) {\n console.error('Error saving ArrayBuffer:', error);\n }\n }\n const SEGMENT_SERVER_URL = `${WEB_SITE}${segmentserver}/getmasks`;\n\n // Helper function to delay execution\n function sleep(ms) {\n return new Promise(resolve => setTimeout(resolve, ms));\n }\n\n // Function to preprocess and upload the image, then monitor the task status\n const loadImageTensor_async=async (url, token) =>{\n \n const formData = await preprocessImage(url);\n const MAX_RETRIES = 5;\n for (let attempt = 0; attempt < MAX_RETRIES; attempt++) {\n if (cancelTokenRef.current !== token) return; // 在关键步骤检查引用中的取消令牌\n try {\n const segTaskId = await initiateSegmentationTask(formData);\n let result = await monitorTaskUntilCompletion(segTaskId, token);\n if (result ==1){\n return\n }\n } catch (error) {\n toast('网络出了点问题,我在努力链接。。')\n console.error('Error in loadImageTensor_async:', error);\n }\n }\n alert('出现了问题,请联系客服。15011071360')\n \n }\n\n // Initiate the segmentation task and return the task ID\n async function initiateSegmentationTask(formData) {\n const response = await fetch(`${SEGMENT_SERVER_URL}`, {\n method: 'POST',\n body: formData\n });\n\n const data = await response.json();\n if (!response.ok) throw new Error('Failed to initiate segmentation task');\n return data.task_id;\n }\n\n // Monitor the task status until it is completed or fails\n async function monitorTaskUntilCompletion(taskId, token) {\n const MAX_RETRIES = 5;\n for (let attempt = 0; attempt < MAX_RETRIES; attempt++) {\n \n try {\n const data = await fetchTaskStatus(taskId);\n if (cancelTokenRef.current !== token) return; // 在关键步骤检查引用中的取消令牌\n if (data.status === 'completed') {\n await processCompletedTask(data.result, token);\n return 1\n } else if (data.status === 'failed') {\n return 0\n break;\n }\n } catch (error) {\n return 0; //retry . \n console.error(`Error on attempt ${attempt + 1} fetching task status:`, error);\n }\n await sleep(3000); // Wait before the next status check\n }\n return 0\n }\n\n // Fetch the task status from the server\n async function fetchTaskStatus(taskId) {\n const response = await fetch(`${SEGMENT_SERVER_URL}/${taskId}`);\n if (!response.ok) throw new Error('Failed to fetch task status');\n return await response.json();\n }\n\n // Process the completed task, decode and load the tensor\n async function processCompletedTask(base64String, token) {\n if (cancelTokenRef.current !== token) return; \n const arrayBuffer = base64ToArrayBuffer(base64String);\n saveNPY(arrayBuffer, token)\n \n }\n\n\n const preprocessImage=async(url)=>{\n // Fetch the blob data from the blob URL\n const fileBlob = await fetch(url).then(response => response.blob());\n\n /*const formData = new FormData();\n formData.append('file', processedBlob, 'processed_mask.png');*/\n const target = new File([fileBlob], 'mask.png', { type: 'image/png' }); \n \n const formData = new FormData();\n formData.append('file', fileBlob);\n formData.append('name', target.name);\n formData.append('size', target.size);\n formData.append('type', target.type);\n\n return formData\n\n }\n\n const loadImageTensor_refined = async (url, token) => {\n const formData = await preprocessImage(url)\n\n let times = 0;\n while (times < 3) {\n try {\n if (cancelTokenRef.current !== token) return; // 在关键步骤检查引用中的取消令牌\n let response = await fetch(`${WEB_SITE}${segmentserver}/getembeddings_refined`, {\n method: 'POST',\n body: formData\n });\n\n if (response.ok) {\n const arrayBuffer = await response.arrayBuffer();\n saveNPY(arrayBuffer, token);\n break;\n } else {\n alert('网络阻塞,重试一下就好 ...');\n console.error('Failed to get embeddings:', response.statusText);\n }\n } catch (error) {\n alert('网络阻塞,重试一下就好 ...');\n console.error('Error loading image tensor:', error);\n }\n times += 1;\n }\n };\n\n \n const loadImageTensor_intuitive = async (url, token) => {\n const formData = await preprocessImage(url)\n\n let times = 0;\n while (times < 3) {\n try {\n if (cancelTokenRef.current !== token) return; \n let response = await fetch(`${WEB_SITE}${segmentserver}/getembeddings_intuitive`, {\n method: 'POST',\n body: formData\n });\n\n if (response.ok) {\n const arrayBuffer = await response.arrayBuffer();\n saveNPY(arrayBuffer, token);\n break;\n } else {\n alert('网络阻塞,重试一下就好 ...');\n console.error('Failed to get embeddings:', response.statusText);\n }\n } catch (error) {\n alert('网络阻塞,重试一下就好 ...');\n console.error('Error loading image tensor:', error);\n }\n times += 1;\n }\n };\n\n const loadImageTensor = async (url, token) => {\n const formData = await preprocessImage(url)\n\n let times = 0;\n while (times < 3) {\n try {\n if (cancelTokenRef.current !== token) return; \n let response = await fetch(`${WEB_SITE}${segmentserver}/getembeddings`, {\n method: 'POST',\n body: formData\n });\n\n if (response.ok) {\n const arrayBuffer = await response.arrayBuffer();\n saveNPY(arrayBuffer, token);\n break;\n } else {\n alert('网络阻塞,重试一下就好 ...');\n console.error('Failed to get embeddings:', response.statusText);\n }\n } catch (error) {\n alert('网络阻塞,重试一下就好 ...');\n console.error('Error loading image tensor:', error);\n }\n times += 1;\n }\n };\n\n \n function applySobelFilter(data, width, height) {\n const sobelData = new Uint8ClampedArray(data.length);\n\n // Sobel X Filter\n const xKernel = [\n -1, 0, 1,\n -2, 0, 2,\n -1, 0, 1\n ];\n\n // Sobel Y Filter\n const yKernel = [\n -1, -2, -1,\n 0, 0, 0,\n 1, 2, 1\n ];\n\n // Apply Sobel filter\n for (let y = 1; y < height - 1; y++) {\n for (let x = 1; x < width - 1; x++) {\n const pixelIndex = (y * width + x) * 4;\n\n let gxRed = 0, gyRed = 0;\n let gxGreen = 0, gyGreen = 0;\n let gxBlue = 0, gyBlue = 0;\n\n for (let kernelY = -1; kernelY <= 1; kernelY++) {\n for (let kernelX = -1; kernelX <= 1; kernelX++) {\n const weightX = xKernel[(kernelY + 1) * 3 + (kernelX + 1)];\n const weightY = yKernel[(kernelY + 1) * 3 + (kernelX + 1)];\n const neighborX = x + kernelX;\n const neighborY = y + kernelY;\n const neighborIndex = (neighborY * width + neighborX) * 4;\n\n gxRed += data[neighborIndex] * weightX;\n gyRed += data[neighborIndex] * weightY;\n gxGreen += data[neighborIndex + 1] * weightX;\n gyGreen += data[neighborIndex + 1] * weightY;\n gxBlue += data[neighborIndex + 2] * weightX;\n gyBlue += data[neighborIndex + 2] * weightY;\n }\n }\n\n // Calculate gradient magnitudes for each channel\n const magnitudeRed = Math.sqrt(gxRed * gxRed + gyRed * gyRed) >>> 0;\n const magnitudeGreen = Math.sqrt(gxGreen * gxGreen + gyGreen * gyGreen) >>> 0;\n const magnitudeBlue = Math.sqrt(gxBlue * gxBlue + gyBlue * gyBlue) >>> 0;\n\n // Set the Sobel data (clamping the values to 0-255)\n sobelData[pixelIndex] = magnitudeRed;\n sobelData[pixelIndex + 1] = magnitudeGreen;\n sobelData[pixelIndex + 2] = magnitudeBlue;\n sobelData[pixelIndex + 3] = 255; // Maintain full opacity\n }\n }\n\n // Copy the processed data back to the original data array\n for (let i = 0; i < data.length; i++) {\n data[i] = sobelData[i];\n }\n}\n\n \n \n\n const loadImageTensor_direct = async (url, token) => {\n \n // Fetch the blob data from the blob URL\n const fileBlob = await fetch(url).then(response => response.blob());\n const target = new File([fileBlob], 'mask.png', { type: 'image/png' }); \n \n const formData = new FormData();\n formData.append('file', fileBlob);\n formData.append('name', target.name);\n formData.append('size', target.size);\n formData.append('type', target.type);\n // Make a POST request to the server endpoint\n /*\n const response = await fetch(`${baseUrl()}/resources/getembeddings`, {\n method: 'POST',\n body: formData\n });*/\n\n //const fff = 'http://5.tcp.cpolar.cn:14698'\n //const fff = 'https://mask.cpolar.top'\n let times = 0\n while (times<3){\n try {\n if (cancelTokenRef.current !== token) return; \n let response = await fetch(`${WEB_SITE}${segmentserver}/getembeddings_refined`, {\n method: 'POST',\n body: formData\n });\n\n if (response.ok) {\n // Parse the response as ArrayBuffer\n const arrayBuffer = await response.arrayBuffer();\n\n saveNPY(arrayBuffer, token)\n break\n // Call loadNpyTensor function (not provided) to process the embeddings\n // Assuming loadNpyTensor returns a tensor\n //return await loadNpyTensor(response.data, \"float32\");\n } else {\n alert('网络阻塞,重试一下就好 ...')\n console.error('Failed to get embeddings:', response.statusText);\n }\n } catch (error) {\n alert('网络阻塞,重试一下就好 ...')\n console.error('Error loading image tensor:', error);\n }\n times +=1\n }\n }; \n\n\n function sleep(ms) {\n return new Promise(resolve => setTimeout(resolve, ms));\n }\n // Helper function for handling image scaling needed for SAM\n const handleImageScaleModel = (image) => {\n // Input images to SAM must be resized so the longest side is 1024\n const LONG_SIDE_LENGTH = 1024;\n let w = image.naturalWidth;\n let h = image.naturalHeight;\n const samScale = LONG_SIDE_LENGTH / Math.max(h, w);\n return { height: h, width: w, samScale };\n };\n \n // Decode a Numpy file into a tensor. \n const loadNpyTensor = async (tensorFile, dType) => {\n let npLoader = new npyjs();\n const npArray = await npLoader.load(tensorFile);\n const tensor = new ort.Tensor(dType, npArray.data, npArray.shape);\n return tensor;\n };\n\n // Run the ONNX model every time clicks has changed\n //useEffect(() => {\n // runONNX();\n //}, [clicks]);\n useEffect(() => {\n if (clicks){\n const combinedImageData = combineMasks_original()\n if (combinedImageData){\n const mimage = imageDataToImage(combinedImageData)\n // Wait for the image to load before drawing it onto the canvas\n mimage.onload = () => {\n // Create a canvas element\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n\n // Set canvas dimensions\n canvas.width = combinedImageData.width;\n canvas.height = combinedImageData.height;\n\n ctx.fillStyle = 'white';\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n\n // Draw the mask image onto the canvas\n ctx.drawImage(mimage, 0, 0);\n\n try {\n // Ensure OpenCV.js is loaded\n if (window.cv && window.cv.imread) {\n // Process the image using OpenCV.js\n const srcMat = window.cv.imread(canvas);\n if (!srcMat.empty()) {\n const grayMat = new window.cv.Mat();\n window.cv.cvtColor(srcMat, grayMat, window.cv.COLOR_RGBA2GRAY, 0);\n \n // Apply Gaussian blur\n const blurredMat = new window.cv.Mat();\n const ksize = new window.cv.Size(5, 5);\n window.cv.GaussianBlur(grayMat, blurredMat, ksize, 0, 0, window.cv.BORDER_DEFAULT);\n \n // Apply morphological operations\n const kernel = window.cv.Mat.ones(5, 5, window.cv.CV_8U);\n const morphedMat = new window.cv.Mat();\n window.cv.morphologyEx(blurredMat, morphedMat, window.cv.MORPH_CLOSE, kernel);\n \n // Ensure the image is binary (non-gray)\n const binaryMat = new window.cv.Mat();\n window.cv.threshold(morphedMat, binaryMat, 127, 255, window.cv.THRESH_BINARY);\n \n // Display the processed image on the canvas\n window.cv.imshow(canvas, binaryMat);\n \n // Clean up\n srcMat.delete();\n grayMat.delete();\n blurredMat.delete();\n morphedMat.delete();\n binaryMat.delete();\n kernel.delete();\n } else {\n console.error(\"The source matrix is empty.\");\n }\n } else {\n console.error(\"OpenCV.js is not loaded properly.\");\n }\n } catch (error) {\n console.error(\"OPENCV ERROR:\", error);\n }\n\n // Convert the canvas to a blob\n canvas.toBlob((blob) => {\n if (blob) {\n // Create a File object from the Blob\n const filename = maskname\n const file = new File([blob], filename, { type: 'image/png' });\n setMaskFileForUpload(file) // todo , 这里要看下是否会死循环。\n // Call the handleInputChange function with the synthetic event\n handleInputChange(index, {\n target: {\n name: maskname, // Assuming param.name is the name of the file input\n files: [file, NpyFile],\n },\n }) \n }\n }, 'image/png');\n };\n setMaskImg(mimage)\n\n }else{\n setMaskImg(null)\n }\n }\n }, [clicks]);\n\n\n useEffect(() => {\n if (!mouseMove ){\n setMoveMaskImg(null)\n return \n }\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n const generateMaskAsync = async () => {\n const maskData = await generateMask({ x: mouseMove.x, y: mouseMove.y });\n const maskImg = imageDataToImage(maskData);\n setMoveMaskImg(maskImg);\n };\n \n generateMaskAsync();\n }, [mouseMove]);\n\n useEffect(() => {\n if (!maskImg) {\n \n return; // Return if maskImg is not available\n }\n\n const image = new window.Image();\n image.src = maskImg.src;\n \n image.onload = () => {\n\n const canvas = canvasRef.current;\n if (!canvas) return;\n const ctx = canvas.getContext('2d');\n canvas.width = image.width;\n canvas.height = image.height;\n \n ctx.drawImage(image, 0, 0);\n \n const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);\n const data = imageData.data;\n \n // Loop through every pixel\n for (let i = 0; i < data.length; i += 4) {\n const red = data[i];\n const green = data[i + 1];\n const blue = data[i + 2];\n const alpha = data[i + 3];\n \n // Check if the pixel is black (strict definition)\n if (red < 10 && green < 10 && blue < 10 && alpha === 255) {\n data[i] = 255; // Set red\n data[i + 1] = 0; // Set green to 0\n data[i + 2] = 0; // Set blue to 0\n data[i + 3] = 255; // Keep alpha as 255 (opaque)\n } else {\n data[i + 3] = 0; // Set alpha to 0 (transparent) for non-black pixels\n }\n }\n \n // Write the modified data back to the canvas\n ctx.putImageData(imageData, 0, 0);\n };\n \n }, [maskImg]);\n\n\n\n\n const handleSaveColorMask = (e) => {\n\n e.preventDefault();\n if (!maskImg) return;\n \n // Create a temporary canvas to draw the mask image\n const tempCanvas = document.createElement(\"canvas\");\n tempCanvas.width = maskImg.width;\n tempCanvas.height = maskImg.height;\n const tempCtx = tempCanvas.getContext(\"2d\");\n tempCtx.drawImage(maskImg, 0, 0);\n \n // Get the pixel data of the mask image\n const maskData = tempCtx.getImageData(0, 0, maskImg.width, maskImg.height).data;\n \n // Create a canvas to draw the extracted areas\n const extractedCanvas = document.createElement(\"canvas\");\n extractedCanvas.width = maskImg.width;\n extractedCanvas.height = maskImg.height;\n const extractedCtx = extractedCanvas.getContext(\"2d\");\n \n // Draw the source image on the canvas\n extractedCtx.drawImage(image, 0, 0, maskImg.width, maskImg.height);\n \n // Get the pixel data of the source image\n const sourceData = extractedCtx.getImageData(0, 0, maskImg.width, maskImg.height).data;\n \n // Iterate through the pixel data and copy non-transparent pixels to the new image\n for (let i = 0; i < maskData.length; i += 4) {\n // Check if the pixel in the mask image is not transparent\n if (maskData[i + 3] !== 0) {\n // Clear the transparent area in the extracted image\n extractedCtx.clearRect((i / 4) % maskImg.width, Math.floor((i / 4) / maskImg.width), 1, 1);\n\n // Copy the pixel from the source image to the extracted image\n extractedCtx.fillStyle = `rgba(${sourceData[i]}, ${sourceData[i + 1]}, ${sourceData[i + 2]}, ${sourceData[i + 3]})`;\n extractedCtx.fillRect((i / 4) % maskImg.width, Math.floor((i / 4) / maskImg.width), 1, 1);\n }else{\n // Clear the transparent area in the extracted image\n extractedCtx.clearRect((i / 4) % maskImg.width, Math.floor((i / 4) / maskImg.width), 1, 1);\n }\n\n }\n \n // Convert the extracted canvas to a blob and create an object URL\n extractedCanvas.toBlob((blob) => {\n const url = URL.createObjectURL(blob);\n \n // Trigger download\n const link = document.createElement(\"a\");\n link.download = \"extracted_areas.png\";\n link.href = url;\n link.click();\n }, 'image/png');\n };\n \n \n\n // Rest of your code...\n // Function to handle left and right clicks on the image\n const handleImageClick = async (e) => {\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n e.preventDefault();\n const containerRect = e.currentTarget.getBoundingClientRect();\n const x = (e.clientX - containerRect.left)*(modelScale.width/containerRect.width);\n const y = (e.clientY - containerRect.top)*(modelScale.height/containerRect.height);\n\n // Check which button was clicked\n // Check which button was clicked\n if (e.button === 0 ) {\n let found= false\n // Right click: Remove mask if within mask area\n /*\n Object.entries(clickMaskMap).forEach(([key, maskImgData]) => {\n const [maskX, maskY, clickType] = key.split(\",\");\n if (clickType === \"1\") { // Assuming right click adds mask with clickType 1\n // Calculate distance from click to each mask area\n const maskCanvas = imageDataToCanvas(maskImgData);\n const ctx = maskCanvas.getContext(\"2d\");\n const imageData = ctx.getImageData(0, 0, maskCanvas.width, maskCanvas.height);\n const maskData = imageData.data;\n const index = (Math.floor(y) * maskCanvas.width + Math.floor(x)) * 4;\n const alpha = maskData[index + 3]; // Alpha value at click coordinates\n\n // Check if the alpha value at the click coordinates is greater than 0\n if (alpha > 0){\n // Remove corresponding mask from clickMaskMap\n const { [key]: removedMask, ...rest } = clickMaskMap;\n setClickMaskMap(rest);\n found = true\n // Remove click from clicks\n const newClicks = clicks.filter(click => `${click.x},${click.y}` !== `${maskX},${maskY}`);\n setClicks(newClicks);\n }\n }\n });\n */\n if (true){\n // Left click: Add to existing mask\n const newClicks = [...clicks, getClick( x, y )];\n // Generate mask for the new click\n let newMaskImgData =await generateMask({ x, y });\n // Update clickMaskMap\n setClickMaskMap({ ...clickMaskMap, [`${x},${y},1`]: newMaskImgData });\n setClicks(newClicks);\n }\n } else if (e.button === 2){\n // Left click: Add to existing mask\n const newClicks = [...clicks, getClick( x, y , -1)];\n // Generate mask for the new click\n let newMaskImgData =await generateMask({ x, y });\n // Update clickMaskMap\n setClickMaskMap({ ...clickMaskMap, [`${x},${y},-1`]: newMaskImgData });\n setClicks(newClicks);\n }\n };\n\n const handleContextMenu = (e) => {\n e.preventDefault();\n };\n\n // when clickType =1 add the mask , when click Type = -1 subtract\n const getClick = (x, y, clickType=1) => {\n return { x, y, clickType };\n };\n\n // Function to generate mask based on current clicks\n const generateMask = async ({ x, y }) => {\n try {\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n // Prepare model input\n const cs =[getClick(x, y)]\n const feeds = modelData({\n clicks:cs,\n tensor,\n modelScale,\n });\n if (feeds === undefined) {\n return;\n }\n // Run the model\n const results = await model.run(feeds);\n const output = results[model.outputNames[0]];\n // Generate mask image\n const newMaskImgData = arrayToImageData(output.data, output.dims[2], output.dims[3]);\n return newMaskImgData\n \n } catch (e) {\n console.log(e);\n }\n return null\n };\n // Convert the onnx model mask prediction to ImageData\n function arrayToImageData(input, width, height) {\n const [r, g, b, a] = [0, 114, 189, 255]; // the mask's blue color\n const arr = new Uint8ClampedArray(4 * width * height).fill(0);\n for (let i = 0; i < input.length; i++) {\n // Threshold the onnx model mask prediction at 0.0\n // This is equivalent to thresholding the mask using predictor.model.mask_threshold\n // in python\n if (input[i] > 0.0) {\n arr[4 * i + 0] = r;\n arr[4 * i + 1] = g;\n arr[4 * i + 2] = b;\n arr[4 * i + 3] = a;\n }\n }\n return new ImageData(arr, height,width);\n }\n\n\n\n \n\n const combineMasks_antialias_black = () => {\n if (Object.keys(clickMaskMap).length === 0) {\n return null; // Return null if clickMaskMap is empty\n }\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n \n // Get the dimensions of the first mask image\n const width = image.width;\n const height = image.height;\n \n // Create a new canvas and context to draw the combined masks\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n canvas.width = width;\n canvas.height = height;\n \n // Create a second canvas for applying anti-aliasing\n const tempCanvas = document.createElement(\"canvas\");\n const tempCtx = tempCanvas.getContext(\"2d\");\n tempCanvas.width = width;\n tempCanvas.height = height;\n \n // Initialize an empty array to store the combined pixel data\n const combinedData = new Uint8ClampedArray(4 * width * height).fill(0);\n \n // Iterate through each mask in clickMaskMap and merge them into combinedData\n Object.entries(clickMaskMap).forEach(([key, mask]) => {\n const maskCanvas = imageDataToCanvas(mask);\n const maskImageData = maskCanvas.getContext(\"2d\").getImageData(0, 0, width, height);\n const maskData = maskImageData.data;\n const clickType = parseInt(key.split(\",\")[2]);\n \n // Set mask to black and preserve alpha\n for (let i = 0; i < maskData.length; i += 4) {\n maskData[i] = 0; // Red channel\n maskData[i + 1] = 0; // Green channel\n maskData[i + 2] = 0; // Blue channel\n }\n \n maskCanvas.getContext(\"2d\").putImageData(maskImageData, 0, 0);\n \n // Draw the mask onto the temporary canvas and apply anti-aliasing\n tempCtx.clearRect(0, 0, width, height);\n tempCtx.drawImage(maskCanvas, 0, 0, width, height);\n \n // Apply blur for anti-aliasing\n tempCtx.filter = 'blur(2px)'; // Adjust the blur radius as needed\n tempCtx.drawImage(tempCanvas, 0, 0, width, height);\n \n tempCtx.filter = 'none'; // Reset the filter\n tempCtx.globalCompositeOperation = clickType === -1 ? 'destination-out' : 'source-over';\n ctx.drawImage(tempCanvas, 0, 0, width, height);\n \n // Update combinedData based on the drawn masks\n const combinedImageData = ctx.getImageData(0, 0, width, height).data;\n for (let i = 0; i < combinedImageData.length; i += 4) {\n combinedData[i] = combinedImageData[i];\n combinedData[i + 1] = combinedImageData[i + 1];\n combinedData[i + 2] = combinedImageData[i + 2];\n combinedData[i + 3] = combinedImageData[i + 3];\n }\n });\n \n // Create ImageData from the combined pixel data\n const combinedImageData = new ImageData(combinedData, width, height);\n return combinedImageData;\n };\n \n const combineMasks_antialias_blue = () => {\n if (Object.keys(clickMaskMap).length === 0) {\n return null; // Return null if clickMaskMap is empty\n }\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n \n // Get the dimensions of the first mask image\n const maskImage = clickMaskMap[Object.keys(clickMaskMap)[0]];\n const width = image.width;\n const height = image.height;\n \n // Create a new canvas and context to draw the combined masks\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n canvas.width = width;\n canvas.height = height;\n \n // Create a second canvas for applying anti-aliasing\n const tempCanvas = document.createElement(\"canvas\");\n const tempCtx = tempCanvas.getContext(\"2d\");\n tempCanvas.width = width;\n tempCanvas.height = height;\n \n // Initialize an empty array to store the combined pixel data\n const combinedData = new Uint8ClampedArray(4 * width * height).fill(0);\n \n // Iterate through each mask in clickMaskMap and merge them into combinedData\n Object.entries(clickMaskMap).forEach(([key, mask]) => {\n const maskCanvas = imageDataToCanvas(mask);\n const maskData = maskCanvas.getContext(\"2d\").getImageData(0, 0, width, height).data;\n const clickType = parseInt(key.split(\",\")[2]);\n \n // Draw the mask onto the temporary canvas and apply anti-aliasing\n tempCtx.clearRect(0, 0, width, height);\n tempCtx.putImageData(new ImageData(maskData, width, height), 0, 0);\n tempCtx.globalCompositeOperation = clickType === -1 ? 'destination-out' : 'source-over';\n ctx.drawImage(tempCanvas, 0, 0, width, height);\n \n // Update combinedData based on the drawn masks\n const combinedImageData = ctx.getImageData(0, 0, width, height).data;\n for (let i = 0; i < combinedImageData.length; i += 4) {\n combinedData[i] = combinedImageData[i];\n combinedData[i + 1] = combinedImageData[i + 1];\n combinedData[i + 2] = combinedImageData[i + 2];\n combinedData[i + 3] = combinedImageData[i + 3];\n }\n });\n \n // Create ImageData from the combined pixel data\n const combinedImageData = new ImageData(combinedData, width, height);\n return combinedImageData;\n };\n \n // Utility function to convert ImageData to a canvas\n function imageDataToCanvas(imageData) {\n const canvas = document.createElement('canvas');\n canvas.width = imageData.width;\n canvas.height = imageData.height;\n const ctx = canvas.getContext('2d');\n ctx.putImageData(imageData, 0, 0);\n return canvas;\n }\n\n\n \n const combineMasks = () => {\n if (Object.keys(clickMaskMap).length === 0) {\n return null; // Return null if clickMaskMap is empty\n }\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n \n // Get the dimensions of the first mask image\n const maskImage = clickMaskMap[Object.keys(clickMaskMap)[0]];\n const width = image.width;\n const height = image.height;\n \n // Create a new canvas and context to draw the combined masks\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n canvas.width = width;\n canvas.height = height;\n \n // Initialize an empty array to store the combined pixel data\n const combinedData = new Uint8ClampedArray(4 * width * height).fill(0);\n \n // Iterate through each mask in clickMaskMap and merge them into combinedData\n Object.entries(clickMaskMap).forEach(([key, mask]) => {\n const maskCanvas = imageDataToCanvas(mask);\n const maskData = maskCanvas.getContext(\"2d\").getImageData(0, 0, width, height).data;\n const clickType = parseInt(key.split(\",\")[2]);\n \n // Modify combinedData based on clickType\n if (clickType === -1) {\n // Remove the area of the mask from combinedData\n for (let i = 0; i < maskData.length; i += 4) {\n if (maskData[i + 3] > 0) {\n combinedData[i + 3] = 0; // Set alpha channel to 0 to remove the area\n }\n }\n } else if (clickType === 1) {\n // Add the area of the mask to combinedData\n for (let i = 0; i < maskData.length; i += 4) {\n if (maskData[i + 3] > 0) {\n combinedData[i + 3] = 255; // Set alpha channel to 255 to add the area\n }\n }\n }\n });\n \n // Create ImageData from the combined pixel data\n const combinedImageData = new ImageData(combinedData, width, height);\n ctx.putImageData(combinedImageData, 0, 0);\n \n // Convert the image to grayscale considering alpha\n const grayscaleData = new Uint8ClampedArray(width * height);\n for (let i = 0; i < combinedData.length; i += 4) {\n const r = combinedData[i];\n const g = combinedData[i + 1];\n const b = combinedData[i + 2];\n const alpha = combinedData[i + 3] / 255;\n const gray = (0.299 * r + 0.587 * g + 0.114 * b) * alpha;\n grayscaleData[i / 4] = gray;\n }\n \n // Apply Sobel operator to detect edges\n const sobel = (data, width, height) => {\n const kernelX = [\n [-1, 0, 1],\n [-2, 0, 2],\n [-1, 0, 1]\n ];\n const kernelY = [\n [-1, -2, -1],\n [0, 0, 0],\n [1, 2, 1]\n ];\n const sobelData = new Uint8ClampedArray(data.length);\n const offset = width;\n \n for (let y = 1; y < height - 1; y++) {\n for (let x = 1; x < width - 1; x++) {\n const idx = y * width + x;\n let sumX = 0;\n let sumY = 0;\n \n for (let ky = -1; ky <= 1; ky++) {\n for (let kx = -1; kx <= 1; kx++) {\n const kIdx = (y + ky) * width + (x + kx);\n sumX += data[kIdx] * kernelX[ky + 1][kx + 1];\n sumY += data[kIdx] * kernelY[ky + 1][kx + 1];\n }\n }\n \n const magnitude = Math.sqrt(sumX * sumX + sumY * sumY);\n sobelData[idx] = magnitude;\n }\n }\n return sobelData;\n };\n \n const sobelData = sobel(grayscaleData, width, height);\n \n // Clear the original mask areas\n for (let i = 0; i < combinedData.length; i += 4) {\n combinedData[i] = combinedData[i + 1] = combinedData[i + 2] = combinedData[i + 3] = 0;\n }\n \n // Draw the edges with a smooth red line\n const edgeCanvas = document.createElement(\"canvas\");\n const edgeCtx = edgeCanvas.getContext(\"2d\");\n edgeCanvas.width = width;\n edgeCanvas.height = height;\n const edgeImageData = edgeCtx.createImageData(width, height);\n const edgeImageDataData = edgeImageData.data;\n \n for (let y = 0; y < height; y++) {\n for (let x = 0; x < width; x++) {\n const index = (y * width + x) * 4;\n if (sobelData[y * width + x] > 0) {\n edgeImageDataData[index] = 255; // Red\n edgeImageDataData[index + 1] = 0;\n edgeImageDataData[index + 2] = 0;\n edgeImageDataData[index + 3] = 255; // Full alpha\n }\n }\n }\n edgeCtx.putImageData(edgeImageData, 0, 0);\n \n ctx.drawImage(edgeCanvas, 0, 0);\n \n return ctx.getImageData(0, 0, width, height);\n };\n \n \n \n \n const combineMasks_original = () => {\n if (Object.keys(clickMaskMap).length === 0) {\n return null; // Return null if clickMaskMap is empty\n }\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n \n // Get the dimensions of the first mask image\n const maskImage = clickMaskMap[Object.keys(clickMaskMap)[0]];\n const width = image.width;\n const height = image.height;\n \n // Create a new canvas and context to draw the combined masks\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n canvas.width = width;\n canvas.height = height;\n \n // Initialize an empty array to store the combined pixel data\n const combinedData = new Uint8ClampedArray(4 * width * height).fill(0);\n \n // Iterate through each mask in clickMaskMap and merge them into combinedData\n Object.entries(clickMaskMap).forEach(([key, mask]) => {\n const maskCanvas = imageDataToCanvas(mask);\n const maskData = maskCanvas.getContext(\"2d\").getImageData(0, 0, width, height).data;\n const clickType = parseInt(key.split(\",\")[2]);\n \n // Modify combinedData based on clickType\n if (clickType === -1) {\n // Remove the area of the mask from combinedData\n for (let i = 0; i < maskData.length; i += 4) {\n if (maskData[i + 3] > 0) {\n combinedData[i + 3] = 0; // Set alpha channel to 0 to remove the area\n }\n }\n } else if (clickType === 1) {\n // Add the area of the mask to combinedData\n for (let i = 0; i < maskData.length; i += 4) {\n if (maskData[i + 3] > 0) {\n combinedData[i + 3] = 255; // Set alpha channel to 255 to add the area\n }\n }\n }\n });\n \n // Create ImageData from the combined pixel data\n const combinedImageData = new ImageData(combinedData, width, height);\n return combinedImageData;\n };\n \n\n // Use a Canvas element to produce an image from ImageData\n function imageDataToImage(imageData) {\n const canvas = imageDataToCanvas(imageData);\n const image = new Image();\n image.src = canvas.toDataURL();\n return image;\n }\n function onnxMaskToImage(input, width, height) {\n return imageDataToImage(arrayToImageData(input, width, height));\n }\n \n\n // Function to remove mask for a click\n const removeMask = ({ x, y }) => {\n const newClickMaskMap = { ...clickMaskMap };\n delete newClickMaskMap[`${x},${y}`];\n setClickMaskMap(newClickMaskMap);\n };\n\n // Function to handle saving the mask image\n const handleSaveMask = (e) => {\n\n e.preventDefault();\n // Assuming the mask image data is stored in a variable called maskImg\n if (!maskImg) return; // Return if maskImg is not available\n\n // Create a canvas element\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n\n // Set canvas dimensions\n canvas.width = maskImg.width;\n canvas.height = maskImg.height;\n\n ctx.fillStyle = 'white';\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n\n // Draw the mask image onto the canvas\n ctx.drawImage(maskImg, 0, 0);\n\n\n // Ensure OpenCV.js is loaded\n if (window.cv) {\n try{\n // Process the image using OpenCV.js\n const srcMat = window.cv.imread(canvas);\n const grayMat = new window.cv.Mat();\n window.cv.cvtColor(srcMat, grayMat, window.cv.COLOR_RGBA2GRAY, 0);\n\n // Apply Gaussian blur\n const blurredMat = new window.cv.Mat();\n const ksize = new window.cv.Size(5, 5);\n window.cv.GaussianBlur(grayMat, blurredMat, ksize, 0, 0, window.cv.BORDER_DEFAULT);\n\n // Apply morphological operations\n const kernel = window.cv.Mat.ones(5, 5, window.cv.CV_8U);\n const morphedMat = new window.cv.Mat();\n window.cv.morphologyEx(blurredMat, morphedMat, window.cv.MORPH_CLOSE, kernel);\n\n // Ensure the image is binary (non-gray)\n const binaryMat = new window.cv.Mat();\n window.cv.threshold(morphedMat, binaryMat, 127, 255, window.cv.THRESH_BINARY);\n\n // Display the processed image on the canvas\n window.cv.imshow(canvas, binaryMat);\n\n\n // Convert the canvas to a base64 string\n const base64Image = canvas.toDataURL('image/png');\n\n // Clean up\n srcMat.delete();\n grayMat.delete();\n blurredMat.delete();\n morphedMat.delete();\n binaryMat.delete();\n kernel.delete();\n\n\n // Save the base64 string as a file\n const blob = base64ToBlob(base64Image);\n let filename = generateUniqueFilename('mask.png');\n saveAs(blob, filename);\n } catch (error) {\n // Error handling if an exception occurs during the remove operation\n //console.error(\"Failed to remove tab:\", error);\n console.error(\"OPENCV ERROR:\", error);\n // Convert the canvas to a blob\n canvas.toBlob((blob) => {\n // Save the blob as a file\n let filename = (generateUniqueFilename('mask.png'))\n saveAs(blob, filename);\n }, \"image/png\");\n // You could also perform additional actions here, like showing an error message to the user\n }\n }\n };\n\n function base64ToBlob(base64) {\n const byteCharacters = atob(base64.split(',')[1]);\n const byteNumbers = new Array(byteCharacters.length);\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n return new Blob([byteArray], { type: 'image/png' });\n }\n\n // Function to handle saving the mask image\n const handleResetMask = (e) => {\n\n e.preventDefault();\n setMaskImg(null)\n setClicks([])\n setClickMaskMap({})\n setMoveMaskImg(null)\n setMouseMove(null)\n //我们的经验是, 这种反写的,在用户的动作之后。 不要设置到useEffect里面去。 \n setMaskFileForUpload(null)\n // Call the handleInputChange function with the synthetic event\n handleInputChange(index, {\n target: {\n name: maskname, // Assuming param.name is the name of the file input\n files: [null, NpyFile],\n },\n }) \n };\n\n\n const handleMouseMove = _.throttle((e) => {\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n\n let el = e.nativeEvent.target;\n const rect = el.getBoundingClientRect();\n let x = e.clientX - rect.left;\n let y = e.clientY - rect.top;\n const imageScale = image ? image.width / el.offsetWidth : 1;\n x *= imageScale;\n y *= imageScale;\n const move = getClick(x, y);\n if (move) {\n setMouseMove(move);\n }\n }, 15);\n\n\n const handleMouseMove2 =(e) => {\n if (model === null || tensor === null || modelScale === null) {\n return;\n }\n\n let el = e.nativeEvent.target;\n const rect = el.getBoundingClientRect();\n let x = e.clientX - rect.left;\n let y = e.clientY - rect.top;\n const imageScale = image ? image.width / el.offsetWidth : 1;\n x *= imageScale;\n y *= imageScale;\n const move = getClick(x, y);\n if (move) setMouseMove(move);\n };\n\n\n const handleMouseOut = (e) => {\n console.log('out')\n setMouseMove(null)\n setMoveMaskImg(null)\n }\n\n const [imageWidth, setImageWidth] = useState(null);\n const [imageHeight, setImageHeight] = useState(500);\n\n return (\n
\n {(!tensor || !model ||!modelScale) && (\n \n \n {image ?\n <>\"active-icon\"/\n {window.innerWidth > 1000 ? (\n \"蒙版加载中,大概需要10-20秒,然后移动鼠标,稍作等待后,蓝色区域为备选区域(左键是加选,右键是减选),红色是已选区域(即:在结果中保留的部分)\"\n ) : (\n \"红色已选,点击选择\"\n )}\n \n :<>\n {window.innerWidth > 1000 ? (\"这里是左边的原图的蒙版选择区域,红色选中的区域在结果图中不会变。 \"\n ) : (\n \"蒙版\"\n )}\n \n }\n
\n )}\n {(tensor && model && modelScale && (mouseMove==null) &&window.innerWidth > 1000 ) && (\n \n\n \n {image ?\n <>\n {window.innerWidth > 1000 ? (\"挪动鼠标,蓝色为待选区域,红色为结果图中不变的区域,左键➕,右键➖\"):(\"点击选择蒙版\")}\n \n :<>\n {window.innerWidth > 1000 ? (\"这里是左边的原图的蒙版选择区域,红色选中的区域在结果图中不会变。 \"):(\"蒙版\")}\n \n }\n
\n )}\n\n {false && tensor && (\n \n 如果一次选不到合适的,请多试几次\n \n )}\n {maskImg &&\n <>\n 1000 ?\"10px\":\"0px\",\n fontSize: \"10px\",\n zIndex: 999, // Set a high z-index to ensure visibility above other elements\n }}\n >\n 下载\n \n \n 1000 ?\"10px\":\"0px\",\n fontSize: \"10px\",\n zIndex: 999, // Set a high z-index to ensure visibility above other elements\n }}\n >\n 剪裁\n \n 1000 ?\"10px\":\"0px\",\n fontSize: \"10px\",\n zIndex: 999, // Set a high z-index to ensure visibility above other elements\n }}\n >\n 清空\n \n \n\n }\n\n {/* Render your image and maskImg here */}\n \n {image && \n \n }\n {maskImg &&\n \n \n }\n {moveMaskImg &&\n \n }\n {image && \n \n }\n \n\n\n );\n};\n\nexport default Segment;\n","import React, { useRef, useEffect, useState } from 'react';\n\nimport { v4 as uuidv4 } from 'uuid';\nfunction ImageEditor({param, canvasWidth, canvasHeight, url, handleChanged}) {\n const canvasRef = useRef(null);\n const [imageInfo, setImageInfo] = useState({ x: 0, y: 0, width: 0, height: 0, scale: 1 });\n const [imageLoaded, setImageLoaded] = useState(false);\n const [rect, setRect] = useState({ x: 0, y: 0, width: 0, height: 0 });\n const [dragging, setDragging] = useState(false);\n const [dragStart, setDragStart] = useState(null);\n const [draggingImage, setDraggingImage] = useState(false);\n const [image, setImage] = useState(null);\n\n const [ratio, setRatio] = useState(1)\n const fileInputRef = useRef(null);\n\n\n\n const [initialImageInfo, setInitialImageInfo] = useState(null);\n\n \n const handleEditted = (file) => {\n if (file) {\n /*\n if (file.name.length > 30) {\n alert('文件名称过长,请上传文件名不超过30个字符的文件。');\n return; // Stop further execution if the file name is too long\n }*/\n const validExtensions = param.accept.split(',');\n const fileExtension = file.name.split('.').pop().toLowerCase();\n if (validExtensions==\"\" || validExtensions.includes(`.${fileExtension}`)) {\n const syntheticEvent = {\n target: {\n name: param.name,\n files: [file],\n },\n };\n handleChanged(syntheticEvent);\n } else {\n alert('文件类型暂不支持,请上传如下类型文件:'+param.accept);\n }\n }\n };\n\n const handleImageChange = (e) => {\n e.preventDefault();\n e.stopPropagation(); // Stop the event from propagating to parent elements or the browser\n const file = e.target.files[0];\n if (file) {\n handleChanged(e); \n }\n };\n\n useEffect(() => {\n const image = new Image();\n //image.src = '/images/Bella.jpeg'; // Replace with your image path\n //image.src = '/images/liuyifei.png'; // Replace with your image path\n image.src = url; // Replace with your image path\n image.onload = () => {\n\n const maxScaleWidth = (canvasWidth/1.5) / image.width; // Assuming the canvas width is canvasWidthpx\n const maxScaleHeight = (canvasHeight/1.5) / image.height; // Assuming the canvas height is canvasHeightpx\n \n const scale = Math.min(maxScaleHeight,maxScaleWidth);\n const newImageInfo = {\n image: image,\n x: (canvasRef.current.width - image.width * scale) / 2,\n y: (canvasRef.current.height - image.height * scale) / 2,\n width: image.width * scale,\n height: image.height * scale,\n scale: scale\n };\n setImageInfo(newImageInfo);\n setRect({ x: newImageInfo.x, y: newImageInfo.y, width: newImageInfo.width, height: newImageInfo.height });\n setInitialImageInfo(newImageInfo); // Store initial image info for reset\n setRatio(scale)\n setImageLoaded(true);\n setImage(image);\n };\n }, [canvasWidth, canvasHeight, url]);\n\n const resetImage = (e) => {\n e.preventDefault()\n if (initialImageInfo) {\n setImageInfo(initialImageInfo);\n setRect({ x: initialImageInfo.x, y: initialImageInfo.y, width: initialImageInfo.width, height: initialImageInfo.height });\n }\n };\n \n\n const drawCheckeredPattern = (context, canvas) => {\n const squareSize = 15; // Size of the checkered squares\n const numRows = canvas.height / squareSize;\n const numCols = canvas.width / squareSize;\n for (let i = 0; i < numRows; i++) {\n for (let j = 0; j < numCols; j++) {\n context.fillStyle = (i + j) % 2 === 0 ? '#FFF' : '#DDD'; // Alternate colors\n context.fillRect(j * squareSize, i * squareSize, squareSize, squareSize);\n }\n }\n };\n \n\n const drawMaxDimensions = (context) => {\n const maxScaleWidth = canvasWidth / image.width; // Assuming the canvas width is canvasWidthpx\n const maxScaleHeight = canvasHeight / image.height; // Assuming the canvas height is canvasHeightpx\n \n const maxWidth = image.width * maxScaleWidth;\n const maxHeight = image.height * maxScaleHeight;\n \n context.font = '16px Arial';\n context.fillStyle = 'black';\n context.textAlign = 'right';\n context.font = '12px Arial'; // Reduced font size by 2 points from 16px to 14px\n context.fillText(`最大宽度: ${Math.round(maxWidth/ratio)}px, 最大高度: ${Math.round(maxHeight/ratio)}px`, canvasRef.current.width - 10, canvasRef.current.height - 10);\n };\n \n useEffect(() => {\n const canvas = canvasRef.current;\n const context = canvas.getContext('2d');\n canvas.width = canvasWidth;\n canvas.height = canvasHeight;\n\n drawCheckeredPattern(context,canvas);\n }, []);\n\n\n\n const handleMouseWheel = (e) => {\n e.preventDefault();\n e.stopPropagation(); // Stop the event from propagating to parent elements or the browser\n \n // 缩放的速度因子,可以根据需要调整更细或更粗的缩放\n const baseScaleFactor = 0.01; // 基础缩放因子\n const scaleFactor = baseScaleFactor * (1024 / image.width); // 假设500是参考宽度\n\n // 获取当前鼠标位置相对于画布的坐标\n const mouseX = e.clientX - canvasRef.current.getBoundingClientRect().left;\n const mouseY = e.clientY - canvasRef.current.getBoundingClientRect().top;\n \n // 根据滚轮方向调整缩放比例\n const deltaScale = e.deltaY > 0 ? -scaleFactor : scaleFactor;\n setImageInfo((prevInfo) => {\n // 计算新的缩放比例,确保它在最小和最大值之间\n const newScale = Math.max(0.02, Math.min(8, prevInfo.scale + deltaScale)); // 设置最小缩放为0.1,最大缩放为3\n \n // 根据缩放中心进行调整\n const newWidth = image.width * newScale;\n const newHeight = image.height * newScale;\n const newX = mouseX - (mouseX - prevInfo.x) * (newScale / prevInfo.scale);\n const newY = mouseY - (mouseY - prevInfo.y) * (newScale / prevInfo.scale);\n \n return {\n ...prevInfo,\n x: newX,\n y: newY,\n width: newWidth,\n height: newHeight,\n scale: newScale\n };\n });\n };\n \n \n \n\n const handleMouseDown = (e) => {\n e.preventDefault()\n const rectStart = {\n x: e.clientX - canvasRef.current.getBoundingClientRect().left,\n y: e.clientY - canvasRef.current.getBoundingClientRect().top,\n };\n \n // Check if the click is on a rectangle corner first\n const cornerSize = 8;\n if (\n Math.abs(rectStart.x - rect.x) < cornerSize &&\n Math.abs(rectStart.y - rect.y) < cornerSize\n ) {\n setDragging(true);\n setDragStart({ x: rectStart.x - rect.x, y: rectStart.y - rect.y, corner: 'topLeft' });\n return;\n } else if (\n Math.abs(rectStart.x - (rect.x + rect.width)) < cornerSize &&\n Math.abs(rectStart.y - rect.y) < cornerSize\n ) {\n setDragging(true);\n setDragStart({ x: rectStart.x - (rect.x + rect.width), y: rectStart.y - rect.y, corner: 'topRight' });\n return;\n } else if (\n Math.abs(rectStart.x - rect.x) < cornerSize &&\n Math.abs(rectStart.y - (rect.y + rect.height)) < cornerSize\n ) {\n setDragging(true);\n setDragStart({ x: rectStart.x - rect.x, y: rectStart.y - (rect.y + rect.height), corner: 'bottomLeft' });\n return;\n } else if (\n Math.abs(rectStart.x - (rect.x + rect.width)) < cornerSize &&\n Math.abs(rectStart.y - (rect.y + rect.height)) < cornerSize\n ) {\n setDragging(true);\n setDragStart({ x: rectStart.x - (rect.x + rect.width), y: rectStart.y - (rect.y + rect.height), corner: 'bottomRight' });\n return;\n }\n \n // If not clicking on a corner, initiate dragging the image\n setDraggingImage(true);\n setDragStart({ x: rectStart.x - imageInfo.x, y: rectStart.y - imageInfo.y });\n };\n \n\n const handleMouseMove = (e) => {\n e.preventDefault()\n if (draggingImage) {\n const mouseX = e.clientX - canvasRef.current.getBoundingClientRect().left;\n const mouseY = e.clientY - canvasRef.current.getBoundingClientRect().top;\n\n setImageInfo(prevInfo => ({\n ...prevInfo,\n x: mouseX - dragStart.x,\n y: mouseY - dragStart.y\n }));\n return;\n }\n\n if (!dragging) return;\n\n const mouseX = e.clientX - canvasRef.current.getBoundingClientRect().left;\n const mouseY = e.clientY - canvasRef.current.getBoundingClientRect().top;\n\n const newX = mouseX + dragStart.x;\n const newY = mouseY + dragStart.y;\n\n setRect((prevRect) => {\n switch (dragStart.corner) {\n case 'topLeft':\n return { ...prevRect, x: newX, y: newY, width: prevRect.width + (prevRect.x - newX), height: prevRect.height + (prevRect.y - newY) };\n case 'topRight':\n return { ...prevRect, y: newY, width: newX - prevRect.x, height: prevRect.height + (prevRect.y - newY) };\n case 'bottomLeft':\n return { ...prevRect, x: newX, width: prevRect.width + (prevRect.x - newX), height: newY - prevRect.y };\n case 'bottomRight':\n return { ...prevRect, width: newX - prevRect.x, height: newY - prevRect.y };\n default:\n return prevRect;\n }\n });\n };\n\n const handleMouseUp = () => {\n setDragging(false);\n setDraggingImage(false);\n };\n\n useEffect(() => {\n if (imageLoaded && imageInfo) {\n const canvas = canvasRef.current;\n const context = canvas.getContext('2d');\n context.clearRect(0, 0, canvas.width, canvas.height);\n drawCheckeredPattern(context, canvas); // Redraw the background pattern first\n context.drawImage(imageInfo.image, imageInfo.x, imageInfo.y, imageInfo.width, imageInfo.height);\n drawRect(context); // Draw or redraw the rectangle\n drawMaxDimensions(context); // Draw the max dimensions text\n }\n }, [imageInfo, imageLoaded, rect]);\n\n const drawRect = (context) => {\n const canvas = canvasRef.current;\n context.clearRect(0, 0, canvas.width, canvas.height);\n drawCheckeredPattern(context, canvas); // Redraw the background first\n context.drawImage(image, imageInfo.x, imageInfo.y, imageInfo.width, imageInfo.height);\n \n // Draw the rectangle\n context.strokeStyle = 'grey';\n context.lineWidth = 2;\n context.strokeRect(rect.x, rect.y, rect.width, rect.height);\n \n // Draw the corner squares\n const cornerSize = 8;\n context.fillStyle = 'blue';\n context.fillRect(rect.x - cornerSize / 2, rect.y - cornerSize / 2, cornerSize, cornerSize); // Top-left\n context.fillRect(rect.x + rect.width - cornerSize / 2, rect.y - cornerSize / 2, cornerSize, cornerSize); // Top-right\n context.fillRect(rect.x - cornerSize / 2, rect.y + rect.height - cornerSize / 2, cornerSize, cornerSize); // Bottom-left\n context.fillRect(rect.x + rect.width - cornerSize / 2, rect.y + rect.height - cornerSize / 2, cornerSize, cornerSize); // Bottom-right\n };\n\n function createScaledImage(image, scale) {\n const tempCanvas = document.createElement('canvas');\n const tempCtx = tempCanvas.getContext('2d');\n \n // 设置临时 canvas 的大小为图像的缩放大小\n tempCanvas.width = image.width / scale;\n tempCanvas.height = image.height / scale;\n \n // 在临时 canvas 上绘制缩放后的图像\n tempCtx.drawImage(image, 0, 0, tempCanvas.width, tempCanvas.height);\n \n return tempCanvas; // 返回一个包含缩放图像的 canvas\n }\n \n \n const saveImage=(e)=>{\n\n e.preventDefault();\n const offscreenCanvas = document.createElement('canvas');\n const ctx = offscreenCanvas.getContext('2d');\n \n // 设置新 canvas 的大小\n offscreenCanvas.width = Math.round(rect.width / ratio);\n offscreenCanvas.height = Math.round(rect.height / ratio);\n \n // 计算原始图像相对于当前图像的缩放比例\n const scale = initialImageInfo.width / imageInfo.width;\n \n // 使用 createScaledImage 函数来获取缩放后的图像\n const scaledCanvas = createScaledImage(initialImageInfo.image, scale);\n const scaledWidth = scaledCanvas.width;\n const scaledHeight = scaledCanvas.height;\n \n // 计算在新 canvas 上绘制图像的位置\n const destX = (imageInfo.x - rect.x) / ratio;\n const destY = (imageInfo.y - rect.y) / ratio;\n \n // 在新 canvas 上绘制缩放后的图像\n ctx.drawImage(scaledCanvas, 0, 0, scaledWidth, scaledHeight, destX, destY, scaledWidth, scaledHeight);\n \n // 将 canvas 转换为 Blob 并提供下载\n offscreenCanvas.toBlob((blob) => {\n const url = URL.createObjectURL(blob);\n const link = document.createElement('a');\n\n //const fileName = generateUniqueFilename('edited_.png');\n //const file = new File([blob], fileName, { type: 'image/png' });\n //handleEditted(file)\n \n link.href = url;\n link.download = 'saved-image.png';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(url);\n }, 'image/png');\n }\n\n const confirmImage=(e)=>{\n\n e.preventDefault();\n const offscreenCanvas = document.createElement('canvas');\n const ctx = offscreenCanvas.getContext('2d');\n \n // 设置新 canvas 的大小\n offscreenCanvas.width = Math.round(rect.width / ratio);\n offscreenCanvas.height = Math.round(rect.height / ratio);\n \n // 计算原始图像相对于当前图像的缩放比例\n const scale = initialImageInfo.width / imageInfo.width;\n \n // 使用 createScaledImage 函数来获取缩放后的图像\n const scaledCanvas = createScaledImage(initialImageInfo.image, scale);\n const scaledWidth = scaledCanvas.width;\n const scaledHeight = scaledCanvas.height;\n \n // 计算在新 canvas 上绘制图像的位置\n const destX = (imageInfo.x - rect.x) / ratio;\n const destY = (imageInfo.y - rect.y) / ratio;\n \n // 在新 canvas 上绘制缩放后的图像\n ctx.drawImage(scaledCanvas, 0, 0, scaledWidth, scaledHeight, destX, destY, scaledWidth, scaledHeight);\n \n // 将 canvas 转换为 Blob 并提供下载\n offscreenCanvas.toBlob((blob) => {\n const url = URL.createObjectURL(blob);\n const link = document.createElement('a');\n\n const fileName = generateUniqueFilename('edited_.png');\n const file = new File([blob], fileName, { type: 'image/png' });\n handleEditted(file)\n \n }, 'image/png');\n }\n\n function generateUniqueFilename(path) {\n // Get the current datetime and format it as a string '20240503_123456'\n const now = new Date();\n const dateStr = now.getFullYear() +\n ('0' + (now.getMonth() + 1)).slice(-2) +\n ('0' + now.getDate()).slice(-2) + '_' +\n ('0' + now.getHours()).slice(-2) +\n ('0' + now.getMinutes()).slice(-2) +\n ('0' + now.getSeconds()).slice(-2);\n \n // Generate a random UUID and convert it to a string\n const randomUuid = uuidv4().replace(/-/g, ''); // Removes dashes to match Python's uuid.hex\n \n // Create the unique prefix combining the date and UUID\n const uniquePrefix = `${dateStr}_${randomUuid}_`;\n \n // Extract the base name of the file from the path\n const baseName = path.split('/').pop(); // Assumes a '/' path delimiter\n \n // Prepend the unique prefix to the base name\n const newFilename = `${uniquePrefix}${baseName}`;\n \n return newFilename;\n }\n\n return (\n \n \n\n
\n 拖动四个角改变结果图大小,滚轮缩放原始图像,拖动图像改变位置,\n
\n 宽: {Math.round(rect.width / ratio)}px, 高: {Math.round(rect.height / ratio)}px;\n 原图在新图中坐标:( {Math.round((imageInfo.x - rect.x) / ratio)}, {Math.round((imageInfo.y - rect.y) / ratio)} )\n
\n {\n if (false) {\n alert(\"请稍等加载中\")\n } else {\n handleImageChange(e)\n }\n }}\n />\n\n
\n
\n \n
\n\n
\n \n \n \n
\n\n \n );\n}\n\nexport default ImageEditor;\n","import React, { useState } from 'react';\nimport { useRef } from 'react';\nimport ImageEditor from \"../../../utils/components/imageeditor\";\n\n\n// Inside your functional component\nfunction EditableImage({ index, param, handleInputChange, previewUrl }) {\n const [isDragging, setIsDragging] = useState(false);\n\n const fileInputRef = useRef(null);\n\n const handleDragEnter = (e) => {\n e.preventDefault();\n setIsDragging(true);\n };\n\n const handleDragLeave = (e) => {\n e.preventDefault();\n setIsDragging(false);\n };\n\n const handleDragOver = (e) => {\n e.preventDefault();\n };\n\n\n const handleDrop = (e) => {\n e.preventDefault();\n setIsDragging(false);\n const file = e.dataTransfer.files[0];\n if (file) {\n /*\n if (file.name.length > 30) {\n alert('文件名称过长,请上传文件名不超过30个字符的文件。');\n return; // Stop further execution if the file name is too long\n }*/\n const validExtensions = param.accept.split(',');\n const fileExtension = file.name.split('.').pop().toLowerCase();\n if (validExtensions==\"\" || validExtensions.includes(`.${fileExtension}`)) {\n const syntheticEvent = {\n target: {\n name: param.name,\n files: [file],\n },\n };\n handleInputChange(index, syntheticEvent);\n } else {\n alert('文件类型暂不支持,请上传如下类型文件:'+param.accept);\n }\n }\n };\n\n const handleInputChangeWithIndex = (index) => async (newValue) => {\n await handleInputChange(index, newValue);\n };\n\n const handleImageChange = (e) => {\n e.preventDefault();\n const file = e.target.files[0];\n if (file) {\n /*\n if (file.name.length > 30) {\n alert('文件名称过长,请上传文件名不超过30个字符的文件。');\n return; // Stop further execution if the file name is too long\n }*/\n handleInputChange(index, e); \n }\n };\n\n const handleCancel = () => {\n handleInputChange(index, null); \n };\n\n return (\n
{\n if (!previewUrl){\n fileInputRef.current.click()}\n }\n\n } // Trigger file input click on area click\n style={{ position: 'relative', minHeight:window.innerWidth>1000?'500px':'320px', maxWidth: '100%', maxHeight: '100%' }} // Ensure the container resizes with the image\n >\n handleImageChange(e)}\n />\n {previewUrl ? (\n //
\n <>\n 1000?480:300} canvasWidth={window.innerWidth>1000?320:200} url={previewUrl} handleChanged={handleInputChangeWithIndex(index)}/>\n \n {\n e.stopPropagation(); // Prevent click event from bubbling up to the file drop area\n fileInputRef.current.value = '';\n handleInputChange(index, null); // Call the close handler\n }}\n style={{\n position: 'absolute',\n top: '10px',\n right: '10px',\n padding: '2px',\n fontSize: '10px',\n borderRadius: '5%',\n backgroundColor: '#ccc',\n border: 'none',\n cursor: 'pointer',\n }}\n >\n X\n \n \n ) : (\n

+

\n )}\n
\n\n\n );\n}\n\nexport default EditableImage;\n","import styles from \"../../Content/Agents/Agents.module.css\";\nimport React, { useEffect, useState, useRef } from 'react';\nimport { getFileObject, saveFile,getLocalResourceURL, handleImageScale, loadImage, resizeImage,transformNodesFromFile } from \"../../../utils/utils.jsx\";\nimport FileUpload from \"./fileuploader.jsx\";\nimport ImageList from \"./imagelist.jsx\";\nimport ComboImageList from \"./comboimagelist.jsx\";\nimport { getTemplateResource } from \"../../api/DashboardService.jsx\";\nimport Cookies from \"js-cookie\";\nimport Segment from \"../../Content/Segment/Segment.jsx\"\nimport EditableImage from \"./EditableImage.jsx\";\n\nconst DynamicParameterRender = ({ params, setParamFunc, template_id = null, is_author = false}) => {\n // when all the resources are saved on the server, set the template_id. \n // when all the resources are not on the server, set the template_id as null.\n const userType = Cookies.get('userType')\n const [previewUrls, setPreviewUrls] = useState([]);\n const [selectedImages, setSelectedImages] = useState({});\n const cancelInputChangeTokenRef = useRef(null); // 使用useRef来存储取消令牌\n const [isFlex,setIsFlex] = useState(true);\n // 在useEffect外部声明AbortController\n let controller = new AbortController();\n\n useEffect(() => {\n\n // 在每次useEffect运行时创建新的AbortController实例\n controller = new AbortController();\n const signal = controller.signal;\n\n fetchUpdatedParams(params, signal).then(updatedParams => {\n if (signal.aborted) {\n throw new Error('Fetch aborted');\n }\n // Update only if necessary to avoid infinite loops\n if (JSON.stringify(params) !== JSON.stringify(updatedParams)) {\n setParamFunc && setParamFunc(updatedParams);\n }\n //console.log(updatedParams); // Use the updated parameters here\n }).catch(error => {\n console.error(\"Failed to update parameters:\", error);\n });\n \n // 在下一次useEffect运行时中止前一个fetchUpdatedParams的执行\n return () => {\n controller.abort();\n };\n }, [params]);\n\n // save the parameters. \n const handleInputChange = async (index, newValue) => {\n //首先先清理一下依赖项。\n // 这里有个bug, 就是会有多个dependent, 我们先不处理\n const newToken = {}; // 创建一个新的取消令牌\n cancelInputChangeTokenRef.current = newToken; // 直接在引用中设置新的取消令牌\n \n const dependentIndex = params.findIndex(p => p.maskSourceUrl === params[index].name);\n let newDependentValue = null\n if (dependentIndex >=0){\n //newDependentValue = {target: {name:null, files:[null, null]}}\n newDependentValue = null\n }\n const updatedParams = await Promise.all(params.map(async (param, paramIndex) => {\n try{\n if (index === paramIndex || paramIndex==dependentIndex) {\n if (param.type === 'file' || param.type === 'combo_image_selection'|| param.type === 'image_editer') {\n \n if (newValue===undefined || newValue == null) {\n // 当没有数值的时候我们就删除掉之前的内容。 // todo, 我们这样可能要删掉从网站上下载下来的内容。\n // await getFileObject(`${param.value.name}_${param.value.type}_${param.value.size}`, true);\n const { value, ...newParam } = param;\n param = newParam\n } else if (newValue.target.files[0]) {\n try {\n let file = newValue.target.files[0];\n // Create an object URL for the image file\n const objectURL = URL.createObjectURL(file);\n\n if (file.type.startsWith('image/')) {\n const img = await loadImage(objectURL);\n const { height, width, samScale } = handleImageScale(img);\n file = await resizeImage(img, width, height, file);\n saveFile(file.file, `${file.name}_${file.type}_${file.size}`);\n }else{\n file = {\n file: file,\n name: file.name,\n size: file.size,\n type: file.type,\n };\n saveFile(file.file, `${file.name}_${file.type}_${file.size}`);\n }\n // Cleanup object URL\n URL.revokeObjectURL(objectURL);\n\n param = { ...param, value: file };\n } catch (error) {\n console.error('Error processing image:', error);\n URL.revokeObjectURL(objectURL);\n throw error; // Re-throw to handle it in higher level catch or error handling logic\n }\n }\n \n return param\n\n } else if (param.type === 'mask') {\n if (paramIndex==dependentIndex) newValue = newDependentValue\n if (!newValue) {\n // 当没有数值的时候我们就删除掉之前的内容。 暂时不删除 。 保留下。\n /*\n if (Array.isArray(param.value) && param.value.length >=1){\n for (let i = 0; i < param.value.length; i++) {\n if (param.value[i]){\n const file = param.value[i];\n await getFileObject(`${file.name}_${file.type}_${file.size}`, true);\n }\n }\n }*/\n param = { ...param, value: [null,null] }; \n return param\n } else if (newValue.target.files.length > 0) {\n let data = []\n for (let i = 0; i < newValue.target.files.length; i++) {\n const file = newValue.target.files[i];\n if (file){ // sometimes we dont have the mask but we have the embeddings. \n const fileData = {\n file: file,\n name: file.name,\n size: file.size,\n type: file.type,\n };\n // Concatenate file name, type, and size to create a unique identifier\n const identifier = `${fileData.name}_${fileData.type}_${fileData.size}`;\n // Save each file with the constructed identifier\n await saveFile(fileData.file, identifier); \n data.push(fileData)\n // Optionally update param's value with the file data or other relevant data\n // This depends on how you want to use the updated param value in your application\n }else{\n if (file==\"\"){\n data.push(param.value?.[i]) // we should not set this to null. we should keep the old value. \n }else{\n data.push(null) // we should not set this to null. we should keep the old value. \n }\n\n }\n }\n param ={ ...param, value: data }; \n return param\n } else {\n return param;\n }\n } else if (param.type === 'workflow') {\n if (paramIndex==dependentIndex) {\n // 这里我们要把\n if (newValue){ // 父节点发生了变化\n try{\n newValue = await changeWorkflowToParamers(newValue.target.files[0])\n } catch(error){\n console.error('workflow is error:', error);\n newValue = []\n }\n }else{\n newValue = []\n }\n }\n param ={ ...param, value: newValue }; \n return param\n } else {\n param ={ ...param, value: newValue }; \n return param\n }\n }\n return param;\n } catch (error) {\n console.error('Error handling input change:', error);\n }\n }));\n\n if (cancelInputChangeTokenRef.current!= newToken){\n console.log('canceld input change: params are ', updatedParams)\n }\n \n setParamFunc && setParamFunc(updatedParams);\n \n };\n \n const changeWorkflowToParamers = async (file) => {\n try {\n if (!file) {\n return []\n \n }\n \n let transformedNodes = await transformNodesFromFile(file);\n console.log('Returned transformed nodes:', transformedNodes);\n return transformedNodes;\n } catch (error) {\n console.error(\"Error:\", error);\n alert(error)\n throw error; // Re-throw the error to propagate it\n }\n };\n\n const fetchFileUrl = async (param, index, signal) => {\n // when we have chosen a file. \n // Check if the fetch operation should be aborted\n if (signal.aborted) {\n throw new Error('Fetch aborted');\n }\n if ((param.type === 'file' || param.type === 'combo_image_selection' || param.type ==='image_editer') && param.value ) {\n let key = `${param.value.name}_${param.value.type}_${param.value.size}`\n let url = param.value.name ?(await getLocalResourceURL(`${param.value.name}_${param.value.type}_${param.value.size}`, template_id)).url:null;\n if (key != `${param.value.name}_${param.value.type}_${param.value.size}`){\n console.error('changed '+ key)\n throw new Error('Fetch aborted already changed. ');\n }\n // Check if the fetch operation should be aborted\n if (signal.aborted) {\n throw new Error('Fetch aborted');\n }\n // Update previewUrls with the retrieved URL\n if (url) {\n // set all the related images . \n const fileParamIndex = params.findIndex(p => p.maskSourceUrl === param.name);\n \n setPreviewUrls(prevUrls => {\n const newPreviewUrls = [...prevUrls];\n newPreviewUrls[index] = url;\n\n if (fileParamIndex>=0){\n newPreviewUrls[fileParamIndex] = `${param.value.name}_${param.value.type}_${param.value.size}` //这里当file变化时, 我们把对应的mask的url都设置成一个。\n }\n return newPreviewUrls;\n });\n }\n } else if ((param.type === 'file' || param.type === 'combo_image_selection' || param.type === 'mask' || param.type === 'image_editer') && !param.value) {\n setPreviewUrls(prevUrls => {\n const newPreviewUrls = [...prevUrls];\n newPreviewUrls[index] = null;\n // set all the related images . \n const fileParamIndex = params.findIndex(p => p.maskSourceUrl === param.name);\n if (fileParamIndex>=0){\n newPreviewUrls[fileParamIndex] = null;\n }\n return newPreviewUrls;\n });\n }\n return param // we have change the file the first time we load the template from the history. \n };\n\n const fetchUpdatedParams = async (params, signal) => {\n const updates = params.map(async (param, index) => { // Use async inside map\n // Check if the fetch operation should be aborted\n if (signal.aborted) {\n throw new Error('Fetch aborted');\n }\n if ((param.type === 'selection' || param.type === 'image_selection') && !param.value) {\n try {\n const optionsObject = JSON.parse(param.options || param.default);\n if (Array.isArray(optionsObject)) {\n return { ...param, value: optionsObject[0].value };\n }\n } catch (e) {\n const defaultValue = (param.options || param.default || '').split(',')[0].trim();\n return { ...param, value: defaultValue };\n }\n } else if (param.type === 'text' && (param.value === undefined || param.value == null)) {\n return { ...param, value: param.default };\n } else if (param.type === 'file' || param.type === 'combo_image_selection' || param.type === 'mask'|| param.type === 'image_editer') {\n return await fetchFileUrl(param, index, signal)\n }\n return param;\n });\n\n if (signal.aborted) {\n throw new Error('Fetch aborted');\n }\n return Promise.all(updates); // Wait for all promises to resolve\n };\n\n const handleInputChangeWithIndex = (index) => async (newValue) => {\n await handleInputChange(index, newValue);\n };\n \n\n // Function to handle image selection\n const handleImageSelect = (index, imageUrl) => {\n const newSelectedImages = { ...selectedImages, [index]: imageUrl };\n setSelectedImages(newSelectedImages);\n // Update the params with the selected image\n const updatedParams = params.map((param, paramIndex) => {\n if (index === paramIndex && (param.type === 'image_selection' || param.type === 'combo_image_selection')) {\n return { ...param, value: imageUrl };\n }\n return param;\n });\n\n setParamFunc && setParamFunc(updatedParams);\n };\n\n // Function to generate form inputs based on params\n const renderFormInputs = () => {\n const renderInputs = params.map((param, index) => {\n switch (param.type) {\n case 'text':\n return (\n
\n
\n \n
\n {/*
*/}\n {/* */}\n {/*
*/}\n \n
\n\n \n
\n \n Logo{\" \"}\n \n
\n\n \n
\n \n \n \n \n \n \n \n {executionid && (\n \n )}\n \n )}\n\n {username && executionid && (\n
\n
\n
\n \n 第三步,准备上架和赚钱\n
\n setNewPublish(true)}\n >\n 上架售卖!\n \n
\n\n
\n
\n {marketTemplateId &&\n\n window.open(MARKETPLACE_SITE+\"/?category=Create_Agent&targetid=\"+marketTemplateId, \"_blank\")}\n >\n 已经发布! 查看市场!\n \n\n }\n\n
\n
\n )}\n \n \n \n \n );\n};\n\nexport default WorkerAdmin;\n\n// Placeholder components for MoneySetting, WorkerList, and Settings.\n// Replace these with actual components and their implementations.\n\nconst MoneySetting = React.forwardRef((props, ref) => {\n useImperativeHandle(ref, () => ({\n init: () => {\n console.log(\"Initializing MoneySetting\");\n },\n }));\n return
MoneySetting Component
;\n});\n\nconst WorkerList = React.forwardRef((props, ref) => {\n useImperativeHandle(ref, () => ({\n initData: (id, uniqueId) => {\n console.log(\n `Initializing WorkerList with id: ${id}, uniqueId: ${uniqueId}`\n );\n },\n ttSure: (data) => {\n console.log(`ttSure in WorkerList with data: ${data}`);\n },\n }));\n return
WorkerList Component
;\n});\n\nconst Settings = React.forwardRef((props, ref) => {\n useImperativeHandle(ref, () => ({\n getDetail: () => {\n console.log(\"Getting details in Settings\");\n },\n }));\n return
Settings Component
;\n});\n","import React, { useEffect, useState, useRef } from 'react';\nimport WorkerAdmin from './WorkerAdmin.jsx';\nimport { WEB_SITE } from './pages/api/apiConfig.jsx';\n\nconst App = () => {\n const [menuPosition, setMenuPosition] = useState({ right: 10, top: 120 });\n const [showDrawer, setshowDrawer] = useState(false);\n const isDragging = useRef(false);\n const initialMousePos = useRef({ x: 0, y: 0 });\n\n // 手动实现节流函数\n const throttle = (func, delay) => {\n let lastCall = 0;\n return (...args) => {\n const now = new Date().getTime();\n if (now - lastCall < delay) return;\n lastCall = now;\n func(...args);\n };\n };\n\n const handleMouseDown = (e) => {\n if (e.button !== 0) return; // Only allow left-click\n e.stopPropagation();\n isDragging.current = true;\n initialMousePos.current = { x: e.clientX, y: e.clientY };\n };\n\n const handleMouseMove = throttle((e) => {\n if (!isDragging.current) return;\n\n setMenuPosition((prevPosition) => {\n const newRight = prevPosition.right - (e.clientX - initialMousePos.current.x);\n const newTop = prevPosition.top + (e.clientY - initialMousePos.current.y);\n initialMousePos.current = { x: e.clientX, y: e.clientY };\n return { right: newRight, top: newTop };\n });\n }, 30); // Adjust delay (in ms) as needed\n\n const handleMouseUp = () => {\n if (isDragging.current) {\n isDragging.current = false;\n console.log(\"Mouse Up: Stop Dragging\");\n }\n };\n\n useEffect(() => {\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n return () => {\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n }, []);\n\n return (\n
\n \n\n {/* Draggable Right Menu */}\n \n
\n \n
\n setshowDrawer(!showDrawer)}\n >\n {showDrawer?'收起':'变现'}\n
\n \n \n );\n};\n\nexport default App;\n","// context.js\nimport React, { createContext, useContext, useEffect } from 'react';\n\nconst GlobalContext = createContext();\n\nexport const GlobalProvider = ({ children }) => {\n\n\n return (\n \n {children}\n \n );\n};\n\nexport const useGlobal = () => useContext(GlobalContext);\n","\nimport React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport App from './App.jsx'; // The converted React component\nimport { GlobalProvider } from './context.jsx';\n\n// Mount the React app to the #admin-app-appstore element\nconst root = ReactDOM.createRoot(document.getElementById('admin-app-appstore'));\nroot.render(\n \n \n \n);\n"],"names":["l","n","p","q","r","u","v","w","y","z","A","a","B","C","D","E","b","e","F","G","H","I","J","K","L","M","d","c","k","h","g","f","m","N","O","escape","P","Q","R","S","T","U","V","W","X","reactModule","require$$0","jsxRuntimeModule","x","exports","t","schedulerModule","require$$1","ta","Qa","ab","bb","cb","db","eb","fb","gb","hb","ib","jb","kb","lb","mb","nb","ob","pb","qb","rb","sb","tb","ub","vb","wb","xb","yb","zb","Ab","Bb","Cb","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","Nb","Ob","Pb","Qb","Rb","Sb","Tb","Ub","Vb","Wb","Xb","Yb","Zb","$b","ac","bc","cc","dc","ec","fc","gc","hc","ic","jc","kc","lc","mc","oc","nc","pc","qc","rc","sc","tc","uc","vc","wc","xc","yc","zc","Ac","Bc","Cc","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","Rc","Sc","Tc","Uc","Vc","Wc","Xc","Yc","Zc","$c","ad","cd","dd","ed","fd","id","jd","ld","nd","od","pd","qd","rd","sd","td","ud","Hd","Jd","Kd","Qd","Xd","Yd","Zd","de","he","je","ke","me","ne","pe","qe","xe","ye","ze","Be","Ce","Ee","Fe","He","Je","Ke","Me","Ne","Pe","Se","Te","Ue","Ve","We","Xe","af","bf","cf","df","ef","ff","gf","hf","jf","kf","lf","mf","nf","of","pf","qf","rf","sf","tf","uf","vf","wf","na","xa","$a","ba","xf","yf","zf","Af","Bf","Cf","Df","Ef","Ff","Gf","Hf","Jf","If","Kf","Lf","Mf","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","Vf","Wf","Xf","Yf","Zf","$f","ag","bg","cg","eg","fg","gg","ig","kg","lg","mg","ng","og","pg","rg","sg","tg","ug","vg","wg","xg","yg","Ag","Bg","Cg","Dg","Eg","Fg","Gg","Ig","Lg","Mg","Ng","Og","Pg","Sg","Tg","Ug","$g","bh","eh","gh","hh","jh","mh","oh","qh","rh","th","vh","wh","xh","yh","zh","Ah","Bh","Ch","Dh","Fh","Gh","Hh","Ih","Jh","Kh","Lh","Mh","Nh","Oh","Ph","Qh","Rh","Sh","Th","Uh","Vh","Wh","Yh","Zh","$h","ai","bi","ci","di","ei","fi","gi","hi","ji","ki","li","mi","oi","pi","qi","si","ui","vi","wi","xi","yi","zi","Ai","Bi","Ci","Di","Ei","Fi","Gi","Hi","Ii","Ji","Ki","Li","Mi","Ni","Oi","Pi","Qi","Ri","Si","Ti","Ui","Vi","Wi","Xi","Yi","Zi","$i","Y","al","bl","cl","dl","el","gl","hl","il","jl","kl","ll","ml","nl","ol","pl","ql","rl","sl","tl","ul","vl","err","reactDomModule","_a","useContext","hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","props","element","items","ret","item","isBrowser","assign","target","source","converter","defaultAttributes","set","name","attributes","stringifiedAttributes","attributeName","get","cookies","jar","parts","found","api","useIsomorphicLayoutEffect","useLayoutEffect","useEffect","unmountedRef","useRef","startX","startY","deltaX","deltaY","offsetX","offsetY","direction","isVertical","isHorizontal","reset","event","touch","isElement","node","root","overflowY","opts","current","rootRef","shouldLock","onTouchMove","scrollableParent","scrollHeight","offsetHeight","scrollTop","height","status","lock","unlock","fn","handler","ms","time","cancel","timeout","lastArgs","queuedFn","throttled","args","impl","ts","queue","prevTs","count","next","values","each","noop","obj","is","isEqual","ctx","toArray","iterator","to","globals","animation","prevIndex","findIndex","other","dt","nextFrame","arr","test","index","clamp","min","max","call","color","match","s","str","int","num","input","int32Color","range","output","extrapolate","config","outputRange","inputRange","extrapolateLeft","extrapolateRight","easing","inputMin","inputMax","outputMin","outputMax","map","result","steps","progress","expanded","rounded","_extends","observer","observers","token","fallback","_value","_","p1","p2","p3","p4","keyframes","interpolators","_output$find","missingUnit","once","func","called","isMounted","update","useState","getResult","inputs","initial","committed","prevCache","cache","prev","effect","prevRef","owner","step","done","goal","animated","payload","parentNode","Component","host","hasInstance","forwardRef","givenProps","givenRef","instanceRef","ref","useCallback","deps","forceUpdate","callback","instance","observerRef","dep","usedProps","React.createElement","dependencies","components","_applyAnimatedValues","_createAnimatedStyle","style","_getComponentProps","hostConfig","displayName","prop","transform","keys","defaults","forward","out","val","Globals","ctrl","_ctrl$ref","_ctrl$ref2","mergeConfig","newConfig","defaultConfig","mass","frequency","damping","isTensionConfig","callId","defaultProps","state","actions","resolve","reject","_props$cancel","delay","onStart","pause","onResume","onPause","results","finished","cancelled","parentId","onRest","prevTo","prevPromise","preventBail","bail","bailPromise","bailIfEnded","bailSignal","bailResult","animate","arg1","arg2","skipAnimationSignal","resume","animating","cancelId","priority","idle","active","paused","changed","anim","toValues","position","elapsed","from","v0","velocity","precision","decay","restVelocity","bounceFactor","canBounce","isGrowing","isMoving","isBouncing","numSteps","springForce","dampingForce","acceleration","currVal","finalVal","_ref","isLoop","nextProps","hasToProp","hasFromProp","prevFrom","hasFromChanged","hasToChanged","hasAsyncTo","isAnimatable","immediate","nodeType","goalType","started","hasValueChanged","type","oldNode","loop","loopRet","overrides","reverse","_target$animation$typ","_target$animation","_target$defaultProps$","_target$defaultProps","flush","spring","springs","onChange","onResolve","asyncTo","promises","create","_objectWithoutPropertiesLoose","excluded","sourceKeys","children","inherited","Provider","init","React.createContext","SpringRef","_getProps","length","propsFn","useMemo","layoutId","updates","ctrls","prevLength","declareUpdates","startIndex","endIndex","Controller","context","prevContext","hasContext","isFn","TransitionPhase","_dt","oldValue","highest","parent","self","isFilterElement","scrollLeft","viewBox","names","prefix","acc","unit","transforms","xyz","deg","identity","_excluded","unstable_batchedUpdates","getContainer","container","createPortal","check","initializedRef","forceRender","destroyOnClose","initialized","events","_b","classPrefix","locale","background","opacity","rgb","setActive","outerVisible","innerVisible","setInnerVisible","v1","v2","distance","dimension","constant","bounds","Vx","Vy","Rx","Ry","X0","X1","Y0","Y1","hint","prim","res","o","string","capture","actionKey","device","action","deviceProps","eventKey","passive","captureKey","_event$currentTarget","_event$currentTarget$","valueEvent","shiftKey","altKey","metaKey","ctrlKey","chain","fns","shared","ingKey","_absoluteDelta","_m0","_m1","t0","t1","_step","movement","previousOffset","gestureIsActive","ox","oy","x0","x1","y0","y1","rubberband","absoluteDelta","memo","dx","dy","threshold","absDx","absDy","_k","_v","axis","left","right","top","bottom","displacement","factor","boundRect","targetRect","_bounds","ctrlIds","_values","_dx","_dy","_mx","_my","svx","svy","sx","sy","sdt","_vx","_vy","remove","deltaFn","bindFunction","mouse","preventScroll","buttons","filterTaps","tapsThreshold","duration","scaleBounds","angleBounds","_scaleBounds","_angleBounds","sourceSymbolKeys","resolvers","resolver","gestureKey","_config","eventOptions","window","enabled","rest","options","listeners","_options","handlers","nativeHandlers","sharedConfig","gestureConfig","Engine","nativeBindFunction","handlerProp","internalHandlers","withPassiveOption","isNative","_options$capture","_options$passive","componentConfig","bodyCls","percent","bind","swipeY","maskVisible","thisArg","toString","thing","isArray","isUndefined","isFunction","isArrayBuffer","isString","isNumber","isObject","isBoolean","prototype","isDate","kind","allOwnKeys","len","findKey","_key","caseless","assignValue","targetKey","extend","content","constructor","superConstructor","descriptors","sourceObj","destObj","filter","propFilter","merged","searchString","lastIndex","isTypedArray","TypedArray","pair","regExp","matches","hasOwnProperty","isRegExp","reducer","reducedDescriptors","descriptor","arrayOrString","delimiter","define","defaultValue","size","alphabet","stack","visit","reducedValue","setImmediateSupported","postMessageSupported","callbacks","data","message","code","request","response","utils","error","customProps","axiosError","path","dots","formData","option","metaTokens","visitor","defaultVisitor","indexes","useBlob","convertValue","exposedHelpers","build","encode","charMap","params","encoder","_encode","url","serializeFn","serializedParams","hashmarkIndex","fulfilled","rejected","URLSearchParams","FormData","Blob","platform","helpers","buildPath","isNumericKey","isLast","rawValue","parser","headers","contentType","hasJSONContentType","isObjectPayload","isFileList","_FormData","transitional","forcedJSONParsing","JSONRequested","strictJSONParsing","method","rawHeaders","parsed","line","header","tokens","tokensRE","isHeaderNameFilter","char","accessorName","methodName","arg3","valueOrRewrite","rewrite","setHeader","_header","_rewrite","lHeader","setHeaders","matcher","deleted","deleteHeader","format","normalized","targets","asStrings","first","computed","accessors","defineAccessor","mapped","headerValue","validateStatus","samplesCount","bytes","timestamps","head","tail","firstSampleTS","chunkLength","now","startedAt","bytesCount","passed","throttle","freq","timestamp","timer","invoke","listener","isDownloadStream","bytesNotified","_speedometer","loaded","total","progressBytes","rate","inRange","lengthComputable","msie","urlParsingNode","originURL","resolveURL","href","requestURL","expires","domain","secure","cookie","baseURL","relativeURL","requestedURL","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","merge","configValue","withXSRFToken","xsrfHeaderName","xsrfCookieName","auth","xsrfValue","requestData","requestHeaders","responseType","onUploadProgress","onDownloadProgress","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","onloadend","responseHeaders","timeoutErrorMessage","protocol","signals","controller","aborted","onabort","reason","unsubscribe","signal","chunk","chunkSize","pos","end","iterable","stream","reader","onProgress","onFinish","_onFinish","loadedBytes","duplexAccessed","hasContentType","body","cancelToken","withCredentials","fetchOptions","composedSignal","requestContentLength","_request","contentTypeHeader","isCredentialsSupported","isStreamResponse","responseContentLength","responseData","adapter","adapters","nameOrAdapter","rejectedReasons","reasons","VERSION","validators","validator","version","formatMessage","opt","desc","schema","allowUnknown","instanceConfig","configOrUrl","dummy","paramsSerializer","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","promise","onFulfilled","onRejected","fullPath","generateHTTPMethod","isForm","executor","resolvePromise","onfulfilled","_resolve","abort","accessToken","Cookies","require","global","j","Z","arrLen","strict","some","fun","flags","parsedParts","isNowValid","momentPropertiesLen","msg","firstTime","argLen","parentConfig","childConfig","mom","number","targetLength","forceSign","absNumber","zerosToFill","sign","padded","ordinal","array","replaceLongDateFormatTokens","formatUpper","tok","withoutSuffix","isFuture","diff","units","inputObject","normalizedInput","normalizedProp","unitsObj","regex","strictRegex","isStrict","localeData","matched","argumentForCoercion","coercedNumber","tokenLen","year","keepTime","isUTC","month","date","prioritized","prioritizedLen","indexOf","modMonth","monthName","ii","llc","cmpLenRev","shortPieces","longPieces","mixedPieces","shortP","longP","dow","doy","fwd","fwdlw","week","weekday","localWeekday","weekOffset","dayOfYear","resYear","resDayOfYear","resWeek","weekOffsetNext","ws","weekdays","weekdayName","day","minPieces","minp","shortp","longp","lowercase","kInput","pos1","pos2","hours","minutes","isLower","arr1","arr2","minl","split","oldLocale","aliasedRequire","tmpLocale","overflow","allowTime","dateFormat","timeFormat","tzFormat","isoDatesLen","isoTimesLen","yearStr","monthStr","dayStr","hourStr","minuteStr","secondStr","weekdayStr","parsedInput","weekdayProvided","weekdayActual","obsOffset","militaryOffset","numOffset","hm","parsedArray","nowValue","currentDate","expectedWeekday","yearToUse","weekYear","temp","weekdayOverflow","curWeek","skipped","stringLength","totalParsedInputLength","era","hour","meridiem","isPm","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","configfLen","dayOrDate","moments","unitHasDecimal","orderLen","years","quarters","months","weeks","days","seconds","milliseconds","array1","array2","dontConvert","lengthDiff","diffs","separator","offset","model","keepLocalTime","keepMinutes","localAdjust","tZone","diffRes","inp","base","period","dur","tmp","isAdding","updateOffset","objectTest","propertyTest","properties","property","propertyLen","arrayTest","dataTypeTest","myMoment","formats","sod","clone","localInput","inclusivity","localFrom","localTo","inputMs","asFloat","that","zoneDelta","wholeMonthDiff","anchor","anchor2","adjust","keepOffset","utc","zone","datetime","suffix","inputString","newLocaleData","dividend","divisor","startOfDate","eras","eraName","abbr","narrow","dir","abbrPieces","namePieces","narrowPieces","erasName","erasAbbr","erasNarrow","getter","weekInfo","weeksTarget","dayOfYearData","get$1","field","setter","localeSorted","shift","monthsFromDays","as","alias","clone$1","posNegDuration","thresholds","roundingFunction","limit","argWithSuffix","argThresholds","withSuffix","totalSign","ymSign","daysSign","hmsSign","NodeType","shadowRoot","cssText","rule","statement","rules","importStringified","cssStringified","childNode","meta","maskInputOptions","tagName","maskInputFn","text","actualType","canvas","getImageData","originalGetImageData","pixel","processedTagName","origin","quote1","path1","quote2","path2","path3","filePath","maybeQuote","part","doc","attributeValue","collectCharacters","regEx","chars","descriptorsStr","inParens","blockClass","blockSelector","eIndex","className","checkAncestors","maskTextClass","maskTextSelector","iframeEl","iframeLoadTimeout","win","fired","readyState","blankUrl","link","styleSheetLoadTimeout","styleSheetLoaded","mirror","needsMask","inlineStylesheet","maskTextFn","dataURLOptions","inlineImages","recordCanvas","keepIframeSrcFn","newlyAddedElement","rootId","docId","parentTagName","textContent","isStyle","isScript","needBlock","attr","stylesheet","checked","canvasDataURL","blankCanvas","blankCanvasDataURL","image","recordInlineImage","mediaAttributes","width","isCustomElement","maybeAttr","sn","slimDOMOptions","skipChild","onSerialize","onIframeLoad","onStylesheetLoad","stylesheetLoadTimeout","preserveWhiteSpace","_serializedNode","serializedNode","recordChild","bypassOptions","childN","serializedChildNode","iframeDoc","serializedIframeNode","serializedLinkNode","maskAllInputs","slimDOM","receiver","wait","previous","remaining","isRevoked","original","replacement","wrapped","_c","_d","_e","_f","newId","shadowHost","rootShadowHost","EventType2","IncrementalSource2","MouseInteractions2","PointerTypes2","CanvasContext2","mutations","adds","addedIds","addList","getNextId","ns","nextId","pushAdd","currentN","iframe","childSn","candidate","tailNode","_node","unhandledNode","attribute","diffAsStr","unchangedAsStr","textarea","cn","old","pname","newValue","newPriority","nodeId","targetId","addsSet","removes","rootEl","mutationBuffer","mutationObserverCtor","angularZoneSymbol","mousemoveCb","sampling","callbackThreshold","positions","timeBaseline","wrappedCb","totalOffset","updatePosition","evt","clientX","clientY","mouseInteractionCb","disableMap","currentPointerType","getHandler","pointerType","thisEventKey","eventName","scrollCb","scrollLeftTop","viewportResizeCb","lastH","lastW","updateDimension","inputCb","ignoreClass","ignoreSelector","userTriggeredOnInput","eventHandler","userTriggered","isChecked","cbWithDedup","lastInputValue","currentWindow","propertyDescriptor","hookProperties","recurse","childRule","sheet","styleMirror","styleId","styleSheetRuleCb","stylesheetManager","insertRule","argumentsList","deleteRule","replace","replaceSync","supportedNestedCSSRuleTypes","unmodifiedFunctions","typeKey","hostId","patchTarget","originalPropertyDescriptor","sheets","styleDeclarationCb","ignoreCSSAttributes","setProperty","removeProperty","mediaInteractionCb","currentTime","volume","muted","playbackRate","fontCb","fontMap","originalFontFace","family","fontFace","restoreHandler","param","selectionCb","collapsed","updateSelection","selection","ranges","startContainer","startOffset","endContainer","endOffset","customElementCb","hooks","mutationCb","canvasMutationCb","mutationObserver","mousemoveHandler","mouseInteractionHandler","scrollHandler","viewportResizeHandler","inputHandler","mediaInteractionHandler","styleSheetObserver","adoptedStyleSheetObserver","styleDeclarationObserver","fontObserver","selectionObserver","customElementObserver","pluginHandlers","plugin","generateIdFn","remoteId","idToRemoteMap","remoteToIdMap","idToRemoteIdMap","remoteIdToIdMap","ids","crossOriginMessageEvent","transformedEvent","iframeMirror","child","iframeElement","manager","_arguments","generator","adopt","arraybuffer","base64","ctor","contextMap","list","src","props2D","recordArgs","hookHandler","contextType","setPreserveDrawingBufferToTrue","ctxName","contextAttributes","mutation","sourcemapArg","lines","blankPrefixLength","blob","__awaiter","lookup","lastBlobMap","transparentBlobMap","getTransparentBlobFor","offscreen","arrayBuffer","worker","bitmap","transparentBase64","fps","canvasContextReset","snapshotInProgressMap","timeBetweenSnapshots","lastSnapshotTime","rafId","getCanvas","matchedCanvas","takeCanvasSnapshots","canvas2DReset","canvasWebGL1and2Reset","setLatestRAFTimestamp","valuesWithType","linkEl","adoptedStyleSheetData","styles","thisBuffer","buffers","buffer","emit","checkoutEveryNms","checkoutEveryNth","_maskInputOptions","_slimDOMOptions","packFn","mousemoveWait","recordDOM","recordCrossOriginIframes","recordAfter","collectFonts","plugins","errorHandler","inEmittingFrame","passEmitsToParent","lastFullSnapshotEvent","incrementalSnapshotCount","eventProcessor","isCheckout","buf","exceedCount","exceedTime","wrappedMutationEmit","wrappedScrollEmit","wrappedCanvasMutationEmit","wrappedAdoptedStyleSheetEmit","iframeManager","processedNodeManager","shadowDomManager","observe","tag","ArrayProto","ObjProto","slice","navigator","nativeIsArray","bound","needle","subclass","superclass","pad","mixed_val","quote","escapable","holder","gap","indent","mind","partial","at","ch","escapee","hex","uffff","white","word","object","b64","o1","o2","o3","h1","h2","h3","h4","bits","enc","tmp_arr","utftext","start","stringl","c1","ticks","UA","ua","xor","byte_array","se","formdata","arg_separator","use_val","use_key","regexS","nameEQ","ca","is_cross_subdomain","is_secure","is_cross_site","domain_override","cdomain","new_cookie_val","storage","forceCheck","supported","force_check","register_event","oldSchool","useCapture","ontype","old_handler","makeHandler","new_handler","old_handlers","fixEvent","old_result","new_result","getAllChildren","bad_whitespace","hasClass","elem","selector","getElementsBySelector","foundCount","elements","currentContextIndex","currentContext","token_match","attrName","attrOperator","attrValue","checkFunction","query","default_value","kw","kwkey","idkey","referrer","search","keyword","user_agent","vendor","opera","userAgent","browser","versionRegexs","extra_props","maxlen","guid","hostname","domain_regex","tld","onLine","optedOut","win$1","nav","hasDntOn","dntValue","optValue","getConfigValue","ignoreDnt","persistenceType","persistencePrefix","lockedCB","errorCB","pid","startTime","pollIntervalMS","timeoutMS","keyX","keyY","keyZ","reportError","waitFor","predicate","getSetY","valY","criticalSection","storageKey","flushInterval","queueEntry","succeeded","storedQueue","batchSize","batch","idsInBatch","idSet","filteredItems","removeFromStorage","existingItems","itemsToUpdate","newItems","newPayload","storageEntry","flushMS","currentBatchSize","attemptSecondaryFlush","dataForRequest","transformedItems","addPayload","itemId","batchSendCallback","removeItemsFromQueue","retryMS","halvedBatchSize","requestOptions","ev","mixpanelInstance","configVar","shouldStopBatcher","resetIdleTimeout","currentReplayId","reqParams","reqBody","onSuccess","responseBody","numEvents","replayId","batchStartTime","replayLengthMs","eventsJson","deviceId","userId","jsonStream","gzipStream","compressedBlob","mixpanel_instance","event_name","user_callback","timeout_occured","$set","$unset","$set_once","list_name","$union","$append","$remove","group_key","group_id","date_encoded_data","conf","by","$add","amount","device_id","user_id","had_persisted_distinct_id","conf_var","action_method","queue_to_params_fn","_this","queued_data","action_params","_set_callback","_add_callback","_append_callback","_set_once_callback","_union_callback","_unset_callback","_remove_callback","$append_queue","$append_item","append_callback","$remove_queue","$remove_item","remove_callback","storage_type","entry","old_cookie","old_localstorage","disabled","cookie_domain","cross_site","cross_subdomain","q_key","q_data","set_q","set_once_q","unset_q","add_q","union_q","remove_q","append_q","enqueued_obj","append_obj","queued_action","default_val","timers","_onload","utm_params","initial_utm_params","has_utm","utm_value","utm_key","variable_features","api_host","batcher_config","flush_on_unload","uuid","track_pageview_option","handleLoadedRecorder","replay_id","_utm_value","DomClass","previous_tracked_url","tracked","nativePushState","unused","nativeReplaceState","current_url","should_track","callback_function","jsc","randomized_cb","callback_string","DEFAULT_OPTIONS","body_data","use_post","use_sendBeacon","verbose_mode","lib","img","req","headerName","start_time","response_headers","script","fn_name","alias_calls","other_calls","tracking_calls","execute","calls","caller","queue_prefix","api_routes","batcher_for","attrs","batcher_configs","batcher","encoded_data","truncated_data","endpoint","should_send_immediately","send_request_options","request_enqueued_or_initiated","send_request_immediately","transport","start_timestamp","duration_in_ms","marketing_properties","property_blacklist","blacklisted_prop","group_ids","old_values","old_value","idx","groups","tracking_props","map_key","group","default_page_properties","event_properties","days_or_options","new_distinct_id","previous_distinct_id","name_tag","new_batch_size","prop_name","hook_name","property_name","is_localStorage_requested","dom_loaded_handler","inst","do_scroll_check","toplevel","bundle_loader","_src","onload","$","rnds","executionId","executionData","agentId","templateId","resourcename","fileid","agent_execution_id","price","decimals","sizes","fileId","fileName","authToken","fileUrl","anchorElement","files","run_name","zip","fileNamesCount","file","modifiedFileName","fileExtensionIndex","extension","fileBlob","zipFilename","downloadLink","filename","stateFunction","fileType","store","getRequest","putRequest","identifier","filesize","filetype","temp_id","fileR","template_id","resources","autodelete","deleteRequest","fileData","channel","onMediaClick","contentstyle","controls","autoplay","watermark","hovered","setHovered","handleMouseEnter","handleMouseLeave","getMediaTypeFromUrl","render","jsxs","Fragment","jsx","imageUrl","closeModal","containerRef","imageRef","isDragging","setIsDragging","setStartX","setStartY","startScrollX","setStartScrollX","startScrollY","setStartScrollY","scale","setScale","handleKeyDown","onMouseDown","onMouseMove","walkX","walkY","onMouseUp","onMouseLeave","onDragStart","onWheel","newScale","naturalWidth","naturalHeight","toast","originalWidth","originalHeight","aspectRatio","newWidth","newHeight","resizedFile","updatedFileData","dateStr","randomUuid","uuidv4","uniquePrefix","baseName","uploadPromises","parameter","fileDatas","logos","isTemplate","logo","resourceId","fileContent","transformedNodes","annotator","websocket","newNode","accept","handleInputChange","previewUrl","visible","verbose","setDisabled","fileInputRef","parentDiv","handleDragEnter","handleDragLeave","handleDragOver","handleDrop","validExtensions","fileExtension","syntheticEvent","handleImageChange","optionsObject","handleImageSelect","paramIndex","displayedImages","setDisplayedImages","imagesPerRow","rowMultiplier","handleMoreClick","handleLessClick","shouldShowMoreButton","shouldShowLessButton","uploadPreviewUrl","fileSelected","setFileSelected","firstOptionRef","localOptionsObject","setLocalOptionsObject","divRef","handleFileSelected","zo","nh","qs","ih","Js","vn","ar","Ks","te","Xs","Wy","Zs","In","Hy","iu","tu","eu","ru","nu","ou","uu","jo","jy","fu","ah","Xy","pu","vt","Er","Re","sh","Oe","Xo","hu","mu","Jy","xu","Wt","Ko","_n","bu","gu","Dr","Yo","uh","yu","Zo","lh","Qo","ti","Jo","fh","Yy","wu","ce","Tu","Ae","Zy","Au","ct","ee","ni","Ou","ph","re","Iu","Su","ri","On","_u","Qy","Du","Ge","Eu","Pu","tx","$u","Lr","Bu","dh","rx","Cu","Gu","Nt","Ru","Uu","ix","zu","nt","pt","lt","wt","et","Dt","_t","oe","it","be","ge","ae","$o","Ao","md","aa","bd","er","nn","tn","Ha","Yr","Kr","we","ie","Lt","Jr","Ye","ue","De","le","Mt","ve","gt","Ot","Jt","wr","hd","yd","ha","ma","ya","Ta","wa","va","Ia","Oa","Sa","Aa","Pa","xd","Td","wd","vd","Id","Od","Sd","Ad","Pd","La","Ed","Dd","Ld","$d","kd","Bd","Fd","ka","Cd","Nd","Rd","Gd","Md","Ca","Na","So","Ra","Ga","Ma","Ua","Oo","Wa","zd","ea","Ir","Io","_o","ra","Ie","sa","Le","fe","vr","st","Fo","Bo","Pt","qa","on","oa","ia","ko","la","Zr","Xa","Qr","gd","fa","pa","da","ga","_r","ja","Po","Wd","Qe","Ea","Da","$t","Eo","en","tr","Ba","Do","Lo","Fa","Ud","Ft","Va","za","Vd","ft","Za","$e","Ja","Ya","rn","Ka","Ze","clicks","tensor","modelScale","imageEmbedding","pointCoords","pointLabels","pointCoordsTensor","pointLabelsTensor","Tensor","imageSizeTensor","maskInput","hasMaskInput","createContext","this","__self__","support","isDataView","viewClasses","isArrayBufferView","normalizeName","normalizeValue","iteratorFor","Headers","consumed","fileReaderReady","readBlobAsArrayBuffer","readBlobAsText","readArrayBufferAsText","view","bufferClone","Body","decode","methods","normalizeMethod","upcased","Request","form","parseHeaders","preProcessedHeaders","Response","bodyInit","redirectStatuses","fetch","xhr","abortXhr","arrayBufferContents","headerLength","offsetBytes","hcontents","shape","dtype","nums","fetchArgs","arrayBuf","has","isFinite","isNaN","getSizeProperty","collection","sizeProperty","hash","nonEnumIdx","proto","isArguments","_keys","bufferSource","aStack","bStack","areArrays","byteLength","aCtor","bCtor","pairs","keysFunc","Ctor","toPath","_has","argCount","accumulator","iteratee","currentKey","accum","escaper","testRegexp","replaceRegexp","settings","oldSettings","interpolate","evaluate","argument","template","sourceFunc","boundFunc","callingContext","boundArgs","placeholder","callArgs","flatten","depth","hasher","memoize","address","later","_now","debounced","_args","wrapper","times","low","high","mid","predicateFind","sortedIndex","keyFinder","fromIndex","guard","contextPath","lastComputed","sample","last","rand","behavior","partition","pass","_flatten","otherArrays","isSorted","seen","arrays","argsLength","stop","sourceImageID","setClicks","mouseMove","setMouseMove","setImage","maskImg","setMaskImg","moveMaskImg","setMoveMaskImg","setTensor","setModelScale","clickMaskMap","setClickMaskMap","maskFileForUpload","setMaskFileForUpload","NpyFile","setNPYFile","sourceurl","setSourceUrl","npy","setnpy","maskname","setmaskname","lastSourceImageID","setLastSourceImageID","canvasRef","coverRef","segmentserver","setegmentserver","cancelTokenRef","cancelParamTokenRef","newToken","loadImage","loadImageTensor_refined","maskfile","npyfile","loadMaskImage","transforNpyToTensor","fitToPage","resizeObserver","entries","getArrayBufferFromFile","loadNpyTensor","samScale","handleImageScaleModel","saveNPY","npyblob","preprocessImage","tensorFile","dType","npArray","ort.Tensor","combinedImageData","combineMasks_original","mimage","imageDataToImage","srcMat","grayMat","blurredMat","ksize","kernel","morphedMat","binaryMat","maskData","generateMask","imageData","red","green","blue","alpha","handleSaveColorMask","tempCanvas","tempCtx","extractedCanvas","extractedCtx","sourceData","handleImageClick","containerRect","newClicks","getClick","newMaskImgData","handleContextMenu","clickType","cs","feeds","arrayToImageData","imageDataToCanvas","combinedData","mask","handleSaveMask","base64Image","base64ToBlob","saveAs","byteCharacters","byteNumbers","byteArray","handleResetMask","handleMouseMove","rect","imageScale","move","handleMouseOut","canvasWidth","canvasHeight","handleChanged","imageInfo","setImageInfo","imageLoaded","setImageLoaded","setRect","dragging","setDragging","dragStart","setDragStart","draggingImage","setDraggingImage","ratio","setRatio","initialImageInfo","setInitialImageInfo","handleEditted","maxScaleWidth","maxScaleHeight","newImageInfo","resetImage","drawCheckeredPattern","numRows","numCols","drawMaxDimensions","maxWidth","maxHeight","handleMouseWheel","scaleFactor","mouseX","mouseY","deltaScale","prevInfo","newX","newY","handleMouseDown","rectStart","cornerSize","prevRect","handleMouseUp","drawRect","createScaledImage","saveImage","offscreenCanvas","scaledCanvas","scaledWidth","scaledHeight","destX","destY","confirmImage","generateUniqueFilename","handleInputChangeWithIndex","setParamFunc","is_author","userType","previewUrls","setPreviewUrls","selectedImages","setSelectedImages","cancelInputChangeTokenRef","fetchUpdatedParams","updatedParams","dependentIndex","newDependentValue","newParam","objectURL","changeWorkflowToParamers","fetchFileUrl","fileParamIndex","prevUrls","newPreviewUrls","newSelectedImages","renderFormInputs","renderInputs","optionindex","optionIndex","imageIndex","renderGroups","singleLineComponents","setImageUrl","showModal","setShowModal","isimage","setIsImage","handleMediaClick","downloadFile","returnResourceIcon","shareContent","runs","runid","selectedRunStatus","selectedRunId","setSelectedRunId","filesByRun","run","relatedFiles","downloadRunFiles","run_id","runFiles","isAnyFileWithAgentId","filesRun","setOutput","setInput","interval","fetchResources","inputFiles","resource","outputFiles","ToastContainer","sj_display","onUpdateDialog","onCloseWorkerAdmin","isvisible","isDrawerVisible","setDrawerVisible","setMytoken","setAccessToken","workflowBlob","setWorkflowBlob","worflowConfig","setWorkflowConfig","setHostName","running_id","setrunning_id","executionid","setexecutionid","marketTemplateId","setMarketTemplateId","categoriesArray","setCategoriesArray","categoryDropdown","setCategoryDropdown","categoryRef","newPublish","setNewPublish","publishPrice","setPublishPrice","username","setUserName","setName","description","setDescription","category","setCategory","setLogo","updateWorkflowConfig","paramsnew","udpateLogos","logosnew","validateAgentData","logo1","initMoneySetting","json","biggestKey","handleSubmit","handleCategorySelect","handleClickOutside","handlePublishToMarketplace","exeid","closeNewPublish","handlePublishPriceChanged","label","useImperativeHandle","uniqueId","menuPosition","setMenuPosition","showDrawer","setshowDrawer","initialMousePos","lastCall","prevPosition","newRight","newTop","ReactDOM"],"mappings":"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AAQ,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,YAAY,SAAS,IAAI,YAAY,OAAO,IAAI,WAAW,CAAC,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,IAAI,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,GAAG,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,GAAG,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI,I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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,93,94,95,96,97,98,99,100,101,107,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271]} \ No newline at end of file diff --git a/appstore_panel/dist/ort-training-wasm-simd.wasm b/appstore_panel/dist/ort-training-wasm-simd.wasm new file mode 100644 index 0000000..d3eee7d Binary files /dev/null and b/appstore_panel/dist/ort-training-wasm-simd.wasm differ diff --git a/appstore_panel/dist/ort-wasm-simd-threaded.jsep.wasm b/appstore_panel/dist/ort-wasm-simd-threaded.jsep.wasm new file mode 100644 index 0000000..c8930c0 Binary files /dev/null and b/appstore_panel/dist/ort-wasm-simd-threaded.jsep.wasm differ diff --git a/appstore_panel/dist/ort-wasm-simd-threaded.wasm b/appstore_panel/dist/ort-wasm-simd-threaded.wasm new file mode 100644 index 0000000..dd89be8 Binary files /dev/null and b/appstore_panel/dist/ort-wasm-simd-threaded.wasm differ diff --git a/appstore_panel/dist/ort-wasm-simd.jsep.wasm b/appstore_panel/dist/ort-wasm-simd.jsep.wasm new file mode 100644 index 0000000..d9785c8 Binary files /dev/null and b/appstore_panel/dist/ort-wasm-simd.jsep.wasm differ diff --git a/appstore_panel/dist/ort-wasm-simd.wasm b/appstore_panel/dist/ort-wasm-simd.wasm new file mode 100644 index 0000000..9578c94 Binary files /dev/null and b/appstore_panel/dist/ort-wasm-simd.wasm differ diff --git a/appstore_panel/dist/ort-wasm-threaded.wasm b/appstore_panel/dist/ort-wasm-threaded.wasm new file mode 100644 index 0000000..b2b7bff Binary files /dev/null and b/appstore_panel/dist/ort-wasm-threaded.wasm differ diff --git a/appstore_panel/dist/ort-wasm.wasm b/appstore_panel/dist/ort-wasm.wasm new file mode 100644 index 0000000..e40dabf Binary files /dev/null and b/appstore_panel/dist/ort-wasm.wasm differ diff --git a/connector/connector.ini b/connector/connector.ini new file mode 100644 index 0000000..d78258a --- /dev/null +++ b/connector/connector.ini @@ -0,0 +1,13 @@ + +[common] +server_addr = "shangxiaobao.com" +server_port = 7001 +login_fail_exit = false + +[dcd0e81dc6a5] +type = "http" +local_port = 8188 +subdomain = "dcd0e81dc6a5" +remote_port = 0 +log_file = "/Users/a0000/Documents/GitHub/ComfyUI/custom_nodes/ComfyUI_Appstore/connector/connector.log" +log_level = "info"