@motiadev/core 0.8.6-beta.143 → 0.8.6-beta.144-481431

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 (121) hide show
  1. package/dist/index.d.ts +12 -5
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +14 -5
  4. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.ts +13 -0
  5. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.ts.map +1 -0
  6. package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.js +53 -0
  7. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.ts +15 -0
  8. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.ts.map +1 -0
  9. package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.js +49 -0
  10. package/dist/src/adapters/defaults/index.d.ts +9 -0
  11. package/dist/src/adapters/defaults/index.d.ts.map +1 -0
  12. package/dist/src/adapters/defaults/index.js +19 -0
  13. package/dist/src/{state/adapters/default-state-adapter.d.ts → adapters/defaults/state/file-state-adapter.d.ts} +2 -2
  14. package/dist/src/adapters/defaults/state/file-state-adapter.d.ts.map +1 -0
  15. package/dist/src/{state/adapters/default-state-adapter.js → adapters/defaults/state/file-state-adapter.js} +1 -3
  16. package/dist/src/{state/adapters → adapters/defaults/state}/memory-state-adapter.d.ts +1 -1
  17. package/dist/src/adapters/defaults/state/memory-state-adapter.d.ts.map +1 -0
  18. package/dist/src/{state/adapters → adapters/defaults/state}/memory-state-adapter.js +1 -3
  19. package/dist/src/{state/adapters → adapters/defaults/state}/utils.d.ts +1 -1
  20. package/dist/src/adapters/defaults/state/utils.d.ts.map +1 -0
  21. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.ts +9 -0
  22. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.ts.map +1 -0
  23. package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.js +14 -0
  24. package/dist/src/{streams/adapters → adapters/defaults/stream}/file-stream-adapter.d.ts +2 -2
  25. package/dist/src/adapters/defaults/stream/file-stream-adapter.d.ts.map +1 -0
  26. package/dist/src/{streams/adapters → adapters/defaults/stream}/file-stream-adapter.js +5 -4
  27. package/dist/src/adapters/defaults/stream/index.d.ts +5 -0
  28. package/dist/src/adapters/defaults/stream/index.d.ts.map +1 -0
  29. package/dist/src/adapters/defaults/stream/index.js +11 -0
  30. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.ts +6 -0
  31. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.ts.map +1 -0
  32. package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.js +10 -0
  33. package/dist/src/{streams/adapters → adapters/defaults/stream}/memory-stream-adapter.d.ts +4 -1
  34. package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.ts.map +1 -0
  35. package/dist/src/adapters/defaults/stream/memory-stream-adapter.js +55 -0
  36. package/dist/src/adapters/interfaces/cron-adapter.interface.d.ts +29 -0
  37. package/dist/src/adapters/interfaces/cron-adapter.interface.d.ts.map +1 -0
  38. package/dist/src/adapters/interfaces/event-adapter.interface.d.ts +15 -0
  39. package/dist/src/adapters/interfaces/event-adapter.interface.d.ts.map +1 -0
  40. package/dist/src/adapters/interfaces/event-adapter.interface.js +2 -0
  41. package/dist/src/adapters/interfaces/index.d.ts +7 -0
  42. package/dist/src/adapters/interfaces/index.d.ts.map +1 -0
  43. package/dist/src/adapters/interfaces/index.js +5 -0
  44. package/dist/src/adapters/interfaces/observability-adapter.interface.d.ts +23 -0
  45. package/dist/src/adapters/interfaces/observability-adapter.interface.d.ts.map +1 -0
  46. package/dist/src/adapters/interfaces/observability-adapter.interface.js +2 -0
  47. package/dist/src/{state/state-adapter.d.ts → adapters/interfaces/state-adapter.interface.d.ts} +2 -5
  48. package/dist/src/adapters/interfaces/state-adapter.interface.d.ts.map +1 -0
  49. package/dist/src/adapters/interfaces/state-adapter.interface.js +2 -0
  50. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.ts +6 -0
  51. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.ts.map +1 -0
  52. package/dist/src/adapters/interfaces/stream-adapter-manager.interface.js +2 -0
  53. package/dist/src/adapters/interfaces/stream-adapter.interface.d.ts +22 -0
  54. package/dist/src/adapters/interfaces/stream-adapter.interface.d.ts.map +1 -0
  55. package/dist/src/adapters/interfaces/stream-adapter.interface.js +16 -0
  56. package/dist/src/call-step-file.js +1 -1
  57. package/dist/src/cron-handler.d.ts +4 -3
  58. package/dist/src/cron-handler.d.ts.map +1 -1
  59. package/dist/src/cron-handler.js +46 -2
  60. package/dist/src/endpoints/step-endpoint.d.ts.map +1 -1
  61. package/dist/src/endpoints/step-endpoint.js +5 -4
  62. package/dist/src/helper/flows-helper.d.ts +1 -1
  63. package/dist/src/helper/flows-helper.d.ts.map +1 -1
  64. package/dist/src/infrastructure-validator/schemas.d.ts +8 -8
  65. package/dist/src/locked-data.d.ts +3 -3
  66. package/dist/src/locked-data.d.ts.map +1 -1
  67. package/dist/src/locked-data.js +2 -8
  68. package/dist/src/logger-factory.d.ts +2 -2
  69. package/dist/src/logger-factory.d.ts.map +1 -1
  70. package/dist/src/motia.d.ts +4 -5
  71. package/dist/src/motia.d.ts.map +1 -1
  72. package/dist/src/observability/index.d.ts +3 -14
  73. package/dist/src/observability/index.d.ts.map +1 -1
  74. package/dist/src/observability/trace-stream-adapter.d.ts +1 -1
  75. package/dist/src/observability/trace-stream-adapter.d.ts.map +1 -1
  76. package/dist/src/observability/trace-stream-adapter.js +3 -2
  77. package/dist/src/observability/tracer.d.ts +1 -0
  78. package/dist/src/observability/tracer.d.ts.map +1 -1
  79. package/dist/src/observability/tracer.js +13 -2
  80. package/dist/src/queue-manager.d.ts +1 -2
  81. package/dist/src/queue-manager.d.ts.map +1 -1
  82. package/dist/src/server.d.ts +11 -4
  83. package/dist/src/server.d.ts.map +1 -1
  84. package/dist/src/server.js +9 -9
  85. package/dist/src/state/create-state-adapter.d.ts +4 -4
  86. package/dist/src/state/create-state-adapter.d.ts.map +1 -1
  87. package/dist/src/state/create-state-adapter.js +3 -3
  88. package/dist/src/step-handlers.d.ts +2 -2
  89. package/dist/src/step-handlers.d.ts.map +1 -1
  90. package/dist/src/step-handlers.js +14 -10
  91. package/dist/src/streams/flows-config-stream.d.ts +1 -1
  92. package/dist/src/streams/flows-config-stream.d.ts.map +1 -1
  93. package/dist/src/streams/flows-config-stream.js +3 -3
  94. package/dist/src/streams/flows-stream.d.ts +1 -1
  95. package/dist/src/streams/flows-stream.d.ts.map +1 -1
  96. package/dist/src/streams/flows-stream.js +3 -3
  97. package/dist/src/streams/logs-stream.d.ts +2 -1
  98. package/dist/src/streams/logs-stream.d.ts.map +1 -1
  99. package/dist/src/streams/logs-stream.js +3 -3
  100. package/dist/src/types/app-config-types.d.ts +11 -0
  101. package/dist/src/types/app-config-types.d.ts.map +1 -1
  102. package/dist/src/types.d.ts +0 -5
  103. package/dist/src/types.d.ts.map +1 -1
  104. package/dist/src/validate-event-input.d.ts.map +1 -1
  105. package/dist/src/validate-event-input.js +3 -1
  106. package/package.json +1 -1
  107. package/dist/src/event-manager.d.ts +0 -4
  108. package/dist/src/event-manager.d.ts.map +0 -1
  109. package/dist/src/event-manager.js +0 -32
  110. package/dist/src/state/adapters/default-state-adapter.d.ts.map +0 -1
  111. package/dist/src/state/adapters/memory-state-adapter.d.ts.map +0 -1
  112. package/dist/src/state/adapters/utils.d.ts.map +0 -1
  113. package/dist/src/state/state-adapter.d.ts.map +0 -1
  114. package/dist/src/streams/adapters/file-stream-adapter.d.ts.map +0 -1
  115. package/dist/src/streams/adapters/memory-stream-adapter.d.ts.map +0 -1
  116. package/dist/src/streams/adapters/memory-stream-adapter.js +0 -39
  117. package/dist/src/streams/adapters/stream-adapter.d.ts +0 -12
  118. package/dist/src/streams/adapters/stream-adapter.d.ts.map +0 -1
  119. package/dist/src/streams/adapters/stream-adapter.js +0 -10
  120. /package/dist/src/{state/adapters → adapters/defaults/state}/utils.js +0 -0
  121. /package/dist/src/{state/state-adapter.js → adapters/interfaces/cron-adapter.interface.js} +0 -0
