@jterrats/open-orchestra 1.0.7 → 1.0.8
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.
- package/CHANGELOG.md +41 -0
- package/dist/cli.js +4 -446
- package/dist/cli.js.map +1 -1
- package/dist/command-route-utils.d.ts +18 -0
- package/dist/command-route-utils.js +18 -0
- package/dist/command-route-utils.js.map +1 -0
- package/dist/command-routes-integrations.d.ts +2 -0
- package/dist/command-routes-integrations.js +82 -0
- package/dist/command-routes-integrations.js.map +1 -0
- package/dist/command-routes.d.ts +2 -0
- package/dist/command-routes.js +173 -0
- package/dist/command-routes.js.map +1 -0
- package/dist/refresh-generated.js +6 -17
- package/dist/refresh-generated.js.map +1 -1
- package/dist/runtime-bootstrap-targets.d.ts +15 -0
- package/dist/runtime-bootstrap-targets.js +68 -0
- package/dist/runtime-bootstrap-targets.js.map +1 -0
- package/dist/runtime-commands.js +1 -1
- package/dist/runtime-commands.js.map +1 -1
- package/dist/runtime-execution-renderer.js +10 -52
- package/dist/runtime-execution-renderer.js.map +1 -1
- package/dist/runtime-execution.js +4 -2
- package/dist/runtime-execution.js.map +1 -1
- package/dist/runtime-guardrails.js +4 -0
- package/dist/runtime-guardrails.js.map +1 -1
- package/dist/runtime-renderer-lines.d.ts +5 -0
- package/dist/runtime-renderer-lines.js +58 -0
- package/dist/runtime-renderer-lines.js.map +1 -0
- package/dist/runtime-spawn-bridge.js +19 -9
- package/dist/runtime-spawn-bridge.js.map +1 -1
- package/dist/runtime-spawn-quality.d.ts +2 -0
- package/dist/runtime-spawn-quality.js +11 -0
- package/dist/runtime-spawn-quality.js.map +1 -0
- package/dist/types/runtime.d.ts +9 -0
- package/dist/workspace-init-artifacts.d.ts +8 -0
- package/dist/workspace-init-artifacts.js +53 -0
- package/dist/workspace-init-artifacts.js.map +1 -0
- package/dist/workspace-runtime-bootstrap.d.ts +10 -0
- package/dist/workspace-runtime-bootstrap.js +59 -0
- package/dist/workspace-runtime-bootstrap.js.map +1 -0
- package/dist/workspace.js +4 -135
- package/dist/workspace.js.map +1 -1
- package/docs/autonomous-workflow.md +7 -0
- package/docs/e2e-test-batteries.md +95 -0
- package/docs/release-test-matrix.md +7 -0
- package/docs/runtime-adapters.md +18 -1
- package/docs/site-manifest.json +2 -0
- package/package.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,47 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 1.0.8 - 2026-05-19
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added a release-blocking runtime manual queue E2E:
|
|
10
|
+
`npm run test:e2e:runtime` now creates a temporary workspace, initializes
|
|
11
|
+
Open Orchestra, starts two manual runtime sessions, and verifies a third
|
|
12
|
+
manual `spawn-request` materializes as `queued` with lifecycle commands and
|
|
13
|
+
session visibility.
|
|
14
|
+
- Added an E2E test battery catalog documenting P0, P1, and P2 validation
|
|
15
|
+
surfaces for source quality, installed CLI, temporary workspaces, browser
|
|
16
|
+
console, public site, runtime delegation, recovery, security, provider, Sonar,
|
|
17
|
+
and package release dry-run coverage.
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
|
|
21
|
+
- Runtime-native spawn requests are fully asynchronous by default: parent
|
|
22
|
+
runtimes receive session ids, prompt artifacts, expected result artifacts,
|
|
23
|
+
lifecycle commands, and quality warnings without waiting on child completion.
|
|
24
|
+
- Release matrix now includes `runtime-manual-queue-e2e` so queued runtime
|
|
25
|
+
delegation behavior is part of the documented release validation surface.
|
|
26
|
+
- CLI routing and refresh helpers were split into smaller modules while keeping
|
|
27
|
+
public command behavior stable.
|
|
28
|
+
|
|
29
|
+
### Fixed
|
|
30
|
+
|
|
31
|
+
- Manual `runtime spawn-request` now follows queue guardrails consistently:
|
|
32
|
+
`limitAction=queue` returns a queued artifact/session instead of failing,
|
|
33
|
+
while `limitAction=reject` still fails before creating a delegation artifact.
|
|
34
|
+
|
|
35
|
+
### Validation
|
|
36
|
+
|
|
37
|
+
- `npm run test:e2e:runtime` passed.
|
|
38
|
+
- `npm run test:e2e` passed.
|
|
39
|
+
- `ORCHESTRA_NODE_SCRIPT=/Users/polux/dev/open-orchestra/bin/orchestra.js npm run test:e2e:init`
|
|
40
|
+
passed.
|
|
41
|
+
- `npm run precommit` passed.
|
|
42
|
+
- `npm pack --dry-run --json` produced `jterrats-open-orchestra-1.0.8.tgz`.
|
|
43
|
+
- `orchestra release check --json` passed and reported package version `1.0.8`
|
|
44
|
+
ahead of latest tag `v1.0.7`, ready for CI-owned tag creation.
|
|
45
|
+
|
|
5
46
|
## 0.5.1 - 2026-05-11
|
|
6
47
|
|
|
7
48
|
### Changed
|
package/dist/cli.js
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
import { parseArgs } from "./args.js";
|
|
2
|
-
import {
|
|
3
|
-
import { healthCommand } from "./health-commands.js";
|
|
4
|
-
import { detectAcceptCommand, detectProfileCommand, } from "./detect-commands.js";
|
|
5
|
-
import { releaseCandidateCommand, releaseCheckCommand, releaseEvidenceCommand, releaseTagCommand, } from "./release-commands.js";
|
|
2
|
+
import { dispatchCommandRoute } from "./command-routes.js";
|
|
6
3
|
import { checkPackageUpdate, renderPackageUpdateWarning, } from "./package-update-check.js";
|
|
7
4
|
import { readPackageInfo } from "./package-info.js";
|
|
8
|
-
import { upgradeCommand } from "./upgrade-commands.js";
|
|
9
5
|
import { renderCommandHelp, renderHelpTopic } from "./command-manifest.js";
|
|
10
6
|
async function runCliCommand(argv, io = console) {
|
|
11
|
-
const [command, subcommand
|
|
7
|
+
const [command, subcommand] = argv;
|
|
12
8
|
if (!command || command === "--help" || command === "-h") {
|
|
13
9
|
io.log(renderCommandHelp());
|
|
14
10
|
return;
|
|
@@ -23,446 +19,8 @@ async function runCliCommand(argv, io = console) {
|
|
|
23
19
|
if (command === "version") {
|
|
24
20
|
return versionCommand(argv.slice(1), io);
|
|
25
21
|
}
|
|
26
|
-
if (
|
|
27
|
-
return
|
|
28
|
-
}
|
|
29
|
-
if (command === "status") {
|
|
30
|
-
return statusCommand(parseArgs(argv.slice(1)), io);
|
|
31
|
-
}
|
|
32
|
-
if (command === "validate") {
|
|
33
|
-
return validateCommand(parseArgs(argv.slice(1)), io);
|
|
34
|
-
}
|
|
35
|
-
if (command === "health") {
|
|
36
|
-
return healthCommand(parseArgs(argv.slice(1)), io);
|
|
37
|
-
}
|
|
38
|
-
if (command === "upgrade") {
|
|
39
|
-
return upgradeCommand(parseArgs(argv.slice(1)), io);
|
|
40
|
-
}
|
|
41
|
-
if (command === "refresh") {
|
|
42
|
-
return refreshCommand(parseArgs(argv.slice(1)), io);
|
|
43
|
-
}
|
|
44
|
-
if (command === "diagnostics" &&
|
|
45
|
-
(subcommand === undefined || subcommand === "bundle")) {
|
|
46
|
-
return diagnosticsBundleCommand(parseArgs(subcommand ? rest : argv.slice(1)), io);
|
|
47
|
-
}
|
|
48
|
-
if (command === "advisory" && subcommand === "convert") {
|
|
49
|
-
return advisoryConvertCommand(parseArgs(rest), io);
|
|
50
|
-
}
|
|
51
|
-
if (command === "sonar" && subcommand === "import") {
|
|
52
|
-
return sonarImportCommand(parseArgs(rest), io);
|
|
53
|
-
}
|
|
54
|
-
if (command === "web" || command === "serve") {
|
|
55
|
-
return webCommand(parseArgs(argv.slice(1)), io);
|
|
56
|
-
}
|
|
57
|
-
if (command === "task" && subcommand === "add") {
|
|
58
|
-
return taskAddCommand(parseArgs(rest), io);
|
|
59
|
-
}
|
|
60
|
-
if (command === "task" && subcommand === "list") {
|
|
61
|
-
return taskListCommand(parseArgs(rest), io);
|
|
62
|
-
}
|
|
63
|
-
if (command === "task" && subcommand === "show") {
|
|
64
|
-
return taskShowCommand(parseArgs(rest), io);
|
|
65
|
-
}
|
|
66
|
-
if (command === "task" && subcommand === "update") {
|
|
67
|
-
return taskUpdateCommand(parseArgs(rest), io);
|
|
68
|
-
}
|
|
69
|
-
if (command === "task" && subcommand === "delete") {
|
|
70
|
-
return taskDeleteCommand(parseArgs(rest), io);
|
|
71
|
-
}
|
|
72
|
-
if (command === "task" && subcommand === "archive") {
|
|
73
|
-
return taskArchiveCommand(parseArgs(rest), io);
|
|
74
|
-
}
|
|
75
|
-
if (command === "task" && subcommand === "deps") {
|
|
76
|
-
return taskDepsCommand(parseArgs(rest), io);
|
|
77
|
-
}
|
|
78
|
-
if (command === "setup-agents" && subcommand === "import") {
|
|
79
|
-
return setupAgentsImportCommand(parseArgs(rest), io);
|
|
80
|
-
}
|
|
81
|
-
if (command === "delegation" && subcommand === "decide") {
|
|
82
|
-
return delegationDecideCommand(parseArgs(rest), io);
|
|
83
|
-
}
|
|
84
|
-
if (command === "graph" && subcommand === "plan") {
|
|
85
|
-
return graphPlanCommand(parseArgs(rest), io);
|
|
86
|
-
}
|
|
87
|
-
if (command === "graph" && subcommand === "run-next") {
|
|
88
|
-
return graphRunNextCommand(parseArgs(rest), io);
|
|
89
|
-
}
|
|
90
|
-
if (command === "graph" && subcommand === "run-ready") {
|
|
91
|
-
return graphRunReadyCommand(parseArgs(rest), io);
|
|
92
|
-
}
|
|
93
|
-
if (command === "github" && subcommand === "sync") {
|
|
94
|
-
return githubSyncCommand(parseArgs(rest), io);
|
|
95
|
-
}
|
|
96
|
-
if (command === "tracker" && subcommand === "sync") {
|
|
97
|
-
return trackerSyncCommand(parseArgs(rest), io);
|
|
98
|
-
}
|
|
99
|
-
if (command === "lock" && subcommand === "claim") {
|
|
100
|
-
return lockClaimCommand(parseArgs(rest), io);
|
|
101
|
-
}
|
|
102
|
-
if (command === "lock" && subcommand === "release") {
|
|
103
|
-
return lockReleaseCommand(parseArgs(rest), io);
|
|
104
|
-
}
|
|
105
|
-
if (command === "lock" && subcommand === "list") {
|
|
106
|
-
return lockListCommand(parseArgs(rest), io);
|
|
107
|
-
}
|
|
108
|
-
if (command === "roles" && subcommand === "list") {
|
|
109
|
-
return rolesListCommand(parseArgs(rest), io);
|
|
110
|
-
}
|
|
111
|
-
if (command === "skills" && subcommand === "list") {
|
|
112
|
-
return skillsListCommand(parseArgs(rest), io);
|
|
113
|
-
}
|
|
114
|
-
if (command === "skills" && subcommand === "plan") {
|
|
115
|
-
return skillsPlanCommand(parseArgs(rest), io);
|
|
116
|
-
}
|
|
117
|
-
if (command === "skills" && subcommand === "advise") {
|
|
118
|
-
return skillsAdviseCommand(parseArgs(rest), io);
|
|
119
|
-
}
|
|
120
|
-
if (command === "skills" && subcommand === "render") {
|
|
121
|
-
return skillsRenderCommand(parseArgs(rest), io);
|
|
122
|
-
}
|
|
123
|
-
if (command === "skills" && subcommand === "validate") {
|
|
124
|
-
return skillsValidateCommand(parseArgs(rest), io);
|
|
125
|
-
}
|
|
126
|
-
if (command === "collaboration" && subcommand === "flows") {
|
|
127
|
-
return collaborationFlowsCommand(parseArgs(rest), io);
|
|
128
|
-
}
|
|
129
|
-
if (command === "collaboration" && subcommand === "recommend") {
|
|
130
|
-
return collaborationRecommendCommand(parseArgs(rest), io);
|
|
131
|
-
}
|
|
132
|
-
if (command === "workflow" && subcommand === "run") {
|
|
133
|
-
return workflowRunCommand(parseArgs(rest), io);
|
|
134
|
-
}
|
|
135
|
-
if (command === "workflow" && subcommand === "runs") {
|
|
136
|
-
return workflowRunListCommand(parseArgs(rest), io);
|
|
137
|
-
}
|
|
138
|
-
if (command === "workflow" && subcommand === "cancel") {
|
|
139
|
-
return workflowCancelCommand(parseArgs(rest), io);
|
|
140
|
-
}
|
|
141
|
-
if (command === "workflow" && subcommand === "gate-approve") {
|
|
142
|
-
return workflowGateApproveCommand(parseArgs(rest), io);
|
|
143
|
-
}
|
|
144
|
-
if (command === "workflow" && subcommand === "phase-plan") {
|
|
145
|
-
return workflowPhasePlanCommand(parseArgs(rest), io);
|
|
146
|
-
}
|
|
147
|
-
if (command === "playbooks" && subcommand === "scaffold") {
|
|
148
|
-
return playbooksScaffoldCommand(parseArgs(rest), io);
|
|
149
|
-
}
|
|
150
|
-
if (command === "memory" && subcommand === "query") {
|
|
151
|
-
return memoryQueryCommand(parseArgs(rest), io);
|
|
152
|
-
}
|
|
153
|
-
if (command === "memory" && subcommand === "status") {
|
|
154
|
-
return memoryStatusCommand(parseArgs(rest), io);
|
|
155
|
-
}
|
|
156
|
-
if (command === "memory" && subcommand === "governance") {
|
|
157
|
-
return memoryGovernanceCommand(parseArgs(rest), io);
|
|
158
|
-
}
|
|
159
|
-
if (command === "memory" && subcommand === "hook") {
|
|
160
|
-
return memoryHookCommand(parseArgs(rest), io);
|
|
161
|
-
}
|
|
162
|
-
if (command === "workflow" &&
|
|
163
|
-
subcommand === "clarify" &&
|
|
164
|
-
rest[0] !== "respond" &&
|
|
165
|
-
rest[0] !== "list") {
|
|
166
|
-
return workflowClarifyCommand(parseArgs(rest), io);
|
|
167
|
-
}
|
|
168
|
-
if (command === "workflow" && subcommand === "clarify-respond") {
|
|
169
|
-
return workflowClarifyRespondCommand(parseArgs(rest), io);
|
|
170
|
-
}
|
|
171
|
-
if (command === "workflow" && subcommand === "clarify-list") {
|
|
172
|
-
return workflowClarifyListCommand(parseArgs(rest), io);
|
|
173
|
-
}
|
|
174
|
-
if (command === "estimate") {
|
|
175
|
-
return estimateCommand(parseArgs(argv.slice(1)), io);
|
|
176
|
-
}
|
|
177
|
-
if (command === "benchmark") {
|
|
178
|
-
return benchmarkCommand(parseArgs(argv.slice(1)), io);
|
|
179
|
-
}
|
|
180
|
-
if (command === "dashboard") {
|
|
181
|
-
return dashboardCommand(parseArgs(argv.slice(1)), io);
|
|
182
|
-
}
|
|
183
|
-
if (command === "velocity") {
|
|
184
|
-
return velocityCommand(parseArgs(argv.slice(1)), io);
|
|
185
|
-
}
|
|
186
|
-
if (command === "sprint") {
|
|
187
|
-
return sprintCommand(subcommand, parseArgs(rest), io);
|
|
188
|
-
}
|
|
189
|
-
if (command === "calibration") {
|
|
190
|
-
return calibrationCommand(parseArgs(argv.slice(1)), io);
|
|
191
|
-
}
|
|
192
|
-
if (command === "burndown") {
|
|
193
|
-
return burndownCommand(parseArgs(argv.slice(1)), io);
|
|
194
|
-
}
|
|
195
|
-
if (command === "workflow" && subcommand === "templates") {
|
|
196
|
-
return workflowTemplatesCommand(parseArgs(rest), io);
|
|
197
|
-
}
|
|
198
|
-
if (command === "workflow" && subcommand === "select") {
|
|
199
|
-
return workflowTemplateSelectCommand(parseArgs(rest), io);
|
|
200
|
-
}
|
|
201
|
-
if (command === "workflow" && subcommand === "render") {
|
|
202
|
-
return workflowTemplateRenderCommand(parseArgs(rest), io);
|
|
203
|
-
}
|
|
204
|
-
if (command === "commands" && subcommand === "manifest") {
|
|
205
|
-
return commandsManifestCommand(parseArgs(rest), io);
|
|
206
|
-
}
|
|
207
|
-
if (command === "runtime" && subcommand === "adapters") {
|
|
208
|
-
return runtimeAdaptersCommand(parseArgs(rest), io);
|
|
209
|
-
}
|
|
210
|
-
if (command === "runtime" && subcommand === "brief") {
|
|
211
|
-
return runtimeBriefCommand(parseArgs(rest), io);
|
|
212
|
-
}
|
|
213
|
-
if (command === "runtime" && subcommand === "delegate-plan") {
|
|
214
|
-
return runtimeDelegatePlanCommand(parseArgs(rest), io);
|
|
215
|
-
}
|
|
216
|
-
if (command === "runtime" && subcommand === "spawn-request") {
|
|
217
|
-
return runtimeSpawnRequestCommand(parseArgs(rest), io);
|
|
218
|
-
}
|
|
219
|
-
if (command === "runtime" && subcommand === "spawn-lifecycle") {
|
|
220
|
-
return runtimeSpawnLifecycleCommand(parseArgs(rest), io);
|
|
221
|
-
}
|
|
222
|
-
if (command === "runtime" && subcommand === "sessions") {
|
|
223
|
-
return runtimeSessionsCommand(parseArgs(rest), io);
|
|
224
|
-
}
|
|
225
|
-
if (command === "runtime" && subcommand === "session") {
|
|
226
|
-
return runtimeSessionCommand(parseArgs(rest), io);
|
|
227
|
-
}
|
|
228
|
-
if (command === "runtime" && subcommand === "handoff") {
|
|
229
|
-
return runtimeHandoffCommand(parseArgs(rest), io);
|
|
230
|
-
}
|
|
231
|
-
if (command === "runtime" && subcommand === "bootstrap") {
|
|
232
|
-
return runtimeBootstrapCommand(parseArgs(rest), io);
|
|
233
|
-
}
|
|
234
|
-
if (command === "protocol" && subcommand === "render") {
|
|
235
|
-
return protocolRenderCommand(parseArgs(rest), io);
|
|
236
|
-
}
|
|
237
|
-
if (command === "protocol" && subcommand === "block") {
|
|
238
|
-
return protocolBlockCommand(parseArgs(rest), io);
|
|
239
|
-
}
|
|
240
|
-
if (command === "detect" && subcommand === "profile") {
|
|
241
|
-
return detectProfileCommand(parseArgs(rest), io);
|
|
242
|
-
}
|
|
243
|
-
if (command === "detect" && subcommand === "accept") {
|
|
244
|
-
return detectAcceptCommand(parseArgs(rest), io);
|
|
245
|
-
}
|
|
246
|
-
if (command === "instructions" && subcommand === "apply") {
|
|
247
|
-
return instructionsApplyCommand(parseArgs(rest), io);
|
|
248
|
-
}
|
|
249
|
-
if (command === "instructions" && subcommand === "stale") {
|
|
250
|
-
return instructionsStaleCommand(parseArgs(rest), io);
|
|
251
|
-
}
|
|
252
|
-
if (command === "instructions" && subcommand === "block") {
|
|
253
|
-
return instructionsBlockCommand(parseArgs(rest), io);
|
|
254
|
-
}
|
|
255
|
-
if (command === "instructions" && subcommand === "imports") {
|
|
256
|
-
return instructionsImportsCommand(parseArgs(rest), io);
|
|
257
|
-
}
|
|
258
|
-
if (command === "diagrams" && subcommand === "lint") {
|
|
259
|
-
return diagramsLintCommand(parseArgs(rest), io);
|
|
260
|
-
}
|
|
261
|
-
if (command === "visual" && subcommand === "validate") {
|
|
262
|
-
return visualValidateCommand(parseArgs(rest), io);
|
|
263
|
-
}
|
|
264
|
-
if (command === "doc-sync" && subcommand === "audit") {
|
|
265
|
-
return docSyncAuditCommand(parseArgs(rest), io);
|
|
266
|
-
}
|
|
267
|
-
if (command === "mcp" &&
|
|
268
|
-
subcommand === "oauth-proxy" &&
|
|
269
|
-
rest[0] === "evaluate") {
|
|
270
|
-
return mcpOAuthProxyEvaluateCommand(parseArgs(rest.slice(1)), io);
|
|
271
|
-
}
|
|
272
|
-
if (command === "mcp" &&
|
|
273
|
-
subcommand === "oauth-proxy" &&
|
|
274
|
-
rest[0] === "start") {
|
|
275
|
-
return mcpOAuthProxyStartCommand(parseArgs(rest.slice(1)), io);
|
|
276
|
-
}
|
|
277
|
-
if (command === "mcp" &&
|
|
278
|
-
subcommand === "oauth-proxy" &&
|
|
279
|
-
rest[0] === "token") {
|
|
280
|
-
return mcpOAuthProxyTokenCommand(rest[1], parseArgs(rest.slice(2)), io);
|
|
281
|
-
}
|
|
282
|
-
if (command === "mcp" && subcommand === "integrations") {
|
|
283
|
-
return mcpIntegrationsCommand(parseArgs(rest), io);
|
|
284
|
-
}
|
|
285
|
-
if (command === "mcp" && subcommand === "tool" && rest[0] === "invoke") {
|
|
286
|
-
return mcpToolInvokeCommand(parseArgs(rest.slice(1)), io);
|
|
287
|
-
}
|
|
288
|
-
if (command === "sources" && subcommand === "list") {
|
|
289
|
-
return sourcesListCommand(parseArgs(rest), io);
|
|
290
|
-
}
|
|
291
|
-
if (command === "lessons" && subcommand === "list") {
|
|
292
|
-
return lessonsListCommand(parseArgs(rest), io);
|
|
293
|
-
}
|
|
294
|
-
if (command === "lessons" && subcommand === "add") {
|
|
295
|
-
return lessonsAddCommand(parseArgs(rest), io);
|
|
296
|
-
}
|
|
297
|
-
if (command === "lessons" && subcommand === "assist") {
|
|
298
|
-
return lessonsAssistCommand(parseArgs(rest), io);
|
|
299
|
-
}
|
|
300
|
-
if (command === "lessons" && subcommand === "delete") {
|
|
301
|
-
return lessonsDeleteCommand(parseArgs(rest), io);
|
|
302
|
-
}
|
|
303
|
-
if (command === "lessons" && subcommand === "archive") {
|
|
304
|
-
return lessonsArchiveCommand(parseArgs(rest), io);
|
|
305
|
-
}
|
|
306
|
-
if (command === "lessons" && subcommand === "redact") {
|
|
307
|
-
return lessonsRedactCommand(parseArgs(rest), io);
|
|
308
|
-
}
|
|
309
|
-
if (command === "lessons" && subcommand === "prune") {
|
|
310
|
-
return lessonsPruneCommand(parseArgs(rest), io);
|
|
311
|
-
}
|
|
312
|
-
if (command === "lessons" && subcommand === "promote") {
|
|
313
|
-
return lessonsPromoteCommand(parseArgs(rest), io);
|
|
314
|
-
}
|
|
315
|
-
if (command === "prompts" && subcommand === "update") {
|
|
316
|
-
return promptsUpdateCommand(parseArgs(rest), io);
|
|
317
|
-
}
|
|
318
|
-
if (command === "summary") {
|
|
319
|
-
return summaryCommand(parseArgs(argv.slice(1)), io);
|
|
320
|
-
}
|
|
321
|
-
if (command === "usage") {
|
|
322
|
-
return usageCommand(parseArgs(argv.slice(1)), io);
|
|
323
|
-
}
|
|
324
|
-
if (command === "budget" && subcommand === "check") {
|
|
325
|
-
return budgetCheckCommand(parseArgs(rest), io);
|
|
326
|
-
}
|
|
327
|
-
if (command === "policy" && subcommand === "evaluate") {
|
|
328
|
-
return policyEvaluateCommand(parseArgs(rest), io);
|
|
329
|
-
}
|
|
330
|
-
if (command === "telemetry" && subcommand === "status") {
|
|
331
|
-
return telemetryStatusCommand(parseArgs(rest), io);
|
|
332
|
-
}
|
|
333
|
-
if (command === "telemetry" && subcommand === "enable") {
|
|
334
|
-
return telemetryEnableCommand(parseArgs(rest), io);
|
|
335
|
-
}
|
|
336
|
-
if (command === "telemetry" && subcommand === "disable") {
|
|
337
|
-
return telemetryDisableCommand(parseArgs(rest), io);
|
|
338
|
-
}
|
|
339
|
-
if (command === "telemetry" && subcommand === "export") {
|
|
340
|
-
return telemetryExportCommand(parseArgs(rest), io);
|
|
341
|
-
}
|
|
342
|
-
if (command === "telemetry" && subcommand === "submit") {
|
|
343
|
-
return telemetrySubmitCommand(parseArgs(rest), io);
|
|
344
|
-
}
|
|
345
|
-
if (command === "telemetry" && subcommand === "eval-dataset") {
|
|
346
|
-
return telemetryEvalDatasetCommand(parseArgs(rest), io);
|
|
347
|
-
}
|
|
348
|
-
if (command === "config" && subcommand === "show") {
|
|
349
|
-
return configShowCommand(parseArgs(rest), io);
|
|
350
|
-
}
|
|
351
|
-
if (command === "config" && subcommand === "migrate") {
|
|
352
|
-
return configMigrateCommand(parseArgs(rest), io);
|
|
353
|
-
}
|
|
354
|
-
if (command === "approvals" && subcommand === "list") {
|
|
355
|
-
return approvalsListCommand(parseArgs(rest), io);
|
|
356
|
-
}
|
|
357
|
-
if (command === "approvals" && subcommand === "show") {
|
|
358
|
-
return approvalsShowCommand(parseArgs(rest), io);
|
|
359
|
-
}
|
|
360
|
-
if (command === "approvals" && subcommand === "approve") {
|
|
361
|
-
return approvalsApproveCommand(parseArgs(rest), io);
|
|
362
|
-
}
|
|
363
|
-
if (command === "approvals" && subcommand === "reject") {
|
|
364
|
-
return approvalsRejectCommand(parseArgs(rest), io);
|
|
365
|
-
}
|
|
366
|
-
if (command === "pr-summary") {
|
|
367
|
-
return prSummaryCommand(parseArgs(argv.slice(1)), io);
|
|
368
|
-
}
|
|
369
|
-
if (command === "context") {
|
|
370
|
-
return contextCommand(parseArgs(argv.slice(1)), io);
|
|
371
|
-
}
|
|
372
|
-
if (command === "plan") {
|
|
373
|
-
return planCommand(parseArgs(argv.slice(1)), io);
|
|
374
|
-
}
|
|
375
|
-
if (command === "run") {
|
|
376
|
-
return runCommand(parseArgs(argv.slice(1)), io);
|
|
377
|
-
}
|
|
378
|
-
if (command === "readiness") {
|
|
379
|
-
return readinessCommand(parseArgs(argv.slice(1)), io);
|
|
380
|
-
}
|
|
381
|
-
if (command === "release" && subcommand === "check") {
|
|
382
|
-
return releaseCheckCommand(parseArgs(rest), io);
|
|
383
|
-
}
|
|
384
|
-
if (command === "release" && subcommand === "candidate") {
|
|
385
|
-
return releaseCandidateCommand(parseArgs(rest), io);
|
|
386
|
-
}
|
|
387
|
-
if (command === "release" && subcommand === "tag") {
|
|
388
|
-
return releaseTagCommand(parseArgs(rest), io);
|
|
389
|
-
}
|
|
390
|
-
if (command === "release" && subcommand === "evidence") {
|
|
391
|
-
return releaseEvidenceCommand(parseArgs(rest), io);
|
|
392
|
-
}
|
|
393
|
-
if (command === "gate") {
|
|
394
|
-
return gateCommand(parseArgs(argv.slice(1)), io);
|
|
395
|
-
}
|
|
396
|
-
if (command === "handoff") {
|
|
397
|
-
return handoffCommand(parseArgs(argv.slice(1)), io);
|
|
398
|
-
}
|
|
399
|
-
if (command === "review" && subcommand === "list") {
|
|
400
|
-
return reviewListCommand(parseArgs(rest), io);
|
|
401
|
-
}
|
|
402
|
-
if (command === "review") {
|
|
403
|
-
return reviewCommand(parseArgs(argv.slice(1)), io);
|
|
404
|
-
}
|
|
405
|
-
if (command === "decision" && subcommand === "add") {
|
|
406
|
-
return decisionAddCommand(parseArgs(rest), io);
|
|
407
|
-
}
|
|
408
|
-
if (command === "decision" && subcommand === "list") {
|
|
409
|
-
return decisionListCommand(parseArgs(rest), io);
|
|
410
|
-
}
|
|
411
|
-
if (command === "evidence" && subcommand === "add") {
|
|
412
|
-
return evidenceCommand(parseArgs(rest), io);
|
|
413
|
-
}
|
|
414
|
-
if (command === "evidence" && subcommand === "list") {
|
|
415
|
-
return evidenceListCommand(parseArgs(rest), io);
|
|
416
|
-
}
|
|
417
|
-
if (command === "extensions" && subcommand === "list") {
|
|
418
|
-
return extensionsListCommand(parseArgs(rest), io);
|
|
419
|
-
}
|
|
420
|
-
if (command === "extensions" && subcommand === "validate") {
|
|
421
|
-
return extensionsValidateCommand(parseArgs(rest), io);
|
|
422
|
-
}
|
|
423
|
-
if (command === "playwright" && subcommand === "plan") {
|
|
424
|
-
return playwrightPlanCommand(parseArgs(rest), io);
|
|
425
|
-
}
|
|
426
|
-
if (command === "playwright" && subcommand === "evidence") {
|
|
427
|
-
return playwrightEvidenceCommand(parseArgs(rest), io);
|
|
428
|
-
}
|
|
429
|
-
if (command === "qa" && subcommand === "coverage") {
|
|
430
|
-
return qaCoverageCommand(parseArgs(rest), io);
|
|
431
|
-
}
|
|
432
|
-
if (command === "model" && subcommand === "providers") {
|
|
433
|
-
return modelProvidersCommand(parseArgs(rest), io);
|
|
434
|
-
}
|
|
435
|
-
if (command === "model" && subcommand === "connect") {
|
|
436
|
-
return modelConnectCommand(parseArgs(rest), io);
|
|
437
|
-
}
|
|
438
|
-
if (command === "model" && subcommand === "profile" && rest[0] === "list") {
|
|
439
|
-
return modelProfileListCommand(parseArgs(rest.slice(1)), io);
|
|
440
|
-
}
|
|
441
|
-
if (command === "model" && subcommand === "profile" && rest[0] === "set") {
|
|
442
|
-
return modelProfileSetCommand(parseArgs(rest.slice(1)), io);
|
|
443
|
-
}
|
|
444
|
-
if (command === "model" && subcommand === "profile" && rest[0] === "apply") {
|
|
445
|
-
return modelProfileApplyCommand(parseArgs(rest.slice(1)), io);
|
|
446
|
-
}
|
|
447
|
-
if (command === "model" && subcommand === "profile" && rest[0] === "smoke") {
|
|
448
|
-
return modelProfileSmokeCommand(parseArgs(rest.slice(1)), io);
|
|
449
|
-
}
|
|
450
|
-
if (command === "model" && subcommand === "set-role") {
|
|
451
|
-
return modelSetRoleCommand(parseArgs(rest), io);
|
|
452
|
-
}
|
|
453
|
-
if (command === "model" && subcommand === "complete-fake") {
|
|
454
|
-
return modelCompleteFakeCommand(parseArgs(rest), io);
|
|
455
|
-
}
|
|
456
|
-
if (command === "cursor" && subcommand === "canvas") {
|
|
457
|
-
return cursorCanvasCommand(rest[0], parseArgs(rest.slice(1)), io);
|
|
458
|
-
}
|
|
459
|
-
if (command === "model" && subcommand === "provenance" && rest[0] === "add") {
|
|
460
|
-
return modelProvenanceAddCommand(parseArgs(rest.slice(1)), io);
|
|
461
|
-
}
|
|
462
|
-
if (command === "model" &&
|
|
463
|
-
subcommand === "provenance" &&
|
|
464
|
-
rest[0] === "list") {
|
|
465
|
-
return modelProvenanceListCommand(parseArgs(rest.slice(1)), io);
|
|
22
|
+
if (await dispatchCommandRoute(argv, io)) {
|
|
23
|
+
return;
|
|
466
24
|
}
|
|
467
25
|
throw new Error(`unknown command: ${argv.join(" ")}`);
|
|
468
26
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,6BAA6B,EAC7B,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,wBAAwB,EACxB,UAAU,EACV,yBAAyB,EACzB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,UAAU,EACV,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,4BAA4B,EAC5B,0BAA0B,EAC1B,6BAA6B,EAC7B,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG3E,KAAK,UAAU,aAAa,CAC1B,IAAc,EACd,KAAY,OAAO;IAEnB,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5C,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,EAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IACE,OAAO,KAAK,aAAa;QACzB,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,CAAC,EACrD,CAAC;QACD,OAAO,wBAAwB,CAC7B,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC5C,EAAE,CACH,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAC7C,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC/C,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAChD,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAChD,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAChD,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,KAAK,cAAc,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACjD,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACrD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QACtD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACjD,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAChD,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACjD,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,eAAe,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC1D,OAAO,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,eAAe,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAC9D,OAAO,6BAA6B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACpD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QAC5D,OAAO,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;QAC1D,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACzD,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IACE,OAAO,KAAK,UAAU;QACtB,UAAU,KAAK,SAAS;QACxB,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS;QACrB,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAClB,CAAC;QACD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,iBAAiB,EAAE,CAAC;QAC/D,OAAO,6BAA6B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QAC5D,OAAO,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QAC9B,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QACzD,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,6BAA6B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,6BAA6B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;QAC5D,OAAO,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;QAC5D,OAAO,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,iBAAiB,EAAE,CAAC;QAC9D,OAAO,4BAA4B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,cAAc,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACzD,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,cAAc,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACzD,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,cAAc,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACzD,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,cAAc,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC3D,OAAO,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACrD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IACE,OAAO,KAAK,KAAK;QACjB,UAAU,KAAK,aAAa;QAC5B,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,EACtB,CAAC;QACD,OAAO,4BAA4B,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,IACE,OAAO,KAAK,KAAK;QACjB,UAAU,KAAK,aAAa;QAC5B,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EACnB,CAAC;QACD,OAAO,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,IACE,OAAO,KAAK,KAAK;QACjB,UAAU,KAAK,aAAa;QAC5B,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EACnB,CAAC;QACD,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,IAAI,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACvE,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QAC7D,OAAO,2BAA2B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACrD,OAAO,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC7B,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QACxD,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACvD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACnD,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACnD,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC1D,OAAO,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC1D,OAAO,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,IAAI,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAClD,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QACtD,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC1E,OAAO,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QACzE,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3E,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3E,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACrD,OAAO,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;QAC1D,OAAO,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QAC5E,OAAO,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,IACE,OAAO,KAAK,OAAO;QACnB,UAAU,KAAK,YAAY;QAC3B,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAClB,CAAC;QACD,OAAO,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,IAAc,EACd,KAAY,OAAO;IAEnB,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,IAAI,2BAA2B,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,uBAAuB,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAc,EAAE,EAAS;IACrD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,WAAW,GAAG,MAAM,eAAe,EAAE,CAAC;IAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1B,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAc;IACjD,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,GAAG,CAAC;AACzD,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,EAAS;IAC9C,MAAM,WAAW,GAAG,MAAM,eAAe,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;QACtC,WAAW,EAAE,WAAW,CAAC,IAAI;QAC7B,cAAc,EAAE,WAAW,CAAC,OAAO;KACpC,CAAC,CAAC;IACH,IAAI,MAAM,EAAE,UAAU,EAAE,CAAC;QACvB,EAAE,CAAC,GAAG,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG3E,KAAK,UAAU,aAAa,CAC1B,IAAc,EACd,KAAY,OAAO;IAEnB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,EAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;QACzC,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,IAAc,EACd,KAAY,OAAO;IAEnB,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,IAAI,2BAA2B,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,uBAAuB,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAc,EAAE,EAAS;IACrD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,WAAW,GAAG,MAAM,eAAe,EAAE,CAAC;IAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1B,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAc;IACjD,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,GAAG,CAAC;AACzD,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,EAAS;IAC9C,MAAM,WAAW,GAAG,MAAM,eAAe,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;QACtC,WAAW,EAAE,WAAW,CAAC,IAAI;QAC7B,cAAc,EAAE,WAAW,CAAC,OAAO;KACpC,CAAC,CAAC;IACH,IAAI,MAAM,EAAE,UAAU,EAAE,CAAC;QACvB,EAAE,CAAC,GAAG,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { parseArgs } from "./args.js";
|
|
2
|
+
import type { CliIo } from "./types.js";
|
|
3
|
+
export type RouteContext = {
|
|
4
|
+
argv: string[];
|
|
5
|
+
command: string;
|
|
6
|
+
subcommand: string | undefined;
|
|
7
|
+
rest: string[];
|
|
8
|
+
io: CliIo;
|
|
9
|
+
};
|
|
10
|
+
export type Route = {
|
|
11
|
+
matches: (context: RouteContext) => boolean;
|
|
12
|
+
run: (context: RouteContext) => Promise<void> | void | false;
|
|
13
|
+
};
|
|
14
|
+
export type CommandHandler = (options: ReturnType<typeof parseArgs>, io: CliIo) => Promise<void> | void;
|
|
15
|
+
export declare function singleCommandRoutes(entries: Array<[string, CommandHandler]>): Route[];
|
|
16
|
+
export declare function subcommandRoutes(command: string, entries: Array<[string, CommandHandler]>): Route[];
|
|
17
|
+
export declare function subcommandRoute(command: string, subcommand: string, handler: CommandHandler): Route;
|
|
18
|
+
export declare function route(command: string, subcommand: string | undefined, run: (context: RouteContext) => Promise<void> | void | false): Route;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { parseArgs } from "./args.js";
|
|
2
|
+
export function singleCommandRoutes(entries) {
|
|
3
|
+
return entries.map(([command, handler]) => route(command, undefined, ({ argv, io }) => handler(parseArgs(argv.slice(1)), io)));
|
|
4
|
+
}
|
|
5
|
+
export function subcommandRoutes(command, entries) {
|
|
6
|
+
return entries.map(([subcommand, handler]) => subcommandRoute(command, subcommand, handler));
|
|
7
|
+
}
|
|
8
|
+
export function subcommandRoute(command, subcommand, handler) {
|
|
9
|
+
return route(command, subcommand, ({ rest, io }) => handler(parseArgs(rest), io));
|
|
10
|
+
}
|
|
11
|
+
export function route(command, subcommand, run) {
|
|
12
|
+
return {
|
|
13
|
+
matches: (context) => context.command === command &&
|
|
14
|
+
(subcommand === undefined || context.subcommand === subcommand),
|
|
15
|
+
run,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=command-route-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-route-utils.js","sourceRoot":"","sources":["../src/command-route-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAqBtC,MAAM,UAAU,mBAAmB,CACjC,OAAwC;IAExC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,CACxC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CACzC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,OAAwC;IAExC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,CAC3C,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,UAAkB,EAClB,OAAuB;IAEvB,OAAO,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CACjD,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CACnB,OAAe,EACf,UAA8B,EAC9B,GAA4D;IAE5D,OAAO;QACL,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CACnB,OAAO,CAAC,OAAO,KAAK,OAAO;YAC3B,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,UAAU,CAAC;QACjE,GAAG;KACJ,CAAC;AACJ,CAAC"}
|