extra-request 10.1.0 → 10.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -130,6 +130,11 @@ function headers<T extends Record<string, string>>(
130
130
  function host(host: string): IRequestOptionsTransformer
131
131
  ```
132
132
 
133
+ #### hostname
134
+ ```ts
135
+ function hostname(hostname: string): IRequestOptionsTransformer
136
+ ```
137
+
133
138
  #### port
134
139
  ```ts
135
140
  function port(port: number): IRequestOptionsTransformer
@@ -206,7 +211,7 @@ function redirect(redirect: RequestRedirect): IRequestOptionsTransformer
206
211
  function body(body: BodyInit): IRequestOptionsTransformer
207
212
  ```
208
213
 
209
- ####
214
+ #### cache
210
215
  ```ts
211
216
  function cache(cache: RequestCache): IRequestOptionsTransformer
212
217
  ```
@@ -0,0 +1,2 @@
1
+ import { IRequestOptionsTransformer } from "../types.js";
2
+ export declare function hostname(hostname: string): IRequestOptionsTransformer;
@@ -0,0 +1,10 @@
1
+ import { setHostname } from 'url-operator';
2
+ export function hostname(hostname) {
3
+ return (options) => {
4
+ return {
5
+ ...options,
6
+ url: setHostname(options.url, hostname)
7
+ };
8
+ };
9
+ }
10
+ //# sourceMappingURL=hostname.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostname.js","sourceRoot":"","sources":["../../src/transformers/hostname.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACvC,OAAO,CAAC,OAAwB,EAAE,EAAE;QAClC,OAAO;YACL,GAAG,OAAO;YACV,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC;SACxC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -7,6 +7,7 @@ export * from './append-header.js';
7
7
  export * from './headers.js';
8
8
  export * from './accept.js';
9
9
  export * from './host.js';
10
+ export * from './hostname.js';
10
11
  export * from './port.js';
11
12
  export * from './pathname.js';
12
13
  export * from './append-pathname.js';
@@ -7,6 +7,7 @@ export * from './append-header.js';
7
7
  export * from './headers.js';
8
8
  export * from './accept.js';
9
9
  export * from './host.js';
10
+ export * from './hostname.js';
10
11
  export * from './port.js';
11
12
  export * from './pathname.js';
12
13
  export * from './append-pathname.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transformers/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AAExB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AAExB,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAE3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AAExC,cAAc,sBAAsB,CAAA;AAEpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAEhC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transformers/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AAExB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AAExB,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAE3B,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AAExC,cAAc,sBAAsB,CAAA;AAEpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAEhC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "extra-request",
3
- "version": "10.1.0",
3
+ "version": "10.2.0",
4
4
  "description": "Utilities for Request",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -70,11 +70,11 @@
70
70
  },
71
71
  "dependencies": {
72
72
  "@blackglory/prelude": "^0.4.0",
73
- "extra-utils": "^5.19.0",
73
+ "extra-utils": "^5.20.0",
74
74
  "js-base64": "^3.7.7",
75
75
  "justypes": "^4.4.1",
76
76
  "papaparse": "^5.5.3",
77
- "url-operator": "^0.3.1"
77
+ "url-operator": "^0.3.2"
78
78
  },
79
79
  "peerDependencies": {
80
80
  "extra-fetch": "^5.0.1"
@@ -0,0 +1,11 @@
1
+ import { IRequestOptions, IRequestOptionsTransformer } from '@src/types.js'
2
+ import { setHostname } from 'url-operator'
3
+
4
+ export function hostname(hostname: string): IRequestOptionsTransformer {
5
+ return (options: IRequestOptions) => {
6
+ return {
7
+ ...options
8
+ , url: setHostname(options.url, hostname)
9
+ }
10
+ }
11
+ }
@@ -10,6 +10,7 @@ export * from './headers.js'
10
10
  export * from './accept.js'
11
11
 
12
12
  export * from './host.js'
13
+ export * from './hostname.js'
13
14
  export * from './port.js'
14
15
  export * from './pathname.js'
15
16
  export * from './append-pathname.js'
package/src/types.ts CHANGED
@@ -1,10 +1,8 @@
1
1
  export type IRequestOptionsTransformer = (options: IRequestOptions) => IRequestOptions
2
2
 
3
- /**
4
- * Q: Why not use `RequestInit` interface?
5
- * A: Because `RequestInit` has no `url` property,
6
- * and its optional properties are not suitable for our cases.
7
- */
3
+ // 为什么不使用`RequestInit`接口:
4
+ // - `RequestInit`没有`url`属性.
5
+ // - `RequestInit`的类型更不明确, 例如`headers`的类型是`HeadersInit`, 不便处理.
8
6
  export interface IRequestOptions {
9
7
  url: URL
10
8
  headers: Headers