package/dist/index.d.ts CHANGED
@@ -1,7 +1,15 @@
1
+ export { FileStateAdapter, FileStreamAdapter, FileStreamAdapterManager, MemoryStateAdapter, MemoryStreamAdapter, MemoryStreamAdapterManager, } from './src/adapters/defaults';
2
+ export { InMemoryCronAdapter as DefaultCronAdapter } from './src/adapters/defaults/cron/in-memory-cron-adapter';
3
+ export { InMemoryQueueEventAdapter as DefaultQueueEventAdapter } from './src/adapters/defaults/event/in-memory-queue-event-adapter';
4
+ export type { CronAdapter, CronAdapterConfig, CronLock, CronLockInfo, } from './src/adapters/interfaces/cron-adapter.interface';
5
+ export type { EventAdapter, SubscriptionHandle, } from './src/adapters/interfaces/event-adapter.interface';
6
+ export type { Metric, ObservabilityAdapter, Tracer, } from './src/adapters/interfaces/observability-adapter.interface';
7
+ export type { StateAdapter, StateFilter, StateItem, StateItemsInput, } from './src/adapters/interfaces/state-adapter.interface';
8
+ export { StreamAdapter, type StreamQueryFilter, } from './src/adapters/interfaces/stream-adapter.interface';
9
+ export type { StreamAdapterManager } from './src/adapters/interfaces/stream-adapter-manager.interface';
1
10
  export { getProjectIdentifier, getUserIdentifier, isAnalyticsEnabled, trackEvent } from './src/analytics/utils';
2
11
  export { config } from './src/config';
3
12
  export { CronManager, setupCronHandlers } from './src/cron-handler';
4
- export { createEventManager } from './src/event-manager';
5
13
  export { getStepConfig, getStreamConfig } from './src/get-step-config';
6
14
  export { isApiStep, isCronStep, isEventStep, isNoopStep } from './src/guards';
7
15
  export { type InfrastructureValidationError, type InfrastructureValidationResult, validateInfrastructureConfig, } from './src/infrastructure-validator';
@@ -11,13 +19,12 @@ export { createMermaidGenerator } from './src/mermaid-generator';
11
19
  export { Motia, MotiaPluginContext, PLUGIN_FLOW_ID, PluginApiConfig, UnregisterMotiaPluginApi } from './src/motia';
12
20
  export { NoTracer } from './src/observability/no-tracer';
13
21
  export { NoPrinter, Printer } from './src/printer';
