@kya-os/mcp-i 0.1.0-alpha.3.9 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +350 -213
- package/dist/149.js +1 -0
- package/dist/189.js +1 -0
- package/dist/261.js +1 -0
- package/dist/28.js +1 -0
- package/dist/295.js +1 -0
- package/dist/460.js +1 -0
- package/dist/570.js +1 -0
- package/dist/634.js +1 -0
- package/dist/647.js +1 -0
- package/dist/67.js +1 -0
- package/dist/739.js +1 -0
- package/dist/742.js +1 -0
- package/dist/904.js +1 -0
- package/dist/938.js +1 -0
- package/dist/auth/api-key.d.ts +16 -0
- package/dist/auth/api-key.js +82 -0
- package/dist/auth/jwt.d.ts +43 -0
- package/dist/auth/jwt.js +51 -0
- package/dist/auth/oauth/factory.d.ts +12 -0
- package/dist/auth/oauth/factory.js +36 -0
- package/dist/auth/oauth/index.d.ts +5 -0
- package/dist/auth/oauth/index.js +27 -0
- package/dist/auth/oauth/providers/proxy-provider.d.ts +13 -0
- package/dist/auth/oauth/providers/proxy-provider.js +159 -0
- package/dist/auth/oauth/router.d.ts +4 -0
- package/dist/auth/oauth/router.js +294 -0
- package/dist/auth/oauth/storage/memory-storage.d.ts +12 -0
- package/dist/auth/oauth/storage/memory-storage.js +40 -0
- package/dist/auth/oauth/types.d.ts +112 -0
- package/dist/cache/__tests__/cloudflare-kv-nonce-cache.test.d.ts +4 -0
- package/dist/cache/__tests__/cloudflare-kv-nonce-cache.test.js +176 -0
- package/dist/cache/__tests__/concurrency.test.d.ts +5 -0
- package/dist/cache/__tests__/concurrency.test.js +300 -0
- package/dist/cache/__tests__/dynamodb-nonce-cache.test.d.ts +4 -0
- package/dist/cache/__tests__/dynamodb-nonce-cache.test.js +176 -0
- package/dist/cache/__tests__/memory-nonce-cache.test.d.ts +4 -0
- package/dist/cache/__tests__/memory-nonce-cache.test.js +132 -0
- package/dist/cache/__tests__/nonce-cache-factory-simple.test.d.ts +4 -0
- package/dist/cache/__tests__/nonce-cache-factory-simple.test.js +133 -0
- package/dist/cache/__tests__/nonce-cache-factory.test.d.ts +4 -0
- package/dist/cache/__tests__/nonce-cache-factory.test.js +252 -0
- package/dist/cache/__tests__/redis-nonce-cache.test.d.ts +4 -0
- package/dist/cache/__tests__/redis-nonce-cache.test.js +95 -0
- package/dist/cache/cloudflare-kv-nonce-cache.d.ts +14 -0
- package/dist/cache/cloudflare-kv-nonce-cache.js +93 -0
- package/dist/cache/dynamodb-nonce-cache.d.ts +15 -0
- package/dist/cache/dynamodb-nonce-cache.js +92 -0
- package/dist/cache/index.d.ts +16 -0
- package/dist/cache/index.js +32 -0
- package/dist/cache/memory-nonce-cache.d.ts +44 -0
- package/dist/cache/memory-nonce-cache.js +105 -0
- package/dist/cache/nonce-cache-factory.d.ts +20 -0
- package/dist/cache/nonce-cache-factory.js +208 -0
- package/dist/cache/redis-nonce-cache.d.ts +14 -0
- package/dist/cache/redis-nonce-cache.js +53 -0
- package/dist/compiler/compiler-context.d.ts +23 -0
- package/dist/compiler/compiler-context.js +24 -0
- package/dist/compiler/config/constants.d.ts +41 -0
- package/dist/compiler/config/constants.js +45 -0
- package/dist/compiler/config/index.d.ts +252 -0
- package/dist/compiler/config/index.js +15 -0
- package/dist/compiler/config/injection.d.ts +26 -0
- package/dist/compiler/config/injection.js +58 -0
- package/dist/compiler/config/schemas/experimental/index.d.ts +91 -0
- package/dist/compiler/config/schemas/experimental/index.js +16 -0
- package/dist/compiler/config/schemas/experimental/oauth.d.ts +74 -0
- package/dist/compiler/config/schemas/experimental/oauth.js +25 -0
- package/dist/compiler/config/schemas/index.d.ts +6 -0
- package/dist/compiler/config/schemas/index.js +17 -0
- package/dist/compiler/config/schemas/paths.d.ts +9 -0
- package/dist/compiler/config/schemas/paths.js +12 -0
- package/dist/compiler/config/schemas/transport/http.d.ts +82 -0
- package/dist/compiler/config/schemas/transport/http.js +33 -0
- package/dist/compiler/config/schemas/transport/stdio.d.ts +9 -0
- package/dist/compiler/config/schemas/transport/stdio.js +15 -0
- package/dist/compiler/config/schemas/webpack.d.ts +3 -0
- package/dist/compiler/config/schemas/webpack.js +15 -0
- package/dist/compiler/config/types.d.ts +1 -0
- package/dist/compiler/config/types.js +2 -0
- package/dist/compiler/config/utils.d.ts +20 -0
- package/dist/compiler/config/utils.js +36 -0
- package/dist/compiler/generate-env-code.d.ts +1 -0
- package/dist/compiler/generate-env-code.js +8 -0
- package/dist/compiler/generate-import-code.d.ts +1 -0
- package/dist/compiler/generate-import-code.js +24 -0
- package/dist/compiler/get-webpack-config/get-entries.d.ts +3 -0
- package/dist/compiler/get-webpack-config/get-entries.js +29 -0
- package/dist/compiler/get-webpack-config/get-externals.d.ts +7 -0
- package/dist/compiler/get-webpack-config/get-externals.js +88 -0
- package/dist/compiler/get-webpack-config/get-injected-variables.d.ts +8 -0
- package/dist/compiler/get-webpack-config/get-injected-variables.js +25 -0
- package/dist/compiler/get-webpack-config/index.d.ts +4 -0
- package/dist/compiler/get-webpack-config/index.js +101 -0
- package/dist/compiler/get-webpack-config/plugins.d.ts +8 -0
- package/dist/compiler/get-webpack-config/plugins.js +132 -0
- package/dist/compiler/get-webpack-config/resolve-tsconfig-paths.d.ts +9 -0
- package/dist/compiler/get-webpack-config/resolve-tsconfig-paths.js +40 -0
- package/dist/compiler/index.d.ts +6 -0
- package/dist/compiler/index.js +194 -0
- package/dist/compiler/on-first-build.d.ts +3 -0
- package/dist/compiler/on-first-build.js +58 -0
- package/dist/compiler/parse-xmcp-config.d.ts +9 -0
- package/dist/compiler/parse-xmcp-config.js +155 -0
- package/dist/compiler/start-http-server.d.ts +1 -0
- package/dist/compiler/start-http-server.js +34 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +38 -0
- package/dist/index.js.LICENSE.txt +49 -0
- package/dist/runtime/__tests__/audit.test.d.ts +4 -0
- package/dist/runtime/__tests__/audit.test.js +328 -0
- package/dist/runtime/__tests__/identity.test.d.ts +4 -0
- package/dist/runtime/__tests__/identity.test.js +164 -0
- package/dist/runtime/__tests__/mcpi-runtime.test.d.ts +4 -0
- package/dist/runtime/__tests__/mcpi-runtime.test.js +372 -0
- package/dist/runtime/__tests__/proof.test.d.ts +4 -0
- package/dist/runtime/__tests__/proof.test.js +302 -0
- package/dist/runtime/__tests__/session.test.d.ts +4 -0
- package/dist/runtime/__tests__/session.test.js +254 -0
- package/dist/runtime/__tests__/well-known.test.d.ts +4 -0
- package/dist/runtime/__tests__/well-known.test.js +312 -0
- package/dist/runtime/adapter-express.js +2 -0
- package/dist/runtime/adapter-express.js.LICENSE.txt +252 -0
- package/dist/runtime/adapter-nextjs.js +2 -0
- package/dist/runtime/adapter-nextjs.js.LICENSE.txt +53 -0
- package/dist/runtime/adapters/express/index.d.ts +2 -0
- package/dist/runtime/adapters/express/index.js +48 -0
- package/dist/runtime/adapters/nextjs/index.d.ts +8 -0
- package/dist/runtime/adapters/nextjs/index.js +18 -0
- package/dist/runtime/audit.d.ts +93 -0
- package/dist/runtime/audit.js +212 -0
- package/dist/runtime/debug.d.ts +118 -0
- package/dist/runtime/debug.js +612 -0
- package/dist/runtime/delegation-hooks.d.ts +85 -0
- package/dist/runtime/delegation-hooks.js +116 -0
- package/dist/runtime/demo.d.ts +71 -0
- package/dist/runtime/demo.js +135 -0
- package/dist/runtime/headers.d.ts +1 -0
- package/dist/runtime/headers.js +9 -0
- package/dist/runtime/http.js +2 -0
- package/dist/runtime/http.js.LICENSE.txt +252 -0
- package/dist/runtime/identity.d.ts +105 -0
- package/dist/runtime/identity.js +232 -0
- package/dist/runtime/index.d.ts +16 -0
- package/dist/runtime/index.js +56 -0
- package/dist/runtime/mcpi-runtime.d.ts +164 -0
- package/dist/runtime/mcpi-runtime.js +352 -0
- package/dist/runtime/proof.d.ts +87 -0
- package/dist/runtime/proof.js +223 -0
- package/dist/runtime/session.d.ts +88 -0
- package/dist/runtime/session.js +216 -0
- package/dist/runtime/stdio.js +2 -0
- package/dist/runtime/stdio.js.LICENSE.txt +1 -0
- package/dist/runtime/templates/home.d.ts +2 -0
- package/dist/runtime/templates/home.js +50 -0
- package/dist/runtime/transports/http/base-streamable-http.d.ts +25 -0
- package/dist/runtime/transports/http/base-streamable-http.js +16 -0
- package/dist/runtime/transports/http/http-context.d.ts +9 -0
- package/dist/runtime/transports/http/http-context.js +8 -0
- package/dist/runtime/transports/http/index.js +55 -0
- package/dist/runtime/transports/http/setup-cors.d.ts +4 -0
- package/dist/runtime/transports/http/setup-cors.js +24 -0
- package/dist/runtime/transports/http/stateless-streamable-http.d.ts +39 -0
- package/dist/runtime/transports/http/stateless-streamable-http.js +331 -0
- package/dist/runtime/transports/stdio/index.d.ts +1 -0
- package/dist/runtime/transports/stdio/index.js +51 -0
- package/dist/runtime/utils/server.d.ts +42 -0
- package/dist/runtime/utils/server.js +39 -0
- package/dist/runtime/utils/tools.d.ts +8 -0
- package/dist/runtime/utils/tools.js +115 -0
- package/dist/runtime/verifier-middleware.d.ts +76 -0
- package/dist/runtime/verifier-middleware.js +322 -0
- package/dist/runtime/well-known.d.ts +151 -0
- package/dist/runtime/well-known.js +258 -0
- package/dist/storage/config.d.ts +28 -0
- package/dist/storage/config.js +79 -0
- package/dist/storage/delegation.d.ts +59 -0
- package/dist/storage/delegation.js +130 -0
- package/dist/storage/merkle-verifier.d.ts +84 -0
- package/dist/storage/merkle-verifier.js +261 -0
- package/dist/test/__tests__/nonce-cache-integration.test.d.ts +1 -0
- package/dist/test/__tests__/nonce-cache-integration.test.js +116 -0
- package/dist/test/__tests__/nonce-cache.test.d.ts +1 -0
- package/dist/test/__tests__/nonce-cache.test.js +122 -0
- package/dist/test/__tests__/runtime-integration.test.d.ts +4 -0
- package/dist/test/__tests__/runtime-integration.test.js +192 -0
- package/dist/test/__tests__/test-infrastructure.test.d.ts +4 -0
- package/dist/test/__tests__/test-infrastructure.test.js +178 -0
- package/dist/test/deterministic-keys.d.ts +31 -0
- package/dist/test/deterministic-keys.js +108 -0
- package/dist/test/examples/test-usage-example.d.ts +140 -0
- package/dist/test/examples/test-usage-example.js +175 -0
- package/dist/test/index.d.ts +11 -0
- package/dist/test/index.js +27 -0
- package/dist/test/local-verification.d.ts +28 -0
- package/dist/test/local-verification.js +342 -0
- package/dist/test/mock-identity-provider.d.ts +96 -0
- package/dist/test/mock-identity-provider.js +243 -0
- package/dist/test/runtime-integration.d.ts +63 -0
- package/dist/test/runtime-integration.js +140 -0
- package/dist/test/test-environment.d.ts +26 -0
- package/dist/test/test-environment.js +50 -0
- package/dist/types/declarations.d.ts +1 -0
- package/dist/types/declarations.js +6 -0
- package/dist/types/middleware.d.ts +2 -0
- package/dist/types/middleware.js +2 -0
- package/dist/types/tool.d.ts +80 -0
- package/dist/types/tool.js +2 -0
- package/dist/utils/cli-icons.d.ts +3 -0
- package/dist/utils/cli-icons.js +7 -0
- package/dist/utils/constants.d.ts +6 -0
- package/dist/utils/constants.js +13 -0
- package/dist/utils/context.d.ts +33 -0
- package/dist/utils/context.js +58 -0
- package/dist/utils/file-watcher.d.ts +19 -0
- package/dist/utils/file-watcher.js +49 -0
- package/dist/utils/fs-utils.d.ts +2 -0
- package/dist/utils/fs-utils.js +22 -0
- package/dist/utils/path-validation.d.ts +3 -0
- package/dist/utils/path-validation.js +56 -0
- package/dist/utils/spawn-process.d.ts +9 -0
- package/dist/utils/spawn-process.js +50 -0
- package/dist/utils/subscribable.d.ts +12 -0
- package/dist/utils/subscribable.js +44 -0
- package/package.json +91 -77
- package/dist/cjs/auto.js +0 -16
- package/dist/cjs/cli-mode.d.ts +0 -16
- package/dist/cjs/cli-mode.js +0 -32
- package/dist/cjs/crypto.d.ts +0 -16
- package/dist/cjs/crypto.js +0 -212
- package/dist/cjs/dev-helper.d.ts +0 -3
- package/dist/cjs/dev-helper.js +0 -46
- package/dist/cjs/encrypted-storage.d.ts +0 -11
- package/dist/cjs/encrypted-storage.js +0 -73
- package/dist/cjs/index.d.ts +0 -56
- package/dist/cjs/index.js +0 -727
- package/dist/cjs/logger.d.ts +0 -32
- package/dist/cjs/logger.js +0 -85
- package/dist/cjs/nextjs.d.ts +0 -10
- package/dist/cjs/nextjs.js +0 -83
- package/dist/cjs/platform-info.d.ts +0 -36
- package/dist/cjs/platform-info.js +0 -274
- package/dist/cjs/polling.d.ts +0 -13
- package/dist/cjs/polling.js +0 -52
- package/dist/cjs/registry/index.d.ts +0 -12
- package/dist/cjs/registry/index.js +0 -56
- package/dist/cjs/registry/knowthat.d.ts +0 -17
- package/dist/cjs/registry/knowthat.js +0 -173
- package/dist/cjs/rotation.d.ts +0 -35
- package/dist/cjs/rotation.js +0 -102
- package/dist/cjs/storage.d.ts +0 -41
- package/dist/cjs/storage.js +0 -163
- package/dist/cjs/transport.d.ts +0 -35
- package/dist/cjs/transport.js +0 -300
- package/dist/cjs/types.d.ts +0 -206
- package/dist/cjs/vercel-adapter.d.ts +0 -8
- package/dist/cjs/vercel-adapter.js +0 -67
- package/dist/esm/auto.d.ts +0 -13
- package/dist/esm/auto.d.ts.map +0 -1
- package/dist/esm/auto.js +0 -30
- package/dist/esm/auto.js.map +0 -1
- package/dist/esm/cli-mode.d.ts +0 -52
- package/dist/esm/cli-mode.d.ts.map +0 -1
- package/dist/esm/cli-mode.js +0 -59
- package/dist/esm/cli-mode.js.map +0 -1
- package/dist/esm/crypto.d.ts +0 -51
- package/dist/esm/crypto.d.ts.map +0 -1
- package/dist/esm/crypto.js +0 -230
- package/dist/esm/crypto.js.map +0 -1
- package/dist/esm/dev-helper.d.ts +0 -15
- package/dist/esm/dev-helper.d.ts.map +0 -1
- package/dist/esm/dev-helper.js +0 -63
- package/dist/esm/dev-helper.js.map +0 -1
- package/dist/esm/encrypted-storage.d.ts +0 -19
- package/dist/esm/encrypted-storage.d.ts.map +0 -1
- package/dist/esm/encrypted-storage.js +0 -48
- package/dist/esm/encrypted-storage.js.map +0 -1
- package/dist/esm/index.d.ts +0 -129
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js +0 -853
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/logger.d.ts +0 -46
- package/dist/esm/logger.d.ts.map +0 -1
- package/dist/esm/logger.js +0 -100
- package/dist/esm/logger.js.map +0 -1
- package/dist/esm/nextjs.d.ts +0 -22
- package/dist/esm/nextjs.d.ts.map +0 -1
- package/dist/esm/nextjs.js +0 -83
- package/dist/esm/nextjs.js.map +0 -1
- package/dist/esm/package.json +0 -1
- package/dist/esm/platform-info.d.ts +0 -74
- package/dist/esm/platform-info.d.ts.map +0 -1
- package/dist/esm/platform-info.js +0 -293
- package/dist/esm/platform-info.js.map +0 -1
- package/dist/esm/polling.d.ts +0 -29
- package/dist/esm/polling.d.ts.map +0 -1
- package/dist/esm/polling.js +0 -76
- package/dist/esm/polling.js.map +0 -1
- package/dist/esm/registry/index.d.ts +0 -43
- package/dist/esm/registry/index.d.ts.map +0 -1
- package/dist/esm/registry/index.js +0 -89
- package/dist/esm/registry/index.js.map +0 -1
- package/dist/esm/registry/knowthat.d.ts +0 -44
- package/dist/esm/registry/knowthat.d.ts.map +0 -1
- package/dist/esm/registry/knowthat.js +0 -220
- package/dist/esm/registry/knowthat.js.map +0 -1
- package/dist/esm/rotation.d.ts +0 -57
- package/dist/esm/rotation.d.ts.map +0 -1
- package/dist/esm/rotation.js +0 -133
- package/dist/esm/rotation.js.map +0 -1
- package/dist/esm/storage.d.ts +0 -65
- package/dist/esm/storage.d.ts.map +0 -1
- package/dist/esm/storage.js +0 -160
- package/dist/esm/storage.js.map +0 -1
- package/dist/esm/transport.d.ts +0 -52
- package/dist/esm/transport.d.ts.map +0 -1
- package/dist/esm/transport.js +0 -340
- package/dist/esm/transport.js.map +0 -1
- package/dist/esm/types.d.ts +0 -293
- package/dist/esm/types.d.ts.map +0 -1
- package/dist/esm/types.js +0 -5
- package/dist/esm/types.js.map +0 -1
- package/dist/esm/vercel-adapter.d.ts +0 -26
- package/dist/esm/vercel-adapter.d.ts.map +0 -1
- package/dist/esm/vercel-adapter.js +0 -80
- package/dist/esm/vercel-adapter.js.map +0 -1
- /package/dist/{cjs → auth/oauth}/types.js +0 -0
- /package/dist/{cjs/auto.d.ts → runtime/transports/http/index.d.ts} +0 -0
package/dist/esm/transport.d.ts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Transport abstraction for HTTP requests
|
|
3
|
-
* Supports both axios and native fetch with runtime detection
|
|
4
|
-
*/
|
|
5
|
-
export interface TransportOptions {
|
|
6
|
-
timeout?: number;
|
|
7
|
-
headers?: Record<string, string>;
|
|
8
|
-
}
|
|
9
|
-
export interface TransportResponse<T = any> {
|
|
10
|
-
data: T;
|
|
11
|
-
status: number;
|
|
12
|
-
headers: Record<string, string>;
|
|
13
|
-
}
|
|
14
|
-
export interface Transport {
|
|
15
|
-
post<T = any>(url: string, data: any, options?: TransportOptions): Promise<TransportResponse<T>>;
|
|
16
|
-
get<T = any>(url: string, options?: TransportOptions): Promise<TransportResponse<T>>;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Native fetch-based transport (preferred for Edge runtimes)
|
|
20
|
-
*/
|
|
21
|
-
export declare class FetchTransport implements Transport {
|
|
22
|
-
post<T = any>(url: string, data: any, options?: TransportOptions): Promise<TransportResponse<T>>;
|
|
23
|
-
get<T = any>(url: string, options?: TransportOptions): Promise<TransportResponse<T>>;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Axios-based transport (for Node.js environments)
|
|
27
|
-
*/
|
|
28
|
-
export declare class AxiosTransport implements Transport {
|
|
29
|
-
private axiosInstance;
|
|
30
|
-
post<T = any>(url: string, data: any, options?: TransportOptions): Promise<TransportResponse<T>>;
|
|
31
|
-
get<T = any>(url: string, options?: TransportOptions): Promise<TransportResponse<T>>;
|
|
32
|
-
private getAxios;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Runtime detection for optimal transport selection
|
|
36
|
-
*/
|
|
37
|
-
export declare class RuntimeDetector {
|
|
38
|
-
static isEdgeRuntime(): boolean;
|
|
39
|
-
static isNodeRuntime(): boolean;
|
|
40
|
-
static isNextJs(): boolean;
|
|
41
|
-
static hasFetch(): boolean;
|
|
42
|
-
static isLambda(): boolean;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Transport factory with runtime detection
|
|
46
|
-
*/
|
|
47
|
-
export declare class TransportFactory {
|
|
48
|
-
static create(options?: {
|
|
49
|
-
transport?: 'axios' | 'fetch' | 'auto';
|
|
50
|
-
}): Transport;
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=transport.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/transport.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,GAAG;IACxC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;CACtF;AAED;;GAEG;AACH,qBAAa,cAAe,YAAW,SAAS;IACxC,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAsEhG,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;CAiE3F;AAED;;GAEG;AACH,qBAAa,cAAe,YAAW,SAAS;IAC9C,OAAO,CAAC,aAAa,CAAM;IAErB,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAmDhG,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAmD5E,QAAQ;CAgBvB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,MAAM,CAAC,aAAa,IAAI,OAAO;IAU/B,MAAM,CAAC,aAAa,IAAI,OAAO;IAQ/B,MAAM,CAAC,QAAQ,IAAI,OAAO;IAQ1B,MAAM,CAAC,QAAQ,IAAI,OAAO;IAI1B,MAAM,CAAC,QAAQ,IAAI,OAAO;CAO3B;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QACtB,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;KACxC,GAAG,SAAS;CA+Cd"}
|
package/dist/esm/transport.js
DELETED
|
@@ -1,340 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Transport abstraction for HTTP requests
|
|
3
|
-
* Supports both axios and native fetch with runtime detection
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Native fetch-based transport (preferred for Edge runtimes)
|
|
7
|
-
*/
|
|
8
|
-
export class FetchTransport {
|
|
9
|
-
async post(url, data, options) {
|
|
10
|
-
const controller = new AbortController();
|
|
11
|
-
const timeout = options?.timeout || 30000;
|
|
12
|
-
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
13
|
-
try {
|
|
14
|
-
const response = await fetch(url, {
|
|
15
|
-
method: 'POST',
|
|
16
|
-
headers: {
|
|
17
|
-
'Content-Type': 'application/json',
|
|
18
|
-
...options?.headers
|
|
19
|
-
},
|
|
20
|
-
body: JSON.stringify(data),
|
|
21
|
-
signal: controller.signal
|
|
22
|
-
});
|
|
23
|
-
clearTimeout(timeoutId);
|
|
24
|
-
if (!response.ok) {
|
|
25
|
-
let errorMessage = '';
|
|
26
|
-
let errorData = null;
|
|
27
|
-
try {
|
|
28
|
-
// Try to parse JSON error response
|
|
29
|
-
errorData = await response.json();
|
|
30
|
-
// Handle CLI endpoint error format with suggestions
|
|
31
|
-
if (errorData.suggestion) {
|
|
32
|
-
errorMessage = `${errorData.error || errorData.message || 'Request failed'}. ${errorData.suggestion}`;
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
errorMessage = errorData.message || errorData.error || '';
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
catch {
|
|
39
|
-
// Fallback to text if not JSON
|
|
40
|
-
errorMessage = await response.text();
|
|
41
|
-
}
|
|
42
|
-
// Handle specific error cases
|
|
43
|
-
if (response.status === 429) {
|
|
44
|
-
throw new Error('Rate limit exceeded. Please wait a few minutes and try again.');
|
|
45
|
-
}
|
|
46
|
-
else if (response.status === 403) {
|
|
47
|
-
throw new Error('Access forbidden. Please check your API credentials.');
|
|
48
|
-
}
|
|
49
|
-
else if (response.status === 404) {
|
|
50
|
-
throw new Error('API endpoint not found. The service might be unavailable.');
|
|
51
|
-
}
|
|
52
|
-
else if (response.status === 500 || response.status === 502 || response.status === 503) {
|
|
53
|
-
throw new Error('Server error during registration. This might be a temporary issue. Please try again in a few moments.');
|
|
54
|
-
}
|
|
55
|
-
else if (response.status === 400) {
|
|
56
|
-
throw new Error(`Bad request: ${errorMessage || 'Invalid registration data'}`);
|
|
57
|
-
}
|
|
58
|
-
// Generic error with status code
|
|
59
|
-
throw new Error(`HTTP ${response.status}: ${errorMessage || 'Request failed'}`);
|
|
60
|
-
}
|
|
61
|
-
const responseData = await response.json();
|
|
62
|
-
return {
|
|
63
|
-
data: responseData,
|
|
64
|
-
status: response.status,
|
|
65
|
-
headers: Object.fromEntries(response.headers.entries())
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
catch (error) {
|
|
69
|
-
clearTimeout(timeoutId);
|
|
70
|
-
if (error.name === 'AbortError') {
|
|
71
|
-
throw new Error('Request timeout. The server is taking too long to respond. Please try again.');
|
|
72
|
-
}
|
|
73
|
-
throw error;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
async get(url, options) {
|
|
77
|
-
const controller = new AbortController();
|
|
78
|
-
const timeout = options?.timeout || 30000;
|
|
79
|
-
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
80
|
-
try {
|
|
81
|
-
const response = await fetch(url, {
|
|
82
|
-
method: 'GET',
|
|
83
|
-
headers: options?.headers,
|
|
84
|
-
signal: controller.signal
|
|
85
|
-
});
|
|
86
|
-
clearTimeout(timeoutId);
|
|
87
|
-
if (!response.ok) {
|
|
88
|
-
let errorMessage = '';
|
|
89
|
-
let errorData = null;
|
|
90
|
-
try {
|
|
91
|
-
// Try to parse JSON error response
|
|
92
|
-
errorData = await response.json();
|
|
93
|
-
// Handle CLI endpoint error format with suggestions
|
|
94
|
-
if (errorData.suggestion) {
|
|
95
|
-
errorMessage = `${errorData.error || errorData.message || 'Request failed'}. ${errorData.suggestion}`;
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
errorMessage = errorData.message || errorData.error || '';
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
catch {
|
|
102
|
-
// Fallback to text if not JSON
|
|
103
|
-
errorMessage = await response.text();
|
|
104
|
-
}
|
|
105
|
-
// Handle specific error cases
|
|
106
|
-
if (response.status === 429) {
|
|
107
|
-
throw new Error('Rate limit exceeded. Please wait a few minutes and try again.');
|
|
108
|
-
}
|
|
109
|
-
else if (response.status === 403) {
|
|
110
|
-
throw new Error('Access forbidden. Please check your API credentials.');
|
|
111
|
-
}
|
|
112
|
-
else if (response.status === 404) {
|
|
113
|
-
throw new Error('API endpoint not found. The service might be unavailable.');
|
|
114
|
-
}
|
|
115
|
-
else if (response.status === 500 || response.status === 502 || response.status === 503) {
|
|
116
|
-
throw new Error('Server error during registration. This might be a temporary issue. Please try again in a few moments.');
|
|
117
|
-
}
|
|
118
|
-
else if (response.status === 400) {
|
|
119
|
-
throw new Error(`Bad request: ${errorMessage || 'Invalid registration data'}`);
|
|
120
|
-
}
|
|
121
|
-
// Generic error with status code
|
|
122
|
-
throw new Error(`HTTP ${response.status}: ${errorMessage || 'Request failed'}`);
|
|
123
|
-
}
|
|
124
|
-
const responseData = await response.json();
|
|
125
|
-
return {
|
|
126
|
-
data: responseData,
|
|
127
|
-
status: response.status,
|
|
128
|
-
headers: Object.fromEntries(response.headers.entries())
|
|
129
|
-
};
|
|
130
|
-
}
|
|
131
|
-
catch (error) {
|
|
132
|
-
clearTimeout(timeoutId);
|
|
133
|
-
if (error.name === 'AbortError') {
|
|
134
|
-
throw new Error('Request timeout. The server is taking too long to respond. Please try again.');
|
|
135
|
-
}
|
|
136
|
-
throw error;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Axios-based transport (for Node.js environments)
|
|
142
|
-
*/
|
|
143
|
-
export class AxiosTransport {
|
|
144
|
-
axiosInstance;
|
|
145
|
-
async post(url, data, options) {
|
|
146
|
-
const axios = await this.getAxios();
|
|
147
|
-
try {
|
|
148
|
-
const response = await axios.post(url, data, {
|
|
149
|
-
timeout: options?.timeout || 30000,
|
|
150
|
-
headers: options?.headers
|
|
151
|
-
});
|
|
152
|
-
return {
|
|
153
|
-
data: response.data,
|
|
154
|
-
status: response.status,
|
|
155
|
-
headers: response.headers
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
catch (error) {
|
|
159
|
-
// Handle specific Axios error cases
|
|
160
|
-
if (error.response) {
|
|
161
|
-
const status = error.response.status;
|
|
162
|
-
let errorMessage = '';
|
|
163
|
-
// Handle CLI endpoint error format with suggestions
|
|
164
|
-
if (error.response.data?.suggestion) {
|
|
165
|
-
errorMessage = `${error.response.data.error || error.response.data.message || 'Request failed'}. ${error.response.data.suggestion}`;
|
|
166
|
-
}
|
|
167
|
-
else {
|
|
168
|
-
errorMessage = error.response.data?.message || error.response.data?.error || '';
|
|
169
|
-
}
|
|
170
|
-
if (status === 429) {
|
|
171
|
-
throw new Error('Rate limit exceeded. Please wait a few minutes and try again.');
|
|
172
|
-
}
|
|
173
|
-
else if (status === 403) {
|
|
174
|
-
throw new Error('Access forbidden. Please check your API credentials.');
|
|
175
|
-
}
|
|
176
|
-
else if (status === 404) {
|
|
177
|
-
throw new Error('API endpoint not found. The service might be unavailable.');
|
|
178
|
-
}
|
|
179
|
-
else if (status === 500 || status === 502 || status === 503) {
|
|
180
|
-
throw new Error('Server error during registration. This might be a temporary issue. Please try again in a few moments.');
|
|
181
|
-
}
|
|
182
|
-
else if (status === 400) {
|
|
183
|
-
throw new Error(`Bad request: ${errorMessage || 'Invalid registration data'}`);
|
|
184
|
-
}
|
|
185
|
-
// Generic error with status code
|
|
186
|
-
throw new Error(`HTTP ${status}: ${errorMessage || 'Request failed'}`);
|
|
187
|
-
}
|
|
188
|
-
else if (error.request) {
|
|
189
|
-
// Request was made but no response received
|
|
190
|
-
throw new Error('No response from server. Please check your internet connection.');
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
// Something else happened
|
|
194
|
-
throw new Error(error.message || 'Request failed');
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
async get(url, options) {
|
|
199
|
-
const axios = await this.getAxios();
|
|
200
|
-
try {
|
|
201
|
-
const response = await axios.get(url, {
|
|
202
|
-
timeout: options?.timeout || 30000,
|
|
203
|
-
headers: options?.headers
|
|
204
|
-
});
|
|
205
|
-
return {
|
|
206
|
-
data: response.data,
|
|
207
|
-
status: response.status,
|
|
208
|
-
headers: response.headers
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
catch (error) {
|
|
212
|
-
// Handle specific Axios error cases
|
|
213
|
-
if (error.response) {
|
|
214
|
-
const status = error.response.status;
|
|
215
|
-
let errorMessage = '';
|
|
216
|
-
// Handle CLI endpoint error format with suggestions
|
|
217
|
-
if (error.response.data?.suggestion) {
|
|
218
|
-
errorMessage = `${error.response.data.error || error.response.data.message || 'Request failed'}. ${error.response.data.suggestion}`;
|
|
219
|
-
}
|
|
220
|
-
else {
|
|
221
|
-
errorMessage = error.response.data?.message || error.response.data?.error || '';
|
|
222
|
-
}
|
|
223
|
-
if (status === 429) {
|
|
224
|
-
throw new Error('Rate limit exceeded. Please wait a few minutes and try again.');
|
|
225
|
-
}
|
|
226
|
-
else if (status === 403) {
|
|
227
|
-
throw new Error('Access forbidden. Please check your API credentials.');
|
|
228
|
-
}
|
|
229
|
-
else if (status === 404) {
|
|
230
|
-
throw new Error('API endpoint not found. The service might be unavailable.');
|
|
231
|
-
}
|
|
232
|
-
else if (status === 500 || status === 502 || status === 503) {
|
|
233
|
-
throw new Error('Server error. This might be a temporary issue. Please try again in a few moments.');
|
|
234
|
-
}
|
|
235
|
-
else if (status === 400) {
|
|
236
|
-
throw new Error(`Bad request: ${errorMessage || 'Invalid request data'}`);
|
|
237
|
-
}
|
|
238
|
-
// Generic error with status code
|
|
239
|
-
throw new Error(`HTTP ${status}: ${errorMessage || 'Request failed'}`);
|
|
240
|
-
}
|
|
241
|
-
else if (error.request) {
|
|
242
|
-
// Request was made but no response received
|
|
243
|
-
throw new Error('No response from server. Please check your internet connection.');
|
|
244
|
-
}
|
|
245
|
-
else {
|
|
246
|
-
// Something else happened
|
|
247
|
-
throw new Error(error.message || 'Request failed');
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
async getAxios() {
|
|
252
|
-
if (!this.axiosInstance) {
|
|
253
|
-
try {
|
|
254
|
-
// Try to require axios - if it fails, we'll throw a helpful error
|
|
255
|
-
// @ts-ignore - dynamic require for optional dependency
|
|
256
|
-
const axios = require('axios');
|
|
257
|
-
this.axiosInstance = axios.default || axios;
|
|
258
|
-
}
|
|
259
|
-
catch (error) {
|
|
260
|
-
throw new Error('axios is not installed. Please install it with: npm install axios\n' +
|
|
261
|
-
'Or use the fetch transport instead by setting transport: "fetch" in options');
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
return this.axiosInstance;
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
/**
|
|
268
|
-
* Runtime detection for optimal transport selection
|
|
269
|
-
*/
|
|
270
|
-
export class RuntimeDetector {
|
|
271
|
-
static isEdgeRuntime() {
|
|
272
|
-
return !!(globalThis.EdgeRuntime ||
|
|
273
|
-
process.env.NEXT_RUNTIME === 'edge' ||
|
|
274
|
-
process.env.VERCEL_EDGE ||
|
|
275
|
-
globalThis.Deno ||
|
|
276
|
-
globalThis.Bun);
|
|
277
|
-
}
|
|
278
|
-
static isNodeRuntime() {
|
|
279
|
-
return !!(process.versions?.node &&
|
|
280
|
-
!this.isEdgeRuntime() &&
|
|
281
|
-
!this.isNextJs());
|
|
282
|
-
}
|
|
283
|
-
static isNextJs() {
|
|
284
|
-
return !!(process.env.NEXT_RUNTIME ||
|
|
285
|
-
globalThis.__NEXT_DATA__ ||
|
|
286
|
-
process.env.NEXT_PUBLIC_VERCEL_ENV);
|
|
287
|
-
}
|
|
288
|
-
static hasFetch() {
|
|
289
|
-
return typeof globalThis.fetch === 'function';
|
|
290
|
-
}
|
|
291
|
-
static isLambda() {
|
|
292
|
-
return !!(process.env.AWS_LAMBDA_FUNCTION_NAME ||
|
|
293
|
-
process.env.LAMBDA_TASK_ROOT ||
|
|
294
|
-
process.env._HANDLER);
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Transport factory with runtime detection
|
|
299
|
-
*/
|
|
300
|
-
export class TransportFactory {
|
|
301
|
-
static create(options) {
|
|
302
|
-
const transportType = options?.transport || 'auto';
|
|
303
|
-
if (transportType === 'fetch') {
|
|
304
|
-
if (!RuntimeDetector.hasFetch()) {
|
|
305
|
-
throw new Error('Fetch is not available in this runtime');
|
|
306
|
-
}
|
|
307
|
-
return new FetchTransport();
|
|
308
|
-
}
|
|
309
|
-
if (transportType === 'axios') {
|
|
310
|
-
return new AxiosTransport();
|
|
311
|
-
}
|
|
312
|
-
// Auto-detect based on runtime
|
|
313
|
-
if (transportType === 'auto') {
|
|
314
|
-
// Prefer fetch for edge runtimes
|
|
315
|
-
if (RuntimeDetector.isEdgeRuntime() && RuntimeDetector.hasFetch()) {
|
|
316
|
-
return new FetchTransport();
|
|
317
|
-
}
|
|
318
|
-
// Use fetch for Next.js to avoid bundling issues
|
|
319
|
-
if (RuntimeDetector.isNextJs() && RuntimeDetector.hasFetch()) {
|
|
320
|
-
return new FetchTransport();
|
|
321
|
-
}
|
|
322
|
-
// Use fetch if available and we're in a Lambda (lighter weight)
|
|
323
|
-
if (RuntimeDetector.isLambda() && RuntimeDetector.hasFetch()) {
|
|
324
|
-
return new FetchTransport();
|
|
325
|
-
}
|
|
326
|
-
// Default to axios for Node.js
|
|
327
|
-
if (RuntimeDetector.isNodeRuntime()) {
|
|
328
|
-
return new AxiosTransport();
|
|
329
|
-
}
|
|
330
|
-
// Fallback to fetch if available
|
|
331
|
-
if (RuntimeDetector.hasFetch()) {
|
|
332
|
-
return new FetchTransport();
|
|
333
|
-
}
|
|
334
|
-
// Last resort: axios
|
|
335
|
-
return new AxiosTransport();
|
|
336
|
-
}
|
|
337
|
-
throw new Error(`Unknown transport type: ${transportType}`);
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
//# sourceMappingURL=transport.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/transport.ts"],"names":[],"mappings":"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"}
|