@revealui/mcp 0.1.0 → 0.1.3

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 (293) hide show
  1. package/LICENSE +22 -0
  2. package/LICENSE.commercial +111 -0
  3. package/README.md +3 -0
  4. package/dist/{packages/mcp/src/adapters → adapters}/db.d.ts +1 -1
  5. package/dist/adapters/db.d.ts.map +1 -0
  6. package/dist/adapters/db.js.map +1 -0
  7. package/dist/config/index.d.ts.map +1 -0
  8. package/dist/config/index.js.map +1 -0
  9. package/dist/contracts.d.ts.map +1 -0
  10. package/dist/contracts.js.map +1 -0
  11. package/dist/{packages/mcp/src/hypervisor.d.ts → hypervisor.d.ts} +56 -0
  12. package/dist/hypervisor.d.ts.map +1 -0
  13. package/dist/{packages/mcp/src/hypervisor.js → hypervisor.js} +209 -1
  14. package/dist/hypervisor.js.map +1 -0
  15. package/dist/{packages/mcp/src/index.d.ts → index.d.ts} +9 -5
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/{packages/mcp/src/index.js → index.js} +8 -4
  18. package/dist/index.js.map +1 -0
  19. package/dist/{packages/mcp/src/servers → servers}/adapter.d.ts +11 -1
  20. package/dist/servers/adapter.d.ts.map +1 -0
  21. package/dist/{packages/mcp/src/servers → servers}/adapter.js +20 -4
  22. package/dist/servers/adapter.js.map +1 -0
  23. package/dist/servers/revealui-content.d.ts +21 -0
  24. package/dist/servers/revealui-content.d.ts.map +1 -0
  25. package/dist/servers/revealui-content.js +211 -0
  26. package/dist/servers/revealui-content.js.map +1 -0
  27. package/dist/servers/revealui-email.d.ts +18 -0
  28. package/dist/servers/revealui-email.d.ts.map +1 -0
  29. package/dist/servers/revealui-email.js +190 -0
  30. package/dist/servers/revealui-email.js.map +1 -0
  31. package/dist/servers/revealui-stripe.d.ts +19 -0
  32. package/dist/servers/revealui-stripe.d.ts.map +1 -0
  33. package/dist/servers/revealui-stripe.js +228 -0
  34. package/dist/servers/revealui-stripe.js.map +1 -0
  35. package/package.json +50 -11
  36. package/.env.example +0 -9
  37. package/MCP_MAINTENANCE.md +0 -265
  38. package/__tests__/crdt.integration.test.ts +0 -156
  39. package/configs/README.md +0 -77
  40. package/configs/claude-template.json +0 -54
  41. package/dist/packages/core/src/database/ssl-config.d.ts +0 -9
  42. package/dist/packages/core/src/database/ssl-config.d.ts.map +0 -1
  43. package/dist/packages/core/src/database/ssl-config.js +0 -8
  44. package/dist/packages/core/src/database/ssl-config.js.map +0 -1
  45. package/dist/packages/core/src/features.d.ts +0 -86
  46. package/dist/packages/core/src/features.d.ts.map +0 -1
  47. package/dist/packages/core/src/features.js +0 -93
  48. package/dist/packages/core/src/features.js.map +0 -1
  49. package/dist/packages/core/src/license.d.ts +0 -75
  50. package/dist/packages/core/src/license.d.ts.map +0 -1
  51. package/dist/packages/core/src/license.js +0 -174
  52. package/dist/packages/core/src/license.js.map +0 -1
  53. package/dist/packages/core/src/monitoring/alerts.d.ts +0 -118
  54. package/dist/packages/core/src/monitoring/alerts.d.ts.map +0 -1
  55. package/dist/packages/core/src/monitoring/alerts.js +0 -325
  56. package/dist/packages/core/src/monitoring/alerts.js.map +0 -1
  57. package/dist/packages/core/src/monitoring/cleanup-manager.d.ts +0 -71
  58. package/dist/packages/core/src/monitoring/cleanup-manager.d.ts.map +0 -1
  59. package/dist/packages/core/src/monitoring/cleanup-manager.js +0 -227
  60. package/dist/packages/core/src/monitoring/cleanup-manager.js.map +0 -1
  61. package/dist/packages/core/src/monitoring/health-monitor.d.ts +0 -22
  62. package/dist/packages/core/src/monitoring/health-monitor.d.ts.map +0 -1
  63. package/dist/packages/core/src/monitoring/health-monitor.js +0 -143
  64. package/dist/packages/core/src/monitoring/health-monitor.js.map +0 -1
  65. package/dist/packages/core/src/monitoring/index.d.ts +0 -14
  66. package/dist/packages/core/src/monitoring/index.d.ts.map +0 -1
  67. package/dist/packages/core/src/monitoring/index.js +0 -18
  68. package/dist/packages/core/src/monitoring/index.js.map +0 -1
  69. package/dist/packages/core/src/monitoring/process-registry.d.ts +0 -97
  70. package/dist/packages/core/src/monitoring/process-registry.d.ts.map +0 -1
  71. package/dist/packages/core/src/monitoring/process-registry.js +0 -223
  72. package/dist/packages/core/src/monitoring/process-registry.js.map +0 -1
  73. package/dist/packages/core/src/monitoring/types.d.ts +0 -231
  74. package/dist/packages/core/src/monitoring/types.d.ts.map +0 -1
  75. package/dist/packages/core/src/monitoring/types.js +0 -43
  76. package/dist/packages/core/src/monitoring/types.js.map +0 -1
  77. package/dist/packages/core/src/monitoring/zombie-detector.d.ts +0 -81
  78. package/dist/packages/core/src/monitoring/zombie-detector.d.ts.map +0 -1
  79. package/dist/packages/core/src/monitoring/zombie-detector.js +0 -232
  80. package/dist/packages/core/src/monitoring/zombie-detector.js.map +0 -1
  81. package/dist/packages/core/src/observability/logger.d.ts +0 -47
  82. package/dist/packages/core/src/observability/logger.d.ts.map +0 -1
  83. package/dist/packages/core/src/observability/logger.js +0 -141
  84. package/dist/packages/core/src/observability/logger.js.map +0 -1
  85. package/dist/packages/core/src/utils/logger-server.d.ts +0 -32
  86. package/dist/packages/core/src/utils/logger-server.d.ts.map +0 -1
  87. package/dist/packages/core/src/utils/logger-server.js +0 -69
  88. package/dist/packages/core/src/utils/logger-server.js.map +0 -1
  89. package/dist/packages/core/src/utils/request-context.d.ts +0 -143
  90. package/dist/packages/core/src/utils/request-context.d.ts.map +0 -1
  91. package/dist/packages/core/src/utils/request-context.js +0 -169
  92. package/dist/packages/core/src/utils/request-context.js.map +0 -1
  93. package/dist/packages/dev/src/code-validator/index.d.ts +0 -20
  94. package/dist/packages/dev/src/code-validator/index.d.ts.map +0 -1
  95. package/dist/packages/dev/src/code-validator/index.js +0 -20
  96. package/dist/packages/dev/src/code-validator/index.js.map +0 -1
  97. package/dist/packages/dev/src/code-validator/types.d.ts +0 -67
  98. package/dist/packages/dev/src/code-validator/types.d.ts.map +0 -1
  99. package/dist/packages/dev/src/code-validator/types.js +0 -7
  100. package/dist/packages/dev/src/code-validator/types.js.map +0 -1
  101. package/dist/packages/dev/src/code-validator/validator.d.ts +0 -48
  102. package/dist/packages/dev/src/code-validator/validator.d.ts.map +0 -1
  103. package/dist/packages/dev/src/code-validator/validator.js +0 -176
  104. package/dist/packages/dev/src/code-validator/validator.js.map +0 -1
  105. package/dist/packages/mcp/src/adapters/db.d.ts.map +0 -1
  106. package/dist/packages/mcp/src/adapters/db.js.map +0 -1
  107. package/dist/packages/mcp/src/config/index.d.ts.map +0 -1
  108. package/dist/packages/mcp/src/config/index.js.map +0 -1
  109. package/dist/packages/mcp/src/contracts.d.ts.map +0 -1
  110. package/dist/packages/mcp/src/contracts.js.map +0 -1
  111. package/dist/packages/mcp/src/hypervisor.d.ts.map +0 -1
  112. package/dist/packages/mcp/src/hypervisor.js.map +0 -1
  113. package/dist/packages/mcp/src/index.d.ts.map +0 -1
  114. package/dist/packages/mcp/src/index.js.map +0 -1
  115. package/dist/packages/mcp/src/servers/adapter.d.ts.map +0 -1
  116. package/dist/packages/mcp/src/servers/adapter.js.map +0 -1
  117. package/dist/packages/mcp/src/servers/code-validator.d.ts +0 -24
  118. package/dist/packages/mcp/src/servers/code-validator.d.ts.map +0 -1
  119. package/dist/packages/mcp/src/servers/code-validator.js +0 -156
  120. package/dist/packages/mcp/src/servers/code-validator.js.map +0 -1
  121. package/dist/packages/mcp/src/servers/neon.d.ts +0 -11
  122. package/dist/packages/mcp/src/servers/neon.d.ts.map +0 -1
  123. package/dist/packages/mcp/src/servers/neon.js +0 -90
  124. package/dist/packages/mcp/src/servers/neon.js.map +0 -1
  125. package/dist/packages/mcp/src/servers/next-devtools.d.ts +0 -11
  126. package/dist/packages/mcp/src/servers/next-devtools.d.ts.map +0 -1
  127. package/dist/packages/mcp/src/servers/next-devtools.js +0 -215
  128. package/dist/packages/mcp/src/servers/next-devtools.js.map +0 -1
  129. package/dist/packages/mcp/src/servers/playwright.d.ts +0 -11
  130. package/dist/packages/mcp/src/servers/playwright.d.ts.map +0 -1
  131. package/dist/packages/mcp/src/servers/playwright.js +0 -68
  132. package/dist/packages/mcp/src/servers/playwright.js.map +0 -1
  133. package/dist/packages/mcp/src/servers/stripe.d.ts +0 -11
  134. package/dist/packages/mcp/src/servers/stripe.d.ts.map +0 -1
  135. package/dist/packages/mcp/src/servers/stripe.js +0 -86
  136. package/dist/packages/mcp/src/servers/stripe.js.map +0 -1
  137. package/dist/packages/mcp/src/servers/supabase.d.ts +0 -11
  138. package/dist/packages/mcp/src/servers/supabase.d.ts.map +0 -1
  139. package/dist/packages/mcp/src/servers/supabase.js +0 -144
  140. package/dist/packages/mcp/src/servers/supabase.js.map +0 -1
  141. package/dist/packages/mcp/src/servers/vercel.d.ts +0 -11
  142. package/dist/packages/mcp/src/servers/vercel.d.ts.map +0 -1
  143. package/dist/packages/mcp/src/servers/vercel.js +0 -87
  144. package/dist/packages/mcp/src/servers/vercel.js.map +0 -1
  145. package/dist/packages/mcp/src/servers/vultr-test.d.ts +0 -3
  146. package/dist/packages/mcp/src/servers/vultr-test.d.ts.map +0 -1
  147. package/dist/packages/mcp/src/servers/vultr-test.js +0 -82
  148. package/dist/packages/mcp/src/servers/vultr-test.js.map +0 -1
  149. package/dist/scripts/lib/analyzers/console-analyzer.d.ts +0 -188
  150. package/dist/scripts/lib/analyzers/console-analyzer.d.ts.map +0 -1
  151. package/dist/scripts/lib/analyzers/console-analyzer.js +0 -432
  152. package/dist/scripts/lib/analyzers/console-analyzer.js.map +0 -1
  153. package/dist/scripts/lib/analyzers/index.d.ts +0 -11
  154. package/dist/scripts/lib/analyzers/index.d.ts.map +0 -1
  155. package/dist/scripts/lib/analyzers/index.js +0 -11
  156. package/dist/scripts/lib/analyzers/index.js.map +0 -1
  157. package/dist/scripts/lib/args.d.ts +0 -104
  158. package/dist/scripts/lib/args.d.ts.map +0 -1
  159. package/dist/scripts/lib/args.js +0 -304
  160. package/dist/scripts/lib/args.js.map +0 -1
  161. package/dist/scripts/lib/cache.d.ts +0 -185
  162. package/dist/scripts/lib/cache.d.ts.map +0 -1
  163. package/dist/scripts/lib/cache.js +0 -390
  164. package/dist/scripts/lib/cache.js.map +0 -1
  165. package/dist/scripts/lib/cli/dispatch.d.ts +0 -116
  166. package/dist/scripts/lib/cli/dispatch.d.ts.map +0 -1
  167. package/dist/scripts/lib/cli/dispatch.js +0 -206
  168. package/dist/scripts/lib/cli/dispatch.js.map +0 -1
  169. package/dist/scripts/lib/cli/index.d.ts +0 -10
  170. package/dist/scripts/lib/cli/index.d.ts.map +0 -1
  171. package/dist/scripts/lib/cli/index.js +0 -10
  172. package/dist/scripts/lib/cli/index.js.map +0 -1
  173. package/dist/scripts/lib/database/ssl-config.d.ts +0 -26
  174. package/dist/scripts/lib/database/ssl-config.d.ts.map +0 -1
  175. package/dist/scripts/lib/database/ssl-config.js +0 -47
  176. package/dist/scripts/lib/database/ssl-config.js.map +0 -1
  177. package/dist/scripts/lib/errors.d.ts +0 -218
  178. package/dist/scripts/lib/errors.d.ts.map +0 -1
  179. package/dist/scripts/lib/errors.js +0 -543
  180. package/dist/scripts/lib/errors.js.map +0 -1
  181. package/dist/scripts/lib/exec.d.ts +0 -107
  182. package/dist/scripts/lib/exec.d.ts.map +0 -1
  183. package/dist/scripts/lib/exec.js +0 -232
  184. package/dist/scripts/lib/exec.js.map +0 -1
  185. package/dist/scripts/lib/index.d.ts +0 -50
  186. package/dist/scripts/lib/index.d.ts.map +0 -1
  187. package/dist/scripts/lib/index.js +0 -65
  188. package/dist/scripts/lib/index.js.map +0 -1
  189. package/dist/scripts/lib/logger.d.ts +0 -50
  190. package/dist/scripts/lib/logger.d.ts.map +0 -1
  191. package/dist/scripts/lib/logger.js +0 -159
  192. package/dist/scripts/lib/logger.js.map +0 -1
  193. package/dist/scripts/lib/output.d.ts +0 -149
  194. package/dist/scripts/lib/output.d.ts.map +0 -1
  195. package/dist/scripts/lib/output.js +0 -263
  196. package/dist/scripts/lib/output.js.map +0 -1
  197. package/dist/scripts/lib/parallel.d.ts +0 -164
  198. package/dist/scripts/lib/parallel.d.ts.map +0 -1
  199. package/dist/scripts/lib/parallel.js +0 -355
  200. package/dist/scripts/lib/parallel.js.map +0 -1
  201. package/dist/scripts/lib/paths.d.ts +0 -92
  202. package/dist/scripts/lib/paths.d.ts.map +0 -1
  203. package/dist/scripts/lib/paths.js +0 -171
  204. package/dist/scripts/lib/paths.js.map +0 -1
  205. package/dist/scripts/lib/state/adapters/memory.d.ts +0 -42
  206. package/dist/scripts/lib/state/adapters/memory.d.ts.map +0 -1
  207. package/dist/scripts/lib/state/adapters/memory.js +0 -110
  208. package/dist/scripts/lib/state/adapters/memory.js.map +0 -1
  209. package/dist/scripts/lib/state/adapters/pglite.d.ts +0 -46
  210. package/dist/scripts/lib/state/adapters/pglite.d.ts.map +0 -1
  211. package/dist/scripts/lib/state/adapters/pglite.js +0 -256
  212. package/dist/scripts/lib/state/adapters/pglite.js.map +0 -1
  213. package/dist/scripts/lib/state/index.d.ts +0 -16
  214. package/dist/scripts/lib/state/index.d.ts.map +0 -1
  215. package/dist/scripts/lib/state/index.js +0 -16
  216. package/dist/scripts/lib/state/index.js.map +0 -1
  217. package/dist/scripts/lib/state/types.d.ts +0 -111
  218. package/dist/scripts/lib/state/types.d.ts.map +0 -1
  219. package/dist/scripts/lib/state/types.js +0 -8
  220. package/dist/scripts/lib/state/types.js.map +0 -1
  221. package/dist/scripts/lib/state/workflow-state.d.ts +0 -110
  222. package/dist/scripts/lib/state/workflow-state.d.ts.map +0 -1
  223. package/dist/scripts/lib/state/workflow-state.js +0 -331
  224. package/dist/scripts/lib/state/workflow-state.js.map +0 -1
  225. package/dist/scripts/lib/telemetry.d.ts +0 -194
  226. package/dist/scripts/lib/telemetry.d.ts.map +0 -1
  227. package/dist/scripts/lib/telemetry.js +0 -394
  228. package/dist/scripts/lib/telemetry.js.map +0 -1
  229. package/dist/scripts/lib/utils.d.ts +0 -270
  230. package/dist/scripts/lib/utils.d.ts.map +0 -1
  231. package/dist/scripts/lib/utils.js +0 -473
  232. package/dist/scripts/lib/utils.js.map +0 -1
  233. package/dist/scripts/lib/validation/database.d.ts +0 -83
  234. package/dist/scripts/lib/validation/database.d.ts.map +0 -1
  235. package/dist/scripts/lib/validation/database.js +0 -199
  236. package/dist/scripts/lib/validation/database.js.map +0 -1
  237. package/dist/scripts/lib/validation/env.d.ts +0 -80
  238. package/dist/scripts/lib/validation/env.d.ts.map +0 -1
  239. package/dist/scripts/lib/validation/env.js +0 -246
  240. package/dist/scripts/lib/validation/env.js.map +0 -1
  241. package/dist/scripts/lib/validation/index.d.ts +0 -16
  242. package/dist/scripts/lib/validation/index.d.ts.map +0 -1
  243. package/dist/scripts/lib/validation/index.js +0 -16
  244. package/dist/scripts/lib/validation/index.js.map +0 -1
  245. package/dist/scripts/lib/validation/post-execution.d.ts +0 -74
  246. package/dist/scripts/lib/validation/post-execution.d.ts.map +0 -1
  247. package/dist/scripts/lib/validation/post-execution.js +0 -110
  248. package/dist/scripts/lib/validation/post-execution.js.map +0 -1
  249. package/dist/scripts/lib/validation/pre-execution.d.ts +0 -165
  250. package/dist/scripts/lib/validation/pre-execution.d.ts.map +0 -1
  251. package/dist/scripts/lib/validation/pre-execution.js +0 -466
  252. package/dist/scripts/lib/validation/pre-execution.js.map +0 -1
  253. package/dist/scripts/lib/validators/documentation-validator.d.ts +0 -242
  254. package/dist/scripts/lib/validators/documentation-validator.d.ts.map +0 -1
  255. package/dist/scripts/lib/validators/documentation-validator.js +0 -584
  256. package/dist/scripts/lib/validators/documentation-validator.js.map +0 -1
  257. package/dist/scripts/lib/validators/index.d.ts +0 -11
  258. package/dist/scripts/lib/validators/index.d.ts.map +0 -1
  259. package/dist/scripts/lib/validators/index.js +0 -11
  260. package/dist/scripts/lib/validators/index.js.map +0 -1
  261. package/docker-compose.yml +0 -46
  262. package/docs/INDEX.md +0 -88
  263. package/docs/README.md +0 -774
  264. package/docs/SETUP.md +0 -264
  265. package/docs/servers/code-validator.md +0 -586
  266. package/eslint.config.js +0 -7
  267. package/migrations/0001_add_crdt_columns.sql +0 -8
  268. package/migrations/0001_rollback.sql +0 -6
  269. package/migrations/005_performance_indexes.sql +0 -190
  270. package/migrations/backfill_crdt_meta.js +0 -45
  271. package/src/__tests__/hypervisor.test.ts +0 -212
  272. package/src/adapters/db.ts +0 -180
  273. package/src/config/config.json +0 -49
  274. package/src/config/index.ts +0 -30
  275. package/src/contracts.ts +0 -221
  276. package/src/hypervisor.ts +0 -464
  277. package/src/index.ts +0 -87
  278. package/src/servers/adapter.ts +0 -643
  279. package/src/servers/code-validator.ts +0 -188
  280. package/src/servers/neon.ts +0 -103
  281. package/src/servers/next-devtools.ts +0 -230
  282. package/src/servers/playwright.ts +0 -77
  283. package/src/servers/stripe.ts +0 -99
  284. package/src/servers/supabase.ts +0 -161
  285. package/src/servers/vercel.ts +0 -100
  286. package/src/servers/vultr-test.ts +0 -97
  287. package/tsconfig.json +0 -12
  288. package/vitest.config.ts +0 -22
  289. /package/dist/{packages/mcp/src/adapters → adapters}/db.js +0 -0
  290. /package/dist/{packages/mcp/src/config → config}/index.d.ts +0 -0
  291. /package/dist/{packages/mcp/src/config → config}/index.js +0 -0
  292. /package/dist/{packages/mcp/src/contracts.d.ts → contracts.d.ts} +0 -0
  293. /package/dist/{packages/mcp/src/contracts.js → contracts.js} +0 -0
