@sudocode-ai/local-server 0.1.9 → 0.1.11

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 (146) hide show
  1. package/dist/execution/executors/agent-executor-wrapper.d.ts.map +1 -1
  2. package/dist/execution/executors/agent-executor-wrapper.js +57 -2
  3. package/dist/execution/executors/agent-executor-wrapper.js.map +1 -1
  4. package/dist/execution/process/builders/claude.d.ts.map +1 -1
  5. package/dist/execution/process/builders/claude.js +32 -1
  6. package/dist/execution/process/builders/claude.js.map +1 -1
  7. package/dist/execution/worktree/config.js +1 -1
  8. package/dist/execution/worktree/config.js.map +1 -1
  9. package/dist/execution/worktree/git-cli.d.ts +48 -0
  10. package/dist/execution/worktree/git-cli.d.ts.map +1 -1
  11. package/dist/execution/worktree/git-cli.js +81 -0
  12. package/dist/execution/worktree/git-cli.js.map +1 -1
  13. package/dist/execution/worktree/types.d.ts.map +1 -1
  14. package/dist/execution/worktree/types.js.map +1 -1
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +17 -4
  17. package/dist/index.js.map +1 -1
  18. package/dist/public/assets/index-Nz4IjDwB.css +1 -0
  19. package/dist/public/assets/index-Z8yftXvD.js +824 -0
  20. package/dist/public/assets/index-Z8yftXvD.js.map +1 -0
  21. package/dist/public/assets/{react-vendor-DiL5hC7l.js → react-vendor-5f1Wq1qs.js} +5 -5
  22. package/dist/public/assets/{react-vendor-DiL5hC7l.js.map → react-vendor-5f1Wq1qs.js.map} +1 -1
  23. package/dist/public/assets/{ui-vendor-B4WMPEfa.js → ui-vendor-BDDPoYki.js} +2 -2
  24. package/dist/public/assets/{ui-vendor-B4WMPEfa.js.map → ui-vendor-BDDPoYki.js.map} +1 -1
  25. package/dist/public/index.html +4 -4
  26. package/dist/routes/executions.d.ts.map +1 -1
  27. package/dist/routes/executions.js +3 -1
  28. package/dist/routes/executions.js.map +1 -1
  29. package/dist/routes/issues.d.ts.map +1 -1
  30. package/dist/routes/issues.js +13 -0
  31. package/dist/routes/issues.js.map +1 -1
  32. package/dist/routes/specs.d.ts.map +1 -1
  33. package/dist/routes/specs.js +14 -0
  34. package/dist/routes/specs.js.map +1 -1
  35. package/dist/routes/workflows.d.ts +8 -0
  36. package/dist/routes/workflows.d.ts.map +1 -0
  37. package/dist/routes/workflows.js +1729 -0
  38. package/dist/routes/workflows.js.map +1 -0
  39. package/dist/services/execution-event-callbacks.d.ts +73 -0
  40. package/dist/services/execution-event-callbacks.d.ts.map +1 -0
  41. package/dist/services/execution-event-callbacks.js +82 -0
  42. package/dist/services/execution-event-callbacks.js.map +1 -0
  43. package/dist/services/execution-lifecycle.d.ts +38 -2
  44. package/dist/services/execution-lifecycle.d.ts.map +1 -1
  45. package/dist/services/execution-lifecycle.js +94 -23
  46. package/dist/services/execution-lifecycle.js.map +1 -1
  47. package/dist/services/execution-service.d.ts +31 -3
  48. package/dist/services/execution-service.d.ts.map +1 -1
  49. package/dist/services/execution-service.js +161 -34
  50. package/dist/services/execution-service.js.map +1 -1
  51. package/dist/services/executions.d.ts +1 -0
  52. package/dist/services/executions.d.ts.map +1 -1
  53. package/dist/services/executions.js +4 -0
  54. package/dist/services/executions.js.map +1 -1
  55. package/dist/services/project-context.d.ts +25 -0
  56. package/dist/services/project-context.d.ts.map +1 -1
  57. package/dist/services/project-context.js +53 -3
  58. package/dist/services/project-context.js.map +1 -1
  59. package/dist/services/project-manager.d.ts +7 -0
  60. package/dist/services/project-manager.d.ts.map +1 -1
  61. package/dist/services/project-manager.js +108 -13
  62. package/dist/services/project-manager.js.map +1 -1
  63. package/dist/services/websocket.d.ts +10 -2
  64. package/dist/services/websocket.d.ts.map +1 -1
  65. package/dist/services/websocket.js +18 -0
  66. package/dist/services/websocket.js.map +1 -1
  67. package/dist/services/workflow-broadcast-service.d.ts +43 -0
  68. package/dist/services/workflow-broadcast-service.d.ts.map +1 -0
  69. package/dist/services/workflow-broadcast-service.js +145 -0
  70. package/dist/services/workflow-broadcast-service.js.map +1 -0
  71. package/dist/services/worktree-sync-service.d.ts +76 -4
  72. package/dist/services/worktree-sync-service.d.ts.map +1 -1
  73. package/dist/services/worktree-sync-service.js +264 -23
  74. package/dist/services/worktree-sync-service.js.map +1 -1
  75. package/dist/workflow/base-workflow-engine.d.ts +186 -0
  76. package/dist/workflow/base-workflow-engine.d.ts.map +1 -0
  77. package/dist/workflow/base-workflow-engine.js +549 -0
  78. package/dist/workflow/base-workflow-engine.js.map +1 -0
  79. package/dist/workflow/dependency-analyzer.d.ts +78 -0
  80. package/dist/workflow/dependency-analyzer.d.ts.map +1 -0
  81. package/dist/workflow/dependency-analyzer.js +264 -0
  82. package/dist/workflow/dependency-analyzer.js.map +1 -0
  83. package/dist/workflow/engines/orchestrator-engine.d.ts +237 -0
  84. package/dist/workflow/engines/orchestrator-engine.d.ts.map +1 -0
  85. package/dist/workflow/engines/orchestrator-engine.js +749 -0
  86. package/dist/workflow/engines/orchestrator-engine.js.map +1 -0
  87. package/dist/workflow/engines/sequential-engine.d.ts +276 -0
  88. package/dist/workflow/engines/sequential-engine.d.ts.map +1 -0
  89. package/dist/workflow/engines/sequential-engine.js +1110 -0
  90. package/dist/workflow/engines/sequential-engine.js.map +1 -0
  91. package/dist/workflow/index.d.ts +15 -0
  92. package/dist/workflow/index.d.ts.map +1 -0
  93. package/dist/workflow/index.js +22 -0
  94. package/dist/workflow/index.js.map +1 -0
  95. package/dist/workflow/mcp/api-client.d.ts +103 -0
  96. package/dist/workflow/mcp/api-client.d.ts.map +1 -0
  97. package/dist/workflow/mcp/api-client.js +193 -0
  98. package/dist/workflow/mcp/api-client.js.map +1 -0
  99. package/dist/workflow/mcp/index.d.ts +16 -0
  100. package/dist/workflow/mcp/index.d.ts.map +1 -0
  101. package/dist/workflow/mcp/index.js +114 -0
  102. package/dist/workflow/mcp/index.js.map +1 -0
  103. package/dist/workflow/mcp/server.d.ts +85 -0
  104. package/dist/workflow/mcp/server.d.ts.map +1 -0
  105. package/dist/workflow/mcp/server.js +520 -0
  106. package/dist/workflow/mcp/server.js.map +1 -0
  107. package/dist/workflow/mcp/tools/escalation.d.ts +36 -0
  108. package/dist/workflow/mcp/tools/escalation.d.ts.map +1 -0
  109. package/dist/workflow/mcp/tools/escalation.js +47 -0
  110. package/dist/workflow/mcp/tools/escalation.js.map +1 -0
  111. package/dist/workflow/mcp/tools/execution.d.ts +59 -0
  112. package/dist/workflow/mcp/tools/execution.d.ts.map +1 -0
  113. package/dist/workflow/mcp/tools/execution.js +67 -0
  114. package/dist/workflow/mcp/tools/execution.js.map +1 -0
  115. package/dist/workflow/mcp/tools/inspection.d.ts +82 -0
  116. package/dist/workflow/mcp/tools/inspection.d.ts.map +1 -0
  117. package/dist/workflow/mcp/tools/inspection.js +57 -0
  118. package/dist/workflow/mcp/tools/inspection.js.map +1 -0
  119. package/dist/workflow/mcp/tools/workflow.d.ts +59 -0
  120. package/dist/workflow/mcp/tools/workflow.d.ts.map +1 -0
  121. package/dist/workflow/mcp/tools/workflow.js +40 -0
  122. package/dist/workflow/mcp/tools/workflow.js.map +1 -0
  123. package/dist/workflow/mcp/types.d.ts +345 -0
  124. package/dist/workflow/mcp/types.d.ts.map +1 -0
  125. package/dist/workflow/mcp/types.js +7 -0
  126. package/dist/workflow/mcp/types.js.map +1 -0
  127. package/dist/workflow/services/prompt-builder.d.ts +36 -0
  128. package/dist/workflow/services/prompt-builder.d.ts.map +1 -0
  129. package/dist/workflow/services/prompt-builder.js +329 -0
  130. package/dist/workflow/services/prompt-builder.js.map +1 -0
  131. package/dist/workflow/services/wakeup-service.d.ts +262 -0
  132. package/dist/workflow/services/wakeup-service.d.ts.map +1 -0
  133. package/dist/workflow/services/wakeup-service.js +809 -0
  134. package/dist/workflow/services/wakeup-service.js.map +1 -0
  135. package/dist/workflow/workflow-engine.d.ts +221 -0
  136. package/dist/workflow/workflow-engine.d.ts.map +1 -0
  137. package/dist/workflow/workflow-engine.js +94 -0
  138. package/dist/workflow/workflow-engine.js.map +1 -0
  139. package/dist/workflow/workflow-event-emitter.d.ts +278 -0
  140. package/dist/workflow/workflow-event-emitter.d.ts.map +1 -0
  141. package/dist/workflow/workflow-event-emitter.js +259 -0
  142. package/dist/workflow/workflow-event-emitter.js.map +1 -0
  143. package/package.json +8 -6
  144. package/dist/public/assets/index-DV9Tbujb.css +0 -1
  145. package/dist/public/assets/index-DcDX9-Ad.js +0 -740
  146. package/dist/public/assets/index-DcDX9-Ad.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrator-engine.js","sourceRoot":"","sources":["../../../src/workflow/engines/orchestrator-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,276 @@
