effect-mq 0.4.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +85 -17
  2. package/dist/Flow.d.ts +381 -0
  3. package/dist/Flow.d.ts.map +1 -0
  4. package/dist/Flow.js +340 -0
  5. package/dist/Flow.js.map +1 -0
  6. package/dist/Job.d.ts +37 -6
  7. package/dist/Job.d.ts.map +1 -1
  8. package/dist/Job.js +17 -2
  9. package/dist/Job.js.map +1 -1
  10. package/dist/JobSchedules.d.ts +112 -0
  11. package/dist/JobSchedules.d.ts.map +1 -0
  12. package/dist/JobSchedules.js +106 -0
  13. package/dist/JobSchedules.js.map +1 -0
  14. package/dist/JobStore.d.ts +320 -10
  15. package/dist/JobStore.d.ts.map +1 -1
  16. package/dist/JobStore.js.map +1 -1
  17. package/dist/MemoryJobStore.d.ts.map +1 -1
  18. package/dist/MemoryJobStore.js +336 -8
  19. package/dist/MemoryJobStore.js.map +1 -1
  20. package/dist/Metrics.d.ts +31 -0
  21. package/dist/Metrics.d.ts.map +1 -1
  22. package/dist/Metrics.js +39 -0
  23. package/dist/Metrics.js.map +1 -1
  24. package/dist/Worker.d.ts +120 -11
  25. package/dist/Worker.d.ts.map +1 -1
  26. package/dist/Worker.js +452 -26
  27. package/dist/Worker.js.map +1 -1
  28. package/dist/drizzle-postgres/DrizzleJobStore.d.ts +19 -1
  29. package/dist/drizzle-postgres/DrizzleJobStore.d.ts.map +1 -1
  30. package/dist/drizzle-postgres/DrizzleJobStore.js +662 -81
  31. package/dist/drizzle-postgres/DrizzleJobStore.js.map +1 -1
  32. package/dist/drizzle-postgres/schema.d.ts +310 -3
  33. package/dist/drizzle-postgres/schema.d.ts.map +1 -1
  34. package/dist/drizzle-postgres/schema.js +68 -1
  35. package/dist/drizzle-postgres/schema.js.map +1 -1
  36. package/dist/index.d.ts +14 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +14 -0
  39. package/dist/index.js.map +1 -1
  40. package/dist/redis/RedisJobStore.d.ts.map +1 -1
  41. package/dist/redis/RedisJobStore.js +221 -19
  42. package/dist/redis/RedisJobStore.js.map +1 -1
  43. package/dist/redis/scripts.d.ts +118 -11
  44. package/dist/redis/scripts.d.ts.map +1 -1
  45. package/dist/redis/scripts.js +497 -28
  46. package/dist/redis/scripts.js.map +1 -1
  47. package/dist/testing/conformance.d.ts +6 -0
  48. package/dist/testing/conformance.d.ts.map +1 -1
  49. package/dist/testing/conformance.js +765 -1
  50. package/dist/testing/conformance.js.map +1 -1
  51. package/package.json +1 -1
  52. package/src/Flow.ts +778 -0
  53. package/src/Job.ts +42 -11
  54. package/src/JobSchedules.ts +223 -0
  55. package/src/JobStore.ts +347 -9
  56. package/src/MemoryJobStore.ts +372 -8
  57. package/src/Metrics.ts +43 -0
  58. package/src/Worker.ts +726 -37
  59. package/src/drizzle-postgres/DrizzleJobStore.ts +827 -82
  60. package/src/drizzle-postgres/schema.ts +94 -0
  61. package/src/index.ts +16 -0
  62. package/src/redis/RedisJobStore.ts +291 -8
  63. package/src/redis/scripts.ts +529 -26
  64. package/src/testing/conformance.ts +989 -1
