@ahoo-wang/fetcher-decorator 0.9.6 → 0.9.8
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 +45 -0
- package/README.zh-CN.md +45 -0
- package/dist/apiDecorator.d.ts +4 -3
- package/dist/apiDecorator.d.ts.map +1 -1
- package/dist/fetcherCapable.d.ts +21 -0
- package/dist/fetcherCapable.d.ts.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +118 -113
- package/dist/index.umd.js +2 -2
- package/dist/requestExecutor.d.ts.map +1 -1
- package/dist/resultExtractor.d.ts +19 -1
- package/dist/resultExtractor.d.ts.map +1 -1
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -284,6 +284,51 @@ class UserService {
|
|
|
284
284
|
}
|
|
285
285
|
```
|
|
286
286
|
|
|
287
|
+
### Result Extractors
|
|
288
|
+
|
|
289
|
+
Result extractors are used to process and extract data from different types of responses or results in the application.
|
|
290
|
+
They allow you to customize how the response from an HTTP request is processed and returned.
|
|
291
|
+
|
|
292
|
+
#### Available Result Extractors
|
|
293
|
+
|
|
294
|
+
- **ExchangeResultExtractor**: Returns the original FetchExchange object
|
|
295
|
+
- **ResponseResultExtractor**: Returns the response object from FetchExchange (default)
|
|
296
|
+
- **JsonResultExtractor**: Parses the response content as JSON format
|
|
297
|
+
- **TextResultExtractor**: Parses the response content as text format
|
|
298
|
+
- **ServerSentEventStreamResultExtractor**: Extracts server-sent event stream from FetchExchange
|
|
299
|
+
- **CommandResultEventStreamResultExtractor**: Extracts command result event stream from FetchExchange
|
|
300
|
+
|
|
301
|
+
#### Using Result Extractors
|
|
302
|
+
|
|
303
|
+
You can specify a result extractor at the class level or method level:
|
|
304
|
+
|
|
305
|
+
```typescript
|
|
306
|
+
import { ResultExtractors } from '@ahoo-wang/fetcher-decorator';
|
|
307
|
+
|
|
308
|
+
@api('/users', { resultExtractor: ResultExtractors.Json })
|
|
309
|
+
class UserService {
|
|
310
|
+
// Uses class-level JSON result extractor
|
|
311
|
+
@get('/{id}')
|
|
312
|
+
getUser(@path() id: number): Promise<User> {
|
|
313
|
+
throw new Error('Implementation will be generated automatically.');
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
// Overrides with ServerSentEventStream result extractor
|
|
317
|
+
@get('/events', { resultExtractor: ResultExtractors.ServerSentEventStream })
|
|
318
|
+
getUserEvents(): Promise<ServerSentEventStream> {
|
|
319
|
+
throw new Error('Implementation will be generated automatically.');
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
// Uses CommandResultEventStream result extractor for command handling
|
|
323
|
+
@post('/commands', {
|
|
324
|
+
resultExtractor: ResultExtractors.CommandResultEventStream,
|
|
325
|
+
})
|
|
326
|
+
executeCommand(@body() command: Command): Promise<CommandResultEventStream> {
|
|
327
|
+
throw new Error('Implementation will be generated automatically.');
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
```
|
|
331
|
+
|
|
287
332
|
## 🧪 Testing
|
|
288
333
|
|
|
289
334
|
```bash
|
package/README.zh-CN.md
CHANGED
|
@@ -277,6 +277,51 @@ class UserService {
|
|
|
277
277
|
}
|
|
278
278
|
```
|
|
279
279
|
|
|
280
|
+
### 结果提取器
|
|
281
|
+
|
|
282
|
+
结果提取器用于处理和提取应用程序中不同类型响应或结果的数据。
|
|
283
|
+
它们允许您自定义如何处理和返回 HTTP 请求的响应。
|
|
284
|
+
|
|
285
|
+
#### 可用的结果提取器
|
|
286
|
+
|
|
287
|
+
- **ExchangeResultExtractor**: 返回原始的 FetchExchange 对象
|
|
288
|
+
- **ResponseResultExtractor**: 返回 FetchExchange 中的响应对象(默认)
|
|
289
|
+
- **JsonResultExtractor**: 将响应内容解析为 JSON 格式
|
|
290
|
+
- **TextResultExtractor**: 将响应内容解析为文本格式
|
|
291
|
+
- **ServerSentEventStreamResultExtractor**: 从 FetchExchange 中提取服务器发送事件流
|
|
292
|
+
- **CommandResultEventStreamResultExtractor**: 从 FetchExchange 中提取命令结果事件流
|
|
293
|
+
|
|
294
|
+
#### 使用结果提取器
|
|
295
|
+
|
|
296
|
+
您可以在类级别或方法级别指定结果提取器:
|
|
297
|
+
|
|
298
|
+
```typescript
|
|
299
|
+
import { ResultExtractors } from '@ahoo-wang/fetcher-decorator';
|
|
300
|
+
|
|
301
|
+
@api('/users', { resultExtractor: ResultExtractors.Json })
|
|
302
|
+
class UserService {
|
|
303
|
+
// 使用类级别的 JSON 结果提取器
|
|
304
|
+
@get('/{id}')
|
|
305
|
+
getUser(@path() id: number): Promise<User> {
|
|
306
|
+
throw new Error('实现将自动生成');
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
// 使用 ServerSentEventStream 结果提取器覆盖
|
|
310
|
+
@get('/events', { resultExtractor: ResultExtractors.ServerSentEventStream })
|
|
311
|
+
getUserEvents(): Promise<ServerSentEventStream> {
|
|
312
|
+
throw new Error('实现将自动生成');
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
// 使用 CommandResultEventStream 结果提取器处理命令
|
|
316
|
+
@post('/commands', {
|
|
317
|
+
resultExtractor: ResultExtractors.CommandResultEventStream,
|
|
318
|
+
})
|
|
319
|
+
executeCommand(@body() command: Command): Promise<CommandResultEventStream> {
|
|
320
|
+
throw new Error('实现将自动生成');
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
```
|
|
324
|
+
|
|
280
325
|
## 🧪 测试
|
|
281
326
|
|
|
282
327
|
```bash
|
package/dist/apiDecorator.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { RequestHeaders, RequestHeadersCapable, TimeoutCapable } from '@ahoo-wang/fetcher';
|
|
1
|
+
import { Fetcher, RequestHeaders, RequestHeadersCapable, TimeoutCapable } from '@ahoo-wang/fetcher';
|
|
2
2
|
import { ResultExtractorCapable } from './resultExtractor';
|
|
3
|
+
import { FetcherCapable } from './fetcherCapable';
|
|
3
4
|
/**
|
|
4
5
|
* Metadata for class-level API configuration.
|
|
5
6
|
*
|
|
@@ -7,7 +8,7 @@ import { ResultExtractorCapable } from './resultExtractor';
|
|
|
7
8
|
* These settings will be used as defaults for all endpoints within the class unless overridden
|
|
8
9
|
* at the method level.
|
|
9
10
|
*/
|
|
10
|
-
export interface ApiMetadata extends TimeoutCapable, RequestHeadersCapable, ResultExtractorCapable {
|
|
11
|
+
export interface ApiMetadata extends TimeoutCapable, RequestHeadersCapable, ResultExtractorCapable, FetcherCapable {
|
|
11
12
|
/**
|
|
12
13
|
* Base path for all endpoints in the class.
|
|
13
14
|
*
|
|
@@ -36,7 +37,7 @@ export interface ApiMetadata extends TimeoutCapable, RequestHeadersCapable, Resu
|
|
|
36
37
|
* This allows you to specify which fetcher instance should be used for requests
|
|
37
38
|
* from this API class. The fetcher must be registered with the FetcherRegistrar.
|
|
38
39
|
*/
|
|
39
|
-
fetcher?: string;
|
|
40
|
+
fetcher?: string | Fetcher;
|
|
40
41
|
}
|
|
41
42
|
export declare const API_METADATA_KEY: unique symbol;
|
|
42
43
|
export declare function api(basePath?: string, metadata?: Omit<ApiMetadata, 'basePath'>): <T extends new (...args: any[]) => any>(constructor: T) => T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiDecorator.d.ts","sourceRoot":"","sources":["../src/apiDecorator.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,cAAc,EACf,MAAM,oBAAoB,CAAC;AAI5B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"apiDecorator.d.ts","sourceRoot":"","sources":["../src/apiDecorator.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,cAAc,EACf,MAAM,oBAAoB,CAAC;AAI5B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,WAAW,WAAY,SAAQ,cAAc,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,cAAc;IAChH;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,eAAyB,CAAC;AAwDvD,wBAAgB,GAAG,CACjB,QAAQ,GAAE,MAAW,EACrB,QAAQ,GAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAM,IAE3B,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,aAAa,CAAC,KAAG,CAAC,CAgB3E"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Fetcher } from '@ahoo-wang/fetcher';
|
|
2
|
+
/**
|
|
3
|
+
* Interface that defines a capability for objects that can have a fetcher.
|
|
4
|
+
* This interface is typically used to mark components or objects that can perform fetching operations
|
|
5
|
+
* and may need access to fetcher functionality.
|
|
6
|
+
*/
|
|
7
|
+
export interface FetcherCapable {
|
|
8
|
+
/**
|
|
9
|
+
* Optional fetcher property that can be either a string identifier or a Fetcher instance.
|
|
10
|
+
* When present, this property indicates the fetcher associated with the implementing object.
|
|
11
|
+
*/
|
|
12
|
+
fetcher?: string | Fetcher;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Gets a Fetcher instance based on the provided fetcher parameter.
|
|
16
|
+
*
|
|
17
|
+
* @param fetcher - A string identifier or Fetcher instance to resolve
|
|
18
|
+
* @returns A Fetcher instance if found, undefined otherwise
|
|
19
|
+
*/
|
|
20
|
+
export declare function getFetcher(fetcher?: string | Fetcher): Fetcher | undefined;
|
|
21
|
+
//# sourceMappingURL=fetcherCapable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetcherCapable.d.ts","sourceRoot":"","sources":["../src/fetcherCapable.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,EAAoB,MAAM,oBAAoB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAS1E"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
|
package/dist/index.es.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { HttpMethod as S,
|
|
1
|
+
import { HttpMethod as S, fetcherRegistrar as Le, Fetcher as Qe, fetcher as Ve, mergeRequest as Be, combineURLs as ze } from "@ahoo-wang/fetcher";
|
|
2
|
+
import "@ahoo-wang/fetcher-wow";
|
|
2
3
|
var he = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, ye = {};
|
|
3
4
|
/*! *****************************************************************************
|
|
4
5
|
Copyright (C) Microsoft. All rights reserved.
|
|
@@ -15,7 +16,7 @@ See the Apache Version 2.0 License for specific language governing permissions
|
|
|
15
16
|
and limitations under the License.
|
|
16
17
|
***************************************************************************** */
|
|
17
18
|
var ve;
|
|
18
|
-
function
|
|
19
|
+
function Ze() {
|
|
19
20
|
if (ve) return ye;
|
|
20
21
|
ve = 1;
|
|
21
22
|
var n;
|
|
@@ -63,7 +64,7 @@ function ze() {
|
|
|
63
64
|
} : function(e, t) {
|
|
64
65
|
return e[t];
|
|
65
66
|
}
|
|
66
|
-
}, R = Object.getPrototypeOf(Function), G = typeof Map == "function" && typeof Map.prototype.entries == "function" ? Map :
|
|
67
|
+
}, R = Object.getPrototypeOf(Function), G = typeof Map == "function" && typeof Map.prototype.entries == "function" ? Map : He(), Y = typeof Set == "function" && typeof Set.prototype.entries == "function" ? Set : Ue(), L = typeof WeakMap == "function" ? WeakMap : We(), j = M ? Symbol.for("@reflect-metadata:registry") : void 0, W = Ce(), $ = Ge(W);
|
|
67
68
|
function me(e, t, r, a) {
|
|
68
69
|
if (h(r)) {
|
|
69
70
|
if (!ie(e))
|
|
@@ -141,7 +142,7 @@ function ze() {
|
|
|
141
142
|
if (h(r) || (r = x(r)), !g(t))
|
|
142
143
|
throw new TypeError();
|
|
143
144
|
h(r) || (r = x(r));
|
|
144
|
-
var a =
|
|
145
|
+
var a = F(
|
|
145
146
|
t,
|
|
146
147
|
r,
|
|
147
148
|
/*Create*/
|
|
@@ -180,7 +181,7 @@ function ze() {
|
|
|
180
181
|
return q(l) ? !1 : J(e, l, r);
|
|
181
182
|
}
|
|
182
183
|
function Q(e, t, r) {
|
|
183
|
-
var a =
|
|
184
|
+
var a = F(
|
|
184
185
|
t,
|
|
185
186
|
r,
|
|
186
187
|
/*Create*/
|
|
@@ -197,7 +198,7 @@ function ze() {
|
|
|
197
198
|
return X(e, l, r);
|
|
198
199
|
}
|
|
199
200
|
function K(e, t, r) {
|
|
200
|
-
var a =
|
|
201
|
+
var a = F(
|
|
201
202
|
t,
|
|
202
203
|
r,
|
|
203
204
|
/*Create*/
|
|
@@ -207,7 +208,7 @@ function ze() {
|
|
|
207
208
|
return a.OrdinaryGetOwnMetadata(e, t, r);
|
|
208
209
|
}
|
|
209
210
|
function ee(e, t, r, a) {
|
|
210
|
-
var l =
|
|
211
|
+
var l = F(
|
|
211
212
|
r,
|
|
212
213
|
a,
|
|
213
214
|
/*Create*/
|
|
@@ -224,7 +225,7 @@ function ze() {
|
|
|
224
225
|
return r;
|
|
225
226
|
if (r.length <= 0)
|
|
226
227
|
return l;
|
|
227
|
-
for (var m = new
|
|
228
|
+
for (var m = new Y(), b = [], v = 0, o = r; v < o.length; v++) {
|
|
228
229
|
var u = o[v], s = m.has(u);
|
|
229
230
|
s || (m.add(u), b.push(u));
|
|
230
231
|
}
|
|
@@ -235,7 +236,7 @@ function ze() {
|
|
|
235
236
|
return b;
|
|
236
237
|
}
|
|
237
238
|
function re(e, t) {
|
|
238
|
-
var r =
|
|
239
|
+
var r = F(
|
|
239
240
|
e,
|
|
240
241
|
t,
|
|
241
242
|
/*create*/
|
|
@@ -303,13 +304,13 @@ function ze() {
|
|
|
303
304
|
var r, a, l;
|
|
304
305
|
{
|
|
305
306
|
var m = e.toString;
|
|
306
|
-
if (
|
|
307
|
+
if (N(m)) {
|
|
307
308
|
var a = m.call(e);
|
|
308
309
|
if (!g(a))
|
|
309
310
|
return a;
|
|
310
311
|
}
|
|
311
312
|
var r = e.valueOf;
|
|
312
|
-
if (
|
|
313
|
+
if (N(r)) {
|
|
313
314
|
var a = r.call(e);
|
|
314
315
|
if (!g(a))
|
|
315
316
|
return a;
|
|
@@ -330,7 +331,7 @@ function ze() {
|
|
|
330
331
|
function ie(e) {
|
|
331
332
|
return Array.isArray ? Array.isArray(e) : e instanceof Object ? e instanceof Array : Object.prototype.toString.call(e) === "[object Array]";
|
|
332
333
|
}
|
|
333
|
-
function
|
|
334
|
+
function N(e) {
|
|
334
335
|
return typeof e == "function";
|
|
335
336
|
}
|
|
336
337
|
function oe(e) {
|
|
@@ -352,14 +353,14 @@ function ze() {
|
|
|
352
353
|
function ue(e, t) {
|
|
353
354
|
var r = e[t];
|
|
354
355
|
if (r != null) {
|
|
355
|
-
if (!
|
|
356
|
+
if (!N(r))
|
|
356
357
|
throw new TypeError();
|
|
357
358
|
return r;
|
|
358
359
|
}
|
|
359
360
|
}
|
|
360
361
|
function se(e) {
|
|
361
362
|
var t = ue(e, P);
|
|
362
|
-
if (!
|
|
363
|
+
if (!N(t))
|
|
363
364
|
throw new TypeError();
|
|
364
365
|
var r = t.call(e);
|
|
365
366
|
if (!g(r))
|
|
@@ -389,8 +390,8 @@ function ze() {
|
|
|
389
390
|
}
|
|
390
391
|
function qe() {
|
|
391
392
|
var e;
|
|
392
|
-
!h(j) && typeof d.Reflect < "u" && !(j in d.Reflect) && typeof d.Reflect.defineMetadata == "function" && (e =
|
|
393
|
-
var t, r, a, l = new
|
|
393
|
+
!h(j) && typeof d.Reflect < "u" && !(j in d.Reflect) && typeof d.Reflect.defineMetadata == "function" && (e = Fe(d.Reflect));
|
|
394
|
+
var t, r, a, l = new L(), m = {
|
|
394
395
|
registerProvider: b,
|
|
395
396
|
getProvider: o,
|
|
396
397
|
setProvider: s
|
|
@@ -413,7 +414,7 @@ function ze() {
|
|
|
413
414
|
case r === f:
|
|
414
415
|
break;
|
|
415
416
|
default:
|
|
416
|
-
a === void 0 && (a = new
|
|
417
|
+
a === void 0 && (a = new Y()), a.add(f);
|
|
417
418
|
break;
|
|
418
419
|
}
|
|
419
420
|
}
|
|
@@ -470,7 +471,7 @@ function ze() {
|
|
|
470
471
|
}), e;
|
|
471
472
|
}
|
|
472
473
|
function Ge(e) {
|
|
473
|
-
var t = new
|
|
474
|
+
var t = new L(), r = {
|
|
474
475
|
isProviderFor: function(u, s) {
|
|
475
476
|
var f = t.get(u);
|
|
476
477
|
return h(f) ? !1 : f.has(s);
|
|
@@ -481,7 +482,7 @@ function ze() {
|
|
|
481
482
|
OrdinaryOwnMetadataKeys: v,
|
|
482
483
|
OrdinaryDeleteMetadata: o
|
|
483
484
|
};
|
|
484
|
-
return
|
|
485
|
+
return W.registerProvider(r), r;
|
|
485
486
|
function a(u, s, f) {
|
|
486
487
|
var p = t.get(u), w = !1;
|
|
487
488
|
if (h(p)) {
|
|
@@ -539,14 +540,14 @@ function ze() {
|
|
|
539
540
|
var le = ce(_);
|
|
540
541
|
if (!le)
|
|
541
542
|
return f.length = k, f;
|
|
542
|
-
var
|
|
543
|
+
var Ne = fe(le);
|
|
543
544
|
try {
|
|
544
|
-
f[k] =
|
|
545
|
-
} catch (
|
|
545
|
+
f[k] = Ne;
|
|
546
|
+
} catch (Ye) {
|
|
546
547
|
try {
|
|
547
548
|
de(_);
|
|
548
549
|
} finally {
|
|
549
|
-
throw
|
|
550
|
+
throw Ye;
|
|
550
551
|
}
|
|
551
552
|
}
|
|
552
553
|
k++;
|
|
@@ -568,11 +569,11 @@ function ze() {
|
|
|
568
569
|
return !0;
|
|
569
570
|
}
|
|
570
571
|
}
|
|
571
|
-
function
|
|
572
|
-
var t = e.defineMetadata, r = e.hasOwnMetadata, a = e.getOwnMetadata, l = e.getOwnMetadataKeys, m = e.deleteMetadata, b = new
|
|
572
|
+
function Fe(e) {
|
|
573
|
+
var t = e.defineMetadata, r = e.hasOwnMetadata, a = e.getOwnMetadata, l = e.getOwnMetadataKeys, m = e.deleteMetadata, b = new L(), v = {
|
|
573
574
|
isProviderFor: function(o, u) {
|
|
574
575
|
var s = b.get(o);
|
|
575
|
-
return !h(s) && s.has(u) ? !0 : l(o, u).length ? (h(s) && (s = new
|
|
576
|
+
return !h(s) && s.has(u) ? !0 : l(o, u).length ? (h(s) && (s = new Y(), b.set(o, s)), s.add(u), !0) : !1;
|
|
576
577
|
},
|
|
577
578
|
OrdinaryDefineOwnMetadata: t,
|
|
578
579
|
OrdinaryHasOwnMetadata: r,
|
|
@@ -582,17 +583,17 @@ function ze() {
|
|
|
582
583
|
};
|
|
583
584
|
return v;
|
|
584
585
|
}
|
|
585
|
-
function
|
|
586
|
-
var a =
|
|
586
|
+
function F(e, t, r) {
|
|
587
|
+
var a = W.getProvider(e, t);
|
|
587
588
|
if (!h(a))
|
|
588
589
|
return a;
|
|
589
590
|
if (r) {
|
|
590
|
-
if (
|
|
591
|
+
if (W.setProvider(e, t, $))
|
|
591
592
|
return $;
|
|
592
593
|
throw new Error("Illegal state.");
|
|
593
594
|
}
|
|
594
595
|
}
|
|
595
|
-
function
|
|
596
|
+
function He() {
|
|
596
597
|
var e = {}, t = [], r = (
|
|
597
598
|
/** @class */
|
|
598
599
|
(function() {
|
|
@@ -696,7 +697,7 @@ function ze() {
|
|
|
696
697
|
return [v, o];
|
|
697
698
|
}
|
|
698
699
|
}
|
|
699
|
-
function
|
|
700
|
+
function Ue() {
|
|
700
701
|
var e = (
|
|
701
702
|
/** @class */
|
|
702
703
|
(function() {
|
|
@@ -732,7 +733,7 @@ function ze() {
|
|
|
732
733
|
);
|
|
733
734
|
return e;
|
|
734
735
|
}
|
|
735
|
-
function
|
|
736
|
+
function We() {
|
|
736
737
|
var e = 16, t = T.create(), r = a();
|
|
737
738
|
return (
|
|
738
739
|
/** @class */
|
|
@@ -816,7 +817,7 @@ function ze() {
|
|
|
816
817
|
});
|
|
817
818
|
})(n || (n = {})), ye;
|
|
818
819
|
}
|
|
819
|
-
|
|
820
|
+
Ze();
|
|
820
821
|
const we = Symbol("endpoint:metadata");
|
|
821
822
|
function D(n, i = "", c = {}) {
|
|
822
823
|
return function(d, y) {
|
|
@@ -833,63 +834,63 @@ function D(n, i = "", c = {}) {
|
|
|
833
834
|
);
|
|
834
835
|
};
|
|
835
836
|
}
|
|
836
|
-
function
|
|
837
|
+
function pt(n = "", i = {}) {
|
|
837
838
|
return D(S.GET, n, i);
|
|
838
839
|
}
|
|
839
|
-
function
|
|
840
|
+
function wt(n = "", i = {}) {
|
|
840
841
|
return D(S.POST, n, i);
|
|
841
842
|
}
|
|
842
|
-
function
|
|
843
|
+
function mt(n = "", i = {}) {
|
|
843
844
|
return D(S.PUT, n, i);
|
|
844
845
|
}
|
|
845
|
-
function
|
|
846
|
+
function _t(n = "", i = {}) {
|
|
846
847
|
return D(S.DELETE, n, i);
|
|
847
848
|
}
|
|
848
|
-
function
|
|
849
|
+
function Mt(n = "", i = {}) {
|
|
849
850
|
return D(S.PATCH, n, i);
|
|
850
851
|
}
|
|
851
|
-
function
|
|
852
|
+
function gt(n = "", i = {}) {
|
|
852
853
|
return D(S.HEAD, n, i);
|
|
853
854
|
}
|
|
854
|
-
function
|
|
855
|
+
function bt(n = "", i = {}) {
|
|
855
856
|
return D(S.OPTIONS, n, i);
|
|
856
857
|
}
|
|
857
|
-
const
|
|
858
|
-
function
|
|
858
|
+
const H = /* @__PURE__ */ new WeakMap();
|
|
859
|
+
function $e(n) {
|
|
859
860
|
if (typeof n != "function")
|
|
860
861
|
throw new TypeError("Expected a function");
|
|
861
|
-
if (
|
|
862
|
-
return
|
|
862
|
+
if (H.has(n))
|
|
863
|
+
return H.get(n);
|
|
863
864
|
try {
|
|
864
|
-
const i = n.toString().trim(), c =
|
|
865
|
-
if (!
|
|
865
|
+
const i = n.toString().trim(), c = Ke(i);
|
|
866
|
+
if (!Xe(c)) {
|
|
866
867
|
const y = [];
|
|
867
|
-
return
|
|
868
|
+
return H.set(n, y), y;
|
|
868
869
|
}
|
|
869
|
-
const d =
|
|
870
|
-
return
|
|
870
|
+
const d = et(c);
|
|
871
|
+
return H.set(n, d), d;
|
|
871
872
|
} catch {
|
|
872
873
|
const i = [];
|
|
873
|
-
return
|
|
874
|
+
return H.set(n, i), i;
|
|
874
875
|
}
|
|
875
876
|
}
|
|
876
|
-
function
|
|
877
|
+
function Je(n, i, c, d) {
|
|
877
878
|
if (d)
|
|
878
879
|
return d;
|
|
879
880
|
try {
|
|
880
881
|
const y = n[i];
|
|
881
882
|
if (y && typeof y == "function") {
|
|
882
|
-
const M =
|
|
883
|
+
const M = $e(y);
|
|
883
884
|
if (c < M.length)
|
|
884
885
|
return M[c];
|
|
885
886
|
}
|
|
886
887
|
} catch {
|
|
887
888
|
}
|
|
888
889
|
}
|
|
889
|
-
function
|
|
890
|
+
function Xe(n) {
|
|
890
891
|
return n != null && n.trim() !== "";
|
|
891
892
|
}
|
|
892
|
-
function
|
|
893
|
+
function Ke(n) {
|
|
893
894
|
if (n.startsWith("(")) {
|
|
894
895
|
const d = pe(n, 0);
|
|
895
896
|
return d === -1 ? "" : n.substring(1, d);
|
|
@@ -910,32 +911,32 @@ function pe(n, i) {
|
|
|
910
911
|
}
|
|
911
912
|
return -1;
|
|
912
913
|
}
|
|
913
|
-
function Ke(n) {
|
|
914
|
-
return n.split(",").map(et).filter(tt).map(rt);
|
|
915
|
-
}
|
|
916
914
|
function et(n) {
|
|
917
|
-
return n.
|
|
915
|
+
return n.split(",").map(tt).filter(rt).map(nt);
|
|
918
916
|
}
|
|
919
917
|
function tt(n) {
|
|
920
|
-
return n.
|
|
918
|
+
return n.trim();
|
|
921
919
|
}
|
|
922
920
|
function rt(n) {
|
|
923
|
-
|
|
924
|
-
return i = at(i), i.trim();
|
|
921
|
+
return n.length > 0;
|
|
925
922
|
}
|
|
926
923
|
function nt(n) {
|
|
924
|
+
let i = at(n);
|
|
925
|
+
return i = it(i), i.trim();
|
|
926
|
+
}
|
|
927
|
+
function at(n) {
|
|
927
928
|
const i = n.indexOf("=");
|
|
928
929
|
return i !== -1 ? n.substring(0, i) : n;
|
|
929
930
|
}
|
|
930
|
-
function
|
|
931
|
+
function it(n) {
|
|
931
932
|
const i = n.indexOf(":");
|
|
932
933
|
return i !== -1 ? n.substring(0, i) : n;
|
|
933
934
|
}
|
|
934
935
|
var C = /* @__PURE__ */ ((n) => (n.PATH = "path", n.QUERY = "query", n.HEADER = "header", n.BODY = "body", n.REQUEST = "request", n))(C || {});
|
|
935
936
|
const Z = Symbol("parameter:metadata");
|
|
936
|
-
function
|
|
937
|
+
function U(n, i = "") {
|
|
937
938
|
return function(c, d, y) {
|
|
938
|
-
const M =
|
|
939
|
+
const M = Je(
|
|
939
940
|
c,
|
|
940
941
|
d,
|
|
941
942
|
y,
|
|
@@ -953,31 +954,35 @@ function F(n, i = "") {
|
|
|
953
954
|
);
|
|
954
955
|
};
|
|
955
956
|
}
|
|
956
|
-
function
|
|
957
|
-
return
|
|
957
|
+
function Et(n = "") {
|
|
958
|
+
return U("path", n);
|
|
958
959
|
}
|
|
959
|
-
function
|
|
960
|
-
return
|
|
960
|
+
function Ot(n = "") {
|
|
961
|
+
return U("query", n);
|
|
961
962
|
}
|
|
962
|
-
function
|
|
963
|
-
return
|
|
963
|
+
function Pt(n = "") {
|
|
964
|
+
return U("header", n);
|
|
964
965
|
}
|
|
965
|
-
function
|
|
966
|
-
return
|
|
966
|
+
function Tt() {
|
|
967
|
+
return U(
|
|
967
968
|
"body"
|
|
968
969
|
/* BODY */
|
|
969
970
|
);
|
|
970
971
|
}
|
|
971
|
-
function
|
|
972
|
-
return
|
|
972
|
+
function kt() {
|
|
973
|
+
return U(
|
|
973
974
|
"request"
|
|
974
975
|
/* REQUEST */
|
|
975
976
|
);
|
|
976
977
|
}
|
|
977
|
-
const
|
|
978
|
-
DEFAULT:
|
|
978
|
+
const ot = (n) => n.requiredResponse, ut = {
|
|
979
|
+
DEFAULT: ot
|
|
979
980
|
};
|
|
980
|
-
|
|
981
|
+
function st(n) {
|
|
982
|
+
if (n)
|
|
983
|
+
return n instanceof Qe ? n : Le.requiredGet(n);
|
|
984
|
+
}
|
|
985
|
+
class ft {
|
|
981
986
|
/**
|
|
982
987
|
* Creates a new FunctionMetadata instance.
|
|
983
988
|
*
|
|
@@ -998,8 +1003,7 @@ class ut {
|
|
|
998
1003
|
* @returns The fetcher instance
|
|
999
1004
|
*/
|
|
1000
1005
|
get fetcher() {
|
|
1001
|
-
|
|
1002
|
-
return Qe.requiredGet(i);
|
|
1006
|
+
return st(this.endpoint.fetcher ?? this.api.fetcher) ?? Ve;
|
|
1003
1007
|
}
|
|
1004
1008
|
/**
|
|
1005
1009
|
* Resolves the request configuration from the method arguments.
|
|
@@ -1090,7 +1094,7 @@ class ut {
|
|
|
1090
1094
|
timeout: this.resolveTimeout(),
|
|
1091
1095
|
signal: O
|
|
1092
1096
|
};
|
|
1093
|
-
return
|
|
1097
|
+
return Be(I, P);
|
|
1094
1098
|
}
|
|
1095
1099
|
processPathParam(i, c, d) {
|
|
1096
1100
|
const y = i.name || `param${i.index}`;
|
|
@@ -1140,7 +1144,7 @@ class ut {
|
|
|
1140
1144
|
*/
|
|
1141
1145
|
resolvePath() {
|
|
1142
1146
|
const i = this.endpoint.basePath || this.api.basePath || "", c = this.endpoint.path || "";
|
|
1143
|
-
return
|
|
1147
|
+
return ze(i, c);
|
|
1144
1148
|
}
|
|
1145
1149
|
/**
|
|
1146
1150
|
* Resolves the timeout for the request.
|
|
@@ -1154,10 +1158,10 @@ class ut {
|
|
|
1154
1158
|
return this.endpoint.timeout || this.api.timeout;
|
|
1155
1159
|
}
|
|
1156
1160
|
resolveResultExtractor() {
|
|
1157
|
-
return this.endpoint.resultExtractor || this.api.resultExtractor ||
|
|
1161
|
+
return this.endpoint.resultExtractor || this.api.resultExtractor || ut.DEFAULT;
|
|
1158
1162
|
}
|
|
1159
1163
|
}
|
|
1160
|
-
class
|
|
1164
|
+
class ct {
|
|
1161
1165
|
/**
|
|
1162
1166
|
* Creates a new RequestExecutor instance.
|
|
1163
1167
|
*
|
|
@@ -1183,8 +1187,8 @@ class st {
|
|
|
1183
1187
|
return await this.metadata.resolveResultExtractor()(M);
|
|
1184
1188
|
}
|
|
1185
1189
|
}
|
|
1186
|
-
const
|
|
1187
|
-
function
|
|
1190
|
+
const dt = Symbol("api:metadata");
|
|
1191
|
+
function lt(n, i, c) {
|
|
1188
1192
|
const d = n.prototype[i];
|
|
1189
1193
|
if (i === "constructor" || typeof d != "function")
|
|
1190
1194
|
return;
|
|
@@ -1199,57 +1203,58 @@ function ct(n, i, c) {
|
|
|
1199
1203
|
Z,
|
|
1200
1204
|
n.prototype,
|
|
1201
1205
|
i
|
|
1202
|
-
) || [], O = new
|
|
1206
|
+
) || [], O = new ft(
|
|
1203
1207
|
i,
|
|
1204
1208
|
c,
|
|
1205
1209
|
y,
|
|
1206
1210
|
M
|
|
1207
|
-
), P = new
|
|
1211
|
+
), P = new ct(O);
|
|
1208
1212
|
n.prototype[i] = function(...A) {
|
|
1209
1213
|
return P.execute(A);
|
|
1210
1214
|
};
|
|
1211
1215
|
}
|
|
1212
|
-
function
|
|
1216
|
+
function Rt(n = "", i = {}) {
|
|
1213
1217
|
return function(c) {
|
|
1214
1218
|
const d = {
|
|
1215
1219
|
basePath: n,
|
|
1216
1220
|
...i
|
|
1217
1221
|
};
|
|
1218
|
-
return Reflect.defineMetadata(
|
|
1219
|
-
|
|
1222
|
+
return Reflect.defineMetadata(dt, d, c), Object.getOwnPropertyNames(c.prototype).forEach((y) => {
|
|
1223
|
+
lt(c, y, d);
|
|
1220
1224
|
}), c;
|
|
1221
1225
|
};
|
|
1222
1226
|
}
|
|
1223
|
-
class
|
|
1227
|
+
class ht extends Error {
|
|
1224
1228
|
constructor() {
|
|
1225
1229
|
super("Implementation will be generated automatically."), this.name = "AutoGenerated";
|
|
1226
1230
|
}
|
|
1227
1231
|
}
|
|
1228
|
-
const
|
|
1232
|
+
const xt = () => new ht();
|
|
1229
1233
|
export {
|
|
1230
|
-
|
|
1231
|
-
|
|
1234
|
+
dt as API_METADATA_KEY,
|
|
1235
|
+
ht as AutoGenerated,
|
|
1232
1236
|
we as ENDPOINT_METADATA_KEY,
|
|
1233
|
-
|
|
1237
|
+
ft as FunctionMetadata,
|
|
1234
1238
|
Z as PARAMETER_METADATA_KEY,
|
|
1235
1239
|
C as ParameterType,
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1240
|
+
ct as RequestExecutor,
|
|
1241
|
+
Rt as api,
|
|
1242
|
+
xt as autoGeneratedError,
|
|
1243
|
+
Tt as body,
|
|
1244
|
+
_t as del,
|
|
1241
1245
|
D as endpoint,
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
Mt as
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
Ot as
|
|
1246
|
+
pt as get,
|
|
1247
|
+
st as getFetcher,
|
|
1248
|
+
Je as getParameterName,
|
|
1249
|
+
$e as getParameterNames,
|
|
1250
|
+
gt as head,
|
|
1251
|
+
Pt as header,
|
|
1252
|
+
bt as options,
|
|
1253
|
+
U as parameter,
|
|
1254
|
+
Mt as patch,
|
|
1255
|
+
Et as path,
|
|
1256
|
+
wt as post,
|
|
1257
|
+
mt as put,
|
|
1258
|
+
Ot as query,
|
|
1259
|
+
kt as request
|
|
1255
1260
|
};
|
package/dist/index.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(w,O){typeof exports=="object"&&typeof module<"u"?O(exports,require("@ahoo-wang/fetcher")):typeof define=="function"&&define.amd?define(["exports","@ahoo-wang/fetcher"],O):(w=typeof globalThis<"u"?globalThis:w||self,O(w.FetcherDecorator={},w.Fetcher))})(this,(function(w,O){"use strict";var
|
|
1
|
+
(function(w,O){typeof exports=="object"&&typeof module<"u"?O(exports,require("@ahoo-wang/fetcher"),require("@ahoo-wang/fetcher-wow")):typeof define=="function"&&define.amd?define(["exports","@ahoo-wang/fetcher","@ahoo-wang/fetcher-wow"],O):(w=typeof globalThis<"u"?globalThis:w||self,O(w.FetcherDecorator={},w.Fetcher))})(this,(function(w,O){"use strict";var $=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},K={};/*! *****************************************************************************
|
|
2
2
|
Copyright (C) Microsoft. All rights reserved.
|
|
3
3
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
4
4
|
this file except in compliance with the License. You may obtain a copy of the
|
|
@@ -11,4 +11,4 @@
|
|
|
11
11
|
|
|
12
12
|
See the Apache Version 2.0 License for specific language governing permissions
|
|
13
13
|
and limitations under the License.
|
|
14
|
-
***************************************************************************** */var ee;function Te(){if(ee)return K;ee=1;var n;return(function(i){(function(c){var d=typeof globalThis=="object"?globalThis:typeof X=="object"?X:typeof self=="object"?self:typeof this=="object"?this:q(),y=g(i);typeof d.Reflect<"u"&&(y=g(d.Reflect,y)),c(y,d),typeof d.Reflect>"u"&&(d.Reflect=i);function g(j,T){return function(k,I){Object.defineProperty(j,k,{configurable:!0,writable:!0,value:I}),T&&T(k,I)}}function P(){try{return Function("return this;")()}catch{}}function R(){try{return(0,eval)("(function() { return this; })()")}catch{}}function q(){return P()||R()}})(function(c,d){var y=Object.prototype.hasOwnProperty,g=typeof Symbol=="function",P=g&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",R=g&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",q=typeof Object.create=="function",j={__proto__:[]}instanceof Array,T=!q&&!j,k={create:q?function(){return J(Object.create(null))}:j?function(){return J({__proto__:null})}:function(){return J({})},has:T?function(e,t){return y.call(e,t)}:function(e,t){return t in e},get:T?function(e,t){return y.call(e,t)?e[t]:void 0}:function(e,t){return e[t]}},I=Object.getPrototypeOf(Function),U=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:wt(),V=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:mt(),B=typeof WeakMap=="function"?WeakMap:Mt(),H=g?Symbol.for("@reflect-metadata:registry"):void 0,Y=yt(),se=vt(Y);function $e(e,t,r,a){if(h(r)){if(!we(e))throw new TypeError;if(!me(t))throw new TypeError;return ot(e,t)}else{if(!we(e))throw new TypeError;if(!b(t))throw new TypeError;if(!b(a)&&!h(a)&&!G(a))throw new TypeError;return G(a)&&(a=void 0),r=S(r),ut(e,t,r,a)}}c("decorate",$e);function Je(e,t){function r(a,l){if(!b(a))throw new TypeError;if(!h(l)&&!lt(l))throw new TypeError;le(e,t,a,l)}return r}c("metadata",Je);function Xe(e,t,r,a){if(!b(r))throw new TypeError;return h(a)||(a=S(a)),le(e,t,r,a)}c("defineMetadata",Xe);function Ke(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),fe(e,t,r)}c("hasMetadata",Ke);function et(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),z(e,t,r)}c("hasOwnMetadata",et);function tt(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),ce(e,t,r)}c("getMetadata",tt);function rt(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),de(e,t,r)}c("getOwnMetadata",rt);function nt(e,t){if(!b(e))throw new TypeError;return h(t)||(t=S(t)),he(e,t)}c("getMetadataKeys",nt);function at(e,t){if(!b(e))throw new TypeError;return h(t)||(t=S(t)),ye(e,t)}c("getOwnMetadataKeys",at);function it(e,t,r){if(!b(t))throw new TypeError;if(h(r)||(r=S(r)),!b(t))throw new TypeError;h(r)||(r=S(r));var a=N(t,r,!1);return h(a)?!1:a.OrdinaryDeleteMetadata(e,t,r)}c("deleteMetadata",it);function ot(e,t){for(var r=e.length-1;r>=0;--r){var a=e[r],l=a(t);if(!h(l)&&!G(l)){if(!me(l))throw new TypeError;t=l}}return t}function ut(e,t,r,a){for(var l=e.length-1;l>=0;--l){var M=e[l],E=M(t,r,a);if(!h(E)&&!G(E)){if(!b(E))throw new TypeError;a=E}}return a}function fe(e,t,r){var a=z(e,t,r);if(a)return!0;var l=$(t);return G(l)?!1:fe(e,l,r)}function z(e,t,r){var a=N(t,r,!1);return h(a)?!1:pe(a.OrdinaryHasOwnMetadata(e,t,r))}function ce(e,t,r){var a=z(e,t,r);if(a)return de(e,t,r);var l=$(t);if(!G(l))return ce(e,l,r)}function de(e,t,r){var a=N(t,r,!1);if(!h(a))return a.OrdinaryGetOwnMetadata(e,t,r)}function le(e,t,r,a){var l=N(r,a,!0);l.OrdinaryDefineOwnMetadata(e,t,r,a)}function he(e,t){var r=ye(e,t),a=$(e);if(a===null)return r;var l=he(a,t);if(l.length<=0)return r;if(r.length<=0)return l;for(var M=new V,E=[],v=0,o=r;v<o.length;v++){var u=o[v],s=M.has(u);s||(M.add(u),E.push(u))}for(var f=0,p=l;f<p.length;f++){var u=p[f],s=M.has(u);s||(M.add(u),E.push(u))}return E}function ye(e,t){var r=N(e,t,!1);return r?r.OrdinaryOwnMetadataKeys(e,t):[]}function ve(e){if(e===null)return 1;switch(typeof e){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return e===null?1:6;default:return 6}}function h(e){return e===void 0}function G(e){return e===null}function st(e){return typeof e=="symbol"}function b(e){return typeof e=="object"?e!==null:typeof e=="function"}function ft(e,t){switch(ve(e)){case 0:return e;case 1:return e;case 2:return e;case 3:return e;case 4:return e;case 5:return e}var r="string",a=Me(e,P);if(a!==void 0){var l=a.call(e,r);if(b(l))throw new TypeError;return l}return ct(e)}function ct(e,t){var r,a,l;{var M=e.toString;if(L(M)){var a=M.call(e);if(!b(a))return a}var r=e.valueOf;if(L(r)){var a=r.call(e);if(!b(a))return a}}throw new TypeError}function pe(e){return!!e}function dt(e){return""+e}function S(e){var t=ft(e);return st(t)?t:dt(t)}function we(e){return Array.isArray?Array.isArray(e):e instanceof Object?e instanceof Array:Object.prototype.toString.call(e)==="[object Array]"}function L(e){return typeof e=="function"}function me(e){return typeof e=="function"}function lt(e){switch(ve(e)){case 3:return!0;case 4:return!0;default:return!1}}function Z(e,t){return e===t||e!==e&&t!==t}function Me(e,t){var r=e[t];if(r!=null){if(!L(r))throw new TypeError;return r}}function _e(e){var t=Me(e,R);if(!L(t))throw new TypeError;var r=t.call(e);if(!b(r))throw new TypeError;return r}function ge(e){return e.value}function be(e){var t=e.next();return t.done?!1:t}function Ee(e){var t=e.return;t&&t.call(e)}function $(e){var t=Object.getPrototypeOf(e);if(typeof e!="function"||e===I||t!==I)return t;var r=e.prototype,a=r&&Object.getPrototypeOf(r);if(a==null||a===Object.prototype)return t;var l=a.constructor;return typeof l!="function"||l===e?t:l}function ht(){var e;!h(H)&&typeof d.Reflect<"u"&&!(H in d.Reflect)&&typeof d.Reflect.defineMetadata=="function"&&(e=pt(d.Reflect));var t,r,a,l=new B,M={registerProvider:E,getProvider:o,setProvider:s};return M;function E(f){if(!Object.isExtensible(M))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case e===f:break;case h(t):t=f;break;case t===f:break;case h(r):r=f;break;case r===f:break;default:a===void 0&&(a=new V),a.add(f);break}}function v(f,p){if(!h(t)){if(t.isProviderFor(f,p))return t;if(!h(r)){if(r.isProviderFor(f,p))return t;if(!h(a))for(var m=_e(a);;){var _=be(m);if(!_)return;var A=ge(_);if(A.isProviderFor(f,p))return Ee(m),A}}}if(!h(e)&&e.isProviderFor(f,p))return e}function o(f,p){var m=l.get(f),_;return h(m)||(_=m.get(p)),h(_)&&(_=v(f,p),h(_)||(h(m)&&(m=new U,l.set(f,m)),m.set(p,_))),_}function u(f){if(h(f))throw new TypeError;return t===f||r===f||!h(a)&&a.has(f)}function s(f,p,m){if(!u(m))throw new Error("Metadata provider not registered.");var _=o(f,p);if(_!==m){if(!h(_))return!1;var A=l.get(f);h(A)&&(A=new U,l.set(f,A)),A.set(p,m)}return!0}}function yt(){var e;return!h(H)&&b(d.Reflect)&&Object.isExtensible(d.Reflect)&&(e=d.Reflect[H]),h(e)&&(e=ht()),!h(H)&&b(d.Reflect)&&Object.isExtensible(d.Reflect)&&Object.defineProperty(d.Reflect,H,{enumerable:!1,configurable:!1,writable:!1,value:e}),e}function vt(e){var t=new B,r={isProviderFor:function(u,s){var f=t.get(u);return h(f)?!1:f.has(s)},OrdinaryDefineOwnMetadata:E,OrdinaryHasOwnMetadata:l,OrdinaryGetOwnMetadata:M,OrdinaryOwnMetadataKeys:v,OrdinaryDeleteMetadata:o};return Y.registerProvider(r),r;function a(u,s,f){var p=t.get(u),m=!1;if(h(p)){if(!f)return;p=new U,t.set(u,p),m=!0}var _=p.get(s);if(h(_)){if(!f)return;if(_=new U,p.set(s,_),!e.setProvider(u,s,r))throw p.delete(s),m&&t.delete(u),new Error("Wrong provider for target.")}return _}function l(u,s,f){var p=a(s,f,!1);return h(p)?!1:pe(p.has(u))}function M(u,s,f){var p=a(s,f,!1);if(!h(p))return p.get(u)}function E(u,s,f,p){var m=a(f,p,!0);m.set(u,s)}function v(u,s){var f=[],p=a(u,s,!1);if(h(p))return f;for(var m=p.keys(),_=_e(m),A=0;;){var Oe=be(_);if(!Oe)return f.length=A,f;var _t=ge(Oe);try{f[A]=_t}catch(gt){try{Ee(_)}finally{throw gt}}A++}}function o(u,s,f){var p=a(s,f,!1);if(h(p)||!p.delete(u))return!1;if(p.size===0){var m=t.get(s);h(m)||(m.delete(f),m.size===0&&t.delete(m))}return!0}}function pt(e){var t=e.defineMetadata,r=e.hasOwnMetadata,a=e.getOwnMetadata,l=e.getOwnMetadataKeys,M=e.deleteMetadata,E=new B,v={isProviderFor:function(o,u){var s=E.get(o);return!h(s)&&s.has(u)?!0:l(o,u).length?(h(s)&&(s=new V,E.set(o,s)),s.add(u),!0):!1},OrdinaryDefineOwnMetadata:t,OrdinaryHasOwnMetadata:r,OrdinaryGetOwnMetadata:a,OrdinaryOwnMetadataKeys:l,OrdinaryDeleteMetadata:M};return v}function N(e,t,r){var a=Y.getProvider(e,t);if(!h(a))return a;if(r){if(Y.setProvider(e,t,se))return se;throw new Error("Illegal state.")}}function wt(){var e={},t=[],r=(function(){function v(o,u,s){this._index=0,this._keys=o,this._values=u,this._selector=s}return v.prototype["@@iterator"]=function(){return this},v.prototype[R]=function(){return this},v.prototype.next=function(){var o=this._index;if(o>=0&&o<this._keys.length){var u=this._selector(this._keys[o],this._values[o]);return o+1>=this._keys.length?(this._index=-1,this._keys=t,this._values=t):this._index++,{value:u,done:!1}}return{value:void 0,done:!0}},v.prototype.throw=function(o){throw this._index>=0&&(this._index=-1,this._keys=t,this._values=t),o},v.prototype.return=function(o){return this._index>=0&&(this._index=-1,this._keys=t,this._values=t),{value:o,done:!0}},v})(),a=(function(){function v(){this._keys=[],this._values=[],this._cacheKey=e,this._cacheIndex=-2}return Object.defineProperty(v.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),v.prototype.has=function(o){return this._find(o,!1)>=0},v.prototype.get=function(o){var u=this._find(o,!1);return u>=0?this._values[u]:void 0},v.prototype.set=function(o,u){var s=this._find(o,!0);return this._values[s]=u,this},v.prototype.delete=function(o){var u=this._find(o,!1);if(u>=0){for(var s=this._keys.length,f=u+1;f<s;f++)this._keys[f-1]=this._keys[f],this._values[f-1]=this._values[f];return this._keys.length--,this._values.length--,Z(o,this._cacheKey)&&(this._cacheKey=e,this._cacheIndex=-2),!0}return!1},v.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=e,this._cacheIndex=-2},v.prototype.keys=function(){return new r(this._keys,this._values,l)},v.prototype.values=function(){return new r(this._keys,this._values,M)},v.prototype.entries=function(){return new r(this._keys,this._values,E)},v.prototype["@@iterator"]=function(){return this.entries()},v.prototype[R]=function(){return this.entries()},v.prototype._find=function(o,u){if(!Z(this._cacheKey,o)){this._cacheIndex=-1;for(var s=0;s<this._keys.length;s++)if(Z(this._keys[s],o)){this._cacheIndex=s;break}}return this._cacheIndex<0&&u&&(this._cacheIndex=this._keys.length,this._keys.push(o),this._values.push(void 0)),this._cacheIndex},v})();return a;function l(v,o){return v}function M(v,o){return o}function E(v,o){return[v,o]}}function mt(){var e=(function(){function t(){this._map=new U}return Object.defineProperty(t.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),t.prototype.has=function(r){return this._map.has(r)},t.prototype.add=function(r){return this._map.set(r,r),this},t.prototype.delete=function(r){return this._map.delete(r)},t.prototype.clear=function(){this._map.clear()},t.prototype.keys=function(){return this._map.keys()},t.prototype.values=function(){return this._map.keys()},t.prototype.entries=function(){return this._map.entries()},t.prototype["@@iterator"]=function(){return this.keys()},t.prototype[R]=function(){return this.keys()},t})();return e}function Mt(){var e=16,t=k.create(),r=a();return(function(){function o(){this._key=a()}return o.prototype.has=function(u){var s=l(u,!1);return s!==void 0?k.has(s,this._key):!1},o.prototype.get=function(u){var s=l(u,!1);return s!==void 0?k.get(s,this._key):void 0},o.prototype.set=function(u,s){var f=l(u,!0);return f[this._key]=s,this},o.prototype.delete=function(u){var s=l(u,!1);return s!==void 0?delete s[this._key]:!1},o.prototype.clear=function(){this._key=a()},o})();function a(){var o;do o="@@WeakMap@@"+v();while(k.has(t,o));return t[o]=!0,o}function l(o,u){if(!y.call(o,r)){if(!u)return;Object.defineProperty(o,r,{value:k.create()})}return o[r]}function M(o,u){for(var s=0;s<u;++s)o[s]=Math.random()*255|0;return o}function E(o){if(typeof Uint8Array=="function"){var u=new Uint8Array(o);return typeof crypto<"u"?crypto.getRandomValues(u):typeof msCrypto<"u"?msCrypto.getRandomValues(u):M(u,o),u}return M(new Array(o),o)}function v(){var o=E(e);o[6]=o[6]&79|64,o[8]=o[8]&191|128;for(var u="",s=0;s<e;++s){var f=o[s];(s===4||s===6||s===8)&&(u+="-"),f<16&&(u+="0"),u+=f.toString(16).toLowerCase()}return u}}function J(e){return e.__=void 0,delete e.__,e}})})(n||(n={})),K}Te();const Q=Symbol("endpoint:metadata");function D(n,i="",c={}){return function(d,y){const g={method:n,path:i,...c};Reflect.defineMetadata(Q,g,d,y)}}function Pe(n="",i={}){return D(O.HttpMethod.GET,n,i)}function Re(n="",i={}){return D(O.HttpMethod.POST,n,i)}function ke(n="",i={}){return D(O.HttpMethod.PUT,n,i)}function Ae(n="",i={}){return D(O.HttpMethod.DELETE,n,i)}function Ie(n="",i={}){return D(O.HttpMethod.PATCH,n,i)}function Se(n="",i={}){return D(O.HttpMethod.HEAD,n,i)}function De(n="",i={}){return D(O.HttpMethod.OPTIONS,n,i)}const F=new WeakMap;function te(n){if(typeof n!="function")throw new TypeError("Expected a function");if(F.has(n))return F.get(n);try{const i=n.toString().trim(),c=je(i);if(!qe(c)){const y=[];return F.set(n,y),y}const d=xe(c);return F.set(n,d),d}catch{const i=[];return F.set(n,i),i}}function re(n,i,c,d){if(d)return d;try{const y=n[i];if(y&&typeof y=="function"){const g=te(y);if(c<g.length)return g[c]}}catch{}}function qe(n){return n!=null&&n.trim()!==""}function je(n){if(n.startsWith("(")){const d=ne(n,0);return d===-1?"":n.substring(1,d)}const i=n.indexOf("(");if(i===-1)return"";const c=ne(n,i);return c===-1?"":n.substring(i+1,c)}function ne(n,i){let c=1;for(let d=i+1;d<n.length;d++){const y=n[d];if(y==="(")c++;else if(y===")"&&(c--,c===0))return d}return-1}function xe(n){return n.split(",").map(Ce).filter(He).map(Ge)}function Ce(n){return n.trim()}function He(n){return n.length>0}function Ge(n){let i=Fe(n);return i=Ue(i),i.trim()}function Fe(n){const i=n.indexOf("=");return i!==-1?n.substring(0,i):n}function Ue(n){const i=n.indexOf(":");return i!==-1?n.substring(0,i):n}var x=(n=>(n.PATH="path",n.QUERY="query",n.HEADER="header",n.BODY="body",n.REQUEST="request",n))(x||{});const W=Symbol("parameter:metadata");function C(n,i=""){return function(c,d,y){const g=re(c,d,y,i),P=Reflect.getMetadata(W,c,d)||[];P.push({type:n,name:g,index:y}),Reflect.defineMetadata(W,P,c,d)}}function Ne(n=""){return C("path",n)}function We(n=""){return C("query",n)}function Ye(n=""){return C("header",n)}function Le(){return C("body")}function Qe(){return C("request")}const Ve={DEFAULT:n=>n.requiredResponse};class ae{constructor(i,c,d,y){this.name=i,this.api=c,this.endpoint=d,this.parameters=y}get fetcher(){const i=this.endpoint.fetcher||this.api.fetcher||O.DEFAULT_FETCHER_NAME;return O.fetcherRegistrar.requiredGet(i)}resolveRequest(i){const c={},d={},y={...this.api.headers,...this.endpoint.headers};let g,P,R={};i.forEach((T,k)=>{if(T instanceof AbortSignal){P=T;return}if(k<this.parameters.length){const I=this.parameters[k];switch(I.type){case x.PATH:this.processPathParam(I,T,c);break;case x.QUERY:this.processQueryParam(I,T,d);break;case x.HEADER:this.processHeaderParam(I,T,y);break;case x.BODY:g=T;break;case x.REQUEST:R=this.processRequestParam(T);break}}});const q={path:c,query:d},j={method:this.endpoint.method,urlParams:q,headers:y,body:g,timeout:this.resolveTimeout(),signal:P};return O.mergeRequest(j,R)}processPathParam(i,c,d){const y=i.name||`param${i.index}`;d[y]=c}processQueryParam(i,c,d){const y=i.name||`param${i.index}`;d[y]=c}processHeaderParam(i,c,d){i.name&&c!==void 0&&(d[i.name]=String(c))}processRequestParam(i){return i}resolvePath(){const i=this.endpoint.basePath||this.api.basePath||"",c=this.endpoint.path||"";return O.combineURLs(i,c)}resolveTimeout(){return this.endpoint.timeout||this.api.timeout}resolveResultExtractor(){return this.endpoint.resultExtractor||this.api.resultExtractor||Ve.DEFAULT}}class ie{constructor(i){this.metadata=i}async execute(i){const c=this.metadata.resolvePath(),d=this.metadata.resolveRequest(i),y={url:c,...d},g=await this.metadata.fetcher.request(y);return await this.metadata.resolveResultExtractor()(g)}}const oe=Symbol("api:metadata");function Be(n,i,c){const d=n.prototype[i];if(i==="constructor"||typeof d!="function")return;const y=Reflect.getMetadata(Q,n.prototype,i);if(!y)return;const g=Reflect.getMetadata(W,n.prototype,i)||[],P=new ae(i,c,y,g),R=new ie(P);n.prototype[i]=function(...q){return R.execute(q)}}function ze(n="",i={}){return function(c){const d={basePath:n,...i};return Reflect.defineMetadata(oe,d,c),Object.getOwnPropertyNames(c.prototype).forEach(y=>{Be(c,y,d)}),c}}class ue extends Error{constructor(){super("Implementation will be generated automatically."),this.name="AutoGenerated"}}const Ze=()=>new ue;w.API_METADATA_KEY=oe,w.AutoGenerated=ue,w.ENDPOINT_METADATA_KEY=Q,w.FunctionMetadata=ae,w.PARAMETER_METADATA_KEY=W,w.ParameterType=x,w.RequestExecutor=ie,w.api=ze,w.autoGeneratedError=Ze,w.body=Le,w.del=Ae,w.endpoint=D,w.get=Pe,w.getParameterName=re,w.getParameterNames=te,w.head=Se,w.header=Ye,w.options=De,w.parameter=C,w.patch=Ie,w.path=Ne,w.post=Re,w.put=ke,w.query=We,w.request=Qe,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})}));
|
|
14
|
+
***************************************************************************** */var ee;function Te(){if(ee)return K;ee=1;var n;return(function(i){(function(c){var d=typeof globalThis=="object"?globalThis:typeof $=="object"?$:typeof self=="object"?self:typeof this=="object"?this:q(),y=g(i);typeof d.Reflect<"u"&&(y=g(d.Reflect,y)),c(y,d),typeof d.Reflect>"u"&&(d.Reflect=i);function g(j,P){return function(k,I){Object.defineProperty(j,k,{configurable:!0,writable:!0,value:I}),P&&P(k,I)}}function T(){try{return Function("return this;")()}catch{}}function R(){try{return(0,eval)("(function() { return this; })()")}catch{}}function q(){return T()||R()}})(function(c,d){var y=Object.prototype.hasOwnProperty,g=typeof Symbol=="function",T=g&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",R=g&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",q=typeof Object.create=="function",j={__proto__:[]}instanceof Array,P=!q&&!j,k={create:q?function(){return X(Object.create(null))}:j?function(){return X({__proto__:null})}:function(){return X({})},has:P?function(e,t){return y.call(e,t)}:function(e,t){return t in e},get:P?function(e,t){return y.call(e,t)?e[t]:void 0}:function(e,t){return e[t]}},I=Object.getPrototypeOf(Function),U=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:mt(),V=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:Mt(),B=typeof WeakMap=="function"?WeakMap:_t(),G=g?Symbol.for("@reflect-metadata:registry"):void 0,Y=vt(),fe=pt(Y);function Xe(e,t,r,a){if(h(r)){if(!me(e))throw new TypeError;if(!Me(t))throw new TypeError;return ut(e,t)}else{if(!me(e))throw new TypeError;if(!b(t))throw new TypeError;if(!b(a)&&!h(a)&&!H(a))throw new TypeError;return H(a)&&(a=void 0),r=S(r),st(e,t,r,a)}}c("decorate",Xe);function $e(e,t){function r(a,l){if(!b(a))throw new TypeError;if(!h(l)&&!ht(l))throw new TypeError;he(e,t,a,l)}return r}c("metadata",$e);function Ke(e,t,r,a){if(!b(r))throw new TypeError;return h(a)||(a=S(a)),he(e,t,r,a)}c("defineMetadata",Ke);function et(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),ce(e,t,r)}c("hasMetadata",et);function tt(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),z(e,t,r)}c("hasOwnMetadata",tt);function rt(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),de(e,t,r)}c("getMetadata",rt);function nt(e,t,r){if(!b(t))throw new TypeError;return h(r)||(r=S(r)),le(e,t,r)}c("getOwnMetadata",nt);function at(e,t){if(!b(e))throw new TypeError;return h(t)||(t=S(t)),ye(e,t)}c("getMetadataKeys",at);function it(e,t){if(!b(e))throw new TypeError;return h(t)||(t=S(t)),ve(e,t)}c("getOwnMetadataKeys",it);function ot(e,t,r){if(!b(t))throw new TypeError;if(h(r)||(r=S(r)),!b(t))throw new TypeError;h(r)||(r=S(r));var a=N(t,r,!1);return h(a)?!1:a.OrdinaryDeleteMetadata(e,t,r)}c("deleteMetadata",ot);function ut(e,t){for(var r=e.length-1;r>=0;--r){var a=e[r],l=a(t);if(!h(l)&&!H(l)){if(!Me(l))throw new TypeError;t=l}}return t}function st(e,t,r,a){for(var l=e.length-1;l>=0;--l){var M=e[l],E=M(t,r,a);if(!h(E)&&!H(E)){if(!b(E))throw new TypeError;a=E}}return a}function ce(e,t,r){var a=z(e,t,r);if(a)return!0;var l=J(t);return H(l)?!1:ce(e,l,r)}function z(e,t,r){var a=N(t,r,!1);return h(a)?!1:we(a.OrdinaryHasOwnMetadata(e,t,r))}function de(e,t,r){var a=z(e,t,r);if(a)return le(e,t,r);var l=J(t);if(!H(l))return de(e,l,r)}function le(e,t,r){var a=N(t,r,!1);if(!h(a))return a.OrdinaryGetOwnMetadata(e,t,r)}function he(e,t,r,a){var l=N(r,a,!0);l.OrdinaryDefineOwnMetadata(e,t,r,a)}function ye(e,t){var r=ve(e,t),a=J(e);if(a===null)return r;var l=ye(a,t);if(l.length<=0)return r;if(r.length<=0)return l;for(var M=new V,E=[],v=0,o=r;v<o.length;v++){var u=o[v],s=M.has(u);s||(M.add(u),E.push(u))}for(var f=0,p=l;f<p.length;f++){var u=p[f],s=M.has(u);s||(M.add(u),E.push(u))}return E}function ve(e,t){var r=N(e,t,!1);return r?r.OrdinaryOwnMetadataKeys(e,t):[]}function pe(e){if(e===null)return 1;switch(typeof e){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return e===null?1:6;default:return 6}}function h(e){return e===void 0}function H(e){return e===null}function ft(e){return typeof e=="symbol"}function b(e){return typeof e=="object"?e!==null:typeof e=="function"}function ct(e,t){switch(pe(e)){case 0:return e;case 1:return e;case 2:return e;case 3:return e;case 4:return e;case 5:return e}var r="string",a=_e(e,T);if(a!==void 0){var l=a.call(e,r);if(b(l))throw new TypeError;return l}return dt(e)}function dt(e,t){var r,a,l;{var M=e.toString;if(L(M)){var a=M.call(e);if(!b(a))return a}var r=e.valueOf;if(L(r)){var a=r.call(e);if(!b(a))return a}}throw new TypeError}function we(e){return!!e}function lt(e){return""+e}function S(e){var t=ct(e);return ft(t)?t:lt(t)}function me(e){return Array.isArray?Array.isArray(e):e instanceof Object?e instanceof Array:Object.prototype.toString.call(e)==="[object Array]"}function L(e){return typeof e=="function"}function Me(e){return typeof e=="function"}function ht(e){switch(pe(e)){case 3:return!0;case 4:return!0;default:return!1}}function Z(e,t){return e===t||e!==e&&t!==t}function _e(e,t){var r=e[t];if(r!=null){if(!L(r))throw new TypeError;return r}}function ge(e){var t=_e(e,R);if(!L(t))throw new TypeError;var r=t.call(e);if(!b(r))throw new TypeError;return r}function be(e){return e.value}function Ee(e){var t=e.next();return t.done?!1:t}function Oe(e){var t=e.return;t&&t.call(e)}function J(e){var t=Object.getPrototypeOf(e);if(typeof e!="function"||e===I||t!==I)return t;var r=e.prototype,a=r&&Object.getPrototypeOf(r);if(a==null||a===Object.prototype)return t;var l=a.constructor;return typeof l!="function"||l===e?t:l}function yt(){var e;!h(G)&&typeof d.Reflect<"u"&&!(G in d.Reflect)&&typeof d.Reflect.defineMetadata=="function"&&(e=wt(d.Reflect));var t,r,a,l=new B,M={registerProvider:E,getProvider:o,setProvider:s};return M;function E(f){if(!Object.isExtensible(M))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case e===f:break;case h(t):t=f;break;case t===f:break;case h(r):r=f;break;case r===f:break;default:a===void 0&&(a=new V),a.add(f);break}}function v(f,p){if(!h(t)){if(t.isProviderFor(f,p))return t;if(!h(r)){if(r.isProviderFor(f,p))return t;if(!h(a))for(var m=ge(a);;){var _=Ee(m);if(!_)return;var A=be(_);if(A.isProviderFor(f,p))return Oe(m),A}}}if(!h(e)&&e.isProviderFor(f,p))return e}function o(f,p){var m=l.get(f),_;return h(m)||(_=m.get(p)),h(_)&&(_=v(f,p),h(_)||(h(m)&&(m=new U,l.set(f,m)),m.set(p,_))),_}function u(f){if(h(f))throw new TypeError;return t===f||r===f||!h(a)&&a.has(f)}function s(f,p,m){if(!u(m))throw new Error("Metadata provider not registered.");var _=o(f,p);if(_!==m){if(!h(_))return!1;var A=l.get(f);h(A)&&(A=new U,l.set(f,A)),A.set(p,m)}return!0}}function vt(){var e;return!h(G)&&b(d.Reflect)&&Object.isExtensible(d.Reflect)&&(e=d.Reflect[G]),h(e)&&(e=yt()),!h(G)&&b(d.Reflect)&&Object.isExtensible(d.Reflect)&&Object.defineProperty(d.Reflect,G,{enumerable:!1,configurable:!1,writable:!1,value:e}),e}function pt(e){var t=new B,r={isProviderFor:function(u,s){var f=t.get(u);return h(f)?!1:f.has(s)},OrdinaryDefineOwnMetadata:E,OrdinaryHasOwnMetadata:l,OrdinaryGetOwnMetadata:M,OrdinaryOwnMetadataKeys:v,OrdinaryDeleteMetadata:o};return Y.registerProvider(r),r;function a(u,s,f){var p=t.get(u),m=!1;if(h(p)){if(!f)return;p=new U,t.set(u,p),m=!0}var _=p.get(s);if(h(_)){if(!f)return;if(_=new U,p.set(s,_),!e.setProvider(u,s,r))throw p.delete(s),m&&t.delete(u),new Error("Wrong provider for target.")}return _}function l(u,s,f){var p=a(s,f,!1);return h(p)?!1:we(p.has(u))}function M(u,s,f){var p=a(s,f,!1);if(!h(p))return p.get(u)}function E(u,s,f,p){var m=a(f,p,!0);m.set(u,s)}function v(u,s){var f=[],p=a(u,s,!1);if(h(p))return f;for(var m=p.keys(),_=ge(m),A=0;;){var Pe=Ee(_);if(!Pe)return f.length=A,f;var gt=be(Pe);try{f[A]=gt}catch(bt){try{Oe(_)}finally{throw bt}}A++}}function o(u,s,f){var p=a(s,f,!1);if(h(p)||!p.delete(u))return!1;if(p.size===0){var m=t.get(s);h(m)||(m.delete(f),m.size===0&&t.delete(m))}return!0}}function wt(e){var t=e.defineMetadata,r=e.hasOwnMetadata,a=e.getOwnMetadata,l=e.getOwnMetadataKeys,M=e.deleteMetadata,E=new B,v={isProviderFor:function(o,u){var s=E.get(o);return!h(s)&&s.has(u)?!0:l(o,u).length?(h(s)&&(s=new V,E.set(o,s)),s.add(u),!0):!1},OrdinaryDefineOwnMetadata:t,OrdinaryHasOwnMetadata:r,OrdinaryGetOwnMetadata:a,OrdinaryOwnMetadataKeys:l,OrdinaryDeleteMetadata:M};return v}function N(e,t,r){var a=Y.getProvider(e,t);if(!h(a))return a;if(r){if(Y.setProvider(e,t,fe))return fe;throw new Error("Illegal state.")}}function mt(){var e={},t=[],r=(function(){function v(o,u,s){this._index=0,this._keys=o,this._values=u,this._selector=s}return v.prototype["@@iterator"]=function(){return this},v.prototype[R]=function(){return this},v.prototype.next=function(){var o=this._index;if(o>=0&&o<this._keys.length){var u=this._selector(this._keys[o],this._values[o]);return o+1>=this._keys.length?(this._index=-1,this._keys=t,this._values=t):this._index++,{value:u,done:!1}}return{value:void 0,done:!0}},v.prototype.throw=function(o){throw this._index>=0&&(this._index=-1,this._keys=t,this._values=t),o},v.prototype.return=function(o){return this._index>=0&&(this._index=-1,this._keys=t,this._values=t),{value:o,done:!0}},v})(),a=(function(){function v(){this._keys=[],this._values=[],this._cacheKey=e,this._cacheIndex=-2}return Object.defineProperty(v.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),v.prototype.has=function(o){return this._find(o,!1)>=0},v.prototype.get=function(o){var u=this._find(o,!1);return u>=0?this._values[u]:void 0},v.prototype.set=function(o,u){var s=this._find(o,!0);return this._values[s]=u,this},v.prototype.delete=function(o){var u=this._find(o,!1);if(u>=0){for(var s=this._keys.length,f=u+1;f<s;f++)this._keys[f-1]=this._keys[f],this._values[f-1]=this._values[f];return this._keys.length--,this._values.length--,Z(o,this._cacheKey)&&(this._cacheKey=e,this._cacheIndex=-2),!0}return!1},v.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=e,this._cacheIndex=-2},v.prototype.keys=function(){return new r(this._keys,this._values,l)},v.prototype.values=function(){return new r(this._keys,this._values,M)},v.prototype.entries=function(){return new r(this._keys,this._values,E)},v.prototype["@@iterator"]=function(){return this.entries()},v.prototype[R]=function(){return this.entries()},v.prototype._find=function(o,u){if(!Z(this._cacheKey,o)){this._cacheIndex=-1;for(var s=0;s<this._keys.length;s++)if(Z(this._keys[s],o)){this._cacheIndex=s;break}}return this._cacheIndex<0&&u&&(this._cacheIndex=this._keys.length,this._keys.push(o),this._values.push(void 0)),this._cacheIndex},v})();return a;function l(v,o){return v}function M(v,o){return o}function E(v,o){return[v,o]}}function Mt(){var e=(function(){function t(){this._map=new U}return Object.defineProperty(t.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),t.prototype.has=function(r){return this._map.has(r)},t.prototype.add=function(r){return this._map.set(r,r),this},t.prototype.delete=function(r){return this._map.delete(r)},t.prototype.clear=function(){this._map.clear()},t.prototype.keys=function(){return this._map.keys()},t.prototype.values=function(){return this._map.keys()},t.prototype.entries=function(){return this._map.entries()},t.prototype["@@iterator"]=function(){return this.keys()},t.prototype[R]=function(){return this.keys()},t})();return e}function _t(){var e=16,t=k.create(),r=a();return(function(){function o(){this._key=a()}return o.prototype.has=function(u){var s=l(u,!1);return s!==void 0?k.has(s,this._key):!1},o.prototype.get=function(u){var s=l(u,!1);return s!==void 0?k.get(s,this._key):void 0},o.prototype.set=function(u,s){var f=l(u,!0);return f[this._key]=s,this},o.prototype.delete=function(u){var s=l(u,!1);return s!==void 0?delete s[this._key]:!1},o.prototype.clear=function(){this._key=a()},o})();function a(){var o;do o="@@WeakMap@@"+v();while(k.has(t,o));return t[o]=!0,o}function l(o,u){if(!y.call(o,r)){if(!u)return;Object.defineProperty(o,r,{value:k.create()})}return o[r]}function M(o,u){for(var s=0;s<u;++s)o[s]=Math.random()*255|0;return o}function E(o){if(typeof Uint8Array=="function"){var u=new Uint8Array(o);return typeof crypto<"u"?crypto.getRandomValues(u):typeof msCrypto<"u"?msCrypto.getRandomValues(u):M(u,o),u}return M(new Array(o),o)}function v(){var o=E(e);o[6]=o[6]&79|64,o[8]=o[8]&191|128;for(var u="",s=0;s<e;++s){var f=o[s];(s===4||s===6||s===8)&&(u+="-"),f<16&&(u+="0"),u+=f.toString(16).toLowerCase()}return u}}function X(e){return e.__=void 0,delete e.__,e}})})(n||(n={})),K}Te();const Q=Symbol("endpoint:metadata");function D(n,i="",c={}){return function(d,y){const g={method:n,path:i,...c};Reflect.defineMetadata(Q,g,d,y)}}function Re(n="",i={}){return D(O.HttpMethod.GET,n,i)}function ke(n="",i={}){return D(O.HttpMethod.POST,n,i)}function Ae(n="",i={}){return D(O.HttpMethod.PUT,n,i)}function Ie(n="",i={}){return D(O.HttpMethod.DELETE,n,i)}function Se(n="",i={}){return D(O.HttpMethod.PATCH,n,i)}function De(n="",i={}){return D(O.HttpMethod.HEAD,n,i)}function qe(n="",i={}){return D(O.HttpMethod.OPTIONS,n,i)}const F=new WeakMap;function te(n){if(typeof n!="function")throw new TypeError("Expected a function");if(F.has(n))return F.get(n);try{const i=n.toString().trim(),c=xe(i);if(!je(c)){const y=[];return F.set(n,y),y}const d=Ce(c);return F.set(n,d),d}catch{const i=[];return F.set(n,i),i}}function re(n,i,c,d){if(d)return d;try{const y=n[i];if(y&&typeof y=="function"){const g=te(y);if(c<g.length)return g[c]}}catch{}}function je(n){return n!=null&&n.trim()!==""}function xe(n){if(n.startsWith("(")){const d=ne(n,0);return d===-1?"":n.substring(1,d)}const i=n.indexOf("(");if(i===-1)return"";const c=ne(n,i);return c===-1?"":n.substring(i+1,c)}function ne(n,i){let c=1;for(let d=i+1;d<n.length;d++){const y=n[d];if(y==="(")c++;else if(y===")"&&(c--,c===0))return d}return-1}function Ce(n){return n.split(",").map(Ge).filter(He).map(Fe)}function Ge(n){return n.trim()}function He(n){return n.length>0}function Fe(n){let i=Ue(n);return i=Ne(i),i.trim()}function Ue(n){const i=n.indexOf("=");return i!==-1?n.substring(0,i):n}function Ne(n){const i=n.indexOf(":");return i!==-1?n.substring(0,i):n}var x=(n=>(n.PATH="path",n.QUERY="query",n.HEADER="header",n.BODY="body",n.REQUEST="request",n))(x||{});const W=Symbol("parameter:metadata");function C(n,i=""){return function(c,d,y){const g=re(c,d,y,i),T=Reflect.getMetadata(W,c,d)||[];T.push({type:n,name:g,index:y}),Reflect.defineMetadata(W,T,c,d)}}function We(n=""){return C("path",n)}function Ye(n=""){return C("query",n)}function Le(n=""){return C("header",n)}function Qe(){return C("body")}function Ve(){return C("request")}const Be={DEFAULT:n=>n.requiredResponse};function ae(n){if(n)return n instanceof O.Fetcher?n:O.fetcherRegistrar.requiredGet(n)}class ie{constructor(i,c,d,y){this.name=i,this.api=c,this.endpoint=d,this.parameters=y}get fetcher(){return ae(this.endpoint.fetcher??this.api.fetcher)??O.fetcher}resolveRequest(i){const c={},d={},y={...this.api.headers,...this.endpoint.headers};let g,T,R={};i.forEach((P,k)=>{if(P instanceof AbortSignal){T=P;return}if(k<this.parameters.length){const I=this.parameters[k];switch(I.type){case x.PATH:this.processPathParam(I,P,c);break;case x.QUERY:this.processQueryParam(I,P,d);break;case x.HEADER:this.processHeaderParam(I,P,y);break;case x.BODY:g=P;break;case x.REQUEST:R=this.processRequestParam(P);break}}});const q={path:c,query:d},j={method:this.endpoint.method,urlParams:q,headers:y,body:g,timeout:this.resolveTimeout(),signal:T};return O.mergeRequest(j,R)}processPathParam(i,c,d){const y=i.name||`param${i.index}`;d[y]=c}processQueryParam(i,c,d){const y=i.name||`param${i.index}`;d[y]=c}processHeaderParam(i,c,d){i.name&&c!==void 0&&(d[i.name]=String(c))}processRequestParam(i){return i}resolvePath(){const i=this.endpoint.basePath||this.api.basePath||"",c=this.endpoint.path||"";return O.combineURLs(i,c)}resolveTimeout(){return this.endpoint.timeout||this.api.timeout}resolveResultExtractor(){return this.endpoint.resultExtractor||this.api.resultExtractor||Be.DEFAULT}}class oe{constructor(i){this.metadata=i}async execute(i){const c=this.metadata.resolvePath(),d=this.metadata.resolveRequest(i),y={url:c,...d},g=await this.metadata.fetcher.request(y);return await this.metadata.resolveResultExtractor()(g)}}const ue=Symbol("api:metadata");function ze(n,i,c){const d=n.prototype[i];if(i==="constructor"||typeof d!="function")return;const y=Reflect.getMetadata(Q,n.prototype,i);if(!y)return;const g=Reflect.getMetadata(W,n.prototype,i)||[],T=new ie(i,c,y,g),R=new oe(T);n.prototype[i]=function(...q){return R.execute(q)}}function Ze(n="",i={}){return function(c){const d={basePath:n,...i};return Reflect.defineMetadata(ue,d,c),Object.getOwnPropertyNames(c.prototype).forEach(y=>{ze(c,y,d)}),c}}class se extends Error{constructor(){super("Implementation will be generated automatically."),this.name="AutoGenerated"}}const Je=()=>new se;w.API_METADATA_KEY=ue,w.AutoGenerated=se,w.ENDPOINT_METADATA_KEY=Q,w.FunctionMetadata=ie,w.PARAMETER_METADATA_KEY=W,w.ParameterType=x,w.RequestExecutor=oe,w.api=Ze,w.autoGeneratedError=Je,w.body=Qe,w.del=Ie,w.endpoint=D,w.get=Re,w.getFetcher=ae,w.getParameterName=re,w.getParameterNames=te,w.head=De,w.header=Le,w.options=qe,w.parameter=C,w.patch=Se,w.path=We,w.post=ke,w.put=Ae,w.query=Ye,w.request=Ve,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestExecutor.d.ts","sourceRoot":"","sources":["../src/requestExecutor.ts"],"names":[],"mappings":"AAYA,OAAO,EAGL,OAAO,
|
|
1
|
+
{"version":3,"file":"requestExecutor.d.ts","sourceRoot":"","sources":["../src/requestExecutor.ts"],"names":[],"mappings":"AAYA,OAAO,EAGL,OAAO,EACP,aAAa,EACb,gBAAgB,EAEhB,YAAY,EAGb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAiB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAoB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAGvE;;;;;;GAMG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,GAAG,EAAE,WAAW,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,gBAAgB,CAAC;IAE3B;;OAEG;IACH,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAEhC;;;;;;;OAOG;gBAED,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,iBAAiB,EAAE;IASjC;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6CG;IACH,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,gBAAgB;IAoD7C,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,kBAAkB;IAU1B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;;;;;;OAOG;IACH,WAAW,IAAI,MAAM;IAMrB;;;;;;;OAOG;IACH,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,sBAAsB,IAAI,eAAe;CAG1C;AAED;;;;;;GAMG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAE5C;;;;OAIG;gBACS,QAAQ,EAAE,gBAAgB;IAItC;;;;;;;;OAQG;IACG,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,aAAa,GAAG,QAAQ,GAAG,GAAG,GAAG,qBAAqB,CAAC;CAY5F"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FetchExchange } from '@ahoo-wang/fetcher';
|
|
2
2
|
import { ServerSentEventStream } from '@ahoo-wang/fetcher-eventstream';
|
|
3
|
+
import { CommandResultEventStream } from '@ahoo-wang/fetcher-wow';
|
|
3
4
|
/**
|
|
4
5
|
* Result extractor interface
|
|
5
6
|
* Defines a function type for extracting results from a FetchExchange
|
|
@@ -7,7 +8,7 @@ import { ServerSentEventStream } from '@ahoo-wang/fetcher-eventstream';
|
|
|
7
8
|
* @returns Returns a value of type FetchExchange, Response, or Promise<any>
|
|
8
9
|
*/
|
|
9
10
|
export interface ResultExtractor {
|
|
10
|
-
(exchange: FetchExchange): FetchExchange | Response | Promise<any> | ServerSentEventStream;
|
|
11
|
+
(exchange: FetchExchange): FetchExchange | Response | Promise<any> | ServerSentEventStream | CommandResultEventStream;
|
|
11
12
|
}
|
|
12
13
|
/**
|
|
13
14
|
* Interface with result extractor capability
|
|
@@ -48,6 +49,21 @@ export declare const TextResultExtractor: ResultExtractor;
|
|
|
48
49
|
* @throws ExchangeError exception when server does not support ServerSentEventStream
|
|
49
50
|
*/
|
|
50
51
|
export declare const ServerSentEventStreamResultExtractor: ResultExtractor;
|
|
52
|
+
/**
|
|
53
|
+
* CommandResultEventStream result extractor, used to extract command result event stream from FetchExchange.
|
|
54
|
+
* This function transforms a server-sent event stream into a command result event stream.
|
|
55
|
+
*
|
|
56
|
+
* 提取命令结果事件流,用于从FetchExchange中提取命令结果事件流。
|
|
57
|
+
* 该函数将服务器发送事件流转换为命令结果事件流。
|
|
58
|
+
*
|
|
59
|
+
* @param exchange - The exchange object containing the server-sent event stream data
|
|
60
|
+
* 包含服务器发送事件流数据的交换对象
|
|
61
|
+
* @returns A command result event stream derived from the server-sent event stream
|
|
62
|
+
* 从服务器发送事件流派生的命令结果事件流
|
|
63
|
+
* @throws ExchangeError exception when server does not support ServerSentEventStream
|
|
64
|
+
* 当服务器不支持ServerSentEventStream时抛出ExchangeError异常
|
|
65
|
+
*/
|
|
66
|
+
export declare const CommandResultEventStreamResultExtractor: ResultExtractor;
|
|
51
67
|
/**
|
|
52
68
|
* ResultExtractors is an object that maps result extractor names to their corresponding
|
|
53
69
|
* extractor functions. These extractors are used to process and extract data from different
|
|
@@ -59,6 +75,7 @@ export declare const ServerSentEventStreamResultExtractor: ResultExtractor;
|
|
|
59
75
|
* - Json: Handles JSON format result extraction
|
|
60
76
|
* - Text: Handles plain text result extraction
|
|
61
77
|
* - ServerSentEventStream: Handles server-sent event stream result extraction
|
|
78
|
+
* - CommandResultEventStream: Handles command result event stream result extraction
|
|
62
79
|
*/
|
|
63
80
|
export declare const ResultExtractors: {
|
|
64
81
|
Exchange: ResultExtractor;
|
|
@@ -66,6 +83,7 @@ export declare const ResultExtractors: {
|
|
|
66
83
|
Json: ResultExtractor;
|
|
67
84
|
Text: ResultExtractor;
|
|
68
85
|
ServerSentEventStream: ResultExtractor;
|
|
86
|
+
CommandResultEventStream: ResultExtractor;
|
|
69
87
|
DEFAULT: ResultExtractor;
|
|
70
88
|
};
|
|
71
89
|
//# sourceMappingURL=resultExtractor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resultExtractor.d.ts","sourceRoot":"","sources":["../src/resultExtractor.ts"],"names":[],"mappings":"AAaA,OAAO,EAAiB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"resultExtractor.d.ts","sourceRoot":"","sources":["../src/resultExtractor.ts"],"names":[],"mappings":"AAaA,OAAO,EAAiB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EACL,wBAAwB,EAEzB,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,CACE,QAAQ,EAAE,aAAa,GAErB,aAAa,GACb,QAAQ,GACR,OAAO,CAAC,GAAG,CAAC,GACZ,qBAAqB,GACrB,wBAAwB,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,eAIrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,eAIrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,eAIjC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,eAIjC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,EAAE,eASlD,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uCAAuC,EAAE,eASnD,CAAC;AAEJ;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;CAQ5B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ahoo-wang/fetcher-decorator",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.8",
|
|
4
4
|
"description": "TypeScript decorators for clean API service definitions with Fetcher HTTP client",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"fetch",
|
|
@@ -36,8 +36,9 @@
|
|
|
36
36
|
],
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"reflect-metadata": "^0.2.2",
|
|
39
|
-
"@ahoo-wang/fetcher": "0.9.
|
|
40
|
-
"@ahoo-wang/fetcher-eventstream": "0.9.
|
|
39
|
+
"@ahoo-wang/fetcher": "0.9.8",
|
|
40
|
+
"@ahoo-wang/fetcher-eventstream": "0.9.8",
|
|
41
|
+
"@ahoo-wang/fetcher-wow": "0.9.8"
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
43
44
|
"@vitest/coverage-v8": "^3.2.4",
|