@taico/taico 0.8.4 → 0.8.6

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.
Files changed (32) hide show
  1. package/README.md +1 -1
  2. package/dist/app.module.js +2 -0
  3. package/dist/app.module.js.map +1 -1
  4. package/dist/migrations/1762200000000-ThreadHardDelete.d.ts +6 -0
  5. package/dist/migrations/1762200000000-ThreadHardDelete.js +26 -0
  6. package/dist/migrations/1762200000000-ThreadHardDelete.js.map +1 -0
  7. package/dist/search/index/search-projections.js +3 -3
  8. package/dist/search/index/search-projections.js.map +1 -1
  9. package/dist/threads/agent/thread-agent-log.service.js +1 -1
  10. package/dist/threads/dto/service/threads.service.types.d.ts +0 -1
  11. package/dist/threads/task-subscriptions/thread-task-subscriptions.service.js +1 -1
  12. package/dist/threads/thread.entity.d.ts +0 -1
  13. package/dist/threads/thread.entity.js +0 -5
  14. package/dist/threads/thread.entity.js.map +1 -1
  15. package/dist/threads/threads-state.service.spec.js +23 -8
  16. package/dist/threads/threads-state.service.spec.js.map +1 -1
  17. package/dist/threads/threads.service.js +18 -3
  18. package/dist/threads/threads.service.js.map +1 -1
  19. package/dist/threads/threads.service.spec.js +15 -6
  20. package/dist/threads/threads.service.spec.js.map +1 -1
  21. package/dist/threads/time/time-context.d.ts +2 -0
  22. package/dist/threads/time/time-context.js +3 -1
  23. package/dist/threads/time/time-context.js.map +1 -1
  24. package/dist/threads/time/time-context.spec.js +3 -1
  25. package/dist/threads/time/time-context.spec.js.map +1 -1
  26. package/dist/threads/timers/thread-timers.service.js +1 -1
  27. package/dist/threads/timers/timer-input.js +1 -1
  28. package/dist/threads/timers/timer-input.js.map +1 -1
  29. package/dist/threads/timers/timer-input.spec.js +6 -2
  30. package/dist/threads/timers/timer-input.spec.js.map +1 -1
  31. package/dist/tsconfig.tsbuildinfo +1 -1
  32. package/package.json +5 -5
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Backend
2
2
 