14
- export { QueueManager } from './src/queue-manager';
22
+ export { QueueManager, type QueueMetrics } from './src/queue-manager';
15
23
  export { createServer, MotiaServer } from './src/server';
16
24
  export { createStateAdapter } from './src/state/create-state-adapter';
17
- export { StateAdapter } from './src/state/state-adapter';
18
25
  export { createStepHandlers, MotiaEventManager } from './src/step-handlers';
19
- export { StreamAdapter } from './src/streams/adapters/stream-adapter';
20
26
  export * from './src/types';
27
+ export type { AdapterConfig, Config } from './src/types/app-config-types';
21
28
  export * from './src/types/schema.types';
22
- export { MotiaStream, StreamConfig } from './src/types-stream';
29
+ export { type BaseStreamItem, MotiaStream, type StateStreamEvent, type StateStreamEventChannel, StreamConfig, } from './src/types-stream';
23
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC7E,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,4BAA4B,GAC7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,cAAc,aAAa,CAAA;AAC3B,cAAc,0BAA0B,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,mBAAmB,IAAI,kBAAkB,EAAE,MAAM,qDAAqD,CAAA;AAC/G,OAAO,EAAE,yBAAyB,IAAI,wBAAwB,EAAE,MAAM,6DAA6D,CAAA;AACnI,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,QAAQ,EACR,YAAY,GACb,MAAM,kDAAkD,CAAA;AACzD,YAAY,EACV,YAAY,EACZ,kBAAkB,GACnB,MAAM,mDAAmD,CAAA;AAC1D,YAAY,EACV,MAAM,EACN,oBAAoB,EACpB,MAAM,GACP,MAAM,2DAA2D,CAAA;AAClE,YAAY,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,eAAe,GAChB,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EACL,aAAa,EACb,KAAK,iBAAiB,GACvB,MAAM,oDAAoD,CAAA;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAA;AACtG,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC7E,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,4BAA4B,GAC7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,cAAc,aAAa,CAAA;AAC3B,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACzE,cAAc,0BAA0B,CAAA;AACxC,OAAO,EACL,KAAK,cAAc,EACnB,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,YAAY,GACb,MAAM,oBAAoB,CAAA"}
package/dist/index.js CHANGED
@@ -14,7 +14,20 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.StreamAdapter = exports.createStepHandlers = exports.createStateAdapter = exports.createServer = exports.QueueManager = exports.Printer = exports.NoPrinter = exports.NoTracer = exports.PLUGIN_FLOW_ID = exports.createMermaidGenerator = exports.Logger = exports.LockedData = exports.validateInfrastructureConfig = exports.isNoopStep = exports.isEventStep = exports.isCronStep = exports.isApiStep = exports.getStreamConfig = exports.getStepConfig = exports.createEventManager = exports.setupCronHandlers = exports.config = exports.trackEvent = exports.isAnalyticsEnabled = exports.getUserIdentifier = exports.getProjectIdentifier = void 0;
17
+ exports.createStepHandlers = exports.createStateAdapter = exports.createServer = exports.QueueManager = exports.Printer = exports.NoPrinter = exports.NoTracer = exports.PLUGIN_FLOW_ID = exports.createMermaidGenerator = exports.Logger = exports.LockedData = exports.validateInfrastructureConfig = exports.isNoopStep = exports.isEventStep = exports.isCronStep = exports.isApiStep = exports.getStreamConfig = exports.getStepConfig = exports.setupCronHandlers = exports.config = exports.trackEvent = exports.isAnalyticsEnabled = exports.getUserIdentifier = exports.getProjectIdentifier = exports.StreamAdapter = exports.DefaultQueueEventAdapter = exports.DefaultCronAdapter = exports.MemoryStreamAdapterManager = exports.MemoryStreamAdapter = exports.MemoryStateAdapter = exports.FileStreamAdapterManager = exports.FileStreamAdapter = exports.FileStateAdapter = void 0;
18
+ var defaults_1 = require("./src/adapters/defaults");
19
+ Object.defineProperty(exports, "FileStateAdapter", { enumerable: true, get: function () { return defaults_1.FileStateAdapter; } });
20
+ Object.defineProperty(exports, "FileStreamAdapter", { enumerable: true, get: function () { return defaults_1.FileStreamAdapter; } });
21
+ Object.defineProperty(exports, "FileStreamAdapterManager", { enumerable: true, get: function () { return defaults_1.FileStreamAdapterManager; } });
22
+ Object.defineProperty(exports, "MemoryStateAdapter", { enumerable: true, get: function () { return defaults_1.MemoryStateAdapter; } });
23
+ Object.defineProperty(exports, "MemoryStreamAdapter", { enumerable: true, get: function () { return defaults_1.MemoryStreamAdapter; } });
24
+ Object.defineProperty(exports, "MemoryStreamAdapterManager", { enumerable: true, get: function () { return defaults_1.MemoryStreamAdapterManager; } });
25
+ var in_memory_cron_adapter_1 = require("./src/adapters/defaults/cron/in-memory-cron-adapter");
26
+ Object.defineProperty(exports, "DefaultCronAdapter", { enumerable: true, get: function () { return in_memory_cron_adapter_1.InMemoryCronAdapter; } });
27
+ var in_memory_queue_event_adapter_1 = require("./src/adapters/defaults/event/in-memory-queue-event-adapter");
28
+ Object.defineProperty(exports, "DefaultQueueEventAdapter", { enumerable: true, get: function () { return in_memory_queue_event_adapter_1.InMemoryQueueEventAdapter; } });
29
+ var stream_adapter_interface_1 = require("./src/adapters/interfaces/stream-adapter.interface");
30
+ Object.defineProperty(exports, "StreamAdapter", { enumerable: true, get: function () { return stream_adapter_interface_1.StreamAdapter; } });
18
31
  var utils_1 = require("./src/analytics/utils");
