@vibes.diy/api-svc 2.5.19 → 2.6.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/chat-msg-evento.d.ts +161 -109
- package/evento-handler-manifest.d.ts +189 -137
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/intern/get-model-defaults.d.ts +2 -2
- package/intern/get-model-defaults.js +12 -10
- package/intern/get-model-defaults.js.map +1 -1
- package/intern/pre-allocate.js +2 -2
- package/intern/pre-allocate.js.map +1 -1
- package/intern/write-apps.js +18 -14
- package/intern/write-apps.js.map +1 -1
- package/models.json +50 -42
- package/package.json +12 -12
- package/public/app-seq-allocation.d.ts +21 -0
- package/public/app-seq-allocation.js +92 -0
- package/public/app-seq-allocation.js.map +1 -0
- package/public/ensure-app-settings.js +17 -17
- package/public/ensure-app-settings.js.map +1 -1
- package/public/list-models.d.ts +3 -3
- package/public/open-chat.js +4 -4
- package/public/open-chat.js.map +1 -1
- package/public/prompt-chat-section.js +14 -13
- package/public/prompt-chat-section.js.map +1 -1
- package/public/seq-allocation.d.ts +1 -0
- package/public/seq-allocation.js +15 -0
- package/public/seq-allocation.js.map +1 -1
- package/tsconfig.json +3 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { sql } from "drizzle-orm";
|
|
2
|
+
import { isRetryableConflict, SeqConflictError } from "./seq-allocation.js";
|
|
3
|
+
const TABLE = sql.raw(`"Apps"`);
|
|
4
|
+
export function appReleaseLockKey(userId, appSlug) {
|
|
5
|
+
return JSON.stringify(["app-release-seq", userId, appSlug]);
|
|
6
|
+
}
|
|
7
|
+
function jsonParam(flavour, value) {
|
|
8
|
+
return flavour === "pg" ? sql `${JSON.stringify(value)}::jsonb` : sql `${JSON.stringify(value)}`;
|
|
9
|
+
}
|
|
10
|
+
function existsByFsId(row) {
|
|
11
|
+
return sql `SELECT 1 FROM ${TABLE}
|
|
12
|
+
WHERE "appSlug"=${row.appSlug} AND "userId"=${row.userId}
|
|
13
|
+
AND "userSlug"=${row.ownerHandle} AND "fsId"=${row.fsId}`;
|
|
14
|
+
}
|
|
15
|
+
export function buildInsertIfAbsent(p) {
|
|
16
|
+
const { row, flavour } = p;
|
|
17
|
+
return sql `
|
|
18
|
+
INSERT INTO ${TABLE} ("appSlug","userId","userSlug","releaseSeq","fsId","env","fileSystem","meta","mode","created")
|
|
19
|
+
SELECT ${row.appSlug}, ${row.userId}, ${row.ownerHandle},
|
|
20
|
+
COALESCE(MAX("releaseSeq"),0)+1,
|
|
21
|
+
${row.fsId}, ${jsonParam(flavour, row.env)}, ${jsonParam(flavour, row.fileSystem)},
|
|
22
|
+
${jsonParam(flavour, row.meta)}, ${row.mode}, ${row.created}
|
|
23
|
+
FROM ${TABLE}
|
|
24
|
+
WHERE "appSlug"=${row.appSlug} AND "userId"=${row.userId}
|
|
25
|
+
HAVING NOT EXISTS (${existsByFsId(row)})
|
|
26
|
+
RETURNING "releaseSeq"
|
|
27
|
+
`;
|
|
28
|
+
}
|
|
29
|
+
function buildSelectByFsId(row) {
|
|
30
|
+
return sql `SELECT "releaseSeq", "mode" FROM ${TABLE}
|
|
31
|
+
WHERE "appSlug"=${row.appSlug} AND "userId"=${row.userId}
|
|
32
|
+
AND "userSlug"=${row.ownerHandle} AND "fsId"=${row.fsId}
|
|
33
|
+
LIMIT 1`;
|
|
34
|
+
}
|
|
35
|
+
function buildUpgradeToProduction(row) {
|
|
36
|
+
return sql `UPDATE ${TABLE} SET "mode"='production'
|
|
37
|
+
WHERE "appSlug"=${row.appSlug} AND "userId"=${row.userId}
|
|
38
|
+
AND "userSlug"=${row.ownerHandle} AND "fsId"=${row.fsId} AND "mode"='dev'`;
|
|
39
|
+
}
|
|
40
|
+
function normalizeRows(result) {
|
|
41
|
+
const rows = result?.rows ?? result;
|
|
42
|
+
if (Array.isArray(rows))
|
|
43
|
+
return rows;
|
|
44
|
+
return rows ? [rows] : [];
|
|
45
|
+
}
|
|
46
|
+
function runReturning(db, flavour, stmt) {
|
|
47
|
+
if (flavour === "pg") {
|
|
48
|
+
return db.execute(stmt);
|
|
49
|
+
}
|
|
50
|
+
return db.run(stmt);
|
|
51
|
+
}
|
|
52
|
+
async function dedupOrInsert(exec, flavour, p) {
|
|
53
|
+
const inserted = normalizeRows(await runReturning(exec, flavour, buildInsertIfAbsent(p)));
|
|
54
|
+
if (inserted.length > 0 && inserted[0].releaseSeq != null) {
|
|
55
|
+
return Number(inserted[0].releaseSeq);
|
|
56
|
+
}
|
|
57
|
+
if (p.row.mode === "production") {
|
|
58
|
+
await runReturning(exec, flavour, buildUpgradeToProduction(p.row));
|
|
59
|
+
}
|
|
60
|
+
const existing = normalizeRows(await runReturning(exec, flavour, buildSelectByFsId(p.row)));
|
|
61
|
+
const seq = Number(existing[0]?.releaseSeq);
|
|
62
|
+
if (!Number.isFinite(seq)) {
|
|
63
|
+
throw new Error(`app dedup: fsId insert suppressed but no existing row found for ${p.row.appSlug}/${p.row.fsId}`);
|
|
64
|
+
}
|
|
65
|
+
return seq;
|
|
66
|
+
}
|
|
67
|
+
async function allocateSqlite(p) {
|
|
68
|
+
const attempts = p.maxAttempts ?? 5;
|
|
69
|
+
for (let i = 0; i < attempts; i++) {
|
|
70
|
+
try {
|
|
71
|
+
return await dedupOrInsert(p.db, p.flavour, p);
|
|
72
|
+
}
|
|
73
|
+
catch (err) {
|
|
74
|
+
if (!isRetryableConflict(err))
|
|
75
|
+
throw err;
|
|
76
|
+
await new Promise((r) => setTimeout(r, Math.floor(Math.random() * (8 << i))));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
throw new SeqConflictError(0);
|
|
80
|
+
}
|
|
81
|
+
async function allocatePg(p) {
|
|
82
|
+
const key = appReleaseLockKey(p.row.userId, p.row.appSlug);
|
|
83
|
+
const db = p.db;
|
|
84
|
+
return db.transaction(async (tx) => {
|
|
85
|
+
await tx.execute(sql `SELECT pg_advisory_xact_lock(hashtextextended(${key}, 0))`);
|
|
86
|
+
return dedupOrInsert(tx, "pg", p);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
export async function allocateAndInsertApp(p) {
|
|
90
|
+
return p.flavour === "pg" ? allocatePg(p) : allocateSqlite(p);
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=app-seq-allocation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-seq-allocation.js","sourceRoot":"","sources":["../../jsr/public/app-seq-allocation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Result, Option, EventoResult, exception2Result } from "@adviser/cement";
|
|
2
|
-
import { ActiveEntry, parseArrayWarning, isActiveDbAcl, isActiveEnv, isActiveIcon, isActiveIconDescription,
|
|
2
|
+
import { ActiveEntry, parseArrayWarning, isActiveDbAcl, isActiveEnv, isActiveIcon, isActiveIconDescription, isActiveModelSettingRuntime, isActiveModelSettingCodegen, isActiveModelSettingImg, isActiveColorTheme, isActiveSkills, isActiveTheme, isReqEnsureAppSettingsColorTheme, isReqEnsureAppSettingsIconDescription, isReqEnsureAppSettingsIconRegen, isReqEnsureAppSettingsImg, isReqEnsureAppSettingsSkills, isReqEnsureAppSettingsTheme, isActiveTitle, isEnablePublicAccess, isEnableRequest, isReqEnsureAppSettings, isReqEnsureAppSettingsRuntime, isReqEnsureAppSettingsCodegen, isReqEnsureAppSettingsDbAcl, isReqEnsureAppSettingsDbAclRemove, isReqEnsureAppSettingsEnv, isReqEnsureAppSettingsTitle, isReqPublicAccess, isReqRequest, } from "@vibes.diy/api-types";
|
|
3
3
|
import { ensureLogger } from "@vibes.diy/identity";
|
|
4
4
|
import { unwrapMsgBase } from "../unwrap-msg-base.js";
|
|
5
5
|
import { optAuth } from "../check-auth.js";
|
|
@@ -45,11 +45,11 @@ export function buildEnsureEntryResult(entries) {
|
|
|
45
45
|
}
|
|
46
46
|
break;
|
|
47
47
|
}
|
|
48
|
-
case
|
|
49
|
-
result.entry.settings.
|
|
48
|
+
case isActiveModelSettingCodegen(e):
|
|
49
|
+
result.entry.settings.codegen = e.param;
|
|
50
50
|
break;
|
|
51
|
-
case
|
|
52
|
-
result.entry.settings.
|
|
51
|
+
case isActiveModelSettingRuntime(e):
|
|
52
|
+
result.entry.settings.runtime = e.param;
|
|
53
53
|
break;
|
|
54
54
|
case isActiveModelSettingImg(e):
|
|
55
55
|
result.entry.settings.img = e.param;
|
|
@@ -77,10 +77,10 @@ async function withModelDefaults(vctx, res) {
|
|
|
77
77
|
return res;
|
|
78
78
|
const defaults = raced.Ok();
|
|
79
79
|
const s = res.settings.entry.settings;
|
|
80
|
-
if (!s.
|
|
81
|
-
s.
|
|
82
|
-
if (!s.
|
|
83
|
-
s.
|
|
80
|
+
if (!s.codegen)
|
|
81
|
+
s.codegen = defaults.codegen;
|
|
82
|
+
if (!s.runtime)
|
|
83
|
+
s.runtime = defaults.runtime;
|
|
84
84
|
if (!s.img)
|
|
85
85
|
s.img = defaults.img;
|
|
86
86
|
return res;
|
|
@@ -249,23 +249,23 @@ export async function ensureAppSettings(vctx, req, userId) {
|
|
|
249
249
|
[res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveColorTheme, () => ({ type: "active.colorTheme", colorTheme }));
|
|
250
250
|
}
|
|
251
251
|
break;
|
|
252
|
-
case
|
|
253
|
-
[res.settings, res.error] = await sqlUpsert(vctx, res, settings,
|
|
252
|
+
case isReqEnsureAppSettingsRuntime(req):
|
|
253
|
+
[res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveModelSettingRuntime, (prev) => ({
|
|
254
254
|
type: "active.model",
|
|
255
|
-
usage: "
|
|
255
|
+
usage: "runtime",
|
|
256
256
|
param: {
|
|
257
257
|
...prev.param,
|
|
258
|
-
...req.
|
|
258
|
+
...req.runtime,
|
|
259
259
|
},
|
|
260
260
|
}));
|
|
261
261
|
break;
|
|
262
|
-
case
|
|
263
|
-
[res.settings, res.error] = await sqlUpsert(vctx, res, settings,
|
|
262
|
+
case isReqEnsureAppSettingsCodegen(req):
|
|
263
|
+
[res.settings, res.error] = await sqlUpsert(vctx, res, settings, isActiveModelSettingCodegen, (prev) => ({
|
|
264
264
|
type: "active.model",
|
|
265
|
-
usage: "
|
|
265
|
+
usage: "codegen",
|
|
266
266
|
param: {
|
|
267
267
|
...prev.param,
|
|
268
|
-
...req.
|
|
268
|
+
...req.codegen,
|
|
269
269
|
},
|
|
270
270
|
}));
|
|
271
271
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-app-settings.js","sourceRoot":"","sources":["../../jsr/public/ensure-app-settings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ensure-app-settings.js","sourceRoot":"","sources":["../../jsr/public/ensure-app-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,EAAsC,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpI,OAAO,EAEL,WAAW,EAEX,iBAAiB,EAYjB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,gCAAgC,EAChC,qCAAqC,EACrC,+BAA+B,EAC/B,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,6BAA6B,EAC7B,6BAA6B,EAC7B,2BAA2B,EAC3B,iCAAiC,EACjC,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,EACjB,YAAY,GAOb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,MAAM,UAAU,sBAAsB,CAAC,OAAsB;IAE3D,MAAM,MAAM,GAAgB;QAC1B,OAAO;QACP,KAAK,EAAE;YACL,QAAQ,EAAE;gBACR,GAAG,EAAE,EAAE;aACR;SAkBF;KACF,CAAC;IACF,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAKpB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC;gBAC9B,MAAM;YACR,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;gBACtC,MAAM;YACR,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;gBACxC,MAAM;YACR,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;gBACtC,MAAM;YACR,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;gBAChD,MAAM;YACR,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,GAAG,CAAC,CAAC,WAAW,CAAC;gBACtD,MAAM;YACR,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC;gBAC5D,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClE,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;gBACxC,MAAM;YACR,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;gBACxC,MAAM;YACR,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC;gBACpC,MAAM;YACR,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBACzC,MAAM;YACR,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;gBAChD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;gBACtC,MAAM;QACV,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAOD,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAEvC,KAAK,UAAU,iBAAiB,CAAC,IAAoB,EAAE,GAAyB;IAC9E,MAAM,OAAO,GAAG,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC;IACrH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5H,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;QACxH,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,EAAE;QAAE,OAAO,GAAG,CAAC;IAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,EAAE,CAAC;IAC5B,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;IACtC,IAAI,CAAC,CAAC,CAAC,OAAO;QAAE,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAC7C,IAAI,CAAC,CAAC,CAAC,OAAO;QAAE,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAC7C,IAAI,CAAC,CAAC,CAAC,GAAG;QAAE,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;IACjC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAoB,EAAE,IAA8D;IAC7G,MAAM,IAAI,CAAC,SAAS,CAAC;QACnB,OAAO,EAAE;YACP,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvC;QACD,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,mBAAmB;QACxB,GAAG,EAAE,eAAe;QACpB,GAAG,EAAE,CAAC;KACuB,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAI1C,SAAS,mBAAmB,CAAC,OAAsB;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC;IAClE,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,GAAG,0BAA0B,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAoB,EACpB,GAAyB,EACzB,MAAe;IAGf,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CACxC,IAAI,CAAC,GAAG,CAAC,EAAE;SACR,MAAM,EAAE;SACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;SACnC,SAAS,CACR,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAC9B,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CACrF;SACA,QAAQ,CACP,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAC3B,GAAG,CACD,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAC5E,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,EACpD,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAClF,CACF;SACA,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,EAC/D,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CACxD,CACF;SACA,KAAK,CAAC,CAAC,CAAC;SACR,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrB,CAAC;IACF,IAAI,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAClB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,EAAE,CAAC;IAC1B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,MAAM,CAAC,EAAE,CAAC;gBACf,IAAI,EAAE,mCAAmC;gBACzC,MAAM,EAAE,QAAQ;gBAChB,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,MAAM,EAAE,GAAG,CAAC,OAAO;gBACnB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,MAAM,EAAE,GAAG,CAAC,WAAW;gBACvB,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,sBAAsB,CAAC,EAAE,CAAC;gBACpC,OAAO,EAAE,GAAG;gBACZ,OAAO,EAAE,GAAG;aACkB,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QAC5H,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzG,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CACd,MAAM,iBAAiB,CAAC,IAAI,EAAE;YAC5B,IAAI,EAAE,mCAAmC;YACzC,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,MAAM;YACtC,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC,MAAM;YACrC,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,MAAM;YACtC,QAAQ,EAAE,sBAAsB,CAAC,QAAQ,IAAI,EAAE,CAAC;YAChD,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,IAAI,GAAG;YAC3C,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,IAAI,GAAG;SACb,CAAC,CAClC,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI;QACzC,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG;QACZ,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,MAAM;QACtC,WAAW,EAAE,MAAM,CAAC,gBAAgB,CAAC,MAAM;QAC3C,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,OAAO;KACxC,CAAC;IAEF,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5H,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1G,CAAC;IACD,MAAM,GAAG,GAAG;QACV,IAAI,EAAE,mCAAmC;QACzC,MAAM;QACN,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC,MAAM;QACrC,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,MAAM;QACtC,KAAK,EAAE,SAA+B;QACtC,QAAQ,EAAE,sBAAsB,CAAC,QAAQ,CAAC;QAC1C,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO;KACL,CAAC;IACjC,QAAQ,IAAI,EAAE,CAAC;QAKb,KAAK,iBAAiB,CAAC,GAAG,CAAC;YACzB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,oBAAoB,EACpB,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,MAAM;aAChC,CAA8B,CAClC,CAAC;YACF,MAAM;QAER,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;YAC1E,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC;YAEtD,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,eAAe,EACf,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM;gBAC1B,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc;aAC3C,CAAyB,CAC7B,CAAC;YAEF,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;gBAC5D,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAC7C,IAAI,EACJ;oBACE,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,WAAW,EAAE,GAAG,CAAC,WAAW;iBAC7B,EACD,kBAAkB,CACnB,CAAC;gBACF,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;oBACpB,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,2BAA2B,CAAC,GAAG,CAAC;YACnC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,aAAa,EACb,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;aACjB,CAAuB,CAC3B,CAAC;YACF,MAAM;QACR,KAAK,qCAAqC,CAAC,GAAG,CAAC;YAC7C,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,uBAAuB,EACvB,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,yBAAyB;gBAC/B,WAAW,EAAE,GAAG,CAAC,eAAe;aACjC,CAAiC,CACrC,CAAC;YACF,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACf,MAAM,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAChG,CAAC;YACD,MAAM;QACR,KAAK,+BAA+B,CAAC,GAAG,CAAC;YAGvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnC,MAAM,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/F,CAAC;YACD,MAAM;QACR,KAAK,4BAA4B,CAAC,GAAG,CAAC;YACpC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,cAAc,EACd,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB,CAAwB,CAC5B,CAAC;YACF,MAAM;QACR,KAAK,2BAA2B,CAAC,GAAG,CAAC;YACnC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,aAAa,EACb,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;aACjB,CAAuB,CAC3B,CAAC;YACF,MAAM;QACR,KAAK,gCAAgC,CAAC,GAAG,CAAC;YACxC,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC5B,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;YACvF,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;gBAClC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,kBAAkB,EAClB,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,CAA4B,CAC7E,CAAC;YACJ,CAAC;YACD,MAAM;QACR,KAAK,6BAA6B,CAAC,GAAG,CAAC;YACrC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,2BAA2B,EAC3B,CAAC,IAAwB,EAAE,EAAE,CAC3B,CAAC;gBACC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE;oBACL,GAAG,IAAI,CAAC,KAAK;oBACb,GAAG,GAAG,CAAC,OAAO;iBACf;aACF,CAA8B,CAClC,CAAC;YACF,MAAM;QACR,KAAK,6BAA6B,CAAC,GAAG,CAAC;YACrC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,2BAA2B,EAC3B,CAAC,IAAwB,EAAE,EAAE,CAC3B,CAAC;gBACC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE;oBACL,GAAG,IAAI,CAAC,KAAK;oBACb,GAAG,GAAG,CAAC,OAAO;iBACf;aACF,CAA8B,CAClC,CAAC;YACF,MAAM;QACR,KAAK,yBAAyB,CAAC,GAAG,CAAC;YACjC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,uBAAuB,EACvB,CAAC,IAAwB,EAAE,EAAE,CAC3B,CAAC;gBACC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE;oBACL,GAAG,IAAI,CAAC,KAAK;oBACb,GAAG,GAAG,CAAC,GAAG;iBACX;aACF,CAA8B,CAClC,CAAC;YACF,MAAM;QACR,KAAK,yBAAyB,CAAC,GAAG,CAAC;YACjC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,KAAgB,EAAE,EAAE,CACnB,CAAC;gBACC,IAAI,EAAE,YAAY;gBAClB,GAAG,EAAE;oBAEH,GAAG,GAAG,CAAC,GAAG;iBACX;aACF,CAAqB,CACzB,CAAC;YACF,MAAM;QACR,KAAK,2BAA2B,CAAC,GAAG,CAAC;YACnC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EAGR,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,EACxD,GAAG,EAAE,CACH,CAAC;gBACC,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM;gBACxB,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG;aACnB,CAAuB,CAC3B,CAAC;YACF,MAAM;QACR,KAAK,iCAAiC,CAAC,GAAG,CAAC;YACzC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CACzC,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,WAAW,CAAC,MAAM,CAC/D,CAAC;YACF,MAAM;IACV,CAAC;IACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,MAAM,CAA+C,QAAa,EAAE,KAA8B,EAAE,EAAkB;IAK7H,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAA6B,CAAC;IAClE,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAK,EAAmB,CAAiB,CAAC,CAAC;IAChE,OAAO,sBAAsB,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,IAAoB,EACpB,GAAyB,EACzB,QAAa,EACb,KAA8B,EAC9B,EAAkB;IAElB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,IAAoB,EACpB,GAAyB,EACzB,QAAa,EACb,KAA8B;IAI9B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAoB,EAAE,GAAyB,EAAE,QAAuB;IACvG,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CACvC,IAAI,CAAC,GAAG,CAAC,EAAE;SACR,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;SACnC,MAAM,CAAC;QACN,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,QAAQ;QACR,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC;SACD,kBAAkB,CAAC;QAClB,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;QAC1H,GAAG,EAAE;YACH,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO;YAC9B,OAAO,EAAE,GAAG;SACb;KACF,CAAC,CACL,CAAC;IACF,MAAM,IAAI,CAAC,SAAS,CAAC;QACnB,OAAO,EAAE;YACP,IAAI,EAAE,2BAA2B;YACjC,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,QAAQ;SACT;QACD,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,mBAAmB;QACxB,GAAG,EAAE,eAAe;QACpB,GAAG,EAAE,CAAC;KAC0B,CAAC,CAAC;IAEpC,OAAO,IAAI,CAAC;AACd,CAAC;AA2BD,MAAM,CAAC,MAAM,uBAAuB,GAIhC;IACF,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAE,GAAY,EAAE,EAAE;QAC7C,IAAI,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,OAAO,MAAM,CAAC,EAAE,CACd,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,GAAG;gBACN,OAAO,EAAE,GAAG,CAAC,OAA+B;aAC7C,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,MAAM,EAAE,OAAO,CACb,KAAK,EACH,GAIC,EACkC,EAAE;QACrC,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;QAClC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAiB,aAAa,CAAC,CAAC;QAE/D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,GAAsC,EAAE,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7H,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAED,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC,CACF;CACF,CAAC"}
|
package/public/list-models.d.ts
CHANGED
|
@@ -8,9 +8,9 @@ export declare const loadModels: (vctx: VibesApiSQLCtx) => Promise<Result<{
|
|
|
8
8
|
name: string;
|
|
9
9
|
description: string;
|
|
10
10
|
featured?: boolean | undefined;
|
|
11
|
-
preSelected?: ("app" | "chat" | "img" | "img-edit")[] | undefined;
|
|
12
|
-
fallbackFor?: ("app" | "chat" | "img" | "img-edit")[] | undefined;
|
|
13
|
-
supports?: ("app" | "chat" | "img" | "img-edit")[] | undefined;
|
|
11
|
+
preSelected?: ("app" | "chat" | "codegen" | "img" | "img-edit" | "runtime")[] | undefined;
|
|
12
|
+
fallbackFor?: ("app" | "chat" | "codegen" | "img" | "img-edit" | "runtime")[] | undefined;
|
|
13
|
+
supports?: ("app" | "chat" | "codegen" | "img" | "img-edit" | "runtime")[] | undefined;
|
|
14
14
|
imageInput?: boolean | undefined;
|
|
15
15
|
}[];
|
|
16
16
|
}, Error>>;
|
package/public/open-chat.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Result, Option, EventoResult } from "@adviser/cement";
|
|
2
|
-
import { reqOpenChat, } from "@vibes.diy/api-types";
|
|
2
|
+
import { canonicalModelUsage, reqOpenChat, } from "@vibes.diy/api-types";
|
|
3
3
|
import { type } from "arktype";
|
|
4
4
|
import { unwrapMsgBase } from "../unwrap-msg-base.js";
|
|
5
5
|
import { checkAuth as checkAuth } from "../check-auth.js";
|
|
@@ -22,11 +22,11 @@ export const openChat = {
|
|
|
22
22
|
const req = ctx.validated.payload;
|
|
23
23
|
const vctx = ctx.ctx.getOrThrow("vibesApiCtx");
|
|
24
24
|
let chatPromise;
|
|
25
|
-
switch (req.mode) {
|
|
26
|
-
case "
|
|
25
|
+
switch (canonicalModelUsage(req.mode)) {
|
|
26
|
+
case "codegen":
|
|
27
27
|
chatPromise = ensureChatId(vctx, req);
|
|
28
28
|
break;
|
|
29
|
-
case "
|
|
29
|
+
case "runtime":
|
|
30
30
|
case "img":
|
|
31
31
|
chatPromise = ensureApplicationChatId({ ctx: vctx, req });
|
|
32
32
|
break;
|
package/public/open-chat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-chat.js","sourceRoot":"","sources":["../../jsr/public/open-chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,EAAsC,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClH,OAAO,
|
|
1
|
+
{"version":3,"file":"open-chat.js","sourceRoot":"","sources":["../../jsr/public/open-chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { Result, Option, EventoResult, exception2Result, chunkyAsync } from "@ad
|
|
|
2
2
|
import { storeAndAuditAsset } from "./store-and-audit-asset.js";
|
|
3
3
|
import { convertImageEvtToFileRef } from "./convert-image-evt.js";
|
|
4
4
|
import { scopey } from "@adviser/scopey";
|
|
5
|
-
import { isReqCreationPromptChatSection, isReqPromptApplicationChatSection, isPromptFSStyle, isReqPromptFSChatSection, isReqPromptFSUpdateChatSection, isReqPromptImageChatSection, isReqPromptLLMChatSection, reqPromptChatSection, isReqPromptFSSetChatSection, parseArray, vibeFile, isVibeCodeBlock, } from "@vibes.diy/api-types";
|
|
5
|
+
import { isReqCreationPromptChatSection, isReqPromptApplicationChatSection, isPromptFSStyle, isReqPromptFSChatSection, isReqPromptFSUpdateChatSection, isReqPromptImageChatSection, isReqPromptLLMChatSection, canonicalModelUsage, reqPromptChatSection, isReqPromptFSSetChatSection, parseArray, vibeFile, isVibeCodeBlock, } from "@vibes.diy/api-types";
|
|
6
6
|
import { ensureLogger } from "@vibes.diy/identity";
|
|
7
7
|
import { type } from "arktype";
|
|
8
8
|
import { checkAuth } from "../check-auth.js";
|
|
@@ -186,7 +186,8 @@ function logLlmAttemptFailure(args) {
|
|
|
186
186
|
.Msg("llm-request-attempt-failed");
|
|
187
187
|
}
|
|
188
188
|
async function findFallbackModel(vctx, mode, failedModel) {
|
|
189
|
-
|
|
189
|
+
const canonicalMode = canonicalModelUsage(mode);
|
|
190
|
+
if (canonicalMode !== "codegen" && canonicalMode !== "runtime") {
|
|
190
191
|
return Result.Err(`Mode ${mode} does not support LLM fallback`);
|
|
191
192
|
}
|
|
192
193
|
const rModels = await loadModels(vctx);
|
|
@@ -195,7 +196,7 @@ async function findFallbackModel(vctx, mode, failedModel) {
|
|
|
195
196
|
return Result.Err(`Failed to load fallback model catalog: ${String(rModels.Err())}`);
|
|
196
197
|
}
|
|
197
198
|
for (const model of rModels.Ok().models) {
|
|
198
|
-
if (model.id !== failedModel && Array.isArray(model.fallbackFor) && model.fallbackFor.includes(
|
|
199
|
+
if (model.id !== failedModel && Array.isArray(model.fallbackFor) && model.fallbackFor.includes(canonicalMode)) {
|
|
199
200
|
return Result.Ok(model.id);
|
|
200
201
|
}
|
|
201
202
|
}
|
|
@@ -430,7 +431,7 @@ export async function handlePromptContext({ vctx, req, resChat, promptId, blockS
|
|
|
430
431
|
if (closed)
|
|
431
432
|
code.push({ begin: closed.begin, lines: [...closed.lines], end: closed.end });
|
|
432
433
|
}
|
|
433
|
-
if (code.length > 0 && (resChat.mode === "
|
|
434
|
+
if (code.length > 0 && (canonicalModelUsage(resChat.mode) === "codegen" || isPromptFSStyle(resChat.mode))) {
|
|
434
435
|
let resolvedFileSystem;
|
|
435
436
|
if (fileSystem) {
|
|
436
437
|
resolvedFileSystem = fileSystem;
|
|
@@ -562,11 +563,11 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
|
|
|
562
563
|
if (r.isErr()) {
|
|
563
564
|
return Result.Err(r);
|
|
564
565
|
}
|
|
565
|
-
switch (req.mode) {
|
|
566
|
-
case "
|
|
567
|
-
return Result.Ok(req.prompt.model ?? r.Ok().
|
|
568
|
-
case "
|
|
569
|
-
return Result.Ok(req.prompt.model ?? r.Ok().
|
|
566
|
+
switch (canonicalModelUsage(req.mode)) {
|
|
567
|
+
case "codegen":
|
|
568
|
+
return Result.Ok(req.prompt.model ?? r.Ok().codegen.model.id);
|
|
569
|
+
case "runtime":
|
|
570
|
+
return Result.Ok(req.prompt.model ?? r.Ok().runtime.model.id);
|
|
570
571
|
case "img":
|
|
571
572
|
return Result.Ok(req.prompt.model ?? r.Ok().img.model.id);
|
|
572
573
|
default:
|
|
@@ -583,7 +584,7 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
|
|
|
583
584
|
if (preAssembled !== undefined) {
|
|
584
585
|
withSystemPrompt = Result.Ok(preAssembled);
|
|
585
586
|
}
|
|
586
|
-
else if (req.mode === "
|
|
587
|
+
else if (canonicalModelUsage(req.mode) === "runtime" || req.mode === "img") {
|
|
587
588
|
let messages = req.prompt.messages;
|
|
588
589
|
if (req.mode === "img") {
|
|
589
590
|
const imgReq = req;
|
|
@@ -626,7 +627,7 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
|
|
|
626
627
|
model: withSystemPrompt.model,
|
|
627
628
|
headers: vctx.params.llm.headers,
|
|
628
629
|
stream: true,
|
|
629
|
-
...(isInitialTurn && req.mode === "
|
|
630
|
+
...(isInitialTurn && canonicalModelUsage(req.mode) === "codegen" ? { verbosity: "low" } : {}),
|
|
630
631
|
...(req.mode === "img" ? { modalities: ["text", "image"] } : {}),
|
|
631
632
|
};
|
|
632
633
|
await scope
|
|
@@ -642,7 +643,7 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
|
|
|
642
643
|
streamId: promptId,
|
|
643
644
|
chatId: req.chatId,
|
|
644
645
|
seq: blockSeq,
|
|
645
|
-
request: req.prompt,
|
|
646
|
+
request: { ...req.prompt, model: modelId },
|
|
646
647
|
timestamp: new Date(),
|
|
647
648
|
},
|
|
648
649
|
});
|
|
@@ -1398,7 +1399,7 @@ export const promptChatSection = {
|
|
|
1398
1399
|
const rDefaults = await getModelDefaults(vctx, { appSlug: resChat.appSlug, ownerHandle: resChat.ownerHandle });
|
|
1399
1400
|
if (rDefaults.isErr())
|
|
1400
1401
|
return Result.Err(rDefaults);
|
|
1401
|
-
const modelId = orig.prompt.model ?? rDefaults.Ok().
|
|
1402
|
+
const modelId = orig.prompt.model ?? rDefaults.Ok().codegen.model.id;
|
|
1402
1403
|
let activeSettingsOverride;
|
|
1403
1404
|
if (orig.dryRun === true && orig.dryRunPreAllocate === true) {
|
|
1404
1405
|
const userText = firstUserText(orig.prompt.messages);
|