@@ -1,42 +0,0 @@
1
- /**
2
- * In-Memory State Adapter
3
- *
4
- * Provides a simple in-memory implementation for testing and development.
5
- * State is lost when the process exits.
6
- *
7
- * @dependencies
8
- * - scripts/lib/errors.ts - ErrorCode and ScriptError for validation
9
- * - scripts/lib/state/types.ts - State management type definitions
10
- */
11
- import type { ApprovalRequest, ApprovalStatus, StateAdapter, WorkflowState, WorkflowStatus } from '../types.js';
12
- export declare class MemoryStateAdapter implements StateAdapter {
13
- private workflows;
14
- private approvals;
15
- initialize(): Promise<void>;
16
- close(): Promise<void>;
17
- saveWorkflow(workflow: WorkflowState): Promise<void>;
18
- loadWorkflow(id: string): Promise<WorkflowState | null>;
19
- listWorkflows(options?: {
20
- status?: WorkflowStatus;
21
- limit?: number;
22
- }): Promise<WorkflowState[]>;
23
- deleteWorkflow(id: string): Promise<boolean>;
24
- saveApproval(approval: ApprovalRequest): Promise<void>;
25
- loadApproval(token: string): Promise<ApprovalRequest | null>;
26
- loadApprovalsByWorkflow(workflowId: string): Promise<ApprovalRequest[]>;
27
- updateApprovalStatus(token: string, status: ApprovalStatus, respondedBy?: string, comment?: string): Promise<void>;
28
- private cloneWorkflow;
29
- /**
30
- * Utility method to clear all data (useful for testing)
31
- */
32
- clear(): void;
33
- /**
34
- * Get count of stored workflows (useful for testing)
35
- */
36
- getWorkflowCount(): number;
37
- /**
38
- * Get count of stored approvals (useful for testing)
39
- */
40
- getApprovalCount(): number;
41
- }
42
- //# sourceMappingURL=memory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../../../../../scripts/lib/state/adapters/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACf,MAAM,aAAa,CAAA;AAEpB,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,SAAS,CAA0C;IAErD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpD,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAKvD,aAAa,CAAC,OAAO,CAAC,EAAE;QAC5B,MAAM,CAAC,EAAE,cAAc,CAAA;QACvB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAiBtB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc5C,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAK5D,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAMvE,oBAAoB,CACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,cAAc,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAYhB,OAAO,CAAC,aAAa;IAYrB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;IACH,gBAAgB,IAAI,MAAM;CAG3B"}
@@ -1,110 +0,0 @@
1
- /**
2
- * In-Memory State Adapter
3
- *
4
- * Provides a simple in-memory implementation for testing and development.
5
- * State is lost when the process exits.
6
- *
7
- * @dependencies
8
- * - scripts/lib/errors.ts - ErrorCode and ScriptError for validation
9
- * - scripts/lib/state/types.ts - State management type definitions
10
- */
11
- import { ErrorCode, ScriptError } from '../../errors.js';
12
- export class MemoryStateAdapter {
13
- workflows = new Map();
14
- approvals = new Map();
15
- async initialize() {
16
- // No initialization needed for in-memory storage
17
- }
18
- async close() {
19
- // Clear all data
20
- this.workflows.clear();
21
- this.approvals.clear();
22
- }
23
- async saveWorkflow(workflow) {
24
- // Deep clone to avoid mutations
25
- const cloned = this.cloneWorkflow(workflow);
26
- this.workflows.set(workflow.id, cloned);
27
- }
28
- async loadWorkflow(id) {
29
- const workflow = this.workflows.get(id);
30
- return workflow ? this.cloneWorkflow(workflow) : null;
31
- }
32
- async listWorkflows(options) {
33
- let workflows = Array.from(this.workflows.values());
34
- if (options?.status) {
35
- workflows = workflows.filter((w) => w.status === options.status);
36
- }
37
- // Sort by updatedAt descending (most recent first)
38
- workflows.sort((a, b) => b.updatedAt.getTime() - a.updatedAt.getTime());
39
- if (options?.limit) {
40
- workflows = workflows.slice(0, options.limit);
41
- }
42
- return workflows.map((w) => this.cloneWorkflow(w));
43
- }
44
- async deleteWorkflow(id) {
45
- const existed = this.workflows.has(id);
46
- this.workflows.delete(id);
47
- // Also delete related approvals
48
- for (const [token, approval] of this.approvals) {
49
- if (approval.workflowId === id) {
50
- this.approvals.delete(token);
51
- }
52
- }
53
- return existed;
54
- }
55
- async saveApproval(approval) {
56
- this.approvals.set(approval.token, { ...approval });
57
- }
58
- async loadApproval(token) {
59
- const approval = this.approvals.get(token);
60
- return approval ? { ...approval } : null;
61
- }
62
- async loadApprovalsByWorkflow(workflowId) {
63
- return Array.from(this.approvals.values())
64
- .filter((a) => a.workflowId === workflowId)
65
- .map((a) => ({ ...a }));
66
- }
67
- async updateApprovalStatus(token, status, respondedBy, comment) {
68
- const approval = this.approvals.get(token);
69
- if (!approval) {
70
- throw new ScriptError(`Approval not found: ${token}`, ErrorCode.NOT_FOUND);
71
- }
72
- approval.status = status;
73
- approval.respondedAt = new Date();
74
- if (respondedBy)
75
- approval.respondedBy = respondedBy;
76
- if (comment)
77
- approval.comment = comment;
78
- }
79
- cloneWorkflow(workflow) {
80
- return {
81
- ...workflow,
82
- steps: [...workflow.steps],
83
- stepStates: new Map(workflow.stepStates),
84
- createdAt: new Date(workflow.createdAt),
85
- updatedAt: new Date(workflow.updatedAt),
86
- completedAt: workflow.completedAt ? new Date(workflow.completedAt) : undefined,
87
- metadata: workflow.metadata ? { ...workflow.metadata } : undefined,
88
- };
89
- }
90
- /**
91
- * Utility method to clear all data (useful for testing)
92
- */
93
- clear() {
94
- this.workflows.clear();
95
- this.approvals.clear();
96
- }
97
- /**
98
- * Get count of stored workflows (useful for testing)
99
- */
100
- getWorkflowCount() {
101
- return this.workflows.size;
102
- }
103
- /**
104
- * Get count of stored approvals (useful for testing)
105
- */
106
- getApprovalCount() {
107
- return this.approvals.size;
108
- }
109
- }
110
- //# sourceMappingURL=memory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../../../../../scripts/lib/state/adapters/memory.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- /**
2
- * PGlite State Adapter
3
- *
4
- * Provides persistent state storage using PGlite (embedded PostgreSQL).
5
- * State is stored in .revealui/state/workflows
6
- *
7
- * Benefits over SQLite:
8
- * - PostgreSQL-compatible SQL syntax matches production databases (Neon/Supabase)
9
- * - Same query patterns work in development and production
10
- * - Supports PostgreSQL-specific features if needed
11
- *
12
- * @dependencies
13
- * - scripts/lib/errors.ts - ErrorCode and ScriptError for validation
14
- * - scripts/lib/state/types.ts - State management type definitions
15
- * - @electric-sql/pglite - Embedded PostgreSQL (dynamic import)
16
- * - node:fs/promises - File system operations (mkdir)
17
- * - node:path - Path manipulation utilities
18
- */
19
- import type { ApprovalRequest, ApprovalStatus, StateAdapter, WorkflowState, WorkflowStatus } from '../types.js';
20
- export interface PGliteAdapterOptions {
21
- /** Path to the PGlite data directory */
22
- dataDir?: string;
23
- }
24
- export declare class PGliteStateAdapter implements StateAdapter {
25
- private db;
26
- private dataDir;
27
- constructor(options?: PGliteAdapterOptions);
28
- initialize(): Promise<void>;
29
- close(): Promise<void>;
30
- saveWorkflow(workflow: WorkflowState): Promise<void>;
31
- loadWorkflow(id: string): Promise<WorkflowState | null>;
32
- listWorkflows(options?: {
33
- status?: WorkflowStatus;
34
- limit?: number;
35
- }): Promise<WorkflowState[]>;
36
- deleteWorkflow(id: string): Promise<boolean>;
37
- saveApproval(approval: ApprovalRequest): Promise<void>;
38
- loadApproval(token: string): Promise<ApprovalRequest | null>;
39
- loadApprovalsByWorkflow(workflowId: string): Promise<ApprovalRequest[]>;
40
- updateApprovalStatus(token: string, status: ApprovalStatus, respondedBy?: string, comment?: string): Promise<void>;
41
- private serializeStepStates;
42
- private deserializeStepStates;
43
- private rowToWorkflow;
44
- private rowToApproval;
45
- }
46
- //# sourceMappingURL=pglite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pglite.d.ts","sourceRoot":"","sources":["../../../../../../../scripts/lib/state/adapters/pglite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EAGf,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,oBAAoB;IACnC,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,EAAE,CAA8B;IACxC,OAAO,CAAC,OAAO,CAAQ;gBAEX,OAAO,GAAE,oBAAyB;IAIxC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqD3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCpD,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAQvD,aAAa,CAAC,OAAO,CAAC,EAAE;QAC5B,MAAM,CAAC,EAAE,cAAc,CAAA;QACvB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAwBtB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ5C,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BtD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAU5D,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAWvE,oBAAoB,CACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,cAAc,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAahB,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,aAAa;IA2BrB,OAAO,CAAC,aAAa;CActB"}
@@ -1,256 +0,0 @@
1
- /**
2
- * PGlite State Adapter
3
- *
4
- * Provides persistent state storage using PGlite (embedded PostgreSQL).
5
- * State is stored in .revealui/state/workflows
6
- *
7
- * Benefits over SQLite:
8
- * - PostgreSQL-compatible SQL syntax matches production databases (Neon/Supabase)
9
- * - Same query patterns work in development and production
10
- * - Supports PostgreSQL-specific features if needed
11
- *
12
- * @dependencies
13
- * - scripts/lib/errors.ts - ErrorCode and ScriptError for validation
14
- * - scripts/lib/state/types.ts - State management type definitions
15
- * - @electric-sql/pglite - Embedded PostgreSQL (dynamic import)
16
- * - node:fs/promises - File system operations (mkdir)
17
- * - node:path - Path manipulation utilities
18
- */
19
- import { mkdir } from 'node:fs/promises';
20
- import { dirname, join } from 'node:path';
21
- import { ErrorCode, ScriptError } from '../../errors.js';
22
- export class PGliteStateAdapter {
23
- db = null;
24
- dataDir;
25
- constructor(options = {}) {
26
- this.dataDir = options.dataDir || join(process.cwd(), '.revealui', 'state', 'workflows');
27
- }
28
- async initialize() {
29
- // Ensure directory exists
30
- await mkdir(dirname(this.dataDir), { recursive: true });
31
- // Dynamically import @electric-sql/pglite
32
- try {
33
- const { PGlite } = await import('@electric-sql/pglite');
34
- this.db = new PGlite(this.dataDir);
35
- await this.db.waitReady;
36
- }
37
- catch (_error) {
38
- throw new ScriptError('@electric-sql/pglite is not installed. Run: pnpm add -D @electric-sql/pglite', ErrorCode.DEPENDENCY_ERROR);
39
- }
40
- // Create tables using PostgreSQL syntax
41
- await this.db.exec(`
42
- CREATE TABLE IF NOT EXISTS workflows (
43
- id TEXT PRIMARY KEY,
44
- name TEXT NOT NULL,
45
- description TEXT,
46
- status TEXT NOT NULL DEFAULT 'pending',
47
- steps JSONB NOT NULL,
48
- step_states JSONB NOT NULL DEFAULT '{}',
49
- current_step_index INTEGER NOT NULL DEFAULT 0,
50
- created_at TIMESTAMPTZ NOT NULL,
51
- updated_at TIMESTAMPTZ NOT NULL,
52
- completed_at TIMESTAMPTZ,
53
- error TEXT,
54
- metadata JSONB
55
- );
56
-
57
- CREATE TABLE IF NOT EXISTS approvals (
58
- id TEXT PRIMARY KEY,
59
- workflow_id TEXT NOT NULL REFERENCES workflows(id) ON DELETE CASCADE,
60
- step_id TEXT NOT NULL,
61
- token TEXT UNIQUE NOT NULL,
62
- status TEXT NOT NULL DEFAULT 'pending',
63
- requested_at TIMESTAMPTZ NOT NULL,
64
- responded_at TIMESTAMPTZ,
65
- responded_by TEXT,
66
- expires_at TIMESTAMPTZ NOT NULL,
67
- comment TEXT
68
- );
69
-
70
- CREATE INDEX IF NOT EXISTS idx_workflows_status ON workflows(status);
71
- CREATE INDEX IF NOT EXISTS idx_workflows_updated ON workflows(updated_at DESC);
72
- CREATE INDEX IF NOT EXISTS idx_approvals_token ON approvals(token);
73
- CREATE INDEX IF NOT EXISTS idx_approvals_workflow ON approvals(workflow_id);
74
- `);
75
- }
76
- async close() {
77
- if (this.db) {
78
- await this.db.close();
79
- this.db = null;
80
- }
81
- }
82
- async saveWorkflow(workflow) {
83
- if (!this.db)
84
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
85
- await this.db.query(`
86
- INSERT INTO workflows
87
- (id, name, description, status, steps, step_states, current_step_index,
88
- created_at, updated_at, completed_at, error, metadata)
89
- VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12)
90
- ON CONFLICT (id) DO UPDATE SET
91
- name = EXCLUDED.name,
92
- description = EXCLUDED.description,
93
- status = EXCLUDED.status,
94
- steps = EXCLUDED.steps,
95
- step_states = EXCLUDED.step_states,
96
- current_step_index = EXCLUDED.current_step_index,
97
- updated_at = EXCLUDED.updated_at,
98
- completed_at = EXCLUDED.completed_at,
99
- error = EXCLUDED.error,
100
- metadata = EXCLUDED.metadata
101
- `, [
102
- workflow.id,
103
- workflow.name,
104
- workflow.description || null,
105
- workflow.status,
106
- JSON.stringify(workflow.steps),
107
- JSON.stringify(this.serializeStepStates(workflow.stepStates)),
108
- workflow.currentStepIndex,
109
- workflow.createdAt.toISOString(),
110
- workflow.updatedAt.toISOString(),
111
- workflow.completedAt?.toISOString() || null,
112
- workflow.error || null,
113
- workflow.metadata ? JSON.stringify(workflow.metadata) : null,
114
- ]);
115
- }
116
- async loadWorkflow(id) {
117
- if (!this.db)
118
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
119
- const result = await this.db.query('SELECT * FROM workflows WHERE id = $1', [id]);
120
- return result.rows.length > 0 ? this.rowToWorkflow(result.rows[0]) : null;
121
- }
122
- async listWorkflows(options) {
123
- if (!this.db)
124
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
125
- let sql = 'SELECT * FROM workflows';
126
- const params = [];
127
- let paramIndex = 1;
128
- if (options?.status) {
129
- sql += ` WHERE status = $${paramIndex++}`;
130
- params.push(options.status);
131
- }
132
- sql += ' ORDER BY updated_at DESC';
133
- if (options?.limit) {
134
- sql += ` LIMIT $${paramIndex++}`;
135
- params.push(options.limit);
136
- }
137
- const result = await this.db.query(sql, params);
138
- return result.rows.map((row) => this.rowToWorkflow(row));
139
- }
140
- async deleteWorkflow(id) {
141
- if (!this.db)
142
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
143
- const result = await this.db.query('DELETE FROM workflows WHERE id = $1', [id]);
144
- return (result.affectedRows ?? 0) > 0;
145
- }
146
- async saveApproval(approval) {
147
- if (!this.db)
148
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
149
- await this.db.query(`
150
- INSERT INTO approvals
151
- (id, workflow_id, step_id, token, status, requested_at, responded_at,
152
- responded_by, expires_at, comment)
153
- VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)
154
- ON CONFLICT (id) DO UPDATE SET
155
- status = EXCLUDED.status,
156
- responded_at = EXCLUDED.responded_at,
157
- responded_by = EXCLUDED.responded_by,
158
- comment = EXCLUDED.comment
159
- `, [
160
- approval.id,
161
- approval.workflowId,
162
- approval.stepId,
163
- approval.token,
164
- approval.status,
165
- approval.requestedAt.toISOString(),
166
- approval.respondedAt?.toISOString() || null,
167
- approval.respondedBy || null,
168
- approval.expiresAt.toISOString(),
169
- approval.comment || null,
170
- ]);
171
- }
172
- async loadApproval(token) {
173
- if (!this.db)
174
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
175
- const result = await this.db.query('SELECT * FROM approvals WHERE token = $1', [
176
- token,
177
- ]);
178
- return result.rows.length > 0 ? this.rowToApproval(result.rows[0]) : null;
179
- }
180
- async loadApprovalsByWorkflow(workflowId) {
181
- if (!this.db)
182
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
183
- const result = await this.db.query('SELECT * FROM approvals WHERE workflow_id = $1 ORDER BY requested_at DESC', [workflowId]);
184
- return result.rows.map((row) => this.rowToApproval(row));
185
- }
186
- async updateApprovalStatus(token, status, respondedBy, comment) {
187
- if (!this.db)
188
- throw new ScriptError('Database not initialized', ErrorCode.INVALID_STATE);
189
- await this.db.query(`
190
- UPDATE approvals
191
- SET status = $1, responded_at = $2, responded_by = $3, comment = $4
192
- WHERE token = $5
193
- `, [status, new Date().toISOString(), respondedBy || null, comment || null, token]);
194
- }
195
- serializeStepStates(stepStates) {
196
- const result = {};
197
- for (const [key, value] of stepStates.entries()) {
198
- result[key] = {
199
- ...value,
200
- startedAt: value.startedAt ? value.startedAt : undefined,
201
- completedAt: value.completedAt ? value.completedAt : undefined,
202
- };
203
- }
204
- return result;
205
- }
206
- deserializeStepStates(data) {
207
- const map = new Map();
208
- for (const [key, value] of Object.entries(data)) {
209
- map.set(key, {
210
- ...value,
211
- startedAt: value.startedAt ? new Date(value.startedAt) : undefined,
212
- completedAt: value.completedAt ? new Date(value.completedAt) : undefined,
213
- });
214
- }
215
- return map;
216
- }
217
- rowToWorkflow(row) {
218
- // Handle JSONB columns - they may already be parsed objects
219
- const steps = typeof row.steps === 'string' ? JSON.parse(row.steps) : row.steps;
220
- const stepStates = typeof row.step_states === 'string' ? JSON.parse(row.step_states) : row.step_states;
221
- const metadata = row.metadata
222
- ? typeof row.metadata === 'string'
223
- ? JSON.parse(row.metadata)
224
- : row.metadata
225
- : undefined;
226
- return {
227
- id: row.id,
228
- name: row.name,
229
- description: row.description || undefined,
230
- status: row.status,
231
- steps: steps,
232
- stepStates: this.deserializeStepStates(stepStates),
233
- currentStepIndex: row.current_step_index,
234
- createdAt: new Date(row.created_at),
235
- updatedAt: new Date(row.updated_at),
236
- completedAt: row.completed_at ? new Date(row.completed_at) : undefined,
237
- error: row.error || undefined,
238
- metadata,
239
- };
240
- }
241
- rowToApproval(row) {
242
- return {
243
- id: row.id,
244
- workflowId: row.workflow_id,
245
- stepId: row.step_id,
246
- token: row.token,
247
- status: row.status,
248
- requestedAt: new Date(row.requested_at),
249
- respondedAt: row.responded_at ? new Date(row.responded_at) : undefined,
250
- respondedBy: row.responded_by || undefined,
251
- expiresAt: new Date(row.expires_at),
252
- comment: row.comment || undefined,
253
- };
254
- }
255
- }
256
- //# sourceMappingURL=pglite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pglite.js","sourceRoot":"","sources":["../../../../../../../scripts/lib/state/adapters/pglite.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * State Management Module
3
- *
4
- * Provides workflow state management with persistent storage.
5
- *
6
- * @dependencies
7
- * - scripts/lib/state/adapters/memory.ts - In-memory state adapter
8
- * - scripts/lib/state/adapters/pglite.ts - PGlite state adapter
9
- * - scripts/lib/state/types.ts - State management type definitions
10
- * - scripts/lib/state/workflow-state.ts - Workflow state implementation
11
- */
12
- export { MemoryStateAdapter } from './adapters/memory.js';
13
- export { type PGliteAdapterOptions, PGliteStateAdapter } from './adapters/pglite.js';
14
- export * from './types.js';
15
- export * from './workflow-state.js';
16
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../scripts/lib/state/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,KAAK,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACpF,cAAc,YAAY,CAAA;AAC1B,cAAc,qBAAqB,CAAA"}
@@ -1,16 +0,0 @@
1
- /**
2
- * State Management Module
3
- *
4
- * Provides workflow state management with persistent storage.
5
- *
6
- * @dependencies
7
- * - scripts/lib/state/adapters/memory.ts - In-memory state adapter
8
- * - scripts/lib/state/adapters/pglite.ts - PGlite state adapter
9
- * - scripts/lib/state/types.ts - State management type definitions
10
- * - scripts/lib/state/workflow-state.ts - Workflow state implementation
11
- */
12
- export { MemoryStateAdapter } from './adapters/memory.js';
13
- export { PGliteStateAdapter } from './adapters/pglite.js';
14
- export * from './types.js';
15
- export * from './workflow-state.js';
16
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../scripts/lib/state/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAA6B,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACpF,cAAc,YAAY,CAAA;AAC1B,cAAc,qBAAqB,CAAA"}
@@ -1,111 +0,0 @@
1
- /**
2
- * State Management Types for RevealUI Scripts
3
- *
4
- * @dependencies
5
- * - None (standalone type definitions)
6
- */
7
- export type WorkflowStatus = 'pending' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
8
- export type StepStatus = 'pending' | 'running' | 'completed' | 'failed' | 'skipped';
9
- export type ApprovalStatus = 'pending' | 'approved' | 'rejected' | 'expired';
10
- export interface WorkflowStep {
11
- id: string;
12
- name: string;
13
- description: string;
14
- command?: string;
15
- script?: string;
16
- requiresApproval: boolean;
17
- validation?: string[];
18
- rollback?: string;
19
- timeout?: number;
20
- dependsOn?: string[];
21
- }
22
- export interface WorkflowStepState {
23
- stepId: string;
24
- status: StepStatus;
25
- startedAt?: Date;
26
- completedAt?: Date;
27
- error?: string;
28
- output?: string;
29
- retryCount: number;
30
- }
31
- export interface ApprovalRequest {
32
- id: string;
33
- workflowId: string;
34
- stepId: string;
35
- token: string;
36
- status: ApprovalStatus;
37
- requestedAt: Date;
38
- respondedAt?: Date;
39
- respondedBy?: string;
40
- expiresAt: Date;
41
- comment?: string;
42
- }
43
- export interface WorkflowState {
44
- id: string;
45
- name: string;
46
- description?: string;
47
- status: WorkflowStatus;
48
- steps: WorkflowStep[];
49
- stepStates: Map<string, WorkflowStepState>;
50
- currentStepIndex: number;
51
- createdAt: Date;
52
- updatedAt: Date;
53
- completedAt?: Date;
54
- error?: string;
55
- metadata?: Record<string, unknown>;
56
- }
57
- export type WorkflowEvent = {
58
- type: 'START';
59
- } | {
60
- type: 'PAUSE';
61
- } | {
62
- type: 'RESUME';
63
- } | {
64
- type: 'CANCEL';
65
- } | {
66
- type: 'STEP_START';
67
- stepId: string;
68
- } | {
69
- type: 'STEP_COMPLETE';
70
- stepId: string;
71
- output?: string;
72
- } | {
73
- type: 'STEP_FAIL';
74
- stepId: string;
75
- error: string;
76
- } | {
77
- type: 'STEP_SKIP';
78
- stepId: string;
79
- } | {
80
- type: 'APPROVAL_REQUEST';
81
- stepId: string;
82
- } | {
83
- type: 'APPROVAL_GRANTED';
84
- stepId: string;
85
- by?: string;
86
- } | {
87
- type: 'APPROVAL_DENIED';
88
- stepId: string;
89
- reason?: string;
90
- } | {
91
- type: 'COMPLETE';
92
- } | {
93
- type: 'FAIL';
94
- error: string;
95
- };
96
- export interface StateAdapter {
97
- initialize(): Promise<void>;
98
- close(): Promise<void>;
99
- saveWorkflow(workflow: WorkflowState): Promise<void>;
100
- loadWorkflow(id: string): Promise<WorkflowState | null>;
101
- listWorkflows(options?: {
102
- status?: WorkflowStatus;
103
- limit?: number;
104
- }): Promise<WorkflowState[]>;
105
- deleteWorkflow(id: string): Promise<boolean>;
106
- saveApproval(approval: ApprovalRequest): Promise<void>;
107
- loadApproval(token: string): Promise<ApprovalRequest | null>;
108
- loadApprovalsByWorkflow(workflowId: string): Promise<ApprovalRequest[]>;
109
- updateApprovalStatus(token: string, status: ApprovalStatus, respondedBy?: string, comment?: string): Promise<void>;
110
- }
111
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../scripts/lib/state/types.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * State Management Types for RevealUI Scripts
3
- *
4
- * @dependencies
5
- * - None (standalone type definitions)
6
- */
7
- export {};
8
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../scripts/lib/state/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}