@fern-api/php-dynamic-snippets 0.0.5 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/DynamicSnippetsGenerator.cjs +23 -15
- package/cjs/DynamicSnippetsGenerator.cjs.map +1 -0
- package/cjs/DynamicSnippetsGenerator.d.cts +1 -1
- package/cjs/{DynamicSnippetsGeneratorContext-7JXlOyjB.d.cts → DynamicSnippetsGeneratorContext-CwkDTYOI.d.cts} +3 -3
- package/cjs/EndpointSnippetGenerator.cjs +34 -15
- package/cjs/EndpointSnippetGenerator.cjs.map +1 -0
- package/cjs/EndpointSnippetGenerator.d.cts +7 -1
- package/cjs/context/DynamicSnippetsGeneratorContext.cjs +22 -14
- package/cjs/context/DynamicSnippetsGeneratorContext.cjs.map +1 -0
- package/cjs/context/DynamicSnippetsGeneratorContext.d.cts +1 -1
- package/cjs/context/DynamicTypeLiteralMapper.cjs +33 -14
- package/cjs/context/DynamicTypeLiteralMapper.cjs.map +1 -0
- package/cjs/context/DynamicTypeLiteralMapper.d.cts +1 -1
- package/cjs/context/FilePropertyMapper.cjs +33 -14
- package/cjs/context/FilePropertyMapper.cjs.map +1 -0
- package/cjs/context/FilePropertyMapper.d.cts +1 -1
- package/cjs/index.cjs +23 -27
- package/cjs/index.cjs.map +1 -0
- package/cjs/index.d.cts +2 -2
- package/esm/DynamicSnippetsGenerator.d.ts +1 -1
- package/esm/DynamicSnippetsGenerator.js +2 -1
- package/esm/DynamicSnippetsGenerator.js.map +1 -0
- package/esm/{DynamicSnippetsGeneratorContext-7JXlOyjB.d.ts → DynamicSnippetsGeneratorContext-CwkDTYOI.d.ts} +3 -3
- package/esm/EndpointSnippetGenerator.d.ts +7 -1
- package/esm/EndpointSnippetGenerator.js +2 -1
- package/esm/EndpointSnippetGenerator.js.map +1 -0
- package/esm/chunk-3LG5WCZI.js +2 -0
- package/esm/chunk-3LG5WCZI.js.map +1 -0
- package/esm/{chunk-2MVLIJOX.js → chunk-3QAUV5WT.js} +2 -1
- package/esm/chunk-3QAUV5WT.js.map +1 -0
- package/esm/chunk-CPIHNCS3.js +4 -0
- package/esm/chunk-CPIHNCS3.js.map +1 -0
- package/esm/chunk-DFQIKN25.js +2 -0
- package/esm/chunk-DFQIKN25.js.map +1 -0
- package/esm/{chunk-NXBUWG6C.js → chunk-EECVWAVT.js} +2 -1
- package/esm/chunk-EECVWAVT.js.map +1 -0
- package/esm/chunk-PYHFKEW4.js +47 -0
- package/esm/chunk-PYHFKEW4.js.map +1 -0
- package/esm/chunk-XX3MRTVI.js +2 -0
- package/esm/chunk-XX3MRTVI.js.map +1 -0
- package/esm/context/DynamicSnippetsGeneratorContext.d.ts +1 -1
- package/esm/context/DynamicSnippetsGeneratorContext.js +2 -1
- package/esm/context/DynamicSnippetsGeneratorContext.js.map +1 -0
- package/esm/context/DynamicTypeLiteralMapper.d.ts +1 -1
- package/esm/context/DynamicTypeLiteralMapper.js +2 -1
- package/esm/context/DynamicTypeLiteralMapper.js.map +1 -0
- package/esm/context/FilePropertyMapper.d.ts +1 -1
- package/esm/context/FilePropertyMapper.js +2 -1
- package/esm/context/FilePropertyMapper.js.map +1 -0
- package/esm/index.d.ts +2 -2
- package/esm/index.js +2 -13
- package/esm/index.js.map +1 -0
- package/package.json +1 -1
- package/esm/chunk-6U4ZJ2VA.js +0 -14
- package/esm/chunk-AEXR2D5H.js +0 -1
- package/esm/chunk-ESPGWZRY.js +0 -3
- package/esm/chunk-H4KXMOP7.js +0 -1
- package/esm/chunk-JCUQ3FQP.js +0 -28
|
@@ -1,23 +1,30 @@
|
|
|
1
|
-
"use strict";var Ce=Object.defineProperty,Dr=Object.defineProperties,Or=Object.getOwnPropertyDescriptor,$r=Object.getOwnPropertyDescriptors,Vr=Object.getOwnPropertyNames,Ne=Object.getOwnPropertySymbols;var je=Object.prototype.hasOwnProperty,et=Object.prototype.propertyIsEnumerable;var We=(n,t,e)=>t in n?Ce(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,pe=(n,t)=>{for(var e in t||(t={}))je.call(t,e)&&We(n,e,t[e]);if(Ne)for(var e of Ne(t))et.call(t,e)&&We(n,e,t[e]);return n},fe=(n,t)=>Dr(n,$r(t));var tt=n=>typeof n=="symbol"?n:n+"",rt=(n,t)=>{var e={};for(var r in n)je.call(n,r)&&t.indexOf(r)<0&&(e[r]=n[r]);if(n!=null&&Ne)for(var r of Ne(n))t.indexOf(r)<0&&et.call(n,r)&&(e[r]=n[r]);return e};var ze=(n,t)=>()=>(n&&(t=n(n=0)),t);var nt=(n,t)=>{for(var e in t)Ce(n,e,{get:t[e],enumerable:!0})},qr=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Vr(t))!je.call(n,i)&&i!==e&&Ce(n,i,{get:()=>t[i],enumerable:!(r=Or(t,i))||r.enumerable});return n};var Wr=n=>qr(Ce({},"__esModule",{value:!0}),n);var f=(n,t,e)=>We(n,typeof t!="symbol"?t+"":t,e);function ot(){throw new Error("setTimeout has not been defined")}function at(){throw new Error("clearTimeout has not been defined")}function st(n){if(Y===setTimeout)return setTimeout(n,0);if((Y===ot||!Y)&&setTimeout)return Y=setTimeout,setTimeout(n,0);try{return Y(n,0)}catch(t){try{return Y.call(null,n,0)}catch(e){return Y.call(this,n,0)}}}function jr(n){if(G===clearTimeout)return clearTimeout(n);if((G===at||!G)&&clearTimeout)return G=clearTimeout,clearTimeout(n);try{return G(n)}catch(t){try{return G.call(null,n)}catch(e){return G.call(this,n)}}}function zr(){!ce||!Q||(ce=!1,Q.length?D=Q.concat(D):Ie=-1,D.length&&ut())}function ut(){if(!ce){var n=st(zr);ce=!0;for(var t=D.length;t;){for(Q=D,D=[];++Ie<t;)Q&&Q[Ie].run();Ie=-1,t=D.length}Q=null,ce=!1,jr(n)}}function Yr(n){var t=new Array(arguments.length-1);if(arguments.length>1)for(var e=1;e<arguments.length;e++)t[e-1]=arguments[e];D.push(new pt(n,t)),D.length===1&&!ce&&st(ut)}function pt(n,t){this.fun=n,this.array=t}function X(){}function fn(n){throw new Error("process.binding is not supported")}function ln(){return"/"}function cn(n){throw new Error("process.chdir is not supported")}function dn(){return 0}function hn(n){var t=mn.call(le)*.001,e=Math.floor(t),r=Math.floor(t%1*1e9);return n&&(e=e-n[0],r=r-n[1],r<0&&(e--,r+=1e9)),[e,r]}function xn(){var n=new Date,t=n-yn;return t/1e3}var Y,G,D,ce,Q,Ie,Gr,Hr,Zr,Jr,Kr,Qr,Xr,en,tn,rn,nn,on,an,sn,un,pn,le,mn,yn,c,it,u=ze(()=>{"use strict";Y=ot,G=at;typeof globalThis.setTimeout=="function"&&(Y=setTimeout);typeof globalThis.clearTimeout=="function"&&(G=clearTimeout);D=[],ce=!1,Ie=-1;pt.prototype.run=function(){this.fun.apply(null,this.array)};Gr="browser",Hr="browser",Zr=!0,Jr={},Kr=[],Qr="",Xr={},en={},tn={};rn=X,nn=X,on=X,an=X,sn=X,un=X,pn=X;le=globalThis.performance||{},mn=le.now||le.mozNow||le.msNow||le.oNow||le.webkitNow||function(){return new Date().getTime()};yn=new Date;c={nextTick:Yr,title:Gr,browser:Zr,env:Jr,argv:Kr,version:Qr,versions:Xr,on:rn,addListener:nn,once:on,off:an,removeListener:sn,removeAllListeners:un,emit:pn,binding:fn,cwd:ln,chdir:cn,umask:dn,hrtime:hn,platform:Hr,release:en,config:tn,uptime:xn},it={};Object.keys(it).forEach(n=>{let t=n.split("."),e=c;for(let r=0;r<t.length;r++){let i=t[r];r===t.length-1?e[i]=it[n]:e=e[i]||(e[i]={})}})});function dt(){Ge=!0;for(var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0,e=n.length;t<e;++t)F[t]=n[t],L[n.charCodeAt(t)]=t;L[45]=62,L[95]=63}function wn(n){Ge||dt();var t,e,r,i,o,a,l=n.length;if(l%4>0)throw new Error("Invalid string. Length must be a multiple of 4");o=n[l-2]==="="?2:n[l-1]==="="?1:0,a=new gn(l*3/4-o),r=o>0?l-4:l;var m=0;for(t=0,e=0;t<r;t+=4,e+=3)i=L[n.charCodeAt(t)]<<18|L[n.charCodeAt(t+1)]<<12|L[n.charCodeAt(t+2)]<<6|L[n.charCodeAt(t+3)],a[m++]=i>>16&255,a[m++]=i>>8&255,a[m++]=i&255;return o===2?(i=L[n.charCodeAt(t)]<<2|L[n.charCodeAt(t+1)]>>4,a[m++]=i&255):o===1&&(i=L[n.charCodeAt(t)]<<10|L[n.charCodeAt(t+1)]<<4|L[n.charCodeAt(t+2)]>>2,a[m++]=i>>8&255,a[m++]=i&255),a}function vn(n){return F[n>>18&63]+F[n>>12&63]+F[n>>6&63]+F[n&63]}function Tn(n,t,e){for(var r,i=[],o=t;o<e;o+=3)r=(n[o]<<16)+(n[o+1]<<8)+n[o+2],i.push(vn(r));return i.join("")}function ft(n){Ge||dt();for(var t,e=n.length,r=e%3,i="",o=[],a=16383,l=0,m=e-r;l<m;l+=a)o.push(Tn(n,l,l+a>m?m:l+a));return r===1?(t=n[e-1],i+=F[t>>2],i+=F[t<<4&63],i+="=="):r===2&&(t=(n[e-2]<<8)+n[e-1],i+=F[t>>10],i+=F[t>>4&63],i+=F[t<<2&63],i+="="),o.push(i),o.join("")}function Le(){return s.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function O(n,t){if(Le()<t)throw new RangeError("Invalid typed array length");return s.TYPED_ARRAY_SUPPORT?(n=new Uint8Array(t),n.__proto__=s.prototype):(n===null&&(n=new s(t)),n.length=t),n}function s(n,t,e){if(!s.TYPED_ARRAY_SUPPORT&&!(this instanceof s))return new s(n,t,e);if(typeof n=="number"){if(typeof t=="string")throw new Error("If encoding is specified then the first argument must be a string");return He(this,n)}return mt(this,n,t,e)}function mt(n,t,e,r){if(typeof t=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer!="undefined"&&t instanceof ArrayBuffer?bn(n,t,e,r):typeof t=="string"?Rn(n,t,e):En(n,t)}function ht(n){if(typeof n!="number")throw new TypeError('"size" argument must be a number');if(n<0)throw new RangeError('"size" argument must not be negative')}function An(n,t,e,r){return ht(t),t<=0?O(n,t):e!==void 0?typeof r=="string"?O(n,t).fill(e,r):O(n,t).fill(e):O(n,t)}function He(n,t){if(ht(t),n=O(n,t<0?0:Ze(t)|0),!s.TYPED_ARRAY_SUPPORT)for(var e=0;e<t;++e)n[e]=0;return n}function Rn(n,t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!s.isEncoding(e))throw new TypeError('"encoding" must be a valid string encoding');var r=yt(t,e)|0;n=O(n,r);var i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}function Ye(n,t){var e=t.length<0?0:Ze(t.length)|0;n=O(n,e);for(var r=0;r<e;r+=1)n[r]=t[r]&255;return n}function bn(n,t,e,r){if(t.byteLength,e<0||t.byteLength<e)throw new RangeError("'offset' is out of bounds");if(t.byteLength<e+(r||0))throw new RangeError("'length' is out of bounds");return e===void 0&&r===void 0?t=new Uint8Array(t):r===void 0?t=new Uint8Array(t,e):t=new Uint8Array(t,e,r),s.TYPED_ARRAY_SUPPORT?(n=t,n.__proto__=s.prototype):n=Ye(n,t),n}function En(n,t){if(k(t)){var e=Ze(t.length)|0;return n=O(n,e),n.length===0||t.copy(n,0,0,e),n}if(t){if(typeof ArrayBuffer!="undefined"&&t.buffer instanceof ArrayBuffer||"length"in t)return typeof t.length!="number"||jn(t.length)?O(n,0):Ye(n,t);if(t.type==="Buffer"&&Array.isArray(t.data))return Ye(n,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function Ze(n){if(n>=Le())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Le().toString(16)+" bytes");return n|0}function k(n){return!!(n!=null&&n._isBuffer)}function yt(n,t){if(k(n))return n.length;if(typeof ArrayBuffer!="undefined"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(n)||n instanceof ArrayBuffer))return n.byteLength;typeof n!="string"&&(n=""+n);var e=n.length;if(e===0)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":case void 0:return Se(n).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return e*2;case"hex":return e>>>1;case"base64":return Rt(n).length;default:if(r)return Se(n).length;t=(""+t).toLowerCase(),r=!0}}function Nn(n,t,e){var r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((e===void 0||e>this.length)&&(e=this.length),e<=0)||(e>>>=0,t>>>=0,e<=t))return"";for(n||(n="utf8");;)switch(n){case"hex":return Mn(this,t,e);case"utf8":case"utf-8":return wt(this,t,e);case"ascii":return Bn(this,t,e);case"latin1":case"binary":return Un(this,t,e);case"base64":return Fn(this,t,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _n(this,t,e);default:if(r)throw new TypeError("Unknown encoding: "+n);n=(n+"").toLowerCase(),r=!0}}function ee(n,t,e){var r=n[t];n[t]=n[e],n[e]=r}function xt(n,t,e,r,i){if(n.length===0)return-1;if(typeof e=="string"?(r=e,e=0):e>2147483647?e=2147483647:e<-2147483648&&(e=-2147483648),e=+e,isNaN(e)&&(e=i?0:n.length-1),e<0&&(e=n.length+e),e>=n.length){if(i)return-1;e=n.length-1}else if(e<0)if(i)e=0;else return-1;if(typeof t=="string"&&(t=s.from(t,r)),k(t))return t.length===0?-1:lt(n,t,e,r,i);if(typeof t=="number")return t=t&255,s.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(n,t,e):Uint8Array.prototype.lastIndexOf.call(n,t,e):lt(n,[t],e,r,i);throw new TypeError("val must be string, number or Buffer")}function lt(n,t,e,r,i){var o=1,a=n.length,l=t.length;if(r!==void 0&&(r=String(r).toLowerCase(),r==="ucs2"||r==="ucs-2"||r==="utf16le"||r==="utf-16le")){if(n.length<2||t.length<2)return-1;o=2,a/=2,l/=2,e/=2}function m(b,I){return o===1?b[I]:b.readUInt16BE(I*o)}var h;if(i){var y=-1;for(h=e;h<a;h++)if(m(n,h)===m(t,y===-1?0:h-y)){if(y===-1&&(y=h),h-y+1===l)return y*o}else y!==-1&&(h-=h-y),y=-1}else for(e+l>a&&(e=a-l),h=e;h>=0;h--){for(var x=!0,R=0;R<l;R++)if(m(n,h+R)!==m(t,R)){x=!1;break}if(x)return h}return-1}function Cn(n,t,e,r){e=Number(e)||0;var i=n.length-e;r?(r=Number(r),r>i&&(r=i)):r=i;var o=t.length;if(o%2!==0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a<r;++a){var l=parseInt(t.substr(a*2,2),16);if(isNaN(l))return a;n[e+a]=l}return a}function In(n,t,e,r){return ke(Se(t,n.length-e),n,e,r)}function gt(n,t,e,r){return ke(qn(t),n,e,r)}function Ln(n,t,e,r){return gt(n,t,e,r)}function Sn(n,t,e,r){return ke(Rt(t),n,e,r)}function Pn(n,t,e,r){return ke(Wn(t,n.length-e),n,e,r)}function Fn(n,t,e){return t===0&&e===n.length?ft(n):ft(n.slice(t,e))}function wt(n,t,e){e=Math.min(n.length,e);for(var r=[],i=t;i<e;){var o=n[i],a=null,l=o>239?4:o>223?3:o>191?2:1;if(i+l<=e){var m,h,y,x;switch(l){case 1:o<128&&(a=o);break;case 2:m=n[i+1],(m&192)===128&&(x=(o&31)<<6|m&63,x>127&&(a=x));break;case 3:m=n[i+1],h=n[i+2],(m&192)===128&&(h&192)===128&&(x=(o&15)<<12|(m&63)<<6|h&63,x>2047&&(x<55296||x>57343)&&(a=x));break;case 4:m=n[i+1],h=n[i+2],y=n[i+3],(m&192)===128&&(h&192)===128&&(y&192)===128&&(x=(o&15)<<18|(m&63)<<12|(h&63)<<6|y&63,x>65535&&x<1114112&&(a=x))}}a===null?(a=65533,l=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a),i+=l}return kn(r)}function kn(n){var t=n.length;if(t<=ct)return String.fromCharCode.apply(String,n);for(var e="",r=0;r<t;)e+=String.fromCharCode.apply(String,n.slice(r,r+=ct));return e}function Bn(n,t,e){var r="";e=Math.min(n.length,e);for(var i=t;i<e;++i)r+=String.fromCharCode(n[i]&127);return r}function Un(n,t,e){var r="";e=Math.min(n.length,e);for(var i=t;i<e;++i)r+=String.fromCharCode(n[i]);return r}function Mn(n,t,e){var r=n.length;(!t||t<0)&&(t=0),(!e||e<0||e>r)&&(e=r);for(var i="",o=t;o<e;++o)i+=Vn(n[o]);return i}function _n(n,t,e){for(var r=n.slice(t,e),i="",o=0;o<r.length;o+=2)i+=String.fromCharCode(r[o]+r[o+1]*256);return i}function T(n,t,e){if(n%1!==0||n<0)throw new RangeError("offset is not uint");if(n+t>e)throw new RangeError("Trying to access beyond buffer length")}function N(n,t,e,r,i,o){if(!k(n))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<o)throw new RangeError('"value" argument is out of bounds');if(e+r>n.length)throw new RangeError("Index out of range")}function Pe(n,t,e,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(n.length-e,2);i<o;++i)n[e+i]=(t&255<<8*(r?i:1-i))>>>(r?i:1-i)*8}function Fe(n,t,e,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(n.length-e,4);i<o;++i)n[e+i]=t>>>(r?i:3-i)*8&255}function vt(n,t,e,r,i,o){if(e+r>n.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function Tt(n,t,e,r,i){return i||vt(n,t,e,4,34028234663852886e22,-34028234663852886e22),Et(n,t,e,r,23,4),e+4}function At(n,t,e,r,i){return i||vt(n,t,e,8,17976931348623157e292,-17976931348623157e292),Et(n,t,e,r,52,8),e+8}function On(n){if(n=$n(n).replace(Dn,""),n.length<2)return"";for(;n.length%4!==0;)n=n+"=";return n}function $n(n){return n.trim?n.trim():n.replace(/^\s+|\s+$/g,"")}function Vn(n){return n<16?"0"+n.toString(16):n.toString(16)}function Se(n,t){t=t||1/0;for(var e,r=n.length,i=null,o=[],a=0;a<r;++a){if(e=n.charCodeAt(a),e>55295&&e<57344){if(!i){if(e>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=e;continue}if(e<56320){(t-=3)>-1&&o.push(239,191,189),i=e;continue}e=(i-55296<<10|e-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,e<128){if((t-=1)<0)break;o.push(e)}else if(e<2048){if((t-=2)<0)break;o.push(e>>6|192,e&63|128)}else if(e<65536){if((t-=3)<0)break;o.push(e>>12|224,e>>6&63|128,e&63|128)}else if(e<1114112){if((t-=4)<0)break;o.push(e>>18|240,e>>12&63|128,e>>6&63|128,e&63|128)}else throw new Error("Invalid code point")}return o}function qn(n){for(var t=[],e=0;e<n.length;++e)t.push(n.charCodeAt(e)&255);return t}function Wn(n,t){for(var e,r,i,o=[],a=0;a<n.length&&!((t-=2)<0);++a)e=n.charCodeAt(a),r=e>>8,i=e%256,o.push(i),o.push(r);return o}function Rt(n){return wn(On(n))}function ke(n,t,e,r){for(var i=0;i<r&&!(i+e>=t.length||i>=n.length);++i)t[i+e]=n[i];return i}function jn(n){return n!==n}function zn(n){return n!=null&&(!!n._isBuffer||bt(n)||Yn(n))}function bt(n){return!!n.constructor&&typeof n.constructor.isBuffer=="function"&&n.constructor.isBuffer(n)}function Yn(n){return typeof n.readFloatLE=="function"&&typeof n.slice=="function"&&bt(n.slice(0,0))}function Be(n,t,e,r,i){var o,a,l=i*8-r-1,m=(1<<l)-1,h=m>>1,y=-7,x=e?i-1:0,R=e?-1:1,b=n[t+x];for(x+=R,o=b&(1<<-y)-1,b>>=-y,y+=l;y>0;o=o*256+n[t+x],x+=R,y-=8);for(a=o&(1<<-y)-1,o>>=-y,y+=r;y>0;a=a*256+n[t+x],x+=R,y-=8);if(o===0)o=1-h;else{if(o===m)return a?NaN:(b?-1:1)*(1/0);a=a+Math.pow(2,r),o=o-h}return(b?-1:1)*a*Math.pow(2,o-r)}function Et(n,t,e,r,i,o){var a,l,m,h=o*8-i-1,y=(1<<h)-1,x=y>>1,R=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,b=r?0:o-1,I=r?1:-1,_r=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(l=isNaN(t)?1:0,a=y):(a=Math.floor(Math.log(t)/Math.LN2),t*(m=Math.pow(2,-a))<1&&(a--,m*=2),a+x>=1?t+=R/m:t+=R*Math.pow(2,1-x),t*m>=2&&(a++,m/=2),a+x>=y?(l=0,a=y):a+x>=1?(l=(t*m-1)*Math.pow(2,i),a=a+x):(l=t*Math.pow(2,x-1)*Math.pow(2,i),a=0));i>=8;n[e+b]=l&255,b+=I,l/=256,i-=8);for(a=a<<i|l,h+=i;h>0;n[e+b]=a&255,b+=I,a/=256,h-=8);n[e+b-I]|=_r*128}var F,L,gn,Ge,ct,Dn,Nt=ze(()=>{"use strict";u();p();F=[],L=[],gn=typeof Uint8Array!="undefined"?Uint8Array:Array,Ge=!1;s.TYPED_ARRAY_SUPPORT=globalThis.TYPED_ARRAY_SUPPORT!==void 0?globalThis.TYPED_ARRAY_SUPPORT:!0;s.poolSize=8192;s._augment=function(n){return n.__proto__=s.prototype,n};s.from=function(n,t,e){return mt(null,n,t,e)};s.kMaxLength=Le();s.TYPED_ARRAY_SUPPORT&&(s.prototype.__proto__=Uint8Array.prototype,s.__proto__=Uint8Array,typeof Symbol!="undefined"&&Symbol.species&&s[Symbol.species]);s.alloc=function(n,t,e){return An(null,n,t,e)};s.allocUnsafe=function(n){return He(null,n)};s.allocUnsafeSlow=function(n){return He(null,n)};s.isBuffer=zn;s.compare=function(t,e){if(!k(t)||!k(e))throw new TypeError("Arguments must be Buffers");if(t===e)return 0;for(var r=t.length,i=e.length,o=0,a=Math.min(r,i);o<a;++o)if(t[o]!==e[o]){r=t[o],i=e[o];break}return r<i?-1:i<r?1:0};s.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};s.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return s.alloc(0);var r;if(e===void 0)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var i=s.allocUnsafe(e),o=0;for(r=0;r<t.length;++r){var a=t[r];if(!k(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(i,o),o+=a.length}return i};s.byteLength=yt;s.prototype._isBuffer=!0;s.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)ee(this,e,e+1);return this};s.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)ee(this,e,e+3),ee(this,e+1,e+2);return this};s.prototype.swap64=function(){var t=this.length;if(t%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)ee(this,e,e+7),ee(this,e+1,e+6),ee(this,e+2,e+5),ee(this,e+3,e+4);return this};s.prototype.toString=function(){var t=this.length|0;return t===0?"":arguments.length===0?wt(this,0,t):Nn.apply(this,arguments)};s.prototype.equals=function(t){if(!k(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:s.compare(this,t)===0};s.prototype.compare=function(t,e,r,i,o){if(!k(t))throw new TypeError("Argument must be a Buffer");if(e===void 0&&(e=0),r===void 0&&(r=t?t.length:0),i===void 0&&(i=0),o===void 0&&(o=this.length),e<0||r>t.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&e>=r)return 0;if(i>=o)return-1;if(e>=r)return 1;if(e>>>=0,r>>>=0,i>>>=0,o>>>=0,this===t)return 0;for(var a=o-i,l=r-e,m=Math.min(a,l),h=this.slice(i,o),y=t.slice(e,r),x=0;x<m;++x)if(h[x]!==y[x]){a=h[x],l=y[x];break}return a<l?-1:l<a?1:0};s.prototype.includes=function(t,e,r){return this.indexOf(t,e,r)!==-1};s.prototype.indexOf=function(t,e,r){return xt(this,t,e,r,!0)};s.prototype.lastIndexOf=function(t,e,r){return xt(this,t,e,r,!1)};s.prototype.write=function(t,e,r,i){if(e===void 0)i="utf8",r=this.length,e=0;else if(r===void 0&&typeof e=="string")i=e,r=this.length,e=0;else if(isFinite(e))e=e|0,isFinite(r)?(r=r|0,i===void 0&&(i="utf8")):(i=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o=this.length-e;if((r===void 0||r>o)&&(r=o),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var a=!1;;)switch(i){case"hex":return Cn(this,t,e,r);case"utf8":case"utf-8":return In(this,t,e,r);case"ascii":return gt(this,t,e,r);case"latin1":case"binary":return Ln(this,t,e,r);case"base64":return Sn(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Pn(this,t,e,r);default:if(a)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),a=!0}};s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};ct=4096;s.prototype.slice=function(t,e){var r=this.length;t=~~t,e=e===void 0?r:~~e,t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),e<t&&(e=t);var i;if(s.TYPED_ARRAY_SUPPORT)i=this.subarray(t,e),i.__proto__=s.prototype;else{var o=e-t;i=new s(o,void 0);for(var a=0;a<o;++a)i[a]=this[a+t]}return i};s.prototype.readUIntLE=function(t,e,r){t=t|0,e=e|0,r||T(t,e,this.length);for(var i=this[t],o=1,a=0;++a<e&&(o*=256);)i+=this[t+a]*o;return i};s.prototype.readUIntBE=function(t,e,r){t=t|0,e=e|0,r||T(t,e,this.length);for(var i=this[t+--e],o=1;e>0&&(o*=256);)i+=this[t+--e]*o;return i};s.prototype.readUInt8=function(t,e){return e||T(t,1,this.length),this[t]};s.prototype.readUInt16LE=function(t,e){return e||T(t,2,this.length),this[t]|this[t+1]<<8};s.prototype.readUInt16BE=function(t,e){return e||T(t,2,this.length),this[t]<<8|this[t+1]};s.prototype.readUInt32LE=function(t,e){return e||T(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};s.prototype.readUInt32BE=function(t,e){return e||T(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};s.prototype.readIntLE=function(t,e,r){t=t|0,e=e|0,r||T(t,e,this.length);for(var i=this[t],o=1,a=0;++a<e&&(o*=256);)i+=this[t+a]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i};s.prototype.readIntBE=function(t,e,r){t=t|0,e=e|0,r||T(t,e,this.length);for(var i=e,o=1,a=this[t+--i];i>0&&(o*=256);)a+=this[t+--i]*o;return o*=128,a>=o&&(a-=Math.pow(2,8*e)),a};s.prototype.readInt8=function(t,e){return e||T(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};s.prototype.readInt16LE=function(t,e){e||T(t,2,this.length);var r=this[t]|this[t+1]<<8;return r&32768?r|4294901760:r};s.prototype.readInt16BE=function(t,e){e||T(t,2,this.length);var r=this[t+1]|this[t]<<8;return r&32768?r|4294901760:r};s.prototype.readInt32LE=function(t,e){return e||T(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};s.prototype.readInt32BE=function(t,e){return e||T(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};s.prototype.readFloatLE=function(t,e){return e||T(t,4,this.length),Be(this,t,!0,23,4)};s.prototype.readFloatBE=function(t,e){return e||T(t,4,this.length),Be(this,t,!1,23,4)};s.prototype.readDoubleLE=function(t,e){return e||T(t,8,this.length),Be(this,t,!0,52,8)};s.prototype.readDoubleBE=function(t,e){return e||T(t,8,this.length),Be(this,t,!1,52,8)};s.prototype.writeUIntLE=function(t,e,r,i){if(t=+t,e=e|0,r=r|0,!i){var o=Math.pow(2,8*r)-1;N(this,t,e,r,o,0)}var a=1,l=0;for(this[e]=t&255;++l<r&&(a*=256);)this[e+l]=t/a&255;return e+r};s.prototype.writeUIntBE=function(t,e,r,i){if(t=+t,e=e|0,r=r|0,!i){var o=Math.pow(2,8*r)-1;N(this,t,e,r,o,0)}var a=r-1,l=1;for(this[e+a]=t&255;--a>=0&&(l*=256);)this[e+a]=t/l&255;return e+r};s.prototype.writeUInt8=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,1,255,0),s.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=t&255,e+1};s.prototype.writeUInt16LE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[e]=t&255,this[e+1]=t>>>8):Pe(this,t,e,!0),e+2};s.prototype.writeUInt16BE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=t&255):Pe(this,t,e,!1),e+2};s.prototype.writeUInt32LE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=t&255):Fe(this,t,e,!0),e+4};s.prototype.writeUInt32BE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t&255):Fe(this,t,e,!1),e+4};s.prototype.writeIntLE=function(t,e,r,i){if(t=+t,e=e|0,!i){var o=Math.pow(2,8*r-1);N(this,t,e,r,o-1,-o)}var a=0,l=1,m=0;for(this[e]=t&255;++a<r&&(l*=256);)t<0&&m===0&&this[e+a-1]!==0&&(m=1),this[e+a]=(t/l>>0)-m&255;return e+r};s.prototype.writeIntBE=function(t,e,r,i){if(t=+t,e=e|0,!i){var o=Math.pow(2,8*r-1);N(this,t,e,r,o-1,-o)}var a=r-1,l=1,m=0;for(this[e+a]=t&255;--a>=0&&(l*=256);)t<0&&m===0&&this[e+a+1]!==0&&(m=1),this[e+a]=(t/l>>0)-m&255;return e+r};s.prototype.writeInt8=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,1,127,-128),s.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=t&255,e+1};s.prototype.writeInt16LE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[e]=t&255,this[e+1]=t>>>8):Pe(this,t,e,!0),e+2};s.prototype.writeInt16BE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=t&255):Pe(this,t,e,!1),e+2};s.prototype.writeInt32LE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,4,2147483647,-2147483648),s.TYPED_ARRAY_SUPPORT?(this[e]=t&255,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):Fe(this,t,e,!0),e+4};s.prototype.writeInt32BE=function(t,e,r){return t=+t,e=e|0,r||N(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t&255):Fe(this,t,e,!1),e+4};s.prototype.writeFloatLE=function(t,e,r){return Tt(this,t,e,!0,r)};s.prototype.writeFloatBE=function(t,e,r){return Tt(this,t,e,!1,r)};s.prototype.writeDoubleLE=function(t,e,r){return At(this,t,e,!0,r)};s.prototype.writeDoubleBE=function(t,e,r){return At(this,t,e,!1,r)};s.prototype.copy=function(t,e,r,i){if(r||(r=0),!i&&i!==0&&(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i<r&&(i=r),i===r||t.length===0||this.length===0)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e<i-r&&(i=t.length-e+r);var o=i-r,a;if(this===t&&r<e&&e<i)for(a=o-1;a>=0;--a)t[a+e]=this[a+r];else if(o<1e3||!s.TYPED_ARRAY_SUPPORT)for(a=0;a<o;++a)t[a+e]=this[a+r];else Uint8Array.prototype.set.call(t,this.subarray(r,r+o),e);return o};s.prototype.fill=function(t,e,r,i){if(typeof t=="string"){if(typeof e=="string"?(i=e,e=0,r=this.length):typeof r=="string"&&(i=r,r=this.length),t.length===1){var o=t.charCodeAt(0);o<256&&(t=o)}if(i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!s.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else typeof t=="number"&&(t=t&255);if(e<0||this.length<e||this.length<r)throw new RangeError("Out of range index");if(r<=e)return this;e=e>>>0,r=r===void 0?this.length:r>>>0,t||(t=0);var a;if(typeof t=="number")for(a=e;a<r;++a)this[a]=t;else{var l=k(t)?t:Se(new s(t,i).toString()),m=l.length;for(a=0;a<r-e;++a)this[a+e]=l[a%m]}return this};Dn=/[^+\/0-9A-Za-z-_]/g});var p=ze(()=>{"use strict";Nt()});var fa={};nt(fa,{DynamicSnippetsGenerator:()=>Xe});module.exports=Wr(fa);u();p();u();p();u();p();function v(n){throw new Error("Unexpected value: "+JSON.stringify(n))}u();p();function ye(n){return Object.keys(n)}u();p();u();p();u();p();u();p();u();p();u();p();var Gn=typeof globalThis=="object"&&globalThis&&globalThis.Object===Object&&globalThis,Ct=Gn;var Hn=typeof self=="object"&&self&&self.Object===Object&&self,Zn=Ct||Hn||Function("return this")(),It=Zn;var Jn=It.Symbol,$=Jn;u();p();var Lt=Object.prototype,Kn=Lt.hasOwnProperty,Qn=Lt.toString,xe=$?$.toStringTag:void 0;function Xn(n){var t=Kn.call(n,xe),e=n[xe];try{n[xe]=void 0;var r=!0}catch(o){}var i=Qn.call(n);return r&&(t?n[xe]=e:delete n[xe]),i}var St=Xn;u();p();var ei=Object.prototype,ti=ei.toString;function ri(n){return ti.call(n)}var Pt=ri;var ni="[object Null]",ii="[object Undefined]",Ft=$?$.toStringTag:void 0;function oi(n){return n==null?n===void 0?ii:ni:Ft&&Ft in Object(n)?St(n):Pt(n)}var kt=oi;u();p();function ai(n){return n!=null&&typeof n=="object"}var Bt=ai;var si="[object Symbol]";function ui(n){return typeof n=="symbol"||Bt(n)&&kt(n)==si}var Ut=ui;u();p();u();p();function pi(n,t){for(var e=-1,r=n==null?0:n.length,i=Array(r);++e<r;)i[e]=t(n[e],e,n);return i}var Mt=pi;u();p();var fi=Array.isArray,_t=fi;var li=1/0,Dt=$?$.prototype:void 0,Ot=Dt?Dt.toString:void 0;function $t(n){if(typeof n=="string")return n;if(_t(n))return Mt(n,$t)+"";if(Ut(n))return Ot?Ot.call(n):"";var t=n+"";return t=="0"&&1/n==-li?"-0":t}var Vt=$t;u();p();function ci(n){return n==null?"":Vt(n)}var H=ci;u();p();u();p();u();p();u();p();u();p();u();p();function di(n,t,e){var r=-1,i=n.length;t<0&&(t=-t>i?0:i+t),e=e>i?i:e,e<0&&(e+=i),i=t>e?0:e-t>>>0,t>>>=0;for(var o=Array(i);++r<i;)o[r]=n[r+t];return o}var qt=di;function mi(n,t,e){var r=n.length;return e=e===void 0?r:e,!t&&e>=r?n:qt(n,t,e)}var Wt=mi;u();p();var hi="\\ud800-\\udfff",yi="\\u0300-\\u036f",xi="\\ufe20-\\ufe2f",gi="\\u20d0-\\u20ff",wi=yi+xi+gi,vi="\\ufe0e\\ufe0f",Ti="\\u200d",Ai=RegExp("["+Ti+hi+wi+vi+"]");function Ri(n){return Ai.test(n)}var Ue=Ri;u();p();u();p();function bi(n){return n.split("")}var jt=bi;u();p();var zt="\\ud800-\\udfff",Ei="\\u0300-\\u036f",Ni="\\ufe20-\\ufe2f",Ci="\\u20d0-\\u20ff",Ii=Ei+Ni+Ci,Li="\\ufe0e\\ufe0f",Si="["+zt+"]",Je="["+Ii+"]",Ke="\\ud83c[\\udffb-\\udfff]",Pi="(?:"+Je+"|"+Ke+")",Yt="[^"+zt+"]",Gt="(?:\\ud83c[\\udde6-\\uddff]){2}",Ht="[\\ud800-\\udbff][\\udc00-\\udfff]",Fi="\\u200d",Zt=Pi+"?",Jt="["+Li+"]?",ki="(?:"+Fi+"(?:"+[Yt,Gt,Ht].join("|")+")"+Jt+Zt+")*",Bi=Jt+Zt+ki,Ui="(?:"+[Yt+Je+"?",Je,Gt,Ht,Si].join("|")+")",Mi=RegExp(Ke+"(?="+Ke+")|"+Ui+Bi,"g");function _i(n){return n.match(Mi)||[]}var Kt=_i;function Di(n){return Ue(n)?Kt(n):jt(n)}var Qt=Di;function Oi(n){return function(t){t=H(t);var e=Ue(t)?Qt(t):void 0,r=e?e[0]:t.charAt(0),i=e?Wt(e,1).join(""):t.slice(1);return r[n]()+i}}var Xt=Oi;var $i=Xt("toUpperCase"),de=$i;function Vi(n){return de(H(n).toLowerCase())}var er=Vi;u();p();u();p();function qi(n,t,e,r){var i=-1,o=n==null?0:n.length;for(r&&o&&(e=n[++i]);++i<o;)e=t(e,n[i],i,n);return e}var tr=qi;u();p();u();p();u();p();function Wi(n){return function(t){return n==null?void 0:n[t]}}var rr=Wi;var ji={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},zi=rr(ji),nr=zi;var Yi=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Gi="\\u0300-\\u036f",Hi="\\ufe20-\\ufe2f",Zi="\\u20d0-\\u20ff",Ji=Gi+Hi+Zi,Ki="["+Ji+"]",Qi=RegExp(Ki,"g");function Xi(n){return n=H(n),n&&n.replace(Yi,nr).replace(Qi,"")}var ir=Xi;u();p();u();p();var eo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function to(n){return n.match(eo)||[]}var or=to;u();p();var ro=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function no(n){return ro.test(n)}var ar=no;u();p();var lr="\\ud800-\\udfff",io="\\u0300-\\u036f",oo="\\ufe20-\\ufe2f",ao="\\u20d0-\\u20ff",so=io+oo+ao,cr="\\u2700-\\u27bf",dr="a-z\\xdf-\\xf6\\xf8-\\xff",uo="\\xac\\xb1\\xd7\\xf7",po="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",fo="\\u2000-\\u206f",lo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",mr="A-Z\\xc0-\\xd6\\xd8-\\xde",co="\\ufe0e\\ufe0f",hr=uo+po+fo+lo,yr="['\u2019]",sr="["+hr+"]",mo="["+so+"]",xr="\\d+",ho="["+cr+"]",gr="["+dr+"]",wr="[^"+lr+hr+xr+cr+dr+mr+"]",yo="\\ud83c[\\udffb-\\udfff]",xo="(?:"+mo+"|"+yo+")",go="[^"+lr+"]",vr="(?:\\ud83c[\\udde6-\\uddff]){2}",Tr="[\\ud800-\\udbff][\\udc00-\\udfff]",me="["+mr+"]",wo="\\u200d",ur="(?:"+gr+"|"+wr+")",vo="(?:"+me+"|"+wr+")",pr="(?:"+yr+"(?:d|ll|m|re|s|t|ve))?",fr="(?:"+yr+"(?:D|LL|M|RE|S|T|VE))?",Ar=xo+"?",Rr="["+co+"]?",To="(?:"+wo+"(?:"+[go,vr,Tr].join("|")+")"+Rr+Ar+")*",Ao="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ro="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",bo=Rr+Ar+To,Eo="(?:"+[ho,vr,Tr].join("|")+")"+bo,No=RegExp([me+"?"+gr+"+"+pr+"(?="+[sr,me,"$"].join("|")+")",vo+"+"+fr+"(?="+[sr,me+ur,"$"].join("|")+")",me+"?"+ur+"+"+pr,me+"+"+fr,Ro,Ao,xr,Eo].join("|"),"g");function Co(n){return n.match(No)||[]}var br=Co;function Io(n,t,e){return n=H(n),t=e?void 0:t,t===void 0?ar(n)?br(n):or(n):n.match(t)||[]}var Er=Io;var Lo="['\u2019]",So=RegExp(Lo,"g");function Po(n){return function(t){return tr(Er(ir(t).replace(So,"")),n,"")}}var Nr=Po;var Fo=Nr(function(n,t,e){return t=t.toLowerCase(),n+(e?er(t):t)}),Me=Fo;u();p();u();p();var V=class{};u();p();u();p();var B=class extends V{constructor(e){super();f(this,"value");this.value=e}write(e){typeof this.value=="string"?e.write(this.value):this.value(e)}};var ko=4,ge=class{constructor(){f(this,"buffer","");f(this,"indentLevel",0);f(this,"hasWrittenAnything",!1);f(this,"lastCharacterIsNewline",!1)}write(t){let e=t.length>0&&t.endsWith(`
|
|
2
|
-
`),
|
|
1
|
+
"use strict";var rt=Object.defineProperty,go=Object.defineProperties,wo=Object.getOwnPropertyDescriptor,vo=Object.getOwnPropertyDescriptors,To=Object.getOwnPropertyNames,tt=Object.getOwnPropertySymbols;var $t=Object.prototype.hasOwnProperty,ur=Object.prototype.propertyIsEnumerable;var Dt=(r,t,e)=>t in r?rt(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e,Ne=(r,t)=>{for(var e in t||(t={}))$t.call(t,e)&&Dt(r,e,t[e]);if(tt)for(var e of tt(t))ur.call(t,e)&&Dt(r,e,t[e]);return r},Le=(r,t)=>go(r,vo(t));var pr=r=>typeof r=="symbol"?r:r+"",lr=(r,t)=>{var e={};for(var n in r)$t.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&tt)for(var n of tt(r))t.indexOf(n)<0&&ur.call(r,n)&&(e[n]=r[n]);return e};var jt=(r,t)=>()=>(r&&(t=r(r=0)),t);var cr=(r,t)=>{for(var e in t)rt(r,e,{get:t[e],enumerable:!0})},bo=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of To(t))!$t.call(r,i)&&i!==e&&rt(r,i,{get:()=>t[i],enumerable:!(n=wo(t,i))||n.enumerable});return r};var Ao=r=>bo(rt({},"__esModule",{value:!0}),r);var c=(r,t,e)=>Dt(r,typeof t!="symbol"?t+"":t,e);function dr(){throw new Error("setTimeout has not been defined")}function hr(){throw new Error("clearTimeout has not been defined")}function yr(r){if(ie===setTimeout)return setTimeout(r,0);if((ie===dr||!ie)&&setTimeout)return ie=setTimeout,setTimeout(r,0);try{return ie(r,0)}catch(t){try{return ie.call(null,r,0)}catch(e){return ie.call(this,r,0)}}}function Eo(r){if(oe===clearTimeout)return clearTimeout(r);if((oe===hr||!oe)&&clearTimeout)return oe=clearTimeout,clearTimeout(r);try{return oe(r)}catch(t){try{return oe.call(null,r)}catch(e){return oe.call(this,r)}}}function Ro(){!_e||!xe||(_e=!1,xe.length?H=xe.concat(H):nt=-1,H.length&&xr())}function xr(){if(!_e){var r=yr(Ro);_e=!0;for(var t=H.length;t;){for(xe=H,H=[];++nt<t;)xe&&xe[nt].run();nt=-1,t=H.length}xe=null,_e=!1,Eo(r)}}function Co(r){var t=new Array(arguments.length-1);if(arguments.length>1)for(var e=1;e<arguments.length;e++)t[e-1]=arguments[e];H.push(new gr(r,t)),H.length===1&&!_e&&yr(xr)}function gr(r,t){this.fun=r,this.array=t}function ge(){}function Wo(r){throw new Error("process.binding is not supported")}function Vo(){return"/"}function Go(r){throw new Error("process.chdir is not supported")}function zo(){return 0}function Yo(r){var t=Ho.call(Pe)*.001,e=Math.floor(t),n=Math.floor(t%1*1e9);return r&&(e=e-r[0],n=n-r[1],n<0&&(e--,n+=1e9)),[e,n]}function Jo(){var r=new Date,t=r-Ko;return t/1e3}var ie,oe,H,_e,xe,nt,Io,So,No,Lo,Po,_o,Fo,Bo,ko,Uo,Oo,Mo,Do,$o,jo,qo,Pe,Ho,Ko,p,mr,a=jt(()=>{"use strict";ie=dr,oe=hr;typeof globalThis.setTimeout=="function"&&(ie=setTimeout);typeof globalThis.clearTimeout=="function"&&(oe=clearTimeout);H=[],_e=!1,nt=-1;gr.prototype.run=function(){this.fun.apply(null,this.array)};Io="browser",So="browser",No=!0,Lo={},Po=[],_o="",Fo={},Bo={},ko={};Uo=ge,Oo=ge,Mo=ge,Do=ge,$o=ge,jo=ge,qo=ge;Pe=globalThis.performance||{},Ho=Pe.now||Pe.mozNow||Pe.msNow||Pe.oNow||Pe.webkitNow||function(){return new Date().getTime()};Ko=new Date;p={nextTick:Co,title:Io,browser:No,env:Lo,argv:Po,version:_o,versions:Fo,on:Uo,addListener:Oo,once:Mo,off:Do,removeListener:$o,removeAllListeners:jo,emit:qo,binding:Wo,cwd:Vo,chdir:Go,umask:zo,hrtime:Yo,platform:So,release:Bo,config:ko,uptime:Jo},mr={};Object.keys(mr).forEach(r=>{let t=r.split("."),e=p;for(let n=0;n<t.length;n++){let i=t[n];n===t.length-1?e[i]=mr[r]:e=e[i]||(e[i]={})}})});function br(){Wt=!0;for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0,e=r.length;t<e;++t)j[t]=r[t],_[r.charCodeAt(t)]=t;_[45]=62,_[95]=63}function Qo(r){Wt||br();var t,e,n,i,o,f,l=r.length;if(l%4>0)throw new Error("Invalid string. Length must be a multiple of 4");o=r[l-2]==="="?2:r[l-1]==="="?1:0,f=new Zo(l*3/4-o),n=o>0?l-4:l;var m=0;for(t=0,e=0;t<n;t+=4,e+=3)i=_[r.charCodeAt(t)]<<18|_[r.charCodeAt(t+1)]<<12|_[r.charCodeAt(t+2)]<<6|_[r.charCodeAt(t+3)],f[m++]=i>>16&255,f[m++]=i>>8&255,f[m++]=i&255;return o===2?(i=_[r.charCodeAt(t)]<<2|_[r.charCodeAt(t+1)]>>4,f[m++]=i&255):o===1&&(i=_[r.charCodeAt(t)]<<10|_[r.charCodeAt(t+1)]<<4|_[r.charCodeAt(t+2)]>>2,f[m++]=i>>8&255,f[m++]=i&255),f}function Xo(r){return j[r>>18&63]+j[r>>12&63]+j[r>>6&63]+j[r&63]}function ea(r,t,e){for(var n,i=[],o=t;o<e;o+=3)n=(r[o]<<16)+(r[o+1]<<8)+r[o+2],i.push(Xo(n));return i.join("")}function wr(r){Wt||br();for(var t,e=r.length,n=e%3,i="",o=[],f=16383,l=0,m=e-n;l<m;l+=f)o.push(ea(r,l,l+f>m?m:l+f));return n===1?(t=r[e-1],i+=j[t>>2],i+=j[t<<4&63],i+="=="):n===2&&(t=(r[e-2]<<8)+r[e-1],i+=j[t>>10],i+=j[t>>4&63],i+=j[t<<2&63],i+="="),o.push(i),o.join("")}function it(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function Y(r,t){if(it()<t)throw new RangeError("Invalid typed array length");return u.TYPED_ARRAY_SUPPORT?(r=new Uint8Array(t),r.__proto__=u.prototype):(r===null&&(r=new u(t)),r.length=t),r}function u(r,t,e){if(!u.TYPED_ARRAY_SUPPORT&&!(this instanceof u))return new u(r,t,e);if(typeof r=="number"){if(typeof t=="string")throw new Error("If encoding is specified then the first argument must be a string");return Vt(this,r)}return Ar(this,r,t,e)}function Ar(r,t,e,n){if(typeof t=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer!="undefined"&&t instanceof ArrayBuffer?na(r,t,e,n):typeof t=="string"?ra(r,t,e):ia(r,t)}function Er(r){if(typeof r!="number")throw new TypeError('"size" argument must be a number');if(r<0)throw new RangeError('"size" argument must not be negative')}function ta(r,t,e,n){return Er(t),t<=0?Y(r,t):e!==void 0?typeof n=="string"?Y(r,t).fill(e,n):Y(r,t).fill(e):Y(r,t)}function Vt(r,t){if(Er(t),r=Y(r,t<0?0:Gt(t)|0),!u.TYPED_ARRAY_SUPPORT)for(var e=0;e<t;++e)r[e]=0;return r}function ra(r,t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!u.isEncoding(e))throw new TypeError('"encoding" must be a valid string encoding');var n=Rr(t,e)|0;r=Y(r,n);var i=r.write(t,e);return i!==n&&(r=r.slice(0,i)),r}function qt(r,t){var e=t.length<0?0:Gt(t.length)|0;r=Y(r,e);for(var n=0;n<e;n+=1)r[n]=t[n]&255;return r}function na(r,t,e,n){if(t.byteLength,e<0||t.byteLength<e)throw new RangeError("'offset' is out of bounds");if(t.byteLength<e+(n||0))throw new RangeError("'length' is out of bounds");return e===void 0&&n===void 0?t=new Uint8Array(t):n===void 0?t=new Uint8Array(t,e):t=new Uint8Array(t,e,n),u.TYPED_ARRAY_SUPPORT?(r=t,r.__proto__=u.prototype):r=qt(r,t),r}function ia(r,t){if(q(t)){var e=Gt(t.length)|0;return r=Y(r,e),r.length===0||t.copy(r,0,0,e),r}if(t){if(typeof ArrayBuffer!="undefined"&&t.buffer instanceof ArrayBuffer||"length"in t)return typeof t.length!="number"||Aa(t.length)?Y(r,0):qt(r,t);if(t.type==="Buffer"&&Array.isArray(t.data))return qt(r,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function Gt(r){if(r>=it())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+it().toString(16)+" bytes");return r|0}function q(r){return!!(r!=null&&r._isBuffer)}function Rr(r,t){if(q(r))return r.length;if(typeof ArrayBuffer!="undefined"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(r)||r instanceof ArrayBuffer))return r.byteLength;typeof r!="string"&&(r=""+r);var e=r.length;if(e===0)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":case void 0:return ot(r).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return e*2;case"hex":return e>>>1;case"base64":return _r(r).length;default:if(n)return ot(r).length;t=(""+t).toLowerCase(),n=!0}}function oa(r,t,e){var n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((e===void 0||e>this.length)&&(e=this.length),e<=0)||(e>>>=0,t>>>=0,e<=t))return"";for(r||(r="utf8");;)switch(r){case"hex":return ha(this,t,e);case"utf8":case"utf-8":return Sr(this,t,e);case"ascii":return ma(this,t,e);case"latin1":case"binary":return da(this,t,e);case"base64":return la(this,t,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ya(this,t,e);default:if(n)throw new TypeError("Unknown encoding: "+r);r=(r+"").toLowerCase(),n=!0}}function we(r,t,e){var n=r[t];r[t]=r[e],r[e]=n}function Cr(r,t,e,n,i){if(r.length===0)return-1;if(typeof e=="string"?(n=e,e=0):e>2147483647?e=2147483647:e<-2147483648&&(e=-2147483648),e=+e,isNaN(e)&&(e=i?0:r.length-1),e<0&&(e=r.length+e),e>=r.length){if(i)return-1;e=r.length-1}else if(e<0)if(i)e=0;else return-1;if(typeof t=="string"&&(t=u.from(t,n)),q(t))return t.length===0?-1:vr(r,t,e,n,i);if(typeof t=="number")return t=t&255,u.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(r,t,e):Uint8Array.prototype.lastIndexOf.call(r,t,e):vr(r,[t],e,n,i);throw new TypeError("val must be string, number or Buffer")}function vr(r,t,e,n,i){var o=1,f=r.length,l=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(r.length<2||t.length<2)return-1;o=2,f/=2,l/=2,e/=2}function m(T,b){return o===1?T[b]:T.readUInt16BE(b*o)}var d;if(i){var y=-1;for(d=e;d<f;d++)if(m(r,d)===m(t,y===-1?0:d-y)){if(y===-1&&(y=d),d-y+1===l)return y*o}else y!==-1&&(d-=d-y),y=-1}else for(e+l>f&&(e=f-l),d=e;d>=0;d--){for(var x=!0,g=0;g<l;g++)if(m(r,d+g)!==m(t,g)){x=!1;break}if(x)return d}return-1}function aa(r,t,e,n){e=Number(e)||0;var i=r.length-e;n?(n=Number(n),n>i&&(n=i)):n=i;var o=t.length;if(o%2!==0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var f=0;f<n;++f){var l=parseInt(t.substr(f*2,2),16);if(isNaN(l))return f;r[e+f]=l}return f}function sa(r,t,e,n){return ft(ot(t,r.length-e),r,e,n)}function Ir(r,t,e,n){return ft(Ta(t),r,e,n)}function fa(r,t,e,n){return Ir(r,t,e,n)}function ua(r,t,e,n){return ft(_r(t),r,e,n)}function pa(r,t,e,n){return ft(ba(t,r.length-e),r,e,n)}function la(r,t,e){return t===0&&e===r.length?wr(r):wr(r.slice(t,e))}function Sr(r,t,e){e=Math.min(r.length,e);for(var n=[],i=t;i<e;){var o=r[i],f=null,l=o>239?4:o>223?3:o>191?2:1;if(i+l<=e){var m,d,y,x;switch(l){case 1:o<128&&(f=o);break;case 2:m=r[i+1],(m&192)===128&&(x=(o&31)<<6|m&63,x>127&&(f=x));break;case 3:m=r[i+1],d=r[i+2],(m&192)===128&&(d&192)===128&&(x=(o&15)<<12|(m&63)<<6|d&63,x>2047&&(x<55296||x>57343)&&(f=x));break;case 4:m=r[i+1],d=r[i+2],y=r[i+3],(m&192)===128&&(d&192)===128&&(y&192)===128&&(x=(o&15)<<18|(m&63)<<12|(d&63)<<6|y&63,x>65535&&x<1114112&&(f=x))}}f===null?(f=65533,l=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|f&1023),n.push(f),i+=l}return ca(n)}function ca(r){var t=r.length;if(t<=Tr)return String.fromCharCode.apply(String,r);for(var e="",n=0;n<t;)e+=String.fromCharCode.apply(String,r.slice(n,n+=Tr));return e}function ma(r,t,e){var n="";e=Math.min(r.length,e);for(var i=t;i<e;++i)n+=String.fromCharCode(r[i]&127);return n}function da(r,t,e){var n="";e=Math.min(r.length,e);for(var i=t;i<e;++i)n+=String.fromCharCode(r[i]);return n}function ha(r,t,e){var n=r.length;(!t||t<0)&&(t=0),(!e||e<0||e>n)&&(e=n);for(var i="",o=t;o<e;++o)i+=va(r[o]);return i}function ya(r,t,e){for(var n=r.slice(t,e),i="",o=0;o<n.length;o+=2)i+=String.fromCharCode(n[o]+n[o+1]*256);return i}function R(r,t,e){if(r%1!==0||r<0)throw new RangeError("offset is not uint");if(r+t>e)throw new RangeError("Trying to access beyond buffer length")}function L(r,t,e,n,i,o){if(!q(r))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<o)throw new RangeError('"value" argument is out of bounds');if(e+n>r.length)throw new RangeError("Index out of range")}function at(r,t,e,n){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(r.length-e,2);i<o;++i)r[e+i]=(t&255<<8*(n?i:1-i))>>>(n?i:1-i)*8}function st(r,t,e,n){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(r.length-e,4);i<o;++i)r[e+i]=t>>>(n?i:3-i)*8&255}function Nr(r,t,e,n,i,o){if(e+n>r.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function Lr(r,t,e,n,i){return i||Nr(r,t,e,4,34028234663852886e22,-34028234663852886e22),Br(r,t,e,n,23,4),e+4}function Pr(r,t,e,n,i){return i||Nr(r,t,e,8,17976931348623157e292,-17976931348623157e292),Br(r,t,e,n,52,8),e+8}function ga(r){if(r=wa(r).replace(xa,""),r.length<2)return"";for(;r.length%4!==0;)r=r+"=";return r}function wa(r){return r.trim?r.trim():r.replace(/^\s+|\s+$/g,"")}function va(r){return r<16?"0"+r.toString(16):r.toString(16)}function ot(r,t){t=t||1/0;for(var e,n=r.length,i=null,o=[],f=0;f<n;++f){if(e=r.charCodeAt(f),e>55295&&e<57344){if(!i){if(e>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(f+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=e;continue}if(e<56320){(t-=3)>-1&&o.push(239,191,189),i=e;continue}e=(i-55296<<10|e-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,e<128){if((t-=1)<0)break;o.push(e)}else if(e<2048){if((t-=2)<0)break;o.push(e>>6|192,e&63|128)}else if(e<65536){if((t-=3)<0)break;o.push(e>>12|224,e>>6&63|128,e&63|128)}else if(e<1114112){if((t-=4)<0)break;o.push(e>>18|240,e>>12&63|128,e>>6&63|128,e&63|128)}else throw new Error("Invalid code point")}return o}function Ta(r){for(var t=[],e=0;e<r.length;++e)t.push(r.charCodeAt(e)&255);return t}function ba(r,t){for(var e,n,i,o=[],f=0;f<r.length&&!((t-=2)<0);++f)e=r.charCodeAt(f),n=e>>8,i=e%256,o.push(i),o.push(n);return o}function _r(r){return Qo(ga(r))}function ft(r,t,e,n){for(var i=0;i<n&&!(i+e>=t.length||i>=r.length);++i)t[i+e]=r[i];return i}function Aa(r){return r!==r}function Ea(r){return r!=null&&(!!r._isBuffer||Fr(r)||Ra(r))}function Fr(r){return!!r.constructor&&typeof r.constructor.isBuffer=="function"&&r.constructor.isBuffer(r)}function Ra(r){return typeof r.readFloatLE=="function"&&typeof r.slice=="function"&&Fr(r.slice(0,0))}function ut(r,t,e,n,i){var o,f,l=i*8-n-1,m=(1<<l)-1,d=m>>1,y=-7,x=e?i-1:0,g=e?-1:1,T=r[t+x];for(x+=g,o=T&(1<<-y)-1,T>>=-y,y+=l;y>0;o=o*256+r[t+x],x+=g,y-=8);for(f=o&(1<<-y)-1,o>>=-y,y+=n;y>0;f=f*256+r[t+x],x+=g,y-=8);if(o===0)o=1-d;else{if(o===m)return f?NaN:(T?-1:1)*(1/0);f=f+Math.pow(2,n),o=o-d}return(T?-1:1)*f*Math.pow(2,o-n)}function Br(r,t,e,n,i,o){var f,l,m,d=o*8-i-1,y=(1<<d)-1,x=y>>1,g=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,T=n?0:o-1,b=n?1:-1,S=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(l=isNaN(t)?1:0,f=y):(f=Math.floor(Math.log(t)/Math.LN2),t*(m=Math.pow(2,-f))<1&&(f--,m*=2),f+x>=1?t+=g/m:t+=g*Math.pow(2,1-x),t*m>=2&&(f++,m/=2),f+x>=y?(l=0,f=y):f+x>=1?(l=(t*m-1)*Math.pow(2,i),f=f+x):(l=t*Math.pow(2,x-1)*Math.pow(2,i),f=0));i>=8;r[e+T]=l&255,T+=b,l/=256,i-=8);for(f=f<<i|l,d+=i;d>0;r[e+T]=f&255,T+=b,f/=256,d-=8);r[e+T-b]|=S*128}var j,_,Zo,Wt,Tr,xa,kr=jt(()=>{"use strict";a();s();j=[],_=[],Zo=typeof Uint8Array!="undefined"?Uint8Array:Array,Wt=!1;u.TYPED_ARRAY_SUPPORT=globalThis.TYPED_ARRAY_SUPPORT!==void 0?globalThis.TYPED_ARRAY_SUPPORT:!0;u.poolSize=8192;u._augment=function(r){return r.__proto__=u.prototype,r};u.from=function(r,t,e){return Ar(null,r,t,e)};u.kMaxLength=it();u.TYPED_ARRAY_SUPPORT&&(u.prototype.__proto__=Uint8Array.prototype,u.__proto__=Uint8Array,typeof Symbol!="undefined"&&Symbol.species&&u[Symbol.species]);u.alloc=function(r,t,e){return ta(null,r,t,e)};u.allocUnsafe=function(r){return Vt(null,r)};u.allocUnsafeSlow=function(r){return Vt(null,r)};u.isBuffer=Ea;u.compare=function(t,e){if(!q(t)||!q(e))throw new TypeError("Arguments must be Buffers");if(t===e)return 0;for(var n=t.length,i=e.length,o=0,f=Math.min(n,i);o<f;++o)if(t[o]!==e[o]){n=t[o],i=e[o];break}return n<i?-1:i<n?1:0};u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};u.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return u.alloc(0);var n;if(e===void 0)for(e=0,n=0;n<t.length;++n)e+=t[n].length;var i=u.allocUnsafe(e),o=0;for(n=0;n<t.length;++n){var f=t[n];if(!q(f))throw new TypeError('"list" argument must be an Array of Buffers');f.copy(i,o),o+=f.length}return i};u.byteLength=Rr;u.prototype._isBuffer=!0;u.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)we(this,e,e+1);return this};u.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)we(this,e,e+3),we(this,e+1,e+2);return this};u.prototype.swap64=function(){var t=this.length;if(t%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)we(this,e,e+7),we(this,e+1,e+6),we(this,e+2,e+5),we(this,e+3,e+4);return this};u.prototype.toString=function(){var t=this.length|0;return t===0?"":arguments.length===0?Sr(this,0,t):oa.apply(this,arguments)};u.prototype.equals=function(t){if(!q(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:u.compare(this,t)===0};u.prototype.compare=function(t,e,n,i,o){if(!q(t))throw new TypeError("Argument must be a Buffer");if(e===void 0&&(e=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),o===void 0&&(o=this.length),e<0||n>t.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&e>=n)return 0;if(i>=o)return-1;if(e>=n)return 1;if(e>>>=0,n>>>=0,i>>>=0,o>>>=0,this===t)return 0;for(var f=o-i,l=n-e,m=Math.min(f,l),d=this.slice(i,o),y=t.slice(e,n),x=0;x<m;++x)if(d[x]!==y[x]){f=d[x],l=y[x];break}return f<l?-1:l<f?1:0};u.prototype.includes=function(t,e,n){return this.indexOf(t,e,n)!==-1};u.prototype.indexOf=function(t,e,n){return Cr(this,t,e,n,!0)};u.prototype.lastIndexOf=function(t,e,n){return Cr(this,t,e,n,!1)};u.prototype.write=function(t,e,n,i){if(e===void 0)i="utf8",n=this.length,e=0;else if(n===void 0&&typeof e=="string")i=e,n=this.length,e=0;else if(isFinite(e))e=e|0,isFinite(n)?(n=n|0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o=this.length-e;if((n===void 0||n>o)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var f=!1;;)switch(i){case"hex":return aa(this,t,e,n);case"utf8":case"utf-8":return sa(this,t,e,n);case"ascii":return Ir(this,t,e,n);case"latin1":case"binary":return fa(this,t,e,n);case"base64":return ua(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return pa(this,t,e,n);default:if(f)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),f=!0}};u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};Tr=4096;u.prototype.slice=function(t,e){var n=this.length;t=~~t,e=e===void 0?n:~~e,t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),e<t&&(e=t);var i;if(u.TYPED_ARRAY_SUPPORT)i=this.subarray(t,e),i.__proto__=u.prototype;else{var o=e-t;i=new u(o,void 0);for(var f=0;f<o;++f)i[f]=this[f+t]}return i};u.prototype.readUIntLE=function(t,e,n){t=t|0,e=e|0,n||R(t,e,this.length);for(var i=this[t],o=1,f=0;++f<e&&(o*=256);)i+=this[t+f]*o;return i};u.prototype.readUIntBE=function(t,e,n){t=t|0,e=e|0,n||R(t,e,this.length);for(var i=this[t+--e],o=1;e>0&&(o*=256);)i+=this[t+--e]*o;return i};u.prototype.readUInt8=function(t,e){return e||R(t,1,this.length),this[t]};u.prototype.readUInt16LE=function(t,e){return e||R(t,2,this.length),this[t]|this[t+1]<<8};u.prototype.readUInt16BE=function(t,e){return e||R(t,2,this.length),this[t]<<8|this[t+1]};u.prototype.readUInt32LE=function(t,e){return e||R(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};u.prototype.readUInt32BE=function(t,e){return e||R(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};u.prototype.readIntLE=function(t,e,n){t=t|0,e=e|0,n||R(t,e,this.length);for(var i=this[t],o=1,f=0;++f<e&&(o*=256);)i+=this[t+f]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i};u.prototype.readIntBE=function(t,e,n){t=t|0,e=e|0,n||R(t,e,this.length);for(var i=e,o=1,f=this[t+--i];i>0&&(o*=256);)f+=this[t+--i]*o;return o*=128,f>=o&&(f-=Math.pow(2,8*e)),f};u.prototype.readInt8=function(t,e){return e||R(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};u.prototype.readInt16LE=function(t,e){e||R(t,2,this.length);var n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};u.prototype.readInt16BE=function(t,e){e||R(t,2,this.length);var n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};u.prototype.readInt32LE=function(t,e){return e||R(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};u.prototype.readInt32BE=function(t,e){return e||R(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};u.prototype.readFloatLE=function(t,e){return e||R(t,4,this.length),ut(this,t,!0,23,4)};u.prototype.readFloatBE=function(t,e){return e||R(t,4,this.length),ut(this,t,!1,23,4)};u.prototype.readDoubleLE=function(t,e){return e||R(t,8,this.length),ut(this,t,!0,52,8)};u.prototype.readDoubleBE=function(t,e){return e||R(t,8,this.length),ut(this,t,!1,52,8)};u.prototype.writeUIntLE=function(t,e,n,i){if(t=+t,e=e|0,n=n|0,!i){var o=Math.pow(2,8*n)-1;L(this,t,e,n,o,0)}var f=1,l=0;for(this[e]=t&255;++l<n&&(f*=256);)this[e+l]=t/f&255;return e+n};u.prototype.writeUIntBE=function(t,e,n,i){if(t=+t,e=e|0,n=n|0,!i){var o=Math.pow(2,8*n)-1;L(this,t,e,n,o,0)}var f=n-1,l=1;for(this[e+f]=t&255;--f>=0&&(l*=256);)this[e+f]=t/l&255;return e+n};u.prototype.writeUInt8=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=t&255,e+1};u.prototype.writeUInt16LE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t&255,this[e+1]=t>>>8):at(this,t,e,!0),e+2};u.prototype.writeUInt16BE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=t&255):at(this,t,e,!1),e+2};u.prototype.writeUInt32LE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=t&255):st(this,t,e,!0),e+4};u.prototype.writeUInt32BE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t&255):st(this,t,e,!1),e+4};u.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e=e|0,!i){var o=Math.pow(2,8*n-1);L(this,t,e,n,o-1,-o)}var f=0,l=1,m=0;for(this[e]=t&255;++f<n&&(l*=256);)t<0&&m===0&&this[e+f-1]!==0&&(m=1),this[e+f]=(t/l>>0)-m&255;return e+n};u.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e=e|0,!i){var o=Math.pow(2,8*n-1);L(this,t,e,n,o-1,-o)}var f=n-1,l=1,m=0;for(this[e+f]=t&255;--f>=0&&(l*=256);)t<0&&m===0&&this[e+f+1]!==0&&(m=1),this[e+f]=(t/l>>0)-m&255;return e+n};u.prototype.writeInt8=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=t&255,e+1};u.prototype.writeInt16LE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t&255,this[e+1]=t>>>8):at(this,t,e,!0),e+2};u.prototype.writeInt16BE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=t&255):at(this,t,e,!1),e+2};u.prototype.writeInt32LE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=t&255,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):st(this,t,e,!0),e+4};u.prototype.writeInt32BE=function(t,e,n){return t=+t,e=e|0,n||L(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t&255):st(this,t,e,!1),e+4};u.prototype.writeFloatLE=function(t,e,n){return Lr(this,t,e,!0,n)};u.prototype.writeFloatBE=function(t,e,n){return Lr(this,t,e,!1,n)};u.prototype.writeDoubleLE=function(t,e,n){return Pr(this,t,e,!0,n)};u.prototype.writeDoubleBE=function(t,e,n){return Pr(this,t,e,!1,n)};u.prototype.copy=function(t,e,n,i){if(n||(n=0),!i&&i!==0&&(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i<n&&(i=n),i===n||t.length===0||this.length===0)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e<i-n&&(i=t.length-e+n);var o=i-n,f;if(this===t&&n<e&&e<i)for(f=o-1;f>=0;--f)t[f+e]=this[f+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(f=0;f<o;++f)t[f+e]=this[f+n];else Uint8Array.prototype.set.call(t,this.subarray(n,n+o),e);return o};u.prototype.fill=function(t,e,n,i){if(typeof t=="string"){if(typeof e=="string"?(i=e,e=0,n=this.length):typeof n=="string"&&(i=n,n=this.length),t.length===1){var o=t.charCodeAt(0);o<256&&(t=o)}if(i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!u.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else typeof t=="number"&&(t=t&255);if(e<0||this.length<e||this.length<n)throw new RangeError("Out of range index");if(n<=e)return this;e=e>>>0,n=n===void 0?this.length:n>>>0,t||(t=0);var f;if(typeof t=="number")for(f=e;f<n;++f)this[f]=t;else{var l=q(t)?t:ot(new u(t,i).toString()),m=l.length;for(f=0;f<n-e;++f)this[f+e]=l[f%m]}return this};xa=/[^+\/0-9A-Za-z-_]/g});var s=jt(()=>{"use strict";kr()});var ic={};cr(ic,{DynamicSnippetsGenerator:()=>sr});module.exports=Ao(ic);a();s();a();s();a();s();function A(r){throw new Error("Unexpected value: "+JSON.stringify(r))}a();s();a();s();a();s();a();s();a();s();a();s();var Ca=typeof globalThis=="object"&&globalThis&&globalThis.Object===Object&&globalThis,pt=Ca;var Ia=typeof self=="object"&&self&&self.Object===Object&&self,Sa=pt||Ia||Function("return this")(),C=Sa;var Na=C.Symbol,F=Na;a();s();var Ur=Object.prototype,La=Ur.hasOwnProperty,Pa=Ur.toString,je=F?F.toStringTag:void 0;function _a(r){var t=La.call(r,je),e=r[je];try{r[je]=void 0;var n=!0}catch(o){}var i=Pa.call(r);return n&&(t?r[je]=e:delete r[je]),i}var Or=_a;a();s();var Fa=Object.prototype,Ba=Fa.toString;function ka(r){return Ba.call(r)}var Mr=ka;var Ua="[object Null]",Oa="[object Undefined]",Dr=F?F.toStringTag:void 0;function Ma(r){return r==null?r===void 0?Oa:Ua:Dr&&Dr in Object(r)?Or(r):Mr(r)}var k=Ma;a();s();function Da(r){return r!=null&&typeof r=="object"}var U=Da;var $a="[object Symbol]";function ja(r){return typeof r=="symbol"||U(r)&&k(r)==$a}var $r=ja;a();s();a();s();function qa(r,t){for(var e=-1,n=r==null?0:r.length,i=Array(n);++e<n;)i[e]=t(r[e],e,r);return i}var jr=qa;a();s();var Wa=Array.isArray,K=Wa;var Va=1/0,qr=F?F.prototype:void 0,Wr=qr?qr.toString:void 0;function Vr(r){if(typeof r=="string")return r;if(K(r))return jr(r,Vr)+"";if($r(r))return Wr?Wr.call(r):"";var t=r+"";return t=="0"&&1/r==-Va?"-0":t}var Gr=Vr;a();s();function Ga(r){var t=typeof r;return r!=null&&(t=="object"||t=="function")}var lt=Ga;a();s();a();s();a();s();a();s();var za="[object AsyncFunction]",Ha="[object Function]",Ya="[object GeneratorFunction]",Ka="[object Proxy]";function Ja(r){if(!lt(r))return!1;var t=k(r);return t==Ha||t==Ya||t==za||t==Ka}var ct=Ja;a();s();a();s();var Za=C["__core-js_shared__"],mt=Za;var zr=(function(){var r=/[^.]+$/.exec(mt&&mt.keys&&mt.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""})();function Qa(r){return!!zr&&zr in r}var Hr=Qa;a();s();var Xa=Function.prototype,es=Xa.toString;function ts(r){if(r!=null){try{return es.call(r)}catch(t){}try{return r+""}catch(t){}}return""}var J=ts;var rs=/[\\^$.*+?()[\]{}|]/g,ns=/^\[object .+?Constructor\]$/,is=Function.prototype,os=Object.prototype,as=is.toString,ss=os.hasOwnProperty,fs=RegExp("^"+as.call(ss).replace(rs,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function us(r){if(!lt(r)||Hr(r))return!1;var t=ct(r)?fs:ns;return t.test(J(r))}var Yr=us;a();s();function ps(r,t){return r==null?void 0:r[t]}var Kr=ps;function ls(r,t){var e=Kr(r,t);return Yr(e)?e:void 0}var B=ls;var cs=B(C,"WeakMap"),dt=cs;a();s();function ms(){}var Jr=ms;a();s();a();s();a();s();function ds(r,t,e,n){for(var i=r.length,o=e+(n?1:-1);n?o--:++o<i;)if(t(r[o],o,r))return o;return-1}var Zr=ds;a();s();function hs(r){return r!==r}var Qr=hs;a();s();function ys(r,t,e){for(var n=e-1,i=r.length;++n<i;)if(r[n]===t)return n;return-1}var Xr=ys;function xs(r,t,e){return t===t?Xr(r,t,e):Zr(r,Qr,e)}var en=xs;function gs(r,t){var e=r==null?0:r.length;return!!e&&en(r,t,0)>-1}var tn=gs;a();s();var ws=9007199254740991,vs=/^(?:0|[1-9]\d*)$/;function Ts(r,t){var e=typeof r;return t=t==null?ws:t,!!t&&(e=="number"||e!="symbol"&&vs.test(r))&&r>-1&&r%1==0&&r<t}var rn=Ts;a();s();function bs(r,t){return r===t||r!==r&&t!==t}var ht=bs;a();s();a();s();var As=9007199254740991;function Es(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=As}var yt=Es;function Rs(r){return r!=null&&yt(r.length)&&!ct(r)}var nn=Rs;a();s();var Cs=Object.prototype;function Is(r){var t=r&&r.constructor,e=typeof t=="function"&&t.prototype||Cs;return r===e}var on=Is;a();s();a();s();a();s();function Ss(r,t){for(var e=-1,n=Array(r);++e<r;)n[e]=t(e);return n}var an=Ss;a();s();a();s();var Ns="[object Arguments]";function Ls(r){return U(r)&&k(r)==Ns}var zt=Ls;var sn=Object.prototype,Ps=sn.hasOwnProperty,_s=sn.propertyIsEnumerable,Fs=zt((function(){return arguments})())?zt:function(r){return U(r)&&Ps.call(r,"callee")&&!_s.call(r,"callee")},fn=Fs;a();s();a();s();function Bs(){return!1}var un=Bs;var cn=typeof exports=="object"&&exports&&!exports.nodeType&&exports,pn=cn&&typeof module=="object"&&module&&!module.nodeType&&module,ks=pn&&pn.exports===cn,ln=ks?C.Buffer:void 0,Us=ln?ln.isBuffer:void 0,Os=Us||un,qe=Os;a();s();a();s();var Ms="[object Arguments]",Ds="[object Array]",$s="[object Boolean]",js="[object Date]",qs="[object Error]",Ws="[object Function]",Vs="[object Map]",Gs="[object Number]",zs="[object Object]",Hs="[object RegExp]",Ys="[object Set]",Ks="[object String]",Js="[object WeakMap]",Zs="[object ArrayBuffer]",Qs="[object DataView]",Xs="[object Float32Array]",ef="[object Float64Array]",tf="[object Int8Array]",rf="[object Int16Array]",nf="[object Int32Array]",of="[object Uint8Array]",af="[object Uint8ClampedArray]",sf="[object Uint16Array]",ff="[object Uint32Array]",E={};E[Xs]=E[ef]=E[tf]=E[rf]=E[nf]=E[of]=E[af]=E[sf]=E[ff]=!0;E[Ms]=E[Ds]=E[Zs]=E[$s]=E[Qs]=E[js]=E[qs]=E[Ws]=E[Vs]=E[Gs]=E[zs]=E[Hs]=E[Ys]=E[Ks]=E[Js]=!1;function uf(r){return U(r)&&yt(r.length)&&!!E[k(r)]}var mn=uf;a();s();function pf(r){return function(t){return r(t)}}var dn=pf;a();s();var hn=typeof exports=="object"&&exports&&!exports.nodeType&&exports,We=hn&&typeof module=="object"&&module&&!module.nodeType&&module,lf=We&&We.exports===hn,Ht=lf&&pt.process,cf=(function(){try{var r=We&&We.require&&We.require("util").types;return r||Ht&&Ht.binding&&Ht.binding("util")}catch(t){}})(),Yt=cf;var yn=Yt&&Yt.isTypedArray,mf=yn?dn(yn):mn,xt=mf;var df=Object.prototype,hf=df.hasOwnProperty;function yf(r,t){var e=K(r),n=!e&&fn(r),i=!e&&!n&&qe(r),o=!e&&!n&&!i&&xt(r),f=e||n||i||o,l=f?an(r.length,String):[],m=l.length;for(var d in r)(t||hf.call(r,d))&&!(f&&(d=="length"||i&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||rn(d,m)))&&l.push(d);return l}var xn=yf;a();s();a();s();a();s();function xf(r,t){return function(e){return r(t(e))}}var gn=xf;var gf=gn(Object.keys,Object),wn=gf;var wf=Object.prototype,vf=wf.hasOwnProperty;function Tf(r){if(!on(r))return wn(r);var t=[];for(var e in Object(r))vf.call(r,e)&&e!="constructor"&&t.push(e);return t}var vn=Tf;function bf(r){return nn(r)?xn(r):vn(r)}var Tn=bf;a();s();a();s();a();s();a();s();a();s();var Af=B(Object,"create"),Z=Af;function Ef(){this.__data__=Z?Z(null):{},this.size=0}var bn=Ef;a();s();function Rf(r){var t=this.has(r)&&delete this.__data__[r];return this.size-=t?1:0,t}var An=Rf;a();s();var Cf="__lodash_hash_undefined__",If=Object.prototype,Sf=If.hasOwnProperty;function Nf(r){var t=this.__data__;if(Z){var e=t[r];return e===Cf?void 0:e}return Sf.call(t,r)?t[r]:void 0}var En=Nf;a();s();var Lf=Object.prototype,Pf=Lf.hasOwnProperty;function _f(r){var t=this.__data__;return Z?t[r]!==void 0:Pf.call(t,r)}var Rn=_f;a();s();var Ff="__lodash_hash_undefined__";function Bf(r,t){var e=this.__data__;return this.size+=this.has(r)?0:1,e[r]=Z&&t===void 0?Ff:t,this}var Cn=Bf;function Fe(r){var t=-1,e=r==null?0:r.length;for(this.clear();++t<e;){var n=r[t];this.set(n[0],n[1])}}Fe.prototype.clear=bn;Fe.prototype.delete=An;Fe.prototype.get=En;Fe.prototype.has=Rn;Fe.prototype.set=Cn;var Kt=Fe;a();s();a();s();function kf(){this.__data__=[],this.size=0}var In=kf;a();s();a();s();function Uf(r,t){for(var e=r.length;e--;)if(ht(r[e][0],t))return e;return-1}var ae=Uf;var Of=Array.prototype,Mf=Of.splice;function Df(r){var t=this.__data__,e=ae(t,r);if(e<0)return!1;var n=t.length-1;return e==n?t.pop():Mf.call(t,e,1),--this.size,!0}var Sn=Df;a();s();function $f(r){var t=this.__data__,e=ae(t,r);return e<0?void 0:t[e][1]}var Nn=$f;a();s();function jf(r){return ae(this.__data__,r)>-1}var Ln=jf;a();s();function qf(r,t){var e=this.__data__,n=ae(e,r);return n<0?(++this.size,e.push([r,t])):e[n][1]=t,this}var Pn=qf;function Be(r){var t=-1,e=r==null?0:r.length;for(this.clear();++t<e;){var n=r[t];this.set(n[0],n[1])}}Be.prototype.clear=In;Be.prototype.delete=Sn;Be.prototype.get=Nn;Be.prototype.has=Ln;Be.prototype.set=Pn;var se=Be;a();s();var Wf=B(C,"Map"),fe=Wf;function Vf(){this.size=0,this.__data__={hash:new Kt,map:new(fe||se),string:new Kt}}var _n=Vf;a();s();a();s();a();s();function Gf(r){var t=typeof r;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?r!=="__proto__":r===null}var Fn=Gf;function zf(r,t){var e=r.__data__;return Fn(t)?e[typeof t=="string"?"string":"hash"]:e.map}var ue=zf;function Hf(r){var t=ue(this,r).delete(r);return this.size-=t?1:0,t}var Bn=Hf;a();s();function Yf(r){return ue(this,r).get(r)}var kn=Yf;a();s();function Kf(r){return ue(this,r).has(r)}var Un=Kf;a();s();function Jf(r,t){var e=ue(this,r),n=e.size;return e.set(r,t),this.size+=e.size==n?0:1,this}var On=Jf;function ke(r){var t=-1,e=r==null?0:r.length;for(this.clear();++t<e;){var n=r[t];this.set(n[0],n[1])}}ke.prototype.clear=_n;ke.prototype.delete=Bn;ke.prototype.get=kn;ke.prototype.has=Un;ke.prototype.set=On;var gt=ke;a();s();function Zf(r){return r==null?"":Gr(r)}var pe=Zf;a();s();function Qf(r,t){for(var e=-1,n=t.length,i=r.length;++e<n;)r[i+e]=t[e];return r}var Mn=Qf;a();s();a();s();a();s();a();s();a();s();a();s();function Xf(r,t,e){var n=-1,i=r.length;t<0&&(t=-t>i?0:i+t),e=e>i?i:e,e<0&&(e+=i),i=t>e?0:e-t>>>0,t>>>=0;for(var o=Array(i);++n<i;)o[n]=r[n+t];return o}var Dn=Xf;function eu(r,t,e){var n=r.length;return e=e===void 0?n:e,!t&&e>=n?r:Dn(r,t,e)}var $n=eu;a();s();var tu="\\ud800-\\udfff",ru="\\u0300-\\u036f",nu="\\ufe20-\\ufe2f",iu="\\u20d0-\\u20ff",ou=ru+nu+iu,au="\\ufe0e\\ufe0f",su="\\u200d",fu=RegExp("["+su+tu+ou+au+"]");function uu(r){return fu.test(r)}var wt=uu;a();s();a();s();function pu(r){return r.split("")}var jn=pu;a();s();var qn="\\ud800-\\udfff",lu="\\u0300-\\u036f",cu="\\ufe20-\\ufe2f",mu="\\u20d0-\\u20ff",du=lu+cu+mu,hu="\\ufe0e\\ufe0f",yu="["+qn+"]",Jt="["+du+"]",Zt="\\ud83c[\\udffb-\\udfff]",xu="(?:"+Jt+"|"+Zt+")",Wn="[^"+qn+"]",Vn="(?:\\ud83c[\\udde6-\\uddff]){2}",Gn="[\\ud800-\\udbff][\\udc00-\\udfff]",gu="\\u200d",zn=xu+"?",Hn="["+hu+"]?",wu="(?:"+gu+"(?:"+[Wn,Vn,Gn].join("|")+")"+Hn+zn+")*",vu=Hn+zn+wu,Tu="(?:"+[Wn+Jt+"?",Jt,Vn,Gn,yu].join("|")+")",bu=RegExp(Zt+"(?="+Zt+")|"+Tu+vu,"g");function Au(r){return r.match(bu)||[]}var Yn=Au;function Eu(r){return wt(r)?Yn(r):jn(r)}var Kn=Eu;function Ru(r){return function(t){t=pe(t);var e=wt(t)?Kn(t):void 0,n=e?e[0]:t.charAt(0),i=e?$n(e,1).join(""):t.slice(1);return n[r]()+i}}var Jn=Ru;var Cu=Jn("toUpperCase"),Ue=Cu;function Iu(r){return Ue(pe(r).toLowerCase())}var Zn=Iu;a();s();a();s();function Su(r,t,e,n){var i=-1,o=r==null?0:r.length;for(n&&o&&(e=r[++i]);++i<o;)e=t(e,r[i],i,r);return e}var Qn=Su;a();s();a();s();a();s();function Nu(r){return function(t){return r==null?void 0:r[t]}}var Xn=Nu;var Lu={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Pu=Xn(Lu),ei=Pu;var _u=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Fu="\\u0300-\\u036f",Bu="\\ufe20-\\ufe2f",ku="\\u20d0-\\u20ff",Uu=Fu+Bu+ku,Ou="["+Uu+"]",Mu=RegExp(Ou,"g");function Du(r){return r=pe(r),r&&r.replace(_u,ei).replace(Mu,"")}var ti=Du;a();s();a();s();var $u=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function ju(r){return r.match($u)||[]}var ri=ju;a();s();var qu=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function Wu(r){return qu.test(r)}var ni=Wu;a();s();var fi="\\ud800-\\udfff",Vu="\\u0300-\\u036f",Gu="\\ufe20-\\ufe2f",zu="\\u20d0-\\u20ff",Hu=Vu+Gu+zu,ui="\\u2700-\\u27bf",pi="a-z\\xdf-\\xf6\\xf8-\\xff",Yu="\\xac\\xb1\\xd7\\xf7",Ku="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Ju="\\u2000-\\u206f",Zu=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",li="A-Z\\xc0-\\xd6\\xd8-\\xde",Qu="\\ufe0e\\ufe0f",ci=Yu+Ku+Ju+Zu,mi="['\u2019]",ii="["+ci+"]",Xu="["+Hu+"]",di="\\d+",ep="["+ui+"]",hi="["+pi+"]",yi="[^"+fi+ci+di+ui+pi+li+"]",tp="\\ud83c[\\udffb-\\udfff]",rp="(?:"+Xu+"|"+tp+")",np="[^"+fi+"]",xi="(?:\\ud83c[\\udde6-\\uddff]){2}",gi="[\\ud800-\\udbff][\\udc00-\\udfff]",Oe="["+li+"]",ip="\\u200d",oi="(?:"+hi+"|"+yi+")",op="(?:"+Oe+"|"+yi+")",ai="(?:"+mi+"(?:d|ll|m|re|s|t|ve))?",si="(?:"+mi+"(?:D|LL|M|RE|S|T|VE))?",wi=rp+"?",vi="["+Qu+"]?",ap="(?:"+ip+"(?:"+[np,xi,gi].join("|")+")"+vi+wi+")*",sp="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",fp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",up=vi+wi+ap,pp="(?:"+[ep,xi,gi].join("|")+")"+up,lp=RegExp([Oe+"?"+hi+"+"+ai+"(?="+[ii,Oe,"$"].join("|")+")",op+"+"+si+"(?="+[ii,Oe+oi,"$"].join("|")+")",Oe+"?"+oi+"+"+ai,Oe+"+"+si,fp,sp,di,pp].join("|"),"g");function cp(r){return r.match(lp)||[]}var Ti=cp;function mp(r,t,e){return r=pe(r),t=e?void 0:t,t===void 0?ni(r)?Ti(r):ri(r):r.match(t)||[]}var bi=mp;var dp="['\u2019]",hp=RegExp(dp,"g");function yp(r){return function(t){return Qn(bi(ti(t).replace(hp,"")),r,"")}}var Ai=yp;var xp=Ai(function(r,t,e){return t=t.toLowerCase(),r+(e?Zn(t):t)}),vt=xp;a();s();a();s();function gp(){this.__data__=new se,this.size=0}var Ei=gp;a();s();function wp(r){var t=this.__data__,e=t.delete(r);return this.size=t.size,e}var Ri=wp;a();s();function vp(r){return this.__data__.get(r)}var Ci=vp;a();s();function Tp(r){return this.__data__.has(r)}var Ii=Tp;a();s();var bp=200;function Ap(r,t){var e=this.__data__;if(e instanceof se){var n=e.__data__;if(!fe||n.length<bp-1)return n.push([r,t]),this.size=++e.size,this;e=this.__data__=new gt(n)}return e.set(r,t),this.size=e.size,this}var Si=Ap;function Me(r){var t=this.__data__=new se(r);this.size=t.size}Me.prototype.clear=Ei;Me.prototype.delete=Ri;Me.prototype.get=Ci;Me.prototype.has=Ii;Me.prototype.set=Si;var Tt=Me;a();s();a();s();function Ep(r,t){for(var e=-1,n=r==null?0:r.length,i=0,o=[];++e<n;){var f=r[e];t(f,e,r)&&(o[i++]=f)}return o}var Ni=Ep;a();s();function Rp(){return[]}var Li=Rp;var Cp=Object.prototype,Ip=Cp.propertyIsEnumerable,Pi=Object.getOwnPropertySymbols,Sp=Pi?function(r){return r==null?[]:(r=Object(r),Ni(Pi(r),function(t){return Ip.call(r,t)}))}:Li,_i=Sp;a();s();a();s();function Np(r,t,e){var n=t(r);return K(r)?n:Mn(n,e(r))}var Fi=Np;function Lp(r){return Fi(r,Tn,_i)}var Qt=Lp;a();s();a();s();var Pp=B(C,"DataView"),bt=Pp;a();s();var _p=B(C,"Promise"),At=_p;a();s();var Fp=B(C,"Set"),le=Fp;var Bi="[object Map]",Bp="[object Object]",ki="[object Promise]",Ui="[object Set]",Oi="[object WeakMap]",Mi="[object DataView]",kp=J(bt),Up=J(fe),Op=J(At),Mp=J(le),Dp=J(dt),ve=k;(bt&&ve(new bt(new ArrayBuffer(1)))!=Mi||fe&&ve(new fe)!=Bi||At&&ve(At.resolve())!=ki||le&&ve(new le)!=Ui||dt&&ve(new dt)!=Oi)&&(ve=function(r){var t=k(r),e=t==Bp?r.constructor:void 0,n=e?J(e):"";if(n)switch(n){case kp:return Mi;case Up:return Bi;case Op:return ki;case Mp:return Ui;case Dp:return Oi}return t});var Xt=ve;a();s();var $p=C.Uint8Array,er=$p;a();s();a();s();a();s();a();s();a();s();var jp="__lodash_hash_undefined__";function qp(r){return this.__data__.set(r,jp),this}var Di=qp;a();s();function Wp(r){return this.__data__.has(r)}var $i=Wp;function Et(r){var t=-1,e=r==null?0:r.length;for(this.__data__=new gt;++t<e;)this.add(r[t])}Et.prototype.add=Et.prototype.push=Di;Et.prototype.has=$i;var Rt=Et;a();s();function Vp(r,t){for(var e=-1,n=r==null?0:r.length;++e<n;)if(t(r[e],e,r))return!0;return!1}var ji=Vp;a();s();function Gp(r,t){return r.has(t)}var Ct=Gp;var zp=1,Hp=2;function Yp(r,t,e,n,i,o){var f=e&zp,l=r.length,m=t.length;if(l!=m&&!(f&&m>l))return!1;var d=o.get(r),y=o.get(t);if(d&&y)return d==t&&y==r;var x=-1,g=!0,T=e&Hp?new Rt:void 0;for(o.set(r,t),o.set(t,r);++x<l;){var b=r[x],S=t[x];if(n)var $=f?n(S,b,x,t,r,o):n(b,S,x,r,t,o);if($!==void 0){if($)continue;g=!1;break}if(T){if(!ji(t,function(he,ye){if(!Ct(T,ye)&&(b===he||i(b,he,e,n,o)))return T.push(ye)})){g=!1;break}}else if(!(b===S||i(b,S,e,n,o))){g=!1;break}}return o.delete(r),o.delete(t),g}var It=Yp;a();s();a();s();function Kp(r){var t=-1,e=Array(r.size);return r.forEach(function(n,i){e[++t]=[i,n]}),e}var qi=Kp;a();s();function Jp(r){var t=-1,e=Array(r.size);return r.forEach(function(n){e[++t]=n}),e}var De=Jp;var Zp=1,Qp=2,Xp="[object Boolean]",el="[object Date]",tl="[object Error]",rl="[object Map]",nl="[object Number]",il="[object RegExp]",ol="[object Set]",al="[object String]",sl="[object Symbol]",fl="[object ArrayBuffer]",ul="[object DataView]",Wi=F?F.prototype:void 0,tr=Wi?Wi.valueOf:void 0;function pl(r,t,e,n,i,o,f){switch(e){case ul:if(r.byteLength!=t.byteLength||r.byteOffset!=t.byteOffset)return!1;r=r.buffer,t=t.buffer;case fl:return!(r.byteLength!=t.byteLength||!o(new er(r),new er(t)));case Xp:case el:case nl:return ht(+r,+t);case tl:return r.name==t.name&&r.message==t.message;case il:case al:return r==t+"";case rl:var l=qi;case ol:var m=n&Zp;if(l||(l=De),r.size!=t.size&&!m)return!1;var d=f.get(r);if(d)return d==t;n|=Qp,f.set(r,t);var y=It(l(r),l(t),n,i,o,f);return f.delete(r),y;case sl:if(tr)return tr.call(r)==tr.call(t)}return!1}var Vi=pl;a();s();var ll=1,cl=Object.prototype,ml=cl.hasOwnProperty;function dl(r,t,e,n,i,o){var f=e&ll,l=Qt(r),m=l.length,d=Qt(t),y=d.length;if(m!=y&&!f)return!1;for(var x=m;x--;){var g=l[x];if(!(f?g in t:ml.call(t,g)))return!1}var T=o.get(r),b=o.get(t);if(T&&b)return T==t&&b==r;var S=!0;o.set(r,t),o.set(t,r);for(var $=f;++x<m;){g=l[x];var he=r[g],ye=t[g];if(n)var fr=f?n(ye,he,g,t,r,o):n(he,ye,g,r,t,o);if(!(fr===void 0?he===ye||i(he,ye,e,n,o):fr)){S=!1;break}$||($=g=="constructor")}if(S&&!$){var Xe=r.constructor,et=t.constructor;Xe!=et&&"constructor"in r&&"constructor"in t&&!(typeof Xe=="function"&&Xe instanceof Xe&&typeof et=="function"&&et instanceof et)&&(S=!1)}return o.delete(r),o.delete(t),S}var Gi=dl;var hl=1,zi="[object Arguments]",Hi="[object Array]",St="[object Object]",yl=Object.prototype,Yi=yl.hasOwnProperty;function xl(r,t,e,n,i,o){var f=K(r),l=K(t),m=f?Hi:Xt(r),d=l?Hi:Xt(t);m=m==zi?St:m,d=d==zi?St:d;var y=m==St,x=d==St,g=m==d;if(g&&qe(r)){if(!qe(t))return!1;f=!0,y=!1}if(g&&!y)return o||(o=new Tt),f||xt(r)?It(r,t,e,n,i,o):Vi(r,t,m,e,n,i,o);if(!(e&hl)){var T=y&&Yi.call(r,"__wrapped__"),b=x&&Yi.call(t,"__wrapped__");if(T||b){var S=T?r.value():r,$=b?t.value():t;return o||(o=new Tt),i(S,$,e,n,o)}}return g?(o||(o=new Tt),Gi(r,t,e,n,i,o)):!1}var Ki=xl;function Ji(r,t,e,n,i){return r===t?!0:r==null||t==null||!U(r)&&!U(t)?r!==r&&t!==t:Ki(r,t,e,n,Ji,i)}var Zi=Ji;a();s();function gl(r,t,e){for(var n=-1,i=r==null?0:r.length;++n<i;)if(e(t,r[n]))return!0;return!1}var Qi=gl;a();s();function wl(r,t){return Zi(r,t)}var Nt=wl;a();s();a();s();var vl=1/0,Tl=le&&1/De(new le([,-0]))[1]==vl?function(r){return new le(r)}:Jr,Xi=Tl;var bl=200;function Al(r,t,e){var n=-1,i=tn,o=r.length,f=!0,l=[],m=l;if(e)f=!1,i=Qi;else if(o>=bl){var d=t?null:Xi(r);if(d)return De(d);f=!1,i=Ct,m=new Rt}else m=t?[]:l;e:for(;++n<o;){var y=r[n],x=t?t(y):y;if(y=e||y!==0?y:0,f&&x===x){for(var g=m.length;g--;)if(m[g]===x)continue e;t&&m.push(x),l.push(y)}else i(m,x,e)||(m!==l&&m.push(x),l.push(y))}return l}var eo=Al;a();s();function El(r,t){return t=typeof t=="function"?t:void 0,r&&r.length?eo(r,void 0,t):[]}var Lt=El;a();s();function Ve(r){return Object.keys(r)}a();s();a();s();a();s();var to,ro,Ge=(ro=(to=p.env.FERN_STACK_TRACK)==null?void 0:to.toLowerCase())!=null?ro:"",W=Ge!==""&&Ge!=="0"&&Ge!=="false",rr=["single","multiline","box"].includes(Ge)?Ge:"single";W&&(Error.stackTraceLimit=50);var Rl=new Set(["SdkGeneratorCLI","runCli","LoggerImpl","Array.forEach"]),Cl=new Set(["stacktrace"]);function _t({maxFrames:r=50,skip:t=0,filterPaths:e=[],filterFunctions:n=[],stopOn:i=[],filterNode:o=!0,filterJs:f=!0,formatFilename:l=m=>m}={}){var d;if(!W)return[];n=[...n,...Rl],e=[...e,...Cl],i=[...i,"runInteractiveTask"];let m=!1;return((d=new Error().stack)!=null?d:"").split(`
|
|
2
|
+
`).map(y=>{let x=y.match(/at\s+(.*)\s+\((.*):(\d+):(\d+)\)/);if(x&&x.length===5){let[,g,T,b,S]=x;if(!g||!T||!b||!S)return;if(m||i.some($=>g==null?void 0:g.includes($))){m=!0;return}switch(g){case"Object.<anonymous>":g="";break;case"Object.object":case"Object.alias":case"Object.union":case"Object.enum":case"Object.undiscriminatedUnion":g=`${g.substring(g.indexOf(".")+1)}()=> { ... }`;break}return{fn:g,path:l(T),position:`${b}:${S}`}}}).filter(y=>{var x,g;return y&&!n.some(T=>y.fn.includes(T))&&!(o&&((x=y.path)!=null&&x.startsWith("node:")))&&!(f&&((g=y.path)!=null&&g.endsWith(".js")))&&!e.some(T=>y.path.includes(T))}).slice(t,t+r)}var Pt=class{constructor({maxFrames:t=50,skip:e=0,filterPaths:n=[],filterFunctions:i=[],stopOn:o=[],filterNode:f=!0,filterJs:l=!0,multiline:m=!1,formatFilename:d=y=>y}={}){c(this,"maxFrames");c(this,"skip");c(this,"filterPaths");c(this,"filterFunctions");c(this,"stopOn");c(this,"filterNode");c(this,"filterJs");c(this,"multiline");c(this,"formatFilename");c(this,"tracking",new WeakMap);this.maxFrames=t,this.skip=e,this.filterPaths=n,this.filterFunctions=i,this.stopOn=o,this.filterNode=f,this.filterJs=l,this.multiline=m,this.formatFilename=d}tag(t){let e=this.tracking.get(t)||new Set;_t({maxFrames:this.maxFrames,skip:this.skip,filterPaths:this.filterPaths,filterFunctions:this.filterFunctions,stopOn:this.stopOn,filterNode:this.filterNode,filterJs:this.filterJs,formatFilename:this.formatFilename}).forEach(n=>e.add(n)),this.tracking.set(t,e)}trace(t){if(!W)return"";let e=this.tracking.get(t);return e?[...e].map(n=>`${this.multiline?`
|
|
3
|
+
`:""}${n.fn} - ${n.path}:${n.position}`).join(""):""}frames(t){let e=this.tracking.get(t);return e?[...e]:[]}free(t){this.tracking.delete(t)}clear(){this.tracking=new WeakMap}},Q;function no({maxFrames:r=50,skip:t=0,filterPaths:e=[],filterFunctions:n=[],stopOn:i=[],filterNode:o=!0,filterJs:f=!0,multiline:l=!1,formatFilename:m=d=>d}={}){W&&(Q!=null||(Q=new Pt({maxFrames:r,skip:t,filterPaths:e,filterFunctions:n,stopOn:i,filterNode:o,filterJs:f,multiline:l,formatFilename:m})))}function io(r){Q==null||Q.tag(r)}function nr(r){var t;return(t=Q==null?void 0:Q.frames(r))!=null?t:[]}var X=class{constructor(){io(this)}};a();s();a();s();a();s();var O=class extends X{constructor(e){super();c(this,"value");this.value=e}write(e){typeof this.value=="string"?e.write(this.value):typeof this.value=="function"?this.value(e):this.value.write(e)}};var Il=4;no({skip:0,maxFrames:15,filterFunctions:["Abstract"]});var ze=class{constructor(){c(this,"lineBuffer",[]);c(this,"indentLevel",0);c(this,"hasWrittenAnything",!1);c(this,"lastCharacterIsSemicolon",!1);c(this,"lastCharacterIsNewline",!1);c(this,"nodeStackFrames",[])}get buffer(){return W&&this.nodeStackFrames.length>0&&this.writeInternal(`
|
|
4
|
+
`),this.lineBuffer.join(`
|
|
5
|
+
`)+(this.lastCharacterIsNewline?`
|
|
6
|
+
`:"")}write(...t){for(let e of t)if(e!=null)if(typeof e=="string"){let n=e.length>0&&e.endsWith(`
|
|
7
|
+
`),i=n?e.substring(0,e.length-1):e,o=this.getIndentString(),f=i.replaceAll(`
|
|
3
8
|
`,`
|
|
4
|
-
${
|
|
5
|
-
`),this.writeInternal(
|
|
6
|
-
`)}writeNewLineIfLastLineNot(){this.
|
|
7
|
-
`)}
|
|
8
|
-
`)),this.buffer+=t}isAtStartOfLine(){return this.lastCharacterIsNewline||!this.hasWrittenAnything}getIndentString(){return" ".repeat(this.indentLevel*ko)}};u();p();function Qe(n){return(n==null?void 0:n.name)!=null}u();p();var we=class extends V{constructor({condition:e,true_:r,false_:i}){super();f(this,"condition");f(this,"true_");f(this,"false_");this.condition=e,this.true_=r,this.false_=i}write(e){e.writeNode(this.condition),e.write(" ? "),e.writeNode(this.true_),e.write(" : "),e.writeNode(this.false_)}};u();p();u();p();u();p();var ve=class{constructor(){f(this,"reporter");f(this,"snippet");f(this,"err");this.snippet=void 0,this.reporter=void 0,this.err=void 0}update({context:t,snippet:e}){(this.reporter==null||this.reporter.size()>t.errors.size())&&(this.reporter=t.errors.clone(),this.snippet=e)}getResponseOrThrow({endpoint:t}){var e;if(this.snippet!=null&&this.reporter!=null)return{snippet:this.snippet,errors:this.reporter.toDynamicSnippetErrors()};throw(e=this.err)!=null?e:new Error(`Failed to generate snippet for endpoint "${t.method} ${t.path}"`)}};var Te=class{constructor(t){f(this,"context");this.context=t}async generate(t){let e=this.context.resolveEndpointLocationOrThrow(t.endpoint);if(e.length===0)throw new Error(`No endpoints found that match "${t.endpoint.method} ${t.endpoint.path}"`);let r=new ve;for(let i of e){let o=this.context.clone(),a=this.createSnippetGenerator(o);try{let l=await a.generateSnippet({endpoint:i,request:t});if(o.errors.empty())return{snippet:l,errors:void 0};r.update({context:o,snippet:l})}catch(l){r.err==null&&(r.err=l)}}return r.getResponseOrThrow({endpoint:t.endpoint})}generateSync(t){let e=this.context.resolveEndpointLocationOrThrow(t.endpoint);if(e.length===0)throw new Error(`No endpoints found that match "${t.endpoint.method} ${t.endpoint.path}"`);let r=new ve;for(let i of e){let o=this.context.clone(),a=this.createSnippetGenerator(o);try{let l=a.generateSnippetSync({endpoint:i,request:t});if(o.errors.empty())return{snippet:l,errors:void 0};r.update({context:o,snippet:l})}catch(l){r.err==null&&(r.err=l)}}return r.getResponseOrThrow({endpoint:t.endpoint})}};u();p();u();p();u();p();var Ae=class{constructor(){f(this,"REFERENCE_REGEX",/^(GET|POST|PUT|DELETE|PATCH)\s(\/[a-zA-Z0-9\/{}_-]*)$/)}validate(t){return this.REFERENCE_REGEX.test(t)?{type:"valid"}:{type:"invalid"}}tryParse(t){if(this.validate(t).type==="invalid")return;let r=t.match(this.REFERENCE_REGEX);if(!(r==null||r[1]==null||r[2]==null))return{method:r[1],path:r[2]}}};u();p();var w={Critical:"CRITICAL",Warning:"WARNING"},Re=class n{constructor(){f(this,"errors");f(this,"path");this.errors=[],this.path=[]}add(t){this.errors.push(fe(pe({},t),{path:[...this.path]}))}scope(t){this.path.push(t)}unscope(){this.path.pop()}getBySeverity(t){return this.errors.filter(e=>e.severity===t)}empty(){return this.errors.length===0}size(){return this.errors.length}clone(){let t=new n;return t.errors=[...this.errors],t.path=[...this.path],t}reset(){this.errors=[],this.path=[]}toDynamicSnippetErrors(){return this.errors.map(t=>({severity:t.severity,path:t.path!=null?this.pathToStringArray(t.path):void 0,message:t.message}))}pathToStringArray(t){let e=[];for(let r of t){if(typeof r=="string"){e.push(r);continue}e[e.length-1]+=`[${r.index}]`}return e}};var be=class{constructor({ir:t,config:e}){f(this,"config");f(this,"errors");f(this,"_ir");f(this,"httpEndpointReferenceParser");this._ir=t,this.config=e,this.errors=new Re,this.httpEndpointReferenceParser=new Ae}associateQueryParametersByWireValue({parameters:t,values:e}){let r=[];for(let[i,o]of Object.entries(e)){this.errors.scope(i);try{let a=t.find(m=>m.name.wireValue===i);if(a==null)throw this.newParameterNotRecognizedError(i);let l=this.isListTypeReference(a.typeReference)&&!Array.isArray(o)?[o]:o;r.push({name:a.name,typeReference:a.typeReference,value:l})}finally{this.errors.unscope()}}return r}associateByWireValue({parameters:t,values:e,ignoreMissingParameters:r}){let i=[];for(let[o,a]of Object.entries(e)){this.errors.scope(o);try{let l=t.find(m=>m.name.wireValue===o);if(l==null){if(r)continue;this.errors.add({severity:w.Critical,message:this.newParameterNotRecognizedError(o).message});continue}i.push({name:l.name,typeReference:l.typeReference,value:a})}finally{this.errors.unscope()}}return i}getSingleFileValue({property:t,record:e}){let r=e[t.wireValue];if(r!=null){if(typeof r!="string"){this.errors.add({severity:w.Critical,message:`Expected file value to be a string, got ${typeof r}`});return}return r}}getFileArrayValues({property:t,record:e}){let r=e[t.wireValue];if(r==null)return;if(!Array.isArray(r)){this.errors.add({severity:w.Critical,message:`Expected file array value to be an array of strings, got ${typeof r}`});return}let i=[];for(let o of r){if(typeof o!="string"){this.errors.add({severity:w.Critical,message:`Expected file array value to be an array of strings, got ${typeof o}`});return}i.push(o)}return i}getRecord(t){if(typeof t!="object"||Array.isArray(t)){this.errors.add({severity:w.Critical,message:`Expected object with key, value pairs but got: ${Array.isArray(t)?"array":typeof t}`});return}return t==null?{}:t}resolveNamedType({typeId:t}){let e=this._ir.types[t];if(e==null){this.errors.add({severity:w.Critical,message:`Type identified by "${t}" could not be found`});return}return e}resolveDiscriminatedUnionTypeInstance({discriminatedUnion:t,value:e}){let r=this.getRecord(e);if(r==null)return;let i=t.discriminant.wireValue,o=r[i];if(o==null){this.errors.add({severity:w.Critical,message:this.newParameterNotRecognizedError(i).message});return}if(typeof o!="string"){this.errors.add({severity:w.Critical,message:`Expected discriminant value to be a string but got: ${typeof o}`});return}let a=t.types[o];if(a==null){this.errors.add({severity:w.Critical,message:`No type found for discriminant value "${o}"`});return}let h=r,{[i]:l}=h,m=rt(h,[tt(i)]);return{singleDiscriminatedUnionType:a,discriminantValue:a.discriminantValue,value:m}}resolveEndpointOrThrow(t){let e=this.httpEndpointReferenceParser.tryParse(t);if(e==null)throw new Error(`Failed to parse endpoint reference "${t}"`);return this.resolveEndpointLocationOrThrow(e)}resolveEndpointLocationOrThrow(t){let e=[];for(let r of Object.values(this._ir.endpoints))this.parsedEndpointMatches({endpoint:r,parsedEndpoint:t})&&e.push(r);if(e.length===0)throw new Error(`Failed to find endpoint identified by "${t.method} ${t.path}"`);return e}needsRequestParameter({request:t,inlinePathParameters:e,inlineFileProperties:r}){var i;return this.includePathParametersInWrappedRequest({request:t,inlinePathParameters:e})||t.queryParameters!=null&&t.queryParameters.length>0||t.headers!=null&&t.headers.length>0?!0:t.body!=null?this.includeRequestBodyInWrappedRequest({body:t.body,inlineFileProperties:r}):!((i=t.metadata)!=null&&i.onlyPathParameters)}includePathParametersInWrappedRequest({request:t,inlinePathParameters:e}){var r,i;return e&&((i=(r=t.metadata)==null?void 0:r.includePathParameters)!=null?i:!1)}isFileUploadRequestBody(t){switch(t.type){case"fileUpload":return!0;case"properties":case"referenced":return!1;default:v(t)}}resolveEnvironmentName(t){if(this._ir.environments==null)return;let e=this._ir.environments.environments;switch(e.type){case"singleBaseUrl":{let r=e.environments.find(i=>i.id===t);return r==null?void 0:r.name}case"multipleBaseUrls":{let r=e.environments.find(i=>i.id===t);return r==null?void 0:r.name}default:v(e)}}isSingleEnvironmentID(t){return typeof t=="string"}isMultiEnvironmentValues(t){return typeof t=="object"}validateMultiEnvironmentUrlValues(t){if(this._ir.environments==null)return this.errors.add({severity:w.Critical,message:"Multiple environments are not supported for single base URL environments; use the baseUrl option instead"}),!1;let e=this._ir.environments.environments;switch(e.type){case"singleBaseUrl":return this.errors.add({severity:w.Critical,message:"Multiple environments are not supported for single base URL environments; use the baseUrl option instead"}),!1;case"multipleBaseUrls":{let r=e.environments[0];if(r==null)return this.errors.add({severity:w.Critical,message:"Multiple environments are not supported; use the baseUrl option instead"}),!1;let i=new Set(ye(r.urls));for(let o of ye(t))i.has(o)&&i.delete(o);return i.size>0?(this.errors.add({severity:w.Critical,message:`The provided environments are invalid; got: [${Object.keys(t).join(", ")}], expected: [${ye(r.urls).join(", ")}]`}),!1):!0}}}getValueAsNumber({value:t}){if(typeof t!="number"){this.errors.add({severity:w.Critical,message:this.newTypeMismatchError({expected:"number",value:t}).message});return}return t}getValueAsBoolean({value:t}){if(typeof t!="boolean"){this.errors.add({severity:w.Critical,message:this.newTypeMismatchError({expected:"boolean",value:t}).message});return}return t}getValueAsString({value:t}){if(typeof t!="string"){this.errors.add({severity:w.Critical,message:this.newTypeMismatchError({expected:"string",value:t}).message});return}return t}isOptional(t){switch(t.type){case"nullable":return this.isOptional(t.value);case"optional":return!0;case"named":{let e=this.resolveNamedType({typeId:t.value});return e==null?!1:e.type==="alias"?this.isNullable(e.typeReference):!1}}return!1}isNullable(t){switch(t.type){case"nullable":return!0;case"optional":return this.isNullable(t.value);case"named":{let e=this.resolveNamedType({typeId:t.value});return e==null?!1:e.type==="alias"?this.isNullable(e.typeReference):!1}}return!1}newAuthMismatchError({auth:t,values:e}){return new Error(`Expected auth type ${t.type}, got ${e.type}`)}newParameterNotRecognizedError(t){return new Error(`"${t}" is not a recognized parameter for this endpoint`)}newTypeMismatchError({expected:t,value:e}){return new Error(`Expected ${t}, got ${typeof e}`)}includeRequestBodyInWrappedRequest({body:t,inlineFileProperties:e}){switch(t.type){case"properties":case"referenced":return!0;case"fileUpload":return this.includeFileUploadBodyInWrappedRequest({fileUpload:t,inlineFileProperties:e});default:v(t)}}includeFileUploadBodyInWrappedRequest({fileUpload:t,inlineFileProperties:e}){return this.fileUploadHasBodyProperties({fileUpload:t})||e&&this.fileUploadHasFileProperties({fileUpload:t})}fileUploadHasBodyProperties({fileUpload:t}){return t.properties.some(e=>{switch(e.type){case"file":case"fileArray":return!1;case"bodyProperty":return!0;default:v(e)}})}fileUploadHasFileProperties({fileUpload:t}){return t.properties.some(e=>{switch(e.type){case"file":case"fileArray":return!0;case"bodyProperty":return!1;default:v(e)}})}isListTypeReference(t){return t.type==="optional"?this.isListTypeReference(t.value):t.type==="list"||t.type==="set"}parsedEndpointMatches({endpoint:t,parsedEndpoint:e}){return t.location.method===e.method&&t.location.path===e.path}};u();p();var U={PathParameters:"pathParameters",QueryParameters:"queryParameters",Headers:"headers",RequestBody:"requestBody"};u();p();u();p();u();p();var Ee="",Cr="self",Ir="static";var d={};nt(d,{Access:()=>Z,Array:()=>te,AstNode:()=>g,Attribute:()=>re,Class:()=>q,ClassInstantiation:()=>_,ClassReference:()=>A,CodeBlock:()=>E,DataClass:()=>ie,Enum:()=>oe,Field:()=>ae,Map:()=>se,Method:()=>z,MethodInvocation:()=>j,Parameter:()=>W,Trait:()=>ne,Type:()=>P,TypeLiteral:()=>S,Writer:()=>M,array:()=>Vo,assignVariable:()=>ta,attribute:()=>qo,classReference:()=>zo,class_:()=>Wo,codeblock:()=>ue,dataClass:()=>Yo,enum_:()=>Go,field:()=>Ho,instantiateClass:()=>Br,invokeMethod:()=>Zo,map:()=>Ko,mergeArrays:()=>ia,method:()=>Qo,parameter:()=>Xo,string:()=>na,ternary:()=>ea,this_:()=>oa,throwException:()=>Jo,trait:()=>jo,variable:()=>ra});u();p();u();p();u();p();var Z={Public:"public",PublicReadonly:"public readonly",Protected:"protected",Private:"private"};u();p();u();p();u();p();function Lr(n){return{namespace:n.substring(0,n.lastIndexOf("\\")),name:n.substring(n.lastIndexOf("\\")+1)}}var M=class extends ge{constructor({namespace:e,rootNamespace:r,customConfig:i}){super();f(this,"namespace");f(this,"rootNamespace");f(this,"customConfig");f(this,"references",{});this.namespace=e,this.rootNamespace=r,this.customConfig=i}addReference(e){var a,l;if(e.namespace==null)return;if(Object.keys(this.references).filter(m=>{let h=Lr(m);return h.namespace!==e.namespace&&h.name===e.name}).length>0){e.requireFullyQualified();return}let i=e.namespace===Ee?e.name:`${e.namespace}\\${e.name}`;((l=(a=this.references)[i])!=null?l:a[i]=[]).push(e)}toString(){let e=`namespace ${this.namespace};`,r=this.stringifyImports();return r.length>0?`${e}
|
|
9
|
+
${o}`);this.isAtStartOfLine()&&(f=o+f),n&&(f+=`
|
|
10
|
+
`),this.writeInternal(f)}else this.writeNode(e)}writeStatement(...t){this.write(...t),this.write(";"),this.writeNewLineIfLastLineNot()}writeNoIndent(t){let e=this.indentLevel;this.indentLevel=0,this.write(t),this.indentLevel=e}writeNode(t){W&&this.nodeStackFrames.push(...nr(t)),t.write(this),W&&rr!=="single"&&this.writeInternal(`
|
|
11
|
+
`)}writeNodeOrString(t){if(typeof t=="string"){this.write(t);return}this.writeNode(t)}writeNodeStatement(t){this.writeNode(t),this.write(";"),this.writeNewLineIfLastLineNot()}writeTextStatement(t){new O(t).write(this),t.endsWith(";")||this.write(";"),this.writeNewLineIfLastLineNot()}controlFlow(t,e){new O(t).write(this),this.write(" (",e,")"),this.pushScope()}controlFlowWithoutStatement(t){new O(t).write(this),this.pushScope()}endControlFlow(){this.popScope()}contiguousControlFlow(t,e){this.dedent(),this.write("} "),new O(t).write(this),this.write(" (",e,")"),this.pushScope()}alternativeControlFlow(t){this.dedent(),this.write("} "),new O(t).write(this),this.pushScope()}pushScope(){this.writeLine("{"),this.indent()}popScope(t=!0){this.dedent(),this.writeNewLineIfLastLineNot(),t?this.writeLine("}"):this.write("}")}writeLine(...t){this.write(...t.length===0?[""]:t),this.writeNewLineIfLastLineNot()}newLine(){this.writeInternal(`
|
|
12
|
+
`)}writeSemicolonIfLastCharacterIsNot(){this.lastCharacterIsSemicolon||this.writeInternal(";")}writeNewLineIfLastLineNot(){this.lastCharacterIsNewline||this.writeInternal(`
|
|
13
|
+
`)}indent(){this.indentLevel++}dedent(){this.indentLevel--}delimit({nodes:t,delimiter:e,writeFunction:n}){if(t.length>0){let i=t[0];i!=null&&n(i);for(let o=1;o<t.length;o++){this.write(e);let f=t[o];f!=null&&n(f)}}}toString(){return this.buffer}writeInternal(t){if(t.length===0)return;let e=!this.lastCharacterIsNewline;this.hasWrittenAnything=!0,this.lastCharacterIsNewline=t.endsWith(`
|
|
14
|
+
`),this.lastCharacterIsSemicolon=t.endsWith(";");let n=t.split(`
|
|
15
|
+
`),i=W&&!this.shouldSkipTracking(n)&&this.lastCharacterIsNewline;e&&(this.lastLine=`${this.lastLine}${n.shift()||""}`),this.lastCharacterIsNewline&&n.pop(),this.lineBuffer.push(...n),i&&this.appendTrackingComment()}set lastLine(t){this.lineBuffer.length>0?this.lineBuffer[this.lineBuffer.length-1]=t:this.lineBuffer.push(t)}get lastLine(){return this.lineBuffer[this.lineBuffer.length-1]||""}shouldSkipTracking(t){return!1}formatStack(t,e=""){return t.map(n=>`${e?`(${e}) `:""} ${n.fn} - ${n.path} : ${n.position}`)}filterStack(t){return t.filter(e=>!e.fn.startsWith(`${this.constructor.name}.`))}appendTrackingComment(){let t=[...this.formatStack(this.filterStack(_t({maxFrames:15,skip:3}))),...this.formatStack(this.filterStack(this.nodeStackFrames),"node")];switch(this.nodeStackFrames.length=0,rr){case"single":return this.singleLineTrackingComment(t);case"multiline":return this.multiLineTrackingComment(t);case"box":return this.boxTrackingComment(t)}}singleLineTrackingComment(t){this.lastLine=`${this.lastLine} // ${t.join(" ")}`}multiLineTrackingComment(t){this.lineBuffer.push(...t.map(e=>` // ${e}`))}boxTrackingComment(t){this.lineBuffer.push("/*",...t.map(e=>` ${e}`),"*/")}isAtStartOfLine(){return this.lastCharacterIsNewline||!this.hasWrittenAnything}getIndentString(){return" ".repeat(this.indentLevel*this.getTabSize())}getTabSize(){return Il}};a();s();function ir(r){return(r==null?void 0:r.name)!=null&&(r==null?void 0:r.assignment)!=null}a();s();var He=class extends X{constructor({condition:e,true_:n,false_:i}){super();c(this,"condition");c(this,"true_");c(this,"false_");this.condition=e,this.true_=n,this.false_=i}write(e){e.writeNode(this.condition),e.write(" ? "),e.writeNode(this.true_),e.write(" : "),e.writeNode(this.false_)}};a();s();a();s();a();s();var Ye=class{constructor(){c(this,"reporter");c(this,"snippet");c(this,"err");this.snippet=void 0,this.reporter=void 0,this.err=void 0}update({context:t,snippet:e}){this.shouldUpdate({snippet:e,reporter:t.errors})&&(this.reporter=t.errors.clone(),this.snippet=e)}getResponseOrThrow({endpoint:t}){var e;if(this.snippet!=null&&this.reporter!=null)return{snippet:this.snippet,errors:this.reporter.toDynamicSnippetErrors()};throw(e=this.err)!=null?e:new Error(`Failed to generate snippet for endpoint "${t.method} ${t.path}"`)}shouldUpdate({snippet:t,reporter:e}){var n,i;return this.reporter==null||this.reporter.size()>0&&e.size()===0?!0:t.length>((i=(n=this.snippet)==null?void 0:n.length)!=null?i:0)}};var Ke=class{constructor(t){c(this,"context");this.context=t}async generate(t,e={}){let n=this.context.resolveEndpointLocationOrThrow(t.endpoint);if(n.length===0)throw new Error(`No endpoints found that match "${t.endpoint.method} ${t.endpoint.path}"`);let i=new Ye;for(let o of n){let f=this.context.clone(),l=this.createSnippetGenerator(f);try{let m=await l.generateSnippet({endpoint:o,request:t,options:e});if(f.errors.empty())return{snippet:m,errors:void 0};i.update({context:f,snippet:m})}catch(m){i.err==null&&(i.err=m)}}return i.getResponseOrThrow({endpoint:t.endpoint})}generateSync(t,e={}){let n=this.context.resolveEndpointLocationOrThrow(t.endpoint);if(n.length===0)throw new Error(`No endpoints found that match "${t.endpoint.method} ${t.endpoint.path}"`);let i=new Ye;for(let o of n){let f=this.context.clone(),l=this.createSnippetGenerator(f);try{let m=l.generateSnippetSync({endpoint:o,request:t,options:e});if(f.errors.empty())return{snippet:m,errors:void 0};i.update({context:f,snippet:m})}catch(m){i.err==null&&(i.err=m)}}return i.getResponseOrThrow({endpoint:t.endpoint})}};a();s();a();s();a();s();var Je=class{constructor(){c(this,"REFERENCE_REGEX",/^(GET|POST|PUT|DELETE|PATCH|HEAD)\s(\/\S*)$/)}validate(t){return this.REFERENCE_REGEX.test(t)?{type:"valid"}:{type:"invalid"}}tryParse(t){if(this.validate(t).type==="invalid")return;let n=t.match(this.REFERENCE_REGEX);if(!(n==null||n[1]==null||n[2]==null))return{method:n[1],path:n[2]}}};a();s();var v={Critical:"CRITICAL",Warning:"WARNING"},Ze=class r{constructor(){c(this,"errors");c(this,"path");this.errors=[],this.path=[]}add(t){this.errors.push(Le(Ne({},t),{path:[...this.path]}))}scope(t){this.path.push(t)}unscope(){this.path.pop()}getBySeverity(t){return this.errors.filter(e=>e.severity===t)}empty(){return this.errors.length===0}size(){return this.errors.length}clone(){let t=new r;return t.errors=[...this.errors],t.path=[...this.path],t}reset(){this.errors=[],this.path=[]}toDynamicSnippetErrors(){return this.errors.map(t=>({severity:t.severity,path:t.path!=null?this.pathToStringArray(t.path):void 0,message:t.message}))}pathToStringArray(t){let e=[];for(let n of t){if(typeof n=="string"){e.push(n);continue}e[e.length-1]+=`[${n.index}]`}return e}};var Qe=class{constructor({ir:t,config:e,options:n={}}){c(this,"config");c(this,"options");c(this,"errors");c(this,"_ir");c(this,"httpEndpointReferenceParser");this._ir=t,this.config=e,this.options=n,this.errors=new Ze,this.httpEndpointReferenceParser=new Je}associateQueryParametersByWireValue({parameters:t,values:e}){let n=[];for(let[i,o]of Object.entries(e)){this.errors.scope(i);try{let f=t.find(m=>m.name.wireValue===i);if(f==null)throw this.newParameterNotRecognizedError(i);let l=this.isListTypeReference(f.typeReference)&&!Array.isArray(o)?[o]:o;n.push({name:f.name,typeReference:f.typeReference,value:l})}finally{this.errors.unscope()}}return n}associateByWireValueOrDefault({parameters:t,values:e}){let n=[];for(let i of t){this.errors.scope(i.name.wireValue);try{let o=e[i.name.wireValue];if(o==null)if(i.typeReference.type==="primitive"&&i.typeReference.value==="STRING")o=`<${i.name.wireValue}>`;else{this.errors.add({severity:v.Critical,message:this.newParameterNotRecognizedError(i.name.wireValue).message});continue}n.push({name:i.name,typeReference:i.typeReference,value:o})}finally{this.errors.unscope()}}return n}associateByWireValue({parameters:t,values:e,ignoreMissingParameters:n}){let i=[];for(let[o,f]of Object.entries(e)){this.errors.scope(o);try{let l=t.find(m=>m.name.wireValue===o);if(l==null){if(n)continue;this.errors.add({severity:v.Critical,message:this.newParameterNotRecognizedError(o).message});continue}i.push({name:l.name,typeReference:l.typeReference,value:f})}finally{this.errors.unscope()}}return i}getExampleObjectProperties({parameters:t,snippetObject:e}){let n=typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{},i=[];for(let o of t){let f=n[o.name.wireValue];f==null?o.typeReference.type==="nullable"&&i.push({name:o.name,typeReference:o.typeReference,value:null}):i.push({name:o.name,typeReference:o.typeReference,value:f})}return i}getSingleFileValue({property:t,record:e}){let n=e[t.wireValue];if(n!=null){if(typeof n!="string"){this.errors.add({severity:v.Critical,message:`Expected file value to be a string, got ${typeof n}`});return}return n}}getFileArrayValues({property:t,record:e}){let n=e[t.wireValue];if(n==null)return;if(!Array.isArray(n)){this.errors.add({severity:v.Critical,message:`Expected file array value to be an array of strings, got ${typeof n}`});return}let i=[];for(let o of n){if(typeof o!="string"){this.errors.add({severity:v.Critical,message:`Expected file array value to be an array of strings, got ${typeof o}`});return}i.push(o)}return i}getRecord(t){if(typeof t!="object"||Array.isArray(t)){this.errors.add({severity:v.Critical,message:`Expected object with key, value pairs but got: ${Array.isArray(t)?"array":typeof t}`});return}return t==null?{}:t}resolveNamedType({typeId:t}){let e=this._ir.types[t];if(e==null){this.errors.add({severity:v.Critical,message:`Type identified by "${t}" could not be found`});return}return e}resolveDiscriminatedUnionTypeInstance({discriminatedUnion:t,value:e}){let n=this.getRecord(e);if(n==null)return;let i=t.discriminant.wireValue,o=n[i];if(o==null){this.errors.add({severity:v.Critical,message:this.newParameterNotRecognizedError(i).message});return}if(typeof o!="string"){this.errors.add({severity:v.Critical,message:`Expected discriminant value to be a string but got: ${typeof o}`});return}let f=t.types[o];if(f==null){this.errors.add({severity:v.Critical,message:`No type found for discriminant value "${o}"`});return}let d=n,{[i]:l}=d,m=lr(d,[pr(i)]);return{singleDiscriminatedUnionType:f,discriminantValue:f.discriminantValue,value:m}}resolveEndpointOrThrow(t){let e=this.httpEndpointReferenceParser.tryParse(t);if(e==null)throw new Error(`Failed to parse endpoint reference "${t}"`);return this.resolveEndpointLocationOrThrow(e)}resolveEndpointLocation(t){let e=[];for(let n of Object.values(this._ir.endpoints))this.parsedEndpointMatches({endpoint:n,parsedEndpoint:t})&&e.push(n);return e}resolveEndpointLocationOrThrow(t){let e=this.resolveEndpointLocation(t);if(e.length===0)throw new Error(`Failed to find endpoint identified by "${t.method} ${t.path}"`);return e}needsRequestParameter({request:t,inlinePathParameters:e,inlineFileProperties:n}){var i;return this.includePathParametersInWrappedRequest({request:t,inlinePathParameters:e})||t.queryParameters!=null&&t.queryParameters.length>0||t.headers!=null&&t.headers.length>0?!0:t.body!=null?this.includeRequestBodyInWrappedRequest({body:t.body,inlineFileProperties:n}):!((i=t.metadata)!=null&&i.onlyPathParameters)}includePathParametersInWrappedRequest({request:t,inlinePathParameters:e}){var n,i;return e&&((i=(n=t.metadata)==null?void 0:n.includePathParameters)!=null?i:!1)}isFileUploadRequestBody(t){switch(t.type){case"fileUpload":return!0;case"properties":case"referenced":return!1;default:A(t)}}resolveEnvironmentName(t){if(this._ir.environments==null)return;let e=this._ir.environments.environments;switch(e.type){case"singleBaseUrl":{let n=e.environments.find(i=>i.id===t);return n==null?void 0:n.name}case"multipleBaseUrls":{let n=e.environments.find(i=>i.id===t);return n==null?void 0:n.name}default:A(e)}}isSingleEnvironmentID(t){return typeof t=="string"}isMultiEnvironmentValues(t){return typeof t=="object"}validateMultiEnvironmentUrlValues(t){if(this._ir.environments==null)return this.errors.add({severity:v.Critical,message:"Multiple environments are not supported for single base URL environments; use the baseUrl option instead"}),!1;let e=this._ir.environments.environments;switch(e.type){case"singleBaseUrl":return this.errors.add({severity:v.Critical,message:"Multiple environments are not supported for single base URL environments; use the baseUrl option instead"}),!1;case"multipleBaseUrls":{let n=e.environments[0];if(n==null)return this.errors.add({severity:v.Critical,message:"Multiple environments are not supported; use the baseUrl option instead"}),!1;let i=new Set(Ve(n.urls));for(let o of Ve(t))i.has(o)&&i.delete(o);return i.size>0?(this.errors.add({severity:v.Critical,message:`The provided environments are invalid; got: [${Object.keys(t).join(", ")}], expected: [${Ve(n.urls).join(", ")}]`}),!1):!0}}}getValueAsNumber({value:t}){if(typeof t!="number"){this.errors.add({severity:v.Critical,message:this.newTypeMismatchError({expected:"number",value:t}).message});return}return t}getValueAsBoolean({value:t}){if(typeof t!="boolean"){this.errors.add({severity:v.Critical,message:this.newTypeMismatchError({expected:"boolean",value:t}).message});return}return t}getValueAsString({value:t}){if(typeof t!="string"){this.errors.add({severity:v.Critical,message:this.newTypeMismatchError({expected:"string",value:t}).message});return}return t}isOptional(t){switch(t.type){case"nullable":return this.isOptional(t.value);case"optional":return!0;case"named":{let e=this.resolveNamedType({typeId:t.value});return e==null?!1:e.type==="alias"?this.isNullable(e.typeReference):!1}}return!1}isNullable(t){switch(t.type){case"nullable":return!0;case"optional":return this.isNullable(t.value);case"named":{let e=this.resolveNamedType({typeId:t.value});return e==null?!1:e.type==="alias"?this.isNullable(e.typeReference):!1}}return!1}newAuthMismatchError({auth:t,values:e}){return new Error(`Expected auth type ${t.type}, got ${e.type}`)}newParameterNotRecognizedError(t){return new Error(`"${t}" is not a recognized parameter for this endpoint`)}newTypeMismatchError({expected:t,value:e}){return new Error(`Expected ${t}, got ${typeof e}`)}includeRequestBodyInWrappedRequest({body:t,inlineFileProperties:e}){switch(t.type){case"properties":case"referenced":return!0;case"fileUpload":return this.includeFileUploadBodyInWrappedRequest({fileUpload:t,inlineFileProperties:e});default:A(t)}}includeFileUploadBodyInWrappedRequest({fileUpload:t,inlineFileProperties:e}){return this.fileUploadHasBodyProperties({fileUpload:t})||e&&this.fileUploadHasFileProperties({fileUpload:t})}fileUploadHasBodyProperties({fileUpload:t}){return t.properties.some(e=>{switch(e.type){case"file":case"fileArray":return!1;case"bodyProperty":return!0;default:A(e)}})}fileUploadHasFileProperties({fileUpload:t}){return t.properties.some(e=>{switch(e.type){case"file":case"fileArray":return!0;case"bodyProperty":return!1;default:A(e)}})}isListTypeReference(t){return t.type==="optional"?this.isListTypeReference(t.value):t.type==="list"||t.type==="set"}parsedEndpointMatches({endpoint:t,parsedEndpoint:e}){return t.location.method===e.method&&t.location.path===e.path}};a();s();var V={PathParameters:"pathParameters",QueryParameters:"queryParameters",Headers:"headers",RequestBody:"requestBody"};a();s();a();s();a();s();var oo="self",ao="static";a();s();var so=new Set(["abstract","and","array","as","break","callable","case","catch","class","clone","const","continue","declare","default","die","do","echo","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","eval","exit","extends","final","finally","fn","for","foreach","function","global","goto","if","implements","include","include_once","instanceof","insteadof","interface","isset","list","match","namespace","new","or","print","private","protected","public","readonly","require","require_once","return","static","switch","throw","trait","try","unset","use","var","while","xor","yield","yield_from","__halt_compiler"]);var h={};cr(h,{Access:()=>ce,Array:()=>Te,AstNode:()=>w,Attribute:()=>be,Class:()=>ee,ClassInstantiation:()=>z,ClassReference:()=>I,CodeBlock:()=>N,DataClass:()=>Ae,Enum:()=>Ee,Field:()=>Re,Map:()=>Ce,Method:()=>ne,MethodInvocation:()=>re,Parameter:()=>te,Trait:()=>Ie,Type:()=>D,TypeLiteral:()=>M,Writer:()=>G,array:()=>kl,assignVariable:()=>Kl,attribute:()=>Ul,classReference:()=>Dl,class_:()=>Ol,codeblock:()=>Se,dataClass:()=>$l,enum_:()=>jl,escapePhpString:()=>or,field:()=>ql,instantiateClass:()=>ho,invokeMethod:()=>Wl,map:()=>Gl,mergeArrays:()=>Ql,method:()=>zl,parameter:()=>Hl,string:()=>Zl,ternary:()=>Yl,this_:()=>Xl,throwException:()=>Vl,trait:()=>Ml,variable:()=>Jl});a();s();a();s();a();s();var ce={Public:"public",PublicReadonly:"public readonly",Protected:"protected",Private:"private"};a();s();a();s();a();s();function fo(r){return{namespace:r.substring(0,r.lastIndexOf("\\")),name:r.substring(r.lastIndexOf("\\")+1)}}var G=class extends ze{constructor({namespace:e,rootNamespace:n,customConfig:i}){super();c(this,"namespace");c(this,"rootNamespace");c(this,"customConfig");c(this,"references",{});this.namespace=e,this.rootNamespace=n,this.customConfig=i}addReference(e){var f,l;if(e.namespace==null)return;if(Object.keys(this.references).filter(m=>{let d=fo(m);return d.namespace!==e.namespace&&d.name===e.name}).length>0){e.requireFullyQualified();return}let i=e.namespace===""?e.name:`${e.namespace}\\${e.name}`;((l=(f=this.references)[i])!=null?l:f[i]=[]).push(e)}toString(e=!1){if(e)return this.buffer;let n=`namespace ${this.namespace};`,i=this.stringifyImports();return i.length>0?`${n}
|
|
9
16
|
|
|
10
|
-
${
|
|
17
|
+
${i}
|
|
11
18
|
|
|
12
|
-
${this.buffer}`:
|
|
19
|
+
${this.buffer}`:n+`
|
|
13
20
|
|
|
14
|
-
`+this.buffer}stringifyImports(){let e=Object.keys(this.references);return e.length===0?"":e.filter(
|
|
15
|
-
`)}};var
|
|
16
|
-
`).forEach(
|
|
17
|
-
`):void 0;i!=null&&i.length>1&&(i.forEach(o=>{e.writeLine(` * ${o}`)}),e.writeLine(" *")),e.write(` * @${
|
|
18
|
-
`)){this.writeStringWithHeredoc({writer:e,value:this.internalType.value});break}if(this.internalType.value.includes("'")){e.write(`"${this.internalType.value.replaceAll('"','\\"')}"`);break}e.write(`'${this.internalType.value}'`);break}case"unknown":{this.writeUnknown({writer:e,value:this.internalType.value});break}case"null":{e.write("null");break}case"nop":break;default:v(this.internalType)}}isClass(){return this.internalType.type==="class"}asClassOrThrow(){if(this.isClass())return this.internalType;throw new Error("Internal error; ts.TypeLiteral is not a class")}writeStringWithHeredoc({writer:e,value:r}){e.writeLine("<<<EOT"),e.writeNoIndent(r),e.newLine(),e.writeNoIndent("EOT")}writeClass({writer:e,class_:r}){e.writeNode(new _({classReference:r.reference,arguments_:[n.map({entries:r.fields.map(i=>({key:n.string(i.name),value:i.value}))})]}))}writeList({writer:e,list:r}){let i=$o({values:r.values});if(i.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let o of i)o.write(e),e.writeLine(",");e.dedent(),e.write("]")}writeMap({writer:e,map:r}){let i=Oo({entries:r.entries});if(i.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let o of i)o.key.write(e),e.write(" => "),o.value.write(e),e.writeLine(",");e.dedent(),e.write("]")}static list({values:e}){return new this({type:"list",values:e})}static boolean(e){return new this({type:"boolean",value:e})}static class_({reference:e,fields:r}){return new this({type:"class",reference:e,fields:r})}static file(e){return new this({type:"file",value:e})}static float(e){return new this({type:"float",value:e})}static datetime(e){return new this({type:"datetime",value:e})}static number(e){return new this({type:"number",value:e})}static map({entries:e}){return new this({type:"map",entries:e})}static reference(e){return new this({type:"reference",value:e})}static string(e){return new this({type:"string",value:e})}static unknown(e){return new this({type:"unknown",value:e})}static null(){return new this({type:"null"})}static nop(){return new this({type:"nop"})}static isNop(e){return e.internalType.type==="nop"}writeUnknown({writer:e,value:r}){switch(typeof r){case"boolean":e.write(r.toString());return;case"string":e.write(r.includes('"')?`\`${r}\``:`"${r}"`);return;case"number":e.write(r.toString());return;case"object":if(r==null){e.write("null");return}if(Array.isArray(r)){this.writeUnknownArray({writer:e,value:r});return}this.writeUnknownMap({writer:e,value:r});return;default:throw new Error(`Internal error; unsupported unknown type: ${typeof r}`)}}writeUnknownArray({writer:e,value:r}){if(r.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let i of r)e.writeNode(n.unknown(i)),e.writeLine(",");e.dedent(),e.write("]")}writeUnknownMap({writer:e,value:r}){let i=Object.entries(r);if(i.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let[o,a]of i)e.write(`'${o}' => `),e.writeNode(n.unknown(a)),e.writeLine(",");e.dedent(),e.write("]")}};function _o({writer:n,value:t}){return new _({classReference:new A({name:"DateTime",namespace:""}),arguments_:[new E(`'${t}'`)]})}function Do({writer:n,value:t}){return new j({on:new A({name:"File",namespace:`${n.rootNamespace}\\Utils`}),method:"createFromString",arguments_:[new E(`"${t}"`)]})}function Oo({entries:n}){return n.filter(t=>!S.isNop(t.key)&&!S.isNop(t.value))}function $o({values:n}){return n.filter(t=>!S.isNop(t))}var P=class n extends g{constructor(e){super();f(this,"internalType");this.internalType=e}write(e,{comment:r}={}){switch(this.internalType.type){case"int":e.write("int");break;case"string":e.write("string");break;case"bool":e.write("bool");break;case"float":e.write("float");break;case"date":e.addReference(Pr),e.write("DateTime");break;case"dateTime":e.addReference(Pr),e.write("DateTime");break;case"mixed":e.write("mixed");break;case"object":e.write("object");break;case"array":if(!r){e.write("array");break}e.write("array<"),this.internalType.value.write(e,{comment:r}),e.write(">");break;case"map":{if(!r){e.write("array");break}e.write("array<"),this.internalType.keyType.write(e,{comment:r}),e.write(", "),this.internalType.valueType.write(e,{comment:r}),e.write(">");break}case"null":{e.write("null");break}case"typeDict":{if(!r){e.write("array");break}if(this.internalType.multiline){e.writeLine("array{");let i=this.internalType.entries.filter(l=>!l.valueType.isOptional()),o=this.internalType.entries.filter(l=>l.valueType.isOptional()),a=[...i,...o];for(let l of a)e.write(" * "),this.writeTypeDictEntry({writer:e,entry:l,comment:r}),e.writeLine(",");e.write(" * }");break}e.write("array{"),this.internalType.entries.forEach((i,o)=>{o>0&&e.write(", "),this.writeTypeDictEntry({writer:e,entry:i,comment:r})}),e.write("}");break}case"union":{let i=this.getUniqueTypes({types:this.internalType.types,comment:r,writer:e}),o=i.filter(a=>a.underlyingType().internalType.type==="mixed").length>0;if(o&&!r){e.write("mixed");break}i.length>0&&r?(e.writeLine("("),i.forEach((a,l)=>{l>0?e.write(" * |"):e.write(" * "),o&&(a=a.underlyingType()),a.write(e,{comment:r}),e.writeLine(),l++}),e.write(" * )")):i.forEach((a,l)=>{l>0&&e.write("|"),o&&(a=a.underlyingType()),a.write(e,{comment:r}),l++});break}case"optional":{let i=this.internalType.value.internalType.type==="mixed",o=this.internalType.value.internalType.type==="union";!o&&!i&&e.write("?"),this.internalType.value.write(e,{comment:r}),o&&(e.write("|"),e.writeNode(n.null()));break}case"reference":if(r){e.writeNode(this.internalType.value);let i=this.internalType.value.generics;i&&i.length>0&&(e.write("<"),i.forEach((o,a)=>{a>0&&e.write(", "),o.write(e,{comment:r})}),e.write(">"))}else e.writeNode(this.internalType.value);break;case"enumString":r?(e.write("value-of<"),e.writeNode(this.internalType.value),e.write(">")):e.write("string");break;case"literal":if(r)e.writeNode(this.internalType.value);else switch(this.internalType.value.internalType.type){case"string":e.write("string");break;case"boolean":e.write("bool");break;default:v(this.internalType.value.internalType)}break;default:v(this.internalType)}}toOptionalIfNotAlready(){return this.internalType.type==="optional"?this:n.optional(this)}underlyingTypeIfOptional(){if(this.internalType.type==="optional")return this.internalType.value}underlyingType(){var e;return(e=this.underlyingTypeIfOptional())!=null?e:this}isOptional(){return this.internalType.type==="optional"}getClassReference(){switch(this.internalType.type){case"date":case"dateTime":return new A({name:"DateTime",namespace:Ee});case"enumString":case"reference":return this.internalType.value;case"int":case"string":case"bool":case"float":case"object":case"map":case"array":case"null":case"mixed":case"optional":case"typeDict":case"union":case"literal":throw new Error("Cannot get class reference for "+this.internalType.type);default:v(this.internalType)}}static int(){return new this({type:"int"})}static string(){return new this({type:"string"})}static bool(){return new this({type:"bool"})}static float(){return new this({type:"float"})}static date(){return new this({type:"date"})}static dateTime(){return new this({type:"dateTime"})}static mixed(){return new this({type:"mixed"})}static object(){return new this({type:"object"})}static array(e){return new this({type:"array",value:e})}static map(e,r){return new this({type:"map",keyType:e,valueType:r})}static typeDict(e,{multiline:r}={}){return new this({type:"typeDict",entries:e,multiline:r})}static union(e){return new this({type:"union",types:e})}static optional(e){return this.isAlreadyOptional(e)?e:new this({type:"optional",value:e})}static null(){return new this({type:"null"})}static reference(e){return new this({type:"reference",value:e})}static enumString(e){return new this({type:"enumString",value:e})}static literalString(e){return new this({type:"literal",value:S.string(e)})}static literalBoolean(e){return new this({type:"literal",value:S.boolean(e)})}static isAlreadyOptional(e){return e.internalType.type==="optional"}writeTypeDictEntry({writer:e,entry:r,comment:i}){e.write(r.key),r.optional&&e.write("?"),e.write(": "),r.valueType.write(e,{comment:i})}getUniqueTypes({writer:e,types:r,comment:i}){let o=new Set;return r.filter(a=>{let l=a.toString({namespace:e.namespace,rootNamespace:e.rootNamespace,customConfig:e.customConfig,comment:i});return o.has(l)?!1:(o.add(l),!0)})}toString({namespace:e,rootNamespace:r,customConfig:i,comment:o}){let a=new M({namespace:e,rootNamespace:r,customConfig:i});return this.write(a,{comment:o!=null?o:!1}),a.toString()}},Pr=new A({namespace:Ee,name:"DateTime"});u();p();function Fr(n){return n.startsWith("$")?n.slice(1):n}var kr="values",ie=class extends g{constructor({name:e,namespace:r,abstract:i,docs:o,parentClassReference:a,traits:l,constructorAccess:m}){super();f(this,"name");f(this,"namespace");f(this,"constructorAccess");f(this,"class_");this.name=e,this.namespace=r,this.constructorAccess=m!=null?m:"public",this.class_=new q({name:e,namespace:r,abstract:i,docs:o,parentClassReference:a,traits:l})}addField(e){this.class_.addField(e)}addMethod(e){this.class_.addMethod(e)}addTrait(e){this.class_.addTrait(e)}write(e){let r=K(this.class_.fields).map(i=>fe(pe({},i),{name:Fr(i.name)}));r.length>0&&this.class_.addConstructor({access:this.constructorAccess,parameters:this.getConstructorParameters({orderedFields:r}),body:d.codeblock(i=>{for(let o of r)i.write(`$this->${o.name} = $${kr}['${o.name}']`),o.type.isOptional()&&i.write(" ?? null"),i.write(";")})}),this.class_.write(e)}allFieldsAreOptional(){return this.class_.fields.every(e=>e.type.isOptional())}getConstructorParameters({orderedFields:e}){return[new W({name:kr,type:P.typeDict(e.map(r=>({key:r.name,valueType:r.type,optional:r.type.isOptional()})),{multiline:!0}),initializer:this.allFieldsAreOptional()?new E("[]"):void 0})]}};u();p();u();p();var z=class extends g{constructor({name:e,access:r,parameters:i,throws:o,return_:a,body:l,docs:m,classReference:h,static_:y}){super();f(this,"name");f(this,"access");f(this,"parameters");f(this,"throws");f(this,"return_");f(this,"body");f(this,"docs");f(this,"classReference");f(this,"static_");this.name=e,this.access=r,this.parameters=i,this.throws=o!=null?o:[],this.return_=a,this.body=l,this.docs=m,this.classReference=h,this.static_=y!=null?y:!1}write(e){var a;this.writeComment(e),e.write(`${this.access}${this.static_?" static":""} function ${this.name}(`);let r=this.parameters.filter(l=>!l.type.isOptional()),i=this.parameters.filter(l=>l.type.isOptional());[...r,...i].forEach((l,m)=>{m>0&&e.write(", "),l.write(e)}),e.write("): "),this.return_!=null?e.writeNodeOrString(this.return_):e.write("void"),e.writeLine(" {"),e.indent(),(a=this.body)==null||a.write(e),e.dedent(),e.writeLine("}")}writeComment(e){let r=new C({docs:this.docs});for(let i of this.parameters)r.addTag({tagType:"param",type:i.type,name:i.name,docs:i.docs});this.return_!=null&&this.return_!==Cr&&this.return_!==Ir&&r.addTag({tagType:"return",type:this.return_});for(let i of this.throws)r.addTag({tagType:"throws",type:P.reference(i)});e.writeNode(r)}};var oe=class extends g{constructor({name:e,namespace:r,backing:i,docs:o,serializable:a}){super();f(this,"name");f(this,"namespace");f(this,"backing");f(this,"docs");f(this,"members",[]);f(this,"serializable");this.name=e,this.namespace=r,this.backing=i,this.docs=o,this.serializable=a!=null?a:!1}addMember(e){this.members.push(e)}write(e){this.writeComment(e),e.write("enum "),e.writeLine(`${this.name}`),this.backing!=null&&e.write(` : ${this.backing}`),this.serializable&&(e.addReference(new A({name:"JsonSerializable",namespace:""})),e.writeLine(" implements JsonSerializable")),e.writeLine(" {"),e.indent();for(let r of this.members)e.write(`case ${r.name}`),r.value!=null&&(typeof r.value=="string"?e.write(` = "${r.value}"`):e.write(` = ${r.value}`)),e.writeTextStatement("");this.serializable&&(e.newLine(),e.writeNode(new z({name:"jsonSerialize",return_:P.string(),access:"public",parameters:[],body:new E("return $this->value;")}))),e.writeNewLineIfLastLineNot(),e.dedent(),e.writeLine("}")}writeComment(e){if(this.docs==null)return;new C({docs:this.docs}).write(e)}};u();p();var ae=class extends g{constructor({name:e,type:r,access:i,readonly_:o,initializer:a,docs:l,inlineDocs:m,attributes:h,inherited:y}){super();f(this,"name");f(this,"type");f(this,"access");f(this,"readonly_");f(this,"initializer");f(this,"docs");f(this,"inlineDocs");f(this,"attributes");f(this,"inherited");this.name=J(e),this.type=r,this.access=i,this.readonly_=o!=null?o:!1,this.initializer=a,this.docs=l,this.inlineDocs=m,this.attributes=h!=null?h:[],this.inherited=y!=null?y:!1}write(e){this.writeComment(e),this.writeAttributesIfPresent(e),e.write(`${this.access} `),this.readonly_&&e.write("readonly "),this.type.write(e),e.write(` ${this.name}`),this.initializer!=null&&(e.write(" = "),this.initializer.write(e)),e.write(";"),this.inlineDocs!=null&&e.write(` // ${this.inlineDocs}`),e.newLine()}writeComment(e){let r=new C;r.addTag({tagType:"var",type:this.type,name:this.name,docs:this.docs}),r.write(e)}writeAttributesIfPresent(e){this.attributes.length>0&&(e.write("#["),this.attributes.forEach((r,i)=>{i>0&&e.write(", "),r.write(e)}),e.writeLine("]"))}};u();p();var se=class extends g{constructor({entries:e,multiline:r}){super();f(this,"entries");f(this,"multiline");this.entries=e!=null?e:[],this.multiline=r!=null?r:!1}write(e){if(this.multiline){this.writeMultiline(e);return}this.writeCompact(e)}writeMultiline(e){e.writeLine("["),e.indent();for(let{key:r,value:i}of this.entries)r.write(e),e.write(" => "),i.write(e),e.writeLine(",");e.dedent(),e.write("]")}writeCompact(e){e.write("[");for(let[r,{key:i,value:o}]of this.entries.entries())r>0&&e.write(", "),i.write(e),e.write(" => "),o.write(e);e.write("]")}};u();p();var _e=class extends g{constructor(e){super();f(this,"arrays");this.arrays=e}write(e){e.write("array_merge"),he({writer:e,arguments_:this.arrays.map(r=>ue(i=>{if(typeof r=="string"||r instanceof g){i.writeNodeOrString(r);return}i.writeNodeOrString(r.ref),r.fallback&&(i.write(" ?? "),i.writeNodeOrString(r.fallback))}))})}};function Vo(n){return new te(n)}function qo(n){return new re(n)}function Wo(n){return new q(n)}function jo(n){return new ne(n)}function zo(n){return new A(n)}function ue(n){return new E(n)}function Yo(n){return new ie(n)}function Go(n){return new oe(n)}function Ho(n){return new ae(n)}function Br(n){return new _(n)}function Zo(n){return new j(n)}function Jo(n){return ue(t=>{t.write("throw "),t.writeNode(Br(n))})}function Ko(n){return new se(n)}function Qo(n){return new z(n)}function Xo(n){return new W(n)}function ea(n){return new we(n)}function ta(n,t){return ue(e=>{e.writeNodeOrString(n),e.write(" = "),e.writeNodeOrString(t)})}function ra(n){return ue(J(n))}function na(n){return ue(`"${n}"`)}function ia(...n){return new _e(n)}function oa(){return new E(n=>{n.write("$this")})}var Ur="$client",De="Example",Mr=`<?php
|
|
21
|
+
`+this.buffer}stringifyImports(){let e=Object.keys(this.references);return e.length===0?"":e.filter(n=>fo(n).namespace!==this.namespace).map(n=>`use ${n};`).join(`
|
|
22
|
+
`)}};var w=class extends X{toString(t){if(t==null)throw new Error("Internal error; AstNode.toString method called incorrectly.");let{namespace:e,rootNamespace:n,customConfig:i,skipImports:o=!1}=t,f=new G({namespace:e,rootNamespace:n,customConfig:i});return this.write(f),f.toString(o)}async toStringAsync({namespace:t,rootNamespace:e,customConfig:n}){let i=new G({namespace:t,rootNamespace:e,customConfig:n});return this.write(i),i.toString()}};var Te=class extends w{constructor({entries:e}){super();c(this,"entries");this.entries=e!=null?e:[]}write(e){e.write("["),this.entries.forEach((n,i)=>{i>0&&e.write(", "),n.write(e)}),e.write("]")}};a();s();var be=class extends w{constructor(e){var n;super();c(this,"reference");c(this,"arguments");this.reference=e.reference,this.arguments=(n=e.arguments)!=null?n:[]}write(e){e.addReference(this.reference),e.write(`${this.reference.name}`),this.arguments.length>0&&(e.write("("),this.arguments.forEach((n,i)=>{i>0&&e.write(","),typeof n=="string"?e.write(n):n.write(e)}),e.write(")"))}};a();s();a();s();var I=class extends w{constructor({name:e,namespace:n,generics:i}){super();c(this,"name");c(this,"namespace");c(this,"generics");c(this,"fullyQualified");this.name=e,this.namespace=n,this.generics=i,this.fullyQualified=!1}requireFullyQualified(){this.fullyQualified=!0}write(e){e.addReference(this);let n=this.fullyQualified?`\\${this.namespace}\\${this.name}`:this.name;e.write(`${n}`)}};a();s();a();s();function me(r){return r.startsWith("$")?r:`$${r}`}var P=class extends w{constructor({docs:e}={}){super();c(this,"docs");c(this,"tags",[]);this.docs=e}addTag(e){this.tags.push(Le(Ne({},e),{name:e.name!=null?me(e.name):void 0}))}write(e){e.writeLine("/**"),this.docs!=null&&(this.docs.split(`
|
|
23
|
+
`).forEach(n=>{e.writeLine(` * ${n}`)}),this.tags.length>0&&e.writeLine(" *"));for(let n of this.tags)this.writeTag({writer:e,tag:n});e.writeLine(" */")}writeTag({writer:e,tag:n}){let i=n.docs!=null?n.docs.split(`
|
|
24
|
+
`):void 0;i!=null&&i.length>1&&(i.forEach(o=>{e.writeLine(` * ${o}`)}),e.writeLine(" *")),e.write(` * @${n.tagType} `),n.type.write(e,{comment:!0}),n.name!=null&&e.write(` ${n.name}`),i!=null&&i.length===1&&e.write(` ${i[0]}`),e.newLine()}};a();s();function de(r){return Sl(r,[ce.Public,ce.PublicReadonly,ce.Protected,ce.Private])}function Sl(r,t){return t.reduce((e,n)=>[...e,...r.filter(i=>i.access===n)],[])}var ee=class extends w{constructor({name:e,namespace:n,abstract:i,docs:o,parentClassReference:f,traits:l}){super();c(this,"name");c(this,"namespace");c(this,"abstract");c(this,"docs");c(this,"parentClassReference");c(this,"traits");c(this,"fields",[]);c(this,"methods",[]);c(this,"constructor_");this.name=e,this.namespace=n,this.abstract=i!=null?i:!1,this.docs=o,this.parentClassReference=f,this.traits=l!=null?l:[]}addConstructor(e){this.constructor_=e}addField(e){this.fields.push(e)}addMethod(e){this.methods.push(e)}addMethods(e){this.methods.push(...e)}addTrait(e){this.traits.push(e)}write(e){e.addReference(new I({name:this.name,namespace:this.namespace})),this.abstract&&e.write("abstract "),this.writeComment(e),e.write(`class ${this.name} `),this.parentClassReference!=null&&(e.write("extends "),this.parentClassReference.write(e)),e.newLine(),e.writeLine("{"),e.indent(),this.traits.length>0&&(e.write("use "),this.traits.forEach((n,i)=>{i>0&&e.write(","),e.writeNode(n)}),e.writeTextStatement(""),e.newLine()),this.writeFields({writer:e,fields:de(this.fields)}),(this.constructor!=null||this.methods.length>0)&&e.newLine(),this.constructor_!=null&&(this.writeConstructor({writer:e,constructor:this.constructor_}),this.methods.length>0&&e.newLine()),this.writeMethods({writer:e,methods:de(this.methods)}),e.dedent(),e.writeLine("}")}writeComment(e){if(this.docs==null)return;new P({docs:this.docs}).write(e)}writeConstructor({writer:e,constructor:n}){var i;this.writeConstructorComment({writer:e,constructor:n}),n.access!=null&&e.write(`${n.access} `),e.write("function __construct("),e.indent(),n.parameters.forEach((o,f)=>{f===0&&e.newLine(),o.write(e),e.writeLine(",")}),e.dedent(),e.writeLine(")"),e.writeLine("{"),e.indent(),(i=n.body)==null||i.write(e),e.writeNewLineIfLastLineNot(),e.dedent(),e.writeLine("}")}writeConstructorComment({writer:e,constructor:n}){if(n.parameters.length===0)return;let i=new P;for(let o of n.parameters)i.addTag(o.getCommentTag());i.write(e)}writeFields({writer:e,fields:n}){n.filter(i=>!i.inherited).forEach((i,o)=>{o>0&&e.newLine(),i.write(e),e.writeNewLineIfLastLineNot()})}writeMethods({writer:e,methods:n}){n.forEach((i,o)=>{o>0&&e.newLine(),i.write(e),e.writeNewLineIfLastLineNot()})}};a();s();a();s();function $e({writer:r,arguments_:t,multiline:e}){if(t.length===0){r.write("()");return}if(e){Nl({writer:r,arguments_:t});return}Ll({writer:r,arguments_:t})}function Nl({writer:r,arguments_:t}){r.writeLine("("),r.indent();for(let e of t)po({writer:r,argument:e,writeCompact:!1}),r.writeLine(",");r.dedent(),r.write(")")}function Ll({writer:r,arguments_:t}){r.write("("),t.forEach((e,n)=>{n>0&&r.write(", "),po({writer:r,argument:e,writeCompact:!0})}),r.write(")")}function po({writer:r,argument:t,writeCompact:e}){ir(t)?(t.docs&&(e?r.write(`/* ${t.docs} */ `):r.writeLine(`/* ${t.docs} */`)),r.write(`${t.name}: `),r.writeNodeOrString(t.assignment)):t.write(r)}var z=class extends w{constructor({classReference:e,arguments_:n,multiline:i}){super();c(this,"classReference");c(this,"arguments_");c(this,"multiline");this.classReference=e,this.arguments_=n,this.multiline=i!=null?i:!1}write(e){e.write("new "),e.writeNode(this.classReference),$e({writer:e,arguments_:this.arguments_,multiline:this.multiline})}};a();s();var N=class extends w{constructor(e){super();c(this,"arg");this.arg=e}write(e){return new O(this.arg).write(e)}};a();s();a();s();var te=class extends w{constructor({name:e,type:n,docs:i,initializer:o,access:f,readonly_:l}){super();c(this,"name");c(this,"type");c(this,"docs");c(this,"initializer");c(this,"access");c(this,"readonly_");this.name=me(e),this.type=n,this.docs=i,this.initializer=o,this.access=f,this.readonly_=l!=null?l:!1}getCommentTag(){return{tagType:"param",type:this.type,name:this.name,docs:this.docs}}write(e){this.access!=null&&e.write(`${this.access} `),this.readonly_&&e.write("readonly "),this.type.write(e),e.write(` ${this.name}`),this.initializer!=null?(e.write(" = "),this.initializer.write(e)):this.type.isOptional()&&e.write(" = null")}};a();s();a();s();a();s();a();s();var re=class extends w{constructor({method:e,arguments_:n,static_:i,multiline:o,on:f}){super();c(this,"method");c(this,"arguments_");c(this,"multiline");c(this,"static_");c(this,"on");this.method=e,this.arguments_=n,this.static_=i!=null?i:!1,this.multiline=o!=null?o:!1,this.on=f}write(e){this.on!=null&&(this.on.write(e),e.write(this.getMethodAccessor())),e.write(this.method),$e({writer:e,arguments_:this.arguments_,multiline:this.multiline})}getMethodAccessor(){return this.static_?"::":"->"}};var M=class r extends w{constructor(e){super();c(this,"internalType");this.internalType=e}write(e){switch(this.internalType.type){case"list":{this.writeList({writer:e,list:this.internalType});break}case"boolean":{e.write(this.internalType.value.toString());break}case"class":{this.writeClass({writer:e,class_:this.internalType});break}case"file":{e.writeNode(_l({writer:e,value:this.internalType.value}));break}case"float":{e.write(this.internalType.value.toString());break}case"number":{e.write(this.internalType.value.toString());break}case"map":{this.writeMap({writer:e,map:this.internalType});break}case"reference":{e.writeNode(this.internalType.value);break}case"datetime":{e.writeNode(Pl({writer:e,value:this.internalType.value}));break}case"string":{if(this.internalType.value.includes(`
|
|
25
|
+
`)){this.writeStringWithHeredoc({writer:e,value:this.internalType.value});break}if(this.internalType.value.includes("'")){e.write(`"${this.internalType.value.replaceAll('"','\\"')}"`);break}e.write(`'${this.internalType.value}'`);break}case"unknown":{this.writeUnknown({writer:e,value:this.internalType.value});break}case"null":{e.write("null");break}case"nop":break;default:A(this.internalType)}}isClass(){return this.internalType.type==="class"}asClassOrThrow(){if(this.isClass())return this.internalType;throw new Error("Internal error; ts.TypeLiteral is not a class")}writeStringWithHeredoc({writer:e,value:n}){e.writeLine("<<<EOT"),e.writeNoIndent(n),e.newLine(),e.writeNoIndent("EOT")}writeClass({writer:e,class_:n}){e.writeNode(new z({classReference:n.reference,arguments_:[r.map({entries:n.fields.map(i=>({key:r.string(i.name),value:i.value}))})]}))}writeList({writer:e,list:n}){let i=Bl({values:n.values});if(i.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let o of i)o.write(e),e.writeLine(",");e.dedent(),e.write("]")}writeMap({writer:e,map:n}){let i=Fl({entries:n.entries});if(i.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let o of i)o.key.write(e),e.write(" => "),o.value.write(e),e.writeLine(",");e.dedent(),e.write("]")}static list({values:e}){return new this({type:"list",values:e})}static boolean(e){return new this({type:"boolean",value:e})}static class_({reference:e,fields:n}){return new this({type:"class",reference:e,fields:n})}static file(e){return new this({type:"file",value:e})}static float(e){return new this({type:"float",value:e})}static datetime(e){return new this({type:"datetime",value:e})}static number(e){return new this({type:"number",value:e})}static map({entries:e}){return new this({type:"map",entries:e})}static reference(e){return new this({type:"reference",value:e})}static string(e){return new this({type:"string",value:e})}static unknown(e){return new this({type:"unknown",value:e})}static null(){return new this({type:"null"})}static nop(){return new this({type:"nop"})}static isNop(e){return e.internalType.type==="nop"}writeUnknown({writer:e,value:n}){switch(typeof n){case"boolean":e.write(n.toString());return;case"string":e.write(n.includes('"')?`\`${n}\``:`"${n}"`);return;case"number":e.write(n.toString());return;case"object":if(n==null){e.write("null");return}if(Array.isArray(n)){this.writeUnknownArray({writer:e,value:n});return}this.writeUnknownMap({writer:e,value:n});return;default:throw new Error(`Internal error; unsupported unknown type: ${typeof n}`)}}writeUnknownArray({writer:e,value:n}){if(n.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let i of n)e.writeNode(r.unknown(i)),e.writeLine(",");e.dedent(),e.write("]")}writeUnknownMap({writer:e,value:n}){let i=Object.entries(n);if(i.length===0){e.write("[]");return}e.writeLine("["),e.indent();for(let[o,f]of i)e.write(`'${o}' => `),e.writeNode(r.unknown(f)),e.writeLine(",");e.dedent(),e.write("]")}};function Pl({writer:r,value:t}){return new z({classReference:new I({name:"DateTime",namespace:""}),arguments_:[new N(`'${t}'`)]})}function _l({writer:r,value:t}){return new re({on:new I({name:"File",namespace:`${r.rootNamespace}\\Utils`}),method:"createFromString",arguments_:[new N(`"${t}"`)]})}function Fl({entries:r}){return r.filter(t=>!M.isNop(t.key)&&!M.isNop(t.value))}function Bl({values:r}){return r.filter(t=>!M.isNop(t))}var D=class r extends w{constructor(e){super();c(this,"internalType");this.internalType=e}write(e,{comment:n}={}){switch(this.internalType.type){case"int":e.write("int");break;case"string":e.write("string");break;case"bool":e.write("bool");break;case"float":e.write("float");break;case"date":e.addReference(lo),e.write("DateTime");break;case"dateTime":e.addReference(lo),e.write("DateTime");break;case"mixed":e.write("mixed");break;case"object":e.write("object");break;case"array":if(!n){e.write("array");break}e.write("array<"),this.internalType.value.write(e,{comment:n}),e.write(">");break;case"map":{if(!n){e.write("array");break}e.write("array<"),this.internalType.keyType.write(e,{comment:n}),e.write(", "),this.internalType.valueType.write(e,{comment:n}),e.write(">");break}case"null":{e.write("null");break}case"typeDict":{if(!n){e.write("array");break}if(this.internalType.multiline){e.writeLine("array{");let i=this.internalType.entries.filter(l=>!l.valueType.isOptional()),o=this.internalType.entries.filter(l=>l.valueType.isOptional()),f=[...i,...o];for(let l of f)e.write(" * "),this.writeTypeDictEntry({writer:e,entry:l,comment:n}),e.writeLine(",");e.write(" * }");break}e.write("array{"),this.internalType.entries.forEach((i,o)=>{o>0&&e.write(", "),this.writeTypeDictEntry({writer:e,entry:i,comment:n})}),e.write("}");break}case"union":{this.writeUnion({writer:e,unionTypes:this.internalType.types,comment:n});break}case"optional":{let i=this.internalType.value.internalType,o=i.type==="mixed",f=i.type==="union";!f&&!o&&e.write("?"),this.internalType.value.write(e,{comment:n}),f&&!this.unionHasOptional(i.types)&&(e.write("|"),e.writeNode(r.null()));break}case"reference":if(n){e.writeNode(this.internalType.value);let i=this.internalType.value.generics;i&&i.length>0&&(e.write("<"),i.forEach((o,f)=>{f>0&&e.write(", "),o.write(e,{comment:n})}),e.write(">"))}else e.writeNode(this.internalType.value);break;case"enumString":n?(e.write("value-of<"),e.writeNode(this.internalType.value),e.write(">")):e.write("string");break;case"literal":if(n)e.writeNode(this.internalType.value);else switch(this.internalType.value.internalType.type){case"string":e.write("string");break;case"boolean":e.write("bool");break;default:A(this.internalType.value.internalType)}break;default:A(this.internalType)}}toOptionalIfNotAlready(){return this.internalType.type==="optional"?this:r.optional(this)}underlyingTypeIfOptional(){if(this.internalType.type==="optional")return this.internalType.value}underlyingType(){var e;return(e=this.underlyingTypeIfOptional())!=null?e:this}isOptional(){return this.internalType.type==="optional"}getClassReference(){switch(this.internalType.type){case"date":case"dateTime":return new I({name:"DateTime",namespace:""});case"enumString":case"reference":return this.internalType.value;case"int":case"string":case"bool":case"float":case"object":case"map":case"array":case"null":case"mixed":case"optional":case"typeDict":case"union":case"literal":throw new Error("Cannot get class reference for "+this.internalType.type);default:A(this.internalType)}}static int(){return new this({type:"int"})}static string(){return new this({type:"string"})}static bool(){return new this({type:"bool"})}static float(){return new this({type:"float"})}static date(){return new this({type:"date"})}static dateTime(){return new this({type:"dateTime"})}static mixed(){return new this({type:"mixed"})}static object(){return new this({type:"object"})}static array(e){return new this({type:"array",value:e})}static map(e,n){return new this({type:"map",keyType:e,valueType:n})}static typeDict(e,{multiline:n}={}){return new this({type:"typeDict",entries:e,multiline:n})}static union(e){let n=this.flattenUnionTypes(e),i=Lt(n,Nt);return new this({type:"union",types:i})}static flattenUnionTypes(e){let n=[];for(let i of e)i.internalType.type==="union"?n.push(...this.flattenUnionTypes(i.internalType.types)):n.push(i);return n}static optional(e){return this.isAlreadyOptional(e)?e:new this({type:"optional",value:e})}static null(){return new this({type:"null"})}static reference(e){return new this({type:"reference",value:e})}static enumString(e){return new this({type:"enumString",value:e})}static literalString(e){return new this({type:"literal",value:M.string(e)})}static literalBoolean(e){return new this({type:"literal",value:M.boolean(e)})}static isAlreadyOptional(e){return e.internalType.type==="optional"}writeUnion({writer:e,unionTypes:n,comment:i}){let o=this.getUniqueTypes({types:n,comment:i,writer:e}),f=this.unwrapOptionalTypes(o),l=f.filter(m=>m.underlyingType().internalType.type==="mixed").length>0;if(l&&!i){e.write("mixed");return}if(f.length>0&&i){e.writeLine("("),f.forEach((m,d)=>{d>0?e.write(" * |"):e.write(" * "),l&&(m=m.underlyingType()),m.write(e,{comment:i}),e.writeLine(),d++}),e.write(" * )");return}f.forEach((m,d)=>{d>0&&e.write("|"),l&&(m=m.underlyingType()),m.write(e,{comment:i}),d++})}writeTypeDictEntry({writer:e,entry:n,comment:i}){e.write(n.key),n.optional&&e.write("?"),e.write(": "),n.valueType.write(e,{comment:i})}getUniqueTypes({writer:e,types:n,comment:i}){let o=Lt(n,Nt),f=new Set;return o.filter(l=>{let m=l.toString({namespace:e.namespace,rootNamespace:e.rootNamespace,customConfig:e.customConfig,comment:i});return f.has(m)?!1:(f.add(m),!0)})}unwrapOptionalTypes(e){let n=!1,i=e.map(o=>o.internalType.type==="optional"?(n=!0,o.internalType.value):o);return n&&i.push(r.null()),i}unionHasOptional(e){return e.filter(n=>n.internalType.type==="optional").length>0}toString({namespace:e,rootNamespace:n,customConfig:i,comment:o}){let f=new G({namespace:e,rootNamespace:n,customConfig:i});return this.write(f,{comment:o!=null?o:!1}),f.toString()}},lo=new I({namespace:"",name:"DateTime"});a();s();function co(r){return r.startsWith("$")?r.slice(1):r}var mo="values",Ae=class extends w{constructor({name:e,namespace:n,abstract:i,docs:o,parentClassReference:f,traits:l,constructorAccess:m}){super();c(this,"name");c(this,"namespace");c(this,"constructorAccess");c(this,"class_");this.name=e,this.namespace=n,this.constructorAccess=m!=null?m:"public",this.class_=new ee({name:e,namespace:n,abstract:i,docs:o,parentClassReference:f,traits:l})}addField(e){this.class_.addField(e)}addMethod(e){this.class_.addMethod(e)}addTrait(e){this.class_.addTrait(e)}write(e){let n=de(this.class_.fields).map(i=>Le(Ne({},i),{name:co(i.name)}));n.length>0&&this.class_.addConstructor({access:this.constructorAccess,parameters:this.getConstructorParameters({orderedFields:n}),body:h.codeblock(i=>{for(let o of n)i.write(`$this->${o.name} = $${mo}['${o.name}']`),o.type.isOptional()&&i.write(" ?? null"),i.write(";")})}),this.class_.write(e)}allFieldsAreOptional(){return this.class_.fields.every(e=>e.type.isOptional())}getConstructorParameters({orderedFields:e}){return[new te({name:mo,type:D.typeDict(e.map(n=>({key:n.name,valueType:n.type,optional:n.type.isOptional()})),{multiline:!0}),initializer:this.allFieldsAreOptional()?new N("[]"):void 0})]}};a();s();a();s();var ne=class extends w{constructor({name:e,access:n,parameters:i,throws:o,return_:f,body:l,docs:m,classReference:d,static_:y}){super();c(this,"name");c(this,"access");c(this,"parameters");c(this,"throws");c(this,"return_");c(this,"body");c(this,"docs");c(this,"classReference");c(this,"static_");this.name=e,this.access=n,this.parameters=i,this.throws=o!=null?o:[],this.return_=f,this.body=l,this.docs=m,this.classReference=d,this.static_=y!=null?y:!1}write(e){var f;this.writeComment(e),e.write(`${this.access}${this.static_?" static":""} function ${this.name}(`);let n=this.parameters.filter(l=>!l.type.isOptional()),i=this.parameters.filter(l=>l.type.isOptional());[...n,...i].forEach((l,m)=>{m>0&&e.write(", "),l.write(e)}),e.write("): "),this.return_!=null?e.writeNodeOrString(this.return_):e.write("void"),e.writeLine(" {"),e.indent(),(f=this.body)==null||f.write(e),e.dedent(),e.writeLine("}")}writeComment(e){let n=new P({docs:this.docs});for(let i of this.parameters)n.addTag({tagType:"param",type:i.type,name:i.name,docs:i.docs});this.return_!=null&&this.return_!==oo&&this.return_!==ao&&n.addTag({tagType:"return",type:this.return_});for(let i of this.throws)n.addTag({tagType:"throws",type:D.reference(i)});e.writeNode(n)}};var Ee=class extends w{constructor({name:e,namespace:n,backing:i,docs:o,serializable:f}){super();c(this,"name");c(this,"namespace");c(this,"backing");c(this,"docs");c(this,"members",[]);c(this,"serializable");this.name=e,this.namespace=n,this.backing=i,this.docs=o,this.serializable=f!=null?f:!1}addMember(e){this.members.push(e)}write(e){this.writeComment(e),e.write("enum "),e.writeLine(`${this.name}`),this.backing!=null&&e.write(` : ${this.backing}`),this.serializable&&(e.addReference(new I({name:"JsonSerializable",namespace:""})),e.writeLine(" implements JsonSerializable")),e.writeLine(" {"),e.indent();for(let n of this.members){if(e.write(`case ${n.name}`),n.value!=null)if(typeof n.value=="string"){let i=or(n.value);e.write(` = "${i}"`)}else e.write(` = ${n.value}`);e.writeTextStatement("")}this.serializable&&(e.newLine(),e.writeNode(new ne({name:"jsonSerialize",return_:D.string(),access:"public",parameters:[],body:new N("return $this->value;")}))),e.writeNewLineIfLastLineNot(),e.dedent(),e.writeLine("}")}writeComment(e){if(this.docs==null)return;new P({docs:this.docs}).write(e)}};a();s();var Re=class extends w{constructor({name:e,type:n,access:i,readonly_:o,initializer:f,docs:l,inlineDocs:m,attributes:d,inherited:y}){super();c(this,"name");c(this,"type");c(this,"access");c(this,"readonly_");c(this,"initializer");c(this,"docs");c(this,"inlineDocs");c(this,"attributes");c(this,"inherited");this.name=me(e),this.type=n,this.access=i,this.readonly_=o!=null?o:!1,this.initializer=f,this.docs=l,this.inlineDocs=m,this.attributes=d!=null?d:[],this.inherited=y!=null?y:!1}write(e){this.writeComment(e),this.writeAttributesIfPresent(e),e.write(`${this.access} `),this.readonly_&&e.write("readonly "),this.type.write(e),e.write(` ${this.name}`),this.initializer!=null&&(e.write(" = "),this.initializer.write(e)),e.write(";"),this.inlineDocs!=null&&e.write(` // ${this.inlineDocs}`),e.newLine()}writeComment(e){let n=new P;n.addTag({tagType:"var",type:this.type,name:this.name,docs:this.docs}),n.write(e)}writeAttributesIfPresent(e){this.attributes.length>0&&(e.write("#["),this.attributes.forEach((n,i)=>{i>0&&e.write(", "),n.write(e)}),e.writeLine("]"))}};a();s();var Ce=class extends w{constructor({entries:e,multiline:n}){super();c(this,"entries");c(this,"multiline");this.entries=e!=null?e:[],this.multiline=n!=null?n:!1}write(e){if(this.multiline){this.writeMultiline(e);return}this.writeCompact(e)}writeMultiline(e){e.writeLine("["),e.indent();for(let{key:n,value:i}of this.entries)n.write(e),e.write(" => "),i.write(e),e.writeLine(",");e.dedent(),e.write("]")}writeCompact(e){e.write("[");for(let[n,{key:i,value:o}]of this.entries.entries())n>0&&e.write(", "),i.write(e),e.write(" => "),o.write(e);e.write("]")}};a();s();var Ie=class extends w{constructor({name:e,namespace:n,docs:i,traits:o}){super();c(this,"name");c(this,"namespace");c(this,"docs");c(this,"traits");c(this,"fields",[]);c(this,"methods",[]);this.name=e,this.namespace=n,this.docs=i,this.traits=o!=null?o:[]}addField(e){this.fields.push(e)}addMethod(e){this.methods.push(e)}write(e){this.writeComment(e),e.write(`trait ${this.name} `),e.newLine(),e.writeLine("{"),e.indent(),this.traits.length>0&&(e.write("use "),this.traits.forEach((n,i)=>{i>0&&e.write(","),e.writeNode(n)}),e.writeTextStatement(""),e.newLine()),this.writeFields({writer:e,fields:de(this.fields)}),this.fields.length>0&&this.methods.length>0&&e.newLine(),this.writeMethods({writer:e,methods:de(this.methods)}),e.dedent(),e.writeLine("}")}writeComment(e){let n=new P({docs:this.docs});for(let i of this.fields)n.addTag({tagType:"property",type:i.type,name:i.name});n.write(e)}writeFields({writer:e,fields:n}){n.forEach((i,o)=>{o>0&&e.newLine(),i.write(e),e.writeNewLineIfLastLineNot()})}writeMethods({writer:e,methods:n}){n.forEach((i,o)=>{o>0&&e.newLine(),i.write(e),e.writeNewLineIfLastLineNot()})}};a();s();var Ft=class extends w{constructor(e){super();c(this,"arrays");this.arrays=e}write(e){e.write("array_merge"),$e({writer:e,arguments_:this.arrays.map(n=>Se(i=>{if(typeof n=="string"||n instanceof w){i.writeNodeOrString(n);return}i.writeNodeOrString(n.ref),n.fallback&&(i.write(" ?? "),i.writeNodeOrString(n.fallback))}))})}};function kl(r){return new Te(r)}function Ul(r){return new be(r)}function Ol(r){return new ee(r)}function Ml(r){return new Ie(r)}function Dl(r){return new I(r)}function Se(r){return new N(r)}function $l(r){return new Ae(r)}function jl(r){return new Ee(r)}function ql(r){return new Re(r)}function ho(r){return new z(r)}function Wl(r){return new re(r)}function Vl(r){return Se(t=>{t.write("throw "),t.writeNode(ho(r))})}function Gl(r){return new Ce(r)}function zl(r){return new ne(r)}function Hl(r){return new te(r)}function Yl(r){return new He(r)}function Kl(r,t){return Se(e=>{e.writeNodeOrString(r),e.write(" = "),e.writeNodeOrString(t)})}function Jl(r){return Se(me(r))}function Zl(r){return Se(`"${r}"`)}function Ql(...r){return new Ft(r)}function or(r){return r.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\$/g,"\\$")}function Xl(){return new N(r=>{r.write("$this")})}a();s();function ar(r){return so.has(r.toLowerCase())?`${r}_`:r}a();s();var Bt=class{constructor({context:t}){c(this,"context");this.context=t}convert(t){if(t.value===null)return this.context.isNullable(t.typeReference)?h.TypeLiteral.null():(this.context.errors.add({severity:v.Critical,message:"Expected non-null value, but got null"}),h.TypeLiteral.nop());if(t.value===void 0)return h.TypeLiteral.nop();switch(t.typeReference.type){case"list":case"set":return this.convertList({list:t.typeReference.value,value:t.value});case"literal":return this.convertLiteral({literalType:t.typeReference.value,value:t.value});case"map":return this.convertMap({map:t.typeReference,value:t.value});case"named":{let e=this.context.resolveNamedType({typeId:t.typeReference.value});return e==null?h.TypeLiteral.nop():this.convertNamed({named:e,value:t.value,as:t.as})}case"optional":return this.convert({typeReference:t.typeReference.value,value:t.value,as:t.as});case"nullable":return this.convert({typeReference:t.typeReference.value,value:t.value,as:t.as});case"primitive":return this.convertPrimitive({primitive:t.typeReference.value,value:t.value,as:t.as});case"unknown":return this.convertUnknown({value:t.value});default:A(t.typeReference)}}convertLiteral({literalType:t,value:e}){switch(t.type){case"boolean":{let n=this.context.getValueAsBoolean({value:e});return n==null?h.TypeLiteral.nop():h.TypeLiteral.boolean(n)}case"string":{let n=this.context.getValueAsString({value:e});return n==null?h.TypeLiteral.nop():h.TypeLiteral.string(n)}default:A(t)}}convertList({list:t,value:e}){return Array.isArray(e)?h.TypeLiteral.list({values:e.map((n,i)=>{this.context.errors.scope({index:i});try{return this.convert({typeReference:t,value:n})}finally{this.context.errors.unscope()}})}):(this.context.errors.add({severity:v.Critical,message:`Expected array but got: ${typeof e}`}),h.TypeLiteral.nop())}convertMap({map:t,value:e}){return typeof e!="object"||e==null?(this.context.errors.add({severity:v.Critical,message:`Expected object but got: ${e==null?"null":typeof e}`}),h.TypeLiteral.nop()):h.TypeLiteral.map({entries:Object.entries(e).map(([n,i])=>{this.context.errors.scope(n);try{return{key:this.convert({typeReference:t.key,value:n,as:"key"}),value:this.convert({typeReference:t.value,value:i})}}finally{this.context.errors.unscope()}})})}convertNamed({named:t,value:e,as:n}){switch(t.type){case"alias":return this.convert({typeReference:t.typeReference,value:e,as:n});case"discriminatedUnion":return this.convertDiscriminatedUnion({discriminatedUnion:t,value:e});case"enum":return this.convertEnum({enum_:t,value:e});case"object":return this.convertObject({object_:t,value:e});case"undiscriminatedUnion":return this.convertUndiscriminatedUnion({undiscriminatedUnion:t,value:e});default:A(t)}}convertDiscriminatedUnion({discriminatedUnion:t,value:e}){let n=this.context.resolveDiscriminatedUnionTypeInstance({discriminatedUnion:t,value:e});if(n==null)return h.TypeLiteral.nop();let i=n.singleDiscriminatedUnionType,o=this.convertDiscriminatedUnionProperties({discriminatedUnionTypeInstance:n,unionVariant:i});return o==null?h.TypeLiteral.nop():h.TypeLiteral.reference(h.codeblock(f=>{f.writeNode(h.invokeMethod({on:h.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getTypesNamespace(t.declaration.fernFilepath)}),method:this.context.getMethodName(i.discriminantValue.name),arguments_:this.convertDiscriminatedUnionVariantArgs({discriminatedUnionTypeInstance:n,unionVariant:i,unionProperties:o}),static_:!0}))}))}convertDiscriminatedUnionProperties({discriminatedUnionTypeInstance:t,unionVariant:e}){switch(e.type){case"samePropertiesAsObject":{let n=this.context.resolveNamedType({typeId:e.typeId});if(n==null)return;let i=this.convertNamed({named:n,value:t.value});if(!i.isClass()){this.context.errors.add({severity:v.Critical,message:"Internal error; expected union value to be an object"});return}return i.asClassOrThrow().fields}case"singleProperty":try{this.context.errors.scope(e.discriminantValue.wireValue);let n=this.context.getRecord(t.value);return n==null?[{name:this.context.getPropertyName(e.discriminantValue.name),value:this.convert({typeReference:e.typeReference,value:t.value})}]:[{name:this.context.getPropertyName(e.discriminantValue.name),value:this.convert({typeReference:e.typeReference,value:n[e.discriminantValue.wireValue]})}]}finally{this.context.errors.unscope()}case"noProperties":return[];default:A(e)}}convertDiscriminatedUnionVariantArgs({discriminatedUnionTypeInstance:t,unionVariant:e,unionProperties:n}){let i=this.getBaseFields({discriminatedUnionTypeInstance:t,singleDiscriminatedUnionType:e});if(e.type==="singleProperty"&&this.context.getRecord(t.value)==null&&n.length===1)return[...i,this.convert({typeReference:e.typeReference,value:t.value})];if(e.type==="samePropertiesAsObject"){let o=this.context.resolveNamedType({typeId:e.typeId});return o==null?[]:[...i,h.TypeLiteral.class_({reference:h.classReference({name:this.context.getClassName(o.declaration.name),namespace:this.context.getTypesNamespace(o.declaration.fernFilepath)}),fields:n})]}return i}getBaseFields({discriminatedUnionTypeInstance:t,singleDiscriminatedUnionType:e}){var i,o;return this.context.associateByWireValue({parameters:(i=e.properties)!=null?i:[],values:(o=this.context.getRecord(t.value))!=null?o:{},ignoreMissingParameters:!0}).map(f=>{this.context.errors.scope(f.name.wireValue);try{return this.convert(f)}finally{this.context.errors.unscope()}})}convertObject({object_:t,value:e}){var i;let n=this.context.associateByWireValue({parameters:t.properties,values:(i=this.context.getRecord(e))!=null?i:{}});return h.TypeLiteral.class_({reference:h.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getTypesNamespace(t.declaration.fernFilepath)}),fields:n.map(o=>{this.context.errors.scope(o.name.wireValue);try{return{name:this.context.getPropertyName(o.name.name),value:this.convert(o)}}finally{this.context.errors.unscope()}})})}convertEnum({enum_:t,value:e}){let n=this.getEnumValueName({enum_:t,value:e});return n==null?h.TypeLiteral.nop():h.TypeLiteral.reference(h.codeblock(i=>{i.writeNode(h.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getTypesNamespace(t.declaration.fernFilepath)})),i.write("::"),i.write(n),i.write("->value")}))}getEnumValueName({enum_:t,value:e}){if(typeof e!="string"){this.context.errors.add({severity:v.Critical,message:`Expected enum value string, got: ${typeof e}`});return}let n=t.values.find(i=>i.wireValue===e);if(n==null){this.context.errors.add({severity:v.Critical,message:`An enum value named "${e}" does not exist in this context`});return}return this.context.getClassName(n.name)}convertUndiscriminatedUnion({undiscriminatedUnion:t,value:e}){let n=this.findMatchingUndiscriminatedUnionType({undiscriminatedUnion:t,value:e});return n==null?h.TypeLiteral.nop():n}findMatchingUndiscriminatedUnionType({undiscriminatedUnion:t,value:e}){for(let n of t.types)try{return this.convert({typeReference:n,value:e})}catch(i){continue}this.context.errors.add({severity:v.Critical,message:`None of the types in the undiscriminated union matched the given "${typeof e}" value`})}convertUnknown({value:t}){return h.TypeLiteral.unknown(t)}convertPrimitive({primitive:t,value:e,as:n}){switch(t){case"INTEGER":case"LONG":case"UINT":case"UINT_64":{let i=this.getValueAsNumber({value:e,as:n});return i==null?h.TypeLiteral.nop():h.TypeLiteral.number(i)}case"FLOAT":case"DOUBLE":{let i=this.getValueAsNumber({value:e});return i==null?h.TypeLiteral.nop():h.TypeLiteral.float(i)}case"BOOLEAN":{let i=this.getValueAsBoolean({value:e,as:n});return i==null?h.TypeLiteral.nop():h.TypeLiteral.boolean(i)}case"DATE":case"DATE_TIME":{let i=this.context.getValueAsString({value:e});return i==null?h.TypeLiteral.nop():h.TypeLiteral.datetime(i)}case"BASE_64":case"UUID":case"BIG_INTEGER":case"STRING":{let i=this.context.getValueAsString({value:e});return i==null?h.TypeLiteral.nop():h.TypeLiteral.string(i)}default:A(t)}}getValueAsNumber({value:t,as:e}){let n=e==="key"&&typeof t=="string"?Number(t):t;return this.context.getValueAsNumber({value:n})}getValueAsBoolean({value:t,as:e}){let n=e==="key"?typeof t=="string"?t==="true":t==="false"?!1:t:t;return this.context.getValueAsBoolean({value:n})}};a();s();var kt=class{constructor({context:t}){c(this,"context");this.context=t}getFilePropertyInfo({body:t,value:e}){var o;let n={fileFields:[],bodyPropertyFields:[]},i=(o=this.context.getRecord(e))!=null?o:{};for(let f of t.properties)switch(f.type){case"file":n.fileFields.push({name:this.context.getPropertyName(f.name),value:this.getSingleFileProperty({property:f,record:i})});break;case"fileArray":n.fileFields.push({name:this.context.getPropertyName(f.name),value:this.getArrayFileProperty({property:f,record:i})});break;case"bodyProperty":n.bodyPropertyFields.push({name:this.context.getPropertyName(f.name.name),value:this.getBodyProperty({property:f,record:i})});break;default:A(f)}return n}getSingleFileProperty({property:t,record:e}){let n=this.context.getSingleFileValue({property:t,record:e});return n==null?h.TypeLiteral.nop():h.TypeLiteral.file(n)}getArrayFileProperty({property:t,record:e}){let n=this.context.getFileArrayValues({property:t,record:e});return n==null?h.TypeLiteral.nop():h.TypeLiteral.list({values:n.map(i=>h.TypeLiteral.file(i))})}getBodyProperty({property:t,record:e}){let n=e[t.name.wireValue];return n==null?h.TypeLiteral.nop():this.context.dynamicTypeLiteralMapper.convert({typeReference:t.typeReference,value:n})}};var ec=["use","clone","list"],tc="Requests",rc="Types",Ut=class r extends Qe{constructor({ir:e,config:n}){var i;super({ir:e,config:n});c(this,"ir");c(this,"customConfig");c(this,"dynamicTypeLiteralMapper");c(this,"filePropertyMapper");c(this,"rootNamespace");this.ir=e,this.customConfig=n.customConfig!=null?n.customConfig:void 0,this.dynamicTypeLiteralMapper=new Bt({context:this}),this.filePropertyMapper=new kt({context:this}),this.rootNamespace=nc({organization:n.organization,namespaceOverride:(i=this.customConfig)==null?void 0:i.namespace})}clone(){return new r({ir:this.ir,config:this.config})}getParameterName(e){return this.prependUnderscoreIfNeeded(e.camelCase.unsafeName)}getPropertyName(e){return this.prependUnderscoreIfNeeded(e.camelCase.unsafeName)}getMethodName(e){let n=e.camelCase.unsafeName;return ec.includes(n)?n:e.camelCase.safeName}getClassName(e){return ar(e.pascalCase.safeName)}getRootClientClassName(){var e,n,i;return((e=this.customConfig)==null?void 0:e.clientName)!=null?this.customConfig.clientName:((n=this.customConfig)==null?void 0:n["client-class-name"])!=null?(i=this.customConfig)==null?void 0:i["client-class-name"]:this.getComputedClientName()}getEnvironmentsClassReference(){return h.classReference({name:"Environments",namespace:this.rootNamespace})}getRequestNamespace(e){return this.getNamespace(e,tc)}getTypesNamespace(e){return this.getNamespace(e,rc)}getNamespace(e,n){let i=e.allParts.map(o=>o.pascalCase.safeName);return i=n!=null?[...i,n]:i,[this.rootNamespace,...i].join("\\")}getEnvironmentClassAccessFromID(e){let n=this.resolveEnvironmentName(e);if(n!=null)return h.codeblock(i=>{i.writeNode(this.getEnvironmentClassReference(n)),i.write("::"),i.write(this.getClassName(n))})}getEnvironmentClassReference(e){return h.classReference({name:"Environments",namespace:this.rootNamespace})}prependUnderscoreIfNeeded(e){return/^[a-zA-Z_]/.test(e)?e:`_${e}`}getComputedClientName(){return`${this.getOrganizationPascalCase()}Client`}getOrganizationPascalCase(){return`${Ue(vt(this.config.organization))}`}};function nc({organization:r,namespaceOverride:t}){return t!=null?t:`${Ue(vt(r))}`}a();s();var yo="$client",Ot="Example",xo=`<?php
|
|
19
26
|
|
|
20
|
-
`,Oe=class{constructor({context:t}){f(this,"context");this.context=t}async generateSnippet({endpoint:t,request:e}){var i;let r=this.buildCodeBlock({endpoint:t,snippet:e});return Mr+await r.toStringAsync({namespace:De,rootNamespace:De,customConfig:(i=this.context.customConfig)!=null?i:{}})}generateSnippetSync({endpoint:t,request:e}){var i;let r=this.buildCodeBlock({endpoint:t,snippet:e});return Mr+r.toString({namespace:De,rootNamespace:De,customConfig:(i=this.context.customConfig)!=null?i:{}})}buildCodeBlock({endpoint:t,snippet:e}){return d.codeblock(r=>{r.writeNodeStatement(this.constructClient({endpoint:t,snippet:e})),r.writeNodeStatement(this.callMethod({endpoint:t,snippet:e}))})}constructClient({endpoint:t,snippet:e}){return d.codeblock(r=>{r.write(`${Ur} = `),r.writeNode(this.getRootClientClassInstantiation(this.getConstructorArgs({endpoint:t,snippet:e})))})}callMethod({endpoint:t,snippet:e}){return d.invokeMethod({on:d.codeblock(Ur),method:this.getMethod({endpoint:t}),arguments_:this.getMethodArgs({endpoint:t,snippet:e}),multiline:!0})}getConstructorArgs({endpoint:t,snippet:e}){let r=[];t.auth!=null&&(e.auth!=null?r.push(...this.getConstructorAuthArgs({auth:t.auth,values:e.auth})):this.context.errors.add({severity:w.Warning,message:`Auth with ${t.auth.type} configuration is required for this endpoint`}));let i=[],o=this.getConstructorBaseUrlArgs({baseUrl:e.baseURL,environment:e.environment});return o.length>0&&i.push(...o),this.context.errors.scope(U.Headers),this.context.ir.headers!=null&&e.headers!=null&&i.push(...this.getConstructorHeaderArgs({headers:this.context.ir.headers,values:e.headers})),this.context.errors.unscope(),i.length===0?r:[...r,{name:"options",assignment:d.TypeLiteral.map({entries:i.map(a=>({key:d.TypeLiteral.string(a.name),value:a.value}))})}]}getConstructorAuthArgs({auth:t,values:e}){switch(t.type){case"basic":return e.type!=="basic"?(this.context.errors.add({severity:w.Critical,message:this.context.newAuthMismatchError({auth:t,values:e}).message}),[]):this.getConstructorBasicAuthArgs({auth:t,values:e});case"bearer":return e.type!=="bearer"?(this.context.errors.add({severity:w.Critical,message:this.context.newAuthMismatchError({auth:t,values:e}).message}),[]):this.getConstructorBearerAuthArgs({auth:t,values:e});case"header":return e.type!=="header"?(this.context.errors.add({severity:w.Critical,message:this.context.newAuthMismatchError({auth:t,values:e}).message}),[]):this.getConstructorHeaderAuthArgs({auth:t,values:e});case"oauth":return e.type!=="oauth"?(this.context.errors.add({severity:w.Critical,message:this.context.newAuthMismatchError({auth:t,values:e}).message}),[]):(this.context.errors.add({severity:w.Warning,message:"The PHP SDK doesn't support OAuth client credentials yet"}),[]);default:v(t)}}getConstructorBasicAuthArgs({auth:t,values:e}){return[{name:this.context.getPropertyName(t.username),assignment:d.TypeLiteral.string(e.username)},{name:this.context.getPropertyName(t.password),assignment:d.TypeLiteral.string(e.password)}]}getConstructorBaseUrlArgs({baseUrl:t,environment:e}){let r=this.getBaseUrlArg({baseUrl:t,environment:e});return d.TypeLiteral.isNop(r)?[]:[{name:"baseUrl",value:r}]}getBaseUrlArg({baseUrl:t,environment:e}){if(t!=null&&e!=null)return this.context.errors.add({severity:w.Critical,message:"Cannot specify both baseUrl and environment options"}),d.TypeLiteral.nop();if(t!=null)return d.TypeLiteral.string(t);if(e!=null){if(this.context.isSingleEnvironmentID(e)){let r=this.context.getEnvironmentClassAccessFromID(e);return r==null?(this.context.errors.add({severity:w.Warning,message:`Environment ${JSON.stringify(e)} was not found`}),d.TypeLiteral.nop()):d.TypeLiteral.reference(d.codeblock(i=>{i.writeNode(r),i.write("->value")}))}this.context.isMultiEnvironmentValues(e)&&this.context.errors.add({severity:w.Warning,message:"The PHP SDK doesn't support a multi-environment client option yet; use the baseUrl option instead"})}return d.TypeLiteral.nop()}getConstructorBearerAuthArgs({auth:t,values:e}){return[{name:this.context.getPropertyName(t.token),assignment:d.TypeLiteral.string(e.token)}]}getConstructorHeaderAuthArgs({auth:t,values:e}){return[{name:this.context.getPropertyName(t.header.name.name),assignment:this.context.dynamicTypeLiteralMapper.convert({typeReference:t.header.typeReference,value:e.value})}]}getConstructorHeaderArgs({headers:t,values:e}){let r=[];for(let i of t){let o=this.getConstructorHeaderArg({header:i,value:e.value});o!=null&&r.push({name:this.context.getPropertyName(i.name.name),value:o})}return r}getConstructorHeaderArg({header:t,value:e}){let r=this.context.dynamicTypeLiteralMapper.convert({typeReference:t.typeReference,value:e});if(!d.TypeLiteral.isNop(r))return r}getMethodArgs({endpoint:t,snippet:e}){switch(t.request.type){case"inlined":return this.getMethodArgsForInlinedRequest({request:t.request,snippet:e});case"body":return this.getMethodArgsForBodyRequest({request:t.request,snippet:e});default:v(t.request)}}getMethodArgsForBodyRequest({request:t,snippet:e}){var o,a;let r=[];this.context.errors.scope(U.PathParameters);let i=[...(o=this.context.ir.pathParameters)!=null?o:[],...(a=t.pathParameters)!=null?a:[]];return i.length>0&&r.push(...this.getPathParameters({namedParameters:i,snippet:e}).map(l=>l.value)),this.context.errors.unscope(),this.context.errors.scope(U.RequestBody),t.body!=null&&r.push(this.getBodyRequestArg({body:t.body,value:e.requestBody})),this.context.errors.unscope(),r}getBodyRequestArg({body:t,value:e}){switch(t.type){case"bytes":return this.getBytesBodyRequestArg({value:e});case"typeReference":return this.context.dynamicTypeLiteralMapper.convert({typeReference:t.value,value:e});default:v(t)}}getBytesBodyRequestArg({value:t}){return this.context.errors.add({severity:w.Critical,message:"The PHP SDK doesn't support bytes requests yet"}),d.TypeLiteral.nop()}getMethodArgsForInlinedRequest({request:t,snippet:e}){var m,h,y,x;let r=[],i=(h=(m=this.context.customConfig)==null?void 0:m.inlinePathParameters)!=null?h:!1;this.context.errors.scope(U.PathParameters);let o=[],a=[...(y=this.context.ir.pathParameters)!=null?y:[],...(x=t.pathParameters)!=null?x:[]];a.length>0&&o.push(...this.getPathParameters({namedParameters:a,snippet:e})),this.context.errors.unscope(),this.context.errors.scope(U.RequestBody);let l=this.getFilePropertyInfo({request:t,snippet:e});return this.context.errors.unscope(),this.context.includePathParametersInWrappedRequest({request:t,inlinePathParameters:i})||r.push(...o.map(R=>R.value)),this.context.needsRequestParameter({request:t,inlinePathParameters:i,inlineFileProperties:!0})&&r.push(this.getInlinedRequestArg({request:t,snippet:e,pathParameterFields:this.context.includePathParametersInWrappedRequest({request:t,inlinePathParameters:i})?o:[],filePropertyInfo:l})),r}getFilePropertyInfo({request:t,snippet:e}){return t.body==null||!this.context.isFileUploadRequestBody(t.body)?{fileFields:[],bodyPropertyFields:[]}:this.context.filePropertyMapper.getFilePropertyInfo({body:t.body,value:e.requestBody})}getInlinedRequestArg({request:t,snippet:e,pathParameterFields:r,filePropertyInfo:i}){var y,x,R,b;this.context.errors.scope(U.QueryParameters);let a=this.context.associateQueryParametersByWireValue({parameters:(y=t.queryParameters)!=null?y:[],values:(x=e.queryParameters)!=null?x:{}}).map(I=>({name:this.context.getPropertyName(I.name.name),value:this.context.dynamicTypeLiteralMapper.convert(I)}));this.context.errors.unscope(),this.context.errors.scope(U.Headers);let m=this.context.associateByWireValue({parameters:(R=t.headers)!=null?R:[],values:(b=e.headers)!=null?b:{}}).map(I=>({name:this.context.getPropertyName(I.name.name),value:this.context.dynamicTypeLiteralMapper.convert(I)}));this.context.errors.unscope(),this.context.errors.scope(U.RequestBody);let h=t.body!=null?this.getInlinedRequestBodyConstructorFields({body:t.body,value:e.requestBody,filePropertyInfo:i}):[];return this.context.errors.unscope(),d.TypeLiteral.class_({reference:d.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getRequestNamespace(t.declaration.fernFilepath)}),fields:[...r,...a,...m,...h]})}getInlinedRequestBodyConstructorFields({body:t,value:e,filePropertyInfo:r}){switch(t.type){case"properties":return this.getInlinedRequestBodyPropertyConstructorFields({parameters:t.value,value:e});case"referenced":return[this.getReferencedRequestBodyPropertyConstructorField({body:t,value:e})];case"fileUpload":return this.getFileUploadRequestBodyConstructorFields({filePropertyInfo:r});default:v(t)}}getFileUploadRequestBodyConstructorFields({filePropertyInfo:t}){return[...t.fileFields,...t.bodyPropertyFields]}getReferencedRequestBodyPropertyConstructorField({body:t,value:e}){return{name:this.context.getPropertyName(t.bodyKey),value:this.getReferencedRequestBodyPropertyTypeLiteral({body:t.bodyType,value:e})}}getReferencedRequestBodyPropertyTypeLiteral({body:t,value:e}){switch(t.type){case"bytes":return this.getBytesBodyRequestArg({value:e});case"typeReference":return this.context.dynamicTypeLiteralMapper.convert({typeReference:t.value,value:e});default:v(t)}}getInlinedRequestBodyPropertyConstructorFields({parameters:t,value:e}){var o;let r=[],i=this.context.associateByWireValue({parameters:t,values:(o=this.context.getRecord(e))!=null?o:{}});for(let a of i)r.push({name:this.context.getPropertyName(a.name.name),value:this.context.dynamicTypeLiteralMapper.convert(a)});return r}getPathParameters({namedParameters:t,snippet:e}){var o;let r=[],i=this.context.associateByWireValue({parameters:t,values:(o=e.pathParameters)!=null?o:{}});for(let a of i)r.push({name:this.context.getPropertyName(a.name.name),value:this.context.dynamicTypeLiteralMapper.convert(a)});return r}getMethod({endpoint:t}){return t.declaration.fernFilepath.allParts.length>0?`${t.declaration.fernFilepath.allParts.map(e=>this.context.getPropertyName(e)).join("->")}->${this.context.getMethodName(t.declaration.name)}`:this.context.getMethodName(t.declaration.name)}getRootClientClassInstantiation(t){return d.instantiateClass({classReference:d.classReference({name:this.context.getRootClientClassName(),namespace:this.context.rootNamespace}),arguments_:t,multiline:!0})}};u();p();u();p();var $e=class{constructor({context:t}){f(this,"context");this.context=t}convert(t){if(t.value===null)return this.context.isNullable(t.typeReference)?d.TypeLiteral.null():(this.context.errors.add({severity:w.Critical,message:"Expected non-null value, but got null"}),d.TypeLiteral.nop());if(t.value===void 0)return d.TypeLiteral.nop();switch(t.typeReference.type){case"list":case"set":return this.convertList({list:t.typeReference.value,value:t.value});case"literal":return this.convertLiteral({literalType:t.typeReference.value,value:t.value});case"map":return this.convertMap({map:t.typeReference,value:t.value});case"named":{let e=this.context.resolveNamedType({typeId:t.typeReference.value});return e==null?d.TypeLiteral.nop():this.convertNamed({named:e,value:t.value,as:t.as})}case"optional":return this.convert({typeReference:t.typeReference.value,value:t.value,as:t.as});case"nullable":return this.convert({typeReference:t.typeReference.value,value:t.value,as:t.as});case"primitive":return this.convertPrimitive({primitive:t.typeReference.value,value:t.value,as:t.as});case"unknown":return this.convertUnknown({value:t.value});default:v(t.typeReference)}}convertLiteral({literalType:t,value:e}){switch(t.type){case"boolean":{let r=this.context.getValueAsBoolean({value:e});return r==null?d.TypeLiteral.nop():d.TypeLiteral.boolean(r)}case"string":{let r=this.context.getValueAsString({value:e});return r==null?d.TypeLiteral.nop():d.TypeLiteral.string(r)}default:v(t)}}convertList({list:t,value:e}){return Array.isArray(e)?d.TypeLiteral.list({values:e.map((r,i)=>{this.context.errors.scope({index:i});try{return this.convert({typeReference:t,value:r})}finally{this.context.errors.unscope()}})}):(this.context.errors.add({severity:w.Critical,message:`Expected array but got: ${typeof e}`}),d.TypeLiteral.nop())}convertMap({map:t,value:e}){return typeof e!="object"||e==null?(this.context.errors.add({severity:w.Critical,message:`Expected object but got: ${e==null?"null":typeof e}`}),d.TypeLiteral.nop()):d.TypeLiteral.map({entries:Object.entries(e).map(([r,i])=>{this.context.errors.scope(r);try{return{key:this.convert({typeReference:t.key,value:r,as:"key"}),value:this.convert({typeReference:t.value,value:i})}}finally{this.context.errors.unscope()}})})}convertNamed({named:t,value:e,as:r}){switch(t.type){case"alias":return this.convert({typeReference:t.typeReference,value:e,as:r});case"discriminatedUnion":return this.convertDiscriminatedUnion({discriminatedUnion:t,value:e});case"enum":return this.convertEnum({enum_:t,value:e});case"object":return this.convertObject({object_:t,value:e});case"undiscriminatedUnion":return this.convertUndiscriminatedUnion({undiscriminatedUnion:t,value:e});default:v(t)}}convertDiscriminatedUnion({discriminatedUnion:t,value:e}){let r=this.context.resolveDiscriminatedUnionTypeInstance({discriminatedUnion:t,value:e});if(r==null)return d.TypeLiteral.nop();let i=r.singleDiscriminatedUnionType,o=this.convertDiscriminatedUnionProperties({discriminatedUnionTypeInstance:r,unionVariant:i});return o==null?d.TypeLiteral.nop():d.TypeLiteral.reference(d.codeblock(a=>{a.writeNode(d.invokeMethod({on:d.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getTypesNamespace(t.declaration.fernFilepath)}),method:this.context.getMethodName(i.discriminantValue.name),arguments_:this.convertDiscriminatedUnionVariantArgs({discriminatedUnionTypeInstance:r,unionVariant:i,unionProperties:o}),static_:!0}))}))}convertDiscriminatedUnionProperties({discriminatedUnionTypeInstance:t,unionVariant:e}){switch(e.type){case"samePropertiesAsObject":{let r=this.context.resolveNamedType({typeId:e.typeId});if(r==null)return;let i=this.convertNamed({named:r,value:t.value});if(!i.isClass()){this.context.errors.add({severity:w.Critical,message:"Internal error; expected union value to be an object"});return}return i.asClassOrThrow().fields}case"singleProperty":try{this.context.errors.scope(e.discriminantValue.wireValue);let r=this.context.getRecord(t.value);return r==null?[{name:this.context.getPropertyName(e.discriminantValue.name),value:this.convert({typeReference:e.typeReference,value:t.value})}]:[{name:this.context.getPropertyName(e.discriminantValue.name),value:this.convert({typeReference:e.typeReference,value:r[e.discriminantValue.wireValue]})}]}finally{this.context.errors.unscope()}case"noProperties":return[];default:v(e)}}convertDiscriminatedUnionVariantArgs({discriminatedUnionTypeInstance:t,unionVariant:e,unionProperties:r}){let i=this.getBaseFields({discriminatedUnionTypeInstance:t,singleDiscriminatedUnionType:e});if(e.type==="singleProperty"&&this.context.getRecord(t.value)==null&&r.length===1)return[...i,this.convert({typeReference:e.typeReference,value:t.value})];if(e.type==="samePropertiesAsObject"){let o=this.context.resolveNamedType({typeId:e.typeId});return o==null?[]:[...i,d.TypeLiteral.class_({reference:d.classReference({name:this.context.getClassName(o.declaration.name),namespace:this.context.getTypesNamespace(o.declaration.fernFilepath)}),fields:r})]}return i}getBaseFields({discriminatedUnionTypeInstance:t,singleDiscriminatedUnionType:e}){var i,o;return this.context.associateByWireValue({parameters:(i=e.properties)!=null?i:[],values:(o=this.context.getRecord(t.value))!=null?o:{},ignoreMissingParameters:!0}).map(a=>{this.context.errors.scope(a.name.wireValue);try{return this.convert(a)}finally{this.context.errors.unscope()}})}convertObject({object_:t,value:e}){var i;let r=this.context.associateByWireValue({parameters:t.properties,values:(i=this.context.getRecord(e))!=null?i:{}});return d.TypeLiteral.class_({reference:d.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getTypesNamespace(t.declaration.fernFilepath)}),fields:r.map(o=>{this.context.errors.scope(o.name.wireValue);try{return{name:this.context.getPropertyName(o.name.name),value:this.convert(o)}}finally{this.context.errors.unscope()}})})}convertEnum({enum_:t,value:e}){let r=this.getEnumValueName({enum_:t,value:e});return r==null?d.TypeLiteral.nop():d.TypeLiteral.reference(d.codeblock(i=>{i.writeNode(d.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getTypesNamespace(t.declaration.fernFilepath)})),i.write("::"),i.write(r),i.write("->value")}))}getEnumValueName({enum_:t,value:e}){if(typeof e!="string"){this.context.errors.add({severity:w.Critical,message:`Expected enum value string, got: ${typeof e}`});return}let r=t.values.find(i=>i.wireValue===e);if(r==null){this.context.errors.add({severity:w.Critical,message:`An enum value named "${e}" does not exist in this context`});return}return this.context.getClassName(r.name)}convertUndiscriminatedUnion({undiscriminatedUnion:t,value:e}){let r=this.findMatchingUndiscriminatedUnionType({undiscriminatedUnion:t,value:e});return r==null?d.TypeLiteral.nop():r}findMatchingUndiscriminatedUnionType({undiscriminatedUnion:t,value:e}){for(let r of t.types)try{return this.convert({typeReference:r,value:e})}catch(i){continue}this.context.errors.add({severity:w.Critical,message:`None of the types in the undiscriminated union matched the given "${typeof e}" value`})}convertUnknown({value:t}){return d.TypeLiteral.unknown(t)}convertPrimitive({primitive:t,value:e,as:r}){switch(t){case"INTEGER":case"LONG":case"UINT":case"UINT_64":{let i=this.getValueAsNumber({value:e,as:r});return i==null?d.TypeLiteral.nop():d.TypeLiteral.number(i)}case"FLOAT":case"DOUBLE":{let i=this.getValueAsNumber({value:e});return i==null?d.TypeLiteral.nop():d.TypeLiteral.float(i)}case"BOOLEAN":{let i=this.getValueAsBoolean({value:e,as:r});return i==null?d.TypeLiteral.nop():d.TypeLiteral.boolean(i)}case"DATE":case"DATE_TIME":{let i=this.context.getValueAsString({value:e});return i==null?d.TypeLiteral.nop():d.TypeLiteral.datetime(i)}case"BASE_64":case"UUID":case"BIG_INTEGER":case"STRING":{let i=this.context.getValueAsString({value:e});return i==null?d.TypeLiteral.nop():d.TypeLiteral.string(i)}default:v(t)}}getValueAsNumber({value:t,as:e}){let r=e==="key"&&typeof t=="string"?Number(t):t;return this.context.getValueAsNumber({value:r})}getValueAsBoolean({value:t,as:e}){let r=e==="key"?typeof t=="string"?t==="true":t==="false"?!1:t:t;return this.context.getValueAsBoolean({value:r})}};u();p();var Ve=class{constructor({context:t}){f(this,"context");this.context=t}getFilePropertyInfo({body:t,value:e}){var o;let r={fileFields:[],bodyPropertyFields:[]},i=(o=this.context.getRecord(e))!=null?o:{};for(let a of t.properties)switch(a.type){case"file":r.fileFields.push({name:this.context.getPropertyName(a.name),value:this.getSingleFileProperty({property:a,record:i})});break;case"fileArray":r.fileFields.push({name:this.context.getPropertyName(a.name),value:this.getArrayFileProperty({property:a,record:i})});break;case"bodyProperty":r.bodyPropertyFields.push({name:this.context.getPropertyName(a.name.name),value:this.getBodyProperty({property:a,record:i})});break;default:v(a)}return r}getSingleFileProperty({property:t,record:e}){let r=this.context.getSingleFileValue({property:t,record:e});return r==null?d.TypeLiteral.nop():d.TypeLiteral.file(r)}getArrayFileProperty({property:t,record:e}){let r=this.context.getFileArrayValues({property:t,record:e});return r==null?d.TypeLiteral.nop():d.TypeLiteral.list({values:r.map(i=>d.TypeLiteral.file(i))})}getBodyProperty({property:t,record:e}){let r=e[t.name.wireValue];return r==null?d.TypeLiteral.nop():this.context.dynamicTypeLiteralMapper.convert({typeReference:t.typeReference,value:r})}};var aa=["use","clone","list"],sa="Requests",ua="Types",qe=class n extends be{constructor({ir:e,config:r}){var i;super({ir:e,config:r});f(this,"ir");f(this,"customConfig");f(this,"dynamicTypeLiteralMapper");f(this,"filePropertyMapper");f(this,"rootNamespace");this.ir=e,this.customConfig=r.customConfig!=null?r.customConfig:void 0,this.dynamicTypeLiteralMapper=new $e({context:this}),this.filePropertyMapper=new Ve({context:this}),this.rootNamespace=pa({organization:r.organization,namespaceOverride:(i=this.customConfig)==null?void 0:i.namespace})}clone(){return new n({ir:this.ir,config:this.config})}getParameterName(e){return this.prependUnderscoreIfNeeded(e.camelCase.unsafeName)}getPropertyName(e){return this.prependUnderscoreIfNeeded(e.camelCase.unsafeName)}getMethodName(e){let r=e.camelCase.unsafeName;return aa.includes(r)?r:e.camelCase.safeName}getClassName(e){return e.pascalCase.safeName}getRootClientClassName(){var e,r,i;return((e=this.customConfig)==null?void 0:e.clientName)!=null?this.customConfig.clientName:((r=this.customConfig)==null?void 0:r["client-class-name"])!=null?(i=this.customConfig)==null?void 0:i["client-class-name"]:this.getComputedClientName()}getEnvironmentsClassReference(){return d.classReference({name:"Environments",namespace:this.rootNamespace})}getRequestNamespace(e){return this.getNamespace(e,sa)}getTypesNamespace(e){return this.getNamespace(e,ua)}getNamespace(e,r){let i=e.allParts.map(o=>o.pascalCase.safeName);return i=r!=null?[...i,r]:i,[this.rootNamespace,...i].join("\\")}getEnvironmentClassAccessFromID(e){let r=this.resolveEnvironmentName(e);if(r!=null)return d.codeblock(i=>{i.writeNode(this.getEnvironmentClassReference(r)),i.write("::"),i.write(this.getClassName(r))})}getEnvironmentClassReference(e){return d.classReference({name:"Environments",namespace:this.rootNamespace})}prependUnderscoreIfNeeded(e){return/^[a-zA-Z_]/.test(e)?e:`_${e}`}getComputedClientName(){return`${this.getOrganizationPascalCase()}Client`}getOrganizationPascalCase(){return`${de(Me(this.config.organization))}`}};function pa({organization:n,namespaceOverride:t}){return t!=null?t:`${de(Me(n))}`}var Xe=class extends Te{constructor({ir:t,config:e}){super(new qe({ir:t,config:e}))}async generate(t){return super.generate(t)}generateSync(t){return super.generateSync(t)}createSnippetGenerator(t){return new Oe({context:t})}};0&&(module.exports={DynamicSnippetsGenerator});
|
|
27
|
+
`,Mt=class{constructor({context:t}){c(this,"context");this.context=t}async generateSnippet({endpoint:t,request:e}){var i;let n=this.buildCodeBlock({endpoint:t,snippet:e});return xo+await n.toStringAsync({namespace:Ot,rootNamespace:Ot,customConfig:(i=this.context.customConfig)!=null?i:{}})}generateSnippetSync({endpoint:t,request:e}){var i;let n=this.buildCodeBlock({endpoint:t,snippet:e});return xo+n.toString({namespace:Ot,rootNamespace:Ot,customConfig:(i=this.context.customConfig)!=null?i:{}})}buildCodeBlock({endpoint:t,snippet:e}){return h.codeblock(n=>{n.writeNodeStatement(this.constructClient({endpoint:t,snippet:e})),n.writeNodeStatement(this.callMethod({endpoint:t,snippet:e}))})}constructClient({endpoint:t,snippet:e}){return h.codeblock(n=>{n.write(`${yo} = `),n.writeNode(this.getRootClientClassInstantiation(this.getConstructorArgs({endpoint:t,snippet:e})))})}callMethod({endpoint:t,snippet:e}){return h.invokeMethod({on:h.codeblock(yo),method:this.getMethod({endpoint:t}),arguments_:this.getMethodArgs({endpoint:t,snippet:e}),multiline:!0})}getConstructorArgs({endpoint:t,snippet:e}){var m;let n=[];t.auth!=null&&(e.auth!=null?n.push(...this.getConstructorAuthArgs({auth:t.auth,values:e.auth})):this.context.errors.add({severity:v.Warning,message:`Auth with ${t.auth.type} configuration is required for this endpoint`}));let i=((m=this.context.ir.environments)==null?void 0:m.environments.type)==="multipleBaseUrls",o=this.getConstructorEnvironmentArg({environment:e.environment,hasMultiUrlEnvironments:i}),f=[];if(!i){let d=this.getConstructorBaseUrlArgs({baseUrl:e.baseURL,environment:e.environment});d.length>0&&f.push(...d)}this.context.errors.scope(V.Headers),this.context.ir.headers!=null&&e.headers!=null&&f.push(...this.getConstructorHeaderArgs({headers:this.context.ir.headers,values:e.headers})),this.context.errors.unscope();let l=[...n];return o!=null&&l.push(o),f.length>0&&l.push({name:"options",assignment:h.TypeLiteral.map({entries:f.map(d=>({key:h.TypeLiteral.string(d.name),value:d.value}))})}),l}getConstructorAuthArgs({auth:t,values:e}){if(e.type!==t.type)return this.addError(this.context.newAuthMismatchError({auth:t,values:e}).message),[];switch(t.type){case"basic":return e.type==="basic"?this.getConstructorBasicAuthArgs({auth:t,values:e}):[];case"bearer":return e.type==="bearer"?this.getConstructorBearerAuthArgs({auth:t,values:e}):[];case"header":return e.type==="header"?this.getConstructorHeaderAuthArgs({auth:t,values:e}):[];case"oauth":return this.addWarning("The PHP SDK doesn't support OAuth client credentials yet"),[];case"inferred":return this.addWarning("The PHP SDK Generator does not support Inferred auth scheme yet"),[];default:A(t)}}addError(t){this.context.errors.add({severity:v.Critical,message:t})}addWarning(t){this.context.errors.add({severity:v.Warning,message:t})}getConstructorBasicAuthArgs({auth:t,values:e}){return[{name:this.context.getPropertyName(t.username),assignment:h.TypeLiteral.string(e.username)},{name:this.context.getPropertyName(t.password),assignment:h.TypeLiteral.string(e.password)}]}getConstructorEnvironmentArg({environment:t,hasMultiUrlEnvironments:e}){if(!e)return;let n=this.context.getEnvironmentsClassReference();if(t!=null){if(this.context.isSingleEnvironmentID(t)){let o=this.context.resolveEnvironmentName(t);if(o==null){this.addWarning(`Environment "${t}" was not found`);return}let f=this.context.getClassName(o);return{name:"environment",assignment:h.TypeLiteral.reference(h.codeblock(l=>{l.writeNode(n),l.write("::"),l.write(f),l.write("()")}))}}if(this.context.isMultiEnvironmentValues(t)){let o=this.resolveMultiEnvironmentName(t);if(o==null){this.addWarning("Invalid multi url environment");return}return o.type==="named"?{name:"environment",assignment:h.TypeLiteral.reference(h.codeblock(f=>{f.writeNode(n),f.write("::"),f.write(o.name),f.write("()")}))}:{name:"environment",assignment:h.TypeLiteral.reference(h.codeblock(f=>{f.writeNode(n),f.write("::custom(");let l=Object.entries(o.urls);l.forEach(([m,d],y)=>{f.write(`${m}: '${d}'`),y<l.length-1&&f.write(", ")}),f.write(")")}))}}}let i=this.getDefaultEnvironmentName();if(i!=null)return{name:"environment",assignment:h.TypeLiteral.reference(h.codeblock(o=>{o.writeNode(n),o.write("::"),o.write(i),o.write("()")}))}}getDefaultEnvironmentName(){var i;if(((i=this.context.ir.environments)==null?void 0:i.environments.type)!=="multipleBaseUrls")return;let t=this.context.ir.environments.environments;if(t.type!=="multipleBaseUrls")return;let e=t.environments;if(e.length===0)return;for(let o of e){let f=this.context.getClassName(o.name);if(f==="Production")return f}let n=e[0];if(n!=null)return this.context.getClassName(n.name)}resolveMultiEnvironmentName(t){let e=Object.keys(t);if(e.length===0)return;let n=e[0];if(n==null)return;let i=t[n];if(i==null)return;if(this.context.isSingleEnvironmentID(i)){let l=this.context.resolveEnvironmentName(i);if(l==null)return;if(e.every(d=>{let y=t[d];return y!=null&&this.context.isSingleEnvironmentID(y)&&y===i}))return{type:"named",name:this.context.getClassName(l)}}let o={},f=!1;for(let l of e){let m=t[l];if(m!=null&&!this.context.isSingleEnvironmentID(m)){f=!0;let d=this.getBaseUrlPropertyName(l);o[d]=m}}if(f&&Object.keys(o).length>0)return{type:"custom",urls:o}}getBaseUrlPropertyName(t){var i;if(((i=this.context.ir.environments)==null?void 0:i.environments.type)!=="multipleBaseUrls")return t;let e=this.context.ir.environments.environments;if(e.type!=="multipleBaseUrls")return t;let n=e.baseUrls.find(o=>o.id===t);return n==null?t:n.name.camelCase.safeName}getConstructorBaseUrlArgs({baseUrl:t,environment:e}){let n=this.getBaseUrlArg({baseUrl:t,environment:e});return h.TypeLiteral.isNop(n)?[]:[{name:"baseUrl",value:n}]}getBaseUrlArg({baseUrl:t,environment:e}){var n;if(t!=null&&e!=null)return this.context.errors.add({severity:v.Critical,message:"Cannot specify both baseUrl and environment options"}),h.TypeLiteral.nop();if(t!=null)return h.TypeLiteral.string(t);if(e!=null){if(this.context.isSingleEnvironmentID(e)){let i=this.context.getEnvironmentClassAccessFromID(e);return i==null?(this.context.errors.add({severity:v.Warning,message:`Environment ${JSON.stringify(e)} was not found`}),h.TypeLiteral.nop()):h.TypeLiteral.reference(h.codeblock(o=>{o.writeNode(i),o.write("->value")}))}if(((n=this.context.ir.environments)==null?void 0:n.environments.type)==="multipleBaseUrls")return h.TypeLiteral.nop()}return h.TypeLiteral.nop()}getConstructorBearerAuthArgs({auth:t,values:e}){return[{name:this.context.getPropertyName(t.token),assignment:h.TypeLiteral.string(e.token)}]}getConstructorHeaderAuthArgs({auth:t,values:e}){return[{name:this.context.getPropertyName(t.header.name.name),assignment:this.context.dynamicTypeLiteralMapper.convert({typeReference:t.header.typeReference,value:e.value})}]}getConstructorHeaderArgs({headers:t,values:e}){let n=[];for(let i of t){let o=this.getConstructorHeaderArg({header:i,value:e.value});o!=null&&n.push({name:this.context.getPropertyName(i.name.name),value:o})}return n}getConstructorHeaderArg({header:t,value:e}){let n=this.context.dynamicTypeLiteralMapper.convert({typeReference:t.typeReference,value:e});if(!h.TypeLiteral.isNop(n))return n}getMethodArgs({endpoint:t,snippet:e}){switch(t.request.type){case"inlined":return this.getMethodArgsForInlinedRequest({request:t.request,snippet:e});case"body":return this.getMethodArgsForBodyRequest({request:t.request,snippet:e});default:A(t.request)}}getMethodArgsForBodyRequest({request:t,snippet:e}){var o,f;let n=[];this.context.errors.scope(V.PathParameters);let i=[...(o=this.context.ir.pathParameters)!=null?o:[],...(f=t.pathParameters)!=null?f:[]];return i.length>0&&n.push(...this.getPathParameters({namedParameters:i,snippet:e}).map(l=>l.value)),this.context.errors.unscope(),this.context.errors.scope(V.RequestBody),t.body!=null&&n.push(this.getBodyRequestArg({body:t.body,value:e.requestBody})),this.context.errors.unscope(),n}getBodyRequestArg({body:t,value:e}){switch(t.type){case"bytes":return this.getBytesBodyRequestArg({value:e});case"typeReference":return this.context.dynamicTypeLiteralMapper.convert({typeReference:t.value,value:e});default:A(t)}}getBytesBodyRequestArg({value:t}){return this.context.errors.add({severity:v.Critical,message:"The PHP SDK doesn't support bytes requests yet"}),h.TypeLiteral.nop()}getMethodArgsForInlinedRequest({request:t,snippet:e}){var m,d,y,x;let n=[],i=(d=(m=this.context.customConfig)==null?void 0:m.inlinePathParameters)!=null?d:!1;this.context.errors.scope(V.PathParameters);let o=[],f=[...(y=this.context.ir.pathParameters)!=null?y:[],...(x=t.pathParameters)!=null?x:[]];f.length>0&&o.push(...this.getPathParameters({namedParameters:f,snippet:e})),this.context.errors.unscope(),this.context.errors.scope(V.RequestBody);let l=this.getFilePropertyInfo({request:t,snippet:e});return this.context.errors.unscope(),this.context.includePathParametersInWrappedRequest({request:t,inlinePathParameters:i})||n.push(...o.map(g=>g.value)),this.context.needsRequestParameter({request:t,inlinePathParameters:i,inlineFileProperties:!0})&&n.push(this.getInlinedRequestArg({request:t,snippet:e,pathParameterFields:this.context.includePathParametersInWrappedRequest({request:t,inlinePathParameters:i})?o:[],filePropertyInfo:l})),n}getFilePropertyInfo({request:t,snippet:e}){return t.body==null||!this.context.isFileUploadRequestBody(t.body)?{fileFields:[],bodyPropertyFields:[]}:this.context.filePropertyMapper.getFilePropertyInfo({body:t.body,value:e.requestBody})}getInlinedRequestArg({request:t,snippet:e,pathParameterFields:n,filePropertyInfo:i}){var y,x,g,T;this.context.errors.scope(V.QueryParameters);let f=this.context.associateQueryParametersByWireValue({parameters:(y=t.queryParameters)!=null?y:[],values:(x=e.queryParameters)!=null?x:{}}).map(b=>({name:this.context.getPropertyName(b.name.name),value:this.context.dynamicTypeLiteralMapper.convert(b)}));this.context.errors.unscope(),this.context.errors.scope(V.Headers);let m=this.context.associateByWireValue({parameters:(g=t.headers)!=null?g:[],values:(T=e.headers)!=null?T:{}}).map(b=>({name:this.context.getPropertyName(b.name.name),value:this.context.dynamicTypeLiteralMapper.convert(b)}));this.context.errors.unscope(),this.context.errors.scope(V.RequestBody);let d=t.body!=null?this.getInlinedRequestBodyConstructorFields({body:t.body,value:e.requestBody,filePropertyInfo:i}):[];return this.context.errors.unscope(),h.TypeLiteral.class_({reference:h.classReference({name:this.context.getClassName(t.declaration.name),namespace:this.context.getRequestNamespace(t.declaration.fernFilepath)}),fields:[...n,...f,...m,...d]})}getInlinedRequestBodyConstructorFields({body:t,value:e,filePropertyInfo:n}){switch(t.type){case"properties":return this.getInlinedRequestBodyPropertyConstructorFields({parameters:t.value,value:e});case"referenced":return[this.getReferencedRequestBodyPropertyConstructorField({body:t,value:e})];case"fileUpload":return this.getFileUploadRequestBodyConstructorFields({filePropertyInfo:n});default:A(t)}}getFileUploadRequestBodyConstructorFields({filePropertyInfo:t}){return[...t.fileFields,...t.bodyPropertyFields]}getReferencedRequestBodyPropertyConstructorField({body:t,value:e}){return{name:this.context.getPropertyName(t.bodyKey),value:this.getReferencedRequestBodyPropertyTypeLiteral({body:t.bodyType,value:e})}}getReferencedRequestBodyPropertyTypeLiteral({body:t,value:e}){switch(t.type){case"bytes":return this.getBytesBodyRequestArg({value:e});case"typeReference":return this.context.dynamicTypeLiteralMapper.convert({typeReference:t.value,value:e});default:A(t)}}getInlinedRequestBodyPropertyConstructorFields({parameters:t,value:e}){var o;let n=[],i=this.context.associateByWireValue({parameters:t,values:(o=this.context.getRecord(e))!=null?o:{}});for(let f of i)n.push({name:this.context.getPropertyName(f.name.name),value:this.context.dynamicTypeLiteralMapper.convert(f)});return n}getPathParameters({namedParameters:t,snippet:e}){var o;let n=[],i=this.context.associateByWireValue({parameters:t,values:(o=e.pathParameters)!=null?o:{}});for(let f of i)n.push({name:this.context.getPropertyName(f.name.name),value:this.context.dynamicTypeLiteralMapper.convert(f)});return n}getMethod({endpoint:t}){return t.declaration.fernFilepath.allParts.length>0?`${t.declaration.fernFilepath.allParts.map(e=>this.context.getPropertyName(e)).join("->")}->${this.context.getMethodName(t.declaration.name)}`:this.context.getMethodName(t.declaration.name)}getRootClientClassInstantiation(t){return h.instantiateClass({classReference:h.classReference({name:this.context.getRootClientClassName(),namespace:this.context.rootNamespace}),arguments_:t,multiline:!0})}};var sr=class extends Ke{constructor({ir:t,config:e}){super(new Ut({ir:t,config:e}))}async generate(t){return super.generate(t)}generateSync(t){return super.generateSync(t)}createSnippetGenerator(t){return new Mt({context:t})}};0&&(module.exports={DynamicSnippetsGenerator});
|
|
21
28
|
/*! Bundled license information:
|
|
22
29
|
|
|
23
30
|
@esbuild-plugins/node-globals-polyfill/Buffer.js:
|
|
@@ -39,3 +46,4 @@ lodash-es/lodash.js:
|
|
|
39
46
|
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
40
47
|
*)
|
|
41
48
|
*/
|
|
49
|
+
//# sourceMappingURL=DynamicSnippetsGenerator.cjs.map
|