@modularizer/plat 0.1.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 +574 -0
- package/bin/z2.js +5 -0
- package/dist/args/coerce.d.ts +54 -0
- package/dist/args/coerce.d.ts.map +1 -0
- package/dist/args/coerce.js +236 -0
- package/dist/args/coerce.js.map +1 -0
- package/dist/args/index.d.ts +2 -0
- package/dist/args/index.d.ts.map +1 -0
- package/dist/args/index.js +2 -0
- package/dist/args/index.js.map +1 -0
- package/dist/args/scalars.d.ts +87 -0
- package/dist/args/scalars.d.ts.map +1 -0
- package/dist/args/scalars.js +22 -0
- package/dist/args/scalars.js.map +1 -0
- package/dist/args/validate.d.ts +23 -0
- package/dist/args/validate.d.ts.map +1 -0
- package/dist/args/validate.js +185 -0
- package/dist/args/validate.js.map +1 -0
- package/dist/args/z2.d.ts +27 -0
- package/dist/args/z2.d.ts.map +1 -0
- package/dist/args/z2.js +24 -0
- package/dist/args/z2.js.map +1 -0
- package/dist/cli/commands/api-proxy.d.ts +9 -0
- package/dist/cli/commands/api-proxy.d.ts.map +1 -0
- package/dist/cli/commands/api-proxy.js +292 -0
- package/dist/cli/commands/api-proxy.js.map +1 -0
- package/dist/cli/commands/env.d.ts +32 -0
- package/dist/cli/commands/env.d.ts.map +1 -0
- package/dist/cli/commands/env.js +157 -0
- package/dist/cli/commands/env.js.map +1 -0
- package/dist/cli/commands/gen.d.ts +2 -0
- package/dist/cli/commands/gen.d.ts.map +1 -0
- package/dist/cli/commands/gen.js +88 -0
- package/dist/cli/commands/gen.js.map +1 -0
- package/dist/cli/commands/init-project.d.ts +9 -0
- package/dist/cli/commands/init-project.d.ts.map +1 -0
- package/dist/cli/commands/init-project.js +143 -0
- package/dist/cli/commands/init-project.js.map +1 -0
- package/dist/cli/commands/jwt-cmd.d.ts +10 -0
- package/dist/cli/commands/jwt-cmd.d.ts.map +1 -0
- package/dist/cli/commands/jwt-cmd.js +33 -0
- package/dist/cli/commands/jwt-cmd.js.map +1 -0
- package/dist/cli/commands/run.d.ts +5 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +31 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +2 -0
- package/dist/cli/commands/serve.d.ts.map +1 -0
- package/dist/cli/commands/serve.js +43 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/watch.d.ts +5 -0
- package/dist/cli/commands/watch.d.ts.map +1 -0
- package/dist/cli/commands/watch.js +119 -0
- package/dist/cli/commands/watch.js.map +1 -0
- package/dist/cli/index.d.ts +11 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +11 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/jwt-helper.d.ts +32 -0
- package/dist/cli/jwt-helper.d.ts.map +1 -0
- package/dist/cli/jwt-helper.js +84 -0
- package/dist/cli/jwt-helper.js.map +1 -0
- package/dist/cli/proxy.d.ts +40 -0
- package/dist/cli/proxy.d.ts.map +1 -0
- package/dist/cli/proxy.js +171 -0
- package/dist/cli/proxy.js.map +1 -0
- package/dist/cli/runtime.d.ts +17 -0
- package/dist/cli/runtime.d.ts.map +1 -0
- package/dist/cli/runtime.js +286 -0
- package/dist/cli/runtime.js.map +1 -0
- package/dist/cli/spec-source.d.ts +13 -0
- package/dist/cli/spec-source.d.ts.map +1 -0
- package/dist/cli/spec-source.js +207 -0
- package/dist/cli/spec-source.js.map +1 -0
- package/dist/cli/z2.d.ts +7 -0
- package/dist/cli/z2.d.ts.map +1 -0
- package/dist/cli/z2.js +93 -0
- package/dist/cli/z2.js.map +1 -0
- package/dist/client/file-transport-plugin.d.ts +25 -0
- package/dist/client/file-transport-plugin.d.ts.map +1 -0
- package/dist/client/file-transport-plugin.js +80 -0
- package/dist/client/file-transport-plugin.js.map +1 -0
- package/dist/client/http-transport-plugin.d.ts +27 -0
- package/dist/client/http-transport-plugin.d.ts.map +1 -0
- package/dist/client/http-transport-plugin.js +48 -0
- package/dist/client/http-transport-plugin.js.map +1 -0
- package/dist/client/index.d.ts +6 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +6 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/openapi-client.d.ts +332 -0
- package/dist/client/openapi-client.d.ts.map +1 -0
- package/dist/client/openapi-client.js +879 -0
- package/dist/client/openapi-client.js.map +1 -0
- package/dist/client/proxy.d.ts +5 -0
- package/dist/client/proxy.d.ts.map +1 -0
- package/dist/client/proxy.js +353 -0
- package/dist/client/proxy.js.map +1 -0
- package/dist/client/request-builder.d.ts +4 -0
- package/dist/client/request-builder.d.ts.map +1 -0
- package/dist/client/request-builder.js +88 -0
- package/dist/client/request-builder.js.map +1 -0
- package/dist/client/rpc-transport-plugin.d.ts +17 -0
- package/dist/client/rpc-transport-plugin.d.ts.map +1 -0
- package/dist/client/rpc-transport-plugin.js +69 -0
- package/dist/client/rpc-transport-plugin.js.map +1 -0
- package/dist/client/tools.d.ts +69 -0
- package/dist/client/tools.d.ts.map +1 -0
- package/dist/client/tools.js +122 -0
- package/dist/client/tools.js.map +1 -0
- package/dist/client/transport-plugin.d.ts +62 -0
- package/dist/client/transport-plugin.d.ts.map +1 -0
- package/dist/client/transport-plugin.js +40 -0
- package/dist/client/transport-plugin.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/logging.d.ts +9 -0
- package/dist/logging.d.ts.map +1 -0
- package/dist/logging.js +29 -0
- package/dist/logging.js.map +1 -0
- package/dist/rpc.d.ts +39 -0
- package/dist/rpc.d.ts.map +1 -0
- package/dist/rpc.js +2 -0
- package/dist/rpc.js.map +1 -0
- package/dist/server/auth/index.d.ts +4 -0
- package/dist/server/auth/index.d.ts.map +1 -0
- package/dist/server/auth/index.js +2 -0
- package/dist/server/auth/index.js.map +1 -0
- package/dist/server/auth/jwt.d.ts +27 -0
- package/dist/server/auth/jwt.d.ts.map +1 -0
- package/dist/server/auth/jwt.js +95 -0
- package/dist/server/auth/jwt.js.map +1 -0
- package/dist/server/cache/index.d.ts +2 -0
- package/dist/server/cache/index.d.ts.map +1 -0
- package/dist/server/cache/index.js +2 -0
- package/dist/server/cache/index.js.map +1 -0
- package/dist/server/cache/utils.d.ts +30 -0
- package/dist/server/cache/utils.d.ts.map +1 -0
- package/dist/server/cache/utils.js +116 -0
- package/dist/server/cache/utils.js.map +1 -0
- package/dist/server/call-sessions.d.ts +50 -0
- package/dist/server/call-sessions.d.ts.map +1 -0
- package/dist/server/call-sessions.js +90 -0
- package/dist/server/call-sessions.js.map +1 -0
- package/dist/server/config/bucket.d.ts +9 -0
- package/dist/server/config/bucket.d.ts.map +1 -0
- package/dist/server/config/bucket.js +57 -0
- package/dist/server/config/bucket.js.map +1 -0
- package/dist/server/config/defaults.d.ts +3 -0
- package/dist/server/config/defaults.d.ts.map +1 -0
- package/dist/server/config/defaults.js +29 -0
- package/dist/server/config/defaults.js.map +1 -0
- package/dist/server/config/index.d.ts +5 -0
- package/dist/server/config/index.d.ts.map +1 -0
- package/dist/server/config/index.js +5 -0
- package/dist/server/config/index.js.map +1 -0
- package/dist/server/config/logger.d.ts +3 -0
- package/dist/server/config/logger.d.ts.map +1 -0
- package/dist/server/config/logger.js +2 -0
- package/dist/server/config/logger.js.map +1 -0
- package/dist/server/config/types.d.ts +198 -0
- package/dist/server/config/types.d.ts.map +1 -0
- package/dist/server/config/types.js +2 -0
- package/dist/server/config/types.js.map +1 -0
- package/dist/server/core.d.ts +42 -0
- package/dist/server/core.d.ts.map +1 -0
- package/dist/server/core.js +202 -0
- package/dist/server/core.js.map +1 -0
- package/dist/server/env.d.ts +39 -0
- package/dist/server/env.d.ts.map +1 -0
- package/dist/server/env.js +66 -0
- package/dist/server/env.js.map +1 -0
- package/dist/server/file-queue-protocol-plugin.d.ts +7 -0
- package/dist/server/file-queue-protocol-plugin.d.ts.map +1 -0
- package/dist/server/file-queue-protocol-plugin.js +150 -0
- package/dist/server/file-queue-protocol-plugin.js.map +1 -0
- package/dist/server/file-queue.d.ts +25 -0
- package/dist/server/file-queue.d.ts.map +1 -0
- package/dist/server/file-queue.js +2 -0
- package/dist/server/file-queue.js.map +1 -0
- package/dist/server/help.d.ts +19 -0
- package/dist/server/help.d.ts.map +1 -0
- package/dist/server/help.js +91 -0
- package/dist/server/help.js.map +1 -0
- package/dist/server/index.d.ts +29 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +29 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/operation-registry.d.ts +9 -0
- package/dist/server/operation-registry.d.ts.map +1 -0
- package/dist/server/operation-registry.js +16 -0
- package/dist/server/operation-registry.js.map +1 -0
- package/dist/server/param-aliases.d.ts +40 -0
- package/dist/server/param-aliases.d.ts.map +1 -0
- package/dist/server/param-aliases.js +112 -0
- package/dist/server/param-aliases.js.map +1 -0
- package/dist/server/protocol-plugin.d.ts +72 -0
- package/dist/server/protocol-plugin.d.ts.map +1 -0
- package/dist/server/protocol-plugin.js +2 -0
- package/dist/server/protocol-plugin.js.map +1 -0
- package/dist/server/rate-limit/index.d.ts +2 -0
- package/dist/server/rate-limit/index.d.ts.map +1 -0
- package/dist/server/rate-limit/index.js +2 -0
- package/dist/server/rate-limit/index.js.map +1 -0
- package/dist/server/rate-limit/utils.d.ts +27 -0
- package/dist/server/rate-limit/utils.d.ts.map +1 -0
- package/dist/server/rate-limit/utils.js +126 -0
- package/dist/server/rate-limit/utils.js.map +1 -0
- package/dist/server/routing.d.ts +39 -0
- package/dist/server/routing.d.ts.map +1 -0
- package/dist/server/routing.js +70 -0
- package/dist/server/routing.js.map +1 -0
- package/dist/server/rpc-protocol-plugin.d.ts +12 -0
- package/dist/server/rpc-protocol-plugin.d.ts.map +1 -0
- package/dist/server/rpc-protocol-plugin.js +134 -0
- package/dist/server/rpc-protocol-plugin.js.map +1 -0
- package/dist/server/server.d.ts +143 -0
- package/dist/server/server.d.ts.map +1 -0
- package/dist/server/server.js +1161 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/token-limit/index.d.ts +2 -0
- package/dist/server/token-limit/index.d.ts.map +1 -0
- package/dist/server/token-limit/index.js +2 -0
- package/dist/server/token-limit/index.js.map +1 -0
- package/dist/server/token-limit/utils.d.ts +44 -0
- package/dist/server/token-limit/utils.d.ts.map +1 -0
- package/dist/server/token-limit/utils.js +260 -0
- package/dist/server/token-limit/utils.js.map +1 -0
- package/dist/server/tools.d.ts +51 -0
- package/dist/server/tools.d.ts.map +1 -0
- package/dist/server/tools.js +225 -0
- package/dist/server/tools.js.map +1 -0
- package/dist/server/transports.d.ts +25 -0
- package/dist/server/transports.d.ts.map +1 -0
- package/dist/server/transports.js +2 -0
- package/dist/server/transports.js.map +1 -0
- package/dist/spec/decorators.d.ts +41 -0
- package/dist/spec/decorators.d.ts.map +1 -0
- package/dist/spec/decorators.js +93 -0
- package/dist/spec/decorators.js.map +1 -0
- package/dist/spec/index.d.ts +3 -0
- package/dist/spec/index.d.ts.map +1 -0
- package/dist/spec/index.js +3 -0
- package/dist/spec/index.js.map +1 -0
- package/dist/spec/metadata.d.ts +5 -0
- package/dist/spec/metadata.d.ts.map +1 -0
- package/dist/spec/metadata.js +37 -0
- package/dist/spec/metadata.js.map +1 -0
- package/dist/types/client.d.ts +81 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/client.js +14 -0
- package/dist/types/client.js.map +1 -0
- package/dist/types/endpoints.d.ts +76 -0
- package/dist/types/endpoints.d.ts.map +1 -0
- package/dist/types/endpoints.js +2 -0
- package/dist/types/endpoints.js.map +1 -0
- package/dist/types/errors.d.ts +86 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +153 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/http.d.ts +80 -0
- package/dist/types/http.d.ts.map +1 -0
- package/dist/types/http.js +61 -0
- package/dist/types/http.js.map +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +9 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/openapi.d.ts +220 -0
- package/dist/types/openapi.d.ts.map +1 -0
- package/dist/types/openapi.js +11 -0
- package/dist/types/openapi.js.map +1 -0
- package/dist/types/opts.d.ts +46 -0
- package/dist/types/opts.d.ts.map +1 -0
- package/dist/types/opts.js +2 -0
- package/dist/types/opts.js.map +1 -0
- package/dist/types/plugins.d.ts +93 -0
- package/dist/types/plugins.d.ts.map +1 -0
- package/dist/types/plugins.js +5 -0
- package/dist/types/plugins.js.map +1 -0
- package/dist/types/tools.d.ts +52 -0
- package/dist/types/tools.d.ts.map +1 -0
- package/dist/types/tools.js +2 -0
- package/dist/types/tools.js.map +1 -0
- package/package.json +84 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { HttpMethod } from "./http";
|
|
3
|
+
import { RateLimitMeta, TokenLimitMeta, CacheMeta, RateLimitContext, TokenLimitContext, CacheContext } from "./plugins";
|
|
4
|
+
export type AuthMode = string;
|
|
5
|
+
export interface EndpointDef {
|
|
6
|
+
controller: Function;
|
|
7
|
+
controllerName: string;
|
|
8
|
+
methodName: string;
|
|
9
|
+
httpMethod: HttpMethod;
|
|
10
|
+
basePath: string;
|
|
11
|
+
routePath: string;
|
|
12
|
+
fullPath: string;
|
|
13
|
+
summary?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
tag?: string;
|
|
16
|
+
inputSchema: z.ZodTypeAny;
|
|
17
|
+
outputSchema: z.ZodTypeAny;
|
|
18
|
+
}
|
|
19
|
+
export interface RouteMeta {
|
|
20
|
+
name: string;
|
|
21
|
+
method?: HttpMethod;
|
|
22
|
+
path?: string;
|
|
23
|
+
auth?: AuthMode;
|
|
24
|
+
rateLimit?: RateLimitMeta;
|
|
25
|
+
tokenLimit?: TokenLimitMeta;
|
|
26
|
+
cache?: CacheMeta;
|
|
27
|
+
inputSchema?: z.ZodTypeAny;
|
|
28
|
+
outputSchema?: z.ZodTypeAny;
|
|
29
|
+
summary?: string;
|
|
30
|
+
description?: string;
|
|
31
|
+
opts?: Record<string, any>;
|
|
32
|
+
}
|
|
33
|
+
export interface ControllerMeta {
|
|
34
|
+
basePath: string;
|
|
35
|
+
tag?: string;
|
|
36
|
+
auth?: AuthMode;
|
|
37
|
+
rateLimit?: RateLimitMeta;
|
|
38
|
+
tokenLimit?: TokenLimitMeta;
|
|
39
|
+
cache?: CacheMeta;
|
|
40
|
+
routes: Map<string | symbol, RouteMeta>;
|
|
41
|
+
}
|
|
42
|
+
export interface RouteContext {
|
|
43
|
+
method?: string;
|
|
44
|
+
url?: string;
|
|
45
|
+
headers?: Record<string, string | string[]>;
|
|
46
|
+
auth?: {
|
|
47
|
+
mode: AuthMode;
|
|
48
|
+
user?: any;
|
|
49
|
+
};
|
|
50
|
+
rateLimit?: RateLimitContext;
|
|
51
|
+
tokenLimit?: TokenLimitContext;
|
|
52
|
+
cache?: CacheContext;
|
|
53
|
+
opts?: Record<string, any>;
|
|
54
|
+
call?: {
|
|
55
|
+
id?: string;
|
|
56
|
+
mode: 'rpc' | 'deferred';
|
|
57
|
+
emit: (event: 'progress' | 'log' | 'chunk' | 'message', data?: unknown) => Promise<void> | void;
|
|
58
|
+
progress: (data?: unknown) => Promise<void> | void;
|
|
59
|
+
log: (data?: unknown) => Promise<void> | void;
|
|
60
|
+
chunk: (data?: unknown) => Promise<void> | void;
|
|
61
|
+
cancelled: () => boolean;
|
|
62
|
+
signal?: AbortSignal;
|
|
63
|
+
};
|
|
64
|
+
rpc?: {
|
|
65
|
+
id?: string;
|
|
66
|
+
emit: (event: 'progress' | 'log' | 'chunk' | 'message', data?: unknown) => Promise<void> | void;
|
|
67
|
+
progress: (data?: unknown) => Promise<void> | void;
|
|
68
|
+
log: (data?: unknown) => Promise<void> | void;
|
|
69
|
+
chunk: (data?: unknown) => Promise<void> | void;
|
|
70
|
+
cancelled: () => boolean;
|
|
71
|
+
signal?: AbortSignal;
|
|
72
|
+
};
|
|
73
|
+
request?: unknown;
|
|
74
|
+
response?: unknown;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=endpoints.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/types/endpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/types/endpoints.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { EndpointDef } from "./endpoints";
|
|
2
|
+
export interface ErrorPayload {
|
|
3
|
+
code?: string;
|
|
4
|
+
message?: string;
|
|
5
|
+
details?: unknown;
|
|
6
|
+
[key: string]: unknown;
|
|
7
|
+
}
|
|
8
|
+
export declare class HttpError extends Error {
|
|
9
|
+
readonly statusCode: number;
|
|
10
|
+
readonly data?: any;
|
|
11
|
+
constructor(statusCode: number, message: string, data?: any);
|
|
12
|
+
}
|
|
13
|
+
export declare abstract class HttpProxyError extends Error {
|
|
14
|
+
readonly route: EndpointDef | undefined;
|
|
15
|
+
readonly url: string;
|
|
16
|
+
readonly method: string;
|
|
17
|
+
readonly status: number | undefined;
|
|
18
|
+
readonly statusText: string | undefined;
|
|
19
|
+
readonly headers: Headers | undefined;
|
|
20
|
+
readonly bodyText: string | undefined;
|
|
21
|
+
readonly bodyJson: unknown;
|
|
22
|
+
readonly cause: unknown;
|
|
23
|
+
protected constructor(args: {
|
|
24
|
+
name: string;
|
|
25
|
+
message: string;
|
|
26
|
+
route?: EndpointDef;
|
|
27
|
+
url: string;
|
|
28
|
+
method: string;
|
|
29
|
+
status: number | undefined;
|
|
30
|
+
statusText: string | undefined;
|
|
31
|
+
headers: Headers | undefined;
|
|
32
|
+
bodyText: string | undefined;
|
|
33
|
+
bodyJson: unknown;
|
|
34
|
+
cause: unknown;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
export declare class ClientError extends HttpProxyError {
|
|
38
|
+
readonly payload: ErrorPayload | undefined;
|
|
39
|
+
constructor(args: {
|
|
40
|
+
route?: EndpointDef;
|
|
41
|
+
url: string;
|
|
42
|
+
method: string;
|
|
43
|
+
status: number;
|
|
44
|
+
statusText: string;
|
|
45
|
+
headers: Headers;
|
|
46
|
+
bodyText: string | undefined;
|
|
47
|
+
bodyJson: unknown;
|
|
48
|
+
});
|
|
49
|
+
get isUnauthorized(): boolean;
|
|
50
|
+
get isForbidden(): boolean;
|
|
51
|
+
get isNotFound(): boolean;
|
|
52
|
+
get isConflict(): boolean;
|
|
53
|
+
get isUnprocessable(): boolean;
|
|
54
|
+
get isRateLimited(): boolean;
|
|
55
|
+
get retryAfterMs(): number | undefined;
|
|
56
|
+
}
|
|
57
|
+
export declare class ServerError extends HttpProxyError {
|
|
58
|
+
readonly payload: ErrorPayload | undefined;
|
|
59
|
+
constructor(args: {
|
|
60
|
+
route?: EndpointDef;
|
|
61
|
+
url: string;
|
|
62
|
+
method: string;
|
|
63
|
+
status: number;
|
|
64
|
+
statusText: string;
|
|
65
|
+
headers: Headers;
|
|
66
|
+
bodyText: string | undefined;
|
|
67
|
+
bodyJson: unknown;
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
export declare class NetworkError extends HttpProxyError {
|
|
71
|
+
constructor(args: {
|
|
72
|
+
route?: EndpointDef;
|
|
73
|
+
url: string;
|
|
74
|
+
method: string;
|
|
75
|
+
cause: unknown;
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
export declare class TimeoutError extends HttpProxyError {
|
|
79
|
+
constructor(args: {
|
|
80
|
+
route?: EndpointDef;
|
|
81
|
+
url: string;
|
|
82
|
+
method: string;
|
|
83
|
+
cause: unknown;
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AAExC,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB;AAwBD,qBAAa,SAAU,SAAQ,KAAK;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAA;gBAEP,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;CAM9D;AAGD,8BAAsB,cAAe,SAAQ,KAAK;IAC9C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAA;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,SAAkB,KAAK,EAAE,OAAO,CAAA;IAEhC,SAAS,aAAa,IAAI,EAAE;QACxB,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,WAAW,CAAA;QACnB,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;QAC1B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;QAC9B,OAAO,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,QAAQ,EAAE,OAAO,CAAA;QACjB,KAAK,EAAE,OAAO,CAAA;KACjB;CAaJ;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC3C,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,CAAA;gBAE9B,IAAI,EAAE;QACd,KAAK,CAAC,EAAE,WAAW,CAAA;QACnB,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,CAAA;QACd,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,OAAO,CAAA;QAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,QAAQ,EAAE,OAAO,CAAA;KACpB;IAsBD,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAerC;CACJ;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC3C,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,CAAA;gBAE9B,IAAI,EAAE;QACd,KAAK,CAAC,EAAE,WAAW,CAAA;QACnB,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,CAAA;QACd,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,OAAO,CAAA;QAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,QAAQ,EAAE,OAAO,CAAA;KACpB;CAqBJ;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAChC,IAAI,EAAE;QACd,KAAK,CAAC,EAAE,WAAW,CAAA;QACnB,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,OAAO,CAAA;KACjB;CAeJ;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAChC,IAAI,EAAE;QACd,KAAK,CAAC,EAAE,WAAW,CAAA;QACnB,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,OAAO,CAAA;KACjB;CAeJ"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
function asErrorPayload(value) {
|
|
2
|
+
if (!value || typeof value !== 'object')
|
|
3
|
+
return undefined;
|
|
4
|
+
return value;
|
|
5
|
+
}
|
|
6
|
+
function buildHttpErrorMessage(status, statusText, bodyJson, bodyText) {
|
|
7
|
+
const jsonMessage = bodyJson &&
|
|
8
|
+
typeof bodyJson === 'object' &&
|
|
9
|
+
'message' in bodyJson &&
|
|
10
|
+
typeof bodyJson.message === 'string'
|
|
11
|
+
? bodyJson.message
|
|
12
|
+
: undefined;
|
|
13
|
+
return jsonMessage || bodyText || `HTTP ${status} ${statusText}`;
|
|
14
|
+
}
|
|
15
|
+
export class HttpError extends Error {
|
|
16
|
+
statusCode;
|
|
17
|
+
data;
|
|
18
|
+
constructor(statusCode, message, data) {
|
|
19
|
+
super(message);
|
|
20
|
+
this.name = 'HttpError';
|
|
21
|
+
this.statusCode = statusCode;
|
|
22
|
+
this.data = data;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export class HttpProxyError extends Error {
|
|
26
|
+
route;
|
|
27
|
+
url;
|
|
28
|
+
method;
|
|
29
|
+
status;
|
|
30
|
+
statusText;
|
|
31
|
+
headers;
|
|
32
|
+
bodyText;
|
|
33
|
+
bodyJson;
|
|
34
|
+
cause;
|
|
35
|
+
constructor(args) {
|
|
36
|
+
super(args.message, { cause: args.cause });
|
|
37
|
+
this.name = args.name;
|
|
38
|
+
this.route = args.route;
|
|
39
|
+
this.url = args.url;
|
|
40
|
+
this.method = args.method;
|
|
41
|
+
this.status = args.status;
|
|
42
|
+
this.statusText = args.statusText;
|
|
43
|
+
this.headers = args.headers;
|
|
44
|
+
this.bodyText = args.bodyText;
|
|
45
|
+
this.bodyJson = args.bodyJson;
|
|
46
|
+
this.cause = args.cause;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export class ClientError extends HttpProxyError {
|
|
50
|
+
payload;
|
|
51
|
+
constructor(args) {
|
|
52
|
+
super({
|
|
53
|
+
name: 'ClientError',
|
|
54
|
+
message: buildHttpErrorMessage(args.status, args.statusText, args.bodyJson, args.bodyText),
|
|
55
|
+
route: args.route,
|
|
56
|
+
url: args.url,
|
|
57
|
+
method: args.method,
|
|
58
|
+
status: args.status,
|
|
59
|
+
statusText: args.statusText,
|
|
60
|
+
headers: args.headers,
|
|
61
|
+
bodyText: args.bodyText,
|
|
62
|
+
bodyJson: args.bodyJson,
|
|
63
|
+
cause: undefined,
|
|
64
|
+
});
|
|
65
|
+
this.payload = asErrorPayload(args.bodyJson);
|
|
66
|
+
}
|
|
67
|
+
get isUnauthorized() {
|
|
68
|
+
return this.status === 401;
|
|
69
|
+
}
|
|
70
|
+
get isForbidden() {
|
|
71
|
+
return this.status === 403;
|
|
72
|
+
}
|
|
73
|
+
get isNotFound() {
|
|
74
|
+
return this.status === 404;
|
|
75
|
+
}
|
|
76
|
+
get isConflict() {
|
|
77
|
+
return this.status === 409;
|
|
78
|
+
}
|
|
79
|
+
get isUnprocessable() {
|
|
80
|
+
return this.status === 422;
|
|
81
|
+
}
|
|
82
|
+
get isRateLimited() {
|
|
83
|
+
return this.status === 429;
|
|
84
|
+
}
|
|
85
|
+
get retryAfterMs() {
|
|
86
|
+
const raw = this.headers?.get('retry-after');
|
|
87
|
+
if (!raw)
|
|
88
|
+
return undefined;
|
|
89
|
+
const seconds = Number(raw);
|
|
90
|
+
if (Number.isFinite(seconds)) {
|
|
91
|
+
return Math.max(0, seconds * 1000);
|
|
92
|
+
}
|
|
93
|
+
const dateMs = Date.parse(raw);
|
|
94
|
+
if (Number.isFinite(dateMs)) {
|
|
95
|
+
return Math.max(0, dateMs - Date.now());
|
|
96
|
+
}
|
|
97
|
+
return undefined;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
export class ServerError extends HttpProxyError {
|
|
101
|
+
payload;
|
|
102
|
+
constructor(args) {
|
|
103
|
+
super({
|
|
104
|
+
name: 'ServerError',
|
|
105
|
+
message: buildHttpErrorMessage(args.status, args.statusText, args.bodyJson, args.bodyText),
|
|
106
|
+
route: args.route,
|
|
107
|
+
url: args.url,
|
|
108
|
+
method: args.method,
|
|
109
|
+
status: args.status,
|
|
110
|
+
statusText: args.statusText,
|
|
111
|
+
headers: args.headers,
|
|
112
|
+
bodyText: args.bodyText,
|
|
113
|
+
bodyJson: args.bodyJson,
|
|
114
|
+
cause: undefined,
|
|
115
|
+
});
|
|
116
|
+
this.payload = asErrorPayload(args.bodyJson);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
export class NetworkError extends HttpProxyError {
|
|
120
|
+
constructor(args) {
|
|
121
|
+
super({
|
|
122
|
+
name: 'NetworkError',
|
|
123
|
+
message: `Network error calling ${args.method} ${args.url}`,
|
|
124
|
+
route: args.route,
|
|
125
|
+
url: args.url,
|
|
126
|
+
method: args.method,
|
|
127
|
+
status: undefined,
|
|
128
|
+
statusText: undefined,
|
|
129
|
+
headers: undefined,
|
|
130
|
+
bodyText: undefined,
|
|
131
|
+
bodyJson: undefined,
|
|
132
|
+
cause: args.cause,
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
export class TimeoutError extends HttpProxyError {
|
|
137
|
+
constructor(args) {
|
|
138
|
+
super({
|
|
139
|
+
name: 'TimeoutError',
|
|
140
|
+
message: `Timed out calling ${args.method} ${args.url}`,
|
|
141
|
+
route: args.route,
|
|
142
|
+
url: args.url,
|
|
143
|
+
method: args.method,
|
|
144
|
+
status: undefined,
|
|
145
|
+
statusText: undefined,
|
|
146
|
+
headers: undefined,
|
|
147
|
+
bodyText: undefined,
|
|
148
|
+
bodyJson: undefined,
|
|
149
|
+
cause: args.cause,
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/** A header value that will be auto-coerced to a string at request time. */
|
|
2
|
+
export type HeaderValue = string | number | boolean;
|
|
3
|
+
/** Common MIME types for Content-Type / Accept headers. */
|
|
4
|
+
export declare const ContentTypes: {
|
|
5
|
+
readonly JSON: "application/json";
|
|
6
|
+
readonly FORM: "application/x-www-form-urlencoded";
|
|
7
|
+
readonly MULTIPART: "multipart/form-data";
|
|
8
|
+
readonly TEXT: "text/plain";
|
|
9
|
+
readonly HTML: "text/html";
|
|
10
|
+
readonly CSV: "text/csv";
|
|
11
|
+
readonly XML: "application/xml";
|
|
12
|
+
readonly BINARY: "application/octet-stream";
|
|
13
|
+
};
|
|
14
|
+
export type ContentType = typeof ContentTypes[keyof typeof ContentTypes];
|
|
15
|
+
export type ContentTypeValue = ContentType | (string & {});
|
|
16
|
+
/** Common authorization schemes. */
|
|
17
|
+
export declare const AuthSchemes: {
|
|
18
|
+
readonly BEARER: "Bearer";
|
|
19
|
+
readonly BASIC: "Basic";
|
|
20
|
+
};
|
|
21
|
+
export type AuthScheme = typeof AuthSchemes[keyof typeof AuthSchemes];
|
|
22
|
+
export type AuthorizationValue = `${AuthScheme} ${string}` | (string & {});
|
|
23
|
+
/** Common Cache-Control directives. */
|
|
24
|
+
export declare const CacheDirectives: {
|
|
25
|
+
readonly NO_CACHE: "no-cache";
|
|
26
|
+
readonly NO_STORE: "no-store";
|
|
27
|
+
readonly NO_TRANSFORM: "no-transform";
|
|
28
|
+
readonly MAX_AGE_0: "max-age=0";
|
|
29
|
+
};
|
|
30
|
+
export type CacheDirective = typeof CacheDirectives[keyof typeof CacheDirectives];
|
|
31
|
+
export type CacheControlValue = CacheDirective | `max-age=${number}` | (string & {});
|
|
32
|
+
/** Well-known HTTP headers with narrowed value types. */
|
|
33
|
+
export interface WellKnownHeaders {
|
|
34
|
+
'Content-Type'?: ContentTypeValue;
|
|
35
|
+
'Accept'?: ContentTypeValue;
|
|
36
|
+
'Authorization'?: AuthorizationValue;
|
|
37
|
+
'Cache-Control'?: CacheControlValue;
|
|
38
|
+
'If-None-Match'?: string;
|
|
39
|
+
'If-Modified-Since'?: string;
|
|
40
|
+
'X-Request-ID'?: string;
|
|
41
|
+
[key: string]: HeaderValue | undefined;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Typed HTTP headers: well-known headers get narrowed value types,
|
|
45
|
+
* custom headers (TCustom) are merged in, and any unknown header
|
|
46
|
+
* falls back to HeaderValue.
|
|
47
|
+
*/
|
|
48
|
+
export type TypedHeaders<TCustom extends Record<string, HeaderValue | undefined> = {}> = WellKnownHeaders & TCustom & Record<string, HeaderValue | undefined>;
|
|
49
|
+
export declare const HttpMethods: {
|
|
50
|
+
readonly GET: "GET";
|
|
51
|
+
readonly POST: "POST";
|
|
52
|
+
readonly PUT: "PUT";
|
|
53
|
+
readonly PATCH: "PATCH";
|
|
54
|
+
readonly DELETE: "DELETE";
|
|
55
|
+
};
|
|
56
|
+
export type HttpMethod = typeof HttpMethods[keyof typeof HttpMethods];
|
|
57
|
+
/** Property names reserved by the OpenAPIClient proxy system. */
|
|
58
|
+
export declare const ProxyProps: {
|
|
59
|
+
readonly ROOT: "root";
|
|
60
|
+
readonly CLIENT: "client";
|
|
61
|
+
readonly SPEC: "spec";
|
|
62
|
+
readonly ROUTES: "routes";
|
|
63
|
+
readonly CHILDREN: "children";
|
|
64
|
+
readonly THEN: "then";
|
|
65
|
+
};
|
|
66
|
+
export type ProxyProp = typeof ProxyProps[keyof typeof ProxyProps];
|
|
67
|
+
/** OpenAPI parameter location values. */
|
|
68
|
+
export declare const ParamLocations: {
|
|
69
|
+
readonly QUERY: "query";
|
|
70
|
+
readonly PATH: "path";
|
|
71
|
+
readonly HEADER: "header";
|
|
72
|
+
readonly COOKIE: "cookie";
|
|
73
|
+
};
|
|
74
|
+
export type ParamLocation = typeof ParamLocations[keyof typeof ParamLocations];
|
|
75
|
+
/**
|
|
76
|
+
* All names reserved by the OpenAPIClient and its proxy system.
|
|
77
|
+
* The plat server should reject routes/methods whose names collide with these.
|
|
78
|
+
*/
|
|
79
|
+
export declare const RESERVED_ROUTE_NAMES: readonly string[];
|
|
80
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/types/http.ts"],"names":[],"mappings":"AAEA,4EAA4E;AAC5E,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAEnD,2DAA2D;AAC3D,eAAO,MAAM,YAAY;;;;;;;;;CASf,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AACzE,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAE1D,oCAAoC;AACpC,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,GAAG,UAAU,IAAI,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAE1E,uCAAuC;AACvC,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAClF,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,WAAW,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEpF,yDAAyD;AACzD,MAAM,WAAW,gBAAgB;IAC/B,cAAc,CAAC,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,eAAe,CAAC,EAAE,kBAAkB,CAAA;IACpC,eAAe,CAAC,EAAE,iBAAiB,CAAA;IACnC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAA;CACvC;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,GAAG,EAAE,IACnF,gBAAgB,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,CAAA;AAItE,eAAO,MAAM,WAAW;;;;;;CAMd,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEtE,iEAAiE;AACjE,eAAO,MAAM,UAAU;;;;;;;CAOb,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEnE,yCAAyC;AACzC,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAOxC,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// ── Header types ──────────────────────────────────────────
|
|
2
|
+
/** Common MIME types for Content-Type / Accept headers. */
|
|
3
|
+
export const ContentTypes = {
|
|
4
|
+
JSON: 'application/json',
|
|
5
|
+
FORM: 'application/x-www-form-urlencoded',
|
|
6
|
+
MULTIPART: 'multipart/form-data',
|
|
7
|
+
TEXT: 'text/plain',
|
|
8
|
+
HTML: 'text/html',
|
|
9
|
+
CSV: 'text/csv',
|
|
10
|
+
XML: 'application/xml',
|
|
11
|
+
BINARY: 'application/octet-stream',
|
|
12
|
+
};
|
|
13
|
+
/** Common authorization schemes. */
|
|
14
|
+
export const AuthSchemes = {
|
|
15
|
+
BEARER: 'Bearer',
|
|
16
|
+
BASIC: 'Basic',
|
|
17
|
+
};
|
|
18
|
+
/** Common Cache-Control directives. */
|
|
19
|
+
export const CacheDirectives = {
|
|
20
|
+
NO_CACHE: 'no-cache',
|
|
21
|
+
NO_STORE: 'no-store',
|
|
22
|
+
NO_TRANSFORM: 'no-transform',
|
|
23
|
+
MAX_AGE_0: 'max-age=0',
|
|
24
|
+
};
|
|
25
|
+
// ── HTTP methods ──────────────────────────────────────────
|
|
26
|
+
export const HttpMethods = {
|
|
27
|
+
GET: 'GET',
|
|
28
|
+
POST: 'POST',
|
|
29
|
+
PUT: 'PUT',
|
|
30
|
+
PATCH: 'PATCH',
|
|
31
|
+
DELETE: 'DELETE',
|
|
32
|
+
};
|
|
33
|
+
/** Property names reserved by the OpenAPIClient proxy system. */
|
|
34
|
+
export const ProxyProps = {
|
|
35
|
+
ROOT: 'root',
|
|
36
|
+
CLIENT: 'client',
|
|
37
|
+
SPEC: 'spec',
|
|
38
|
+
ROUTES: 'routes',
|
|
39
|
+
CHILDREN: 'children',
|
|
40
|
+
THEN: 'then',
|
|
41
|
+
};
|
|
42
|
+
/** OpenAPI parameter location values. */
|
|
43
|
+
export const ParamLocations = {
|
|
44
|
+
QUERY: 'query',
|
|
45
|
+
PATH: 'path',
|
|
46
|
+
HEADER: 'header',
|
|
47
|
+
COOKIE: 'cookie',
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* All names reserved by the OpenAPIClient and its proxy system.
|
|
51
|
+
* The plat server should reject routes/methods whose names collide with these.
|
|
52
|
+
*/
|
|
53
|
+
export const RESERVED_ROUTE_NAMES = [
|
|
54
|
+
...Object.values(ProxyProps),
|
|
55
|
+
...Object.values(HttpMethods).map(m => m.toLowerCase()),
|
|
56
|
+
// Native function properties that the proxy falls through to
|
|
57
|
+
'bind', 'call', 'apply', 'toString', 'valueOf',
|
|
58
|
+
'constructor', 'prototype', 'length', 'name',
|
|
59
|
+
'tools', 'buildHeaders',
|
|
60
|
+
];
|
|
61
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/types/http.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAK7D,2DAA2D;AAC3D,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,mCAAmC;IACzC,SAAS,EAAE,qBAAqB;IAChC,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,WAAW;IACjB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,iBAAiB;IACtB,MAAM,EAAE,0BAA0B;CAC5B,CAAC;AAIX,oCAAoC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACR,CAAC;AAIX,uCAAuC;AACvC,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,SAAS,EAAE,WAAW;CAChB,CAAC;AAwBX,6DAA6D;AAE7D,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACV,CAAC;AAGX,iEAAiE;AACjE,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;CACN,CAAC;AAGX,yCAAyC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC1B,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;CACV,CAAC;AAGX;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAsB;IACnD,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;IAC5B,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,6DAA6D;IAC7D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS;IAC9C,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;IAC5C,OAAO,EAAE,cAAc;CACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
|