eth-graph-query 2.0.15 → 2.0.20

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/README.md CHANGED
@@ -1,146 +1,135 @@
1
- <h1>
2
- eth-graph-query
3
- </h1>
1
+ # eth-graph-query
4
2
 
5
- Simple package for creating query to [the GraphQL](https://thegraph.com/).
3
+ A lightweight and flexible library for building [The Graph (GraphQL)](https://thegraph.com/) queries using simple JSON objects. Eliminate the need for complex string concatenation and maintain type-safe queries.
4
+
5
+ [![npm version](https://img.shields.io/npm/v/eth-graph-query.svg)](https://www.npmjs.com/package/eth-graph-query)
6
+ [![license](https://img.shields.io/npm/l/eth-graph-query.svg)](https://github.com/phamhongphuc1999/eth-graph-query/blob/main/LICENSE)
6
7
 
7
8
  ---
8
9
 
9
- ### Installation
10
+ ## 🚀 Features
10
11
 
11
- ```shell
12
- npm install eth-graph-query
12
+ - **JSON to GraphQL**: Convert nested JSON structures into valid GraphQL query strings.
13
+ - **Multiple Collections**: Query multiple collections in a single HTTP request.
14
+ - **Deep Nesting**: Support for nested collection queries and entity relationships.
15
+ - **Advanced Filtering**: Full support for The Graph's operators (`_gt`, `_in`, `_contains`, etc.) via `$` prefix.
16
+ - **Inline Fragments**: Support for GraphQL inline fragments (`... on Type`).
17
+ - **TypeScript First**: Full type definitions for parameters, filters, and metadata.
18
+ - **Metadata Support**: Easily fetch subgraph metadata (`_meta`).
13
19
 
14
- ```
20
+ ---
15
21
 
16
- - Or if you use `yarn`
22
+ ## 📦 Installation
17
23
 
18
24
  ```shell
25
+ # npm
26
+ npm install eth-graph-query
27
+
28
+ # yarn
19
29
  yarn add eth-graph-query
30
+
31
+ # bun
32
+ bun install eth-graph-query
20
33
  ```
21
34
 
22
35
  ---
23
36
 
24
- ### Usage
37
+ ## 💡 Usage
25
38
 
26
- - The first thing you have to do is to create a query instance
39
+ ### 1. Initialize the Client
27
40
 
28
- ```js
29
- const query = new EthGraphQuery(root);
30
- ```
31
-
32
- - This package has three query options. Simply, you can create a direct string query
41
+ ```typescript
42
+ import { EthGraphQuery } from 'eth-graph-query';
33
43
 
34
- ```js
35
- result = await query.stringQuery(`query query {
36
- collection1(first: 10) {
37
- element1
38
- element2
39
- }
40
- }`);
44
+ const rootUrl = 'https://api.thegraph.com/subgraphs/name/username/subgraph-name';
45
+ const client = new EthGraphQuery(rootUrl);
41
46
  ```
42
47
 
43
- - More readable, you can create a single json query
48
+ ### 2. Single Collection Query
44
49
 
45
- ```js
46
- const result = await query.query({
47
- collection: 'collection1',
50
+ ```typescript
51
+ const result = await client.query({
52
+ collection: 'users',
48
53
  params: {
49
- elements: ['element1', 'element2'],
54
+ elements: ['id', 'name', 'balance'],
55
+ where: { balance: { $gt: '1000' } },
50
56
  first: 10,
57
+ orderBy: 'balance',
58
+ orderDirection: 'desc',
51
59
  },
52
60
  });
53
61
  ```
54
62
 
55
- - You can create a multiple json queries
63
+ ### 3. Multiple Collections Query
56
64
 
57
- ```js
58
- const result = await query.multipleQuery([
65
+ Fetch data from multiple collections in a single round-trip.
66
+
67
+ ```typescript
68
+ const result = await client.multipleQuery([
59
69
  {
60
- collection: 'collection1',
61
- params: {
62
- elements: ['element11', 'element12'],
63
- },
70
+ collection: 'tokens',
71
+ params: { elements: ['id', 'symbol'], first: 5 },
64
72
  },
65
73
  {
66
- collection: 'collection2',
67
- params: {
68
- elements: ['element21', 'element22'],
69
- },
74
+ collection: 'factories',
75
+ params: { elements: ['id', 'poolCount'] },
70
76
  },
71
77
  ]);
72
78
  ```
73
79
 
74
- - You can create a complex query
80
+ ### 4. Advanced Nested Query & Filters
75
81
 
76
- ```js
77
- const result = await query.multipleQuery([
78
- {
79
- collection: 'collection1',
80
- params: {
81
- elements: ['element11', 'element12'],
82
- where: { element11: 'abc' },
83
- },
84
- },
85
- {
86
- collection: 'collection2',
87
- params: {
88
- elements: [
89
- 'element21',
90
- {
91
- collection: 'collection3',
92
- params: {
93
- elements: ['element31'],
94
- where: {
95
- id: { $in: ['123'] },
96
- token_: { setId: { $in: ['1', 2, true] } },
97
- element31: 'element31',
98
- },
99
- first: 50,
82
+ Build complex queries with nested collections and operators.
83
+
84
+ ```typescript
85
+ const result = await client.query({
86
+ collection: 'pools',
87
+ params: {
88
+ elements: [
89
+ 'id',
90
+ 'token0',
91
+ {
92
+ collection: 'swaps',
93
+ params: {
94
+ elements: ['amount0', 'amount1', 'timestamp'],
95
+ where: {
96
+ amount0: { $gt: 0 },
97
+ timestamp: { $gte: 1672531200 },
100
98
  },
99
+ first: 50,
101
100
  },
102
- ],
103
- where: {
104
- element21: '123',
105
- collection3: { element31: '123' },
106
101
  },
107
- inlineFragments: [
108
- {
109
- collection: 'BridgeDepositTransaction',
110
- params: { elements: ['id', 'l1Token'] },
111
- },
112
- {
113
- collection: 'NameSignalTransaction',
114
- params: { elements: ['id', 'timestamp'] },
115
- },
116
- ],
102
+ ],
103
+ where: {
104
+ id: { $in: ['0x123...', '0x456...'] },
117
105
  },
118
106
  },
119
- ]);
107
+ });
120
108
  ```
121
109
 
122
110
  ---
123
111
 
124
- ### API
112
+ ## 📘 API Reference
125
113
 
126
- Read the [API Docs](https://github.com/phamhongphuc1999/eth-graph-query/blob/main/documents/api.md), you also read my [examples](https://github.com/phamhongphuc1999/eth-graph-query/blob/main/examples)
114
+ Documentation for all functions and types can be found in the [API Docs](https://github.com/phamhongphuc1999/eth-graph-query/blob/main/documents/api.md).
127
115
 
128
116
  ---
129
117
 
130
- ### For developer
118
+ ## 🛠 For Developers
131
119
 
132
- - Run example
120
+ ### Run Tests
133
121
 
134
122
  ```shell
135
- npm run example example/file-name
123
+ npm run test
136
124
  ```
137
125
 
138
- - Run test
126
+ ---
139
127
 
140
- ```shell
141
- npm run test
142
- ```
128
+ ## 📜 License
129
+
130
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
143
131
 
144
- ### Reference
132
+ ## 🔗 References
145
133
 
146
- - https://spec.graphql.org
134
+ - [The Graph Documentation](https://thegraph.com/docs/)
135
+ - [GraphQL Specification](https://spec.graphql.org)
@@ -3,12 +3,65 @@ export declare const defaultHeader: {
3
3
  Accept: string;
4
4
  'Content-Type': string;
5
5
  };
6
+ /**
7
+ * Base class for handling API requests using axios.
8
+ * Provides protected methods for common HTTP verbs.
9
+ */
6
10
  export declare class ApiQuery {
11
+ /** The root URL for all API requests. */
7
12
  root: string;
13
+ /** Axios configuration used for all requests. */
8
14
  config: AxiosRequestConfig;
15
+ /**
16
+ * Initializes a new instance of the ApiQuery class.
17
+ * @param rootUrl - The base URL for the API.
18
+ * @param config - Optional axios configuration.
19
+ */
9
20
  constructor(rootUrl: string, config?: AxiosRequestConfig);
21
+ /**
22
+ * Performs an API request.
23
+ * @template T - The expected response type.
24
+ * @param method - The HTTP method to use.
25
+ * @param url - The relative URL for the request.
26
+ * @param data - The request payload (for POST, PUT).
27
+ * @param config - Optional axios configuration to override defaults.
28
+ * @returns A promise that resolves to the response data.
29
+ */
30
+ private request;
31
+ /**
32
+ * Performs a GET request.
33
+ * @template T - The expected response type.
34
+ * @param url - The relative URL for the request.
35
+ * @param config - Optional axios configuration to override defaults.
36
+ * @returns A promise that resolves to the response data.
37
+ */
10
38
  protected get<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>;
39
+ /**
40
+ * Performs a POST request.
41
+ * @template B - The request body type.
42
+ * @template T - The expected response type.
43
+ * @param url - The relative URL for the request.
44
+ * @param data - The request payload.
45
+ * @param config - Optional axios configuration to override defaults.
46
+ * @returns A promise that resolves to the response data.
47
+ */
11
48
  protected post<B = any, T = any>(url: string, data?: B, config?: AxiosRequestConfig): Promise<T>;
49
+ /**
50
+ * Performs a PUT request.
51
+ * @template B - The request body type.
52
+ * @template T - The expected response type.
53
+ * @param url - The relative URL for the request.
54
+ * @param data - The request payload.
55
+ * @param config - Optional axios configuration to override defaults.
56
+ * @returns A promise that resolves to the response data.
57
+ */
12
58
  protected put<B = any, T = any>(url: string, data?: B, config?: AxiosRequestConfig): Promise<T>;
59
+ /**
60
+ * Performs a DELETE request.
61
+ * @template T - The expected response type.
62
+ * @param url - The relative URL for the request.
63
+ * @param config - Optional axios configuration to override defaults.
64
+ * @returns A promise that resolves to the response data.
65
+ */
13
66
  protected del<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>;
14
67
  }
@@ -1,34 +1,41 @@
1
1
  import { AxiosRequestConfig } from 'axios';
2
2
  import { ApiQuery } from './api-query';
3
3
  import { GraphObject, Metadata } from './type';
4
+ /**
5
+ * Main class for performing queries against The Graph protocols.
6
+ * Extends ApiQuery to handle HTTP communication.
7
+ */
4
8
  export declare class EthGraphQuery extends ApiQuery {
9
+ /** The name of the GraphQL query, used in makeFullQuery. */
5
10
  queryName: string;
6
11
  /**
7
- * The constructor for create a query instance.
8
- * @param {string} rootUrl The url leading to the graph
9
- * @param {AxiosRequestConfig | undefined} config Config for base axios
12
+ * Initializes a new EthGraphQuery instance.
13
+ * @param rootUrl - The endpoint URL of the subgraph.
14
+ * @param config - Optional axios configuration for custom headers or timeouts.
10
15
  */
11
16
  constructor(rootUrl: string, config?: AxiosRequestConfig);
12
17
  /**
13
- * Given query string, returns the data respective with it.
14
- * @param {string} query A query string containing all data you want to fetch
15
- * @returns The data respective with the query string
18
+ * Executes a raw GraphQL query string.
19
+ * @template T - The expected return type of the data.
20
+ * @param data - The raw GraphQL query string.
21
+ * @returns A promise resolving to the query result.
22
+ * @throws Error if the response contains any GraphQL errors.
16
23
  */
17
24
  stringQuery<T = any>(data: string): Promise<T>;
18
25
  /**
19
- * Create a query to a particular collection, returns the data respective with the query data.
20
- * @param {GraphObject} data An data for create query, contains two elements:
21
- * 1. collection: string - collection name
22
- * 2. params: GraphParams | undefined - If it is defined, it create a query to the collection
23
- * @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
24
- * @returns The data respective with the query data
26
+ * Executes a single collection query using a JSON configuration.
27
+ * @template T - The expected return type of the data.
28
+ * @param data - The configuration for the collection query.
29
+ * @param metadata - Optional metadata fields to include in the query.
30
+ * @returns A promise resolving to the fetched data.
25
31
  */
26
32
  query<T = any>(data: GraphObject, metadata?: Metadata): Promise<T>;
27
33
  /**
28
- * Create a query to many collections, returns the data respective with the query data.
29
- * @param {Array<GraphObject>} data An array contain data to query to many collections
30
- * @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
31
- * @returns The data respective with the query data
34
+ * Executes multiple collection queries in a single request using JSON configurations.
35
+ * @template T - The expected return type of the data.
36
+ * @param data - An array of query configurations.
37
+ * @param metadata - Optional metadata fields to include in the query.
38
+ * @returns A promise resolving to the merged results of all queries.
32
39
  */
33
40
  multipleQuery<T = any>(data: Array<GraphObject>, metadata?: Metadata): Promise<T>;
34
41
  }
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
- "use strict";var qe=Object.defineProperty;var Qe=(e,t,n)=>t in e?qe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var D=(e,t,n)=>(Qe(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function Ee(e,t){return function(){return e.apply(t,arguments)}}const{toString:Je}=Object.prototype,{getPrototypeOf:te}=Object,M=(e=>t=>{const n=Je.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),R=e=>(e=e.toLowerCase(),t=>M(t)===e),q=e=>t=>typeof t===e,{isArray:F}=Array,C=q("undefined");function ze(e){return e!==null&&!C(e)&&e.constructor!==null&&!C(e.constructor)&&g(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Se=R("ArrayBuffer");function Ve(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Se(e.buffer),t}const We=q("string"),g=q("function"),ge=q("number"),Q=e=>e!==null&&typeof e=="object",Ke=e=>e===!0||e===!1,L=e=>{if(M(e)!=="object")return!1;const t=te(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Ge=R("Date"),ve=R("File"),Xe=R("Blob"),Ze=R("FileList"),Ye=e=>Q(e)&&g(e.pipe),et=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||g(e.append)&&((t=M(e))==="formdata"||t==="object"&&g(e.toString)&&e.toString()==="[object FormData]"))},tt=R("URLSearchParams"),nt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function B(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),F(e))for(r=0,s=e.length;r<s;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let c;for(r=0;r<i;r++)c=o[r],t.call(null,e[c],c,e)}}function Oe(e,t){t=t.toLowerCase();const n=Object.keys(e);let r=n.length,s;for(;r-- >0;)if(s=n[r],t===s.toLowerCase())return s;return null}const Re=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ae=e=>!C(e)&&e!==Re;function v(){const{caseless:e}=Ae(this)&&this||{},t={},n=(r,s)=>{const o=e&&Oe(t,s)||s;L(t[o])&&L(r)?t[o]=v(t[o],r):L(r)?t[o]=v({},r):F(r)?t[o]=r.slice():t[o]=r};for(let r=0,s=arguments.length;r<s;r++)arguments[r]&&B(arguments[r],n);return t}const rt=(e,t,n,{allOwnKeys:r}={})=>(B(t,(s,o)=>{n&&g(s)?e[o]=Ee(s,n):e[o]=s},{allOwnKeys:r}),e),st=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),ot=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},it=(e,t,n,r)=>{let s,o,i;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),o=s.length;o-- >0;)i=s[o],(!r||r(i,e,t))&&!c[i]&&(t[i]=e[i],c[i]=!0);e=n!==!1&&te(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},at=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},ct=e=>{if(!e)return null;if(F(e))return e;let t=e.length;if(!ge(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},lt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&te(Uint8Array)),ut=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=r.next())&&!s.done;){const o=s.value;t.call(e,o[0],o[1])}},ft=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},dt=R("HTMLFormElement"),ht=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),ae=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),pt=R("RegExp"),Te=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};B(n,(s,o)=>{let i;(i=t(s,o,e))!==!1&&(r[o]=i||s)}),Object.defineProperties(e,r)},mt=e=>{Te(e,(t,n)=>{if(g(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(g(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},yt=(e,t)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return F(e)?r(e):r(String(e).split(t)),n},bt=()=>{},wt=(e,t)=>(e=+e,Number.isFinite(e)?e:t),V="abcdefghijklmnopqrstuvwxyz",ce="0123456789",_e={DIGIT:ce,ALPHA:V,ALPHA_DIGIT:V+V.toUpperCase()+ce},Et=(e=16,t=_e.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function St(e){return!!(e&&g(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const gt=e=>{const t=new Array(10),n=(r,s)=>{if(Q(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[s]=r;const o=F(r)?[]:{};return B(r,(i,c)=>{const d=n(i,s+1);!C(d)&&(o[c]=d)}),t[s]=void 0,o}}return r};return n(e,0)},Ot=R("AsyncFunction"),Rt=e=>e&&(Q(e)||g(e))&&g(e.then)&&g(e.catch),a={isArray:F,isArrayBuffer:Se,isBuffer:ze,isFormData:et,isArrayBufferView:Ve,isString:We,isNumber:ge,isBoolean:Ke,isObject:Q,isPlainObject:L,isUndefined:C,isDate:Ge,isFile:ve,isBlob:Xe,isRegExp:pt,isFunction:g,isStream:Ye,isURLSearchParams:tt,isTypedArray:lt,isFileList:Ze,forEach:B,merge:v,extend:rt,trim:nt,stripBOM:st,inherits:ot,toFlatObject:it,kindOf:M,kindOfTest:R,endsWith:at,toArray:ct,forEachEntry:ut,matchAll:ft,isHTMLForm:dt,hasOwnProperty:ae,hasOwnProp:ae,reduceDescriptors:Te,freezeMethods:mt,toObjectSet:yt,toCamelCase:ht,noop:bt,toFiniteNumber:wt,findKey:Oe,global:Re,isContextDefined:Ae,ALPHABET:_e,generateString:Et,isSpecCompliantForm:St,toJSONObject:gt,isAsyncFn:Ot,isThenable:Rt};function m(e,t,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s)}a.inherits(m,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const Ne=m.prototype,xe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{xe[e]={value:e}});Object.defineProperties(m,xe);Object.defineProperty(Ne,"isAxiosError",{value:!0});m.from=(e,t,n,r,s,o)=>{const i=Object.create(Ne);return a.toFlatObject(e,i,function(d){return d!==Error.prototype},c=>c!=="isAxiosError"),m.call(i,e.message,t,n,r,s),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const At=null;function X(e){return a.isPlainObject(e)||a.isArray(e)}function Fe(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function le(e,t,n){return e?e.concat(t).map(function(s,o){return s=Fe(s),!n&&o?"["+s+"]":s}).join(n?".":""):t}function Tt(e){return a.isArray(e)&&!e.some(X)}const _t=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function J(e,t,n){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(p,w){return!a.isUndefined(w[p])});const r=n.metaTokens,s=n.visitor||u,o=n.dots,i=n.indexes,d=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function f(h){if(h===null)return"";if(a.isDate(h))return h.toISOString();if(!d&&a.isBlob(h))throw new m("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(h)||a.isTypedArray(h)?d&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,p,w){let E=h;if(h&&!w&&typeof h=="object"){if(a.endsWith(p,"{}"))p=r?p:p.slice(0,-2),h=JSON.stringify(h);else if(a.isArray(h)&&Tt(h)||(a.isFileList(h)||a.endsWith(p,"[]"))&&(E=a.toArray(h)))return p=Fe(p),E.forEach(function(_,Me){!(a.isUndefined(_)||_===null)&&t.append(i===!0?le([p],Me,o):i===null?p:p+"[]",f(_))}),!1}return X(h)?!0:(t.append(le(w,p,o),f(h)),!1)}const l=[],b=Object.assign(_t,{defaultVisitor:u,convertValue:f,isVisitable:X});function S(h,p){if(!a.isUndefined(h)){if(l.indexOf(h)!==-1)throw Error("Circular reference detected in "+p.join("."));l.push(h),a.forEach(h,function(E,T){(!(a.isUndefined(E)||E===null)&&s.call(t,E,a.isString(T)?T.trim():T,p,b))===!0&&S(E,p?p.concat(T):[T])}),l.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return S(e),t}function ue(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function ne(e,t){this._pairs=[],e&&J(e,this,t)}const Pe=ne.prototype;Pe.append=function(t,n){this._pairs.push([t,n])};Pe.toString=function(t){const n=t?function(r){return t.call(this,r,ue)}:ue;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function Nt(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function ke(e,t,n){if(!t)return e;const r=n&&n.encode||Nt,s=n&&n.serialize;let o;if(s?o=s(t,n):o=a.isURLSearchParams(t)?t.toString():new ne(t,n).toString(r),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class fe{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Ce={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},xt=typeof URLSearchParams<"u"?URLSearchParams:ne,Ft=typeof FormData<"u"?FormData:null,Pt=typeof Blob<"u"?Blob:null,kt={isBrowser:!0,classes:{URLSearchParams:xt,FormData:Ft,Blob:Pt},protocols:["http","https","file","blob","url","data"]},Be=typeof window<"u"&&typeof document<"u",Ct=(e=>Be&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),Bt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",jt=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Be,hasStandardBrowserEnv:Ct,hasStandardBrowserWebWorkerEnv:Bt},Symbol.toStringTag,{value:"Module"})),O={...jt,...kt};function Dt(e,t){return J(e,new O.classes.URLSearchParams,Object.assign({visitor:function(n,r,s,o){return O.isNode&&a.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function $t(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Lt(e){const t={},n=Object.keys(e);let r;const s=n.length;let o;for(r=0;r<s;r++)o=n[r],t[o]=e[o];return t}function je(e){function t(n,r,s,o){let i=n[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),d=o>=n.length;return i=!i&&a.isArray(s)?s.length:i,d?(a.hasOwnProp(s,i)?s[i]=[s[i],r]:s[i]=r,!c):((!s[i]||!a.isObject(s[i]))&&(s[i]=[]),t(n,r,s[i],o)&&a.isArray(s[i])&&(s[i]=Lt(s[i])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const n={};return a.forEachEntry(e,(r,s)=>{t($t(r),s,n,0)}),n}return null}function Ut(e,t,n){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const re={transitional:Ce,adapter:["xhr","http"],transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=a.isObject(t);if(o&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(je(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return Dt(t,this.formSerializer).toString();if((c=a.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return J(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),Ut(t)):t}],transformResponse:[function(t){const n=this.transitional||re.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(t&&a.isString(t)&&(r&&!this.responseType||s)){const i=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(c){if(i)throw c.name==="SyntaxError"?m.from(c,m.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:O.classes.FormData,Blob:O.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],e=>{re.headers[e]={}});const se=re,Ht=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),It=e=>{const t={};let n,r,s;return e&&e.split(`
2
- `).forEach(function(i){s=i.indexOf(":"),n=i.substring(0,s).trim().toLowerCase(),r=i.substring(s+1).trim(),!(!n||t[n]&&Ht[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},de=Symbol("internals");function P(e){return e&&String(e).trim().toLowerCase()}function U(e){return e===!1||e==null?e:a.isArray(e)?e.map(U):String(e)}function Mt(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const qt=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function W(e,t,n,r,s){if(a.isFunction(r))return r.call(this,t,n);if(s&&(t=n),!!a.isString(t)){if(a.isString(r))return t.indexOf(r)!==-1;if(a.isRegExp(r))return r.test(t)}}function Qt(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Jt(e,t){const n=a.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(s,o,i){return this[r].call(this,t,s,o,i)},configurable:!0})})}class z{constructor(t){t&&this.set(t)}set(t,n,r){const s=this;function o(c,d,f){const u=P(d);if(!u)throw new Error("header name must be a non-empty string");const l=a.findKey(s,u);(!l||s[l]===void 0||f===!0||f===void 0&&s[l]!==!1)&&(s[l||d]=U(c))}const i=(c,d)=>a.forEach(c,(f,u)=>o(f,u,d));return a.isPlainObject(t)||t instanceof this.constructor?i(t,n):a.isString(t)&&(t=t.trim())&&!qt(t)?i(It(t),n):t!=null&&o(n,t,r),this}get(t,n){if(t=P(t),t){const r=a.findKey(this,t);if(r){const s=this[r];if(!n)return s;if(n===!0)return Mt(s);if(a.isFunction(n))return n.call(this,s,r);if(a.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=P(t),t){const r=a.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||W(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let s=!1;function o(i){if(i=P(i),i){const c=a.findKey(r,i);c&&(!n||W(r,r[c],c,n))&&(delete r[c],s=!0)}}return a.isArray(t)?t.forEach(o):o(t),s}clear(t){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!t||W(this,this[o],o,t,!0))&&(delete this[o],s=!0)}return s}normalize(t){const n=this,r={};return a.forEach(this,(s,o)=>{const i=a.findKey(r,o);if(i){n[i]=U(s),delete n[o];return}const c=t?Qt(o):String(o).trim();c!==o&&delete n[o],n[c]=U(s),r[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=t&&a.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[de]=this[de]={accessors:{}}).accessors,s=this.prototype;function o(i){const c=P(i);r[c]||(Jt(s,i),r[c]=!0)}return a.isArray(t)?t.forEach(o):o(t),this}}z.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);a.reduceDescriptors(z.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});a.freezeMethods(z);const A=z;function K(e,t){const n=this||se,r=t||n,s=A.from(r.headers);let o=r.data;return a.forEach(e,function(c){o=c.call(n,o,s.normalize(),t?t.status:void 0)}),s.normalize(),o}function De(e){return!!(e&&e.__CANCEL__)}function j(e,t,n){m.call(this,e??"canceled",m.ERR_CANCELED,t,n),this.name="CanceledError"}a.inherits(j,m,{__CANCEL__:!0});function zt(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new m("Request failed with status code "+n.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const Vt=O.hasStandardBrowserEnv?{write(e,t,n,r,s,o){const i=[e+"="+encodeURIComponent(t)];a.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),a.isString(r)&&i.push("path="+r),a.isString(s)&&i.push("domain="+s),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Wt(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Kt(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function $e(e,t){return e&&!Wt(t)?Kt(e,t):t}const Gt=O.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function s(o){let i=o;return t&&(n.setAttribute("href",i),i=n.href),n.setAttribute("href",i),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=s(window.location.href),function(i){const c=a.isString(i)?s(i):i;return c.protocol===r.protocol&&c.host===r.host}}():function(){return function(){return!0}}();function vt(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Xt(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,o=0,i;return t=t!==void 0?t:1e3,function(d){const f=Date.now(),u=r[o];i||(i=f),n[s]=d,r[s]=f;let l=o,b=0;for(;l!==s;)b+=n[l++],l=l%e;if(s=(s+1)%e,s===o&&(o=(o+1)%e),f-i<t)return;const S=u&&f-u;return S?Math.round(b*1e3/S):void 0}}function he(e,t){let n=0;const r=Xt(50,250);return s=>{const o=s.loaded,i=s.lengthComputable?s.total:void 0,c=o-n,d=r(c),f=o<=i;n=o;const u={loaded:o,total:i,progress:i?o/i:void 0,bytes:c,rate:d||void 0,estimated:d&&i&&f?(i-o)/d:void 0,event:s};u[t?"download":"upload"]=!0,e(u)}}const Zt=typeof XMLHttpRequest<"u",Yt=Zt&&function(e){return new Promise(function(n,r){let s=e.data;const o=A.from(e.headers).normalize();let{responseType:i,withXSRFToken:c}=e,d;function f(){e.cancelToken&&e.cancelToken.unsubscribe(d),e.signal&&e.signal.removeEventListener("abort",d)}let u;if(a.isFormData(s)){if(O.hasStandardBrowserEnv||O.hasStandardBrowserWebWorkerEnv)o.setContentType(!1);else if((u=o.getContentType())!==!1){const[p,...w]=u?u.split(";").map(E=>E.trim()).filter(Boolean):[];o.setContentType([p||"multipart/form-data",...w].join("; "))}}let l=new XMLHttpRequest;if(e.auth){const p=e.auth.username||"",w=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(p+":"+w))}const b=$e(e.baseURL,e.url);l.open(e.method.toUpperCase(),ke(b,e.params,e.paramsSerializer),!0),l.timeout=e.timeout;function S(){if(!l)return;const p=A.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders()),E={data:!i||i==="text"||i==="json"?l.responseText:l.response,status:l.status,statusText:l.statusText,headers:p,config:e,request:l};zt(function(_){n(_),f()},function(_){r(_),f()},E),l=null}if("onloadend"in l?l.onloadend=S:l.onreadystatechange=function(){!l||l.readyState!==4||l.status===0&&!(l.responseURL&&l.responseURL.indexOf("file:")===0)||setTimeout(S)},l.onabort=function(){l&&(r(new m("Request aborted",m.ECONNABORTED,e,l)),l=null)},l.onerror=function(){r(new m("Network Error",m.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let w=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const E=e.transitional||Ce;e.timeoutErrorMessage&&(w=e.timeoutErrorMessage),r(new m(w,E.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,l)),l=null},O.hasStandardBrowserEnv&&(c&&a.isFunction(c)&&(c=c(e)),c||c!==!1&&Gt(b))){const p=e.xsrfHeaderName&&e.xsrfCookieName&&Vt.read(e.xsrfCookieName);p&&o.set(e.xsrfHeaderName,p)}s===void 0&&o.setContentType(null),"setRequestHeader"in l&&a.forEach(o.toJSON(),function(w,E){l.setRequestHeader(E,w)}),a.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),i&&i!=="json"&&(l.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&l.addEventListener("progress",he(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&l.upload&&l.upload.addEventListener("progress",he(e.onUploadProgress)),(e.cancelToken||e.signal)&&(d=p=>{l&&(r(!p||p.type?new j(null,e,l):p),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(d),e.signal&&(e.signal.aborted?d():e.signal.addEventListener("abort",d)));const h=vt(b);if(h&&O.protocols.indexOf(h)===-1){r(new m("Unsupported protocol "+h+":",m.ERR_BAD_REQUEST,e));return}l.send(s||null)})},Z={http:At,xhr:Yt};a.forEach(Z,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const pe=e=>`- ${e}`,en=e=>a.isFunction(e)||e===null||e===!1,Le={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let n,r;const s={};for(let o=0;o<t;o++){n=e[o];let i;if(r=n,!en(n)&&(r=Z[(i=String(n)).toLowerCase()],r===void 0))throw new m(`Unknown adapter '${i}'`);if(r)break;s[i||"#"+o]=r}if(!r){const o=Object.entries(s).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since :
4
- `+o.map(pe).join(`
5
- `):" "+pe(o[0]):"as no adapter specified";throw new m("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return r},adapters:Z};function G(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new j(null,e)}function me(e){return G(e),e.headers=A.from(e.headers),e.data=K.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Le.getAdapter(e.adapter||se.adapter)(e).then(function(r){return G(e),r.data=K.call(e,e.transformResponse,r),r.headers=A.from(r.headers),r},function(r){return De(r)||(G(e),r&&r.response&&(r.response.data=K.call(e,e.transformResponse,r.response),r.response.headers=A.from(r.response.headers))),Promise.reject(r)})}const ye=e=>e instanceof A?{...e}:e;function x(e,t){t=t||{};const n={};function r(f,u,l){return a.isPlainObject(f)&&a.isPlainObject(u)?a.merge.call({caseless:l},f,u):a.isPlainObject(u)?a.merge({},u):a.isArray(u)?u.slice():u}function s(f,u,l){if(a.isUndefined(u)){if(!a.isUndefined(f))return r(void 0,f,l)}else return r(f,u,l)}function o(f,u){if(!a.isUndefined(u))return r(void 0,u)}function i(f,u){if(a.isUndefined(u)){if(!a.isUndefined(f))return r(void 0,f)}else return r(void 0,u)}function c(f,u,l){if(l in t)return r(f,u);if(l in e)return r(void 0,f)}const d={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(f,u)=>s(ye(f),ye(u),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(u){const l=d[u]||s,b=l(e[u],t[u],u);a.isUndefined(b)&&l!==c||(n[u]=b)}),n}const Ue="1.6.8",oe={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{oe[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const be={};oe.transitional=function(t,n,r){function s(o,i){return"[Axios v"+Ue+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(t===!1)throw new m(s(i," has been removed"+(n?" in "+n:"")),m.ERR_DEPRECATED);return n&&!be[i]&&(be[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,c):!0}};function tn(e,t,n){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const o=r[s],i=t[o];if(i){const c=e[o],d=c===void 0||i(c,o,e);if(d!==!0)throw new m("option "+o+" must be "+d,m.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new m("Unknown option "+o,m.ERR_BAD_OPTION)}}const Y={assertOptions:tn,validators:oe},N=Y.validators;class I{constructor(t){this.defaults=t,this.interceptors={request:new fe,response:new fe}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
6
- `+o):r.stack=o}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=x(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&Y.assertOptions(r,{silentJSONParsing:N.transitional(N.boolean),forcedJSONParsing:N.transitional(N.boolean),clarifyTimeoutError:N.transitional(N.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:Y.assertOptions(s,{encode:N.function,serialize:N.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],h=>{delete o[h]}),n.headers=A.concat(i,o);const c=[];let d=!0;this.interceptors.request.forEach(function(p){typeof p.runWhen=="function"&&p.runWhen(n)===!1||(d=d&&p.synchronous,c.unshift(p.fulfilled,p.rejected))});const f=[];this.interceptors.response.forEach(function(p){f.push(p.fulfilled,p.rejected)});let u,l=0,b;if(!d){const h=[me.bind(this),void 0];for(h.unshift.apply(h,c),h.push.apply(h,f),b=h.length,u=Promise.resolve(n);l<b;)u=u.then(h[l++],h[l++]);return u}b=c.length;let S=n;for(l=0;l<b;){const h=c[l++],p=c[l++];try{S=h(S)}catch(w){p.call(this,w);break}}try{u=me.call(this,S)}catch(h){return Promise.reject(h)}for(l=0,b=f.length;l<b;)u=u.then(f[l++],f[l++]);return u}getUri(t){t=x(this.defaults,t);const n=$e(t.baseURL,t.url);return ke(n,t.params,t.paramsSerializer)}}a.forEach(["delete","get","head","options"],function(t){I.prototype[t]=function(n,r){return this.request(x(r||{},{method:t,url:n,data:(r||{}).data}))}});a.forEach(["post","put","patch"],function(t){function n(r){return function(o,i,c){return this.request(x(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}I.prototype[t]=n(),I.prototype[t+"Form"]=n(!0)});const H=I;class ie{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(s=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},t(function(o,i,c){r.reason||(r.reason=new j(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new ie(function(s){t=s}),cancel:t}}}const nn=ie;function rn(e){return function(n){return e.apply(null,n)}}function sn(e){return a.isObject(e)&&e.isAxiosError===!0}const ee={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ee).forEach(([e,t])=>{ee[t]=e});const on=ee;function He(e){const t=new H(e),n=Ee(H.prototype.request,t);return a.extend(n,H.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return He(x(e,s))},n}const y=He(se);y.Axios=H;y.CanceledError=j;y.CancelToken=nn;y.isCancel=De;y.VERSION=Ue;y.toFormData=J;y.AxiosError=m;y.Cancel=y.CanceledError;y.all=function(t){return Promise.all(t)};y.spread=rn;y.isAxiosError=sn;y.mergeConfig=x;y.AxiosHeaders=A;y.formToJSON=e=>je(a.isHTMLForm(e)?new FormData(e):e);y.getAdapter=Le.getAdapter;y.HttpStatusCode=on;y.default=y;const we={Accept:"application/json","Content-Type":"application/json"};function $(e){return e.data}class an{constructor(t,n){D(this,"root");D(this,"config");var r;this.root=t,n?(this.config=n,(r=this.config)!=null&&r.headers||(this.config.headers={}),this.config.headers={...this.config.headers,...we}):this.config={headers:we}}async get(t,n){return await y.get(`${this.root}${t}`,{...n,...this.config}).then($)}async post(t,n,r){return await y.post(`${this.root}${t}`,n,{...r,...this.config}).then($)}async put(t,n,r){return await y.put(`${this.root}${t}`,n,{...r,...this.config}).then($)}async del(t,n){return await y.delete(`${this.root}${t}`,{...n,...this.config}).then($)}}const Ie=["contains","contains_nocase","ends_with","end_with_nocase","starts_with","starts_with_nocase","not_contains","not_contains_nocase","not_ends_with","not_ends_with_nocase","not_starts_with","not_starts_with_nocase","gt","gte","lt","lte","not","in","not_in"];class k{static buildJsonQuery(t){const n=[];for(const r in t)if(t[r]!==void 0)if(t[r]===null&&n.push(`${r}: null`),Array.isArray(t[r])){const s=t[r];n.push(`${r}: [${s.map(o=>`"${o}"`).join(", ")}]`)}else if(typeof t[r]=="string")n.push(`${r}: "${t[r]}"`);else if(typeof t[r]=="object"){const s={},o={},i=t[r];for(const c in i){const d=i[c];if(c.length==1)s[c]=d;else if(c[0]=="$"){const f=c.slice(1);Ie.includes(f)&&(o[`${r}_${f}`]=d)}else s[c]=d}Object.keys(s).length>0&&n.push(`${r}: {${this.buildJsonQuery(s)}}`),Object.keys(o).length>0&&n.push(this.buildJsonQuery(o))}else n.push(`${r}: ${t[r]}`);return n.join(", ")}static buildElements(t){const n=[];for(const r of t)if(typeof r=="string")n.push(r);else{const s=r;n.push(this.buildQuery({collection:s.collection,params:s.params}))}return n}static buildMetadata(t){let n="";const r=[];t.blockQuery&&(t.blockQuery.hash&&r.push(`hash: "${t.blockQuery.hash}"`),t.blockQuery.number&&r.push(`number: ${t.blockQuery.number}`),t.blockQuery.number_gte&&r.push(`number_gte: ${t.blockQuery.number_gte}`));const s=r.join(", ");s.length>0&&(n+=`(block: {${s}})`);const o=[],i=[];if(t.elements){for(const f of t.elements)if(f=="deployment"||f=="hasIndexingErrors"){const u=f.toString();o.includes(u)||o.push(u)}else{const u=f.toString();i.includes(u)||i.push(u)}const c=i.join(" ");c.length>0&&o.push(`block{${c}}`);const d=o.join(" ");d.length>0&&(n+=`{${d}}`)}return n.length>0?`_meta${n}`:""}static _buildInlineFragment(t){var r;let n=["id"];return(r=t.params)!=null&&r.elements&&(n=this.buildElements(t.params.elements)),`... on ${t.collection}{${n.join(" ")}}`}static buildInlineFragments(t){const n=[];for(const r of t)n.push(this._buildInlineFragment(r));return n.join(" ")}static buildQuery(t,n){const r=t.collection,s=t.params,o=[];if((s==null?void 0:s.id)!=null&&o.push(`id: ${s.id}`),s!=null&&s.orderBy&&o.push(`orderBy: ${s.orderBy}`),s!=null&&s.orderDirection&&o.push(`orderDirection: ${s.orderDirection}`),(s==null?void 0:s.first)!=null&&(s.first<0?s.first=0:s.first>1e3&&(s.first=1e3),o.push(`first: ${s.first}`)),(s==null?void 0:s.skip)!=null&&(s.skip<0?s.skip=0:s.skip>5e3&&(s.skip=5e3),o.push(`skip: ${s.skip}`)),s!=null&&s.where){const l=this.buildJsonQuery(s.where);l.length>0&&o.push(`where: {${l}}`)}if(s!=null&&s.block){const l=this.buildJsonQuery(s.block);l.length>0&&o.push(`block: {${l}}`)}const i=o.join(", ");let c=["id"];s!=null&&s.elements&&s.elements.length>0&&(c=this.buildElements(s.elements));let d="";s!=null&&s.inlineFragments&&s.inlineFragments.length>0&&(d=this.buildInlineFragments(s.inlineFragments));let f="";const u=d.length>0?`${c.join(" ")} ${d}`:c.join(" ");if(i.length>0?f=`${r}(${i}) {${u}}`:f=`${r} {${u}}`,n){const l=this.buildMetadata(n);return l.length>0?`${l} ${f}`:f}return f}static buildMultipleQuery(t,n){const r=[];for(const o of t)r.push(this.buildQuery({collection:o.collection,params:o.params}));const s=r.join(" ");if(n){const o=this.buildMetadata(n);return o.length>0?`${o} ${s}`:s}return s}static makeFullQuery(t,n="query"){return`query ${n} {${t}}`}}class cn extends an{constructor(n,r){super(n,r);D(this,"queryName");this.queryName="query"}async stringQuery(n){const r=await this.post("",{query:n});if(r.errors){const s=r;throw new Error(s.errors[0].message)}return r}async query(n,r){const s=n,o=k.buildQuery({collection:s.collection,params:s.params},r);return await this.stringQuery(k.makeFullQuery(o,this.queryName))}async multipleQuery(n,r){const s=k.buildMultipleQuery(n,r);return await this.stringQuery(k.makeFullQuery(s,this.queryName))}}exports.EthGraphQuery=cn;exports.OptionKeys=Ie;exports.QueryBuilder=k;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function Je(t,e){return function(){return t.apply(e,arguments)}}const{toString:yt}=Object.prototype,{getPrototypeOf:we}=Object,{iterator:se,toStringTag:ze}=Symbol,oe=(t=>e=>{const n=yt.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),F=t=>(t=t.toLowerCase(),e=>oe(e)===t),ie=t=>e=>typeof e===t,{isArray:I}=Array,M=ie("undefined");function v(t){return t!==null&&!M(t)&&t.constructor!==null&&!M(t.constructor)&&A(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const ve=F("ArrayBuffer");function bt(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&ve(t.buffer),e}const wt=ie("string"),A=ie("function"),Ve=ie("number"),V=t=>t!==null&&typeof t=="object",gt=t=>t===!0||t===!1,ee=t=>{if(oe(t)!=="object")return!1;const e=we(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(ze in t)&&!(se in t)},Et=t=>{if(!V(t)||v(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},St=F("Date"),Rt=F("File"),Ot=F("Blob"),At=F("FileList"),Tt=t=>V(t)&&A(t.pipe),xt=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||A(t.append)&&((e=oe(t))==="formdata"||e==="object"&&A(t.toString)&&t.toString()==="[object FormData]"))},_t=F("URLSearchParams"),[Ct,Ft,Nt,kt]=["ReadableStream","Request","Response","Headers"].map(F),Pt=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function W(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let r,s;if(typeof t!="object"&&(t=[t]),I(t))for(r=0,s=t.length;r<s;r++)e.call(null,t[r],r,t);else{if(v(t))return;const o=n?Object.getOwnPropertyNames(t):Object.keys(t),i=o.length;let c;for(r=0;r<i;r++)c=o[r],e.call(null,t[c],c,t)}}function We(t,e){if(v(t))return null;e=e.toLowerCase();const n=Object.keys(t);let r=n.length,s;for(;r-- >0;)if(s=n[r],e===s.toLowerCase())return s;return null}const L=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ke=t=>!M(t)&&t!==L;function pe(){const{caseless:t,skipUndefined:e}=Ke(this)&&this||{},n={},r=(s,o)=>{const i=t&&We(n,o)||o;ee(n[i])&&ee(s)?n[i]=pe(n[i],s):ee(s)?n[i]=pe({},s):I(s)?n[i]=s.slice():(!e||!M(s))&&(n[i]=s)};for(let s=0,o=arguments.length;s<o;s++)arguments[s]&&W(arguments[s],r);return n}const Ut=(t,e,n,{allOwnKeys:r}={})=>(W(e,(s,o)=>{n&&A(s)?t[o]=Je(s,n):t[o]=s},{allOwnKeys:r}),t),jt=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Bt=(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},Lt=(t,e,n,r)=>{let s,o,i;const c={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),o=s.length;o-- >0;)i=s[o],(!r||r(i,t,e))&&!c[i]&&(e[i]=t[i],c[i]=!0);t=n!==!1&&we(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},$t=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const r=t.indexOf(e,n);return r!==-1&&r===n},Dt=t=>{if(!t)return null;if(I(t))return t;let e=t.length;if(!Ve(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},qt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&we(Uint8Array)),Mt=(t,e)=>{const r=(t&&t[se]).call(t);let s;for(;(s=r.next())&&!s.done;){const o=s.value;e.call(t,o[0],o[1])}},It=(t,e)=>{let n;const r=[];for(;(n=t.exec(e))!==null;)r.push(n);return r},Ht=F("HTMLFormElement"),Qt=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),Ce=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),Jt=F("RegExp"),Xe=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),r={};W(n,(s,o)=>{let i;(i=e(s,o,t))!==!1&&(r[o]=i||s)}),Object.defineProperties(t,r)},zt=t=>{Xe(t,(e,n)=>{if(A(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=t[n];if(A(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},vt=(t,e)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return I(t)?r(t):r(String(t).split(e)),n},Vt=()=>{},Wt=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function Kt(t){return!!(t&&A(t.append)&&t[ze]==="FormData"&&t[se])}const Xt=t=>{const e=new Array(10),n=(r,s)=>{if(V(r)){if(e.indexOf(r)>=0)return;if(v(r))return r;if(!("toJSON"in r)){e[s]=r;const o=I(r)?[]:{};return W(r,(i,c)=>{const d=n(i,s+1);!M(d)&&(o[c]=d)}),e[s]=void 0,o}}return r};return n(t,0)},Gt=F("AsyncFunction"),Zt=t=>t&&(V(t)||A(t))&&A(t.then)&&A(t.catch),Ge=((t,e)=>t?setImmediate:e?((n,r)=>(L.addEventListener("message",({source:s,data:o})=>{s===L&&o===n&&r.length&&r.shift()()},!1),s=>{r.push(s),L.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",A(L.postMessage)),Yt=typeof queueMicrotask<"u"?queueMicrotask.bind(L):typeof process<"u"&&process.nextTick||Ge,en=t=>t!=null&&A(t[se]),a={isArray:I,isArrayBuffer:ve,isBuffer:v,isFormData:xt,isArrayBufferView:bt,isString:wt,isNumber:Ve,isBoolean:gt,isObject:V,isPlainObject:ee,isEmptyObject:Et,isReadableStream:Ct,isRequest:Ft,isResponse:Nt,isHeaders:kt,isUndefined:M,isDate:St,isFile:Rt,isBlob:Ot,isRegExp:Jt,isFunction:A,isStream:Tt,isURLSearchParams:_t,isTypedArray:qt,isFileList:At,forEach:W,merge:pe,extend:Ut,trim:Pt,stripBOM:jt,inherits:Bt,toFlatObject:Lt,kindOf:oe,kindOfTest:F,endsWith:$t,toArray:Dt,forEachEntry:Mt,matchAll:It,isHTMLForm:Ht,hasOwnProperty:Ce,hasOwnProp:Ce,reduceDescriptors:Xe,freezeMethods:zt,toObjectSet:vt,toCamelCase:Qt,noop:Vt,toFiniteNumber:Wt,findKey:We,global:L,isContextDefined:Ke,isSpecCompliantForm:Kt,toJSONObject:Xt,isAsyncFn:Gt,isThenable:Zt,setImmediate:Ge,asap:Yt,isIterable:en};function y(t,e,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}a.inherits(y,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.status}}});const Ze=y.prototype,Ye={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{Ye[t]={value:t}});Object.defineProperties(y,Ye);Object.defineProperty(Ze,"isAxiosError",{value:!0});y.from=(t,e,n,r,s,o)=>{const i=Object.create(Ze);a.toFlatObject(t,i,function(l){return l!==Error.prototype},u=>u!=="isAxiosError");const c=t&&t.message?t.message:"Error",d=e==null&&t?t.code:e;return y.call(i,c,d,n,r,s),t&&i.cause==null&&Object.defineProperty(i,"cause",{value:t,configurable:!0}),i.name=t&&t.name||"Error",o&&Object.assign(i,o),i};const tn=null;function me(t){return a.isPlainObject(t)||a.isArray(t)}function et(t){return a.endsWith(t,"[]")?t.slice(0,-2):t}function Fe(t,e,n){return t?t.concat(e).map(function(s,o){return s=et(s),!n&&o?"["+s+"]":s}).join(n?".":""):e}function nn(t){return a.isArray(t)&&!t.some(me)}const rn=a.toFlatObject(a,{},null,function(e){return/^is[A-Z]/.test(e)});function ae(t,e,n){if(!a.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,h){return!a.isUndefined(h[m])});const r=n.metaTokens,s=n.visitor||l,o=n.dots,i=n.indexes,d=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(e);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function u(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(a.isBoolean(f))return f.toString();if(!d&&a.isBlob(f))throw new y("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function l(f,m,h){let g=f;if(f&&!h&&typeof f=="object"){if(a.endsWith(m,"{}"))m=r?m:m.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&nn(f)||(a.isFileList(f)||a.endsWith(m,"[]"))&&(g=a.toArray(f)))return m=et(m),g.forEach(function(E,O){!(a.isUndefined(E)||E===null)&&e.append(i===!0?Fe([m],O,o):i===null?m:m+"[]",u(E))}),!1}return me(f)?!0:(e.append(Fe(h,m,o),u(f)),!1)}const p=[],b=Object.assign(rn,{defaultVisitor:l,convertValue:u,isVisitable:me});function S(f,m){if(!a.isUndefined(f)){if(p.indexOf(f)!==-1)throw Error("Circular reference detected in "+m.join("."));p.push(f),a.forEach(f,function(g,x){(!(a.isUndefined(g)||g===null)&&s.call(e,g,a.isString(x)?x.trim():x,m,b))===!0&&S(g,m?m.concat(x):[x])}),p.pop()}}if(!a.isObject(t))throw new TypeError("data must be an object");return S(t),e}function Ne(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function ge(t,e){this._pairs=[],t&&ae(t,this,e)}const tt=ge.prototype;tt.append=function(e,n){this._pairs.push([e,n])};tt.toString=function(e){const n=e?function(r){return e.call(this,r,Ne)}:Ne;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function sn(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function nt(t,e,n){if(!e)return t;const r=n&&n.encode||sn;a.isFunction(n)&&(n={serialize:n});const s=n&&n.serialize;let o;if(s?o=s(e,n):o=a.isURLSearchParams(e)?e.toString():new ge(e,n).toString(r),o){const i=t.indexOf("#");i!==-1&&(t=t.slice(0,i)),t+=(t.indexOf("?")===-1?"?":"&")+o}return t}class ke{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){a.forEach(this.handlers,function(r){r!==null&&e(r)})}}const rt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},on=typeof URLSearchParams<"u"?URLSearchParams:ge,an=typeof FormData<"u"?FormData:null,cn=typeof Blob<"u"?Blob:null,ln={isBrowser:!0,classes:{URLSearchParams:on,FormData:an,Blob:cn},protocols:["http","https","file","blob","url","data"]},Ee=typeof window<"u"&&typeof document<"u",ye=typeof navigator=="object"&&navigator||void 0,un=Ee&&(!ye||["ReactNative","NativeScript","NS"].indexOf(ye.product)<0),fn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",dn=Ee&&window.location.href||"http://localhost",hn=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ee,hasStandardBrowserEnv:un,hasStandardBrowserWebWorkerEnv:fn,navigator:ye,origin:dn},Symbol.toStringTag,{value:"Module"})),R={...hn,...ln};function pn(t,e){return ae(t,new R.classes.URLSearchParams,{visitor:function(n,r,s,o){return R.isNode&&a.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...e})}function mn(t){return a.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function yn(t){const e={},n=Object.keys(t);let r;const s=n.length;let o;for(r=0;r<s;r++)o=n[r],e[o]=t[o];return e}function st(t){function e(n,r,s,o){let i=n[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),d=o>=n.length;return i=!i&&a.isArray(s)?s.length:i,d?(a.hasOwnProp(s,i)?s[i]=[s[i],r]:s[i]=r,!c):((!s[i]||!a.isObject(s[i]))&&(s[i]=[]),e(n,r,s[i],o)&&a.isArray(s[i])&&(s[i]=yn(s[i])),!c)}if(a.isFormData(t)&&a.isFunction(t.entries)){const n={};return a.forEachEntry(t,(r,s)=>{e(mn(r),s,n,0)}),n}return null}function bn(t,e,n){if(a.isString(t))try{return(e||JSON.parse)(t),a.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(t)}const K={transitional:rt,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=a.isObject(e);if(o&&a.isHTMLForm(e)&&(e=new FormData(e)),a.isFormData(e))return s?JSON.stringify(st(e)):e;if(a.isArrayBuffer(e)||a.isBuffer(e)||a.isStream(e)||a.isFile(e)||a.isBlob(e)||a.isReadableStream(e))return e;if(a.isArrayBufferView(e))return e.buffer;if(a.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let c;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return pn(e,this.formSerializer).toString();if((c=a.isFileList(e))||r.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return ae(c?{"files[]":e}:e,d&&new d,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),bn(e)):e}],transformResponse:[function(e){const n=this.transitional||K.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(e)||a.isReadableStream(e))return e;if(e&&a.isString(e)&&(r&&!this.responseType||s)){const i=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(e,this.parseReviver)}catch(c){if(i)throw c.name==="SyntaxError"?y.from(c,y.ERR_BAD_RESPONSE,this,null,this.response):c}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:R.classes.FormData,Blob:R.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],t=>{K.headers[t]={}});const wn=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),gn=t=>{const e={};let n,r,s;return t&&t.split(`
2
+ `).forEach(function(i){s=i.indexOf(":"),n=i.substring(0,s).trim().toLowerCase(),r=i.substring(s+1).trim(),!(!n||e[n]&&wn[n])&&(n==="set-cookie"?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e},Pe=Symbol("internals");function J(t){return t&&String(t).trim().toLowerCase()}function te(t){return t===!1||t==null?t:a.isArray(t)?t.map(te):String(t)}function En(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(t);)e[r[1]]=r[2];return e}const Sn=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function fe(t,e,n,r,s){if(a.isFunction(r))return r.call(this,e,n);if(s&&(e=n),!!a.isString(e)){if(a.isString(r))return e.indexOf(r)!==-1;if(a.isRegExp(r))return r.test(e)}}function Rn(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,r)=>n.toUpperCase()+r)}function On(t,e){const n=a.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(s,o,i){return this[r].call(this,e,s,o,i)},configurable:!0})})}let T=class{constructor(e){e&&this.set(e)}set(e,n,r){const s=this;function o(c,d,u){const l=J(d);if(!l)throw new Error("header name must be a non-empty string");const p=a.findKey(s,l);(!p||s[p]===void 0||u===!0||u===void 0&&s[p]!==!1)&&(s[p||d]=te(c))}const i=(c,d)=>a.forEach(c,(u,l)=>o(u,l,d));if(a.isPlainObject(e)||e instanceof this.constructor)i(e,n);else if(a.isString(e)&&(e=e.trim())&&!Sn(e))i(gn(e),n);else if(a.isObject(e)&&a.isIterable(e)){let c={},d,u;for(const l of e){if(!a.isArray(l))throw TypeError("Object iterator must return a key-value pair");c[u=l[0]]=(d=c[u])?a.isArray(d)?[...d,l[1]]:[d,l[1]]:l[1]}i(c,n)}else e!=null&&o(n,e,r);return this}get(e,n){if(e=J(e),e){const r=a.findKey(this,e);if(r){const s=this[r];if(!n)return s;if(n===!0)return En(s);if(a.isFunction(n))return n.call(this,s,r);if(a.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=J(e),e){const r=a.findKey(this,e);return!!(r&&this[r]!==void 0&&(!n||fe(this,this[r],r,n)))}return!1}delete(e,n){const r=this;let s=!1;function o(i){if(i=J(i),i){const c=a.findKey(r,i);c&&(!n||fe(r,r[c],c,n))&&(delete r[c],s=!0)}}return a.isArray(e)?e.forEach(o):o(e),s}clear(e){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!e||fe(this,this[o],o,e,!0))&&(delete this[o],s=!0)}return s}normalize(e){const n=this,r={};return a.forEach(this,(s,o)=>{const i=a.findKey(r,o);if(i){n[i]=te(s),delete n[o];return}const c=e?Rn(o):String(o).trim();c!==o&&delete n[o],n[c]=te(s),r[c]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=e&&a.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(`
3
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const r=new this(e);return n.forEach(s=>r.set(s)),r}static accessor(e){const r=(this[Pe]=this[Pe]={accessors:{}}).accessors,s=this.prototype;function o(i){const c=J(i);r[c]||(On(s,i),r[c]=!0)}return a.isArray(e)?e.forEach(o):o(e),this}};T.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);a.reduceDescriptors(T.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(r){this[n]=r}}});a.freezeMethods(T);function de(t,e){const n=this||K,r=e||n,s=T.from(r.headers);let o=r.data;return a.forEach(t,function(c){o=c.call(n,o,s.normalize(),e?e.status:void 0)}),s.normalize(),o}function ot(t){return!!(t&&t.__CANCEL__)}function H(t,e,n){y.call(this,t??"canceled",y.ERR_CANCELED,e,n),this.name="CanceledError"}a.inherits(H,y,{__CANCEL__:!0});function it(t,e,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?t(n):e(new y("Request failed with status code "+n.status,[y.ERR_BAD_REQUEST,y.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function An(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function Tn(t,e){t=t||10;const n=new Array(t),r=new Array(t);let s=0,o=0,i;return e=e!==void 0?e:1e3,function(d){const u=Date.now(),l=r[o];i||(i=u),n[s]=d,r[s]=u;let p=o,b=0;for(;p!==s;)b+=n[p++],p=p%t;if(s=(s+1)%t,s===o&&(o=(o+1)%t),u-i<e)return;const S=l&&u-l;return S?Math.round(b*1e3/S):void 0}}function xn(t,e){let n=0,r=1e3/e,s,o;const i=(u,l=Date.now())=>{n=l,s=null,o&&(clearTimeout(o),o=null),t(...u)};return[(...u)=>{const l=Date.now(),p=l-n;p>=r?i(u,l):(s=u,o||(o=setTimeout(()=>{o=null,i(s)},r-p)))},()=>s&&i(s)]}const re=(t,e,n=3)=>{let r=0;const s=Tn(50,250);return xn(o=>{const i=o.loaded,c=o.lengthComputable?o.total:void 0,d=i-r,u=s(d),l=i<=c;r=i;const p={loaded:i,total:c,progress:c?i/c:void 0,bytes:d,rate:u||void 0,estimated:u&&c&&l?(c-i)/u:void 0,event:o,lengthComputable:c!=null,[e?"download":"upload"]:!0};t(p)},n)},Ue=(t,e)=>{const n=t!=null;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},je=t=>(...e)=>a.asap(()=>t(...e)),_n=R.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,R.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(R.origin),R.navigator&&/(msie|trident)/i.test(R.navigator.userAgent)):()=>!0,Cn=R.hasStandardBrowserEnv?{write(t,e,n,r,s,o,i){if(typeof document>"u")return;const c=[`${t}=${encodeURIComponent(e)}`];a.isNumber(n)&&c.push(`expires=${new Date(n).toUTCString()}`),a.isString(r)&&c.push(`path=${r}`),a.isString(s)&&c.push(`domain=${s}`),o===!0&&c.push("secure"),a.isString(i)&&c.push(`SameSite=${i}`),document.cookie=c.join("; ")},read(t){if(typeof document>"u")return null;const e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function Fn(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Nn(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function at(t,e,n){let r=!Fn(e);return t&&(r||n==!1)?Nn(t,e):e}const Be=t=>t instanceof T?{...t}:t;function D(t,e){e=e||{};const n={};function r(u,l,p,b){return a.isPlainObject(u)&&a.isPlainObject(l)?a.merge.call({caseless:b},u,l):a.isPlainObject(l)?a.merge({},l):a.isArray(l)?l.slice():l}function s(u,l,p,b){if(a.isUndefined(l)){if(!a.isUndefined(u))return r(void 0,u,p,b)}else return r(u,l,p,b)}function o(u,l){if(!a.isUndefined(l))return r(void 0,l)}function i(u,l){if(a.isUndefined(l)){if(!a.isUndefined(u))return r(void 0,u)}else return r(void 0,l)}function c(u,l,p){if(p in e)return r(u,l);if(p in t)return r(void 0,u)}const d={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(u,l,p)=>s(Be(u),Be(l),p,!0)};return a.forEach(Object.keys({...t,...e}),function(l){const p=d[l]||s,b=p(t[l],e[l],l);a.isUndefined(b)&&p!==c||(n[l]=b)}),n}const ct=t=>{const e=D({},t);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:i,auth:c}=e;if(e.headers=i=T.from(i),e.url=nt(at(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),c&&i.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),a.isFormData(n)){if(R.hasStandardBrowserEnv||R.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if(a.isFunction(n.getHeaders)){const d=n.getHeaders(),u=["content-type","content-length"];Object.entries(d).forEach(([l,p])=>{u.includes(l.toLowerCase())&&i.set(l,p)})}}if(R.hasStandardBrowserEnv&&(r&&a.isFunction(r)&&(r=r(e)),r||r!==!1&&_n(e.url))){const d=s&&o&&Cn.read(o);d&&i.set(s,d)}return e},kn=typeof XMLHttpRequest<"u",Pn=kn&&function(t){return new Promise(function(n,r){const s=ct(t);let o=s.data;const i=T.from(s.headers).normalize();let{responseType:c,onUploadProgress:d,onDownloadProgress:u}=s,l,p,b,S,f;function m(){S&&S(),f&&f(),s.cancelToken&&s.cancelToken.unsubscribe(l),s.signal&&s.signal.removeEventListener("abort",l)}let h=new XMLHttpRequest;h.open(s.method.toUpperCase(),s.url,!0),h.timeout=s.timeout;function g(){if(!h)return;const E=T.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),C={data:!c||c==="text"||c==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:E,config:t,request:h};it(function(_){n(_),m()},function(_){r(_),m()},C),h=null}"onloadend"in h?h.onloadend=g:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.indexOf("file:")===0)||setTimeout(g)},h.onabort=function(){h&&(r(new y("Request aborted",y.ECONNABORTED,t,h)),h=null)},h.onerror=function(O){const C=O&&O.message?O.message:"Network Error",j=new y(C,y.ERR_NETWORK,t,h);j.event=O||null,r(j),h=null},h.ontimeout=function(){let O=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const C=s.transitional||rt;s.timeoutErrorMessage&&(O=s.timeoutErrorMessage),r(new y(O,C.clarifyTimeoutError?y.ETIMEDOUT:y.ECONNABORTED,t,h)),h=null},o===void 0&&i.setContentType(null),"setRequestHeader"in h&&a.forEach(i.toJSON(),function(O,C){h.setRequestHeader(C,O)}),a.isUndefined(s.withCredentials)||(h.withCredentials=!!s.withCredentials),c&&c!=="json"&&(h.responseType=s.responseType),u&&([b,f]=re(u,!0),h.addEventListener("progress",b)),d&&h.upload&&([p,S]=re(d),h.upload.addEventListener("progress",p),h.upload.addEventListener("loadend",S)),(s.cancelToken||s.signal)&&(l=E=>{h&&(r(!E||E.type?new H(null,t,h):E),h.abort(),h=null)},s.cancelToken&&s.cancelToken.subscribe(l),s.signal&&(s.signal.aborted?l():s.signal.addEventListener("abort",l)));const x=An(s.url);if(x&&R.protocols.indexOf(x)===-1){r(new y("Unsupported protocol "+x+":",y.ERR_BAD_REQUEST,t));return}h.send(o||null)})},Un=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let r=new AbortController,s;const o=function(u){if(!s){s=!0,c();const l=u instanceof Error?u:this.reason;r.abort(l instanceof y?l:new H(l instanceof Error?l.message:l))}};let i=e&&setTimeout(()=>{i=null,o(new y(`timeout ${e} of ms exceeded`,y.ETIMEDOUT))},e);const c=()=>{t&&(i&&clearTimeout(i),i=null,t.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),t=null)};t.forEach(u=>u.addEventListener("abort",o));const{signal:d}=r;return d.unsubscribe=()=>a.asap(c),d}},jn=function*(t,e){let n=t.byteLength;if(n<e){yield t;return}let r=0,s;for(;r<n;)s=r+e,yield t.slice(r,s),r=s},Bn=async function*(t,e){for await(const n of Ln(t))yield*jn(n,e)},Ln=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}const e=t.getReader();try{for(;;){const{done:n,value:r}=await e.read();if(n)break;yield r}}finally{await e.cancel()}},Le=(t,e,n,r)=>{const s=Bn(t,e);let o=0,i,c=d=>{i||(i=!0,r&&r(d))};return new ReadableStream({async pull(d){try{const{done:u,value:l}=await s.next();if(u){c(),d.close();return}let p=l.byteLength;if(n){let b=o+=p;n(b)}d.enqueue(new Uint8Array(l))}catch(u){throw c(u),u}},cancel(d){return c(d),s.return()}},{highWaterMark:2})},$e=64*1024,{isFunction:Y}=a,$n=(({Request:t,Response:e})=>({Request:t,Response:e}))(a.global),{ReadableStream:De,TextEncoder:qe}=a.global,Me=(t,...e)=>{try{return!!t(...e)}catch{return!1}},Dn=t=>{t=a.merge.call({skipUndefined:!0},$n,t);const{fetch:e,Request:n,Response:r}=t,s=e?Y(e):typeof fetch=="function",o=Y(n),i=Y(r);if(!s)return!1;const c=s&&Y(De),d=s&&(typeof qe=="function"?(f=>m=>f.encode(m))(new qe):async f=>new Uint8Array(await new n(f).arrayBuffer())),u=o&&c&&Me(()=>{let f=!1;const m=new n(R.origin,{body:new De,method:"POST",get duplex(){return f=!0,"half"}}).headers.has("Content-Type");return f&&!m}),l=i&&c&&Me(()=>a.isReadableStream(new r("").body)),p={stream:l&&(f=>f.body)};s&&["text","arrayBuffer","blob","formData","stream"].forEach(f=>{!p[f]&&(p[f]=(m,h)=>{let g=m&&m[f];if(g)return g.call(m);throw new y(`Response type '${f}' is not supported`,y.ERR_NOT_SUPPORT,h)})});const b=async f=>{if(f==null)return 0;if(a.isBlob(f))return f.size;if(a.isSpecCompliantForm(f))return(await new n(R.origin,{method:"POST",body:f}).arrayBuffer()).byteLength;if(a.isArrayBufferView(f)||a.isArrayBuffer(f))return f.byteLength;if(a.isURLSearchParams(f)&&(f=f+""),a.isString(f))return(await d(f)).byteLength},S=async(f,m)=>{const h=a.toFiniteNumber(f.getContentLength());return h??b(m)};return async f=>{let{url:m,method:h,data:g,signal:x,cancelToken:E,timeout:O,onDownloadProgress:C,onUploadProgress:j,responseType:_,headers:le,withCredentials:X="same-origin",fetchOptions:Re}=ct(f),Oe=e||fetch;_=_?(_+"").toLowerCase():"text";let G=Un([x,E&&E.toAbortSignal()],O),Q=null;const B=G&&G.unsubscribe&&(()=>{G.unsubscribe()});let Ae;try{if(j&&u&&h!=="get"&&h!=="head"&&(Ae=await S(le,g))!==0){let U=new n(m,{method:"POST",body:g,duplex:"half"}),q;if(a.isFormData(g)&&(q=U.headers.get("content-type"))&&le.setContentType(q),U.body){const[ue,Z]=Ue(Ae,re(je(j)));g=Le(U.body,$e,ue,Z)}}a.isString(X)||(X=X?"include":"omit");const N=o&&"credentials"in n.prototype,Te={...Re,signal:G,method:h.toUpperCase(),headers:le.normalize().toJSON(),body:g,duplex:"half",credentials:N?X:void 0};Q=o&&new n(m,Te);let P=await(o?Oe(Q,Re):Oe(m,Te));const xe=l&&(_==="stream"||_==="response");if(l&&(C||xe&&B)){const U={};["status","statusText","headers"].forEach(_e=>{U[_e]=P[_e]});const q=a.toFiniteNumber(P.headers.get("content-length")),[ue,Z]=C&&Ue(q,re(je(C),!0))||[];P=new r(Le(P.body,$e,ue,()=>{Z&&Z(),B&&B()}),U)}_=_||"text";let mt=await p[a.findKey(p,_)||"text"](P,f);return!xe&&B&&B(),await new Promise((U,q)=>{it(U,q,{data:mt,headers:T.from(P.headers),status:P.status,statusText:P.statusText,config:f,request:Q})})}catch(N){throw B&&B(),N&&N.name==="TypeError"&&/Load failed|fetch/i.test(N.message)?Object.assign(new y("Network Error",y.ERR_NETWORK,f,Q),{cause:N.cause||N}):y.from(N,N&&N.code,f,Q)}}},qn=new Map,lt=t=>{let e=t&&t.env||{};const{fetch:n,Request:r,Response:s}=e,o=[r,s,n];let i=o.length,c=i,d,u,l=qn;for(;c--;)d=o[c],u=l.get(d),u===void 0&&l.set(d,u=c?new Map:Dn(e)),l=u;return u};lt();const Se={http:tn,xhr:Pn,fetch:{get:lt}};a.forEach(Se,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const Ie=t=>`- ${t}`,Mn=t=>a.isFunction(t)||t===null||t===!1;function In(t,e){t=a.isArray(t)?t:[t];const{length:n}=t;let r,s;const o={};for(let i=0;i<n;i++){r=t[i];let c;if(s=r,!Mn(r)&&(s=Se[(c=String(r)).toLowerCase()],s===void 0))throw new y(`Unknown adapter '${c}'`);if(s&&(a.isFunction(s)||(s=s.get(e))))break;o[c||"#"+i]=s}if(!s){const i=Object.entries(o).map(([d,u])=>`adapter ${d} `+(u===!1?"is not supported by the environment":"is not available in the build"));let c=n?i.length>1?`since :
4
+ `+i.map(Ie).join(`
5
+ `):" "+Ie(i[0]):"as no adapter specified";throw new y("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return s}const ut={getAdapter:In,adapters:Se};function he(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new H(null,t)}function He(t){return he(t),t.headers=T.from(t.headers),t.data=de.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),ut.getAdapter(t.adapter||K.adapter,t)(t).then(function(r){return he(t),r.data=de.call(t,t.transformResponse,r),r.headers=T.from(r.headers),r},function(r){return ot(r)||(he(t),r&&r.response&&(r.response.data=de.call(t,t.transformResponse,r.response),r.response.headers=T.from(r.response.headers))),Promise.reject(r)})}const ft="1.13.2",ce={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{ce[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}});const Qe={};ce.transitional=function(e,n,r){function s(o,i){return"[Axios v"+ft+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(e===!1)throw new y(s(i," has been removed"+(n?" in "+n:"")),y.ERR_DEPRECATED);return n&&!Qe[i]&&(Qe[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(o,i,c):!0}};ce.spelling=function(e){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${e}`),!0)};function Hn(t,e,n){if(typeof t!="object")throw new y("options must be an object",y.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let s=r.length;for(;s-- >0;){const o=r[s],i=e[o];if(i){const c=t[o],d=c===void 0||i(c,o,t);if(d!==!0)throw new y("option "+o+" must be "+d,y.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new y("Unknown option "+o,y.ERR_BAD_OPTION)}}const ne={assertOptions:Hn,validators:ce},k=ne.validators;let $=class{constructor(e){this.defaults=e||{},this.interceptors={request:new ke,response:new ke}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
6
+ `+o):r.stack=o}catch{}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=D(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&ne.assertOptions(r,{silentJSONParsing:k.transitional(k.boolean),forcedJSONParsing:k.transitional(k.boolean),clarifyTimeoutError:k.transitional(k.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:ne.assertOptions(s,{encode:k.function,serialize:k.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ne.assertOptions(n,{baseUrl:k.spelling("baseURL"),withXsrfToken:k.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete o[f]}),n.headers=T.concat(i,o);const c=[];let d=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(n)===!1||(d=d&&m.synchronous,c.unshift(m.fulfilled,m.rejected))});const u=[];this.interceptors.response.forEach(function(m){u.push(m.fulfilled,m.rejected)});let l,p=0,b;if(!d){const f=[He.bind(this),void 0];for(f.unshift(...c),f.push(...u),b=f.length,l=Promise.resolve(n);p<b;)l=l.then(f[p++],f[p++]);return l}b=c.length;let S=n;for(;p<b;){const f=c[p++],m=c[p++];try{S=f(S)}catch(h){m.call(this,h);break}}try{l=He.call(this,S)}catch(f){return Promise.reject(f)}for(p=0,b=u.length;p<b;)l=l.then(u[p++],u[p++]);return l}getUri(e){e=D(this.defaults,e);const n=at(e.baseURL,e.url,e.allowAbsoluteUrls);return nt(n,e.params,e.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(e){$.prototype[e]=function(n,r){return this.request(D(r||{},{method:e,url:n,data:(r||{}).data}))}});a.forEach(["post","put","patch"],function(e){function n(r){return function(o,i,c){return this.request(D(c||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}$.prototype[e]=n(),$.prototype[e+"Form"]=n(!0)});let Qn=class dt{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(s=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},e(function(o,i,c){r.reason||(r.reason=new H(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=r=>{e.abort(r)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new dt(function(s){e=s}),cancel:e}}};function Jn(t){return function(n){return t.apply(null,n)}}function zn(t){return a.isObject(t)&&t.isAxiosError===!0}const be={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(be).forEach(([t,e])=>{be[e]=t});function ht(t){const e=new $(t),n=Je($.prototype.request,e);return a.extend(n,$.prototype,e,{allOwnKeys:!0}),a.extend(n,e,null,{allOwnKeys:!0}),n.create=function(s){return ht(D(t,s))},n}const w=ht(K);w.Axios=$;w.CanceledError=H;w.CancelToken=Qn;w.isCancel=ot;w.VERSION=ft;w.toFormData=ae;w.AxiosError=y;w.Cancel=w.CanceledError;w.all=function(e){return Promise.all(e)};w.spread=Jn;w.isAxiosError=zn;w.mergeConfig=D;w.AxiosHeaders=T;w.formToJSON=t=>st(a.isHTMLForm(t)?new FormData(t):t);w.getAdapter=ut.getAdapter;w.HttpStatusCode=be;w.default=w;const{Axios:er,AxiosError:tr,CanceledError:nr,isCancel:rr,CancelToken:sr,VERSION:or,all:ir,Cancel:ar,isAxiosError:cr,spread:lr,toFormData:ur,AxiosHeaders:fr,HttpStatusCode:dr,formToJSON:hr,getAdapter:pr,mergeConfig:mr}=w,vn={Accept:"application/json","Content-Type":"application/json"};function Vn(t){return t.data}class Wn{root;config;constructor(e,n={}){this.root=e,this.config={...n,headers:{...vn,...n.headers||{}}}}async request(e,n,r,s){const o=`${this.root}${n}`,i={...this.config,...s},c=await(e==="get"||e==="delete"?w[e](o,i):w[e](o,r,i));return Vn(c)}async get(e,n){return this.request("get",e,void 0,n)}async post(e,n,r){return this.request("post",e,n,r)}async put(e,n,r){return this.request("put",e,n,r)}async del(e,n){return this.request("delete",e,void 0,n)}}const pt=["contains","contains_nocase","ends_with","end_with_nocase","starts_with","starts_with_nocase","not_contains","not_contains_nocase","not_ends_with","not_ends_with_nocase","not_starts_with","not_starts_with_nocase","gt","gte","lt","lte","not","in","not_in"],Kn=1e3,Xn=5e3;class z{static buildJsonQuery(e){const n=[];for(const r in e){const s=e[r];if(s!==void 0)if(s===null)n.push(`${r}: null`);else if(Array.isArray(s)){const o=s;n.push(`${r}: [${o.map(i=>typeof i=="string"?`"${i}"`:i).join(", ")}]`)}else if(typeof s=="string")n.push(`${r}: "${s}"`);else if(typeof s=="object"){const o={},i={},c=s;for(const d in c){const u=c[d];if(d.startsWith("$")){const l=d.slice(1);pt.includes(l)?i[`${r}_${l}`]=u:o[d]=u}else o[d]=u}Object.keys(o).length>0&&n.push(`${r}: {${this.buildJsonQuery(o)}}`),Object.keys(i).length>0&&n.push(this.buildJsonQuery(i))}else n.push(`${r}: ${s}`)}return n.join(", ")}static buildElements(e){return e.map(n=>{if(typeof n=="string")return n;const r=n;return this.buildQuery({collection:r.collection,params:r.params})})}static buildMetadata(e){let n="";const r=[];e.blockQuery&&(e.blockQuery.hash&&r.push(`hash: "${e.blockQuery.hash}"`),e.blockQuery.number!==void 0&&r.push(`number: ${e.blockQuery.number}`),e.blockQuery.number_gte!==void 0&&r.push(`number_gte: ${e.blockQuery.number_gte}`));const s=r.join(", ");s.length>0&&(n+=`(block: {${s}})`);const o=[],i=[];if(e.elements){for(const u of e.elements)u==="deployment"||u==="hasIndexingErrors"?o.includes(u)||o.push(u):i.includes(u)||i.push(u);const c=i.join(" ");c.length>0&&o.push(`block{${c}}`);const d=o.join(" ");d.length>0&&(n+=`{${d}}`)}return n.length>0?`_meta${n}`:""}static _buildInlineFragment(e){const n=e.params?.elements?.length?this.buildElements(e.params.elements):["id"];return`... on ${e.collection}{${n.join(" ")}}`}static buildInlineFragments(e){return e.map(n=>this._buildInlineFragment(n)).join(" ")}static buildQuery(e,n){const{collection:r,params:s}=e,o=[];if(s?.id!==void 0&&o.push(`id: ${s.id}`),s?.orderBy&&o.push(`orderBy: ${s.orderBy}`),s?.orderDirection&&o.push(`orderDirection: ${s.orderDirection}`),s?.first!==void 0){const l=Math.max(0,Math.min(s.first,Kn));o.push(`first: ${l}`)}if(s?.skip!==void 0){const l=Math.max(0,Math.min(s.skip,Xn));o.push(`skip: ${l}`)}if(s?.where){const l=this.buildJsonQuery(s.where);l.length>0&&o.push(`where: {${l}}`)}if(s?.block){const l=this.buildJsonQuery(s.block);l.length>0&&o.push(`block: {${l}}`)}const i=o.length>0?`(${o.join(", ")})`:"";let c=["id"];s?.elements&&s.elements.length>0&&(c=this.buildElements(s.elements));let d="";s?.inlineFragments&&s.inlineFragments.length>0&&(d=` ${this.buildInlineFragments(s.inlineFragments)}`);const u=`${r}${i} {${c.join(" ")}${d}}`;if(n){const l=this.buildMetadata(n);return l?`${l} ${u}`:u}return u}static buildMultipleQuery(e,n){const s=e.map(o=>this.buildQuery({collection:o.collection,params:o.params})).join(" ");if(n){const o=this.buildMetadata(n);return o?`${o} ${s}`:s}return s}static makeFullQuery(e,n="query"){return`query ${n} {${e}}`}}class Gn extends Wn{queryName;constructor(e,n){super(e,n),this.queryName="query"}async stringQuery(e){const n=await this.post("",{query:e});if(n&&typeof n=="object"&&"errors"in n){const s=n.errors.map(o=>o.message).join("; ");throw new Error(`GraphQL Error: ${s}`)}return n.data}async query(e,n){const r=z.buildQuery(e,n);return this.stringQuery(z.makeFullQuery(r,this.queryName))}async multipleQuery(e,n){const r=z.buildMultipleQuery(e,n);return this.stringQuery(z.makeFullQuery(r,this.queryName))}}exports.EthGraphQuery=Gn;exports.OptionKeys=pt;exports.QueryBuilder=z;
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { EthGraphQuery } from './eth-graph-query.js';
1
+ export { EthGraphQuery } from './eth-graph-query';
2
2
  export { QueryBuilder } from './query-builder';
3
3
  export * from './type';