effect 4.0.0-rc.116 → 4.0.0-rc.117

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 (63) hide show
  1. package/ai-docs/package.json +3 -3
  2. package/dist/Pool.d.ts.map +1 -1
  3. package/dist/Pool.js +41 -32
  4. package/dist/Pool.js.map +1 -1
  5. package/dist/Queue.d.ts +25 -2
  6. package/dist/Queue.d.ts.map +1 -1
  7. package/dist/Queue.js +33 -13
  8. package/dist/Queue.js.map +1 -1
  9. package/dist/Schema.d.ts +479 -0
  10. package/dist/Schema.d.ts.map +1 -1
  11. package/dist/Schema.js +224 -0
  12. package/dist/Schema.js.map +1 -1
  13. package/dist/unstable/ai/Decision.d.ts +20 -8
  14. package/dist/unstable/ai/Decision.d.ts.map +1 -1
  15. package/dist/unstable/ai/Decision.js +14 -3
  16. package/dist/unstable/ai/Decision.js.map +1 -1
  17. package/dist/unstable/ai/McpServer.js +4 -4
  18. package/dist/unstable/ai/McpServer.js.map +1 -1
  19. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  20. package/dist/unstable/cluster/ClusterWorkflowEngine.js +131 -112
  21. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  22. package/dist/unstable/cluster/MessageStorage.d.ts +8 -0
  23. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  24. package/dist/unstable/cluster/MessageStorage.js +9 -0
  25. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  26. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  27. package/dist/unstable/cluster/Sharding.js +43 -9
  28. package/dist/unstable/cluster/Sharding.js.map +1 -1
  29. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  30. package/dist/unstable/cluster/SqlMessageStorage.js +6 -0
  31. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  32. package/dist/unstable/cluster/internal/entityManager.js +7 -1
  33. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  34. package/dist/unstable/net/IpInterface.d.ts +4 -1
  35. package/dist/unstable/net/IpInterface.d.ts.map +1 -1
  36. package/dist/unstable/net/IpInterface.js.map +1 -1
  37. package/dist/unstable/net/IpNetwork.d.ts +18 -7
  38. package/dist/unstable/net/IpNetwork.d.ts.map +1 -1
  39. package/dist/unstable/net/IpNetwork.js +9 -2
  40. package/dist/unstable/net/IpNetwork.js.map +1 -1
  41. package/dist/unstable/net/NetAddress.d.ts +214 -16
  42. package/dist/unstable/net/NetAddress.d.ts.map +1 -1
  43. package/dist/unstable/net/NetAddress.js +119 -15
  44. package/dist/unstable/net/NetAddress.js.map +1 -1
  45. package/dist/unstable/sql/SqlClient.d.ts +14 -1
  46. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  47. package/dist/unstable/sql/SqlClient.js +7 -1
  48. package/dist/unstable/sql/SqlClient.js.map +1 -1
  49. package/package.json +2 -2
  50. package/src/Pool.ts +22 -15
  51. package/src/Queue.ts +41 -21
  52. package/src/Schema.ts +703 -0
  53. package/src/unstable/ai/Decision.ts +20 -8
  54. package/src/unstable/ai/McpServer.ts +4 -4
  55. package/src/unstable/cluster/ClusterWorkflowEngine.ts +21 -3
  56. package/src/unstable/cluster/MessageStorage.ts +20 -0
  57. package/src/unstable/cluster/Sharding.ts +53 -14
  58. package/src/unstable/cluster/SqlMessageStorage.ts +14 -0
  59. package/src/unstable/cluster/internal/entityManager.ts +12 -1
  60. package/src/unstable/net/IpInterface.ts +4 -1
  61. package/src/unstable/net/IpNetwork.ts +31 -11
  62. package/src/unstable/net/NetAddress.ts +284 -18
  63. package/src/unstable/sql/SqlClient.ts +21 -1
@@ -27,10 +27,10 @@
27
27
  "@effect/sql-sqlite-wasm": "workspace:*",
28
28
  "@effect/vitest": "workspace:*",
29
29
  "effect": "workspace:*",
30
- "hono": "^4.13.7",
31
- "nodemailer": "^10.0.9"
30
+ "hono": "^4.13.8",
31
+ "nodemailer": "^10.0.10"
32
32
  },