19
32
  Object.defineProperty(exports, "getProjectIdentifier", { enumerable: true, get: function () { return utils_1.getProjectIdentifier; } });
20
33
  Object.defineProperty(exports, "getUserIdentifier", { enumerable: true, get: function () { return utils_1.getUserIdentifier; } });
@@ -24,8 +37,6 @@ var config_1 = require("./src/config");
24
37
  Object.defineProperty(exports, "config", { enumerable: true, get: function () { return config_1.config; } });
25
38
  var cron_handler_1 = require("./src/cron-handler");
26
39
  Object.defineProperty(exports, "setupCronHandlers", { enumerable: true, get: function () { return cron_handler_1.setupCronHandlers; } });
27
- var event_manager_1 = require("./src/event-manager");
28
- Object.defineProperty(exports, "createEventManager", { enumerable: true, get: function () { return event_manager_1.createEventManager; } });
29
40
  var get_step_config_1 = require("./src/get-step-config");
30
41
  Object.defineProperty(exports, "getStepConfig", { enumerable: true, get: function () { return get_step_config_1.getStepConfig; } });
31
42
  Object.defineProperty(exports, "getStreamConfig", { enumerable: true, get: function () { return get_step_config_1.getStreamConfig; } });
@@ -57,7 +68,5 @@ var create_state_adapter_1 = require("./src/state/create-state-adapter");
57
68
  Object.defineProperty(exports, "createStateAdapter", { enumerable: true, get: function () { return create_state_adapter_1.createStateAdapter; } });
58
69
  var step_handlers_1 = require("./src/step-handlers");
59
70
  Object.defineProperty(exports, "createStepHandlers", { enumerable: true, get: function () { return step_handlers_1.createStepHandlers; } });
60
- var stream_adapter_1 = require("./src/streams/adapters/stream-adapter");
61
- Object.defineProperty(exports, "StreamAdapter", { enumerable: true, get: function () { return stream_adapter_1.StreamAdapter; } });
62
71
  __exportStar(require("./src/types"), exports);
63
72
  __exportStar(require("./src/types/schema.types"), exports);
