@cereworker/core 0.6.3 → 0.6.5
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/dist/conversation.d.ts
CHANGED
|
@@ -11,5 +11,7 @@ export declare class ConversationStore {
|
|
|
11
11
|
/** Get the most recent message content from a conversation (for list previews) */
|
|
12
12
|
getPreview(conversationId: string): string | null;
|
|
13
13
|
close(): void;
|
|
14
|
+
/** Migrate conversations from a JSON fallback file into SQLite, then rename the JSON file */
|
|
15
|
+
private migrateJsonToSqlite;
|
|
14
16
|
}
|
|
15
17
|
//# sourceMappingURL=conversation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../src/conversation.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA4QrE,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAiB;gBAEpB,MAAM,CAAC,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../src/conversation.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA4QrE,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAiB;gBAEpB,MAAM,CAAC,EAAE,MAAM;IAoC3B,MAAM,IAAI,YAAY;IActB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAYzC,IAAI,IAAI,YAAY,EAAE;IAStB,aAAa,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO;IAgB5G,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,EAAE;IAI9C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAM3B,kFAAkF;IAClF,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIjD,KAAK,IAAI,IAAI;IAIb,6FAA6F;IAC7F,OAAO,CAAC,mBAAmB;CA0B5B"}
|
package/dist/conversation.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { nanoid } from 'nanoid';
|
|
2
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync, renameSync } from 'node:fs';
|
|
3
3
|
import { dirname, join } from 'node:path';
|
|
4
4
|
import { homedir } from 'node:os';
|
|
5
5
|
import { createRequire } from 'node:module';
|
|
@@ -202,17 +202,26 @@ export class ConversationStore {
|
|
|
202
202
|
mkdirSync(dir, { recursive: true });
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
|
+
const jsonPath = path === ':memory:' ? null : path.replace(/\.db$/, '.json');
|
|
205
206
|
const db = tryOpenDb(path);
|
|
206
207
|
if (db) {
|
|
207
|
-
|
|
208
|
+
const sqlite = new SqliteBackend(db);
|
|
209
|
+
this.backend = sqlite;
|
|
208
210
|
log.info('Opened conversation database', { path });
|
|
211
|
+
// Migrate JSON → SQLite if a JSON file exists from a previous fallback
|
|
212
|
+
if (jsonPath && existsSync(jsonPath)) {
|
|
213
|
+
this.migrateJsonToSqlite(jsonPath, sqlite);
|
|
214
|
+
}
|
|
209
215
|
}
|
|
210
216
|
else {
|
|
211
|
-
// Fall back to JSON file alongside where the .db would have been
|
|
212
|
-
const jsonPath = path === ':memory:' ? null : path.replace(/\.db$/, '.json');
|
|
213
217
|
this.backend = new JsonFileBackend(jsonPath);
|
|
214
218
|
if (jsonPath) {
|
|
215
|
-
|
|
219
|
+
const hint = process.platform === 'darwin'
|
|
220
|
+
? 'xcode-select --install'
|
|
221
|
+
: process.platform === 'win32'
|
|
222
|
+
? 'npm install --global windows-build-tools'
|
|
223
|
+
: 'sudo apt install build-essential';
|
|
224
|
+
log.info(`better-sqlite3 not available, using JSON file store. For better performance, install build tools and reinstall:\n ${hint} && npm install -g @cereworker/cli`, { path: jsonPath });
|
|
216
225
|
}
|
|
217
226
|
}
|
|
218
227
|
}
|
|
@@ -276,5 +285,31 @@ export class ConversationStore {
|
|
|
276
285
|
close() {
|
|
277
286
|
this.backend.close();
|
|
278
287
|
}
|
|
288
|
+
/** Migrate conversations from a JSON fallback file into SQLite, then rename the JSON file */
|
|
289
|
+
migrateJsonToSqlite(jsonPath, sqlite) {
|
|
290
|
+
try {
|
|
291
|
+
const raw = JSON.parse(readFileSync(jsonPath, 'utf-8'));
|
|
292
|
+
let migrated = 0;
|
|
293
|
+
for (const conv of Object.values(raw.conversations)) {
|
|
294
|
+
// Skip if already exists in SQLite (e.g. partial previous migration)
|
|
295
|
+
if (sqlite.getConversation(conv.id))
|
|
296
|
+
continue;
|
|
297
|
+
sqlite.createConversation(conv.id, conv.createdAt);
|
|
298
|
+
const msgs = raw.messages[conv.id] ?? [];
|
|
299
|
+
for (const msg of msgs) {
|
|
300
|
+
sqlite.insertMessage(conv.id, msg);
|
|
301
|
+
}
|
|
302
|
+
migrated++;
|
|
303
|
+
}
|
|
304
|
+
// Rename instead of delete so nothing is lost if something goes wrong
|
|
305
|
+
renameSync(jsonPath, jsonPath + '.migrated');
|
|
306
|
+
log.info('Migrated JSON conversations to SQLite', { migrated, source: jsonPath });
|
|
307
|
+
}
|
|
308
|
+
catch (err) {
|
|
309
|
+
log.warn('Failed to migrate JSON conversations to SQLite', {
|
|
310
|
+
error: err instanceof Error ? err.message : String(err),
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
}
|
|
279
314
|
}
|
|
280
315
|
//# sourceMappingURL=conversation.js.map
|
package/dist/conversation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../src/conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../src/conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;AAEzC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAgB/C,SAAS,SAAS,CAAC,MAAc;IAC/B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3C,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAa,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC;AAc3E,iDAAiD;AACjD,MAAM,aAAa;IACT,EAAE,CAAW;IAErB,YAAY,EAAY;QACtB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;KAqBZ,CAAC,CAAC;IACL,CAAC;IAED,kBAAkB,CAAC,EAAU,EAAE,GAAW;QACxC,IAAI,CAAC,EAAE;aACJ,OAAO,CAAC,uEAAuE,CAAC;aAChF,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,EAAE;aACX,OAAO,CAAC,iEAAiE,CAAC;aAC1E,GAAG,CAAC,EAAE,CAAqE,CAAC;IACjF,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,EAAE;aACX,OAAO,CAAC,4EAA4E,CAAC;aACrF,GAAG,EAAiE,CAAC;IAC1E,CAAC;IAED,aAAa,CAAC,cAAsB,EAAE,OAAgB;QACpD,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;yCACiC,CAClC;aACA,GAAG,CACF,OAAO,CAAC,EAAE,EACV,cAAc,EACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAC5D,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAC9D,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAC3D,CAAC;QAEJ,IAAI,CAAC,EAAE;aACJ,OAAO,CAAC,qDAAqD,CAAC;aAC9D,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;IACrC,CAAC;IAED,WAAW,CAAC,cAAsB;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE;aACjB,OAAO,CACN;mEAC2D,CAC5D;aACA,GAAG,CAAC,cAAc,CAQjB,CAAC;QAEL,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EAAE,GAAG,CAAC,IAAmB;YAC7B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChE,CAAC,CAAC,CAAC;IACN,CAAC;IAED,kBAAkB,CAAC,EAAU;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE;aACnB,OAAO,CAAC,wCAAwC,CAAC;aACjD,GAAG,CAAC,EAAE,CAAC,CAAC;QACX,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,UAAU,CAAC,cAAsB;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CACN;;wCAEgC,CACjC;aACA,GAAG,CAAC,cAAc,CAAoC,CAAC;QAC1D,OAAO,GAAG,EAAE,OAAO,IAAI,IAAI,CAAC;IAC9B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;CACF;AAQD,MAAM,eAAe;IACX,IAAI,CAAgB;IACpB,QAAQ,CAAgB;IACxB,KAAK,GAAG,KAAK,CAAC;IACd,UAAU,GAAyC,IAAI,CAAC;IAEhE,YAAY,QAAuB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAEhD,IAAI,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YAC1D,CAAC;YAAC,MAAM,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,EAAU,EAAE,GAAW;QACxC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QACrE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,iBAAiB;QACf,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC;IAED,aAAa,CAAC,cAAsB,EAAE,OAAgB;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAChD,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;YACrD,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,WAAW,CAAC,cAAsB;QAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,kBAAkB,CAAC,EAAU;QAC3B,MAAM,OAAO,GAAG,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC9B,IAAI,OAAO;YAAE,IAAI,CAAC,aAAa,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,UAAU,CAAC,cAAsB;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAClD,OAAO,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC;IAChC,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,4EAA4E;IACpE,aAAa;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC;IAEO,KAAK;QACX,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1C,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YACjE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC5C,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,iBAAiB;IACpB,OAAO,CAAiB;IAEhC,YAAY,MAAe;QACzB,MAAM,IAAI,GAAG,MAAM,IAAI,eAAe,CAAC;QAEvC,mBAAmB;QACnB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7E,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,EAAE,EAAE,CAAC;YACP,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAEnD,uEAAuE;YACvE,IAAI,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,GACR,OAAO,CAAC,QAAQ,KAAK,QAAQ;oBAC3B,CAAC,CAAC,wBAAwB;oBAC1B,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO;wBAC5B,CAAC,CAAC,0CAA0C;wBAC5C,CAAC,CAAC,kCAAkC,CAAC;gBAC3C,GAAG,CAAC,IAAI,CAAC,sHAAsH,IAAI,oCAAoC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC/L,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,YAAY,GAAiB;YACjC,EAAE,EAAE,MAAM,EAAE;YACZ,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACf,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACtD,GAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC;QAE3B,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC;IACJ,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACpD,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,QAAQ,EAAE,EAAE,EAAE,oCAAoC;YAClD,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,aAAa,CAAC,cAAsB,EAAE,IAAiB,EAAE,OAAe,EAAE,KAAwB;QAChG,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,cAAc,YAAY,CAAC,CAAC;QAEtE,MAAM,OAAO,GAAY;YACvB,EAAE,EAAE,MAAM,EAAE;YACZ,IAAI;YACJ,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,GAAG,KAAK;SACT,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,cAAsB;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,EAAU;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACnD,GAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kFAAkF;IAClF,UAAU,CAAC,cAAsB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,6FAA6F;IACrF,mBAAmB,CAAC,QAAgB,EAAE,MAAqB;QACjE,IAAI,CAAC;YACH,MAAM,GAAG,GAAkB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YACvE,IAAI,QAAQ,GAAG,CAAC,CAAC;YAEjB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBACpD,qEAAqE;gBACrE,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAE9C,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACnD,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;gBACzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;oBACvB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBACrC,CAAC;gBACD,QAAQ,EAAE,CAAC;YACb,CAAC;YAED,sEAAsE;YACtE,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC;YAC7C,GAAG,CAAC,IAAI,CAAC,uCAAuC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,gDAAgD,EAAE;gBACzD,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
|