@bitrix24/b24jssdk 0.2.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,15 +1,15 @@
1
- (function(P,I){typeof exports=="object"&&typeof module<"u"?I(exports):typeof define=="function"&&define.amd?define(["exports"],I):(P=typeof globalThis<"u"?globalThis:P||self,I(P.B24Js=P.B24Js||{}))})(this,function(P){"use strict";var I=(r=>(r.desktop="desktop",r.log="log",r.info="info",r.warn="warn",r.error="error",r.trace="trace",r))(I||{});const xe=new Map;xe.set("title",["%c#title#","color: #959ca4; font-style: italic; padding: 0 6px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; border-bottom: 1px solid #ccc"]),xe.set("desktop",["%cDESKTOP","color: white; font-style: italic; background-color: #29619b; padding: 0 6px; border: 1px solid #29619b"]),xe.set("log",["%cLOG","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]),xe.set("info",["%cINFO","color: #fff; font-style: italic; background-color: #6b7f96; padding: 0 6px; border: 1px solid #6b7f96"]),xe.set("warn",["%cWARNING","color: #f0a74f; font-style: italic; padding: 0 6px; border: 1px solid #f0a74f"]),xe.set("error",["%cERROR","color: white; font-style: italic; background-color: #8a3232; padding: 0 6px; border: 1px solid #8a3232"]),xe.set("trace",["%cTRACE","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]);class ye{#e;#t={desktop:!0,log:!1,info:!1,warn:!1,error:!0,trace:!0};static build(e,t=!1){const n=new ye(e);return t&&(n.enable("log"),n.enable("info"),n.enable("warn")),n}constructor(e){this.#e=e}#r(e){const t=[],n=[];if(xe.has("title")){const s=xe.get("title");s[0]&&(t.push(s[0].replace("#title#",this.#e)),n.push(s[1]||""))}if(xe.has(e)){const s=xe.get(e);s[0]&&(t.push(s[0]),n.push(s[1]||""))}return[t.join(""),...n]}setConfig(e){for(const t in e)this.#t[t]=e[t]}enable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!0,!0)}disable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!1,!0)}isEnabled(e){return this.#t[e]}desktop(...e){this.isEnabled("desktop")&&console.log(...this.#r("desktop"),...e)}log(...e){this.isEnabled("log")&&console.log(...this.#r("log"),...e)}info(...e){this.isEnabled("info")&&console.info(...this.#r("info"),...e)}warn(...e){this.isEnabled("warn")&&console.warn(...this.#r("warn"),...e)}error(...e){this.isEnabled("error")&&console.error(...this.#r("error"),...e)}trace(...e){this.isEnabled("trace")&&console.trace(...this.#r("trace"),...e)}}var Vn=(r=>(r.undefined="undefined",r.any="any",r.integer="integer",r.boolean="boolean",r.double="double",r.date="date",r.datetime="datetime",r.string="string",r.text="text",r.file="file",r.array="array",r.object="object",r.user="user",r.location="location",r.crmCategory="crm_category",r.crmStatus="crm_status",r.crmCurrency="crm_currency",r))(Vn||{});const Yo=Function.prototype.toString.call(Object);let Ko=class{getTag(e){return Object.prototype.toString.call(e)}isString(e){return e===""?!0:e?typeof e=="string"||e instanceof String:!1}isStringFilled(e){return this.isString(e)&&e!==""}isFunction(e){return e===null?!1:typeof e=="function"||e instanceof Function}isObject(e){return!!e&&(typeof e=="object"||typeof e=="function")}isObjectLike(e){return!!e&&typeof e=="object"}isPlainObject(e){if(!this.isObjectLike(e)||this.getTag(e)!=="[object Object]")return!1;const t=Object.getPrototypeOf(e);if(t===null)return!0;const n=t.hasOwnProperty("constructor")&&t.constructor;return typeof n=="function"&&Function.prototype.toString.call(n)===Yo}isJsonRpcRequest(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"method"in e&&this.isStringFilled(e.method)}isJsonRpcResponse(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"id"in e&&("result"in e||"error"in e)}isBoolean(e){return e===!0||e===!1}isNumber(e){return!Number.isNaN(e)&&typeof e=="number"}isInteger(e){return this.isNumber(e)&&e%1===0}isFloat(e){return this.isNumber(e)&&!this.isInteger(e)}isNil(e){return e==null}isArray(e){return!this.isNil(e)&&Array.isArray(e)}isArrayFilled(e){return this.isArray(e)&&e.length>0}isArrayLike(e){return!this.isNil(e)&&!this.isFunction(e)&&e.length>-1&&e.length<=Number.MAX_SAFE_INTEGER}isDate(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Date]"}isDomNode(e){return this.isObjectLike(e)&&!this.isPlainObject(e)&&"nodeType"in e}isElementNode(e){return this.isDomNode(e)&&e.nodeType===Node.ELEMENT_NODE}isTextNode(e){return this.isDomNode(e)&&e.nodeType===Node.TEXT_NODE}isMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Map]"}isSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Set]"}isWeakMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakMap]"}isWeakSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakSet]"}isPrototype(e){return(typeof(e&&e.constructor)=="function"&&e.constructor.prototype||Object.prototype)===e}isRegExp(e){return this.isObjectLike(e)&&this.getTag(e)==="[object RegExp]"}isNull(e){return e===null}isUndefined(e){return typeof e>"u"}isArrayBuffer(e){return this.isObjectLike(e)&&this.getTag(e)==="[object ArrayBuffer]"}isTypedArray(e){const t=/^\[object (?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)]$/;return this.isObjectLike(e)&&t.test(this.getTag(e))}isBlob(e){return this.isObjectLike(e)&&this.isNumber(e.size)&&this.isString(e.type)&&this.isFunction(e.slice)}isFile(e){return this.isBlob(e)&&this.isString(e.name)&&(this.isNumber(e.lastModified)||this.isObjectLike(e.lastModifiedDate))}isFormData(e){return e instanceof FormData}clone(e,t=!0){let n,s,i;if(e===null)return null;if(this.isDomNode(e))n=e.cloneNode(t);else if(typeof e=="object")if(this.isArray(e))for(n=[],s=0,i=e.length;s<i;s++)typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s];else{n={},e.constructor&&(this.isDate(e)?n=new Date(e):n=new e.constructor);for(s in e)e.hasOwnProperty(s)&&(typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s])}else n=e;return n}};const N=new Ko;function Qo(r,e){const t={};for(const n of e)t[n]=r[n];return t}function Hn(r,e){const t={...r};for(const n of e)delete t[n];return t}function Xo(r){return Array.isArray(r[0])}class ut extends Error{}class ea extends ut{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class ta extends ut{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class ra extends ut{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class vt extends ut{}class zn extends ut{constructor(e){super(`Invalid unit ${e}`)}}class we extends ut{}class tt extends ut{constructor(){super("Zone is an abstract class")}}const C="numeric",De="short",Ie="long",sr={year:C,month:C,day:C},Jn={year:C,month:De,day:C},na={year:C,month:De,day:C,weekday:De},Zn={year:C,month:Ie,day:C},Gn={year:C,month:Ie,day:C,weekday:Ie},Yn={hour:C,minute:C},Kn={hour:C,minute:C,second:C},Qn={hour:C,minute:C,second:C,timeZoneName:De},Xn={hour:C,minute:C,second:C,timeZoneName:Ie},es={hour:C,minute:C,hourCycle:"h23"},ts={hour:C,minute:C,second:C,hourCycle:"h23"},rs={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:De},ns={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:Ie},ss={year:C,month:C,day:C,hour:C,minute:C},is={year:C,month:C,day:C,hour:C,minute:C,second:C},os={year:C,month:De,day:C,hour:C,minute:C},as={year:C,month:De,day:C,hour:C,minute:C,second:C},sa={year:C,month:De,day:C,weekday:De,hour:C,minute:C},ls={year:C,month:Ie,day:C,hour:C,minute:C,timeZoneName:De},cs={year:C,month:Ie,day:C,hour:C,minute:C,second:C,timeZoneName:De},us={year:C,month:Ie,day:C,weekday:Ie,hour:C,minute:C,timeZoneName:Ie},hs={year:C,month:Ie,day:C,weekday:Ie,hour:C,minute:C,second:C,timeZoneName:Ie};class Bt{get type(){throw new tt}get name(){throw new tt}get ianaName(){return this.name}get isUniversal(){throw new tt}offsetName(e,t){throw new tt}formatOffset(e,t){throw new tt}offset(e){throw new tt}equals(e){throw new tt}get isValid(){throw new tt}}let Dr=null;class ir extends Bt{static get instance(){return Dr===null&&(Dr=new ir),Dr}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ds(e,t,n)}formatOffset(e,t){return Vt(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}}const jr=new Map;function ia(r){let e=jr.get(r);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:r,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),jr.set(r,e)),e}const oa={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function aa(r,e){const t=r.format(e).replace(/\u200E/g,""),n=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(t),[,s,i,o,a,l,u,c]=n;return[o,s,i,a,l,u,c]}function la(r,e){const t=r.formatToParts(e),n=[];for(let s=0;s<t.length;s++){const{type:i,value:o}=t[s],a=oa[i];i==="era"?n[a]=o:W(a)||(n[a]=parseInt(o,10))}return n}const Ur=new Map;class Ge extends Bt{static create(e){let t=Ur.get(e);return t===void 0&&Ur.set(e,t=new Ge(e)),t}static resetCache(){Ur.clear(),jr.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}constructor(e){super(),this.zoneName=e,this.valid=Ge.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ds(e,t,n,this.name)}formatOffset(e,t){return Vt(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const n=ia(this.name);let[s,i,o,a,l,u,c]=n.formatToParts?la(n,t):aa(n,t);a==="BC"&&(s=-Math.abs(s)+1);const h=ur({year:s,month:i,day:o,hour:l===24?0:l,minute:u,second:c,millisecond:0});let d=+t;const p=d%1e3;return d-=p>=0?p:1e3+p,(h-d)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}}let fs={};function ca(r,e={}){const t=JSON.stringify([r,e]);let n=fs[t];return n||(n=new Intl.ListFormat(r,e),fs[t]=n),n}const Br=new Map;function $r(r,e={}){const t=JSON.stringify([r,e]);let n=Br.get(t);return n===void 0&&(n=new Intl.DateTimeFormat(r,e),Br.set(t,n)),n}const Wr=new Map;function ua(r,e={}){const t=JSON.stringify([r,e]);let n=Wr.get(t);return n===void 0&&(n=new Intl.NumberFormat(r,e),Wr.set(t,n)),n}const qr=new Map;function ha(r,e={}){const{base:t,...n}=e,s=JSON.stringify([r,n]);let i=qr.get(s);return i===void 0&&(i=new Intl.RelativeTimeFormat(r,e),qr.set(s,i)),i}let $t=null;function fa(){return $t||($t=new Intl.DateTimeFormat().resolvedOptions().locale,$t)}const Vr=new Map;function ds(r){let e=Vr.get(r);return e===void 0&&(e=new Intl.DateTimeFormat(r).resolvedOptions(),Vr.set(r,e)),e}const Hr=new Map;function da(r){let e=Hr.get(r);if(!e){const t=new Intl.Locale(r);e="getWeekInfo"in t?t.getWeekInfo():t.weekInfo,"minimalDays"in e||(e={...ps,...e}),Hr.set(r,e)}return e}function pa(r){const e=r.indexOf("-x-");e!==-1&&(r=r.substring(0,e));const t=r.indexOf("-u-");if(t===-1)return[r];{let n,s;try{n=$r(r).resolvedOptions(),s=r}catch{const l=r.substring(0,t);n=$r(l).resolvedOptions(),s=l}const{numberingSystem:i,calendar:o}=n;return[s,i,o]}}function ga(r,e,t){return(t||e)&&(r.includes("-u-")||(r+="-u"),t&&(r+=`-ca-${t}`),e&&(r+=`-nu-${e}`)),r}function ma(r){const e=[];for(let t=1;t<=12;t++){const n=U.utc(2009,t,1);e.push(r(n))}return e}function ya(r){const e=[];for(let t=1;t<=7;t++){const n=U.utc(2016,11,13+t);e.push(r(n))}return e}function or(r,e,t,n){const s=r.listingMode();return s==="error"?null:s==="en"?t(e):n(e)}function wa(r){return r.numberingSystem&&r.numberingSystem!=="latn"?!1:r.numberingSystem==="latn"||!r.locale||r.locale.startsWith("en")||ds(r.locale).numberingSystem==="latn"}class ba{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:s,floor:i,...o}=n;if(!t||Object.keys(o).length>0){const a={useGrouping:!1,...n};n.padTo>0&&(a.minimumIntegerDigits=n.padTo),this.inf=ua(e,a)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}else{const t=this.floor?Math.floor(e):en(e,3);return ce(t,this.padTo)}}}class Sa{constructor(e,t,n){this.opts=n,this.originalZone=void 0;let s;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){const o=-1*(e.offset/60),a=o>=0?`Etc/GMT+${o}`:`Etc/GMT${o}`;e.offset!==0&&Ge.create(a).valid?(s=a,this.dt=e):(s="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,s=e.zone.name):(s="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const i={...this.opts};i.timeZone=i.timeZone||s,this.dtf=$r(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(t=>{if(t.type==="timeZoneName"){const n=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...t,value:n}}else return t}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class _a{constructor(e,t,n){this.opts={style:"long",...n},!t&&Ls()&&(this.rtf=ha(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):qa(t,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const ps={firstDay:1,minimalDays:4,weekend:[6,7]};class K{static fromOpts(e){return K.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,s,i=!1){const o=e||ne.defaultLocale,a=o||(i?"en-US":fa()),l=t||ne.defaultNumberingSystem,u=n||ne.defaultOutputCalendar,c=Qr(s)||ne.defaultWeekSettings;return new K(a,l,u,c,o)}static resetCache(){$t=null,Br.clear(),Wr.clear(),qr.clear(),Vr.clear(),Hr.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:s}={}){return K.create(e,t,n,s)}constructor(e,t,n,s,i){const[o,a,l]=pa(e);this.locale=o,this.numberingSystem=t||a||null,this.outputCalendar=n||l||null,this.weekSettings=s,this.intl=ga(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=wa(this)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&t?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:K.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,Qr(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return or(this,e,Bs,()=>{const n=t?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";return this.monthsCache[s][e]||(this.monthsCache[s][e]=ma(i=>this.extract(i,n,"month"))),this.monthsCache[s][e]})}weekdays(e,t=!1){return or(this,e,qs,()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},s=t?"format":"standalone";return this.weekdaysCache[s][e]||(this.weekdaysCache[s][e]=ya(i=>this.extract(i,n,"weekday"))),this.weekdaysCache[s][e]})}meridiems(){return or(this,void 0,()=>Vs,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[U.utc(2016,11,13,9),U.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return or(this,e,Hs,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[U.utc(-40,1,1),U.utc(2017,1,1)].map(n=>this.extract(n,t,"era"))),this.eraCache[e]})}extract(e,t,n){const s=this.dtFormatter(e,t),i=s.formatToParts(),o=i.find(a=>a.type.toLowerCase()===n);return o?o.value:null}numberFormatter(e={}){return new ba(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new Sa(e,this.intl,t)}relFormatter(e={}){return new _a(this.intl,this.isEnglish(),e)}listFormatter(e={}){return ca(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||ds(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Ms()?da(this.locale):ps}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let zr=null;class Ee extends Bt{static get utcInstance(){return zr===null&&(zr=new Ee(0)),zr}static instance(e){return e===0?Ee.utcInstance:new Ee(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new Ee(hr(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Vt(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Vt(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return Vt(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}}class va extends Bt{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function rt(r,e){if(W(r)||r===null)return e;if(r instanceof Bt)return r;if(Ia(r)){const t=r.toLowerCase();return t==="default"?e:t==="local"||t==="system"?ir.instance:t==="utc"||t==="gmt"?Ee.utcInstance:Ee.parseSpecifier(t)||Ge.create(r)}else return nt(r)?Ee.instance(r):typeof r=="object"&&"offset"in r&&typeof r.offset=="function"?r:new va(r)}const Jr={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},gs={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},ka=Jr.hanidec.replace(/[\[|\]]/g,"").split("");function Ea(r){let e=parseInt(r,10);if(isNaN(e)){e="";for(let t=0;t<r.length;t++){const n=r.charCodeAt(t);if(r[t].search(Jr.hanidec)!==-1)e+=ka.indexOf(r[t]);else for(const s in gs){const[i,o]=gs[s];n>=i&&n<=o&&(e+=n-i)}}return parseInt(e,10)}else return e}const Zr=new Map;function Ta(){Zr.clear()}function je({numberingSystem:r},e=""){const t=r||"latn";let n=Zr.get(t);n===void 0&&(n=new Map,Zr.set(t,n));let s=n.get(e);return s===void 0&&(s=new RegExp(`${Jr[t]}${e}`),n.set(e,s)),s}let ms=()=>Date.now(),ys="system",ws=null,bs=null,Ss=null,_s=60,vs,ks=null;class ne{static get now(){return ms}static set now(e){ms=e}static set defaultZone(e){ys=e}static get defaultZone(){return rt(ys,ir.instance)}static get defaultLocale(){return ws}static set defaultLocale(e){ws=e}static get defaultNumberingSystem(){return bs}static set defaultNumberingSystem(e){bs=e}static get defaultOutputCalendar(){return Ss}static set defaultOutputCalendar(e){Ss=e}static get defaultWeekSettings(){return ks}static set defaultWeekSettings(e){ks=Qr(e)}static get twoDigitCutoffYear(){return _s}static set twoDigitCutoffYear(e){_s=e%100}static get throwOnInvalid(){return vs}static set throwOnInvalid(e){vs=e}static resetCaches(){K.resetCache(),Ge.resetCache(),U.resetCache(),Ta()}}class Ue{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const Es=[0,31,59,90,120,151,181,212,243,273,304,334],Ts=[0,31,60,91,121,152,182,213,244,274,305,335];function Le(r,e){return new Ue("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${r}, which is invalid`)}function Gr(r,e,t){const n=new Date(Date.UTC(r,e-1,t));r<100&&r>=0&&n.setUTCFullYear(n.getUTCFullYear()-1900);const s=n.getUTCDay();return s===0?7:s}function Os(r,e,t){return t+(Wt(r)?Ts:Es)[e-1]}function As(r,e){const t=Wt(r)?Ts:Es,n=t.findIndex(i=>i<e),s=e-t[n];return{month:n+1,day:s}}function Yr(r,e){return(r-e+7)%7+1}function ar(r,e=4,t=1){const{year:n,month:s,day:i}=r,o=Os(n,s,i),a=Yr(Gr(n,s,i),t);let l=Math.floor((o-a+14-e)/7),u;return l<1?(u=n-1,l=qt(u,e,t)):l>qt(n,e,t)?(u=n+1,l=1):u=n,{weekYear:u,weekNumber:l,weekday:a,...dr(r)}}function Is(r,e=4,t=1){const{weekYear:n,weekNumber:s,weekday:i}=r,o=Yr(Gr(n,1,e),t),a=Et(n);let l=s*7+i-o-7+e,u;l<1?(u=n-1,l+=Et(u)):l>a?(u=n+1,l-=Et(n)):u=n;const{month:c,day:f}=As(u,l);return{year:u,month:c,day:f,...dr(r)}}function Kr(r){const{year:e,month:t,day:n}=r,s=Os(e,t,n);return{year:e,ordinal:s,...dr(r)}}function Cs(r){const{year:e,ordinal:t}=r,{month:n,day:s}=As(e,t);return{year:e,month:n,day:s,...dr(r)}}function Ns(r,e){if(!W(r.localWeekday)||!W(r.localWeekNumber)||!W(r.localWeekYear)){if(!W(r.weekday)||!W(r.weekNumber)||!W(r.weekYear))throw new vt("Cannot mix locale-based week fields with ISO-based week fields");return W(r.localWeekday)||(r.weekday=r.localWeekday),W(r.localWeekNumber)||(r.weekNumber=r.localWeekNumber),W(r.localWeekYear)||(r.weekYear=r.localWeekYear),delete r.localWeekday,delete r.localWeekNumber,delete r.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function Oa(r,e=4,t=1){const n=lr(r.weekYear),s=Me(r.weekNumber,1,qt(r.weekYear,e,t)),i=Me(r.weekday,1,7);return n?s?i?!1:Le("weekday",r.weekday):Le("week",r.weekNumber):Le("weekYear",r.weekYear)}function Aa(r){const e=lr(r.year),t=Me(r.ordinal,1,Et(r.year));return e?t?!1:Le("ordinal",r.ordinal):Le("year",r.year)}function Rs(r){const e=lr(r.year),t=Me(r.month,1,12),n=Me(r.day,1,cr(r.year,r.month));return e?t?n?!1:Le("day",r.day):Le("month",r.month):Le("year",r.year)}function Fs(r){const{hour:e,minute:t,second:n,millisecond:s}=r,i=Me(e,0,23)||e===24&&t===0&&n===0&&s===0,o=Me(t,0,59),a=Me(n,0,59),l=Me(s,0,999);return i?o?a?l?!1:Le("millisecond",s):Le("second",n):Le("minute",t):Le("hour",e)}function W(r){return typeof r>"u"}function nt(r){return typeof r=="number"}function lr(r){return typeof r=="number"&&r%1===0}function Ia(r){return typeof r=="string"}function Ca(r){return Object.prototype.toString.call(r)==="[object Date]"}function Ls(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Ms(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function Na(r){return Array.isArray(r)?r:[r]}function Ps(r,e,t){if(r.length!==0)return r.reduce((n,s)=>{const i=[e(s),s];return n&&t(n[0],i[0])===n[0]?n:i},null)[1]}function Ra(r,e){return e.reduce((t,n)=>(t[n]=r[n],t),{})}function kt(r,e){return Object.prototype.hasOwnProperty.call(r,e)}function Qr(r){if(r==null)return null;if(typeof r!="object")throw new we("Week settings must be an object");if(!Me(r.firstDay,1,7)||!Me(r.minimalDays,1,7)||!Array.isArray(r.weekend)||r.weekend.some(e=>!Me(e,1,7)))throw new we("Invalid week settings");return{firstDay:r.firstDay,minimalDays:r.minimalDays,weekend:Array.from(r.weekend)}}function Me(r,e,t){return lr(r)&&r>=e&&r<=t}function Fa(r,e){return r-e*Math.floor(r/e)}function ce(r,e=2){const t=r<0;let n;return t?n="-"+(""+-r).padStart(e,"0"):n=(""+r).padStart(e,"0"),n}function st(r){if(!(W(r)||r===null||r===""))return parseInt(r,10)}function ht(r){if(!(W(r)||r===null||r===""))return parseFloat(r)}function Xr(r){if(!(W(r)||r===null||r==="")){const e=parseFloat("0."+r)*1e3;return Math.floor(e)}}function en(r,e,t=!1){const n=10**e;return(t?Math.trunc:Math.round)(r*n)/n}function Wt(r){return r%4===0&&(r%100!==0||r%400===0)}function Et(r){return Wt(r)?366:365}function cr(r,e){const t=Fa(e-1,12)+1,n=r+(e-t)/12;return t===2?Wt(n)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][t-1]}function ur(r){let e=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute,r.second,r.millisecond);return r.year<100&&r.year>=0&&(e=new Date(e),e.setUTCFullYear(r.year,r.month-1,r.day)),+e}function xs(r,e,t){return-Yr(Gr(r,1,e),t)+e-1}function qt(r,e=4,t=1){const n=xs(r,e,t),s=xs(r+1,e,t);return(Et(r)-n+s)/7}function tn(r){return r>99?r:r>ne.twoDigitCutoffYear?1900+r:2e3+r}function Ds(r,e,t,n=null){const s=new Date(r),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};n&&(i.timeZone=n);const o={timeZoneName:e,...i},a=new Intl.DateTimeFormat(t,o).formatToParts(s).find(l=>l.type.toLowerCase()==="timezonename");return a?a.value:null}function hr(r,e){let t=parseInt(r,10);Number.isNaN(t)&&(t=0);const n=parseInt(e,10)||0,s=t<0||Object.is(t,-0)?-n:n;return t*60+s}function js(r){const e=Number(r);if(typeof r=="boolean"||r===""||Number.isNaN(e))throw new we(`Invalid unit value ${r}`);return e}function fr(r,e){const t={};for(const n in r)if(kt(r,n)){const s=r[n];if(s==null)continue;t[e(n)]=js(s)}return t}function Vt(r,e){const t=Math.trunc(Math.abs(r/60)),n=Math.trunc(Math.abs(r%60)),s=r>=0?"+":"-";switch(e){case"short":return`${s}${ce(t,2)}:${ce(n,2)}`;case"narrow":return`${s}${t}${n>0?`:${n}`:""}`;case"techie":return`${s}${ce(t,2)}${ce(n,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function dr(r){return Ra(r,["hour","minute","second","millisecond"])}const La=["January","February","March","April","May","June","July","August","September","October","November","December"],Us=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Ma=["J","F","M","A","M","J","J","A","S","O","N","D"];function Bs(r){switch(r){case"narrow":return[...Ma];case"short":return[...Us];case"long":return[...La];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const $s=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Ws=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Pa=["M","T","W","T","F","S","S"];function qs(r){switch(r){case"narrow":return[...Pa];case"short":return[...Ws];case"long":return[...$s];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Vs=["AM","PM"],xa=["Before Christ","Anno Domini"],Da=["BC","AD"],ja=["B","A"];function Hs(r){switch(r){case"narrow":return[...ja];case"short":return[...Da];case"long":return[...xa];default:return null}}function Ua(r){return Vs[r.hour<12?0:1]}function Ba(r,e){return qs(e)[r.weekday-1]}function $a(r,e){return Bs(e)[r.month-1]}function Wa(r,e){return Hs(e)[r.year<0?0:1]}function qa(r,e,t="always",n=!1){const s={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},i=["hours","minutes","seconds"].indexOf(r)===-1;if(t==="auto"&&i){const f=r==="days";switch(e){case 1:return f?"tomorrow":`next ${s[r][0]}`;case-1:return f?"yesterday":`last ${s[r][0]}`;case 0:return f?"today":`this ${s[r][0]}`}}const o=Object.is(e,-0)||e<0,a=Math.abs(e),l=a===1,u=s[r],c=n?l?u[1]:u[2]||u[1]:l?s[r][0]:r;return o?`${a} ${c} ago`:`in ${a} ${c}`}function zs(r,e){let t="";for(const n of r)n.literal?t+=n.val:t+=e(n.val);return t}const Va={D:sr,DD:Jn,DDD:Zn,DDDD:Gn,t:Yn,tt:Kn,ttt:Qn,tttt:Xn,T:es,TT:ts,TTT:rs,TTTT:ns,f:ss,ff:os,fff:ls,ffff:us,F:is,FF:as,FFF:cs,FFFF:hs};class be{static create(e,t={}){return new be(e,t)}static parseFormat(e){let t=null,n="",s=!1;const i=[];for(let o=0;o<e.length;o++){const a=e.charAt(o);a==="'"?(n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),t=null,n="",s=!s):s||a===t?n+=a:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=a,t=a)}return n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return Va[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0){if(this.opts.forceSimple)return ce(e,t);const n={...this.opts};return t>0&&(n.padTo=t),this.loc.numberFormatter(n).format(e)}formatDateTimeFromString(e,t){const n=this.loc.listingMode()==="en",s=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",i=(d,p)=>this.loc.extract(e,d,p),o=d=>e.isOffsetFixed&&e.offset===0&&d.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,d.format):"",a=()=>n?Ua(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(d,p)=>n?$a(e,d):i(p?{month:d}:{month:d,day:"numeric"},"month"),u=(d,p)=>n?Ba(e,d):i(p?{weekday:d}:{weekday:d,month:"long",day:"numeric"},"weekday"),c=d=>{const p=be.macroTokenToFormatOpts(d);return p?this.formatWithSystemDefault(e,p):d},f=d=>n?Wa(e,d):i({era:d},"era"),h=d=>{switch(d){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return o({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return o({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return o({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return a();case"d":return s?i({day:"numeric"},"day"):this.num(e.day);case"dd":return s?i({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return s?i({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return s?i({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return s?i({month:"numeric"},"month"):this.num(e.month);case"MM":return s?i({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return s?i({year:"numeric"},"year"):this.num(e.year);case"yy":return s?i({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return s?i({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return s?i({year:"numeric"},"year"):this.num(e.year,6);case"G":return f("short");case"GG":return f("long");case"GGGGG":return f("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return c(d)}};return zs(be.parseFormat(t),h)}formatDurationFromString(e,t){const n=l=>{switch(l[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},s=l=>u=>{const c=n(u);return c?this.num(l.get(c),u.length):u},i=be.parseFormat(t),o=i.reduce((l,{literal:u,val:c})=>u?l:l.concat(c),[]),a=e.shiftTo(...o.map(n).filter(l=>l));return zs(i,s(a))}}const Js=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function Tt(...r){const e=r.reduce((t,n)=>t+n.source,"");return RegExp(`^${e}$`)}function Ot(...r){return e=>r.reduce(([t,n,s],i)=>{const[o,a,l]=i(e,s);return[{...t,...o},a||n,l]},[{},null,1]).slice(0,2)}function At(r,...e){if(r==null)return[null,null];for(const[t,n]of e){const s=t.exec(r);if(s)return n(s)}return[null,null]}function Zs(...r){return(e,t)=>{const n={};let s;for(s=0;s<r.length;s++)n[r[s]]=st(e[t+s]);return[n,null,t+s]}}const Gs=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,Ha=`(?:${Gs.source}?(?:\\[(${Js.source})\\])?)?`,rn=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,Ys=RegExp(`${rn.source}${Ha}`),nn=RegExp(`(?:T${Ys.source})?`),za=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Ja=/(\d{4})-?W(\d\d)(?:-?(\d))?/,Za=/(\d{4})-?(\d{3})/,Ga=Zs("weekYear","weekNumber","weekDay"),Ya=Zs("year","ordinal"),Ka=/(\d{4})-(\d\d)-(\d\d)/,Ks=RegExp(`${rn.source} ?(?:${Gs.source}|(${Js.source}))?`),Qa=RegExp(`(?: ${Ks.source})?`);function It(r,e,t){const n=r[e];return W(n)?t:st(n)}function Xa(r,e){return[{year:It(r,e),month:It(r,e+1,1),day:It(r,e+2,1)},null,e+3]}function Ct(r,e){return[{hours:It(r,e,0),minutes:It(r,e+1,0),seconds:It(r,e+2,0),milliseconds:Xr(r[e+3])},null,e+4]}function Ht(r,e){const t=!r[e]&&!r[e+1],n=hr(r[e+1],r[e+2]),s=t?null:Ee.instance(n);return[{},s,e+3]}function zt(r,e){const t=r[e]?Ge.create(r[e]):null;return[{},t,e+1]}const el=RegExp(`^T?${rn.source}$`),tl=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function rl(r){const[e,t,n,s,i,o,a,l,u]=r,c=e[0]==="-",f=l&&l[0]==="-",h=(d,p=!1)=>d!==void 0&&(p||d&&c)?-d:d;return[{years:h(ht(t)),months:h(ht(n)),weeks:h(ht(s)),days:h(ht(i)),hours:h(ht(o)),minutes:h(ht(a)),seconds:h(ht(l),l==="-0"),milliseconds:h(Xr(u),f)}]}const nl={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function sn(r,e,t,n,s,i,o){const a={year:e.length===2?tn(st(e)):st(e),month:Us.indexOf(t)+1,day:st(n),hour:st(s),minute:st(i)};return o&&(a.second=st(o)),r&&(a.weekday=r.length>3?$s.indexOf(r)+1:Ws.indexOf(r)+1),a}const sl=/^(?:(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\d)(\d\d)))$/;function il(r){const[,e,t,n,s,i,o,a,l,u,c,f]=r,h=sn(e,s,n,t,i,o,a);let d;return l?d=nl[l]:u?d=0:d=hr(c,f),[h,new Ee(d)]}function ol(r){return r.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const al=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,ll=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,cl=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Qs(r){const[,e,t,n,s,i,o,a]=r;return[sn(e,s,n,t,i,o,a),Ee.utcInstance]}function ul(r){const[,e,t,n,s,i,o,a]=r;return[sn(e,a,t,n,s,i,o),Ee.utcInstance]}const hl=Tt(za,nn),fl=Tt(Ja,nn),dl=Tt(Za,nn),pl=Tt(Ys),Xs=Ot(Xa,Ct,Ht,zt),gl=Ot(Ga,Ct,Ht,zt),ml=Ot(Ya,Ct,Ht,zt),yl=Ot(Ct,Ht,zt);function wl(r){return At(r,[hl,Xs],[fl,gl],[dl,ml],[pl,yl])}function bl(r){return At(ol(r),[sl,il])}function Sl(r){return At(r,[al,Qs],[ll,Qs],[cl,ul])}function _l(r){return At(r,[tl,rl])}const vl=Ot(Ct);function kl(r){return At(r,[el,vl])}const El=Tt(Ka,Qa),Tl=Tt(Ks),Ol=Ot(Ct,Ht,zt);function Al(r){return At(r,[El,Xs],[Tl,Ol])}const ei="Invalid Duration",ti={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},Il={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...ti},Pe=146097/400,Nt=146097/4800,Cl={years:{quarters:4,months:12,weeks:Pe/7,days:Pe,hours:Pe*24,minutes:Pe*24*60,seconds:Pe*24*60*60,milliseconds:Pe*24*60*60*1e3},quarters:{months:3,weeks:Pe/28,days:Pe/4,hours:Pe*24/4,minutes:Pe*24*60/4,seconds:Pe*24*60*60/4,milliseconds:Pe*24*60*60*1e3/4},months:{weeks:Nt/7,days:Nt,hours:Nt*24,minutes:Nt*24*60,seconds:Nt*24*60*60,milliseconds:Nt*24*60*60*1e3},...ti},ft=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Nl=ft.slice(0).reverse();function it(r,e,t=!1){const n={values:t?e.values:{...r.values,...e.values||{}},loc:r.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||r.conversionAccuracy,matrix:e.matrix||r.matrix};return new Z(n)}function ri(r,e){let t=e.milliseconds??0;for(const n of Nl.slice(1))e[n]&&(t+=e[n]*r[n].milliseconds);return t}function ni(r,e){const t=ri(r,e)<0?-1:1;ft.reduceRight((n,s)=>{if(W(e[s]))return n;if(n){const i=e[n]*t,o=r[s][n],a=Math.floor(i/o);e[s]+=a*t,e[n]-=a*o*t}return s},null),ft.reduce((n,s)=>{if(W(e[s]))return n;if(n){const i=e[n]%1;e[n]-=i,e[s]+=i*r[n][s]}return s},null)}function Rl(r){const e={};for(const[t,n]of Object.entries(r))n!==0&&(e[t]=n);return e}class Z{constructor(e){const t=e.conversionAccuracy==="longterm"||!1;let n=t?Cl:Il;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||K.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(e,t){return Z.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(e==null||typeof e!="object")throw new we(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new Z({values:fr(e,Z.normalizeUnit),loc:K.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(nt(e))return Z.fromMillis(e);if(Z.isDuration(e))return e;if(typeof e=="object")return Z.fromObject(e);throw new we(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[n]=_l(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[n]=kl(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the Duration is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new ra(n);return new Z({invalid:n})}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!t)throw new zn(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:t.round!==!1&&t.floor!==!1};return this.isValid?be.create(this.loc,n).formatDurationFromString(this,e):ei}toHuman(e={}){if(!this.isValid)return ei;const t=ft.map(n=>{const s=this.values[n];return W(s)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(s)}).filter(n=>n);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(t)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=en(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},U.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?ri(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e),n={};for(const s of ft)(kt(t.values,s)||kt(this.values,s))&&(n[s]=t.get(s)+this.get(s));return it(this,{values:n},!0)}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=js(e(this.values[n],n));return it(this,{values:t},!0)}get(e){return this[Z.normalizeUnit(e)]}set(e){if(!this.isValid)return this;const t={...this.values,...fr(e,Z.normalizeUnit)};return it(this,{values:t})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:s}={}){const o={loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:s,conversionAccuracy:n};return it(this,o)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return ni(this.matrix,e),it(this,{values:e},!0)}rescale(){if(!this.isValid)return this;const e=Rl(this.normalize().shiftToAll().toObject());return it(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(o=>Z.normalizeUnit(o));const t={},n={},s=this.toObject();let i;for(const o of ft)if(e.indexOf(o)>=0){i=o;let a=0;for(const u in n)a+=this.matrix[u][o]*n[u],n[u]=0;nt(s[o])&&(a+=s[o]);const l=Math.trunc(a);t[o]=l,n[o]=(a*1e3-l*1e3)/1e3}else nt(s[o])&&(n[o]=s[o]);for(const o in n)n[o]!==0&&(t[i]+=o===i?n[o]:n[o]/this.matrix[i][o]);return ni(this.matrix,t),it(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=this.values[t]===0?0:-this.values[t];return it(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function t(n,s){return n===void 0||n===0?s===void 0||s===0:n===s}for(const n of ft)if(!t(this.values[n],e.values[n]))return!1;return!0}}const Rt="Invalid Interval";function Fl(r,e){return!r||!r.isValid?se.invalid("missing or invalid start"):!e||!e.isValid?se.invalid("missing or invalid end"):e<r?se.invalid("end before start",`The end of an interval must be after its start, but you had start=${r.toISO()} and end=${e.toISO()}`):null}class se{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the Interval is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new ta(n);return new se({invalid:n})}static fromDateTimes(e,t){const n=Gt(e),s=Gt(t),i=Fl(n,s);return i??new se({start:n,end:s})}static after(e,t){const n=Z.fromDurationLike(t),s=Gt(e);return se.fromDateTimes(s,s.plus(n))}static before(e,t){const n=Z.fromDurationLike(t),s=Gt(e);return se.fromDateTimes(s.minus(n),s)}static fromISO(e,t){const[n,s]=(e||"").split("/",2);if(n&&s){let i,o;try{i=U.fromISO(n,t),o=i.isValid}catch{o=!1}let a,l;try{a=U.fromISO(s,t),l=a.isValid}catch{l=!1}if(o&&l)return se.fromDateTimes(i,a);if(o){const u=Z.fromISO(s,t);if(u.isValid)return se.after(i,u)}else if(l){const u=Z.fromISO(n,t);if(u.isValid)return se.before(a,u)}}return se.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let s;return t?.useLocaleWeeks?s=this.end.reconfigure({locale:n.locale}):s=this.end,s=s.startOf(e,t),Math.floor(s.diff(n,e).get(e))+(s.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:t}={}){return this.isValid?se.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(Gt).filter(o=>this.contains(o)).sort((o,a)=>o.toMillis()-a.toMillis()),n=[];let{s}=this,i=0;for(;s<this.e;){const o=t[i]||this.e,a=+o>+this.e?this.e:o;n.push(se.fromDateTimes(s,a)),s=a,i+=1}return n}splitBy(e){const t=Z.fromDurationLike(e);if(!this.isValid||!t.isValid||t.as("milliseconds")===0)return[];let{s:n}=this,s=1,i;const o=[];for(;n<this.e;){const a=this.start.plus(t.mapUnits(l=>l*s));i=+a>+this.e?this.e:a,o.push(se.fromDateTimes(n,i)),n=i,s+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;return t>=n?null:se.fromDateTimes(t,n)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return se.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort((s,i)=>s.s-i.s).reduce(([s,i],o)=>i?i.overlaps(o)||i.abutsStart(o)?[s,i.union(o)]:[s.concat([i]),o]:[s,o],[[],null]);return n&&t.push(n),t}static xor(e){let t=null,n=0;const s=[],i=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),o=Array.prototype.concat(...i),a=o.sort((l,u)=>l.time-u.time);for(const l of a)n+=l.type==="s"?1:-1,n===1?t=l.time:(t&&+t!=+l.time&&s.push(se.fromDateTimes(t,l.time)),t=null);return se.merge(s)}difference(...e){return se.xor([this].concat(e)).map(t=>this.intersection(t)).filter(t=>t&&!t.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:Rt}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=sr,t={}){return this.isValid?be.create(this.s.loc.clone(t),e).formatInterval(this):Rt}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:Rt}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:Rt}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:Rt}toFormat(e,{separator:t=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:Rt}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):Z.invalid(this.invalidReason)}mapEndpoints(e){return se.fromDateTimes(e(this.s),e(this.e))}}class pr{static hasDST(e=ne.defaultZone){const t=U.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return Ge.isValidZone(e)}static normalizeZone(e){return rt(e,ne.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return K.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return K.create(t,null,"gregory").eras(e)}static features(){return{relative:Ls(),localeWeek:Ms()}}}function si(r,e){const t=s=>s.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),n=t(e)-t(r);return Math.floor(Z.fromMillis(n).as("days"))}function Ll(r,e,t){const n=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{const c=si(l,u);return(c-c%7)/7}],["days",si]],s={},i=r;let o,a;for(const[l,u]of n)t.indexOf(l)>=0&&(o=l,s[l]=u(r,e),a=i.plus(s),a>e?(s[l]--,r=i.plus(s),r>e&&(a=r,s[l]--,r=i.plus(s))):r=a);return[r,s,a,o]}function Ml(r,e,t,n){let[s,i,o,a]=Ll(r,e,t);const l=e-s,u=t.filter(f=>["hours","minutes","seconds","milliseconds"].indexOf(f)>=0);u.length===0&&(o<e&&(o=s.plus({[a]:1})),o!==s&&(i[a]=(i[a]||0)+l/(o-s)));const c=Z.fromObject(i,n);return u.length>0?Z.fromMillis(l,n).shiftTo(...u).plus(c):c}const Pl="missing Intl.DateTimeFormat.formatToParts support";function Y(r,e=t=>t){return{regex:r,deser:([t])=>e(Ea(t))}}const ii="[ \xA0]",oi=new RegExp(ii,"g");function xl(r){return r.replace(/\./g,"\\.?").replace(oi,ii)}function ai(r){return r.replace(/\./g,"").replace(oi," ").toLowerCase()}function Be(r,e){return r===null?null:{regex:RegExp(r.map(xl).join("|")),deser:([t])=>r.findIndex(n=>ai(t)===ai(n))+e}}function li(r,e){return{regex:r,deser:([,t,n])=>hr(t,n),groups:e}}function gr(r){return{regex:r,deser:([e])=>e}}function Dl(r){return r.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function jl(r,e){const t=je(e),n=je(e,"{2}"),s=je(e,"{3}"),i=je(e,"{4}"),o=je(e,"{6}"),a=je(e,"{1,2}"),l=je(e,"{1,3}"),u=je(e,"{1,6}"),c=je(e,"{1,9}"),f=je(e,"{2,4}"),h=je(e,"{4,6}"),d=m=>({regex:RegExp(Dl(m.val)),deser:([y])=>y,literal:!0}),g=(m=>{if(r.literal)return d(m);switch(m.val){case"G":return Be(e.eras("short"),0);case"GG":return Be(e.eras("long"),0);case"y":return Y(u);case"yy":return Y(f,tn);case"yyyy":return Y(i);case"yyyyy":return Y(h);case"yyyyyy":return Y(o);case"M":return Y(a);case"MM":return Y(n);case"MMM":return Be(e.months("short",!0),1);case"MMMM":return Be(e.months("long",!0),1);case"L":return Y(a);case"LL":return Y(n);case"LLL":return Be(e.months("short",!1),1);case"LLLL":return Be(e.months("long",!1),1);case"d":return Y(a);case"dd":return Y(n);case"o":return Y(l);case"ooo":return Y(s);case"HH":return Y(n);case"H":return Y(a);case"hh":return Y(n);case"h":return Y(a);case"mm":return Y(n);case"m":return Y(a);case"q":return Y(a);case"qq":return Y(n);case"s":return Y(a);case"ss":return Y(n);case"S":return Y(l);case"SSS":return Y(s);case"u":return gr(c);case"uu":return gr(a);case"uuu":return Y(t);case"a":return Be(e.meridiems(),0);case"kkkk":return Y(i);case"kk":return Y(f,tn);case"W":return Y(a);case"WW":return Y(n);case"E":case"c":return Y(t);case"EEE":return Be(e.weekdays("short",!1),1);case"EEEE":return Be(e.weekdays("long",!1),1);case"ccc":return Be(e.weekdays("short",!0),1);case"cccc":return Be(e.weekdays("long",!0),1);case"Z":case"ZZ":return li(new RegExp(`([+-]${a.source})(?::(${n.source}))?`),2);case"ZZZ":return li(new RegExp(`([+-]${a.source})(${n.source})?`),2);case"z":return gr(/[a-z_+-/]{1,256}?/i);case" ":return gr(/[^\S\n\r]/);default:return d(m)}})(r)||{invalidReason:Pl};return g.token=r,g}const Ul={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Bl(r,e,t){const{type:n,value:s}=r;if(n==="literal"){const l=/^\s+$/.test(s);return{literal:!l,val:l?" ":s}}const i=e[n];let o=n;n==="hour"&&(e.hour12!=null?o=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?o="hour12":o="hour24":o=t.hour12?"hour12":"hour24");let a=Ul[o];if(typeof a=="object"&&(a=a[i]),a)return{literal:!1,val:a}}function $l(r){return[`^${r.map(t=>t.regex).reduce((t,n)=>`${t}(${n.source})`,"")}$`,r]}function Wl(r,e,t){const n=r.match(e);if(n){const s={};let i=1;for(const o in t)if(kt(t,o)){const a=t[o],l=a.groups?a.groups+1:1;!a.literal&&a.token&&(s[a.token.val[0]]=a.deser(n.slice(i,i+l))),i+=l}return[n,s]}else return[n,{}]}function ql(r){const e=i=>{switch(i){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let t=null,n;return W(r.z)||(t=Ge.create(r.z)),W(r.Z)||(t||(t=new Ee(r.Z)),n=r.Z),W(r.q)||(r.M=(r.q-1)*3+1),W(r.h)||(r.h<12&&r.a===1?r.h+=12:r.h===12&&r.a===0&&(r.h=0)),r.G===0&&r.y&&(r.y=-r.y),W(r.u)||(r.S=Xr(r.u)),[Object.keys(r).reduce((i,o)=>{const a=e(o);return a&&(i[a]=r[o]),i},{}),t,n]}let on=null;function Vl(){return on||(on=U.fromMillis(1555555555555)),on}function Hl(r,e){if(r.literal)return r;const t=be.macroTokenToFormatOpts(r.val),n=fi(t,e);return n==null||n.includes(void 0)?r:n}function ci(r,e){return Array.prototype.concat(...r.map(t=>Hl(t,e)))}class ui{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=ci(be.parseFormat(t),e),this.units=this.tokens.map(n=>jl(n,e)),this.disqualifyingUnit=this.units.find(n=>n.invalidReason),!this.disqualifyingUnit){const[n,s]=$l(this.units);this.regex=RegExp(n,"i"),this.handlers=s}}explainFromTokens(e){if(this.isValid){const[t,n]=Wl(e,this.regex,this.handlers),[s,i,o]=n?ql(n):[null,null,void 0];if(kt(n,"a")&&kt(n,"H"))throw new vt("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:s,zone:i,specificOffset:o}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function hi(r,e,t){return new ui(r,t).explainFromTokens(e)}function zl(r,e,t){const{result:n,zone:s,specificOffset:i,invalidReason:o}=hi(r,e,t);return[n,s,i,o]}function fi(r,e){if(!r)return null;const n=be.create(e,r).dtFormatter(Vl()),s=n.formatToParts(),i=n.resolvedOptions();return s.map(o=>Bl(o,r,i))}const an="Invalid DateTime",Jl=864e13;function Jt(r){return new Ue("unsupported zone",`the zone "${r.name}" is not supported`)}function ln(r){return r.weekData===null&&(r.weekData=ar(r.c)),r.weekData}function cn(r){return r.localWeekData===null&&(r.localWeekData=ar(r.c,r.loc.getMinDaysInFirstWeek(),r.loc.getStartOfWeek())),r.localWeekData}function dt(r,e){const t={ts:r.ts,zone:r.zone,c:r.c,o:r.o,loc:r.loc,invalid:r.invalid};return new U({...t,...e,old:t})}function di(r,e,t){let n=r-e*60*1e3;const s=t.offset(n);if(e===s)return[n,e];n-=(s-e)*60*1e3;const i=t.offset(n);return s===i?[n,s]:[r-Math.min(s,i)*60*1e3,Math.max(s,i)]}function mr(r,e){r+=e*60*1e3;const t=new Date(r);return{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate(),hour:t.getUTCHours(),minute:t.getUTCMinutes(),second:t.getUTCSeconds(),millisecond:t.getUTCMilliseconds()}}function yr(r,e,t){return di(ur(r),e,t)}function pi(r,e){const t=r.o,n=r.c.year+Math.trunc(e.years),s=r.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,i={...r.c,year:n,month:s,day:Math.min(r.c.day,cr(n,s))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},o=Z.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),a=ur(i);let[l,u]=di(a,t,r.zone);return o!==0&&(l+=o,u=r.zone.offset(l)),{ts:l,o:u}}function Ft(r,e,t,n,s,i){const{setZone:o,zone:a}=t;if(r&&Object.keys(r).length!==0||e){const l=e||a,u=U.fromObject(r,{...t,zone:l,specificOffset:i});return o?u:u.setZone(a)}else return U.invalid(new Ue("unparsable",`the input "${s}" can't be parsed as ${n}`))}function wr(r,e,t=!0){return r.isValid?be.create(K.create("en-US"),{allowZ:t,forceSimple:!0}).formatDateTimeFromString(r,e):null}function un(r,e){const t=r.c.year>9999||r.c.year<0;let n="";return t&&r.c.year>=0&&(n+="+"),n+=ce(r.c.year,t?6:4),e?(n+="-",n+=ce(r.c.month),n+="-",n+=ce(r.c.day)):(n+=ce(r.c.month),n+=ce(r.c.day)),n}function gi(r,e,t,n,s,i){let o=ce(r.c.hour);return e?(o+=":",o+=ce(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=":")):o+=ce(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=ce(r.c.second),(r.c.millisecond!==0||!n)&&(o+=".",o+=ce(r.c.millisecond,3))),s&&(r.isOffsetFixed&&r.offset===0&&!i?o+="Z":r.o<0?(o+="-",o+=ce(Math.trunc(-r.o/60)),o+=":",o+=ce(Math.trunc(-r.o%60))):(o+="+",o+=ce(Math.trunc(r.o/60)),o+=":",o+=ce(Math.trunc(r.o%60)))),i&&(o+="["+r.zone.ianaName+"]"),o}const mi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Zl={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Gl={ordinal:1,hour:0,minute:0,second:0,millisecond:0},yi=["year","month","day","hour","minute","second","millisecond"],Yl=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Kl=["year","ordinal","hour","minute","second","millisecond"];function Ql(r){const e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[r.toLowerCase()];if(!e)throw new zn(r);return e}function wi(r){switch(r.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return Ql(r)}}function Xl(r){if(Zt===void 0&&(Zt=ne.now()),r.type!=="iana")return r.offset(Zt);const e=r.name;let t=hn.get(e);return t===void 0&&(t=r.offset(Zt),hn.set(e,t)),t}function bi(r,e){const t=rt(e.zone,ne.defaultZone);if(!t.isValid)return U.invalid(Jt(t));const n=K.fromObject(e);let s,i;if(W(r.year))s=ne.now();else{for(const l of yi)W(r[l])&&(r[l]=mi[l]);const o=Rs(r)||Fs(r);if(o)return U.invalid(o);const a=Xl(t);[s,i]=yr(r,a,t)}return new U({ts:s,zone:t,loc:n,o:i})}function Si(r,e,t){const n=W(t.round)?!0:t.round,s=(o,a)=>(o=en(o,n||t.calendary?0:2,!0),e.loc.clone(t).relFormatter(t).format(o,a)),i=o=>t.calendary?e.hasSame(r,o)?0:e.startOf(o).diff(r.startOf(o),o).get(o):e.diff(r,o).get(o);if(t.unit)return s(i(t.unit),t.unit);for(const o of t.units){const a=i(o);if(Math.abs(a)>=1)return s(a,o)}return s(r>e?-0:0,t.units[t.units.length-1])}function _i(r){let e={},t;return r.length>0&&typeof r[r.length-1]=="object"?(e=r[r.length-1],t=Array.from(r).slice(0,r.length-1)):t=Array.from(r),[e,t]}let Zt;const hn=new Map;class U{constructor(e){const t=e.zone||ne.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new Ue("invalid input"):null)||(t.isValid?null:Jt(t));this.ts=W(e.ts)?ne.now():e.ts;let s=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[s,i]=[e.old.c,e.old.o];else{const a=nt(e.o)&&!e.old?e.o:t.offset(this.ts);s=mr(this.ts,a),n=Number.isNaN(s.year)?new Ue("invalid input"):null,s=n?null:s,i=n?null:a}this._zone=t,this.loc=e.loc||K.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=s,this.o=i,this.isLuxonDateTime=!0}static now(){return new U({})}static local(){const[e,t]=_i(arguments),[n,s,i,o,a,l,u]=t;return bi({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static utc(){const[e,t]=_i(arguments),[n,s,i,o,a,l,u]=t;return e.zone=Ee.utcInstance,bi({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static fromJSDate(e,t={}){const n=Ca(e)?e.valueOf():NaN;if(Number.isNaN(n))return U.invalid("invalid input");const s=rt(t.zone,ne.defaultZone);return s.isValid?new U({ts:n,zone:s,loc:K.fromObject(t)}):U.invalid(Jt(s))}static fromMillis(e,t={}){if(nt(e))return e<-864e13||e>Jl?U.invalid("Timestamp out of range"):new U({ts:e,zone:rt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new we(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(nt(e))return new U({ts:e*1e3,zone:rt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new we("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const n=rt(t.zone,ne.defaultZone);if(!n.isValid)return U.invalid(Jt(n));const s=K.fromObject(t),i=fr(e,wi),{minDaysInFirstWeek:o,startOfWeek:a}=Ns(i,s),l=ne.now(),u=W(t.specificOffset)?n.offset(l):t.specificOffset,c=!W(i.ordinal),f=!W(i.year),h=!W(i.month)||!W(i.day),d=f||h,p=i.weekYear||i.weekNumber;if((d||c)&&p)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(h&&c)throw new vt("Can't mix ordinal dates with month/day");const g=p||i.weekday&&!d;let m,y,w=mr(l,u);g?(m=Yl,y=Zl,w=ar(w,o,a)):c?(m=Kl,y=Gl,w=Kr(w)):(m=yi,y=mi);let _=!1;for(const x of m){const J=i[x];W(J)?_?i[x]=y[x]:i[x]=w[x]:_=!0}const b=g?Oa(i,o,a):c?Aa(i):Rs(i),k=b||Fs(i);if(k)return U.invalid(k);const S=g?Is(i,o,a):c?Cs(i):i,[E,R]=yr(S,u,n),D=new U({ts:E,zone:n,o:R,loc:s});return i.weekday&&d&&e.weekday!==D.weekday?U.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${D.toISO()}`):D.isValid?D:U.invalid(D.invalid)}static fromISO(e,t={}){const[n,s]=wl(e);return Ft(n,s,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,s]=bl(e);return Ft(n,s,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,s]=Sl(e);return Ft(n,s,t,"HTTP",t)}static fromFormat(e,t,n={}){if(W(e)||W(t))throw new we("fromFormat requires an input string and a format");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0}),[a,l,u,c]=zl(o,e,t);return c?U.invalid(c):Ft(a,l,n,`format ${t}`,e,u)}static fromString(e,t,n={}){return U.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,s]=Al(e);return Ft(n,s,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the DateTime is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new ea(n);return new U({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=fi(e,K.fromObject(t));return n?n.map(s=>s?s.val:null).join(""):null}static expandFormat(e,t={}){return ci(be.parseFormat(e),K.fromObject(t)).map(s=>s.val).join("")}static resetCache(){Zt=void 0,hn.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?ln(this).weekYear:NaN}get weekNumber(){return this.isValid?ln(this).weekNumber:NaN}get weekday(){return this.isValid?ln(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?cn(this).weekday:NaN}get localWeekNumber(){return this.isValid?cn(this).weekNumber:NaN}get localWeekYear(){return this.isValid?cn(this).weekYear:NaN}get ordinal(){return this.isValid?Kr(this.c).ordinal:NaN}get monthShort(){return this.isValid?pr.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?pr.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?pr.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?pr.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,n=ur(this.c),s=this.zone.offset(n-e),i=this.zone.offset(n+e),o=this.zone.offset(n-s*t),a=this.zone.offset(n-i*t);if(o===a)return[this];const l=n-o*t,u=n-a*t,c=mr(l,o),f=mr(u,a);return c.hour===f.hour&&c.minute===f.minute&&c.second===f.second&&c.millisecond===f.millisecond?[dt(this,{ts:l}),dt(this,{ts:u})]:[this]}get isInLeapYear(){return Wt(this.year)}get daysInMonth(){return cr(this.year,this.month)}get daysInYear(){return this.isValid?Et(this.year):NaN}get weeksInWeekYear(){return this.isValid?qt(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?qt(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:s}=be.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:s}}toUTC(e=0,t={}){return this.setZone(Ee.instance(e),t)}toLocal(){return this.setZone(ne.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:n=!1}={}){if(e=rt(e,ne.defaultZone),e.equals(this.zone))return this;if(e.isValid){let s=this.ts;if(t||n){const i=e.offset(this.ts),o=this.toObject();[s]=yr(o,i,e)}return dt(this,{ts:s,zone:e})}else return U.invalid(Jt(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){const s=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n});return dt(this,{loc:s})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=fr(e,wi),{minDaysInFirstWeek:n,startOfWeek:s}=Ns(t,this.loc),i=!W(t.weekYear)||!W(t.weekNumber)||!W(t.weekday),o=!W(t.ordinal),a=!W(t.year),l=!W(t.month)||!W(t.day),u=a||l,c=t.weekYear||t.weekNumber;if((u||o)&&c)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&o)throw new vt("Can't mix ordinal dates with month/day");let f;i?f=Is({...ar(this.c,n,s),...t},n,s):W(t.ordinal)?(f={...this.toObject(),...t},W(t.day)&&(f.day=Math.min(cr(f.year,f.month),f.day))):f=Cs({...Kr(this.c),...t});const[h,d]=yr(f,this.o,this.zone);return dt(this,{ts:h,o:d})}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return dt(this,pi(this,t))}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e).negate();return dt(this,pi(this,t))}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const n={},s=Z.normalizeUnit(e);switch(s){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(s==="weeks")if(t){const i=this.loc.getStartOfWeek(),{weekday:o}=this;o<i&&(n.weekNumber=this.weekNumber-1),n.weekday=i}else n.weekday=1;if(s==="quarters"){const i=Math.ceil(this.month/3);n.month=(i-1)*3+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?be.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):an}toLocaleString(e=sr,t={}){return this.isValid?be.create(this.loc.clone(t),e).formatDateTime(this):an}toLocaleParts(e={}){return this.isValid?be.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:s=!0,extendedZone:i=!1}={}){if(!this.isValid)return null;const o=e==="extended";let a=un(this,o);return a+="T",a+=gi(this,o,t,n,s,i),a}toISODate({format:e="extended"}={}){return this.isValid?un(this,e==="extended"):null}toISOWeekDate(){return wr(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:s=!1,extendedZone:i=!1,format:o="extended"}={}){return this.isValid?(s?"T":"")+gi(this,o==="extended",t,e,n,i):null}toRFC2822(){return wr(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return wr(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?un(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let s="HH:mm:ss.SSS";return(t||e)&&(n&&(s+=" "),t?s+="z":e&&(s+="ZZ")),wr(this,s,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():an}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid)return Z.invalid("created by diffing an invalid DateTime");const s={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=Na(t).map(Z.normalizeUnit),o=e.valueOf()>this.valueOf(),a=o?this:e,l=o?e:this,u=Ml(a,l,i,s);return o?u.negate():u}diffNow(e="milliseconds",t={}){return this.diff(U.now(),e,t)}until(e){return this.isValid?se.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;const s=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=s&&s<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||U.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let s=["years","months","days","hours","minutes","seconds"],i=e.unit;return Array.isArray(e.unit)&&(s=e.unit,i=void 0),Si(t,this.plus(n),{...e,numeric:"always",units:s,unit:i})}toRelativeCalendar(e={}){return this.isValid?Si(e.base||U.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(U.isDateTime))throw new we("min requires all arguments be DateTimes");return Ps(e,t=>t.valueOf(),Math.min)}static max(...e){if(!e.every(U.isDateTime))throw new we("max requires all arguments be DateTimes");return Ps(e,t=>t.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});return hi(o,e,t)}static fromStringExplain(e,t,n={}){return U.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:s=null}=t,i=K.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0});return new ui(i,e)}static fromFormatParser(e,t,n={}){if(W(e)||W(t))throw new we("fromFormatParser requires an input string and a format parser");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});if(!o.equals(t.locale))throw new we(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${t.locale}`);const{result:a,zone:l,specificOffset:u,invalidReason:c}=t.explainFromTokens(e);return c?U.invalid(c):Ft(a,l,n,`format ${t.format}`,e,u)}static get DATE_SHORT(){return sr}static get DATE_MED(){return Jn}static get DATE_MED_WITH_WEEKDAY(){return na}static get DATE_FULL(){return Zn}static get DATE_HUGE(){return Gn}static get TIME_SIMPLE(){return Yn}static get TIME_WITH_SECONDS(){return Kn}static get TIME_WITH_SHORT_OFFSET(){return Qn}static get TIME_WITH_LONG_OFFSET(){return Xn}static get TIME_24_SIMPLE(){return es}static get TIME_24_WITH_SECONDS(){return ts}static get TIME_24_WITH_SHORT_OFFSET(){return rs}static get TIME_24_WITH_LONG_OFFSET(){return ns}static get DATETIME_SHORT(){return ss}static get DATETIME_SHORT_WITH_SECONDS(){return is}static get DATETIME_MED(){return os}static get DATETIME_MED_WITH_SECONDS(){return as}static get DATETIME_MED_WITH_WEEKDAY(){return sa}static get DATETIME_FULL(){return ls}static get DATETIME_FULL_WITH_SECONDS(){return cs}static get DATETIME_HUGE(){return us}static get DATETIME_HUGE_WITH_SECONDS(){return hs}}function Gt(r){if(U.isDateTime(r))return r;if(r&&r.valueOf&&nt(r.valueOf()))return U.fromJSDate(r);if(r&&typeof r=="object")return U.fromObject(r);throw new we(`Unknown datetime argument: ${r}, of type ${typeof r}`)}const fn={};let dn;const ec=new Uint8Array(16),ge=[];for(let r=0;r<256;++r)ge.push((r+256).toString(16).slice(1));function tc(r,e,t){return r.msecs??=-1/0,r.seq??=0,e>r.msecs?(r.seq=t[6]<<23|t[7]<<16|t[8]<<8|t[9],r.msecs=e):(r.seq=Math.trunc(r.seq+1),r.seq===0&&r.msecs++),r}function rc(r,e,t,n,s=0){return n||(n=new Uint8Array(16),s=0),e??=Date.now(),t??=r[6]*127<<24|r[7]<<16|r[8]<<8|r[9],n[s++]=e/1099511627776&255,n[s++]=e/4294967296&255,n[s++]=e/16777216&255,n[s++]=e/65536&255,n[s++]=e/256&255,n[s++]=e&255,n[s++]=112|t>>>28&15,n[s++]=t>>>20&255,n[s++]=128|t>>>14&63,n[s++]=t>>>6&255,n[s++]=t<<2&255|r[10]&3,n[s++]=r[11],n[s++]=r[12],n[s++]=r[13],n[s++]=r[14],n[s++]=r[15],n}function nc(r,e=0){return(ge[r[e]]+ge[r[e+1]]+ge[r[e+2]]+ge[r[e+3]]+"-"+ge[r[e+4]]+ge[r[e+5]]+"-"+ge[r[e+6]]+ge[r[e+7]]+"-"+ge[r[e+8]]+ge[r[e+9]]+"-"+ge[r[e+10]]+ge[r[e+11]]+ge[r[e+12]]+ge[r[e+13]]+ge[r[e+14]]+ge[r[e+15]]).toLowerCase()}function sc(){const r=Date.now();if(!dn){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported.");dn=crypto.getRandomValues.bind(crypto)}const e=dn(ec);tc(fn,r,e);const t=rc(e,fn.msecs,fn.seq,void 0,void 0);return nc(t)}const ic=/[&<>'"]/g,oc=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34)/g,ac={"&":"&amp","<":"&lt",">":"&gt","'":"&#39",'"':"&quot"},lc={"&amp":"&","&#38":"&","&lt":"<","&#60":"<","&gt":">","&#62":">","&apos":"'","&#39":"'","&quot":'"',"&#34":'"'};class cc{getRandom(e=8){return[...Array(e)].map(()=>Math.trunc(Math.random()*36).toString(36)).join("")}getUniqId(){return"xxxxxxxx-xlsx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.trunc(Math.random()*16);return(e==="x"?t:t&3|8).toString(16)})}getUuidRfc4122(){return sc()}encode(e){return N.isString(e)?e.replace(ic,t=>ac[t]):e}decode(e){return N.isString(e)?e.replace(oc,t=>lc[t]):e}toNumber(e){const t=Number.parseFloat(e);return N.isNumber(t)?t:0}toInteger(e){return this.toNumber(Number.parseInt(e,10))}toBoolean(e,t=[]){const n=N.isString(e)?e.toLowerCase():e;return["true","y","1",1,!0,...t].includes(n)}toCamelCase(e){if(!N.isStringFilled(e))return e;const t=/[-_\s]+(.)?/g;return t.test(e)?(e=e.toLowerCase(),e=e.replace(t,(n,s)=>s?s.toUpperCase():""),e[0].toLowerCase()+e.substring(1)):e.match(/^[A-Z]+$/)?e.toLowerCase():e[0].toLowerCase()+e.slice(1)}toPascalCase(e){return N.isStringFilled(e)?this.capitalize(this.toCamelCase(e)):e}toKebabCase(e){if(!N.isStringFilled(e))return e;const t=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return t?t.map(n=>n.toLowerCase()).join("-"):e}capitalize(e){return N.isStringFilled(e)?e[0].toUpperCase()+e.substring(1):e}numberFormat(e,t=0,n=".",s=","){const i=Number.isFinite(e)?e:0,o=Number.isFinite(t)?Math.abs(t):0,a=(o?((l,u)=>{const c=Math.pow(10,u);return Math.round(l*c)/c})(i,o):Math.round(i)).toString().split(".");return a[0].length>3&&(a[0]=a[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,s)),(a[1]||"").length<o&&(a[1]=a[1]||"",a[1]+=new Array(o-a[1].length+1).join("0")),a.join(n)}toDateTime(e,t,n){return!(typeof t>"u")&&N.isStringFilled(t)?U.fromFormat(e,t,n):U.fromISO(e,n)}getDateForLog(){return U.now().toFormat("y-MM-dd HH:mm:ss")}buildQueryString(e){let t="";for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n];N.isArray(s)?s.forEach((i,o)=>{t+=encodeURIComponent(n+"["+o+"]")+"="+encodeURIComponent(i)+"&"}):t+=encodeURIComponent(n)+"="+encodeURIComponent(s)+"&"}return t.length>0&&(t=t.substring(0,t.length-1)),t}}const $=new cc;let de="";try{de=navigator?.userAgent.toLowerCase()}catch{de="?"}let uc=class{isOpera(){return de.includes("opera")}isIE(){return"attachEvent"in document&&!this.isOpera()}isIE6(){return de.includes("msie 6")}isIE7(){return de.includes("msie 7")}isIE8(){return de.includes("msie 8")}isIE9(){return"documentMode"in document&&document.documentMode>=9}isIE10(){return"documentMode"in document&&document.documentMode>=10}isSafari(){return de.includes("safari")&&!de.includes("chrome")}isFirefox(){return de.includes("firefox")}isChrome(){return de.includes("chrome")}detectIEVersion(){if(this.isOpera()||this.isSafari()||this.isFirefox()||this.isChrome())return-1;let e=-1;if(window.MSStream&&!window.ActiveXObject&&"ActiveXObject"in window?e=11:this.isIE10()?e=10:this.isIE9()?e=9:this.isIE()&&(e=8),e===-1||e===8){if(navigator.appName==="Microsoft Internet Explorer"){const t=new RegExp("MSIE ([0-9]+[.0-9]*)"),n=navigator.userAgent.match(t);N.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}if(navigator.appName==="Netscape"){e=11;const t=new RegExp("Trident/.*rv:([0-9]+[.0-9]*)");if(t.exec(navigator.userAgent)!=null){const n=navigator.userAgent.match(t);N.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}}}return e}isIE11(){return this.detectIEVersion()>=11}isMac(){return de.includes("macintosh")}isWin(){return de.includes("windows")}isLinux(){return de.includes("linux")&&!this.isAndroid()}isAndroid(){return de.includes("android")}isIPad(){return de.includes("ipad;")||this.isMac()&&this.isTouchDevice()}isIPhone(){return de.includes("iphone;")}isIOS(){return this.isIPad()||this.isIPhone()}isMobile(){return this.isIPhone()||this.isIPad()||this.isAndroid()||de.includes("mobile")||de.includes("touch")}isRetina(){return(window.devicePixelRatio&&window.devicePixelRatio>=2)===!0}isTouchDevice(){return"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0}isDoctype(e){const t=e||document;return t.compatMode?t.compatMode==="CSS1Compat":t.documentElement&&t.documentElement.clientHeight}isLocalStorageSupported(){try{return localStorage.setItem("test","test"),localStorage.removeItem("test"),!0}catch{return!1}}detectAndroidVersion(){const e=new RegExp("Android ([0-9]+[.0-9]*)");if(e.exec(navigator.userAgent)!=null){const t=navigator.userAgent.match(e);if(N.isArrayLike(t)&&t.length>0)return Number.parseFloat(t[1])}return 0}};const vi=new uc,ki={sleep:1e3,speed:.001,amount:30},pn={sleep:600,speed:.01,amount:30*5};var Ei=(r=>(r.undefined="UNDEFINED",r.lead="CRM_LEAD",r.deal="CRM_DEAL",r.contact="CRM_CONTACT",r.company="CRM_COMPANY",r.oldInvoice="CRM_INVOICE",r.invoice="CRM_SMART_INVOICE",r.quote="CRM_QUOTE",r.requisite="CRM_REQUISITE",r.order="ORDER",r))(Ei||{}),Ti=(r=>(r[r.undefined=0]="undefined",r[r.lead=1]="lead",r[r.deal=2]="deal",r[r.contact=3]="contact",r[r.company=4]="company",r[r.oldInvoice=5]="oldInvoice",r[r.invoice=31]="invoice",r[r.quote=7]="quote",r[r.requisite=8]="requisite",r[r.order=14]="order",r))(Ti||{}),Oi=(r=>(r.undefined="?",r.lead="L",r.deal="D",r.contact="C",r.company="CO",r.oldInvoice="I",r.invoice="SI",r.quote="Q",r.requisite="RQ",r.order="O",r))(Oi||{}),Ai=(r=>(r[r.undefined=0]="undefined",r[r.absolute=1]="absolute",r[r.percentage=2]="percentage",r))(Ai||{}),Ii=(r=>(r[r.undefined=0]="undefined",r[r.product=1]="product",r[r.service=7]="service",r[r.sku=3]="sku",r[r.skuEmpty=6]="skuEmpty",r[r.offer=4]="offer",r[r.offerEmpty=5]="offerEmpty",r))(Ii||{}),Ci=(r=>(r.undefined="UNDEFINED",r.detail="DETAIL_PICTURE",r.preview="PREVIEW_PICTURE",r.morePhoto="MORE_PHOTO",r))(Ci||{}),Ni=(r=>(r[r.undefined=0]="undefined",r[r.mathematical=1]="mathematical",r[r.roundingUp=2]="roundingUp",r[r.roundingDown=4]="roundingDown",r))(Ni||{}),ee=(r=>(r.App="app",r.Profile="profile",r.Currency="currency",r.AppOptions="appOptions",r.UserOptions="userOptions",r))(ee||{});const pt={Free:"F",Demo:"D",Trial:"T",Paid:"P",Local:"L",Subscription:"S"},Ri={[pt.Free]:"Free",[pt.Demo]:"Demo",[pt.Trial]:"Trial",[pt.Paid]:"Paid",[pt.Local]:"Local",[pt.Subscription]:"Subscription"},gt={MainSettings:"MainSettings",UfList:"UfList",UfPage:"UfPage"};var Ye=(r=>(r.NotSet="notSet",r.JsonArray="jsonArray",r.JsonObject="jsonObject",r.FloatVal="float",r.IntegerVal="integer",r.BoolYN="boolYN",r.StringVal="string",r))(Ye||{}),te=(r=>(r.Undefined="undefined",r.WebSocket="webSocket",r.LongPolling="longPolling",r))(te||{}),Ce=(r=>(r.PullConfig="bx-pull-config",r.WebsocketBlocked="bx-pull-websocket-blocked",r.LongPollingBlocked="bx-pull-longpolling-blocked",r.LoggingEnabled="bx-pull-logging-enabled",r))(Ce||{}),Ne=(r=>(r.Online="online",r.Offline="offline",r.Connecting="connect",r))(Ne||{}),br=(r=>(r[r.Unknown=0]="Unknown",r[r.Client=1]="Client",r[r.Backend=2]="Backend",r))(br||{}),Re=(r=>(r.Server="server",r.Client="client",r.Online="online",r.Status="status",r.Revision="revision",r))(Re||{}),Se=(r=>(r[r.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",r[r.SERVER_DIE=1001]="SERVER_DIE",r[r.CONFIG_REPLACED=3e3]="CONFIG_REPLACED",r[r.CHANNEL_EXPIRED=3001]="CHANNEL_EXPIRED",r[r.SERVER_RESTARTED=3002]="SERVER_RESTARTED",r[r.CONFIG_EXPIRED=3003]="CONFIG_EXPIRED",r[r.MANUAL=3004]="MANUAL",r[r.STUCK=3005]="STUCK",r[r.WRONG_CHANNEL_ID=4010]="WRONG_CHANNEL_ID",r))(Se||{}),Yt=(r=>(r.CHANNEL_EXPIRE="CHANNEL_EXPIRE",r.CONFIG_EXPIRE="CONFIG_EXPIRE",r.SERVER_RESTART="SERVER_RESTART",r))(Yt||{}),gn=(r=>(r.Shared="shared",r.Personal="personal",r))(gn||{});const mn={Parse:{code:-32700,message:"Parse error"},InvalidRequest:{code:-32600,message:"Invalid Request"},MethodNotFound:{code:-32601,message:"Method not found"},InvalidParams:{code:-32602,message:"Invalid params"},Internal:{code:-32603,message:"Internal error"}};var Ve=(r=>(r.Publish="publish",r.GetUsersLastSeen="getUsersLastSeen",r.Ping="ping",r.ListChannels="listChannels",r.SubscribeStatusChange="subscribeStatusChange",r.UnsubscribeStatusChange="unsubscribeStatusChange",r))(Ve||{});class $e{_errors;_data;constructor(e){this._errors=new Map,this._data=e??null}get isSuccess(){return this._errors.size===0}get errors(){return this._errors}setData(e){return this._data=e,this}getData(){return this._data}addError(e,t){const n=t??$.getUuidRfc4122(),s=typeof e=="string"?new Error(e):e;return this._errors.set(n,s),this}addErrors(e){for(const t of e)this.addError(t);return this}getErrors(){return this._errors.values()}hasError(e){return this._errors.has(e)}getErrorMessages(){return Array.from(this._errors.values(),e=>e.message)}toString(){const e=this.isSuccess?"success":"failure",t=this.safeStringify(this._data);return this.isSuccess?`Result(${e}): ${t}`:`Result(${e}): ${t}
1
+ (function(P,I){typeof exports=="object"&&typeof module<"u"?I(exports):typeof define=="function"&&define.amd?define(["exports"],I):(P=typeof globalThis<"u"?globalThis:P||self,I(P.B24Js=P.B24Js||{}))})(this,function(P){"use strict";var I=(r=>(r.desktop="desktop",r.log="log",r.info="info",r.warn="warn",r.error="error",r.trace="trace",r))(I||{});const xe=new Map;xe.set("title",["%c#title#","color: #959ca4; font-style: italic; padding: 0 6px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; border-bottom: 1px solid #ccc"]),xe.set("desktop",["%cDESKTOP","color: white; font-style: italic; background-color: #29619b; padding: 0 6px; border: 1px solid #29619b"]),xe.set("log",["%cLOG","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]),xe.set("info",["%cINFO","color: #fff; font-style: italic; background-color: #6b7f96; padding: 0 6px; border: 1px solid #6b7f96"]),xe.set("warn",["%cWARNING","color: #f0a74f; font-style: italic; padding: 0 6px; border: 1px solid #f0a74f"]),xe.set("error",["%cERROR","color: white; font-style: italic; background-color: #8a3232; padding: 0 6px; border: 1px solid #8a3232"]),xe.set("trace",["%cTRACE","color: #2a323b; font-style: italic; background-color: #ccc; padding: 0 6px; border: 1px solid #ccc"]);class ye{#e;#t={desktop:!0,log:!1,info:!1,warn:!1,error:!0,trace:!0};static build(e,t=!1){const n=new ye(e);return t&&(n.enable("log"),n.enable("info"),n.enable("warn")),n}constructor(e){this.#e=e}#r(e){const t=[],n=[];if(xe.has("title")){const s=xe.get("title");s[0]&&(t.push(s[0].replace("#title#",this.#e)),n.push(s[1]||""))}if(xe.has(e)){const s=xe.get(e);s[0]&&(t.push(s[0]),n.push(s[1]||""))}return[t.join(""),...n]}setConfig(e){for(const t in e)this.#t[t]=e[t]}enable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!0,!0)}disable(e){return typeof this.#t[e]>"u"?!1:(this.#t[e]=!1,!0)}isEnabled(e){return this.#t[e]}desktop(...e){this.isEnabled("desktop")&&console.log(...this.#r("desktop"),...e)}log(...e){this.isEnabled("log")&&console.log(...this.#r("log"),...e)}info(...e){this.isEnabled("info")&&console.info(...this.#r("info"),...e)}warn(...e){this.isEnabled("warn")&&console.warn(...this.#r("warn"),...e)}error(...e){this.isEnabled("error")&&console.error(...this.#r("error"),...e)}trace(...e){this.isEnabled("trace")&&console.trace(...this.#r("trace"),...e)}}var Hn=(r=>(r.undefined="undefined",r.any="any",r.integer="integer",r.boolean="boolean",r.double="double",r.date="date",r.datetime="datetime",r.string="string",r.text="text",r.file="file",r.array="array",r.object="object",r.user="user",r.location="location",r.crmCategory="crm_category",r.crmStatus="crm_status",r.crmCurrency="crm_currency",r))(Hn||{});const Qo=Function.prototype.toString.call(Object);let Xo=class{getTag(e){return Object.prototype.toString.call(e)}isString(e){return e===""?!0:e?typeof e=="string"||e instanceof String:!1}isStringFilled(e){return this.isString(e)&&e!==""}isFunction(e){return e===null?!1:typeof e=="function"||e instanceof Function}isObject(e){return!!e&&(typeof e=="object"||typeof e=="function")}isObjectLike(e){return!!e&&typeof e=="object"}isPlainObject(e){if(!this.isObjectLike(e)||this.getTag(e)!=="[object Object]")return!1;const t=Object.getPrototypeOf(e);if(t===null)return!0;const n=t.hasOwnProperty("constructor")&&t.constructor;return typeof n=="function"&&Function.prototype.toString.call(n)===Qo}isJsonRpcRequest(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"method"in e&&this.isStringFilled(e.method)}isJsonRpcResponse(e){return typeof e=="object"&&e&&"jsonrpc"in e&&this.isStringFilled(e.jsonrpc)&&"id"in e&&("result"in e||"error"in e)}isBoolean(e){return e===!0||e===!1}isNumber(e){return!Number.isNaN(e)&&typeof e=="number"}isInteger(e){return this.isNumber(e)&&e%1===0}isFloat(e){return this.isNumber(e)&&!this.isInteger(e)}isNil(e){return e==null}isArray(e){return!this.isNil(e)&&Array.isArray(e)}isArrayFilled(e){return this.isArray(e)&&e.length>0}isArrayLike(e){return!this.isNil(e)&&!this.isFunction(e)&&e.length>-1&&e.length<=Number.MAX_SAFE_INTEGER}isDate(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Date]"}isDomNode(e){return this.isObjectLike(e)&&!this.isPlainObject(e)&&"nodeType"in e}isElementNode(e){return this.isDomNode(e)&&e.nodeType===Node.ELEMENT_NODE}isTextNode(e){return this.isDomNode(e)&&e.nodeType===Node.TEXT_NODE}isMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Map]"}isSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object Set]"}isWeakMap(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakMap]"}isWeakSet(e){return this.isObjectLike(e)&&this.getTag(e)==="[object WeakSet]"}isPrototype(e){return(typeof(e&&e.constructor)=="function"&&e.constructor.prototype||Object.prototype)===e}isRegExp(e){return this.isObjectLike(e)&&this.getTag(e)==="[object RegExp]"}isNull(e){return e===null}isUndefined(e){return typeof e>"u"}isArrayBuffer(e){return this.isObjectLike(e)&&this.getTag(e)==="[object ArrayBuffer]"}isTypedArray(e){const t=/^\[object (?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)]$/;return this.isObjectLike(e)&&t.test(this.getTag(e))}isBlob(e){return this.isObjectLike(e)&&this.isNumber(e.size)&&this.isString(e.type)&&this.isFunction(e.slice)}isFile(e){return this.isBlob(e)&&this.isString(e.name)&&(this.isNumber(e.lastModified)||this.isObjectLike(e.lastModifiedDate))}isFormData(e){return e instanceof FormData}clone(e,t=!0){let n,s,i;if(e===null)return null;if(this.isDomNode(e))n=e.cloneNode(t);else if(typeof e=="object")if(this.isArray(e))for(n=[],s=0,i=e.length;s<i;s++)typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s];else{n={},e.constructor&&(this.isDate(e)?n=new Date(e):n=new e.constructor);for(s in e)e.hasOwnProperty(s)&&(typeof e[s]=="object"&&t?n[s]=this.clone(e[s],t):n[s]=e[s])}else n=e;return n}};const N=new Xo;function ea(r,e){const t={};for(const n of e)t[n]=r[n];return t}function zn(r,e){const t={...r};for(const n of e)delete t[n];return t}function ta(r){return Array.isArray(r[0])}class ut extends Error{}class ra extends ut{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class na extends ut{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class sa extends ut{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class vt extends ut{}class Jn extends ut{constructor(e){super(`Invalid unit ${e}`)}}class we extends ut{}class tt extends ut{constructor(){super("Zone is an abstract class")}}const C="numeric",De="short",Ce="long",sr={year:C,month:C,day:C},Zn={year:C,month:De,day:C},ia={year:C,month:De,day:C,weekday:De},Gn={year:C,month:Ce,day:C},Yn={year:C,month:Ce,day:C,weekday:Ce},Kn={hour:C,minute:C},Qn={hour:C,minute:C,second:C},Xn={hour:C,minute:C,second:C,timeZoneName:De},es={hour:C,minute:C,second:C,timeZoneName:Ce},ts={hour:C,minute:C,hourCycle:"h23"},rs={hour:C,minute:C,second:C,hourCycle:"h23"},ns={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:De},ss={hour:C,minute:C,second:C,hourCycle:"h23",timeZoneName:Ce},is={year:C,month:C,day:C,hour:C,minute:C},os={year:C,month:C,day:C,hour:C,minute:C,second:C},as={year:C,month:De,day:C,hour:C,minute:C},ls={year:C,month:De,day:C,hour:C,minute:C,second:C},oa={year:C,month:De,day:C,weekday:De,hour:C,minute:C},cs={year:C,month:Ce,day:C,hour:C,minute:C,timeZoneName:De},us={year:C,month:Ce,day:C,hour:C,minute:C,second:C,timeZoneName:De},hs={year:C,month:Ce,day:C,weekday:Ce,hour:C,minute:C,timeZoneName:Ce},fs={year:C,month:Ce,day:C,weekday:Ce,hour:C,minute:C,second:C,timeZoneName:Ce};class Bt{get type(){throw new tt}get name(){throw new tt}get ianaName(){return this.name}get isUniversal(){throw new tt}offsetName(e,t){throw new tt}formatOffset(e,t){throw new tt}offset(e){throw new tt}equals(e){throw new tt}get isValid(){throw new tt}}let jr=null;class ir extends Bt{static get instance(){return jr===null&&(jr=new ir),jr}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return js(e,t,n)}formatOffset(e,t){return Vt(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}}const Ur=new Map;function aa(r){let e=Ur.get(r);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:r,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),Ur.set(r,e)),e}const la={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function ca(r,e){const t=r.format(e).replace(/\u200E/g,""),n=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(t),[,s,i,o,a,l,u,c]=n;return[o,s,i,a,l,u,c]}function ua(r,e){const t=r.formatToParts(e),n=[];for(let s=0;s<t.length;s++){const{type:i,value:o}=t[s],a=la[i];i==="era"?n[a]=o:W(a)||(n[a]=parseInt(o,10))}return n}const Br=new Map;class Ge extends Bt{static create(e){let t=Br.get(e);return t===void 0&&Br.set(e,t=new Ge(e)),t}static resetCache(){Br.clear(),Ur.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}constructor(e){super(),this.zoneName=e,this.valid=Ge.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return js(e,t,n,this.name)}formatOffset(e,t){return Vt(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const n=aa(this.name);let[s,i,o,a,l,u,c]=n.formatToParts?ua(n,t):ca(n,t);a==="BC"&&(s=-Math.abs(s)+1);const h=ur({year:s,month:i,day:o,hour:l===24?0:l,minute:u,second:c,millisecond:0});let d=+t;const p=d%1e3;return d-=p>=0?p:1e3+p,(h-d)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}}let ds={};function ha(r,e={}){const t=JSON.stringify([r,e]);let n=ds[t];return n||(n=new Intl.ListFormat(r,e),ds[t]=n),n}const $r=new Map;function Wr(r,e={}){const t=JSON.stringify([r,e]);let n=$r.get(t);return n===void 0&&(n=new Intl.DateTimeFormat(r,e),$r.set(t,n)),n}const qr=new Map;function fa(r,e={}){const t=JSON.stringify([r,e]);let n=qr.get(t);return n===void 0&&(n=new Intl.NumberFormat(r,e),qr.set(t,n)),n}const Vr=new Map;function da(r,e={}){const{base:t,...n}=e,s=JSON.stringify([r,n]);let i=Vr.get(s);return i===void 0&&(i=new Intl.RelativeTimeFormat(r,e),Vr.set(s,i)),i}let $t=null;function pa(){return $t||($t=new Intl.DateTimeFormat().resolvedOptions().locale,$t)}const Hr=new Map;function ps(r){let e=Hr.get(r);return e===void 0&&(e=new Intl.DateTimeFormat(r).resolvedOptions(),Hr.set(r,e)),e}const zr=new Map;function ga(r){let e=zr.get(r);if(!e){const t=new Intl.Locale(r);e="getWeekInfo"in t?t.getWeekInfo():t.weekInfo,"minimalDays"in e||(e={...gs,...e}),zr.set(r,e)}return e}function ma(r){const e=r.indexOf("-x-");e!==-1&&(r=r.substring(0,e));const t=r.indexOf("-u-");if(t===-1)return[r];{let n,s;try{n=Wr(r).resolvedOptions(),s=r}catch{const l=r.substring(0,t);n=Wr(l).resolvedOptions(),s=l}const{numberingSystem:i,calendar:o}=n;return[s,i,o]}}function ya(r,e,t){return(t||e)&&(r.includes("-u-")||(r+="-u"),t&&(r+=`-ca-${t}`),e&&(r+=`-nu-${e}`)),r}function wa(r){const e=[];for(let t=1;t<=12;t++){const n=U.utc(2009,t,1);e.push(r(n))}return e}function ba(r){const e=[];for(let t=1;t<=7;t++){const n=U.utc(2016,11,13+t);e.push(r(n))}return e}function or(r,e,t,n){const s=r.listingMode();return s==="error"?null:s==="en"?t(e):n(e)}function Sa(r){return r.numberingSystem&&r.numberingSystem!=="latn"?!1:r.numberingSystem==="latn"||!r.locale||r.locale.startsWith("en")||ps(r.locale).numberingSystem==="latn"}class _a{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:s,floor:i,...o}=n;if(!t||Object.keys(o).length>0){const a={useGrouping:!1,...n};n.padTo>0&&(a.minimumIntegerDigits=n.padTo),this.inf=fa(e,a)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}else{const t=this.floor?Math.floor(e):tn(e,3);return ce(t,this.padTo)}}}class va{constructor(e,t,n){this.opts=n,this.originalZone=void 0;let s;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){const o=-1*(e.offset/60),a=o>=0?`Etc/GMT+${o}`:`Etc/GMT${o}`;e.offset!==0&&Ge.create(a).valid?(s=a,this.dt=e):(s="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,s=e.zone.name):(s="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const i={...this.opts};i.timeZone=i.timeZone||s,this.dtf=Wr(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(t=>{if(t.type==="timeZoneName"){const n=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...t,value:n}}else return t}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class ka{constructor(e,t,n){this.opts={style:"long",...n},!t&&Ms()&&(this.rtf=da(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):Ha(t,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const gs={firstDay:1,minimalDays:4,weekend:[6,7]};class K{static fromOpts(e){return K.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,s,i=!1){const o=e||ne.defaultLocale,a=o||(i?"en-US":pa()),l=t||ne.defaultNumberingSystem,u=n||ne.defaultOutputCalendar,c=Xr(s)||ne.defaultWeekSettings;return new K(a,l,u,c,o)}static resetCache(){$t=null,$r.clear(),qr.clear(),Vr.clear(),Hr.clear(),zr.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:s}={}){return K.create(e,t,n,s)}constructor(e,t,n,s,i){const[o,a,l]=ma(e);this.locale=o,this.numberingSystem=t||a||null,this.outputCalendar=n||l||null,this.weekSettings=s,this.intl=ya(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=Sa(this)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&t?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:K.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,Xr(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return or(this,e,$s,()=>{const n=t?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";return this.monthsCache[s][e]||(this.monthsCache[s][e]=wa(i=>this.extract(i,n,"month"))),this.monthsCache[s][e]})}weekdays(e,t=!1){return or(this,e,Vs,()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},s=t?"format":"standalone";return this.weekdaysCache[s][e]||(this.weekdaysCache[s][e]=ba(i=>this.extract(i,n,"weekday"))),this.weekdaysCache[s][e]})}meridiems(){return or(this,void 0,()=>Hs,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[U.utc(2016,11,13,9),U.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return or(this,e,zs,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[U.utc(-40,1,1),U.utc(2017,1,1)].map(n=>this.extract(n,t,"era"))),this.eraCache[e]})}extract(e,t,n){const s=this.dtFormatter(e,t),i=s.formatToParts(),o=i.find(a=>a.type.toLowerCase()===n);return o?o.value:null}numberFormatter(e={}){return new _a(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new va(e,this.intl,t)}relFormatter(e={}){return new ka(this.intl,this.isEnglish(),e)}listFormatter(e={}){return ha(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||ps(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Ps()?ga(this.locale):gs}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let Jr=null;class Ee extends Bt{static get utcInstance(){return Jr===null&&(Jr=new Ee(0)),Jr}static instance(e){return e===0?Ee.utcInstance:new Ee(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new Ee(hr(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Vt(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Vt(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return Vt(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}}class Ea extends Bt{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function rt(r,e){if(W(r)||r===null)return e;if(r instanceof Bt)return r;if(Na(r)){const t=r.toLowerCase();return t==="default"?e:t==="local"||t==="system"?ir.instance:t==="utc"||t==="gmt"?Ee.utcInstance:Ee.parseSpecifier(t)||Ge.create(r)}else return nt(r)?Ee.instance(r):typeof r=="object"&&"offset"in r&&typeof r.offset=="function"?r:new Ea(r)}const Zr={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},ms={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Ta=Zr.hanidec.replace(/[\[|\]]/g,"").split("");function Oa(r){let e=parseInt(r,10);if(isNaN(e)){e="";for(let t=0;t<r.length;t++){const n=r.charCodeAt(t);if(r[t].search(Zr.hanidec)!==-1)e+=Ta.indexOf(r[t]);else for(const s in ms){const[i,o]=ms[s];n>=i&&n<=o&&(e+=n-i)}}return parseInt(e,10)}else return e}const Gr=new Map;function Aa(){Gr.clear()}function je({numberingSystem:r},e=""){const t=r||"latn";let n=Gr.get(t);n===void 0&&(n=new Map,Gr.set(t,n));let s=n.get(e);return s===void 0&&(s=new RegExp(`${Zr[t]}${e}`),n.set(e,s)),s}let ys=()=>Date.now(),ws="system",bs=null,Ss=null,_s=null,vs=60,ks,Es=null;class ne{static get now(){return ys}static set now(e){ys=e}static set defaultZone(e){ws=e}static get defaultZone(){return rt(ws,ir.instance)}static get defaultLocale(){return bs}static set defaultLocale(e){bs=e}static get defaultNumberingSystem(){return Ss}static set defaultNumberingSystem(e){Ss=e}static get defaultOutputCalendar(){return _s}static set defaultOutputCalendar(e){_s=e}static get defaultWeekSettings(){return Es}static set defaultWeekSettings(e){Es=Xr(e)}static get twoDigitCutoffYear(){return vs}static set twoDigitCutoffYear(e){vs=e%100}static get throwOnInvalid(){return ks}static set throwOnInvalid(e){ks=e}static resetCaches(){K.resetCache(),Ge.resetCache(),U.resetCache(),Aa()}}class Ue{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const Ts=[0,31,59,90,120,151,181,212,243,273,304,334],Os=[0,31,60,91,121,152,182,213,244,274,305,335];function Fe(r,e){return new Ue("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${r}, which is invalid`)}function Yr(r,e,t){const n=new Date(Date.UTC(r,e-1,t));r<100&&r>=0&&n.setUTCFullYear(n.getUTCFullYear()-1900);const s=n.getUTCDay();return s===0?7:s}function As(r,e,t){return t+(Wt(r)?Os:Ts)[e-1]}function Is(r,e){const t=Wt(r)?Os:Ts,n=t.findIndex(i=>i<e),s=e-t[n];return{month:n+1,day:s}}function Kr(r,e){return(r-e+7)%7+1}function ar(r,e=4,t=1){const{year:n,month:s,day:i}=r,o=As(n,s,i),a=Kr(Yr(n,s,i),t);let l=Math.floor((o-a+14-e)/7),u;return l<1?(u=n-1,l=qt(u,e,t)):l>qt(n,e,t)?(u=n+1,l=1):u=n,{weekYear:u,weekNumber:l,weekday:a,...dr(r)}}function Cs(r,e=4,t=1){const{weekYear:n,weekNumber:s,weekday:i}=r,o=Kr(Yr(n,1,e),t),a=Et(n);let l=s*7+i-o-7+e,u;l<1?(u=n-1,l+=Et(u)):l>a?(u=n+1,l-=Et(n)):u=n;const{month:c,day:f}=Is(u,l);return{year:u,month:c,day:f,...dr(r)}}function Qr(r){const{year:e,month:t,day:n}=r,s=As(e,t,n);return{year:e,ordinal:s,...dr(r)}}function Ns(r){const{year:e,ordinal:t}=r,{month:n,day:s}=Is(e,t);return{year:e,month:n,day:s,...dr(r)}}function Rs(r,e){if(!W(r.localWeekday)||!W(r.localWeekNumber)||!W(r.localWeekYear)){if(!W(r.weekday)||!W(r.weekNumber)||!W(r.weekYear))throw new vt("Cannot mix locale-based week fields with ISO-based week fields");return W(r.localWeekday)||(r.weekday=r.localWeekday),W(r.localWeekNumber)||(r.weekNumber=r.localWeekNumber),W(r.localWeekYear)||(r.weekYear=r.localWeekYear),delete r.localWeekday,delete r.localWeekNumber,delete r.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function Ia(r,e=4,t=1){const n=lr(r.weekYear),s=Me(r.weekNumber,1,qt(r.weekYear,e,t)),i=Me(r.weekday,1,7);return n?s?i?!1:Fe("weekday",r.weekday):Fe("week",r.weekNumber):Fe("weekYear",r.weekYear)}function Ca(r){const e=lr(r.year),t=Me(r.ordinal,1,Et(r.year));return e?t?!1:Fe("ordinal",r.ordinal):Fe("year",r.year)}function Ls(r){const e=lr(r.year),t=Me(r.month,1,12),n=Me(r.day,1,cr(r.year,r.month));return e?t?n?!1:Fe("day",r.day):Fe("month",r.month):Fe("year",r.year)}function Fs(r){const{hour:e,minute:t,second:n,millisecond:s}=r,i=Me(e,0,23)||e===24&&t===0&&n===0&&s===0,o=Me(t,0,59),a=Me(n,0,59),l=Me(s,0,999);return i?o?a?l?!1:Fe("millisecond",s):Fe("second",n):Fe("minute",t):Fe("hour",e)}function W(r){return typeof r>"u"}function nt(r){return typeof r=="number"}function lr(r){return typeof r=="number"&&r%1===0}function Na(r){return typeof r=="string"}function Ra(r){return Object.prototype.toString.call(r)==="[object Date]"}function Ms(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Ps(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function La(r){return Array.isArray(r)?r:[r]}function xs(r,e,t){if(r.length!==0)return r.reduce((n,s)=>{const i=[e(s),s];return n&&t(n[0],i[0])===n[0]?n:i},null)[1]}function Fa(r,e){return e.reduce((t,n)=>(t[n]=r[n],t),{})}function kt(r,e){return Object.prototype.hasOwnProperty.call(r,e)}function Xr(r){if(r==null)return null;if(typeof r!="object")throw new we("Week settings must be an object");if(!Me(r.firstDay,1,7)||!Me(r.minimalDays,1,7)||!Array.isArray(r.weekend)||r.weekend.some(e=>!Me(e,1,7)))throw new we("Invalid week settings");return{firstDay:r.firstDay,minimalDays:r.minimalDays,weekend:Array.from(r.weekend)}}function Me(r,e,t){return lr(r)&&r>=e&&r<=t}function Ma(r,e){return r-e*Math.floor(r/e)}function ce(r,e=2){const t=r<0;let n;return t?n="-"+(""+-r).padStart(e,"0"):n=(""+r).padStart(e,"0"),n}function st(r){if(!(W(r)||r===null||r===""))return parseInt(r,10)}function ht(r){if(!(W(r)||r===null||r===""))return parseFloat(r)}function en(r){if(!(W(r)||r===null||r==="")){const e=parseFloat("0."+r)*1e3;return Math.floor(e)}}function tn(r,e,t=!1){const n=10**e;return(t?Math.trunc:Math.round)(r*n)/n}function Wt(r){return r%4===0&&(r%100!==0||r%400===0)}function Et(r){return Wt(r)?366:365}function cr(r,e){const t=Ma(e-1,12)+1,n=r+(e-t)/12;return t===2?Wt(n)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][t-1]}function ur(r){let e=Date.UTC(r.year,r.month-1,r.day,r.hour,r.minute,r.second,r.millisecond);return r.year<100&&r.year>=0&&(e=new Date(e),e.setUTCFullYear(r.year,r.month-1,r.day)),+e}function Ds(r,e,t){return-Kr(Yr(r,1,e),t)+e-1}function qt(r,e=4,t=1){const n=Ds(r,e,t),s=Ds(r+1,e,t);return(Et(r)-n+s)/7}function rn(r){return r>99?r:r>ne.twoDigitCutoffYear?1900+r:2e3+r}function js(r,e,t,n=null){const s=new Date(r),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};n&&(i.timeZone=n);const o={timeZoneName:e,...i},a=new Intl.DateTimeFormat(t,o).formatToParts(s).find(l=>l.type.toLowerCase()==="timezonename");return a?a.value:null}function hr(r,e){let t=parseInt(r,10);Number.isNaN(t)&&(t=0);const n=parseInt(e,10)||0,s=t<0||Object.is(t,-0)?-n:n;return t*60+s}function Us(r){const e=Number(r);if(typeof r=="boolean"||r===""||Number.isNaN(e))throw new we(`Invalid unit value ${r}`);return e}function fr(r,e){const t={};for(const n in r)if(kt(r,n)){const s=r[n];if(s==null)continue;t[e(n)]=Us(s)}return t}function Vt(r,e){const t=Math.trunc(Math.abs(r/60)),n=Math.trunc(Math.abs(r%60)),s=r>=0?"+":"-";switch(e){case"short":return`${s}${ce(t,2)}:${ce(n,2)}`;case"narrow":return`${s}${t}${n>0?`:${n}`:""}`;case"techie":return`${s}${ce(t,2)}${ce(n,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function dr(r){return Fa(r,["hour","minute","second","millisecond"])}const Pa=["January","February","March","April","May","June","July","August","September","October","November","December"],Bs=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],xa=["J","F","M","A","M","J","J","A","S","O","N","D"];function $s(r){switch(r){case"narrow":return[...xa];case"short":return[...Bs];case"long":return[...Pa];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const Ws=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],qs=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Da=["M","T","W","T","F","S","S"];function Vs(r){switch(r){case"narrow":return[...Da];case"short":return[...qs];case"long":return[...Ws];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Hs=["AM","PM"],ja=["Before Christ","Anno Domini"],Ua=["BC","AD"],Ba=["B","A"];function zs(r){switch(r){case"narrow":return[...Ba];case"short":return[...Ua];case"long":return[...ja];default:return null}}function $a(r){return Hs[r.hour<12?0:1]}function Wa(r,e){return Vs(e)[r.weekday-1]}function qa(r,e){return $s(e)[r.month-1]}function Va(r,e){return zs(e)[r.year<0?0:1]}function Ha(r,e,t="always",n=!1){const s={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},i=["hours","minutes","seconds"].indexOf(r)===-1;if(t==="auto"&&i){const f=r==="days";switch(e){case 1:return f?"tomorrow":`next ${s[r][0]}`;case-1:return f?"yesterday":`last ${s[r][0]}`;case 0:return f?"today":`this ${s[r][0]}`}}const o=Object.is(e,-0)||e<0,a=Math.abs(e),l=a===1,u=s[r],c=n?l?u[1]:u[2]||u[1]:l?s[r][0]:r;return o?`${a} ${c} ago`:`in ${a} ${c}`}function Js(r,e){let t="";for(const n of r)n.literal?t+=n.val:t+=e(n.val);return t}const za={D:sr,DD:Zn,DDD:Gn,DDDD:Yn,t:Kn,tt:Qn,ttt:Xn,tttt:es,T:ts,TT:rs,TTT:ns,TTTT:ss,f:is,ff:as,fff:cs,ffff:hs,F:os,FF:ls,FFF:us,FFFF:fs};class be{static create(e,t={}){return new be(e,t)}static parseFormat(e){let t=null,n="",s=!1;const i=[];for(let o=0;o<e.length;o++){const a=e.charAt(o);a==="'"?(n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),t=null,n="",s=!s):s||a===t?n+=a:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=a,t=a)}return n.length>0&&i.push({literal:s||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return za[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0){if(this.opts.forceSimple)return ce(e,t);const n={...this.opts};return t>0&&(n.padTo=t),this.loc.numberFormatter(n).format(e)}formatDateTimeFromString(e,t){const n=this.loc.listingMode()==="en",s=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",i=(d,p)=>this.loc.extract(e,d,p),o=d=>e.isOffsetFixed&&e.offset===0&&d.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,d.format):"",a=()=>n?$a(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(d,p)=>n?qa(e,d):i(p?{month:d}:{month:d,day:"numeric"},"month"),u=(d,p)=>n?Wa(e,d):i(p?{weekday:d}:{weekday:d,month:"long",day:"numeric"},"weekday"),c=d=>{const p=be.macroTokenToFormatOpts(d);return p?this.formatWithSystemDefault(e,p):d},f=d=>n?Va(e,d):i({era:d},"era"),h=d=>{switch(d){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return o({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return o({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return o({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return a();case"d":return s?i({day:"numeric"},"day"):this.num(e.day);case"dd":return s?i({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return s?i({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return s?i({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return s?i({month:"numeric"},"month"):this.num(e.month);case"MM":return s?i({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return s?i({year:"numeric"},"year"):this.num(e.year);case"yy":return s?i({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return s?i({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return s?i({year:"numeric"},"year"):this.num(e.year,6);case"G":return f("short");case"GG":return f("long");case"GGGGG":return f("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return c(d)}};return Js(be.parseFormat(t),h)}formatDurationFromString(e,t){const n=l=>{switch(l[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},s=l=>u=>{const c=n(u);return c?this.num(l.get(c),u.length):u},i=be.parseFormat(t),o=i.reduce((l,{literal:u,val:c})=>u?l:l.concat(c),[]),a=e.shiftTo(...o.map(n).filter(l=>l));return Js(i,s(a))}}const Zs=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function Tt(...r){const e=r.reduce((t,n)=>t+n.source,"");return RegExp(`^${e}$`)}function Ot(...r){return e=>r.reduce(([t,n,s],i)=>{const[o,a,l]=i(e,s);return[{...t,...o},a||n,l]},[{},null,1]).slice(0,2)}function At(r,...e){if(r==null)return[null,null];for(const[t,n]of e){const s=t.exec(r);if(s)return n(s)}return[null,null]}function Gs(...r){return(e,t)=>{const n={};let s;for(s=0;s<r.length;s++)n[r[s]]=st(e[t+s]);return[n,null,t+s]}}const Ys=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,Ja=`(?:${Ys.source}?(?:\\[(${Zs.source})\\])?)?`,nn=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,Ks=RegExp(`${nn.source}${Ja}`),sn=RegExp(`(?:T${Ks.source})?`),Za=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Ga=/(\d{4})-?W(\d\d)(?:-?(\d))?/,Ya=/(\d{4})-?(\d{3})/,Ka=Gs("weekYear","weekNumber","weekDay"),Qa=Gs("year","ordinal"),Xa=/(\d{4})-(\d\d)-(\d\d)/,Qs=RegExp(`${nn.source} ?(?:${Ys.source}|(${Zs.source}))?`),el=RegExp(`(?: ${Qs.source})?`);function It(r,e,t){const n=r[e];return W(n)?t:st(n)}function tl(r,e){return[{year:It(r,e),month:It(r,e+1,1),day:It(r,e+2,1)},null,e+3]}function Ct(r,e){return[{hours:It(r,e,0),minutes:It(r,e+1,0),seconds:It(r,e+2,0),milliseconds:en(r[e+3])},null,e+4]}function Ht(r,e){const t=!r[e]&&!r[e+1],n=hr(r[e+1],r[e+2]),s=t?null:Ee.instance(n);return[{},s,e+3]}function zt(r,e){const t=r[e]?Ge.create(r[e]):null;return[{},t,e+1]}const rl=RegExp(`^T?${nn.source}$`),nl=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function sl(r){const[e,t,n,s,i,o,a,l,u]=r,c=e[0]==="-",f=l&&l[0]==="-",h=(d,p=!1)=>d!==void 0&&(p||d&&c)?-d:d;return[{years:h(ht(t)),months:h(ht(n)),weeks:h(ht(s)),days:h(ht(i)),hours:h(ht(o)),minutes:h(ht(a)),seconds:h(ht(l),l==="-0"),milliseconds:h(en(u),f)}]}const il={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function on(r,e,t,n,s,i,o){const a={year:e.length===2?rn(st(e)):st(e),month:Bs.indexOf(t)+1,day:st(n),hour:st(s),minute:st(i)};return o&&(a.second=st(o)),r&&(a.weekday=r.length>3?Ws.indexOf(r)+1:qs.indexOf(r)+1),a}const ol=/^(?:(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\d)(\d\d)))$/;function al(r){const[,e,t,n,s,i,o,a,l,u,c,f]=r,h=on(e,s,n,t,i,o,a);let d;return l?d=il[l]:u?d=0:d=hr(c,f),[h,new Ee(d)]}function ll(r){return r.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const cl=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,ul=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,hl=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Xs(r){const[,e,t,n,s,i,o,a]=r;return[on(e,s,n,t,i,o,a),Ee.utcInstance]}function fl(r){const[,e,t,n,s,i,o,a]=r;return[on(e,a,t,n,s,i,o),Ee.utcInstance]}const dl=Tt(Za,sn),pl=Tt(Ga,sn),gl=Tt(Ya,sn),ml=Tt(Ks),ei=Ot(tl,Ct,Ht,zt),yl=Ot(Ka,Ct,Ht,zt),wl=Ot(Qa,Ct,Ht,zt),bl=Ot(Ct,Ht,zt);function Sl(r){return At(r,[dl,ei],[pl,yl],[gl,wl],[ml,bl])}function _l(r){return At(ll(r),[ol,al])}function vl(r){return At(r,[cl,Xs],[ul,Xs],[hl,fl])}function kl(r){return At(r,[nl,sl])}const El=Ot(Ct);function Tl(r){return At(r,[rl,El])}const Ol=Tt(Xa,el),Al=Tt(Qs),Il=Ot(Ct,Ht,zt);function Cl(r){return At(r,[Ol,ei],[Al,Il])}const ti="Invalid Duration",ri={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},Nl={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...ri},Pe=146097/400,Nt=146097/4800,Rl={years:{quarters:4,months:12,weeks:Pe/7,days:Pe,hours:Pe*24,minutes:Pe*24*60,seconds:Pe*24*60*60,milliseconds:Pe*24*60*60*1e3},quarters:{months:3,weeks:Pe/28,days:Pe/4,hours:Pe*24/4,minutes:Pe*24*60/4,seconds:Pe*24*60*60/4,milliseconds:Pe*24*60*60*1e3/4},months:{weeks:Nt/7,days:Nt,hours:Nt*24,minutes:Nt*24*60,seconds:Nt*24*60*60,milliseconds:Nt*24*60*60*1e3},...ri},ft=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Ll=ft.slice(0).reverse();function it(r,e,t=!1){const n={values:t?e.values:{...r.values,...e.values||{}},loc:r.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||r.conversionAccuracy,matrix:e.matrix||r.matrix};return new Z(n)}function ni(r,e){let t=e.milliseconds??0;for(const n of Ll.slice(1))e[n]&&(t+=e[n]*r[n].milliseconds);return t}function si(r,e){const t=ni(r,e)<0?-1:1;ft.reduceRight((n,s)=>{if(W(e[s]))return n;if(n){const i=e[n]*t,o=r[s][n],a=Math.floor(i/o);e[s]+=a*t,e[n]-=a*o*t}return s},null),ft.reduce((n,s)=>{if(W(e[s]))return n;if(n){const i=e[n]%1;e[n]-=i,e[s]+=i*r[n][s]}return s},null)}function Fl(r){const e={};for(const[t,n]of Object.entries(r))n!==0&&(e[t]=n);return e}class Z{constructor(e){const t=e.conversionAccuracy==="longterm"||!1;let n=t?Rl:Nl;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||K.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(e,t){return Z.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(e==null||typeof e!="object")throw new we(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new Z({values:fr(e,Z.normalizeUnit),loc:K.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(nt(e))return Z.fromMillis(e);if(Z.isDuration(e))return e;if(typeof e=="object")return Z.fromObject(e);throw new we(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[n]=kl(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[n]=Tl(e);return n?Z.fromObject(n,t):Z.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the Duration is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new sa(n);return new Z({invalid:n})}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!t)throw new Jn(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:t.round!==!1&&t.floor!==!1};return this.isValid?be.create(this.loc,n).formatDurationFromString(this,e):ti}toHuman(e={}){if(!this.isValid)return ti;const t=ft.map(n=>{const s=this.values[n];return W(s)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(s)}).filter(n=>n);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(t)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=tn(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},U.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?ni(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e),n={};for(const s of ft)(kt(t.values,s)||kt(this.values,s))&&(n[s]=t.get(s)+this.get(s));return it(this,{values:n},!0)}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=Us(e(this.values[n],n));return it(this,{values:t},!0)}get(e){return this[Z.normalizeUnit(e)]}set(e){if(!this.isValid)return this;const t={...this.values,...fr(e,Z.normalizeUnit)};return it(this,{values:t})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:s}={}){const o={loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:s,conversionAccuracy:n};return it(this,o)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return si(this.matrix,e),it(this,{values:e},!0)}rescale(){if(!this.isValid)return this;const e=Fl(this.normalize().shiftToAll().toObject());return it(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(o=>Z.normalizeUnit(o));const t={},n={},s=this.toObject();let i;for(const o of ft)if(e.indexOf(o)>=0){i=o;let a=0;for(const u in n)a+=this.matrix[u][o]*n[u],n[u]=0;nt(s[o])&&(a+=s[o]);const l=Math.trunc(a);t[o]=l,n[o]=(a*1e3-l*1e3)/1e3}else nt(s[o])&&(n[o]=s[o]);for(const o in n)n[o]!==0&&(t[i]+=o===i?n[o]:n[o]/this.matrix[i][o]);return si(this.matrix,t),it(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=this.values[t]===0?0:-this.values[t];return it(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function t(n,s){return n===void 0||n===0?s===void 0||s===0:n===s}for(const n of ft)if(!t(this.values[n],e.values[n]))return!1;return!0}}const Rt="Invalid Interval";function Ml(r,e){return!r||!r.isValid?se.invalid("missing or invalid start"):!e||!e.isValid?se.invalid("missing or invalid end"):e<r?se.invalid("end before start",`The end of an interval must be after its start, but you had start=${r.toISO()} and end=${e.toISO()}`):null}class se{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the Interval is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new na(n);return new se({invalid:n})}static fromDateTimes(e,t){const n=Gt(e),s=Gt(t),i=Ml(n,s);return i??new se({start:n,end:s})}static after(e,t){const n=Z.fromDurationLike(t),s=Gt(e);return se.fromDateTimes(s,s.plus(n))}static before(e,t){const n=Z.fromDurationLike(t),s=Gt(e);return se.fromDateTimes(s.minus(n),s)}static fromISO(e,t){const[n,s]=(e||"").split("/",2);if(n&&s){let i,o;try{i=U.fromISO(n,t),o=i.isValid}catch{o=!1}let a,l;try{a=U.fromISO(s,t),l=a.isValid}catch{l=!1}if(o&&l)return se.fromDateTimes(i,a);if(o){const u=Z.fromISO(s,t);if(u.isValid)return se.after(i,u)}else if(l){const u=Z.fromISO(n,t);if(u.isValid)return se.before(a,u)}}return se.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let s;return t?.useLocaleWeeks?s=this.end.reconfigure({locale:n.locale}):s=this.end,s=s.startOf(e,t),Math.floor(s.diff(n,e).get(e))+(s.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:t}={}){return this.isValid?se.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(Gt).filter(o=>this.contains(o)).sort((o,a)=>o.toMillis()-a.toMillis()),n=[];let{s}=this,i=0;for(;s<this.e;){const o=t[i]||this.e,a=+o>+this.e?this.e:o;n.push(se.fromDateTimes(s,a)),s=a,i+=1}return n}splitBy(e){const t=Z.fromDurationLike(e);if(!this.isValid||!t.isValid||t.as("milliseconds")===0)return[];let{s:n}=this,s=1,i;const o=[];for(;n<this.e;){const a=this.start.plus(t.mapUnits(l=>l*s));i=+a>+this.e?this.e:a,o.push(se.fromDateTimes(n,i)),n=i,s+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;return t>=n?null:se.fromDateTimes(t,n)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return se.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort((s,i)=>s.s-i.s).reduce(([s,i],o)=>i?i.overlaps(o)||i.abutsStart(o)?[s,i.union(o)]:[s.concat([i]),o]:[s,o],[[],null]);return n&&t.push(n),t}static xor(e){let t=null,n=0;const s=[],i=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),o=Array.prototype.concat(...i),a=o.sort((l,u)=>l.time-u.time);for(const l of a)n+=l.type==="s"?1:-1,n===1?t=l.time:(t&&+t!=+l.time&&s.push(se.fromDateTimes(t,l.time)),t=null);return se.merge(s)}difference(...e){return se.xor([this].concat(e)).map(t=>this.intersection(t)).filter(t=>t&&!t.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:Rt}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=sr,t={}){return this.isValid?be.create(this.s.loc.clone(t),e).formatInterval(this):Rt}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:Rt}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:Rt}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:Rt}toFormat(e,{separator:t=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:Rt}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):Z.invalid(this.invalidReason)}mapEndpoints(e){return se.fromDateTimes(e(this.s),e(this.e))}}class pr{static hasDST(e=ne.defaultZone){const t=U.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return Ge.isValidZone(e)}static normalizeZone(e){return rt(e,ne.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||K.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null,outputCalendar:i="gregory"}={}){return(s||K.create(t,n,i)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:s=null}={}){return(s||K.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return K.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return K.create(t,null,"gregory").eras(e)}static features(){return{relative:Ms(),localeWeek:Ps()}}}function ii(r,e){const t=s=>s.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),n=t(e)-t(r);return Math.floor(Z.fromMillis(n).as("days"))}function Pl(r,e,t){const n=[["years",(l,u)=>u.year-l.year],["quarters",(l,u)=>u.quarter-l.quarter+(u.year-l.year)*4],["months",(l,u)=>u.month-l.month+(u.year-l.year)*12],["weeks",(l,u)=>{const c=ii(l,u);return(c-c%7)/7}],["days",ii]],s={},i=r;let o,a;for(const[l,u]of n)t.indexOf(l)>=0&&(o=l,s[l]=u(r,e),a=i.plus(s),a>e?(s[l]--,r=i.plus(s),r>e&&(a=r,s[l]--,r=i.plus(s))):r=a);return[r,s,a,o]}function xl(r,e,t,n){let[s,i,o,a]=Pl(r,e,t);const l=e-s,u=t.filter(f=>["hours","minutes","seconds","milliseconds"].indexOf(f)>=0);u.length===0&&(o<e&&(o=s.plus({[a]:1})),o!==s&&(i[a]=(i[a]||0)+l/(o-s)));const c=Z.fromObject(i,n);return u.length>0?Z.fromMillis(l,n).shiftTo(...u).plus(c):c}const Dl="missing Intl.DateTimeFormat.formatToParts support";function Y(r,e=t=>t){return{regex:r,deser:([t])=>e(Oa(t))}}const oi="[ \xA0]",ai=new RegExp(oi,"g");function jl(r){return r.replace(/\./g,"\\.?").replace(ai,oi)}function li(r){return r.replace(/\./g,"").replace(ai," ").toLowerCase()}function Be(r,e){return r===null?null:{regex:RegExp(r.map(jl).join("|")),deser:([t])=>r.findIndex(n=>li(t)===li(n))+e}}function ci(r,e){return{regex:r,deser:([,t,n])=>hr(t,n),groups:e}}function gr(r){return{regex:r,deser:([e])=>e}}function Ul(r){return r.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Bl(r,e){const t=je(e),n=je(e,"{2}"),s=je(e,"{3}"),i=je(e,"{4}"),o=je(e,"{6}"),a=je(e,"{1,2}"),l=je(e,"{1,3}"),u=je(e,"{1,6}"),c=je(e,"{1,9}"),f=je(e,"{2,4}"),h=je(e,"{4,6}"),d=m=>({regex:RegExp(Ul(m.val)),deser:([y])=>y,literal:!0}),g=(m=>{if(r.literal)return d(m);switch(m.val){case"G":return Be(e.eras("short"),0);case"GG":return Be(e.eras("long"),0);case"y":return Y(u);case"yy":return Y(f,rn);case"yyyy":return Y(i);case"yyyyy":return Y(h);case"yyyyyy":return Y(o);case"M":return Y(a);case"MM":return Y(n);case"MMM":return Be(e.months("short",!0),1);case"MMMM":return Be(e.months("long",!0),1);case"L":return Y(a);case"LL":return Y(n);case"LLL":return Be(e.months("short",!1),1);case"LLLL":return Be(e.months("long",!1),1);case"d":return Y(a);case"dd":return Y(n);case"o":return Y(l);case"ooo":return Y(s);case"HH":return Y(n);case"H":return Y(a);case"hh":return Y(n);case"h":return Y(a);case"mm":return Y(n);case"m":return Y(a);case"q":return Y(a);case"qq":return Y(n);case"s":return Y(a);case"ss":return Y(n);case"S":return Y(l);case"SSS":return Y(s);case"u":return gr(c);case"uu":return gr(a);case"uuu":return Y(t);case"a":return Be(e.meridiems(),0);case"kkkk":return Y(i);case"kk":return Y(f,rn);case"W":return Y(a);case"WW":return Y(n);case"E":case"c":return Y(t);case"EEE":return Be(e.weekdays("short",!1),1);case"EEEE":return Be(e.weekdays("long",!1),1);case"ccc":return Be(e.weekdays("short",!0),1);case"cccc":return Be(e.weekdays("long",!0),1);case"Z":case"ZZ":return ci(new RegExp(`([+-]${a.source})(?::(${n.source}))?`),2);case"ZZZ":return ci(new RegExp(`([+-]${a.source})(${n.source})?`),2);case"z":return gr(/[a-z_+-/]{1,256}?/i);case" ":return gr(/[^\S\n\r]/);default:return d(m)}})(r)||{invalidReason:Dl};return g.token=r,g}const $l={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Wl(r,e,t){const{type:n,value:s}=r;if(n==="literal"){const l=/^\s+$/.test(s);return{literal:!l,val:l?" ":s}}const i=e[n];let o=n;n==="hour"&&(e.hour12!=null?o=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?o="hour12":o="hour24":o=t.hour12?"hour12":"hour24");let a=$l[o];if(typeof a=="object"&&(a=a[i]),a)return{literal:!1,val:a}}function ql(r){return[`^${r.map(t=>t.regex).reduce((t,n)=>`${t}(${n.source})`,"")}$`,r]}function Vl(r,e,t){const n=r.match(e);if(n){const s={};let i=1;for(const o in t)if(kt(t,o)){const a=t[o],l=a.groups?a.groups+1:1;!a.literal&&a.token&&(s[a.token.val[0]]=a.deser(n.slice(i,i+l))),i+=l}return[n,s]}else return[n,{}]}function Hl(r){const e=i=>{switch(i){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let t=null,n;return W(r.z)||(t=Ge.create(r.z)),W(r.Z)||(t||(t=new Ee(r.Z)),n=r.Z),W(r.q)||(r.M=(r.q-1)*3+1),W(r.h)||(r.h<12&&r.a===1?r.h+=12:r.h===12&&r.a===0&&(r.h=0)),r.G===0&&r.y&&(r.y=-r.y),W(r.u)||(r.S=en(r.u)),[Object.keys(r).reduce((i,o)=>{const a=e(o);return a&&(i[a]=r[o]),i},{}),t,n]}let an=null;function zl(){return an||(an=U.fromMillis(1555555555555)),an}function Jl(r,e){if(r.literal)return r;const t=be.macroTokenToFormatOpts(r.val),n=di(t,e);return n==null||n.includes(void 0)?r:n}function ui(r,e){return Array.prototype.concat(...r.map(t=>Jl(t,e)))}class hi{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=ui(be.parseFormat(t),e),this.units=this.tokens.map(n=>Bl(n,e)),this.disqualifyingUnit=this.units.find(n=>n.invalidReason),!this.disqualifyingUnit){const[n,s]=ql(this.units);this.regex=RegExp(n,"i"),this.handlers=s}}explainFromTokens(e){if(this.isValid){const[t,n]=Vl(e,this.regex,this.handlers),[s,i,o]=n?Hl(n):[null,null,void 0];if(kt(n,"a")&&kt(n,"H"))throw new vt("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:s,zone:i,specificOffset:o}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function fi(r,e,t){return new hi(r,t).explainFromTokens(e)}function Zl(r,e,t){const{result:n,zone:s,specificOffset:i,invalidReason:o}=fi(r,e,t);return[n,s,i,o]}function di(r,e){if(!r)return null;const n=be.create(e,r).dtFormatter(zl()),s=n.formatToParts(),i=n.resolvedOptions();return s.map(o=>Wl(o,r,i))}const ln="Invalid DateTime",Gl=864e13;function Jt(r){return new Ue("unsupported zone",`the zone "${r.name}" is not supported`)}function cn(r){return r.weekData===null&&(r.weekData=ar(r.c)),r.weekData}function un(r){return r.localWeekData===null&&(r.localWeekData=ar(r.c,r.loc.getMinDaysInFirstWeek(),r.loc.getStartOfWeek())),r.localWeekData}function dt(r,e){const t={ts:r.ts,zone:r.zone,c:r.c,o:r.o,loc:r.loc,invalid:r.invalid};return new U({...t,...e,old:t})}function pi(r,e,t){let n=r-e*60*1e3;const s=t.offset(n);if(e===s)return[n,e];n-=(s-e)*60*1e3;const i=t.offset(n);return s===i?[n,s]:[r-Math.min(s,i)*60*1e3,Math.max(s,i)]}function mr(r,e){r+=e*60*1e3;const t=new Date(r);return{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate(),hour:t.getUTCHours(),minute:t.getUTCMinutes(),second:t.getUTCSeconds(),millisecond:t.getUTCMilliseconds()}}function yr(r,e,t){return pi(ur(r),e,t)}function gi(r,e){const t=r.o,n=r.c.year+Math.trunc(e.years),s=r.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,i={...r.c,year:n,month:s,day:Math.min(r.c.day,cr(n,s))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},o=Z.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),a=ur(i);let[l,u]=pi(a,t,r.zone);return o!==0&&(l+=o,u=r.zone.offset(l)),{ts:l,o:u}}function Lt(r,e,t,n,s,i){const{setZone:o,zone:a}=t;if(r&&Object.keys(r).length!==0||e){const l=e||a,u=U.fromObject(r,{...t,zone:l,specificOffset:i});return o?u:u.setZone(a)}else return U.invalid(new Ue("unparsable",`the input "${s}" can't be parsed as ${n}`))}function wr(r,e,t=!0){return r.isValid?be.create(K.create("en-US"),{allowZ:t,forceSimple:!0}).formatDateTimeFromString(r,e):null}function hn(r,e){const t=r.c.year>9999||r.c.year<0;let n="";return t&&r.c.year>=0&&(n+="+"),n+=ce(r.c.year,t?6:4),e?(n+="-",n+=ce(r.c.month),n+="-",n+=ce(r.c.day)):(n+=ce(r.c.month),n+=ce(r.c.day)),n}function mi(r,e,t,n,s,i){let o=ce(r.c.hour);return e?(o+=":",o+=ce(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=":")):o+=ce(r.c.minute),(r.c.millisecond!==0||r.c.second!==0||!t)&&(o+=ce(r.c.second),(r.c.millisecond!==0||!n)&&(o+=".",o+=ce(r.c.millisecond,3))),s&&(r.isOffsetFixed&&r.offset===0&&!i?o+="Z":r.o<0?(o+="-",o+=ce(Math.trunc(-r.o/60)),o+=":",o+=ce(Math.trunc(-r.o%60))):(o+="+",o+=ce(Math.trunc(r.o/60)),o+=":",o+=ce(Math.trunc(r.o%60)))),i&&(o+="["+r.zone.ianaName+"]"),o}const yi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Yl={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Kl={ordinal:1,hour:0,minute:0,second:0,millisecond:0},wi=["year","month","day","hour","minute","second","millisecond"],Ql=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Xl=["year","ordinal","hour","minute","second","millisecond"];function ec(r){const e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[r.toLowerCase()];if(!e)throw new Jn(r);return e}function bi(r){switch(r.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return ec(r)}}function tc(r){if(Zt===void 0&&(Zt=ne.now()),r.type!=="iana")return r.offset(Zt);const e=r.name;let t=fn.get(e);return t===void 0&&(t=r.offset(Zt),fn.set(e,t)),t}function Si(r,e){const t=rt(e.zone,ne.defaultZone);if(!t.isValid)return U.invalid(Jt(t));const n=K.fromObject(e);let s,i;if(W(r.year))s=ne.now();else{for(const l of wi)W(r[l])&&(r[l]=yi[l]);const o=Ls(r)||Fs(r);if(o)return U.invalid(o);const a=tc(t);[s,i]=yr(r,a,t)}return new U({ts:s,zone:t,loc:n,o:i})}function _i(r,e,t){const n=W(t.round)?!0:t.round,s=(o,a)=>(o=tn(o,n||t.calendary?0:2,!0),e.loc.clone(t).relFormatter(t).format(o,a)),i=o=>t.calendary?e.hasSame(r,o)?0:e.startOf(o).diff(r.startOf(o),o).get(o):e.diff(r,o).get(o);if(t.unit)return s(i(t.unit),t.unit);for(const o of t.units){const a=i(o);if(Math.abs(a)>=1)return s(a,o)}return s(r>e?-0:0,t.units[t.units.length-1])}function vi(r){let e={},t;return r.length>0&&typeof r[r.length-1]=="object"?(e=r[r.length-1],t=Array.from(r).slice(0,r.length-1)):t=Array.from(r),[e,t]}let Zt;const fn=new Map;class U{constructor(e){const t=e.zone||ne.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new Ue("invalid input"):null)||(t.isValid?null:Jt(t));this.ts=W(e.ts)?ne.now():e.ts;let s=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[s,i]=[e.old.c,e.old.o];else{const a=nt(e.o)&&!e.old?e.o:t.offset(this.ts);s=mr(this.ts,a),n=Number.isNaN(s.year)?new Ue("invalid input"):null,s=n?null:s,i=n?null:a}this._zone=t,this.loc=e.loc||K.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=s,this.o=i,this.isLuxonDateTime=!0}static now(){return new U({})}static local(){const[e,t]=vi(arguments),[n,s,i,o,a,l,u]=t;return Si({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static utc(){const[e,t]=vi(arguments),[n,s,i,o,a,l,u]=t;return e.zone=Ee.utcInstance,Si({year:n,month:s,day:i,hour:o,minute:a,second:l,millisecond:u},e)}static fromJSDate(e,t={}){const n=Ra(e)?e.valueOf():NaN;if(Number.isNaN(n))return U.invalid("invalid input");const s=rt(t.zone,ne.defaultZone);return s.isValid?new U({ts:n,zone:s,loc:K.fromObject(t)}):U.invalid(Jt(s))}static fromMillis(e,t={}){if(nt(e))return e<-864e13||e>Gl?U.invalid("Timestamp out of range"):new U({ts:e,zone:rt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new we(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(nt(e))return new U({ts:e*1e3,zone:rt(t.zone,ne.defaultZone),loc:K.fromObject(t)});throw new we("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const n=rt(t.zone,ne.defaultZone);if(!n.isValid)return U.invalid(Jt(n));const s=K.fromObject(t),i=fr(e,bi),{minDaysInFirstWeek:o,startOfWeek:a}=Rs(i,s),l=ne.now(),u=W(t.specificOffset)?n.offset(l):t.specificOffset,c=!W(i.ordinal),f=!W(i.year),h=!W(i.month)||!W(i.day),d=f||h,p=i.weekYear||i.weekNumber;if((d||c)&&p)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(h&&c)throw new vt("Can't mix ordinal dates with month/day");const g=p||i.weekday&&!d;let m,y,w=mr(l,u);g?(m=Ql,y=Yl,w=ar(w,o,a)):c?(m=Xl,y=Kl,w=Qr(w)):(m=wi,y=yi);let _=!1;for(const x of m){const J=i[x];W(J)?_?i[x]=y[x]:i[x]=w[x]:_=!0}const b=g?Ia(i,o,a):c?Ca(i):Ls(i),k=b||Fs(i);if(k)return U.invalid(k);const S=g?Cs(i,o,a):c?Ns(i):i,[E,R]=yr(S,u,n),D=new U({ts:E,zone:n,o:R,loc:s});return i.weekday&&d&&e.weekday!==D.weekday?U.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${D.toISO()}`):D.isValid?D:U.invalid(D.invalid)}static fromISO(e,t={}){const[n,s]=Sl(e);return Lt(n,s,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,s]=_l(e);return Lt(n,s,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,s]=vl(e);return Lt(n,s,t,"HTTP",t)}static fromFormat(e,t,n={}){if(W(e)||W(t))throw new we("fromFormat requires an input string and a format");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0}),[a,l,u,c]=Zl(o,e,t);return c?U.invalid(c):Lt(a,l,n,`format ${t}`,e,u)}static fromString(e,t,n={}){return U.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,s]=Cl(e);return Lt(n,s,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new we("need to specify a reason the DateTime is invalid");const n=e instanceof Ue?e:new Ue(e,t);if(ne.throwOnInvalid)throw new ra(n);return new U({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=di(e,K.fromObject(t));return n?n.map(s=>s?s.val:null).join(""):null}static expandFormat(e,t={}){return ui(be.parseFormat(e),K.fromObject(t)).map(s=>s.val).join("")}static resetCache(){Zt=void 0,fn.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?cn(this).weekYear:NaN}get weekNumber(){return this.isValid?cn(this).weekNumber:NaN}get weekday(){return this.isValid?cn(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?un(this).weekday:NaN}get localWeekNumber(){return this.isValid?un(this).weekNumber:NaN}get localWeekYear(){return this.isValid?un(this).weekYear:NaN}get ordinal(){return this.isValid?Qr(this.c).ordinal:NaN}get monthShort(){return this.isValid?pr.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?pr.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?pr.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?pr.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,n=ur(this.c),s=this.zone.offset(n-e),i=this.zone.offset(n+e),o=this.zone.offset(n-s*t),a=this.zone.offset(n-i*t);if(o===a)return[this];const l=n-o*t,u=n-a*t,c=mr(l,o),f=mr(u,a);return c.hour===f.hour&&c.minute===f.minute&&c.second===f.second&&c.millisecond===f.millisecond?[dt(this,{ts:l}),dt(this,{ts:u})]:[this]}get isInLeapYear(){return Wt(this.year)}get daysInMonth(){return cr(this.year,this.month)}get daysInYear(){return this.isValid?Et(this.year):NaN}get weeksInWeekYear(){return this.isValid?qt(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?qt(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:s}=be.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:s}}toUTC(e=0,t={}){return this.setZone(Ee.instance(e),t)}toLocal(){return this.setZone(ne.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:n=!1}={}){if(e=rt(e,ne.defaultZone),e.equals(this.zone))return this;if(e.isValid){let s=this.ts;if(t||n){const i=e.offset(this.ts),o=this.toObject();[s]=yr(o,i,e)}return dt(this,{ts:s,zone:e})}else return U.invalid(Jt(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){const s=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n});return dt(this,{loc:s})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=fr(e,bi),{minDaysInFirstWeek:n,startOfWeek:s}=Rs(t,this.loc),i=!W(t.weekYear)||!W(t.weekNumber)||!W(t.weekday),o=!W(t.ordinal),a=!W(t.year),l=!W(t.month)||!W(t.day),u=a||l,c=t.weekYear||t.weekNumber;if((u||o)&&c)throw new vt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&o)throw new vt("Can't mix ordinal dates with month/day");let f;i?f=Cs({...ar(this.c,n,s),...t},n,s):W(t.ordinal)?(f={...this.toObject(),...t},W(t.day)&&(f.day=Math.min(cr(f.year,f.month),f.day))):f=Ns({...Qr(this.c),...t});const[h,d]=yr(f,this.o,this.zone);return dt(this,{ts:h,o:d})}plus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e);return dt(this,gi(this,t))}minus(e){if(!this.isValid)return this;const t=Z.fromDurationLike(e).negate();return dt(this,gi(this,t))}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const n={},s=Z.normalizeUnit(e);switch(s){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(s==="weeks")if(t){const i=this.loc.getStartOfWeek(),{weekday:o}=this;o<i&&(n.weekNumber=this.weekNumber-1),n.weekday=i}else n.weekday=1;if(s==="quarters"){const i=Math.ceil(this.month/3);n.month=(i-1)*3+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?be.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):ln}toLocaleString(e=sr,t={}){return this.isValid?be.create(this.loc.clone(t),e).formatDateTime(this):ln}toLocaleParts(e={}){return this.isValid?be.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:s=!0,extendedZone:i=!1}={}){if(!this.isValid)return null;const o=e==="extended";let a=hn(this,o);return a+="T",a+=mi(this,o,t,n,s,i),a}toISODate({format:e="extended"}={}){return this.isValid?hn(this,e==="extended"):null}toISOWeekDate(){return wr(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:s=!1,extendedZone:i=!1,format:o="extended"}={}){return this.isValid?(s?"T":"")+mi(this,o==="extended",t,e,n,i):null}toRFC2822(){return wr(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return wr(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?hn(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let s="HH:mm:ss.SSS";return(t||e)&&(n&&(s+=" "),t?s+="z":e&&(s+="ZZ")),wr(this,s,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():ln}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid)return Z.invalid("created by diffing an invalid DateTime");const s={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=La(t).map(Z.normalizeUnit),o=e.valueOf()>this.valueOf(),a=o?this:e,l=o?e:this,u=xl(a,l,i,s);return o?u.negate():u}diffNow(e="milliseconds",t={}){return this.diff(U.now(),e,t)}until(e){return this.isValid?se.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;const s=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=s&&s<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||U.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let s=["years","months","days","hours","minutes","seconds"],i=e.unit;return Array.isArray(e.unit)&&(s=e.unit,i=void 0),_i(t,this.plus(n),{...e,numeric:"always",units:s,unit:i})}toRelativeCalendar(e={}){return this.isValid?_i(e.base||U.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(U.isDateTime))throw new we("min requires all arguments be DateTimes");return xs(e,t=>t.valueOf(),Math.min)}static max(...e){if(!e.every(U.isDateTime))throw new we("max requires all arguments be DateTimes");return xs(e,t=>t.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});return fi(o,e,t)}static fromStringExplain(e,t,n={}){return U.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:s=null}=t,i=K.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0});return new hi(i,e)}static fromFormatParser(e,t,n={}){if(W(e)||W(t))throw new we("fromFormatParser requires an input string and a format parser");const{locale:s=null,numberingSystem:i=null}=n,o=K.fromOpts({locale:s,numberingSystem:i,defaultToEN:!0});if(!o.equals(t.locale))throw new we(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${t.locale}`);const{result:a,zone:l,specificOffset:u,invalidReason:c}=t.explainFromTokens(e);return c?U.invalid(c):Lt(a,l,n,`format ${t.format}`,e,u)}static get DATE_SHORT(){return sr}static get DATE_MED(){return Zn}static get DATE_MED_WITH_WEEKDAY(){return ia}static get DATE_FULL(){return Gn}static get DATE_HUGE(){return Yn}static get TIME_SIMPLE(){return Kn}static get TIME_WITH_SECONDS(){return Qn}static get TIME_WITH_SHORT_OFFSET(){return Xn}static get TIME_WITH_LONG_OFFSET(){return es}static get TIME_24_SIMPLE(){return ts}static get TIME_24_WITH_SECONDS(){return rs}static get TIME_24_WITH_SHORT_OFFSET(){return ns}static get TIME_24_WITH_LONG_OFFSET(){return ss}static get DATETIME_SHORT(){return is}static get DATETIME_SHORT_WITH_SECONDS(){return os}static get DATETIME_MED(){return as}static get DATETIME_MED_WITH_SECONDS(){return ls}static get DATETIME_MED_WITH_WEEKDAY(){return oa}static get DATETIME_FULL(){return cs}static get DATETIME_FULL_WITH_SECONDS(){return us}static get DATETIME_HUGE(){return hs}static get DATETIME_HUGE_WITH_SECONDS(){return fs}}function Gt(r){if(U.isDateTime(r))return r;if(r&&r.valueOf&&nt(r.valueOf()))return U.fromJSDate(r);if(r&&typeof r=="object")return U.fromObject(r);throw new we(`Unknown datetime argument: ${r}, of type ${typeof r}`)}const dn={};let pn;const rc=new Uint8Array(16),ge=[];for(let r=0;r<256;++r)ge.push((r+256).toString(16).slice(1));function nc(r,e,t){return r.msecs??=-1/0,r.seq??=0,e>r.msecs?(r.seq=t[6]<<23|t[7]<<16|t[8]<<8|t[9],r.msecs=e):(r.seq=Math.trunc(r.seq+1),r.seq===0&&r.msecs++),r}function sc(r,e,t,n,s=0){return n||(n=new Uint8Array(16),s=0),e??=Date.now(),t??=r[6]*127<<24|r[7]<<16|r[8]<<8|r[9],n[s++]=e/1099511627776&255,n[s++]=e/4294967296&255,n[s++]=e/16777216&255,n[s++]=e/65536&255,n[s++]=e/256&255,n[s++]=e&255,n[s++]=112|t>>>28&15,n[s++]=t>>>20&255,n[s++]=128|t>>>14&63,n[s++]=t>>>6&255,n[s++]=t<<2&255|r[10]&3,n[s++]=r[11],n[s++]=r[12],n[s++]=r[13],n[s++]=r[14],n[s++]=r[15],n}function ic(r,e=0){return(ge[r[e]]+ge[r[e+1]]+ge[r[e+2]]+ge[r[e+3]]+"-"+ge[r[e+4]]+ge[r[e+5]]+"-"+ge[r[e+6]]+ge[r[e+7]]+"-"+ge[r[e+8]]+ge[r[e+9]]+"-"+ge[r[e+10]]+ge[r[e+11]]+ge[r[e+12]]+ge[r[e+13]]+ge[r[e+14]]+ge[r[e+15]]).toLowerCase()}function oc(){const r=Date.now();if(!pn){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported.");pn=crypto.getRandomValues.bind(crypto)}const e=pn(rc);nc(dn,r,e);const t=sc(e,dn.msecs,dn.seq,void 0,void 0);return ic(t)}const ac=/[&<>'"]/g,lc=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34)/g,cc={"&":"&amp","<":"&lt",">":"&gt","'":"&#39",'"':"&quot"},uc={"&amp":"&","&#38":"&","&lt":"<","&#60":"<","&gt":">","&#62":">","&apos":"'","&#39":"'","&quot":'"',"&#34":'"'};class hc{getRandom(e=8){return[...Array(e)].map(()=>Math.trunc(Math.random()*36).toString(36)).join("")}getUniqId(){return"xxxxxxxx-xlsx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.trunc(Math.random()*16);return(e==="x"?t:t&3|8).toString(16)})}getUuidRfc4122(){return oc()}encode(e){return N.isString(e)?e.replace(ac,t=>cc[t]):e}decode(e){return N.isString(e)?e.replace(lc,t=>uc[t]):e}toNumber(e){const t=Number.parseFloat(e);return N.isNumber(t)?t:0}toInteger(e){return this.toNumber(Number.parseInt(e,10))}toBoolean(e,t=[]){const n=N.isString(e)?e.toLowerCase():e;return["true","y","1",1,!0,...t].includes(n)}toCamelCase(e){if(!N.isStringFilled(e))return e;const t=/[-_\s]+(.)?/g;return t.test(e)?(e=e.toLowerCase(),e=e.replace(t,(n,s)=>s?s.toUpperCase():""),e[0].toLowerCase()+e.substring(1)):e.match(/^[A-Z]+$/)?e.toLowerCase():e[0].toLowerCase()+e.slice(1)}toPascalCase(e){return N.isStringFilled(e)?this.capitalize(this.toCamelCase(e)):e}toKebabCase(e){if(!N.isStringFilled(e))return e;const t=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return t?t.map(n=>n.toLowerCase()).join("-"):e}capitalize(e){return N.isStringFilled(e)?e[0].toUpperCase()+e.substring(1):e}numberFormat(e,t=0,n=".",s=","){const i=Number.isFinite(e)?e:0,o=Number.isFinite(t)?Math.abs(t):0,a=(o?((l,u)=>{const c=Math.pow(10,u);return Math.round(l*c)/c})(i,o):Math.round(i)).toString().split(".");return a[0].length>3&&(a[0]=a[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,s)),(a[1]||"").length<o&&(a[1]=a[1]||"",a[1]+=new Array(o-a[1].length+1).join("0")),a.join(n)}toDateTime(e,t,n){return!(typeof t>"u")&&N.isStringFilled(t)?U.fromFormat(e,t,n):U.fromISO(e,n)}getDateForLog(){return U.now().toFormat("y-MM-dd HH:mm:ss")}buildQueryString(e){let t="";for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n];N.isArray(s)?s.forEach((i,o)=>{t+=encodeURIComponent(n+"["+o+"]")+"="+encodeURIComponent(i)+"&"}):t+=encodeURIComponent(n)+"="+encodeURIComponent(s)+"&"}return t.length>0&&(t=t.substring(0,t.length-1)),t}}const $=new hc;let de="";try{de=navigator?.userAgent.toLowerCase()}catch{de="?"}let fc=class{isOpera(){return de.includes("opera")}isIE(){return"attachEvent"in document&&!this.isOpera()}isIE6(){return de.includes("msie 6")}isIE7(){return de.includes("msie 7")}isIE8(){return de.includes("msie 8")}isIE9(){return"documentMode"in document&&document.documentMode>=9}isIE10(){return"documentMode"in document&&document.documentMode>=10}isSafari(){return de.includes("safari")&&!de.includes("chrome")}isFirefox(){return de.includes("firefox")}isChrome(){return de.includes("chrome")}detectIEVersion(){if(this.isOpera()||this.isSafari()||this.isFirefox()||this.isChrome())return-1;let e=-1;if(window.MSStream&&!window.ActiveXObject&&"ActiveXObject"in window?e=11:this.isIE10()?e=10:this.isIE9()?e=9:this.isIE()&&(e=8),e===-1||e===8){if(navigator.appName==="Microsoft Internet Explorer"){const t=new RegExp("MSIE ([0-9]+[.0-9]*)"),n=navigator.userAgent.match(t);N.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}if(navigator.appName==="Netscape"){e=11;const t=new RegExp("Trident/.*rv:([0-9]+[.0-9]*)");if(t.exec(navigator.userAgent)!=null){const n=navigator.userAgent.match(t);N.isArrayLike(n)&&n.length>0&&(e=Number.parseFloat(n[1]))}}}return e}isIE11(){return this.detectIEVersion()>=11}isMac(){return de.includes("macintosh")}isWin(){return de.includes("windows")}isLinux(){return de.includes("linux")&&!this.isAndroid()}isAndroid(){return de.includes("android")}isIPad(){return de.includes("ipad;")||this.isMac()&&this.isTouchDevice()}isIPhone(){return de.includes("iphone;")}isIOS(){return this.isIPad()||this.isIPhone()}isMobile(){return this.isIPhone()||this.isIPad()||this.isAndroid()||de.includes("mobile")||de.includes("touch")}isRetina(){return(window.devicePixelRatio&&window.devicePixelRatio>=2)===!0}isTouchDevice(){return"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0}isDoctype(e){const t=e||document;return t.compatMode?t.compatMode==="CSS1Compat":t.documentElement&&t.documentElement.clientHeight}isLocalStorageSupported(){try{return localStorage.setItem("test","test"),localStorage.removeItem("test"),!0}catch{return!1}}detectAndroidVersion(){const e=new RegExp("Android ([0-9]+[.0-9]*)");if(e.exec(navigator.userAgent)!=null){const t=navigator.userAgent.match(e);if(N.isArrayLike(t)&&t.length>0)return Number.parseFloat(t[1])}return 0}};const ki=new fc,Ei={sleep:1e3,speed:.001,amount:30},gn={sleep:600,speed:.01,amount:30*5};var Ti=(r=>(r.undefined="UNDEFINED",r.lead="CRM_LEAD",r.deal="CRM_DEAL",r.contact="CRM_CONTACT",r.company="CRM_COMPANY",r.oldInvoice="CRM_INVOICE",r.invoice="CRM_SMART_INVOICE",r.quote="CRM_QUOTE",r.requisite="CRM_REQUISITE",r.order="ORDER",r))(Ti||{}),Oi=(r=>(r[r.undefined=0]="undefined",r[r.lead=1]="lead",r[r.deal=2]="deal",r[r.contact=3]="contact",r[r.company=4]="company",r[r.oldInvoice=5]="oldInvoice",r[r.invoice=31]="invoice",r[r.quote=7]="quote",r[r.requisite=8]="requisite",r[r.order=14]="order",r))(Oi||{}),Ai=(r=>(r.undefined="?",r.lead="L",r.deal="D",r.contact="C",r.company="CO",r.oldInvoice="I",r.invoice="SI",r.quote="Q",r.requisite="RQ",r.order="O",r))(Ai||{}),Ii=(r=>(r[r.undefined=0]="undefined",r[r.absolute=1]="absolute",r[r.percentage=2]="percentage",r))(Ii||{}),Ci=(r=>(r[r.undefined=0]="undefined",r[r.product=1]="product",r[r.service=7]="service",r[r.sku=3]="sku",r[r.skuEmpty=6]="skuEmpty",r[r.offer=4]="offer",r[r.offerEmpty=5]="offerEmpty",r))(Ci||{}),Ni=(r=>(r.undefined="UNDEFINED",r.detail="DETAIL_PICTURE",r.preview="PREVIEW_PICTURE",r.morePhoto="MORE_PHOTO",r))(Ni||{}),Ri=(r=>(r[r.undefined=0]="undefined",r[r.mathematical=1]="mathematical",r[r.roundingUp=2]="roundingUp",r[r.roundingDown=4]="roundingDown",r))(Ri||{}),ee=(r=>(r.App="app",r.Profile="profile",r.Currency="currency",r.AppOptions="appOptions",r.UserOptions="userOptions",r))(ee||{});const pt={Free:"F",Demo:"D",Trial:"T",Paid:"P",Local:"L",Subscription:"S"},Li={[pt.Free]:"Free",[pt.Demo]:"Demo",[pt.Trial]:"Trial",[pt.Paid]:"Paid",[pt.Local]:"Local",[pt.Subscription]:"Subscription"},gt={MainSettings:"MainSettings",UfList:"UfList",UfPage:"UfPage"};var Ye=(r=>(r.NotSet="notSet",r.JsonArray="jsonArray",r.JsonObject="jsonObject",r.FloatVal="float",r.IntegerVal="integer",r.BoolYN="boolYN",r.StringVal="string",r))(Ye||{}),te=(r=>(r.Undefined="undefined",r.WebSocket="webSocket",r.LongPolling="longPolling",r))(te||{}),Ne=(r=>(r.PullConfig="bx-pull-config",r.WebsocketBlocked="bx-pull-websocket-blocked",r.LongPollingBlocked="bx-pull-longpolling-blocked",r.LoggingEnabled="bx-pull-logging-enabled",r))(Ne||{}),Re=(r=>(r.Online="online",r.Offline="offline",r.Connecting="connect",r))(Re||{}),br=(r=>(r[r.Unknown=0]="Unknown",r[r.Client=1]="Client",r[r.Backend=2]="Backend",r))(br||{}),Le=(r=>(r.Server="server",r.Client="client",r.Online="online",r.Status="status",r.Revision="revision",r))(Le||{}),Se=(r=>(r[r.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",r[r.SERVER_DIE=1001]="SERVER_DIE",r[r.CONFIG_REPLACED=3e3]="CONFIG_REPLACED",r[r.CHANNEL_EXPIRED=3001]="CHANNEL_EXPIRED",r[r.SERVER_RESTARTED=3002]="SERVER_RESTARTED",r[r.CONFIG_EXPIRED=3003]="CONFIG_EXPIRED",r[r.MANUAL=3004]="MANUAL",r[r.STUCK=3005]="STUCK",r[r.WRONG_CHANNEL_ID=4010]="WRONG_CHANNEL_ID",r))(Se||{}),Yt=(r=>(r.CHANNEL_EXPIRE="CHANNEL_EXPIRE",r.CONFIG_EXPIRE="CONFIG_EXPIRE",r.SERVER_RESTART="SERVER_RESTART",r))(Yt||{}),mn=(r=>(r.Shared="shared",r.Personal="personal",r))(mn||{});const yn={Parse:{code:-32700,message:"Parse error"},InvalidRequest:{code:-32600,message:"Invalid Request"},MethodNotFound:{code:-32601,message:"Method not found"},InvalidParams:{code:-32602,message:"Invalid params"},Internal:{code:-32603,message:"Internal error"}};var Ve=(r=>(r.Publish="publish",r.GetUsersLastSeen="getUsersLastSeen",r.Ping="ping",r.ListChannels="listChannels",r.SubscribeStatusChange="subscribeStatusChange",r.UnsubscribeStatusChange="unsubscribeStatusChange",r))(Ve||{});class $e{_errors;_data;constructor(e){this._errors=new Map,this._data=e??null}get isSuccess(){return this._errors.size===0}get errors(){return this._errors}setData(e){return this._data=e,this}getData(){return this._data}addError(e,t){const n=t??$.getUuidRfc4122(),s=typeof e=="string"?new Error(e):e;return this._errors.set(n,s),this}addErrors(e){for(const t of e)this.addError(t);return this}getErrors(){return this._errors.values()}hasError(e){return this._errors.has(e)}getErrorMessages(){return Array.from(this._errors.values(),e=>e.message)}toString(){const e=this.isSuccess?"success":"failure",t=this.safeStringify(this._data);return this.isSuccess?`Result(${e}): ${t}`:`Result(${e}): ${t}
2
2
  Errors: ${this.getErrorMessages().join(", ")}`}safeStringify(e){try{return JSON.stringify(e,this.replacer,2)}catch{return"[Unable to serialize data]"}}replacer(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:t}static ok(e){return new $e(e)}static fail(e,t){return new $e().addError(e,t)}}class We extends Error{code;_status;requestInfo;timestamp;originalError;constructor(e){const t=We.formatErrorMessage(e);super(t),this.name="AjaxError",this.code=e.code,this._status=e.status,this.requestInfo=e.requestInfo,this.originalError=e.originalError,this.timestamp=new Date,this.cleanErrorStack()}get answerError(){return{error:this.message,errorDescription:""}}get status(){return this._status}set status(e){this._status=e}static fromResponse(e){return new We({code:e.data?.error||"unknown_error",description:e.data?.error_description,status:e.status,requestInfo:{method:e.config?.method?.toUpperCase(),url:e.config?.url,params:e.config?.params}})}static fromException(e,t){return e instanceof We?e:new We({code:t?.code||"internal_error",status:t?.status||500,description:e instanceof Error?e.message:String(e),requestInfo:t?.requestInfo,originalError:e})}toJSON(){return{name:this.name,code:this.code,message:this.message,status:this._status,timestamp:this.timestamp.toISOString(),requestInfo:this.requestInfo,stack:this.stack}}toString(){let e=`[${this.name}] ${this.code} (${this._status}): ${this.message}`;return this.requestInfo&&(e+=`
3
3
  Request: ${this.requestInfo.method} ${this.requestInfo.url}`),this.stack&&(e+=`
4
4
  Stack trace:
5
5
  ${this.stack}`),e}static formatErrorMessage(e){const t=[e.code];return e.description&&t.push(`- ${e.description}`),e.requestInfo?.method&&e.requestInfo.url&&t.push(`(on ${e.requestInfo.method} ${e.requestInfo.url})`),t.join(" ")}cleanErrorStack(){typeof this.stack=="string"&&(this.stack=this.stack.split(`
6
6
  `).filter(e=>!e.includes("AjaxError.constructor")).join(`
7
- `))}}class Sr extends $e{_status;_query;_data;constructor(e){super(),this._data=Object.freeze(e.answer),this._query=Object.freeze(structuredClone(e.query)),this._status=e.status,this.#e()}#e(){const{error:e}=this._data;if(!e)return;const t=this.#t(e);this.addError(this.#r(t),"base-error")}#t(e){return typeof e=="string"?{code:e,description:this._data.error_description||""}:{code:e.error,description:e.error_description||""}}#r(e){return new We({code:String(this._status),description:e.description,status:this._status,requestInfo:{method:this._query.method,params:this._query.params}})}getData(){return Object.freeze({result:this._data.result,next:this._data.next,total:this._data.total,time:this._data.time})}hasMore(){return this.isMore()}isMore(){return N.isNumber(this._data?.next)}getTotal(){return $.toInteger(this._data?.total)}getStatus(){return this._status}getQuery(){return this._query}async fetchNext(e){const t=await this.getNext(e);return t===!1?null:t}async getNext(e){if(!this.isMore()||!this.isSuccess)return!1;const t=this.#n();return e.call(t.method,t.params,t.start)}#n(){return{...this._query,start:$.toInteger(this._data.next)}}setData(){throw new ReferenceError("AjaxResult does not allow data modification")}}let hc=class{#e;#t;#r;_logger=null;constructor(){this.#e=ki,this.#r=0,this.#t=0}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}get params(){return{...this.#e}}set params(e){this.#e=e,this.getLogger().log("new restriction manager params",e)}check(e=""){return new Promise(t=>{if(this.#s(),this.#i())return this.getLogger().log(`>> no sleep >>> ${e}`,this.#n()),this.#o(),t(null);{const n=i=>{this.getLogger().info(`>> go sleep >>> ${e}`,this.#n()),setTimeout(()=>{i()},this.#e.sleep)},s=()=>{if(this.#s(),this.#i())return this.getLogger().info(`<< stop sleep <<< ${e}`,this.#n()),this.#o(),t(null);n(s)};n(s)}})}#n(){return`${this.#r.toFixed(4)} from ${this.#e.amount}`}#s(){this.#t>0&&(this.#r-=(Date.now()-this.#t)*this.#e.speed,this.#r<0&&(this.#r=0)),this.#t=Date.now()}#o(){this.#r++}#i(){return this.#r<this.#e.amount}};const fc="X-Request-ID",dc="bx24_request_id",pc="bx24_sdk_ver";let gc=class{getQueryStringParameterName(){return dc}getQueryStringSdkParameterName(){return pc}generate(){return $.getUuidRfc4122()}getRequestId(){return this.generate()}getHeaderFieldName(){return fc}};function Fi(r,e){return function(){return r.apply(e,arguments)}}const{toString:mc}=Object.prototype,{getPrototypeOf:yn}=Object,_r=(r=>e=>{const t=mc.call(e);return r[t]||(r[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),qe=r=>(r=r.toLowerCase(),e=>_r(e)===r),vr=r=>e=>typeof e===r,{isArray:Lt}=Array,Kt=vr("undefined");function yc(r){return r!==null&&!Kt(r)&&r.constructor!==null&&!Kt(r.constructor)&&Fe(r.constructor.isBuffer)&&r.constructor.isBuffer(r)}const Li=qe("ArrayBuffer");function wc(r){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(r):e=r&&r.buffer&&Li(r.buffer),e}const bc=vr("string"),Fe=vr("function"),Mi=vr("number"),kr=r=>r!==null&&typeof r=="object",Sc=r=>r===!0||r===!1,Er=r=>{if(_r(r)!=="object")return!1;const e=yn(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)},_c=qe("Date"),vc=qe("File"),kc=qe("Blob"),Ec=qe("FileList"),Tc=r=>kr(r)&&Fe(r.pipe),Oc=r=>{let e;return r&&(typeof FormData=="function"&&r instanceof FormData||Fe(r.append)&&((e=_r(r))==="formdata"||e==="object"&&Fe(r.toString)&&r.toString()==="[object FormData]"))},Ac=qe("URLSearchParams"),[Ic,Cc,Nc,Rc]=["ReadableStream","Request","Response","Headers"].map(qe),Fc=r=>r.trim?r.trim():r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Qt(r,e,{allOwnKeys:t=!1}={}){if(r===null||typeof r>"u")return;let n,s;if(typeof r!="object"&&(r=[r]),Lt(r))for(n=0,s=r.length;n<s;n++)e.call(null,r[n],n,r);else{const i=t?Object.getOwnPropertyNames(r):Object.keys(r),o=i.length;let a;for(n=0;n<o;n++)a=i[n],e.call(null,r[a],a,r)}}function Pi(r,e){e=e.toLowerCase();const t=Object.keys(r);let n=t.length,s;for(;n-- >0;)if(s=t[n],e===s.toLowerCase())return s;return null}const mt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,xi=r=>!Kt(r)&&r!==mt;function wn(){const{caseless:r}=xi(this)&&this||{},e={},t=(n,s)=>{const i=r&&Pi(e,s)||s;Er(e[i])&&Er(n)?e[i]=wn(e[i],n):Er(n)?e[i]=wn({},n):Lt(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&Qt(arguments[n],t);return e}const Lc=(r,e,t,{allOwnKeys:n}={})=>(Qt(e,(s,i)=>{t&&Fe(s)?r[i]=Fi(s,t):r[i]=s},{allOwnKeys:n}),r),Mc=r=>(r.charCodeAt(0)===65279&&(r=r.slice(1)),r),Pc=(r,e,t,n)=>{r.prototype=Object.create(e.prototype,n),r.prototype.constructor=r,Object.defineProperty(r,"super",{value:e.prototype}),t&&Object.assign(r.prototype,t)},xc=(r,e,t,n)=>{let s,i,o;const a={};if(e=e||{},r==null)return e;do{for(s=Object.getOwnPropertyNames(r),i=s.length;i-- >0;)o=s[i],(!n||n(o,r,e))&&!a[o]&&(e[o]=r[o],a[o]=!0);r=t!==!1&&yn(r)}while(r&&(!t||t(r,e))&&r!==Object.prototype);return e},Dc=(r,e,t)=>{r=String(r),(t===void 0||t>r.length)&&(t=r.length),t-=e.length;const n=r.indexOf(e,t);return n!==-1&&n===t},jc=r=>{if(!r)return null;if(Lt(r))return r;let e=r.length;if(!Mi(e))return null;const t=new Array(e);for(;e-- >0;)t[e]=r[e];return t},Uc=(r=>e=>r&&e instanceof r)(typeof Uint8Array<"u"&&yn(Uint8Array)),Bc=(r,e)=>{const n=(r&&r[Symbol.iterator]).call(r);let s;for(;(s=n.next())&&!s.done;){const i=s.value;e.call(r,i[0],i[1])}},$c=(r,e)=>{let t;const n=[];for(;(t=r.exec(e))!==null;)n.push(t);return n},Wc=qe("HTMLFormElement"),qc=r=>r.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,n,s){return n.toUpperCase()+s}),Di=(({hasOwnProperty:r})=>(e,t)=>r.call(e,t))(Object.prototype),Vc=qe("RegExp"),ji=(r,e)=>{const t=Object.getOwnPropertyDescriptors(r),n={};Qt(t,(s,i)=>{let o;(o=e(s,i,r))!==!1&&(n[i]=o||s)}),Object.defineProperties(r,n)},Hc=r=>{ji(r,(e,t)=>{if(Fe(r)&&["arguments","caller","callee"].indexOf(t)!==-1)return!1;const n=r[t];if(Fe(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},zc=(r,e)=>{const t={},n=s=>{s.forEach(i=>{t[i]=!0})};return Lt(r)?n(r):n(String(r).split(e)),t},Jc=()=>{},Zc=(r,e)=>r!=null&&Number.isFinite(r=+r)?r:e;function Gc(r){return!!(r&&Fe(r.append)&&r[Symbol.toStringTag]==="FormData"&&r[Symbol.iterator])}const Yc=r=>{const e=new Array(10),t=(n,s)=>{if(kr(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;const i=Lt(n)?[]:{};return Qt(n,(o,a)=>{const l=t(o,s+1);!Kt(l)&&(i[a]=l)}),e[s]=void 0,i}}return n};return t(r,0)},Kc=qe("AsyncFunction"),Qc=r=>r&&(kr(r)||Fe(r))&&Fe(r.then)&&Fe(r.catch),Ui=((r,e)=>r?setImmediate:e?((t,n)=>(mt.addEventListener("message",({source:s,data:i})=>{s===mt&&i===t&&n.length&&n.shift()()},!1),s=>{n.push(s),mt.postMessage(t,"*")}))(`axios@${Math.random()}`,[]):t=>setTimeout(t))(typeof setImmediate=="function",Fe(mt.postMessage)),Xc=typeof queueMicrotask<"u"?queueMicrotask.bind(mt):typeof process<"u"&&process.nextTick||Ui,v={isArray:Lt,isArrayBuffer:Li,isBuffer:yc,isFormData:Oc,isArrayBufferView:wc,isString:bc,isNumber:Mi,isBoolean:Sc,isObject:kr,isPlainObject:Er,isReadableStream:Ic,isRequest:Cc,isResponse:Nc,isHeaders:Rc,isUndefined:Kt,isDate:_c,isFile:vc,isBlob:kc,isRegExp:Vc,isFunction:Fe,isStream:Tc,isURLSearchParams:Ac,isTypedArray:Uc,isFileList:Ec,forEach:Qt,merge:wn,extend:Lc,trim:Fc,stripBOM:Mc,inherits:Pc,toFlatObject:xc,kindOf:_r,kindOfTest:qe,endsWith:Dc,toArray:jc,forEachEntry:Bc,matchAll:$c,isHTMLForm:Wc,hasOwnProperty:Di,hasOwnProp:Di,reduceDescriptors:ji,freezeMethods:Hc,toObjectSet:zc,toCamelCase:qc,noop:Jc,toFiniteNumber:Zc,findKey:Pi,global:mt,isContextDefined:xi,isSpecCompliantForm:Gc,toJSONObject:Yc,isAsyncFn:Kc,isThenable:Qc,setImmediate:Ui,asap:Xc};function V(r,e,t,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=r,this.name="AxiosError",e&&(this.code=e),t&&(this.config=t),n&&(this.request=n),s&&(this.response=s,this.status=s.status?s.status:null)}v.inherits(V,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:v.toJSONObject(this.config),code:this.code,status:this.status}}});const Bi=V.prototype,$i={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(r=>{$i[r]={value:r}}),Object.defineProperties(V,$i),Object.defineProperty(Bi,"isAxiosError",{value:!0}),V.from=(r,e,t,n,s,i)=>{const o=Object.create(Bi);return v.toFlatObject(r,o,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),V.call(o,r.message,e,t,n,s),o.cause=r,o.name=r.name,i&&Object.assign(o,i),o};const eu=null;function bn(r){return v.isPlainObject(r)||v.isArray(r)}function Wi(r){return v.endsWith(r,"[]")?r.slice(0,-2):r}function qi(r,e,t){return r?r.concat(e).map(function(s,i){return s=Wi(s),!t&&i?"["+s+"]":s}).join(t?".":""):e}function tu(r){return v.isArray(r)&&!r.some(bn)}const ru=v.toFlatObject(v,{},null,function(e){return/^is[A-Z]/.test(e)});function Tr(r,e,t){if(!v.isObject(r))throw new TypeError("target must be an object");e=e||new FormData,t=v.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,m){return!v.isUndefined(m[g])});const n=t.metaTokens,s=t.visitor||c,i=t.dots,o=t.indexes,l=(t.Blob||typeof Blob<"u"&&Blob)&&v.isSpecCompliantForm(e);if(!v.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(v.isDate(p))return p.toISOString();if(!l&&v.isBlob(p))throw new V("Blob is not supported. Use a Buffer instead.");return v.isArrayBuffer(p)||v.isTypedArray(p)?l&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function c(p,g,m){let y=p;if(p&&!m&&typeof p=="object"){if(v.endsWith(g,"{}"))g=n?g:g.slice(0,-2),p=JSON.stringify(p);else if(v.isArray(p)&&tu(p)||(v.isFileList(p)||v.endsWith(g,"[]"))&&(y=v.toArray(p)))return g=Wi(g),y.forEach(function(_,b){!(v.isUndefined(_)||_===null)&&e.append(o===!0?qi([g],b,i):o===null?g:g+"[]",u(_))}),!1}return bn(p)?!0:(e.append(qi(m,g,i),u(p)),!1)}const f=[],h=Object.assign(ru,{defaultVisitor:c,convertValue:u,isVisitable:bn});function d(p,g){if(!v.isUndefined(p)){if(f.indexOf(p)!==-1)throw Error("Circular reference detected in "+g.join("."));f.push(p),v.forEach(p,function(y,w){(!(v.isUndefined(y)||y===null)&&s.call(e,y,v.isString(w)?w.trim():w,g,h))===!0&&d(y,g?g.concat(w):[w])}),f.pop()}}if(!v.isObject(r))throw new TypeError("data must be an object");return d(r),e}function Vi(r){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(r).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function Sn(r,e){this._pairs=[],r&&Tr(r,this,e)}const Hi=Sn.prototype;Hi.append=function(e,t){this._pairs.push([e,t])},Hi.toString=function(e){const t=e?function(n){return e.call(this,n,Vi)}:Vi;return this._pairs.map(function(s){return t(s[0])+"="+t(s[1])},"").join("&")};function nu(r){return encodeURIComponent(r).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function zi(r,e,t){if(!e)return r;const n=t&&t.encode||nu;v.isFunction(t)&&(t={serialize:t});const s=t&&t.serialize;let i;if(s?i=s(e,t):i=v.isURLSearchParams(e)?e.toString():new Sn(e,t).toString(n),i){const o=r.indexOf("#");o!==-1&&(r=r.slice(0,o)),r+=(r.indexOf("?")===-1?"?":"&")+i}return r}class Ji{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){v.forEach(this.handlers,function(n){n!==null&&e(n)})}}const Zi={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},su={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Sn,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},_n=typeof window<"u"&&typeof document<"u",vn=typeof navigator=="object"&&navigator||void 0,iu=_n&&(!vn||["ReactNative","NativeScript","NS"].indexOf(vn.product)<0),ou=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",au=_n&&window.location.href||"http://localhost",_e={...{__proto__:null,hasBrowserEnv:_n,hasStandardBrowserEnv:iu,hasStandardBrowserWebWorkerEnv:ou,navigator:vn,origin:au},...su};function lu(r,e){return Tr(r,new _e.classes.URLSearchParams,Object.assign({visitor:function(t,n,s,i){return _e.isNode&&v.isBuffer(t)?(this.append(n,t.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function cu(r){return v.matchAll(/\w+|\[(\w*)]/g,r).map(e=>e[0]==="[]"?"":e[1]||e[0])}function uu(r){const e={},t=Object.keys(r);let n;const s=t.length;let i;for(n=0;n<s;n++)i=t[n],e[i]=r[i];return e}function Gi(r){function e(t,n,s,i){let o=t[i++];if(o==="__proto__")return!0;const a=Number.isFinite(+o),l=i>=t.length;return o=!o&&v.isArray(s)?s.length:o,l?(v.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!a):((!s[o]||!v.isObject(s[o]))&&(s[o]=[]),e(t,n,s[o],i)&&v.isArray(s[o])&&(s[o]=uu(s[o])),!a)}if(v.isFormData(r)&&v.isFunction(r.entries)){const t={};return v.forEachEntry(r,(n,s)=>{e(cu(n),s,t,0)}),t}return null}function hu(r,e,t){if(v.isString(r))try{return(e||JSON.parse)(r),v.trim(r)}catch(n){if(n.name!=="SyntaxError")throw n}return(t||JSON.stringify)(r)}const Xt={transitional:Zi,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",s=n.indexOf("application/json")>-1,i=v.isObject(e);if(i&&v.isHTMLForm(e)&&(e=new FormData(e)),v.isFormData(e))return s?JSON.stringify(Gi(e)):e;if(v.isArrayBuffer(e)||v.isBuffer(e)||v.isStream(e)||v.isFile(e)||v.isBlob(e)||v.isReadableStream(e))return e;if(v.isArrayBufferView(e))return e.buffer;if(v.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return lu(e,this.formSerializer).toString();if((a=v.isFileList(e))||n.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Tr(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return i||s?(t.setContentType("application/json",!1),hu(e)):e}],transformResponse:[function(e){const t=this.transitional||Xt.transitional,n=t&&t.forcedJSONParsing,s=this.responseType==="json";if(v.isResponse(e)||v.isReadableStream(e))return e;if(e&&v.isString(e)&&(n&&!this.responseType||s)){const o=!(t&&t.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(a){if(o)throw a.name==="SyntaxError"?V.from(a,V.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:_e.classes.FormData,Blob:_e.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch"],r=>{Xt.headers[r]={}});const fu=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),du=r=>{const e={};let t,n,s;return r&&r.split(`
8
- `).forEach(function(o){s=o.indexOf(":"),t=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!t||e[t]&&fu[t])&&(t==="set-cookie"?e[t]?e[t].push(n):e[t]=[n]:e[t]=e[t]?e[t]+", "+n:n)}),e},Yi=Symbol("internals");function er(r){return r&&String(r).trim().toLowerCase()}function Or(r){return r===!1||r==null?r:v.isArray(r)?r.map(Or):String(r)}function pu(r){const e=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=t.exec(r);)e[n[1]]=n[2];return e}const gu=r=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(r.trim());function kn(r,e,t,n,s){if(v.isFunction(n))return n.call(this,e,t);if(s&&(e=t),!!v.isString(e)){if(v.isString(n))return e.indexOf(n)!==-1;if(v.isRegExp(n))return n.test(e)}}function mu(r){return r.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,n)=>t.toUpperCase()+n)}function yu(r,e){const t=v.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(r,n+t,{value:function(s,i,o){return this[n].call(this,e,s,i,o)},configurable:!0})})}let Te=class{constructor(e){e&&this.set(e)}set(e,t,n){const s=this;function i(a,l,u){const c=er(l);if(!c)throw new Error("header name must be a non-empty string");const f=v.findKey(s,c);(!f||s[f]===void 0||u===!0||u===void 0&&s[f]!==!1)&&(s[f||l]=Or(a))}const o=(a,l)=>v.forEach(a,(u,c)=>i(u,c,l));if(v.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(v.isString(e)&&(e=e.trim())&&!gu(e))o(du(e),t);else if(v.isHeaders(e))for(const[a,l]of e.entries())i(l,a,n);else e!=null&&i(t,e,n);return this}get(e,t){if(e=er(e),e){const n=v.findKey(this,e);if(n){const s=this[n];if(!t)return s;if(t===!0)return pu(s);if(v.isFunction(t))return t.call(this,s,n);if(v.isRegExp(t))return t.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=er(e),e){const n=v.findKey(this,e);return!!(n&&this[n]!==void 0&&(!t||kn(this,this[n],n,t)))}return!1}delete(e,t){const n=this;let s=!1;function i(o){if(o=er(o),o){const a=v.findKey(n,o);a&&(!t||kn(n,n[a],a,t))&&(delete n[a],s=!0)}}return v.isArray(e)?e.forEach(i):i(e),s}clear(e){const t=Object.keys(this);let n=t.length,s=!1;for(;n--;){const i=t[n];(!e||kn(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){const t=this,n={};return v.forEach(this,(s,i)=>{const o=v.findKey(n,i);if(o){t[o]=Or(s),delete t[i];return}const a=e?mu(i):String(i).trim();a!==i&&delete t[i],t[a]=Or(s),n[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return v.forEach(this,(n,s)=>{n!=null&&n!==!1&&(t[s]=e&&v.isArray(n)?n.join(", "):n)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join(`
9
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach(s=>n.set(s)),n}static accessor(e){const n=(this[Yi]=this[Yi]={accessors:{}}).accessors,s=this.prototype;function i(o){const a=er(o);n[a]||(yu(s,o),n[a]=!0)}return v.isArray(e)?e.forEach(i):i(e),this}};Te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),v.reduceDescriptors(Te.prototype,({value:r},e)=>{let t=e[0].toUpperCase()+e.slice(1);return{get:()=>r,set(n){this[t]=n}}}),v.freezeMethods(Te);function En(r,e){const t=this||Xt,n=e||t,s=Te.from(n.headers);let i=n.data;return v.forEach(r,function(a){i=a.call(t,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function Ki(r){return!!(r&&r.__CANCEL__)}function Mt(r,e,t){V.call(this,r??"canceled",V.ERR_CANCELED,e,t),this.name="CanceledError"}v.inherits(Mt,V,{__CANCEL__:!0});function Qi(r,e,t){const n=t.config.validateStatus;!t.status||!n||n(t.status)?r(t):e(new V("Request failed with status code "+t.status,[V.ERR_BAD_REQUEST,V.ERR_BAD_RESPONSE][Math.floor(t.status/100)-4],t.config,t.request,t))}function wu(r){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(r);return e&&e[1]||""}function bu(r,e){r=r||10;const t=new Array(r),n=new Array(r);let s=0,i=0,o;return e=e!==void 0?e:1e3,function(l){const u=Date.now(),c=n[i];o||(o=u),t[s]=l,n[s]=u;let f=i,h=0;for(;f!==s;)h+=t[f++],f=f%r;if(s=(s+1)%r,s===i&&(i=(i+1)%r),u-o<e)return;const d=c&&u-c;return d?Math.round(h*1e3/d):void 0}}function Su(r,e){let t=0,n=1e3/e,s,i;const o=(u,c=Date.now())=>{t=c,s=null,i&&(clearTimeout(i),i=null),r.apply(null,u)};return[(...u)=>{const c=Date.now(),f=c-t;f>=n?o(u,c):(s=u,i||(i=setTimeout(()=>{i=null,o(s)},n-f)))},()=>s&&o(s)]}const Ar=(r,e,t=3)=>{let n=0;const s=bu(50,250);return Su(i=>{const o=i.loaded,a=i.lengthComputable?i.total:void 0,l=o-n,u=s(l),c=o<=a;n=o;const f={loaded:o,total:a,progress:a?o/a:void 0,bytes:l,rate:u||void 0,estimated:u&&a&&c?(a-o)/u:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};r(f)},t)},Xi=(r,e)=>{const t=r!=null;return[n=>e[0]({lengthComputable:t,total:r,loaded:n}),e[1]]},eo=r=>(...e)=>v.asap(()=>r(...e)),_u=_e.hasStandardBrowserEnv?((r,e)=>t=>(t=new URL(t,_e.origin),r.protocol===t.protocol&&r.host===t.host&&(e||r.port===t.port)))(new URL(_e.origin),_e.navigator&&/(msie|trident)/i.test(_e.navigator.userAgent)):()=>!0,vu=_e.hasStandardBrowserEnv?{write(r,e,t,n,s,i){const o=[r+"="+encodeURIComponent(e)];v.isNumber(t)&&o.push("expires="+new Date(t).toGMTString()),v.isString(n)&&o.push("path="+n),v.isString(s)&&o.push("domain="+s),i===!0&&o.push("secure"),document.cookie=o.join("; ")},read(r){const e=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(r){this.write(r,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ku(r){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(r)}function Eu(r,e){return e?r.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):r}function to(r,e,t){let n=!ku(e);return r&&(n||t==!1)?Eu(r,e):e}const ro=r=>r instanceof Te?{...r}:r;function yt(r,e){e=e||{};const t={};function n(u,c,f,h){return v.isPlainObject(u)&&v.isPlainObject(c)?v.merge.call({caseless:h},u,c):v.isPlainObject(c)?v.merge({},c):v.isArray(c)?c.slice():c}function s(u,c,f,h){if(v.isUndefined(c)){if(!v.isUndefined(u))return n(void 0,u,f,h)}else return n(u,c,f,h)}function i(u,c){if(!v.isUndefined(c))return n(void 0,c)}function o(u,c){if(v.isUndefined(c)){if(!v.isUndefined(u))return n(void 0,u)}else return n(void 0,c)}function a(u,c,f){if(f in e)return n(u,c);if(f in r)return n(void 0,u)}const l={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(u,c,f)=>s(ro(u),ro(c),f,!0)};return v.forEach(Object.keys(Object.assign({},r,e)),function(c){const f=l[c]||s,h=f(r[c],e[c],c);v.isUndefined(h)&&f!==a||(t[c]=h)}),t}const no=r=>{const e=yt({},r);let{data:t,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:a}=e;e.headers=o=Te.from(o),e.url=zi(to(e.baseURL,e.url,e.allowAbsoluteUrls),r.params,r.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(v.isFormData(t)){if(_e.hasStandardBrowserEnv||_e.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((l=o.getContentType())!==!1){const[u,...c]=l?l.split(";").map(f=>f.trim()).filter(Boolean):[];o.setContentType([u||"multipart/form-data",...c].join("; "))}}if(_e.hasStandardBrowserEnv&&(n&&v.isFunction(n)&&(n=n(e)),n||n!==!1&&_u(e.url))){const u=s&&i&&vu.read(i);u&&o.set(s,u)}return e},Tu=typeof XMLHttpRequest<"u"&&function(r){return new Promise(function(t,n){const s=no(r);let i=s.data;const o=Te.from(s.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:u}=s,c,f,h,d,p;function g(){d&&d(),p&&p(),s.cancelToken&&s.cancelToken.unsubscribe(c),s.signal&&s.signal.removeEventListener("abort",c)}let m=new XMLHttpRequest;m.open(s.method.toUpperCase(),s.url,!0),m.timeout=s.timeout;function y(){if(!m)return;const _=Te.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),k={data:!a||a==="text"||a==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:_,config:r,request:m};Qi(function(E){t(E),g()},function(E){n(E),g()},k),m=null}"onloadend"in m?m.onloadend=y:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.indexOf("file:")===0)||setTimeout(y)},m.onabort=function(){m&&(n(new V("Request aborted",V.ECONNABORTED,r,m)),m=null)},m.onerror=function(){n(new V("Network Error",V.ERR_NETWORK,r,m)),m=null},m.ontimeout=function(){let b=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||Zi;s.timeoutErrorMessage&&(b=s.timeoutErrorMessage),n(new V(b,k.clarifyTimeoutError?V.ETIMEDOUT:V.ECONNABORTED,r,m)),m=null},i===void 0&&o.setContentType(null),"setRequestHeader"in m&&v.forEach(o.toJSON(),function(b,k){m.setRequestHeader(k,b)}),v.isUndefined(s.withCredentials)||(m.withCredentials=!!s.withCredentials),a&&a!=="json"&&(m.responseType=s.responseType),u&&([h,p]=Ar(u,!0),m.addEventListener("progress",h)),l&&m.upload&&([f,d]=Ar(l),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",d)),(s.cancelToken||s.signal)&&(c=_=>{m&&(n(!_||_.type?new Mt(null,r,m):_),m.abort(),m=null)},s.cancelToken&&s.cancelToken.subscribe(c),s.signal&&(s.signal.aborted?c():s.signal.addEventListener("abort",c)));const w=wu(s.url);if(w&&_e.protocols.indexOf(w)===-1){n(new V("Unsupported protocol "+w+":",V.ERR_BAD_REQUEST,r));return}m.send(i||null)})},Ou=(r,e)=>{const{length:t}=r=r?r.filter(Boolean):[];if(e||t){let n=new AbortController,s;const i=function(u){if(!s){s=!0,a();const c=u instanceof Error?u:this.reason;n.abort(c instanceof V?c:new Mt(c instanceof Error?c.message:c))}};let o=e&&setTimeout(()=>{o=null,i(new V(`timeout ${e} of ms exceeded`,V.ETIMEDOUT))},e);const a=()=>{r&&(o&&clearTimeout(o),o=null,r.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),r=null)};r.forEach(u=>u.addEventListener("abort",i));const{signal:l}=n;return l.unsubscribe=()=>v.asap(a),l}},Au=function*(r,e){let t=r.byteLength;if(t<e){yield r;return}let n=0,s;for(;n<t;)s=n+e,yield r.slice(n,s),n=s},Iu=async function*(r,e){for await(const t of Cu(r))yield*Au(t,e)},Cu=async function*(r){if(r[Symbol.asyncIterator]){yield*r;return}const e=r.getReader();try{for(;;){const{done:t,value:n}=await e.read();if(t)break;yield n}}finally{await e.cancel()}},so=(r,e,t,n)=>{const s=Iu(r,e);let i=0,o,a=l=>{o||(o=!0,n&&n(l))};return new ReadableStream({async pull(l){try{const{done:u,value:c}=await s.next();if(u){a(),l.close();return}let f=c.byteLength;if(t){let h=i+=f;t(h)}l.enqueue(new Uint8Array(c))}catch(u){throw a(u),u}},cancel(l){return a(l),s.return()}},{highWaterMark:2})},Ir=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",io=Ir&&typeof ReadableStream=="function",Nu=Ir&&(typeof TextEncoder=="function"?(r=>e=>r.encode(e))(new TextEncoder):async r=>new Uint8Array(await new Response(r).arrayBuffer())),oo=(r,...e)=>{try{return!!r(...e)}catch{return!1}},Ru=io&&oo(()=>{let r=!1;const e=new Request(_e.origin,{body:new ReadableStream,method:"POST",get duplex(){return r=!0,"half"}}).headers.has("Content-Type");return r&&!e}),ao=64*1024,Tn=io&&oo(()=>v.isReadableStream(new Response("").body)),Cr={stream:Tn&&(r=>r.body)};Ir&&(r=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Cr[e]&&(Cr[e]=v.isFunction(r[e])?t=>t[e]():(t,n)=>{throw new V(`Response type '${e}' is not supported`,V.ERR_NOT_SUPPORT,n)})})})(new Response);const Fu=async r=>{if(r==null)return 0;if(v.isBlob(r))return r.size;if(v.isSpecCompliantForm(r))return(await new Request(_e.origin,{method:"POST",body:r}).arrayBuffer()).byteLength;if(v.isArrayBufferView(r)||v.isArrayBuffer(r))return r.byteLength;if(v.isURLSearchParams(r)&&(r=r+""),v.isString(r))return(await Nu(r)).byteLength},Lu=async(r,e)=>{const t=v.toFiniteNumber(r.getContentLength());return t??Fu(e)},On={http:eu,xhr:Tu,fetch:Ir&&(async r=>{let{url:e,method:t,data:n,signal:s,cancelToken:i,timeout:o,onDownloadProgress:a,onUploadProgress:l,responseType:u,headers:c,withCredentials:f="same-origin",fetchOptions:h}=no(r);u=u?(u+"").toLowerCase():"text";let d=Ou([s,i&&i.toAbortSignal()],o),p;const g=d&&d.unsubscribe&&(()=>{d.unsubscribe()});let m;try{if(l&&Ru&&t!=="get"&&t!=="head"&&(m=await Lu(c,n))!==0){let k=new Request(e,{method:"POST",body:n,duplex:"half"}),S;if(v.isFormData(n)&&(S=k.headers.get("content-type"))&&c.setContentType(S),k.body){const[E,R]=Xi(m,Ar(eo(l)));n=so(k.body,ao,E,R)}}v.isString(f)||(f=f?"include":"omit");const y="credentials"in Request.prototype;p=new Request(e,{...h,signal:d,method:t.toUpperCase(),headers:c.normalize().toJSON(),body:n,duplex:"half",credentials:y?f:void 0});let w=await fetch(p);const _=Tn&&(u==="stream"||u==="response");if(Tn&&(a||_&&g)){const k={};["status","statusText","headers"].forEach(D=>{k[D]=w[D]});const S=v.toFiniteNumber(w.headers.get("content-length")),[E,R]=a&&Xi(S,Ar(eo(a),!0))||[];w=new Response(so(w.body,ao,E,()=>{R&&R(),g&&g()}),k)}u=u||"text";let b=await Cr[v.findKey(Cr,u)||"text"](w,r);return!_&&g&&g(),await new Promise((k,S)=>{Qi(k,S,{data:b,headers:Te.from(w.headers),status:w.status,statusText:w.statusText,config:r,request:p})})}catch(y){throw g&&g(),y&&y.name==="TypeError"&&/fetch/i.test(y.message)?Object.assign(new V("Network Error",V.ERR_NETWORK,r,p),{cause:y.cause||y}):V.from(y,y&&y.code,r,p)}})};v.forEach(On,(r,e)=>{if(r){try{Object.defineProperty(r,"name",{value:e})}catch{}Object.defineProperty(r,"adapterName",{value:e})}});const lo=r=>`- ${r}`,Mu=r=>v.isFunction(r)||r===null||r===!1,co={getAdapter:r=>{r=v.isArray(r)?r:[r];const{length:e}=r;let t,n;const s={};for(let i=0;i<e;i++){t=r[i];let o;if(n=t,!Mu(t)&&(n=On[(o=String(t)).toLowerCase()],n===void 0))throw new V(`Unknown adapter '${o}'`);if(n)break;s[o||"#"+i]=n}if(!n){const i=Object.entries(s).map(([a,l])=>`adapter ${a} `+(l===!1?"is not supported by the environment":"is not available in the build"));let o=e?i.length>1?`since :
10
- `+i.map(lo).join(`
11
- `):" "+lo(i[0]):"as no adapter specified";throw new V("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return n},adapters:On};function An(r){if(r.cancelToken&&r.cancelToken.throwIfRequested(),r.signal&&r.signal.aborted)throw new Mt(null,r)}function uo(r){return An(r),r.headers=Te.from(r.headers),r.data=En.call(r,r.transformRequest),["post","put","patch"].indexOf(r.method)!==-1&&r.headers.setContentType("application/x-www-form-urlencoded",!1),co.getAdapter(r.adapter||Xt.adapter)(r).then(function(n){return An(r),n.data=En.call(r,r.transformResponse,n),n.headers=Te.from(n.headers),n},function(n){return Ki(n)||(An(r),n&&n.response&&(n.response.data=En.call(r,r.transformResponse,n.response),n.response.headers=Te.from(n.response.headers))),Promise.reject(n)})}const ho="1.8.4",Nr={};["object","boolean","number","function","string","symbol"].forEach((r,e)=>{Nr[r]=function(n){return typeof n===r||"a"+(e<1?"n ":" ")+r}});const fo={};Nr.transitional=function(e,t,n){function s(i,o){return"[Axios v"+ho+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,a)=>{if(e===!1)throw new V(s(o," has been removed"+(t?" in "+t:"")),V.ERR_DEPRECATED);return t&&!fo[o]&&(fo[o]=!0,console.warn(s(o," has been deprecated since v"+t+" and will be removed in the near future"))),e?e(i,o,a):!0}},Nr.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};function Pu(r,e,t){if(typeof r!="object")throw new V("options must be an object",V.ERR_BAD_OPTION_VALUE);const n=Object.keys(r);let s=n.length;for(;s-- >0;){const i=n[s],o=e[i];if(o){const a=r[i],l=a===void 0||o(a,i,r);if(l!==!0)throw new V("option "+i+" must be "+l,V.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new V("Unknown option "+i,V.ERR_BAD_OPTION)}}const Rr={assertOptions:Pu,validators:Nr},He=Rr.validators;let wt=class{constructor(e){this.defaults=e,this.interceptors={request:new Ji,response:new Ji}}async request(e,t){try{return await this._request(e,t)}catch(n){if(n instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
12
- `+i):n.stack=i}catch{}}throw n}}_request(e,t){typeof e=="string"?(t=t||{},t.url=e):t=e||{},t=yt(this.defaults,t);const{transitional:n,paramsSerializer:s,headers:i}=t;n!==void 0&&Rr.assertOptions(n,{silentJSONParsing:He.transitional(He.boolean),forcedJSONParsing:He.transitional(He.boolean),clarifyTimeoutError:He.transitional(He.boolean)},!1),s!=null&&(v.isFunction(s)?t.paramsSerializer={serialize:s}:Rr.assertOptions(s,{encode:He.function,serialize:He.function},!0)),t.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Rr.assertOptions(t,{baseUrl:He.spelling("baseURL"),withXsrfToken:He.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&v.merge(i.common,i[t.method]);i&&v.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),t.headers=Te.concat(o,i);const a=[];let l=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(t)===!1||(l=l&&g.synchronous,a.unshift(g.fulfilled,g.rejected))});const u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.rejected)});let c,f=0,h;if(!l){const p=[uo.bind(this),void 0];for(p.unshift.apply(p,a),p.push.apply(p,u),h=p.length,c=Promise.resolve(t);f<h;)c=c.then(p[f++],p[f++]);return c}h=a.length;let d=t;for(f=0;f<h;){const p=a[f++],g=a[f++];try{d=p(d)}catch(m){g.call(this,m);break}}try{c=uo.call(this,d)}catch(p){return Promise.reject(p)}for(f=0,h=u.length;f<h;)c=c.then(u[f++],u[f++]);return c}getUri(e){e=yt(this.defaults,e);const t=to(e.baseURL,e.url,e.allowAbsoluteUrls);return zi(t,e.params,e.paramsSerializer)}};v.forEach(["delete","get","head","options"],function(e){wt.prototype[e]=function(t,n){return this.request(yt(n||{},{method:e,url:t,data:(n||{}).data}))}}),v.forEach(["post","put","patch"],function(e){function t(n){return function(i,o,a){return this.request(yt(a||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}wt.prototype[e]=t(),wt.prototype[e+"Form"]=t(!0)});let xu=class Go{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(i){t=i});const n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(a=>{n.subscribe(a),i=a}).then(s);return o.cancel=function(){n.unsubscribe(i)},o},e(function(i,o,a){n.reason||(n.reason=new Mt(i,o,a),t(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=n=>{e.abort(n)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new Go(function(s){e=s}),cancel:e}}};function Du(r){return function(t){return r.apply(null,t)}}function ju(r){return v.isObject(r)&&r.isAxiosError===!0}const In={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(In).forEach(([r,e])=>{In[e]=r});function po(r){const e=new wt(r),t=Fi(wt.prototype.request,e);return v.extend(t,wt.prototype,e,{allOwnKeys:!0}),v.extend(t,e,null,{allOwnKeys:!0}),t.create=function(s){return po(yt(r,s))},t}const ae=po(Xt);ae.Axios=wt,ae.CanceledError=Mt,ae.CancelToken=xu,ae.isCancel=Ki,ae.VERSION=ho,ae.toFormData=Tr,ae.AxiosError=V,ae.Cancel=ae.CanceledError,ae.all=function(e){return Promise.all(e)},ae.spread=Du,ae.isAxiosError=ju,ae.mergeConfig=yt,ae.AxiosHeaders=Te,ae.formToJSON=r=>Gi(v.isHTMLForm(r)?new FormData(r):r),ae.getAdapter=co.getAdapter,ae.HttpStatusCode=In,ae.default=ae;const{Axios:hf,AxiosError:go,CanceledError:ff,isCancel:df,CancelToken:pf,VERSION:gf,all:mf,Cancel:yf,isAxiosError:wf,spread:bf,toFormData:Sf,AxiosHeaders:_f,HttpStatusCode:vf,formToJSON:kf,getAdapter:Ef,mergeConfig:Tf}=ae,Uu=String.prototype.replace,Bu=/%20/g,mo={RFC1738:"RFC1738",RFC3986:"RFC3986"},$u={RFC1738:function(r){return Uu.call(r,Bu,"+")},RFC3986:function(r){return String(r)}},Wu=mo.RFC1738,qu=mo.RFC3986,Cn=Object.prototype.hasOwnProperty,bt=Array.isArray,ze=function(){const r=[];for(let e=0;e<256;++e)r.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return r}(),Vu=function(e){for(;e.length>1;){const t=e.pop(),n=t.obj[t.prop];if(bt(n)){const s=[];for(let i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);t.obj[t.prop]=s}}},Hu=function(e,t){const n=t&&t.plainObjects?Object.create(null):{};for(let s=0;s<e.length;++s)typeof e[s]<"u"&&(n[s]=e[s]);return n},zu=function r(e,t,n){if(!t)return e;if(typeof t!="object"){if(bt(e))e.push(t);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!Cn.call(Object.prototype,t))&&(e[t]=!0);else return[e,t];return e}if(!e||typeof e!="object")return[e].concat(t);let s=e;return bt(e)&&!bt(t)&&(s=Hu(e,n)),bt(e)&&bt(t)?(t.forEach(function(i,o){if(Cn.call(e,o)){const a=e[o];a&&typeof a=="object"&&i&&typeof i=="object"?e[o]=r(a,i,n):e.push(i)}else e[o]=i}),e):Object.keys(t).reduce(function(i,o){const a=t[o];return Cn.call(i,o)?i[o]=r(i[o],a,n):i[o]=a,i},s)},Ju=function(r,e,t){const n=r.replace(/\+/g," ");if(t==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},Nn=1024,Zu=function(e,t,n,s,i){if(e.length===0)return e;let o=e;if(typeof e=="symbol"?o=Symbol.prototype.toString.call(e):typeof e!="string"&&(o=String(e)),n==="iso-8859-1")return escape(o).replace(/%u[0-9a-f]{4}/gi,function(l){return"%26%23"+parseInt(l.slice(2),16)+"%3B"});let a="";for(let l=0;l<o.length;l+=Nn){const u=o.length>=Nn?o.slice(l,l+Nn):o,c=[];for(let f=0;f<u.length;++f){let h=u.charCodeAt(f);if(h===45||h===46||h===95||h===126||h>=48&&h<=57||h>=65&&h<=90||h>=97&&h<=122||i===Wu&&(h===40||h===41)){c[c.length]=u.charAt(f);continue}if(h<128){c[c.length]=ze[h];continue}if(h<2048){c[c.length]=ze[192|h>>6]+ze[128|h&63];continue}if(h<55296||h>=57344){c[c.length]=ze[224|h>>12]+ze[128|h>>6&63]+ze[128|h&63];continue}f+=1,h=65536+((h&1023)<<10|u.charCodeAt(f)&1023),c[c.length]=ze[240|h>>18]+ze[128|h>>12&63]+ze[128|h>>6&63]+ze[128|h&63]}a+=c.join("")}return a},Gu=function(e){const t=[{obj:{o:e},prop:"o"}],n=[];for(let s=0;s<t.length;++s){const i=t[s],o=i.obj[i.prop],a=Object.keys(o);for(let l=0;l<a.length;++l){const u=a[l],c=o[u];typeof c=="object"&&c!==null&&n.indexOf(c)===-1&&(t.push({obj:o,prop:u}),n.push(c))}}return Vu(t),e},Yu=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},Ku=function(e,t){return[].concat(e,t)},Rn=function(e,t){if(bt(e)){const n=[];for(let s=0;s<e.length;s+=1)n.push(t(e[s]));return n}return t(e)},Qu={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},Ke=Array.isArray,Xu=Array.prototype.push,yo=function(r,e){Xu.apply(r,Ke(e)?e:[e])},eh=Date.prototype.toISOString,wo=qu,Fr={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Zu,encodeValuesOnly:!1,format:wo,formatter:$u[wo],indices:!1,serializeDate:function(e){return eh.call(e)},skipNulls:!1,strictNullHandling:!1},th=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},Fn={},bo=function(e,t,n,s,i,o,a,l,u,c,f,h,d,p,g,m,y,w){let _=e,b=w,k=0,S=!1;for(;(b=b.get(Fn))!==void 0&&!S;){const J=b.get(e);if(k+=1,typeof J<"u"){if(J===k)throw new RangeError("Cyclic object value");S=!0}typeof b.get(Fn)>"u"&&(k=0)}if(typeof c=="function"?_=c(t,_):_ instanceof Date?_=d(_):n==="comma"&&Ke(_)&&(_=Rn(_,function(J){return J instanceof Date?d(J):J})),_===null){if(o)return u&&!m?u(t,Fr.encoder,y,"key",p):t;_=""}if(th(_)||Yu(_)){if(u){const J=m?t:u(t,Fr.encoder,y,"key",p);return[g(J)+"="+g(u(_,Fr.encoder,y,"value",p))]}return[g(t)+"="+g(String(_))]}const E=[];if(typeof _>"u")return E;let R;if(n==="comma"&&Ke(_))m&&u&&(_=Rn(_,u)),R=[{value:_.length>0?_.join(",")||null:void 0}];else if(Ke(c))R=c;else{const J=Object.keys(_);R=f?J.sort(f):J}const D=l?t.replace(/\./g,"%2E"):t,x=s&&Ke(_)&&_.length===1?D+"[]":D;if(i&&Ke(_)&&_.length===0)return x+"[]";for(let J=0;J<R.length;++J){const me=R[J],H=typeof me=="object"&&typeof me.value<"u"?me.value:_[me];if(a&&H===null)continue;const Q=h&&l?me.replace(/\./g,"%2E"):me,B=Ke(_)?typeof n=="function"?n(x,Q):x:x+(h?"."+Q:"["+Q+"]");w.set(e,k);const he=new WeakMap;he.set(Fn,w),yo(E,bo(H,B,n,s,i,o,a,l,n==="comma"&&m&&Ke(_)?null:u,c,f,h,d,p,g,m,y,he))}return E},rh=function(e){return Fr};function So(r,e){let t=r;const n=rh();let s,i;typeof n.filter=="function"?(i=n.filter,t=i("",t)):Ke(n.filter)&&(i=n.filter,s=i);const o=[];if(typeof t!="object"||t===null)return"";const a=Qu[n.arrayFormat],l=a==="comma"&&n.commaRoundTrip;s||(s=Object.keys(t)),n.sort&&s.sort(n.sort);const u=new WeakMap;for(let h=0;h<s.length;++h){const d=s[h];n.skipNulls&&t[d]===null||yo(o,bo(t[d],d,a,l,n.allowEmptyArrays,n.strictNullHandling,n.skipNulls,n.encodeDotInKeys,n.encode?n.encoder:null,n.filter,n.sort,n.allowDots,n.serializeDate,n.format,n.formatter,n.encodeValuesOnly,n.charset,u))}const c=o.join(n.delimiter);let f=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?f+="utf8=%26%2310003%3B&":f+="utf8=%E2%9C%93&"),c.length>0?f+c:""}const Ln=Object.prototype.hasOwnProperty,nh=Array.isArray,Lr={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Ju,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},sh=function(r){return r.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},_o=function(r,e){return r&&typeof r=="string"&&e.comma&&r.indexOf(",")>-1?r.split(","):r},ih="utf8=%26%2310003%3B",oh="utf8=%E2%9C%93",ah=function(e,t){const n={__proto__:null},s=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,i=t.parameterLimit===1/0?void 0:t.parameterLimit,o=s.split(t.delimiter,i);let a=-1,l,u=t.charset;if(t.charsetSentinel)for(l=0;l<o.length;++l)o[l].indexOf("utf8=")===0&&(o[l]===oh?u="utf-8":o[l]===ih&&(u="iso-8859-1"),a=l,l=o.length);for(l=0;l<o.length;++l){if(l===a)continue;const c=o[l],f=c.indexOf("]="),h=f===-1?c.indexOf("="):f+1;let d,p;h===-1?(d=t.decoder(c,Lr.decoder,u,"key"),p=t.strictNullHandling?null:""):(d=t.decoder(c.slice(0,h),Lr.decoder,u,"key"),p=Rn(_o(c.slice(h+1),t),function(m){return t.decoder(m,Lr.decoder,u,"value")})),p&&t.interpretNumericEntities&&u==="iso-8859-1"&&(p=sh(p)),c.indexOf("[]=")>-1&&(p=nh(p)?[p]:p);const g=Ln.call(n,d);g&&t.duplicates==="combine"?n[d]=Ku(n[d],p):(!g||t.duplicates==="last")&&(n[d]=p)}return n},lh=function(r,e,t,n){let s=n?e:_o(e,t);for(let i=r.length-1;i>=0;--i){let o;const a=r[i];if(a==="[]"&&t.parseArrays)o=t.allowEmptyArrays&&s===""?[]:[].concat(s);else{o=t.plainObjects?Object.create(null):{};const l=a.charAt(0)==="["&&a.charAt(a.length-1)==="]"?a.slice(1,-1):a,u=t.decodeDotInKeys?l.replace(/%2E/g,"."):l,c=parseInt(u,10);!t.parseArrays&&u===""?o={0:s}:!isNaN(c)&&a!==u&&String(c)===u&&c>=0&&t.parseArrays&&c<=t.arrayLimit?(o=[],o[c]=s):u!=="__proto__"&&(o[u]=s)}s=o}return s},ch=function(e,t,n,s){if(!e)return;const i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,o=/(\[[^[\]]*])/,a=/(\[[^[\]]*])/g;let l=n.depth>0&&o.exec(i);const u=l?i.slice(0,l.index):i,c=[];if(u){if(!n.plainObjects&&Ln.call(Object.prototype,u)&&!n.allowPrototypes)return;c.push(u)}let f=0;for(;n.depth>0&&(l=a.exec(i))!==null&&f<n.depth;){if(f+=1,!n.plainObjects&&Ln.call(Object.prototype,l[1].slice(1,-1))&&!n.allowPrototypes)return;c.push(l[1])}return l&&c.push("["+i.slice(l.index)+"]"),lh(c,t,n,s)},uh=function(e){return Lr};function vo(r,e){const t=uh();if(r===""||r===null||typeof r>"u")return t.plainObjects?Object.create(null):{};const n=typeof r=="string"?ah(r,t):r;let s=t.plainObjects?Object.create(null):{};const i=Object.keys(n);for(let o=0;o<i.length;++o){const a=i[o],l=ch(a,n[a],t,typeof r=="string");s=zu(s,l,t)}return t.allowSparse===!0?s:Gu(s)}let ko=class{#e;#t;#r;#n;_logger=null;_loggerSystem=null;#s="";#o=!1;#i="";constructor(e,t,n){const s={};this.#e=ae.create({baseURL:e,headers:{...s,...n?n.headers:{}},...n&&{...n,headers:void 0}}),this.#t=t,this.#r=new hc,this.#n=new gc}setLogger(e){this._logger=e,this.#r.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}getSystemLogger(){return this._loggerSystem===null&&(this._loggerSystem=ye.build("SystemLogger"),this._loggerSystem.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!0,[I.warn]:!0,[I.error]:!0,[I.trace]:!1})),this._loggerSystem}setRestrictionManagerParams(e){this.#r.params=e}getRestrictionManagerParams(){return this.#r.params}setLogTag(e){this.#s=e}clearLogTag(){this.#s=""}async batch(e,t=!0){return Array.isArray(e)?this.#c(e,t):this.#l(e,t)}async#l(e,t=!0){const n={};let s=0;const i=(o,a)=>{let l=null,u=null;o.method?(l=o.method??null,u=o?.params??null):Array.isArray(o)&&o.length>0&&(l=o[0]??null,u=o[1]??null),l&&(s++,n[a]=l+"?"+So(u))};for(const[o,a]of Object.entries(e))i(a,o);return s<1?Promise.resolve(new $e):this.call("batch",{halt:t?1:0,cmd:n}).then(o=>{const a=o.getData().result,l={},u=(d,p)=>{if(typeof a.result[p]<"u"||typeof a.result_error[p]<"u"){const g=d.split("?");l[p]=new Sr({answer:{result:N.isUndefined(a.result[p])?{}:a.result[p],error:a?.result_error[p]||void 0,total:a.result_total[p],next:a.result_next[p],time:a.result_time[p]},query:{method:g[0]||"",params:vo(g[1]||""),start:0},status:o.getStatus()})}};for(const[d,p]of Object.entries(n))u(p,d);const c={},f=d=>d.hasError("base-error")?d.errors.get("base-error"):new We({code:"0",description:d.getErrorMessages().join("; "),status:0,requestInfo:{method:d.getQuery().method,params:d.getQuery().params},originalError:d.getErrors().next().value}),h=new $e;for(const d of Object.keys(l)){const p=l[d];if(p.getStatus()!==200||!p.isSuccess){const g=f(p);if(!t&&!p.isSuccess){h.addError(g,d);continue}return Promise.reject(g)}c[d]=p.getData().result}return h.setData(c),Promise.resolve(h)})}async#c(e,t=!0){const n=[];let s=0;const i=o=>{let a=null,l=null;if(o.method?(a=o.method??null,l=o?.params??null):Array.isArray(o)&&o.length>0&&(a=o[0]??null,l=o[1]??null),a){s++;const u=a+"?"+So(l);n.push(u)}};for(const[o,a]of e.entries())i(a);return s<1?Promise.resolve(new $e):this.call("batch",{halt:t?1:0,cmd:n}).then(o=>{const a=o.getData().result,l=[],u=(d,p)=>{if(typeof a.result[p]<"u"||typeof a.result_error[p]<"u"){const g=d.split("?"),m=new Sr({answer:{result:N.isUndefined(a.result[p])?{}:a.result[p],error:a?.result_error[p]||void 0,total:a.result_total[p],next:a.result_next[p],time:a.result_time[p]},query:{method:g[0]||"",params:vo(g[1]||""),start:0},status:o.getStatus()});l.push(m)}};for(const[d,p]of n.entries())u(p,d);const c=[],f=d=>d.hasError("base-error")?d.errors.get("base-error"):new We({code:"0",description:d.getErrorMessages().join("; "),status:0,requestInfo:{method:d.getQuery().method,params:d.getQuery().params},originalError:d.getErrors().next().value}),h=new $e;for(const d of l){if(d.getStatus()!==200||!d.isSuccess){const p=f(d);if(!t&&!d.isSuccess){h.addError(p);continue}return Promise.reject(p)}c.push(d.getData().result)}return h.setData(c),Promise.resolve(h)})}async call(e,t,n=0){let s=this.#t.getAuthData();return s===!1&&(s=await this.#t.refreshAuth()),await this.#r.check(),this.#o&&!this.isServerSide()&&N.isStringFilled(this.#i)&&this.getSystemLogger().warn(this.#i),this.#e.post(this.#u(e),this.#a(s,t,n)).then(i=>{const o=i.data;return Promise.resolve({status:i.status,payload:o})},async i=>{let o={error:i?.code||0,errorDescription:i?.message||""};if(i instanceof go&&i.response&&i.response.data&&!N.isUndefined(i.response.data.error)){const l=i.response.data;o={error:l.error,errorDescription:l.error_description}}const a=new We({code:String(o.error),description:o.errorDescription,status:i.response?.status||0,requestInfo:{method:e,params:t},originalError:i});return a.status===401&&["expired_token","invalid_token"].includes(a.answerError.error)?(this.getLogger().info(`refreshAuth >> ${a.answerError.error} >>>`),s=await this.#t.refreshAuth(),await this.#r.check(),this.#e.post(this.#u(e),this.#a(s,t,n)).then(async l=>{const u=l.data;return Promise.resolve({status:l.status,payload:u})},async l=>{let u={error:l?.code||0,errorDescription:l?.message||""};if(l instanceof go&&l.response&&l.response.data){const f=l.response.data;u={error:f.error,errorDescription:f.error_description}}const c=new We({code:String(u.error),description:u.errorDescription,status:i.response?.status||0,requestInfo:{method:e,params:t},originalError:l});return Promise.reject(c)})):Promise.reject(a)}).then(i=>{const o=new Sr({answer:i.payload,query:{method:e,params:t,start:n},status:i.status});return Promise.resolve(o)})}#a(e,t,n=0){const s=Object.assign({},t);return this.#s.length>0&&(s.logTag=this.#s),s[this.#n.getQueryStringParameterName()]=this.#n.getRequestId(),s[this.#n.getQueryStringSdkParameterName()]="0.2.3",s.data&&s.data.start&&delete s.data.start,e.refresh_token!=="hook"&&(s.auth=e.access_token),s.start=n,s}#u(e){return`${encodeURIComponent(e)}.json`}setClientSideWarning(e,t){this.#o=e,this.#i=t}isServerSide(){return typeof window>"u"}};class Pt{static batchSize=50;_isInit=!1;_http=null;_logger=null;constructor(){this._isInit=!1}get isInit(){return this._isInit}async init(){this._isInit=!0}destroy(){}setLogger(e){this._logger=e,this.getHttpClient().setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}callMethod(e,t,n){return this.getHttpClient().call(e,t||{},n||0)}async callListMethod(e,t={},n=null,s=null){const i=new $e;return N.isFunction(n)&&n!==null&&n(0),this.callMethod(e,t,0).then(async o=>{let a=[],l;if(s===null?l=o.getData().result:l=o.getData().result[s],a=[...a,...l],o.isMore()){let u=o;for(;u=await u.getNext(this.getHttpClient()),u!==!1;){let c;if(s===null?c=u.getData().result:c=u.getData().result[s],a=[...a,...c],n){const f=u.getTotal();n(f>0?Math.round(100*a.length/f):100)}}}return i.setData(a),n&&n(100),i})}async*fetchListMethod(e,t={},n="ID",s=null){t.order=t.order||{},t.filter=t.filter||{},t.start=-1;const i=`>${n}`;t.order[n]="ASC",t.filter[i]=0;do{const o=await this.callMethod(e,t,t.start);let a;if(!N.isNull(s)&&s!==null?a=o.getData().result[s]:a=o.getData().result,a.length===0||(yield a,a.length<Pt.batchSize))break;const l=a.at(-1);l&&n in l&&(t.filter[i]=l[n])}while(!0)}async callBatch(e,t=!0){return this.getHttpClient().batch(e,t)}chunkArray(e,t=50){const n=[];for(let s=0;s<e.length;s+=t){const i=e.slice(s,s+t);n.push(i)}return n}async callBatchByChunk(e,t=!0){const n=new $e,s=[],i=this.chunkArray(e,Pt.batchSize);for(const o of i){const a=await this.callBatch(o,t);s.push(...a.getData())}return n.setData(s)}getHttpClient(){if(!this.isInit||this._http===null)throw new Error("Http not init");return this._http}_getHttpOptions(){return null}_ensureInitialized(){if(!this._isInit)throw new Error("B24 not initialized")}}var Mn=(r=>(r.en="en",r.de="de",r.la="la",r.br="br",r.fr="fr",r.it="it",r.pl="pl",r.ru="ru",r.ua="ua",r.tr="tr",r.sc="sc",r.tc="tc",r.ja="ja",r.vn="vn",r.id="id",r.ms="ms",r.th="th",r.ar="ar",r))(Mn||{});const hh=()=>({scrollWidth:Math.max(document.documentElement.scrollWidth,document.documentElement.offsetWidth),scrollHeight:Math.max(document.documentElement.scrollHeight,document.documentElement.offsetHeight)});let fh=class ct{static isInternalConstructing=!1;static instance=null;_defLocale=null;constructor(){if(!ct.isInternalConstructing)throw new TypeError("FormatterNumber is not constructable");ct.isInternalConstructing=!1}static getInstance(){return ct.instance||(ct.isInternalConstructing=!0,ct.instance=new ct),ct.instance}setDefLocale(e){this._defLocale=e}format(e,t){let n;(typeof t>"u"||!N.isStringFilled(t))&&(t=N.isStringFilled(this._defLocale)?this._defLocale||"en":typeof navigator>"u"?"en":navigator?.language||"en"),Number.isInteger(e)?n=new Intl.NumberFormat(t,{minimumFractionDigits:0,maximumFractionDigits:0}):n=new Intl.NumberFormat(t,{minimumFractionDigits:2,maximumFractionDigits:2});let s=n.format(e);return t.includes("ru")&&(s=s.replace(",",".")),s}};class T{countryCode;length;structure;example;_cachedRegex=null;constructor(e,t,n,s){this.countryCode=e,this.length=t,this.structure=n,this.example=s}isValid(e){return this.length===e.length&&this.countryCode===e.slice(0,2)&&this._regex().test(e.slice(4))&&this._iso7064Mod9710(this._iso13616Prepare(e))==1}toBBAN(e,t){return(this._regex().exec(e.slice(4)||"")||[]).slice(1).join(t)}fromBBAN(e){if(!this.isValidBBAN(e))throw new Error("Invalid BBAN");const t=("0"+(98-this._iso7064Mod9710(this._iso13616Prepare(this.countryCode+"00"+e)))).slice(-2);return this.countryCode+t+e}isValidBBAN(e){return this.length-4===e.length&&this._regex().test(e)}_regex(){return this._cachedRegex===null&&(this._cachedRegex=this._parseStructure(this.structure)),this._cachedRegex}_parseStructure(e){const t=(e.match(/(.{3})/g)||[]).map(n=>{let s;const i=n.slice(0,1),o=Number.parseInt(n.slice(1),10);switch(i){case"A":s="0-9A-Za-z";break;case"B":s="0-9A-Z";break;case"C":s="A-Za-z";break;case"F":s="0-9";break;case"L":s="a-z";break;case"U":s="A-Z";break;case"W":s="0-9a-z";break}return"(["+s+"]{"+o+"})"});return new RegExp("^"+t.join("")+"$")}_iso13616Prepare(e){return e=e.toUpperCase(),e=e.substring(4)+e.substring(0,4),e.split("").map(t=>{const n=t.charCodeAt(0);return n>=65&&n<=90?(n-65+10).toString():t}).join("")}_iso7064Mod9710(e){let t=e,n;for(;t.length>2;)n=t.slice(0,9),t=Number.parseInt(n,10)%97+t.slice(n.length);return Number.parseInt(t,10)%97}}class Qe{static isInternalConstructing=!1;static instance=null;_countries;constructor(){if(!Qe.isInternalConstructing)throw new TypeError("FormatterIban is not constructable");Qe.isInternalConstructing=!1,this._countries=new Map}static getInstance(){return Qe.instance||(Qe.isInternalConstructing=!0,Qe.instance=new Qe),Qe.instance}addSpecification(e){this._countries.set(e.countryCode,e)}isValid(e){if(!this._isString(e))return!1;e=this.electronicFormat(e);const t=e.slice(0,2);if(!this._countries.has(t))throw new Error(`No country with code ${t}`);const n=this._countries.get(t);return!!n&&n.isValid(e)}printFormat(e,t){typeof t>"u"&&(t=" ");const n=/(.{4})(?!$)/g;return this.electronicFormat(e).replace(n,"$1"+t)}electronicFormat(e){const t=/[^a-zA-Z0-9]/g;return e.replace(t,"").toUpperCase()}toBBAN(e,t){typeof t>"u"&&(t=" "),e=this.electronicFormat(e);const n=e.slice(0,2);if(!this._countries.has(n))throw new Error(`No country with code ${n}`);const s=this._countries.get(n);if(!s)throw new Error(`No country with code ${n}`);return s.toBBAN(e,t)}fromBBAN(e,t){if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);if(!n)throw new Error(`No country with code ${e}`);return n.fromBBAN(this.electronicFormat(t))}isValidBBAN(e,t){if(!this._isString(t))return!1;if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);return!!n&&n.isValidBBAN(this.electronicFormat(t))}_isString(e){return typeof e=="string"||e instanceof String}}const dh=()=>{const r=fh.getInstance(),e=Qe.getInstance();return e.addSpecification(new T("AD",24,"F04F04A12","AD1200012030200359100100")),e.addSpecification(new T("AE",23,"F03F16","AE070331234567890123456")),e.addSpecification(new T("AL",28,"F08A16","AL47212110090000000235698741")),e.addSpecification(new T("AT",20,"F05F11","AT611904300234573201")),e.addSpecification(new T("AZ",28,"U04A20","AZ21NABZ00000000137010001944")),e.addSpecification(new T("BA",20,"F03F03F08F02","BA391290079401028494")),e.addSpecification(new T("BE",16,"F03F07F02","BE68539007547034")),e.addSpecification(new T("BG",22,"U04F04F02A08","BG80BNBG96611020345678")),e.addSpecification(new T("BH",22,"U04A14","BH67BMAG00001299123456")),e.addSpecification(new T("BR",29,"F08F05F10U01A01","BR9700360305000010009795493P1")),e.addSpecification(new T("BY",28,"A04F04A16","BY13NBRB3600900000002Z00AB00")),e.addSpecification(new T("CH",21,"F05A12","CH9300762011623852957")),e.addSpecification(new T("CR",22,"F04F14","CR72012300000171549015")),e.addSpecification(new T("CY",28,"F03F05A16","CY17002001280000001200527600")),e.addSpecification(new T("CZ",24,"F04F06F10","CZ6508000000192000145399")),e.addSpecification(new T("DE",22,"F08F10","DE89370400440532013000")),e.addSpecification(new T("DK",18,"F04F09F01","DK5000400440116243")),e.addSpecification(new T("DO",28,"U04F20","DO28BAGR00000001212453611324")),e.addSpecification(new T("EE",20,"F02F02F11F01","EE382200221020145685")),e.addSpecification(new T("EG",29,"F04F04F17","EG800002000156789012345180002")),e.addSpecification(new T("ES",24,"F04F04F01F01F10","ES9121000418450200051332")),e.addSpecification(new T("FI",18,"F06F07F01","FI2112345600000785")),e.addSpecification(new T("FO",18,"F04F09F01","FO6264600001631634")),e.addSpecification(new T("FR",27,"F05F05A11F02","FR1420041010050500013M02606")),e.addSpecification(new T("GB",22,"U04F06F08","GB29NWBK60161331926819")),e.addSpecification(new T("GE",22,"U02F16","GE29NB0000000101904917")),e.addSpecification(new T("GI",23,"U04A15","GI75NWBK000000007099453")),e.addSpecification(new T("GL",18,"F04F09F01","GL8964710001000206")),e.addSpecification(new T("GR",27,"F03F04A16","GR1601101250000000012300695")),e.addSpecification(new T("GT",28,"A04A20","GT82TRAJ01020000001210029690")),e.addSpecification(new T("HR",21,"F07F10","HR1210010051863000160")),e.addSpecification(new T("HU",28,"F03F04F01F15F01","HU42117730161111101800000000")),e.addSpecification(new T("IE",22,"U04F06F08","IE29AIBK93115212345678")),e.addSpecification(new T("IL",23,"F03F03F13","IL620108000000099999999")),e.addSpecification(new T("IS",26,"F04F02F06F10","IS140159260076545510730339")),e.addSpecification(new T("IT",27,"U01F05F05A12","IT60X0542811101000000123456")),e.addSpecification(new T("IQ",23,"U04F03A12","IQ98NBIQ850123456789012")),e.addSpecification(new T("JO",30,"A04F22","JO15AAAA1234567890123456789012")),e.addSpecification(new T("KW",30,"U04A22","KW81CBKU0000000000001234560101")),e.addSpecification(new T("KZ",20,"F03A13","KZ86125KZT5004100100")),e.addSpecification(new T("LB",28,"F04A20","LB62099900000001001901229114")),e.addSpecification(new T("LC",32,"U04F24","LC07HEMM000100010012001200013015")),e.addSpecification(new T("LI",21,"F05A12","LI21088100002324013AA")),e.addSpecification(new T("LT",20,"F05F11","LT121000011101001000")),e.addSpecification(new T("LU",20,"F03A13","LU280019400644750000")),e.addSpecification(new T("LV",21,"U04A13","LV80BANK0000435195001")),e.addSpecification(new T("MC",27,"F05F05A11F02","MC5811222000010123456789030")),e.addSpecification(new T("MD",24,"U02A18","MD24AG000225100013104168")),e.addSpecification(new T("ME",22,"F03F13F02","ME25505000012345678951")),e.addSpecification(new T("MK",19,"F03A10F02","MK07250120000058984")),e.addSpecification(new T("MR",27,"F05F05F11F02","MR1300020001010000123456753")),e.addSpecification(new T("MT",31,"U04F05A18","MT84MALT011000012345MTLCAST001S")),e.addSpecification(new T("MU",30,"U04F02F02F12F03U03","MU17BOMM0101101030300200000MUR")),e.addSpecification(new T("NL",18,"U04F10","NL91ABNA0417164300")),e.addSpecification(new T("NO",15,"F04F06F01","NO9386011117947")),e.addSpecification(new T("PK",24,"U04A16","PK36SCBL0000001123456702")),e.addSpecification(new T("PL",28,"F08F16","PL61109010140000071219812874")),e.addSpecification(new T("PS",29,"U04A21","PS92PALS000000000400123456702")),e.addSpecification(new T("PT",25,"F04F04F11F02","PT50000201231234567890154")),e.addSpecification(new T("QA",29,"U04A21","QA30AAAA123456789012345678901")),e.addSpecification(new T("RO",24,"U04A16","RO49AAAA1B31007593840000")),e.addSpecification(new T("RS",22,"F03F13F02","RS35260005601001611379")),e.addSpecification(new T("SA",24,"F02A18","SA0380000000608010167519")),e.addSpecification(new T("SC",31,"U04F04F16U03","SC18SSCB11010000000000001497USD")),e.addSpecification(new T("SE",24,"F03F16F01","SE4550000000058398257466")),e.addSpecification(new T("SI",19,"F05F08F02","SI56263300012039086")),e.addSpecification(new T("SK",24,"F04F06F10","SK3112000000198742637541")),e.addSpecification(new T("SM",27,"U01F05F05A12","SM86U0322509800000000270100")),e.addSpecification(new T("ST",25,"F08F11F02","ST68000100010051845310112")),e.addSpecification(new T("SV",28,"U04F20","SV62CENR00000000000000700025")),e.addSpecification(new T("TL",23,"F03F14F02","TL380080012345678910157")),e.addSpecification(new T("TN",24,"F02F03F13F02","TN5910006035183598478831")),e.addSpecification(new T("TR",26,"F05F01A16","TR330006100519786457841326")),e.addSpecification(new T("UA",29,"F25","UA511234567890123456789012345")),e.addSpecification(new T("VA",22,"F18","VA59001123000012345678")),e.addSpecification(new T("VG",24,"U04F16","VG96VPVG0000012345678901")),e.addSpecification(new T("XK",20,"F04F10F02","XK051212012345678906")),e.addSpecification(new T("AO",25,"F21","AO69123456789012345678901")),e.addSpecification(new T("BF",27,"F23","BF2312345678901234567890123")),e.addSpecification(new T("BI",16,"F12","BI41123456789012")),e.addSpecification(new T("BJ",28,"F24","BJ39123456789012345678901234")),e.addSpecification(new T("CI",28,"U02F22","CI70CI1234567890123456789012")),e.addSpecification(new T("CM",27,"F23","CM9012345678901234567890123")),e.addSpecification(new T("CV",25,"F21","CV30123456789012345678901")),e.addSpecification(new T("DZ",24,"F20","DZ8612345678901234567890")),e.addSpecification(new T("IR",26,"F22","IR861234568790123456789012")),e.addSpecification(new T("MG",27,"F23","MG1812345678901234567890123")),e.addSpecification(new T("ML",28,"U01F23","ML15A12345678901234567890123")),e.addSpecification(new T("MZ",25,"F21","MZ25123456789012345678901")),e.addSpecification(new T("SN",28,"U01F23","SN52A12345678901234567890123")),e.addSpecification(new T("GF",27,"F05F05A11F02","GF121234512345123456789AB13")),e.addSpecification(new T("GP",27,"F05F05A11F02","GP791234512345123456789AB13")),e.addSpecification(new T("MQ",27,"F05F05A11F02","MQ221234512345123456789AB13")),e.addSpecification(new T("RE",27,"F05F05A11F02","RE131234512345123456789AB13")),e.addSpecification(new T("PF",27,"F05F05A11F02","PF281234512345123456789AB13")),e.addSpecification(new T("TF",27,"F05F05A11F02","TF891234512345123456789AB13")),e.addSpecification(new T("YT",27,"F05F05A11F02","YT021234512345123456789AB13")),e.addSpecification(new T("NC",27,"F05F05A11F02","NC551234512345123456789AB13")),e.addSpecification(new T("BL",27,"F05F05A11F02","BL391234512345123456789AB13")),e.addSpecification(new T("MF",27,"F05F05A11F02","MF551234512345123456789AB13")),e.addSpecification(new T("PM",27,"F05F05A11F02","PM071234512345123456789AB13")),e.addSpecification(new T("WF",27,"F05F05A11F02","WF621234512345123456789AB13")),{formatterNumber:r,formatterIban:e}};class Eo{#e;constructor(e){this.#e=Object.freeze(Object.assign({},e))}getAuthData(){const e=this.#e.b24Url.replaceAll("https://","").replaceAll("http://","").replace(/:(80|443)$/,"");return{access_token:this.#e.secret,refresh_token:"hook",expires_in:0,domain:e,member_id:e}}refreshAuth(){return Promise.resolve(this.getAuthData())}getUniq(e){const t=this.getAuthData();if(t===!1)throw new Error("AuthData not init");return[e,t.member_id].join("_")}getTargetOrigin(){return`${this.#e.b24Url}`}getTargetOriginWithPath(){return`${this.#e.b24Url}/rest/${this.#e.userId}/${this.#e.secret}`}get isAdmin(){return!0}}class ph extends Pt{#e;constructor(e){super(),this.#e=new Eo(e),this._http=new ko(this.#e.getTargetOriginWithPath(),this.#e,this._getHttpOptions()),this._http.setClientSideWarning(!0,"It is not safe to use hook requests on the client side"),this._isInit=!0}setLogger(e){super.setLogger(e)}get auth(){return this.#e}offClientSideWarning(){this.getHttpClient().setClientSideWarning(!1,"")}getTargetOrigin(){return this._ensureInitialized(),this.#e.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#e.getTargetOriginWithPath()}}var X=(r=>(r.getInitData="getInitData",r.setInstallFinish="setInstallFinish",r.setInstall="setInstall",r.refreshAuth="refreshAuth",r.setAppOption="setAppOption",r.setUserOption="setUserOption",r.resizeWindow="resizeWindow",r.reloadWindow="reloadWindow",r.setTitle="setTitle",r.setScroll="setScroll",r.openApplication="openApplication",r.closeApplication="closeApplication",r.openPath="openPath",r.imCallTo="imCallTo",r.imPhoneTo="imPhoneTo",r.imOpenMessenger="imOpenMessenger",r.imOpenHistory="imOpenHistory",r.selectUser="selectUser",r.selectAccess="selectAccess",r.selectCRM="selectCRM",r.showAppForm="showAppForm",r.getInterface="getInterface",r.placementBindEvent="placementBindEvent",r))(X||{});class To{#e;#t;#r;_logger=null;runCallbackHandler;constructor(e){this.#e=e,this.#t=new Map,this.#r=new Map,this.runCallbackHandler=this._runCallback.bind(this)}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}subscribe(){window.addEventListener("message",this.runCallbackHandler)}unsubscribe(){window.removeEventListener("message",this.runCallbackHandler)}async send(e,t=null){return new Promise((n,s)=>{let i;const o={resolve:n,reject:s,timeoutId:null},a=this.#n(o);let l=null;const u=Hn(t||{},["singleOption","callBack","isSafely","safelyTime"]),{callBack:c,singleOption:f}=t||{};if(c&&this.#r.set(a,c),f?l=f:Object.keys(u).length>0&&(l={...u}),e.toString().includes(":"))i={method:e.toString(),params:l||"",callback:a,appSid:this.#e.getAppSid()};else{i=e.toString();const h=[l?JSON.stringify(l):"",a,this.#e.getAppSid()];i+=":"+h.filter(Boolean).join(":")}this.getLogger().log(`send to ${this.#e.getTargetOrigin()}`,{cmd:i}),parent.postMessage(i,this.#e.getTargetOrigin()),t?.isSafely&&(this.#t.get(a).timeoutId=window.setTimeout(()=>{this.#t.has(a)&&(this.getLogger().warn(`Action ${e.toString()} stop by timeout`),this.#t.delete(a),n({isSafely:!0}))},Number.parseInt(String(t?.safelyTime||900))))})}_runCallback(e){if(e.origin===this.#e.getTargetOrigin()&&e.data){this.getLogger().log(`get from ${e.origin}`,{data:e.data});const t=e.data.split(":"),n={id:t[0],args:t.slice(1).join(":")};if(n.args&&(n.args=JSON.parse(n.args)),this.#t.has(n.id)){const s=this.#t.get(n.id);s.timeoutId&&clearTimeout(s.timeoutId),this.#t.delete(n.id),s.resolve(n.args)}else if(this.#r.has(n.id)){const s=this.#r.get(n.id);s&&s.apply(globalThis,[n.args])}}}#n(e){const t=$.getUniqId();return this.#t.set(t,e),t}}class Oo{#e="";#t=!0;#r=null;#n=null;#s=null;constructor(e){e.DOMAIN&&(this.#e=e.DOMAIN,this.#e=this.#e.replace(/:(80|443)$/,"")),this.#t=e.PROTOCOL===!0,e.LANG&&(this.#s=e.LANG),e.APP_SID&&(this.#r=e.APP_SID)}initData(e){return this.#e||(this.#e=e.DOMAIN),this.#n||(this.#n=e.PATH),this.#s||(this.#s=e.LANG),this.#t=Number.parseInt(e.PROTOCOL)===1,this.#e=this.#e.replace(/:(80|443)$/,""),this}getAppSid(){if(this.#r===null)throw new Error("Not init appSid");return this.#r}getTargetOrigin(){return`${this.#t?"https":"http"}://${this.#e}`}getTargetOriginWithPath(){return this.getTargetOrigin()+(this.#n??"")}getLang(){return this.#s||Mn.en}}class Ao{#e=null;#t=null;#r=0;#n=null;#s=!1;#o;#i;constructor(e,t){this.#o=e,this.#i=t}initData(e){return e.AUTH_ID&&(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,this.#s=e.IS_ADMIN,this.#n=e.MEMBER_ID||""),this}getAuthData(){return this.#r>Date.now()?{access_token:this.#e,refresh_token:this.#t,expires_in:this.#r,domain:this.#o.getTargetOrigin(),member_id:this.#n}:!1}async refreshAuth(){return this.#i.send(X.refreshAuth,{}).then(e=>(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,Promise.resolve(this.getAuthData())))}getUniq(e){return[e,this.#n||""].join("_")}get isAdmin(){return this.#s}}class Io{#e;constructor(e){this.#e=e}async closeApplication(){return this.#e.send(X.closeApplication,{isSafely:!1})}async fitWindow(){const e="100%",t=this.getScrollSize().scrollHeight;return this.#e.send(X.resizeWindow,{width:e,height:t,isSafely:!0})}async resizeWindow(e,t){return e>0&&t>0?this.#e.send(X.resizeWindow,{width:e,height:t,isSafely:!0}):Promise.reject(new Error(`Wrong width:number = ${e} or height:number = ${t}`))}async resizeWindowAuto(e=null,t=0,n=0){const s=document.body;let i=Math.max(s.scrollWidth,s.offsetWidth);n>0&&(i=Math.max(n,i));let o=Math.max(s.scrollHeight,s.offsetHeight);return e&&(o=Math.max(e.scrollHeight,e.offsetHeight)),t>0&&(o=Math.max(t,o)),this.resizeWindow(i,o)}getScrollSize(){return hh()}async scrollParentWindow(e){return Number.isInteger(e)?(e<0&&(e=0),this.#e.send(X.setScroll,{scroll:e,isSafely:!0})):Promise.reject(new Error("Wrong scroll number"))}async reloadWindow(){return this.#e.send(X.reloadWindow,{isSafely:!0})}async setTitle(e){return this.#e.send(X.setTitle,{title:e.toString(),isSafely:!0})}async imCallTo(e,t=!0){return this.#e.send(X.imCallTo,{userId:e,video:t,isSafely:!0})}async imPhoneTo(e){return this.#e.send(X.imPhoneTo,{phone:e,isSafely:!0})}async imOpenMessenger(e){return this.#e.send(X.imOpenMessenger,{dialogId:e,isSafely:!0})}async imOpenHistory(e){return this.#e.send(X.imOpenHistory,{dialogId:e,isSafely:!0})}}let Co=class{#e;#t=null;#r=null;constructor(e){this.#e=e}initData(e){return e.APP_OPTIONS&&(this.#t=e.APP_OPTIONS),e.USER_OPTIONS&&(this.#r=e.USER_OPTIONS),this}appGet(e){if(this.#t&&this.#t[e])return this.#t[e];throw new Error(`app.option.${e} not set`)}async appSet(e,t){return this.#t||(this.#t=[]),this.#t[e]=t,this.#n(X.setAppOption,e,this.#t[e])}userGet(e){if(this.#r&&this.#r[e])return this.#r[e];throw new Error(`user.option.${e} not set`)}async userSet(e,t){return this.#t||(this.#t=[]),this.#t[e]||(this.#t[e]=null),this.#r[e]=t,this.#n(X.setUserOption,e,this.#r[e])}async#n(e,t,n){return this.#e.send(e,{name:t,value:n,isSafely:!0}).then(()=>Promise.resolve())}};class No{#e;constructor(e){this.#e=e}async selectUser(){return this.#e.send(X.selectUser,{mult:!1})}async selectUsers(){return this.#e.send(X.selectUser,{mult:!0})}async selectAccess(e=[]){return console.warn("@deprecated selectAccess"),this.#e.send(X.selectAccess,{value:e})}async selectCRM(e){return console.warn("@deprecated selectCRM"),this.#e.send(X.selectCRM,{entityType:e?.entityType,multiple:e?.multiple,value:e?.value})}}class Ro{#e;#t;constructor(e,t){this.#e=e,this.#t=t}getUrl(e="/"){return new URL(e,this.#e.getTargetOrigin())}getTargetOrigin(){return this.#e.getTargetOrigin()}async openSliderAppPage(e={}){return this.#t.send(X.openApplication,e)}async closeSliderAppPage(){return this.#t.send(X.closeApplication,{isSafely:!1})}#r(e=1640){return e>0?e>1200&&e<=1640?"/crm/type/0/details/0/../../../../..":e>950&&e<=1200?"/company/personal/user/0/groups/create/../../../../../..":e>900&&e<=950?"/crm/company/requisite/0/../../../..":e<=900?"/workgroups/group/0/card/../../../..":"/crm/deal/../..":"/crm/deal/../.."}async openPath(e,t=1640){const n=new URL(e);return n.searchParams.set("IFRAME","Y"),n.searchParams.set("IFRAME_TYPE","SIDE_SLIDER"),this.#t.send(X.openPath,{path:[this.#r(t),n.pathname,n.search].join("")}).then(s=>s?.result==="error"?s?.errorCode==="METHOD_NOT_SUPPORTED_ON_DEVICE"?new Promise((i,o)=>{const a=window.open(e,"_blank");if(!a){o(new Error("Error open window"));return}let l=0;const u=1e3*60*5,c=window.setInterval(()=>{l=l+1,a.closed?(clearInterval(c),i({isOpenAtNewWindow:!0,isClose:!0})):l>u&&(clearInterval(c),i({isOpenAtNewWindow:!0,isClose:!1}))},1e3)}):Promise.reject(new Error(s?.errorCode)):s?.result==="close"?Promise.resolve({isOpenAtNewWindow:!1,isClose:!0}):Promise.resolve({isOpenAtNewWindow:!1,isClose:!1}))}async showAppForm(e){return console.warn("@deprecated showAppForm"),this.#t.send(X.showAppForm,{params:e,isSafely:!0})}}class Fo{#e;#t="";#r={};constructor(e){this.#e=e}initData(e){this.#t=e.PLACEMENT||"DEFAULT";const t=e.PLACEMENT_OPTIONS;return this.#r=Object.freeze(t),this}get title(){return this.#t}get isDefault(){return this.title==="DEFAULT"}get options(){return this.#r}get isSliderMode(){return this.options?.IFRAME==="Y"}async getInterface(){return this.#e.send(X.getInterface,{isSafely:!0})}async bindEvent(e,t){return this.#e.send(X.placementBindEvent,{event:e,callBack:t,isSafely:!0})}async call(e,t={}){return this.#e.send(e,{...t,isSafely:!0})}async callCustomBind(e,t=null,n){let s={};return N.isString(t)?s.singleOption=t:N.isObjectLike(t)&&(s={...t}),this.#e.send(e,{...s,callBack:n,isSafely:!0})}}class Lo extends Pt{#e=!1;#t=!1;#r;#n;#s;#o;#i;#l;#c;#a;constructor(e){super(),this.#r=new Oo(e),this.#n=new To(this.#r),this.#n.subscribe(),this.#s=new Ao(this.#r,this.#n),this.#o=new Io(this.#n),this.#i=new Co(this.#n),this.#l=new No(this.#n),this.#c=new Ro(this.#r,this.#n),this.#a=new Fo(this.#n),this._isInit=!1}setLogger(e){super.setLogger(e),this.#n.setLogger(this.getLogger())}get isFirstRun(){return this._ensureInitialized(),this.#t}get isInstallMode(){return this._ensureInitialized(),this.#e}get parent(){return this._ensureInitialized(),this.#o}get auth(){return this._ensureInitialized(),this.#s}get slider(){return this._ensureInitialized(),this.#c}get placement(){return this._ensureInitialized(),this.#a}get options(){return this._ensureInitialized(),this.#i}get dialog(){return this._ensureInitialized(),this.#l}async init(){return this.#n.send(X.getInitData,{}).then(e=>(this.getLogger().log("init data:",e),this.#r.initData(e),this.#s.initData(e),this.#a.initData(e),this.#i.initData(e),this.#e=e.INSTALL,this.#t=e.FIRST_RUN,this._http=new ko(this.#r.getTargetOriginWithPath(),this.#s,this._getHttpOptions()),this._isInit=!0,this.#t?this.#n.send(X.setInstall,{install:!0}):Promise.resolve()))}destroy(){this.#n.unsubscribe(),super.destroy()}async installFinish(){return this.isInstallMode?this.#n.send(X.setInstallFinish,{}):Promise.reject(new Error("Application was previously installed. You cannot call installFinish"))}getTargetOrigin(){return this._ensureInitialized(),this.#r.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#r.getTargetOriginWithPath()}getAppSid(){return this._ensureInitialized(),this.#r.getAppSid()}getLang(){return this._ensureInitialized(),this.#r.getLang()}}class Pn extends Error{constructor(e,...t){super(...t),this.name="UnhandledMatchError",this.message=`Unhandled match value of type ${e}`,this.stack=new Error("for stack").stack}}class xt{_b24;_logger=null;_data=null;constructor(e){this._b24=e}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async initData(e){return this.getLogger().log(e),Promise.reject(new Error("Rewrite this function"))}}class gh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("ProfileManager.data not initialized");return this._data}}class mh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("AppManager.data not initialized");return this._data}get statusCode(){return Ri[this.data.status]||"Unknown status"}}class yh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("PaymentManager.data not initialized");return this._data}}class wh extends xt{_data=null;async initData(e){this._data=e,this.makeRestrictionManagerParams()}get data(){if(this._data===null)throw new Error("LicenseManager.data not initialized");return this._data}makeRestrictionManagerParams(){this.data?.license&&this.data.license.includes("ent")&&(this.getLogger().log(`LICENSE ${this.data.license} => up restriction manager params`,pn),this._b24.getHttpClient().setRestrictionManagerParams(pn))}}class bh extends xt{async initData(e){this._data={currencyBase:"?",currencyList:new Map},this.setBaseCurrency(e.currencyBase),this.setCurrencyList(e.currencyList);try{await this.loadData()}catch(t){throw t instanceof Error?t:(console.error(t),new Error("Failed to load data"))}}async loadData(){const e=this.currencyList.map(t=>({method:"crm.currency.get",params:{id:t}}));if(e.length===0)return Promise.resolve();try{(await this._b24.callBatchByChunk(e,!0)).getData().forEach(t=>{if(typeof t.LANG>"u")return;const n=t.CURRENCY,s=this.data.currencyList.get(n);if(!(typeof s>"u"))for(const[i,o]of Object.entries(t.LANG))switch(s.lang[i]={decimals:Number.parseInt(o.DECIMALS),decPoint:o.DEC_POINT,formatString:o.FORMAT_STRING,fullName:o.FULL_NAME,isHideZero:o.HIDE_ZERO==="Y",thousandsSep:o.THOUSANDS_SEP,thousandsVariant:o.THOUSANDS_VARIANT},s.lang[i].thousandsVariant){case"N":s.lang[i].thousandsSep="";break;case"D":s.lang[i].thousandsSep=".";break;case"C":s.lang[i].thousandsSep=",";break;case"S":s.lang[i].thousandsSep=" ";break;case"B":s.lang[i].thousandsSep="&nbsp;";break;default:N.isStringFilled(s.lang[i].thousandsSep)||(s.lang[i].thousandsSep=" ");break}})}catch(t){console.error(t)}}get data(){if(this._data===null)throw new Error("CurrencyManager.data not initialized");return this._data}setBaseCurrency(e){this._data.currencyBase=e}get baseCurrency(){return this.data.currencyBase}setCurrencyList(e=[]){this.data.currencyList.clear();for(const t of e)this.data.currencyList.set(t.CURRENCY,{amount:Number.parseFloat(t.CURRENCY),amountCnt:Number.parseInt(t.AMOUNT_CNT),isBase:t.BASE==="Y",currencyCode:t.CURRENCY,dateUpdate:$.toDateTime(t.DATE_UPDATE),decimals:Number.parseInt(t.DECIMALS),decPoint:t.DEC_POINT,formatString:t.FORMAT_STRING,fullName:t.FULL_NAME,lid:t.LID,sort:Number.parseInt(t.SORT),thousandsSep:t?.THOUSANDS_SEP||null,lang:{}})}getCurrencyFullName(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new Pn(e);let s=n.fullName;if(!(typeof t>"u")){const i=n.lang[t];N.isUndefined(i)||(s=i.fullName)}return s}getCurrencyLiteral(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new Pn(e);let s=n.formatString;if(!(typeof t>"u")){const i=n.lang[t];N.isUndefined(i)||(s=i.formatString)}return s.replaceAll("&#","&%").replaceAll("#","").replaceAll("&%","&#").trim()||""}get currencyList(){return[...this.data.currencyList.keys()]}format(e,t,n){const s=this.data.currencyList.get(t);if(typeof s>"u")throw new Pn(t);const i={formatString:s.formatString,decimals:s.decimals,decPoint:s.decPoint,thousandsSep:s.thousandsSep};N.isStringFilled(i.thousandsSep)||(i.thousandsSep="");const o=s.lang[n];return N.isUndefined(o)||(i.formatString=o.formatString,i.decimals=o.decimals,i.decPoint=o.decPoint,i.thousandsSep=o.thousandsSep),i.formatString.replaceAll("&#","&%").replace("#",$.numberFormat(e,i.decimals,i.decPoint,i.thousandsSep)).replaceAll("&%","&#")||""}}class xn extends xt{_data;_type;static getSupportTypes(){return[Ye.NotSet,Ye.JsonArray,Ye.JsonObject,Ye.FloatVal,Ye.IntegerVal,Ye.BoolYN,Ye.StringVal]}static prepareArrayList(e){return N.isArray(e)?e:N.isObject(e)?Object.values(e):[]}constructor(e,t){super(e),this._type=t,this._data=new Map}get data(){return this._data}reset(){this.data.clear()}async initData(e){if(this.reset(),N.isObject(e))for(const[t,n]of Object.entries(e))this.data.set(t,n)}getJsonArray(e,t=[]){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n),!N.isArray(n)&&!N.isObject(n)&&(n=t)}catch(s){this.getLogger().error(s),n=t}return xn.prepareArrayList(n)}getJsonObject(e,t={}){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n)}catch(s){this.getLogger().error(s),n=t}return N.isObject(n)||(n=t),n}getFloat(e,t=0){return this.data.has(e)?$.toNumber(this.data.get(e)):t}getInteger(e,t=0){return this.data.has(e)?$.toInteger(this.data.get(e)):t}getBoolYN(e,t=!0){return this.data.has(e)?$.toBoolean(this.data.get(e)):t}getBoolNY(e,t=!1){return this.data.has(e)?$.toBoolean(this.data.get(e)):t}getString(e,t=""){return this.data.has(e)?this.data.get(e).toString():t}getDate(e,t=null){if(!this.data.has(e))return t;try{const n=$.toDateTime(this.data.get(e).toString());return n.isValid?n:t}catch{return t}}encode(e){return JSON.stringify(e)}decode(e,t){try{return e.length>0?JSON.parse(e):t}catch(n){this.getLogger().warn(n,e)}return t}getMethodSave(){switch(this._type){case"app":return"app.option.set";case"user":return"user.option.set"}}async save(e,t){const n=[];return n.push({method:this.getMethodSave(),params:{options:e}}),N.isObject(t)&&n.push({method:"pull.application.event.add",params:{COMMAND:t?.command,PARAMS:t?.params,MODULE_ID:t?.moduleId}}),this._b24.callBatch(n,!0)}}class Mo{_logger=null;userId;siteId;constructor(e={}){this.userId=e.userId?$.toInteger(e.userId):0,this.siteId=e.siteId??"none"}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}set(e,t){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}typeof t!="string"&&t&&(t=JSON.stringify(t)),window.localStorage.setItem(this._getKey(e),t)}get(e,t){if(typeof window.localStorage>"u")return t||null;const n=window.localStorage.getItem(this._getKey(e));return n===null?t||null:JSON.parse(n)}remove(e){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}return window.localStorage.removeItem(this._getKey(e))}_getKey(e){return`@bitrix24/b24jssdk-pull-${this.userId}-${this.siteId}-${e}`}compareKey(e,t){return e===this._getKey(t)}}class Sh extends Error{constructor(e){super(e),this.name="ErrorNotConnected"}}class _h extends Error{constructor(e){super(e),this.name="ErrorTimeout"}}const Mr="2.0";class vh{_logger=null;_connector;_idCounter=0;_handlers={};_rpcResponseAwaiters=new Map;constructor(e){if(this._connector=e.connector,N.isPlainObject(e.handlers))for(const t in e.handlers)this.handle(t,e.handlers[t])}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}handle(e,t){this._handlers[e]=t}async executeOutgoingRpcCommand(e,t,n=5){return new Promise((s,i)=>{const o=this.createRequest(e,t);this._connector.send(JSON.stringify(o))||i(new Sh("websocket is not connected"));const a=setTimeout(()=>{this._rpcResponseAwaiters.delete(o.id),i(new _h("no response"))},n*1e3);this._rpcResponseAwaiters.set(o.id,{resolve:s,reject:i,timeout:a})})}executeOutgoingRpcBatch(e){const t=[],n=[];return e.forEach(({method:s,params:i,id:o})=>{const a=this.createRequest(s,i,o);t.push(a),n.push(new Promise((l,u)=>this._rpcResponseAwaiters.set(a.id,{resolve:l,reject:u})))}),this._connector.send(JSON.stringify(t)),n}processRpcResponse(e){if("id"in e&&this._rpcResponseAwaiters.has(Number(e.id))){const t=this._rpcResponseAwaiters.get(Number(e.id));t&&("result"in e?t.resolve(e.result):"error"in e?t.reject(e?.error||"error"):t.reject("wrong response structure"),clearTimeout(t.timeout),this._rpcResponseAwaiters.delete(Number(e.id)));return}this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Received rpc response with unknown id`),e)}parseJsonRpcMessage(e){let t;try{t=JSON.parse(e)}catch(n){this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not decode json rpc message`),n);return}if(N.isArray(t))return this.executeIncomingRpcBatch(t);if(N.isJsonRpcRequest(t))return this.executeIncomingRpcCommand(t);if(N.isJsonRpcResponse(t))return this.processRpcResponse(t);this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: unknown rpc packet`),t)}executeIncomingRpcCommand({method:e,params:t}){return e in this._handlers?this._handlers[e].call(this,t||{}):{jsonrpc:Mr,error:mn.MethodNotFound}}executeIncomingRpcBatch(e){const t=[];for(const n of e)if("jsonrpc"in n)if("method"in n){const s=this.executeIncomingRpcCommand(n);s&&(s.jsonrpc=Mr,s.id=n.id,t.push(s))}else this.processRpcResponse(n);else this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: unknown rpc command in batch`),n),t.push({jsonrpc:Mr,error:mn.InvalidRequest});return t}nextId(){return++this._idCounter}createPublishRequest(e){return e.map(t=>this.createRequest("publish",t))}createRequest(e,t,n){return n||(n=this.nextId()),{jsonrpc:Mr,method:e,params:t,id:n}}}class kh{_logger=null;_storage;_ttl=24*60*60;_callbacks;constructor(e={}){e=e||{},this._storage=e.storage||new Mo,this._callbacks={onWebSocketBlockChanged:N.isFunction(e.onWebSocketBlockChanged)?e.onWebSocketBlockChanged:()=>{}},this._storage&&window.addEventListener("storage",this.onLocalStorageSet.bind(this))}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}onLocalStorageSet(e){this._storage.compareKey(e.key||"",Ce.WebsocketBlocked)&&e.newValue!==e.oldValue&&this._callbacks.onWebSocketBlockChanged({isWebSocketBlocked:this.isWebSocketBlocked()})}isWebSocketBlocked(){return this._storage?this._storage.get(Ce.WebsocketBlocked,0)>Date.now():!1}setWebSocketBlocked(e){if(!this._storage)return!1;try{this._storage.set(Ce.WebsocketBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not save WS_blocked flag in local storage. Error: `),t),!1}return!0}isLongPollingBlocked(){return this._storage?this._storage.get(Ce.LongPollingBlocked,0)>Date.now():!1}setLongPollingBlocked(e){if(!this._storage)return!1;try{this._storage.set(Ce.LongPollingBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not save LP_blocked flag in local storage. Error: `),t),!1}return!0}isLoggingEnabled(){return this._storage?this._storage.get(Ce.LoggingEnabled,0)>this.getTimestamp():!1}setLoggingEnabled(e){if(!this._storage)return!1;try{this._storage.set(Ce.LoggingEnabled,e?this.getTimestamp()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: LocalStorage error: `),t),!1}return!0}getTimestamp(){return Date.now()}}class Eh{_logger=null;_publicIds;_restClient;_getPublicListMethod;constructor(e){this._publicIds=new Map,this._restClient=e.b24,this._getPublicListMethod=e.getPublicListMethod}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async getPublicIds(e){const t=new Date,n={},s=[];for(const i of e){const o=this._publicIds.get(i);o&&o.end>t?n[o.userId]=o:s.push(i)}return s.length===0?Promise.resolve(n):new Promise(i=>{this._restClient.callMethod(this._getPublicListMethod,{users:s}).then(o=>{const a=o.getData().result;this.setPublicIds(Object.values(a));for(const l of s){const u=this._publicIds.get(l);u&&(n[u.userId]=u)}i(n)}).catch(o=>(this.getLogger().error(o),i({})))})}setPublicIds(e){e.forEach(t=>{const n=Number(t.user_id);this._publicIds.set(n,{userId:n,publicId:t.public_id,signature:t.signature,start:new Date(t.start),end:new Date(t.end)})})}}var tr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Th(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Dn={exports:{}};/*!
7
+ `))}}class Sr extends $e{_status;_query;_data;constructor(e){super(),this._data=Object.freeze(e.answer),this._query=Object.freeze(structuredClone(e.query)),this._status=e.status,this.#e()}#e(){const{error:e}=this._data;if(!e)return;const t=this.#t(e);this.addError(this.#r(t),"base-error")}#t(e){return typeof e=="string"?{code:e,description:this._data.error_description||""}:{code:e.error,description:e.error_description||""}}#r(e){return new We({code:String(this._status),description:e.description,status:this._status,requestInfo:{method:this._query.method,params:this._query.params}})}getData(){return Object.freeze({result:this._data.result,next:this._data.next,total:this._data.total,time:this._data.time})}hasMore(){return this.isMore()}isMore(){return N.isNumber(this._data?.next)}getTotal(){return $.toInteger(this._data?.total)}getStatus(){return this._status}getQuery(){return this._query}async fetchNext(e){const t=await this.getNext(e);return t===!1?null:t}async getNext(e){if(!this.isMore()||!this.isSuccess)return!1;const t=this.#n();return e.call(t.method,t.params,t.start)}#n(){return{...this._query,start:$.toInteger(this._data.next)}}setData(){throw new ReferenceError("AjaxResult does not allow data modification")}}let dc=class{#e;#t;#r;_logger=null;constructor(){this.#e=Ei,this.#r=0,this.#t=0}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}get params(){return{...this.#e}}set params(e){this.#e=e,this.getLogger().log("new restriction manager params",e)}check(e=""){return new Promise(t=>{if(this.#s(),this.#i())return this.getLogger().log(`>> no sleep >>> ${e}`,this.#n()),this.#o(),t(null);{const n=i=>{this.getLogger().info(`>> go sleep >>> ${e}`,this.#n()),setTimeout(()=>{i()},this.#e.sleep)},s=()=>{if(this.#s(),this.#i())return this.getLogger().info(`<< stop sleep <<< ${e}`,this.#n()),this.#o(),t(null);n(s)};n(s)}})}#n(){return`${this.#r.toFixed(4)} from ${this.#e.amount}`}#s(){this.#t>0&&(this.#r-=(Date.now()-this.#t)*this.#e.speed,this.#r<0&&(this.#r=0)),this.#t=Date.now()}#o(){this.#r++}#i(){return this.#r<this.#e.amount}};const pc="X-Request-ID",gc="bx24_request_id",mc="bx24_sdk_ver",yc="bx24_sdk_type";let wc=class{getQueryStringParameterName(){return gc}getQueryStringSdkParameterName(){return mc}getQueryStringSdkTypeParameterName(){return yc}generate(){return $.getUuidRfc4122()}getRequestId(){return this.generate()}getHeaderFieldName(){return pc}};function Fi(r,e){return function(){return r.apply(e,arguments)}}const{toString:bc}=Object.prototype,{getPrototypeOf:wn}=Object,{iterator:_r,toStringTag:Mi}=Symbol,vr=(r=>e=>{const t=bc.call(e);return r[t]||(r[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),qe=r=>(r=r.toLowerCase(),e=>vr(e)===r),kr=r=>e=>typeof e===r,{isArray:Ft}=Array,Kt=kr("undefined");function Sc(r){return r!==null&&!Kt(r)&&r.constructor!==null&&!Kt(r.constructor)&&Te(r.constructor.isBuffer)&&r.constructor.isBuffer(r)}const Pi=qe("ArrayBuffer");function _c(r){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(r):e=r&&r.buffer&&Pi(r.buffer),e}const vc=kr("string"),Te=kr("function"),xi=kr("number"),Er=r=>r!==null&&typeof r=="object",kc=r=>r===!0||r===!1,Tr=r=>{if(vr(r)!=="object")return!1;const e=wn(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Mi in r)&&!(_r in r)},Ec=qe("Date"),Tc=qe("File"),Oc=qe("Blob"),Ac=qe("FileList"),Ic=r=>Er(r)&&Te(r.pipe),Cc=r=>{let e;return r&&(typeof FormData=="function"&&r instanceof FormData||Te(r.append)&&((e=vr(r))==="formdata"||e==="object"&&Te(r.toString)&&r.toString()==="[object FormData]"))},Nc=qe("URLSearchParams"),[Rc,Lc,Fc,Mc]=["ReadableStream","Request","Response","Headers"].map(qe),Pc=r=>r.trim?r.trim():r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Qt(r,e,{allOwnKeys:t=!1}={}){if(r===null||typeof r>"u")return;let n,s;if(typeof r!="object"&&(r=[r]),Ft(r))for(n=0,s=r.length;n<s;n++)e.call(null,r[n],n,r);else{const i=t?Object.getOwnPropertyNames(r):Object.keys(r),o=i.length;let a;for(n=0;n<o;n++)a=i[n],e.call(null,r[a],a,r)}}function Di(r,e){e=e.toLowerCase();const t=Object.keys(r);let n=t.length,s;for(;n-- >0;)if(s=t[n],e===s.toLowerCase())return s;return null}const mt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ji=r=>!Kt(r)&&r!==mt;function bn(){const{caseless:r}=ji(this)&&this||{},e={},t=(n,s)=>{const i=r&&Di(e,s)||s;Tr(e[i])&&Tr(n)?e[i]=bn(e[i],n):Tr(n)?e[i]=bn({},n):Ft(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&Qt(arguments[n],t);return e}const xc=(r,e,t,{allOwnKeys:n}={})=>(Qt(e,(s,i)=>{t&&Te(s)?r[i]=Fi(s,t):r[i]=s},{allOwnKeys:n}),r),Dc=r=>(r.charCodeAt(0)===65279&&(r=r.slice(1)),r),jc=(r,e,t,n)=>{r.prototype=Object.create(e.prototype,n),r.prototype.constructor=r,Object.defineProperty(r,"super",{value:e.prototype}),t&&Object.assign(r.prototype,t)},Uc=(r,e,t,n)=>{let s,i,o;const a={};if(e=e||{},r==null)return e;do{for(s=Object.getOwnPropertyNames(r),i=s.length;i-- >0;)o=s[i],(!n||n(o,r,e))&&!a[o]&&(e[o]=r[o],a[o]=!0);r=t!==!1&&wn(r)}while(r&&(!t||t(r,e))&&r!==Object.prototype);return e},Bc=(r,e,t)=>{r=String(r),(t===void 0||t>r.length)&&(t=r.length),t-=e.length;const n=r.indexOf(e,t);return n!==-1&&n===t},$c=r=>{if(!r)return null;if(Ft(r))return r;let e=r.length;if(!xi(e))return null;const t=new Array(e);for(;e-- >0;)t[e]=r[e];return t},Wc=(r=>e=>r&&e instanceof r)(typeof Uint8Array<"u"&&wn(Uint8Array)),qc=(r,e)=>{const n=(r&&r[_r]).call(r);let s;for(;(s=n.next())&&!s.done;){const i=s.value;e.call(r,i[0],i[1])}},Vc=(r,e)=>{let t;const n=[];for(;(t=r.exec(e))!==null;)n.push(t);return n},Hc=qe("HTMLFormElement"),zc=r=>r.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,n,s){return n.toUpperCase()+s}),Ui=(({hasOwnProperty:r})=>(e,t)=>r.call(e,t))(Object.prototype),Jc=qe("RegExp"),Bi=(r,e)=>{const t=Object.getOwnPropertyDescriptors(r),n={};Qt(t,(s,i)=>{let o;(o=e(s,i,r))!==!1&&(n[i]=o||s)}),Object.defineProperties(r,n)},Zc=r=>{Bi(r,(e,t)=>{if(Te(r)&&["arguments","caller","callee"].indexOf(t)!==-1)return!1;const n=r[t];if(Te(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},Gc=(r,e)=>{const t={},n=s=>{s.forEach(i=>{t[i]=!0})};return Ft(r)?n(r):n(String(r).split(e)),t},Yc=()=>{},Kc=(r,e)=>r!=null&&Number.isFinite(r=+r)?r:e;function Qc(r){return!!(r&&Te(r.append)&&r[Mi]==="FormData"&&r[_r])}const Xc=r=>{const e=new Array(10),t=(n,s)=>{if(Er(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;const i=Ft(n)?[]:{};return Qt(n,(o,a)=>{const l=t(o,s+1);!Kt(l)&&(i[a]=l)}),e[s]=void 0,i}}return n};return t(r,0)},eu=qe("AsyncFunction"),tu=r=>r&&(Er(r)||Te(r))&&Te(r.then)&&Te(r.catch),$i=((r,e)=>r?setImmediate:e?((t,n)=>(mt.addEventListener("message",({source:s,data:i})=>{s===mt&&i===t&&n.length&&n.shift()()},!1),s=>{n.push(s),mt.postMessage(t,"*")}))(`axios@${Math.random()}`,[]):t=>setTimeout(t))(typeof setImmediate=="function",Te(mt.postMessage)),ru=typeof queueMicrotask<"u"?queueMicrotask.bind(mt):typeof process<"u"&&process.nextTick||$i,v={isArray:Ft,isArrayBuffer:Pi,isBuffer:Sc,isFormData:Cc,isArrayBufferView:_c,isString:vc,isNumber:xi,isBoolean:kc,isObject:Er,isPlainObject:Tr,isReadableStream:Rc,isRequest:Lc,isResponse:Fc,isHeaders:Mc,isUndefined:Kt,isDate:Ec,isFile:Tc,isBlob:Oc,isRegExp:Jc,isFunction:Te,isStream:Ic,isURLSearchParams:Nc,isTypedArray:Wc,isFileList:Ac,forEach:Qt,merge:bn,extend:xc,trim:Pc,stripBOM:Dc,inherits:jc,toFlatObject:Uc,kindOf:vr,kindOfTest:qe,endsWith:Bc,toArray:$c,forEachEntry:qc,matchAll:Vc,isHTMLForm:Hc,hasOwnProperty:Ui,hasOwnProp:Ui,reduceDescriptors:Bi,freezeMethods:Zc,toObjectSet:Gc,toCamelCase:zc,noop:Yc,toFiniteNumber:Kc,findKey:Di,global:mt,isContextDefined:ji,isSpecCompliantForm:Qc,toJSONObject:Xc,isAsyncFn:eu,isThenable:tu,setImmediate:$i,asap:ru,isIterable:r=>r!=null&&Te(r[_r])};function V(r,e,t,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=r,this.name="AxiosError",e&&(this.code=e),t&&(this.config=t),n&&(this.request=n),s&&(this.response=s,this.status=s.status?s.status:null)}v.inherits(V,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:v.toJSONObject(this.config),code:this.code,status:this.status}}});const Wi=V.prototype,qi={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(r=>{qi[r]={value:r}}),Object.defineProperties(V,qi),Object.defineProperty(Wi,"isAxiosError",{value:!0}),V.from=(r,e,t,n,s,i)=>{const o=Object.create(Wi);return v.toFlatObject(r,o,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),V.call(o,r.message,e,t,n,s),o.cause=r,o.name=r.name,i&&Object.assign(o,i),o};const nu=null;function Sn(r){return v.isPlainObject(r)||v.isArray(r)}function Vi(r){return v.endsWith(r,"[]")?r.slice(0,-2):r}function Hi(r,e,t){return r?r.concat(e).map(function(s,i){return s=Vi(s),!t&&i?"["+s+"]":s}).join(t?".":""):e}function su(r){return v.isArray(r)&&!r.some(Sn)}const iu=v.toFlatObject(v,{},null,function(e){return/^is[A-Z]/.test(e)});function Or(r,e,t){if(!v.isObject(r))throw new TypeError("target must be an object");e=e||new FormData,t=v.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,m){return!v.isUndefined(m[g])});const n=t.metaTokens,s=t.visitor||c,i=t.dots,o=t.indexes,l=(t.Blob||typeof Blob<"u"&&Blob)&&v.isSpecCompliantForm(e);if(!v.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(v.isDate(p))return p.toISOString();if(!l&&v.isBlob(p))throw new V("Blob is not supported. Use a Buffer instead.");return v.isArrayBuffer(p)||v.isTypedArray(p)?l&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function c(p,g,m){let y=p;if(p&&!m&&typeof p=="object"){if(v.endsWith(g,"{}"))g=n?g:g.slice(0,-2),p=JSON.stringify(p);else if(v.isArray(p)&&su(p)||(v.isFileList(p)||v.endsWith(g,"[]"))&&(y=v.toArray(p)))return g=Vi(g),y.forEach(function(_,b){!(v.isUndefined(_)||_===null)&&e.append(o===!0?Hi([g],b,i):o===null?g:g+"[]",u(_))}),!1}return Sn(p)?!0:(e.append(Hi(m,g,i),u(p)),!1)}const f=[],h=Object.assign(iu,{defaultVisitor:c,convertValue:u,isVisitable:Sn});function d(p,g){if(!v.isUndefined(p)){if(f.indexOf(p)!==-1)throw Error("Circular reference detected in "+g.join("."));f.push(p),v.forEach(p,function(y,w){(!(v.isUndefined(y)||y===null)&&s.call(e,y,v.isString(w)?w.trim():w,g,h))===!0&&d(y,g?g.concat(w):[w])}),f.pop()}}if(!v.isObject(r))throw new TypeError("data must be an object");return d(r),e}function zi(r){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(r).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function _n(r,e){this._pairs=[],r&&Or(r,this,e)}const Ji=_n.prototype;Ji.append=function(e,t){this._pairs.push([e,t])},Ji.toString=function(e){const t=e?function(n){return e.call(this,n,zi)}:zi;return this._pairs.map(function(s){return t(s[0])+"="+t(s[1])},"").join("&")};function ou(r){return encodeURIComponent(r).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Zi(r,e,t){if(!e)return r;const n=t&&t.encode||ou;v.isFunction(t)&&(t={serialize:t});const s=t&&t.serialize;let i;if(s?i=s(e,t):i=v.isURLSearchParams(e)?e.toString():new _n(e,t).toString(n),i){const o=r.indexOf("#");o!==-1&&(r=r.slice(0,o)),r+=(r.indexOf("?")===-1?"?":"&")+i}return r}class Gi{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){v.forEach(this.handlers,function(n){n!==null&&e(n)})}}const Yi={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},au={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:_n,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},vn=typeof window<"u"&&typeof document<"u",kn=typeof navigator=="object"&&navigator||void 0,lu=vn&&(!kn||["ReactNative","NativeScript","NS"].indexOf(kn.product)<0),cu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",uu=vn&&window.location.href||"http://localhost",_e={...{__proto__:null,hasBrowserEnv:vn,hasStandardBrowserEnv:lu,hasStandardBrowserWebWorkerEnv:cu,navigator:kn,origin:uu},...au};function hu(r,e){return Or(r,new _e.classes.URLSearchParams,Object.assign({visitor:function(t,n,s,i){return _e.isNode&&v.isBuffer(t)?(this.append(n,t.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function fu(r){return v.matchAll(/\w+|\[(\w*)]/g,r).map(e=>e[0]==="[]"?"":e[1]||e[0])}function du(r){const e={},t=Object.keys(r);let n;const s=t.length;let i;for(n=0;n<s;n++)i=t[n],e[i]=r[i];return e}function Ki(r){function e(t,n,s,i){let o=t[i++];if(o==="__proto__")return!0;const a=Number.isFinite(+o),l=i>=t.length;return o=!o&&v.isArray(s)?s.length:o,l?(v.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!a):((!s[o]||!v.isObject(s[o]))&&(s[o]=[]),e(t,n,s[o],i)&&v.isArray(s[o])&&(s[o]=du(s[o])),!a)}if(v.isFormData(r)&&v.isFunction(r.entries)){const t={};return v.forEachEntry(r,(n,s)=>{e(fu(n),s,t,0)}),t}return null}function pu(r,e,t){if(v.isString(r))try{return(e||JSON.parse)(r),v.trim(r)}catch(n){if(n.name!=="SyntaxError")throw n}return(t||JSON.stringify)(r)}const Xt={transitional:Yi,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",s=n.indexOf("application/json")>-1,i=v.isObject(e);if(i&&v.isHTMLForm(e)&&(e=new FormData(e)),v.isFormData(e))return s?JSON.stringify(Ki(e)):e;if(v.isArrayBuffer(e)||v.isBuffer(e)||v.isStream(e)||v.isFile(e)||v.isBlob(e)||v.isReadableStream(e))return e;if(v.isArrayBufferView(e))return e.buffer;if(v.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return hu(e,this.formSerializer).toString();if((a=v.isFileList(e))||n.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Or(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return i||s?(t.setContentType("application/json",!1),pu(e)):e}],transformResponse:[function(e){const t=this.transitional||Xt.transitional,n=t&&t.forcedJSONParsing,s=this.responseType==="json";if(v.isResponse(e)||v.isReadableStream(e))return e;if(e&&v.isString(e)&&(n&&!this.responseType||s)){const o=!(t&&t.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(a){if(o)throw a.name==="SyntaxError"?V.from(a,V.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:_e.classes.FormData,Blob:_e.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch"],r=>{Xt.headers[r]={}});const gu=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),mu=r=>{const e={};let t,n,s;return r&&r.split(`
8
+ `).forEach(function(o){s=o.indexOf(":"),t=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!t||e[t]&&gu[t])&&(t==="set-cookie"?e[t]?e[t].push(n):e[t]=[n]:e[t]=e[t]?e[t]+", "+n:n)}),e},Qi=Symbol("internals");function er(r){return r&&String(r).trim().toLowerCase()}function Ar(r){return r===!1||r==null?r:v.isArray(r)?r.map(Ar):String(r)}function yu(r){const e=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=t.exec(r);)e[n[1]]=n[2];return e}const wu=r=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(r.trim());function En(r,e,t,n,s){if(v.isFunction(n))return n.call(this,e,t);if(s&&(e=t),!!v.isString(e)){if(v.isString(n))return e.indexOf(n)!==-1;if(v.isRegExp(n))return n.test(e)}}function bu(r){return r.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,n)=>t.toUpperCase()+n)}function Su(r,e){const t=v.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(r,n+t,{value:function(s,i,o){return this[n].call(this,e,s,i,o)},configurable:!0})})}let Oe=class{constructor(e){e&&this.set(e)}set(e,t,n){const s=this;function i(a,l,u){const c=er(l);if(!c)throw new Error("header name must be a non-empty string");const f=v.findKey(s,c);(!f||s[f]===void 0||u===!0||u===void 0&&s[f]!==!1)&&(s[f||l]=Ar(a))}const o=(a,l)=>v.forEach(a,(u,c)=>i(u,c,l));if(v.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(v.isString(e)&&(e=e.trim())&&!wu(e))o(mu(e),t);else if(v.isObject(e)&&v.isIterable(e)){let a={},l,u;for(const c of e){if(!v.isArray(c))throw TypeError("Object iterator must return a key-value pair");a[u=c[0]]=(l=a[u])?v.isArray(l)?[...l,c[1]]:[l,c[1]]:c[1]}o(a,t)}else e!=null&&i(t,e,n);return this}get(e,t){if(e=er(e),e){const n=v.findKey(this,e);if(n){const s=this[n];if(!t)return s;if(t===!0)return yu(s);if(v.isFunction(t))return t.call(this,s,n);if(v.isRegExp(t))return t.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=er(e),e){const n=v.findKey(this,e);return!!(n&&this[n]!==void 0&&(!t||En(this,this[n],n,t)))}return!1}delete(e,t){const n=this;let s=!1;function i(o){if(o=er(o),o){const a=v.findKey(n,o);a&&(!t||En(n,n[a],a,t))&&(delete n[a],s=!0)}}return v.isArray(e)?e.forEach(i):i(e),s}clear(e){const t=Object.keys(this);let n=t.length,s=!1;for(;n--;){const i=t[n];(!e||En(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){const t=this,n={};return v.forEach(this,(s,i)=>{const o=v.findKey(n,i);if(o){t[o]=Ar(s),delete t[i];return}const a=e?bu(i):String(i).trim();a!==i&&delete t[i],t[a]=Ar(s),n[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return v.forEach(this,(n,s)=>{n!=null&&n!==!1&&(t[s]=e&&v.isArray(n)?n.join(", "):n)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join(`
9
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach(s=>n.set(s)),n}static accessor(e){const n=(this[Qi]=this[Qi]={accessors:{}}).accessors,s=this.prototype;function i(o){const a=er(o);n[a]||(Su(s,o),n[a]=!0)}return v.isArray(e)?e.forEach(i):i(e),this}};Oe.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),v.reduceDescriptors(Oe.prototype,({value:r},e)=>{let t=e[0].toUpperCase()+e.slice(1);return{get:()=>r,set(n){this[t]=n}}}),v.freezeMethods(Oe);function Tn(r,e){const t=this||Xt,n=e||t,s=Oe.from(n.headers);let i=n.data;return v.forEach(r,function(a){i=a.call(t,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function Xi(r){return!!(r&&r.__CANCEL__)}function Mt(r,e,t){V.call(this,r??"canceled",V.ERR_CANCELED,e,t),this.name="CanceledError"}v.inherits(Mt,V,{__CANCEL__:!0});function eo(r,e,t){const n=t.config.validateStatus;!t.status||!n||n(t.status)?r(t):e(new V("Request failed with status code "+t.status,[V.ERR_BAD_REQUEST,V.ERR_BAD_RESPONSE][Math.floor(t.status/100)-4],t.config,t.request,t))}function _u(r){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(r);return e&&e[1]||""}function vu(r,e){r=r||10;const t=new Array(r),n=new Array(r);let s=0,i=0,o;return e=e!==void 0?e:1e3,function(l){const u=Date.now(),c=n[i];o||(o=u),t[s]=l,n[s]=u;let f=i,h=0;for(;f!==s;)h+=t[f++],f=f%r;if(s=(s+1)%r,s===i&&(i=(i+1)%r),u-o<e)return;const d=c&&u-c;return d?Math.round(h*1e3/d):void 0}}function ku(r,e){let t=0,n=1e3/e,s,i;const o=(u,c=Date.now())=>{t=c,s=null,i&&(clearTimeout(i),i=null),r.apply(null,u)};return[(...u)=>{const c=Date.now(),f=c-t;f>=n?o(u,c):(s=u,i||(i=setTimeout(()=>{i=null,o(s)},n-f)))},()=>s&&o(s)]}const Ir=(r,e,t=3)=>{let n=0;const s=vu(50,250);return ku(i=>{const o=i.loaded,a=i.lengthComputable?i.total:void 0,l=o-n,u=s(l),c=o<=a;n=o;const f={loaded:o,total:a,progress:a?o/a:void 0,bytes:l,rate:u||void 0,estimated:u&&a&&c?(a-o)/u:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};r(f)},t)},to=(r,e)=>{const t=r!=null;return[n=>e[0]({lengthComputable:t,total:r,loaded:n}),e[1]]},ro=r=>(...e)=>v.asap(()=>r(...e)),Eu=_e.hasStandardBrowserEnv?((r,e)=>t=>(t=new URL(t,_e.origin),r.protocol===t.protocol&&r.host===t.host&&(e||r.port===t.port)))(new URL(_e.origin),_e.navigator&&/(msie|trident)/i.test(_e.navigator.userAgent)):()=>!0,Tu=_e.hasStandardBrowserEnv?{write(r,e,t,n,s,i){const o=[r+"="+encodeURIComponent(e)];v.isNumber(t)&&o.push("expires="+new Date(t).toGMTString()),v.isString(n)&&o.push("path="+n),v.isString(s)&&o.push("domain="+s),i===!0&&o.push("secure"),document.cookie=o.join("; ")},read(r){const e=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(r){this.write(r,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Ou(r){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(r)}function Au(r,e){return e?r.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):r}function no(r,e,t){let n=!Ou(e);return r&&(n||t==!1)?Au(r,e):e}const so=r=>r instanceof Oe?{...r}:r;function yt(r,e){e=e||{};const t={};function n(u,c,f,h){return v.isPlainObject(u)&&v.isPlainObject(c)?v.merge.call({caseless:h},u,c):v.isPlainObject(c)?v.merge({},c):v.isArray(c)?c.slice():c}function s(u,c,f,h){if(v.isUndefined(c)){if(!v.isUndefined(u))return n(void 0,u,f,h)}else return n(u,c,f,h)}function i(u,c){if(!v.isUndefined(c))return n(void 0,c)}function o(u,c){if(v.isUndefined(c)){if(!v.isUndefined(u))return n(void 0,u)}else return n(void 0,c)}function a(u,c,f){if(f in e)return n(u,c);if(f in r)return n(void 0,u)}const l={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(u,c,f)=>s(so(u),so(c),f,!0)};return v.forEach(Object.keys(Object.assign({},r,e)),function(c){const f=l[c]||s,h=f(r[c],e[c],c);v.isUndefined(h)&&f!==a||(t[c]=h)}),t}const io=r=>{const e=yt({},r);let{data:t,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:a}=e;e.headers=o=Oe.from(o),e.url=Zi(no(e.baseURL,e.url,e.allowAbsoluteUrls),r.params,r.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(v.isFormData(t)){if(_e.hasStandardBrowserEnv||_e.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((l=o.getContentType())!==!1){const[u,...c]=l?l.split(";").map(f=>f.trim()).filter(Boolean):[];o.setContentType([u||"multipart/form-data",...c].join("; "))}}if(_e.hasStandardBrowserEnv&&(n&&v.isFunction(n)&&(n=n(e)),n||n!==!1&&Eu(e.url))){const u=s&&i&&Tu.read(i);u&&o.set(s,u)}return e},Iu=typeof XMLHttpRequest<"u"&&function(r){return new Promise(function(t,n){const s=io(r);let i=s.data;const o=Oe.from(s.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:u}=s,c,f,h,d,p;function g(){d&&d(),p&&p(),s.cancelToken&&s.cancelToken.unsubscribe(c),s.signal&&s.signal.removeEventListener("abort",c)}let m=new XMLHttpRequest;m.open(s.method.toUpperCase(),s.url,!0),m.timeout=s.timeout;function y(){if(!m)return;const _=Oe.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),k={data:!a||a==="text"||a==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:_,config:r,request:m};eo(function(E){t(E),g()},function(E){n(E),g()},k),m=null}"onloadend"in m?m.onloadend=y:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.indexOf("file:")===0)||setTimeout(y)},m.onabort=function(){m&&(n(new V("Request aborted",V.ECONNABORTED,r,m)),m=null)},m.onerror=function(){n(new V("Network Error",V.ERR_NETWORK,r,m)),m=null},m.ontimeout=function(){let b=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||Yi;s.timeoutErrorMessage&&(b=s.timeoutErrorMessage),n(new V(b,k.clarifyTimeoutError?V.ETIMEDOUT:V.ECONNABORTED,r,m)),m=null},i===void 0&&o.setContentType(null),"setRequestHeader"in m&&v.forEach(o.toJSON(),function(b,k){m.setRequestHeader(k,b)}),v.isUndefined(s.withCredentials)||(m.withCredentials=!!s.withCredentials),a&&a!=="json"&&(m.responseType=s.responseType),u&&([h,p]=Ir(u,!0),m.addEventListener("progress",h)),l&&m.upload&&([f,d]=Ir(l),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",d)),(s.cancelToken||s.signal)&&(c=_=>{m&&(n(!_||_.type?new Mt(null,r,m):_),m.abort(),m=null)},s.cancelToken&&s.cancelToken.subscribe(c),s.signal&&(s.signal.aborted?c():s.signal.addEventListener("abort",c)));const w=_u(s.url);if(w&&_e.protocols.indexOf(w)===-1){n(new V("Unsupported protocol "+w+":",V.ERR_BAD_REQUEST,r));return}m.send(i||null)})},Cu=(r,e)=>{const{length:t}=r=r?r.filter(Boolean):[];if(e||t){let n=new AbortController,s;const i=function(u){if(!s){s=!0,a();const c=u instanceof Error?u:this.reason;n.abort(c instanceof V?c:new Mt(c instanceof Error?c.message:c))}};let o=e&&setTimeout(()=>{o=null,i(new V(`timeout ${e} of ms exceeded`,V.ETIMEDOUT))},e);const a=()=>{r&&(o&&clearTimeout(o),o=null,r.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),r=null)};r.forEach(u=>u.addEventListener("abort",i));const{signal:l}=n;return l.unsubscribe=()=>v.asap(a),l}},Nu=function*(r,e){let t=r.byteLength;if(t<e){yield r;return}let n=0,s;for(;n<t;)s=n+e,yield r.slice(n,s),n=s},Ru=async function*(r,e){for await(const t of Lu(r))yield*Nu(t,e)},Lu=async function*(r){if(r[Symbol.asyncIterator]){yield*r;return}const e=r.getReader();try{for(;;){const{done:t,value:n}=await e.read();if(t)break;yield n}}finally{await e.cancel()}},oo=(r,e,t,n)=>{const s=Ru(r,e);let i=0,o,a=l=>{o||(o=!0,n&&n(l))};return new ReadableStream({async pull(l){try{const{done:u,value:c}=await s.next();if(u){a(),l.close();return}let f=c.byteLength;if(t){let h=i+=f;t(h)}l.enqueue(new Uint8Array(c))}catch(u){throw a(u),u}},cancel(l){return a(l),s.return()}},{highWaterMark:2})},Cr=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",ao=Cr&&typeof ReadableStream=="function",Fu=Cr&&(typeof TextEncoder=="function"?(r=>e=>r.encode(e))(new TextEncoder):async r=>new Uint8Array(await new Response(r).arrayBuffer())),lo=(r,...e)=>{try{return!!r(...e)}catch{return!1}},Mu=ao&&lo(()=>{let r=!1;const e=new Request(_e.origin,{body:new ReadableStream,method:"POST",get duplex(){return r=!0,"half"}}).headers.has("Content-Type");return r&&!e}),co=64*1024,On=ao&&lo(()=>v.isReadableStream(new Response("").body)),Nr={stream:On&&(r=>r.body)};Cr&&(r=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Nr[e]&&(Nr[e]=v.isFunction(r[e])?t=>t[e]():(t,n)=>{throw new V(`Response type '${e}' is not supported`,V.ERR_NOT_SUPPORT,n)})})})(new Response);const Pu=async r=>{if(r==null)return 0;if(v.isBlob(r))return r.size;if(v.isSpecCompliantForm(r))return(await new Request(_e.origin,{method:"POST",body:r}).arrayBuffer()).byteLength;if(v.isArrayBufferView(r)||v.isArrayBuffer(r))return r.byteLength;if(v.isURLSearchParams(r)&&(r=r+""),v.isString(r))return(await Fu(r)).byteLength},xu=async(r,e)=>{const t=v.toFiniteNumber(r.getContentLength());return t??Pu(e)},An={http:nu,xhr:Iu,fetch:Cr&&(async r=>{let{url:e,method:t,data:n,signal:s,cancelToken:i,timeout:o,onDownloadProgress:a,onUploadProgress:l,responseType:u,headers:c,withCredentials:f="same-origin",fetchOptions:h}=io(r);u=u?(u+"").toLowerCase():"text";let d=Cu([s,i&&i.toAbortSignal()],o),p;const g=d&&d.unsubscribe&&(()=>{d.unsubscribe()});let m;try{if(l&&Mu&&t!=="get"&&t!=="head"&&(m=await xu(c,n))!==0){let k=new Request(e,{method:"POST",body:n,duplex:"half"}),S;if(v.isFormData(n)&&(S=k.headers.get("content-type"))&&c.setContentType(S),k.body){const[E,R]=to(m,Ir(ro(l)));n=oo(k.body,co,E,R)}}v.isString(f)||(f=f?"include":"omit");const y="credentials"in Request.prototype;p=new Request(e,{...h,signal:d,method:t.toUpperCase(),headers:c.normalize().toJSON(),body:n,duplex:"half",credentials:y?f:void 0});let w=await fetch(p);const _=On&&(u==="stream"||u==="response");if(On&&(a||_&&g)){const k={};["status","statusText","headers"].forEach(D=>{k[D]=w[D]});const S=v.toFiniteNumber(w.headers.get("content-length")),[E,R]=a&&to(S,Ir(ro(a),!0))||[];w=new Response(oo(w.body,co,E,()=>{R&&R(),g&&g()}),k)}u=u||"text";let b=await Nr[v.findKey(Nr,u)||"text"](w,r);return!_&&g&&g(),await new Promise((k,S)=>{eo(k,S,{data:b,headers:Oe.from(w.headers),status:w.status,statusText:w.statusText,config:r,request:p})})}catch(y){throw g&&g(),y&&y.name==="TypeError"&&/Load failed|fetch/i.test(y.message)?Object.assign(new V("Network Error",V.ERR_NETWORK,r,p),{cause:y.cause||y}):V.from(y,y&&y.code,r,p)}})};v.forEach(An,(r,e)=>{if(r){try{Object.defineProperty(r,"name",{value:e})}catch{}Object.defineProperty(r,"adapterName",{value:e})}});const uo=r=>`- ${r}`,Du=r=>v.isFunction(r)||r===null||r===!1,ho={getAdapter:r=>{r=v.isArray(r)?r:[r];const{length:e}=r;let t,n;const s={};for(let i=0;i<e;i++){t=r[i];let o;if(n=t,!Du(t)&&(n=An[(o=String(t)).toLowerCase()],n===void 0))throw new V(`Unknown adapter '${o}'`);if(n)break;s[o||"#"+i]=n}if(!n){const i=Object.entries(s).map(([a,l])=>`adapter ${a} `+(l===!1?"is not supported by the environment":"is not available in the build"));let o=e?i.length>1?`since :
10
+ `+i.map(uo).join(`
11
+ `):" "+uo(i[0]):"as no adapter specified";throw new V("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return n},adapters:An};function In(r){if(r.cancelToken&&r.cancelToken.throwIfRequested(),r.signal&&r.signal.aborted)throw new Mt(null,r)}function fo(r){return In(r),r.headers=Oe.from(r.headers),r.data=Tn.call(r,r.transformRequest),["post","put","patch"].indexOf(r.method)!==-1&&r.headers.setContentType("application/x-www-form-urlencoded",!1),ho.getAdapter(r.adapter||Xt.adapter)(r).then(function(n){return In(r),n.data=Tn.call(r,r.transformResponse,n),n.headers=Oe.from(n.headers),n},function(n){return Xi(n)||(In(r),n&&n.response&&(n.response.data=Tn.call(r,r.transformResponse,n.response),n.response.headers=Oe.from(n.response.headers))),Promise.reject(n)})}const po="1.9.0",Rr={};["object","boolean","number","function","string","symbol"].forEach((r,e)=>{Rr[r]=function(n){return typeof n===r||"a"+(e<1?"n ":" ")+r}});const go={};Rr.transitional=function(e,t,n){function s(i,o){return"[Axios v"+po+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,a)=>{if(e===!1)throw new V(s(o," has been removed"+(t?" in "+t:"")),V.ERR_DEPRECATED);return t&&!go[o]&&(go[o]=!0,console.warn(s(o," has been deprecated since v"+t+" and will be removed in the near future"))),e?e(i,o,a):!0}},Rr.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};function ju(r,e,t){if(typeof r!="object")throw new V("options must be an object",V.ERR_BAD_OPTION_VALUE);const n=Object.keys(r);let s=n.length;for(;s-- >0;){const i=n[s],o=e[i];if(o){const a=r[i],l=a===void 0||o(a,i,r);if(l!==!0)throw new V("option "+i+" must be "+l,V.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new V("Unknown option "+i,V.ERR_BAD_OPTION)}}const Lr={assertOptions:ju,validators:Rr},He=Lr.validators;let wt=class{constructor(e){this.defaults=e||{},this.interceptors={request:new Gi,response:new Gi}}async request(e,t){try{return await this._request(e,t)}catch(n){if(n instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
12
+ `+i):n.stack=i}catch{}}throw n}}_request(e,t){typeof e=="string"?(t=t||{},t.url=e):t=e||{},t=yt(this.defaults,t);const{transitional:n,paramsSerializer:s,headers:i}=t;n!==void 0&&Lr.assertOptions(n,{silentJSONParsing:He.transitional(He.boolean),forcedJSONParsing:He.transitional(He.boolean),clarifyTimeoutError:He.transitional(He.boolean)},!1),s!=null&&(v.isFunction(s)?t.paramsSerializer={serialize:s}:Lr.assertOptions(s,{encode:He.function,serialize:He.function},!0)),t.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Lr.assertOptions(t,{baseUrl:He.spelling("baseURL"),withXsrfToken:He.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&v.merge(i.common,i[t.method]);i&&v.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),t.headers=Oe.concat(o,i);const a=[];let l=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(t)===!1||(l=l&&g.synchronous,a.unshift(g.fulfilled,g.rejected))});const u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.rejected)});let c,f=0,h;if(!l){const p=[fo.bind(this),void 0];for(p.unshift.apply(p,a),p.push.apply(p,u),h=p.length,c=Promise.resolve(t);f<h;)c=c.then(p[f++],p[f++]);return c}h=a.length;let d=t;for(f=0;f<h;){const p=a[f++],g=a[f++];try{d=p(d)}catch(m){g.call(this,m);break}}try{c=fo.call(this,d)}catch(p){return Promise.reject(p)}for(f=0,h=u.length;f<h;)c=c.then(u[f++],u[f++]);return c}getUri(e){e=yt(this.defaults,e);const t=no(e.baseURL,e.url,e.allowAbsoluteUrls);return Zi(t,e.params,e.paramsSerializer)}};v.forEach(["delete","get","head","options"],function(e){wt.prototype[e]=function(t,n){return this.request(yt(n||{},{method:e,url:t,data:(n||{}).data}))}}),v.forEach(["post","put","patch"],function(e){function t(n){return function(i,o,a){return this.request(yt(a||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}wt.prototype[e]=t(),wt.prototype[e+"Form"]=t(!0)});let Uu=class Ko{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(i){t=i});const n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(a=>{n.subscribe(a),i=a}).then(s);return o.cancel=function(){n.unsubscribe(i)},o},e(function(i,o,a){n.reason||(n.reason=new Mt(i,o,a),t(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=n=>{e.abort(n)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new Ko(function(s){e=s}),cancel:e}}};function Bu(r){return function(t){return r.apply(null,t)}}function $u(r){return v.isObject(r)&&r.isAxiosError===!0}const Cn={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(Cn).forEach(([r,e])=>{Cn[e]=r});function mo(r){const e=new wt(r),t=Fi(wt.prototype.request,e);return v.extend(t,wt.prototype,e,{allOwnKeys:!0}),v.extend(t,e,null,{allOwnKeys:!0}),t.create=function(s){return mo(yt(r,s))},t}const ae=mo(Xt);ae.Axios=wt,ae.CanceledError=Mt,ae.CancelToken=Uu,ae.isCancel=Xi,ae.VERSION=po,ae.toFormData=Or,ae.AxiosError=V,ae.Cancel=ae.CanceledError,ae.all=function(e){return Promise.all(e)},ae.spread=Bu,ae.isAxiosError=$u,ae.mergeConfig=yt,ae.AxiosHeaders=Oe,ae.formToJSON=r=>Ki(v.isHTMLForm(r)?new FormData(r):r),ae.getAdapter=ho.getAdapter,ae.HttpStatusCode=Cn,ae.default=ae;const{Axios:gf,AxiosError:yo,CanceledError:mf,isCancel:yf,CancelToken:wf,VERSION:bf,all:Sf,Cancel:_f,isAxiosError:vf,spread:kf,toFormData:Ef,AxiosHeaders:Tf,HttpStatusCode:Of,formToJSON:Af,getAdapter:If,mergeConfig:Cf}=ae,Wu=String.prototype.replace,qu=/%20/g,wo={RFC1738:"RFC1738",RFC3986:"RFC3986"},Vu={RFC1738:function(r){return Wu.call(r,qu,"+")},RFC3986:function(r){return String(r)}},Hu=wo.RFC1738,zu=wo.RFC3986,Nn=Object.prototype.hasOwnProperty,bt=Array.isArray,ze=function(){const r=[];for(let e=0;e<256;++e)r.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return r}(),Ju=function(e){for(;e.length>1;){const t=e.pop(),n=t.obj[t.prop];if(bt(n)){const s=[];for(let i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);t.obj[t.prop]=s}}},Zu=function(e,t){const n=t&&t.plainObjects?Object.create(null):{};for(let s=0;s<e.length;++s)typeof e[s]<"u"&&(n[s]=e[s]);return n},Gu=function r(e,t,n){if(!t)return e;if(typeof t!="object"){if(bt(e))e.push(t);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!Nn.call(Object.prototype,t))&&(e[t]=!0);else return[e,t];return e}if(!e||typeof e!="object")return[e].concat(t);let s=e;return bt(e)&&!bt(t)&&(s=Zu(e,n)),bt(e)&&bt(t)?(t.forEach(function(i,o){if(Nn.call(e,o)){const a=e[o];a&&typeof a=="object"&&i&&typeof i=="object"?e[o]=r(a,i,n):e.push(i)}else e[o]=i}),e):Object.keys(t).reduce(function(i,o){const a=t[o];return Nn.call(i,o)?i[o]=r(i[o],a,n):i[o]=a,i},s)},Yu=function(r,e,t){const n=r.replace(/\+/g," ");if(t==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},Rn=1024,Ku=function(e,t,n,s,i){if(e.length===0)return e;let o=e;if(typeof e=="symbol"?o=Symbol.prototype.toString.call(e):typeof e!="string"&&(o=String(e)),n==="iso-8859-1")return escape(o).replace(/%u[0-9a-f]{4}/gi,function(l){return"%26%23"+parseInt(l.slice(2),16)+"%3B"});let a="";for(let l=0;l<o.length;l+=Rn){const u=o.length>=Rn?o.slice(l,l+Rn):o,c=[];for(let f=0;f<u.length;++f){let h=u.charCodeAt(f);if(h===45||h===46||h===95||h===126||h>=48&&h<=57||h>=65&&h<=90||h>=97&&h<=122||i===Hu&&(h===40||h===41)){c[c.length]=u.charAt(f);continue}if(h<128){c[c.length]=ze[h];continue}if(h<2048){c[c.length]=ze[192|h>>6]+ze[128|h&63];continue}if(h<55296||h>=57344){c[c.length]=ze[224|h>>12]+ze[128|h>>6&63]+ze[128|h&63];continue}f+=1,h=65536+((h&1023)<<10|u.charCodeAt(f)&1023),c[c.length]=ze[240|h>>18]+ze[128|h>>12&63]+ze[128|h>>6&63]+ze[128|h&63]}a+=c.join("")}return a},Qu=function(e){const t=[{obj:{o:e},prop:"o"}],n=[];for(let s=0;s<t.length;++s){const i=t[s],o=i.obj[i.prop],a=Object.keys(o);for(let l=0;l<a.length;++l){const u=a[l],c=o[u];typeof c=="object"&&c!==null&&n.indexOf(c)===-1&&(t.push({obj:o,prop:u}),n.push(c))}}return Ju(t),e},Xu=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},eh=function(e,t){return[].concat(e,t)},Ln=function(e,t){if(bt(e)){const n=[];for(let s=0;s<e.length;s+=1)n.push(t(e[s]));return n}return t(e)},th={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},Ke=Array.isArray,rh=Array.prototype.push,bo=function(r,e){rh.apply(r,Ke(e)?e:[e])},nh=Date.prototype.toISOString,So=zu,Fr={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Ku,encodeValuesOnly:!1,format:So,formatter:Vu[So],indices:!1,serializeDate:function(e){return nh.call(e)},skipNulls:!1,strictNullHandling:!1},sh=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},Fn={},_o=function(e,t,n,s,i,o,a,l,u,c,f,h,d,p,g,m,y,w){let _=e,b=w,k=0,S=!1;for(;(b=b.get(Fn))!==void 0&&!S;){const J=b.get(e);if(k+=1,typeof J<"u"){if(J===k)throw new RangeError("Cyclic object value");S=!0}typeof b.get(Fn)>"u"&&(k=0)}if(typeof c=="function"?_=c(t,_):_ instanceof Date?_=d(_):n==="comma"&&Ke(_)&&(_=Ln(_,function(J){return J instanceof Date?d(J):J})),_===null){if(o)return u&&!m?u(t,Fr.encoder,y,"key",p):t;_=""}if(sh(_)||Xu(_)){if(u){const J=m?t:u(t,Fr.encoder,y,"key",p);return[g(J)+"="+g(u(_,Fr.encoder,y,"value",p))]}return[g(t)+"="+g(String(_))]}const E=[];if(typeof _>"u")return E;let R;if(n==="comma"&&Ke(_))m&&u&&(_=Ln(_,u)),R=[{value:_.length>0?_.join(",")||null:void 0}];else if(Ke(c))R=c;else{const J=Object.keys(_);R=f?J.sort(f):J}const D=l?t.replace(/\./g,"%2E"):t,x=s&&Ke(_)&&_.length===1?D+"[]":D;if(i&&Ke(_)&&_.length===0)return x+"[]";for(let J=0;J<R.length;++J){const me=R[J],H=typeof me=="object"&&typeof me.value<"u"?me.value:_[me];if(a&&H===null)continue;const Q=h&&l?me.replace(/\./g,"%2E"):me,B=Ke(_)?typeof n=="function"?n(x,Q):x:x+(h?"."+Q:"["+Q+"]");w.set(e,k);const he=new WeakMap;he.set(Fn,w),bo(E,_o(H,B,n,s,i,o,a,l,n==="comma"&&m&&Ke(_)?null:u,c,f,h,d,p,g,m,y,he))}return E},ih=function(e){return Fr};function vo(r,e){let t=r;const n=ih();let s,i;typeof n.filter=="function"?(i=n.filter,t=i("",t)):Ke(n.filter)&&(i=n.filter,s=i);const o=[];if(typeof t!="object"||t===null)return"";const a=th[n.arrayFormat],l=a==="comma"&&n.commaRoundTrip;s||(s=Object.keys(t)),n.sort&&s.sort(n.sort);const u=new WeakMap;for(let h=0;h<s.length;++h){const d=s[h];n.skipNulls&&t[d]===null||bo(o,_o(t[d],d,a,l,n.allowEmptyArrays,n.strictNullHandling,n.skipNulls,n.encodeDotInKeys,n.encode?n.encoder:null,n.filter,n.sort,n.allowDots,n.serializeDate,n.format,n.formatter,n.encodeValuesOnly,n.charset,u))}const c=o.join(n.delimiter);let f=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?f+="utf8=%26%2310003%3B&":f+="utf8=%E2%9C%93&"),c.length>0?f+c:""}const Mn=Object.prototype.hasOwnProperty,oh=Array.isArray,Mr={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Yu,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},ah=function(r){return r.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},ko=function(r,e){return r&&typeof r=="string"&&e.comma&&r.indexOf(",")>-1?r.split(","):r},lh="utf8=%26%2310003%3B",ch="utf8=%E2%9C%93",uh=function(e,t){const n={__proto__:null},s=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,i=t.parameterLimit===1/0?void 0:t.parameterLimit,o=s.split(t.delimiter,i);let a=-1,l,u=t.charset;if(t.charsetSentinel)for(l=0;l<o.length;++l)o[l].indexOf("utf8=")===0&&(o[l]===ch?u="utf-8":o[l]===lh&&(u="iso-8859-1"),a=l,l=o.length);for(l=0;l<o.length;++l){if(l===a)continue;const c=o[l],f=c.indexOf("]="),h=f===-1?c.indexOf("="):f+1;let d,p;h===-1?(d=t.decoder(c,Mr.decoder,u,"key"),p=t.strictNullHandling?null:""):(d=t.decoder(c.slice(0,h),Mr.decoder,u,"key"),p=Ln(ko(c.slice(h+1),t),function(m){return t.decoder(m,Mr.decoder,u,"value")})),p&&t.interpretNumericEntities&&u==="iso-8859-1"&&(p=ah(p)),c.indexOf("[]=")>-1&&(p=oh(p)?[p]:p);const g=Mn.call(n,d);g&&t.duplicates==="combine"?n[d]=eh(n[d],p):(!g||t.duplicates==="last")&&(n[d]=p)}return n},hh=function(r,e,t,n){let s=n?e:ko(e,t);for(let i=r.length-1;i>=0;--i){let o;const a=r[i];if(a==="[]"&&t.parseArrays)o=t.allowEmptyArrays&&s===""?[]:[].concat(s);else{o=t.plainObjects?Object.create(null):{};const l=a.charAt(0)==="["&&a.charAt(a.length-1)==="]"?a.slice(1,-1):a,u=t.decodeDotInKeys?l.replace(/%2E/g,"."):l,c=parseInt(u,10);!t.parseArrays&&u===""?o={0:s}:!isNaN(c)&&a!==u&&String(c)===u&&c>=0&&t.parseArrays&&c<=t.arrayLimit?(o=[],o[c]=s):u!=="__proto__"&&(o[u]=s)}s=o}return s},fh=function(e,t,n,s){if(!e)return;const i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,o=/(\[[^[\]]*])/,a=/(\[[^[\]]*])/g;let l=n.depth>0&&o.exec(i);const u=l?i.slice(0,l.index):i,c=[];if(u){if(!n.plainObjects&&Mn.call(Object.prototype,u)&&!n.allowPrototypes)return;c.push(u)}let f=0;for(;n.depth>0&&(l=a.exec(i))!==null&&f<n.depth;){if(f+=1,!n.plainObjects&&Mn.call(Object.prototype,l[1].slice(1,-1))&&!n.allowPrototypes)return;c.push(l[1])}return l&&c.push("["+i.slice(l.index)+"]"),hh(c,t,n,s)},dh=function(e){return Mr};function Eo(r,e){const t=dh();if(r===""||r===null||typeof r>"u")return t.plainObjects?Object.create(null):{};const n=typeof r=="string"?uh(r,t):r;let s=t.plainObjects?Object.create(null):{};const i=Object.keys(n);for(let o=0;o<i.length;++o){const a=i[o],l=fh(a,n[a],t,typeof r=="string");s=Gu(s,l,t)}return t.allowSparse===!0?s:Qu(s)}let To=class{#e;#t;#r;#n;_logger=null;_loggerSystem=null;#s="";#o=!1;#i="";constructor(e,t,n){const s={};this.#e=ae.create({baseURL:e,headers:{...s,...n?n.headers:{}},...n&&{...n,headers:void 0}}),this.#t=t,this.#r=new dc,this.#n=new wc}setLogger(e){this._logger=e,this.#r.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}getSystemLogger(){return this._loggerSystem===null&&(this._loggerSystem=ye.build("SystemLogger"),this._loggerSystem.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!0,[I.warn]:!0,[I.error]:!0,[I.trace]:!1})),this._loggerSystem}setRestrictionManagerParams(e){this.#r.params=e}getRestrictionManagerParams(){return this.#r.params}setLogTag(e){this.#s=e}clearLogTag(){this.#s=""}async batch(e,t=!0){return Array.isArray(e)?this.#c(e,t):this.#l(e,t)}async#l(e,t=!0){const n={};let s=0;const i=(o,a)=>{let l=null,u=null;o.method?(l=o.method??null,u=o?.params??null):Array.isArray(o)&&o.length>0&&(l=o[0]??null,u=o[1]??null),l&&(s++,n[a]=l+"?"+vo(u))};for(const[o,a]of Object.entries(e))i(a,o);return s<1?Promise.resolve(new $e):this.call("batch",{halt:t?1:0,cmd:n}).then(o=>{const a=o.getData().result,l={},u=(d,p)=>{if(typeof a.result[p]<"u"||typeof a.result_error[p]<"u"){const g=d.split("?");l[p]=new Sr({answer:{result:N.isUndefined(a.result[p])?{}:a.result[p],error:a?.result_error[p]||void 0,total:a.result_total[p],next:a.result_next[p],time:a.result_time[p]},query:{method:g[0]||"",params:Eo(g[1]||""),start:0},status:o.getStatus()})}};for(const[d,p]of Object.entries(n))u(p,d);const c={},f=d=>d.hasError("base-error")?d.errors.get("base-error"):new We({code:"0",description:d.getErrorMessages().join("; "),status:0,requestInfo:{method:d.getQuery().method,params:d.getQuery().params},originalError:d.getErrors().next().value}),h=new $e;for(const d of Object.keys(l)){const p=l[d];if(p.getStatus()!==200||!p.isSuccess){const g=f(p);if(!t&&!p.isSuccess){h.addError(g,d);continue}return Promise.reject(g)}c[d]=p.getData().result}return h.setData(c),Promise.resolve(h)})}async#c(e,t=!0){const n=[];let s=0;const i=o=>{let a=null,l=null;if(o.method?(a=o.method??null,l=o?.params??null):Array.isArray(o)&&o.length>0&&(a=o[0]??null,l=o[1]??null),a){s++;const u=a+"?"+vo(l);n.push(u)}};for(const[o,a]of e.entries())i(a);return s<1?Promise.resolve(new $e):this.call("batch",{halt:t?1:0,cmd:n}).then(o=>{const a=o.getData().result,l=[],u=(d,p)=>{if(typeof a.result[p]<"u"||typeof a.result_error[p]<"u"){const g=d.split("?"),m=new Sr({answer:{result:N.isUndefined(a.result[p])?{}:a.result[p],error:a?.result_error[p]||void 0,total:a.result_total[p],next:a.result_next[p],time:a.result_time[p]},query:{method:g[0]||"",params:Eo(g[1]||""),start:0},status:o.getStatus()});l.push(m)}};for(const[d,p]of n.entries())u(p,d);const c=[],f=d=>d.hasError("base-error")?d.errors.get("base-error"):new We({code:"0",description:d.getErrorMessages().join("; "),status:0,requestInfo:{method:d.getQuery().method,params:d.getQuery().params},originalError:d.getErrors().next().value}),h=new $e;for(const d of l){if(d.getStatus()!==200||!d.isSuccess){const p=f(d);if(!t&&!d.isSuccess){h.addError(p);continue}return Promise.reject(p)}c.push(d.getData().result)}return h.setData(c),Promise.resolve(h)})}async call(e,t,n=0){let s=this.#t.getAuthData();return s===!1&&(s=await this.#t.refreshAuth()),await this.#r.check(),this.#o&&!this.isServerSide()&&N.isStringFilled(this.#i)&&this.getSystemLogger().warn(this.#i),this.#e.post(this.#u(e),this.#a(s,t,n)).then(i=>{const o=i.data;return Promise.resolve({status:i.status,payload:o})},async i=>{let o={error:i?.code||0,errorDescription:i?.message||""};if(i instanceof yo&&i.response&&i.response.data&&!N.isUndefined(i.response.data.error)){const l=i.response.data;o={error:l.error,errorDescription:l.error_description}}const a=new We({code:String(o.error),description:o.errorDescription,status:i.response?.status||0,requestInfo:{method:e,params:t},originalError:i});return a.status===401&&["expired_token","invalid_token"].includes(a.answerError.error)?(this.getLogger().info(`refreshAuth >> ${a.answerError.error} >>>`),s=await this.#t.refreshAuth(),await this.#r.check(),this.#e.post(this.#u(e),this.#a(s,t,n)).then(async l=>{const u=l.data;return Promise.resolve({status:l.status,payload:u})},async l=>{let u={error:l?.code||0,errorDescription:l?.message||""};if(l instanceof yo&&l.response&&l.response.data){const f=l.response.data;u={error:f.error,errorDescription:f.error_description}}const c=new We({code:String(u.error),description:u.errorDescription,status:i.response?.status||0,requestInfo:{method:e,params:t},originalError:l});return Promise.reject(c)})):Promise.reject(a)}).then(i=>{const o=new Sr({answer:i.payload,query:{method:e,params:t,start:n},status:i.status});return Promise.resolve(o)})}#a(e,t,n=0){const s=Object.assign({},t);return this.#s.length>0&&(s.logTag=this.#s),s.data&&s.data.start&&delete s.data.start,e.refresh_token!=="hook"&&(s.auth=e.access_token),s.start=n,s}#u(e){const t=`${encodeURIComponent(e)}.json`,n=new URLSearchParams({[this.#n.getQueryStringParameterName()]:this.#n.getRequestId(),[this.#n.getQueryStringSdkParameterName()]:"0.3.0",[this.#n.getQueryStringSdkTypeParameterName()]:"b24-js-sdk"});return`${t}?${n.toString()}`}setClientSideWarning(e,t){this.#o=e,this.#i=t}isServerSide(){return typeof window>"u"}};class Pt{static batchSize=50;_isInit=!1;_http=null;_logger=null;constructor(){this._isInit=!1}get isInit(){return this._isInit}async init(){this._isInit=!0}destroy(){}setLogger(e){this._logger=e,this.getHttpClient().setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}callMethod(e,t,n){return this.getHttpClient().call(e,t||{},n||0)}async callListMethod(e,t={},n=null,s=null){const i=new $e;return N.isFunction(n)&&n!==null&&n(0),this.callMethod(e,t,0).then(async o=>{let a=[],l;if(s===null?l=o.getData().result:l=o.getData().result[s],a=[...a,...l],o.isMore()){let u=o;for(;u=await u.getNext(this.getHttpClient()),u!==!1;){let c;if(s===null?c=u.getData().result:c=u.getData().result[s],a=[...a,...c],n){const f=u.getTotal();n(f>0?Math.round(100*a.length/f):100)}}}return i.setData(a),n&&n(100),i})}async*fetchListMethod(e,t={},n="ID",s=null){t.order=t.order||{},t.filter=t.filter||{},t.start=-1;const i=`>${n}`;t.order[n]="ASC",t.filter[i]=0;do{const o=await this.callMethod(e,t,t.start);let a;if(!N.isNull(s)&&s!==null?a=o.getData().result[s]:a=o.getData().result,a.length===0||(yield a,a.length<Pt.batchSize))break;const l=a.at(-1);l&&n in l&&(t.filter[i]=l[n])}while(!0)}async callBatch(e,t=!0){return this.getHttpClient().batch(e,t)}chunkArray(e,t=50){const n=[];for(let s=0;s<e.length;s+=t){const i=e.slice(s,s+t);n.push(i)}return n}async callBatchByChunk(e,t=!0){const n=new $e,s=[],i=this.chunkArray(e,Pt.batchSize);for(const o of i){const a=await this.callBatch(o,t);s.push(...a.getData())}return n.setData(s)}getHttpClient(){if(!this.isInit||this._http===null)throw new Error("Http not init");return this._http}_getHttpOptions(){return null}_ensureInitialized(){if(!this._isInit)throw new Error("B24 not initialized")}}var Pn=(r=>(r.en="en",r.de="de",r.la="la",r.br="br",r.fr="fr",r.it="it",r.pl="pl",r.ru="ru",r.ua="ua",r.tr="tr",r.sc="sc",r.tc="tc",r.ja="ja",r.vn="vn",r.id="id",r.ms="ms",r.th="th",r.ar="ar",r))(Pn||{});const ph=()=>({scrollWidth:Math.max(document.documentElement.scrollWidth,document.documentElement.offsetWidth),scrollHeight:Math.max(document.documentElement.scrollHeight,document.documentElement.offsetHeight)});let gh=class ct{static isInternalConstructing=!1;static instance=null;_defLocale=null;constructor(){if(!ct.isInternalConstructing)throw new TypeError("FormatterNumber is not constructable");ct.isInternalConstructing=!1}static getInstance(){return ct.instance||(ct.isInternalConstructing=!0,ct.instance=new ct),ct.instance}setDefLocale(e){this._defLocale=e}format(e,t){let n;(typeof t>"u"||!N.isStringFilled(t))&&(t=N.isStringFilled(this._defLocale)?this._defLocale||"en":typeof navigator>"u"?"en":navigator?.language||"en"),Number.isInteger(e)?n=new Intl.NumberFormat(t,{minimumFractionDigits:0,maximumFractionDigits:0}):n=new Intl.NumberFormat(t,{minimumFractionDigits:2,maximumFractionDigits:2});let s=n.format(e);return t.includes("ru")&&(s=s.replace(",",".")),s}};class T{countryCode;length;structure;example;_cachedRegex=null;constructor(e,t,n,s){this.countryCode=e,this.length=t,this.structure=n,this.example=s}isValid(e){return this.length===e.length&&this.countryCode===e.slice(0,2)&&this._regex().test(e.slice(4))&&this._iso7064Mod9710(this._iso13616Prepare(e))==1}toBBAN(e,t){return(this._regex().exec(e.slice(4)||"")||[]).slice(1).join(t)}fromBBAN(e){if(!this.isValidBBAN(e))throw new Error("Invalid BBAN");const t=("0"+(98-this._iso7064Mod9710(this._iso13616Prepare(this.countryCode+"00"+e)))).slice(-2);return this.countryCode+t+e}isValidBBAN(e){return this.length-4===e.length&&this._regex().test(e)}_regex(){return this._cachedRegex===null&&(this._cachedRegex=this._parseStructure(this.structure)),this._cachedRegex}_parseStructure(e){const t=(e.match(/(.{3})/g)||[]).map(n=>{let s;const i=n.slice(0,1),o=Number.parseInt(n.slice(1),10);switch(i){case"A":s="0-9A-Za-z";break;case"B":s="0-9A-Z";break;case"C":s="A-Za-z";break;case"F":s="0-9";break;case"L":s="a-z";break;case"U":s="A-Z";break;case"W":s="0-9a-z";break}return"(["+s+"]{"+o+"})"});return new RegExp("^"+t.join("")+"$")}_iso13616Prepare(e){return e=e.toUpperCase(),e=e.substring(4)+e.substring(0,4),e.split("").map(t=>{const n=t.charCodeAt(0);return n>=65&&n<=90?(n-65+10).toString():t}).join("")}_iso7064Mod9710(e){let t=e,n;for(;t.length>2;)n=t.slice(0,9),t=Number.parseInt(n,10)%97+t.slice(n.length);return Number.parseInt(t,10)%97}}class Qe{static isInternalConstructing=!1;static instance=null;_countries;constructor(){if(!Qe.isInternalConstructing)throw new TypeError("FormatterIban is not constructable");Qe.isInternalConstructing=!1,this._countries=new Map}static getInstance(){return Qe.instance||(Qe.isInternalConstructing=!0,Qe.instance=new Qe),Qe.instance}addSpecification(e){this._countries.set(e.countryCode,e)}isValid(e){if(!this._isString(e))return!1;e=this.electronicFormat(e);const t=e.slice(0,2);if(!this._countries.has(t))throw new Error(`No country with code ${t}`);const n=this._countries.get(t);return!!n&&n.isValid(e)}printFormat(e,t){typeof t>"u"&&(t=" ");const n=/(.{4})(?!$)/g;return this.electronicFormat(e).replace(n,"$1"+t)}electronicFormat(e){const t=/[^a-zA-Z0-9]/g;return e.replace(t,"").toUpperCase()}toBBAN(e,t){typeof t>"u"&&(t=" "),e=this.electronicFormat(e);const n=e.slice(0,2);if(!this._countries.has(n))throw new Error(`No country with code ${n}`);const s=this._countries.get(n);if(!s)throw new Error(`No country with code ${n}`);return s.toBBAN(e,t)}fromBBAN(e,t){if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);if(!n)throw new Error(`No country with code ${e}`);return n.fromBBAN(this.electronicFormat(t))}isValidBBAN(e,t){if(!this._isString(t))return!1;if(!this._countries.has(e))throw new Error(`No country with code ${e}`);const n=this._countries.get(e);return!!n&&n.isValidBBAN(this.electronicFormat(t))}_isString(e){return typeof e=="string"||e instanceof String}}const mh=()=>{const r=gh.getInstance(),e=Qe.getInstance();return e.addSpecification(new T("AD",24,"F04F04A12","AD1200012030200359100100")),e.addSpecification(new T("AE",23,"F03F16","AE070331234567890123456")),e.addSpecification(new T("AL",28,"F08A16","AL47212110090000000235698741")),e.addSpecification(new T("AT",20,"F05F11","AT611904300234573201")),e.addSpecification(new T("AZ",28,"U04A20","AZ21NABZ00000000137010001944")),e.addSpecification(new T("BA",20,"F03F03F08F02","BA391290079401028494")),e.addSpecification(new T("BE",16,"F03F07F02","BE68539007547034")),e.addSpecification(new T("BG",22,"U04F04F02A08","BG80BNBG96611020345678")),e.addSpecification(new T("BH",22,"U04A14","BH67BMAG00001299123456")),e.addSpecification(new T("BR",29,"F08F05F10U01A01","BR9700360305000010009795493P1")),e.addSpecification(new T("BY",28,"A04F04A16","BY13NBRB3600900000002Z00AB00")),e.addSpecification(new T("CH",21,"F05A12","CH9300762011623852957")),e.addSpecification(new T("CR",22,"F04F14","CR72012300000171549015")),e.addSpecification(new T("CY",28,"F03F05A16","CY17002001280000001200527600")),e.addSpecification(new T("CZ",24,"F04F06F10","CZ6508000000192000145399")),e.addSpecification(new T("DE",22,"F08F10","DE89370400440532013000")),e.addSpecification(new T("DK",18,"F04F09F01","DK5000400440116243")),e.addSpecification(new T("DO",28,"U04F20","DO28BAGR00000001212453611324")),e.addSpecification(new T("EE",20,"F02F02F11F01","EE382200221020145685")),e.addSpecification(new T("EG",29,"F04F04F17","EG800002000156789012345180002")),e.addSpecification(new T("ES",24,"F04F04F01F01F10","ES9121000418450200051332")),e.addSpecification(new T("FI",18,"F06F07F01","FI2112345600000785")),e.addSpecification(new T("FO",18,"F04F09F01","FO6264600001631634")),e.addSpecification(new T("FR",27,"F05F05A11F02","FR1420041010050500013M02606")),e.addSpecification(new T("GB",22,"U04F06F08","GB29NWBK60161331926819")),e.addSpecification(new T("GE",22,"U02F16","GE29NB0000000101904917")),e.addSpecification(new T("GI",23,"U04A15","GI75NWBK000000007099453")),e.addSpecification(new T("GL",18,"F04F09F01","GL8964710001000206")),e.addSpecification(new T("GR",27,"F03F04A16","GR1601101250000000012300695")),e.addSpecification(new T("GT",28,"A04A20","GT82TRAJ01020000001210029690")),e.addSpecification(new T("HR",21,"F07F10","HR1210010051863000160")),e.addSpecification(new T("HU",28,"F03F04F01F15F01","HU42117730161111101800000000")),e.addSpecification(new T("IE",22,"U04F06F08","IE29AIBK93115212345678")),e.addSpecification(new T("IL",23,"F03F03F13","IL620108000000099999999")),e.addSpecification(new T("IS",26,"F04F02F06F10","IS140159260076545510730339")),e.addSpecification(new T("IT",27,"U01F05F05A12","IT60X0542811101000000123456")),e.addSpecification(new T("IQ",23,"U04F03A12","IQ98NBIQ850123456789012")),e.addSpecification(new T("JO",30,"A04F22","JO15AAAA1234567890123456789012")),e.addSpecification(new T("KW",30,"U04A22","KW81CBKU0000000000001234560101")),e.addSpecification(new T("KZ",20,"F03A13","KZ86125KZT5004100100")),e.addSpecification(new T("LB",28,"F04A20","LB62099900000001001901229114")),e.addSpecification(new T("LC",32,"U04F24","LC07HEMM000100010012001200013015")),e.addSpecification(new T("LI",21,"F05A12","LI21088100002324013AA")),e.addSpecification(new T("LT",20,"F05F11","LT121000011101001000")),e.addSpecification(new T("LU",20,"F03A13","LU280019400644750000")),e.addSpecification(new T("LV",21,"U04A13","LV80BANK0000435195001")),e.addSpecification(new T("MC",27,"F05F05A11F02","MC5811222000010123456789030")),e.addSpecification(new T("MD",24,"U02A18","MD24AG000225100013104168")),e.addSpecification(new T("ME",22,"F03F13F02","ME25505000012345678951")),e.addSpecification(new T("MK",19,"F03A10F02","MK07250120000058984")),e.addSpecification(new T("MR",27,"F05F05F11F02","MR1300020001010000123456753")),e.addSpecification(new T("MT",31,"U04F05A18","MT84MALT011000012345MTLCAST001S")),e.addSpecification(new T("MU",30,"U04F02F02F12F03U03","MU17BOMM0101101030300200000MUR")),e.addSpecification(new T("NL",18,"U04F10","NL91ABNA0417164300")),e.addSpecification(new T("NO",15,"F04F06F01","NO9386011117947")),e.addSpecification(new T("PK",24,"U04A16","PK36SCBL0000001123456702")),e.addSpecification(new T("PL",28,"F08F16","PL61109010140000071219812874")),e.addSpecification(new T("PS",29,"U04A21","PS92PALS000000000400123456702")),e.addSpecification(new T("PT",25,"F04F04F11F02","PT50000201231234567890154")),e.addSpecification(new T("QA",29,"U04A21","QA30AAAA123456789012345678901")),e.addSpecification(new T("RO",24,"U04A16","RO49AAAA1B31007593840000")),e.addSpecification(new T("RS",22,"F03F13F02","RS35260005601001611379")),e.addSpecification(new T("SA",24,"F02A18","SA0380000000608010167519")),e.addSpecification(new T("SC",31,"U04F04F16U03","SC18SSCB11010000000000001497USD")),e.addSpecification(new T("SE",24,"F03F16F01","SE4550000000058398257466")),e.addSpecification(new T("SI",19,"F05F08F02","SI56263300012039086")),e.addSpecification(new T("SK",24,"F04F06F10","SK3112000000198742637541")),e.addSpecification(new T("SM",27,"U01F05F05A12","SM86U0322509800000000270100")),e.addSpecification(new T("ST",25,"F08F11F02","ST68000100010051845310112")),e.addSpecification(new T("SV",28,"U04F20","SV62CENR00000000000000700025")),e.addSpecification(new T("TL",23,"F03F14F02","TL380080012345678910157")),e.addSpecification(new T("TN",24,"F02F03F13F02","TN5910006035183598478831")),e.addSpecification(new T("TR",26,"F05F01A16","TR330006100519786457841326")),e.addSpecification(new T("UA",29,"F25","UA511234567890123456789012345")),e.addSpecification(new T("VA",22,"F18","VA59001123000012345678")),e.addSpecification(new T("VG",24,"U04F16","VG96VPVG0000012345678901")),e.addSpecification(new T("XK",20,"F04F10F02","XK051212012345678906")),e.addSpecification(new T("AO",25,"F21","AO69123456789012345678901")),e.addSpecification(new T("BF",27,"F23","BF2312345678901234567890123")),e.addSpecification(new T("BI",16,"F12","BI41123456789012")),e.addSpecification(new T("BJ",28,"F24","BJ39123456789012345678901234")),e.addSpecification(new T("CI",28,"U02F22","CI70CI1234567890123456789012")),e.addSpecification(new T("CM",27,"F23","CM9012345678901234567890123")),e.addSpecification(new T("CV",25,"F21","CV30123456789012345678901")),e.addSpecification(new T("DZ",24,"F20","DZ8612345678901234567890")),e.addSpecification(new T("IR",26,"F22","IR861234568790123456789012")),e.addSpecification(new T("MG",27,"F23","MG1812345678901234567890123")),e.addSpecification(new T("ML",28,"U01F23","ML15A12345678901234567890123")),e.addSpecification(new T("MZ",25,"F21","MZ25123456789012345678901")),e.addSpecification(new T("SN",28,"U01F23","SN52A12345678901234567890123")),e.addSpecification(new T("GF",27,"F05F05A11F02","GF121234512345123456789AB13")),e.addSpecification(new T("GP",27,"F05F05A11F02","GP791234512345123456789AB13")),e.addSpecification(new T("MQ",27,"F05F05A11F02","MQ221234512345123456789AB13")),e.addSpecification(new T("RE",27,"F05F05A11F02","RE131234512345123456789AB13")),e.addSpecification(new T("PF",27,"F05F05A11F02","PF281234512345123456789AB13")),e.addSpecification(new T("TF",27,"F05F05A11F02","TF891234512345123456789AB13")),e.addSpecification(new T("YT",27,"F05F05A11F02","YT021234512345123456789AB13")),e.addSpecification(new T("NC",27,"F05F05A11F02","NC551234512345123456789AB13")),e.addSpecification(new T("BL",27,"F05F05A11F02","BL391234512345123456789AB13")),e.addSpecification(new T("MF",27,"F05F05A11F02","MF551234512345123456789AB13")),e.addSpecification(new T("PM",27,"F05F05A11F02","PM071234512345123456789AB13")),e.addSpecification(new T("WF",27,"F05F05A11F02","WF621234512345123456789AB13")),{formatterNumber:r,formatterIban:e}};class Oo{#e;constructor(e){this.#e=Object.freeze(Object.assign({},e))}getAuthData(){const e=this.#e.b24Url.replaceAll("https://","").replaceAll("http://","").replace(/:(80|443)$/,"");return{access_token:this.#e.secret,refresh_token:"hook",expires_in:0,domain:e,member_id:e}}refreshAuth(){return Promise.resolve(this.getAuthData())}getUniq(e){const t=this.getAuthData();if(t===!1)throw new Error("AuthData not init");return[e,t.member_id].join("_")}getTargetOrigin(){return`${this.#e.b24Url}`}getTargetOriginWithPath(){return`${this.#e.b24Url}/rest/${this.#e.userId}/${this.#e.secret}`}get isAdmin(){return!0}}class yh extends Pt{#e;constructor(e){super(),this.#e=new Oo(e),this._http=new To(this.#e.getTargetOriginWithPath(),this.#e,this._getHttpOptions()),this._http.setClientSideWarning(!0,"It is not safe to use hook requests on the client side"),this._isInit=!0}setLogger(e){super.setLogger(e)}get auth(){return this.#e}offClientSideWarning(){this.getHttpClient().setClientSideWarning(!1,"")}getTargetOrigin(){return this._ensureInitialized(),this.#e.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#e.getTargetOriginWithPath()}}var X=(r=>(r.getInitData="getInitData",r.setInstallFinish="setInstallFinish",r.setInstall="setInstall",r.refreshAuth="refreshAuth",r.setAppOption="setAppOption",r.setUserOption="setUserOption",r.resizeWindow="resizeWindow",r.reloadWindow="reloadWindow",r.setTitle="setTitle",r.setScroll="setScroll",r.openApplication="openApplication",r.closeApplication="closeApplication",r.openPath="openPath",r.imCallTo="imCallTo",r.imPhoneTo="imPhoneTo",r.imOpenMessenger="imOpenMessenger",r.imOpenHistory="imOpenHistory",r.selectUser="selectUser",r.selectAccess="selectAccess",r.selectCRM="selectCRM",r.showAppForm="showAppForm",r.getInterface="getInterface",r.placementBindEvent="placementBindEvent",r))(X||{});class Ao{#e;#t;#r;_logger=null;runCallbackHandler;constructor(e){this.#e=e,this.#t=new Map,this.#r=new Map,this.runCallbackHandler=this._runCallback.bind(this)}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}subscribe(){window.addEventListener("message",this.runCallbackHandler)}unsubscribe(){window.removeEventListener("message",this.runCallbackHandler)}async send(e,t=null){return new Promise((n,s)=>{let i;const o={resolve:n,reject:s,timeoutId:null},a=this.#n(o);let l=null;const u=zn(t||{},["singleOption","callBack","isSafely","safelyTime"]),{callBack:c,singleOption:f}=t||{};if(c&&this.#r.set(a,c),f?l=f:Object.keys(u).length>0&&(l={...u}),e.toString().includes(":"))i={method:e.toString(),params:l||"",callback:a,appSid:this.#e.getAppSid()};else{i=e.toString();const h=[l?JSON.stringify(l):"",a,this.#e.getAppSid()];i+=":"+h.filter(Boolean).join(":")}this.getLogger().log(`send to ${this.#e.getTargetOrigin()}`,{cmd:i}),parent.postMessage(i,this.#e.getTargetOrigin()),t?.isSafely&&(this.#t.get(a).timeoutId=window.setTimeout(()=>{this.#t.has(a)&&(this.getLogger().warn(`Action ${e.toString()} stop by timeout`),this.#t.delete(a),n({isSafely:!0}))},Number.parseInt(String(t?.safelyTime||900))))})}_runCallback(e){if(e.origin===this.#e.getTargetOrigin()&&e.data){this.getLogger().log(`get from ${e.origin}`,{data:e.data});const t=e.data.split(":"),n={id:t[0],args:t.slice(1).join(":")};if(n.args&&(n.args=JSON.parse(n.args)),this.#t.has(n.id)){const s=this.#t.get(n.id);s.timeoutId&&clearTimeout(s.timeoutId),this.#t.delete(n.id),s.resolve(n.args)}else if(this.#r.has(n.id)){const s=this.#r.get(n.id);s&&s.apply(globalThis,[n.args])}}}#n(e){const t=$.getUniqId();return this.#t.set(t,e),t}}class Io{#e="";#t=!0;#r=null;#n=null;#s=null;constructor(e){e.DOMAIN&&(this.#e=e.DOMAIN,this.#e=this.#e.replace(/:(80|443)$/,"")),this.#t=e.PROTOCOL===!0,e.LANG&&(this.#s=e.LANG),e.APP_SID&&(this.#r=e.APP_SID)}initData(e){return this.#e||(this.#e=e.DOMAIN),this.#n||(this.#n=e.PATH),this.#s||(this.#s=e.LANG),this.#t=Number.parseInt(e.PROTOCOL)===1,this.#e=this.#e.replace(/:(80|443)$/,""),this}getAppSid(){if(this.#r===null)throw new Error("Not init appSid");return this.#r}getTargetOrigin(){return`${this.#t?"https":"http"}://${this.#e}`}getTargetOriginWithPath(){return this.getTargetOrigin()+(this.#n??"")}getLang(){return this.#s||Pn.en}}class Co{#e=null;#t=null;#r=0;#n=null;#s=!1;#o;#i;constructor(e,t){this.#o=e,this.#i=t}initData(e){return e.AUTH_ID&&(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,this.#s=e.IS_ADMIN,this.#n=e.MEMBER_ID||""),this}getAuthData(){return this.#r>Date.now()?{access_token:this.#e,refresh_token:this.#t,expires_in:this.#r,domain:this.#o.getTargetOrigin(),member_id:this.#n}:!1}async refreshAuth(){return this.#i.send(X.refreshAuth,{}).then(e=>(this.#e=e.AUTH_ID,this.#t=e.REFRESH_ID,this.#r=Date.now()+Number.parseInt(e.AUTH_EXPIRES)*1e3,Promise.resolve(this.getAuthData())))}getUniq(e){return[e,this.#n||""].join("_")}get isAdmin(){return this.#s}}class No{#e;constructor(e){this.#e=e}async closeApplication(){return this.#e.send(X.closeApplication,{isSafely:!1})}async fitWindow(){const e="100%",t=this.getScrollSize().scrollHeight;return this.#e.send(X.resizeWindow,{width:e,height:t,isSafely:!0})}async resizeWindow(e,t){return e>0&&t>0?this.#e.send(X.resizeWindow,{width:e,height:t,isSafely:!0}):Promise.reject(new Error(`Wrong width:number = ${e} or height:number = ${t}`))}async resizeWindowAuto(e=null,t=0,n=0){const s=document.body;let i=Math.max(s.scrollWidth,s.offsetWidth);n>0&&(i=Math.max(n,i));let o=Math.max(s.scrollHeight,s.offsetHeight);return e&&(o=Math.max(e.scrollHeight,e.offsetHeight)),t>0&&(o=Math.max(t,o)),this.resizeWindow(i,o)}getScrollSize(){return ph()}async scrollParentWindow(e){return Number.isInteger(e)?(e<0&&(e=0),this.#e.send(X.setScroll,{scroll:e,isSafely:!0})):Promise.reject(new Error("Wrong scroll number"))}async reloadWindow(){return this.#e.send(X.reloadWindow,{isSafely:!0})}async setTitle(e){return this.#e.send(X.setTitle,{title:e.toString(),isSafely:!0})}async imCallTo(e,t=!0){return this.#e.send(X.imCallTo,{userId:e,video:t,isSafely:!0})}async imPhoneTo(e){return this.#e.send(X.imPhoneTo,{phone:e,isSafely:!0})}async imOpenMessenger(e){return this.#e.send(X.imOpenMessenger,{dialogId:e,isSafely:!0})}async imOpenHistory(e){return this.#e.send(X.imOpenHistory,{dialogId:e,isSafely:!0})}}let Ro=class{#e;#t=null;#r=null;constructor(e){this.#e=e}initData(e){return e.APP_OPTIONS&&(this.#t=e.APP_OPTIONS),e.USER_OPTIONS&&(this.#r=e.USER_OPTIONS),this}appGet(e){if(this.#t&&this.#t[e])return this.#t[e];throw new Error(`app.option.${e} not set`)}async appSet(e,t){return this.#t||(this.#t=[]),this.#t[e]=t,this.#n(X.setAppOption,e,this.#t[e])}userGet(e){if(this.#r&&this.#r[e])return this.#r[e];throw new Error(`user.option.${e} not set`)}async userSet(e,t){return this.#t||(this.#t=[]),this.#t[e]||(this.#t[e]=null),this.#r[e]=t,this.#n(X.setUserOption,e,this.#r[e])}async#n(e,t,n){return this.#e.send(e,{name:t,value:n,isSafely:!0}).then(()=>Promise.resolve())}};class Lo{#e;constructor(e){this.#e=e}async selectUser(){return this.#e.send(X.selectUser,{mult:!1})}async selectUsers(){return this.#e.send(X.selectUser,{mult:!0})}async selectAccess(e=[]){return console.warn("@deprecated selectAccess"),this.#e.send(X.selectAccess,{value:e})}async selectCRM(e){return console.warn("@deprecated selectCRM"),this.#e.send(X.selectCRM,{entityType:e?.entityType,multiple:e?.multiple,value:e?.value})}}class Fo{#e;#t;constructor(e,t){this.#e=e,this.#t=t}getUrl(e="/"){return new URL(e,this.#e.getTargetOrigin())}getTargetOrigin(){return this.#e.getTargetOrigin()}async openSliderAppPage(e={}){return this.#t.send(X.openApplication,e)}async closeSliderAppPage(){return this.#t.send(X.closeApplication,{isSafely:!1})}#r(e=1640){return e>0?e>1200&&e<=1640?"/crm/type/0/details/0/../../../../..":e>950&&e<=1200?"/company/personal/user/0/groups/create/../../../../../..":e>900&&e<=950?"/crm/company/requisite/0/../../../..":e<=900?"/workgroups/group/0/card/../../../..":"/crm/deal/../..":"/crm/deal/../.."}async openPath(e,t=1640){const n=new URL(e);return n.searchParams.set("IFRAME","Y"),n.searchParams.set("IFRAME_TYPE","SIDE_SLIDER"),this.#t.send(X.openPath,{path:[this.#r(t),n.pathname,n.search].join("")}).then(s=>s?.result==="error"?s?.errorCode==="METHOD_NOT_SUPPORTED_ON_DEVICE"?new Promise((i,o)=>{const a=window.open(e,"_blank");if(!a){o(new Error("Error open window"));return}let l=0;const u=1e3*60*5,c=window.setInterval(()=>{l=l+1,a.closed?(clearInterval(c),i({isOpenAtNewWindow:!0,isClose:!0})):l>u&&(clearInterval(c),i({isOpenAtNewWindow:!0,isClose:!1}))},1e3)}):Promise.reject(new Error(s?.errorCode)):s?.result==="close"?Promise.resolve({isOpenAtNewWindow:!1,isClose:!0}):Promise.resolve({isOpenAtNewWindow:!1,isClose:!1}))}async showAppForm(e){return console.warn("@deprecated showAppForm"),this.#t.send(X.showAppForm,{params:e,isSafely:!0})}}class Mo{#e;#t="";#r={};constructor(e){this.#e=e}initData(e){this.#t=e.PLACEMENT||"DEFAULT";const t=e.PLACEMENT_OPTIONS;return this.#r=Object.freeze(t),this}get title(){return this.#t}get isDefault(){return this.title==="DEFAULT"}get options(){return this.#r}get isSliderMode(){return this.options?.IFRAME==="Y"}async getInterface(){return this.#e.send(X.getInterface,{isSafely:!0})}async bindEvent(e,t){return this.#e.send(X.placementBindEvent,{event:e,callBack:t,isSafely:!0})}async call(e,t={}){return this.#e.send(e,{...t,isSafely:!0})}async callCustomBind(e,t=null,n){let s={};return N.isString(t)?s.singleOption=t:N.isObjectLike(t)&&(s={...t}),this.#e.send(e,{...s,callBack:n,isSafely:!0})}}class Po extends Pt{#e=!1;#t=!1;#r;#n;#s;#o;#i;#l;#c;#a;constructor(e){super(),this.#r=new Io(e),this.#n=new Ao(this.#r),this.#n.subscribe(),this.#s=new Co(this.#r,this.#n),this.#o=new No(this.#n),this.#i=new Ro(this.#n),this.#l=new Lo(this.#n),this.#c=new Fo(this.#r,this.#n),this.#a=new Mo(this.#n),this._isInit=!1}setLogger(e){super.setLogger(e),this.#n.setLogger(this.getLogger())}get isFirstRun(){return this._ensureInitialized(),this.#t}get isInstallMode(){return this._ensureInitialized(),this.#e}get parent(){return this._ensureInitialized(),this.#o}get auth(){return this._ensureInitialized(),this.#s}get slider(){return this._ensureInitialized(),this.#c}get placement(){return this._ensureInitialized(),this.#a}get options(){return this._ensureInitialized(),this.#i}get dialog(){return this._ensureInitialized(),this.#l}async init(){return this.#n.send(X.getInitData,{}).then(e=>(this.getLogger().log("init data:",e),this.#r.initData(e),this.#s.initData(e),this.#a.initData(e),this.#i.initData(e),this.#e=e.INSTALL,this.#t=e.FIRST_RUN,this._http=new To(this.#r.getTargetOriginWithPath(),this.#s,this._getHttpOptions()),this._isInit=!0,this.#t?this.#n.send(X.setInstall,{install:!0}):Promise.resolve()))}destroy(){this.#n.unsubscribe(),super.destroy()}async installFinish(){return this.isInstallMode?this.#n.send(X.setInstallFinish,{}):Promise.reject(new Error("Application was previously installed. You cannot call installFinish"))}getTargetOrigin(){return this._ensureInitialized(),this.#r.getTargetOrigin()}getTargetOriginWithPath(){return this._ensureInitialized(),this.#r.getTargetOriginWithPath()}getAppSid(){return this._ensureInitialized(),this.#r.getAppSid()}getLang(){return this._ensureInitialized(),this.#r.getLang()}}class xn extends Error{constructor(e,...t){super(...t),this.name="UnhandledMatchError",this.message=`Unhandled match value of type ${e}`,this.stack=new Error("for stack").stack}}class xt{_b24;_logger=null;_data=null;constructor(e){this._b24=e}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async initData(e){return this.getLogger().log(e),Promise.reject(new Error("Rewrite this function"))}}class wh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("ProfileManager.data not initialized");return this._data}}class bh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("AppManager.data not initialized");return this._data}get statusCode(){return Li[this.data.status]||"Unknown status"}}class Sh extends xt{_data=null;async initData(e){this._data=e}get data(){if(this._data===null)throw new Error("PaymentManager.data not initialized");return this._data}}class _h extends xt{_data=null;async initData(e){this._data=e,this.makeRestrictionManagerParams()}get data(){if(this._data===null)throw new Error("LicenseManager.data not initialized");return this._data}makeRestrictionManagerParams(){this.data?.license&&this.data.license.includes("ent")&&(this.getLogger().log(`LICENSE ${this.data.license} => up restriction manager params`,gn),this._b24.getHttpClient().setRestrictionManagerParams(gn))}}class vh extends xt{async initData(e){this._data={currencyBase:"?",currencyList:new Map},this.setBaseCurrency(e.currencyBase),this.setCurrencyList(e.currencyList);try{await this.loadData()}catch(t){throw t instanceof Error?t:(console.error(t),new Error("Failed to load data"))}}async loadData(){const e=this.currencyList.map(t=>({method:"crm.currency.get",params:{id:t}}));if(e.length===0)return Promise.resolve();try{(await this._b24.callBatchByChunk(e,!0)).getData().forEach(t=>{if(typeof t.LANG>"u")return;const n=t.CURRENCY,s=this.data.currencyList.get(n);if(!(typeof s>"u"))for(const[i,o]of Object.entries(t.LANG))switch(s.lang[i]={decimals:Number.parseInt(o.DECIMALS),decPoint:o.DEC_POINT,formatString:o.FORMAT_STRING,fullName:o.FULL_NAME,isHideZero:o.HIDE_ZERO==="Y",thousandsSep:o.THOUSANDS_SEP,thousandsVariant:o.THOUSANDS_VARIANT},s.lang[i].thousandsVariant){case"N":s.lang[i].thousandsSep="";break;case"D":s.lang[i].thousandsSep=".";break;case"C":s.lang[i].thousandsSep=",";break;case"S":s.lang[i].thousandsSep=" ";break;case"B":s.lang[i].thousandsSep="&nbsp;";break;default:N.isStringFilled(s.lang[i].thousandsSep)||(s.lang[i].thousandsSep=" ");break}})}catch(t){console.error(t)}}get data(){if(this._data===null)throw new Error("CurrencyManager.data not initialized");return this._data}setBaseCurrency(e){this._data.currencyBase=e}get baseCurrency(){return this.data.currencyBase}setCurrencyList(e=[]){this.data.currencyList.clear();for(const t of e)this.data.currencyList.set(t.CURRENCY,{amount:Number.parseFloat(t.CURRENCY),amountCnt:Number.parseInt(t.AMOUNT_CNT),isBase:t.BASE==="Y",currencyCode:t.CURRENCY,dateUpdate:$.toDateTime(t.DATE_UPDATE),decimals:Number.parseInt(t.DECIMALS),decPoint:t.DEC_POINT,formatString:t.FORMAT_STRING,fullName:t.FULL_NAME,lid:t.LID,sort:Number.parseInt(t.SORT),thousandsSep:t?.THOUSANDS_SEP||null,lang:{}})}getCurrencyFullName(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new xn(e);let s=n.fullName;if(!(typeof t>"u")){const i=n.lang[t];N.isUndefined(i)||(s=i.fullName)}return s}getCurrencyLiteral(e,t){const n=this.data.currencyList.get(e);if(typeof n>"u")throw new xn(e);let s=n.formatString;if(!(typeof t>"u")){const i=n.lang[t];N.isUndefined(i)||(s=i.formatString)}return s.replaceAll("&#","&%").replaceAll("#","").replaceAll("&%","&#").trim()||""}get currencyList(){return[...this.data.currencyList.keys()]}format(e,t,n){const s=this.data.currencyList.get(t);if(typeof s>"u")throw new xn(t);const i={formatString:s.formatString,decimals:s.decimals,decPoint:s.decPoint,thousandsSep:s.thousandsSep};N.isStringFilled(i.thousandsSep)||(i.thousandsSep="");const o=s.lang[n];return N.isUndefined(o)||(i.formatString=o.formatString,i.decimals=o.decimals,i.decPoint=o.decPoint,i.thousandsSep=o.thousandsSep),i.formatString.replaceAll("&#","&%").replace("#",$.numberFormat(e,i.decimals,i.decPoint,i.thousandsSep)).replaceAll("&%","&#")||""}}class Dn extends xt{_data;_type;static getSupportTypes(){return[Ye.NotSet,Ye.JsonArray,Ye.JsonObject,Ye.FloatVal,Ye.IntegerVal,Ye.BoolYN,Ye.StringVal]}static prepareArrayList(e){return N.isArray(e)?e:N.isObject(e)?Object.values(e):[]}constructor(e,t){super(e),this._type=t,this._data=new Map}get data(){return this._data}reset(){this.data.clear()}async initData(e){if(this.reset(),N.isObject(e))for(const[t,n]of Object.entries(e))this.data.set(t,n)}getJsonArray(e,t=[]){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n),!N.isArray(n)&&!N.isObject(n)&&(n=t)}catch(s){this.getLogger().error(s),n=t}return Dn.prepareArrayList(n)}getJsonObject(e,t={}){if(!this.data.has(e))return t;let n=this.data.get(e);try{n=JSON.parse(n)}catch(s){this.getLogger().error(s),n=t}return N.isObject(n)||(n=t),n}getFloat(e,t=0){return this.data.has(e)?$.toNumber(this.data.get(e)):t}getInteger(e,t=0){return this.data.has(e)?$.toInteger(this.data.get(e)):t}getBoolYN(e,t=!0){return this.data.has(e)?$.toBoolean(this.data.get(e)):t}getBoolNY(e,t=!1){return this.data.has(e)?$.toBoolean(this.data.get(e)):t}getString(e,t=""){return this.data.has(e)?this.data.get(e).toString():t}getDate(e,t=null){if(!this.data.has(e))return t;try{const n=$.toDateTime(this.data.get(e).toString());return n.isValid?n:t}catch{return t}}encode(e){return JSON.stringify(e)}decode(e,t){try{return e.length>0?JSON.parse(e):t}catch(n){this.getLogger().warn(n,e)}return t}getMethodSave(){switch(this._type){case"app":return"app.option.set";case"user":return"user.option.set"}}async save(e,t){const n=[];return n.push({method:this.getMethodSave(),params:{options:e}}),N.isObject(t)&&n.push({method:"pull.application.event.add",params:{COMMAND:t?.command,PARAMS:t?.params,MODULE_ID:t?.moduleId}}),this._b24.callBatch(n,!0)}}class xo{_logger=null;userId;siteId;constructor(e={}){this.userId=e.userId?$.toInteger(e.userId):0,this.siteId=e.siteId??"none"}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}set(e,t){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}typeof t!="string"&&t&&(t=JSON.stringify(t)),window.localStorage.setItem(this._getKey(e),t)}get(e,t){if(typeof window.localStorage>"u")return t||null;const n=window.localStorage.getItem(this._getKey(e));return n===null?t||null:JSON.parse(n)}remove(e){if(typeof window.localStorage>"u"){this.getLogger().error(new Error("undefined window.localStorage"));return}return window.localStorage.removeItem(this._getKey(e))}_getKey(e){return`@bitrix24/b24jssdk-pull-${this.userId}-${this.siteId}-${e}`}compareKey(e,t){return e===this._getKey(t)}}class kh extends Error{constructor(e){super(e),this.name="ErrorNotConnected"}}class Eh extends Error{constructor(e){super(e),this.name="ErrorTimeout"}}const Pr="2.0";class Th{_logger=null;_connector;_idCounter=0;_handlers={};_rpcResponseAwaiters=new Map;constructor(e){if(this._connector=e.connector,N.isPlainObject(e.handlers))for(const t in e.handlers)this.handle(t,e.handlers[t])}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}handle(e,t){this._handlers[e]=t}async executeOutgoingRpcCommand(e,t,n=5){return new Promise((s,i)=>{const o=this.createRequest(e,t);this._connector.send(JSON.stringify(o))||i(new kh("websocket is not connected"));const a=setTimeout(()=>{this._rpcResponseAwaiters.delete(o.id),i(new Eh("no response"))},n*1e3);this._rpcResponseAwaiters.set(o.id,{resolve:s,reject:i,timeout:a})})}executeOutgoingRpcBatch(e){const t=[],n=[];return e.forEach(({method:s,params:i,id:o})=>{const a=this.createRequest(s,i,o);t.push(a),n.push(new Promise((l,u)=>this._rpcResponseAwaiters.set(a.id,{resolve:l,reject:u})))}),this._connector.send(JSON.stringify(t)),n}processRpcResponse(e){if("id"in e&&this._rpcResponseAwaiters.has(Number(e.id))){const t=this._rpcResponseAwaiters.get(Number(e.id));t&&("result"in e?t.resolve(e.result):"error"in e?t.reject(e?.error||"error"):t.reject("wrong response structure"),clearTimeout(t.timeout),this._rpcResponseAwaiters.delete(Number(e.id)));return}this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Received rpc response with unknown id`),e)}parseJsonRpcMessage(e){let t;try{t=JSON.parse(e)}catch(n){this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not decode json rpc message`),n);return}if(N.isArray(t))return this.executeIncomingRpcBatch(t);if(N.isJsonRpcRequest(t))return this.executeIncomingRpcCommand(t);if(N.isJsonRpcResponse(t))return this.processRpcResponse(t);this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: unknown rpc packet`),t)}executeIncomingRpcCommand({method:e,params:t}){return e in this._handlers?this._handlers[e].call(this,t||{}):{jsonrpc:Pr,error:yn.MethodNotFound}}executeIncomingRpcBatch(e){const t=[];for(const n of e)if("jsonrpc"in n)if("method"in n){const s=this.executeIncomingRpcCommand(n);s&&(s.jsonrpc=Pr,s.id=n.id,t.push(s))}else this.processRpcResponse(n);else this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: unknown rpc command in batch`),n),t.push({jsonrpc:Pr,error:yn.InvalidRequest});return t}nextId(){return++this._idCounter}createPublishRequest(e){return e.map(t=>this.createRequest("publish",t))}createRequest(e,t,n){return n||(n=this.nextId()),{jsonrpc:Pr,method:e,params:t,id:n}}}class Oh{_logger=null;_storage;_ttl=24*60*60;_callbacks;constructor(e={}){e=e||{},this._storage=e.storage||new xo,this._callbacks={onWebSocketBlockChanged:N.isFunction(e.onWebSocketBlockChanged)?e.onWebSocketBlockChanged:()=>{}},this._storage&&window.addEventListener("storage",this.onLocalStorageSet.bind(this))}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}onLocalStorageSet(e){this._storage.compareKey(e.key||"",Ne.WebsocketBlocked)&&e.newValue!==e.oldValue&&this._callbacks.onWebSocketBlockChanged({isWebSocketBlocked:this.isWebSocketBlocked()})}isWebSocketBlocked(){return this._storage?this._storage.get(Ne.WebsocketBlocked,0)>Date.now():!1}setWebSocketBlocked(e){if(!this._storage)return!1;try{this._storage.set(Ne.WebsocketBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not save WS_blocked flag in local storage. Error: `),t),!1}return!0}isLongPollingBlocked(){return this._storage?this._storage.get(Ne.LongPollingBlocked,0)>Date.now():!1}setLongPollingBlocked(e){if(!this._storage)return!1;try{this._storage.set(Ne.LongPollingBlocked,e?Date.now()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: Could not save LP_blocked flag in local storage. Error: `),t),!1}return!0}isLoggingEnabled(){return this._storage?this._storage.get(Ne.LoggingEnabled,0)>this.getTimestamp():!1}setLoggingEnabled(e){if(!this._storage)return!1;try{this._storage.set(Ne.LoggingEnabled,e?this.getTimestamp()+this._ttl:0)}catch(t){return this.getLogger().error(new Error(`${$.getDateForLog()}: LocalStorage error: `),t),!1}return!0}getTimestamp(){return Date.now()}}class Ah{_logger=null;_publicIds;_restClient;_getPublicListMethod;constructor(e){this._publicIds=new Map,this._restClient=e.b24,this._getPublicListMethod=e.getPublicListMethod}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}async getPublicIds(e){const t=new Date,n={},s=[];for(const i of e){const o=this._publicIds.get(i);o&&o.end>t?n[o.userId]=o:s.push(i)}return s.length===0?Promise.resolve(n):new Promise(i=>{this._restClient.callMethod(this._getPublicListMethod,{users:s}).then(o=>{const a=o.getData().result;this.setPublicIds(Object.values(a));for(const l of s){const u=this._publicIds.get(l);u&&(n[u.userId]=u)}i(n)}).catch(o=>(this.getLogger().error(o),i({})))})}setPublicIds(e){e.forEach(t=>{const n=Number(t.user_id);this._publicIds.set(n,{userId:n,publicId:t.public_id,signature:t.signature,start:new Date(t.start),end:new Date(t.end)})})}}var tr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ih(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var jn={exports:{}};/*!
13
13
  * protobuf.js v6.8.6 (c) 2016, daniel wirtz
14
14
  * compiled mon, 26 feb 2018 11:35:34 utc
15
15
  * licensed under the bsd-3-clause license
@@ -17,28 +17,28 @@ ${this.stack}`),e}static formatErrorMessage(e){const t=[e.code];return e.descrip
17
17
  *
18
18
  * Modify a list for integration with Bitrix Framework:
19
19
  * - removed integration with RequireJS and AMD package builders;
20
- */var Po;function Oh(){return Po||(Po=1,function(r){(function(e){(function(t,n,s){function i(a){var l=n[a];return l||t[a][0].call(l=n[a]={exports:{}},i,l,l.exports),l.exports}var o=i(s[0]);r&&r.exports&&(r.exports=o)})({1:[function(t,n,s){n.exports=i;function i(o,a){for(var l=new Array(arguments.length-1),u=0,c=2,f=!0;c<arguments.length;)l[u++]=arguments[c++];return new Promise(function(h,d){l[u]=function(p){if(f)if(f=!1,p)d(p);else{for(var g=new Array(arguments.length-1),m=0;m<g.length;)g[m++]=arguments[m];h.apply(null,g)}};try{o.apply(a||null,l)}catch(p){f&&(f=!1,d(p))}})}},{}],2:[function(t,n,s){var i=s;i.length=function(c){var f=c.length;if(!f)return 0;for(var h=0;--f%4>1&&c.charAt(f)==="=";)++h;return Math.ceil(c.length*3)/4-h};for(var o=new Array(64),a=new Array(123),l=0;l<64;)a[o[l]=l<26?l+65:l<52?l+71:l<62?l-4:l-59|43]=l++;i.encode=function(c,f,h){for(var d=null,p=[],g=0,m=0,y;f<h;){var w=c[f++];switch(m){case 0:p[g++]=o[w>>2],y=(w&3)<<4,m=1;break;case 1:p[g++]=o[y|w>>4],y=(w&15)<<2,m=2;break;case 2:p[g++]=o[y|w>>6],p[g++]=o[w&63],m=0;break}g>8191&&((d||(d=[])).push(String.fromCharCode.apply(String,p)),g=0)}return m&&(p[g++]=o[y],p[g++]=61,m===1&&(p[g++]=61)),d?(g&&d.push(String.fromCharCode.apply(String,p.slice(0,g))),d.join("")):String.fromCharCode.apply(String,p.slice(0,g))};var u="invalid encoding";i.decode=function(c,f,h){for(var d=h,p=0,g,m=0;m<c.length;){var y=c.charCodeAt(m++);if(y===61&&p>1)break;if((y=a[y])===e)throw Error(u);switch(p){case 0:g=y,p=1;break;case 1:f[h++]=g<<2|(y&48)>>4,g=y,p=2;break;case 2:f[h++]=(g&15)<<4|(y&60)>>2,g=y,p=3;break;case 3:f[h++]=(g&3)<<6|y,p=0;break}}if(p===1)throw Error(u);return h-d},i.test=function(c){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(c)}},{}],3:[function(t,n,s){n.exports=i;function i(o,a){typeof o=="string"&&(a=o,o=e);var l=[];function u(f){if(typeof f!="string"){var h=c();if(i.verbose&&console.log("codegen: "+h),h="return "+h,f){for(var d=Object.keys(f),p=new Array(d.length+1),g=new Array(d.length),m=0;m<d.length;)p[m]=d[m],g[m]=f[d[m++]];return p[m]=h,Function.apply(null,p).apply(null,g)}return Function(h)()}for(var y=new Array(arguments.length-1),w=0;w<y.length;)y[w]=arguments[++w];if(w=0,f=f.replace(/%([%dfijs])/g,function(_,b){var k=y[w++];switch(b){case"d":case"f":return String(Number(k));case"i":return String(Math.floor(k));case"j":return JSON.stringify(k);case"s":return String(k)}return"%"}),w!==y.length)throw Error("parameter count mismatch");return l.push(f),u}function c(f){return"function "+(f||a||"")+"("+(o&&o.join(",")||"")+`){
20
+ */var Do;function Ch(){return Do||(Do=1,function(r){(function(e){(function(t,n,s){function i(a){var l=n[a];return l||t[a][0].call(l=n[a]={exports:{}},i,l,l.exports),l.exports}var o=i(s[0]);r&&r.exports&&(r.exports=o)})({1:[function(t,n,s){n.exports=i;function i(o,a){for(var l=new Array(arguments.length-1),u=0,c=2,f=!0;c<arguments.length;)l[u++]=arguments[c++];return new Promise(function(h,d){l[u]=function(p){if(f)if(f=!1,p)d(p);else{for(var g=new Array(arguments.length-1),m=0;m<g.length;)g[m++]=arguments[m];h.apply(null,g)}};try{o.apply(a||null,l)}catch(p){f&&(f=!1,d(p))}})}},{}],2:[function(t,n,s){var i=s;i.length=function(c){var f=c.length;if(!f)return 0;for(var h=0;--f%4>1&&c.charAt(f)==="=";)++h;return Math.ceil(c.length*3)/4-h};for(var o=new Array(64),a=new Array(123),l=0;l<64;)a[o[l]=l<26?l+65:l<52?l+71:l<62?l-4:l-59|43]=l++;i.encode=function(c,f,h){for(var d=null,p=[],g=0,m=0,y;f<h;){var w=c[f++];switch(m){case 0:p[g++]=o[w>>2],y=(w&3)<<4,m=1;break;case 1:p[g++]=o[y|w>>4],y=(w&15)<<2,m=2;break;case 2:p[g++]=o[y|w>>6],p[g++]=o[w&63],m=0;break}g>8191&&((d||(d=[])).push(String.fromCharCode.apply(String,p)),g=0)}return m&&(p[g++]=o[y],p[g++]=61,m===1&&(p[g++]=61)),d?(g&&d.push(String.fromCharCode.apply(String,p.slice(0,g))),d.join("")):String.fromCharCode.apply(String,p.slice(0,g))};var u="invalid encoding";i.decode=function(c,f,h){for(var d=h,p=0,g,m=0;m<c.length;){var y=c.charCodeAt(m++);if(y===61&&p>1)break;if((y=a[y])===e)throw Error(u);switch(p){case 0:g=y,p=1;break;case 1:f[h++]=g<<2|(y&48)>>4,g=y,p=2;break;case 2:f[h++]=(g&15)<<4|(y&60)>>2,g=y,p=3;break;case 3:f[h++]=(g&3)<<6|y,p=0;break}}if(p===1)throw Error(u);return h-d},i.test=function(c){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(c)}},{}],3:[function(t,n,s){n.exports=i;function i(o,a){typeof o=="string"&&(a=o,o=e);var l=[];function u(f){if(typeof f!="string"){var h=c();if(i.verbose&&console.log("codegen: "+h),h="return "+h,f){for(var d=Object.keys(f),p=new Array(d.length+1),g=new Array(d.length),m=0;m<d.length;)p[m]=d[m],g[m]=f[d[m++]];return p[m]=h,Function.apply(null,p).apply(null,g)}return Function(h)()}for(var y=new Array(arguments.length-1),w=0;w<y.length;)y[w]=arguments[++w];if(w=0,f=f.replace(/%([%dfijs])/g,function(_,b){var k=y[w++];switch(b){case"d":case"f":return String(Number(k));case"i":return String(Math.floor(k));case"j":return JSON.stringify(k);case"s":return String(k)}return"%"}),w!==y.length)throw Error("parameter count mismatch");return l.push(f),u}function c(f){return"function "+(f||a||"")+"("+(o&&o.join(",")||"")+`){
21
21
  `+l.join(`
22
22
  `)+`
23
- }`}return u.toString=c,u}i.verbose=!1},{}],4:[function(t,n,s){n.exports=i;function i(){this._listeners={}}i.prototype.on=function(o,a,l){return(this._listeners[o]||(this._listeners[o]=[])).push({fn:a,ctx:l||this}),this},i.prototype.off=function(o,a){if(o===e)this._listeners={};else if(a===e)this._listeners[o]=[];else for(var l=this._listeners[o],u=0;u<l.length;)l[u].fn===a?l.splice(u,1):++u;return this},i.prototype.emit=function(o){var a=this._listeners[o];if(a){for(var l=[],u=1;u<arguments.length;)l.push(arguments[u++]);for(u=0;u<a.length;)a[u].fn.apply(a[u++].ctx,l)}return this}},{}],5:[function(t,n,s){n.exports=l;var i=t(1),o=t(7),a=o("fs");function l(u,c,f){return typeof c=="function"?(f=c,c={}):c||(c={}),f?!c.xhr&&a&&a.readFile?a.readFile(u,function(h,d){return h&&typeof XMLHttpRequest<"u"?l.xhr(u,c,f):h?f(h):f(null,c.binary?d:d.toString("utf8"))}):l.xhr(u,c,f):i(l,this,u,c)}l.xhr=function(u,c,f){var h=new XMLHttpRequest;h.onreadystatechange=function(){if(h.readyState!==4)return e;if(h.status!==0&&h.status!==200)return f(Error("status "+h.status));if(c.binary){var d=h.response;if(!d){d=[];for(var p=0;p<h.responseText.length;++p)d.push(h.responseText.charCodeAt(p)&255)}return f(null,typeof Uint8Array<"u"?new Uint8Array(d):d)}return f(null,h.responseText)},c.binary&&("overrideMimeType"in h&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.responseType="arraybuffer"),h.open("GET",u),h.send()}},{1:1,7:7}],6:[function(t,n,s){n.exports=i(i);function i(c){return typeof Float32Array<"u"?function(){var f=new Float32Array([-0]),h=new Uint8Array(f.buffer),d=h[3]===128;function p(w,_,b){f[0]=w,_[b]=h[0],_[b+1]=h[1],_[b+2]=h[2],_[b+3]=h[3]}function g(w,_,b){f[0]=w,_[b]=h[3],_[b+1]=h[2],_[b+2]=h[1],_[b+3]=h[0]}c.writeFloatLE=d?p:g,c.writeFloatBE=d?g:p;function m(w,_){return h[0]=w[_],h[1]=w[_+1],h[2]=w[_+2],h[3]=w[_+3],f[0]}function y(w,_){return h[3]=w[_],h[2]=w[_+1],h[1]=w[_+2],h[0]=w[_+3],f[0]}c.readFloatLE=d?m:y,c.readFloatBE=d?y:m}():function(){function f(d,p,g,m){var y=p<0?1:0;if(y&&(p=-p),p===0)d(1/p>0?0:2147483648,g,m);else if(isNaN(p))d(2143289344,g,m);else if(p>34028234663852886e22)d((y<<31|2139095040)>>>0,g,m);else if(p<11754943508222875e-54)d((y<<31|Math.round(p/1401298464324817e-60))>>>0,g,m);else{var w=Math.floor(Math.log(p)/Math.LN2),_=Math.round(p*Math.pow(2,-w)*8388608)&8388607;d((y<<31|w+127<<23|_)>>>0,g,m)}}c.writeFloatLE=f.bind(null,o),c.writeFloatBE=f.bind(null,a);function h(d,p,g){var m=d(p,g),y=(m>>31)*2+1,w=m>>>23&255,_=m&8388607;return w===255?_?NaN:y*(1/0):w===0?y*1401298464324817e-60*_:y*Math.pow(2,w-150)*(_+8388608)}c.readFloatLE=h.bind(null,l),c.readFloatBE=h.bind(null,u)}(),typeof Float64Array<"u"?function(){var f=new Float64Array([-0]),h=new Uint8Array(f.buffer),d=h[7]===128;function p(w,_,b){f[0]=w,_[b]=h[0],_[b+1]=h[1],_[b+2]=h[2],_[b+3]=h[3],_[b+4]=h[4],_[b+5]=h[5],_[b+6]=h[6],_[b+7]=h[7]}function g(w,_,b){f[0]=w,_[b]=h[7],_[b+1]=h[6],_[b+2]=h[5],_[b+3]=h[4],_[b+4]=h[3],_[b+5]=h[2],_[b+6]=h[1],_[b+7]=h[0]}c.writeDoubleLE=d?p:g,c.writeDoubleBE=d?g:p;function m(w,_){return h[0]=w[_],h[1]=w[_+1],h[2]=w[_+2],h[3]=w[_+3],h[4]=w[_+4],h[5]=w[_+5],h[6]=w[_+6],h[7]=w[_+7],f[0]}function y(w,_){return h[7]=w[_],h[6]=w[_+1],h[5]=w[_+2],h[4]=w[_+3],h[3]=w[_+4],h[2]=w[_+5],h[1]=w[_+6],h[0]=w[_+7],f[0]}c.readDoubleLE=d?m:y,c.readDoubleBE=d?y:m}():function(){function f(d,p,g,m,y,w){var _=m<0?1:0;if(_&&(m=-m),m===0)d(0,y,w+p),d(1/m>0?0:2147483648,y,w+g);else if(isNaN(m))d(0,y,w+p),d(2146959360,y,w+g);else if(m>17976931348623157e292)d(0,y,w+p),d((_<<31|2146435072)>>>0,y,w+g);else{var b;if(m<22250738585072014e-324)b=m/5e-324,d(b>>>0,y,w+p),d((_<<31|b/4294967296)>>>0,y,w+g);else{var k=Math.floor(Math.log(m)/Math.LN2);k===1024&&(k=1023),b=m*Math.pow(2,-k),d(b*4503599627370496>>>0,y,w+p),d((_<<31|k+1023<<20|b*1048576&1048575)>>>0,y,w+g)}}}c.writeDoubleLE=f.bind(null,o,0,4),c.writeDoubleBE=f.bind(null,a,4,0);function h(d,p,g,m,y){var w=d(m,y+p),_=d(m,y+g),b=(_>>31)*2+1,k=_>>>20&2047,S=4294967296*(_&1048575)+w;return k===2047?S?NaN:b*(1/0):k===0?b*5e-324*S:b*Math.pow(2,k-1075)*(S+4503599627370496)}c.readDoubleLE=h.bind(null,l,0,4),c.readDoubleBE=h.bind(null,u,4,0)}(),c}function o(c,f,h){f[h]=c&255,f[h+1]=c>>>8&255,f[h+2]=c>>>16&255,f[h+3]=c>>>24}function a(c,f,h){f[h]=c>>>24,f[h+1]=c>>>16&255,f[h+2]=c>>>8&255,f[h+3]=c&255}function l(c,f){return(c[f]|c[f+1]<<8|c[f+2]<<16|c[f+3]<<24)>>>0}function u(c,f){return(c[f]<<24|c[f+1]<<16|c[f+2]<<8|c[f+3])>>>0}},{}],7:[function(t,n,s){n.exports=i;function i(o){try{var a=t(o);if(a&&(a.length||Object.keys(a).length))return a}catch{}return null}},{}],8:[function(t,n,s){var i=s,o=i.isAbsolute=function(l){return/^(?:\/|\w+:)/.test(l)},a=i.normalize=function(l){l=l.replace(/\\/g,"/").replace(/\/{2,}/g,"/");var u=l.split("/"),c=o(l),f="";c&&(f=u.shift()+"/");for(var h=0;h<u.length;)u[h]===".."?h>0&&u[h-1]!==".."?u.splice(--h,2):c?u.splice(h,1):++h:u[h]==="."?u.splice(h,1):++h;return f+u.join("/")};i.resolve=function(l,u,c){return c||(u=a(u)),o(u)?u:(c||(l=a(l)),(l=l.replace(/(?:\/|^)[^/]+$/,"")).length?a(l+"/"+u):u)}},{}],9:[function(t,n,s){n.exports=i;function i(o,a,l){var u=l||8192,c=u>>>1,f=null,h=u;return function(d){if(d<1||d>c)return o(d);h+d>u&&(f=o(u),h=0);var p=a.call(f,h,h+=d);return h&7&&(h=(h|7)+1),p}}},{}],10:[function(t,n,s){var i=s;i.length=function(o){for(var a=0,l=0,u=0;u<o.length;++u)l=o.charCodeAt(u),l<128?a+=1:l<2048?a+=2:(l&64512)===55296&&(o.charCodeAt(u+1)&64512)===56320?(++u,a+=4):a+=3;return a},i.read=function(o,a,l){var u=l-a;if(u<1)return"";for(var c=null,f=[],h=0,d;a<l;)d=o[a++],d<128?f[h++]=d:d>191&&d<224?f[h++]=(d&31)<<6|o[a++]&63:d>239&&d<365?(d=((d&7)<<18|(o[a++]&63)<<12|(o[a++]&63)<<6|o[a++]&63)-65536,f[h++]=55296+(d>>10),f[h++]=56320+(d&1023)):f[h++]=(d&15)<<12|(o[a++]&63)<<6|o[a++]&63,h>8191&&((c||(c=[])).push(String.fromCharCode.apply(String,f)),h=0);return c?(h&&c.push(String.fromCharCode.apply(String,f.slice(0,h))),c.join("")):String.fromCharCode.apply(String,f.slice(0,h))},i.write=function(o,a,l){for(var u=l,c,f,h=0;h<o.length;++h)c=o.charCodeAt(h),c<128?a[l++]=c:c<2048?(a[l++]=c>>6|192,a[l++]=c&63|128):(c&64512)===55296&&((f=o.charCodeAt(h+1))&64512)===56320?(c=65536+((c&1023)<<10)+(f&1023),++h,a[l++]=c>>18|240,a[l++]=c>>12&63|128,a[l++]=c>>6&63|128,a[l++]=c&63|128):(a[l++]=c>>12|224,a[l++]=c>>6&63|128,a[l++]=c&63|128);return l-u}},{}],11:[function(t,n,s){n.exports=o;var i=/\/|\./;function o(l,u){i.test(l)||(l="google/protobuf/"+l+".proto",u={nested:{google:{nested:{protobuf:{nested:u}}}}}),o[l]=u}o("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var a;o("duration",{Duration:a={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}}),o("timestamp",{Timestamp:a}),o("empty",{Empty:{fields:{}}}),o("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}}),o("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}}),o("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}}),o.get=function(l){return o[l]||null}},{}],12:[function(t,n,s){var i=s,o=t(15),a=t(37);function l(c,f,h,d){if(f.resolvedType)if(f.resolvedType instanceof o){c("switch(d%s){",d);for(var p=f.resolvedType.values,g=Object.keys(p),m=0;m<g.length;++m)f.repeated&&p[g[m]]===f.typeDefault&&c("default:"),c("case%j:",g[m])("case %i:",p[g[m]])("m%s=%j",d,p[g[m]])("break");c("}")}else c('if(typeof d%s!=="object")',d)("throw TypeError(%j)",f.fullName+": object expected")("m%s=types[%i].fromObject(d%s)",d,h,d);else{var y=!1;switch(f.type){case"double":case"float":c("m%s=Number(d%s)",d,d);break;case"uint32":case"fixed32":c("m%s=d%s>>>0",d,d);break;case"int32":case"sint32":case"sfixed32":c("m%s=d%s|0",d,d);break;case"uint64":y=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":c("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",d,d,y)('else if(typeof d%s==="string")',d)("m%s=parseInt(d%s,10)",d,d)('else if(typeof d%s==="number")',d)("m%s=d%s",d,d)('else if(typeof d%s==="object")',d)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",d,d,d,y?"true":"");break;case"bytes":c('if(typeof d%s==="string")',d)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",d,d,d)("else if(d%s.length)",d)("m%s=d%s",d,d);break;case"string":c("m%s=String(d%s)",d,d);break;case"bool":c("m%s=Boolean(d%s)",d,d);break}}return c}i.fromObject=function(c){var f=c.fieldsArray,h=a.codegen(["d"],c.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!f.length)return h("return new this.ctor");h("var m=new this.ctor");for(var d=0;d<f.length;++d){var p=f[d].resolve(),g=a.safeProp(p.name);p.map?(h("if(d%s){",g)('if(typeof d%s!=="object")',g)("throw TypeError(%j)",p.fullName+": object expected")("m%s={}",g)("for(var ks=Object.keys(d%s),i=0;i<ks.length;++i){",g),l(h,p,d,g+"[ks[i]]")("}")("}")):p.repeated?(h("if(d%s){",g)("if(!Array.isArray(d%s))",g)("throw TypeError(%j)",p.fullName+": array expected")("m%s=[]",g)("for(var i=0;i<d%s.length;++i){",g),l(h,p,d,g+"[i]")("}")("}")):(p.resolvedType instanceof o||h("if(d%s!=null){",g),l(h,p,d,g),p.resolvedType instanceof o||h("}"))}return h("return m")};function u(c,f,h,d){if(f.resolvedType)f.resolvedType instanceof o?c("d%s=o.enums===String?types[%i].values[m%s]:m%s",d,h,d,d):c("d%s=types[%i].toObject(m%s,o)",d,h,d);else{var p=!1;switch(f.type){case"double":case"float":c("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",d,d,d,d);break;case"uint64":p=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":c('if(typeof m%s==="number")',d)("d%s=o.longs===String?String(m%s):m%s",d,d,d)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",d,d,d,d,p?"true":"",d);break;case"bytes":c("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",d,d,d,d,d);break;default:c("d%s=m%s",d,d);break}}return c}i.toObject=function(c){var f=c.fieldsArray.slice().sort(a.compareFieldsById);if(!f.length)return a.codegen()("return {}");for(var h=a.codegen(["m","o"],c.name+"$toObject")("if(!o)")("o={}")("var d={}"),d=[],p=[],g=[],m=0;m<f.length;++m)f[m].partOf||(f[m].resolve().repeated?d:f[m].map?p:g).push(f[m]);if(d.length){for(h("if(o.arrays||o.defaults){"),m=0;m<d.length;++m)h("d%s=[]",a.safeProp(d[m].name));h("}")}if(p.length){for(h("if(o.objects||o.defaults){"),m=0;m<p.length;++m)h("d%s={}",a.safeProp(p[m].name));h("}")}if(g.length){for(h("if(o.defaults){"),m=0;m<g.length;++m){var y=g[m],w=a.safeProp(y.name);y.resolvedType instanceof o?h("d%s=o.enums===String?%j:%j",w,y.resolvedType.valuesById[y.typeDefault],y.typeDefault):y.long?h("if(util.Long){")("var n=new util.Long(%i,%i,%j)",y.typeDefault.low,y.typeDefault.high,y.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n",w)("}else")("d%s=o.longs===String?%j:%i",w,y.typeDefault.toString(),y.typeDefault.toNumber()):y.bytes?h("d%s=o.bytes===String?%j:%s",w,String.fromCharCode.apply(String,y.typeDefault),"["+Array.prototype.slice.call(y.typeDefault).join(",")+"]"):h("d%s=%j",w,y.typeDefault)}h("}")}var _=!1;for(m=0;m<f.length;++m){var y=f[m],b=c._fieldsArray.indexOf(y),w=a.safeProp(y.name);y.map?(_||(_=!0,h("var ks2")),h("if(m%s&&(ks2=Object.keys(m%s)).length){",w,w)("d%s={}",w)("for(var j=0;j<ks2.length;++j){"),u(h,y,b,w+"[ks2[j]]")("}")):y.repeated?(h("if(m%s&&m%s.length){",w,w)("d%s=[]",w)("for(var j=0;j<m%s.length;++j){",w),u(h,y,b,w+"[j]")("}")):(h("if(m%s!=null&&m.hasOwnProperty(%j)){",w,y.name),u(h,y,b,w),y.partOf&&h("if(o.oneofs)")("d%s=%j",a.safeProp(y.partOf.name),y.name)),h("}")}return h("return d")}},{15:15,37:37}],13:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),a=t(37);function l(c){return"missing required '"+c.name+"'"}function u(c){var f=a.codegen(["r","l"],c.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(c.fieldsArray.filter(function(y){return y.map}).length?",k":""))("while(r.pos<c){")("var t=r.uint32()");c.group&&f("if((t&7)===4)")("break"),f("switch(t>>>3){");for(var h=0;h<c.fieldsArray.length;++h){var d=c._fieldsArray[h].resolve(),p=d.resolvedType instanceof i?"int32":d.type,g="m"+a.safeProp(d.name);f("case %i:",d.id),d.map?(f("r.skip().pos++")("if(%s===util.emptyObject)",g)("%s={}",g)("k=r.%s()",d.keyType)("r.pos++"),o.long[d.keyType]!==e?o.basic[p]===e?f('%s[typeof k==="object"?util.longToHash(k):k]=types[%i].decode(r,r.uint32())',g,h):f('%s[typeof k==="object"?util.longToHash(k):k]=r.%s()',g,p):o.basic[p]===e?f("%s[k]=types[%i].decode(r,r.uint32())",g,h):f("%s[k]=r.%s()",g,p)):d.repeated?(f("if(!(%s&&%s.length))",g,g)("%s=[]",g),o.packed[p]!==e&&f("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos<c2)")("%s.push(r.%s())",g,p)("}else"),o.basic[p]===e?f(d.resolvedType.group?"%s.push(types[%i].decode(r))":"%s.push(types[%i].decode(r,r.uint32()))",g,h):f("%s.push(r.%s())",g,p)):o.basic[p]===e?f(d.resolvedType.group?"%s=types[%i].decode(r)":"%s=types[%i].decode(r,r.uint32())",g,h):f("%s=r.%s()",g,p),f("break")}for(f("default:")("r.skipType(t&7)")("break")("}")("}"),h=0;h<c._fieldsArray.length;++h){var m=c._fieldsArray[h];m.required&&f("if(!m.hasOwnProperty(%j))",m.name)("throw util.ProtocolError(%j,{instance:m})",l(m))}return f("return m")}},{15:15,36:36,37:37}],14:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),a=t(37);function l(c,f,h,d){return f.resolvedType.group?c("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",h,d,(f.id<<3|3)>>>0,(f.id<<3|4)>>>0):c("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",h,d,(f.id<<3|2)>>>0)}function u(c){for(var f=a.codegen(["m","w"],c.name+"$encode")("if(!w)")("w=Writer.create()"),p,h,d=c.fieldsArray.slice().sort(a.compareFieldsById),p=0;p<d.length;++p){var g=d[p].resolve(),m=c._fieldsArray.indexOf(g),y=g.resolvedType instanceof i?"int32":g.type,w=o.basic[y];h="m"+a.safeProp(g.name),g.map?(f("if(%s!=null&&m.hasOwnProperty(%j)){",h,g.name)("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){",h)("w.uint32(%i).fork().uint32(%i).%s(ks[i])",(g.id<<3|2)>>>0,8|o.mapKey[g.keyType],g.keyType),w===e?f("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",m,h):f(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|w,y,h),f("}")("}")):g.repeated?(f("if(%s!=null&&%s.length){",h,h),g.packed&&o.packed[y]!==e?f("w.uint32(%i).fork()",(g.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",h)("w.%s(%s[i])",y,h)("w.ldelim()"):(f("for(var i=0;i<%s.length;++i)",h),w===e?l(f,g,m,h+"[i]"):f("w.uint32(%i).%s(%s[i])",(g.id<<3|w)>>>0,y,h)),f("}")):(g.optional&&f("if(%s!=null&&m.hasOwnProperty(%j))",h,g.name),w===e?l(f,g,m,h):f("w.uint32(%i).%s(%s)",(g.id<<3|w)>>>0,y,h))}return f("return w")}},{15:15,36:36,37:37}],15:[function(t,n,s){n.exports=l;var i=t(24);((l.prototype=Object.create(i.prototype)).constructor=l).className="Enum";var o=t(23),a=t(37);function l(u,c,f,h,d){if(i.call(this,u,f),c&&typeof c!="object")throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=h,this.comments=d||{},this.reserved=e,c)for(var p=Object.keys(c),g=0;g<p.length;++g)typeof c[p[g]]=="number"&&(this.valuesById[this.values[p[g]]=c[p[g]]]=p[g])}l.fromJSON=function(u,c){var f=new l(u,c.values,c.options,c.comment,c.comments);return f.reserved=c.reserved,f},l.prototype.toJSON=function(u){var c=u?!!u.keepComments:!1;return a.toObject(["options",this.options,"values",this.values,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"comment",c?this.comment:e,"comments",c?this.comments:e])},l.prototype.add=function(u,c,f){if(!a.isString(u))throw TypeError("name must be a string");if(!a.isInteger(c))throw TypeError("id must be an integer");if(this.values[u]!==e)throw Error("duplicate name '"+u+"' in "+this);if(this.isReservedId(c))throw Error("id "+c+" is reserved in "+this);if(this.isReservedName(u))throw Error("name '"+u+"' is reserved in "+this);if(this.valuesById[c]!==e){if(!(this.options&&this.options.allow_alias))throw Error("duplicate id "+c+" in "+this);this.values[u]=c}else this.valuesById[this.values[u]=c]=u;return this.comments[u]=f||null,this},l.prototype.remove=function(u){if(!a.isString(u))throw TypeError("name must be a string");var c=this.values[u];if(c==null)throw Error("name '"+u+"' does not exist in "+this);return delete this.valuesById[c],delete this.values[u],delete this.comments[u],this},l.prototype.isReservedId=function(u){return o.isReservedId(this.reserved,u)},l.prototype.isReservedName=function(u){return o.isReservedName(this.reserved,u)}},{23:23,24:24,37:37}],16:[function(t,n,s){n.exports=f;var i=t(24);((f.prototype=Object.create(i.prototype)).constructor=f).className="Field";var o=t(15),a=t(36),l=t(37),u,c=/^required|optional|repeated$/;f.fromJSON=function(h,d){return new f(h,d.id,d.type,d.rule,d.extend,d.options,d.comment)};function f(h,d,p,g,m,y,w){if(l.isObject(g)?(w=m,y=g,g=m=e):l.isObject(m)&&(w=y,y=m,m=e),i.call(this,h,y),!l.isInteger(d)||d<0)throw TypeError("id must be a non-negative integer");if(!l.isString(p))throw TypeError("type must be a string");if(g!==e&&!c.test(g=g.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(m!==e&&!l.isString(m))throw TypeError("extend must be a string");this.rule=g&&g!=="optional"?g:e,this.type=p,this.id=d,this.extend=m||e,this.required=g==="required",this.optional=!this.required,this.repeated=g==="repeated",this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=l.Long?a.long[p]!==e:!1,this.bytes=p==="bytes",this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=w}Object.defineProperty(f.prototype,"packed",{get:function(){return this._packed===null&&(this._packed=this.getOption("packed")!==!1),this._packed}}),f.prototype.setOption=function(h,d,p){return h==="packed"&&(this._packed=null),i.prototype.setOption.call(this,h,d,p)},f.prototype.toJSON=function(h){var d=h?!!h.keepComments:!1;return l.toObject(["rule",this.rule!=="optional"&&this.rule||e,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",d?this.comment:e])},f.prototype.resolve=function(){if(this.resolved)return this;if((this.typeDefault=a.defaults[this.type])===e&&(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof u?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]),this.options&&this.options.default!=null&&(this.typeDefault=this.options.default,this.resolvedType instanceof o&&typeof this.typeDefault=="string"&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&((this.options.packed===!0||this.options.packed!==e&&this.resolvedType&&!(this.resolvedType instanceof o))&&delete this.options.packed,Object.keys(this.options).length||(this.options=e)),this.long)this.typeDefault=l.Long.fromNumber(this.typeDefault,this.type.charAt(0)==="u"),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&typeof this.typeDefault=="string"){var h;l.base64.test(this.typeDefault)?l.base64.decode(this.typeDefault,h=l.newBuffer(l.base64.length(this.typeDefault)),0):l.utf8.write(this.typeDefault,h=l.newBuffer(l.utf8.length(this.typeDefault)),0),this.typeDefault=h}return this.map?this.defaultValue=l.emptyObject:this.repeated?this.defaultValue=l.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof u&&(this.parent.ctor.prototype[this.name]=this.defaultValue),i.prototype.resolve.call(this)},f.d=function(h,d,p,g){return typeof d=="function"?d=l.decorateType(d).name:d&&typeof d=="object"&&(d=l.decorateEnum(d).name),function(m,y){l.decorateType(m.constructor).add(new f(y,h,d,p,{default:g}))}},f._configure=function(h){u=h}},{15:15,24:24,36:36,37:37}],17:[function(t,n,s){var i=n.exports=t(18);i.build="light";function o(l,u,c){return typeof u=="function"?(c=u,u=new i.Root):u||(u=new i.Root),u.load(l,c)}i.load=o;function a(l,u){return u||(u=new i.Root),u.loadSync(l)}i.loadSync=a,i.encoder=t(14),i.decoder=t(13),i.verifier=t(40),i.converter=t(12),i.ReflectionObject=t(24),i.Namespace=t(23),i.Root=t(29),i.Enum=t(15),i.Type=t(35),i.Field=t(16),i.OneOf=t(25),i.MapField=t(20),i.Service=t(33),i.Method=t(22),i.Message=t(21),i.wrappers=t(41),i.types=t(36),i.util=t(37),i.ReflectionObject._configure(i.Root),i.Namespace._configure(i.Type,i.Service),i.Root._configure(i.Type),i.Field._configure(i.Type)},{12:12,13:13,14:14,15:15,16:16,18:18,20:20,21:21,22:22,23:23,24:24,25:25,29:29,33:33,35:35,36:36,37:37,40:40,41:41}],18:[function(t,n,s){var i=s;i.build="minimal",i.Writer=t(42),i.BufferWriter=t(43),i.Reader=t(27),i.BufferReader=t(28),i.util=t(39),i.rpc=t(31),i.roots=t(30),i.configure=o;function o(){i.Reader._configure(i.BufferReader),i.util._configure()}i.Writer._configure(i.BufferWriter),o()},{27:27,28:28,30:30,31:31,39:39,42:42,43:43}],19:[function(t,n,s){var i=n.exports=t(17);i.build="full",i.tokenize=t(34),i.parse=t(26),i.common=t(11),i.Root._configure(i.Type,i.parse,i.common)},{11:11,17:17,26:26,34:34}],20:[function(t,n,s){n.exports=l;var i=t(16);((l.prototype=Object.create(i.prototype)).constructor=l).className="MapField";var o=t(36),a=t(37);function l(u,c,f,h,d,p){if(i.call(this,u,c,h,e,e,d,p),!a.isString(f))throw TypeError("keyType must be a string");this.keyType=f,this.resolvedKeyType=null,this.map=!0}l.fromJSON=function(u,c){return new l(u,c.id,c.keyType,c.type,c.options,c.comment)},l.prototype.toJSON=function(u){var c=u?!!u.keepComments:!1;return a.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",c?this.comment:e])},l.prototype.resolve=function(){if(this.resolved)return this;if(o.mapKey[this.keyType]===e)throw Error("invalid key type: "+this.keyType);return i.prototype.resolve.call(this)},l.d=function(u,c,f){return typeof f=="function"?f=a.decorateType(f).name:f&&typeof f=="object"&&(f=a.decorateEnum(f).name),function(h,d){a.decorateType(h.constructor).add(new l(d,u,c,f))}}},{16:16,36:36,37:37}],21:[function(t,n,s){n.exports=o;var i=t(39);function o(a){if(a)for(var l=Object.keys(a),u=0;u<l.length;++u)this[l[u]]=a[l[u]]}o.create=function(a){return this.$type.create(a)},o.encode=function(a,l){return this.$type.encode(a,l)},o.encodeDelimited=function(a,l){return this.$type.encodeDelimited(a,l)},o.decode=function(a){return this.$type.decode(a)},o.decodeDelimited=function(a){return this.$type.decodeDelimited(a)},o.verify=function(a){return this.$type.verify(a)},o.fromObject=function(a){return this.$type.fromObject(a)},o.toObject=function(a,l){return this.$type.toObject(a,l)},o.prototype.toJSON=function(){return this.$type.toObject(this,i.toJSONOptions)}},{39:39}],22:[function(t,n,s){n.exports=a;var i=t(24);((a.prototype=Object.create(i.prototype)).constructor=a).className="Method";var o=t(37);function a(l,u,c,f,h,d,p,g){if(o.isObject(h)?(p=h,h=d=e):o.isObject(d)&&(p=d,d=e),!(u===e||o.isString(u)))throw TypeError("type must be a string");if(!o.isString(c))throw TypeError("requestType must be a string");if(!o.isString(f))throw TypeError("responseType must be a string");i.call(this,l,p),this.type=u||"rpc",this.requestType=c,this.requestStream=h?!0:e,this.responseType=f,this.responseStream=d?!0:e,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=g}a.fromJSON=function(l,u){return new a(l,u.type,u.requestType,u.responseType,u.requestStream,u.responseStream,u.options,u.comment)},a.prototype.toJSON=function(l){var u=l?!!l.keepComments:!1;return o.toObject(["type",this.type!=="rpc"&&this.type||e,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",u?this.comment:e])},a.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),i.prototype.resolve.call(this))}},{24:24,37:37}],23:[function(t,n,s){n.exports=h;var i=t(24);((h.prototype=Object.create(i.prototype)).constructor=h).className="Namespace";var o=t(15),a=t(16),l=t(37),u,c;h.fromJSON=function(p,g){return new h(p,g.options).addJSON(g.nested)};function f(p,g){if(!(p&&p.length))return e;for(var m={},y=0;y<p.length;++y)m[p[y].name]=p[y].toJSON(g);return m}h.arrayToJSON=f,h.isReservedId=function(p,g){if(p){for(var m=0;m<p.length;++m)if(typeof p[m]!="string"&&p[m][0]<=g&&p[m][1]>=g)return!0}return!1},h.isReservedName=function(p,g){if(p){for(var m=0;m<p.length;++m)if(p[m]===g)return!0}return!1};function h(p,g){i.call(this,p,g),this.nested=e,this._nestedArray=null}function d(p){return p._nestedArray=null,p}Object.defineProperty(h.prototype,"nestedArray",{get:function(){return this._nestedArray||(this._nestedArray=l.toArray(this.nested))}}),h.prototype.toJSON=function(p){return l.toObject(["options",this.options,"nested",f(this.nestedArray,p)])},h.prototype.addJSON=function(p){var g=this;if(p)for(var m=Object.keys(p),y=0,w;y<m.length;++y)w=p[m[y]],g.add((w.fields!==e?u.fromJSON:w.values!==e?o.fromJSON:w.methods!==e?c.fromJSON:w.id!==e?a.fromJSON:h.fromJSON)(m[y],w));return this},h.prototype.get=function(p){return this.nested&&this.nested[p]||null},h.prototype.getEnum=function(p){if(this.nested&&this.nested[p]instanceof o)return this.nested[p].values;throw Error("no such enum: "+p)},h.prototype.add=function(p){if(!(p instanceof a&&p.extend!==e||p instanceof u||p instanceof o||p instanceof c||p instanceof h))throw TypeError("object must be a valid nested object");if(!this.nested)this.nested={};else{var g=this.get(p.name);if(g)if(g instanceof h&&p instanceof h&&!(g instanceof u||g instanceof c)){for(var m=g.nestedArray,y=0;y<m.length;++y)p.add(m[y]);this.remove(g),this.nested||(this.nested={}),p.setOptions(g.options,!0)}else throw Error("duplicate name '"+p.name+"' in "+this)}return this.nested[p.name]=p,p.onAdd(this),d(this)},h.prototype.remove=function(p){if(!(p instanceof i))throw TypeError("object must be a ReflectionObject");if(p.parent!==this)throw Error(p+" is not a member of "+this);return delete this.nested[p.name],Object.keys(this.nested).length||(this.nested=e),p.onRemove(this),d(this)},h.prototype.define=function(p,g){if(l.isString(p))p=p.split(".");else if(!Array.isArray(p))throw TypeError("illegal path");if(p&&p.length&&p[0]==="")throw Error("path must be relative");for(var m=this;p.length>0;){var y=p.shift();if(m.nested&&m.nested[y]){if(m=m.nested[y],!(m instanceof h))throw Error("path conflicts with non-namespace objects")}else m.add(m=new h(y))}return g&&m.addJSON(g),m},h.prototype.resolveAll=function(){for(var p=this.nestedArray,g=0;g<p.length;)p[g]instanceof h?p[g++].resolveAll():p[g++].resolve();return this.resolve()},h.prototype.lookup=function(p,g,m){if(typeof g=="boolean"?(m=g,g=e):g&&!Array.isArray(g)&&(g=[g]),l.isString(p)&&p.length){if(p===".")return this.root;p=p.split(".")}else if(!p.length)return this;if(p[0]==="")return this.root.lookup(p.slice(1),g);var y=this.get(p[0]);if(y){if(p.length===1){if(!g||g.indexOf(y.constructor)>-1)return y}else if(y instanceof h&&(y=y.lookup(p.slice(1),g,!0)))return y}else for(var w=0;w<this.nestedArray.length;++w)if(this._nestedArray[w]instanceof h&&(y=this._nestedArray[w].lookup(p,g,!0)))return y;return this.parent===null||m?null:this.parent.lookup(p,g)},h.prototype.lookupType=function(p){var g=this.lookup(p,[u]);if(!g)throw Error("no such type: "+p);return g},h.prototype.lookupEnum=function(p){var g=this.lookup(p,[o]);if(!g)throw Error("no such Enum '"+p+"' in "+this);return g},h.prototype.lookupTypeOrEnum=function(p){var g=this.lookup(p,[u,o]);if(!g)throw Error("no such Type or Enum '"+p+"' in "+this);return g},h.prototype.lookupService=function(p){var g=this.lookup(p,[c]);if(!g)throw Error("no such Service '"+p+"' in "+this);return g},h._configure=function(p,g){u=p,c=g}},{15:15,16:16,24:24,37:37}],24:[function(t,n,s){n.exports=a,a.className="ReflectionObject";var i=t(37),o;function a(l,u){if(!i.isString(l))throw TypeError("name must be a string");if(u&&!i.isObject(u))throw TypeError("options must be an object");this.options=u,this.name=l,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(a.prototype,{root:{get:function(){for(var l=this;l.parent!==null;)l=l.parent;return l}},fullName:{get:function(){for(var l=[this.name],u=this.parent;u;)l.unshift(u.name),u=u.parent;return l.join(".")}}}),a.prototype.toJSON=function(){throw Error()},a.prototype.onAdd=function(l){this.parent&&this.parent!==l&&this.parent.remove(this),this.parent=l,this.resolved=!1;var u=l.root;u instanceof o&&u._handleAdd(this)},a.prototype.onRemove=function(l){var u=l.root;u instanceof o&&u._handleRemove(this),this.parent=null,this.resolved=!1},a.prototype.resolve=function(){return this.resolved?this:(this.root instanceof o&&(this.resolved=!0),this)},a.prototype.getOption=function(l){return this.options?this.options[l]:e},a.prototype.setOption=function(l,u,c){return(!c||!this.options||this.options[l]===e)&&((this.options||(this.options={}))[l]=u),this},a.prototype.setOptions=function(l,u){if(l)for(var c=Object.keys(l),f=0;f<c.length;++f)this.setOption(c[f],l[c[f]],u);return this},a.prototype.toString=function(){var l=this.constructor.className,u=this.fullName;return u.length?l+" "+u:l},a._configure=function(l){o=l}},{37:37}],25:[function(t,n,s){n.exports=l;var i=t(24);((l.prototype=Object.create(i.prototype)).constructor=l).className="OneOf";var o=t(16),a=t(37);function l(c,f,h,d){if(Array.isArray(f)||(h=f,f=e),i.call(this,c,h),!(f===e||Array.isArray(f)))throw TypeError("fieldNames must be an Array");this.oneof=f||[],this.fieldsArray=[],this.comment=d}l.fromJSON=function(c,f){return new l(c,f.oneof,f.options,f.comment)},l.prototype.toJSON=function(c){var f=c?!!c.keepComments:!1;return a.toObject(["options",this.options,"oneof",this.oneof,"comment",f?this.comment:e])};function u(c){if(c.parent)for(var f=0;f<c.fieldsArray.length;++f)c.fieldsArray[f].parent||c.parent.add(c.fieldsArray[f])}l.prototype.add=function(c){if(!(c instanceof o))throw TypeError("field must be a Field");return c.parent&&c.parent!==this.parent&&c.parent.remove(c),this.oneof.push(c.name),this.fieldsArray.push(c),c.partOf=this,u(this),this},l.prototype.remove=function(c){if(!(c instanceof o))throw TypeError("field must be a Field");var f=this.fieldsArray.indexOf(c);if(f<0)throw Error(c+" is not a member of "+this);return this.fieldsArray.splice(f,1),f=this.oneof.indexOf(c.name),f>-1&&this.oneof.splice(f,1),c.partOf=null,this},l.prototype.onAdd=function(c){i.prototype.onAdd.call(this,c);for(var f=this,h=0;h<this.oneof.length;++h){var d=c.get(this.oneof[h]);d&&!d.partOf&&(d.partOf=f,f.fieldsArray.push(d))}u(this)},l.prototype.onRemove=function(c){for(var f=0,h;f<this.fieldsArray.length;++f)(h=this.fieldsArray[f]).parent&&h.parent.remove(h);i.prototype.onRemove.call(this,c)},l.d=function(){for(var c=new Array(arguments.length),f=0;f<arguments.length;)c[f]=arguments[f++];return function(h,d){a.decorateType(h.constructor).add(new l(d,c)),Object.defineProperty(h,d,{get:a.oneOfGetter(c),set:a.oneOfSetter(c)})}}},{16:16,24:24,37:37}],26:[function(t,n,s){n.exports=x,x.filename=null,x.defaults={keepCase:!1};var i=t(34),o=t(29),a=t(35),l=t(16),u=t(20),c=t(25),f=t(15),h=t(33),d=t(22),p=t(36),g=t(37),m=/^[1-9][0-9]*$/,y=/^-?[1-9][0-9]*$/,w=/^0[x][0-9a-fA-F]+$/,_=/^-?0[x][0-9a-fA-F]+$/,b=/^0[0-7]+$/,k=/^-?0[0-7]+$/,S=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,E=/^[a-zA-Z_][a-zA-Z_0-9]*$/,R=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/,D=/^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/;function x(J,me,H){me instanceof o||(H=me,me=new o),H||(H=x.defaults);var Q=i(J,H.alternateCommentMode||!1),B=Q.next,he=Q.push,le=Q.peek,j=Q.skip,at=Q.cmnt,St=!0,lt,z,re,ie,ue=!1,ke=me,Oe=H.keepCase?function(A){return A}:g.camelCase;function q(A,O,F){var M=x.filename;return F||(x.filename=null),Error("illegal "+(O||"token")+" '"+A+"' ("+(M?M+", ":"")+"line "+Q.line+")")}function Xe(){var A=[],O;do{if((O=B())!=='"'&&O!=="'")throw q(O);A.push(B()),j(O),O=le()}while(O==='"'||O==="'");return A.join("")}function Jo(A){var O=B();switch(O){case"'":case'"':return he(O),Xe();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return Vh(O,!0)}catch{if(R.test(O))return O;throw q(O,"value")}}function jn(A,O){var F,M;do O&&((F=le())==='"'||F==="'")?A.push(Xe()):A.push([M=jt(B()),j("to",!0)?jt(B()):M]);while(j(",",!0));j(";")}function Vh(A,O){var F=1;switch(A.charAt(0)==="-"&&(F=-1,A=A.substring(1)),A){case"inf":case"INF":case"Inf":return F*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(m.test(A))return F*parseInt(A,10);if(w.test(A))return F*parseInt(A,16);if(b.test(A))return F*parseInt(A,8);if(S.test(A))return F*parseFloat(A);throw q(A,"number",O)}function jt(A,O){switch(A){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!O&&A.charAt(0)==="-")throw q(A,"id");if(y.test(A))return parseInt(A,10);if(_.test(A))return parseInt(A,16);if(k.test(A))return parseInt(A,8);throw q(A,"id")}function Hh(){if(lt!==e)throw q("package");if(lt=B(),!R.test(lt))throw q(lt,"name");ke=ke.define(lt),j(";")}function zh(){var A=le(),O;switch(A){case"weak":O=re||(re=[]),B();break;case"public":B();default:O=z||(z=[]);break}A=Xe(),j(";"),O.push(A)}function Jh(){if(j("="),ie=Xe(),ue=ie==="proto3",!ue&&ie!=="proto2")throw q(ie,"syntax");j(";")}function Un(A,O){switch(O){case"option":return Ze(A,O),j(";"),!0;case"message":return Zh(A,O),!0;case"enum":return Qh(A,O),!0;case"service":return ef(A,O),!0;case"extend":return rf(A,O),!0}return!1}function Je(A,O,F){var M=Q.line;if(A&&(A.comment=at(),A.filename=x.filename),j("{",!0)){for(var oe;(oe=B())!=="}";)O(oe);j(";",!0)}else F&&F(),j(";"),A&&typeof A.comment!="string"&&(A.comment=at(M))}function Zh(A,O){if(!E.test(O=B()))throw q(O,"type name");var F=new a(O);Je(F,function(M){if(!Un(F,M))switch(M){case"map":Yh(F);break;case"required":case"optional":case"repeated":Ut(F,M);break;case"oneof":Kh(F,M);break;case"extensions":jn(F.extensions||(F.extensions=[]));break;case"reserved":jn(F.reserved||(F.reserved=[]),!0);break;default:if(!ue||!R.test(M))throw q(M);he(M),Ut(F,"optional");break}}),A.add(F)}function Ut(A,O,F){var M=B();if(M==="group"){Gh(A,O);return}if(!R.test(M))throw q(M,"type");var oe=B();if(!E.test(oe))throw q(oe,"name");oe=Oe(oe),j("=");var fe=new l(oe,jt(B()),M,O,F);Je(fe,function(et){if(et==="option")Ze(fe,et),j(";");else throw q(et)},function(){$n(fe)}),A.add(fe),!ue&&fe.repeated&&(p.packed[M]!==e||p.basic[M]===e)&&fe.setOption("packed",!1,!0)}function Gh(A,O){var F=B();if(!E.test(F))throw q(F,"name");var M=g.lcFirst(F);F===M&&(F=g.ucFirst(F)),j("=");var oe=jt(B()),fe=new a(F);fe.group=!0;var et=new l(M,oe,F,O);et.filename=x.filename,Je(fe,function(_t){switch(_t){case"option":Ze(fe,_t),j(";");break;case"required":case"optional":case"repeated":Ut(fe,_t);break;default:throw q(_t)}}),A.add(fe).add(et)}function Yh(A){j("<");var O=B();if(p.mapKey[O]===e)throw q(O,"type");j(",");var F=B();if(!R.test(F))throw q(F,"type");j(">");var M=B();if(!E.test(M))throw q(M,"name");j("=");var oe=new u(Oe(M),jt(B()),O,F);Je(oe,function(fe){if(fe==="option")Ze(oe,fe),j(";");else throw q(fe)},function(){$n(oe)}),A.add(oe)}function Kh(A,O){if(!E.test(O=B()))throw q(O,"name");var F=new c(Oe(O));Je(F,function(M){M==="option"?(Ze(F,M),j(";")):(he(M),Ut(F,"optional"))}),A.add(F)}function Qh(A,O){if(!E.test(O=B()))throw q(O,"name");var F=new f(O);Je(F,function(M){switch(M){case"option":Ze(F,M),j(";");break;case"reserved":jn(F.reserved||(F.reserved=[]),!0);break;default:Xh(F,M)}}),A.add(F)}function Xh(A,O){if(!E.test(O))throw q(O,"name");j("=");var F=jt(B(),!0),M={};Je(M,function(oe){if(oe==="option")Ze(M,oe),j(";");else throw q(oe)},function(){$n(M)}),A.add(O,F,M.comment)}function Ze(A,O){var F=j("(",!0);if(!R.test(O=B()))throw q(O,"name");var M=O;F&&(j(")"),M="("+M+")",O=le(),D.test(O)&&(M+=O,B())),j("="),Bn(A,M)}function Bn(A,O){if(j("{",!0))do{if(!E.test(Ae=B()))throw q(Ae,"name");le()==="{"?Bn(A,O+"."+Ae):(j(":"),le()==="{"?Bn(A,O+"."+Ae):Zo(A,O+"."+Ae,Jo()))}while(!j("}",!0));else Zo(A,O,Jo())}function Zo(A,O,F){A.setOption&&A.setOption(O,F)}function $n(A){if(j("[",!0)){do Ze(A,"option");while(j(",",!0));j("]")}return A}function ef(A,O){if(!E.test(O=B()))throw q(O,"service name");var F=new h(O);Je(F,function(M){if(!Un(F,M))if(M==="rpc")tf(F,M);else throw q(M)}),A.add(F)}function tf(A,O){var F=O;if(!E.test(O=B()))throw q(O,"name");var M=O,oe,fe,et,_t;if(j("("),j("stream",!0)&&(fe=!0),!R.test(O=B())||(oe=O,j(")"),j("returns"),j("("),j("stream",!0)&&(_t=!0),!R.test(O=B())))throw q(O);et=O,j(")");var Wn=new d(M,F,oe,et,fe,_t);Je(Wn,function(qn){if(qn==="option")Ze(Wn,qn),j(";");else throw q(qn)}),A.add(Wn)}function rf(A,O){if(!R.test(O=B()))throw q(O,"reference");var F=O;Je(null,function(M){switch(M){case"required":case"repeated":case"optional":Ut(A,M,F);break;default:if(!ue||!R.test(M))throw q(M);he(M),Ut(A,"optional",F);break}})}for(var Ae;(Ae=B())!==null;)switch(Ae){case"package":if(!St)throw q(Ae);Hh();break;case"import":if(!St)throw q(Ae);zh();break;case"syntax":if(!St)throw q(Ae);Jh();break;case"option":if(!St)throw q(Ae);Ze(ke,Ae),j(";");break;default:if(Un(ke,Ae)){St=!1;continue}throw q(Ae)}return x.filename=null,{package:lt,imports:z,weakImports:re,syntax:ie,root:me}}},{15:15,16:16,20:20,22:22,25:25,29:29,33:33,34:34,35:35,36:36,37:37}],27:[function(t,n,s){n.exports=c;var i=t(39),o,a=i.LongBits,l=i.utf8;function u(g,m){return RangeError("index out of range: "+g.pos+" + "+(m||1)+" > "+g.len)}function c(g){this.buf=g,this.pos=0,this.len=g.length}var f=typeof Uint8Array<"u"?function(g){if(g instanceof Uint8Array||Array.isArray(g))return new c(g);throw Error("illegal buffer")}:function(g){if(Array.isArray(g))return new c(g);throw Error("illegal buffer")};c.create=i.Buffer?function(g){return(c.create=function(m){return i.Buffer.isBuffer(m)?new o(m):f(m)})(g)}:f,c.prototype._slice=i.Array.prototype.subarray||i.Array.prototype.slice,c.prototype.uint32=function(){var g=4294967295;return function(){if(g=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(g=(g|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return g;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return g}}(),c.prototype.int32=function(){return this.uint32()|0},c.prototype.sint32=function(){var g=this.uint32();return g>>>1^-(g&1)|0};function h(){var g=new a(0,0),m=0;if(this.len-this.pos>4){for(;m<4;++m)if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g;if(g.lo=(g.lo|(this.buf[this.pos]&127)<<28)>>>0,g.hi=(g.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return g;m=0}else{for(;m<3;++m){if(this.pos>=this.len)throw u(this);if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g}return g.lo=(g.lo|(this.buf[this.pos++]&127)<<m*7)>>>0,g}if(this.len-this.pos>4){for(;m<5;++m)if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}else for(;m<5;++m){if(this.pos>=this.len)throw u(this);if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}throw Error("invalid varint encoding")}c.prototype.bool=function(){return this.uint32()!==0};function d(g,m){return(g[m-4]|g[m-3]<<8|g[m-2]<<16|g[m-1]<<24)>>>0}c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)|0};function p(){if(this.pos+8>this.len)throw u(this,8);return new a(d(this.buf,this.pos+=4),d(this.buf,this.pos+=4))}c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var g=i.float.readFloatLE(this.buf,this.pos);return this.pos+=4,g},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var g=i.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,g},c.prototype.bytes=function(){var g=this.uint32(),m=this.pos,y=this.pos+g;if(y>this.len)throw u(this,g);return this.pos+=g,Array.isArray(this.buf)?this.buf.slice(m,y):m===y?new this.buf.constructor(0):this._slice.call(this.buf,m,y)},c.prototype.string=function(){var g=this.bytes();return l.read(g,0,g.length)},c.prototype.skip=function(g){if(typeof g=="number"){if(this.pos+g>this.len)throw u(this,g);this.pos+=g}else do if(this.pos>=this.len)throw u(this);while(this.buf[this.pos++]&128);return this},c.prototype.skipType=function(g){switch(g){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:do{if((g=this.uint32()&7)===4)break;this.skipType(g)}while(!0);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+g+" at offset "+this.pos)}return this},c._configure=function(g){o=g;var m=i.Long?"toLong":"toNumber";i.merge(c.prototype,{int64:function(){return h.call(this)[m](!1)},uint64:function(){return h.call(this)[m](!0)},sint64:function(){return h.call(this).zzDecode()[m](!1)},fixed64:function(){return p.call(this)[m](!0)},sfixed64:function(){return p.call(this)[m](!1)}})}},{39:39}],28:[function(t,n,s){n.exports=a;var i=t(27);(a.prototype=Object.create(i.prototype)).constructor=a;var o=t(39);function a(l){i.call(this,l)}o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice),a.prototype.string=function(){var l=this.uint32();return this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+l,this.len))}},{27:27,39:39}],29:[function(t,n,s){n.exports=d;var i=t(23);((d.prototype=Object.create(i.prototype)).constructor=d).className="Root";var o=t(16),a=t(15),l=t(25),u=t(37),c,f,h;function d(y){i.call(this,"",y),this.deferred=[],this.files=[]}d.fromJSON=function(y,w){return w||(w=new d),y.options&&w.setOptions(y.options),w.addJSON(y.nested)},d.prototype.resolvePath=u.path.resolve;function p(){}d.prototype.load=function y(w,_,b){typeof _=="function"&&(b=_,_=e);var k=this;if(!b)return u.asPromise(y,k,w,_);var S=b===p;function E(H,Q){if(b){var B=b;if(b=null,S)throw H;B(H,Q)}}function R(H,Q){try{if(u.isString(Q)&&Q.charAt(0)==="{"&&(Q=JSON.parse(Q)),!u.isString(Q))k.setOptions(Q.options).addJSON(Q.nested);else{f.filename=H;var B=f(Q,k,_),he,le=0;if(B.imports)for(;le<B.imports.length;++le)(he=k.resolvePath(H,B.imports[le]))&&D(he);if(B.weakImports)for(le=0;le<B.weakImports.length;++le)(he=k.resolvePath(H,B.weakImports[le]))&&D(he,!0)}}catch(j){E(j)}!S&&!x&&E(null,k)}function D(H,Q){var B=H.lastIndexOf("google/protobuf/");if(B>-1){var he=H.substring(B);he in h&&(H=he)}if(!(k.files.indexOf(H)>-1)){if(k.files.push(H),H in h){S?R(H,h[H]):(++x,setTimeout(function(){--x,R(H,h[H])}));return}if(S){var le;try{le=u.fs.readFileSync(H).toString("utf8")}catch(j){Q||E(j);return}R(H,le)}else++x,u.fetch(H,function(j,at){if(--x,!!b){if(j){Q?x||E(null,k):E(j);return}R(H,at)}})}}var x=0;u.isString(w)&&(w=[w]);for(var J=0,me;J<w.length;++J)(me=k.resolvePath("",w[J]))&&D(me);return S?k:(x||E(null,k),e)},d.prototype.loadSync=function(y,w){if(!u.isNode)throw Error("not supported");return this.load(y,w,p)},d.prototype.resolveAll=function(){if(this.deferred.length)throw Error("unresolvable extensions: "+this.deferred.map(function(y){return"'extend "+y.extend+"' in "+y.parent.fullName}).join(", "));return i.prototype.resolveAll.call(this)};var g=/^[A-Z]/;function m(y,w){var _=w.parent.lookup(w.extend);if(_){var b=new o(w.fullName,w.id,w.type,w.rule,e,w.options);return b.declaringField=w,w.extensionField=b,_.add(b),!0}return!1}d.prototype._handleAdd=function(y){if(y instanceof o)y.extend!==e&&!y.extensionField&&(m(this,y)||this.deferred.push(y));else if(y instanceof a)g.test(y.name)&&(y.parent[y.name]=y.values);else if(!(y instanceof l)){if(y instanceof c)for(var w=0;w<this.deferred.length;)m(this,this.deferred[w])?this.deferred.splice(w,1):++w;for(var _=0;_<y.nestedArray.length;++_)this._handleAdd(y._nestedArray[_]);g.test(y.name)&&(y.parent[y.name]=y)}},d.prototype._handleRemove=function(y){if(y instanceof o){if(y.extend!==e)if(y.extensionField)y.extensionField.parent.remove(y.extensionField),y.extensionField=null;else{var w=this.deferred.indexOf(y);w>-1&&this.deferred.splice(w,1)}}else if(y instanceof a)g.test(y.name)&&delete y.parent[y.name];else if(y instanceof i){for(var _=0;_<y.nestedArray.length;++_)this._handleRemove(y._nestedArray[_]);g.test(y.name)&&delete y.parent[y.name]}},d._configure=function(y,w,_){c=y,f=w,h=_}},{15:15,16:16,23:23,25:25,37:37}],30:[function(t,n,s){n.exports={}},{}],31:[function(t,n,s){var i=s;i.Service=t(32)},{32:32}],32:[function(t,n,s){n.exports=o;var i=t(39);(o.prototype=Object.create(i.EventEmitter.prototype)).constructor=o;function o(a,l,u){if(typeof a!="function")throw TypeError("rpcImpl must be a function");i.EventEmitter.call(this),this.rpcImpl=a,this.requestDelimited=!!l,this.responseDelimited=!!u}o.prototype.rpcCall=function a(l,u,c,f,h){if(!f)throw TypeError("request must be specified");var d=this;if(!h)return i.asPromise(a,d,l,u,c,f);if(!d.rpcImpl)return setTimeout(function(){h(Error("already ended"))},0),e;try{return d.rpcImpl(l,u[d.requestDelimited?"encodeDelimited":"encode"](f).finish(),function(p,g){if(p)return d.emit("error",p,l),h(p);if(g===null)return d.end(!0),e;if(!(g instanceof c))try{g=c[d.responseDelimited?"decodeDelimited":"decode"](g)}catch(m){return d.emit("error",m,l),h(m)}return d.emit("data",g,l),h(null,g)})}catch(p){return d.emit("error",p,l),setTimeout(function(){h(p)},0),e}},o.prototype.end=function(a){return this.rpcImpl&&(a||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},{39:39}],33:[function(t,n,s){n.exports=u;var i=t(23);((u.prototype=Object.create(i.prototype)).constructor=u).className="Service";var o=t(22),a=t(37),l=t(31);function u(f,h){i.call(this,f,h),this.methods={},this._methodsArray=null}u.fromJSON=function(f,h){var d=new u(f,h.options);if(h.methods)for(var p=Object.keys(h.methods),g=0;g<p.length;++g)d.add(o.fromJSON(p[g],h.methods[p[g]]));return h.nested&&d.addJSON(h.nested),d.comment=h.comment,d},u.prototype.toJSON=function(f){var h=i.prototype.toJSON.call(this,f),d=f?!!f.keepComments:!1;return a.toObject(["options",h&&h.options||e,"methods",i.arrayToJSON(this.methodsArray,f)||{},"nested",h&&h.nested||e,"comment",d?this.comment:e])},Object.defineProperty(u.prototype,"methodsArray",{get:function(){return this._methodsArray||(this._methodsArray=a.toArray(this.methods))}});function c(f){return f._methodsArray=null,f}u.prototype.get=function(f){return this.methods[f]||i.prototype.get.call(this,f)},u.prototype.resolveAll=function(){for(var f=this.methodsArray,h=0;h<f.length;++h)f[h].resolve();return i.prototype.resolve.call(this)},u.prototype.add=function(f){if(this.get(f.name))throw Error("duplicate name '"+f.name+"' in "+this);return f instanceof o?(this.methods[f.name]=f,f.parent=this,c(this)):i.prototype.add.call(this,f)},u.prototype.remove=function(f){if(f instanceof o){if(this.methods[f.name]!==f)throw Error(f+" is not a member of "+this);return delete this.methods[f.name],f.parent=null,c(this)}return i.prototype.remove.call(this,f)},u.prototype.create=function(f,h,d){for(var p=new l.Service(f,h,d),g=0,m;g<this.methodsArray.length;++g){var y=a.lcFirst((m=this._methodsArray[g]).resolve().name).replace(/[^$\w_]/g,"");p[y]=a.codegen(["r","c"],a.isReserved(y)?y+"_":y)("return this.rpcCall(m,q,s,r,c)")({m,q:m.resolvedRequestType.ctor,s:m.resolvedResponseType.ctor})}return p}},{22:22,23:23,31:31,37:37}],34:[function(t,n,s){n.exports=g;var i=/[\s{}=;:[\],'"()<>]/g,o=/(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,a=/(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,l=/^ *[*/]+ */,u=/^\s*\*?\/*/,c=/\n/g,f=/\s/,h=/\\(.?)/g,d={0:"\0",r:"\r",n:`
23
+ }`}return u.toString=c,u}i.verbose=!1},{}],4:[function(t,n,s){n.exports=i;function i(){this._listeners={}}i.prototype.on=function(o,a,l){return(this._listeners[o]||(this._listeners[o]=[])).push({fn:a,ctx:l||this}),this},i.prototype.off=function(o,a){if(o===e)this._listeners={};else if(a===e)this._listeners[o]=[];else for(var l=this._listeners[o],u=0;u<l.length;)l[u].fn===a?l.splice(u,1):++u;return this},i.prototype.emit=function(o){var a=this._listeners[o];if(a){for(var l=[],u=1;u<arguments.length;)l.push(arguments[u++]);for(u=0;u<a.length;)a[u].fn.apply(a[u++].ctx,l)}return this}},{}],5:[function(t,n,s){n.exports=l;var i=t(1),o=t(7),a=o("fs");function l(u,c,f){return typeof c=="function"?(f=c,c={}):c||(c={}),f?!c.xhr&&a&&a.readFile?a.readFile(u,function(h,d){return h&&typeof XMLHttpRequest<"u"?l.xhr(u,c,f):h?f(h):f(null,c.binary?d:d.toString("utf8"))}):l.xhr(u,c,f):i(l,this,u,c)}l.xhr=function(u,c,f){var h=new XMLHttpRequest;h.onreadystatechange=function(){if(h.readyState!==4)return e;if(h.status!==0&&h.status!==200)return f(Error("status "+h.status));if(c.binary){var d=h.response;if(!d){d=[];for(var p=0;p<h.responseText.length;++p)d.push(h.responseText.charCodeAt(p)&255)}return f(null,typeof Uint8Array<"u"?new Uint8Array(d):d)}return f(null,h.responseText)},c.binary&&("overrideMimeType"in h&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.responseType="arraybuffer"),h.open("GET",u),h.send()}},{1:1,7:7}],6:[function(t,n,s){n.exports=i(i);function i(c){return typeof Float32Array<"u"?function(){var f=new Float32Array([-0]),h=new Uint8Array(f.buffer),d=h[3]===128;function p(w,_,b){f[0]=w,_[b]=h[0],_[b+1]=h[1],_[b+2]=h[2],_[b+3]=h[3]}function g(w,_,b){f[0]=w,_[b]=h[3],_[b+1]=h[2],_[b+2]=h[1],_[b+3]=h[0]}c.writeFloatLE=d?p:g,c.writeFloatBE=d?g:p;function m(w,_){return h[0]=w[_],h[1]=w[_+1],h[2]=w[_+2],h[3]=w[_+3],f[0]}function y(w,_){return h[3]=w[_],h[2]=w[_+1],h[1]=w[_+2],h[0]=w[_+3],f[0]}c.readFloatLE=d?m:y,c.readFloatBE=d?y:m}():function(){function f(d,p,g,m){var y=p<0?1:0;if(y&&(p=-p),p===0)d(1/p>0?0:2147483648,g,m);else if(isNaN(p))d(2143289344,g,m);else if(p>34028234663852886e22)d((y<<31|2139095040)>>>0,g,m);else if(p<11754943508222875e-54)d((y<<31|Math.round(p/1401298464324817e-60))>>>0,g,m);else{var w=Math.floor(Math.log(p)/Math.LN2),_=Math.round(p*Math.pow(2,-w)*8388608)&8388607;d((y<<31|w+127<<23|_)>>>0,g,m)}}c.writeFloatLE=f.bind(null,o),c.writeFloatBE=f.bind(null,a);function h(d,p,g){var m=d(p,g),y=(m>>31)*2+1,w=m>>>23&255,_=m&8388607;return w===255?_?NaN:y*(1/0):w===0?y*1401298464324817e-60*_:y*Math.pow(2,w-150)*(_+8388608)}c.readFloatLE=h.bind(null,l),c.readFloatBE=h.bind(null,u)}(),typeof Float64Array<"u"?function(){var f=new Float64Array([-0]),h=new Uint8Array(f.buffer),d=h[7]===128;function p(w,_,b){f[0]=w,_[b]=h[0],_[b+1]=h[1],_[b+2]=h[2],_[b+3]=h[3],_[b+4]=h[4],_[b+5]=h[5],_[b+6]=h[6],_[b+7]=h[7]}function g(w,_,b){f[0]=w,_[b]=h[7],_[b+1]=h[6],_[b+2]=h[5],_[b+3]=h[4],_[b+4]=h[3],_[b+5]=h[2],_[b+6]=h[1],_[b+7]=h[0]}c.writeDoubleLE=d?p:g,c.writeDoubleBE=d?g:p;function m(w,_){return h[0]=w[_],h[1]=w[_+1],h[2]=w[_+2],h[3]=w[_+3],h[4]=w[_+4],h[5]=w[_+5],h[6]=w[_+6],h[7]=w[_+7],f[0]}function y(w,_){return h[7]=w[_],h[6]=w[_+1],h[5]=w[_+2],h[4]=w[_+3],h[3]=w[_+4],h[2]=w[_+5],h[1]=w[_+6],h[0]=w[_+7],f[0]}c.readDoubleLE=d?m:y,c.readDoubleBE=d?y:m}():function(){function f(d,p,g,m,y,w){var _=m<0?1:0;if(_&&(m=-m),m===0)d(0,y,w+p),d(1/m>0?0:2147483648,y,w+g);else if(isNaN(m))d(0,y,w+p),d(2146959360,y,w+g);else if(m>17976931348623157e292)d(0,y,w+p),d((_<<31|2146435072)>>>0,y,w+g);else{var b;if(m<22250738585072014e-324)b=m/5e-324,d(b>>>0,y,w+p),d((_<<31|b/4294967296)>>>0,y,w+g);else{var k=Math.floor(Math.log(m)/Math.LN2);k===1024&&(k=1023),b=m*Math.pow(2,-k),d(b*4503599627370496>>>0,y,w+p),d((_<<31|k+1023<<20|b*1048576&1048575)>>>0,y,w+g)}}}c.writeDoubleLE=f.bind(null,o,0,4),c.writeDoubleBE=f.bind(null,a,4,0);function h(d,p,g,m,y){var w=d(m,y+p),_=d(m,y+g),b=(_>>31)*2+1,k=_>>>20&2047,S=4294967296*(_&1048575)+w;return k===2047?S?NaN:b*(1/0):k===0?b*5e-324*S:b*Math.pow(2,k-1075)*(S+4503599627370496)}c.readDoubleLE=h.bind(null,l,0,4),c.readDoubleBE=h.bind(null,u,4,0)}(),c}function o(c,f,h){f[h]=c&255,f[h+1]=c>>>8&255,f[h+2]=c>>>16&255,f[h+3]=c>>>24}function a(c,f,h){f[h]=c>>>24,f[h+1]=c>>>16&255,f[h+2]=c>>>8&255,f[h+3]=c&255}function l(c,f){return(c[f]|c[f+1]<<8|c[f+2]<<16|c[f+3]<<24)>>>0}function u(c,f){return(c[f]<<24|c[f+1]<<16|c[f+2]<<8|c[f+3])>>>0}},{}],7:[function(t,n,s){n.exports=i;function i(o){try{var a=t(o);if(a&&(a.length||Object.keys(a).length))return a}catch{}return null}},{}],8:[function(t,n,s){var i=s,o=i.isAbsolute=function(l){return/^(?:\/|\w+:)/.test(l)},a=i.normalize=function(l){l=l.replace(/\\/g,"/").replace(/\/{2,}/g,"/");var u=l.split("/"),c=o(l),f="";c&&(f=u.shift()+"/");for(var h=0;h<u.length;)u[h]===".."?h>0&&u[h-1]!==".."?u.splice(--h,2):c?u.splice(h,1):++h:u[h]==="."?u.splice(h,1):++h;return f+u.join("/")};i.resolve=function(l,u,c){return c||(u=a(u)),o(u)?u:(c||(l=a(l)),(l=l.replace(/(?:\/|^)[^/]+$/,"")).length?a(l+"/"+u):u)}},{}],9:[function(t,n,s){n.exports=i;function i(o,a,l){var u=l||8192,c=u>>>1,f=null,h=u;return function(d){if(d<1||d>c)return o(d);h+d>u&&(f=o(u),h=0);var p=a.call(f,h,h+=d);return h&7&&(h=(h|7)+1),p}}},{}],10:[function(t,n,s){var i=s;i.length=function(o){for(var a=0,l=0,u=0;u<o.length;++u)l=o.charCodeAt(u),l<128?a+=1:l<2048?a+=2:(l&64512)===55296&&(o.charCodeAt(u+1)&64512)===56320?(++u,a+=4):a+=3;return a},i.read=function(o,a,l){var u=l-a;if(u<1)return"";for(var c=null,f=[],h=0,d;a<l;)d=o[a++],d<128?f[h++]=d:d>191&&d<224?f[h++]=(d&31)<<6|o[a++]&63:d>239&&d<365?(d=((d&7)<<18|(o[a++]&63)<<12|(o[a++]&63)<<6|o[a++]&63)-65536,f[h++]=55296+(d>>10),f[h++]=56320+(d&1023)):f[h++]=(d&15)<<12|(o[a++]&63)<<6|o[a++]&63,h>8191&&((c||(c=[])).push(String.fromCharCode.apply(String,f)),h=0);return c?(h&&c.push(String.fromCharCode.apply(String,f.slice(0,h))),c.join("")):String.fromCharCode.apply(String,f.slice(0,h))},i.write=function(o,a,l){for(var u=l,c,f,h=0;h<o.length;++h)c=o.charCodeAt(h),c<128?a[l++]=c:c<2048?(a[l++]=c>>6|192,a[l++]=c&63|128):(c&64512)===55296&&((f=o.charCodeAt(h+1))&64512)===56320?(c=65536+((c&1023)<<10)+(f&1023),++h,a[l++]=c>>18|240,a[l++]=c>>12&63|128,a[l++]=c>>6&63|128,a[l++]=c&63|128):(a[l++]=c>>12|224,a[l++]=c>>6&63|128,a[l++]=c&63|128);return l-u}},{}],11:[function(t,n,s){n.exports=o;var i=/\/|\./;function o(l,u){i.test(l)||(l="google/protobuf/"+l+".proto",u={nested:{google:{nested:{protobuf:{nested:u}}}}}),o[l]=u}o("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var a;o("duration",{Duration:a={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}}),o("timestamp",{Timestamp:a}),o("empty",{Empty:{fields:{}}}),o("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}}),o("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}}),o("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}}),o.get=function(l){return o[l]||null}},{}],12:[function(t,n,s){var i=s,o=t(15),a=t(37);function l(c,f,h,d){if(f.resolvedType)if(f.resolvedType instanceof o){c("switch(d%s){",d);for(var p=f.resolvedType.values,g=Object.keys(p),m=0;m<g.length;++m)f.repeated&&p[g[m]]===f.typeDefault&&c("default:"),c("case%j:",g[m])("case %i:",p[g[m]])("m%s=%j",d,p[g[m]])("break");c("}")}else c('if(typeof d%s!=="object")',d)("throw TypeError(%j)",f.fullName+": object expected")("m%s=types[%i].fromObject(d%s)",d,h,d);else{var y=!1;switch(f.type){case"double":case"float":c("m%s=Number(d%s)",d,d);break;case"uint32":case"fixed32":c("m%s=d%s>>>0",d,d);break;case"int32":case"sint32":case"sfixed32":c("m%s=d%s|0",d,d);break;case"uint64":y=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":c("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",d,d,y)('else if(typeof d%s==="string")',d)("m%s=parseInt(d%s,10)",d,d)('else if(typeof d%s==="number")',d)("m%s=d%s",d,d)('else if(typeof d%s==="object")',d)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",d,d,d,y?"true":"");break;case"bytes":c('if(typeof d%s==="string")',d)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",d,d,d)("else if(d%s.length)",d)("m%s=d%s",d,d);break;case"string":c("m%s=String(d%s)",d,d);break;case"bool":c("m%s=Boolean(d%s)",d,d);break}}return c}i.fromObject=function(c){var f=c.fieldsArray,h=a.codegen(["d"],c.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!f.length)return h("return new this.ctor");h("var m=new this.ctor");for(var d=0;d<f.length;++d){var p=f[d].resolve(),g=a.safeProp(p.name);p.map?(h("if(d%s){",g)('if(typeof d%s!=="object")',g)("throw TypeError(%j)",p.fullName+": object expected")("m%s={}",g)("for(var ks=Object.keys(d%s),i=0;i<ks.length;++i){",g),l(h,p,d,g+"[ks[i]]")("}")("}")):p.repeated?(h("if(d%s){",g)("if(!Array.isArray(d%s))",g)("throw TypeError(%j)",p.fullName+": array expected")("m%s=[]",g)("for(var i=0;i<d%s.length;++i){",g),l(h,p,d,g+"[i]")("}")("}")):(p.resolvedType instanceof o||h("if(d%s!=null){",g),l(h,p,d,g),p.resolvedType instanceof o||h("}"))}return h("return m")};function u(c,f,h,d){if(f.resolvedType)f.resolvedType instanceof o?c("d%s=o.enums===String?types[%i].values[m%s]:m%s",d,h,d,d):c("d%s=types[%i].toObject(m%s,o)",d,h,d);else{var p=!1;switch(f.type){case"double":case"float":c("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",d,d,d,d);break;case"uint64":p=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":c('if(typeof m%s==="number")',d)("d%s=o.longs===String?String(m%s):m%s",d,d,d)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",d,d,d,d,p?"true":"",d);break;case"bytes":c("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",d,d,d,d,d);break;default:c("d%s=m%s",d,d);break}}return c}i.toObject=function(c){var f=c.fieldsArray.slice().sort(a.compareFieldsById);if(!f.length)return a.codegen()("return {}");for(var h=a.codegen(["m","o"],c.name+"$toObject")("if(!o)")("o={}")("var d={}"),d=[],p=[],g=[],m=0;m<f.length;++m)f[m].partOf||(f[m].resolve().repeated?d:f[m].map?p:g).push(f[m]);if(d.length){for(h("if(o.arrays||o.defaults){"),m=0;m<d.length;++m)h("d%s=[]",a.safeProp(d[m].name));h("}")}if(p.length){for(h("if(o.objects||o.defaults){"),m=0;m<p.length;++m)h("d%s={}",a.safeProp(p[m].name));h("}")}if(g.length){for(h("if(o.defaults){"),m=0;m<g.length;++m){var y=g[m],w=a.safeProp(y.name);y.resolvedType instanceof o?h("d%s=o.enums===String?%j:%j",w,y.resolvedType.valuesById[y.typeDefault],y.typeDefault):y.long?h("if(util.Long){")("var n=new util.Long(%i,%i,%j)",y.typeDefault.low,y.typeDefault.high,y.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n",w)("}else")("d%s=o.longs===String?%j:%i",w,y.typeDefault.toString(),y.typeDefault.toNumber()):y.bytes?h("d%s=o.bytes===String?%j:%s",w,String.fromCharCode.apply(String,y.typeDefault),"["+Array.prototype.slice.call(y.typeDefault).join(",")+"]"):h("d%s=%j",w,y.typeDefault)}h("}")}var _=!1;for(m=0;m<f.length;++m){var y=f[m],b=c._fieldsArray.indexOf(y),w=a.safeProp(y.name);y.map?(_||(_=!0,h("var ks2")),h("if(m%s&&(ks2=Object.keys(m%s)).length){",w,w)("d%s={}",w)("for(var j=0;j<ks2.length;++j){"),u(h,y,b,w+"[ks2[j]]")("}")):y.repeated?(h("if(m%s&&m%s.length){",w,w)("d%s=[]",w)("for(var j=0;j<m%s.length;++j){",w),u(h,y,b,w+"[j]")("}")):(h("if(m%s!=null&&m.hasOwnProperty(%j)){",w,y.name),u(h,y,b,w),y.partOf&&h("if(o.oneofs)")("d%s=%j",a.safeProp(y.partOf.name),y.name)),h("}")}return h("return d")}},{15:15,37:37}],13:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),a=t(37);function l(c){return"missing required '"+c.name+"'"}function u(c){var f=a.codegen(["r","l"],c.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(c.fieldsArray.filter(function(y){return y.map}).length?",k":""))("while(r.pos<c){")("var t=r.uint32()");c.group&&f("if((t&7)===4)")("break"),f("switch(t>>>3){");for(var h=0;h<c.fieldsArray.length;++h){var d=c._fieldsArray[h].resolve(),p=d.resolvedType instanceof i?"int32":d.type,g="m"+a.safeProp(d.name);f("case %i:",d.id),d.map?(f("r.skip().pos++")("if(%s===util.emptyObject)",g)("%s={}",g)("k=r.%s()",d.keyType)("r.pos++"),o.long[d.keyType]!==e?o.basic[p]===e?f('%s[typeof k==="object"?util.longToHash(k):k]=types[%i].decode(r,r.uint32())',g,h):f('%s[typeof k==="object"?util.longToHash(k):k]=r.%s()',g,p):o.basic[p]===e?f("%s[k]=types[%i].decode(r,r.uint32())",g,h):f("%s[k]=r.%s()",g,p)):d.repeated?(f("if(!(%s&&%s.length))",g,g)("%s=[]",g),o.packed[p]!==e&&f("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos<c2)")("%s.push(r.%s())",g,p)("}else"),o.basic[p]===e?f(d.resolvedType.group?"%s.push(types[%i].decode(r))":"%s.push(types[%i].decode(r,r.uint32()))",g,h):f("%s.push(r.%s())",g,p)):o.basic[p]===e?f(d.resolvedType.group?"%s=types[%i].decode(r)":"%s=types[%i].decode(r,r.uint32())",g,h):f("%s=r.%s()",g,p),f("break")}for(f("default:")("r.skipType(t&7)")("break")("}")("}"),h=0;h<c._fieldsArray.length;++h){var m=c._fieldsArray[h];m.required&&f("if(!m.hasOwnProperty(%j))",m.name)("throw util.ProtocolError(%j,{instance:m})",l(m))}return f("return m")}},{15:15,36:36,37:37}],14:[function(t,n,s){n.exports=u;var i=t(15),o=t(36),a=t(37);function l(c,f,h,d){return f.resolvedType.group?c("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",h,d,(f.id<<3|3)>>>0,(f.id<<3|4)>>>0):c("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",h,d,(f.id<<3|2)>>>0)}function u(c){for(var f=a.codegen(["m","w"],c.name+"$encode")("if(!w)")("w=Writer.create()"),p,h,d=c.fieldsArray.slice().sort(a.compareFieldsById),p=0;p<d.length;++p){var g=d[p].resolve(),m=c._fieldsArray.indexOf(g),y=g.resolvedType instanceof i?"int32":g.type,w=o.basic[y];h="m"+a.safeProp(g.name),g.map?(f("if(%s!=null&&m.hasOwnProperty(%j)){",h,g.name)("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){",h)("w.uint32(%i).fork().uint32(%i).%s(ks[i])",(g.id<<3|2)>>>0,8|o.mapKey[g.keyType],g.keyType),w===e?f("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",m,h):f(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|w,y,h),f("}")("}")):g.repeated?(f("if(%s!=null&&%s.length){",h,h),g.packed&&o.packed[y]!==e?f("w.uint32(%i).fork()",(g.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",h)("w.%s(%s[i])",y,h)("w.ldelim()"):(f("for(var i=0;i<%s.length;++i)",h),w===e?l(f,g,m,h+"[i]"):f("w.uint32(%i).%s(%s[i])",(g.id<<3|w)>>>0,y,h)),f("}")):(g.optional&&f("if(%s!=null&&m.hasOwnProperty(%j))",h,g.name),w===e?l(f,g,m,h):f("w.uint32(%i).%s(%s)",(g.id<<3|w)>>>0,y,h))}return f("return w")}},{15:15,36:36,37:37}],15:[function(t,n,s){n.exports=l;var i=t(24);((l.prototype=Object.create(i.prototype)).constructor=l).className="Enum";var o=t(23),a=t(37);function l(u,c,f,h,d){if(i.call(this,u,f),c&&typeof c!="object")throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=h,this.comments=d||{},this.reserved=e,c)for(var p=Object.keys(c),g=0;g<p.length;++g)typeof c[p[g]]=="number"&&(this.valuesById[this.values[p[g]]=c[p[g]]]=p[g])}l.fromJSON=function(u,c){var f=new l(u,c.values,c.options,c.comment,c.comments);return f.reserved=c.reserved,f},l.prototype.toJSON=function(u){var c=u?!!u.keepComments:!1;return a.toObject(["options",this.options,"values",this.values,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"comment",c?this.comment:e,"comments",c?this.comments:e])},l.prototype.add=function(u,c,f){if(!a.isString(u))throw TypeError("name must be a string");if(!a.isInteger(c))throw TypeError("id must be an integer");if(this.values[u]!==e)throw Error("duplicate name '"+u+"' in "+this);if(this.isReservedId(c))throw Error("id "+c+" is reserved in "+this);if(this.isReservedName(u))throw Error("name '"+u+"' is reserved in "+this);if(this.valuesById[c]!==e){if(!(this.options&&this.options.allow_alias))throw Error("duplicate id "+c+" in "+this);this.values[u]=c}else this.valuesById[this.values[u]=c]=u;return this.comments[u]=f||null,this},l.prototype.remove=function(u){if(!a.isString(u))throw TypeError("name must be a string");var c=this.values[u];if(c==null)throw Error("name '"+u+"' does not exist in "+this);return delete this.valuesById[c],delete this.values[u],delete this.comments[u],this},l.prototype.isReservedId=function(u){return o.isReservedId(this.reserved,u)},l.prototype.isReservedName=function(u){return o.isReservedName(this.reserved,u)}},{23:23,24:24,37:37}],16:[function(t,n,s){n.exports=f;var i=t(24);((f.prototype=Object.create(i.prototype)).constructor=f).className="Field";var o=t(15),a=t(36),l=t(37),u,c=/^required|optional|repeated$/;f.fromJSON=function(h,d){return new f(h,d.id,d.type,d.rule,d.extend,d.options,d.comment)};function f(h,d,p,g,m,y,w){if(l.isObject(g)?(w=m,y=g,g=m=e):l.isObject(m)&&(w=y,y=m,m=e),i.call(this,h,y),!l.isInteger(d)||d<0)throw TypeError("id must be a non-negative integer");if(!l.isString(p))throw TypeError("type must be a string");if(g!==e&&!c.test(g=g.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(m!==e&&!l.isString(m))throw TypeError("extend must be a string");this.rule=g&&g!=="optional"?g:e,this.type=p,this.id=d,this.extend=m||e,this.required=g==="required",this.optional=!this.required,this.repeated=g==="repeated",this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=l.Long?a.long[p]!==e:!1,this.bytes=p==="bytes",this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=w}Object.defineProperty(f.prototype,"packed",{get:function(){return this._packed===null&&(this._packed=this.getOption("packed")!==!1),this._packed}}),f.prototype.setOption=function(h,d,p){return h==="packed"&&(this._packed=null),i.prototype.setOption.call(this,h,d,p)},f.prototype.toJSON=function(h){var d=h?!!h.keepComments:!1;return l.toObject(["rule",this.rule!=="optional"&&this.rule||e,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",d?this.comment:e])},f.prototype.resolve=function(){if(this.resolved)return this;if((this.typeDefault=a.defaults[this.type])===e&&(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof u?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]),this.options&&this.options.default!=null&&(this.typeDefault=this.options.default,this.resolvedType instanceof o&&typeof this.typeDefault=="string"&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&((this.options.packed===!0||this.options.packed!==e&&this.resolvedType&&!(this.resolvedType instanceof o))&&delete this.options.packed,Object.keys(this.options).length||(this.options=e)),this.long)this.typeDefault=l.Long.fromNumber(this.typeDefault,this.type.charAt(0)==="u"),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&typeof this.typeDefault=="string"){var h;l.base64.test(this.typeDefault)?l.base64.decode(this.typeDefault,h=l.newBuffer(l.base64.length(this.typeDefault)),0):l.utf8.write(this.typeDefault,h=l.newBuffer(l.utf8.length(this.typeDefault)),0),this.typeDefault=h}return this.map?this.defaultValue=l.emptyObject:this.repeated?this.defaultValue=l.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof u&&(this.parent.ctor.prototype[this.name]=this.defaultValue),i.prototype.resolve.call(this)},f.d=function(h,d,p,g){return typeof d=="function"?d=l.decorateType(d).name:d&&typeof d=="object"&&(d=l.decorateEnum(d).name),function(m,y){l.decorateType(m.constructor).add(new f(y,h,d,p,{default:g}))}},f._configure=function(h){u=h}},{15:15,24:24,36:36,37:37}],17:[function(t,n,s){var i=n.exports=t(18);i.build="light";function o(l,u,c){return typeof u=="function"?(c=u,u=new i.Root):u||(u=new i.Root),u.load(l,c)}i.load=o;function a(l,u){return u||(u=new i.Root),u.loadSync(l)}i.loadSync=a,i.encoder=t(14),i.decoder=t(13),i.verifier=t(40),i.converter=t(12),i.ReflectionObject=t(24),i.Namespace=t(23),i.Root=t(29),i.Enum=t(15),i.Type=t(35),i.Field=t(16),i.OneOf=t(25),i.MapField=t(20),i.Service=t(33),i.Method=t(22),i.Message=t(21),i.wrappers=t(41),i.types=t(36),i.util=t(37),i.ReflectionObject._configure(i.Root),i.Namespace._configure(i.Type,i.Service),i.Root._configure(i.Type),i.Field._configure(i.Type)},{12:12,13:13,14:14,15:15,16:16,18:18,20:20,21:21,22:22,23:23,24:24,25:25,29:29,33:33,35:35,36:36,37:37,40:40,41:41}],18:[function(t,n,s){var i=s;i.build="minimal",i.Writer=t(42),i.BufferWriter=t(43),i.Reader=t(27),i.BufferReader=t(28),i.util=t(39),i.rpc=t(31),i.roots=t(30),i.configure=o;function o(){i.Reader._configure(i.BufferReader),i.util._configure()}i.Writer._configure(i.BufferWriter),o()},{27:27,28:28,30:30,31:31,39:39,42:42,43:43}],19:[function(t,n,s){var i=n.exports=t(17);i.build="full",i.tokenize=t(34),i.parse=t(26),i.common=t(11),i.Root._configure(i.Type,i.parse,i.common)},{11:11,17:17,26:26,34:34}],20:[function(t,n,s){n.exports=l;var i=t(16);((l.prototype=Object.create(i.prototype)).constructor=l).className="MapField";var o=t(36),a=t(37);function l(u,c,f,h,d,p){if(i.call(this,u,c,h,e,e,d,p),!a.isString(f))throw TypeError("keyType must be a string");this.keyType=f,this.resolvedKeyType=null,this.map=!0}l.fromJSON=function(u,c){return new l(u,c.id,c.keyType,c.type,c.options,c.comment)},l.prototype.toJSON=function(u){var c=u?!!u.keepComments:!1;return a.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",c?this.comment:e])},l.prototype.resolve=function(){if(this.resolved)return this;if(o.mapKey[this.keyType]===e)throw Error("invalid key type: "+this.keyType);return i.prototype.resolve.call(this)},l.d=function(u,c,f){return typeof f=="function"?f=a.decorateType(f).name:f&&typeof f=="object"&&(f=a.decorateEnum(f).name),function(h,d){a.decorateType(h.constructor).add(new l(d,u,c,f))}}},{16:16,36:36,37:37}],21:[function(t,n,s){n.exports=o;var i=t(39);function o(a){if(a)for(var l=Object.keys(a),u=0;u<l.length;++u)this[l[u]]=a[l[u]]}o.create=function(a){return this.$type.create(a)},o.encode=function(a,l){return this.$type.encode(a,l)},o.encodeDelimited=function(a,l){return this.$type.encodeDelimited(a,l)},o.decode=function(a){return this.$type.decode(a)},o.decodeDelimited=function(a){return this.$type.decodeDelimited(a)},o.verify=function(a){return this.$type.verify(a)},o.fromObject=function(a){return this.$type.fromObject(a)},o.toObject=function(a,l){return this.$type.toObject(a,l)},o.prototype.toJSON=function(){return this.$type.toObject(this,i.toJSONOptions)}},{39:39}],22:[function(t,n,s){n.exports=a;var i=t(24);((a.prototype=Object.create(i.prototype)).constructor=a).className="Method";var o=t(37);function a(l,u,c,f,h,d,p,g){if(o.isObject(h)?(p=h,h=d=e):o.isObject(d)&&(p=d,d=e),!(u===e||o.isString(u)))throw TypeError("type must be a string");if(!o.isString(c))throw TypeError("requestType must be a string");if(!o.isString(f))throw TypeError("responseType must be a string");i.call(this,l,p),this.type=u||"rpc",this.requestType=c,this.requestStream=h?!0:e,this.responseType=f,this.responseStream=d?!0:e,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=g}a.fromJSON=function(l,u){return new a(l,u.type,u.requestType,u.responseType,u.requestStream,u.responseStream,u.options,u.comment)},a.prototype.toJSON=function(l){var u=l?!!l.keepComments:!1;return o.toObject(["type",this.type!=="rpc"&&this.type||e,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",u?this.comment:e])},a.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),i.prototype.resolve.call(this))}},{24:24,37:37}],23:[function(t,n,s){n.exports=h;var i=t(24);((h.prototype=Object.create(i.prototype)).constructor=h).className="Namespace";var o=t(15),a=t(16),l=t(37),u,c;h.fromJSON=function(p,g){return new h(p,g.options).addJSON(g.nested)};function f(p,g){if(!(p&&p.length))return e;for(var m={},y=0;y<p.length;++y)m[p[y].name]=p[y].toJSON(g);return m}h.arrayToJSON=f,h.isReservedId=function(p,g){if(p){for(var m=0;m<p.length;++m)if(typeof p[m]!="string"&&p[m][0]<=g&&p[m][1]>=g)return!0}return!1},h.isReservedName=function(p,g){if(p){for(var m=0;m<p.length;++m)if(p[m]===g)return!0}return!1};function h(p,g){i.call(this,p,g),this.nested=e,this._nestedArray=null}function d(p){return p._nestedArray=null,p}Object.defineProperty(h.prototype,"nestedArray",{get:function(){return this._nestedArray||(this._nestedArray=l.toArray(this.nested))}}),h.prototype.toJSON=function(p){return l.toObject(["options",this.options,"nested",f(this.nestedArray,p)])},h.prototype.addJSON=function(p){var g=this;if(p)for(var m=Object.keys(p),y=0,w;y<m.length;++y)w=p[m[y]],g.add((w.fields!==e?u.fromJSON:w.values!==e?o.fromJSON:w.methods!==e?c.fromJSON:w.id!==e?a.fromJSON:h.fromJSON)(m[y],w));return this},h.prototype.get=function(p){return this.nested&&this.nested[p]||null},h.prototype.getEnum=function(p){if(this.nested&&this.nested[p]instanceof o)return this.nested[p].values;throw Error("no such enum: "+p)},h.prototype.add=function(p){if(!(p instanceof a&&p.extend!==e||p instanceof u||p instanceof o||p instanceof c||p instanceof h))throw TypeError("object must be a valid nested object");if(!this.nested)this.nested={};else{var g=this.get(p.name);if(g)if(g instanceof h&&p instanceof h&&!(g instanceof u||g instanceof c)){for(var m=g.nestedArray,y=0;y<m.length;++y)p.add(m[y]);this.remove(g),this.nested||(this.nested={}),p.setOptions(g.options,!0)}else throw Error("duplicate name '"+p.name+"' in "+this)}return this.nested[p.name]=p,p.onAdd(this),d(this)},h.prototype.remove=function(p){if(!(p instanceof i))throw TypeError("object must be a ReflectionObject");if(p.parent!==this)throw Error(p+" is not a member of "+this);return delete this.nested[p.name],Object.keys(this.nested).length||(this.nested=e),p.onRemove(this),d(this)},h.prototype.define=function(p,g){if(l.isString(p))p=p.split(".");else if(!Array.isArray(p))throw TypeError("illegal path");if(p&&p.length&&p[0]==="")throw Error("path must be relative");for(var m=this;p.length>0;){var y=p.shift();if(m.nested&&m.nested[y]){if(m=m.nested[y],!(m instanceof h))throw Error("path conflicts with non-namespace objects")}else m.add(m=new h(y))}return g&&m.addJSON(g),m},h.prototype.resolveAll=function(){for(var p=this.nestedArray,g=0;g<p.length;)p[g]instanceof h?p[g++].resolveAll():p[g++].resolve();return this.resolve()},h.prototype.lookup=function(p,g,m){if(typeof g=="boolean"?(m=g,g=e):g&&!Array.isArray(g)&&(g=[g]),l.isString(p)&&p.length){if(p===".")return this.root;p=p.split(".")}else if(!p.length)return this;if(p[0]==="")return this.root.lookup(p.slice(1),g);var y=this.get(p[0]);if(y){if(p.length===1){if(!g||g.indexOf(y.constructor)>-1)return y}else if(y instanceof h&&(y=y.lookup(p.slice(1),g,!0)))return y}else for(var w=0;w<this.nestedArray.length;++w)if(this._nestedArray[w]instanceof h&&(y=this._nestedArray[w].lookup(p,g,!0)))return y;return this.parent===null||m?null:this.parent.lookup(p,g)},h.prototype.lookupType=function(p){var g=this.lookup(p,[u]);if(!g)throw Error("no such type: "+p);return g},h.prototype.lookupEnum=function(p){var g=this.lookup(p,[o]);if(!g)throw Error("no such Enum '"+p+"' in "+this);return g},h.prototype.lookupTypeOrEnum=function(p){var g=this.lookup(p,[u,o]);if(!g)throw Error("no such Type or Enum '"+p+"' in "+this);return g},h.prototype.lookupService=function(p){var g=this.lookup(p,[c]);if(!g)throw Error("no such Service '"+p+"' in "+this);return g},h._configure=function(p,g){u=p,c=g}},{15:15,16:16,24:24,37:37}],24:[function(t,n,s){n.exports=a,a.className="ReflectionObject";var i=t(37),o;function a(l,u){if(!i.isString(l))throw TypeError("name must be a string");if(u&&!i.isObject(u))throw TypeError("options must be an object");this.options=u,this.name=l,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(a.prototype,{root:{get:function(){for(var l=this;l.parent!==null;)l=l.parent;return l}},fullName:{get:function(){for(var l=[this.name],u=this.parent;u;)l.unshift(u.name),u=u.parent;return l.join(".")}}}),a.prototype.toJSON=function(){throw Error()},a.prototype.onAdd=function(l){this.parent&&this.parent!==l&&this.parent.remove(this),this.parent=l,this.resolved=!1;var u=l.root;u instanceof o&&u._handleAdd(this)},a.prototype.onRemove=function(l){var u=l.root;u instanceof o&&u._handleRemove(this),this.parent=null,this.resolved=!1},a.prototype.resolve=function(){return this.resolved?this:(this.root instanceof o&&(this.resolved=!0),this)},a.prototype.getOption=function(l){return this.options?this.options[l]:e},a.prototype.setOption=function(l,u,c){return(!c||!this.options||this.options[l]===e)&&((this.options||(this.options={}))[l]=u),this},a.prototype.setOptions=function(l,u){if(l)for(var c=Object.keys(l),f=0;f<c.length;++f)this.setOption(c[f],l[c[f]],u);return this},a.prototype.toString=function(){var l=this.constructor.className,u=this.fullName;return u.length?l+" "+u:l},a._configure=function(l){o=l}},{37:37}],25:[function(t,n,s){n.exports=l;var i=t(24);((l.prototype=Object.create(i.prototype)).constructor=l).className="OneOf";var o=t(16),a=t(37);function l(c,f,h,d){if(Array.isArray(f)||(h=f,f=e),i.call(this,c,h),!(f===e||Array.isArray(f)))throw TypeError("fieldNames must be an Array");this.oneof=f||[],this.fieldsArray=[],this.comment=d}l.fromJSON=function(c,f){return new l(c,f.oneof,f.options,f.comment)},l.prototype.toJSON=function(c){var f=c?!!c.keepComments:!1;return a.toObject(["options",this.options,"oneof",this.oneof,"comment",f?this.comment:e])};function u(c){if(c.parent)for(var f=0;f<c.fieldsArray.length;++f)c.fieldsArray[f].parent||c.parent.add(c.fieldsArray[f])}l.prototype.add=function(c){if(!(c instanceof o))throw TypeError("field must be a Field");return c.parent&&c.parent!==this.parent&&c.parent.remove(c),this.oneof.push(c.name),this.fieldsArray.push(c),c.partOf=this,u(this),this},l.prototype.remove=function(c){if(!(c instanceof o))throw TypeError("field must be a Field");var f=this.fieldsArray.indexOf(c);if(f<0)throw Error(c+" is not a member of "+this);return this.fieldsArray.splice(f,1),f=this.oneof.indexOf(c.name),f>-1&&this.oneof.splice(f,1),c.partOf=null,this},l.prototype.onAdd=function(c){i.prototype.onAdd.call(this,c);for(var f=this,h=0;h<this.oneof.length;++h){var d=c.get(this.oneof[h]);d&&!d.partOf&&(d.partOf=f,f.fieldsArray.push(d))}u(this)},l.prototype.onRemove=function(c){for(var f=0,h;f<this.fieldsArray.length;++f)(h=this.fieldsArray[f]).parent&&h.parent.remove(h);i.prototype.onRemove.call(this,c)},l.d=function(){for(var c=new Array(arguments.length),f=0;f<arguments.length;)c[f]=arguments[f++];return function(h,d){a.decorateType(h.constructor).add(new l(d,c)),Object.defineProperty(h,d,{get:a.oneOfGetter(c),set:a.oneOfSetter(c)})}}},{16:16,24:24,37:37}],26:[function(t,n,s){n.exports=x,x.filename=null,x.defaults={keepCase:!1};var i=t(34),o=t(29),a=t(35),l=t(16),u=t(20),c=t(25),f=t(15),h=t(33),d=t(22),p=t(36),g=t(37),m=/^[1-9][0-9]*$/,y=/^-?[1-9][0-9]*$/,w=/^0[x][0-9a-fA-F]+$/,_=/^-?0[x][0-9a-fA-F]+$/,b=/^0[0-7]+$/,k=/^-?0[0-7]+$/,S=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,E=/^[a-zA-Z_][a-zA-Z_0-9]*$/,R=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/,D=/^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/;function x(J,me,H){me instanceof o||(H=me,me=new o),H||(H=x.defaults);var Q=i(J,H.alternateCommentMode||!1),B=Q.next,he=Q.push,le=Q.peek,j=Q.skip,at=Q.cmnt,St=!0,lt,z,re,ie,ue=!1,ke=me,Ae=H.keepCase?function(A){return A}:g.camelCase;function q(A,O,L){var M=x.filename;return L||(x.filename=null),Error("illegal "+(O||"token")+" '"+A+"' ("+(M?M+", ":"")+"line "+Q.line+")")}function Xe(){var A=[],O;do{if((O=B())!=='"'&&O!=="'")throw q(O);A.push(B()),j(O),O=le()}while(O==='"'||O==="'");return A.join("")}function Go(A){var O=B();switch(O){case"'":case'"':return he(O),Xe();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return Jh(O,!0)}catch{if(R.test(O))return O;throw q(O,"value")}}function Un(A,O){var L,M;do O&&((L=le())==='"'||L==="'")?A.push(Xe()):A.push([M=jt(B()),j("to",!0)?jt(B()):M]);while(j(",",!0));j(";")}function Jh(A,O){var L=1;switch(A.charAt(0)==="-"&&(L=-1,A=A.substring(1)),A){case"inf":case"INF":case"Inf":return L*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(m.test(A))return L*parseInt(A,10);if(w.test(A))return L*parseInt(A,16);if(b.test(A))return L*parseInt(A,8);if(S.test(A))return L*parseFloat(A);throw q(A,"number",O)}function jt(A,O){switch(A){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!O&&A.charAt(0)==="-")throw q(A,"id");if(y.test(A))return parseInt(A,10);if(_.test(A))return parseInt(A,16);if(k.test(A))return parseInt(A,8);throw q(A,"id")}function Zh(){if(lt!==e)throw q("package");if(lt=B(),!R.test(lt))throw q(lt,"name");ke=ke.define(lt),j(";")}function Gh(){var A=le(),O;switch(A){case"weak":O=re||(re=[]),B();break;case"public":B();default:O=z||(z=[]);break}A=Xe(),j(";"),O.push(A)}function Yh(){if(j("="),ie=Xe(),ue=ie==="proto3",!ue&&ie!=="proto2")throw q(ie,"syntax");j(";")}function Bn(A,O){switch(O){case"option":return Ze(A,O),j(";"),!0;case"message":return Kh(A,O),!0;case"enum":return tf(A,O),!0;case"service":return nf(A,O),!0;case"extend":return of(A,O),!0}return!1}function Je(A,O,L){var M=Q.line;if(A&&(A.comment=at(),A.filename=x.filename),j("{",!0)){for(var oe;(oe=B())!=="}";)O(oe);j(";",!0)}else L&&L(),j(";"),A&&typeof A.comment!="string"&&(A.comment=at(M))}function Kh(A,O){if(!E.test(O=B()))throw q(O,"type name");var L=new a(O);Je(L,function(M){if(!Bn(L,M))switch(M){case"map":Xh(L);break;case"required":case"optional":case"repeated":Ut(L,M);break;case"oneof":ef(L,M);break;case"extensions":Un(L.extensions||(L.extensions=[]));break;case"reserved":Un(L.reserved||(L.reserved=[]),!0);break;default:if(!ue||!R.test(M))throw q(M);he(M),Ut(L,"optional");break}}),A.add(L)}function Ut(A,O,L){var M=B();if(M==="group"){Qh(A,O);return}if(!R.test(M))throw q(M,"type");var oe=B();if(!E.test(oe))throw q(oe,"name");oe=Ae(oe),j("=");var fe=new l(oe,jt(B()),M,O,L);Je(fe,function(et){if(et==="option")Ze(fe,et),j(";");else throw q(et)},function(){Wn(fe)}),A.add(fe),!ue&&fe.repeated&&(p.packed[M]!==e||p.basic[M]===e)&&fe.setOption("packed",!1,!0)}function Qh(A,O){var L=B();if(!E.test(L))throw q(L,"name");var M=g.lcFirst(L);L===M&&(L=g.ucFirst(L)),j("=");var oe=jt(B()),fe=new a(L);fe.group=!0;var et=new l(M,oe,L,O);et.filename=x.filename,Je(fe,function(_t){switch(_t){case"option":Ze(fe,_t),j(";");break;case"required":case"optional":case"repeated":Ut(fe,_t);break;default:throw q(_t)}}),A.add(fe).add(et)}function Xh(A){j("<");var O=B();if(p.mapKey[O]===e)throw q(O,"type");j(",");var L=B();if(!R.test(L))throw q(L,"type");j(">");var M=B();if(!E.test(M))throw q(M,"name");j("=");var oe=new u(Ae(M),jt(B()),O,L);Je(oe,function(fe){if(fe==="option")Ze(oe,fe),j(";");else throw q(fe)},function(){Wn(oe)}),A.add(oe)}function ef(A,O){if(!E.test(O=B()))throw q(O,"name");var L=new c(Ae(O));Je(L,function(M){M==="option"?(Ze(L,M),j(";")):(he(M),Ut(L,"optional"))}),A.add(L)}function tf(A,O){if(!E.test(O=B()))throw q(O,"name");var L=new f(O);Je(L,function(M){switch(M){case"option":Ze(L,M),j(";");break;case"reserved":Un(L.reserved||(L.reserved=[]),!0);break;default:rf(L,M)}}),A.add(L)}function rf(A,O){if(!E.test(O))throw q(O,"name");j("=");var L=jt(B(),!0),M={};Je(M,function(oe){if(oe==="option")Ze(M,oe),j(";");else throw q(oe)},function(){Wn(M)}),A.add(O,L,M.comment)}function Ze(A,O){var L=j("(",!0);if(!R.test(O=B()))throw q(O,"name");var M=O;L&&(j(")"),M="("+M+")",O=le(),D.test(O)&&(M+=O,B())),j("="),$n(A,M)}function $n(A,O){if(j("{",!0))do{if(!E.test(Ie=B()))throw q(Ie,"name");le()==="{"?$n(A,O+"."+Ie):(j(":"),le()==="{"?$n(A,O+"."+Ie):Yo(A,O+"."+Ie,Go()))}while(!j("}",!0));else Yo(A,O,Go())}function Yo(A,O,L){A.setOption&&A.setOption(O,L)}function Wn(A){if(j("[",!0)){do Ze(A,"option");while(j(",",!0));j("]")}return A}function nf(A,O){if(!E.test(O=B()))throw q(O,"service name");var L=new h(O);Je(L,function(M){if(!Bn(L,M))if(M==="rpc")sf(L,M);else throw q(M)}),A.add(L)}function sf(A,O){var L=O;if(!E.test(O=B()))throw q(O,"name");var M=O,oe,fe,et,_t;if(j("("),j("stream",!0)&&(fe=!0),!R.test(O=B())||(oe=O,j(")"),j("returns"),j("("),j("stream",!0)&&(_t=!0),!R.test(O=B())))throw q(O);et=O,j(")");var qn=new d(M,L,oe,et,fe,_t);Je(qn,function(Vn){if(Vn==="option")Ze(qn,Vn),j(";");else throw q(Vn)}),A.add(qn)}function of(A,O){if(!R.test(O=B()))throw q(O,"reference");var L=O;Je(null,function(M){switch(M){case"required":case"repeated":case"optional":Ut(A,M,L);break;default:if(!ue||!R.test(M))throw q(M);he(M),Ut(A,"optional",L);break}})}for(var Ie;(Ie=B())!==null;)switch(Ie){case"package":if(!St)throw q(Ie);Zh();break;case"import":if(!St)throw q(Ie);Gh();break;case"syntax":if(!St)throw q(Ie);Yh();break;case"option":if(!St)throw q(Ie);Ze(ke,Ie),j(";");break;default:if(Bn(ke,Ie)){St=!1;continue}throw q(Ie)}return x.filename=null,{package:lt,imports:z,weakImports:re,syntax:ie,root:me}}},{15:15,16:16,20:20,22:22,25:25,29:29,33:33,34:34,35:35,36:36,37:37}],27:[function(t,n,s){n.exports=c;var i=t(39),o,a=i.LongBits,l=i.utf8;function u(g,m){return RangeError("index out of range: "+g.pos+" + "+(m||1)+" > "+g.len)}function c(g){this.buf=g,this.pos=0,this.len=g.length}var f=typeof Uint8Array<"u"?function(g){if(g instanceof Uint8Array||Array.isArray(g))return new c(g);throw Error("illegal buffer")}:function(g){if(Array.isArray(g))return new c(g);throw Error("illegal buffer")};c.create=i.Buffer?function(g){return(c.create=function(m){return i.Buffer.isBuffer(m)?new o(m):f(m)})(g)}:f,c.prototype._slice=i.Array.prototype.subarray||i.Array.prototype.slice,c.prototype.uint32=function(){var g=4294967295;return function(){if(g=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(g=(g|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(g=(g|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return g;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return g}}(),c.prototype.int32=function(){return this.uint32()|0},c.prototype.sint32=function(){var g=this.uint32();return g>>>1^-(g&1)|0};function h(){var g=new a(0,0),m=0;if(this.len-this.pos>4){for(;m<4;++m)if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g;if(g.lo=(g.lo|(this.buf[this.pos]&127)<<28)>>>0,g.hi=(g.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return g;m=0}else{for(;m<3;++m){if(this.pos>=this.len)throw u(this);if(g.lo=(g.lo|(this.buf[this.pos]&127)<<m*7)>>>0,this.buf[this.pos++]<128)return g}return g.lo=(g.lo|(this.buf[this.pos++]&127)<<m*7)>>>0,g}if(this.len-this.pos>4){for(;m<5;++m)if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}else for(;m<5;++m){if(this.pos>=this.len)throw u(this);if(g.hi=(g.hi|(this.buf[this.pos]&127)<<m*7+3)>>>0,this.buf[this.pos++]<128)return g}throw Error("invalid varint encoding")}c.prototype.bool=function(){return this.uint32()!==0};function d(g,m){return(g[m-4]|g[m-3]<<8|g[m-2]<<16|g[m-1]<<24)>>>0}c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return d(this.buf,this.pos+=4)|0};function p(){if(this.pos+8>this.len)throw u(this,8);return new a(d(this.buf,this.pos+=4),d(this.buf,this.pos+=4))}c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var g=i.float.readFloatLE(this.buf,this.pos);return this.pos+=4,g},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var g=i.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,g},c.prototype.bytes=function(){var g=this.uint32(),m=this.pos,y=this.pos+g;if(y>this.len)throw u(this,g);return this.pos+=g,Array.isArray(this.buf)?this.buf.slice(m,y):m===y?new this.buf.constructor(0):this._slice.call(this.buf,m,y)},c.prototype.string=function(){var g=this.bytes();return l.read(g,0,g.length)},c.prototype.skip=function(g){if(typeof g=="number"){if(this.pos+g>this.len)throw u(this,g);this.pos+=g}else do if(this.pos>=this.len)throw u(this);while(this.buf[this.pos++]&128);return this},c.prototype.skipType=function(g){switch(g){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:do{if((g=this.uint32()&7)===4)break;this.skipType(g)}while(!0);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+g+" at offset "+this.pos)}return this},c._configure=function(g){o=g;var m=i.Long?"toLong":"toNumber";i.merge(c.prototype,{int64:function(){return h.call(this)[m](!1)},uint64:function(){return h.call(this)[m](!0)},sint64:function(){return h.call(this).zzDecode()[m](!1)},fixed64:function(){return p.call(this)[m](!0)},sfixed64:function(){return p.call(this)[m](!1)}})}},{39:39}],28:[function(t,n,s){n.exports=a;var i=t(27);(a.prototype=Object.create(i.prototype)).constructor=a;var o=t(39);function a(l){i.call(this,l)}o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice),a.prototype.string=function(){var l=this.uint32();return this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+l,this.len))}},{27:27,39:39}],29:[function(t,n,s){n.exports=d;var i=t(23);((d.prototype=Object.create(i.prototype)).constructor=d).className="Root";var o=t(16),a=t(15),l=t(25),u=t(37),c,f,h;function d(y){i.call(this,"",y),this.deferred=[],this.files=[]}d.fromJSON=function(y,w){return w||(w=new d),y.options&&w.setOptions(y.options),w.addJSON(y.nested)},d.prototype.resolvePath=u.path.resolve;function p(){}d.prototype.load=function y(w,_,b){typeof _=="function"&&(b=_,_=e);var k=this;if(!b)return u.asPromise(y,k,w,_);var S=b===p;function E(H,Q){if(b){var B=b;if(b=null,S)throw H;B(H,Q)}}function R(H,Q){try{if(u.isString(Q)&&Q.charAt(0)==="{"&&(Q=JSON.parse(Q)),!u.isString(Q))k.setOptions(Q.options).addJSON(Q.nested);else{f.filename=H;var B=f(Q,k,_),he,le=0;if(B.imports)for(;le<B.imports.length;++le)(he=k.resolvePath(H,B.imports[le]))&&D(he);if(B.weakImports)for(le=0;le<B.weakImports.length;++le)(he=k.resolvePath(H,B.weakImports[le]))&&D(he,!0)}}catch(j){E(j)}!S&&!x&&E(null,k)}function D(H,Q){var B=H.lastIndexOf("google/protobuf/");if(B>-1){var he=H.substring(B);he in h&&(H=he)}if(!(k.files.indexOf(H)>-1)){if(k.files.push(H),H in h){S?R(H,h[H]):(++x,setTimeout(function(){--x,R(H,h[H])}));return}if(S){var le;try{le=u.fs.readFileSync(H).toString("utf8")}catch(j){Q||E(j);return}R(H,le)}else++x,u.fetch(H,function(j,at){if(--x,!!b){if(j){Q?x||E(null,k):E(j);return}R(H,at)}})}}var x=0;u.isString(w)&&(w=[w]);for(var J=0,me;J<w.length;++J)(me=k.resolvePath("",w[J]))&&D(me);return S?k:(x||E(null,k),e)},d.prototype.loadSync=function(y,w){if(!u.isNode)throw Error("not supported");return this.load(y,w,p)},d.prototype.resolveAll=function(){if(this.deferred.length)throw Error("unresolvable extensions: "+this.deferred.map(function(y){return"'extend "+y.extend+"' in "+y.parent.fullName}).join(", "));return i.prototype.resolveAll.call(this)};var g=/^[A-Z]/;function m(y,w){var _=w.parent.lookup(w.extend);if(_){var b=new o(w.fullName,w.id,w.type,w.rule,e,w.options);return b.declaringField=w,w.extensionField=b,_.add(b),!0}return!1}d.prototype._handleAdd=function(y){if(y instanceof o)y.extend!==e&&!y.extensionField&&(m(this,y)||this.deferred.push(y));else if(y instanceof a)g.test(y.name)&&(y.parent[y.name]=y.values);else if(!(y instanceof l)){if(y instanceof c)for(var w=0;w<this.deferred.length;)m(this,this.deferred[w])?this.deferred.splice(w,1):++w;for(var _=0;_<y.nestedArray.length;++_)this._handleAdd(y._nestedArray[_]);g.test(y.name)&&(y.parent[y.name]=y)}},d.prototype._handleRemove=function(y){if(y instanceof o){if(y.extend!==e)if(y.extensionField)y.extensionField.parent.remove(y.extensionField),y.extensionField=null;else{var w=this.deferred.indexOf(y);w>-1&&this.deferred.splice(w,1)}}else if(y instanceof a)g.test(y.name)&&delete y.parent[y.name];else if(y instanceof i){for(var _=0;_<y.nestedArray.length;++_)this._handleRemove(y._nestedArray[_]);g.test(y.name)&&delete y.parent[y.name]}},d._configure=function(y,w,_){c=y,f=w,h=_}},{15:15,16:16,23:23,25:25,37:37}],30:[function(t,n,s){n.exports={}},{}],31:[function(t,n,s){var i=s;i.Service=t(32)},{32:32}],32:[function(t,n,s){n.exports=o;var i=t(39);(o.prototype=Object.create(i.EventEmitter.prototype)).constructor=o;function o(a,l,u){if(typeof a!="function")throw TypeError("rpcImpl must be a function");i.EventEmitter.call(this),this.rpcImpl=a,this.requestDelimited=!!l,this.responseDelimited=!!u}o.prototype.rpcCall=function a(l,u,c,f,h){if(!f)throw TypeError("request must be specified");var d=this;if(!h)return i.asPromise(a,d,l,u,c,f);if(!d.rpcImpl)return setTimeout(function(){h(Error("already ended"))},0),e;try{return d.rpcImpl(l,u[d.requestDelimited?"encodeDelimited":"encode"](f).finish(),function(p,g){if(p)return d.emit("error",p,l),h(p);if(g===null)return d.end(!0),e;if(!(g instanceof c))try{g=c[d.responseDelimited?"decodeDelimited":"decode"](g)}catch(m){return d.emit("error",m,l),h(m)}return d.emit("data",g,l),h(null,g)})}catch(p){return d.emit("error",p,l),setTimeout(function(){h(p)},0),e}},o.prototype.end=function(a){return this.rpcImpl&&(a||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},{39:39}],33:[function(t,n,s){n.exports=u;var i=t(23);((u.prototype=Object.create(i.prototype)).constructor=u).className="Service";var o=t(22),a=t(37),l=t(31);function u(f,h){i.call(this,f,h),this.methods={},this._methodsArray=null}u.fromJSON=function(f,h){var d=new u(f,h.options);if(h.methods)for(var p=Object.keys(h.methods),g=0;g<p.length;++g)d.add(o.fromJSON(p[g],h.methods[p[g]]));return h.nested&&d.addJSON(h.nested),d.comment=h.comment,d},u.prototype.toJSON=function(f){var h=i.prototype.toJSON.call(this,f),d=f?!!f.keepComments:!1;return a.toObject(["options",h&&h.options||e,"methods",i.arrayToJSON(this.methodsArray,f)||{},"nested",h&&h.nested||e,"comment",d?this.comment:e])},Object.defineProperty(u.prototype,"methodsArray",{get:function(){return this._methodsArray||(this._methodsArray=a.toArray(this.methods))}});function c(f){return f._methodsArray=null,f}u.prototype.get=function(f){return this.methods[f]||i.prototype.get.call(this,f)},u.prototype.resolveAll=function(){for(var f=this.methodsArray,h=0;h<f.length;++h)f[h].resolve();return i.prototype.resolve.call(this)},u.prototype.add=function(f){if(this.get(f.name))throw Error("duplicate name '"+f.name+"' in "+this);return f instanceof o?(this.methods[f.name]=f,f.parent=this,c(this)):i.prototype.add.call(this,f)},u.prototype.remove=function(f){if(f instanceof o){if(this.methods[f.name]!==f)throw Error(f+" is not a member of "+this);return delete this.methods[f.name],f.parent=null,c(this)}return i.prototype.remove.call(this,f)},u.prototype.create=function(f,h,d){for(var p=new l.Service(f,h,d),g=0,m;g<this.methodsArray.length;++g){var y=a.lcFirst((m=this._methodsArray[g]).resolve().name).replace(/[^$\w_]/g,"");p[y]=a.codegen(["r","c"],a.isReserved(y)?y+"_":y)("return this.rpcCall(m,q,s,r,c)")({m,q:m.resolvedRequestType.ctor,s:m.resolvedResponseType.ctor})}return p}},{22:22,23:23,31:31,37:37}],34:[function(t,n,s){n.exports=g;var i=/[\s{}=;:[\],'"()<>]/g,o=/(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,a=/(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,l=/^ *[*/]+ */,u=/^\s*\*?\/*/,c=/\n/g,f=/\s/,h=/\\(.?)/g,d={0:"\0",r:"\r",n:`
24
24
  `,t:" "};function p(m){return m.replace(h,function(y,w){switch(w){case"\\":case"":return w;default:return d[w]||""}})}g.unescape=p;function g(m,y){m=m.toString();var w=0,_=m.length,b=1,k=null,S=null,E=0,R=!1,D=[],x=null;function J(z){return Error("illegal "+z+" (line "+b+")")}function me(){var z=x==="'"?a:o;z.lastIndex=w-1;var re=z.exec(m);if(!re)throw J("string");return w=z.lastIndex,j(x),x=null,p(re[1])}function H(z){return m.charAt(z)}function Q(z,re){k=m.charAt(z++),E=b,R=!1;var ie;y?ie=2:ie=3;var ue=z-ie,ke;do if(--ue<0||(ke=m.charAt(ue))===`
25
- `){R=!0;break}while(ke===" "||ke===" ");for(var Oe=m.substring(z,re).split(c),q=0;q<Oe.length;++q)Oe[q]=Oe[q].replace(y?u:l,"").trim();S=Oe.join(`
25
+ `){R=!0;break}while(ke===" "||ke===" ");for(var Ae=m.substring(z,re).split(c),q=0;q<Ae.length;++q)Ae[q]=Ae[q].replace(y?u:l,"").trim();S=Ae.join(`
26
26
  `).trim()}function B(z){var re=he(z),ie=m.substring(z,re),ue=/^\s*\/{1,2}/.test(ie);return ue}function he(z){for(var re=z;re<_&&H(re)!==`
27
27
  `;)re++;return re}function le(){if(D.length>0)return D.shift();if(x)return me();var z,re,ie,ue,ke;do{if(w===_)return null;for(z=!1;f.test(ie=H(w));)if(ie===`
28
28
  `&&++b,++w===_)return null;if(H(w)==="/"){if(++w===_)throw J("comment");if(H(w)==="/")if(y){if(ue=w,ke=!1,B(w)){ke=!0;do{if(w=he(w),w===_)break;w++}while(B(w))}else w=Math.min(_,he(w)+1);ke&&Q(ue,w),b++,z=!0}else{for(ke=H(ue=w+1)==="/";H(++w)!==`
29
29
  `;)if(w===_)return null;++w,ke&&Q(ue,w-1),++b,z=!0}else if((ie=H(w))==="*"){ue=w+1,ke=y||H(ue)==="*";do{if(ie===`
30
- `&&++b,++w===_)throw J("comment");re=ie,ie=H(w)}while(re!=="*"||ie!=="/");++w,ke&&Q(ue,w-2),z=!0}else return"/"}}while(z);var Oe=w;i.lastIndex=0;var q=i.test(H(Oe++));if(!q)for(;Oe<_&&!i.test(H(Oe));)++Oe;var Xe=m.substring(w,w=Oe);return(Xe==='"'||Xe==="'")&&(x=Xe),Xe}function j(z){D.push(z)}function at(){if(!D.length){var z=le();if(z===null)return null;j(z)}return D[0]}function St(z,re){var ie=at(),ue=ie===z;if(ue)return le(),!0;if(!re)throw J("token '"+ie+"', '"+z+"' expected");return!1}function lt(z){var re=null;return z===e?E===b-1&&(y||k==="*"||R)&&(re=S):(E<z&&at(),E===z&&!R&&(y||k==="/")&&(re=S)),re}return Object.defineProperty({next:le,peek:at,push:j,skip:St,cmnt:lt},"line",{get:function(){return b}})}},{}],35:[function(t,n,s){n.exports=b;var i=t(23);((b.prototype=Object.create(i.prototype)).constructor=b).className="Type";var o=t(15),a=t(25),l=t(16),u=t(20),c=t(33),f=t(21),h=t(27),d=t(42),p=t(37),g=t(14),m=t(13),y=t(40),w=t(12),_=t(41);function b(S,E){i.call(this,S,E),this.fields={},this.oneofs=e,this.extensions=e,this.reserved=e,this.group=e,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}Object.defineProperties(b.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var S=Object.keys(this.fields),E=0;E<S.length;++E){var R=this.fields[S[E]],D=R.id;if(this._fieldsById[D])throw Error("duplicate id "+D+" in "+this);this._fieldsById[D]=R}return this._fieldsById}},fieldsArray:{get:function(){return this._fieldsArray||(this._fieldsArray=p.toArray(this.fields))}},oneofsArray:{get:function(){return this._oneofsArray||(this._oneofsArray=p.toArray(this.oneofs))}},ctor:{get:function(){return this._ctor||(this.ctor=b.generateConstructor(this)())},set:function(S){var E=S.prototype;E instanceof f||((S.prototype=new f).constructor=S,p.merge(S.prototype,E)),S.$type=S.prototype.$type=this,p.merge(S,f,!0),this._ctor=S;for(var R=0;R<this.fieldsArray.length;++R)this._fieldsArray[R].resolve();var D={};for(R=0;R<this.oneofsArray.length;++R)D[this._oneofsArray[R].resolve().name]={get:p.oneOfGetter(this._oneofsArray[R].oneof),set:p.oneOfSetter(this._oneofsArray[R].oneof)};R&&Object.defineProperties(S.prototype,D)}}}),b.generateConstructor=function(S){for(var E=p.codegen(["p"],S.name),R=0,D;R<S.fieldsArray.length;++R)(D=S._fieldsArray[R]).map?E("this%s={}",p.safeProp(D.name)):D.repeated&&E("this%s=[]",p.safeProp(D.name));return E("if(p)for(var ks=Object.keys(p),i=0;i<ks.length;++i)if(p[ks[i]]!=null)")("this[ks[i]]=p[ks[i]]")};function k(S){return S._fieldsById=S._fieldsArray=S._oneofsArray=null,delete S.encode,delete S.decode,delete S.verify,S}b.fromJSON=function(S,E){var R=new b(S,E.options);R.extensions=E.extensions,R.reserved=E.reserved;for(var D=Object.keys(E.fields),x=0;x<D.length;++x)R.add((typeof E.fields[D[x]].keyType<"u"?u.fromJSON:l.fromJSON)(D[x],E.fields[D[x]]));if(E.oneofs)for(D=Object.keys(E.oneofs),x=0;x<D.length;++x)R.add(a.fromJSON(D[x],E.oneofs[D[x]]));if(E.nested)for(D=Object.keys(E.nested),x=0;x<D.length;++x){var J=E.nested[D[x]];R.add((J.id!==e?l.fromJSON:J.fields!==e?b.fromJSON:J.values!==e?o.fromJSON:J.methods!==e?c.fromJSON:i.fromJSON)(D[x],J))}return E.extensions&&E.extensions.length&&(R.extensions=E.extensions),E.reserved&&E.reserved.length&&(R.reserved=E.reserved),E.group&&(R.group=!0),E.comment&&(R.comment=E.comment),R},b.prototype.toJSON=function(S){var E=i.prototype.toJSON.call(this,S),R=S?!!S.keepComments:!1;return p.toObject(["options",E&&E.options||e,"oneofs",i.arrayToJSON(this.oneofsArray,S),"fields",i.arrayToJSON(this.fieldsArray.filter(function(D){return!D.declaringField}),S)||{},"extensions",this.extensions&&this.extensions.length?this.extensions:e,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"group",this.group||e,"nested",E&&E.nested||e,"comment",R?this.comment:e])},b.prototype.resolveAll=function(){for(var S=this.fieldsArray,E=0;E<S.length;)S[E++].resolve();var R=this.oneofsArray;for(E=0;E<R.length;)R[E++].resolve();return i.prototype.resolveAll.call(this)},b.prototype.get=function(S){return this.fields[S]||this.oneofs&&this.oneofs[S]||this.nested&&this.nested[S]||null},b.prototype.add=function(S){if(this.get(S.name))throw Error("duplicate name '"+S.name+"' in "+this);if(S instanceof l&&S.extend===e){if(this._fieldsById?this._fieldsById[S.id]:this.fieldsById[S.id])throw Error("duplicate id "+S.id+" in "+this);if(this.isReservedId(S.id))throw Error("id "+S.id+" is reserved in "+this);if(this.isReservedName(S.name))throw Error("name '"+S.name+"' is reserved in "+this);return S.parent&&S.parent.remove(S),this.fields[S.name]=S,S.message=this,S.onAdd(this),k(this)}return S instanceof a?(this.oneofs||(this.oneofs={}),this.oneofs[S.name]=S,S.onAdd(this),k(this)):i.prototype.add.call(this,S)},b.prototype.remove=function(S){if(S instanceof l&&S.extend===e){if(!this.fields||this.fields[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.fields[S.name],S.parent=null,S.onRemove(this),k(this)}if(S instanceof a){if(!this.oneofs||this.oneofs[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.oneofs[S.name],S.parent=null,S.onRemove(this),k(this)}return i.prototype.remove.call(this,S)},b.prototype.isReservedId=function(S){return i.isReservedId(this.reserved,S)},b.prototype.isReservedName=function(S){return i.isReservedName(this.reserved,S)},b.prototype.create=function(S){return new this.ctor(S)},b.prototype.setup=function(){for(var S=this.fullName,E=[],R=0;R<this.fieldsArray.length;++R)E.push(this._fieldsArray[R].resolve().resolvedType);this.encode=g(this)({Writer:d,types:E,util:p}),this.decode=m(this)({Reader:h,types:E,util:p}),this.verify=y(this)({types:E,util:p}),this.fromObject=w.fromObject(this)({types:E,util:p}),this.toObject=w.toObject(this)({types:E,util:p});var D=_[S];if(D){var x=Object.create(this);x.fromObject=this.fromObject,this.fromObject=D.fromObject.bind(x),x.toObject=this.toObject,this.toObject=D.toObject.bind(x)}return this},b.prototype.encode=function(S,E){return this.setup().encode(S,E)},b.prototype.encodeDelimited=function(S,E){return this.encode(S,E&&E.len?E.fork():E).ldelim()},b.prototype.decode=function(S,E){return this.setup().decode(S,E)},b.prototype.decodeDelimited=function(S){return S instanceof h||(S=h.create(S)),this.decode(S,S.uint32())},b.prototype.verify=function(S){return this.setup().verify(S)},b.prototype.fromObject=function(S){return this.setup().fromObject(S)},b.prototype.toObject=function(S,E){return this.setup().toObject(S,E)},b.d=function(S){return function(E){p.decorateType(E,S)}}},{12:12,13:13,14:14,15:15,16:16,20:20,21:21,23:23,25:25,27:27,33:33,37:37,40:40,41:41,42:42}],36:[function(t,n,s){var i=s,o=t(37),a=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function l(u,c){var f=0,h={};for(c|=0;f<u.length;)h[a[f+c]]=u[f++];return h}i.basic=l([1,5,0,0,0,5,5,0,0,0,1,1,0,2,2]),i.defaults=l([0,0,0,0,0,0,0,0,0,0,0,0,!1,"",o.emptyArray,null]),i.long=l([0,0,0,1,1],7),i.mapKey=l([0,0,0,5,5,0,0,0,1,1,0,2],2),i.packed=l([1,5,0,0,0,5,5,0,0,0,1,1,0])},{37:37}],37:[function(t,n,s){var i=n.exports=t(39),o=t(30),a,l;i.codegen=t(3),i.fetch=t(5),i.path=t(8),i.fs=i.inquire("fs"),i.toArray=function(d){if(d){for(var p=Object.keys(d),g=new Array(p.length),m=0;m<p.length;)g[m]=d[p[m++]];return g}return[]},i.toObject=function(d){for(var p={},g=0;g<d.length;){var m=d[g++],y=d[g++];y!==e&&(p[m]=y)}return p};var u=/\\/g,c=/"/g;i.isReserved=function(d){return/^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(d)},i.safeProp=function(d){return!/^[$\w_]+$/.test(d)||i.isReserved(d)?'["'+d.replace(u,"\\\\").replace(c,'\\"')+'"]':"."+d},i.ucFirst=function(d){return d.charAt(0).toUpperCase()+d.substring(1)};var f=/_([a-z])/g;i.camelCase=function(d){return d.substring(0,1)+d.substring(1).replace(f,function(p,g){return g.toUpperCase()})},i.compareFieldsById=function(d,p){return d.id-p.id},i.decorateType=function(d,p){if(d.$type)return p&&d.$type.name!==p&&(i.decorateRoot.remove(d.$type),d.$type.name=p,i.decorateRoot.add(d.$type)),d.$type;a||(a=t(35));var g=new a(p||d.name);return i.decorateRoot.add(g),g.ctor=d,Object.defineProperty(d,"$type",{value:g,enumerable:!1}),Object.defineProperty(d.prototype,"$type",{value:g,enumerable:!1}),g};var h=0;i.decorateEnum=function(d){if(d.$type)return d.$type;l||(l=t(15));var p=new l("Enum"+h++,d);return i.decorateRoot.add(p),Object.defineProperty(d,"$type",{value:p,enumerable:!1}),p},Object.defineProperty(i,"decorateRoot",{get:function(){return o.decorated||(o.decorated=new(t(29)))}})},{15:15,29:29,3:3,30:30,35:35,39:39,5:5,8:8}],38:[function(t,n,s){n.exports=o;var i=t(39);function o(c,f){this.lo=c>>>0,this.hi=f>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var l=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(c){if(c===0)return a;var f=c<0;f&&(c=-c);var h=c>>>0,d=(c-h)/4294967296>>>0;return f&&(d=~d>>>0,h=~h>>>0,++h>4294967295&&(h=0,++d>4294967295&&(d=0))),new o(h,d)},o.from=function(c){if(typeof c=="number")return o.fromNumber(c);if(i.isString(c))if(i.Long)c=i.Long.fromString(c);else return o.fromNumber(parseInt(c,10));return c.low||c.high?new o(c.low>>>0,c.high>>>0):a},o.prototype.toNumber=function(c){if(!c&&this.hi>>>31){var f=~this.lo+1>>>0,h=~this.hi>>>0;return f||(h=h+1>>>0),-(f+h*4294967296)}return this.lo+this.hi*4294967296},o.prototype.toLong=function(c){return i.Long?new i.Long(this.lo|0,this.hi|0,!!c):{low:this.lo|0,high:this.hi|0,unsigned:!!c}};var u=String.prototype.charCodeAt;o.fromHash=function(c){return c===l?a:new o((u.call(c,0)|u.call(c,1)<<8|u.call(c,2)<<16|u.call(c,3)<<24)>>>0,(u.call(c,4)|u.call(c,5)<<8|u.call(c,6)<<16|u.call(c,7)<<24)>>>0)},o.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)},o.prototype.zzEncode=function(){var c=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^c)>>>0,this.lo=(this.lo<<1^c)>>>0,this},o.prototype.zzDecode=function(){var c=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^c)>>>0,this.hi=(this.hi>>>1^c)>>>0,this},o.prototype.length=function(){var c=this.lo,f=(this.lo>>>28|this.hi<<4)>>>0,h=this.hi>>>24;return h===0?f===0?c<16384?c<128?1:2:c<2097152?3:4:f<16384?f<128?5:6:f<2097152?7:8:h<128?9:10}},{39:39}],39:[function(t,n,s){var i=s;i.asPromise=t(1),i.base64=t(2),i.EventEmitter=t(4),i.float=t(6),i.inquire=t(7),i.utf8=t(10),i.pool=t(9),i.LongBits=t(38),i.emptyArray=Object.freeze?Object.freeze([]):[],i.emptyObject=Object.freeze?Object.freeze({}):{},i.isNode=!!(tr.process&&tr.process.versions&&tr.process.versions.node),i.isInteger=Number.isInteger||function(l){return typeof l=="number"&&isFinite(l)&&Math.floor(l)===l},i.isString=function(l){return typeof l=="string"||l instanceof String},i.isObject=function(l){return l&&typeof l=="object"},i.isset=i.isSet=function(l,u){var c=l[u];return c!=null&&l.hasOwnProperty(u)?typeof c!="object"||(Array.isArray(c)?c.length:Object.keys(c).length)>0:!1},i.Buffer=function(){try{var l=i.inquire("buffer").Buffer;return l.prototype.utf8Write?l:null}catch{return null}}(),i._Buffer_from=null,i._Buffer_allocUnsafe=null,i.newBuffer=function(l){return typeof l=="number"?i.Buffer?i._Buffer_allocUnsafe(l):new i.Array(l):i.Buffer?i._Buffer_from(l):typeof Uint8Array>"u"?l:new Uint8Array(l)},i.Array=typeof Uint8Array<"u"?Uint8Array:Array,i.Long=tr.dcodeIO&&tr.dcodeIO.Long||i.inquire("long"),i.key2Re=/^true|false|0|1$/,i.key32Re=/^-?(?:0|[1-9][0-9]*)$/,i.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,i.longToHash=function(l){return l?i.LongBits.from(l).toHash():i.LongBits.zeroHash},i.longFromHash=function(l,u){var c=i.LongBits.fromHash(l);return i.Long?i.Long.fromBits(c.lo,c.hi,u):c.toNumber(!!u)};function o(l,u,c){for(var f=Object.keys(u),h=0;h<f.length;++h)(l[f[h]]===e||!c)&&(l[f[h]]=u[f[h]]);return l}i.merge=o,i.lcFirst=function(l){return l.charAt(0).toLowerCase()+l.substring(1)};function a(l){function u(c,f){if(!(this instanceof u))return new u(c,f);Object.defineProperty(this,"message",{get:function(){return c}}),Error.captureStackTrace?Error.captureStackTrace(this,u):Object.defineProperty(this,"stack",{value:new Error().stack||""}),f&&o(this,f)}return(u.prototype=Object.create(Error.prototype)).constructor=u,Object.defineProperty(u.prototype,"name",{get:function(){return l}}),u.prototype.toString=function(){return this.name+": "+this.message},u}i.newError=a,i.ProtocolError=a("ProtocolError"),i.oneOfGetter=function(l){for(var u={},c=0;c<l.length;++c)u[l[c]]=1;return function(){for(var f=Object.keys(this),h=f.length-1;h>-1;--h)if(u[f[h]]===1&&this[f[h]]!==e&&this[f[h]]!==null)return f[h]}},i.oneOfSetter=function(l){return function(u){for(var c=0;c<l.length;++c)l[c]!==u&&delete this[l[c]]}},i.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},i._configure=function(){var l=i.Buffer;if(!l){i._Buffer_from=i._Buffer_allocUnsafe=null;return}i._Buffer_from=l.from!==Uint8Array.from&&l.from||function(u,c){return new l(u,c)},i._Buffer_allocUnsafe=l.allocUnsafe||function(u){return new l(u)}}},{1:1,10:10,2:2,38:38,4:4,6:6,7:7,9:9}],40:[function(t,n,s){n.exports=c;var i=t(15),o=t(37);function a(f,h){return f.name+": "+h+(f.repeated&&h!=="array"?"[]":f.map&&h!=="object"?"{k:"+f.keyType+"}":"")+" expected"}function l(f,h,d,p){if(h.resolvedType)if(h.resolvedType instanceof i){f("switch(%s){",p)("default:")("return%j",a(h,"enum value"));for(var g=Object.keys(h.resolvedType.values),m=0;m<g.length;++m)f("case %i:",h.resolvedType.values[g[m]]);f("break")("}")}else f("{")("var e=types[%i].verify(%s);",d,p)("if(e)")("return%j+e",h.name+".")("}");else switch(h.type){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":f("if(!util.isInteger(%s))",p)("return%j",a(h,"integer"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":f("if(!util.isInteger(%s)&&!(%s&&util.isInteger(%s.low)&&util.isInteger(%s.high)))",p,p,p,p)("return%j",a(h,"integer|Long"));break;case"float":case"double":f('if(typeof %s!=="number")',p)("return%j",a(h,"number"));break;case"bool":f('if(typeof %s!=="boolean")',p)("return%j",a(h,"boolean"));break;case"string":f("if(!util.isString(%s))",p)("return%j",a(h,"string"));break;case"bytes":f('if(!(%s&&typeof %s.length==="number"||util.isString(%s)))',p,p,p)("return%j",a(h,"buffer"));break}return f}function u(f,h,d){switch(h.keyType){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":f("if(!util.key32Re.test(%s))",d)("return%j",a(h,"integer key"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":f("if(!util.key64Re.test(%s))",d)("return%j",a(h,"integer|Long key"));break;case"bool":f("if(!util.key2Re.test(%s))",d)("return%j",a(h,"boolean key"));break}return f}function c(f){var h=o.codegen(["m"],f.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),d=f.oneofsArray,p={};d.length&&h("var p={}");for(var g=0;g<f.fieldsArray.length;++g){var m=f._fieldsArray[g].resolve(),y="m"+o.safeProp(m.name);if(m.optional&&h("if(%s!=null&&m.hasOwnProperty(%j)){",y,m.name),m.map)h("if(!util.isObject(%s))",y)("return%j",a(m,"object"))("var k=Object.keys(%s)",y)("for(var i=0;i<k.length;++i){"),u(h,m,"k[i]"),l(h,m,g,y+"[k[i]]")("}");else if(m.repeated)h("if(!Array.isArray(%s))",y)("return%j",a(m,"array"))("for(var i=0;i<%s.length;++i){",y),l(h,m,g,y+"[i]")("}");else{if(m.partOf){var w=o.safeProp(m.partOf.name);p[m.partOf.name]===1&&h("if(p%s===1)",w)("return%j",m.partOf.name+": multiple values"),p[m.partOf.name]=1,h("p%s=1",w)}l(h,m,g,y)}m.optional&&h("}")}return h("return null")}},{15:15,37:37}],41:[function(t,n,s){var i=s,o=t(21);i[".google.protobuf.Any"]={fromObject:function(a){if(a&&a["@type"]){var l=this.lookup(a["@type"]);if(l){var u=a["@type"].charAt(0)==="."?a["@type"].substr(1):a["@type"];return this.create({type_url:"/"+u,value:l.encode(l.fromObject(a)).finish()})}}return this.fromObject(a)},toObject:function(a,l){if(l&&l.json&&a.type_url&&a.value){var u=a.type_url.substring(a.type_url.lastIndexOf("/")+1),c=this.lookup(u);c&&(a=c.decode(a.value))}if(!(a instanceof this.ctor)&&a instanceof o){var f=a.$type.toObject(a,l);return f["@type"]=a.$type.fullName,f}return this.toObject(a,l)}}},{21:21}],42:[function(t,n,s){n.exports=d;var i=t(39),o,a=i.LongBits,l=i.base64,u=i.utf8;function c(b,k,S){this.fn=b,this.len=k,this.next=e,this.val=S}function f(){}function h(b){this.head=b.head,this.tail=b.tail,this.len=b.len,this.next=b.states}function d(){this.len=0,this.head=new c(f,0,0),this.tail=this.head,this.states=null}d.create=i.Buffer?function(){return(d.create=function(){return new o})()}:function(){return new d},d.alloc=function(b){return new i.Array(b)},i.Array!==Array&&(d.alloc=i.pool(d.alloc,i.Array.prototype.subarray)),d.prototype._push=function(b,k,S){return this.tail=this.tail.next=new c(b,k,S),this.len+=k,this};function p(b,k,S){k[S]=b&255}function g(b,k,S){for(;b>127;)k[S++]=b&127|128,b>>>=7;k[S]=b}function m(b,k){this.len=b,this.next=e,this.val=k}m.prototype=Object.create(c.prototype),m.prototype.fn=g,d.prototype.uint32=function(b){return this.len+=(this.tail=this.tail.next=new m((b=b>>>0)<128?1:b<16384?2:b<2097152?3:b<268435456?4:5,b)).len,this},d.prototype.int32=function(b){return b<0?this._push(y,10,a.fromNumber(b)):this.uint32(b)},d.prototype.sint32=function(b){return this.uint32((b<<1^b>>31)>>>0)};function y(b,k,S){for(;b.hi;)k[S++]=b.lo&127|128,b.lo=(b.lo>>>7|b.hi<<25)>>>0,b.hi>>>=7;for(;b.lo>127;)k[S++]=b.lo&127|128,b.lo=b.lo>>>7;k[S++]=b.lo}d.prototype.uint64=function(b){var k=a.from(b);return this._push(y,k.length(),k)},d.prototype.int64=d.prototype.uint64,d.prototype.sint64=function(b){var k=a.from(b).zzEncode();return this._push(y,k.length(),k)},d.prototype.bool=function(b){return this._push(p,1,b?1:0)};function w(b,k,S){k[S]=b&255,k[S+1]=b>>>8&255,k[S+2]=b>>>16&255,k[S+3]=b>>>24}d.prototype.fixed32=function(b){return this._push(w,4,b>>>0)},d.prototype.sfixed32=d.prototype.fixed32,d.prototype.fixed64=function(b){var k=a.from(b);return this._push(w,4,k.lo)._push(w,4,k.hi)},d.prototype.sfixed64=d.prototype.fixed64,d.prototype.float=function(b){return this._push(i.float.writeFloatLE,4,b)},d.prototype.double=function(b){return this._push(i.float.writeDoubleLE,8,b)};var _=i.Array.prototype.set?function(b,k,S){k.set(b,S)}:function(b,k,S){for(var E=0;E<b.length;++E)k[S+E]=b[E]};d.prototype.bytes=function(b){var k=b.length>>>0;if(!k)return this._push(p,1,0);if(i.isString(b)){var S=d.alloc(k=l.length(b));l.decode(b,S,0),b=S}return this.uint32(k)._push(_,k,b)},d.prototype.string=function(b){var k=u.length(b);return k?this.uint32(k)._push(u.write,k,b):this._push(p,1,0)},d.prototype.fork=function(){return this.states=new h(this),this.head=this.tail=new c(f,0,0),this.len=0,this},d.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 c(f,0,0),this.len=0),this},d.prototype.ldelim=function(){var b=this.head,k=this.tail,S=this.len;return this.reset().uint32(S),S&&(this.tail.next=b.next,this.tail=k,this.len+=S),this},d.prototype.finish=function(){for(var b=this.head.next,k=this.constructor.alloc(this.len),S=0;b;)b.fn(b.val,k,S),S+=b.len,b=b.next;return k},d._configure=function(b){o=b}},{39:39}],43:[function(t,n,s){n.exports=l;var i=t(42);(l.prototype=Object.create(i.prototype)).constructor=l;var o=t(39),a=o.Buffer;function l(){i.call(this)}l.alloc=function(f){return(l.alloc=o._Buffer_allocUnsafe)(f)};var u=a&&a.prototype instanceof Uint8Array&&a.prototype.set.name==="set"?function(f,h,d){h.set(f,d)}:function(f,h,d){if(f.copy)f.copy(h,d,0,f.length);else for(var p=0;p<f.length;)h[d++]=f[p++]};l.prototype.bytes=function(f){o.isString(f)&&(f=o._Buffer_from(f,"base64"));var h=f.length>>>0;return this.uint32(h),h&&this._push(u,h,f),this};function c(f,h,d){f.length<40?o.utf8.write(f,h,d):h.utf8Write(f,d)}l.prototype.string=function(f){var h=a.byteLength(f);return this.uint32(h),h&&this._push(c,h,f),this}},{39:39,42:42}]},{},[19])})()}(Dn)),Dn.exports}var Ah=Oh();const rr=Th(Ah);let G=rr.Reader,ve=rr.Writer,pe=rr.util;const L=rr.roots["push-server"]||(rr.roots["push-server"]={});L.RequestBatch=function(){function r(e){if(this.requests=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.requests=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.requests!=null&&e.requests.length)for(var n=0;n<e.requests.length;++n)L.Request.encode(e.requests[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.RequestBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.requests&&s.requests.length||(s.requests=[]),s.requests.push(L.Request.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.Request=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.incomingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:pe.oneOfGetter(e=["incomingMessages","channelStats","serverStats"]),set:pe.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ve.create()),t.incomingMessages!=null&&t.hasOwnProperty("incomingMessages")&&L.IncomingMessagesRequest.encode(t.incomingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&L.ChannelStatsRequest.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&L.ServerStatsRequest.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new L.Request;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.incomingMessages=L.IncomingMessagesRequest.decode(t,t.uint32());break;case 2:i.channelStats=L.ChannelStatsRequest.decode(t,t.uint32());break;case 3:i.serverStats=L.ServerStatsRequest.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),L.IncomingMessagesRequest=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)L.IncomingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.IncomingMessagesRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(L.IncomingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.IncomingMessage=function(){function r(e){if(this.receivers=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.receivers=pe.emptyArray,r.prototype.sender=null,r.prototype.body="",r.prototype.expiry=0,r.prototype.type="",r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.receivers!=null&&e.receivers.length)for(var n=0;n<e.receivers.length;++n)L.Receiver.encode(e.receivers[n],t.uint32(10).fork()).ldelim();return e.sender!=null&&e.hasOwnProperty("sender")&&L.Sender.encode(e.sender,t.uint32(18).fork()).ldelim(),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(26).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(32).uint32(e.expiry),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(42).string(e.type),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.IncomingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.receivers&&s.receivers.length||(s.receivers=[]),s.receivers.push(L.Receiver.decode(e,e.uint32()));break;case 2:s.sender=L.Sender.decode(e,e.uint32());break;case 3:s.body=e.string();break;case 4:s.expiry=e.uint32();break;case 5:s.type=e.string();break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelStatsRequest=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)L.ChannelId.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(L.ChannelId.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelId=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelId;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),L.ServerStatsRequest=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ServerStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){default:e.skipType(i&7);break}}return s},r}(),L.Sender=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.type=0,r.prototype.id=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(8).int32(e.type),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(18).bytes(e.id),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.Sender;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.type=e.int32();break;case 2:s.id=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),L.SenderType=function(){var r={},e=Object.create(r);return e[r[0]="UNKNOWN"]=0,e[r[1]="CLIENT"]=1,e[r[2]="BACKEND"]=2,e}(),L.Receiver=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.Receiver;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),L.ResponseBatch=function(){function r(e){if(this.responses=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.responses=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.responses!=null&&e.responses.length)for(var n=0;n<e.responses.length;++n)L.Response.encode(e.responses[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ResponseBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.responses&&s.responses.length||(s.responses=[]),s.responses.push(L.Response.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.Response=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.outgoingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:pe.oneOfGetter(e=["outgoingMessages","channelStats","serverStats"]),set:pe.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ve.create()),t.outgoingMessages!=null&&t.hasOwnProperty("outgoingMessages")&&L.OutgoingMessagesResponse.encode(t.outgoingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&L.ChannelStatsResponse.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&L.JsonResponse.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new L.Response;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.outgoingMessages=L.OutgoingMessagesResponse.decode(t,t.uint32());break;case 2:i.channelStats=L.ChannelStatsResponse.decode(t,t.uint32());break;case 3:i.serverStats=L.JsonResponse.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),L.OutgoingMessagesResponse=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)L.OutgoingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.OutgoingMessagesResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(L.OutgoingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.OutgoingMessage=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.body="",r.prototype.expiry=0,r.prototype.created=0,r.prototype.sender=null,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(18).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(24).uint32(e.expiry),e.created!=null&&e.hasOwnProperty("created")&&t.uint32(37).fixed32(e.created),e.sender!=null&&e.hasOwnProperty("sender")&&L.Sender.encode(e.sender,t.uint32(42).fork()).ldelim(),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.OutgoingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.body=e.string();break;case 3:s.expiry=e.uint32();break;case 4:s.created=e.fixed32();break;case 5:s.sender=L.Sender.decode(e,e.uint32());break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelStatsResponse=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)L.ChannelStats.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelStatsResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(L.ChannelStats.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),L.ChannelStats=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.isOnline=!1,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.isOnline!=null&&e.hasOwnProperty("isOnline")&&t.uint32(24).bool(e.isOnline),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.ChannelStats;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.isOnline=e.bool();break;default:e.skipType(i&7);break}}return s},r}(),L.JsonResponse=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.json="",r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.json!=null&&e.hasOwnProperty("json")&&t.uint32(10).string(e.json),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new L.JsonResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.json=e.string();break;default:e.skipType(i&7);break}}return s},r}();const Ih=L.ResponseBatch,xo=L.RequestBatch,Ch=L.IncomingMessage,Do=L.Receiver;class jo{_logger=null;_connected=!1;_connectionType;_disconnectCode=0;_disconnectReason="";_parent;_callbacks;constructor(e){this._parent=e.parent,this._connectionType=te.Undefined,this._callbacks={onOpen:N.isFunction(e.onOpen)?e.onOpen:()=>{},onDisconnect:N.isFunction(e.onDisconnect)?e.onDisconnect:()=>{},onError:N.isFunction(e.onError)?e.onError:()=>{},onMessage:N.isFunction(e.onMessage)?e.onMessage:()=>{}}}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){}get connected(){return this._connected}set connected(e){e!=this._connected&&(this._connected=e,this._connected?this._callbacks.onOpen():this._callbacks.onDisconnect({code:this.disconnectCode,reason:this.disconnectReason}))}get disconnectCode(){return this._disconnectCode}get disconnectReason(){return this._disconnectReason}get connectionPath(){return this._parent.getConnectionPath(this._connectionType)}}class Nh extends jo{_socket;_onSocketOpenHandler;_onSocketCloseHandler;_onSocketErrorHandler;_onSocketMessageHandler;constructor(e){super(e),this._connectionType=te.WebSocket,this._socket=null,this._onSocketOpenHandler=this._onSocketOpen.bind(this),this._onSocketCloseHandler=this._onSocketClose.bind(this),this._onSocketErrorHandler=this._onSocketError.bind(this),this._onSocketMessageHandler=this._onSocketMessage.bind(this)}destroy(){super.destroy(),this._socket&&(this._socket.close(),this._socket=null)}connect(){if(this._socket){if(this._socket.readyState===1)return;this.clearEventListener(),this._socket.close(),this._socket=null}this._createSocket()}get socket(){return this._socket}disconnect(e,t){this._socket!==null&&(this.clearEventListener(),this._socket.close(e,t)),this._socket=null,this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}send(e){return!this._socket||this._socket.readyState!==1?(this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: WebSocket is not connected`)),!1):(this._socket.send(e),!0)}_onSocketOpen(){this.connected=!0}_onSocketClose(e){this._socket=null,this._disconnectCode=Number(e.code),this._disconnectReason=e.reason,this.connected=!1}_onSocketError(e){this._callbacks.onError(new Error(`Socket error: ${e}`))}_onSocketMessage(e){this._callbacks.onMessage(e.data)}clearEventListener(){this._socket&&(this._socket.removeEventListener("open",this._onSocketOpenHandler),this._socket.removeEventListener("close",this._onSocketCloseHandler),this._socket.removeEventListener("error",this._onSocketErrorHandler),this._socket.removeEventListener("message",this._onSocketMessageHandler))}_createSocket(){if(this._socket)throw new Error("Socket already exists");if(!this.connectionPath)throw new Error("Websocket connection path is not defined");this._socket=new WebSocket(this.connectionPath),this._socket.binaryType="arraybuffer",this._socket.addEventListener("open",this._onSocketOpenHandler),this._socket.addEventListener("close",this._onSocketCloseHandler),this._socket.addEventListener("error",this._onSocketErrorHandler),this._socket.addEventListener("message",this._onSocketMessageHandler)}}const Rh=60;class Fh extends jo{_active;_requestTimeout;_failureTimeout;_xhr;_requestAborted;constructor(e){super(e),this._active=!1,this._connectionType=te.LongPolling,this._requestTimeout=null,this._failureTimeout=null,this._xhr=this.createXhr(),this._requestAborted=!1}connect(){this._active=!0,this.performRequest()}disconnect(e,t){this._active=!1,this.clearTimeOut(),this._xhr&&(this._requestAborted=!0,this._xhr.abort()),this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}performRequest(){if(this._active){if(!this.connectionPath)throw new Error("Long polling connection path is not defined");this._xhr.readyState!==0&&this._xhr.readyState!==4||(this.clearTimeOut(),this._failureTimeout=setTimeout(()=>{this.connected=!0},5e3),this._requestTimeout=setTimeout(this.onRequestTimeout.bind(this),Rh*1e3),this._xhr.open("GET",this.connectionPath),this._xhr.send())}}onRequestTimeout(){this._requestAborted=!0,this._xhr.abort(),this.performRequest()}onXhrReadyStateChange(){this._xhr.readyState===4&&((!this._requestAborted||this._xhr.status==200)&&this.onResponse(this._xhr.response),this._requestAborted=!1)}send(e){const t=this._parent.getPublicationPath();if(!t)return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: publication path is empty`)),!1;const n=new XMLHttpRequest;return n.open("POST",t),n.send(e),!0}onResponse(e){if(this.clearTimeOut(),this._xhr.status===200)this.connected=!0,N.isStringFilled(e)||e instanceof ArrayBuffer?this._callbacks.onMessage(e):this._parent.session.mid=null,this.performRequest();else if(this._xhr.status===304){if(this.connected=!0,this._xhr.getResponseHeader("Expires")==="Thu, 01 Jan 1973 11:11:01 GMT"){const t=this._xhr.getResponseHeader("Last-Message-Id");N.isStringFilled(t)&&this._parent.setLastMessageId(t||"")}this.performRequest()}else this._callbacks.onError(new Error("Could not connect to the server")),this.connected=!1}clearTimeOut(){this._failureTimeout&&(clearTimeout(this._failureTimeout),this._failureTimeout=null),this._requestTimeout&&(clearTimeout(this._requestTimeout),this._requestTimeout=null)}createXhr(){const e=new XMLHttpRequest;return this._parent.isProtobufSupported()&&!this._parent.isJsonRpc()&&(e.responseType="arraybuffer"),e.addEventListener("readystatechange",this.onXhrReadyStateChange.bind(this)),e}}const nr=19,Uo=30*60,Lh=5e3,Mh=60*1e3,Ph=10,Bo=10,xh="ping",Dh="pong",$o="bx-pull-session",jh=20,Wo={api:{},channels:{},publicChannels:{},server:{timeShift:0},clientId:null,jwt:null,exp:0};class qo{_logger=null;_restClient;_status;_context;_guestMode;_guestUserId;_userId;_configGetMethod;_getPublicListMethod;_siteId;_enabled;_unloading=!1;_starting=!1;_debug=!1;_connectionAttempt=0;_connectionType=te.WebSocket;_reconnectTimeout=null;_restartTimeout=null;_restoreWebSocketTimeout=null;_skipStorageInit;_skipCheckRevision;_subscribers={};_watchTagsQueue=new Map;_watchUpdateInterval=174e4;_watchForceUpdateInterval=5e3;_configTimestamp=0;_session={mid:null,tag:null,time:null,history:{},lastMessageIds:[],messageCount:0};_connectors={[te.Undefined]:null,[te.WebSocket]:null,[te.LongPolling]:null};_isSecure;_config=null;_storage=null;_sharedConfig;_channelManager;_jsonRpcAdapter=null;_checkInterval=null;_offlineTimeout=null;_watchUpdateTimeout=null;_pingWaitTimeout=null;_isManualDisconnect=!1;_loggingEnabled=!1;_onPingTimeoutHandler;_userStatusCallbacks={};_connectPromise=null;_startingPromise=null;constructor(e){this._restClient=e.b24,this._status=Ne.Offline,this._context="master",e.restApplication&&(typeof e.configGetMethod>"u"&&(e.configGetMethod="pull.application.config.get"),typeof e.skipCheckRevision>"u"&&(e.skipCheckRevision=!0),N.isStringFilled(e.restApplication)&&(e.siteId=e.restApplication),e.serverEnabled=!0),this._guestMode=e.guestMode?$.toBoolean(e.guestMode):!1,this._guestUserId=e.guestUserId?$.toInteger(e.guestUserId):0,this._guestMode&&this._guestUserId>0?this._userId=this._guestUserId:(this._guestMode=!1,this._userId=e.userId?$.toInteger(e.userId):0),this._siteId=e.siteId??"none",this._enabled=N.isUndefined(e.serverEnabled)?!0:e.serverEnabled===!0,this._configGetMethod=N.isStringFilled(e.configGetMethod)?e.configGetMethod||"":"pull.config.get",this._getPublicListMethod=N.isStringFilled(e.getPublicListMethod)?e.getPublicListMethod||"":"pull.channel.public.list",this._skipStorageInit=e.skipStorageInit===!0,this._skipCheckRevision=e.skipCheckRevision===!0,N.isUndefined(e.configTimestamp)||(this._configTimestamp=$.toInteger(e.configTimestamp)),this._isSecure=document?.location.href.indexOf("https")===0,this._userId&&!this._skipStorageInit&&(this._storage=new Mo({userId:this._userId,siteId:this._siteId})),this._sharedConfig=new kh({onWebSocketBlockChanged:this.onWebSocketBlockChanged.bind(this),storage:this._storage}),this._channelManager=new Eh({b24:this._restClient,getPublicListMethod:this._getPublicListMethod}),this._loggingEnabled=this._sharedConfig.isLoggingEnabled(),this._onPingTimeoutHandler=this.onPingTimeout.bind(this)}setLogger(e){this._logger=e,this._jsonRpcAdapter?.setLogger(this.getLogger()),this._storage?.setLogger(this.getLogger()),this._sharedConfig.setLogger(this.getLogger()),this._channelManager.setLogger(this.getLogger()),this._connectors.webSocket?.setLogger(this.getLogger()),this._connectors.longPolling?.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this.stop(Se.NORMAL_CLOSURE,"manual stop"),this.onBeforeUnload()}init(){this._connectors.webSocket=new Nh({parent:this,onOpen:this.onWebSocketOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onWebSocketDisconnect.bind(this),onError:this.onWebSocketError.bind(this)}),this._connectors.longPolling=new Fh({parent:this,onOpen:this.onLongPollingOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onLongPollingDisconnect.bind(this),onError:this.onLongPollingError.bind(this)}),this._connectionType=this.isWebSocketAllowed()?te.WebSocket:te.LongPolling,window.addEventListener("beforeunload",this.onBeforeUnload.bind(this)),window.addEventListener("offline",this.onOffline.bind(this)),window.addEventListener("online",this.onOnline.bind(this)),this._jsonRpcAdapter=new vh({connector:this._connectors.webSocket,handlers:{"incoming.message":this.handleRpcIncomingMessage.bind(this)}})}get connector(){return this._connectors[this._connectionType]}get status(){return this._status}set status(e){this._status!==e&&(this._status=e,this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),e===Ne.Offline?this.sendPullStatusDelayed(e,Lh):this.sendPullStatus(e))}get session(){return this._session}subscribe(e){if(!N.isPlainObject(e))return this.attachCommandHandler(e);if(e=e,e.type=e.type||Re.Server,e.command=e.command||null,e.type==Re.Server||e.type==Re.Client){if(typeof e.moduleId>"u")throw new TypeError(`${$.getDateForLog()}: Pull.subscribe: parameter moduleId is not specified`);return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),e.command?(typeof this._subscribers[e.type][e.moduleId].commands[e.command]>"u"&&(this._subscribers[e.type][e.moduleId].commands[e.command]=[]),this._subscribers[e.type][e.moduleId].commands[e.command].push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||typeof e.command>"u"||e.command===null||(this._subscribers[e.type][e.moduleId].commands[e.command]=this._subscribers[e.type][e.moduleId].commands[e.command].filter(t=>t!==e.callback))}):(this._subscribers[e.type][e.moduleId].callbacks.push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||(this._subscribers[e.type][e.moduleId].callbacks=this._subscribers[e.type][e.moduleId].callbacks.filter(t=>t!==e.callback))})}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].push(e.callback),()=>{typeof e.type>"u"||(this._subscribers[e.type]=this._subscribers[e.type].filter(t=>t!==e.callback))}}attachCommandHandler(e){if(typeof e.getModuleId!="function"||typeof e.getModuleId()!="string")return this.getLogger().error(`${$.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string.`),()=>{};let t=Re.Server;return typeof e.getSubscriptionType=="function"&&(t=e.getSubscriptionType()),this.subscribe({type:t,moduleId:e.getModuleId(),callback:n=>{let s=null;if(typeof e.getMap=="function"){const i=e.getMap();if(i&&typeof i=="object"){const o=i[n.command];typeof o=="function"?s=o.bind(e):typeof o=="string"&&typeof e[o]=="function"&&(s=e[o].bind(e))}}if(!s){const i=`handle${$.capitalize(n.command)}`;typeof e[i]=="function"&&(s=e[i].bind(e))}s&&(this._debug&&this._context!=="master"&&this.getLogger().warn(`${$.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string`,n),s(n.params,n.extra,n.command))}})}async start(e=null){let t=!0;if(this.isConnected())return Promise.resolve(!0);if(this._starting&&this._startingPromise)return this._startingPromise;if(!this._userId)throw new Error("Not set userId");if(this._siteId==="none")throw new Error("Not set siteId");let n=!1;if(e&&N.isPlainObject(e)&&(typeof e?.skipReconnectToLastSession<"u"&&(n=e.skipReconnectToLastSession,delete e.skipReconnectToLastSession),this._config=e,t=!1),!this._enabled)return Promise.reject({ex:{error:"PULL_DISABLED",error_description:"Push & Pull server is disabled"}});const s=Date.now();let i;return!n&&this._storage&&(i=this._storage.get($o,null)),N.isPlainObject(i)&&i.hasOwnProperty("ttl")&&i.ttl>=s&&(this._session.mid=i.mid),this._starting=!0,this._startingPromise=new Promise((o,a)=>{this.loadConfig("client_start").then(l=>{this.setConfig(l,t),this.init(),this.updateWatch(!0),this.startCheckConfig(),this.connect().then(()=>o(!0),u=>a(u))}).catch(l=>{this._starting=!1,this.status=Ne.Offline,this.stopCheckConfig(),this.getLogger().error(`${$.getDateForLog()}: Pull: could not read push-server config `,l),a(l)})})}restart(e=Se.NORMAL_CLOSURE,t="manual restart"){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),this.getLogger().log(`${$.getDateForLog()}: Pull: restarting with code ${e}`),this.disconnect(e,t),this._storage&&this._storage.remove(Ce.PullConfig),this._config=null;const n=`${e}_${t.replaceAll(" ","_")}`;this.loadConfig(n).then(s=>{this.setConfig(s,!0),this.updateWatch(),this.startCheckConfig(),this.connect().catch(i=>{this.getLogger().error(i)})},s=>{this.getLogger().error(`${$.getDateForLog()}: Pull: could not read push-server config `,s),this.status=Ne.Offline,this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),(s?.status==401||s?.status==403)&&(this.stopCheckConfig(),this.onCustomEvent("onPullError",["AUTHORIZE_ERROR"]))})}stop(e=Se.NORMAL_CLOSURE,t="manual stop"){this.disconnect(e,t),this.stopCheckConfig()}reconnect(e,t,n=1){this.disconnect(e,t),this.scheduleReconnect(n)}setLastMessageId(e){this._session.mid=e}async sendMessage(e,t,n,s,i){const o={userList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Publish,o):this.sendMessageBatch([o])}async sendMessageToChannels(e,t,n,s,i){const o={channelList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Publish,o):this.sendMessageBatch([o])}capturePullEvent(e=!0){this._debug=e}enableLogging(e=!0){this._sharedConfig.setLoggingEnabled(e),this._loggingEnabled=e}async listChannels(){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.ListChannels,{})||Promise.reject(new Error("jsonRpcAdapter not init"))}async getUsersLastSeen(e){if(!N.isArray(e)||!e.every(n=>typeof n=="number"))throw new Error("userList must be an array of numbers");const t={};return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.GetUsersLastSeen,{userList:e}).then(i=>{const o=[];for(let l=0;l<e.length;l++)i.hasOwnProperty(e[l])||o.push(e[l]);if(o.length===0)return n(t);const a={userIds:o,sendToQueueSever:!0};this._restClient.callMethod("pull.api.user.getLastSeen",a).then(l=>{const u=l.getData().result;for(const c in u)t[Number(c)]=Number(u[c]);return n(t)}).catch(l=>{this.getLogger().error(l),s(l)})}).catch(i=>{this.getLogger().error(i),s(i)})})}async ping(e=5){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Ping,{},e)}async subscribeUserStatusChange(e,t){return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.SubscribeStatusChange,{userId:e}).then(()=>(this._userStatusCallbacks[e]||(this._userStatusCallbacks[e]=[]),N.isFunction(t)&&this._userStatusCallbacks[e].push(t),n())).catch(i=>s(i))})}async unsubscribeUserStatusChange(e,t){return this._userStatusCallbacks[e]&&(this._userStatusCallbacks[e]=this._userStatusCallbacks[e].filter(n=>n!==t),this._userStatusCallbacks[e].length===0)?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.UnsubscribeStatusChange,{userId:e}):Promise.resolve()}getRevision(){return this._config&&this._config.api?this._config.api.revision_web:null}getServerVersion(){return this._config&&this._config.server?this._config.server.version:0}getServerMode(){return this._config&&this._config.server?this._config.server.mode:null}getConfig(){return this._config}getDebugInfo(){if(!JSON||!JSON.stringify)return{};let e;this._config&&this._config.channels?e={ChannelID:this._config.channels.private?.id||"n/a",ChannelDie:this._config.channels.private?.end||"n/a",ChannelDieShared:this._config.channels.shared?.end||"n/a"}:e={ConfigError:"config is not loaded"};let t="-";return this._connectors.webSocket&&this._connectors.webSocket?.socket&&(this.isJsonRpc()?t="json-rpc":t=this._connectors.webSocket?.socket?.url.search("binaryMode=true")!=-1?"protobuf":"text"),{UserId:this._userId+(this._userId>0?"":"(guest)"),"Guest userId":this._guestMode&&this._guestUserId!==0?this._guestUserId:"-","Browser online":navigator.onLine?"Y":"N",Connect:this.isConnected()?"Y":"N","Server type":this.isSharedMode()?"cloud":"local","WebSocket supported":this.isWebSocketSupported()?"Y":"N","WebSocket connected":this._connectors.webSocket&&this._connectors.webSocket.connected?"Y":"N","WebSocket mode":t,"Try connect":this._reconnectTimeout?"Y":"N","Try number":this._connectionAttempt,Path:this.connector?.connectionPath||"-",...e,"Last message":this._session.mid||"-","Session history":this._session.history,"Watch tags":this._watchTagsQueue.entries()}}getConnectionPath(e){let t;const n={};switch(e){case te.WebSocket:t=this._isSecure?this._config?.server.websocket_secure:this._config?.server.websocket;break;case te.LongPolling:t=this._isSecure?this._config?.server.long_pooling_secure:this._config?.server.long_polling;break;default:throw new Error(`Unknown connection type ${e}`)}if(!N.isStringFilled(t))throw new Error("Empty path");if(typeof this._config?.jwt=="string"&&this._config?.jwt!=="")n.token=this._config?.jwt;else{const s=[];if(this._config?.channels?.private&&s.push(this._config.channels.private?.id||""),this._config?.channels.private?.id&&s.push(this._config.channels.private.id),this._config?.channels.shared?.id&&s.push(this._config.channels.shared.id),s.length===0)throw new Error("Empty channels");n.CHANNEL_ID=s.join("/")}if(this.isJsonRpc()?n.jsonRpc="true":this.isProtobufSupported()&&(n.binaryMode="true"),this.isSharedMode()){if(!this._config?.clientId)throw new Error("Push-server is in shared mode, but clientId is not set");n.clientId=this._config.clientId}return this._session.mid&&(n.mid=this._session.mid),this._session.tag&&(n.tag=this._session.tag),this._session.time&&(n.time=this._session.time),n.revision=nr,`${t}?${$.buildQueryString(n)}`}getPublicationPath(){const e=this._isSecure?this._config?.server.publish_secure:this._config?.server.publish;if(!e)return"";const t=[];this._config?.channels.private?.id&&t.push(this._config.channels.private.id),this._config?.channels.shared?.id&&t.push(this._config.channels.shared.id);const n={CHANNEL_ID:t.join("/")};return e+"?"+$.buildQueryString(n)}isConnected(){return this.connector?this.connector.connected:!1}isWebSocketSupported(){return typeof window.WebSocket<"u"}isWebSocketAllowed(){return this._sharedConfig.isWebSocketBlocked()?!1:this.isWebSocketEnabled()}isWebSocketEnabled(){return!this.isWebSocketSupported()||!this._config||!this._config.server?!1:this._config.server.websocket_enabled}isPublishingSupported(){return this.getServerVersion()>3}isPublishingEnabled(){return this.isPublishingSupported()?this._config?.server.publish_enabled===!0:!1}isProtobufSupported(){return this.getServerVersion()==4&&!vi.isIE()}isJsonRpc(){return this.getServerVersion()>=5}isSharedMode(){return this.getServerMode()===gn.Shared}emit(e){if(e.type==Re.Server||e.type==Re.Client){if(typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof e.moduleId>"u")throw new TypeError(`${$.getDateForLog()}: Pull.emit: parameter moduleId is not specified`);return typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),this._subscribers[e.type][e.moduleId].callbacks.length>0&&this._subscribers[e.type][e.moduleId].callbacks.forEach(t=>{t(e.data,{type:e.type,moduleId:e.moduleId})}),!(typeof e.data>"u")&&!(typeof e.data.command>"u")&&this._subscribers[e.type][e.moduleId].commands[e.data.command]&&this._subscribers[e.type][e.moduleId].commands[e.data.command].length>0&&this._subscribers[e.type][e.moduleId].commands[e.data.command].forEach(t=>{typeof e.data>"u"||t(e.data.params,e.data.extra,e.data.command,{type:e.type,moduleId:e.moduleId})}),!0}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].length<=0||this._subscribers[e.type].forEach(t=>{t(e.data,{type:e.type})}),!0}broadcastMessage(e){const t=e.module_id=e.module_id.toLowerCase(),n=e.command;e.extra||(e.extra={}),e.extra.server_time_unix&&(e.extra.server_time_ago=(Date.now()-e.extra.server_time_unix*1e3)/1e3-(this._config?.server.timeShift||0),e.extra.server_time_ago=Math.max(e.extra.server_time_ago,0)),this.logMessage(e);try{e.extra.sender&&e.extra.sender.type===br.Client?(this.onCustomEvent("onPullClientEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullClientEvent",[t,n,e.params,e.extra],!0),this.emit({type:Re.Client,moduleId:t,data:{command:n,params:N.clone(e.params),extra:N.clone(e.extra)}})):t==="pull"?this.handleInternalPullEvent(n,e):t=="online"?((e?.extra?.server_time_ago||0)<240&&(this.onCustomEvent("onPullOnlineEvent",[n,e.params,e.extra],!0),this.emit({type:Re.Online,data:{command:n,params:N.clone(e.params),extra:N.clone(e.extra)}})),n==="userStatusChange"&&this.emitUserStatusChange(e.params.user_id,e.params.online)):(this.onCustomEvent("onPullEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullEvent",[t,n,e.params,e.extra],!0),this.emit({type:Re.Server,moduleId:t,data:{command:n,params:N.clone(e.params),extra:N.clone(e.extra)}}))}catch(s){this.getLogger().warn(`
30
+ `&&++b,++w===_)throw J("comment");re=ie,ie=H(w)}while(re!=="*"||ie!=="/");++w,ke&&Q(ue,w-2),z=!0}else return"/"}}while(z);var Ae=w;i.lastIndex=0;var q=i.test(H(Ae++));if(!q)for(;Ae<_&&!i.test(H(Ae));)++Ae;var Xe=m.substring(w,w=Ae);return(Xe==='"'||Xe==="'")&&(x=Xe),Xe}function j(z){D.push(z)}function at(){if(!D.length){var z=le();if(z===null)return null;j(z)}return D[0]}function St(z,re){var ie=at(),ue=ie===z;if(ue)return le(),!0;if(!re)throw J("token '"+ie+"', '"+z+"' expected");return!1}function lt(z){var re=null;return z===e?E===b-1&&(y||k==="*"||R)&&(re=S):(E<z&&at(),E===z&&!R&&(y||k==="/")&&(re=S)),re}return Object.defineProperty({next:le,peek:at,push:j,skip:St,cmnt:lt},"line",{get:function(){return b}})}},{}],35:[function(t,n,s){n.exports=b;var i=t(23);((b.prototype=Object.create(i.prototype)).constructor=b).className="Type";var o=t(15),a=t(25),l=t(16),u=t(20),c=t(33),f=t(21),h=t(27),d=t(42),p=t(37),g=t(14),m=t(13),y=t(40),w=t(12),_=t(41);function b(S,E){i.call(this,S,E),this.fields={},this.oneofs=e,this.extensions=e,this.reserved=e,this.group=e,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}Object.defineProperties(b.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var S=Object.keys(this.fields),E=0;E<S.length;++E){var R=this.fields[S[E]],D=R.id;if(this._fieldsById[D])throw Error("duplicate id "+D+" in "+this);this._fieldsById[D]=R}return this._fieldsById}},fieldsArray:{get:function(){return this._fieldsArray||(this._fieldsArray=p.toArray(this.fields))}},oneofsArray:{get:function(){return this._oneofsArray||(this._oneofsArray=p.toArray(this.oneofs))}},ctor:{get:function(){return this._ctor||(this.ctor=b.generateConstructor(this)())},set:function(S){var E=S.prototype;E instanceof f||((S.prototype=new f).constructor=S,p.merge(S.prototype,E)),S.$type=S.prototype.$type=this,p.merge(S,f,!0),this._ctor=S;for(var R=0;R<this.fieldsArray.length;++R)this._fieldsArray[R].resolve();var D={};for(R=0;R<this.oneofsArray.length;++R)D[this._oneofsArray[R].resolve().name]={get:p.oneOfGetter(this._oneofsArray[R].oneof),set:p.oneOfSetter(this._oneofsArray[R].oneof)};R&&Object.defineProperties(S.prototype,D)}}}),b.generateConstructor=function(S){for(var E=p.codegen(["p"],S.name),R=0,D;R<S.fieldsArray.length;++R)(D=S._fieldsArray[R]).map?E("this%s={}",p.safeProp(D.name)):D.repeated&&E("this%s=[]",p.safeProp(D.name));return E("if(p)for(var ks=Object.keys(p),i=0;i<ks.length;++i)if(p[ks[i]]!=null)")("this[ks[i]]=p[ks[i]]")};function k(S){return S._fieldsById=S._fieldsArray=S._oneofsArray=null,delete S.encode,delete S.decode,delete S.verify,S}b.fromJSON=function(S,E){var R=new b(S,E.options);R.extensions=E.extensions,R.reserved=E.reserved;for(var D=Object.keys(E.fields),x=0;x<D.length;++x)R.add((typeof E.fields[D[x]].keyType<"u"?u.fromJSON:l.fromJSON)(D[x],E.fields[D[x]]));if(E.oneofs)for(D=Object.keys(E.oneofs),x=0;x<D.length;++x)R.add(a.fromJSON(D[x],E.oneofs[D[x]]));if(E.nested)for(D=Object.keys(E.nested),x=0;x<D.length;++x){var J=E.nested[D[x]];R.add((J.id!==e?l.fromJSON:J.fields!==e?b.fromJSON:J.values!==e?o.fromJSON:J.methods!==e?c.fromJSON:i.fromJSON)(D[x],J))}return E.extensions&&E.extensions.length&&(R.extensions=E.extensions),E.reserved&&E.reserved.length&&(R.reserved=E.reserved),E.group&&(R.group=!0),E.comment&&(R.comment=E.comment),R},b.prototype.toJSON=function(S){var E=i.prototype.toJSON.call(this,S),R=S?!!S.keepComments:!1;return p.toObject(["options",E&&E.options||e,"oneofs",i.arrayToJSON(this.oneofsArray,S),"fields",i.arrayToJSON(this.fieldsArray.filter(function(D){return!D.declaringField}),S)||{},"extensions",this.extensions&&this.extensions.length?this.extensions:e,"reserved",this.reserved&&this.reserved.length?this.reserved:e,"group",this.group||e,"nested",E&&E.nested||e,"comment",R?this.comment:e])},b.prototype.resolveAll=function(){for(var S=this.fieldsArray,E=0;E<S.length;)S[E++].resolve();var R=this.oneofsArray;for(E=0;E<R.length;)R[E++].resolve();return i.prototype.resolveAll.call(this)},b.prototype.get=function(S){return this.fields[S]||this.oneofs&&this.oneofs[S]||this.nested&&this.nested[S]||null},b.prototype.add=function(S){if(this.get(S.name))throw Error("duplicate name '"+S.name+"' in "+this);if(S instanceof l&&S.extend===e){if(this._fieldsById?this._fieldsById[S.id]:this.fieldsById[S.id])throw Error("duplicate id "+S.id+" in "+this);if(this.isReservedId(S.id))throw Error("id "+S.id+" is reserved in "+this);if(this.isReservedName(S.name))throw Error("name '"+S.name+"' is reserved in "+this);return S.parent&&S.parent.remove(S),this.fields[S.name]=S,S.message=this,S.onAdd(this),k(this)}return S instanceof a?(this.oneofs||(this.oneofs={}),this.oneofs[S.name]=S,S.onAdd(this),k(this)):i.prototype.add.call(this,S)},b.prototype.remove=function(S){if(S instanceof l&&S.extend===e){if(!this.fields||this.fields[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.fields[S.name],S.parent=null,S.onRemove(this),k(this)}if(S instanceof a){if(!this.oneofs||this.oneofs[S.name]!==S)throw Error(S+" is not a member of "+this);return delete this.oneofs[S.name],S.parent=null,S.onRemove(this),k(this)}return i.prototype.remove.call(this,S)},b.prototype.isReservedId=function(S){return i.isReservedId(this.reserved,S)},b.prototype.isReservedName=function(S){return i.isReservedName(this.reserved,S)},b.prototype.create=function(S){return new this.ctor(S)},b.prototype.setup=function(){for(var S=this.fullName,E=[],R=0;R<this.fieldsArray.length;++R)E.push(this._fieldsArray[R].resolve().resolvedType);this.encode=g(this)({Writer:d,types:E,util:p}),this.decode=m(this)({Reader:h,types:E,util:p}),this.verify=y(this)({types:E,util:p}),this.fromObject=w.fromObject(this)({types:E,util:p}),this.toObject=w.toObject(this)({types:E,util:p});var D=_[S];if(D){var x=Object.create(this);x.fromObject=this.fromObject,this.fromObject=D.fromObject.bind(x),x.toObject=this.toObject,this.toObject=D.toObject.bind(x)}return this},b.prototype.encode=function(S,E){return this.setup().encode(S,E)},b.prototype.encodeDelimited=function(S,E){return this.encode(S,E&&E.len?E.fork():E).ldelim()},b.prototype.decode=function(S,E){return this.setup().decode(S,E)},b.prototype.decodeDelimited=function(S){return S instanceof h||(S=h.create(S)),this.decode(S,S.uint32())},b.prototype.verify=function(S){return this.setup().verify(S)},b.prototype.fromObject=function(S){return this.setup().fromObject(S)},b.prototype.toObject=function(S,E){return this.setup().toObject(S,E)},b.d=function(S){return function(E){p.decorateType(E,S)}}},{12:12,13:13,14:14,15:15,16:16,20:20,21:21,23:23,25:25,27:27,33:33,37:37,40:40,41:41,42:42}],36:[function(t,n,s){var i=s,o=t(37),a=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function l(u,c){var f=0,h={};for(c|=0;f<u.length;)h[a[f+c]]=u[f++];return h}i.basic=l([1,5,0,0,0,5,5,0,0,0,1,1,0,2,2]),i.defaults=l([0,0,0,0,0,0,0,0,0,0,0,0,!1,"",o.emptyArray,null]),i.long=l([0,0,0,1,1],7),i.mapKey=l([0,0,0,5,5,0,0,0,1,1,0,2],2),i.packed=l([1,5,0,0,0,5,5,0,0,0,1,1,0])},{37:37}],37:[function(t,n,s){var i=n.exports=t(39),o=t(30),a,l;i.codegen=t(3),i.fetch=t(5),i.path=t(8),i.fs=i.inquire("fs"),i.toArray=function(d){if(d){for(var p=Object.keys(d),g=new Array(p.length),m=0;m<p.length;)g[m]=d[p[m++]];return g}return[]},i.toObject=function(d){for(var p={},g=0;g<d.length;){var m=d[g++],y=d[g++];y!==e&&(p[m]=y)}return p};var u=/\\/g,c=/"/g;i.isReserved=function(d){return/^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(d)},i.safeProp=function(d){return!/^[$\w_]+$/.test(d)||i.isReserved(d)?'["'+d.replace(u,"\\\\").replace(c,'\\"')+'"]':"."+d},i.ucFirst=function(d){return d.charAt(0).toUpperCase()+d.substring(1)};var f=/_([a-z])/g;i.camelCase=function(d){return d.substring(0,1)+d.substring(1).replace(f,function(p,g){return g.toUpperCase()})},i.compareFieldsById=function(d,p){return d.id-p.id},i.decorateType=function(d,p){if(d.$type)return p&&d.$type.name!==p&&(i.decorateRoot.remove(d.$type),d.$type.name=p,i.decorateRoot.add(d.$type)),d.$type;a||(a=t(35));var g=new a(p||d.name);return i.decorateRoot.add(g),g.ctor=d,Object.defineProperty(d,"$type",{value:g,enumerable:!1}),Object.defineProperty(d.prototype,"$type",{value:g,enumerable:!1}),g};var h=0;i.decorateEnum=function(d){if(d.$type)return d.$type;l||(l=t(15));var p=new l("Enum"+h++,d);return i.decorateRoot.add(p),Object.defineProperty(d,"$type",{value:p,enumerable:!1}),p},Object.defineProperty(i,"decorateRoot",{get:function(){return o.decorated||(o.decorated=new(t(29)))}})},{15:15,29:29,3:3,30:30,35:35,39:39,5:5,8:8}],38:[function(t,n,s){n.exports=o;var i=t(39);function o(c,f){this.lo=c>>>0,this.hi=f>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var l=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(c){if(c===0)return a;var f=c<0;f&&(c=-c);var h=c>>>0,d=(c-h)/4294967296>>>0;return f&&(d=~d>>>0,h=~h>>>0,++h>4294967295&&(h=0,++d>4294967295&&(d=0))),new o(h,d)},o.from=function(c){if(typeof c=="number")return o.fromNumber(c);if(i.isString(c))if(i.Long)c=i.Long.fromString(c);else return o.fromNumber(parseInt(c,10));return c.low||c.high?new o(c.low>>>0,c.high>>>0):a},o.prototype.toNumber=function(c){if(!c&&this.hi>>>31){var f=~this.lo+1>>>0,h=~this.hi>>>0;return f||(h=h+1>>>0),-(f+h*4294967296)}return this.lo+this.hi*4294967296},o.prototype.toLong=function(c){return i.Long?new i.Long(this.lo|0,this.hi|0,!!c):{low:this.lo|0,high:this.hi|0,unsigned:!!c}};var u=String.prototype.charCodeAt;o.fromHash=function(c){return c===l?a:new o((u.call(c,0)|u.call(c,1)<<8|u.call(c,2)<<16|u.call(c,3)<<24)>>>0,(u.call(c,4)|u.call(c,5)<<8|u.call(c,6)<<16|u.call(c,7)<<24)>>>0)},o.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)},o.prototype.zzEncode=function(){var c=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^c)>>>0,this.lo=(this.lo<<1^c)>>>0,this},o.prototype.zzDecode=function(){var c=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^c)>>>0,this.hi=(this.hi>>>1^c)>>>0,this},o.prototype.length=function(){var c=this.lo,f=(this.lo>>>28|this.hi<<4)>>>0,h=this.hi>>>24;return h===0?f===0?c<16384?c<128?1:2:c<2097152?3:4:f<16384?f<128?5:6:f<2097152?7:8:h<128?9:10}},{39:39}],39:[function(t,n,s){var i=s;i.asPromise=t(1),i.base64=t(2),i.EventEmitter=t(4),i.float=t(6),i.inquire=t(7),i.utf8=t(10),i.pool=t(9),i.LongBits=t(38),i.emptyArray=Object.freeze?Object.freeze([]):[],i.emptyObject=Object.freeze?Object.freeze({}):{},i.isNode=!!(tr.process&&tr.process.versions&&tr.process.versions.node),i.isInteger=Number.isInteger||function(l){return typeof l=="number"&&isFinite(l)&&Math.floor(l)===l},i.isString=function(l){return typeof l=="string"||l instanceof String},i.isObject=function(l){return l&&typeof l=="object"},i.isset=i.isSet=function(l,u){var c=l[u];return c!=null&&l.hasOwnProperty(u)?typeof c!="object"||(Array.isArray(c)?c.length:Object.keys(c).length)>0:!1},i.Buffer=function(){try{var l=i.inquire("buffer").Buffer;return l.prototype.utf8Write?l:null}catch{return null}}(),i._Buffer_from=null,i._Buffer_allocUnsafe=null,i.newBuffer=function(l){return typeof l=="number"?i.Buffer?i._Buffer_allocUnsafe(l):new i.Array(l):i.Buffer?i._Buffer_from(l):typeof Uint8Array>"u"?l:new Uint8Array(l)},i.Array=typeof Uint8Array<"u"?Uint8Array:Array,i.Long=tr.dcodeIO&&tr.dcodeIO.Long||i.inquire("long"),i.key2Re=/^true|false|0|1$/,i.key32Re=/^-?(?:0|[1-9][0-9]*)$/,i.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,i.longToHash=function(l){return l?i.LongBits.from(l).toHash():i.LongBits.zeroHash},i.longFromHash=function(l,u){var c=i.LongBits.fromHash(l);return i.Long?i.Long.fromBits(c.lo,c.hi,u):c.toNumber(!!u)};function o(l,u,c){for(var f=Object.keys(u),h=0;h<f.length;++h)(l[f[h]]===e||!c)&&(l[f[h]]=u[f[h]]);return l}i.merge=o,i.lcFirst=function(l){return l.charAt(0).toLowerCase()+l.substring(1)};function a(l){function u(c,f){if(!(this instanceof u))return new u(c,f);Object.defineProperty(this,"message",{get:function(){return c}}),Error.captureStackTrace?Error.captureStackTrace(this,u):Object.defineProperty(this,"stack",{value:new Error().stack||""}),f&&o(this,f)}return(u.prototype=Object.create(Error.prototype)).constructor=u,Object.defineProperty(u.prototype,"name",{get:function(){return l}}),u.prototype.toString=function(){return this.name+": "+this.message},u}i.newError=a,i.ProtocolError=a("ProtocolError"),i.oneOfGetter=function(l){for(var u={},c=0;c<l.length;++c)u[l[c]]=1;return function(){for(var f=Object.keys(this),h=f.length-1;h>-1;--h)if(u[f[h]]===1&&this[f[h]]!==e&&this[f[h]]!==null)return f[h]}},i.oneOfSetter=function(l){return function(u){for(var c=0;c<l.length;++c)l[c]!==u&&delete this[l[c]]}},i.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},i._configure=function(){var l=i.Buffer;if(!l){i._Buffer_from=i._Buffer_allocUnsafe=null;return}i._Buffer_from=l.from!==Uint8Array.from&&l.from||function(u,c){return new l(u,c)},i._Buffer_allocUnsafe=l.allocUnsafe||function(u){return new l(u)}}},{1:1,10:10,2:2,38:38,4:4,6:6,7:7,9:9}],40:[function(t,n,s){n.exports=c;var i=t(15),o=t(37);function a(f,h){return f.name+": "+h+(f.repeated&&h!=="array"?"[]":f.map&&h!=="object"?"{k:"+f.keyType+"}":"")+" expected"}function l(f,h,d,p){if(h.resolvedType)if(h.resolvedType instanceof i){f("switch(%s){",p)("default:")("return%j",a(h,"enum value"));for(var g=Object.keys(h.resolvedType.values),m=0;m<g.length;++m)f("case %i:",h.resolvedType.values[g[m]]);f("break")("}")}else f("{")("var e=types[%i].verify(%s);",d,p)("if(e)")("return%j+e",h.name+".")("}");else switch(h.type){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":f("if(!util.isInteger(%s))",p)("return%j",a(h,"integer"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":f("if(!util.isInteger(%s)&&!(%s&&util.isInteger(%s.low)&&util.isInteger(%s.high)))",p,p,p,p)("return%j",a(h,"integer|Long"));break;case"float":case"double":f('if(typeof %s!=="number")',p)("return%j",a(h,"number"));break;case"bool":f('if(typeof %s!=="boolean")',p)("return%j",a(h,"boolean"));break;case"string":f("if(!util.isString(%s))",p)("return%j",a(h,"string"));break;case"bytes":f('if(!(%s&&typeof %s.length==="number"||util.isString(%s)))',p,p,p)("return%j",a(h,"buffer"));break}return f}function u(f,h,d){switch(h.keyType){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":f("if(!util.key32Re.test(%s))",d)("return%j",a(h,"integer key"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":f("if(!util.key64Re.test(%s))",d)("return%j",a(h,"integer|Long key"));break;case"bool":f("if(!util.key2Re.test(%s))",d)("return%j",a(h,"boolean key"));break}return f}function c(f){var h=o.codegen(["m"],f.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),d=f.oneofsArray,p={};d.length&&h("var p={}");for(var g=0;g<f.fieldsArray.length;++g){var m=f._fieldsArray[g].resolve(),y="m"+o.safeProp(m.name);if(m.optional&&h("if(%s!=null&&m.hasOwnProperty(%j)){",y,m.name),m.map)h("if(!util.isObject(%s))",y)("return%j",a(m,"object"))("var k=Object.keys(%s)",y)("for(var i=0;i<k.length;++i){"),u(h,m,"k[i]"),l(h,m,g,y+"[k[i]]")("}");else if(m.repeated)h("if(!Array.isArray(%s))",y)("return%j",a(m,"array"))("for(var i=0;i<%s.length;++i){",y),l(h,m,g,y+"[i]")("}");else{if(m.partOf){var w=o.safeProp(m.partOf.name);p[m.partOf.name]===1&&h("if(p%s===1)",w)("return%j",m.partOf.name+": multiple values"),p[m.partOf.name]=1,h("p%s=1",w)}l(h,m,g,y)}m.optional&&h("}")}return h("return null")}},{15:15,37:37}],41:[function(t,n,s){var i=s,o=t(21);i[".google.protobuf.Any"]={fromObject:function(a){if(a&&a["@type"]){var l=this.lookup(a["@type"]);if(l){var u=a["@type"].charAt(0)==="."?a["@type"].substr(1):a["@type"];return this.create({type_url:"/"+u,value:l.encode(l.fromObject(a)).finish()})}}return this.fromObject(a)},toObject:function(a,l){if(l&&l.json&&a.type_url&&a.value){var u=a.type_url.substring(a.type_url.lastIndexOf("/")+1),c=this.lookup(u);c&&(a=c.decode(a.value))}if(!(a instanceof this.ctor)&&a instanceof o){var f=a.$type.toObject(a,l);return f["@type"]=a.$type.fullName,f}return this.toObject(a,l)}}},{21:21}],42:[function(t,n,s){n.exports=d;var i=t(39),o,a=i.LongBits,l=i.base64,u=i.utf8;function c(b,k,S){this.fn=b,this.len=k,this.next=e,this.val=S}function f(){}function h(b){this.head=b.head,this.tail=b.tail,this.len=b.len,this.next=b.states}function d(){this.len=0,this.head=new c(f,0,0),this.tail=this.head,this.states=null}d.create=i.Buffer?function(){return(d.create=function(){return new o})()}:function(){return new d},d.alloc=function(b){return new i.Array(b)},i.Array!==Array&&(d.alloc=i.pool(d.alloc,i.Array.prototype.subarray)),d.prototype._push=function(b,k,S){return this.tail=this.tail.next=new c(b,k,S),this.len+=k,this};function p(b,k,S){k[S]=b&255}function g(b,k,S){for(;b>127;)k[S++]=b&127|128,b>>>=7;k[S]=b}function m(b,k){this.len=b,this.next=e,this.val=k}m.prototype=Object.create(c.prototype),m.prototype.fn=g,d.prototype.uint32=function(b){return this.len+=(this.tail=this.tail.next=new m((b=b>>>0)<128?1:b<16384?2:b<2097152?3:b<268435456?4:5,b)).len,this},d.prototype.int32=function(b){return b<0?this._push(y,10,a.fromNumber(b)):this.uint32(b)},d.prototype.sint32=function(b){return this.uint32((b<<1^b>>31)>>>0)};function y(b,k,S){for(;b.hi;)k[S++]=b.lo&127|128,b.lo=(b.lo>>>7|b.hi<<25)>>>0,b.hi>>>=7;for(;b.lo>127;)k[S++]=b.lo&127|128,b.lo=b.lo>>>7;k[S++]=b.lo}d.prototype.uint64=function(b){var k=a.from(b);return this._push(y,k.length(),k)},d.prototype.int64=d.prototype.uint64,d.prototype.sint64=function(b){var k=a.from(b).zzEncode();return this._push(y,k.length(),k)},d.prototype.bool=function(b){return this._push(p,1,b?1:0)};function w(b,k,S){k[S]=b&255,k[S+1]=b>>>8&255,k[S+2]=b>>>16&255,k[S+3]=b>>>24}d.prototype.fixed32=function(b){return this._push(w,4,b>>>0)},d.prototype.sfixed32=d.prototype.fixed32,d.prototype.fixed64=function(b){var k=a.from(b);return this._push(w,4,k.lo)._push(w,4,k.hi)},d.prototype.sfixed64=d.prototype.fixed64,d.prototype.float=function(b){return this._push(i.float.writeFloatLE,4,b)},d.prototype.double=function(b){return this._push(i.float.writeDoubleLE,8,b)};var _=i.Array.prototype.set?function(b,k,S){k.set(b,S)}:function(b,k,S){for(var E=0;E<b.length;++E)k[S+E]=b[E]};d.prototype.bytes=function(b){var k=b.length>>>0;if(!k)return this._push(p,1,0);if(i.isString(b)){var S=d.alloc(k=l.length(b));l.decode(b,S,0),b=S}return this.uint32(k)._push(_,k,b)},d.prototype.string=function(b){var k=u.length(b);return k?this.uint32(k)._push(u.write,k,b):this._push(p,1,0)},d.prototype.fork=function(){return this.states=new h(this),this.head=this.tail=new c(f,0,0),this.len=0,this},d.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 c(f,0,0),this.len=0),this},d.prototype.ldelim=function(){var b=this.head,k=this.tail,S=this.len;return this.reset().uint32(S),S&&(this.tail.next=b.next,this.tail=k,this.len+=S),this},d.prototype.finish=function(){for(var b=this.head.next,k=this.constructor.alloc(this.len),S=0;b;)b.fn(b.val,k,S),S+=b.len,b=b.next;return k},d._configure=function(b){o=b}},{39:39}],43:[function(t,n,s){n.exports=l;var i=t(42);(l.prototype=Object.create(i.prototype)).constructor=l;var o=t(39),a=o.Buffer;function l(){i.call(this)}l.alloc=function(f){return(l.alloc=o._Buffer_allocUnsafe)(f)};var u=a&&a.prototype instanceof Uint8Array&&a.prototype.set.name==="set"?function(f,h,d){h.set(f,d)}:function(f,h,d){if(f.copy)f.copy(h,d,0,f.length);else for(var p=0;p<f.length;)h[d++]=f[p++]};l.prototype.bytes=function(f){o.isString(f)&&(f=o._Buffer_from(f,"base64"));var h=f.length>>>0;return this.uint32(h),h&&this._push(u,h,f),this};function c(f,h,d){f.length<40?o.utf8.write(f,h,d):h.utf8Write(f,d)}l.prototype.string=function(f){var h=a.byteLength(f);return this.uint32(h),h&&this._push(c,h,f),this}},{39:39,42:42}]},{},[19])})()}(jn)),jn.exports}var Nh=Ch();const rr=Ih(Nh);let G=rr.Reader,ve=rr.Writer,pe=rr.util;const F=rr.roots["push-server"]||(rr.roots["push-server"]={});F.RequestBatch=function(){function r(e){if(this.requests=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.requests=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.requests!=null&&e.requests.length)for(var n=0;n<e.requests.length;++n)F.Request.encode(e.requests[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.RequestBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.requests&&s.requests.length||(s.requests=[]),s.requests.push(F.Request.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.Request=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.incomingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:pe.oneOfGetter(e=["incomingMessages","channelStats","serverStats"]),set:pe.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ve.create()),t.incomingMessages!=null&&t.hasOwnProperty("incomingMessages")&&F.IncomingMessagesRequest.encode(t.incomingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&F.ChannelStatsRequest.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&F.ServerStatsRequest.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new F.Request;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.incomingMessages=F.IncomingMessagesRequest.decode(t,t.uint32());break;case 2:i.channelStats=F.ChannelStatsRequest.decode(t,t.uint32());break;case 3:i.serverStats=F.ServerStatsRequest.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),F.IncomingMessagesRequest=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)F.IncomingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.IncomingMessagesRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(F.IncomingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.IncomingMessage=function(){function r(e){if(this.receivers=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.receivers=pe.emptyArray,r.prototype.sender=null,r.prototype.body="",r.prototype.expiry=0,r.prototype.type="",r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.receivers!=null&&e.receivers.length)for(var n=0;n<e.receivers.length;++n)F.Receiver.encode(e.receivers[n],t.uint32(10).fork()).ldelim();return e.sender!=null&&e.hasOwnProperty("sender")&&F.Sender.encode(e.sender,t.uint32(18).fork()).ldelim(),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(26).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(32).uint32(e.expiry),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(42).string(e.type),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.IncomingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.receivers&&s.receivers.length||(s.receivers=[]),s.receivers.push(F.Receiver.decode(e,e.uint32()));break;case 2:s.sender=F.Sender.decode(e,e.uint32());break;case 3:s.body=e.string();break;case 4:s.expiry=e.uint32();break;case 5:s.type=e.string();break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelStatsRequest=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)F.ChannelId.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(F.ChannelId.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelId=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelId;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),F.ServerStatsRequest=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ServerStatsRequest;e.pos<n;){var i=e.uint32();switch(i>>>3){default:e.skipType(i&7);break}}return s},r}(),F.Sender=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.type=0,r.prototype.id=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.type!=null&&e.hasOwnProperty("type")&&t.uint32(8).int32(e.type),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(18).bytes(e.id),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.Sender;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.type=e.int32();break;case 2:s.id=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),F.SenderType=function(){var r={},e=Object.create(r);return e[r[0]="UNKNOWN"]=0,e[r[1]="CLIENT"]=1,e[r[2]="BACKEND"]=2,e}(),F.Receiver=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.signature=pe.newBuffer([]),r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.signature!=null&&e.hasOwnProperty("signature")&&t.uint32(26).bytes(e.signature),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.Receiver;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.signature=e.bytes();break;default:e.skipType(i&7);break}}return s},r}(),F.ResponseBatch=function(){function r(e){if(this.responses=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.responses=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.responses!=null&&e.responses.length)for(var n=0;n<e.responses.length;++n)F.Response.encode(e.responses[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ResponseBatch;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.responses&&s.responses.length||(s.responses=[]),s.responses.push(F.Response.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.Response=function(){function r(t){if(t)for(var n=Object.keys(t),s=0;s<n.length;++s)t[n[s]]!=null&&(this[n[s]]=t[n[s]])}r.prototype.outgoingMessages=null,r.prototype.channelStats=null,r.prototype.serverStats=null;var e;return Object.defineProperty(r.prototype,"command",{get:pe.oneOfGetter(e=["outgoingMessages","channelStats","serverStats"]),set:pe.oneOfSetter(e)}),r.create=function(t){return new r(t)},r.encode=function(t,n){return n||(n=ve.create()),t.outgoingMessages!=null&&t.hasOwnProperty("outgoingMessages")&&F.OutgoingMessagesResponse.encode(t.outgoingMessages,n.uint32(10).fork()).ldelim(),t.channelStats!=null&&t.hasOwnProperty("channelStats")&&F.ChannelStatsResponse.encode(t.channelStats,n.uint32(18).fork()).ldelim(),t.serverStats!=null&&t.hasOwnProperty("serverStats")&&F.JsonResponse.encode(t.serverStats,n.uint32(26).fork()).ldelim(),n},r.decode=function(t,n){t instanceof G||(t=G.create(t));for(var s=n===void 0?t.len:t.pos+n,i=new F.Response;t.pos<s;){var o=t.uint32();switch(o>>>3){case 1:i.outgoingMessages=F.OutgoingMessagesResponse.decode(t,t.uint32());break;case 2:i.channelStats=F.ChannelStatsResponse.decode(t,t.uint32());break;case 3:i.serverStats=F.JsonResponse.decode(t,t.uint32());break;default:t.skipType(o&7);break}}return i},r}(),F.OutgoingMessagesResponse=function(){function r(e){if(this.messages=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.messages=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.messages!=null&&e.messages.length)for(var n=0;n<e.messages.length;++n)F.OutgoingMessage.encode(e.messages[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.OutgoingMessagesResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.messages&&s.messages.length||(s.messages=[]),s.messages.push(F.OutgoingMessage.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.OutgoingMessage=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.body="",r.prototype.expiry=0,r.prototype.created=0,r.prototype.sender=null,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.body!=null&&e.hasOwnProperty("body")&&t.uint32(18).string(e.body),e.expiry!=null&&e.hasOwnProperty("expiry")&&t.uint32(24).uint32(e.expiry),e.created!=null&&e.hasOwnProperty("created")&&t.uint32(37).fixed32(e.created),e.sender!=null&&e.hasOwnProperty("sender")&&F.Sender.encode(e.sender,t.uint32(42).fork()).ldelim(),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.OutgoingMessage;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.body=e.string();break;case 3:s.expiry=e.uint32();break;case 4:s.created=e.fixed32();break;case 5:s.sender=F.Sender.decode(e,e.uint32());break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelStatsResponse=function(){function r(e){if(this.channels=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.channels=pe.emptyArray,r.create=function(e){return new r(e)},r.encode=function(e,t){if(t||(t=ve.create()),e.channels!=null&&e.channels.length)for(var n=0;n<e.channels.length;++n)F.ChannelStats.encode(e.channels[n],t.uint32(10).fork()).ldelim();return t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelStatsResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.channels&&s.channels.length||(s.channels=[]),s.channels.push(F.ChannelStats.decode(e,e.uint32()));break;default:e.skipType(i&7);break}}return s},r}(),F.ChannelStats=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.id=pe.newBuffer([]),r.prototype.isPrivate=!1,r.prototype.isOnline=!1,r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.id!=null&&e.hasOwnProperty("id")&&t.uint32(10).bytes(e.id),e.isPrivate!=null&&e.hasOwnProperty("isPrivate")&&t.uint32(16).bool(e.isPrivate),e.isOnline!=null&&e.hasOwnProperty("isOnline")&&t.uint32(24).bool(e.isOnline),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.ChannelStats;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.id=e.bytes();break;case 2:s.isPrivate=e.bool();break;case 3:s.isOnline=e.bool();break;default:e.skipType(i&7);break}}return s},r}(),F.JsonResponse=function(){function r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)e[t[n]]!=null&&(this[t[n]]=e[t[n]])}return r.prototype.json="",r.create=function(e){return new r(e)},r.encode=function(e,t){return t||(t=ve.create()),e.json!=null&&e.hasOwnProperty("json")&&t.uint32(10).string(e.json),t},r.decode=function(e,t){e instanceof G||(e=G.create(e));for(var n=t===void 0?e.len:e.pos+t,s=new F.JsonResponse;e.pos<n;){var i=e.uint32();switch(i>>>3){case 1:s.json=e.string();break;default:e.skipType(i&7);break}}return s},r}();const Rh=F.ResponseBatch,jo=F.RequestBatch,Lh=F.IncomingMessage,Uo=F.Receiver;class Bo{_logger=null;_connected=!1;_connectionType;_disconnectCode=0;_disconnectReason="";_parent;_callbacks;constructor(e){this._parent=e.parent,this._connectionType=te.Undefined,this._callbacks={onOpen:N.isFunction(e.onOpen)?e.onOpen:()=>{},onDisconnect:N.isFunction(e.onDisconnect)?e.onDisconnect:()=>{},onError:N.isFunction(e.onError)?e.onError:()=>{},onMessage:N.isFunction(e.onMessage)?e.onMessage:()=>{}}}setLogger(e){this._logger=e}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){}get connected(){return this._connected}set connected(e){e!=this._connected&&(this._connected=e,this._connected?this._callbacks.onOpen():this._callbacks.onDisconnect({code:this.disconnectCode,reason:this.disconnectReason}))}get disconnectCode(){return this._disconnectCode}get disconnectReason(){return this._disconnectReason}get connectionPath(){return this._parent.getConnectionPath(this._connectionType)}}class Fh extends Bo{_socket;_onSocketOpenHandler;_onSocketCloseHandler;_onSocketErrorHandler;_onSocketMessageHandler;constructor(e){super(e),this._connectionType=te.WebSocket,this._socket=null,this._onSocketOpenHandler=this._onSocketOpen.bind(this),this._onSocketCloseHandler=this._onSocketClose.bind(this),this._onSocketErrorHandler=this._onSocketError.bind(this),this._onSocketMessageHandler=this._onSocketMessage.bind(this)}destroy(){super.destroy(),this._socket&&(this._socket.close(),this._socket=null)}connect(){if(this._socket){if(this._socket.readyState===1)return;this.clearEventListener(),this._socket.close(),this._socket=null}this._createSocket()}get socket(){return this._socket}disconnect(e,t){this._socket!==null&&(this.clearEventListener(),this._socket.close(e,t)),this._socket=null,this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}send(e){return!this._socket||this._socket.readyState!==1?(this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: WebSocket is not connected`)),!1):(this._socket.send(e),!0)}_onSocketOpen(){this.connected=!0}_onSocketClose(e){this._socket=null,this._disconnectCode=Number(e.code),this._disconnectReason=e.reason,this.connected=!1}_onSocketError(e){this._callbacks.onError(new Error(`Socket error: ${e}`))}_onSocketMessage(e){this._callbacks.onMessage(e.data)}clearEventListener(){this._socket&&(this._socket.removeEventListener("open",this._onSocketOpenHandler),this._socket.removeEventListener("close",this._onSocketCloseHandler),this._socket.removeEventListener("error",this._onSocketErrorHandler),this._socket.removeEventListener("message",this._onSocketMessageHandler))}_createSocket(){if(this._socket)throw new Error("Socket already exists");if(!this.connectionPath)throw new Error("Websocket connection path is not defined");this._socket=new WebSocket(this.connectionPath),this._socket.binaryType="arraybuffer",this._socket.addEventListener("open",this._onSocketOpenHandler),this._socket.addEventListener("close",this._onSocketCloseHandler),this._socket.addEventListener("error",this._onSocketErrorHandler),this._socket.addEventListener("message",this._onSocketMessageHandler)}}const Mh=60;class Ph extends Bo{_active;_requestTimeout;_failureTimeout;_xhr;_requestAborted;constructor(e){super(e),this._active=!1,this._connectionType=te.LongPolling,this._requestTimeout=null,this._failureTimeout=null,this._xhr=this.createXhr(),this._requestAborted=!1}connect(){this._active=!0,this.performRequest()}disconnect(e,t){this._active=!1,this.clearTimeOut(),this._xhr&&(this._requestAborted=!0,this._xhr.abort()),this._disconnectCode=e,this._disconnectReason=t,this.connected=!1}performRequest(){if(this._active){if(!this.connectionPath)throw new Error("Long polling connection path is not defined");this._xhr.readyState!==0&&this._xhr.readyState!==4||(this.clearTimeOut(),this._failureTimeout=setTimeout(()=>{this.connected=!0},5e3),this._requestTimeout=setTimeout(this.onRequestTimeout.bind(this),Mh*1e3),this._xhr.open("GET",this.connectionPath),this._xhr.send())}}onRequestTimeout(){this._requestAborted=!0,this._xhr.abort(),this.performRequest()}onXhrReadyStateChange(){this._xhr.readyState===4&&((!this._requestAborted||this._xhr.status==200)&&this.onResponse(this._xhr.response),this._requestAborted=!1)}send(e){const t=this._parent.getPublicationPath();if(!t)return this.getLogger().error(new Error(`${$.getDateForLog()}: Pull: publication path is empty`)),!1;const n=new XMLHttpRequest;return n.open("POST",t),n.send(e),!0}onResponse(e){if(this.clearTimeOut(),this._xhr.status===200)this.connected=!0,N.isStringFilled(e)||e instanceof ArrayBuffer?this._callbacks.onMessage(e):this._parent.session.mid=null,this.performRequest();else if(this._xhr.status===304){if(this.connected=!0,this._xhr.getResponseHeader("Expires")==="Thu, 01 Jan 1973 11:11:01 GMT"){const t=this._xhr.getResponseHeader("Last-Message-Id");N.isStringFilled(t)&&this._parent.setLastMessageId(t||"")}this.performRequest()}else this._callbacks.onError(new Error("Could not connect to the server")),this.connected=!1}clearTimeOut(){this._failureTimeout&&(clearTimeout(this._failureTimeout),this._failureTimeout=null),this._requestTimeout&&(clearTimeout(this._requestTimeout),this._requestTimeout=null)}createXhr(){const e=new XMLHttpRequest;return this._parent.isProtobufSupported()&&!this._parent.isJsonRpc()&&(e.responseType="arraybuffer"),e.addEventListener("readystatechange",this.onXhrReadyStateChange.bind(this)),e}}const nr=19,$o=30*60,xh=5e3,Dh=60*1e3,jh=10,Wo=10,Uh="ping",Bh="pong",qo="bx-pull-session",$h=20,Vo={api:{},channels:{},publicChannels:{},server:{timeShift:0},clientId:null,jwt:null,exp:0};class Ho{_logger=null;_restClient;_status;_context;_guestMode;_guestUserId;_userId;_configGetMethod;_getPublicListMethod;_siteId;_enabled;_unloading=!1;_starting=!1;_debug=!1;_connectionAttempt=0;_connectionType=te.WebSocket;_reconnectTimeout=null;_restartTimeout=null;_restoreWebSocketTimeout=null;_skipStorageInit;_skipCheckRevision;_subscribers={};_watchTagsQueue=new Map;_watchUpdateInterval=174e4;_watchForceUpdateInterval=5e3;_configTimestamp=0;_session={mid:null,tag:null,time:null,history:{},lastMessageIds:[],messageCount:0};_connectors={[te.Undefined]:null,[te.WebSocket]:null,[te.LongPolling]:null};_isSecure;_config=null;_storage=null;_sharedConfig;_channelManager;_jsonRpcAdapter=null;_checkInterval=null;_offlineTimeout=null;_watchUpdateTimeout=null;_pingWaitTimeout=null;_isManualDisconnect=!1;_loggingEnabled=!1;_onPingTimeoutHandler;_userStatusCallbacks={};_connectPromise=null;_startingPromise=null;constructor(e){this._restClient=e.b24,this._status=Re.Offline,this._context="master",e.restApplication&&(typeof e.configGetMethod>"u"&&(e.configGetMethod="pull.application.config.get"),typeof e.skipCheckRevision>"u"&&(e.skipCheckRevision=!0),N.isStringFilled(e.restApplication)&&(e.siteId=e.restApplication),e.serverEnabled=!0),this._guestMode=e.guestMode?$.toBoolean(e.guestMode):!1,this._guestUserId=e.guestUserId?$.toInteger(e.guestUserId):0,this._guestMode&&this._guestUserId>0?this._userId=this._guestUserId:(this._guestMode=!1,this._userId=e.userId?$.toInteger(e.userId):0),this._siteId=e.siteId??"none",this._enabled=N.isUndefined(e.serverEnabled)?!0:e.serverEnabled===!0,this._configGetMethod=N.isStringFilled(e.configGetMethod)?e.configGetMethod||"":"pull.config.get",this._getPublicListMethod=N.isStringFilled(e.getPublicListMethod)?e.getPublicListMethod||"":"pull.channel.public.list",this._skipStorageInit=e.skipStorageInit===!0,this._skipCheckRevision=e.skipCheckRevision===!0,N.isUndefined(e.configTimestamp)||(this._configTimestamp=$.toInteger(e.configTimestamp)),this._isSecure=document?.location.href.indexOf("https")===0,this._userId&&!this._skipStorageInit&&(this._storage=new xo({userId:this._userId,siteId:this._siteId})),this._sharedConfig=new Oh({onWebSocketBlockChanged:this.onWebSocketBlockChanged.bind(this),storage:this._storage}),this._channelManager=new Ah({b24:this._restClient,getPublicListMethod:this._getPublicListMethod}),this._loggingEnabled=this._sharedConfig.isLoggingEnabled(),this._onPingTimeoutHandler=this.onPingTimeout.bind(this)}setLogger(e){this._logger=e,this._jsonRpcAdapter?.setLogger(this.getLogger()),this._storage?.setLogger(this.getLogger()),this._sharedConfig.setLogger(this.getLogger()),this._channelManager.setLogger(this.getLogger()),this._connectors.webSocket?.setLogger(this.getLogger()),this._connectors.longPolling?.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this.stop(Se.NORMAL_CLOSURE,"manual stop"),this.onBeforeUnload()}init(){this._connectors.webSocket=new Fh({parent:this,onOpen:this.onWebSocketOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onWebSocketDisconnect.bind(this),onError:this.onWebSocketError.bind(this)}),this._connectors.longPolling=new Ph({parent:this,onOpen:this.onLongPollingOpen.bind(this),onMessage:this.onIncomingMessage.bind(this),onDisconnect:this.onLongPollingDisconnect.bind(this),onError:this.onLongPollingError.bind(this)}),this._connectionType=this.isWebSocketAllowed()?te.WebSocket:te.LongPolling,window.addEventListener("beforeunload",this.onBeforeUnload.bind(this)),window.addEventListener("offline",this.onOffline.bind(this)),window.addEventListener("online",this.onOnline.bind(this)),this._jsonRpcAdapter=new Th({connector:this._connectors.webSocket,handlers:{"incoming.message":this.handleRpcIncomingMessage.bind(this)}})}get connector(){return this._connectors[this._connectionType]}get status(){return this._status}set status(e){this._status!==e&&(this._status=e,this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),e===Re.Offline?this.sendPullStatusDelayed(e,xh):this.sendPullStatus(e))}get session(){return this._session}subscribe(e){if(!N.isPlainObject(e))return this.attachCommandHandler(e);if(e=e,e.type=e.type||Le.Server,e.command=e.command||null,e.type==Le.Server||e.type==Le.Client){if(typeof e.moduleId>"u")throw new TypeError(`${$.getDateForLog()}: Pull.subscribe: parameter moduleId is not specified`);return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),e.command?(typeof this._subscribers[e.type][e.moduleId].commands[e.command]>"u"&&(this._subscribers[e.type][e.moduleId].commands[e.command]=[]),this._subscribers[e.type][e.moduleId].commands[e.command].push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||typeof e.command>"u"||e.command===null||(this._subscribers[e.type][e.moduleId].commands[e.command]=this._subscribers[e.type][e.moduleId].commands[e.command].filter(t=>t!==e.callback))}):(this._subscribers[e.type][e.moduleId].callbacks.push(e.callback),()=>{typeof e.type>"u"||typeof e.moduleId>"u"||(this._subscribers[e.type][e.moduleId].callbacks=this._subscribers[e.type][e.moduleId].callbacks.filter(t=>t!==e.callback))})}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].push(e.callback),()=>{typeof e.type>"u"||(this._subscribers[e.type]=this._subscribers[e.type].filter(t=>t!==e.callback))}}attachCommandHandler(e){if(typeof e.getModuleId!="function"||typeof e.getModuleId()!="string")return this.getLogger().error(`${$.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string.`),()=>{};let t=Le.Server;return typeof e.getSubscriptionType=="function"&&(t=e.getSubscriptionType()),this.subscribe({type:t,moduleId:e.getModuleId(),callback:n=>{let s=null;if(typeof e.getMap=="function"){const i=e.getMap();if(i&&typeof i=="object"){const o=i[n.command];typeof o=="function"?s=o.bind(e):typeof o=="string"&&typeof e[o]=="function"&&(s=e[o].bind(e))}}if(!s){const i=`handle${$.capitalize(n.command)}`;typeof e[i]=="function"&&(s=e[i].bind(e))}s&&(this._debug&&this._context!=="master"&&this.getLogger().warn(`${$.getDateForLog()}: Pull.attachCommandHandler: result of handler.getModuleId() is not a string`,n),s(n.params,n.extra,n.command))}})}async start(e=null){let t=!0;if(this.isConnected())return Promise.resolve(!0);if(this._starting&&this._startingPromise)return this._startingPromise;if(!this._userId)throw new Error("Not set userId");if(this._siteId==="none")throw new Error("Not set siteId");let n=!1;if(e&&N.isPlainObject(e)&&(typeof e?.skipReconnectToLastSession<"u"&&(n=e.skipReconnectToLastSession,delete e.skipReconnectToLastSession),this._config=e,t=!1),!this._enabled)return Promise.reject({ex:{error:"PULL_DISABLED",error_description:"Push & Pull server is disabled"}});const s=Date.now();let i;return!n&&this._storage&&(i=this._storage.get(qo,null)),N.isPlainObject(i)&&i.hasOwnProperty("ttl")&&i.ttl>=s&&(this._session.mid=i.mid),this._starting=!0,this._startingPromise=new Promise((o,a)=>{this.loadConfig("client_start").then(l=>{this.setConfig(l,t),this.init(),this.updateWatch(!0),this.startCheckConfig(),this.connect().then(()=>o(!0),u=>a(u))}).catch(l=>{this._starting=!1,this.status=Re.Offline,this.stopCheckConfig(),this.getLogger().error(`${$.getDateForLog()}: Pull: could not read push-server config `,l),a(l)})})}restart(e=Se.NORMAL_CLOSURE,t="manual restart"){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),this.getLogger().log(`${$.getDateForLog()}: Pull: restarting with code ${e}`),this.disconnect(e,t),this._storage&&this._storage.remove(Ne.PullConfig),this._config=null;const n=`${e}_${t.replaceAll(" ","_")}`;this.loadConfig(n).then(s=>{this.setConfig(s,!0),this.updateWatch(),this.startCheckConfig(),this.connect().catch(i=>{this.getLogger().error(i)})},s=>{this.getLogger().error(`${$.getDateForLog()}: Pull: could not read push-server config `,s),this.status=Re.Offline,this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),(s?.status==401||s?.status==403)&&(this.stopCheckConfig(),this.onCustomEvent("onPullError",["AUTHORIZE_ERROR"]))})}stop(e=Se.NORMAL_CLOSURE,t="manual stop"){this.disconnect(e,t),this.stopCheckConfig()}reconnect(e,t,n=1){this.disconnect(e,t),this.scheduleReconnect(n)}setLastMessageId(e){this._session.mid=e}async sendMessage(e,t,n,s,i){const o={userList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Publish,o):this.sendMessageBatch([o])}async sendMessageToChannels(e,t,n,s,i){const o={channelList:e,body:{module_id:t,command:n,params:s},expiry:i};return this.isJsonRpc()?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Publish,o):this.sendMessageBatch([o])}capturePullEvent(e=!0){this._debug=e}enableLogging(e=!0){this._sharedConfig.setLoggingEnabled(e),this._loggingEnabled=e}async listChannels(){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.ListChannels,{})||Promise.reject(new Error("jsonRpcAdapter not init"))}async getUsersLastSeen(e){if(!N.isArray(e)||!e.every(n=>typeof n=="number"))throw new Error("userList must be an array of numbers");const t={};return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.GetUsersLastSeen,{userList:e}).then(i=>{const o=[];for(let l=0;l<e.length;l++)i.hasOwnProperty(e[l])||o.push(e[l]);if(o.length===0)return n(t);const a={userIds:o,sendToQueueSever:!0};this._restClient.callMethod("pull.api.user.getLastSeen",a).then(l=>{const u=l.getData().result;for(const c in u)t[Number(c)]=Number(u[c]);return n(t)}).catch(l=>{this.getLogger().error(l),s(l)})}).catch(i=>{this.getLogger().error(i),s(i)})})}async ping(e=5){return this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.Ping,{},e)}async subscribeUserStatusChange(e,t){return new Promise((n,s)=>{this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.SubscribeStatusChange,{userId:e}).then(()=>(this._userStatusCallbacks[e]||(this._userStatusCallbacks[e]=[]),N.isFunction(t)&&this._userStatusCallbacks[e].push(t),n())).catch(i=>s(i))})}async unsubscribeUserStatusChange(e,t){return this._userStatusCallbacks[e]&&(this._userStatusCallbacks[e]=this._userStatusCallbacks[e].filter(n=>n!==t),this._userStatusCallbacks[e].length===0)?this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.UnsubscribeStatusChange,{userId:e}):Promise.resolve()}getRevision(){return this._config&&this._config.api?this._config.api.revision_web:null}getServerVersion(){return this._config&&this._config.server?this._config.server.version:0}getServerMode(){return this._config&&this._config.server?this._config.server.mode:null}getConfig(){return this._config}getDebugInfo(){if(!JSON||!JSON.stringify)return{};let e;this._config&&this._config.channels?e={ChannelID:this._config.channels.private?.id||"n/a",ChannelDie:this._config.channels.private?.end||"n/a",ChannelDieShared:this._config.channels.shared?.end||"n/a"}:e={ConfigError:"config is not loaded"};let t="-";return this._connectors.webSocket&&this._connectors.webSocket?.socket&&(this.isJsonRpc()?t="json-rpc":t=this._connectors.webSocket?.socket?.url.search("binaryMode=true")!=-1?"protobuf":"text"),{UserId:this._userId+(this._userId>0?"":"(guest)"),"Guest userId":this._guestMode&&this._guestUserId!==0?this._guestUserId:"-","Browser online":navigator.onLine?"Y":"N",Connect:this.isConnected()?"Y":"N","Server type":this.isSharedMode()?"cloud":"local","WebSocket supported":this.isWebSocketSupported()?"Y":"N","WebSocket connected":this._connectors.webSocket&&this._connectors.webSocket.connected?"Y":"N","WebSocket mode":t,"Try connect":this._reconnectTimeout?"Y":"N","Try number":this._connectionAttempt,Path:this.connector?.connectionPath||"-",...e,"Last message":this._session.mid||"-","Session history":this._session.history,"Watch tags":this._watchTagsQueue.entries()}}getConnectionPath(e){let t;const n={};switch(e){case te.WebSocket:t=this._isSecure?this._config?.server.websocket_secure:this._config?.server.websocket;break;case te.LongPolling:t=this._isSecure?this._config?.server.long_pooling_secure:this._config?.server.long_polling;break;default:throw new Error(`Unknown connection type ${e}`)}if(!N.isStringFilled(t))throw new Error("Empty path");if(typeof this._config?.jwt=="string"&&this._config?.jwt!=="")n.token=this._config?.jwt;else{const s=[];if(this._config?.channels?.private&&s.push(this._config.channels.private?.id||""),this._config?.channels.private?.id&&s.push(this._config.channels.private.id),this._config?.channels.shared?.id&&s.push(this._config.channels.shared.id),s.length===0)throw new Error("Empty channels");n.CHANNEL_ID=s.join("/")}if(this.isJsonRpc()?n.jsonRpc="true":this.isProtobufSupported()&&(n.binaryMode="true"),this.isSharedMode()){if(!this._config?.clientId)throw new Error("Push-server is in shared mode, but clientId is not set");n.clientId=this._config.clientId}return this._session.mid&&(n.mid=this._session.mid),this._session.tag&&(n.tag=this._session.tag),this._session.time&&(n.time=this._session.time),n.revision=nr,`${t}?${$.buildQueryString(n)}`}getPublicationPath(){const e=this._isSecure?this._config?.server.publish_secure:this._config?.server.publish;if(!e)return"";const t=[];this._config?.channels.private?.id&&t.push(this._config.channels.private.id),this._config?.channels.shared?.id&&t.push(this._config.channels.shared.id);const n={CHANNEL_ID:t.join("/")};return e+"?"+$.buildQueryString(n)}isConnected(){return this.connector?this.connector.connected:!1}isWebSocketSupported(){return typeof window.WebSocket<"u"}isWebSocketAllowed(){return this._sharedConfig.isWebSocketBlocked()?!1:this.isWebSocketEnabled()}isWebSocketEnabled(){return!this.isWebSocketSupported()||!this._config||!this._config.server?!1:this._config.server.websocket_enabled}isPublishingSupported(){return this.getServerVersion()>3}isPublishingEnabled(){return this.isPublishingSupported()?this._config?.server.publish_enabled===!0:!1}isProtobufSupported(){return this.getServerVersion()==4&&!ki.isIE()}isJsonRpc(){return this.getServerVersion()>=5}isSharedMode(){return this.getServerMode()===mn.Shared}emit(e){if(e.type==Le.Server||e.type==Le.Client){if(typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]={}),typeof e.moduleId>"u")throw new TypeError(`${$.getDateForLog()}: Pull.emit: parameter moduleId is not specified`);return typeof this._subscribers[e.type][e.moduleId]>"u"&&(this._subscribers[e.type][e.moduleId]={callbacks:[],commands:{}}),this._subscribers[e.type][e.moduleId].callbacks.length>0&&this._subscribers[e.type][e.moduleId].callbacks.forEach(t=>{t(e.data,{type:e.type,moduleId:e.moduleId})}),!(typeof e.data>"u")&&!(typeof e.data.command>"u")&&this._subscribers[e.type][e.moduleId].commands[e.data.command]&&this._subscribers[e.type][e.moduleId].commands[e.data.command].length>0&&this._subscribers[e.type][e.moduleId].commands[e.data.command].forEach(t=>{typeof e.data>"u"||t(e.data.params,e.data.extra,e.data.command,{type:e.type,moduleId:e.moduleId})}),!0}else return typeof this._subscribers[e.type]>"u"&&(this._subscribers[e.type]=[]),this._subscribers[e.type].length<=0||this._subscribers[e.type].forEach(t=>{t(e.data,{type:e.type})}),!0}broadcastMessage(e){const t=e.module_id=e.module_id.toLowerCase(),n=e.command;e.extra||(e.extra={}),e.extra.server_time_unix&&(e.extra.server_time_ago=(Date.now()-e.extra.server_time_unix*1e3)/1e3-(this._config?.server.timeShift||0),e.extra.server_time_ago=Math.max(e.extra.server_time_ago,0)),this.logMessage(e);try{e.extra.sender&&e.extra.sender.type===br.Client?(this.onCustomEvent("onPullClientEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullClientEvent",[t,n,e.params,e.extra],!0),this.emit({type:Le.Client,moduleId:t,data:{command:n,params:N.clone(e.params),extra:N.clone(e.extra)}})):t==="pull"?this.handleInternalPullEvent(n,e):t=="online"?((e?.extra?.server_time_ago||0)<240&&(this.onCustomEvent("onPullOnlineEvent",[n,e.params,e.extra],!0),this.emit({type:Le.Online,data:{command:n,params:N.clone(e.params),extra:N.clone(e.extra)}})),n==="userStatusChange"&&this.emitUserStatusChange(e.params.user_id,e.params.online)):(this.onCustomEvent("onPullEvent-"+t,[n,e.params,e.extra],!0),this.onCustomEvent("onPullEvent",[t,n,e.params,e.extra],!0),this.emit({type:Le.Server,moduleId:t,data:{command:n,params:N.clone(e.params),extra:N.clone(e.extra)}}))}catch(s){this.getLogger().warn(`
31
31
  ========= PULL ERROR ===========
32
32
  Error type: broadcastMessages execute error
33
33
  Error event: `,s,`
34
34
  Message: `,e,`
35
35
  ================================
36
- `)}e.extra&&e.extra.revision_web&&this.checkRevision($.toInteger(e.extra.revision_web))}broadcastMessages(e){for(const t of e)this.broadcastMessage(t)}async sendMessageBatch(e){if(!this.isPublishingEnabled())return this.getLogger().error("Client publishing is not supported or is disabled"),Promise.reject(new Error("Client publishing is not supported or is disabled"));if(this.isJsonRpc()){const t=this._jsonRpcAdapter?.createPublishRequest(e);return this.connector?.send(JSON.stringify(t)),Promise.resolve(!0)}else{const t={};for(const n of e)if(typeof n.userList<"u")for(const s of n.userList){const i=Number(s);t[i]=i}this._channelManager?.getPublicIds(Object.values(t)).then(n=>{const s=this.connector?.send(this.encodeMessageBatch(e,n));return Promise.resolve(s)})}}encodeMessageBatch(e,t){const n=[];e.forEach(i=>{const o=i.body;let a=[];if(i.userList&&(a=this.createMessageReceivers(i.userList,t)),i.channelList){if(!N.isArray(i.channelList))throw new TypeError("messageFields.publicChannels must be an array");i.channelList.forEach(u=>{let c,f;if(typeof u=="string"&&u.includes(".")){const h=u.toString().split(".");c=h[0],f=h[1]}else if(typeof u=="object"&&"publicId"in u&&"signature"in u)c=u?.publicId,f=u?.signature;else throw new Error(`Public channel MUST be either a string, formatted like "{publicId}.{signature}" or an object with fields 'publicId' and 'signature'`);a.push(Do.create({id:this.encodeId(c),signature:this.encodeId(f)}))})}const l=Ch.create({receivers:a,body:JSON.stringify(o),expiry:i.expiry||0});n.push(l)});const s=xo.create({requests:[{incomingMessages:{messages:n}}]});return xo.encode(s).finish()}createMessageReceivers(e,t){const n=[];for(const s of e){if(!t[s]||!t[s].publicId)throw new Error(`Could not determine public id for user ${s}`);n.push(Do.create({id:this.encodeId(t[s].publicId),signature:this.encodeId(t[s].signature)}))}return n}emitUserStatusChange(e,t){if(this._userStatusCallbacks[e])for(const n of this._userStatusCallbacks[e])n({userId:e,isOnline:t})}restoreUserStatusSubscription(){for(const e in this._userStatusCallbacks)this._userStatusCallbacks.hasOwnProperty(e)&&this._userStatusCallbacks[e].length>0&&this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.SubscribeStatusChange,{userId:e})}async loadConfig(e){if(this._config){if(this.isConfigActual(this._config)&&this.checkRevision(this._config.api.revision_web))return Promise.resolve(this._config);this._config=Object.assign({},Wo)}else{this._config=Object.assign({},Wo);let t;if(this._storage&&(t=this._storage.get(Ce.PullConfig,null)),this.isConfigActual(t)&&this.checkRevision(t.api.revision_web))return Promise.resolve(t);this._storage&&this._storage.remove(Ce.PullConfig)}return new Promise((t,n)=>{this._restClient.getHttpClient().setLogTag(e),this._restClient.callMethod(this._configGetMethod,{CACHE:"N"}).then(s=>{const i=s.getData().result,o=Math.floor((Date.now()-new Date(i.serverTime).getTime())/1e3);delete i.serverTime;const a=Object.assign({},i);a.server.timeShift=o,t(a)}).catch(s=>{(s?.answerError?.error==="AUTHORIZE_ERROR"||s?.answerError?.error==="WRONG_AUTH_TYPE")&&(s.status=403),n(s)}).finally(()=>{this._restClient.getHttpClient().clearLogTag()})})}isConfigActual(e){if(!N.isPlainObject(e)||Number(e.server.config_timestamp)!==this._configTimestamp)return!1;const t=new Date;if(N.isNumber(e.exp)&&e.exp>0&&e.exp<t.getTime()/1e3||Object.keys(e.channels).length===0)return!1;for(const n in e.channels){if(!e.channels.hasOwnProperty(n))continue;const s=e.channels[n];if(new Date(s.end)<t)return!1}return!0}startCheckConfig(){this._checkInterval&&(clearInterval(this._checkInterval),this._checkInterval=null),this._checkInterval=setInterval(this.checkConfig.bind(this),Mh)}stopCheckConfig(){this._checkInterval&&clearInterval(this._checkInterval),this._checkInterval=null}checkConfig(){if(this.isConfigActual(this._config)){if(!this.checkRevision($.toInteger(this._config?.api.revision_web)))return!1}else this.logToConsole("Stale config detected. Restarting"),this.restart(Se.CONFIG_EXPIRED,"config expired");return!0}setConfig(e,t){for(const n in e)e.hasOwnProperty(n)&&this._config?.hasOwnProperty(n)&&(this._config[n]=e[n]);if(e.publicChannels&&this.setPublicIds(Object.values(e.publicChannels)),this._configTimestamp=Number(e.server.config_timestamp),this._storage&&t)try{this._storage.set(Ce.PullConfig,e)}catch(n){localStorage&&localStorage.removeItem&&localStorage.removeItem("history"),this.getLogger().error(`${$.getDateForLog()}: Pull: Could not cache config in local storage. Error: `,n)}}setPublicIds(e){this._channelManager.setPublicIds(e)}checkRevision(e){return this._skipCheckRevision?!0:e>0&&e!==nr?(this._enabled=!1,this.showNotification("PULL_OLD_REVISION"),this.disconnect(Se.NORMAL_CLOSURE,"check_revision"),this.onCustomEvent("onPullRevisionUp",[e,nr]),this.emit({type:Re.Revision,data:{server:e,client:nr}}),this.logToConsole(`Pull revision changed from ${nr} to ${e}. Reload required`),!1):!0}disconnect(e,t){this.connector&&(this._isManualDisconnect=!0,this.connector.disconnect(e,t))}restoreWebSocketConnection(){this._connectionType!==te.WebSocket&&this._connectors.webSocket?.connect()}scheduleReconnect(e=0){this._enabled&&(e||(e=this.getConnectionAttemptDelay(this._connectionAttempt)),this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.logToConsole(`Pull: scheduling reconnection in ${e} seconds; attempt # ${this._connectionAttempt}`),this._reconnectTimeout=setTimeout(()=>{this.connect().catch(t=>{this.getLogger().error(t)})},e*1e3))}scheduleRestoreWebSocketConnection(){this.logToConsole(`Pull: scheduling restoration of websocket connection in ${Uo} seconds`),!this._restoreWebSocketTimeout&&(this._restoreWebSocketTimeout=setTimeout(()=>{this._restoreWebSocketTimeout=0,this.restoreWebSocketConnection()},Uo*1e3))}async connect(){return this._enabled?this.connector?.connected?Promise.resolve():(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.status=Ne.Connecting,this._connectionAttempt++,new Promise((e,t)=>{this._connectPromise={resolve:e,reject:t},this.connector?.connect()})):Promise.reject()}scheduleRestart(e,t,n=0){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),n<1&&(n=Math.ceil(Math.random()*30)+5),this._restartTimeout=setTimeout(()=>this.restart(e,t),n*1e3)}handleRpcIncomingMessage(e){this._session.mid=e.mid;const t=e.body;return e.body.extra||(t.extra={}),t.extra.sender=e.sender,"user_params"in e&&N.isPlainObject(e.user_params)&&Object.assign(t.params,e.user_params),"dictionary"in e&&N.isPlainObject(e.dictionary)&&Object.assign(t.params,e.dictionary),this.checkDuplicate(e.mid)&&(this.addMessageToStat(t),this.trimDuplicates(),this.broadcastMessage(t)),this.connector?.send(`mack:${e.mid}`),{}}handleIncomingEvents(e){const t=[];if(e.length===0){this._session.mid=null;return}for(const n of e)this.updateSessionFromEvent(n),!(n.mid&&!this.checkDuplicate(n.mid))&&(this.addMessageToStat(n.text),t.push(n.text));this.trimDuplicates(),this.broadcastMessages(t)}updateSessionFromEvent(e){this._session.mid=e.mid||null,this._session.tag=e.tag||null,this._session.time=e.time||null}handleInternalPullEvent(e,t){switch(e.toUpperCase()){case Yt.CHANNEL_EXPIRE:{if(t.params.action==="reconnect"){const n=t.params?.channel.type;n==="private"&&this._config?.channels?.private&&(this._config.channels.private=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.private}`)),n==="shared"&&this._config?.channels?.shared&&(this._config.channels.shared=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.shared}`)),this.reconnect(Se.CONFIG_REPLACED,"config was replaced")}else this.restart(Se.CHANNEL_EXPIRED,"channel expired received");break}case Yt.CONFIG_EXPIRE:{this.restart(Se.CONFIG_EXPIRED,"config expired received");break}case Yt.SERVER_RESTART:{this.reconnect(Se.SERVER_RESTARTED,"server was restarted",15);break}}}onIncomingMessage(e){if(this.isJsonRpc())e===xh?this.onJsonRpcPing():this._jsonRpcAdapter?.parseJsonRpcMessage(e);else{const t=this.extractMessages(e);this.handleIncomingEvents(t)}}onLongPollingOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Ne.Online,this.logToConsole("Pull: Long polling connection with push-server opened"),this.isWebSocketEnabled()&&this.scheduleRestoreWebSocketConnection(),this._connectPromise&&this._connectPromise.resolve({})}onLongPollingDisconnect(e){this._connectionType===te.LongPolling&&(this.status=Ne.Offline),this.logToConsole(`Pull: Long polling connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`),this._isManualDisconnect||this.scheduleReconnect(),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onLongPollingError(e){this._starting=!1,this._connectionType===te.LongPolling&&(this.status=Ne.Offline),this.getLogger().error(`${$.getDateForLog()}: Pull: Long polling connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}onWebSocketBlockChanged(e){const t=e.isWebSocketBlocked;t&&this._connectionType===te.WebSocket&&!this.isConnected()?(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._connectionAttempt=0,this._connectionType=te.LongPolling,this.scheduleReconnect(1)):!t&&this._connectionType===te.LongPolling&&(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this._connectionAttempt=0,this._connectionType=te.WebSocket,this.scheduleReconnect(1))}onWebSocketOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Ne.Online,this._sharedConfig.setWebSocketBlocked(!1),this._sharedConfig.setLongPollingBlocked(!0),this._connectionType==te.LongPolling&&(this._connectionType=te.WebSocket,this._connectors.longPolling?.disconnect(Se.CONFIG_REPLACED,"Fire at onWebSocketOpen")),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this.logToConsole("Pull: Websocket connection with push-server opened"),this._connectPromise&&this._connectPromise.resolve({}),this.restoreUserStatusSubscription()}onWebSocketDisconnect(e){this._connectionType===te.WebSocket&&(this.status=Ne.Offline),this.logToConsole(`Pull: Websocket connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`,!0),this._isManualDisconnect||(e.code==Se.WRONG_CHANNEL_ID?this.scheduleRestart(Se.WRONG_CHANNEL_ID,"wrong channel signature"):this.scheduleReconnect()),this._sharedConfig.setLongPollingBlocked(!0),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onWebSocketError(e){this._starting=!1,this._connectionType===te.WebSocket&&(this.status=Ne.Offline),this.getLogger().error(`${$.getDateForLog()}: Pull: WebSocket connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}extractMessages(e){if(e instanceof ArrayBuffer)return this.extractProtobufMessages(e);if(N.isStringFilled(e))return this.extractPlainTextMessages(e);throw new Error("Error pullEvent type")}extractProtobufMessages(e){const t=[];try{const n=Ih.decode(new Uint8Array(e));for(let s=0;s<n.responses.length;s++){const i=n.responses[s];if(i.command!=="outgoingMessages")continue;const o=i.outgoingMessages.messages;for(const a of o){let l;try{l=JSON.parse(a.body)}catch(c){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not parse message body `,c);continue}l.extra||(l.extra={}),l.extra.sender={type:a.sender.type},a.sender.id instanceof Uint8Array&&(l.extra.sender.id=this.decodeId(a.sender.id));const u={mid:this.decodeId(a.id),text:l};t.push(u)}}}catch(n){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not parse message `,n)}return t}extractPlainTextMessages(e){const t=[],n=e.match(/#!NGINXNMS!#(.*?)#!NGINXNME!#/gm);if(n===null){const s=`
36
+ `)}e.extra&&e.extra.revision_web&&this.checkRevision($.toInteger(e.extra.revision_web))}broadcastMessages(e){for(const t of e)this.broadcastMessage(t)}async sendMessageBatch(e){if(!this.isPublishingEnabled())return this.getLogger().error("Client publishing is not supported or is disabled"),Promise.reject(new Error("Client publishing is not supported or is disabled"));if(this.isJsonRpc()){const t=this._jsonRpcAdapter?.createPublishRequest(e);return this.connector?.send(JSON.stringify(t)),Promise.resolve(!0)}else{const t={};for(const n of e)if(typeof n.userList<"u")for(const s of n.userList){const i=Number(s);t[i]=i}this._channelManager?.getPublicIds(Object.values(t)).then(n=>{const s=this.connector?.send(this.encodeMessageBatch(e,n));return Promise.resolve(s)})}}encodeMessageBatch(e,t){const n=[];e.forEach(i=>{const o=i.body;let a=[];if(i.userList&&(a=this.createMessageReceivers(i.userList,t)),i.channelList){if(!N.isArray(i.channelList))throw new TypeError("messageFields.publicChannels must be an array");i.channelList.forEach(u=>{let c,f;if(typeof u=="string"&&u.includes(".")){const h=u.toString().split(".");c=h[0],f=h[1]}else if(typeof u=="object"&&"publicId"in u&&"signature"in u)c=u?.publicId,f=u?.signature;else throw new Error(`Public channel MUST be either a string, formatted like "{publicId}.{signature}" or an object with fields 'publicId' and 'signature'`);a.push(Uo.create({id:this.encodeId(c),signature:this.encodeId(f)}))})}const l=Lh.create({receivers:a,body:JSON.stringify(o),expiry:i.expiry||0});n.push(l)});const s=jo.create({requests:[{incomingMessages:{messages:n}}]});return jo.encode(s).finish()}createMessageReceivers(e,t){const n=[];for(const s of e){if(!t[s]||!t[s].publicId)throw new Error(`Could not determine public id for user ${s}`);n.push(Uo.create({id:this.encodeId(t[s].publicId),signature:this.encodeId(t[s].signature)}))}return n}emitUserStatusChange(e,t){if(this._userStatusCallbacks[e])for(const n of this._userStatusCallbacks[e])n({userId:e,isOnline:t})}restoreUserStatusSubscription(){for(const e in this._userStatusCallbacks)this._userStatusCallbacks.hasOwnProperty(e)&&this._userStatusCallbacks[e].length>0&&this._jsonRpcAdapter?.executeOutgoingRpcCommand(Ve.SubscribeStatusChange,{userId:e})}async loadConfig(e){if(this._config){if(this.isConfigActual(this._config)&&this.checkRevision(this._config.api.revision_web))return Promise.resolve(this._config);this._config=Object.assign({},Vo)}else{this._config=Object.assign({},Vo);let t;if(this._storage&&(t=this._storage.get(Ne.PullConfig,null)),this.isConfigActual(t)&&this.checkRevision(t.api.revision_web))return Promise.resolve(t);this._storage&&this._storage.remove(Ne.PullConfig)}return new Promise((t,n)=>{this._restClient.getHttpClient().setLogTag(e),this._restClient.callMethod(this._configGetMethod,{CACHE:"N"}).then(s=>{const i=s.getData().result,o=Math.floor((Date.now()-new Date(i.serverTime).getTime())/1e3);delete i.serverTime;const a=Object.assign({},i);a.server.timeShift=o,t(a)}).catch(s=>{(s?.answerError?.error==="AUTHORIZE_ERROR"||s?.answerError?.error==="WRONG_AUTH_TYPE")&&(s.status=403),n(s)}).finally(()=>{this._restClient.getHttpClient().clearLogTag()})})}isConfigActual(e){if(!N.isPlainObject(e)||Number(e.server.config_timestamp)!==this._configTimestamp)return!1;const t=new Date;if(N.isNumber(e.exp)&&e.exp>0&&e.exp<t.getTime()/1e3||Object.keys(e.channels).length===0)return!1;for(const n in e.channels){if(!e.channels.hasOwnProperty(n))continue;const s=e.channels[n];if(new Date(s.end)<t)return!1}return!0}startCheckConfig(){this._checkInterval&&(clearInterval(this._checkInterval),this._checkInterval=null),this._checkInterval=setInterval(this.checkConfig.bind(this),Dh)}stopCheckConfig(){this._checkInterval&&clearInterval(this._checkInterval),this._checkInterval=null}checkConfig(){if(this.isConfigActual(this._config)){if(!this.checkRevision($.toInteger(this._config?.api.revision_web)))return!1}else this.logToConsole("Stale config detected. Restarting"),this.restart(Se.CONFIG_EXPIRED,"config expired");return!0}setConfig(e,t){for(const n in e)e.hasOwnProperty(n)&&this._config?.hasOwnProperty(n)&&(this._config[n]=e[n]);if(e.publicChannels&&this.setPublicIds(Object.values(e.publicChannels)),this._configTimestamp=Number(e.server.config_timestamp),this._storage&&t)try{this._storage.set(Ne.PullConfig,e)}catch(n){localStorage&&localStorage.removeItem&&localStorage.removeItem("history"),this.getLogger().error(`${$.getDateForLog()}: Pull: Could not cache config in local storage. Error: `,n)}}setPublicIds(e){this._channelManager.setPublicIds(e)}checkRevision(e){return this._skipCheckRevision?!0:e>0&&e!==nr?(this._enabled=!1,this.showNotification("PULL_OLD_REVISION"),this.disconnect(Se.NORMAL_CLOSURE,"check_revision"),this.onCustomEvent("onPullRevisionUp",[e,nr]),this.emit({type:Le.Revision,data:{server:e,client:nr}}),this.logToConsole(`Pull revision changed from ${nr} to ${e}. Reload required`),!1):!0}disconnect(e,t){this.connector&&(this._isManualDisconnect=!0,this.connector.disconnect(e,t))}restoreWebSocketConnection(){this._connectionType!==te.WebSocket&&this._connectors.webSocket?.connect()}scheduleReconnect(e=0){this._enabled&&(e||(e=this.getConnectionAttemptDelay(this._connectionAttempt)),this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.logToConsole(`Pull: scheduling reconnection in ${e} seconds; attempt # ${this._connectionAttempt}`),this._reconnectTimeout=setTimeout(()=>{this.connect().catch(t=>{this.getLogger().error(t)})},e*1e3))}scheduleRestoreWebSocketConnection(){this.logToConsole(`Pull: scheduling restoration of websocket connection in ${$o} seconds`),!this._restoreWebSocketTimeout&&(this._restoreWebSocketTimeout=setTimeout(()=>{this._restoreWebSocketTimeout=0,this.restoreWebSocketConnection()},$o*1e3))}async connect(){return this._enabled?this.connector?.connected?Promise.resolve():(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this.status=Re.Connecting,this._connectionAttempt++,new Promise((e,t)=>{this._connectPromise={resolve:e,reject:t},this.connector?.connect()})):Promise.reject()}scheduleRestart(e,t,n=0){this._restartTimeout&&(clearTimeout(this._restartTimeout),this._restartTimeout=null),n<1&&(n=Math.ceil(Math.random()*30)+5),this._restartTimeout=setTimeout(()=>this.restart(e,t),n*1e3)}handleRpcIncomingMessage(e){this._session.mid=e.mid;const t=e.body;return e.body.extra||(t.extra={}),t.extra.sender=e.sender,"user_params"in e&&N.isPlainObject(e.user_params)&&Object.assign(t.params,e.user_params),"dictionary"in e&&N.isPlainObject(e.dictionary)&&Object.assign(t.params,e.dictionary),this.checkDuplicate(e.mid)&&(this.addMessageToStat(t),this.trimDuplicates(),this.broadcastMessage(t)),this.connector?.send(`mack:${e.mid}`),{}}handleIncomingEvents(e){const t=[];if(e.length===0){this._session.mid=null;return}for(const n of e)this.updateSessionFromEvent(n),!(n.mid&&!this.checkDuplicate(n.mid))&&(this.addMessageToStat(n.text),t.push(n.text));this.trimDuplicates(),this.broadcastMessages(t)}updateSessionFromEvent(e){this._session.mid=e.mid||null,this._session.tag=e.tag||null,this._session.time=e.time||null}handleInternalPullEvent(e,t){switch(e.toUpperCase()){case Yt.CHANNEL_EXPIRE:{if(t.params.action==="reconnect"){const n=t.params?.channel.type;n==="private"&&this._config?.channels?.private&&(this._config.channels.private=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.private}`)),n==="shared"&&this._config?.channels?.shared&&(this._config.channels.shared=t.params.new_channel,this.logToConsole(`Pull: new config for ${t.params.channel.type} channel set: ${this._config.channels.shared}`)),this.reconnect(Se.CONFIG_REPLACED,"config was replaced")}else this.restart(Se.CHANNEL_EXPIRED,"channel expired received");break}case Yt.CONFIG_EXPIRE:{this.restart(Se.CONFIG_EXPIRED,"config expired received");break}case Yt.SERVER_RESTART:{this.reconnect(Se.SERVER_RESTARTED,"server was restarted",15);break}}}onIncomingMessage(e){if(this.isJsonRpc())e===Uh?this.onJsonRpcPing():this._jsonRpcAdapter?.parseJsonRpcMessage(e);else{const t=this.extractMessages(e);this.handleIncomingEvents(t)}}onLongPollingOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Re.Online,this.logToConsole("Pull: Long polling connection with push-server opened"),this.isWebSocketEnabled()&&this.scheduleRestoreWebSocketConnection(),this._connectPromise&&this._connectPromise.resolve({})}onLongPollingDisconnect(e){this._connectionType===te.LongPolling&&(this.status=Re.Offline),this.logToConsole(`Pull: Long polling connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`),this._isManualDisconnect||this.scheduleReconnect(),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onLongPollingError(e){this._starting=!1,this._connectionType===te.LongPolling&&(this.status=Re.Offline),this.getLogger().error(`${$.getDateForLog()}: Pull: Long polling connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}onWebSocketBlockChanged(e){const t=e.isWebSocketBlocked;t&&this._connectionType===te.WebSocket&&!this.isConnected()?(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._connectionAttempt=0,this._connectionType=te.LongPolling,this.scheduleReconnect(1)):!t&&this._connectionType===te.LongPolling&&(this._reconnectTimeout&&(clearTimeout(this._reconnectTimeout),this._reconnectTimeout=null),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this._connectionAttempt=0,this._connectionType=te.WebSocket,this.scheduleReconnect(1))}onWebSocketOpen(){this._unloading=!1,this._starting=!1,this._connectionAttempt=0,this._isManualDisconnect=!1,this.status=Re.Online,this._sharedConfig.setWebSocketBlocked(!1),this._sharedConfig.setLongPollingBlocked(!0),this._connectionType==te.LongPolling&&(this._connectionType=te.WebSocket,this._connectors.longPolling?.disconnect(Se.CONFIG_REPLACED,"Fire at onWebSocketOpen")),this._restoreWebSocketTimeout&&(clearTimeout(this._restoreWebSocketTimeout),this._restoreWebSocketTimeout=null),this.logToConsole("Pull: Websocket connection with push-server opened"),this._connectPromise&&this._connectPromise.resolve({}),this.restoreUserStatusSubscription()}onWebSocketDisconnect(e){this._connectionType===te.WebSocket&&(this.status=Re.Offline),this.logToConsole(`Pull: Websocket connection with push-server closed. Code: ${e.code}, reason: ${e.reason}`,!0),this._isManualDisconnect||(e.code==Se.WRONG_CHANNEL_ID?this.scheduleRestart(Se.WRONG_CHANNEL_ID,"wrong channel signature"):this.scheduleReconnect()),this._sharedConfig.setLongPollingBlocked(!0),this._isManualDisconnect=!1,this.clearPingWaitTimeout()}onWebSocketError(e){this._starting=!1,this._connectionType===te.WebSocket&&(this.status=Re.Offline),this.getLogger().error(`${$.getDateForLog()}: Pull: WebSocket connection error `,e),this.scheduleReconnect(),this._connectPromise&&this._connectPromise.reject(e),this.clearPingWaitTimeout()}extractMessages(e){if(e instanceof ArrayBuffer)return this.extractProtobufMessages(e);if(N.isStringFilled(e))return this.extractPlainTextMessages(e);throw new Error("Error pullEvent type")}extractProtobufMessages(e){const t=[];try{const n=Rh.decode(new Uint8Array(e));for(let s=0;s<n.responses.length;s++){const i=n.responses[s];if(i.command!=="outgoingMessages")continue;const o=i.outgoingMessages.messages;for(const a of o){let l;try{l=JSON.parse(a.body)}catch(c){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not parse message body `,c);continue}l.extra||(l.extra={}),l.extra.sender={type:a.sender.type},a.sender.id instanceof Uint8Array&&(l.extra.sender.id=this.decodeId(a.sender.id));const u={mid:this.decodeId(a.id),text:l};t.push(u)}}}catch(n){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not parse message `,n)}return t}extractPlainTextMessages(e){const t=[],n=e.match(/#!NGINXNMS!#(.*?)#!NGINXNME!#/gm);if(n===null){const s=`
37
37
  ========= PULL ERROR ===========
38
38
  Error type: parseResponse error parsing message
39
39
 
40
40
  Data string: ${e}
41
41
  ================================
42
42
 
43
- `;return this.getLogger().warn(s),[]}for(let s=0;s<n.length;s++){if(n[s]=n[s].substring(12,n[s].length-12),n[s].length<=0)continue;let i;try{i=JSON.parse(n[s])}catch{continue}t.push(i)}return t}decodeId(e){let t="";for(const n of e){const s=n.toString(16);s.length===1&&(t+="0"),t+=s}return t}encodeId(e){if(!e)return new Uint8Array;const t=[];for(let n=0;n<e.length;n+=2)t.push(Number.parseInt(e.slice(n,n+2),16));return new Uint8Array(t)}onOffline(){this.disconnect(Se.NORMAL_CLOSURE,"offline")}onOnline(){this.connect().catch(e=>{this.getLogger().error(e)})}onBeforeUnload(){this._unloading=!0;const e=N.clone(this.session);if(e.ttl=Date.now()+jh*1e3,this._storage)try{this._storage.set($o,JSON.stringify(e))}catch(t){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not save session info in local storage. Error: `,t)}this.scheduleReconnect(15)}sendPullStatusDelayed(e,t){this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),this._offlineTimeout=setTimeout(()=>{this._offlineTimeout=null,this.sendPullStatus(e)},t)}sendPullStatus(e){this._unloading||(this.onCustomEvent("onPullStatus",[e]),this.emit({type:Re.Status,data:{status:e}}))}extendWatch(e,t=!1){this._watchTagsQueue.get(e)||(this._watchTagsQueue.set(e,!0),t&&this.updateWatch(t))}updateWatch(e=!1){this._watchUpdateTimeout&&(clearTimeout(this._watchUpdateTimeout),this._watchUpdateTimeout=null),this._watchUpdateTimeout=setTimeout(()=>{const t=[...this._watchTagsQueue.keys()];t.length>0?this._restClient.callMethod("pull.watch.extend",{tags:t}).then(n=>{const s=n.getData().result;for(const i of s)this.clearWatch(i);this.updateWatch()}).catch(()=>{this.updateWatch()}):this.updateWatch()},e?this._watchForceUpdateInterval:this._watchUpdateInterval)}clearWatch(e){this._watchTagsQueue.delete(e)}onJsonRpcPing(){this.updatePingWaitTimeout(),this.connector?.send(Dh)}updatePingWaitTimeout(){this._pingWaitTimeout&&(clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null),this._pingWaitTimeout=setTimeout(this._onPingTimeoutHandler,Bo*2*1e3)}clearPingWaitTimeout(){this._pingWaitTimeout&&clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null}onPingTimeout(){this._pingWaitTimeout=null,!(!this._enabled||!this.isConnected())&&(this.getLogger().warn(`No pings are received in ${Bo*2} seconds. Reconnecting`),this.disconnect(Se.STUCK,"connection stuck"),this.scheduleReconnect())}getConnectionAttemptDelay(e){let t;return e<1?t=.5:e<3?t=15:e<5?t=45:e<10?t=600:t=3600,t+t*Math.random()*.2}checkDuplicate(e){return this._session.lastMessageIds.includes(e)?(this.getLogger().warn(`Duplicate message ${e} skipped`),!1):(this._session.lastMessageIds.push(e),!0)}trimDuplicates(){this._session.lastMessageIds.length>Ph&&(this._session.lastMessageIds=this._session.lastMessageIds.slice(-10))}logMessage(e){this._debug&&(e.extra?.sender&&e.extra.sender.type===br.Client?this.getLogger().info(`onPullClientEvent-${e.module_id}`,e.command,e.params,e.extra):e.module_id=="online"?this.getLogger().info("onPullOnlineEvent",e.command,e.params,e.extra):this.getLogger().info("onPullEvent",e.module_id,e.command,e.params,e.extra))}logToConsole(e,t=!1){(this._loggingEnabled||t)&&this.getLogger().log(`${$.getDateForLog()}: ${e}`)}addMessageToStat(e){this._session.history[e.module_id]||(this._session.history[e.module_id]={}),this._session.history[e.module_id][e.command]||(this.session.history[e.module_id][e.command]=0),this._session.history[e.module_id][e.command]++,this._session.messageCount++}showNotification(e){this.getLogger().warn(e)}onCustomEvent(e,t,n=!1){}}class Uh{_b24;_logger=null;_isInit=!1;_profile=null;_app=null;_payment=null;_license=null;_currency=null;_appOptions=null;_userOptions=null;_b24PullClient=null;_pullClientUnSubscribe=[];_pullClientModuleId="";constructor(e){this._b24=e,this.setLogger(this._b24.getLogger())}setLogger(e){this._logger=e,this._profile!==null&&this._profile.setLogger(this.getLogger()),this._app!==null&&this._app.setLogger(this.getLogger()),this._payment!==null&&this._payment.setLogger(this.getLogger()),this._license!==null&&this._license.setLogger(this.getLogger()),this._currency!==null&&this._currency.setLogger(this.getLogger()),this._appOptions!==null&&this._appOptions.setLogger(this.getLogger()),this._userOptions!==null&&this._userOptions.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this._destroyPullClient()}async loadData(e=[ee.App,ee.Profile]){const t={[ee.App]:{method:"app.info"},[ee.Profile]:{method:"profile"},[ee.Currency]:[{method:"crm.currency.base.get"},{method:"crm.currency.list"}],[ee.AppOptions]:{method:"app.option.get"},[ee.UserOptions]:{method:"user.option.get"}},n=e.reduce((s,i)=>{if(t[i])if(Array.isArray(t[i]))for(const[o,a]of t[i].entries())s[`get_${i}_${o}`]=a;else s[`get_${i}`]=t[i];return s},{});try{const s=(await this._b24.callBatch(n)).getData();s[`get_${ee.App}`]&&(this._app=await this.parseAppData(s[`get_${ee.App}`]),this._payment=await this.parsePaymentData(s[`get_${ee.App}`]),this._license=await this.parseLicenseData(s[`get_${ee.App}`])),s[`get_${ee.Profile}`]&&(this._profile=await this.parseUserData(s[`get_${ee.Profile}`])),s[`get_${ee.Currency}_0`]&&s[`get_${ee.Currency}_1`]&&(this._currency=await this.parseCurrencyData({currencyBase:s[`get_${ee.Currency}_0`],currencyList:s[`get_${ee.Currency}_1`]})),s[`get_${ee.AppOptions}`]&&(this._appOptions=await this.parseOptionsData("app",s[`get_${ee.AppOptions}`])),s[`get_${ee.UserOptions}`]&&(this._userOptions=await this.parseOptionsData("user",s[`get_${ee.UserOptions}`])),this._isInit=!0}catch(s){throw s instanceof Error?s:(console.error("Error loading data:",s),new Error("Failed to load data"))}}async parseUserData(e){const t=new gh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number(e.ID),isAdmin:e.ADMIN===!0,lastName:e?.LAST_NAME||"",name:e?.NAME||"",gender:e?.PERSONAL_GENDER||"",photo:e?.PERSONAL_PHOTO||"",TimeZone:e?.TIME_ZONE||"",TimeZoneOffset:e?.TIME_ZONE_OFFSET}).then(()=>t)}async parseAppData(e){const t=new mh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number.parseInt(e.ID),code:e.CODE,version:Number.parseInt(e.VERSION),status:e.STATUS,isInstalled:e.INSTALLED}).then(()=>t)}async parsePaymentData(e){const t=new yh(this._b24);return t.setLogger(this.getLogger()),t.initData({isExpired:e.PAYMENT_EXPIRED==="Y",days:Number.parseInt(e.DAYS||"0")}).then(()=>t)}async parseLicenseData(e){const t=new wh(this._b24);return t.setLogger(this.getLogger()),t.initData({languageId:e.LANGUAGE_ID,license:e.LICENSE,licensePrevious:e.LICENSE_PREVIOUS,licenseType:e.LICENSE_TYPE,licenseFamily:e.LICENSE_FAMILY,isSelfHosted:e.LICENSE.includes("selfhosted")}).then(()=>t)}async parseCurrencyData(e){const t=new bh(this._b24);return t.setLogger(this.getLogger()),t.initData(e).then(()=>t)}async parseOptionsData(e,t){const n=new xn(this._b24,e);return n.setLogger(this.getLogger()),n.initData(t).then(()=>n)}get isInit(){return this._isInit}get forB24Form(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");if(this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return{app_code:this.appInfo.data.code,app_status:this.appInfo.data.status,payment_expired:this.paymentInfo.data.isExpired?"Y":"N",days:this.paymentInfo.data.days,b24_plan:this.licenseInfo.data.license,c_name:this.profileInfo.data.name,c_last_name:this.profileInfo.data.lastName,hostname:this.hostName}}get hostName(){return this._b24.getTargetOrigin()}get profileInfo(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");return this._profile}get appInfo(){if(this.ensureInitialized(),this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return this._app}get paymentInfo(){if(this.ensureInitialized(),this._payment===null)throw new Error("B24HelperManager.paymentInfo not initialized");return this._payment}get licenseInfo(){if(this.ensureInitialized(),this._license===null)throw new Error("B24HelperManager.licenseInfo not initialized");return this._license}get currency(){if(this.ensureInitialized(),this._currency===null)throw new Error("B24HelperManager.currency not initialized");return this._currency}get appOptions(){if(this.ensureInitialized(),this._appOptions===null)throw new Error("B24HelperManager.appOptions not initialized");return this._appOptions}get userOptions(){if(this.ensureInitialized(),this._userOptions===null)throw new Error("B24HelperManager.userOptions not initialized");return this._userOptions}get isSelfHosted(){return this.licenseInfo.data.isSelfHosted}get primaryKeyIncrementValue(){return this.isSelfHosted?1:2}get b24SpecificUrl(){return this.isSelfHosted?{[gt.MainSettings]:"/configs/",[gt.UfList]:"/configs/userfield_list.php",[gt.UfPage]:"/configs/userfield.php"}:{[gt.MainSettings]:"/settings/configs/",[gt.UfList]:"/settings/configs/userfield_list.php",[gt.UfPage]:"/settings/configs/userfield.php"}}usePullClient(e="prefix",t){return this._b24PullClient?this:(this.initializePullClient(typeof t>"u"?this.profileInfo.data.id||0:t,e),this)}initializePullClient(e,t="prefix"){this._b24PullClient=new qo({b24:this._b24,restApplication:this._b24.auth.getUniq(t),userId:e})}subscribePullClient(e,t="application"){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId=t,this._pullClientUnSubscribe.push(this._b24PullClient.subscribe({moduleId:this._pullClientModuleId,callback:e})),this}startPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");this._b24PullClient.start().catch(e=>{this.getLogger().error(`${$.getDateForLog()}: Pull not running`,e)})}getModuleIdPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId}_destroyPullClient(){for(const e of this._pullClientUnSubscribe)e();this._b24PullClient?.destroy(),this._b24PullClient=null}ensureInitialized(){if(!this._isInit)throw new Error("B24HelperManager not initialized")}}const Bh=()=>{let r=!1,e=!1,t=null;return{initB24Helper:async(n,s=[ee.App,ee.Profile])=>(t===null&&(t=new Uh(n)),r?t:t.loadData(s).then(()=>(r=!0,t))),isInitB24Helper:()=>r,destroyB24Helper:()=>{t?.destroy(),t=null,r=!1,e=!1},getB24Helper:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");return t},usePullClient:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");t.usePullClient(),e=!0},useSubscribePullClient:(n,s="application")=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.subscribePullClient(n,s)},startPullClient:()=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.startPullClient()}}},$h=50;let ot=null,Pr=!1,Dt=null,Vo=!1,xr=[],Ho=!1;function zo(){window.setTimeout(()=>{if(!Pr||ot===null){zo();return}Wh(),xr=[]},$h)}function Wh(){if(Dt!==null)for(const r of xr)r.reject(Dt);if(!(!Pr||ot===null))for(const r of xr)r.resolve(ot)}async function qh(){return Pr&&ot!==null?Promise.resolve(ot):Vo?(Ho||(Ho=!0,zo()),new Promise((r,e)=>{xr.push({resolve:r,reject:e})})):(Vo=!0,new Promise((r,e)=>{const t={DOMAIN:null,PROTOCOL:!1,APP_SID:null,LANG:null};if(window.name){const[n,s,i]=window.name.split("|");t.DOMAIN=n,t.PROTOCOL=Number.parseInt(s)===1,t.APP_SID=i,t.LANG=null}(!t.DOMAIN||!t.APP_SID)&&(Dt=new Error("Unable to initialize Bitrix24Frame library!"),e(Dt)),ot=new Lo(t),ot.init().then(()=>{Pr=!0,r(ot)}).catch(n=>{Dt=n,e(Dt)})}))}P.AbstractB24=Pt,P.AjaxError=We,P.AjaxResult=Sr,P.AppFrame=Oo,P.AuthHookManager=Eo,P.AuthManager=Ao,P.B24Frame=Lo,P.B24Hook=ph,P.B24LangList=Mn,P.B24PullClientManager=qo,P.Browser=vi,P.CatalogProductImageType=Ci,P.CatalogProductType=Ii,P.CatalogRoundingRuleType=Ni,P.CloseReasons=Se,P.ConnectionType=te,P.DataType=Vn,P.DialogManager=No,P.EnumAppStatus=pt,P.EnumCrmEntityType=Ei,P.EnumCrmEntityTypeId=Ti,P.EnumCrmEntityTypeShort=Oi,P.ListRpcError=mn,P.LoadDataType=ee,P.LoggerBrowser=ye,P.LoggerType=I,P.LsKeys=Ce,P.MessageCommands=X,P.MessageManager=To,P.OptionsManager=Co,P.ParentManager=Io,P.PlacementManager=Fo,P.ProductRowDiscountTypeId=Ai,P.PullStatus=Ne,P.RestrictionManagerParamsBase=ki,P.RestrictionManagerParamsForEnterprise=pn,P.Result=$e,P.RpcMethod=Ve,P.SenderType=br,P.ServerMode=gn,P.SliderManager=Ro,P.StatusDescriptions=Ri,P.SubscriptionType=Re,P.SystemCommands=Yt,P.Text=$,P.Type=N,P.TypeOption=Ye,P.TypeSpecificUrl=gt,P.initializeB24Frame=qh,P.isArrayOfArray=Xo,P.omit=Hn,P.pick=Qo,P.useB24Helper=Bh,P.useFormatter=dh});
43
+ `;return this.getLogger().warn(s),[]}for(let s=0;s<n.length;s++){if(n[s]=n[s].substring(12,n[s].length-12),n[s].length<=0)continue;let i;try{i=JSON.parse(n[s])}catch{continue}t.push(i)}return t}decodeId(e){let t="";for(const n of e){const s=n.toString(16);s.length===1&&(t+="0"),t+=s}return t}encodeId(e){if(!e)return new Uint8Array;const t=[];for(let n=0;n<e.length;n+=2)t.push(Number.parseInt(e.slice(n,n+2),16));return new Uint8Array(t)}onOffline(){this.disconnect(Se.NORMAL_CLOSURE,"offline")}onOnline(){this.connect().catch(e=>{this.getLogger().error(e)})}onBeforeUnload(){this._unloading=!0;const e=N.clone(this.session);if(e.ttl=Date.now()+$h*1e3,this._storage)try{this._storage.set(qo,JSON.stringify(e))}catch(t){this.getLogger().error(`${$.getDateForLog()}: Pull: Could not save session info in local storage. Error: `,t)}this.scheduleReconnect(15)}sendPullStatusDelayed(e,t){this._offlineTimeout&&(clearTimeout(this._offlineTimeout),this._offlineTimeout=null),this._offlineTimeout=setTimeout(()=>{this._offlineTimeout=null,this.sendPullStatus(e)},t)}sendPullStatus(e){this._unloading||(this.onCustomEvent("onPullStatus",[e]),this.emit({type:Le.Status,data:{status:e}}))}extendWatch(e,t=!1){this._watchTagsQueue.get(e)||(this._watchTagsQueue.set(e,!0),t&&this.updateWatch(t))}updateWatch(e=!1){this._watchUpdateTimeout&&(clearTimeout(this._watchUpdateTimeout),this._watchUpdateTimeout=null),this._watchUpdateTimeout=setTimeout(()=>{const t=[...this._watchTagsQueue.keys()];t.length>0?this._restClient.callMethod("pull.watch.extend",{tags:t}).then(n=>{const s=n.getData().result;for(const i of s)this.clearWatch(i);this.updateWatch()}).catch(()=>{this.updateWatch()}):this.updateWatch()},e?this._watchForceUpdateInterval:this._watchUpdateInterval)}clearWatch(e){this._watchTagsQueue.delete(e)}onJsonRpcPing(){this.updatePingWaitTimeout(),this.connector?.send(Bh)}updatePingWaitTimeout(){this._pingWaitTimeout&&(clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null),this._pingWaitTimeout=setTimeout(this._onPingTimeoutHandler,Wo*2*1e3)}clearPingWaitTimeout(){this._pingWaitTimeout&&clearTimeout(this._pingWaitTimeout),this._pingWaitTimeout=null}onPingTimeout(){this._pingWaitTimeout=null,!(!this._enabled||!this.isConnected())&&(this.getLogger().warn(`No pings are received in ${Wo*2} seconds. Reconnecting`),this.disconnect(Se.STUCK,"connection stuck"),this.scheduleReconnect())}getConnectionAttemptDelay(e){let t;return e<1?t=.5:e<3?t=15:e<5?t=45:e<10?t=600:t=3600,t+t*Math.random()*.2}checkDuplicate(e){return this._session.lastMessageIds.includes(e)?(this.getLogger().warn(`Duplicate message ${e} skipped`),!1):(this._session.lastMessageIds.push(e),!0)}trimDuplicates(){this._session.lastMessageIds.length>jh&&(this._session.lastMessageIds=this._session.lastMessageIds.slice(-10))}logMessage(e){this._debug&&(e.extra?.sender&&e.extra.sender.type===br.Client?this.getLogger().info(`onPullClientEvent-${e.module_id}`,e.command,e.params,e.extra):e.module_id=="online"?this.getLogger().info("onPullOnlineEvent",e.command,e.params,e.extra):this.getLogger().info("onPullEvent",e.module_id,e.command,e.params,e.extra))}logToConsole(e,t=!1){(this._loggingEnabled||t)&&this.getLogger().log(`${$.getDateForLog()}: ${e}`)}addMessageToStat(e){this._session.history[e.module_id]||(this._session.history[e.module_id]={}),this._session.history[e.module_id][e.command]||(this.session.history[e.module_id][e.command]=0),this._session.history[e.module_id][e.command]++,this._session.messageCount++}showNotification(e){this.getLogger().warn(e)}onCustomEvent(e,t,n=!1){}}class Wh{_b24;_logger=null;_isInit=!1;_profile=null;_app=null;_payment=null;_license=null;_currency=null;_appOptions=null;_userOptions=null;_b24PullClient=null;_pullClientUnSubscribe=[];_pullClientModuleId="";constructor(e){this._b24=e,this.setLogger(this._b24.getLogger())}setLogger(e){this._logger=e,this._profile!==null&&this._profile.setLogger(this.getLogger()),this._app!==null&&this._app.setLogger(this.getLogger()),this._payment!==null&&this._payment.setLogger(this.getLogger()),this._license!==null&&this._license.setLogger(this.getLogger()),this._currency!==null&&this._currency.setLogger(this.getLogger()),this._appOptions!==null&&this._appOptions.setLogger(this.getLogger()),this._userOptions!==null&&this._userOptions.setLogger(this.getLogger())}getLogger(){return this._logger===null&&(this._logger=ye.build("NullLogger"),this._logger.setConfig({[I.desktop]:!1,[I.log]:!1,[I.info]:!1,[I.warn]:!1,[I.error]:!0,[I.trace]:!1})),this._logger}destroy(){this._destroyPullClient()}async loadData(e=[ee.App,ee.Profile]){const t={[ee.App]:{method:"app.info"},[ee.Profile]:{method:"profile"},[ee.Currency]:[{method:"crm.currency.base.get"},{method:"crm.currency.list"}],[ee.AppOptions]:{method:"app.option.get"},[ee.UserOptions]:{method:"user.option.get"}},n=e.reduce((s,i)=>{if(t[i])if(Array.isArray(t[i]))for(const[o,a]of t[i].entries())s[`get_${i}_${o}`]=a;else s[`get_${i}`]=t[i];return s},{});try{const s=(await this._b24.callBatch(n)).getData();s[`get_${ee.App}`]&&(this._app=await this.parseAppData(s[`get_${ee.App}`]),this._payment=await this.parsePaymentData(s[`get_${ee.App}`]),this._license=await this.parseLicenseData(s[`get_${ee.App}`])),s[`get_${ee.Profile}`]&&(this._profile=await this.parseUserData(s[`get_${ee.Profile}`])),s[`get_${ee.Currency}_0`]&&s[`get_${ee.Currency}_1`]&&(this._currency=await this.parseCurrencyData({currencyBase:s[`get_${ee.Currency}_0`],currencyList:s[`get_${ee.Currency}_1`]})),s[`get_${ee.AppOptions}`]&&(this._appOptions=await this.parseOptionsData("app",s[`get_${ee.AppOptions}`])),s[`get_${ee.UserOptions}`]&&(this._userOptions=await this.parseOptionsData("user",s[`get_${ee.UserOptions}`])),this._isInit=!0}catch(s){throw s instanceof Error?s:(console.error("Error loading data:",s),new Error("Failed to load data"))}}async parseUserData(e){const t=new wh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number(e.ID),isAdmin:e.ADMIN===!0,lastName:e?.LAST_NAME||"",name:e?.NAME||"",gender:e?.PERSONAL_GENDER||"",photo:e?.PERSONAL_PHOTO||"",TimeZone:e?.TIME_ZONE||"",TimeZoneOffset:e?.TIME_ZONE_OFFSET}).then(()=>t)}async parseAppData(e){const t=new bh(this._b24);return t.setLogger(this.getLogger()),t.initData({id:Number.parseInt(e.ID),code:e.CODE,version:Number.parseInt(e.VERSION),status:e.STATUS,isInstalled:e.INSTALLED}).then(()=>t)}async parsePaymentData(e){const t=new Sh(this._b24);return t.setLogger(this.getLogger()),t.initData({isExpired:e.PAYMENT_EXPIRED==="Y",days:Number.parseInt(e.DAYS||"0")}).then(()=>t)}async parseLicenseData(e){const t=new _h(this._b24);return t.setLogger(this.getLogger()),t.initData({languageId:e.LANGUAGE_ID,license:e.LICENSE,licensePrevious:e.LICENSE_PREVIOUS,licenseType:e.LICENSE_TYPE,licenseFamily:e.LICENSE_FAMILY,isSelfHosted:e.LICENSE.includes("selfhosted")}).then(()=>t)}async parseCurrencyData(e){const t=new vh(this._b24);return t.setLogger(this.getLogger()),t.initData(e).then(()=>t)}async parseOptionsData(e,t){const n=new Dn(this._b24,e);return n.setLogger(this.getLogger()),n.initData(t).then(()=>n)}get isInit(){return this._isInit}get forB24Form(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");if(this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return{app_code:this.appInfo.data.code,app_status:this.appInfo.data.status,payment_expired:this.paymentInfo.data.isExpired?"Y":"N",days:this.paymentInfo.data.days,b24_plan:this.licenseInfo.data.license,c_name:this.profileInfo.data.name,c_last_name:this.profileInfo.data.lastName,hostname:this.hostName}}get hostName(){return this._b24.getTargetOrigin()}get profileInfo(){if(this.ensureInitialized(),this._profile===null)throw new Error("B24HelperManager.profileInfo not initialized");return this._profile}get appInfo(){if(this.ensureInitialized(),this._app===null)throw new Error("B24HelperManager.appInfo not initialized");return this._app}get paymentInfo(){if(this.ensureInitialized(),this._payment===null)throw new Error("B24HelperManager.paymentInfo not initialized");return this._payment}get licenseInfo(){if(this.ensureInitialized(),this._license===null)throw new Error("B24HelperManager.licenseInfo not initialized");return this._license}get currency(){if(this.ensureInitialized(),this._currency===null)throw new Error("B24HelperManager.currency not initialized");return this._currency}get appOptions(){if(this.ensureInitialized(),this._appOptions===null)throw new Error("B24HelperManager.appOptions not initialized");return this._appOptions}get userOptions(){if(this.ensureInitialized(),this._userOptions===null)throw new Error("B24HelperManager.userOptions not initialized");return this._userOptions}get isSelfHosted(){return this.licenseInfo.data.isSelfHosted}get primaryKeyIncrementValue(){return this.isSelfHosted?1:2}get b24SpecificUrl(){return this.isSelfHosted?{[gt.MainSettings]:"/configs/",[gt.UfList]:"/configs/userfield_list.php",[gt.UfPage]:"/configs/userfield.php"}:{[gt.MainSettings]:"/settings/configs/",[gt.UfList]:"/settings/configs/userfield_list.php",[gt.UfPage]:"/settings/configs/userfield.php"}}usePullClient(e="prefix",t){return this._b24PullClient?this:(this.initializePullClient(typeof t>"u"?this.profileInfo.data.id||0:t,e),this)}initializePullClient(e,t="prefix"){this._b24PullClient=new Ho({b24:this._b24,restApplication:this._b24.auth.getUniq(t),userId:e})}subscribePullClient(e,t="application"){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId=t,this._pullClientUnSubscribe.push(this._b24PullClient.subscribe({moduleId:this._pullClientModuleId,callback:e})),this}startPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");this._b24PullClient.start().catch(e=>{this.getLogger().error(`${$.getDateForLog()}: Pull not running`,e)})}getModuleIdPullClient(){if(!this._b24PullClient)throw new Error("PullClient not init");return this._pullClientModuleId}_destroyPullClient(){for(const e of this._pullClientUnSubscribe)e();this._b24PullClient?.destroy(),this._b24PullClient=null}ensureInitialized(){if(!this._isInit)throw new Error("B24HelperManager not initialized")}}const qh=()=>{let r=!1,e=!1,t=null;return{initB24Helper:async(n,s=[ee.App,ee.Profile])=>(t===null&&(t=new Wh(n)),r?t:t.loadData(s).then(()=>(r=!0,t))),isInitB24Helper:()=>r,destroyB24Helper:()=>{t?.destroy(),t=null,r=!1,e=!1},getB24Helper:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");return t},usePullClient:()=>{if(t===null)throw new Error("B24HelperManager is not initialized. You need to call initB24Helper first.");t.usePullClient(),e=!0},useSubscribePullClient:(n,s="application")=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.subscribePullClient(n,s)},startPullClient:()=>{if(!e)throw new Error("PullClient is not initialized. You need to call usePullClient first.");t?.startPullClient()}}},Vh=50;let ot=null,xr=!1,Dt=null,zo=!1,Dr=[],Jo=!1;function Zo(){window.setTimeout(()=>{if(!xr||ot===null){Zo();return}Hh(),Dr=[]},Vh)}function Hh(){if(Dt!==null)for(const r of Dr)r.reject(Dt);if(!(!xr||ot===null))for(const r of Dr)r.resolve(ot)}async function zh(){return xr&&ot!==null?Promise.resolve(ot):zo?(Jo||(Jo=!0,Zo()),new Promise((r,e)=>{Dr.push({resolve:r,reject:e})})):(zo=!0,new Promise((r,e)=>{const t={DOMAIN:null,PROTOCOL:!1,APP_SID:null,LANG:null};if(window.name){const[n,s,i]=window.name.split("|");t.DOMAIN=n,t.PROTOCOL=Number.parseInt(s)===1,t.APP_SID=i,t.LANG=null}(!t.DOMAIN||!t.APP_SID)&&(Dt=new Error("Unable to initialize Bitrix24Frame library!"),e(Dt)),ot=new Po(t),ot.init().then(()=>{xr=!0,r(ot)}).catch(n=>{Dt=n,e(Dt)})}))}P.AbstractB24=Pt,P.AjaxError=We,P.AjaxResult=Sr,P.AppFrame=Io,P.AuthHookManager=Oo,P.AuthManager=Co,P.B24Frame=Po,P.B24Hook=yh,P.B24LangList=Pn,P.B24PullClientManager=Ho,P.Browser=ki,P.CatalogProductImageType=Ni,P.CatalogProductType=Ci,P.CatalogRoundingRuleType=Ri,P.CloseReasons=Se,P.ConnectionType=te,P.DataType=Hn,P.DialogManager=Lo,P.EnumAppStatus=pt,P.EnumCrmEntityType=Ti,P.EnumCrmEntityTypeId=Oi,P.EnumCrmEntityTypeShort=Ai,P.ListRpcError=yn,P.LoadDataType=ee,P.LoggerBrowser=ye,P.LoggerType=I,P.LsKeys=Ne,P.MessageCommands=X,P.MessageManager=Ao,P.OptionsManager=Ro,P.ParentManager=No,P.PlacementManager=Mo,P.ProductRowDiscountTypeId=Ii,P.PullStatus=Re,P.RestrictionManagerParamsBase=Ei,P.RestrictionManagerParamsForEnterprise=gn,P.Result=$e,P.RpcMethod=Ve,P.SenderType=br,P.ServerMode=mn,P.SliderManager=Fo,P.StatusDescriptions=Li,P.SubscriptionType=Le,P.SystemCommands=Yt,P.Text=$,P.Type=N,P.TypeOption=Ye,P.TypeSpecificUrl=gt,P.initializeB24Frame=zh,P.isArrayOfArray=ta,P.omit=zn,P.pick=ea,P.useB24Helper=qh,P.useFormatter=mh});
44
44
  //# sourceMappingURL=index.min.js.map