@@ -0,0 +1,13 @@
1
+ import type { CronAdapter, CronLock, CronLockInfo } from '../../interfaces/cron-adapter.interface';
2
+ export declare class InMemoryCronAdapter implements CronAdapter {
3
+ private locks;
4
+ private instanceId;
5
+ constructor();
6
+ acquireLock(jobName: string, ttl: number): Promise<CronLock | null>;
7
+ releaseLock(lock: CronLock): Promise<void>;
8
+ renewLock(lock: CronLock, ttl: number): Promise<boolean>;
9
+ isHealthy(): Promise<boolean>;
10
+ shutdown(): Promise<void>;
11
+ getActiveLocks(): Promise<CronLockInfo[]>;
12
+ }
13
+ //# sourceMappingURL=in-memory-cron-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory-cron-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/cron/in-memory-cron-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AAElG,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,UAAU,CAAQ;;IAMpB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAcnE,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUxD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,cAAc,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;CAQhD"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.InMemoryCronAdapter = void 0;
7
+ const os_1 = __importDefault(require("os"));
8
+ const uuid_1 = require("uuid");
9
+ class InMemoryCronAdapter {
10
+ constructor() {
11
+ this.locks = new Map();
12
+ this.instanceId = `${os_1.default.hostname()}-${(0, uuid_1.v4)()}`;
13
+ }
14
+ async acquireLock(jobName, ttl) {
15
+ const now = Date.now();
16
+ const lock = {
17
+ jobName,
18
+ lockId: (0, uuid_1.v4)(),
19
+ acquiredAt: now,
20
+ expiresAt: now + ttl,
21
+ instanceId: this.instanceId,
22
+ };
23
+ this.locks.set(jobName, lock);
24
+ return lock;
25
+ }
26
+ async releaseLock(lock) {
27
+ this.locks.delete(lock.jobName);
28
+ }
29
+ async renewLock(lock, ttl) {
30
+ const existingLock = this.locks.get(lock.jobName);
31
+ if (existingLock && existingLock.lockId === lock.lockId) {
32
+ const now = Date.now();
33
+ existingLock.expiresAt = now + ttl;
34
+ return true;
35
+ }
36
+ return true;
37
+ }
38
+ async isHealthy() {
39
+ return true;
40
+ }
41
+ async shutdown() {
42
+ this.locks.clear();
43
+ }
44
+ async getActiveLocks() {
45
+ return Array.from(this.locks.values()).map((lock) => ({
46
+ jobName: lock.jobName,
47
+ instanceId: lock.instanceId,
48
+ acquiredAt: lock.acquiredAt,
49
+ expiresAt: lock.expiresAt,
50
+ }));
51
+ }
52
+ }
53
+ exports.InMemoryCronAdapter = InMemoryCronAdapter;
@@ -0,0 +1,15 @@
1
+ import { type QueueMetrics } from '../../../queue-manager';
2
+ import type { Event, QueueConfig } from '../../../types';
3
+ import type { EventAdapter, SubscriptionHandle } from '../../interfaces/event-adapter.interface';
4
+ export declare class InMemoryQueueEventAdapter implements EventAdapter {
5
+ private queueManager;
6
+ private subscriptions;
7
+ emit<TData>(event: Event<TData>): Promise<void>;
8
+ subscribe<TData>(topic: string, stepName: string, handler: (event: Event<TData>) => void | Promise<void>, queueConfig?: QueueConfig): Promise<SubscriptionHandle>;
9
+ unsubscribe(handle: SubscriptionHandle): Promise<void>;
10
+ shutdown(): Promise<void>;
11
+ getSubscriptionCount(topic: string): Promise<number>;
12
+ listTopics(): Promise<string[]>;
13
+ getAllMetrics(): Record<string, QueueMetrics>;
14
+ }
15
+ //# sourceMappingURL=in-memory-queue-event-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory-queue-event-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/event/in-memory-queue-event-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAEhG,qBAAa,yBAA0B,YAAW,YAAY;IAC5D,OAAO,CAAC,YAAY,CAAmC;IACvD,OAAO,CAAC,aAAa,CACV;IAEL,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,SAAS,CAAC,KAAK,EACnB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACtD,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,kBAAkB,CAAC;IAmBxB,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpD,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIrC,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;CAG9C"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InMemoryQueueEventAdapter = void 0;
4
+ const uuid_1 = require("uuid");
5
+ const defaults_1 = require("../../../infrastructure-validator/defaults");
6
+ const queue_manager_1 = require("../../../queue-manager");
7
+ class InMemoryQueueEventAdapter {
8
+ constructor() {
9
+ this.queueManager = new queue_manager_1.QueueManager();
10
+ this.subscriptions = new Map();
11
+ }
12
+ async emit(event) {
13
+ await this.queueManager.enqueue(event.topic, event, event.messageGroupId);
14
+ }
15
+ async subscribe(topic, stepName, handler, queueConfig) {
16
+ const id = (0, uuid_1.v4)();
17
+ this.subscriptions.set(id, { topic, handler: handler });
18
+ const config = queueConfig || defaults_1.DEFAULT_QUEUE_CONFIG;
19
+ this.queueManager.subscribe(topic, handler, config, id);
20
+ const handle = {
21
+ topic,
22
+ id,
23
+ unsubscribe: async () => {
24
+ await this.unsubscribe(handle);
25
+ },
26
+ };
27
+ return handle;
28
+ }
29
+ async unsubscribe(handle) {
30
+ const subscription = this.subscriptions.get(handle.id);
31
+ if (subscription) {
32
+ this.queueManager.unsubscribe(handle.topic, subscription.handler);
33
+ this.subscriptions.delete(handle.id);
34
+ }
35
+ }
36
+ async shutdown() {
37
+ this.subscriptions.clear();
38
+ }
39
+ async getSubscriptionCount(topic) {
40
+ return Array.from(this.subscriptions.values()).filter((sub) => sub.topic === topic).length;
41
+ }
42
+ async listTopics() {
43
+ return Array.from(new Set(Array.from(this.subscriptions.values()).map((sub) => sub.topic)));
44
+ }
45
+ getAllMetrics() {
46
+ return this.queueManager.getAllMetrics();
47
+ }
48
+ }
49
+ exports.InMemoryQueueEventAdapter = InMemoryQueueEventAdapter;
@@ -0,0 +1,9 @@
1
+ export { InMemoryCronAdapter } from './cron/in-memory-cron-adapter';
2
+ export { InMemoryQueueEventAdapter } from './event/in-memory-queue-event-adapter';
3
+ export { type FileAdapterConfig as FileStateAdapterConfig, FileStateAdapter } from './state/file-state-adapter';
4
+ export { MemoryStateAdapter } from './state/memory-state-adapter';
5
+ export { type FileAdapterConfig as FileStreamAdapterConfig, FileStreamAdapter } from './stream/file-stream-adapter';
6
+ export { FileStreamAdapterManager } from './stream/file-stream-adapter-manager';
7
+ export { MemoryStreamAdapter } from './stream/memory-stream-adapter';
8
+ export { MemoryStreamAdapterManager } from './stream/memory-stream-adapter-manager';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/defaults/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAA;AAEjF,OAAO,EAAE,KAAK,iBAAiB,IAAI,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC/G,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,KAAK,iBAAiB,IAAI,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AACnH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAA"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryStreamAdapterManager = exports.MemoryStreamAdapter = exports.FileStreamAdapterManager = exports.FileStreamAdapter = exports.MemoryStateAdapter = exports.FileStateAdapter = exports.InMemoryQueueEventAdapter = exports.InMemoryCronAdapter = void 0;
4
+ var in_memory_cron_adapter_1 = require("./cron/in-memory-cron-adapter");
5
+ Object.defineProperty(exports, "InMemoryCronAdapter", { enumerable: true, get: function () { return in_memory_cron_adapter_1.InMemoryCronAdapter; } });
6
+ var in_memory_queue_event_adapter_1 = require("./event/in-memory-queue-event-adapter");
7
+ Object.defineProperty(exports, "InMemoryQueueEventAdapter", { enumerable: true, get: function () { return in_memory_queue_event_adapter_1.InMemoryQueueEventAdapter; } });
8
+ var file_state_adapter_1 = require("./state/file-state-adapter");
9
+ Object.defineProperty(exports, "FileStateAdapter", { enumerable: true, get: function () { return file_state_adapter_1.FileStateAdapter; } });
10
+ var memory_state_adapter_1 = require("./state/memory-state-adapter");
11
+ Object.defineProperty(exports, "MemoryStateAdapter", { enumerable: true, get: function () { return memory_state_adapter_1.MemoryStateAdapter; } });
12
+ var file_stream_adapter_1 = require("./stream/file-stream-adapter");
13
+ Object.defineProperty(exports, "FileStreamAdapter", { enumerable: true, get: function () { return file_stream_adapter_1.FileStreamAdapter; } });
14
+ var file_stream_adapter_manager_1 = require("./stream/file-stream-adapter-manager");
15
+ Object.defineProperty(exports, "FileStreamAdapterManager", { enumerable: true, get: function () { return file_stream_adapter_manager_1.FileStreamAdapterManager; } });
16
+ var memory_stream_adapter_1 = require("./stream/memory-stream-adapter");
17
+ Object.defineProperty(exports, "MemoryStreamAdapter", { enumerable: true, get: function () { return memory_stream_adapter_1.MemoryStreamAdapter; } });
18
+ var memory_stream_adapter_manager_1 = require("./stream/memory-stream-adapter-manager");
19
+ Object.defineProperty(exports, "MemoryStreamAdapterManager", { enumerable: true, get: function () { return memory_stream_adapter_manager_1.MemoryStreamAdapterManager; } });
@@ -1,4 +1,4 @@
1
- import type { StateAdapter, StateItem, StateItemsInput } from '../state-adapter';
1
+ import type { StateAdapter, StateItem, StateItemsInput } from '../../interfaces/state-adapter.interface';
2
2
  export type FileAdapterConfig = {
3
3
  adapter: 'default';
4
4
  filePath: string;
@@ -20,4 +20,4 @@ export declare class FileStateAdapter implements StateAdapter {
20
20
  private _readFile;
21
21
  private _writeFile;
22
22
  }
23
- //# sourceMappingURL=default-state-adapter.d.ts.map
23
+ //# sourceMappingURL=file-state-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-state-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/state/file-state-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAGxG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,qBAAa,gBAAiB,YAAW,YAAY;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;gBAErB,MAAM,EAAE,iBAAiB;IAKrC,IAAI;IAeE,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAQ1C,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAOvD,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAW7C,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAa1D,KAAK,CAAC,OAAO,EAAE,MAAM;IAarB,IAAI,CAAC,OAAO,EAAE,MAAM;IAOpB,QAAQ;IASR,OAAO;IAEP,KAAK,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAczD,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,UAAU;CAQnB"}
@@ -110,9 +110,7 @@ class FileStateAdapter {
110
110
  Object.keys(data).forEach((key) => traceIds.add(key.split(':')[0]));
111
111
  return Array.from(traceIds);
112
112
  }
113
- async cleanup() {
114
- // No cleanup needed for file system
115
- }
113
+ async cleanup() { }
116
114
  async items(input) {
117
115
  const data = this._readFile();
118
116
  return Object.entries(data)
@@ -1,4 +1,4 @@
1
- import type { StateAdapter, StateItem, StateItemsInput } from '../state-adapter';
1
+ import type { StateAdapter, StateItem, StateItemsInput } from '../../interfaces/state-adapter.interface';
2
2
  export declare class MemoryStateAdapter implements StateAdapter {
3
3
  private state;
4
4
  constructor();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-state-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/state/memory-state-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAGxG,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,KAAK,CAA8B;;IAMrC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAM1C,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAMvD,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAQ7C,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAW1D,KAAK,CAAC,OAAO,EAAE,MAAM;IAUrB,IAAI,CAAC,OAAO,EAAE,MAAM;IAMpB,QAAQ;IAQR,KAAK,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAenD,OAAO;IAEb,OAAO,CAAC,QAAQ;CAGjB"}
@@ -61,9 +61,7 @@ class MemoryStateAdapter {
61
61
  .filter((item) => (input.groupId ? item.groupId === input.groupId : true))
62
62
  .filter((item) => (input.filter ? (0, utils_1.filterItem)(item, input.filter) : true));
63
63
  }
64
- async cleanup() {
65
- // No cleanup needed for memory
66
- }
64
+ async cleanup() { }
67
65
  _makeKey(traceId, key) {
68
66
  return `${traceId}:${key}`;
69
67
  }
@@ -1,4 +1,4 @@
1
- import type { StateFilter, StateItem } from '../state-adapter';
1
+ import type { StateFilter, StateItem } from '../../interfaces/state-adapter.interface';
2
2
  export declare const inferType: (value: unknown) => StateItem["type"];
3
3
  export declare const filterItem: (item: StateItem, filters: StateFilter[]) => boolean;
4
4
  //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/state/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAA;AAUtF,eAAO,MAAM,SAAS,GAAI,OAAO,OAAO,KAAG,SAAS,CAAC,MAAM,CAa1D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,MAAM,SAAS,EAAE,SAAS,WAAW,EAAE,KAAG,OAuCpE,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { StreamAdapter } from '../../interfaces/stream-adapter.interface';
2
+ import type { StreamAdapterManager } from '../../interfaces/stream-adapter-manager.interface';
3
+ export declare class FileStreamAdapterManager implements StreamAdapterManager {
4
+ private readonly baseDir;
5
+ private readonly motiaFileStoragePath;
6
+ constructor(baseDir: string, motiaFileStoragePath?: string);
7
+ createStream<TData>(streamName: string): StreamAdapter<TData>;
8
+ }
9
+ //# sourceMappingURL=file-stream-adapter-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-stream-adapter-manager.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/stream/file-stream-adapter-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAC9E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAA;AAG7F,qBAAa,wBAAyB,YAAW,oBAAoB;IAEjE,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBADpB,OAAO,EAAE,MAAM,EACf,oBAAoB,GAAE,MAAiB;IAG1D,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC;CAG9D"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FileStreamAdapterManager = void 0;
4
+ const file_stream_adapter_1 = require("./file-stream-adapter");
5
+ class FileStreamAdapterManager {
6
+ constructor(baseDir, motiaFileStoragePath = '.motia') {
7
+ this.baseDir = baseDir;
8
+ this.motiaFileStoragePath = motiaFileStoragePath;
9
+ }
10
+ createStream(streamName) {
11
+ return new file_stream_adapter_1.FileStreamAdapter(this.baseDir, streamName, this.motiaFileStoragePath);
12
+ }
13
+ }
14
+ exports.FileStreamAdapterManager = FileStreamAdapterManager;
@@ -1,5 +1,5 @@
1
- import type { BaseStreamItem } from '../../types-stream';
2
- import { StreamAdapter } from './stream-adapter';
1
+ import type { BaseStreamItem } from '../../../types-stream';
2
+ import { StreamAdapter } from '../../interfaces/stream-adapter.interface';
3
3
  export type FileAdapterConfig = {
4
4
  filePath: string;
5
5
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-stream-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/stream/file-stream-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAEzE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,qBAAa,iBAAiB,CAAC,KAAK,CAAE,SAAQ,aAAa,CAAC,KAAK,CAAC;IAChE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;gBAEvB,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAE,MAAiB;IAMzF,IAAI;IAcE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;IAS3D,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAOxE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK;;;IAW7C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAa1E,KAAK,CAAC,OAAO,EAAE,MAAM;IAa3B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAI9C,SAAS,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAU7C,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO;CAQnC"}
@@ -39,10 +39,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.FileStreamAdapter = void 0;
40
40
  const fs_1 = __importDefault(require("fs"));
41
41
  const path = __importStar(require("path"));
42
- const stream_adapter_1 = require("./stream-adapter");
43
- class FileStreamAdapter extends stream_adapter_1.StreamAdapter {
42
+ const stream_adapter_interface_1 = require("../../interfaces/stream-adapter.interface");
43
+ class FileStreamAdapter extends stream_adapter_interface_1.StreamAdapter {
44
44
  constructor(filePath, streamName, motiaFileStoragePath = '.motia') {
45
- super();
45
+ super(streamName);
46
46
  this.streamsDir = path.join(filePath, motiaFileStoragePath, 'streams');
47
47
  this.filePath = path.join(this.streamsDir, `${streamName}.stream.json`);
48
48
  }
@@ -62,8 +62,9 @@ class FileStreamAdapter extends stream_adapter_1.StreamAdapter {
62
62
  }
63
63
  async getGroup(groupId) {
64
64
  const data = this._readFile();
65
+ const prefix = this._makeKey(groupId, '');
65
66
  return Object.entries(data)
66
- .filter(([key]) => key.startsWith(groupId))
67
+ .filter(([key]) => key.startsWith(prefix))
67
68
  .map(([, value]) => JSON.parse(value));
68
69
  }
69
70
  async get(groupId, key) {
@@ -0,0 +1,5 @@
1
+ export { FileStreamAdapter } from './file-stream-adapter';
2
+ export { FileStreamAdapterManager } from './file-stream-adapter-manager';
3
+ export { MemoryStreamAdapter } from './memory-stream-adapter';
4
+ export { MemoryStreamAdapterManager } from './memory-stream-adapter-manager';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/stream/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryStreamAdapterManager = exports.MemoryStreamAdapter = exports.FileStreamAdapterManager = exports.FileStreamAdapter = void 0;
4
+ var file_stream_adapter_1 = require("./file-stream-adapter");
5
+ Object.defineProperty(exports, "FileStreamAdapter", { enumerable: true, get: function () { return file_stream_adapter_1.FileStreamAdapter; } });
6
+ var file_stream_adapter_manager_1 = require("./file-stream-adapter-manager");
7
+ Object.defineProperty(exports, "FileStreamAdapterManager", { enumerable: true, get: function () { return file_stream_adapter_manager_1.FileStreamAdapterManager; } });
8
+ var memory_stream_adapter_1 = require("./memory-stream-adapter");
9
+ Object.defineProperty(exports, "MemoryStreamAdapter", { enumerable: true, get: function () { return memory_stream_adapter_1.MemoryStreamAdapter; } });
10
+ var memory_stream_adapter_manager_1 = require("./memory-stream-adapter-manager");
11
+ Object.defineProperty(exports, "MemoryStreamAdapterManager", { enumerable: true, get: function () { return memory_stream_adapter_manager_1.MemoryStreamAdapterManager; } });
@@ -0,0 +1,6 @@
1
+ import type { StreamAdapter } from '../../interfaces/stream-adapter.interface';
2
+ import type { StreamAdapterManager } from '../../interfaces/stream-adapter-manager.interface';
3
+ export declare class MemoryStreamAdapterManager implements StreamAdapterManager {
4
+ createStream<TData>(streamName: string): StreamAdapter<TData>;
5
+ }
6
+ //# sourceMappingURL=memory-stream-adapter-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-stream-adapter-manager.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/stream/memory-stream-adapter-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAC9E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAA;AAG7F,qBAAa,0BAA2B,YAAW,oBAAoB;IACrE,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC;CAG9D"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryStreamAdapterManager = void 0;
4
+ const memory_stream_adapter_1 = require("./memory-stream-adapter");
5
+ class MemoryStreamAdapterManager {
6
+ createStream(streamName) {
7
+ return new memory_stream_adapter_1.MemoryStreamAdapter(streamName);
8
+ }
9
+ }
10
+ exports.MemoryStreamAdapterManager = MemoryStreamAdapterManager;
@@ -1,6 +1,7 @@
1
- import { StreamAdapter } from './stream-adapter';
1
+ import { StreamAdapter } from '../../interfaces/stream-adapter.interface';
2
2
  export declare class MemoryStreamAdapter<TData> extends StreamAdapter<TData> {
3
3
  private state;
4
+ constructor(streamName: string);
4
5
  init(): Promise<void>;
5
6
  getGroup<T>(groupId: string): Promise<T[]>;
6
7
  get<T>(groupId: string, id: string): Promise<T | null>;
@@ -8,6 +9,8 @@ export declare class MemoryStreamAdapter<TData> extends StreamAdapter<TData> {
8
9
  id: string;
9
10
  }>;
10
11
  delete<T>(groupId: string, id: string): Promise<T | null>;
12
+ clear(groupId: string): Promise<void>;
13
+ private _makeKeyPrefix;
11
14
  private _makeKey;
12
15
  }
13
16
  //# sourceMappingURL=memory-stream-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-stream-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/defaults/stream/memory-stream-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAEzE,qBAAa,mBAAmB,CAAC,KAAK,CAAE,SAAQ,aAAa,CAAC,KAAK,CAAC;IAClE,OAAO,CAAC,KAAK,CAA8B;gBAE/B,UAAU,EAAE,MAAM;IAIxB,IAAI;IAIJ,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAU1C,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAOtD,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;;;IAQ5C,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAWzD,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3C,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,QAAQ;CAGjB"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryStreamAdapter = void 0;
4
+ const stream_adapter_interface_1 = require("../../interfaces/stream-adapter.interface");
5
+ class MemoryStreamAdapter extends stream_adapter_interface_1.StreamAdapter {
6
+ constructor(streamName) {
7
+ super(streamName);
8
+ this.state = {};
9
+ }
10
+ async init() {
11
+ this.state = {};
12
+ }
13
+ async getGroup(groupId) {
14
+ const prefix = this._makeKeyPrefix(groupId);
15
+ return Object.entries(this.state)
16
+ .filter(([key]) => key.startsWith(prefix))
17
+ .map(([key, value]) => {
18
+ const id = key.split(':').pop();
19
+ return { ...value, id };
20
+ });
21
+ }
22
+ async get(groupId, id) {
23
+ const key = this._makeKey(groupId, id);
24
+ const value = this.state[key];
25
+ return value ? { ...value, id } : null;
26
+ }
27
+ async set(groupId, id, value) {
28
+ const key = this._makeKey(groupId, id);
29
+ this.state[key] = value;
30
+ return { ...value, id };
31
+ }
32
+ async delete(groupId, id) {
33
+ const key = this._makeKey(groupId, id);
34
+ const value = await this.get(groupId, id);
35
+ if (value) {
36
+ delete this.state[key];
37
+ }
38
+ return value;
39
+ }
40
+ async clear(groupId) {
41
+ const prefix = this._makeKeyPrefix(groupId);
42
+ for (const key in this.state) {
43
+ if (key.startsWith(prefix)) {
44
+ delete this.state[key];
45
+ }
46
+ }
47
+ }
48
+ _makeKeyPrefix(groupId) {
49
+ return `${this.streamName}:${groupId}`;
50
+ }
51
+ _makeKey(groupId, id) {
52
+ return `${this.streamName}:${groupId}:${id}`;
53
+ }
54
+ }
55
+ exports.MemoryStreamAdapter = MemoryStreamAdapter;
@@ -0,0 +1,29 @@
1
+ export interface CronLock {
2
+ jobName: string;
3
+ lockId: string;
4
+ acquiredAt: number;
5
+ expiresAt: number;
6
+ instanceId: string;
7
+ }
8
+ export interface CronLockInfo {
9
+ jobName: string;
10
+ instanceId: string;
11
+ acquiredAt: number;
12
+ expiresAt: number;
13
+ }
14
+ export interface CronAdapterConfig {
15
+ lockTTL?: number;
16
+ lockRetryDelay?: number;
17
+ lockRetryAttempts?: number;
18
+ instanceId?: string;
19
+ enableHealthCheck?: boolean;
20
+ }
21
+ export interface CronAdapter {
22
+ acquireLock(jobName: string, ttl: number): Promise<CronLock | null>;
23
+ releaseLock(lock: CronLock): Promise<void>;
24
+ renewLock(lock: CronLock, ttl: number): Promise<boolean>;
25
+ isHealthy(): Promise<boolean>;
26
+ shutdown(): Promise<void>;
27
+ getActiveLocks(): Promise<CronLockInfo[]>;
28
+ }
29
+ //# sourceMappingURL=cron-adapter.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron-adapter.interface.d.ts","sourceRoot":"","sources":["../../../../src/adapters/interfaces/cron-adapter.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAA;IAEnE,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE1C,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAExD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAE7B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,cAAc,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;CAC1C"}
@@ -0,0 +1,15 @@
1
+ import type { Event, QueueConfig } from '../../types';
2
+ export interface SubscriptionHandle {
3
+ topic: string;
4
+ id: string;
5
+ unsubscribe: () => Promise<void>;
6
+ }
7
+ export interface EventAdapter {
8
+ emit<TData>(event: Event<TData>): Promise<void>;
9
+ subscribe<TData>(topic: string, stepName: string, handler: (event: Event<TData>) => void | Promise<void>, options?: QueueConfig): Promise<SubscriptionHandle>;
10
+ unsubscribe(handle: SubscriptionHandle): Promise<void>;
11
+ shutdown(): Promise<void>;
12
+ getSubscriptionCount(topic: string): Promise<number>;
13
+ listTopics(): Promise<string[]>;
14
+ }
15
+ //# sourceMappingURL=event-adapter.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-adapter.interface.d.ts","sourceRoot":"","sources":["../../../../src/adapters/interfaces/event-adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAErD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/C,SAAS,CAAC,KAAK,EACb,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACtD,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAE9B,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEpD,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;CAChC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ export type { CronAdapter, CronAdapterConfig, CronLock, CronLockInfo } from './cron-adapter.interface';
2
+ export type { EventAdapter, SubscriptionHandle } from './event-adapter.interface';
3
+ export type { Metric, ObservabilityAdapter, Tracer } from './observability-adapter.interface';
4
+ export type { StateAdapter, StateFilter, StateItem, StateItemsInput } from './state-adapter.interface';
5
+ export { StreamAdapter, type StreamQueryFilter } from './stream-adapter.interface';
6
+ export type { StreamAdapterManager } from './stream-adapter-manager.interface';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/interfaces/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACtG,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACjF,YAAY,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAA;AAC7F,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAClF,YAAY,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StreamAdapter = void 0;
4
+ var stream_adapter_interface_1 = require("./stream-adapter.interface");
5
+ Object.defineProperty(exports, "StreamAdapter", { enumerable: true, get: function () { return stream_adapter_interface_1.StreamAdapter; } });