@xylabs/axios 4.13.20 → 4.13.22
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 +207 -4
- package/dist/neutral/index.mjs +1 -1
- package/dist/neutral/index.mjs.map +1 -1
- package/package.json +3 -3
- package/src/AxiosJson.ts +1 -1
package/README.md
CHANGED
|
@@ -12,13 +12,216 @@
|
|
|
12
12
|
[![snyk-badge][]][snyk-link]
|
|
13
13
|
[![socket-badge][]][socket-link]
|
|
14
14
|
|
|
15
|
-
Version: 4.13.19
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
Base functionality used throughout XY Labs TypeScript/JavaScript libraries
|
|
18
17
|
|
|
19
|
-
##
|
|
18
|
+
## Reference
|
|
19
|
+
|
|
20
|
+
**@xylabs/axios**
|
|
21
|
+
|
|
22
|
+
***
|
|
23
|
+
|
|
24
|
+
## Classes
|
|
25
|
+
|
|
26
|
+
- [AxiosJson](#classes/AxiosJson)
|
|
27
|
+
- [AxiosJsonUncompressed](#classes/AxiosJsonUncompressed)
|
|
28
|
+
|
|
29
|
+
## Type Aliases
|
|
30
|
+
|
|
31
|
+
- [RawAxiosJsonRequestConfig](#type-aliases/RawAxiosJsonRequestConfig)
|
|
32
|
+
- [RawAxiosJsonRequestUncompressedConfig](#type-aliases/RawAxiosJsonRequestUncompressedConfig)
|
|
33
|
+
|
|
34
|
+
## Variables
|
|
35
|
+
|
|
36
|
+
- [axios](#variables/axios)
|
|
37
|
+
- [axiosUncompressed](#variables/axiosUncompressed)
|
|
38
|
+
|
|
39
|
+
### classes
|
|
40
|
+
|
|
41
|
+
### <a id="AxiosJson"></a>AxiosJson
|
|
42
|
+
|
|
43
|
+
[**@xylabs/axios**](#../README)
|
|
44
|
+
|
|
45
|
+
***
|
|
46
|
+
|
|
47
|
+
## Extends
|
|
48
|
+
|
|
49
|
+
- `Axios`
|
|
50
|
+
|
|
51
|
+
## Constructors
|
|
52
|
+
|
|
53
|
+
### Constructor
|
|
54
|
+
|
|
55
|
+
```ts
|
|
56
|
+
new AxiosJson(config?): AxiosJson;
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Parameters
|
|
60
|
+
|
|
61
|
+
#### config?
|
|
62
|
+
|
|
63
|
+
[`RawAxiosJsonRequestConfig`](#../type-aliases/RawAxiosJsonRequestConfig)\<`any`\>
|
|
64
|
+
|
|
65
|
+
### Returns
|
|
66
|
+
|
|
67
|
+
`AxiosJson`
|
|
68
|
+
|
|
69
|
+
### Overrides
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
Axios.constructor
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Properties
|
|
76
|
+
|
|
77
|
+
### defaultLogger?
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
static optional defaultLogger: Logger;
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Methods
|
|
84
|
+
|
|
85
|
+
### finalPath()
|
|
86
|
+
|
|
87
|
+
```ts
|
|
88
|
+
static finalPath(response): any;
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Parameters
|
|
92
|
+
|
|
93
|
+
#### response
|
|
94
|
+
|
|
95
|
+
`AxiosResponse`
|
|
96
|
+
|
|
97
|
+
### Returns
|
|
98
|
+
|
|
99
|
+
`any`
|
|
100
|
+
|
|
101
|
+
### <a id="AxiosJsonUncompressed"></a>AxiosJsonUncompressed
|
|
102
|
+
|
|
103
|
+
[**@xylabs/axios**](#../README)
|
|
104
|
+
|
|
105
|
+
***
|
|
106
|
+
|
|
107
|
+
## Extends
|
|
108
|
+
|
|
109
|
+
- `Axios`
|
|
110
|
+
|
|
111
|
+
## Constructors
|
|
112
|
+
|
|
113
|
+
### Constructor
|
|
114
|
+
|
|
115
|
+
```ts
|
|
116
|
+
new AxiosJsonUncompressed(config?): AxiosJsonUncompressed;
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### Parameters
|
|
120
|
+
|
|
121
|
+
#### config?
|
|
122
|
+
|
|
123
|
+
[`RawAxiosJsonRequestUncompressedConfig`](#../type-aliases/RawAxiosJsonRequestUncompressedConfig)\<`any`\>
|
|
124
|
+
|
|
125
|
+
### Returns
|
|
126
|
+
|
|
127
|
+
`AxiosJsonUncompressed`
|
|
128
|
+
|
|
129
|
+
### Overrides
|
|
130
|
+
|
|
131
|
+
```ts
|
|
132
|
+
Axios.constructor
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Properties
|
|
136
|
+
|
|
137
|
+
### defaultLogger?
|
|
138
|
+
|
|
139
|
+
```ts
|
|
140
|
+
static optional defaultLogger: Logger;
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## Methods
|
|
144
|
+
|
|
145
|
+
### finalPath()
|
|
146
|
+
|
|
147
|
+
```ts
|
|
148
|
+
static finalPath(response): any;
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Parameters
|
|
152
|
+
|
|
153
|
+
#### response
|
|
154
|
+
|
|
155
|
+
`AxiosResponse`
|
|
156
|
+
|
|
157
|
+
### Returns
|
|
158
|
+
|
|
159
|
+
`any`
|
|
160
|
+
|
|
161
|
+
### type-aliases
|
|
162
|
+
|
|
163
|
+
### <a id="RawAxiosJsonRequestConfig"></a>RawAxiosJsonRequestConfig
|
|
164
|
+
|
|
165
|
+
[**@xylabs/axios**](#../README)
|
|
166
|
+
|
|
167
|
+
***
|
|
168
|
+
|
|
169
|
+
```ts
|
|
170
|
+
type RawAxiosJsonRequestConfig<D> = RawAxiosRequestConfig<D> & object;
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
## Type declaration
|
|
174
|
+
|
|
175
|
+
### compressLength?
|
|
176
|
+
|
|
177
|
+
```ts
|
|
178
|
+
optional compressLength: number;
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## Type Parameters
|
|
182
|
+
|
|
183
|
+
### D
|
|
184
|
+
|
|
185
|
+
`D` = `any`
|
|
186
|
+
|
|
187
|
+
### <a id="RawAxiosJsonRequestUncompressedConfig"></a>RawAxiosJsonRequestUncompressedConfig
|
|
188
|
+
|
|
189
|
+
[**@xylabs/axios**](#../README)
|
|
190
|
+
|
|
191
|
+
***
|
|
192
|
+
|
|
193
|
+
```ts
|
|
194
|
+
type RawAxiosJsonRequestUncompressedConfig<D> = RawAxiosRequestConfig<D>;
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Type Parameters
|
|
198
|
+
|
|
199
|
+
### D
|
|
200
|
+
|
|
201
|
+
`D` = `any`
|
|
202
|
+
|
|
203
|
+
### variables
|
|
204
|
+
|
|
205
|
+
### <a id="axios"></a>axios
|
|
206
|
+
|
|
207
|
+
[**@xylabs/axios**](#../README)
|
|
208
|
+
|
|
209
|
+
***
|
|
210
|
+
|
|
211
|
+
```ts
|
|
212
|
+
const axios: AxiosJson;
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### <a id="axiosUncompressed"></a>axiosUncompressed
|
|
216
|
+
|
|
217
|
+
[**@xylabs/axios**](#../README)
|
|
218
|
+
|
|
219
|
+
***
|
|
220
|
+
|
|
221
|
+
```ts
|
|
222
|
+
const axiosUncompressed: AxiosJsonUncompressed;
|
|
223
|
+
```
|
|
20
224
|
|
|
21
|
-
Coming Soon!
|
|
22
225
|
|
|
23
226
|
Part of [sdk-js](https://www.npmjs.com/package/@xyo-network/sdk-js)
|
|
24
227
|
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -25,7 +25,7 @@ var AxiosJson = class _AxiosJson extends Axios {
|
|
|
25
25
|
transformRequest: (data, headers2) => {
|
|
26
26
|
const json = JSON.stringify(data);
|
|
27
27
|
if (headers2 !== void 0 && data && json.length > (compressLength ?? 1024)) {
|
|
28
|
-
headers2
|
|
28
|
+
headers2.set("Content-Encoding", "gzip");
|
|
29
29
|
return gzip(json).buffer;
|
|
30
30
|
}
|
|
31
31
|
return json;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/AxiosJson.ts","../../src/AxiosJsonUncompressed.ts","../../src/index.ts"],"sourcesContent":["import type { Logger } from '@xylabs/logger'\nimport type { AxiosResponse, RawAxiosRequestConfig } from 'axios'\nimport { Axios, AxiosHeaders } from 'axios'\nimport { gzip } from 'pako'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type RawAxiosJsonRequestConfig<D = any> = RawAxiosRequestConfig<D> & { compressLength?: number }\n\nexport class AxiosJson extends Axios {\n static defaultLogger?: Logger\n\n constructor(config?: RawAxiosJsonRequestConfig) {\n super(AxiosJson.axiosConfig(config))\n }\n\n static finalPath(response: AxiosResponse) {\n if (response.request.path) {\n // nodejs\n return response.request.path.split('/').pop()\n } else if (response.request.responseURL) {\n // browser\n return response.request.responseURL.split('/').pop()\n } else {\n this.defaultLogger?.warn('Failed to get final path from response')\n }\n }\n\n private static axiosConfig({\n compressLength, headers, ...config\n}: RawAxiosJsonRequestConfig = {}): RawAxiosJsonRequestConfig {\n return {\n headers: this.buildHeaders(headers),\n transformRequest: (data, headers) => {\n const json = JSON.stringify(data)\n if (headers !== undefined && data && json.length > (compressLength ?? 1024)) {\n headers
|
|
1
|
+
{"version":3,"sources":["../../src/AxiosJson.ts","../../src/AxiosJsonUncompressed.ts","../../src/index.ts"],"sourcesContent":["import type { Logger } from '@xylabs/logger'\nimport type { AxiosResponse, RawAxiosRequestConfig } from 'axios'\nimport { Axios, AxiosHeaders } from 'axios'\nimport { gzip } from 'pako'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type RawAxiosJsonRequestConfig<D = any> = RawAxiosRequestConfig<D> & { compressLength?: number }\n\nexport class AxiosJson extends Axios {\n static defaultLogger?: Logger\n\n constructor(config?: RawAxiosJsonRequestConfig) {\n super(AxiosJson.axiosConfig(config))\n }\n\n static finalPath(response: AxiosResponse) {\n if (response.request.path) {\n // nodejs\n return response.request.path.split('/').pop()\n } else if (response.request.responseURL) {\n // browser\n return response.request.responseURL.split('/').pop()\n } else {\n this.defaultLogger?.warn('Failed to get final path from response')\n }\n }\n\n private static axiosConfig({\n compressLength, headers, ...config\n}: RawAxiosJsonRequestConfig = {}): RawAxiosJsonRequestConfig {\n return {\n headers: this.buildHeaders(headers),\n transformRequest: (data, headers) => {\n const json = JSON.stringify(data)\n if (headers !== undefined && data && json.length > (compressLength ?? 1024)) {\n headers.set('Content-Encoding', 'gzip')\n return gzip(json).buffer\n }\n return json\n },\n transformResponse: (data) => {\n try {\n return JSON.parse(data)\n } catch {\n return null\n }\n },\n ...config,\n }\n }\n\n private static buildHeaders(headers: RawAxiosJsonRequestConfig['headers']) {\n const axiosHeaders = new AxiosHeaders()\n axiosHeaders.set('Accept', 'application/json, text/plain, *.*')\n axiosHeaders.set('Content-Type', 'application/json')\n for (const [key, value] of Object.entries(headers ?? {})) axiosHeaders.set(key, value)\n return axiosHeaders\n }\n}\n","import type { Logger } from '@xylabs/logger'\nimport type { AxiosResponse, RawAxiosRequestConfig } from 'axios'\nimport { Axios, AxiosHeaders } from 'axios'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type RawAxiosJsonRequestUncompressedConfig<D = any> = RawAxiosRequestConfig<D>\n\nexport class AxiosJsonUncompressed extends Axios {\n static defaultLogger?: Logger\n\n constructor(config?: RawAxiosJsonRequestUncompressedConfig) {\n super(AxiosJsonUncompressed.axiosConfig(config))\n }\n\n static finalPath(response: AxiosResponse) {\n if (response.request.path) {\n // nodejs\n return response.request.path.split('/').pop()\n } else if (response.request.responseURL) {\n // browser\n return response.request.responseURL.split('/').pop()\n } else {\n this.defaultLogger?.warn('Failed to get final path from response')\n }\n }\n\n private static axiosConfig({ headers, ...config }: RawAxiosJsonRequestUncompressedConfig = {}): RawAxiosJsonRequestUncompressedConfig {\n return {\n headers: this.buildHeaders(headers),\n transformRequest: (data) => {\n const json = JSON.stringify(data)\n return JSON.stringify(json)\n },\n transformResponse: (data) => {\n try {\n return JSON.parse(data)\n } catch {\n return null\n }\n },\n ...config,\n }\n }\n\n private static buildHeaders(headers: RawAxiosJsonRequestUncompressedConfig['headers']) {\n const axiosHeaders = new AxiosHeaders()\n axiosHeaders.set('Accept', 'application/json, text/plain, *.*')\n axiosHeaders.set('Content-Type', 'application/json')\n for (const [key, value] of Object.entries(headers ?? {})) axiosHeaders.set(key, value)\n return axiosHeaders\n }\n}\n","import { AxiosJson } from './AxiosJson.ts'\nimport { AxiosJsonUncompressed } from './AxiosJsonUncompressed.ts'\n\nexport * from './AxiosJson.ts'\nexport * from './AxiosJsonUncompressed.ts'\nexport { gzip } from 'pako'\n\nexport const axios = new AxiosJson()\nexport const axiosUncompressed = new AxiosJsonUncompressed()\n"],"mappings":"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","names":["headers","Axios","AxiosHeaders","gzip"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xylabs/axios",
|
|
3
|
-
"version": "4.13.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "4.13.22",
|
|
4
|
+
"description": "Base functionality used throughout XY Labs TypeScript/JavaScript libraries",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"axios",
|
|
7
7
|
"xylabs",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"src"
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@xylabs/logger": "^4.13.
|
|
45
|
+
"@xylabs/logger": "^4.13.22",
|
|
46
46
|
"axios": "^1.10.0",
|
|
47
47
|
"pako": "^2.1.0"
|
|
48
48
|
},
|
package/src/AxiosJson.ts
CHANGED
|
@@ -33,7 +33,7 @@ export class AxiosJson extends Axios {
|
|
|
33
33
|
transformRequest: (data, headers) => {
|
|
34
34
|
const json = JSON.stringify(data)
|
|
35
35
|
if (headers !== undefined && data && json.length > (compressLength ?? 1024)) {
|
|
36
|
-
headers
|
|
36
|
+
headers.set('Content-Encoding', 'gzip')
|
|
37
37
|
return gzip(json).buffer
|
|
38
38
|
}
|
|
39
39
|
return json
|