33
33
  "devDependencies": {
34
- "@types/nodemailer": "^8.0.1"
34
+ "@types/nodemailer": "^8.0.2"
35
35
  }
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Pool.d.ts","sourceRoot":"","sources":["../src/Pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Pool.d.ts","sourceRoot":"","sources":["../src/Pool.ts"],"names":[],"mappings":"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"}
package/dist/Pool.js CHANGED
@@ -592,7 +592,10 @@ const allocate = self => internal.uninterruptibleMask(restore => core.withFiber(
592
592
  if (self.config.strategy === strategyNoop) {
593
593
  return exit._tag === "Success" ? Effect.succeed(item) : Effect.as(item.finalizer, item);
594
594
  }
595
- return Effect.as(exit._tag === "Success" ? self.config.strategy.onAcquire(item) : Effect.flatMap(item.finalizer, () => self.config.strategy.onAcquire(item)), item);
595
+ const onAcquire = Effect.suspend(() =>
596
+ // A borrower may have removed the item before the callback runs.
597
+ self.state.items.has(item) ? self.config.strategy.onAcquire(item) : Effect.void);
598
+ return Effect.as(exit._tag === "Success" ? onAcquire : Effect.flatMap(item.finalizer, () => onAcquire), item);
596
599
  });
597
600
  return internal.onExitPrimitive(restore(use), exit => {
598
601
  fiber.setContext(previousContext);
@@ -644,37 +647,43 @@ const strategyCreationTTL = /*#__PURE__*/Effect.fnUntraced(function* (ttl) {
644
647
  reclaim: _ => Effect.undefined
645
648
  });
646
649
  });