1
+ /**
2
+ * Sequential Workflow Engine
3
+ *
4
+ * Executes workflow steps in topological order with worktree reuse.
5
+ * Supports both sequential and parallel execution modes.
6
+ */
7
+ import type Database from "better-sqlite3";
8
+ import type { Workflow, WorkflowSource, WorkflowConfig, WorkflowStep } from "@sudocode-ai/types";
9
+ import { BaseWorkflowEngine } from "../base-workflow-engine.js";
10
+ import type { WorkflowEventEmitter } from "../workflow-event-emitter.js";
11
+ import type { ExecutionService } from "../../services/execution-service.js";
12
+ import type { ExecutionLifecycleService } from "../../services/execution-lifecycle.js";
13
+ /**
14
+ * Sequential Workflow Engine implementation.
15
+ *
16
+ * Executes workflow steps in topological order (respecting dependencies).
17
+ * Features:
18
+ * - Single shared worktree for all steps
19
+ * - Auto-commit after each step (configurable)
20
+ * - Configurable failure handling (stop, pause, skip_dependents, continue)
21
+ * - Support for parallel execution of independent steps
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const engine = new SequentialWorkflowEngine(db, executionService, repoPath);
26
+ *
27
+ * // Create workflow from a spec
28
+ * const workflow = await engine.createWorkflow({
29
+ * type: "spec",
30
+ * specId: "s-auth"
31
+ * });
32
+ *
33
+ * // Start execution
34
+ * await engine.startWorkflow(workflow.id);
35
+ *
36
+ * // Subscribe to events
37
+ * engine.onWorkflowEvent((event) => {
38
+ * console.log(event.type, event);
39
+ * });
40
+ * ```
41
+ */
42
+ export declare class SequentialWorkflowEngine extends BaseWorkflowEngine {
43
+ private executionService;
44
+ private lifecycleService;
45
+ private repoPath;
46
+ private activeWorkflows;
47
+ constructor(db: Database.Database, executionService: ExecutionService, lifecycleService: ExecutionLifecycleService, repoPath: string, eventEmitter?: WorkflowEventEmitter);
48
+ /**
49
+ * Create a new workflow from a source definition.
50
+ *
51
+ * @param source - How to determine workflow scope (spec, issues, root_issue, or goal)
52
+ * @param config - Optional configuration overrides (includes baseBranch, title)
53
+ * @returns The created workflow
54
+ * @throws WorkflowCycleError if dependency cycles are detected
55
+ */
56
+ createWorkflow(source: WorkflowSource, config?: Partial<WorkflowConfig>): Promise<Workflow>;
57
+ /**
58
+ * Recover workflows that were running when the server crashed.
59
+ *
60
+ * This method:
61
+ * 1. Finds all sequential workflows in 'running' or 'paused' status
62
+ * 2. Reconstructs the activeWorkflows Map from database state
63
+ * 3. Handles any steps that were 'running' when the server crashed
64
+ * 4. Resumes execution loops for 'running' workflows
65
+ *
66
+ * Should be called during server startup after engine initialization.
67
+ */
68
+ recoverWorkflows(): Promise<void>;
69
+ /**
70
+ * Recover a single workflow from its database row.
71
+ */
72
+ private recoverSingleWorkflow;
73
+ /**
74
+ * Handle a step that was running when the server crashed.
75
+ */
76
+ private handleCrashedStep;
77
+ /**
78
+ * Handle step success during recovery.
79
+ */
80
+ private handleRecoveredStepSuccess;
81
+ /**
82
+ * Handle step failure during recovery.
83
+ * Applies the workflow's onFailure strategy.
84
+ */
85
+ private handleRecoveredStepFailure;
86
+ /**
87
+ * Start executing a pending workflow.
88
+ *
89
+ * Creates a worktree and begins the execution loop.
90
+ *
91
+ * @param workflowId - The workflow to start
92
+ * @throws WorkflowNotFoundError if workflow doesn't exist
93
+ * @throws WorkflowStateError if workflow is not in pending state
94
+ */
95
+ startWorkflow(workflowId: string): Promise<void>;
96
+ /**
97
+ * Pause a running workflow, cancelling the current execution.
98
+ *
99
+ * The current step is reset to "pending" so it can be re-executed on resume.
100
+ *
101
+ * @param workflowId - The workflow to pause
102
+ * @throws WorkflowNotFoundError if workflow doesn't exist
103
+ * @throws WorkflowStateError if workflow is not running
104
+ */
105
+ pauseWorkflow(workflowId: string): Promise<void>;
106
+ /**
107
+ * Resume a paused workflow.
108
+ *
109
+ * @param workflowId - The workflow to resume
110
+ * @param _message - Optional message (not used in sequential engine, no orchestrator)
111
+ * @throws WorkflowNotFoundError if workflow doesn't exist
112
+ * @throws WorkflowStateError if workflow is not paused
113
+ */
114
+ resumeWorkflow(workflowId: string, _message?: string): Promise<void>;
115
+ /**
116
+ * Cancel a workflow, stopping any running executions.
117
+ *
118
+ * @param workflowId - The workflow to cancel
119
+ * @throws WorkflowNotFoundError if workflow doesn't exist
120
+ * @throws WorkflowStateError if workflow is already completed/failed/cancelled
121
+ */
122
+ cancelWorkflow(workflowId: string): Promise<void>;
123
+ /**
124
+ * Retry a failed step.
125
+ *
126
+ * Resets the step status to pending and unblocks dependent steps.
127
+ * If the workflow was paused due to the failure, it will be resumed.
128
+ *
129
+ * @param workflowId - The workflow containing the step
130
+ * @param stepId - The step to retry
131
+ * @throws WorkflowNotFoundError if workflow doesn't exist
132
+ * @throws WorkflowStepNotFoundError if step doesn't exist
133
+ * @throws WorkflowStateError if step is not in failed state
134
+ */
135
+ retryStep(workflowId: string, stepId: string): Promise<void>;
136
+ /**
137
+ * Skip a step and handle its dependents.
138
+ *
139
+ * @param workflowId - The workflow containing the step
140
+ * @param stepId - The step to skip
141
+ * @param reason - Optional reason for skipping
142
+ * @throws WorkflowNotFoundError if workflow doesn't exist
143
+ * @throws WorkflowStepNotFoundError if step doesn't exist
144
+ */
145
+ skipStep(workflowId: string, stepId: string, reason?: string): Promise<void>;
146
+ /**
147
+ * Main execution loop for the workflow.
148
+ * Runs steps in topological order, respecting dependencies.
149
+ *
150
+ * @param workflowId - The workflow to execute
151
+ */
152
+ private runExecutionLoop;
153
+ /**
154
+ * Execute multiple steps in parallel mode.
155
+ *
156
+ * For Phase 4, this uses a shared worktree with sequential commits.
157
+ * Steps are executed one after another but all ready steps in the batch
158
+ * are processed before re-checking dependencies.
159
+ *
160
+ * Future enhancement: True parallel execution with separate branches
161
+ * and merge handling.
162
+ *
163
+ * @param workflow - The workflow containing the steps
164
+ * @param steps - The ready steps to execute
165
+ */
166
+ private executeParallel;
167
+ /**
168
+ * Execute a single workflow step.
169
+ *
170
+ * If the step has a previous execution (from a pause), attempts to resume
171
+ * the session. Otherwise creates a new execution.
172
+ *
173
+ * @param workflow - The workflow containing the step
174
+ * @param step - The step to execute
175
+ */
176
+ private executeStep;
177
+ /**
178
+ * Wait for an execution to complete by polling.
179
+ *
180
+ * @param executionId - The execution to wait for
181
+ * @returns The completed execution
182
+ */
183
+ private waitForExecution;
184
+ /**
185
+ * Sleep for a specified duration.
186
+ */
187
+ private sleep;
188
+ /**
189
+ * Build the prompt for executing an issue.
190
+ *
191
+ * @param issue - The issue to execute
192
+ * @param workflow - The workflow context
193
+ * @returns The prompt string
194
+ */
195
+ private buildPrompt;
196
+ /**
197
+ * Handle successful step completion.
198
+ *
199
+ * @param workflow - The workflow containing the step
200
+ * @param step - The completed step
201
+ * @param execution - The execution result
202
+ */
203
+ private handleStepSuccess;
204
+ /**
205
+ * Commit step changes to git.
206
+ *
207
+ * @param workflow - The workflow containing the step
208
+ * @param step - The completed step
209
+ * @returns The commit SHA if successful, null otherwise
210
+ */
211
+ private commitStepChanges;
212
+ /**
213
+ * Build commit message for a step.
214
+ *
215
+ * @param workflow - The workflow
216
+ * @param step - The completed step
217
+ * @param issue - The issue (may be null)
218
+ * @returns The commit message
219
+ */
220
+ private buildCommitMessage;
221
+ /**
222
+ * Update an issue directly in the worktree's JSONL file.
223
+ * This keeps changes isolated to the worktree until explicitly synced.
224
+ *
225
+ * @param worktreePath - Path to the worktree
226
+ * @param issueId - The issue ID to update
227
+ * @param updates - Partial issue updates to apply
228
+ */
229
+ private updateIssueInWorktree;
230
+ /**
231
+ * Close an issue after successful step completion.
232
+ * If a worktree path is provided, updates the worktree's JSONL directly.
233
+ * Otherwise, updates the main database.
234
+ *
235
+ * @param issueId - The issue ID to close
236
+ * @param worktreePath - Optional path to the worktree for isolated updates
237
+ */
238
+ private closeIssue;
239
+ /**
240
+ * Handle step failure.
241
+ *
242
+ * @param workflow - The workflow containing the step
243
+ * @param step - The failed step
244
+ * @param execution - The execution result
245
+ */
246
+ private handleStepFailure;
247
+ /**
248
+ * Mark workflow as failed.
249
+ */
250
+ private failWorkflow;
251
+ /**
252
+ * Mark workflow as completed.
253
+ */
254
+ protected completeWorkflow(workflowId: string): Promise<void>;
255
+ /**
256
+ * Check if workflow is complete (all steps done or skipped).
257
+ */
258
+ protected isWorkflowComplete(workflow: Workflow): boolean;
259
+ /**
260
+ * Find all steps that transitively depend on a given step.
261
+ */
262
+ protected findDependentSteps(workflow: Workflow, stepId: string): WorkflowStep[];
263
+ /**
264
+ * Skip all steps that depend on a failed/skipped step.
265
+ */
266
+ protected skipDependentSteps(workflow: Workflow, failedStep: WorkflowStep, reason: string): Promise<void>;
267
+ /**
268
+ * Block all steps that depend on a failed step.
269
+ */
270
+ protected blockDependentSteps(workflow: Workflow, failedStep: WorkflowStep): Promise<void>;
271
+ /**
272
+ * Unblock steps that were blocked due to a failed dependency.
273
+ */
274
+ protected unblockDependentSteps(workflow: Workflow, retriedStep: WorkflowStep): Promise<void>;
275
+ }
276
+ //# sourceMappingURL=sequential-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequential-engine.d.ts","sourceRoot":"","sources":["../../../src/workflow/engines/sequential-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAI3C,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,YAAY,EAGb,MAAM,oBAAoB,CAAC;AAa5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAMhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAG5E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAqBvF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,wBAAyB,SAAQ,kBAAkB;IAC9D,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAoC;gBAGzD,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,yBAAyB,EAC3C,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,oBAAoB;IAYrC;;;;;;;OAOG;IACG,cAAc,CAClB,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAC/B,OAAO,CAAC,QAAQ,CAAC;IA8CpB;;;;;;;;;;OAUG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAkDvC;;OAEG;YACW,qBAAqB;IAgEnC;;OAEG;YACW,iBAAiB;IAqG/B;;OAEG;YACW,0BAA0B;IAwBxC;;;OAGG;YACW,0BAA0B;IAqExC;;;;;;;;OAQG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDtD;;;;;;;;OAQG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDtD;;;;;;;OAOG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoC1E;;;;;;OAMG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CvD;;;;;;;;;;;OAWG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgClE;;;;;;;;OAQG;IACG,QAAQ,CACZ,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IA0ChB;;;;;OAKG;YACW,gBAAgB;IAkD9B;;;;;;;;;;;;OAYG;YACW,eAAe;IAmD7B;;;;;;;;OAQG;YACW,WAAW;IAwGzB;;;;;OAKG;YACW,gBAAgB;IAiC9B;;OAEG;IACH,OAAO,CAAC,KAAK;IAIb;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAsBnB;;;;;;OAMG;YACW,iBAAiB;IA0C/B;;;;;;OAMG;YACW,iBAAiB;IA2C/B;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;;;;;;OAOG;YACW,qBAAqB;IA4CnC;;;;;;;OAOG;YACW,UAAU;IAoBxB;;;;;;OAMG;YACW,iBAAiB;IAsD/B;;OAEG;YACW,YAAY;IAgB1B;;OAEG;cACa,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBnE;;OAEG;IACH,SAAS,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IASzD;;OAEG;IACH,SAAS,CAAC,kBAAkB,CAC1B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,GACb,YAAY,EAAE;IAoBjB;;OAEG;cACa,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,YAAY,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAqBhB;;OAEG;cACa,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,YAAY,GACvB,OAAO,CAAC,IAAI,CAAC;IAYhB;;OAEG;cACa,qBAAqB,CACnC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,YAAY,GACxB,OAAO,CAAC,IAAI,CAAC;CAWjB"}