package/dist/Job.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Job.js","sourceRoot":"","sources":["../src/Job.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,EAAE,KAAK,EAAgB,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAa,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvI,OAAO,EAKL,iBAAiB,EACjB,KAAK,EAEL,gBAAgB,EAIhB,QAAQ,EAER,cAAc,EACd,SAAS,EACT,WAAW,EAGX,aAAa,EACd,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC,OAAO;AACL;;;;;GAKG;AACH,aAAa,EACd,CAAA;AACD,OAAO,EAAyC,MAAM,EAAE,MAAM,aAAa,CAAA;AAE3E,MAAM,MAAM,GAAG,gBAAyB,CAAA;AAkJxC,MAAM,eAAe,GAAG,CAAC,KAA8B,EAA4B,EAAE;IACnF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACzC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;IACjE,IAAI,MAAM,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAChE,CAAC;IACD,OAAO;QACL,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,KAAK,EAAE,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3E,MAAM,EAAE,MAAM,CAAC,MAAM,KAAK,IAAI;QAC9B,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI;KACjC,CAAA;AACH,CAAC,CAAA;AAgWD,MAAM,mBAAmB,GAAG,QAAQ,CAAC,GAAG,CAAC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC;CAC5B,CAAC,CAAA;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAA+B,EAA6B,EAAE,CACtF,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAChC,IAAI,EAAE,KAAK,CAAC,IAAI;IAChB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;IACvC,MAAM,EAAE,KAAK,CAAC,MAAM;CACrB,CAAA;AAEH,MAAM,kBAAkB,GAAG,CAAC,KAAqB,EAAmB,EAAE,CAAC,CAAC;IACtE,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;CAC1E,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,CAAC,KAA4B,EAA0B,EAAE;IAC7E,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACzC,MAAM,KAAK,GAAG,WAAW,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,IAAI,WAAW,IAAI,KAAK,CAAA;IAC/E,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,CAAA;IAC/C,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAA;IACtG,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,sEAAsE;QACtE,yBAAyB;QACzB,MAAM,QAAQ,GAAG,KAIhB,CAAA;QACD,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YAChG,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACvF,SAAS,EAAE,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;SACjG,CAAA;IACH,CAAC;IACD,yEAAyE;IACzE,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAuB,CAAC,CAAA;IAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAA;AACjE,CAAC,CAAA;AAED,MAAM,KAAK,GAAG;IACZ,CAAC,MAAM,CAAC,EAAE,MAAM;IAEhB,OAAO,CAAqB,MAAW,EAAE,OAAwB;QAC/D,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC/C,MAAM,EAAE,GAAG,OAAO,EAAE,KAAK,KAAK,SAAS;gBACrC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACtB,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS;oBACnC,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvD,CAAC,CAAC,SAAS,CAAA;YACb,MAAM,QAAQ,GAAG;gBACf,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC;gBAC3B,GAAG,OAAO,EAAE,QAAQ;aACrB,CAAA;YACD,MAAM,MAAM,GAAG,eAAe,CAC5B,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAC1C,CAAA;YACD,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;YAClF,IAAI,OAAO,EAAE,EAAE,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7D,+DAA+D;gBAC/D,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;YACpE,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,EAAE,EAAE,KAAK,SAAS;gBACvC,CAAC,CAAC,MAAM,CAAC,GAAG,CACV,KAAK,CAAC,iBAAiB,EACvB,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAC3F;gBACD,CAAC,CAAC,MAAM,CAAC,OAAO,CACd,OAAO,EAAE,KAAK,KAAK,SAAS;oBAC1B,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;oBAClC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC1B,CAAA;YACH,+DAA+D;YAC/D,6DAA6D;YAC7D,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CACzC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC,EACH,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CACvE,CAAA;YACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAClG,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE,CAC1D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACnC,KAAK,CAAC,OAAO,CAAC;gBACZ,EAAE;gBACF,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK;gBACL,OAAO,EAAE,OAAO;gBAChB,QAAQ;gBACR,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBACrD,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACrE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,SAAS;oBACrC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,OAAO,EAAE,IAAI,KAAK,SAAS;oBAC/B,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC;oBAC7B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACtB,SAAS,EAAE,OAAO,EAAE,OAAO,KAAK,SAAS;oBACvC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;oBACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;gBAC3B,MAAM;gBACN,8DAA8D;gBAC9D,uDAAuD;gBACvD,KAAK,EAAE,YAAY,KAAK,SAAS;oBAC/B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,eAAe,GAAG,CAAC,EAAyB;gBAC5E,OAAO,EAAE,eAAe;aACzB,CAAC,CAAC,CACN,EACD,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACpB,MAAM,CAAC,MAAM,CACX,OAAO,CAAC,YAAY,CAAC,IAAI,CACvB,MAAM,CAAC,cAAc,CAAC;gBACpB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK;gBACL,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;aAC/C,CAAC,CACH,EACD,CAAC,CACF,CACF,EACD,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAClC,CAAA;QACH,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,UAAU,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAC1E,CAAA;IACH,CAAC;IAED,WAAW,CAAqB,QAA4B,EAAE,OAA4B;QACxF,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YACzB,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;YAClF,IAAI,OAAO,EAAE,EAAE,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7D,+DAA+D;gBAC/D,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;YACpE,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,EAAE,EAAE,KAAK,SAAS;gBACvC,CAAC,CAAC,MAAM,CAAC,GAAG,CACV,KAAK,CAAC,iBAAiB,EACvB,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAC3F;gBACD,CAAC,CAAC,MAAM,CAAC,OAAO,CACd,OAAO,EAAE,KAAK,KAAK,SAAS;oBAC1B,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;oBAClC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC1B,CAAA;YACH,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CACzC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC,EACH,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CACvE,CAAA;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;gBACrD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC/C,OAAO,MAAM,CAAC,GAAG,CACf,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,EACpD,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CACpC,CAAA;YACH,CAAC,CAAC,CAAA;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CACxD,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE,CACxD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACnC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBACrD,EAAE,EAAE,IAAI,CAAC,cAAc,KAAK,SAAS;oBACnC,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvD,CAAC,CAAC,SAAS;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK;gBACL,OAAO,EAAE,OAAO;gBAChB,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE;gBAC/D,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBACrD,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACrE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,SAAS;oBACrC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,OAAO,EAAE,IAAI,KAAK,SAAS;oBAC/B,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC;oBAC7B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACtB,SAAS,EAAE,OAAO,EAAE,OAAO,KAAK,SAAS;oBACvC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;oBACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;gBAC3B,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;gBAC/C,KAAK,EAAE,YAAY,KAAK,SAAS;oBAC/B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,eAAe,GAAG,CAAC,EAAyB;gBAC5E,OAAO,EAAE,eAAe;aACzB,CAAC,CAAC,CAAC,CACL,CACF,EACD,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrB,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAA;gBACtE,MAAM,MAAM,GAAG,CAAC,SAA2B,EAAE,KAAa,EAAE,EAAE,CAC5D,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CACvC,OAAO,CAAC,YAAY,CAAC,IAAI,CACvB,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAC7D,EACD,KAAK,CACN,CAAA;gBACH,OAAO,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC,EAC5C,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAC3B,CAAA;YACH,CAAC,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAC5D,CAAA;QACH,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,cAAc,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAC9E,CAAA;IACH,CAAC;IAED,IAAI,CAAqB,KAAY;QACnC,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CACtB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC1B,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW;YAChC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAClB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS;oBACpC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;oBACf,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAClE,MAAM,CAAC,KAAK,CACb,CACF,CAAA;gBACH,OAAO,MAAM,CAAC,IAAI,CAAC;oBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,IAAI;oBACJ,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,CAAA;YACJ,CAAC,CAAC;SACL,CAAC,CAAC,CACJ,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAC9F,CAAA;IACL,CAAC;IAED,QAAQ,CAAqB,KAAY;QACvC,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAC3B,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACxC,MAAM,CAAC,GAAG,CACR,OAAO,CAAC,IAAI,KAAK,SAAS;YACxB,CAAC,CAAC,MAAM,CAAC,WAAW;YACpB,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAC9D,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CACxB,EACH,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI;SACL,CAAC,CACH,CACF,CAAC,CACH,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAClG,CAAA;IACL,CAAC;IAED,WAAW,CAET,KAAY,EACZ,OAA4E;QAE5E,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACzB,MAAM,QAAQ,GAAG,OAAO,EAAE,YAAY,IAAI,mBAAmB,CAAA;YAC7D,IAAI,KAAyC,CAAA;YAC7C,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACtC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;gBAC3D,CAAC;gBACD,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAA;gBAClD,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;oBAC1B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;gBAC5D,CAAC;gBACD,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAChD,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;wBACxB,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;oBAC1B,CAAC;oBACD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,KAAK,CACP,mBAAmB,KAAK,4BACtB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,YAAY,EACrD,EAAE,CACH,CACF,CAAA;gBACH,CAAC;gBACD,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAChE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAChB,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,uCAAuC,CAAC,CAChE,CACF,CAAA;gBACD,KAAK,CAAC,CAAC,KAAK,CAAA;YACd,CAAC;QACH,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,cAAc,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CACrG,CAAA;IACH,CAAC;IAED,OAAO,CAAqB,MAAW,EAAE,OAAwB;QAC/D,OAAO,MAAM,CAAC,OAAO,CACnB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CACnC,CAAA;IACH,CAAC;IAED,KAAK,CAAqB,KAAY;QACpC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CACrB,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAC/D,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAC/F,CAAA;IACL,CAAC;IAED,MAAM,CAAqB,KAAY;QACrC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CACtB,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAC/D,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAChG,CAAA;IACL,CAAC;IAED,WAAW,CAAqB,GAAW;QACzC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CACvC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAC/D,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,cAAc,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CACnG,CAAA;IACL,CAAC;IAED,OAAO,CAAqB,KAAY;QACtC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CACvB,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAC/D,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CACjG,CAAA;IACL,CAAC;IAED,QAAQ,CAAqB,GAAW,EAAE,OAA+B;QACvE,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACzB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAA;YAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAA;YAC5C,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACzB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,KAAK,CAAC,wBAAwB,GAAG,iDAAiD,CAAC,CACxF,CAAA;YACH,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC1F,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAA;YAC1C,MAAM,SAAS,GAAG,cAAc,CAC9B,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,EAC/C,GAAG,EACH,GAAG,CACJ,CAAA;YACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,KAAK,CAAC,wBAAwB,GAAG,sCAAsC,OAAO,CAAC,IAAI,GAAG,CAAC,CAC5F,CAAA;YACH,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YACxD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC9F,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,CAAA;YACtD,MAAM,MAAM,GAAmB;gBAC7B,GAAG,EAAE,WAAW;gBAChB,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,OAAO;gBACP,OAAO,EAAE,OAAO;gBAChB,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE;gBAC9D,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBACpD,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACpE,OAAO,EAAE,OAAO,CAAC,OAAO,KAAK,SAAS;oBACpC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACnF,SAAS,EAAE,OAAO,CAAC,OAAO,KAAK,SAAS;oBACtC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;oBACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;gBAC3B,SAAS;aACV,CAAA;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;YAC/B,KAAK,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtD,OAAO,WAAW,CAAA;QACpB,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAChG,CAAA;IACH,CAAC;IAED,UAAU,CAAqB,GAAW;QACxC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAC/E,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,aAAa,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAClG,CAAA;IACL,CAAC;IAED,OAAO,CAEL,OAA4E,EAC5E,OAAyB;QAEzB,OAAO,KAAK,CAAC,aAAa,CACxB,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAC5E,CAAA;IACH,CAAC;CACF,CAAA;AAED,MAAM,YAAY,GAAG;IACnB,SAAS;IACT,aAAa;IACb,MAAM;IACN,UAAU;IACV,aAAa;IACb,SAAS;IACT,OAAO;IACP,QAAQ;IACR,aAAa;IACb,SAAS;IACT,UAAU;IACV,YAAY;IACZ,SAAS;CACD,CAAA;AAEV,MAAM,SAAS,GAAG,CAAC,OAclB,EAAO,EAAE;IACR,SAAS,aAAa,KAAI,CAAC;IAC3B,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;IAC3C,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IACrC,2EAA2E;IAC3E,+BAA+B;IAC/B,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAA;IACzF,kEAAkE;IAClE,uDAAuD;IACvD,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,0EAA0E;QAC1E,uEAAuE;QACvE,6CAA6C;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAA8C,CAAA;QACtE,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE;YACxC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;YACjC,YAAY,EAAE,IAAI;SACnB,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAOlB,IAAU,EACV,OA4DC,EAOD,EAAE;IACF,0EAA0E;IAC1E,yEAAyE;IACzE,kCAAkC;IAClC,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;QACpD,CAAC,CAAC,OAAO,CAAC,OAA0B;QACpC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAA+B,CAAC,CAAA;IAC1D,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAA;IACpD,2EAA2E;IAC3E,yEAAyE;IACzE,kCAAkC;IAClC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS;QAC7C,CAAC,CAAC,MAAM,CAAC,KAAK;QACd,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;YAC9B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAkC,CAAC;YAC1D,CAAC,CAAC,OAAO,CAAC,KAAmB,CAAA;IAC/B,4EAA4E;IAC5E,uEAAuE;IACvE,gCAAgC;IAChC,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAC/C,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EACjC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,EAC/B,MAAM,CAAC,MAAM,EAAE,CAChB,CAAC,CAAA;IACF,OAAO,SAAS,CAAC;QACf,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;QAC5C,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,QAAQ;QAChC,aAAa;QACb,iBAAiB,EAAE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC;QACpD,aAAa;QACb,WAAW;QACX,UAAU;QACV,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE;YACR,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,KAAK,SAAS;gBAC5C,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC3C,CAAC,CAAC,CAAC;YACL,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC;YACzC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC,CAAC;YACtD,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;YACpD,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;YAC3C,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,KAAK,SAAS;gBAChD,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC7C,CAAC,CAAC,SAAS;SACd;KACF,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"Job.js","sourceRoot":"","sources":["../src/Job.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Declarative schedule reconciliation.
3
+ *
4
+ * `.schedule()` is imperative: it creates and updates, and a schedule whose
5
+ * call was deleted from code keeps firing forever (deletion drift). This
6
+ * module declares the FULL schedule set for a service as a layer; on
7
+ * startup it upserts everything declared (idempotent, cadence-preserving)
8
+ * and detects group members that are no longer declared:
9
+ *
10
+ * ```ts
11
+ * const SchedulesLive = JobSchedules.layer({
12
+ * group: "billing-service",
13
+ * schedules: [
14
+ * JobSchedules.schedule(SendDigest, "daily", { cron: "0 9 * * *", payload: {} }),
15
+ * JobSchedules.schedule(GenerateInvoice, "monthly", { cron: "0 0 1 * *", payload: {} })
16
+ * ],
17
+ * removal: "group", // default "warn": log drift, prune nothing
18
+ * removeAfter: "10 minutes" // optional grace window for rolling deploys
19
+ * })
20
+ * ```
21
+ *
22
+ * Safety model: pruning is scoped to the ownership `group`. Schedules
23
+ * created by plain `.schedule()` calls carry no group and are NEVER pruned;
24
+ * other groups' schedules are never touched. The default `removal: "warn"`
25
+ * only logs — destructive pruning is an explicit opt-in.
26
+ *
27
+ * @since 0.5.0
28
+ */
29
+ import { type Context, Duration, Effect, Layer } from "effect";
30
+ import type { ScheduleOptions } from "./Job.ts";
31
+ import type { ScheduleKey, Service as StoreService } from "./JobStore.ts";
32
+ /**
33
+ * The structural view of a `Job.make` class that `schedule` needs: its tag,
34
+ * its store key, and its bound `schedule` verb.
35
+ *
36
+ * @since 0.5.0
37
+ */
38
+ export interface SchedulableJob<PayloadInput, R> {
39
+ readonly _tag: string;
40
+ readonly store: Context.Key<any, StoreService>;
41
+ readonly schedule: (key: string, options: ScheduleOptions<PayloadInput>) => Effect.Effect<ScheduleKey, never, R>;
42
+ }
43
+ /**
44
+ * One declared schedule: a job, its key, and its cadence/options. Built
45
+ * with `JobSchedules.schedule`; consumed by `JobSchedules.layer`.
46
+ *
47
+ * @since 0.5.0
48
+ */
49
+ export interface ScheduleEntry<R> {
50
+ readonly jobName: string;
51
+ readonly key: string;
52
+ readonly store: Context.Key<any, StoreService>;
53
+ readonly register: (group: string) => Effect.Effect<ScheduleKey, never, R>;
54
+ }
55
+ /**
56
+ * Declare one schedule for the reconciled set. Identical semantics to
57
+ * `MyJob.schedule(key, options)` — including cadence preservation on
58
+ * unchanged `cron`/`tz`/`every` — plus the layer's ownership `group`.
59
+ *
60
+ * @since 0.5.0
61
+ */
62
+ export declare const schedule: <PayloadInput, R>(job: SchedulableJob<PayloadInput, R>, key: string, options: Omit<ScheduleOptions<PayloadInput>, "group">) => ScheduleEntry<R>;
63
+ /**
64
+ * Options for `JobSchedules.layer`.
65
+ *
66
+ * @since 0.5.0
67
+ */
68
+ export interface ReconcileOptions<Entries extends ReadonlyArray<ScheduleEntry<any>>, Stores extends ReadonlyArray<Context.Key<any, StoreService>>> {
69
+ /**
70
+ * Ownership label. Everything this layer declares is upserted with this
71
+ * group, and only schedules carrying this group are candidates for drift
72
+ * detection and pruning. Use one group per service/deployable.
73
+ */
74
+ readonly group: string;
75
+ /** The full declared schedule set for this group. */
76
+ readonly schedules: Entries;
77
+ /**
78
+ * What to do with group members that are no longer declared:
79
+ * - `"warn"` (default): log them at warning level, prune nothing.
80
+ * - `"group"`: remove them (never touches unlabeled or other-group rows).
81
+ */
82
+ readonly removal?: "warn" | "group" | undefined;
83
+ /**
84
+ * Grace window before pruning (requires `removal: "group"`). During a
85
+ * rolling deploy, replicas on the previous release re-declare schedules
86
+ * the new release dropped; pruning immediately and re-adding would
87
+ * re-anchor `every` grids and double-fire crons. With a window, the prune
88
+ * runs this long after startup, re-checks the store, and removes only
89
+ * members still undeclared. Shutting down before the window fires skips
90
+ * the prune (the next startup re-evaluates).
91
+ */
92
+ readonly removeAfter?: Duration.Input | undefined;
93
+ /**
94
+ * Extra store keys to reconcile even when no declared entry references
95
+ * them — needed when a release drops the LAST schedule a store had, since
96
+ * drift detection only reaches stores it can see.
97
+ */
98
+ readonly stores?: Stores | undefined;
99
+ }
100
+ /**
101
+ * Reconcile the declared schedule set on startup: upsert everything
102
+ * declared, then warn about (or, with `removal: "group"`, prune) group
103
+ * members that are no longer declared. See the module docs for the safety
104
+ * model.
105
+ *
106
+ * @since 0.5.0
107
+ */
108
+ export declare const layer: <const Entries extends ReadonlyArray<ScheduleEntry<any>>, const Stores extends ReadonlyArray<Context.Key<any, StoreService>> = readonly []>(options: ReconcileOptions<Entries, Stores>) => Layer.Layer<never, never, EntryServices<Entries[number]> | StoreId<Stores[number]>>;
109
+ type EntryServices<E> = E extends ScheduleEntry<infer R> ? R : never;
110
+ type StoreId<K> = K extends Context.Key<infer Id, StoreService> ? Id : never;
111
+ export {};
112
+ //# sourceMappingURL=JobSchedules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JobSchedules.d.ts","sourceRoot":"","sources":["../src/JobSchedules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Declarative schedule reconciliation.
3
+ *
4
+ * `.schedule()` is imperative: it creates and updates, and a schedule whose
5
+ * call was deleted from code keeps firing forever (deletion drift). This
6
+ * module declares the FULL schedule set for a service as a layer; on
7
+ * startup it upserts everything declared (idempotent, cadence-preserving)
8
+ * and detects group members that are no longer declared:
9
+ *
10
+ * ```ts
11
+ * const SchedulesLive = JobSchedules.layer({
12
+ * group: "billing-service",
13
+ * schedules: [
14
+ * JobSchedules.schedule(SendDigest, "daily", { cron: "0 9 * * *", payload: {} }),
15
+ * JobSchedules.schedule(GenerateInvoice, "monthly", { cron: "0 0 1 * *", payload: {} })
16
+ * ],
17
+ * removal: "group", // default "warn": log drift, prune nothing
18
+ * removeAfter: "10 minutes" // optional grace window for rolling deploys
19
+ * })
20
+ * ```
21
+ *
22
+ * Safety model: pruning is scoped to the ownership `group`. Schedules
23
+ * created by plain `.schedule()` calls carry no group and are NEVER pruned;
24
+ * other groups' schedules are never touched. The default `removal: "warn"`
25
+ * only logs — destructive pruning is an explicit opt-in.
26
+ *
27
+ * @since 0.5.0
28
+ */
29
+ import { Duration, Effect, Layer } from "effect";
30
+ /**
31
+ * Declare one schedule for the reconciled set. Identical semantics to
32
+ * `MyJob.schedule(key, options)` — including cadence preservation on
33
+ * unchanged `cron`/`tz`/`every` — plus the layer's ownership `group`.
34
+ *
35
+ * @since 0.5.0
36
+ */
37
+ export const schedule = (job, key, options) => ({
38
+ jobName: job._tag,
39
+ key,
40
+ store: job.store,
41
+ register: (group) => job.schedule(key, { ...options, group })
42
+ });
43
+ const reconcile = (options) => Effect.gen(function* () {
44
+ const removal = options.removal ?? "warn";
45
+ if (options.removeAfter !== undefined && removal !== "group") {
46
+ return yield* Effect.die(new Error(`effect-mq: \`removeAfter\` requires \`removal: "group"\``));
47
+ }
48
+ // Duplicate declarations are a config bug: the second would silently
49
+ // overwrite the first's cadence/payload on every startup.
50
+ const seen = new Set();
51
+ for (const entry of options.schedules) {
52
+ const id = `${entry.jobName}/${entry.key}`;
53
+ if (seen.has(id)) {
54
+ return yield* Effect.die(new Error(`effect-mq: schedule "${id}" is declared twice in group "${options.group}"`));
55
+ }
56
+ seen.add(id);
57
+ }
58
+ // Upsert every declared schedule, collecting the declared key set per
59
+ // store (Context.Key identity groups entries onto their stores).
60
+ const byStore = new Map();
61
+ for (const storeKey of options.stores ?? []) {
62
+ byStore.set(storeKey, new Set());
63
+ }
64
+ for (const entry of options.schedules) {
65
+ const registered = yield* entry.register(options.group);
66
+ const declared = byStore.get(entry.store) ?? new Set();
67
+ declared.add(registered);
68
+ byStore.set(entry.store, declared);
69
+ }
70
+ // Drift detection per store: group members not in the declared set.
71
+ for (const [storeKey, declared] of byStore) {
72
+ const store = yield* storeKey;
73
+ const prune = Effect.gen(function* () {
74
+ const members = yield* store.listSchedules({ group: options.group }).pipe(Effect.retry({ times: 5 }), Effect.orDie);
75
+ const undeclared = members.filter((member) => !declared.has(member.key));
76
+ if (undeclared.length === 0)
77
+ return;
78
+ if (removal === "warn") {
79
+ return yield* Effect.logWarning(`effect-mq: ${undeclared.length} schedule(s) in group "${options.group}" ` +
80
+ `are no longer declared and keep firing; \`removal: "group"\` would prune them`, undeclared.map((member) => member.key));
81
+ }
82
+ for (const member of undeclared) {
83
+ yield* store.removeSchedule(member.key).pipe(Effect.retry({ times: 5 }), Effect.orDie);
84
+ }
85
+ yield* Effect.logInfo(`effect-mq: pruned ${undeclared.length} undeclared schedule(s) from group "${options.group}"`, undeclared.map((member) => member.key));
86
+ });
87
+ if (removal === "group" && options.removeAfter !== undefined) {
88
+ // Deferred prune, tied to the layer scope: it re-lists at fire time,
89
+ // so anything re-declared during the window survives.
90
+ yield* prune.pipe(Effect.delay(Duration.toMillis(options.removeAfter)), Effect.catchCause((cause) => Effect.logError(`effect-mq: deferred schedule prune failed (group "${options.group}")`, cause)), Effect.forkScoped);
91
+ }
92
+ else {
93
+ yield* prune;
94
+ }
95
+ }
96
+ });
97
+ /**
98
+ * Reconcile the declared schedule set on startup: upsert everything
99
+ * declared, then warn about (or, with `removal: "group"`, prune) group
100
+ * members that are no longer declared. See the module docs for the safety
101
+ * model.
102
+ *
103
+ * @since 0.5.0
104
+ */
105
+ export const layer = (options) => Layer.effectDiscard(reconcile(options));
106
+ //# sourceMappingURL=JobSchedules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JobSchedules.js","sourceRoot":"","sources":["../src/JobSchedules.ts"],"names":[],"mappings":"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"}