647
- const strategyUsageTTL = /*#__PURE__*/Effect.fnUntraced(function* (ttl) {
648
- const queue = yield* Queue.unbounded();
649
- return identity({
650
- run: pool => {
651
- const process = Effect.suspend(() => {
652
- const excess = activeSize(pool) - targetSize(pool);
653
- if (excess <= 0) return Effect.void;
654
- return Queue.take(queue).pipe(Effect.tap(item => invalidatePoolItem(pool, item)), Effect.flatMap(() => process));
655
- });
656
- return process.pipe(Effect.delay(ttl), Effect.forever({
657
- disableYield: true
658
- }));
659
- },
660
- onAcquire: item => Queue.offer(queue, item),
661
- reclaim(pool) {
662
- return Effect.suspend(() => {
663
- if (pool.state.invalidated.size === 0) {
664
- return Effect.undefined;
665
- }
666
- const item = Iterable.head(Iterable.filter(pool.state.invalidated, item => !item.disableReclaim && !reservations.has(item)));
667
- if (item._tag === "None") {
668
- return Effect.undefined;
669
- }
670
- pool.state.invalidated.delete(item.value);
671
- if (item.value.refCount < pool.config.concurrency) {
672
- addAvailable(pool, item.value);
673
- }
674
- return Effect.as(Queue.offer(queue, item.value), item.value);
675
- });
676
- }
677
- });
650
+ const strategyUsageTTL = ttl => Effect.succeed({
651
+ run: pool => {
652
+ // `state.items` iterates in insertion order, so its oldest live entry is
653
+ // the next to retire. Using it directly means an item stops being
654
+ // referenced by this strategy as soon as it leaves the pool.
655
+ const process = Effect.suspend(() => {
656
+ if (activeSize(pool) <= targetSize(pool)) return Effect.void;
657
+ for (const item of pool.state.items) {
658
+ if (pool.state.invalidated.has(item)) continue;
659
+ return Effect.flatMap(invalidatePoolItem(pool, item), () => process);
660
+ }
661
+ return Effect.void;
662
+ });
663
+ return process.pipe(Effect.delay(ttl), Effect.forever({
664
+ disableYield: true
665
+ }));
666
+ },
667
+ onAcquire: _ => Effect.void,
668
+ reclaim(pool) {
669
+ return Effect.suspend(() => {
670
+ if (pool.state.invalidated.size === 0) {
671
+ return Effect.undefined;
672
+ }
673
+ const item = Iterable.head(Iterable.filter(pool.state.invalidated, item => !item.disableReclaim && !reservations.has(item)));
674
+ if (item._tag === "None") {
675
+ return Effect.undefined;
676
+ }
677
+ pool.state.invalidated.delete(item.value);
678
+ // Re-adding moves the reclaimed item to the back of the retirement order.
679
+ pool.state.items.delete(item.value);
680
+ pool.state.items.add(item.value);
681
+ if (item.value.refCount < pool.config.concurrency) {
682
+ addAvailable(pool, item.value);
683
+ }
684
+ return Effect.succeed(item.value);
685
+ });
686
+ }
678
687
  });
679
688
  const reportUnhandledError = cause => Effect.withFiber(fiber => {
680
689
  const unhandledLogLevel = fiber.getRef(UnhandledLogLevel);
package/dist/Pool.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Pool.js","names":[],"sources":["../src/Pool.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Pool.js","names":[],"sources":["../src/Pool.ts"],"sourcesContent":[null],"mappings":"AAYA,SAAS,KAAK,QAAQ,YAAY;AAClC,OAAO,KAAK,OAAO,MAAM,cAAc;AACvC,OAAO,KAAK,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAK,MAAM,MAAM,aAAa;AAErC,OAAO,KAAK,KAAK,MAAM,YAAY;AACnC,SAAS,QAAQ,EAAE,IAAI,EAAE,QAAQ,QAAQ,eAAe;AACxD,OAAO,KAAK,IAAI,MAAM,oBAAoB;AAC1C,OAAO,KAAK,QAAQ,MAAM,sBAAsB;AAChD,OAAO,KAAK,QAAQ,MAAM,eAAe;AACzC,SAAwB,aAAa,QAAQ,eAAe;AAC5D,SAAS,WAAW,QAAQ,gBAAgB;AAC5C,OAAO,KAAK,KAAK,MAAM,YAAY;AACnC,SAAS,iBAAiB,QAAQ,iBAAiB;AACnD,OAAO,KAAK,KAAK,MAAM,YAAY;AACnC,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C,MAAM,MAAM,GAAG,cAAc;AAE7B,MAAM,OAAO,gBAAG,MAAM,EAAE;AACxB,MAAM,cAAc,gBAAG,MAAM,EAAE;AA2J/B;;;;;;;;;;;;;;;AAeA,OAAO,MAAM,MAAM,GAAI,CAAU,IAAkC,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC;AAEzF;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAM,IAAI,GAAa,OAK7B,IACC,gBAAgB,CAAC;EAAE,GAAG,OAAO;EAAE,GAAG,EAAE,OAAO,CAAC,IAAI;EAAE,GAAG,EAAE,OAAO,CAAC,IAAI;EAAE,QAAQ,EAAE;AAAY,CAAE,CAAC;AAEhG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DA,OAAO,MAAM,WAAW,GAAa,OAQpC,IACC,MAAM,CAAC,OAAO,CACZ,OAAO,CAAC,kBAAkB,KAAK,UAAU,GACvC,mBAAmB,CAAO,OAAO,CAAC,UAAU,CAAC,GAC7C,gBAAgB,CAAO,OAAO,CAAC,UAAU,CAAC,EAC3C,QAAQ,IAAK,gBAAgB,CAAC;EAAE,GAAG,OAAO;EAAE;AAAQ,CAAE,CAAC,CACzD;AAEH;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAM,gBAAgB,GAAa,OAOzC,IACC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,WAAU,OAAO;EAC5D,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,OAAO,EAAmB;EACzD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;EAChD,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAClC,OAAO,CAAC,OAAO,EACd,KAAK,IAAK,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CACN;EACrC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC;EAE5C,MAAM,MAAM,GAAiB;IAC3B,OAAO;IACP,WAAW;IACX,OAAO,EAAE,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG;IACpC,OAAO,EAAE,OAAO,CAAC,GAAG;IACpB,OAAO,EAAE,OAAO,CAAC,GAAG;IACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;IAC1B,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;GAC7E;EACD,MAAM,KAAK,GAAgB;IACzB,KAAK;IACL,cAAc,EAAE,KAAK;IACrB,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IACxC,KAAK,EAAE,IAAI,GAAG,EAAE;IAChB,aAAa,EAAE,SAAS;IACxB,aAAa,EAAE,SAAS;IACxB,WAAW,EAAE,IAAI,GAAG,EAAE;IACtB,OAAO,EAAE,IAAI,GAAG;GACjB;EACD,MAAM,IAAI,GAAmB;IAC3B,CAAC,MAAM,GAAG,MAAM;IAChB,CAAC,OAAO,GAAG,OAAO,CAAC,OAA2C;IAC9D,CAAC,cAAc,GAAG,QAAwC;IAC1D,MAAM;IACN,KAAK;IACL,IAAI;MACF,OAAO,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC;IACvC;GACD;EACD,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;EAChD,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE;IACtB,OAAO,MAAM,CAAC,GAAG,CACf,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;MAAE,gBAAgB,EAAE;IAAI,CAAE,CAAC,EACnE,KAAK,IAAK,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAC7D;EACH;EACA,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY,EAAE;IACrC,OAAO,MAAM,CAAC,GAAG,CACf,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EACrD,KAAK,IAAK,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAC7D;EACH;EACA,OAAO,IAAI;AACb,CAAC,CAAC,CAAC;AAEL,MAAM,QAAQ,gBAAG,MAAM,CAAC,UAAU,CAAC,WAAgB,IAAgB;EACjE,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;EAC/B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI;EAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;EAClC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;EAC5C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACnC,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE;MACrB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;MACjE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;MAChC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1B,CAAC,MAAM;MACL,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;MAC7B,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;MAC3B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;MACnC,OAAO,IAAI,CAAC,SAAS;IACvB;EACF;EACA,OAAO,SAAS,CAAC,UAAU;EAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE;IAC1B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,MAAM,EAAE;EACxC;EACA,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;AAsBA,OAAO,MAAM,GAAG,GAAU,IAAgB,IACxC,IAAI,CAAC,SAAS,CAAE,KAAK,IAAI;EACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;EACxB,IAAI,KAAK,CAAC,cAAc,EAAE,OAAO,QAAQ,CAAC,SAAS;EACnD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE;IACrC,KAAK,CAAC,KAAK,EAAE;IACb,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;MAC/D,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC;IACpD;IACA,KAAK,CAAC,KAAK,EAAE;EACf;EACA,OAAO,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC;AACzC,CAAC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAM,GAAG,gBA2DZ,IAAI,CAAC,CAAC,EAAE,CACV,IAAgB,EAChB,CAAwC,KAExC,QAAQ,CAAC,OAAO,CAAC,MAAK;EACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;EACxB,IAAI,KAAK,CAAC,cAAc,EAAE,OAAO,QAAQ,CAAC,SAAS;EACnD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE;IACrC,KAAK,CAAC,KAAK,EAAE;IACb,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;MAC/D,OAAO,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IAC9C;IACA,KAAK,CAAC,KAAK,EAAE;EACf;EACA,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AAC5F,CAAC,CAAC,CAAC;AAEL,MAAM,OAAO,GAAG,CACd,IAAgB,EAChB,IAAoB,EACpB,CAAwC,EACxC,OAAsF,KACtD;EAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;IACrC,OAAO,IAAI,CAAC,IAA2B;EACzC;EACA,IAAI,IAA8B;EAClC,IAAI;IACF,IAAI,GAAG,CAAC,CAAE,IAAI,CAAC,IAA2B,CAAC,KAAK,CAAC;EACnD,CAAC,CAAC,OAAO,MAAM,EAAE;IACf,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;EAC9E;EACA,OAAO,QAAQ,CAAC,eAAe,CAAC,OAAO,KAAK,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;AAC7F,CAAC;AAED,MAAM,WAAW,GAAG,CAClB,IAAgB,EAChB,KAK6B,KAE7B,QAAQ,CAAC,mBAAmB,CAAE,OAAO,IAAI;EACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;EACxB,KAAK,CAAC,KAAK,EAAE;EACb,MAAM,IAAI,GAA6B,QAAQ,CAAC,OAAO,CACrD,QAAQ,CAAC,WAAW,CAClB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAC1B,MACE,QAAQ,CAAC,IAAI,CAAC,MAAK;IACjB,KAAK,CAAC,KAAK,EAAE;EACf,CAAC,CAAC,CACL,EACD,MAAM,IAAI,CACX;EACD,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAE,KAAK,IAAI;IAC9D,IAAI,KAAK,CAAC,cAAc,EAAE;MACxB,KAAK,CAAC,KAAK,EAAE;MACb,OAAO,QAAQ,CAAC,SAAS;IAC3B;IACA,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE;MACrC,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC;IACzD;IACA,OAAO,IAAI;EACb,CAAC,CAAC;EACF,MAAM,IAAI,GAA6B,QAAQ,CAAC,OAAO,CAAC,MAAK;IAC3D,IAAI,KAAK,CAAC,cAAc,EAAE;MACxB,KAAK,CAAC,KAAK,EAAE;MACb,OAAO,QAAQ,CAAC,SAAS;IAC3B;IACA,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,GACtC,QAAQ,CAAC,OAAO,CAChB,KAAK,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAC7C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAC/D,EACD,MAAM,IAAI,CACX,GACC,IAAI;EACV,CAAC,CAAC;EACF,OAAO,IAAI;AACb,CAAC,CAAC;AAEJ,MAAM,oBAAoB,GAAG,CAAO,IAAgB,EAAE,IAAoB,KAAa;EACrF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;EACxB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;IAChC,KAAK,CAAC,KAAK,EAAE;IACb,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;IACxB,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;IAC9B,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;IAC3B,OAAO,KAAK;EACd;EACA,IAAI,CAAC,QAAQ,EAAE;EACf,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;IAC5C,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;EAC7B;EACA,OAAO,IAAI;AACb,CAAC;AAED,MAAM,SAAS,GAAG,CAChB,IAAgB,EAChB,IAAoB,EACpB,KAAoC,KACb;EACvB,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;IACrC,OAAO,IAAI,CAAC,IAAI;EAClB;EACA,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;EAC3D,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;IACjC,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;EACnE;EACA,QAAQ,CAAC,uBAAuB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC;EACzD,OAAO,IAAI,CAAC,IAAI;AAClB,CAAC;AAED,MAAM,aAAa,GAAG,CACpB,IAAgB,EAChB,IAAoB,EACpB,KAAoC,KACC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;AAEnE,MAAM,WAAW,GAAG,CAAO,IAAgB,EAAE,IAAoB,KAC/D,IAAI,CAAC,SAAS,CAAE,KAAK,IAAI;EACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;EACxB,IAAI,CAAC,QAAQ,EAAE;EACf,KAAK,CAAC,KAAK,EAAE;EACb,IAAI,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;IAC/B,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC;EACvC;EACA;EACA;EACA;EACA;EACA;EACA,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;IAC3C,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC;IAC7B,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;EAC7B;EACA,OAAO,QAAQ,CAAC,IAAI;AACtB,CAAC,CAAC;AAEJ,MAAM,WAAW,GAAU,IAAgB,IACzC,QAAQ,CAAC,QAAQ,CAAE,MAAM,IAAI;EAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;EACxB,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,cAAc,EAAE;IAC7D,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;EAC9B;EACA,MAAM,QAAQ,GAAG,MAAK;IACpB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;EACvB,CAAC;EACD,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;EAC3B,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAK;IACxB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;EAChC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEJ,MAAM,WAAW,GAAG,CAAO,IAAgB,EAAE,KAAoC,EAAE,KAAa,KAAI;EAClG,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO;EAClC,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE;EACxB,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,MAAK;IACxC,IAAI,SAAS,GAAG,KAAK;IACrB,MAAM,MAAM,GAAsB,EAAE;IACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;MAC5B,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE;MACtB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;IACrB;IACA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;MACtC,MAAM,CAAC,CAAC,CAAC,EAAE;IACb;EACF,CAAC,EAAE,CAAC,CAAC;AACP,CAAC;AAED,MAAM,OAAO,GAAU,IAAgB,IACrC,IAAI,CAAC,SAAS,CAAE,KAAK,IAAI;EACvB,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC;EAClD,OAAO,QAAQ,CAAC,IAAI;AACtB,CAAC,CAAC;AAEJ;AACA,MAAM,YAAY,gBAAG,IAAI,OAAO,EAAsC;AAEtE;AACA,MAAM,YAAY,GAAG,CAAO,IAAgB,EAAE,IAAoB,KAAU;EAC1E,IAAI,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;EAChD,IAAI,CAAC,WAAW,GAAG,IAAI;EACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa;EACjD,IAAI,CAAC,aAAa,GAAG,SAAS;EAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE;IAC1C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI;EAC/C,CAAC,MAAM;IACL,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI;EACjC;EACA,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI;AACjC,CAAC;AAED;;;;;;;;;;;;;AAaA,MAAM,iBAAiB,GAAG,CAAO,IAAgB,EAAE,IAAoB,KAAU;EAC/E,IAAI,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;EAChD,IAAI,CAAC,WAAW,GAAG,IAAI;EACvB,IAAI,CAAC,iBAAiB,GAAG,SAAS;EAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa;EAC7C,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE;IAC1C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,iBAAiB,GAAG,IAAI;EACnD,CAAC,MAAM;IACL,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI;EACjC;EACA,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI;AACjC,CAAC;AAED,MAAM,eAAe,GAAG,CAAO,IAAgB,EAAE,IAAoB,KAAU;EAC7E,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;EACvB,IAAI,CAAC,WAAW,GAAG,KAAK;EACxB,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,EAAE;IACxC,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa;EAC3D,CAAC,MAAM;IACL,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa;EAC/C;EACA,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;IACpC,IAAI,CAAC,aAAa,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB;EAC/D,CAAC,MAAM;IACL,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB;EACnD;EACA,IAAI,CAAC,iBAAiB,GAAG,SAAS;EAClC,IAAI,CAAC,aAAa,GAAG,SAAS;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;;;AAmBA,OAAO,MAAM,UAAU,gBAyCnB,IAAI,CAAC,CAAC,EAAE,CAAO,IAAgB,EAAE,IAAO,KAC1C,MAAM,CAAC,OAAO,CAAC,MAAK;EAClB,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,MAAM,CAAC,IAAI;EACjD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACvC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;MACpE,QAAQ,CAAC,cAAc,GAAG,IAAI;MAC9B,OAAO,MAAM,CAAC,eAAe,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnE;EACF;EACA,OAAO,MAAM,CAAC,IAAI;AACpB,CAAC,CAAC,CAAC;AAEL;;;;;;;;;;;AAWA,OAAO,MAAM,OAAO,gBAyBhB,IAAI,CACN,CAAC,EACD,CAAO,IAAgB,EAAE,IAAO,KAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CACjC,MAAM,CAAC,IAAI,CAAC,MAAK;EACf,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,CAAC,EAAE,OAAO,SAAS;EACnD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACvC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;IACtE,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC3C,IAAI,QAAQ,KAAK,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC;IAC3E,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;IAC/B,OAAO,QAAQ;EACjB;EACA,OAAO,SAAS;AAClB,CAAC,CAAC,EACD,QAAQ,IACP,IAAI,CAAC,SAAS,CAAE,KAAK,IAAI;EACvB,IAAI,QAAQ,KAAK,SAAS,EAAE,OAAO,QAAQ,CAAC,IAAI;EAChD,MAAM,SAAS,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;EACvD,IAAI,SAAS,GAAG,CAAC,EAAE;IACjB,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrC,OAAO,QAAQ,CAAC,IAAI;EACtB;EACA,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC;EAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC;EAC/C,IACE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,IAC1B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAC9B,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IACrC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAC3C;IACA,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC;IACjC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC;EACvE;EACA,OAAO,QAAQ,CAAC,IAAI;AACtB,CAAC,CAAC,CACL,CAAC,CACL;AAED,MAAM,kBAAkB,GAAG,CAAO,IAAgB,EAAE,QAAwB,KAC1E,MAAM,CAAC,OAAO,CAAC,MAAK;EAClB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;IACnC,OAAO,MAAM,CAAC,IAAI;EACpB,CAAC,MAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC,EAAE;IAClC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;IACjC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;IAC/B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;IACvC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CACjC,QAAQ,CAAC,SAAS,EAClB,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;MAAE,gBAAgB,EAAE;IAAI,CAAE,CAAC,CACtG,CAAC;EACJ;EACA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;EACpC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;EAC/B;EACA;EACA;EACA;EACA,OAAO,MAAM,CAAC,MAAM,CAClB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IAAE,gBAAgB,EAAE;EAAI,CAAE,CAAC,CAChG;AACH,CAAC,CAAC;AAEJ,MAAM,MAAM,GAAU,IAAgB,IACpC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAE7D,MAAM,UAAU,GAAU,IAAgB,IACxC,MAAM,CAAC,OAAO,CAAC,MAAK;EAClB,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;EAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;EAC/B,IAAI,MAAM,IAAI,MAAM,EAAE;IACpB,OAAO,MAAM,CAAC,IAAI;EACpB;EACA,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM;EACjC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,YAAY,GACpD,QAAQ,CAAC,IAAI,CAAC,GACd,MAAM,CAAC,OAAO,CACd,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EACjC,IAAI,IAAK,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CACvD;EACH,IAAI,SAAS,KAAK,CAAC,EAAE;IACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,GACtB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GACvB,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAG,IAAI,IAAK,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;EACvG;EACA,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAC9B,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE;IAAE,WAAW,EAAE;EAAS,CAAE,CAAC,EAC7D,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAC1B;EACD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,GACtB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GACvB,MAAM,CAAC,OAAO,CACd,QAAQ,EACP,KAAK,IAAK,KAAK,CAAC,IAAI,CAAE,CAAC,IAAK,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CACzF;AACL,CAAC,CAAC;AAEJ,MAAM,QAAQ,GAAU,IAAgB,IACtC,QAAQ,CAAC,mBAAmB,CAAE,OAAO,IACnC,IAAI,CAAC,SAAS,CAAE,KAAK,IAAI;EACvB,MAAM,IAAI,GAAG,IAAsB;EACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,EAAE;EACxC,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO;EACrC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;EACvE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAG,IAAI,IAAI;IAC9D,MAAM,IAAI,GAAmB;MAC3B,IAAI;MACJ,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC;MAC5E,QAAQ,EAAE,CAAC;MACX,cAAc,EAAE,KAAK;MACrB,WAAW,EAAE,KAAK;MAClB,iBAAiB,EAAE,SAAS;MAC5B,aAAa,EAAE,SAAS;MACxB,OAAO,EAAE;KACV;IACD,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;IAC1B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;IACxB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE;MACzC,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC;IACzF;IACA,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B;IACA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAChF;IACD,OAAO,MAAM,CAAC,EAAE,CACd,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,SAAS,CAAC,EACrF,IAAI,CACL;EACH,CAAC,CAAC;EACF,OAAO,QAAQ,CAAC,eAAe,CAC7B,OAAO,CAAC,GAAG,CAAkC,EAC5C,IAAI,IAAI;IACP,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,SAAS;EACrF,CAAC,EACD,IAAI,CACL;AACH,CAAC,CAAC,CACH;AAEH,MAAM,UAAU,GAAU,IAAgB,IAAI;EAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC;EACvC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO;EACnD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB;EACpE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;EAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,GAAU,IAAgB,IAAI;EAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI;AAC5D,CAAC;AAED;AACA;AACA;AAEA,MAAM,YAAY,GAAuB;EACvC,GAAG,EAAG,CAAC,IAAK,MAAM,CAAC,IAAI;EACvB,SAAS,EAAG,CAAC,IAAK,MAAM,CAAC,IAAI;EAC7B,OAAO,EAAG,CAAC,IAAK,MAAM,CAAC;CACxB;AAED,MAAM,mBAAmB,gBAAG,MAAM,CAAC,UAAU,CAAC,WAAgB,GAAmB;EAC/E,MAAM,KAAK,GAAG,OAAO,KAAK;EAC1B,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,SAAS,EAAkB;EACtD,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;EAClE,MAAM,aAAa,GAAG,IAAI,OAAO,EAA0B;EAC3D,OAAO,QAAQ,CAAiB;IAC9B,GAAG,EAAG,IAAI,IAAI;MACZ,MAAM,OAAO,GAAI,IAAoB,IACnC,MAAM,CAAC,OAAO,CAAC,MAAK;QAClB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;UACnE,OAAO,MAAM,CAAC,IAAI;QACpB;QACA,MAAM,GAAG,GAAG,KAAK,CAAC,uBAAuB,EAAE;QAC3C,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAE;QACxC,MAAM,SAAS,GAAG,SAAS,IAAI,GAAG,GAAG,OAAO,CAAC;QAC7C,OAAO,SAAS,GAAG,CAAC,GAChB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,GACtC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC;MACpC,CAAC,CAAC;MACJ,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EACnB,MAAM,CAAC,OAAO,CAAC;QAAE,YAAY,EAAE;MAAI,CAAE,CAAC,CACvC;IACH,CAAC;IACD,SAAS,EAAG,IAAI,IACd,MAAM,CAAC,OAAO,CAAC,MAAK;MAClB,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,EAAE,CAAC;MACxD,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;IACjC,CAAC,CAAC;IACJ,OAAO,EAAG,CAAC,IAAK,MAAM,CAAC;GACxB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAU,GAAmB,IACjD,MAAM,CAAC,OAAO,CAAiB;EAC7B,GAAG,EAAG,IAAI,IAAI;IACZ;IACA;IACA;IACA,MAAM,OAAO,GAAwB,MAAM,CAAC,OAAO,CAAC,MAAK;MACvD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,MAAM,CAAC,IAAI;MAC5D,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;QACnC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACtC,OAAO,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC;MACtE;MACA,OAAO,MAAM,CAAC,IAAI;IACpB,CAAC,CAAC;IACF,OAAO,OAAO,CAAC,IAAI,CACjB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EACjB,MAAM,CAAC,OAAO,CAAC;MAAE,YAAY,EAAE;IAAI,CAAE,CAAC,CACvC;EACH,CAAC;EACD,SAAS,EAAG,CAAC,IAAK,MAAM,CAAC,IAAI;EAC7B,OAAO,CAAC,IAAI;IACV,OAAO,MAAM,CAAC,OAAO,CAAC,MAAgD;MACpE,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE;QACrC,OAAO,MAAM,CAAC,SAAS;MACzB;MACA,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CACxB,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAG,IAAI,IAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CACnG;MACD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;QACxB,OAAO,MAAM,CAAC,SAAS;MACzB;MACA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;MACzC;MACA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;MACnC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;MAChC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACjD,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;MAChC;MACA,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;IACnC,CAAC,CAAC;EACJ;CACD,CAAC;AAEJ,MAAM,oBAAoB,GAAO,KAAqB,IACpD,MAAM,CAAC,SAAS,CAAQ,KAAK,IAAI;EAC/B,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC;EACzD,IAAI,iBAAiB,EAAE;IACrB,OAAO,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAC3C,mCAAmC,EACnC,KAAK,CACN;EACH;EACA,OAAO,MAAM,CAAC,IAAI;AACpB,CAAC,CAAC","ignoreList":[]}
package/dist/Queue.d.ts CHANGED
@@ -971,8 +971,8 @@ export declare const interrupt: <A, E>(self: Enqueue<A, E>) => Effect<boolean>;
971
971
  *
972
972
  * **Details**
973
973
  *
974
- * The operation is idempotent and returns `true`, including when the queue has
975
- * already been shut down or completed.
974
+ * Returns `true` when the queue is shut down by this call, or `false` when it
975
+ * has already been shut down or completed.
976
976
  *
977
977
  * **Example** (Shutting down queues)
978
978
  *
@@ -997,10 +997,33 @@ export declare const interrupt: <A, E>(self: Enqueue<A, E>) => Effect<boolean>;
997
997
  * await Effect.runPromise(program) // => { wasShutdown: true, size: 0 }
998
998
  * ```
999
999
  *
1000
+ * @see {@link shutdownUnsafe} for synchronous shutdown
1000
1001
  * @category completion
1001
1002
  * @since 2.0.0
1002
1003
  */
1003
1004
  export declare const shutdown: <A, E>(self: Enqueue<A, E>) => Effect<boolean>;
1005
+ /**
1006
+ * Shuts down the queue synchronously, discarding buffered messages and resuming
1007
+ * pending operations.
1008
+ *
1009
+ * **When to use**
1010
+ *
1011
+ * Use when a synchronous callback must discard buffered messages and settle
1012
+ * pending queue operations before returning.
1013
+ *
1014
+ * **Details**
1015
+ *
1016
+ * An open queue completes with an interruption. A queue already closing retains
1017
+ * its completion cause. Call `failCauseUnsafe` first to shut down with a specific
1018
+ * failure. Returns `true` when the queue is shut down by this call, or `false`
1019
+ * when it has already been shut down or completed.
1020
+ *
1021
+ * @see {@link shutdown} for the effectful variant
1022
+ * @see {@link failCauseUnsafe} to set a failure before discarding buffered messages
1023
+ * @category completion
1024
+ * @since 4.0.0
1025
+ */
1026
+ export declare const shutdownUnsafe: <A, E>(self: Enqueue<A, E>) => boolean;
1004
1027
  /**
1005
1028
  * Takes and returns all currently buffered messages without waiting for more.
1006
1029
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Queue.d.ts","sourceRoot":"","sources":["../src/Queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Queue.d.ts","sourceRoot":"","sources":["../src/Queue.ts"],"names":[],"mappings":"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"}
package/dist/Queue.js CHANGED
@@ -805,8 +805,8 @@ export const interrupt = self => core.withFiber(fiber => failCause(self, interna
805
805
  *
806
806
  * **Details**
807
807
  *
808
- * The operation is idempotent and returns `true`, including when the queue has
809
- * already been shut down or completed.
808
+ * Returns `true` when the queue is shut down by this call, or `false` when it
809
+ * has already been shut down or completed.
810
810
  *
811
811
  * **Example** (Shutting down queues)
812
812
  *
@@ -831,28 +831,48 @@ export const interrupt = self => core.withFiber(fiber => failCause(self, interna
831
831
  * await Effect.runPromise(program) // => { wasShutdown: true, size: 0 }
832
832
  * ```
833
833
  *
834
+ * @see {@link shutdownUnsafe} for synchronous shutdown
834
835
  * @category completion
835
836
  * @since 2.0.0
836
837
  */
837
- export const shutdown = self => internalEffect.sync(() => {
838
+ export const shutdown = self => internalEffect.sync(() => shutdownUnsafe(self));
839
+ /**
840
+ * Shuts down the queue synchronously, discarding buffered messages and resuming
841
+ * pending operations.
842
+ *
843
+ * **When to use**
844
+ *
845
+ * Use when a synchronous callback must discard buffered messages and settle
846
+ * pending queue operations before returning.
847
+ *
848
+ * **Details**
849
+ *
850
+ * An open queue completes with an interruption. A queue already closing retains
851
+ * its completion cause. Call `failCauseUnsafe` first to shut down with a specific
852
+ * failure. Returns `true` when the queue is shut down by this call, or `false`
853
+ * when it has already been shut down or completed.
854
+ *
855
+ * @see {@link shutdown} for the effectful variant
856
+ * @see {@link failCauseUnsafe} to set a failure before discarding buffered messages
857
+ * @category completion
858
+ * @since 4.0.0
859
+ */
860
+ export const shutdownUnsafe = self => {
838
861
  if (self.state._tag === "Done") {
839
- return true;
862
+ return false;
840
863
  }
841
864
  MutableList.clear(self.messages);
842
865
  const offers = self.state.offers;
843
866
  finalize(self, self.state._tag === "Open" ? exitInterrupt : self.state.exit);
844
- if (offers.size > 0) {
845
- for (const entry of offers) {
846
- if (entry._tag === "Single") {
847
- entry.resume(exitFalse);
848
- } else {
849
- entry.resume(core.exitSucceed(entry.remaining.slice(entry.offset)));
850
- }
867
+ for (const entry of offers) {
868
+ if (entry._tag === "Single") {
869
+ entry.resume(exitFalse);
870
+ } else {
871
+ entry.resume(core.exitSucceed(entry.remaining.slice(entry.offset)));
851
872
  }
852
- offers.clear();
853
873
  }
854
874
  return true;
855
- });
875
+ };
856
876
  /**
857
877
  * Takes and returns all currently buffered messages without waiting for more.
858
878
  *
package/dist/Queue.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Queue.js","names":[],"sources":["../src/Queue.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Queue.js","names":[],"sources":["../src/Queue.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}