@igoruehara/canvas-flow 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/LICENSE +21 -0
- package/README.md +152 -0
- package/bin/canvas-flow.js +1132 -0
- package/package.json +68 -0
- package/public/assets/index-PCQkqMUe.css +1 -0
- package/public/assets/index-qV8twxcq.js +767 -0
- package/public/index.html +13 -0
- package/server/api-key/api-key-connect-provider.d.ts +104 -0
- package/server/api-key/api-key-connect-provider.js +14 -0
- package/server/api-key/api-key-connect-provider.js.map +1 -0
- package/server/api-key/api-key-constants-model.d.ts +2 -0
- package/server/api-key/api-key-constants-model.js +6 -0
- package/server/api-key/api-key-constants-model.js.map +1 -0
- package/server/api-key/api-key-controller.d.ts +12 -0
- package/server/api-key/api-key-controller.js +86 -0
- package/server/api-key/api-key-controller.js.map +1 -0
- package/server/api-key/api-key-module.d.ts +2 -0
- package/server/api-key/api-key-module.js +27 -0
- package/server/api-key/api-key-module.js.map +1 -0
- package/server/api-key/api-key-schema.d.ts +72 -0
- package/server/api-key/api-key-schema.js +98 -0
- package/server/api-key/api-key-schema.js.map +1 -0
- package/server/api-key/api-key-service.d.ts +45 -0
- package/server/api-key/api-key-service.js +151 -0
- package/server/api-key/api-key-service.js.map +1 -0
- package/server/api-key/dto/create-api-key.dto.d.ts +8 -0
- package/server/api-key/dto/create-api-key.dto.js +7 -0
- package/server/api-key/dto/create-api-key.dto.js.map +1 -0
- package/server/app.module.d.ts +2 -0
- package/server/app.module.js +53 -0
- package/server/app.module.js.map +1 -0
- package/server/auth/auth-connect-provider.d.ts +140 -0
- package/server/auth/auth-connect-provider.js +20 -0
- package/server/auth/auth-connect-provider.js.map +1 -0
- package/server/auth/auth-constants-model.d.ts +4 -0
- package/server/auth/auth-constants-model.js +8 -0
- package/server/auth/auth-constants-model.js.map +1 -0
- package/server/auth/auth-controller.d.ts +25 -0
- package/server/auth/auth-controller.js +96 -0
- package/server/auth/auth-controller.js.map +1 -0
- package/server/auth/auth-module.d.ts +2 -0
- package/server/auth/auth-module.js +26 -0
- package/server/auth/auth-module.js.map +1 -0
- package/server/auth/auth-organization-schema.d.ts +44 -0
- package/server/auth/auth-organization-schema.js +62 -0
- package/server/auth/auth-organization-schema.js.map +1 -0
- package/server/auth/auth-schema.d.ts +56 -0
- package/server/auth/auth-schema.js +77 -0
- package/server/auth/auth-schema.js.map +1 -0
- package/server/auth/auth-service.d.ts +64 -0
- package/server/auth/auth-service.js +343 -0
- package/server/auth/auth-service.js.map +1 -0
- package/server/canvas-flow/canvas-flow-connect-provider.d.ts +278 -0
- package/server/canvas-flow/canvas-flow-connect-provider.js +24 -0
- package/server/canvas-flow/canvas-flow-connect-provider.js.map +1 -0
- package/server/canvas-flow/canvas-flow-constants-model.d.ts +6 -0
- package/server/canvas-flow/canvas-flow-constants-model.js +10 -0
- package/server/canvas-flow/canvas-flow-constants-model.js.map +1 -0
- package/server/canvas-flow/canvas-flow-controller.d.ts +98 -0
- package/server/canvas-flow/canvas-flow-controller.js +423 -0
- package/server/canvas-flow/canvas-flow-controller.js.map +1 -0
- package/server/canvas-flow/canvas-flow-module.d.ts +2 -0
- package/server/canvas-flow/canvas-flow-module.js +27 -0
- package/server/canvas-flow/canvas-flow-module.js.map +1 -0
- package/server/canvas-flow/canvas-flow-schema.d.ts +192 -0
- package/server/canvas-flow/canvas-flow-schema.js +239 -0
- package/server/canvas-flow/canvas-flow-schema.js.map +1 -0
- package/server/canvas-flow/canvas-flow-service.d.ts +250 -0
- package/server/canvas-flow/canvas-flow-service.js +1681 -0
- package/server/canvas-flow/canvas-flow-service.js.map +1 -0
- package/server/canvas-flow/dto/create-canvas-flow.dto.d.ts +11 -0
- package/server/canvas-flow/dto/create-canvas-flow.dto.js +61 -0
- package/server/canvas-flow/dto/create-canvas-flow.dto.js.map +1 -0
- package/server/canvas-flow/dto/update-canvas-flow.dto.d.ts +10 -0
- package/server/canvas-flow/dto/update-canvas-flow.dto.js +56 -0
- package/server/canvas-flow/dto/update-canvas-flow.dto.js.map +1 -0
- package/server/constants-global.d.ts +1 -0
- package/server/constants-global.js +5 -0
- package/server/constants-global.js.map +1 -0
- package/server/database/database.module.d.ts +2 -0
- package/server/database/database.module.js +23 -0
- package/server/database/database.module.js.map +1 -0
- package/server/database/database.providers.d.ts +7 -0
- package/server/database/database.providers.js +26 -0
- package/server/database/database.providers.js.map +1 -0
- package/server/documents/documents-connect-provider.d.ts +140 -0
- package/server/documents/documents-connect-provider.js +14 -0
- package/server/documents/documents-connect-provider.js.map +1 -0
- package/server/documents/documents-constants-model.d.ts +2 -0
- package/server/documents/documents-constants-model.js +6 -0
- package/server/documents/documents-constants-model.js.map +1 -0
- package/server/documents/documents-controller.d.ts +16 -0
- package/server/documents/documents-controller.js +117 -0
- package/server/documents/documents-controller.js.map +1 -0
- package/server/documents/documents-module.d.ts +2 -0
- package/server/documents/documents-module.js +27 -0
- package/server/documents/documents-module.js.map +1 -0
- package/server/documents/documents-schema.d.ts +96 -0
- package/server/documents/documents-schema.js +38 -0
- package/server/documents/documents-schema.js.map +1 -0
- package/server/documents/documents-service.d.ts +164 -0
- package/server/documents/documents-service.js +1417 -0
- package/server/documents/documents-service.js.map +1 -0
- package/server/flow-tag/flow-tag-connect-provider.d.ts +146 -0
- package/server/flow-tag/flow-tag-connect-provider.js +14 -0
- package/server/flow-tag/flow-tag-connect-provider.js.map +1 -0
- package/server/flow-tag/flow-tag-constants-model.d.ts +2 -0
- package/server/flow-tag/flow-tag-constants-model.js +6 -0
- package/server/flow-tag/flow-tag-constants-model.js.map +1 -0
- package/server/flow-tag/flow-tag-module.d.ts +2 -0
- package/server/flow-tag/flow-tag-module.js +24 -0
- package/server/flow-tag/flow-tag-module.js.map +1 -0
- package/server/flow-tag/flow-tag-schema.d.ts +100 -0
- package/server/flow-tag/flow-tag-schema.js +131 -0
- package/server/flow-tag/flow-tag-schema.js.map +1 -0
- package/server/flow-tag/flow-tag-service.d.ts +77 -0
- package/server/flow-tag/flow-tag-service.js +156 -0
- package/server/flow-tag/flow-tag-service.js.map +1 -0
- package/server/health.controller.d.ts +7 -0
- package/server/health.controller.js +33 -0
- package/server/health.controller.js.map +1 -0
- package/server/http-batch/http-batch-controller.d.ts +345 -0
- package/server/http-batch/http-batch-controller.js +40 -0
- package/server/http-batch/http-batch-controller.js.map +1 -0
- package/server/http-batch/http-batch-module.d.ts +2 -0
- package/server/http-batch/http-batch-module.js +25 -0
- package/server/http-batch/http-batch-module.js.map +1 -0
- package/server/http-batch/http-batch-service.d.ts +381 -0
- package/server/http-batch/http-batch-service.js +268 -0
- package/server/http-batch/http-batch-service.js.map +1 -0
- package/server/lambda.d.ts +2 -0
- package/server/lambda.js +115 -0
- package/server/lambda.js.map +1 -0
- package/server/llm/openai-provider.d.ts +8 -0
- package/server/llm/openai-provider.js +256 -0
- package/server/llm/openai-provider.js.map +1 -0
- package/server/main.d.ts +1 -0
- package/server/main.js +80 -0
- package/server/main.js.map +1 -0
- package/server/mcp-oauth/mcp-oauth-connect-provider.d.ts +164 -0
- package/server/mcp-oauth/mcp-oauth-connect-provider.js +14 -0
- package/server/mcp-oauth/mcp-oauth-connect-provider.js.map +1 -0
- package/server/mcp-oauth/mcp-oauth-constants-model.d.ts +2 -0
- package/server/mcp-oauth/mcp-oauth-constants-model.js +6 -0
- package/server/mcp-oauth/mcp-oauth-constants-model.js.map +1 -0
- package/server/mcp-oauth/mcp-oauth-controller.d.ts +66 -0
- package/server/mcp-oauth/mcp-oauth-controller.js +166 -0
- package/server/mcp-oauth/mcp-oauth-controller.js.map +1 -0
- package/server/mcp-oauth/mcp-oauth-module.d.ts +2 -0
- package/server/mcp-oauth/mcp-oauth-module.js +27 -0
- package/server/mcp-oauth/mcp-oauth-module.js.map +1 -0
- package/server/mcp-oauth/mcp-oauth-schema.d.ts +112 -0
- package/server/mcp-oauth/mcp-oauth-schema.js +148 -0
- package/server/mcp-oauth/mcp-oauth-schema.js.map +1 -0
- package/server/mcp-oauth/mcp-oauth-service.d.ts +189 -0
- package/server/mcp-oauth/mcp-oauth-service.js +545 -0
- package/server/mcp-oauth/mcp-oauth-service.js.map +1 -0
- package/server/memory/memory-connect-provider.d.ts +200 -0
- package/server/memory/memory-connect-provider.js +26 -0
- package/server/memory/memory-connect-provider.js.map +1 -0
- package/server/memory/memory-constants-model.d.ts +6 -0
- package/server/memory/memory-constants-model.js +10 -0
- package/server/memory/memory-constants-model.js.map +1 -0
- package/server/memory/memory-controller.d.ts +15 -0
- package/server/memory/memory-controller.js +53 -0
- package/server/memory/memory-controller.js.map +1 -0
- package/server/memory/memory-history-schema.d.ts +48 -0
- package/server/memory/memory-history-schema.js +62 -0
- package/server/memory/memory-history-schema.js.map +1 -0
- package/server/memory/memory-module.d.ts +2 -0
- package/server/memory/memory-module.js +26 -0
- package/server/memory/memory-module.js.map +1 -0
- package/server/memory/memory-schema.d.ts +48 -0
- package/server/memory/memory-schema.js +62 -0
- package/server/memory/memory-schema.js.map +1 -0
- package/server/memory/memory-service.d.ts +134 -0
- package/server/memory/memory-service.js +317 -0
- package/server/memory/memory-service.js.map +1 -0
- package/server/memory/memory-trace-history-schema.d.ts +48 -0
- package/server/memory/memory-trace-history-schema.js +62 -0
- package/server/memory/memory-trace-history-schema.js.map +1 -0
- package/server/observability/observability.d.ts +3 -0
- package/server/observability/observability.js +62 -0
- package/server/observability/observability.js.map +1 -0
- package/server/production-guard.d.ts +9 -0
- package/server/production-guard.js +105 -0
- package/server/production-guard.js.map +1 -0
- package/server/provider-config/provider-config-connect-provider.d.ts +44 -0
- package/server/provider-config/provider-config-connect-provider.js +14 -0
- package/server/provider-config/provider-config-connect-provider.js.map +1 -0
- package/server/provider-config/provider-config-constants-model.d.ts +3 -0
- package/server/provider-config/provider-config-constants-model.js +7 -0
- package/server/provider-config/provider-config-constants-model.js.map +1 -0
- package/server/provider-config/provider-config-controller.d.ts +23 -0
- package/server/provider-config/provider-config-controller.js +80 -0
- package/server/provider-config/provider-config-controller.js.map +1 -0
- package/server/provider-config/provider-config-module.d.ts +2 -0
- package/server/provider-config/provider-config-module.js +27 -0
- package/server/provider-config/provider-config-module.js.map +1 -0
- package/server/provider-config/provider-config-schema.d.ts +32 -0
- package/server/provider-config/provider-config-schema.js +46 -0
- package/server/provider-config/provider-config-schema.js.map +1 -0
- package/server/provider-config/provider-config-service.d.ts +178 -0
- package/server/provider-config/provider-config-service.js +689 -0
- package/server/provider-config/provider-config-service.js.map +1 -0
- package/server/queue/queue-job-connect-provider.d.ts +128 -0
- package/server/queue/queue-job-connect-provider.js +14 -0
- package/server/queue/queue-job-connect-provider.js.map +1 -0
- package/server/queue/queue-job-constants-model.d.ts +2 -0
- package/server/queue/queue-job-constants-model.js +6 -0
- package/server/queue/queue-job-constants-model.js.map +1 -0
- package/server/queue/queue-job-schema.d.ts +88 -0
- package/server/queue/queue-job-schema.js +119 -0
- package/server/queue/queue-job-schema.js.map +1 -0
- package/server/queue/queue-lock-connect-provider.d.ts +44 -0
- package/server/queue/queue-lock-connect-provider.js +14 -0
- package/server/queue/queue-lock-connect-provider.js.map +1 -0
- package/server/queue/queue-lock-constants-model.d.ts +2 -0
- package/server/queue/queue-lock-constants-model.js +6 -0
- package/server/queue/queue-lock-constants-model.js.map +1 -0
- package/server/queue/queue-lock-schema.d.ts +32 -0
- package/server/queue/queue-lock-schema.js +47 -0
- package/server/queue/queue-lock-schema.js.map +1 -0
- package/server/queue/queue-message-dedupe-connect-provider.d.ts +116 -0
- package/server/queue/queue-message-dedupe-connect-provider.js +14 -0
- package/server/queue/queue-message-dedupe-connect-provider.js.map +1 -0
- package/server/queue/queue-message-dedupe-constants-model.d.ts +2 -0
- package/server/queue/queue-message-dedupe-constants-model.js +6 -0
- package/server/queue/queue-message-dedupe-constants-model.js.map +1 -0
- package/server/queue/queue-message-dedupe-schema.d.ts +80 -0
- package/server/queue/queue-message-dedupe-schema.js +108 -0
- package/server/queue/queue-message-dedupe-schema.js.map +1 -0
- package/server/queue/queue-module.d.ts +2 -0
- package/server/queue/queue-module.js +33 -0
- package/server/queue/queue-module.js.map +1 -0
- package/server/queue/queue-rate-limit-connect-provider.d.ts +56 -0
- package/server/queue/queue-rate-limit-connect-provider.js +14 -0
- package/server/queue/queue-rate-limit-connect-provider.js.map +1 -0
- package/server/queue/queue-rate-limit-constants-model.d.ts +2 -0
- package/server/queue/queue-rate-limit-constants-model.js +6 -0
- package/server/queue/queue-rate-limit-constants-model.js.map +1 -0
- package/server/queue/queue-rate-limit-schema.d.ts +40 -0
- package/server/queue/queue-rate-limit-schema.js +57 -0
- package/server/queue/queue-rate-limit-schema.js.map +1 -0
- package/server/queue/sqs-transition-service.d.ts +123 -0
- package/server/queue/sqs-transition-service.js +442 -0
- package/server/queue/sqs-transition-service.js.map +1 -0
- package/server/rag/rag-controller.d.ts +167 -0
- package/server/rag/rag-controller.js +232 -0
- package/server/rag/rag-controller.js.map +1 -0
- package/server/rag/rag-module.d.ts +2 -0
- package/server/rag/rag-module.js +30 -0
- package/server/rag/rag-module.js.map +1 -0
- package/server/rag/rag-service.d.ts +361 -0
- package/server/rag/rag-service.js +2864 -0
- package/server/rag/rag-service.js.map +1 -0
- package/server/runner/flow-templates.d.ts +55 -0
- package/server/runner/flow-templates.js +388 -0
- package/server/runner/flow-templates.js.map +1 -0
- package/server/runner/langgraph-runtime.service.d.ts +77 -0
- package/server/runner/langgraph-runtime.service.js +221 -0
- package/server/runner/langgraph-runtime.service.js.map +1 -0
- package/server/runner/runner-controller.d.ts +1044 -0
- package/server/runner/runner-controller.js +751 -0
- package/server/runner/runner-controller.js.map +1 -0
- package/server/runner/runner-module.d.ts +2 -0
- package/server/runner/runner-module.js +37 -0
- package/server/runner/runner-module.js.map +1 -0
- package/server/runner/runner-queue-processor.d.ts +29 -0
- package/server/runner/runner-queue-processor.js +259 -0
- package/server/runner/runner-queue-processor.js.map +1 -0
- package/server/runner/runner-service.d.ts +1761 -0
- package/server/runner/runner-service.js +14256 -0
- package/server/runner/runner-service.js.map +1 -0
- package/server/scripts/migrate-canvas-flow-versions.d.ts +1 -0
- package/server/scripts/migrate-canvas-flow-versions.js +72 -0
- package/server/scripts/migrate-canvas-flow-versions.js.map +1 -0
- package/server/scripts/migrate-mcp-oauth-user-scope.d.ts +1 -0
- package/server/scripts/migrate-mcp-oauth-user-scope.js +95 -0
- package/server/scripts/migrate-mcp-oauth-user-scope.js.map +1 -0
- package/templates/config.example.json +204 -0
- package/templates/config.production.example.json +206 -0
- package/templates/docker-compose.yml +60 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="pt-BR">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>Canvas Flow</title>
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-qV8twxcq.js"></script>
|
|
8
|
+
<link rel="stylesheet" crossorigin href="/assets/index-PCQkqMUe.css">
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<div id="root"></div>
|
|
12
|
+
</body>
|
|
13
|
+
</html>
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { Connection } from 'mongoose';
|
|
2
|
+
export declare const connectProviders: {
|
|
3
|
+
provide: string;
|
|
4
|
+
useFactory: (connection: Connection) => import("mongoose").Model<{
|
|
5
|
+
name: string;
|
|
6
|
+
active: boolean;
|
|
7
|
+
tokenHash: string;
|
|
8
|
+
tokenPrefix: string;
|
|
9
|
+
scopes: string[];
|
|
10
|
+
totalUses: number;
|
|
11
|
+
organizationId?: string;
|
|
12
|
+
createdBy?: string;
|
|
13
|
+
agentId?: string;
|
|
14
|
+
flowId?: string;
|
|
15
|
+
expiresAt?: NativeDate;
|
|
16
|
+
revokedAt?: NativeDate;
|
|
17
|
+
lastUsedAt?: NativeDate;
|
|
18
|
+
} & import("mongoose").DefaultTimestampProps, {}, {}, {}, import("mongoose").Document<unknown, {}, {
|
|
19
|
+
name: string;
|
|
20
|
+
active: boolean;
|
|
21
|
+
tokenHash: string;
|
|
22
|
+
tokenPrefix: string;
|
|
23
|
+
scopes: string[];
|
|
24
|
+
totalUses: number;
|
|
25
|
+
organizationId?: string;
|
|
26
|
+
createdBy?: string;
|
|
27
|
+
agentId?: string;
|
|
28
|
+
flowId?: string;
|
|
29
|
+
expiresAt?: NativeDate;
|
|
30
|
+
revokedAt?: NativeDate;
|
|
31
|
+
lastUsedAt?: NativeDate;
|
|
32
|
+
} & import("mongoose").DefaultTimestampProps, {}, {}> & {
|
|
33
|
+
name: string;
|
|
34
|
+
active: boolean;
|
|
35
|
+
tokenHash: string;
|
|
36
|
+
tokenPrefix: string;
|
|
37
|
+
scopes: string[];
|
|
38
|
+
totalUses: number;
|
|
39
|
+
organizationId?: string;
|
|
40
|
+
createdBy?: string;
|
|
41
|
+
agentId?: string;
|
|
42
|
+
flowId?: string;
|
|
43
|
+
expiresAt?: NativeDate;
|
|
44
|
+
revokedAt?: NativeDate;
|
|
45
|
+
lastUsedAt?: NativeDate;
|
|
46
|
+
} & import("mongoose").DefaultTimestampProps & {
|
|
47
|
+
_id: import("mongoose").Types.ObjectId;
|
|
48
|
+
} & {
|
|
49
|
+
__v: number;
|
|
50
|
+
}, import("mongoose").Schema<any, import("mongoose").Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
|
|
51
|
+
collection: string;
|
|
52
|
+
timestamps: true;
|
|
53
|
+
}, {
|
|
54
|
+
name: string;
|
|
55
|
+
active: boolean;
|
|
56
|
+
tokenHash: string;
|
|
57
|
+
tokenPrefix: string;
|
|
58
|
+
scopes: string[];
|
|
59
|
+
totalUses: number;
|
|
60
|
+
organizationId?: string;
|
|
61
|
+
createdBy?: string;
|
|
62
|
+
agentId?: string;
|
|
63
|
+
flowId?: string;
|
|
64
|
+
expiresAt?: NativeDate;
|
|
65
|
+
revokedAt?: NativeDate;
|
|
66
|
+
lastUsedAt?: NativeDate;
|
|
67
|
+
} & import("mongoose").DefaultTimestampProps, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<{
|
|
68
|
+
name: string;
|
|
69
|
+
active: boolean;
|
|
70
|
+
tokenHash: string;
|
|
71
|
+
tokenPrefix: string;
|
|
72
|
+
scopes: string[];
|
|
73
|
+
totalUses: number;
|
|
74
|
+
organizationId?: string;
|
|
75
|
+
createdBy?: string;
|
|
76
|
+
agentId?: string;
|
|
77
|
+
flowId?: string;
|
|
78
|
+
expiresAt?: NativeDate;
|
|
79
|
+
revokedAt?: NativeDate;
|
|
80
|
+
lastUsedAt?: NativeDate;
|
|
81
|
+
} & import("mongoose").DefaultTimestampProps>, {}, import("mongoose").MergeType<import("mongoose").DefaultSchemaOptions, {
|
|
82
|
+
collection: string;
|
|
83
|
+
timestamps: true;
|
|
84
|
+
}>> & import("mongoose").FlatRecord<{
|
|
85
|
+
name: string;
|
|
86
|
+
active: boolean;
|
|
87
|
+
tokenHash: string;
|
|
88
|
+
tokenPrefix: string;
|
|
89
|
+
scopes: string[];
|
|
90
|
+
totalUses: number;
|
|
91
|
+
organizationId?: string;
|
|
92
|
+
createdBy?: string;
|
|
93
|
+
agentId?: string;
|
|
94
|
+
flowId?: string;
|
|
95
|
+
expiresAt?: NativeDate;
|
|
96
|
+
revokedAt?: NativeDate;
|
|
97
|
+
lastUsedAt?: NativeDate;
|
|
98
|
+
} & import("mongoose").DefaultTimestampProps> & {
|
|
99
|
+
_id: import("mongoose").Types.ObjectId;
|
|
100
|
+
} & {
|
|
101
|
+
__v: number;
|
|
102
|
+
}>>;
|
|
103
|
+
inject: string[];
|
|
104
|
+
}[];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.connectProviders = void 0;
|
|
4
|
+
const constants_global_1 = require("./../constants-global");
|
|
5
|
+
const api_key_constants_model_1 = require("./api-key-constants-model");
|
|
6
|
+
const api_key_schema_1 = require("./api-key-schema");
|
|
7
|
+
exports.connectProviders = [
|
|
8
|
+
{
|
|
9
|
+
provide: api_key_constants_model_1.MODEL_NAME,
|
|
10
|
+
useFactory: (connection) => connection.model(api_key_constants_model_1.COLLECTION_NAME, api_key_schema_1.EntitySchema),
|
|
11
|
+
inject: [constants_global_1.STRING_URL_DATABASE_CONNECTION],
|
|
12
|
+
},
|
|
13
|
+
];
|
|
14
|
+
//# sourceMappingURL=api-key-connect-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key-connect-provider.js","sourceRoot":"","sources":["../../src/api-key/api-key-connect-provider.ts"],"names":[],"mappings":";;;AACA,4DAAuE;AACvE,uEAAwE;AACxE,qDAAgD;AAEnC,QAAA,gBAAgB,GAAG;IAC9B;QACE,OAAO,EAAE,oCAAU;QACnB,UAAU,EAAE,CAAC,UAAsB,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,yCAAe,EAAE,6BAAY,CAAC;QACvF,MAAM,EAAE,CAAC,iDAA8B,CAAC;KACzC;CACF,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MODEL_NAME = exports.COLLECTION_NAME = void 0;
|
|
4
|
+
exports.COLLECTION_NAME = 'canvas_flow_api_keys';
|
|
5
|
+
exports.MODEL_NAME = 'CANVAS_FLOW_API_KEY_MODEL';
|
|
6
|
+
//# sourceMappingURL=api-key-constants-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key-constants-model.js","sourceRoot":"","sources":["../../src/api-key/api-key-constants-model.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,sBAAsB,CAAC;AACzC,QAAA,UAAU,GAAG,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AuthService } from '../auth/auth-service';
|
|
2
|
+
import { ApiKeyService } from './api-key-service';
|
|
3
|
+
import { CreateApiKeyDto } from './dto/create-api-key.dto';
|
|
4
|
+
export declare class ApiKeyController {
|
|
5
|
+
private readonly service;
|
|
6
|
+
private readonly authService;
|
|
7
|
+
constructor(service: ApiKeyService, authService: AuthService);
|
|
8
|
+
private resolveManagementAccess;
|
|
9
|
+
list(authorization?: string, headerToken?: string, xApiKey?: string, flowId?: string, agentId?: string): Promise<any[]>;
|
|
10
|
+
create(createDto: CreateApiKeyDto, authorization?: string, headerToken?: string, xApiKey?: string): Promise<any>;
|
|
11
|
+
revoke(id: string, authorization?: string, headerToken?: string, xApiKey?: string): Promise<any>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.ApiKeyController = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
18
|
+
const auth_service_1 = require("../auth/auth-service");
|
|
19
|
+
const api_key_service_1 = require("./api-key-service");
|
|
20
|
+
const create_api_key_dto_1 = require("./dto/create-api-key.dto");
|
|
21
|
+
let ApiKeyController = class ApiKeyController {
|
|
22
|
+
constructor(service, authService) {
|
|
23
|
+
this.service = service;
|
|
24
|
+
this.authService = authService;
|
|
25
|
+
}
|
|
26
|
+
async resolveManagementAccess(authorization, headerToken, xApiKey) {
|
|
27
|
+
if (this.authService.isLoginRequired()) {
|
|
28
|
+
const user = await this.authService.resolveUserFromHeaders(authorization, headerToken, xApiKey);
|
|
29
|
+
if (user)
|
|
30
|
+
return user;
|
|
31
|
+
}
|
|
32
|
+
this.service.assertMasterToken(authorization, headerToken, xApiKey);
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
async list(authorization, headerToken, xApiKey, flowId, agentId) {
|
|
36
|
+
const user = await this.resolveManagementAccess(authorization, headerToken, xApiKey);
|
|
37
|
+
return await this.service.list({ flowId, agentId, organizationId: user?.organizationId });
|
|
38
|
+
}
|
|
39
|
+
async create(createDto, authorization, headerToken, xApiKey) {
|
|
40
|
+
const user = await this.resolveManagementAccess(authorization, headerToken, xApiKey);
|
|
41
|
+
return await this.service.create(createDto, user ? { organizationId: user.organizationId, userId: user.id } : undefined);
|
|
42
|
+
}
|
|
43
|
+
async revoke(id, authorization, headerToken, xApiKey) {
|
|
44
|
+
const user = await this.resolveManagementAccess(authorization, headerToken, xApiKey);
|
|
45
|
+
return await this.service.revoke(id, user?.organizationId);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
exports.ApiKeyController = ApiKeyController;
|
|
49
|
+
__decorate([
|
|
50
|
+
(0, common_1.Get)(),
|
|
51
|
+
__param(0, (0, common_1.Headers)('authorization')),
|
|
52
|
+
__param(1, (0, common_1.Headers)('x-canvas-flow-token')),
|
|
53
|
+
__param(2, (0, common_1.Headers)('x-api-key')),
|
|
54
|
+
__param(3, (0, common_1.Query)('flowId')),
|
|
55
|
+
__param(4, (0, common_1.Query)('agentId')),
|
|
56
|
+
__metadata("design:type", Function),
|
|
57
|
+
__metadata("design:paramtypes", [String, String, String, String, String]),
|
|
58
|
+
__metadata("design:returntype", Promise)
|
|
59
|
+
], ApiKeyController.prototype, "list", null);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, common_1.Post)(),
|
|
62
|
+
__param(0, (0, common_1.Body)()),
|
|
63
|
+
__param(1, (0, common_1.Headers)('authorization')),
|
|
64
|
+
__param(2, (0, common_1.Headers)('x-canvas-flow-token')),
|
|
65
|
+
__param(3, (0, common_1.Headers)('x-api-key')),
|
|
66
|
+
__metadata("design:type", Function),
|
|
67
|
+
__metadata("design:paramtypes", [create_api_key_dto_1.CreateApiKeyDto, String, String, String]),
|
|
68
|
+
__metadata("design:returntype", Promise)
|
|
69
|
+
], ApiKeyController.prototype, "create", null);
|
|
70
|
+
__decorate([
|
|
71
|
+
(0, common_1.Delete)(':id'),
|
|
72
|
+
__param(0, (0, common_1.Param)('id')),
|
|
73
|
+
__param(1, (0, common_1.Headers)('authorization')),
|
|
74
|
+
__param(2, (0, common_1.Headers)('x-canvas-flow-token')),
|
|
75
|
+
__param(3, (0, common_1.Headers)('x-api-key')),
|
|
76
|
+
__metadata("design:type", Function),
|
|
77
|
+
__metadata("design:paramtypes", [String, String, String, String]),
|
|
78
|
+
__metadata("design:returntype", Promise)
|
|
79
|
+
], ApiKeyController.prototype, "revoke", null);
|
|
80
|
+
exports.ApiKeyController = ApiKeyController = __decorate([
|
|
81
|
+
(0, swagger_1.ApiTags)('canvas-flow-api-keys'),
|
|
82
|
+
(0, common_1.Controller)('api/canvas-flow-api-keys'),
|
|
83
|
+
__metadata("design:paramtypes", [api_key_service_1.ApiKeyService,
|
|
84
|
+
auth_service_1.AuthService])
|
|
85
|
+
], ApiKeyController);
|
|
86
|
+
//# sourceMappingURL=api-key-controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key-controller.js","sourceRoot":"","sources":["../../src/api-key/api-key-controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4F;AAC5F,6CAA0C;AAC1C,uDAAuE;AACvE,uDAAkD;AAClD,iEAA2D;AAIpD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,YACmB,OAAsB,EACtB,WAAwB;QADxB,YAAO,GAAP,OAAO,CAAe;QACtB,gBAAW,GAAX,WAAW,CAAa;IACxC,CAAC;IAEI,KAAK,CAAC,uBAAuB,CAAC,aAAsB,EAAE,WAAoB,EAAE,OAAgB;QAClG,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAChG,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAGK,AAAN,KAAK,CAAC,IAAI,CACkB,aAAsB,EAChB,WAAoB,EAC9B,OAAgB,EACrB,MAAe,EACd,OAAgB;QAElC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACrF,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IAC5F,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CACF,SAA0B,EACR,aAAsB,EAChB,WAAoB,EAC9B,OAAgB;QAEtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACrF,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3H,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CACG,EAAU,EACG,aAAsB,EAChB,WAAoB,EAC9B,OAAgB;QAEtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACrF,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC7D,CAAC;CACF,CAAA;AAhDY,4CAAgB;AAgBrB;IADL,IAAA,YAAG,GAAE;IAEH,WAAA,IAAA,gBAAO,EAAC,eAAe,CAAC,CAAA;IACxB,WAAA,IAAA,gBAAO,EAAC,qBAAqB,CAAC,CAAA;IAC9B,WAAA,IAAA,gBAAO,EAAC,WAAW,CAAC,CAAA;IACpB,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,SAAS,CAAC,CAAA;;;;4CAIlB;AAGK;IADL,IAAA,aAAI,GAAE;IAEJ,WAAA,IAAA,aAAI,GAAE,CAAA;IACN,WAAA,IAAA,gBAAO,EAAC,eAAe,CAAC,CAAA;IACxB,WAAA,IAAA,gBAAO,EAAC,qBAAqB,CAAC,CAAA;IAC9B,WAAA,IAAA,gBAAO,EAAC,WAAW,CAAC,CAAA;;qCAHF,oCAAe;;8CAOnC;AAGK;IADL,IAAA,eAAM,EAAC,KAAK,CAAC;IAEX,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IACX,WAAA,IAAA,gBAAO,EAAC,eAAe,CAAC,CAAA;IACxB,WAAA,IAAA,gBAAO,EAAC,qBAAqB,CAAC,CAAA;IAC9B,WAAA,IAAA,gBAAO,EAAC,WAAW,CAAC,CAAA;;;;8CAItB;2BA/CU,gBAAgB;IAF5B,IAAA,iBAAO,EAAC,sBAAsB,CAAC;IAC/B,IAAA,mBAAU,EAAC,0BAA0B,CAAC;qCAGT,+BAAa;QACT,0BAAW;GAHhC,gBAAgB,CAgD5B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.ApiKeyModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const database_module_1 = require("../database/database.module");
|
|
12
|
+
const auth_module_1 = require("../auth/auth-module");
|
|
13
|
+
const api_key_controller_1 = require("./api-key-controller");
|
|
14
|
+
const api_key_service_1 = require("./api-key-service");
|
|
15
|
+
const api_key_connect_provider_1 = require("./api-key-connect-provider");
|
|
16
|
+
let ApiKeyModule = class ApiKeyModule {
|
|
17
|
+
};
|
|
18
|
+
exports.ApiKeyModule = ApiKeyModule;
|
|
19
|
+
exports.ApiKeyModule = ApiKeyModule = __decorate([
|
|
20
|
+
(0, common_1.Module)({
|
|
21
|
+
imports: [database_module_1.DatabaseModule, auth_module_1.AuthModule],
|
|
22
|
+
controllers: [api_key_controller_1.ApiKeyController],
|
|
23
|
+
providers: [api_key_service_1.ApiKeyService, ...api_key_connect_provider_1.connectProviders],
|
|
24
|
+
exports: [api_key_service_1.ApiKeyService],
|
|
25
|
+
})
|
|
26
|
+
], ApiKeyModule);
|
|
27
|
+
//# sourceMappingURL=api-key-module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key-module.js","sourceRoot":"","sources":["../../src/api-key/api-key-module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,iEAA6D;AAC7D,qDAAiD;AACjD,6DAAwD;AACxD,uDAAkD;AAClD,yEAA8D;AAQvD,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,oCAAY;uBAAZ,YAAY;IANxB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,gCAAc,EAAE,wBAAU,CAAC;QACrC,WAAW,EAAE,CAAC,qCAAgB,CAAC;QAC/B,SAAS,EAAE,CAAC,+BAAa,EAAE,GAAG,2CAAgB,CAAC;QAC/C,OAAO,EAAE,CAAC,+BAAa,CAAC;KACzB,CAAC;GACW,YAAY,CAAG"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import * as mongoose from 'mongoose';
|
|
2
|
+
import { Document } from 'mongoose';
|
|
3
|
+
export declare const EntitySchema: mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
|
|
4
|
+
collection: string;
|
|
5
|
+
timestamps: true;
|
|
6
|
+
}, {
|
|
7
|
+
name: string;
|
|
8
|
+
active: boolean;
|
|
9
|
+
tokenHash: string;
|
|
10
|
+
tokenPrefix: string;
|
|
11
|
+
scopes: string[];
|
|
12
|
+
totalUses: number;
|
|
13
|
+
organizationId?: string;
|
|
14
|
+
createdBy?: string;
|
|
15
|
+
agentId?: string;
|
|
16
|
+
flowId?: string;
|
|
17
|
+
expiresAt?: NativeDate;
|
|
18
|
+
revokedAt?: NativeDate;
|
|
19
|
+
lastUsedAt?: NativeDate;
|
|
20
|
+
} & mongoose.DefaultTimestampProps, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
21
|
+
name: string;
|
|
22
|
+
active: boolean;
|
|
23
|
+
tokenHash: string;
|
|
24
|
+
tokenPrefix: string;
|
|
25
|
+
scopes: string[];
|
|
26
|
+
totalUses: number;
|
|
27
|
+
organizationId?: string;
|
|
28
|
+
createdBy?: string;
|
|
29
|
+
agentId?: string;
|
|
30
|
+
flowId?: string;
|
|
31
|
+
expiresAt?: NativeDate;
|
|
32
|
+
revokedAt?: NativeDate;
|
|
33
|
+
lastUsedAt?: NativeDate;
|
|
34
|
+
} & mongoose.DefaultTimestampProps>, {}, mongoose.MergeType<mongoose.DefaultSchemaOptions, {
|
|
35
|
+
collection: string;
|
|
36
|
+
timestamps: true;
|
|
37
|
+
}>> & mongoose.FlatRecord<{
|
|
38
|
+
name: string;
|
|
39
|
+
active: boolean;
|
|
40
|
+
tokenHash: string;
|
|
41
|
+
tokenPrefix: string;
|
|
42
|
+
scopes: string[];
|
|
43
|
+
totalUses: number;
|
|
44
|
+
organizationId?: string;
|
|
45
|
+
createdBy?: string;
|
|
46
|
+
agentId?: string;
|
|
47
|
+
flowId?: string;
|
|
48
|
+
expiresAt?: NativeDate;
|
|
49
|
+
revokedAt?: NativeDate;
|
|
50
|
+
lastUsedAt?: NativeDate;
|
|
51
|
+
} & mongoose.DefaultTimestampProps> & {
|
|
52
|
+
_id: mongoose.Types.ObjectId;
|
|
53
|
+
} & {
|
|
54
|
+
__v: number;
|
|
55
|
+
}>;
|
|
56
|
+
export declare class CanvasFlowApiKeyEntity extends Document {
|
|
57
|
+
name: string;
|
|
58
|
+
tokenHash: string;
|
|
59
|
+
tokenPrefix: string;
|
|
60
|
+
flowId?: string;
|
|
61
|
+
agentId?: string;
|
|
62
|
+
organizationId?: string;
|
|
63
|
+
scopes: string[];
|
|
64
|
+
active: boolean;
|
|
65
|
+
expiresAt?: Date;
|
|
66
|
+
revokedAt?: Date;
|
|
67
|
+
lastUsedAt?: Date;
|
|
68
|
+
totalUses: number;
|
|
69
|
+
createdBy?: string;
|
|
70
|
+
createdAt: Date;
|
|
71
|
+
updatedAt: Date;
|
|
72
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.CanvasFlowApiKeyEntity = exports.EntitySchema = void 0;
|
|
13
|
+
const mongoose_1 = require("@nestjs/mongoose");
|
|
14
|
+
const mongoose = require("mongoose");
|
|
15
|
+
const mongoose_2 = require("mongoose");
|
|
16
|
+
const api_key_constants_model_1 = require("./api-key-constants-model");
|
|
17
|
+
exports.EntitySchema = new mongoose.Schema({
|
|
18
|
+
name: { type: String, required: true },
|
|
19
|
+
tokenHash: { type: String, required: true, unique: true, select: false },
|
|
20
|
+
tokenPrefix: { type: String, required: true },
|
|
21
|
+
flowId: { type: String, index: true },
|
|
22
|
+
agentId: { type: String, index: true },
|
|
23
|
+
organizationId: { type: String, index: true },
|
|
24
|
+
scopes: { type: [String], default: ['run:flow'] },
|
|
25
|
+
active: { type: Boolean, default: true, index: true },
|
|
26
|
+
expiresAt: { type: Date },
|
|
27
|
+
revokedAt: { type: Date },
|
|
28
|
+
lastUsedAt: { type: Date },
|
|
29
|
+
totalUses: { type: Number, default: 0 },
|
|
30
|
+
createdBy: String,
|
|
31
|
+
}, {
|
|
32
|
+
collection: api_key_constants_model_1.COLLECTION_NAME,
|
|
33
|
+
timestamps: true,
|
|
34
|
+
});
|
|
35
|
+
exports.EntitySchema.index({ flowId: 1, active: 1, createdAt: -1 });
|
|
36
|
+
exports.EntitySchema.index({ agentId: 1, active: 1, createdAt: -1 });
|
|
37
|
+
let CanvasFlowApiKeyEntity = class CanvasFlowApiKeyEntity extends mongoose_2.Document {
|
|
38
|
+
};
|
|
39
|
+
exports.CanvasFlowApiKeyEntity = CanvasFlowApiKeyEntity;
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, mongoose_1.Prop)({ required: true }),
|
|
42
|
+
__metadata("design:type", String)
|
|
43
|
+
], CanvasFlowApiKeyEntity.prototype, "name", void 0);
|
|
44
|
+
__decorate([
|
|
45
|
+
(0, mongoose_1.Prop)({ required: true, select: false }),
|
|
46
|
+
__metadata("design:type", String)
|
|
47
|
+
], CanvasFlowApiKeyEntity.prototype, "tokenHash", void 0);
|
|
48
|
+
__decorate([
|
|
49
|
+
(0, mongoose_1.Prop)({ required: true }),
|
|
50
|
+
__metadata("design:type", String)
|
|
51
|
+
], CanvasFlowApiKeyEntity.prototype, "tokenPrefix", void 0);
|
|
52
|
+
__decorate([
|
|
53
|
+
(0, mongoose_1.Prop)(),
|
|
54
|
+
__metadata("design:type", String)
|
|
55
|
+
], CanvasFlowApiKeyEntity.prototype, "flowId", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
(0, mongoose_1.Prop)(),
|
|
58
|
+
__metadata("design:type", String)
|
|
59
|
+
], CanvasFlowApiKeyEntity.prototype, "agentId", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, mongoose_1.Prop)(),
|
|
62
|
+
__metadata("design:type", String)
|
|
63
|
+
], CanvasFlowApiKeyEntity.prototype, "organizationId", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
(0, mongoose_1.Prop)({ type: [String], default: ['run:flow'] }),
|
|
66
|
+
__metadata("design:type", Array)
|
|
67
|
+
], CanvasFlowApiKeyEntity.prototype, "scopes", void 0);
|
|
68
|
+
__decorate([
|
|
69
|
+
(0, mongoose_1.Prop)({ default: true }),
|
|
70
|
+
__metadata("design:type", Boolean)
|
|
71
|
+
], CanvasFlowApiKeyEntity.prototype, "active", void 0);
|
|
72
|
+
__decorate([
|
|
73
|
+
(0, mongoose_1.Prop)(),
|
|
74
|
+
__metadata("design:type", Date)
|
|
75
|
+
], CanvasFlowApiKeyEntity.prototype, "expiresAt", void 0);
|
|
76
|
+
__decorate([
|
|
77
|
+
(0, mongoose_1.Prop)(),
|
|
78
|
+
__metadata("design:type", Date)
|
|
79
|
+
], CanvasFlowApiKeyEntity.prototype, "revokedAt", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
(0, mongoose_1.Prop)(),
|
|
82
|
+
__metadata("design:type", Date)
|
|
83
|
+
], CanvasFlowApiKeyEntity.prototype, "lastUsedAt", void 0);
|
|
84
|
+
__decorate([
|
|
85
|
+
(0, mongoose_1.Prop)({ default: 0 }),
|
|
86
|
+
__metadata("design:type", Number)
|
|
87
|
+
], CanvasFlowApiKeyEntity.prototype, "totalUses", void 0);
|
|
88
|
+
__decorate([
|
|
89
|
+
(0, mongoose_1.Prop)(),
|
|
90
|
+
__metadata("design:type", String)
|
|
91
|
+
], CanvasFlowApiKeyEntity.prototype, "createdBy", void 0);
|
|
92
|
+
exports.CanvasFlowApiKeyEntity = CanvasFlowApiKeyEntity = __decorate([
|
|
93
|
+
(0, mongoose_1.Schema)({
|
|
94
|
+
collection: api_key_constants_model_1.COLLECTION_NAME,
|
|
95
|
+
timestamps: true,
|
|
96
|
+
})
|
|
97
|
+
], CanvasFlowApiKeyEntity);
|
|
98
|
+
//# sourceMappingURL=api-key-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key-schema.js","sourceRoot":"","sources":["../../src/api-key/api-key-schema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAgD;AAChD,qCAAqC;AACrC,uCAAoC;AACpC,uEAA4D;AAE/C,QAAA,YAAY,GAAG,IAAI,QAAQ,CAAC,MAAM,CAC7C;IACE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtC,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;IACxE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IACtC,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE;IACjD,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACrD,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IACzB,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IACzB,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1B,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;IACvC,SAAS,EAAE,MAAM;CAClB,EACD;IACE,UAAU,EAAE,yCAAe;IAC3B,UAAU,EAAE,IAAI;CACjB,CACF,CAAC;AAEF,oBAAY,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAC5D,oBAAY,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAMtD,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,mBAAQ;CA0CnD,CAAA;AA1CY,wDAAsB;AAEjC;IADC,IAAA,eAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACZ;AAGb;IADC,IAAA,eAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;;yDACtB;AAGlB;IADC,IAAA,eAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2DACL;AAGpB;IADC,IAAA,eAAI,GAAE;;sDACS;AAGhB;IADC,IAAA,eAAI,GAAE;;uDACU;AAGjB;IADC,IAAA,eAAI,GAAE;;8DACiB;AAGxB;IADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;;sDAC/B;AAGjB;IADC,IAAA,eAAI,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;sDACR;AAGhB;IADC,IAAA,eAAI,GAAE;8BACK,IAAI;yDAAC;AAGjB;IADC,IAAA,eAAI,GAAE;8BACK,IAAI;yDAAC;AAGjB;IADC,IAAA,eAAI,GAAE;8BACM,IAAI;0DAAC;AAGlB;IADC,IAAA,eAAI,EAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;yDACH;AAGlB;IADC,IAAA,eAAI,GAAE;;yDACY;iCAtCR,sBAAsB;IAJlC,IAAA,iBAAM,EAAC;QACN,UAAU,EAAE,yCAAe;QAC3B,UAAU,EAAE,IAAI;KACjB,CAAC;GACW,sBAAsB,CA0ClC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ConfigService } from '@nestjs/config';
|
|
2
|
+
import { Model } from 'mongoose';
|
|
3
|
+
import { CanvasFlowApiKeyEntity } from './api-key-schema';
|
|
4
|
+
import { CreateApiKeyDto } from './dto/create-api-key.dto';
|
|
5
|
+
export interface RunKeyContext {
|
|
6
|
+
flowId?: string;
|
|
7
|
+
agentId?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class ApiKeyService {
|
|
10
|
+
private model;
|
|
11
|
+
private readonly configService;
|
|
12
|
+
constructor(model: Model<CanvasFlowApiKeyEntity>, configService: ConfigService);
|
|
13
|
+
extractToken(authorization?: string, headerToken?: string, xApiKey?: string): string;
|
|
14
|
+
getMasterToken(): string;
|
|
15
|
+
isMasterToken(token: string): boolean;
|
|
16
|
+
assertMasterToken(authorization?: string, headerToken?: string, xApiKey?: string): void;
|
|
17
|
+
private hashToken;
|
|
18
|
+
private normalizeRecord;
|
|
19
|
+
create(createDto: CreateApiKeyDto, auth?: {
|
|
20
|
+
organizationId?: string;
|
|
21
|
+
userId?: string;
|
|
22
|
+
}): Promise<any>;
|
|
23
|
+
list(filters?: {
|
|
24
|
+
flowId?: string;
|
|
25
|
+
agentId?: string;
|
|
26
|
+
organizationId?: string;
|
|
27
|
+
}): Promise<any[]>;
|
|
28
|
+
revoke(id: string, organizationId?: string): Promise<any>;
|
|
29
|
+
validateRunToken(token: string, context: RunKeyContext): Promise<{
|
|
30
|
+
valid: boolean;
|
|
31
|
+
reason: string;
|
|
32
|
+
kind?: undefined;
|
|
33
|
+
key?: undefined;
|
|
34
|
+
} | {
|
|
35
|
+
valid: boolean;
|
|
36
|
+
kind: "master";
|
|
37
|
+
reason?: undefined;
|
|
38
|
+
key?: undefined;
|
|
39
|
+
} | {
|
|
40
|
+
valid: boolean;
|
|
41
|
+
kind: "generated";
|
|
42
|
+
key: any;
|
|
43
|
+
reason?: undefined;
|
|
44
|
+
}>;
|
|
45
|
+
}
|