@sfutureapps/gateway-sdk 1.0.3 → 1.0.6
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/dist/client.d.ts +16 -3
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +25 -5
- package/dist/client.js.map +1 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
1
|
export type GatewayServiceProxy<TResult = unknown, TPayload = unknown> = {
|
|
2
2
|
[methodName: string]: (payload?: TPayload) => Promise<TResult>;
|
|
3
3
|
};
|
|
4
|
-
export
|
|
4
|
+
export type GatewayRequestOptions = {
|
|
5
|
+
/** Extra headers to send with every gateway request (e.g., Authorization). */
|
|
6
|
+
headers?: HeadersInit;
|
|
7
|
+
/** Override the gateway endpoint path (default: `/api/gateway`). */
|
|
8
|
+
endpoint?: string;
|
|
9
|
+
/** Pass through fetch options if needed. */
|
|
10
|
+
credentials?: RequestCredentials;
|
|
11
|
+
signal?: AbortSignal;
|
|
12
|
+
/** For environments where you want to inject a custom fetch implementation. */
|
|
13
|
+
fetch?: typeof fetch;
|
|
14
|
+
};
|
|
15
|
+
export declare class ApiSdkClient {
|
|
5
16
|
baseUrl: string;
|
|
6
|
-
|
|
7
|
-
|
|
17
|
+
private defaultOptions;
|
|
18
|
+
constructor(baseUrl: string, defaultOptions?: GatewayRequestOptions);
|
|
19
|
+
call<TResult = unknown, TPayload = unknown>(service: string, options?: GatewayRequestOptions): GatewayServiceProxy<TResult, TPayload>;
|
|
8
20
|
}
|
|
21
|
+
export declare function createClient(baseUrl: string, options?: GatewayRequestOptions): ApiSdkClient;
|
|
9
22
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,mBAAmB,CAAC,OAAO,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI;IACvE,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE,CAAC;AAEF,qBAAa,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,mBAAmB,CAAC,OAAO,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI;IACvE,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,8EAA8E;IAC9E,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAWF,qBAAa,YAAY;IAEd,OAAO,EAAE,MAAM;IACtB,OAAO,CAAC,cAAc;gBADf,OAAO,EAAE,MAAM,EACd,cAAc,GAAE,qBAA0B;IAGpD,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,EACxC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,qBAA0B,GAClC,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC;CAkC1C;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,gBAE5E"}
|
package/dist/client.js
CHANGED
|
@@ -1,8 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
function mergeHeaders(base, extra) {
|
|
2
|
+
if (!base && !extra)
|
|
3
|
+
return undefined;
|
|
4
|
+
const merged = new Headers(base);
|
|
5
|
+
if (extra) {
|
|
6
|
+
new Headers(extra).forEach((value, key) => merged.set(key, value));
|
|
7
|
+
}
|
|
8
|
+
return merged;
|
|
9
|
+
}
|
|
10
|
+
export class ApiSdkClient {
|
|
11
|
+
constructor(baseUrl, defaultOptions = {}) {
|
|
3
12
|
this.baseUrl = baseUrl;
|
|
13
|
+
this.defaultOptions = defaultOptions;
|
|
4
14
|
}
|
|
5
|
-
call(service) {
|
|
15
|
+
call(service, options = {}) {
|
|
6
16
|
return new Proxy({}, {
|
|
7
17
|
get: (_target, fn) => {
|
|
8
18
|
if (typeof fn !== 'string')
|
|
@@ -12,9 +22,16 @@ export class FastAdminGatewayClient {
|
|
|
12
22
|
form.append('class', service);
|
|
13
23
|
form.append('function', fn);
|
|
14
24
|
form.append('payload', JSON.stringify(payload ?? {}));
|
|
15
|
-
const
|
|
25
|
+
const fetchImpl = options.fetch ?? this.defaultOptions.fetch ?? fetch;
|
|
26
|
+
const endpoint = options.endpoint ?? this.defaultOptions.endpoint ?? '/api/gateway';
|
|
27
|
+
const url = `${this.baseUrl}${endpoint}`;
|
|
28
|
+
const headers = mergeHeaders(this.defaultOptions.headers, options.headers);
|
|
29
|
+
const response = await fetchImpl(url, {
|
|
16
30
|
method: 'POST',
|
|
17
|
-
body: form
|
|
31
|
+
body: form,
|
|
32
|
+
headers,
|
|
33
|
+
credentials: options.credentials ?? this.defaultOptions.credentials,
|
|
34
|
+
signal: options.signal ?? this.defaultOptions.signal
|
|
18
35
|
});
|
|
19
36
|
const json = (await response.json());
|
|
20
37
|
if (json.code !== 1)
|
|
@@ -25,4 +42,7 @@ export class FastAdminGatewayClient {
|
|
|
25
42
|
});
|
|
26
43
|
}
|
|
27
44
|
}
|
|
45
|
+
export function createClient(baseUrl, options) {
|
|
46
|
+
return new ApiSdkClient(baseUrl, options);
|
|
47
|
+
}
|
|
28
48
|
//# sourceMappingURL=client.js.map
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAsBA,SAAS,YAAY,CAAC,IAAkB,EAAE,KAAmB;IAC3D,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,OAAO,YAAY;IACvB,YACS,OAAe,EACd,iBAAwC,EAAE;QAD3C,YAAO,GAAP,OAAO,CAAQ;QACd,mBAAc,GAAd,cAAc,CAA4B;IACjD,CAAC;IAEJ,IAAI,CACF,OAAe,EACf,UAAiC,EAAE;QAEnC,OAAO,IAAI,KAAK,CACd,EAA4C,EAC5C;YACE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAmB,EAAE,EAAE;gBACpC,IAAI,OAAO,EAAE,KAAK,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAE7C,OAAO,KAAK,EAAE,OAAkB,EAAoB,EAAE;oBACpD,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;oBAC5B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC9B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;oBAEtD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,KAAK,CAAC;oBACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC;oBACpF,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;oBACzC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBAE3E,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;wBACpC,MAAM,EAAE,MAAM;wBACd,IAAI,EAAE,IAAI;wBACV,OAAO;wBACP,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,cAAc,CAAC,WAAW;wBACnE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM;qBACrD,CAAC,CAAC;oBAEH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC;oBACjE,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;wBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC/C,OAAO,IAAI,CAAC,IAAI,CAAC;gBACnB,CAAC,CAAC;YACJ,CAAC;SACF,CACF,CAAC;IACJ,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,OAA+B;IAC3E,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC"}
|