@voltro/cli 0.13.0 → 0.15.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/CHANGELOG.md +412 -0
- package/dist/{apiBuild-B6_ehbem.js → apiBuild-CHItlwPO.js} +2 -2
- package/dist/apiBuild-D8juhYsS.js +2 -0
- package/dist/bin.js +3 -3
- package/dist/{commands-DYOuGlEC.js → commands-CPQuQRXh.js} +3967 -2831
- package/dist/{dbCommand-DIOJQwsq.js → dbCommand-B8F29zV0.js} +2 -1
- package/dist/dbCommand-Dt7BtdMd.js +2 -0
- package/dist/{dev-xdijqojc.js → dev-BHLM3RPX.js} +1 -1
- package/dist/{dev-Fb9BmavX.js → dev-C2lCUhYI.js} +1478 -1347
- package/dist/fileConventions-Cu0tM-Bl.js +29 -0
- package/dist/{frameworkTableAssembly-CYlrafoK.js → frameworkTableAssembly-BA2bAmYN.js} +164 -163
- package/dist/frameworkTableAssembly-D1zJSgOU.js +2 -0
- package/dist/index.js +1 -1
- package/dist/{inspectMetrics-DOiiII34.js → inspectMetrics-CYDSO3za.js} +955 -945
- package/dist/{serveCommand-CqYxzBZR.js → serveCommand-DBzQcCuv.js} +410 -396
- package/dist/serveEntry.js +2 -2
- package/dist/{start-CjG_0xhR.js → start-BtgatJN3.js} +246 -246
- package/dist/startEntry.js +2 -2
- package/package.json +17 -17
- package/templates/AGENTS.core.md +77 -3
- package/templates/AGENTS.md +78 -4
- package/templates/agent-docs/_index.md +1 -1
- package/templates/agent-docs/_manifest.json +2 -2
- package/templates/agent-docs/authentication.md +34 -2
- package/templates/agent-docs/cli.md +116 -2
- package/templates/agent-docs/data.md +195 -3
- package/templates/agent-docs/database/hosting.md +2 -2
- package/templates/agent-docs/database/migrations.md +77 -3
- package/templates/agent-docs/database/overview.md +11 -0
- package/templates/agent-docs/database/seedsdialects.md +53 -1
- package/templates/agent-docs/internationalization.md +3 -3
- package/templates/agent-docs/introduction.md +133 -2
- package/templates/agent-docs/plugins.md +2 -1
- package/templates/agent-docs/reference.md +4 -4
- package/templates/agent-docs/routing.md +48 -43
- package/templates/agent-docs/schema-driven-ui.md +14 -3
- package/templates/agent-docs/templates/apibackends.md +1 -8
- package/templates/agent-docs/templates/appshells.md +24 -24
- package/templates/agent-docs/testing.md +16 -1
- package/templates/agent-docs/whats-new.md +247 -39
- package/templates/apps/api-ai/database/schema.ts +0 -2
- package/templates/apps/api-ai/package.json +7 -7
- package/templates/apps/api-auth/package.json +8 -8
- package/templates/apps/api-backend/database/schema.ts +0 -3
- package/templates/apps/api-backend/package.json +7 -7
- package/templates/apps/api-backend-deactivation/database/schema.ts +0 -1
- package/templates/apps/api-backend-deactivation/package.json +7 -7
- package/templates/apps/api-backend-mail/database/schema.ts +0 -3
- package/templates/apps/api-backend-mail/package.json +8 -8
- package/templates/apps/api-backend-mariadb/database/schema.ts +0 -3
- package/templates/apps/api-backend-mariadb/package.json +9 -9
- package/templates/apps/api-backend-storage/database/schema.ts +0 -3
- package/templates/apps/api-backend-storage/package.json +8 -8
- package/templates/apps/api-data-advanced/database/authors.entity.ts +0 -2
- package/templates/apps/api-data-advanced/database/books.entity.ts +0 -1
- package/templates/apps/api-data-advanced/package.json +8 -8
- package/templates/apps/api-durable/database/schema.ts +0 -3
- package/templates/apps/api-durable/package.json +8 -8
- package/templates/apps/api-feature-flags/database/schema.ts +0 -1
- package/templates/apps/api-feature-flags/package.json +9 -9
- package/templates/apps/api-governance/database/schema.ts +0 -1
- package/templates/apps/api-governance/package.json +8 -8
- package/templates/apps/api-kv/database/schema.ts +0 -3
- package/templates/apps/api-kv/package.json +8 -8
- package/templates/apps/api-moderation/database/schema.ts +0 -2
- package/templates/apps/api-moderation/package.json +8 -8
- package/templates/apps/api-observability/database/schema.ts +0 -1
- package/templates/apps/api-observability/package.json +8 -8
- package/templates/apps/api-ratelimit/database/schema.ts +0 -1
- package/templates/apps/api-ratelimit/package.json +8 -8
- package/templates/apps/api-rbac/database/schema.ts +0 -2
- package/templates/apps/api-rbac/package.json +8 -8
- package/templates/apps/api-rest/database/schema.ts +0 -3
- package/templates/apps/api-rest/package.json +7 -7
- package/templates/apps/api-saas/database/schema.ts +0 -1
- package/templates/apps/api-saas/package.json +11 -11
- package/templates/apps/api-search/database/schema.ts +0 -1
- package/templates/apps/api-search/package.json +8 -8
- package/templates/apps/api-versioning/database/schema.ts +0 -1
- package/templates/apps/api-versioning/package.json +8 -8
- package/templates/apps/api-webhooks/database/schema.ts +0 -1
- package/templates/apps/api-webhooks/package.json +9 -9
- package/templates/apps/changelog/package.json +6 -6
- package/templates/apps/changelog/src/pages/[locale]/{[slug].tsx → [slug].page.tsx} +2 -2
- package/templates/apps/changelog/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
- package/templates/apps/changelog/src/pages/[locale]/mirrors.test.tsx +2 -2
- package/templates/apps/changelog/src/pages/{[slug].test.tsx → [slug].page.test.tsx} +1 -1
- package/templates/apps/changelog/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/edge-functions/package.json +2 -2
- package/templates/apps/frontend-admin/package.json +8 -8
- package/templates/apps/frontend-admin/src/pages/(marketing)/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-admin/src/pages/(marketing)/{login.test.tsx → login.page.test.tsx} +1 -1
- package/templates/apps/frontend-admin/src/pages/admin/entity.test.tsx +1 -1
- package/templates/apps/frontend-admin/src/pages/admin/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-app/package.json +8 -8
- package/templates/apps/frontend-app/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-app/src/pages/{schema-ui.test.tsx → schema-ui.page.test.tsx} +1 -1
- package/templates/apps/frontend-blank/package.json +7 -7
- package/templates/apps/frontend-blank/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-contact/package.json +7 -7
- package/templates/apps/frontend-contact/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
- package/templates/apps/frontend-contact/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-dashboard/package.json +7 -7
- package/templates/apps/frontend-dashboard/src/pages/(marketing)/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-dashboard/src/pages/(marketing)/{login.test.tsx → login.page.test.tsx} +1 -1
- package/templates/apps/frontend-dashboard/src/pages/dashboard/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-dashboard/src/pages/dashboard/{settings.test.tsx → settings.page.test.tsx} +1 -1
- package/templates/apps/frontend-docs/package.json +7 -7
- package/templates/apps/frontend-docs/src/pages/[locale]/docs/{[...slug].tsx → [...slug].page.tsx} +3 -3
- package/templates/apps/frontend-docs/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
- package/templates/apps/frontend-docs/src/pages/[locale]/mirrors.test.tsx +2 -2
- package/templates/apps/frontend-docs/src/pages/docs/{[...slug].test.tsx → [...slug].page.test.tsx} +1 -1
- package/templates/apps/frontend-docs/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-i18n/package.json +6 -6
- package/templates/apps/frontend-i18n/src/pages/[locale]/{about.tsx → about.page.tsx} +2 -2
- package/templates/apps/frontend-i18n/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
- package/templates/apps/frontend-i18n/src/pages/[locale]/mirrors.test.tsx +2 -2
- package/templates/apps/frontend-i18n/src/pages/{about.test.tsx → about.page.test.tsx} +1 -1
- package/templates/apps/frontend-i18n/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-landing/package.json +7 -7
- package/templates/apps/frontend-landing/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
- package/templates/apps/frontend-landing/src/pages/[locale]/mirrors.test.tsx +1 -1
- package/templates/apps/frontend-landing/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-spa/package.json +7 -7
- package/templates/apps/frontend-spa/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-ssr/package.json +7 -7
- package/templates/apps/frontend-ssr/src/pages/{feed-swr.test.tsx → feed-swr.page.test.tsx} +1 -1
- package/templates/apps/frontend-ssr/src/pages/{feed.test.tsx → feed.page.test.tsx} +1 -1
- package/templates/apps/frontend-ssr/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-ssr-api/package.json +8 -8
- package/templates/apps/frontend-ssr-api/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/templates/apps/frontend-static-blog/package.json +6 -6
- package/templates/apps/frontend-static-blog/src/pages/[locale]/blog/{[slug].tsx → [slug].page.tsx} +2 -2
- package/templates/apps/frontend-static-blog/src/pages/[locale]/{index.tsx → index.page.tsx} +2 -2
- package/templates/apps/frontend-static-blog/src/pages/[locale]/mirrors.test.tsx +2 -2
- package/templates/apps/frontend-static-blog/src/pages/blog/{[slug].test.tsx → [slug].page.test.tsx} +1 -1
- package/templates/apps/frontend-static-blog/src/pages/{index.test.tsx → index.page.test.tsx} +1 -1
- package/dist/apiBuild-Bzpb383i.js +0 -2
- package/dist/dbCommand-ADD4mrTI.js +0 -2
- package/dist/frameworkTableAssembly-XvKO7wQt.js +0 -2
- /package/templates/apps/changelog/src/pages/{[slug].tsx → [slug].page.tsx} +0 -0
- /package/templates/apps/changelog/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-admin/src/pages/(marketing)/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-admin/src/pages/(marketing)/{login.tsx → login.page.tsx} +0 -0
- /package/templates/apps/frontend-admin/src/pages/admin/{[entity].tsx → [entity].page.tsx} +0 -0
- /package/templates/apps/frontend-admin/src/pages/admin/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-app/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-app/src/pages/{schema-ui.tsx → schema-ui.page.tsx} +0 -0
- /package/templates/apps/frontend-blank/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-contact/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-dashboard/src/pages/(marketing)/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-dashboard/src/pages/(marketing)/{login.tsx → login.page.tsx} +0 -0
- /package/templates/apps/frontend-dashboard/src/pages/dashboard/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-dashboard/src/pages/dashboard/{settings.tsx → settings.page.tsx} +0 -0
- /package/templates/apps/frontend-docs/src/pages/docs/{[...slug].tsx → [...slug].page.tsx} +0 -0
- /package/templates/apps/frontend-docs/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-i18n/src/pages/{about.tsx → about.page.tsx} +0 -0
- /package/templates/apps/frontend-i18n/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-landing/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-spa/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-ssr/src/pages/{feed-swr.tsx → feed-swr.page.tsx} +0 -0
- /package/templates/apps/frontend-ssr/src/pages/{feed.tsx → feed.page.tsx} +0 -0
- /package/templates/apps/frontend-ssr/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-ssr-api/src/pages/{index.tsx → index.page.tsx} +0 -0
- /package/templates/apps/frontend-static-blog/src/pages/blog/{[slug].tsx → [slug].page.tsx} +0 -0
- /package/templates/apps/frontend-static-blog/src/pages/{index.tsx → index.page.tsx} +0 -0
|
@@ -1,174 +1,175 @@
|
|
|
1
1
|
import { n as e } from "./appModuleLoader-C9r9mxZt.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
2
|
+
import { C as t, D as n, T as r, i, l as a } from "./fileConventions-Cu0tM-Bl.js";
|
|
3
|
+
import { basename as o, join as s } from "node:path";
|
|
4
|
+
import { pathToFileURL as c } from "node:url";
|
|
5
|
+
import { Effect as l } from "effect";
|
|
6
|
+
import { promises as u } from "node:fs";
|
|
7
|
+
import { _voltroConnectionGrantsTable as d, _voltroConnectionsTable as f, _voltroScheduleClaimsTable as p, _voltroScheduleRunsTable as m, _voltroTracesTable as h, _voltroUndoLogTable as ee, _voltroWakeupsTable as g, _voltroWorkflowEventDeliveriesTable as te, _voltroWorkflowEventsTable as ne, outboxAttemptsTable as re, outboxTable as ie, undoCaptureEnabled as ae } from "@voltro/runtime";
|
|
8
|
+
import { SqlClient as _ } from "@effect/sql";
|
|
9
|
+
import { _voltroWorkflowRunEventsTable as oe, _voltroWorkflowRunStepsTable as se, _voltroWorkflowRunsTable as ce, _voltroWorkflowStartContextsTable as le } from "@voltro/workflow";
|
|
10
|
+
import { agentMessagesTable as ue, agentThreadsTable as de, aiBudgetTable as fe, aiUsageTable as pe, isAgentDescriptor as me, isAgentExecutor as v, resolveToolModuleHandlers as y } from "@voltro/ai";
|
|
11
|
+
import { _voltroApiKeysTable as b, _voltroCdcOffsetsTable as x, _voltroIdempotencyTable as S, _voltroKvTable as C, _voltroMigrationPlansTable as w, _voltroMigrationsTable as T, _voltroMssqlCdcOffsetsTable as E, _voltroSeedsTable as D, lt as O } from "@voltro/database";
|
|
12
|
+
import { _voltroWebhookDeliveriesTable as k, _voltroWebhookTargetsTable as A } from "@voltro/plugin-webhooks/mixin";
|
|
13
|
+
import { _voltroStorageBlobsTable as j, _voltroStorageGrantsTable as M, _voltroStorageRefsTable as N, _voltroStorageUsageTable as P } from "@voltro/plugin-storage";
|
|
14
|
+
import { defineAction as F, defineMutation as I, defineQuery as L } from "@voltro/protocol";
|
|
14
15
|
//#region src/frameworkTables.ts
|
|
15
|
-
var
|
|
16
|
+
var R = [
|
|
16
17
|
{
|
|
17
|
-
table:
|
|
18
|
+
table: T,
|
|
18
19
|
when: "always"
|
|
19
20
|
},
|
|
20
21
|
{
|
|
21
|
-
table:
|
|
22
|
+
table: D,
|
|
22
23
|
when: "always"
|
|
23
24
|
},
|
|
24
25
|
{
|
|
25
|
-
table:
|
|
26
|
+
table: w,
|
|
26
27
|
when: "always"
|
|
27
28
|
},
|
|
28
29
|
{
|
|
29
|
-
table:
|
|
30
|
+
table: ce,
|
|
30
31
|
when: "workflows"
|
|
31
32
|
},
|
|
32
33
|
{
|
|
33
|
-
table:
|
|
34
|
+
table: se,
|
|
34
35
|
when: "workflows"
|
|
35
36
|
},
|
|
36
37
|
{
|
|
37
|
-
table:
|
|
38
|
+
table: oe,
|
|
38
39
|
when: "workflows"
|
|
39
40
|
},
|
|
40
41
|
{
|
|
41
|
-
table:
|
|
42
|
+
table: le,
|
|
42
43
|
when: "workflows"
|
|
43
44
|
},
|
|
44
45
|
{
|
|
45
|
-
table:
|
|
46
|
+
table: ne,
|
|
46
47
|
when: "workflows"
|
|
47
48
|
},
|
|
48
49
|
{
|
|
49
|
-
table:
|
|
50
|
+
table: te,
|
|
50
51
|
when: "workflows"
|
|
51
52
|
},
|
|
52
53
|
{
|
|
53
|
-
table:
|
|
54
|
+
table: m,
|
|
54
55
|
when: "schedules"
|
|
55
56
|
},
|
|
56
57
|
{
|
|
57
|
-
table:
|
|
58
|
+
table: p,
|
|
58
59
|
when: "schedules"
|
|
59
60
|
},
|
|
60
61
|
{
|
|
61
|
-
table:
|
|
62
|
+
table: A,
|
|
62
63
|
when: "webhooks"
|
|
63
64
|
},
|
|
64
65
|
{
|
|
65
|
-
table:
|
|
66
|
+
table: k,
|
|
66
67
|
when: "webhooks"
|
|
67
68
|
},
|
|
68
69
|
{
|
|
69
|
-
table:
|
|
70
|
+
table: h,
|
|
70
71
|
when: "traces"
|
|
71
72
|
},
|
|
72
73
|
{
|
|
73
|
-
table:
|
|
74
|
+
table: ee,
|
|
74
75
|
when: "undo"
|
|
75
76
|
},
|
|
76
77
|
{
|
|
77
|
-
table:
|
|
78
|
+
table: ie,
|
|
78
79
|
when: "outbox"
|
|
79
80
|
},
|
|
80
81
|
{
|
|
81
|
-
table:
|
|
82
|
+
table: re,
|
|
82
83
|
when: "outbox"
|
|
83
84
|
},
|
|
84
85
|
{
|
|
85
|
-
table:
|
|
86
|
+
table: f,
|
|
86
87
|
when: "connections"
|
|
87
88
|
},
|
|
88
89
|
{
|
|
89
|
-
table:
|
|
90
|
+
table: d,
|
|
90
91
|
when: "connections"
|
|
91
92
|
},
|
|
92
93
|
{
|
|
93
|
-
table:
|
|
94
|
+
table: g,
|
|
94
95
|
when: "always"
|
|
95
96
|
},
|
|
96
97
|
{
|
|
97
|
-
table:
|
|
98
|
+
table: N,
|
|
98
99
|
when: "always"
|
|
99
100
|
},
|
|
100
101
|
{
|
|
101
|
-
table:
|
|
102
|
+
table: M,
|
|
102
103
|
when: "always"
|
|
103
104
|
},
|
|
104
105
|
{
|
|
105
|
-
table:
|
|
106
|
+
table: j,
|
|
106
107
|
when: "always"
|
|
107
108
|
},
|
|
108
109
|
{
|
|
109
|
-
table:
|
|
110
|
+
table: P,
|
|
110
111
|
when: "always"
|
|
111
112
|
},
|
|
112
113
|
{
|
|
113
|
-
table:
|
|
114
|
+
table: S,
|
|
114
115
|
when: "always"
|
|
115
116
|
},
|
|
116
117
|
{
|
|
117
|
-
table:
|
|
118
|
+
table: b,
|
|
118
119
|
when: "always"
|
|
119
120
|
},
|
|
120
121
|
{
|
|
121
|
-
table:
|
|
122
|
+
table: C,
|
|
122
123
|
when: "always"
|
|
123
124
|
}
|
|
124
|
-
],
|
|
125
|
-
let t =
|
|
126
|
-
return e.cdc === !0 && t.push(e.cdcDialect === "mssql" ?
|
|
127
|
-
},
|
|
125
|
+
], z = (e) => {
|
|
126
|
+
let t = R.filter((t) => t.when === "always" || t.when === "workflows" && e.workflows || t.when === "schedules" && e.schedules || t.when === "webhooks" && e.webhooks || t.when === "traces" && e.traces || t.when === "undo" && e.undo === !0 || t.when === "outbox" && e.outbox === !0 || t.when === "connections" && e.connections === !0).map((e) => e.table);
|
|
127
|
+
return e.cdc === !0 && t.push(e.cdcDialect === "mssql" ? E : x), t;
|
|
128
|
+
}, B = (e) => {
|
|
128
129
|
let t = e.startsWith("@") ? e.replace(/^@[^/]+\//, "") : e;
|
|
129
130
|
return (t.startsWith("plugin-") ? t.slice(7) : t).replace(/-([a-zA-Z0-9])/g, (e, t) => t.toUpperCase());
|
|
130
|
-
},
|
|
131
|
+
}, he = (e) => {
|
|
131
132
|
let t = e.startsWith("@") ? e.replace(/^@[^/]+\//, "") : e;
|
|
132
133
|
return (t.startsWith("plugin-") ? t.slice(7) : t).replace(/#/g, "--").replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
|
133
|
-
},
|
|
134
|
+
}, ge = (e, t) => t.name.includes(".") ? t.name : `${B(e.name)}.${t.name}`, _e = (e, t, n) => {
|
|
134
135
|
switch (e) {
|
|
135
|
-
case "query": return
|
|
136
|
+
case "query": return L({
|
|
136
137
|
name: t,
|
|
137
138
|
input: n.input,
|
|
138
139
|
output: n.output,
|
|
139
140
|
...n.error === void 0 ? {} : { error: n.error },
|
|
140
141
|
...n.source === void 0 ? {} : { source: n.source }
|
|
141
142
|
});
|
|
142
|
-
case "mutation": return
|
|
143
|
+
case "mutation": return I({
|
|
143
144
|
name: t,
|
|
144
145
|
input: n.input,
|
|
145
146
|
output: n.output,
|
|
146
147
|
...n.error === void 0 ? {} : { error: n.error }
|
|
147
148
|
});
|
|
148
|
-
case "action": return
|
|
149
|
+
case "action": return F({
|
|
149
150
|
name: t,
|
|
150
151
|
input: n.input,
|
|
151
152
|
output: n.output,
|
|
152
153
|
...n.error === void 0 ? {} : { error: n.error }
|
|
153
154
|
});
|
|
154
155
|
}
|
|
155
|
-
},
|
|
156
|
+
}, ve = (e) => (t, n) => l.suspend(() => {
|
|
156
157
|
let r = { request: {
|
|
157
158
|
subject: n.request.subject,
|
|
158
159
|
traceId: n.request.traceId
|
|
159
160
|
} };
|
|
160
161
|
return e.execute(t, r);
|
|
161
|
-
}),
|
|
162
|
+
}), ye = (e) => {
|
|
162
163
|
let t = [];
|
|
163
164
|
for (let n of e) {
|
|
164
165
|
let e = n.routes ?? [];
|
|
165
166
|
for (let r of e) {
|
|
166
|
-
let e =
|
|
167
|
+
let e = ge(n, r), i = _e(r.kind, e, r);
|
|
167
168
|
t.push({
|
|
168
169
|
kind: r.kind,
|
|
169
170
|
file: `plugin:${n.name}`,
|
|
170
171
|
descriptor: i,
|
|
171
|
-
executor:
|
|
172
|
+
executor: ve(r),
|
|
172
173
|
plugin: {
|
|
173
174
|
name: n.name,
|
|
174
175
|
version: n.version
|
|
@@ -177,7 +178,7 @@ var D = [
|
|
|
177
178
|
}
|
|
178
179
|
}
|
|
179
180
|
return t;
|
|
180
|
-
},
|
|
181
|
+
}, be = (e, t) => {
|
|
181
182
|
let n = /* @__PURE__ */ new Map();
|
|
182
183
|
for (let e of t) n.set(e, "user-route");
|
|
183
184
|
for (let t of e) {
|
|
@@ -185,85 +186,85 @@ var D = [
|
|
|
185
186
|
if (r !== void 0) throw Error(`plugin route tag collision: "${e}" declared by plugin "${t.plugin.name}" but already claimed by ${r === "user-route" ? "a user-authored route" : `plugin "${r}"`}`);
|
|
186
187
|
n.set(e, t.plugin.name);
|
|
187
188
|
}
|
|
188
|
-
},
|
|
189
|
-
yield* (yield*
|
|
190
|
-
CREATE TABLE IF NOT EXISTS ${
|
|
189
|
+
}, V = "_voltro_plugin_migrations", xe = () => l.gen(function* () {
|
|
190
|
+
yield* (yield* _.SqlClient).unsafe(`
|
|
191
|
+
CREATE TABLE IF NOT EXISTS ${V} (
|
|
191
192
|
id TEXT PRIMARY KEY,
|
|
192
193
|
plugin_name TEXT NOT NULL,
|
|
193
194
|
migration_id TEXT NOT NULL,
|
|
194
195
|
description TEXT,
|
|
195
196
|
applied_at TEXT NOT NULL
|
|
196
197
|
);
|
|
197
|
-
`).pipe(
|
|
198
|
-
}),
|
|
199
|
-
let e = yield*
|
|
198
|
+
`).pipe(l.orDie);
|
|
199
|
+
}), Se = (e, t) => `${B(e)}__${t}`, Ce = () => l.gen(function* () {
|
|
200
|
+
let e = yield* _.SqlClient, t = yield* e`SELECT id FROM ${e(V)}`.pipe(l.orDie);
|
|
200
201
|
return new Set(t.map((e) => e.id));
|
|
201
|
-
}),
|
|
202
|
-
let t = yield*
|
|
202
|
+
}), we = (e) => l.gen(function* () {
|
|
203
|
+
let t = yield* _.SqlClient, n = (/* @__PURE__ */ new Date()).toISOString();
|
|
203
204
|
yield* t`
|
|
204
|
-
INSERT INTO ${t(
|
|
205
|
+
INSERT INTO ${t(V)} (id, plugin_name, migration_id, description, applied_at)
|
|
205
206
|
VALUES (${e.key}, ${e.pluginName}, ${e.migration.id}, ${e.migration.description ?? null}, ${n})
|
|
206
|
-
`.pipe(
|
|
207
|
-
}),
|
|
207
|
+
`.pipe(l.orDie);
|
|
208
|
+
}), Te = (e) => l.gen(function* () {
|
|
208
209
|
let t = e.flatMap((e) => (e.extendSchema?.migrations ?? []).map((t) => ({
|
|
209
210
|
plugin: e,
|
|
210
211
|
migration: t
|
|
211
212
|
})));
|
|
212
213
|
if (t.length === 0) return [];
|
|
213
|
-
yield*
|
|
214
|
-
let n = yield*
|
|
215
|
-
for (let { plugin: e, migration:
|
|
216
|
-
let t =
|
|
214
|
+
yield* xe();
|
|
215
|
+
let n = yield* Ce(), r = [];
|
|
216
|
+
for (let { plugin: e, migration: i } of t) {
|
|
217
|
+
let t = Se(e.name, i.id), a = Date.now();
|
|
217
218
|
if (n.has(t)) {
|
|
218
219
|
r.push({
|
|
219
220
|
pluginName: e.name,
|
|
220
|
-
migrationId:
|
|
221
|
+
migrationId: i.id,
|
|
221
222
|
status: "skipped",
|
|
222
223
|
durationMs: 0
|
|
223
224
|
});
|
|
224
225
|
continue;
|
|
225
226
|
}
|
|
226
|
-
let
|
|
227
|
+
let o = yield* _.SqlClient;
|
|
227
228
|
try {
|
|
228
|
-
yield*
|
|
229
|
+
yield* i.up(o).pipe(l.mapError((e) => e)), yield* we({
|
|
229
230
|
key: t,
|
|
230
231
|
pluginName: e.name,
|
|
231
|
-
migration:
|
|
232
|
+
migration: i
|
|
232
233
|
}), r.push({
|
|
233
234
|
pluginName: e.name,
|
|
234
|
-
migrationId:
|
|
235
|
+
migrationId: i.id,
|
|
235
236
|
status: "applied",
|
|
236
|
-
durationMs: Date.now() -
|
|
237
|
+
durationMs: Date.now() - a
|
|
237
238
|
});
|
|
238
239
|
} catch (t) {
|
|
239
240
|
return r.push({
|
|
240
241
|
pluginName: e.name,
|
|
241
|
-
migrationId:
|
|
242
|
+
migrationId: i.id,
|
|
242
243
|
status: "failed",
|
|
243
|
-
durationMs: Date.now() -
|
|
244
|
+
durationMs: Date.now() - a,
|
|
244
245
|
error: t
|
|
245
|
-
}), yield*
|
|
246
|
+
}), yield* l.fail(/* @__PURE__ */ Error(`Plugin migration failed: ${e.name} ${i.id} — ${t instanceof Error ? t.message : String(t)}`));
|
|
246
247
|
}
|
|
247
248
|
}
|
|
248
249
|
return r;
|
|
249
|
-
}),
|
|
250
|
+
}), Ee = (e) => e.filter((e) => e.extendSchema && (e.extendSchema.tables?.length ?? 0) + (e.extendSchema.migrations?.length ?? 0) > 0).map((e) => ({
|
|
250
251
|
pluginName: e.name,
|
|
251
|
-
pluginAlias:
|
|
252
|
+
pluginAlias: B(e.name),
|
|
252
253
|
tables: e.extendSchema.tables?.length ?? 0,
|
|
253
254
|
migrations: e.extendSchema.migrations?.length ?? 0
|
|
254
|
-
})),
|
|
255
|
+
})), De = (e) => e.flatMap((e) => e.extendSchema?.tables ?? []), H = /(?<!\.server)\.agent\.tsx?$/, Oe = /\.agent\.server\.tsx?$/, U = /\.tool\.tsx?$/, ke = async (t, n) => {
|
|
255
256
|
let r = 0;
|
|
256
|
-
for (let i of t) if (
|
|
257
|
+
for (let i of t) if (U.test(i)) try {
|
|
257
258
|
let t = await e(i);
|
|
258
|
-
r +=
|
|
259
|
+
r += y(t);
|
|
259
260
|
} catch (e) {
|
|
260
261
|
n.warn("tool: failed to import — handler not wired", { file: i }, e);
|
|
261
262
|
}
|
|
262
263
|
return r;
|
|
263
|
-
},
|
|
264
|
+
}, Ae = (e) => e.replace(/\.agent\.(tsx?)$/, ".agent.server.$1"), je = async (t, n) => {
|
|
264
265
|
let r = [], i = /* @__PURE__ */ new Set();
|
|
265
266
|
for (let a of t) {
|
|
266
|
-
if (!
|
|
267
|
+
if (!H.test(a)) continue;
|
|
267
268
|
let t;
|
|
268
269
|
try {
|
|
269
270
|
t = await e(a);
|
|
@@ -271,7 +272,7 @@ var D = [
|
|
|
271
272
|
n.warn("agent: failed to import descriptor", { file: a }, e);
|
|
272
273
|
continue;
|
|
273
274
|
}
|
|
274
|
-
let o = Object.values(t).find(
|
|
275
|
+
let o = Object.values(t).find(me);
|
|
275
276
|
if (o === void 0) {
|
|
276
277
|
n.warn("agent: no defineAgent() descriptor export found", { file: a });
|
|
277
278
|
continue;
|
|
@@ -283,7 +284,7 @@ var D = [
|
|
|
283
284
|
});
|
|
284
285
|
continue;
|
|
285
286
|
}
|
|
286
|
-
let s =
|
|
287
|
+
let s = Ae(a), c;
|
|
287
288
|
try {
|
|
288
289
|
c = await e(s);
|
|
289
290
|
} catch (e) {
|
|
@@ -295,7 +296,7 @@ var D = [
|
|
|
295
296
|
continue;
|
|
296
297
|
}
|
|
297
298
|
let l = c.default;
|
|
298
|
-
if (!
|
|
299
|
+
if (!v(l)) {
|
|
299
300
|
n.warn("agent: executor file must default-export defineAgentExecutor(descriptor, {...})", {
|
|
300
301
|
file: s,
|
|
301
302
|
name: o.name
|
|
@@ -310,69 +311,69 @@ var D = [
|
|
|
310
311
|
});
|
|
311
312
|
}
|
|
312
313
|
return { agents: r };
|
|
313
|
-
},
|
|
314
|
-
let
|
|
315
|
-
for (let
|
|
316
|
-
let
|
|
314
|
+
}, W = /\.connection\.tsx?$/, Me = (e) => e.replace(W, ""), Ne = async (t, n) => {
|
|
315
|
+
let r = [], i = /* @__PURE__ */ new Map();
|
|
316
|
+
for (let a of t) {
|
|
317
|
+
let t;
|
|
317
318
|
try {
|
|
318
|
-
|
|
319
|
+
t = await e(a);
|
|
319
320
|
} catch (e) {
|
|
320
|
-
|
|
321
|
+
n.warn("connections: failed to import", { file: a }, e);
|
|
321
322
|
continue;
|
|
322
323
|
}
|
|
323
|
-
let o =
|
|
324
|
+
let o = t.default;
|
|
324
325
|
if (o === void 0 || typeof o != "object" || !o) {
|
|
325
|
-
|
|
326
|
+
n.warn("connections: missing or non-object default export — expected `defineConnection({...})`", { file: a });
|
|
326
327
|
continue;
|
|
327
328
|
}
|
|
328
329
|
let s = o;
|
|
329
330
|
if (typeof s.id != "string" || s.id.length === 0) {
|
|
330
|
-
|
|
331
|
+
n.warn("connections: invalid `id` field", { file: a });
|
|
331
332
|
continue;
|
|
332
333
|
}
|
|
333
334
|
if (s.kind !== "oauth2" && s.kind !== "pat") {
|
|
334
|
-
|
|
335
|
-
file:
|
|
335
|
+
n.warn("connections: `kind` must be \"oauth2\" or \"pat\"", {
|
|
336
|
+
file: a,
|
|
336
337
|
kind: String(s.kind)
|
|
337
338
|
});
|
|
338
339
|
continue;
|
|
339
340
|
}
|
|
340
|
-
let c =
|
|
341
|
+
let c = i.get(s.id);
|
|
341
342
|
if (c !== void 0) {
|
|
342
|
-
|
|
343
|
+
n.error("connections: DUPLICATE id — only the first is registered", {
|
|
343
344
|
id: s.id,
|
|
344
345
|
registered: c,
|
|
345
|
-
ignored:
|
|
346
|
+
ignored: a
|
|
346
347
|
});
|
|
347
348
|
continue;
|
|
348
349
|
}
|
|
349
|
-
|
|
350
|
-
file:
|
|
350
|
+
i.set(s.id, a), r.push({
|
|
351
|
+
file: a,
|
|
351
352
|
definition: s
|
|
352
353
|
});
|
|
353
354
|
}
|
|
354
|
-
return
|
|
355
|
-
connections:
|
|
356
|
-
files:
|
|
357
|
-
}),
|
|
358
|
-
},
|
|
355
|
+
return r.length > 0 && n.info("discovered connections", {
|
|
356
|
+
connections: r.map((e) => `${e.definition.id} (${e.definition.kind})`),
|
|
357
|
+
files: r.map((e) => Me(o(e.file)))
|
|
358
|
+
}), r;
|
|
359
|
+
}, G = (e) => typeof e.attributes["framework.kind"] == "string" && e.attributes["framework.kind"].startsWith("subscription."), K = (e) => {
|
|
359
360
|
if (e.name.includes("_voltro_traces")) return !0;
|
|
360
361
|
for (let t in e.attributes) {
|
|
361
362
|
let n = e.attributes[t];
|
|
362
363
|
if (typeof n == "string" && n.includes("_voltro_traces")) return !0;
|
|
363
364
|
}
|
|
364
365
|
return !1;
|
|
365
|
-
},
|
|
366
|
+
}, Pe = (e) => typeof e.attributes["framework.kind"] == "string" && e.attributes["framework.kind"].startsWith("subscription"), Fe = 1e3, Ie = 500, Le = 50, q = class {
|
|
366
367
|
capacity;
|
|
367
368
|
buffer = [];
|
|
368
|
-
constructor(e =
|
|
369
|
+
constructor(e = Fe) {
|
|
369
370
|
this.capacity = e;
|
|
370
371
|
}
|
|
371
372
|
append(e) {
|
|
372
373
|
this.buffer.push(e), this.buffer.length > this.capacity && this.buffer.shift();
|
|
373
374
|
}
|
|
374
375
|
query(e = {}) {
|
|
375
|
-
let t = e.since ?? 0, n = e.until ?? Date.now(), r = Math.min(e.max ??
|
|
376
|
+
let t = e.since ?? 0, n = e.until ?? Date.now(), r = Math.min(e.max ?? Ie, this.capacity), i = e.traceId, a = e.minDurationMs, o = e.status, s = e.name?.toLowerCase(), c = [];
|
|
376
377
|
for (let e = this.buffer.length - 1; e >= 0 && c.length < r; e--) {
|
|
377
378
|
let r = this.buffer[e];
|
|
378
379
|
r.startMs < t || r.startMs > n || i !== void 0 && r.traceId !== i || a !== void 0 && r.durationMs < a || o !== void 0 && r.status !== o || s !== void 0 && !r.name.toLowerCase().includes(s) || c.push(r);
|
|
@@ -380,7 +381,7 @@ var D = [
|
|
|
380
381
|
return c.reverse();
|
|
381
382
|
}
|
|
382
383
|
queryGrouped(e = {}) {
|
|
383
|
-
let t = e.since ?? 0, n = e.maxTraces ??
|
|
384
|
+
let t = e.since ?? 0, n = e.maxTraces ?? Le, r = e.onlyErrors ?? !1, i = /* @__PURE__ */ new Map();
|
|
384
385
|
for (let e of this.buffer) {
|
|
385
386
|
if (e.startMs < t) continue;
|
|
386
387
|
let n = i.get(e.traceId);
|
|
@@ -391,7 +392,7 @@ var D = [
|
|
|
391
392
|
t.sort((e, t) => e.startMs - t.startMs);
|
|
392
393
|
let n = t.some((e) => e.status === "error");
|
|
393
394
|
if (r && !n) continue;
|
|
394
|
-
let i = t[0].startMs, o = t.reduce((e, t) => t.endMs > e ? t.endMs : e, i), s = t.filter(
|
|
395
|
+
let i = t[0].startMs, o = t.reduce((e, t) => t.endMs > e ? t.endMs : e, i), s = t.filter(G), c = s.length > 0 || t.some(Pe), l = s.reduce((e, t) => e === void 0 || t.startMs > e.startMs ? t : e, void 0);
|
|
395
396
|
a.push({
|
|
396
397
|
traceId: e,
|
|
397
398
|
rootName: t[0].name,
|
|
@@ -416,69 +417,69 @@ var D = [
|
|
|
416
417
|
clear() {
|
|
417
418
|
this.buffer = [];
|
|
418
419
|
}
|
|
419
|
-
},
|
|
420
|
+
}, J = null, Re = () => (J === null && (J = new q()), J), Y = /* @__PURE__ */ new Set([
|
|
420
421
|
"off",
|
|
421
422
|
"errors",
|
|
422
423
|
"interesting",
|
|
423
424
|
"all"
|
|
424
|
-
]),
|
|
425
|
+
]), X = (e, t, n, r) => {
|
|
425
426
|
let i = Number(e);
|
|
426
427
|
return Number.isFinite(i) ? Math.min(r, Math.max(n, i)) : t;
|
|
427
|
-
},
|
|
428
|
+
}, ze = (e) => e !== void 0 && [
|
|
428
429
|
"1",
|
|
429
430
|
"true",
|
|
430
431
|
"yes",
|
|
431
432
|
"on"
|
|
432
|
-
].includes(e.toLowerCase()),
|
|
433
|
+
].includes(e.toLowerCase()), Be = (e) => {
|
|
433
434
|
let t = Number(e);
|
|
434
435
|
return Number.isFinite(t) && t > 0 ? t : 24;
|
|
435
|
-
},
|
|
436
|
-
let t = (e.VOLTRO_TRACING_BUFFER ?? "").toLowerCase() === "off", n =
|
|
436
|
+
}, Z = (e = process.env) => {
|
|
437
|
+
let t = (e.VOLTRO_TRACING_BUFFER ?? "").toLowerCase() === "off", n = X(e.VOLTRO_TRACING_SAMPLE, 1, 0, 1), r = (e.VOLTRO_TRACING_PERSIST ?? "").toLowerCase(), i = e.NODE_ENV === "production" ? "off" : "interesting";
|
|
437
438
|
return {
|
|
438
|
-
mode:
|
|
439
|
+
mode: Y.has(r) ? r : n <= 0 ? "off" : i,
|
|
439
440
|
sampleRate: n,
|
|
440
|
-
slowMs:
|
|
441
|
-
ttlHours:
|
|
442
|
-
persistDelivery:
|
|
441
|
+
slowMs: X(e.VOLTRO_TRACING_SLOW_MS, 500, 0, 2 ** 53 - 1),
|
|
442
|
+
ttlHours: Be(e.VOLTRO_TRACING_TTL_HOURS),
|
|
443
|
+
persistDelivery: ze(e.VOLTRO_TRACING_PERSIST_DELIVERY),
|
|
443
444
|
bufferDisabled: t
|
|
444
445
|
};
|
|
445
|
-
},
|
|
446
|
-
let t =
|
|
446
|
+
}, Q = (e = process.env) => {
|
|
447
|
+
let t = Z(e);
|
|
447
448
|
return !t.bufferDisabled && t.mode !== "off";
|
|
448
|
-
},
|
|
449
|
+
}, Ve = (e, t) => {
|
|
449
450
|
if (t >= 1) return !0;
|
|
450
451
|
if (t <= 0) return !1;
|
|
451
452
|
let n = 2166136261;
|
|
452
453
|
for (let t = 0; t < e.length; t++) n ^= e.charCodeAt(t), n = Math.imul(n, 16777619);
|
|
453
454
|
return (n >>> 0) % 1e3 < t * 1e3;
|
|
454
|
-
},
|
|
455
|
-
if (t.mode === "off" ||
|
|
455
|
+
}, He = (e, t) => {
|
|
456
|
+
if (t.mode === "off" || K(e) || G(e) && !t.persistDelivery) return !1;
|
|
456
457
|
let n = e.status === "error";
|
|
457
458
|
if (t.mode === "errors") return n;
|
|
458
459
|
if (n) return !0;
|
|
459
|
-
if (!
|
|
460
|
+
if (!Ve(e.traceId, t.sampleRate)) return !1;
|
|
460
461
|
if (t.mode === "all") return !0;
|
|
461
462
|
let r = e.parentSpanId === null || e.parentSpanId === void 0 || e.parentSpanId === "", i = typeof e.durationMs == "number" && e.durationMs >= t.slowMs;
|
|
462
463
|
return r || i;
|
|
463
|
-
},
|
|
464
|
+
}, Ue = (e) => {
|
|
464
465
|
if (e.bufferDisabled) return "durable traces: OFF (VOLTRO_TRACING_BUFFER=off)";
|
|
465
466
|
if (e.mode === "off") return "durable traces: OFF — _voltro_traces not created (prod default; set VOLTRO_TRACING_PERSIST=interesting to enable, or use OTLP)";
|
|
466
467
|
let t = e.mode === "interesting" ? ` (errors + slow≥${e.slowMs}ms + roots)` : e.mode === "errors" ? " (errors only)" : "";
|
|
467
468
|
return `durable traces: mode=${e.mode}${t}` + (e.sampleRate < 1 ? ` · sample=${e.sampleRate}` : "") + (e.persistDelivery ? " · +delivery" : "") + ` · ttl=${e.ttlHours}h`;
|
|
468
|
-
},
|
|
469
|
+
}, We = (e = 30 * 6e4) => {
|
|
469
470
|
let t = /* @__PURE__ */ new Map();
|
|
470
471
|
return (n, r) => {
|
|
471
472
|
let i = t.get(n);
|
|
472
473
|
return i !== void 0 && r - i < e ? !1 : (t.set(n, r), !0);
|
|
473
474
|
};
|
|
474
|
-
},
|
|
475
|
-
let { store: t, log: n } = e, r = e.policy ??
|
|
476
|
-
n.info(
|
|
477
|
-
let i =
|
|
475
|
+
}, Ge = (e) => {
|
|
476
|
+
let { store: t, log: n } = e, r = e.policy ?? Z();
|
|
477
|
+
n.info(Ue(r));
|
|
478
|
+
let i = We(), a = [], o = () => {};
|
|
478
479
|
if (r.mode !== "off") {
|
|
479
480
|
let e = [], s = 0;
|
|
480
481
|
o = (t) => {
|
|
481
|
-
|
|
482
|
+
He(t, r) && (e.length >= 5e3 && (e.shift(), s += 1, i("flush-drop", Date.now()) && (n.warn(`trace flush queue saturated — dropping durable spans (${s}+ since last warning). Durable inflow exceeds write throughput; reduce it with VOLTRO_TRACING_PERSIST=errors|interesting or VOLTRO_TRACING_SAMPLE<1.`), s = 0)), e.push(t));
|
|
482
483
|
};
|
|
483
484
|
let c = async () => {
|
|
484
485
|
if (e.length === 0) return;
|
|
@@ -520,7 +521,7 @@ var D = [
|
|
|
520
521
|
let n = await t.query({
|
|
521
522
|
table: "_voltro_traces",
|
|
522
523
|
order: [],
|
|
523
|
-
predicate:
|
|
524
|
+
predicate: O("startedAt", e),
|
|
524
525
|
projection: ["id"],
|
|
525
526
|
skip: void 0,
|
|
526
527
|
take: c
|
|
@@ -544,28 +545,28 @@ var D = [
|
|
|
544
545
|
for (let e of a) clearInterval(e);
|
|
545
546
|
}
|
|
546
547
|
};
|
|
547
|
-
},
|
|
548
|
-
let
|
|
549
|
-
let
|
|
550
|
-
for (let
|
|
551
|
-
if (
|
|
552
|
-
await
|
|
548
|
+
}, Ke = async (e) => {
|
|
549
|
+
let o = !1, c = !1, l = !1, d = !1, f = !1, p = !1, m = async (e) => {
|
|
550
|
+
let h = await u.readdir(e, { withFileTypes: !0 }).catch(() => []);
|
|
551
|
+
for (let u of h) if (u.isDirectory()) {
|
|
552
|
+
if (u.name === "node_modules" || u.name === "dist" || u.name === ".framework" || u.name.startsWith(".")) continue;
|
|
553
|
+
await m(s(e, u.name));
|
|
553
554
|
} else {
|
|
554
|
-
let e =
|
|
555
|
-
(
|
|
555
|
+
let e = u.name;
|
|
556
|
+
(n.test(e) || t.test(e)) && (o = !0), i.test(e) && (c = !0), r.test(e) && (l = !0), H.test(e) && (d = !0), a.test(e) && (f = !0), W.test(e) && (p = !0);
|
|
556
557
|
}
|
|
557
558
|
};
|
|
558
|
-
return await
|
|
559
|
-
workflows:
|
|
560
|
-
schedules:
|
|
561
|
-
webhooks:
|
|
562
|
-
agents:
|
|
563
|
-
outbox:
|
|
564
|
-
connections:
|
|
559
|
+
return await m(e), {
|
|
560
|
+
workflows: o,
|
|
561
|
+
schedules: c,
|
|
562
|
+
webhooks: l,
|
|
563
|
+
agents: d,
|
|
564
|
+
outbox: f,
|
|
565
|
+
connections: p
|
|
565
566
|
};
|
|
566
|
-
},
|
|
567
|
+
}, qe = async (e) => {
|
|
567
568
|
try {
|
|
568
|
-
return (await import(
|
|
569
|
+
return (await import(c(s(e, "app.config.ts")).href)).default?.plugins ?? [];
|
|
569
570
|
} catch {
|
|
570
571
|
return [];
|
|
571
572
|
}
|
|
@@ -573,22 +574,22 @@ var D = [
|
|
|
573
574
|
let t = /* @__PURE__ */ new Map(), n = (e) => {
|
|
574
575
|
e?.tableName && !t.has(e.tableName) && t.set(e.tableName, e);
|
|
575
576
|
};
|
|
576
|
-
for (let t of
|
|
577
|
+
for (let t of z({
|
|
577
578
|
workflows: e.mix.workflows,
|
|
578
579
|
schedules: e.mix.schedules,
|
|
579
580
|
webhooks: e.mix.webhooks,
|
|
580
|
-
traces:
|
|
581
|
+
traces: Q(),
|
|
581
582
|
cdc: e.cdc,
|
|
582
583
|
...e.cdcDialect ? { cdcDialect: e.cdcDialect } : {},
|
|
583
|
-
undo:
|
|
584
|
+
undo: ae(),
|
|
584
585
|
outbox: e.mix.outbox,
|
|
585
586
|
connections: e.mix.connections
|
|
586
587
|
})) n(t);
|
|
587
|
-
e.mix.agents && (n(
|
|
588
|
-
for (let t of
|
|
588
|
+
e.mix.agents && (n(de), n(ue), n(pe), n(fe));
|
|
589
|
+
for (let t of De(e.plugins)) n(t);
|
|
589
590
|
return [...t.values()];
|
|
590
|
-
},
|
|
591
|
-
let t = await
|
|
591
|
+
}, Je = async (e) => {
|
|
592
|
+
let t = await Ke(e.root), n = await qe(e.root), r = (process.env.DB_DIALECT ?? "postgres").toLowerCase(), i = r === "mariadb" ? "mariadb" : r === "mssql" ? "mssql" : void 0;
|
|
592
593
|
return $({
|
|
593
594
|
mix: t,
|
|
594
595
|
plugins: n,
|
|
@@ -597,4 +598,4 @@ var D = [
|
|
|
597
598
|
});
|
|
598
599
|
};
|
|
599
600
|
//#endregion
|
|
600
|
-
export {
|
|
601
|
+
export { be as _, q as a, he as b, W as c, Oe as d, U as f, Ee as g, Te as h, Q as i, Ne as l, ke as m, $ as n, Re as o, je as p, Ge as r, K as s, Je as t, H as u, ye as v, z as x, B as y };
|