3
- [![Socket Badge](https://badge.socket.dev/npm/package/@taico/taico/0.8.4)](https://badge.socket.dev/npm/package/@taico/taico/0.8.4)
3
+ [![Socket Badge](https://badge.socket.dev/npm/package/@taico/taico/0.8.6)](https://badge.socket.dev/npm/package/@taico/taico/0.8.6)
4
4
 
5
5
  NestJS backend for Taico.
6
6
 
@@ -48,6 +48,7 @@ const _1761800000000_ThreadTimers_1 = require("./migrations/1761800000000-Thread
48
48
  const _1761900000000_DedupeArtefacts_1 = require("./migrations/1761900000000-DedupeArtefacts");
49
49
  const _1762000000000_ThreadPins_1 = require("./migrations/1762000000000-ThreadPins");
50
50
  const _1762100000000_ThreadMessageTimezone_1 = require("./migrations/1762100000000-ThreadMessageTimezone");
51
+ const _1762200000000_ThreadHardDelete_1 = require("./migrations/1762200000000-ThreadHardDelete");
51
52
  const secrets_module_1 = require("./secrets/secrets.module");
52
53
  const ai_providers_module_1 = require("./ai-providers/ai-providers.module");
53
54
  const executions_module_1 = require("./executions/executions.module");
@@ -91,6 +92,7 @@ exports.AppModule = AppModule = __decorate([
91
92
  _1761900000000_DedupeArtefacts_1.DedupeArtefacts1761900000000,
92
93
  _1762000000000_ThreadPins_1.ThreadPins1762000000000,
93
94
  _1762100000000_ThreadMessageTimezone_1.ThreadMessageTimezone1762100000000,
95
+ _1762200000000_ThreadHardDelete_1.ThreadHardDelete1762200000000,
94
96
  ],
95
97
  }),
96
98
  event_emitter_1.EventEmitterModule.forRoot(),
@@ -1 +1 @@
1
- {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,6CAAgD;AAChD,yDAA2D;AAC3D,+CAAkD;AAClD,uDAAmD;AACnD,6DAAyD;AACzD,4EAAuE;AACvE,oGAA+F;AAC/F,mEAA+D;AAC/D,+EAA0E;AAC1E,0DAAsD;AACtD,6DAAyD;AACzD,2FAAsF;AACtF,oDAAgD;AAChD,sEAAiE;AACjE,oDAA4E;AAC5E,gEAA2D;AAC3D,qFAAgF;AAChF,iGAA4F;AAC5F,uGAAkG;AAClG,+GAA0G;AAC1G,6GAAwG;AACxG,mHAA8G;AAC9G,yGAAoG;AACpG,yHAAoH;AACpH,6GAAwG;AACxG,+FAA0F;AAC1F,+GAA0G;AAC1G,iIAA4H;AAC5H,uFAAkF;AAClF,yFAAoF;AACpF,iGAA4F;AAC5F,qGAAgG;AAChG,2GAAsG;AACtG,iHAA4G;AAC5G,yFAAoF;AACpF,+FAA0F;AAC1F,qFAAgF;AAChF,2GAAsG;AACtG,6DAAyD;AACzD,4EAAuE;AACvE,sEAAkE;AAClE,+EAA0E;AAC1E,6DAAyD;AACzD,yEAAqE;AACrE,yEAAoE;AA6D7D,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,8BAAS;oBAAT,SAAS;IA3DrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,OAAO,CAAC;gBACpB,IAAI,EAAE,UAAU;gBAChB,GAAG,EAAE,IAAA,sBAAS,GAAE,CAAC,WAAW;gBAC5B,aAAa,EAAE,UAAU;gBACzB,GAAG,EAAE,IAAA,sBAAS,GAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK;gBACnE,QAAQ,EAAE,CAAC,SAAS,GAAG,uBAAuB,CAAC;gBAC/C,WAAW,EAAE,IAAA,uCAA0B,GAAE;gBACzC,aAAa,EAAE,CAAC,IAAA,uCAA0B,GAAE;gBAC5C,UAAU,EAAE;oBACV,+DAA6B;oBAC7B,qEAAgC;oBAChC,6EAAoC;oBACpC,2EAAmC;oBACnC,iFAAsC;oBACtC,uEAAiC;oBACjC,uFAAyC;oBACzC,2EAAmC;oBACnC,6DAA4B;oBAC5B,6EAAoC;oBACpC,+FAA6C;oBAC7C,qDAAwB;oBACxB,uDAAyB;oBACzB,+DAA6B;oBAC7B,mEAA+B;oBAC/B,yEAAkC;oBAClC,+EAAqC;oBACrC,uDAAyB;oBACzB,6DAA4B;oBAC5B,mDAAuB;oBACvB,yEAAkC;iBACnC;aACF,CAAC;YACF,kCAAkB,CAAC,OAAO,EAAE;YAC5B,yBAAc,CAAC,OAAO,EAAE;YACxB,wBAAU;YACV,0BAAW;YACX,6CAAoB;YACpB,8BAAa;YACb,uCAAiB;YACjB,yCAAkB;YAClB,uDAAyB;YACzB,kCAAe;YACf,4BAAY;YACZ,mCAAe;YACf,8BAAa;YACb,iDAAsB;YACtB,+BAAa;YACb,8BAAa;YACb,uCAAiB;YACjB,oCAAgB;YAChB,8BAAa;YACb,yCAAkB;YAClB,sCAAiB;SAClB;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,EAAE,iDAAsB,CAAC;KAChD,CAAC;GACW,SAAS,CAAI"}
1
+ {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,6CAAgD;AAChD,yDAA2D;AAC3D,+CAAkD;AAClD,uDAAmD;AACnD,6DAAyD;AACzD,4EAAuE;AACvE,oGAA+F;AAC/F,mEAA+D;AAC/D,+EAA0E;AAC1E,0DAAsD;AACtD,6DAAyD;AACzD,2FAAsF;AACtF,oDAAgD;AAChD,sEAAiE;AACjE,oDAA4E;AAC5E,gEAA2D;AAC3D,qFAAgF;AAChF,iGAA4F;AAC5F,uGAAkG;AAClG,+GAA0G;AAC1G,6GAAwG;AACxG,mHAA8G;AAC9G,yGAAoG;AACpG,yHAAoH;AACpH,6GAAwG;AACxG,+FAA0F;AAC1F,+GAA0G;AAC1G,iIAA4H;AAC5H,uFAAkF;AAClF,yFAAoF;AACpF,iGAA4F;AAC5F,qGAAgG;AAChG,2GAAsG;AACtG,iHAA4G;AAC5G,yFAAoF;AACpF,+FAA0F;AAC1F,qFAAgF;AAChF,2GAAsG;AACtG,iGAA4F;AAC5F,6DAAyD;AACzD,4EAAuE;AACvE,sEAAkE;AAClE,+EAA0E;AAC1E,6DAAyD;AACzD,yEAAqE;AACrE,yEAAoE;AA8D7D,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,8BAAS;oBAAT,SAAS;IA5DrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,OAAO,CAAC;gBACpB,IAAI,EAAE,UAAU;gBAChB,GAAG,EAAE,IAAA,sBAAS,GAAE,CAAC,WAAW;gBAC5B,aAAa,EAAE,UAAU;gBACzB,GAAG,EAAE,IAAA,sBAAS,GAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK;gBACnE,QAAQ,EAAE,CAAC,SAAS,GAAG,uBAAuB,CAAC;gBAC/C,WAAW,EAAE,IAAA,uCAA0B,GAAE;gBACzC,aAAa,EAAE,CAAC,IAAA,uCAA0B,GAAE;gBAC5C,UAAU,EAAE;oBACV,+DAA6B;oBAC7B,qEAAgC;oBAChC,6EAAoC;oBACpC,2EAAmC;oBACnC,iFAAsC;oBACtC,uEAAiC;oBACjC,uFAAyC;oBACzC,2EAAmC;oBACnC,6DAA4B;oBAC5B,6EAAoC;oBACpC,+FAA6C;oBAC7C,qDAAwB;oBACxB,uDAAyB;oBACzB,+DAA6B;oBAC7B,mEAA+B;oBAC/B,yEAAkC;oBAClC,+EAAqC;oBACrC,uDAAyB;oBACzB,6DAA4B;oBAC5B,mDAAuB;oBACvB,yEAAkC;oBAClC,+DAA6B;iBAC9B;aACF,CAAC;YACF,kCAAkB,CAAC,OAAO,EAAE;YAC5B,yBAAc,CAAC,OAAO,EAAE;YACxB,wBAAU;YACV,0BAAW;YACX,6CAAoB;YACpB,8BAAa;YACb,uCAAiB;YACjB,yCAAkB;YAClB,uDAAyB;YACzB,kCAAe;YACf,4BAAY;YACZ,mCAAe;YACf,8BAAa;YACb,iDAAsB;YACtB,+BAAa;YACb,8BAAa;YACb,uCAAiB;YACjB,oCAAgB;YAChB,8BAAa;YACb,yCAAkB;YAClB,sCAAiB;SAClB;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,EAAE,iDAAsB,CAAC;KAChD,CAAC;GACW,SAAS,CAAI"}
@@ -0,0 +1,6 @@
1
+ import { MigrationInterface, QueryRunner } from 'typeorm';
2
+ export declare class ThreadHardDelete1762200000000 implements MigrationInterface {
3
+ name: string;
4
+ up(queryRunner: QueryRunner): Promise<void>;
5
+ down(queryRunner: QueryRunner): Promise<void>;
6
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ThreadHardDelete1762200000000 = void 0;
4
+ class ThreadHardDelete1762200000000 {
5
+ name = 'ThreadHardDelete1762200000000';
6
+ async up(queryRunner) {
7
+ const removed = await queryRunner.query(`DELETE FROM "threads" WHERE "deleted_at" IS NOT NULL RETURNING "state_context_block_id"`);
8
+ const blockIds = removed.map((row) => row.state_context_block_id);
9
+ if (blockIds.length > 0) {
10
+ await queryRunner.query(`DELETE FROM "context_blocks" b
11
+ WHERE b."id" = ANY($1::uuid[])
12
+ AND NOT EXISTS (SELECT 1 FROM "threads" t WHERE t."state_context_block_id" = b."id")
13
+ AND NOT EXISTS (SELECT 1 FROM "context_blocks" c WHERE c."parent_id" = b."id")`, [blockIds]);
14
+ }
15
+ await queryRunner.query(`DROP INDEX IF EXISTS "public"."uq_threads_parent_task_id_non_null"`);
16
+ await queryRunner.query(`ALTER TABLE "threads" DROP COLUMN "deleted_at"`);
17
+ await queryRunner.query(`CREATE UNIQUE INDEX "uq_threads_parent_task_id_non_null" ON "threads" ("parent_task_id") WHERE "parent_task_id" IS NOT NULL`);
18
+ }
19
+ async down(queryRunner) {
20
+ await queryRunner.query(`DROP INDEX IF EXISTS "public"."uq_threads_parent_task_id_non_null"`);
21
+ await queryRunner.query(`ALTER TABLE "threads" ADD COLUMN "deleted_at" TIMESTAMP WITH TIME ZONE`);
22
+ await queryRunner.query(`CREATE UNIQUE INDEX "uq_threads_parent_task_id_non_null" ON "threads" ("parent_task_id") WHERE "parent_task_id" IS NOT NULL AND "deleted_at" IS NULL`);
23
+ }
24
+ }
25
+ exports.ThreadHardDelete1762200000000 = ThreadHardDelete1762200000000;
26
+ //# sourceMappingURL=1762200000000-ThreadHardDelete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1762200000000-ThreadHardDelete.js","sourceRoot":"","sources":["../../src/migrations/1762200000000-ThreadHardDelete.ts"],"names":[],"mappings":";;;AAgBA,MAAa,6BAA6B;IACxC,IAAI,GAAG,+BAA+B,CAAC;IAEhC,KAAK,CAAC,EAAE,CAAC,WAAwB;QACtC,MAAM,OAAO,GAA8C,MAAM,WAAW,CAAC,KAAK,CAChF,yFAAyF,CAC1F,CAAC;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAClE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,WAAW,CAAC,KAAK,CACrB;;;2FAGmF,EACnF,CAAC,QAAQ,CAAC,CACX,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QAC9F,MAAM,WAAW,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC1E,MAAM,WAAW,CAAC,KAAK,CACrB,6HAA6H,CAC9H,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,WAAwB;QACxC,MAAM,WAAW,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QAC9F,MAAM,WAAW,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAClG,MAAM,WAAW,CAAC,KAAK,CACrB,sJAAsJ,CACvJ,CAAC;IACJ,CAAC;CACF;AAhCD,sEAgCC"}
@@ -64,8 +64,8 @@ exports.SEARCH_PROJECTIONS = [
64
64
  '{}'::jsonb AS meta,
65
65
  b."updated_at" AS source_updated_at
66
66
  FROM "context_blocks" b
67
- -- A thread's state memory is indexed as the thread, below. The check includes
68
- -- deleted threads on purpose: their state stops being searchable altogether.
67
+ -- A thread's state memory is indexed as the thread, below. Deleting a thread
68
+ -- deletes its state block too, so it stops being searchable altogether.
69
69
  WHERE b."deleted_at" IS NULL
70
70
  AND NOT EXISTS (SELECT 1 FROM "threads" t WHERE t."state_context_block_id" = b."id") {{SCOPE}}`,
71
71
  },
@@ -83,7 +83,7 @@ exports.SEARCH_PROJECTIONS = [
83
83
  greatest(t."updated_at", b."updated_at") AS source_updated_at
84
84
  FROM "threads" t
85
85
  JOIN "context_blocks" b ON b."id" = t."state_context_block_id" AND b."deleted_at" IS NULL
86
- WHERE t."deleted_at" IS NULL {{SCOPE}}`,
86
+ WHERE TRUE {{SCOPE}}`,
87
87
  },
88
88
  {
89
89
  entityType: 'tool',
@@ -1 +1 @@
1
- {"version":3,"file":"search-projections.js","sourceRoot":"","sources":["../../../src/search/index/search-projections.ts"],"names":[],"mappings":";;;AAoKA,4CAKC;AAzKD,2GAAuG;AA0BvG,MAAM,SAAS,GAAG;;;;EAIhB,CAAC;AAEH,MAAM,UAAU,GAAG;;;;EAIjB,CAAC;AAEH,MAAM,WAAW,GAAG;;;;EAIlB,CAAC;AAEU,QAAA,kBAAkB,GAAgC;IAC7D;QACE,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,MAAM;QAClB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;wBAIY,SAAS;;;;;6CAKY;KAC1C;IACD;QAGE,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,MAAM;QAClB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;;;wEAW4D;KACrE;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,eAAe;QAC3B,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;wBAIY,UAAU;;;;;;;;uGAQqE;KACpG;IACD;QAGE,UAAU,EAAE,QAAQ;QACpB,UAAU,EAAE,QAAQ;QACpB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;wBAIY,WAAW;;;;;;6CAMU;KAC1C;IACD;QACE,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,MAAM;QAClB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;;2DAU+C,8DAA8B,aAAa;KACnG;IACD;QACE,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,OAAO;QACnB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;;wEAU4D;KACrE;IACD;QACE,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;6CASiC;KAC1C;CACF,CAAC;AAEF,SAAgB,gBAAgB,CAAC,UAA4B,EAAE,MAAe;IAC5E,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,CAC9B,WAAW,EACX,MAAM,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,kBAAkB,OAAO,CAAC,CAAC,CAAC,EAAE,CAC1D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"search-projections.js","sourceRoot":"","sources":["../../../src/search/index/search-projections.ts"],"names":[],"mappings":";;;AAoKA,4CAKC;AAzKD,2GAAuG;AA0BvG,MAAM,SAAS,GAAG;;;;EAIhB,CAAC;AAEH,MAAM,UAAU,GAAG;;;;EAIjB,CAAC;AAEH,MAAM,WAAW,GAAG;;;;EAIlB,CAAC;AAEU,QAAA,kBAAkB,GAAgC;IAC7D;QACE,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,MAAM;QAClB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;wBAIY,SAAS;;;;;6CAKY;KAC1C;IACD;QAGE,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,MAAM;QAClB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;;;wEAW4D;KACrE;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,eAAe;QAC3B,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;wBAIY,UAAU;;;;;;;;uGAQqE;KACpG;IACD;QAGE,UAAU,EAAE,QAAQ;QACpB,UAAU,EAAE,QAAQ;QACpB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;wBAIY,WAAW;;;;;;2BAMR;KACxB;IACD;QACE,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,MAAM;QAClB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;;2DAU+C,8DAA8B,aAAa;KACnG;IACD;QACE,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,OAAO;QACnB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;;wEAU4D;KACrE;IACD;QACE,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,kBAAkB,EAAE,QAAQ;QAC5B,MAAM,EAAE;;;;;;;;;6CASiC;KAC1C;CACF,CAAC;AAEF,SAAgB,gBAAgB,CAAC,UAA4B,EAAE,MAAe;IAC5E,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,CAC9B,WAAW,EACX,MAAM,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,kBAAkB,OAAO,CAAC,CAAC,CAAC,EAAE,CAC1D,CAAC;AACJ,CAAC"}
@@ -242,7 +242,7 @@ let ThreadAgentLogService = class ThreadAgentLogService {
242
242
  FROM threads t
243
243
  LEFT JOIN thread_agent_messages m
244
244
  ON m.thread_id = t.id AND jsonb_typeof(m.usage) = 'object'
245
- WHERE t.id = $1 AND t.deleted_at IS NULL
245
+ WHERE t.id = $1
246
246
  GROUP BY t.id`, [threadId]);
247
247
  if (rows.length === 0) {
248
248
  throw new threads_errors_1.ThreadNotFoundError(threadId);
@@ -84,7 +84,6 @@ export type ThreadResult = {
84
84
  rowVersion: number;
85
85
  createdAt: Date;
86
86
  updatedAt: Date;
87
- deletedAt: Date | null | undefined;
88
87
  };
89
88
  export type ThreadListItemResult = {
90
89
  id: string;
@@ -78,7 +78,7 @@ let ThreadTaskSubscriptionsService = class ThreadTaskSubscriptionsService {
78
78
  UPDATE thread_task_subscriptions s
79
79
  SET triggered_status = $2, triggered_task_name = $3, triggered_at = now()
80
80
  FROM threads t
81
- WHERE s.task_id = $1 AND t.id = s.thread_id AND t.deleted_at IS NULL
81
+ WHERE s.task_id = $1 AND t.id = s.thread_id
82
82
  RETURNING s.thread_id
83
83
  )
84
84
  SELECT thread_id FROM triggered`, [task.id, task.status, task.name]);
@@ -25,5 +25,4 @@ export declare class ThreadEntity {
25
25
  createdAt: Date;
26
26
  updatedAt: Date;
27
27
  lastActivityAt: Date;
28
- deletedAt?: Date | null;
29
28
  }
@@ -38,7 +38,6 @@ let ThreadEntity = class ThreadEntity {
38
38
  createdAt;
39
39
  updatedAt;
40
40
  lastActivityAt;
41
- deletedAt;
42
41
  };
43
42
  exports.ThreadEntity = ThreadEntity;
44
43
  __decorate([
@@ -171,10 +170,6 @@ __decorate([
171
170
  }),
172
171
  __metadata("design:type", Date)
173
172
  ], ThreadEntity.prototype, "lastActivityAt", void 0);
174
- __decorate([
175
- (0, typeorm_1.DeleteDateColumn)({ type: 'timestamptz', name: 'deleted_at', nullable: true }),
176
- __metadata("design:type", Object)
177
- ], ThreadEntity.prototype, "deletedAt", void 0);
178
173
  exports.ThreadEntity = ThreadEntity = __decorate([
179
174
  (0, typeorm_1.Index)('IDX_threads_last_activity', ['lastActivityAt', 'id']),
180
175
  (0, typeorm_1.Entity)({ name: 'threads' })
@@ -1 +1 @@
1
- {"version":3,"file":"thread.entity.js","sourceRoot":"","sources":["../../src/threads/thread.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thread.entity.js","sourceRoot":"","sources":["../../src/threads/thread.entity.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,16 @@ const context_service_1 = require("../context/context.service");
13
13
  const threads_errors_1 = require("./errors/threads.errors");
14
14
  const enums_1 = require("../identity-provider/enums");
15
15
  const enums_2 = require("../tasks/enums");
16
+ function mockTransaction(repository, options = {}) {
17
+ const tx = {
18
+ delete: jest.fn().mockResolvedValue({ affected: 1, raw: [] }),
19
+ exists: jest.fn().mockResolvedValue(options.stateBlockHasChildren ?? false),
20
+ };
21
+ Object.assign(repository, {
22
+ manager: { transaction: jest.fn((work) => work(tx)) },
23
+ });
24
+ return tx;
25
+ }
16
26
  describe('ThreadsService - State Context Block', () => {
17
27
  let service;
18
28
  let threadRepository;
@@ -85,7 +95,6 @@ describe('ThreadsService - State Context Block', () => {
85
95
  createdAt: new Date(),
86
96
  updatedAt: new Date(),
87
97
  lastActivityAt: new Date(),
88
- deletedAt: null,
89
98
  };
90
99
  beforeEach(async () => {
91
100
  const module = await testing_1.Test.createTestingModule({
@@ -100,7 +109,6 @@ describe('ThreadsService - State Context Block', () => {
100
109
  findBy: jest.fn(),
101
110
  find: jest.fn(),
102
111
  findAndCount: jest.fn(),
103
- softRemove: jest.fn(),
104
112
  createQueryBuilder: jest.fn(),
105
113
  },
106
114
  },
@@ -321,12 +329,19 @@ describe('ThreadsService - State Context Block', () => {
321
329
  });
322
330
  describe('7. Thread Deletion with State Block', () => {
323
331
  describe('7.1. Thread Deletion Succeeds', () => {
324
- it('should delete thread successfully (state block remains)', async () => {
332
+ it('should delete the thread and its state block in one transaction', async () => {
333
+ threadRepository.findOne.mockResolvedValue(mockThread);
334
+ const tx = mockTransaction(threadRepository);
335
+ await service.deleteThread('thread-uuid', 'actor-uuid');
336
+ expect(tx.delete).toHaveBeenNthCalledWith(1, thread_entity_1.ThreadEntity, { id: 'thread-uuid' });
337
+ expect(tx.delete).toHaveBeenNthCalledWith(2, block_entity_1.ContextBlockEntity, { id: 'state-block-uuid' });
338
+ });
339
+ it('should keep the state block when blocks are nested under it', async () => {
325
340
  threadRepository.findOne.mockResolvedValue(mockThread);
326
- threadRepository.softRemove.mockResolvedValue(mockThread);
341
+ const tx = mockTransaction(threadRepository, { stateBlockHasChildren: true });
327
342
  await service.deleteThread('thread-uuid', 'actor-uuid');
328
- expect(threadRepository.softRemove).toHaveBeenCalledWith(mockThread);
329
- expect(contextService.deleteBlock).not.toHaveBeenCalled();
343
+ expect(tx.delete).toHaveBeenCalledTimes(1);
344
+ expect(tx.delete).toHaveBeenCalledWith(thread_entity_1.ThreadEntity, { id: 'thread-uuid' });
330
345
  });
331
346
  });
332
347
  describe('7.2. Multiple Threads Cannot Share State Block', () => {
@@ -410,9 +425,9 @@ describe('ThreadsService - State Context Block', () => {
410
425
  const afterAppend = await service.appendThreadState(thread.id, appendContent);
411
426
  expect(afterAppend).toContain(updatedContent);
412
427
  expect(afterAppend).toContain(appendContent);
413
- threadRepository.softRemove.mockResolvedValue(mockThread);
428
+ const tx = mockTransaction(threadRepository);
414
429
  await service.deleteThread(thread.id, 'actor-uuid');
415
- expect(threadRepository.softRemove).toHaveBeenCalled();
430
+ expect(tx.delete).toHaveBeenCalledWith(thread_entity_1.ThreadEntity, { id: thread.id });
416
431
  });
417
432
  });
418
433
  });
@@ -1 +1 @@
1
- {"version":3,"file":"threads-state.service.spec.js","sourceRoot":"","sources":["../../src/threads/threads-state.service.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"threads-state.service.spec.js","sourceRoot":"","sources":["../../src/threads/threads-state.service.spec.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,7 @@ const meta_service_1 = require("../meta/meta.service");
30
30
  const context_service_1 = require("../context/context.service");
31
31
  const threads_errors_1 = require("./errors/threads.errors");
32
32
  const threads_events_1 = require("./events/threads.events");
33
+ const context_events_1 = require("../context/events/context.events");
33
34
  const thread_agent_service_1 = require("./agent/thread-agent.service");
34
35
  const thread_title_service_1 = require("./thread-title.service");
35
36
  const thread_read_state_service_1 = require("./read-state/thread-read-state.service");
@@ -219,11 +220,27 @@ let ThreadsService = class ThreadsService {
219
220
  if (!thread) {
220
221
  throw new threads_errors_1.ThreadNotFoundError(threadId);
221
222
  }
222
- await this.threadRepository.softRemove(thread);
223
+ const stateBlockId = thread.stateContextBlockId;
224
+ const stateBlockDeleted = await this.threadRepository.manager.transaction(async (manager) => {
225
+ await manager.delete(thread_entity_1.ThreadEntity, { id: threadId });
226
+ const hasChildren = await manager.exists(block_entity_1.ContextBlockEntity, {
227
+ where: { parentId: stateBlockId },
228
+ });
229
+ if (hasChildren) {
230
+ return false;
231
+ }
232
+ const result = await manager.delete(block_entity_1.ContextBlockEntity, { id: stateBlockId });
233
+ return (result.affected ?? 0) > 0;
234
+ });
223
235
  this.eventEmitter.emit(threads_events_1.ThreadDeletedEvent.INTERNAL, new threads_events_1.ThreadDeletedEvent({ id: actorId }, threadId));
236
+ if (stateBlockDeleted) {
237
+ this.eventEmitter.emit(context_events_1.BlockDeletedEvent.INTERNAL, new context_events_1.BlockDeletedEvent(stateBlockId, { id: actorId }));
238
+ }
224
239
  this.logger.log({
225
240
  message: 'Thread deleted',
226
241
  threadId,
242
+ stateBlockId,
243
+ stateBlockDeleted,
227
244
  });
228
245
  }
229
246
  async cancelTimer(threadId, timerId, actorId) {
@@ -561,7 +578,6 @@ let ThreadsService = class ThreadsService {
561
578
  'tags',
562
579
  'participants',
563
580
  ],
564
- withDeleted: true,
565
581
  });
566
582
  return Promise.all(threads.map((thread) => this.buildThreadResult(thread)));
567
583
  }
@@ -712,7 +728,6 @@ let ThreadsService = class ThreadsService {
712
728
  rowVersion: thread.rowVersion,
713
729
  createdAt: thread.createdAt,
714
730
  updatedAt: thread.updatedAt,
715
- deletedAt: thread.deletedAt,
716
731
  };
717
732
  }
718
733
  async loadTaskSubscriptions(threadId) {
@@ -1 +1 @@
1
- {"version":3,"file":"threads.service.js","sourceRoot":"","sources":["../../src/threads/threads.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"threads.service.js","sourceRoot":"","sources":["../../src/threads/threads.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,6CAAmD;AACnD,qCAA2D;AAC3D,yDAAsD;AACtD,6CAAyC;AACzC,mDAA+C;AAC/C,mEAA8D;AAC9D,0GAAoG;AACpG,sDAAkD;AAClD,0DAA6D;AAC7D,oEAAgE;AAChE,qEAAgE;AAChE,uDAAmD;AAEnD,gEAA4D;AAmB5D,4DAMiC;AACjC,4DAMiC;AACjC,qEAAqE;AACrE,uEAAkE;AAClE,iEAA4D;AAC5D,sFAAgF;AAChF,oEAA+D;AAC/D,gEAA2D;AAC3D,mFAA6E;AAC7E,0EAAqE;AACrE,8GAAwG;AAUjG,IAAM,cAAc,GAApB,MAAM,cAAc;;IAaN;IAEA;IAEA;IAEA;IAEA;IAEA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAlCF,MAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,CAAU,oBAAoB,GAAG,YAAY,CAAC;IAEpD,iBAAiB,CAAC,MAAoB;QAC5C,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,mCAAkB,CAAC,QAAQ,EAC3B,IAAI,mCAAkB,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,gBAAgB,EAAE,EAAE,MAAM,CAAC,CAChE,CAAC;IACJ,CAAC;IAED,YAEmB,gBAA0C,EAE1C,uBAAwD,EAExD,0BAAoE,EAEpE,cAAsC,EAEtC,sBAAsD,EAEtD,eAAwC,EAExC,kBAA8C,EAC9C,WAAwB,EACxB,cAA8B,EAC9B,YAA2B,EAC3B,kBAAsC,EACtC,kBAAsC,EACtC,sBAA8C,EAC9C,iBAAoC,EACpC,mBAA+C,EAC/C,YAAiC,EACjC,iBAAiD;QAtBjD,qBAAgB,GAAhB,gBAAgB,CAA0B;QAE1C,4BAAuB,GAAvB,uBAAuB,CAAiC;QAExD,+BAA0B,GAA1B,0BAA0B,CAA0C;QAEpE,mBAAc,GAAd,cAAc,CAAwB;QAEtC,2BAAsB,GAAtB,sBAAsB,CAAgC;QAEtD,oBAAe,GAAf,eAAe,CAAyB;QAExC,uBAAkB,GAAlB,kBAAkB,CAA4B;QAC9C,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAe;QAC3B,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,2BAAsB,GAAtB,sBAAsB,CAAwB;QAC9C,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,wBAAmB,GAAnB,mBAAmB,CAA4B;QAC/C,iBAAY,GAAZ,YAAY,CAAqB;QACjC,sBAAiB,GAAjB,iBAAiB,CAAgC;IAChE,CAAC;IAEL,KAAK,CAAC,YAAY,CAAC,KAAwB;QACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,iBAAiB;YAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;QAGH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YACxD,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,gBAAgB,EAAE;SACtC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,4CAA2B,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAChE,CAAC;QAGD,IAAI,UAAU,GAAsB,IAAI,CAAC;QACzC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC7C,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,YAAY,EAAE;aAClC,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,2CAA0B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAGD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK;eACpB,CAAC,UAAU;gBACZ,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,UAAU,EAAE;oBACjE,EAAE,EAAE,cAAc,CAAC,EAAE;oBACrB,IAAI,EAAE,cAAc,CAAC,IAAI;iBAC1B,CAAC,CAAC;uBACA,gBAAc,CAAC,oBAAoB,CAAC;gBACzC,CAAC,CAAC,gBAAc,CAAC,oBAAoB,CAAC,CAAC;QAG3C,MAAM,iBAAiB,GAAG,UAAU;YAClC,CAAC,CAAC;gBACE,2CAA2C,UAAU,CAAC,IAAI,QAAQ,UAAU,CAAC,EAAE,IAAI;gBACnF,gBAAgB,UAAU,CAAC,WAAW,IAAI,0BAA0B,EAAE;aACvE,CAAC,IAAI,CAAC,IAAI,CAAC;YACd,CAAC,CAAC,+BAA+B,cAAc,CAAC,IAAI,GAAG,CAAC;QAC1D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;YACvD,KAAK,EAAE,iBAAiB,KAAK,EAAE;YAC/B,OAAO,EAAE,iBAAiB;YAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC,cAAc,CAAC;SAC3B,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;YAC1C,EAAE,EAAE,IAAA,wBAAU,GAAE;YAChB,KAAK;YACL,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;YACxC,mBAAmB,EAAE,UAAU,CAAC,EAAE;SACnC,CAAC,CAAC;QAEH,IAAI,WAAyB,CAAC;QAC9B,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,iCAAiC,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChE,MAAM,IAAI,mDAAkC,CAAC,KAAK,CAAC,YAAa,CAAC,CAAC;YACpE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAGD,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,CACzD,KAAK,CAAC,QAAQ,CACf,CAAC;YACF,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;YACxB,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAG9C,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,CAAC;QAID,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;gBAC7C,EAAE,EAAE,IAAA,YAAE,EAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,KAAK,eAAe,CAAC,IAAI,EAAE,CAAC;gBAC1C,MAAM,IAAI,2CAA0B,CAAC,6BAA6B,CAAC,CAAC;YACtE,CAAC;YACD,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAGD,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC;gBACtD,EAAE,EAAE,IAAA,YAAE,EAAC,KAAK,CAAC,eAAe,CAAC;aAC9B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;gBACnD,MAAM,IAAI,0CAAyB,CAAC,8BAA8B,CAAC,CAAC;YACtE,CAAC;YACD,WAAW,CAAC,uBAAuB,GAAG,MAAM,CAAC;YAC7C,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAGD,IAAI,KAAK,CAAC,mBAAmB,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;gBACrD,EAAE,EAAE,IAAA,YAAE,EAAC,KAAK,CAAC,mBAAmB,CAAC;aAClC,CAAC,CAAC;YACH,IAAI,YAAY,CAAC,MAAM,KAAK,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC;gBAC7D,MAAM,IAAI,4CAA2B,CAAC,8BAA8B,CAAC,CAAC;YACxE,CAAC;YACD,WAAW,CAAC,YAAY,GAAG,YAAY,CAAC;YACxC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,mCAAkB,CAAC,QAAQ,EAC3B,IAAI,mCAAkB,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,gBAAgB,EAAE,EAAE,WAAW,CAAC,CACpE,CAAC;QAGF,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAC3D,WAAW,CAAC,EAAE,CACf,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,mBAAmB,CAAC,EAAE;YAChC,KAAK,EAAE,mBAAmB,CAAC,KAAK;SACjC,CAAC,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,KAAwB,EACxB,OAAe;QAEf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,iBAAiB;YAC1B,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAE3D,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC7B,CAAC;QAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAElE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,gBAAgB;YACzB,QAAQ;SACT,CAAC,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,OAAe;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,iBAAiB;YAC1B,QAAQ;YACR,OAAO;SACR,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAQD,MAAM,YAAY,GAAG,MAAM,CAAC,mBAAmB,CAAC;QAChD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CACvE,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,OAAO,CAAC,MAAM,CAAC,4BAAY,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YAErD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,iCAAkB,EAAE;gBAC3D,KAAK,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE;aAClC,CAAC,CAAC;YACH,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,iCAAkB,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;YAC9E,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,mCAAkB,CAAC,QAAQ,EAC3B,IAAI,mCAAkB,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,CAAC,CAClD,CAAC;QACF,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,kCAAiB,CAAC,QAAQ,EAC1B,IAAI,kCAAiB,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CACrD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,gBAAgB;YACzB,QAAQ;YACR,YAAY;YACZ,iBAAiB;SAClB,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,WAAW,CAAC,QAAgB,EAAE,OAAe,EAAE,OAAe;QAClE,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IAGD,KAAK,CAAC,sBAAsB,CAAC,QAAgB,EAAE,MAAc,EAAE,OAAe;QAC5E,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,QAAgB;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAAgB;QAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAuB;QACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,iBAAiB;YAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;QAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAGlB,KAAK;iBACF,QAAQ,CACP,mCAAe,EACf,KAAK,EACL,uDAAuD,EACvD,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAC3B;iBACA,OAAO,CAAC,mDAAmD,EAAE,KAAK,CAAC;iBACnE,UAAU,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QAGD,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,KAAK;aACjC,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC;aAC/B,MAAM,CAAC,IAAI,CAAC;aACZ,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;aAClB,eAAe,EAAE,CAAC;QAErB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrD,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,OAAO;YAC7C,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;gBACrE,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;aACpE,CAAC;YACJ,CAAC,CAAC,CAAC,IAAI,GAAG,EAAkB,EAAE,IAAI,GAAG,EAAU,CAAC,CAAC;QAEnD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,gBAAgB;YACzB,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,KAAK;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC9B,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;gBAC/C,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;gBAC7C,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;aACjC,CAAC,CAAC;YACH,KAAK;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAc;QAC/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,0BAA0B;YACnC,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAE1E,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,2CAA0B,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,gBAAgB;iBACxB,kBAAkB,EAAE;iBACpB,QAAQ,CAAC,4BAAY,EAAE,OAAO,CAAC;iBAC/B,EAAE,CAAC,QAAQ,CAAC;iBACZ,GAAG,CAAC,MAAM,CAAC,CAAC;YAEf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EAAE,yBAAyB;gBAClC,QAAQ;gBACR,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,MAAM,KAAK,CAAC;YACd,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EAAE,qCAAqC;gBAC9C,QAAQ;gBACR,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAED,IACE,IAAI,CAAC,eAAe;YACpB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CACvB,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,CAAC,eAAe,CACzD,EACD,CAAC;YACD,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACtC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAc;QAC/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,4BAA4B;YACrC,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QACjE,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,2BAA2B;YACpC,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACtC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,QAAgB,EAChB,cAAsB;QAEtB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,qCAAqC;YAC9C,QAAQ;YACR,cAAc;SACf,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;YACtD,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,0CAAyB,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC;QAGD,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC;YACzE,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EAAE,oCAAoC;gBAC7C,QAAQ;gBACR,cAAc;aACf,CAAC,CAAC;QACL,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACtC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,QAAgB,EAChB,cAAsB;QAEtB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,+CAA+C;YACxD,QAAQ;YACR,cAAc;SACf,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,CAAC,uBAAuB,GAAG,MAAM,CAAC,uBAAuB,CAAC,MAAM,CACpE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,cAAc,CACvC,CAAC;QACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,8CAA8C;YACvD,QAAQ;YACR,cAAc;SACf,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACtC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,QAAgB,EAChB,KAAkB,EAClB,OAAe;QAEf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,sBAAsB;YAC/B,QAAQ;YACR,OAAO,EAAE,KAAK,CAAC,IAAI;SACpB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAGrE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAGzC,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEjD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ;gBACR,KAAK,EAAE,GAAG,CAAC,EAAE;aACd,CAAC,CAAC;QACL,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,QAAgB,EAChB,KAAa,EACb,OAAe;QAEf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,0BAA0B;YACnC,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,yBAAyB;YAClC,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;QAGH,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,QAAgB,EAChB,OAAe;QAEf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,8BAA8B;YACvC,QAAQ;YACR,OAAO;SACR,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YAC/C,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,4CAA2B,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,gBAAgB;qBACxB,kBAAkB,EAAE;qBACpB,QAAQ,CAAC,4BAAY,EAAE,cAAc,CAAC;qBACtC,EAAE,CAAC,QAAQ,CAAC;qBACZ,GAAG,CAAC,OAAO,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EAAE,6BAA6B;gBACtC,QAAQ;gBACR,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClE,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAAc;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,2BAA2B;YACpC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB;aACvC,kBAAkB,CAAC,QAAQ,CAAC;aAC5B,iBAAiB,CAAC,uBAAuB,EAAE,gBAAgB,CAAC;aAC5D,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC;aAC1C,iBAAiB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;aAC7D,iBAAiB,CAAC,sBAAsB,EAAE,oBAAoB,CAAC;aAC/D,iBAAiB,CAAC,YAAY,EAAE,UAAU,CAAC;aAC3C,iBAAiB,CAAC,gBAAgB,EAAE,cAAc,CAAC;aACnD,iBAAiB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;aAC7D,iBAAiB,CAAC,gCAAgC,EAAE,yBAAyB,CAAC;aAC9E,iBAAiB,CAAC,aAAa,EAAE,MAAM,CAAC;aACxC,iBAAiB,CAAC,qBAAqB,EAAE,cAAc,CAAC;aACxD,SAAS,CAAC,cAAc,EAAE,YAAY,CAAC;aACvC,KAAK,CAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,CAAC;aAC5C,MAAM,EAAE,CAAC;QAEZ,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,YAAoB;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,mCAAmC;YAC5C,YAAY;SACb,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAC/C,KAAK,EAAE,EAAE,YAAY,EAAE;YACvB,SAAS,EAAE;gBACT,gBAAgB;gBAChB,OAAO;gBACP,qBAAqB;gBACrB,sBAAsB;gBACtB,YAAY;gBACZ,gBAAgB;gBAChB,qBAAqB;gBACrB,yBAAyB;gBACzB,MAAM;gBACN,cAAc;aACf;SACF,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,YAAoB;QAEpB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,kCAAkC;YAC3C,YAAY;SACb,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,YAAY,EAAE;YACvB,SAAS,EAAE;gBACT,gBAAgB;gBAChB,OAAO;gBACP,qBAAqB;gBACrB,sBAAsB;gBACtB,YAAY;gBACZ,gBAAgB;gBAChB,qBAAqB;gBACrB,yBAAyB;gBACzB,MAAM;gBACN,cAAc;aACf;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,YAAoB;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,mCAAmC;YAC5C,YAAY;SACb,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAC/C,KAAK,EAAE,EAAE,mBAAmB,EAAE,YAAY,EAAE;YAC5C,SAAS,EAAE;gBACT,gBAAgB;gBAChB,OAAO;gBACP,qBAAqB;gBACrB,sBAAsB;gBACtB,YAAY;gBACZ,gBAAgB;gBAChB,qBAAqB;gBACrB,yBAAyB;gBACzB,MAAM;gBACN,cAAc;aACf;SACF,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAgB;QACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,sBAAsB;YAC/B,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CACvD,MAAM,CAAC,mBAAmB,CAC3B,CAAC;QAEF,OAAO,UAAU,CAAC,OAAO,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,QAAgB,EAAE,OAAe;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,uBAAuB;YAChC,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CACxD,MAAM,CAAC,mBAAmB,EAC1B;YACE,OAAO;SACR,CACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,sBAAsB;YAC/B,QAAQ;SACT,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,QAAgB,EAAE,OAAe;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,2BAA2B;YACpC,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAC1D,MAAM,CAAC,mBAAmB,EAC1B;YACE,OAAO;SACR,CACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,uBAAuB;YAChC,QAAQ;SACT,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,OAAO,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;YACvB,SAAS,EAAE;gBACT,gBAAgB;gBAChB,OAAO;gBACP,qBAAqB;gBACrB,sBAAsB;gBACtB,YAAY;gBACZ,gBAAgB;gBAChB,qBAAqB;gBACrB,yBAAyB;gBACzB,MAAM;gBACN,cAAc;aACf;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,kBAAkB,CAAC,KAAgC;QACzD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,gBAAc,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;IAC1F,CAAC;IAEO,KAAK,CAAC,kCAAkC,CAC9C,KAAyC;QAEzC,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAGD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,OAAO,EAAE;YAChF,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;YAClB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SACvB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;QACpC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,wCAAuB,CAAC,QAAQ,EAChC,IAAI,wCAAuB,CACzB,EAAE,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EACtB;YACE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;YACzB,KAAK,EAAE,cAAc;SACtB,CACF,CACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,EAAE;gBACtE,KAAK,EAAE,iBAAiB,cAAc,EAAE;aACzC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,yEAAyE;gBAClF,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;gBACzB,mBAAmB,EAAE,KAAK,CAAC,MAAM,CAAC,mBAAmB;gBACrD,KAAK,EACH,KAAK,YAAY,KAAK;oBACpB,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;oBAChD,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,MAAoB;QAClD,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;SACxC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAEO,iBAAiB,CACvB,MAAoB,EACpB,iBAA2C,EAC3C,MAA2B;QAE3B,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,EAAE,qCAAqC,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC;YAC5D,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI;YACzC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACtE,uBAAuB,EAAE,CAAC,MAAM,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC,GAAG,CACjE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAChD;YACD,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAChE,YAAY,EAAE,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACtD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAC7B;YACD,iBAAiB;YACjB,MAAM;YACN,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC;IACJ,CAAC;IAMO,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QAClD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YAC/D,KAAK,EAAE,EAAE,QAAQ,EAAE;YACnB,SAAS,EAAE,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;SAC5B,CAAC,CAAC;QAGH,OAAO,aAAa;aACjB,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;aAC3C,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YACtB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,YAAY,CAAC,IAAK,CAAC,IAAI;YAC7B,MAAM,EAAE,YAAY,CAAC,IAAK,CAAC,MAAM;YACjC,SAAS,EAAE,YAAY,CAAC,SAAS;SAClC,CAAC,CAAC,CAAC;IACR,CAAC;IAEO,iCAAiC,CACvC,KAAc,EACd,YAAqB;QAErB,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,YAAY,0BAAgB,CAAC,EAAE,CAAC;YAC1D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,WAAW,GAAI,KAAa,CAAC,WAAW,CAAC;QAC/C,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,CAAC;QAC/B,MAAM,OAAO,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;QAE3C,MAAM,sBAAsB,GAC1B,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,OAAO,CAAC;QACnD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,oCAAoC,CAAC;eACnD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAC9C,CAAC;IACJ,CAAC;IAEO,2BAA2B,CAAC,KAAc;QAChD,IAAI,CAAC,CAAC,KAAK,YAAY,0BAAgB,CAAC,EAAE,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,WAAW,GAAI,KAAa,CAAC,WAAW,CAAC;QAC/C,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,CAAC;QAC/B,MAAM,OAAO,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;QAE3C,MAAM,sBAAsB,GAC1B,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,OAAO,CAAC;QACnD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;eAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;eAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC/B,CAAC;IACJ,CAAC;IAEO,kCAAkC,CAAC,KAAc;QACvD,IAAI,CAAC,CAAC,KAAK,YAAY,0BAAgB,CAAC,EAAE,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,WAAW,GAAI,KAAa,CAAC,WAAW,CAAC;QAC/C,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,CAAC;QAC/B,MAAM,OAAO,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;QAE3C,MAAM,sBAAsB,GAC1B,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,OAAO,CAAC;QACnD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC;eACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;eAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAChC,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,KAAkB;QACzC,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;SACnC,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,GAAc;QACnC,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,IAAgB;QACvC,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa,EAAE,IAAI,CAAC,aAAa;gBAC/B,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC3C,CAAC,CAAC,IAAI;YACR,cAAc,EAAE,IAAI,CAAC,cAAc;gBACjC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC;gBAC5C,CAAC,CAAE,EAAkB;YACvB,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC9D,YAAY,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;YACxC,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,EAAE;YACvC,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAC9B,KAAyB;QAEzB,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;IACJ,CAAC;IAGD,KAAK,CAAC,aAAa,CACjB,KAA+B;QAE/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,yBAAyB;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QAGH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;QAGD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YAC/C,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,gBAAgB,EAAE;SACtC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,4CAA2B,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC;YACpE,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE;SACpC,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;YAChE,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI;SACjC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,wBAAwB;YACjC,SAAS,EAAE,oBAAoB,CAAC,EAAE;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QAGH,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,oCAAmB,CAAC,QAAQ,EAC5B,IAAI,oCAAmB,CACrB,EAAE,EAAE,EAAE,KAAK,CAAC,gBAAgB,EAAE,EAC9B,oBAAoB,CACrB,CACF,CAAC;QAGF,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE/C,MAAM,IAAI,CAAC,kCAAkC,CAAC;YAC5C,MAAM;YACN,KAAK;YACL,cAAc,EAAE,KAAK,CAAC,OAAO;YAC7B,oBAAoB;SACrB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAA8B;QAE9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,yBAAyB;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QAGH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,oCAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;QAE5C,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC;YACxE,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE;YACnC,SAAS,EAAE,CAAC,gBAAgB,CAAC;YAG7B,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;YACxC,IAAI;YACJ,IAAI,EAAE,KAAK,CAAC,KAAK;SAClB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;YAChE,KAAK;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAC9B,OAA4B;QAE5B,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,cAAc,EAAE,OAAO,CAAC,cAAc;gBACpC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC/C,CAAC,CAAC,IAAI;YACR,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC;IACJ,CAAC;;AA/oCU,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAaR,WAAA,IAAA,0BAAgB,EAAC,4BAAY,CAAC,CAAA;IAE9B,WAAA,IAAA,0BAAgB,EAAC,2CAAmB,CAAC,CAAA;IAErC,WAAA,IAAA,0BAAgB,EAAC,8DAA4B,CAAC,CAAA;IAE9C,WAAA,IAAA,0BAAgB,EAAC,wBAAU,CAAC,CAAA;IAE5B,WAAA,IAAA,0BAAgB,EAAC,iCAAkB,CAAC,CAAA;IAEpC,WAAA,IAAA,0BAAgB,EAAC,0BAAW,CAAC,CAAA;IAE7B,WAAA,IAAA,0BAAgB,EAAC,iCAAc,CAAC,CAAA;qCAXE,oBAAU;QAEH,oBAAU;QAEP,oBAAU;QAEtB,oBAAU;QAEF,oBAAU;QAEjB,oBAAU;QAEP,oBAAU;QACjB,0BAAW;QACR,gCAAc;QAChB,6BAAa;QACP,yCAAkB;QAClB,yCAAkB;QACd,kDAAsB;QAC3B,uCAAiB;QACf,0DAA0B;QACjC,2CAAmB;QACd,kEAA8B;GAnCzD,cAAc,CAgpC1B"}
@@ -13,6 +13,16 @@ const meta_service_1 = require("../meta/meta.service");
13
13
  const context_service_1 = require("../context/context.service");
14
14
  const threads_errors_1 = require("./errors/threads.errors");
15
15
  const enums_1 = require("../identity-provider/enums");
16
+ function mockTransaction(repository, options = {}) {
17
+ const tx = {
18
+ delete: jest.fn().mockResolvedValue({ affected: 1, raw: [] }),
19
+ exists: jest.fn().mockResolvedValue(options.stateBlockHasChildren ?? false),
20
+ };
21
+ Object.assign(repository, {
22
+ manager: { transaction: jest.fn((work) => work(tx)) },
23
+ });
24
+ return tx;
25
+ }
16
26
  describe('ThreadsService - Parent Task ID', () => {
17
27
  let service;
18
28
  let threadRepository;
@@ -72,7 +82,6 @@ describe('ThreadsService - Parent Task ID', () => {
72
82
  createdAt: new Date(),
73
83
  updatedAt: new Date(),
74
84
  lastActivityAt: new Date(),
75
- deletedAt: null,
76
85
  };
77
86
  beforeEach(async () => {
78
87
  const module = await testing_1.Test.createTestingModule({
@@ -86,7 +95,6 @@ describe('ThreadsService - Parent Task ID', () => {
86
95
  findOne: jest.fn(),
87
96
  findBy: jest.fn(),
88
97
  findAndCount: jest.fn(),
89
- softRemove: jest.fn(),
90
98
  createQueryBuilder: jest.fn(),
91
99
  },
92
100
  },
@@ -348,16 +356,17 @@ describe('ThreadsService - Parent Task ID', () => {
348
356
  });
349
357
  describe('Thread Deletion Tests', () => {
350
358
  describe('2.2. Can Delete Thread Without Affecting Parent Task', () => {
351
- it('should soft-delete thread successfully', async () => {
359
+ it('should delete the thread for real, not soft-delete it', async () => {
352
360
  threadRepository.findOne.mockResolvedValue(mockThread);
353
- threadRepository.softRemove.mockResolvedValue(mockThread);
361
+ const tx = mockTransaction(threadRepository);
354
362
  await service.deleteThread('thread-uuid', 'actor-uuid');
355
- expect(threadRepository.softRemove).toHaveBeenCalledWith(mockThread);
363
+ expect(tx.delete).toHaveBeenCalledWith(thread_entity_1.ThreadEntity, { id: 'thread-uuid' });
356
364
  });
357
365
  it('should throw ThreadNotFoundError when deleting non-existent thread', async () => {
358
366
  threadRepository.findOne.mockResolvedValue(null);
367
+ const tx = mockTransaction(threadRepository);
359
368
  await expect(service.deleteThread('non-existent-uuid', 'actor-uuid')).rejects.toThrow(threads_errors_1.ThreadNotFoundError);
360
- expect(threadRepository.softRemove).not.toHaveBeenCalled();
369
+ expect(tx.delete).not.toHaveBeenCalled();
361
370
  });
362
371
  });
363
372
  });