@sudocode-ai/local-server 0.1.11 → 0.1.13

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 (72) hide show
  1. package/dist/execution/adapters/claude-adapter.js +1 -1
  2. package/dist/execution/adapters/claude-adapter.js.map +1 -1
  3. package/dist/execution/executors/agent-executor-wrapper.d.ts.map +1 -1
  4. package/dist/execution/executors/agent-executor-wrapper.js +19 -3
  5. package/dist/execution/executors/agent-executor-wrapper.js.map +1 -1
  6. package/dist/execution/executors/executor-factory.d.ts.map +1 -1
  7. package/dist/execution/executors/executor-factory.js +11 -3
  8. package/dist/execution/executors/executor-factory.js.map +1 -1
  9. package/dist/execution/worktree/git-sync-cli.d.ts +28 -1
  10. package/dist/execution/worktree/git-sync-cli.d.ts.map +1 -1
  11. package/dist/execution/worktree/git-sync-cli.js +65 -2
  12. package/dist/execution/worktree/git-sync-cli.js.map +1 -1
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +2 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/public/assets/index-3qSRtUlY.js +844 -0
  17. package/dist/public/assets/{index-Z8yftXvD.js.map → index-3qSRtUlY.js.map} +1 -1
  18. package/dist/public/assets/{index-Nz4IjDwB.css → index-p0337DGd.css} +1 -1
  19. package/dist/public/assets/{ui-vendor-BDDPoYki.js → ui-vendor-BuU3mq4G.js} +2 -2
  20. package/dist/public/assets/{ui-vendor-BDDPoYki.js.map → ui-vendor-BuU3mq4G.js.map} +1 -1
  21. package/dist/public/index.html +3 -3
  22. package/dist/routes/config.d.ts.map +1 -1
  23. package/dist/routes/config.js +100 -9
  24. package/dist/routes/config.js.map +1 -1
  25. package/dist/routes/issues.d.ts.map +1 -1
  26. package/dist/routes/issues.js +27 -5
  27. package/dist/routes/issues.js.map +1 -1
  28. package/dist/routes/plugins.d.ts +27 -0
  29. package/dist/routes/plugins.d.ts.map +1 -0
  30. package/dist/routes/plugins.js +508 -0
  31. package/dist/routes/plugins.js.map +1 -0
  32. package/dist/routes/specs.js +2 -2
  33. package/dist/routes/specs.js.map +1 -1
  34. package/dist/services/editor-service.d.ts +1 -1
  35. package/dist/services/editor-service.d.ts.map +1 -1
  36. package/dist/services/editor-service.js +2 -2
  37. package/dist/services/editor-service.js.map +1 -1
  38. package/dist/services/execution-service.d.ts.map +1 -1
  39. package/dist/services/execution-service.js +54 -2
  40. package/dist/services/execution-service.js.map +1 -1
  41. package/dist/services/export.d.ts +3 -1
  42. package/dist/services/export.d.ts.map +1 -1
  43. package/dist/services/export.js +4 -2
  44. package/dist/services/export.js.map +1 -1
  45. package/dist/services/integration-sync-service.d.ts +185 -0
  46. package/dist/services/integration-sync-service.d.ts.map +1 -0
  47. package/dist/services/integration-sync-service.js +428 -0
  48. package/dist/services/integration-sync-service.js.map +1 -0
  49. package/dist/services/project-context.d.ts +3 -0
  50. package/dist/services/project-context.d.ts.map +1 -1
  51. package/dist/services/project-context.js +7 -0
  52. package/dist/services/project-context.js.map +1 -1
  53. package/dist/services/project-manager.d.ts.map +1 -1
  54. package/dist/services/project-manager.js +20 -1
  55. package/dist/services/project-manager.js.map +1 -1
  56. package/dist/services/websocket.d.ts +8 -0
  57. package/dist/services/websocket.d.ts.map +1 -1
  58. package/dist/services/websocket.js +7 -0
  59. package/dist/services/websocket.js.map +1 -1
  60. package/dist/services/workflow-broadcast-service.d.ts.map +1 -1
  61. package/dist/services/workflow-broadcast-service.js +10 -0
  62. package/dist/services/workflow-broadcast-service.js.map +1 -1
  63. package/dist/services/worktree-sync-service.d.ts +40 -1
  64. package/dist/services/worktree-sync-service.d.ts.map +1 -1
  65. package/dist/services/worktree-sync-service.js +189 -16
  66. package/dist/services/worktree-sync-service.js.map +1 -1
  67. package/dist/types/editor.d.ts +1 -1
  68. package/dist/workflow/base-workflow-engine.d.ts.map +1 -1
  69. package/dist/workflow/base-workflow-engine.js +9 -1
  70. package/dist/workflow/base-workflow-engine.js.map +1 -1
  71. package/package.json +3 -3
  72. package/dist/public/assets/index-Z8yftXvD.js +0 -824
@@ -0,0 +1,508 @@
1
+ /**
2
+ * Server routes for plugin management
3
+ *
4
+ * Provides API endpoints for listing, activating, and configuring integration plugins.
5
+ */
6
+ import { Router } from "express";
7
+ import { existsSync, readFileSync, writeFileSync } from "fs";
8
+ import { execSync } from "child_process";
9
+ import * as path from "path";
10
+ import { getFirstPartyPlugins, loadPlugin, validateProviderConfig, testProviderConnection, } from "@sudocode-ai/cli/dist/integrations/index.js";
11
+ /**
12
+ * Helper to read config.json
13
+ */
14
+ function readConfig(sudocodeDir) {
15
+ const configPath = path.join(sudocodeDir, "config.json");
16
+ if (!existsSync(configPath)) {
17
+ return {};
18
+ }
19
+ return JSON.parse(readFileSync(configPath, "utf-8"));
20
+ }
21
+ /**
22
+ * Helper to write config.json
23
+ */
24
+ function writeConfig(sudocodeDir, config) {
25
+ const configPath = path.join(sudocodeDir, "config.json");
26
+ writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n", "utf-8");
27
+ }
28
+ /**
29
+ * Check if a plugin is installed by attempting to load it
30
+ */
31
+ async function isPluginInstalled(pluginName) {
32
+ const plugin = await loadPlugin(pluginName);
33
+ return plugin !== null;
34
+ }
35
+ export function createPluginsRouter() {
36
+ const router = Router();
37
+ /**
38
+ * GET /api/plugins - List all available plugins with their status
39
+ *
40
+ * Returns both first-party plugins and any custom plugins configured in config.json
41
+ */
42
+ router.get("/", async (req, res) => {
43
+ try {
44
+ const firstPartyPlugins = getFirstPartyPlugins();
45
+ const config = readConfig(req.project.sudocodeDir);
46
+ const integrations = (config.integrations || {});
47
+ const plugins = await Promise.all(firstPartyPlugins.map(async (p) => {
48
+ const installed = await isPluginInstalled(p.name);
49
+ const providerConfig = integrations[p.name];
50
+ const activated = !!providerConfig;
51
+ const enabled = providerConfig?.enabled ?? false;
52
+ let displayName;
53
+ let version;
54
+ let description;
55
+ let configSchema;
56
+ if (installed) {
57
+ const plugin = await loadPlugin(p.name);
58
+ if (plugin) {
59
+ displayName = plugin.displayName;
60
+ version = plugin.version;
61
+ description = plugin.description;
62
+ configSchema = plugin.configSchema;
63
+ }
64
+ }
65
+ return {
66
+ name: p.name,
67
+ displayName,
68
+ package: p.package,
69
+ version,
70
+ description,
71
+ installed,
72
+ activated,
73
+ enabled,
74
+ configSchema,
75
+ options: providerConfig?.options,
76
+ integrationConfig: providerConfig
77
+ ? {
78
+ auto_sync: providerConfig.auto_sync,
79
+ auto_import: providerConfig.auto_import,
80
+ delete_behavior: providerConfig.delete_behavior,
81
+ conflict_resolution: providerConfig.conflict_resolution,
82
+ default_sync_direction: providerConfig.default_sync_direction,
83
+ }
84
+ : undefined,
85
+ };
86
+ }));
87
+ // Also include any custom plugins from config that aren't first-party
88
+ const firstPartyNames = new Set(firstPartyPlugins.map((p) => p.name));
89
+ for (const [name, providerConfig] of Object.entries(integrations)) {
90
+ if (!firstPartyNames.has(name) && providerConfig) {
91
+ const pluginId = providerConfig.plugin || name;
92
+ const installed = await isPluginInstalled(pluginId);
93
+ let displayName;
94
+ let version;
95
+ let description;
96
+ let configSchema;
97
+ if (installed) {
98
+ const plugin = await loadPlugin(pluginId);
99
+ if (plugin) {
100
+ displayName = plugin.displayName;
101
+ version = plugin.version;
102
+ description = plugin.description;
103
+ configSchema = plugin.configSchema;
104
+ }
105
+ }
106
+ plugins.push({
107
+ name,
108
+ displayName,
109
+ package: pluginId,
110
+ version,
111
+ description,
112
+ installed,
113
+ activated: true,
114
+ enabled: providerConfig.enabled ?? false,
115
+ configSchema,
116
+ options: providerConfig.options,
117
+ integrationConfig: {
118
+ auto_sync: providerConfig.auto_sync,
119
+ auto_import: providerConfig.auto_import,
120
+ delete_behavior: providerConfig.delete_behavior,
121
+ conflict_resolution: providerConfig.conflict_resolution,
122
+ default_sync_direction: providerConfig.default_sync_direction,
123
+ },
124
+ });
125
+ }
126
+ }
127
+ res.status(200).json({ success: true, data: { plugins } });
128
+ }
129
+ catch (error) {
130
+ console.error("Failed to list plugins:", error);
131
+ res.status(500).json({ error: "Failed to list plugins" });
132
+ }
133
+ });
134
+ /**
135
+ * GET /api/plugins/:name - Get details for a specific plugin
136
+ */
137
+ router.get("/:name", async (req, res) => {
138
+ try {
139
+ const { name } = req.params;
140
+ const config = readConfig(req.project.sudocodeDir);
141
+ const integrations = (config.integrations || {});
142
+ const providerConfig = integrations[name];
143
+ const installed = await isPluginInstalled(name);
144
+ if (!installed) {
145
+ res.status(404).json({
146
+ error: `Plugin '${name}' is not installed`,
147
+ installed: false,
148
+ });
149
+ return;
150
+ }
151
+ const plugin = await loadPlugin(name);
152
+ if (!plugin) {
153
+ res.status(500).json({ error: `Failed to load plugin '${name}'` });
154
+ return;
155
+ }
156
+ const pluginInfo = {
157
+ name,
158
+ displayName: plugin.displayName,
159
+ package: `@sudocode-ai/integration-${name}`,
160
+ version: plugin.version,
161
+ description: plugin.description,
162
+ installed: true,
163
+ activated: !!providerConfig,
164
+ enabled: providerConfig?.enabled ?? false,
165
+ configSchema: plugin.configSchema,
166
+ options: providerConfig?.options,
167
+ };
168
+ res.status(200).json({ success: true, data: pluginInfo });
169
+ }
170
+ catch (error) {
171
+ console.error("Failed to get plugin:", error);
172
+ res.status(500).json({ error: "Failed to get plugin details" });
173
+ }
174
+ });
175
+ /**
176
+ * POST /api/plugins/:name/activate - Activate a plugin
177
+ *
178
+ * Creates an entry in config.json integrations section with enabled: true
179
+ * Optionally accepts initial options in the request body
180
+ */
181
+ router.post("/:name/activate", async (req, res) => {
182
+ try {
183
+ const { name } = req.params;
184
+ const { options = {} } = req.body;
185
+ // Check if plugin is installed
186
+ const installed = await isPluginInstalled(name);
187
+ if (!installed) {
188
+ res.status(400).json({
189
+ error: `Plugin '${name}' is not installed. Install with: sudocode plugin install ${name}`,
190
+ installed: false,
191
+ });
192
+ return;
193
+ }
194
+ // Load plugin to validate options
195
+ const plugin = await loadPlugin(name);
196
+ if (!plugin) {
197
+ res.status(500).json({ error: `Failed to load plugin '${name}'` });
198
+ return;
199
+ }
200
+ // Validate options if provided
201
+ if (Object.keys(options).length > 0) {
202
+ const validation = plugin.validateConfig(options);
203
+ if (!validation.valid) {
204
+ res.status(400).json({
205
+ error: "Invalid plugin options",
206
+ errors: validation.errors,
207
+ warnings: validation.warnings,
208
+ });
209
+ return;
210
+ }
211
+ }
212
+ // Read and update config
213
+ const config = readConfig(req.project.sudocodeDir);
214
+ const integrations = (config.integrations || {});
215
+ // Create or update provider config
216
+ const providerConfig = {
217
+ enabled: true,
218
+ auto_sync: true, // Enable auto-sync by default when activating
219
+ options,
220
+ ...(integrations[name] || {}),
221
+ };
222
+ providerConfig.enabled = true; // Ensure enabled is set
223
+ providerConfig.auto_sync = true; // Ensure auto_sync is enabled
224
+ if (Object.keys(options).length > 0) {
225
+ providerConfig.options = options;
226
+ }
227
+ integrations[name] = providerConfig;
228
+ config.integrations = integrations;
229
+ // Write updated config
230
+ writeConfig(req.project.sudocodeDir, config);
231
+ // Reload integration sync service to pick up new config
232
+ if (req.project.integrationSyncService) {
233
+ await req.project.integrationSyncService.reload();
234
+ }
235
+ res.status(200).json({
236
+ success: true,
237
+ data: {
238
+ message: `Plugin '${name}' activated`,
239
+ plugin: {
240
+ name,
241
+ displayName: plugin.displayName,
242
+ enabled: true,
243
+ options: providerConfig.options,
244
+ },
245
+ },
246
+ });
247
+ }
248
+ catch (error) {
249
+ console.error("Failed to activate plugin:", error);
250
+ res.status(500).json({ error: "Failed to activate plugin" });
251
+ }
252
+ });
253
+ /**
254
+ * POST /api/plugins/:name/deactivate - Deactivate a plugin
255
+ *
256
+ * Sets enabled: false in config.json (keeps the configuration)
257
+ */
258
+ router.post("/:name/deactivate", async (req, res) => {
259
+ try {
260
+ const { name } = req.params;
261
+ const config = readConfig(req.project.sudocodeDir);
262
+ const integrations = (config.integrations || {});
263
+ if (!integrations[name]) {
264
+ res.status(404).json({
265
+ error: `Plugin '${name}' is not configured`,
266
+ });
267
+ return;
268
+ }
269
+ // Set enabled to false (preserve other config)
270
+ integrations[name].enabled = false;
271
+ integrations[name].auto_sync = false; // Also disable auto-sync
272
+ config.integrations = integrations;
273
+ writeConfig(req.project.sudocodeDir, config);
274
+ // Reload integration sync service to stop watching/polling
275
+ if (req.project.integrationSyncService) {
276
+ await req.project.integrationSyncService.reload();
277
+ }
278
+ res.status(200).json({
279
+ success: true,
280
+ data: {
281
+ message: `Plugin '${name}' deactivated`,
282
+ },
283
+ });
284
+ }
285
+ catch (error) {
286
+ console.error("Failed to deactivate plugin:", error);
287
+ res.status(500).json({ error: "Failed to deactivate plugin" });
288
+ }
289
+ });
290
+ /**
291
+ * PUT /api/plugins/:name/options - Update plugin options and integration config
292
+ *
293
+ * Validates options against plugin schema before saving
294
+ * Also accepts integrationConfig for sync settings
295
+ */
296
+ router.put("/:name/options", async (req, res) => {
297
+ try {
298
+ const { name } = req.params;
299
+ const { options = {}, integrationConfig = {} } = req.body;
300
+ // Check if plugin is installed
301
+ const installed = await isPluginInstalled(name);
302
+ if (!installed) {
303
+ res.status(400).json({
304
+ error: `Plugin '${name}' is not installed`,
305
+ });
306
+ return;
307
+ }
308
+ // Validate options if provided
309
+ if (Object.keys(options).length > 0) {
310
+ const validation = await validateProviderConfig(name, {
311
+ enabled: true,
312
+ options,
313
+ });
314
+ if (!validation.valid) {
315
+ res.status(400).json({
316
+ error: "Invalid plugin options",
317
+ errors: validation.errors,
318
+ warnings: validation.warnings,
319
+ });
320
+ return;
321
+ }
322
+ }
323
+ // Read and update config
324
+ const config = readConfig(req.project.sudocodeDir);
325
+ const integrations = (config.integrations || {});
326
+ if (!integrations[name]) {
327
+ // Create new entry if not exists
328
+ integrations[name] = {
329
+ enabled: false,
330
+ options,
331
+ };
332
+ }
333
+ else {
334
+ if (Object.keys(options).length > 0) {
335
+ integrations[name].options = options;
336
+ }
337
+ }
338
+ // Apply integration config settings
339
+ if (integrationConfig.auto_sync !== undefined) {
340
+ integrations[name].auto_sync = integrationConfig.auto_sync;
341
+ }
342
+ if (integrationConfig.auto_import !== undefined) {
343
+ integrations[name].auto_import = integrationConfig.auto_import;
344
+ }
345
+ if (integrationConfig.delete_behavior !== undefined) {
346
+ integrations[name].delete_behavior = integrationConfig.delete_behavior;
347
+ }
348
+ if (integrationConfig.conflict_resolution !== undefined) {
349
+ integrations[name].conflict_resolution = integrationConfig.conflict_resolution;
350
+ }
351
+ if (integrationConfig.default_sync_direction !== undefined) {
352
+ integrations[name].default_sync_direction = integrationConfig.default_sync_direction;
353
+ }
354
+ config.integrations = integrations;
355
+ writeConfig(req.project.sudocodeDir, config);
356
+ // Reload integration sync service to pick up new options
357
+ if (req.project.integrationSyncService) {
358
+ await req.project.integrationSyncService.reload();
359
+ }
360
+ res.status(200).json({
361
+ success: true,
362
+ data: {
363
+ options,
364
+ integrationConfig,
365
+ },
366
+ });
367
+ }
368
+ catch (error) {
369
+ console.error("Failed to update plugin options:", error);
370
+ res.status(500).json({ error: "Failed to update plugin options" });
371
+ }
372
+ });
373
+ /**
374
+ * POST /api/plugins/:name/test - Test plugin connection
375
+ *
376
+ * Verifies the plugin can connect with current configuration
377
+ */
378
+ router.post("/:name/test", async (req, res) => {
379
+ try {
380
+ const { name } = req.params;
381
+ const config = readConfig(req.project.sudocodeDir);
382
+ const integrations = (config.integrations || {});
383
+ const providerConfig = integrations[name];
384
+ if (!providerConfig) {
385
+ res.status(404).json({
386
+ success: false,
387
+ error: `Plugin '${name}' is not configured`,
388
+ });
389
+ return;
390
+ }
391
+ const result = await testProviderConnection(name, providerConfig, req.project.path);
392
+ res.status(200).json({ success: true, data: result });
393
+ }
394
+ catch (error) {
395
+ console.error("Failed to test plugin:", error);
396
+ res.status(500).json({
397
+ success: false,
398
+ error: "Failed to test plugin connection",
399
+ });
400
+ }
401
+ });
402
+ /**
403
+ * POST /api/plugins/:name/install - Install a plugin via npm
404
+ *
405
+ * Installs the plugin package globally so it can be loaded
406
+ */
407
+ router.post("/:name/install", async (req, res) => {
408
+ try {
409
+ const { name } = req.params;
410
+ const { package: packageName } = req.body;
411
+ // Determine the package to install
412
+ const targetPackage = packageName || `@sudocode-ai/integration-${name}`;
413
+ // Check if already installed
414
+ const alreadyInstalled = await isPluginInstalled(name);
415
+ if (alreadyInstalled) {
416
+ res.status(200).json({
417
+ success: true,
418
+ data: {
419
+ message: `Plugin '${name}' is already installed`,
420
+ alreadyInstalled: true,
421
+ },
422
+ });
423
+ return;
424
+ }
425
+ // Install the package
426
+ try {
427
+ execSync(`npm install -g ${targetPackage}`, {
428
+ encoding: "utf-8",
429
+ stdio: "pipe",
430
+ });
431
+ }
432
+ catch (installError) {
433
+ const error = installError;
434
+ res.status(500).json({
435
+ success: false,
436
+ error: `Failed to install package: ${error.stderr || error.message}`,
437
+ });
438
+ return;
439
+ }
440
+ // Verify installation
441
+ const installed = await isPluginInstalled(name);
442
+ if (!installed) {
443
+ res.status(500).json({
444
+ success: false,
445
+ error: `Package installed but plugin '${name}' could not be loaded`,
446
+ });
447
+ return;
448
+ }
449
+ // Load plugin to get info
450
+ const plugin = await loadPlugin(name);
451
+ res.status(200).json({
452
+ success: true,
453
+ data: {
454
+ message: `Plugin '${name}' installed successfully`,
455
+ plugin: plugin
456
+ ? {
457
+ name,
458
+ displayName: plugin.displayName,
459
+ version: plugin.version,
460
+ description: plugin.description,
461
+ }
462
+ : { name },
463
+ },
464
+ });
465
+ }
466
+ catch (error) {
467
+ console.error("Failed to install plugin:", error);
468
+ res.status(500).json({ error: "Failed to install plugin" });
469
+ }
470
+ });
471
+ /**
472
+ * DELETE /api/plugins/:name - Remove plugin configuration
473
+ *
474
+ * Removes the plugin entry from config.json entirely
475
+ */
476
+ router.delete("/:name", async (req, res) => {
477
+ try {
478
+ const { name } = req.params;
479
+ const config = readConfig(req.project.sudocodeDir);
480
+ const integrations = (config.integrations || {});
481
+ if (!integrations[name]) {
482
+ res.status(404).json({
483
+ error: `Plugin '${name}' is not configured`,
484
+ });
485
+ return;
486
+ }
487
+ delete integrations[name];
488
+ config.integrations = integrations;
489
+ writeConfig(req.project.sudocodeDir, config);
490
+ // Reload integration sync service to unregister removed provider
491
+ if (req.project.integrationSyncService) {
492
+ await req.project.integrationSyncService.reload();
493
+ }
494
+ res.status(200).json({
495
+ success: true,
496
+ data: {
497
+ message: `Plugin '${name}' configuration removed`,
498
+ },
499
+ });
500
+ }
501
+ catch (error) {
502
+ console.error("Failed to remove plugin:", error);
503
+ res.status(500).json({ error: "Failed to remove plugin configuration" });
504
+ }
505
+ });
506
+ return router;
507
+ }
508
+ //# sourceMappingURL=plugins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../src/routes/plugins.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAqB,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAK7B,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,6CAA6C,CAAC;AAErD;;GAEG;AACH,SAAS,UAAU,CAAC,WAAmB;IACrC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACzD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,WAAmB,EACnB,MAA+B;IAE/B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACzD,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,UAAkB;IACjD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5C,OAAO,MAAM,KAAK,IAAI,CAAC;AACzB,CAAC;AAuBD,MAAM,UAAU,mBAAmB;IACjC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB;;;;OAIG;IACH,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QACpD,IAAI,CAAC;YACH,MAAM,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YAEvE,MAAM,OAAO,GAAiB,MAAM,OAAO,CAAC,GAAG,CAC7C,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBAChC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClD,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5C,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC;gBACnC,MAAM,OAAO,GAAG,cAAc,EAAE,OAAO,IAAI,KAAK,CAAC;gBAEjD,IAAI,WAA+B,CAAC;gBACpC,IAAI,OAA2B,CAAC;gBAChC,IAAI,WAA+B,CAAC;gBACpC,IAAI,YAAiC,CAAC;gBAEtC,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACxC,IAAI,MAAM,EAAE,CAAC;wBACX,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;wBACjC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;wBACzB,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;wBACjC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;oBACrC,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW;oBACX,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,OAAO;oBACP,WAAW;oBACX,SAAS;oBACT,SAAS;oBACT,OAAO;oBACP,YAAY;oBACZ,OAAO,EAAE,cAAc,EAAE,OAAO;oBAChC,iBAAiB,EAAE,cAAc;wBAC/B,CAAC,CAAC;4BACE,SAAS,EAAE,cAAc,CAAC,SAAS;4BACnC,WAAW,EAAE,cAAc,CAAC,WAAW;4BACvC,eAAe,EAAE,cAAc,CAAC,eAAe;4BAC/C,mBAAmB,EAAE,cAAc,CAAC,mBAAmB;4BACvD,sBAAsB,EAAE,cAAc,CAAC,sBAAsB;yBAC9D;wBACH,CAAC,CAAC,SAAS;iBACd,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;YAEF,sEAAsE;YACtE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACtE,KAAK,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC;oBACjD,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,IAAI,IAAI,CAAC;oBAC/C,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAEpD,IAAI,WAA+B,CAAC;oBACpC,IAAI,OAA2B,CAAC;oBAChC,IAAI,WAA+B,CAAC;oBACpC,IAAI,YAAiC,CAAC;oBAEtC,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;wBAC1C,IAAI,MAAM,EAAE,CAAC;4BACX,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;4BACjC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;4BACzB,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;4BACjC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;wBACrC,CAAC;oBACH,CAAC;oBAED,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI;wBACJ,WAAW;wBACX,OAAO,EAAE,QAAQ;wBACjB,OAAO;wBACP,WAAW;wBACX,SAAS;wBACT,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,cAAc,CAAC,OAAO,IAAI,KAAK;wBACxC,YAAY;wBACZ,OAAO,EAAE,cAAc,CAAC,OAAO;wBAC/B,iBAAiB,EAAE;4BACjB,SAAS,EAAE,cAAc,CAAC,SAAS;4BACnC,WAAW,EAAE,cAAc,CAAC,WAAW;4BACvC,eAAe,EAAE,cAAc,CAAC,eAAe;4BAC/C,mBAAmB,EAAE,cAAc,CAAC,mBAAmB;4BACvD,sBAAsB,EAAE,cAAc,CAAC,sBAAsB;yBAC9D;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAChD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QACzD,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YACvE,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAE1C,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAEhD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,WAAW,IAAI,oBAAoB;oBAC1C,SAAS,EAAE,KAAK;iBACjB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,IAAI,GAAG,EAAE,CAAC,CAAC;gBACnE,OAAO;YACT,CAAC;YAED,MAAM,UAAU,GAAe;gBAC7B,IAAI;gBACJ,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,OAAO,EAAE,4BAA4B,IAAI,EAAE;gBAC3C,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,CAAC,CAAC,cAAc;gBAC3B,OAAO,EAAE,cAAc,EAAE,OAAO,IAAI,KAAK;gBACzC,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,OAAO,EAAE,cAAc,EAAE,OAAO;aACjC,CAAC;YAEF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;YAC9C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;;;OAKG;IACH,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QACnE,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAC5B,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,IAA6C,CAAC;YAE3E,+BAA+B;YAC/B,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,WAAW,IAAI,6DAA6D,IAAI,EAAE;oBACzF,SAAS,EAAE,KAAK;iBACjB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,kCAAkC;YAClC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,IAAI,GAAG,EAAE,CAAC,CAAC;gBACnE,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBAClD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACtB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,wBAAwB;wBAC/B,MAAM,EAAE,UAAU,CAAC,MAAM;wBACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;qBAC9B,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;YACH,CAAC;YAED,yBAAyB;YACzB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YAEvE,mCAAmC;YACnC,MAAM,cAAc,GAA8B;gBAChD,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI,EAAE,8CAA8C;gBAC/D,OAAO;gBACP,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC9B,CAAC;YACF,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,wBAAwB;YACvD,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,8BAA8B;YAC/D,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;YACnC,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;YACpC,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;YAEnC,uBAAuB;YACvB,WAAW,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAE9C,wDAAwD;YACxD,IAAI,GAAG,CAAC,OAAQ,CAAC,sBAAsB,EAAE,CAAC;gBACxC,MAAM,GAAG,CAAC,OAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC;YACrD,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,OAAO,EAAE,WAAW,IAAI,aAAa;oBACrC,MAAM,EAAE;wBACN,IAAI;wBACJ,WAAW,EAAE,MAAM,CAAC,WAAW;wBAC/B,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,cAAc,CAAC,OAAO;qBAChC;iBACF;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YACnD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QACrE,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAE5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YAEvE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,WAAW,IAAI,qBAAqB;iBAC5C,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,+CAA+C;YAC/C,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC;YACnC,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,yBAAyB;YAC/D,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;YAEnC,WAAW,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAE9C,2DAA2D;YAC3D,IAAI,GAAG,CAAC,OAAQ,CAAC,sBAAsB,EAAE,CAAC;gBACxC,MAAM,GAAG,CAAC,OAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC;YACrD,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,OAAO,EAAE,WAAW,IAAI,eAAe;iBACxC;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACrD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QACjE,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAC5B,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,iBAAiB,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,IASpD,CAAC;YAEF,+BAA+B;YAC/B,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,WAAW,IAAI,oBAAoB;iBAC3C,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE;oBACpD,OAAO,EAAE,IAAI;oBACb,OAAO;iBACR,CAAC,CAAC;gBAEH,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACtB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,wBAAwB;wBAC/B,MAAM,EAAE,UAAU,CAAC,MAAM;wBACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;qBAC9B,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;YACH,CAAC;YAED,yBAAyB;YACzB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YAEvE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,iCAAiC;gBACjC,YAAY,CAAC,IAAI,CAAC,GAAG;oBACnB,OAAO,EAAE,KAAK;oBACd,OAAO;iBACR,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,oCAAoC;YACpC,IAAI,iBAAiB,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC9C,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;YAC7D,CAAC;YACD,IAAI,iBAAiB,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAChD,YAAY,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC;YACjE,CAAC;YACD,IAAI,iBAAiB,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACpD,YAAY,CAAC,IAAI,CAAC,CAAC,eAAe,GAAG,iBAAiB,CAAC,eAAe,CAAC;YACzE,CAAC;YACD,IAAI,iBAAiB,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACxD,YAAY,CAAC,IAAI,CAAC,CAAC,mBAAmB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;YACjF,CAAC;YACD,IAAI,iBAAiB,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;gBAC3D,YAAY,CAAC,IAAI,CAAC,CAAC,sBAAsB,GAAG,iBAAiB,CAAC,sBAAsB,CAAC;YACvF,CAAC;YAED,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;YACnC,WAAW,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAE9C,yDAAyD;YACzD,IAAI,GAAG,CAAC,OAAQ,CAAC,sBAAsB,EAAE,CAAC;gBACxC,MAAM,GAAG,CAAC,OAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC;YACrD,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,OAAO;oBACP,iBAAiB;iBAClB;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YACzD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QAC/D,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAE5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YACvE,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAE1C,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,WAAW,IAAI,qBAAqB;iBAC5C,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,sBAAsB,CACzC,IAAI,EACJ,cAAc,EACd,GAAG,CAAC,OAAQ,CAAC,IAAI,CAClB,CAAC;YAEF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YAC/C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,kCAAkC;aAC1C,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QAClE,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAC5B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,IAA4B,CAAC;YAElE,mCAAmC;YACnC,MAAM,aAAa,GACjB,WAAW,IAAI,4BAA4B,IAAI,EAAE,CAAC;YAEpD,6BAA6B;YAC7B,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,WAAW,IAAI,wBAAwB;wBAChD,gBAAgB,EAAE,IAAI;qBACvB;iBACF,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,sBAAsB;YACtB,IAAI,CAAC;gBACH,QAAQ,CAAC,kBAAkB,aAAa,EAAE,EAAE;oBAC1C,QAAQ,EAAE,OAAO;oBACjB,KAAK,EAAE,MAAM;iBACd,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,YAAqD,CAAC;gBACpE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,8BAA8B,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE;iBACrE,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,sBAAsB;YACtB,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,iCAAiC,IAAI,uBAAuB;iBACpE,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,0BAA0B;YAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YAEtC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,OAAO,EAAE,WAAW,IAAI,0BAA0B;oBAClD,MAAM,EAAE,MAAM;wBACZ,CAAC,CAAC;4BACE,IAAI;4BACJ,WAAW,EAAE,MAAM,CAAC,WAAW;4BAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;4BACvB,WAAW,EAAE,MAAM,CAAC,WAAW;yBAChC;wBACH,CAAC,CAAC,EAAE,IAAI,EAAE;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YAClD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QAC5D,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAE5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAuB,CAAC;YAEvE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,WAAW,IAAI,qBAAqB;iBAC5C,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;YAC1B,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;YAEnC,WAAW,CAAC,GAAG,CAAC,OAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAE9C,iEAAiE;YACjE,IAAI,GAAG,CAAC,OAAQ,CAAC,sBAAsB,EAAE,CAAC;gBACxC,MAAM,GAAG,CAAC,OAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC;YACrD,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,OAAO,EAAE,WAAW,IAAI,yBAAyB;iBAClD;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -105,8 +105,8 @@ export function createSpecsRouter() {
105
105
  // Generate new spec ID
106
106
  const outputDir = req.project.sudocodeDir;
107
107
  const { id, uuid } = generateSpecId(req.project.db, outputDir);
108
- // Generate file path for the spec
109
- const file_path = path.join(outputDir, "specs", `${id}.md`);
108
+ // Generate file path for the spec (relative path)
109
+ const file_path = `specs/${id}.md`;
110
110
  // Create spec using CLI operation
111
111
  const spec = createNewSpec(req.project.db, {
112
112
  id,
@@ -1 +1 @@
1
- {"version":3,"file":"specs.js","sourceRoot":"","sources":["../../src/routes/specs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specs.js","sourceRoot":"","sources":["../../src/routes/specs.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare class EditorService {
12
12
  private readonly CONFIG_CACHE_TTL;
13
13
  constructor(repoPath: string);
14
14
  /**
15
- * Load editor configuration from .sudocode/config.local.json
15
+ * Load editor configuration from .sudocode/config.json
16
16
  * Falls back to default (VS Code) if file doesn't exist
17
17
  */
18
18
  loadConfig(): Promise<EditorConfig>;
@@ -1 +1 @@
1
- {"version":3,"file":"editor-service.d.ts","sourceRoot":"","sources":["../../src/services/editor-service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAmB,MAAM,oBAAoB,CAAC;AAsB/E;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAiB;gBAEtC,QAAQ,EAAE,MAAM;IAI5B;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,YAAY,CAAC;IAkDzC;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM;IAOlE;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS1D;;;;;;OAMG;IACG,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAoE5E;;;;;OAKG;IACG,YAAY,CAChB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,UAAU,GAC9B,OAAO,CAAC,IAAI,CAAC;IAehB;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAiBlE;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;OAGG;IACH,UAAU,IAAI,IAAI;CAInB"}
1
+ {"version":3,"file":"editor-service.d.ts","sourceRoot":"","sources":["../../src/services/editor-service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAmB,MAAM,oBAAoB,CAAC;AAsB/E;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAiB;gBAEtC,QAAQ,EAAE,MAAM;IAI5B;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,YAAY,CAAC;IA8CzC;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM;IAOlE;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS1D;;;;;;OAMG;IACG,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAoE5E;;;;;OAKG;IACG,YAAY,CAChB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,UAAU,GAC9B,OAAO,CAAC,IAAI,CAAC;IAehB;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAiBlE;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;OAGG;IACH,UAAU,IAAI,IAAI;CAInB"}
@@ -36,7 +36,7 @@ export class EditorService {
36
36
  this.repoPath = repoPath;
37
37
  }
38
38
  /**
39
- * Load editor configuration from .sudocode/config.local.json
39
+ * Load editor configuration from .sudocode/config.json
40
40
  * Falls back to default (VS Code) if file doesn't exist
41
41
  */
42
42
  async loadConfig() {
@@ -46,7 +46,7 @@ export class EditorService {
46
46
  now - this.configCacheTime < this.CONFIG_CACHE_TTL) {
47
47
  return this.configCache;
48
48
  }
49
- const configPath = path.join(this.repoPath, ".sudocode", "config.local.json");
49
+ const configPath = path.join(this.repoPath, ".sudocode", "config.json");
50
50
  try {
51
51
  const content = await fs.readFile(configPath, "utf-8");
52
52
  const parsed = JSON.parse(content);
@@ -1 +1 @@
1
- {"version":3,"file":"editor-service.js","sourceRoot":"","sources":["../../src/services/editor-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-service.js","sourceRoot":"","sources":["../../src/services/editor-service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAgB,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE/E;;GAEG;AACH,MAAM,eAAe,GAA+B;IAClD,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM;IAC5B,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,QAAQ;IAC7B,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,UAAU;IACjC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM;IAC7B,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK;IACvB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK;IACzB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,sCAAsC;CAChE,CAAC;AAEF;;GAEG;AACH,MAAM,cAAc,GAAiB;IACnC,UAAU,EAAE,UAAU,CAAC,OAAO;CAC/B,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,aAAa;IAChB,QAAQ,CAAS;IACjB,WAAW,GAAwB,IAAI,CAAC;IACxC,eAAe,GAAW,CAAC,CAAC;IACnB,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;IAE/D,YAAY,QAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,cAAc;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IACE,IAAI,CAAC,WAAW;YAChB,GAAG,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAClD,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QAExE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAClE,MAAM,MAAM,GAAiB;oBAC3B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAwB;oBAClD,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa;iBAC3C,CAAC;gBAEF,uBAAuB;gBACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC3D,OAAO,CAAC,IAAI,CACV,kCAAkC,MAAM,CAAC,UAAU,iBAAiB,CACrE,CAAC;oBACF,OAAO,cAAc,CAAC;gBACxB,CAAC;gBAED,mBAAmB;gBACnB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;gBAC1B,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;gBAE3B,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uDAAuD;YACvD,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,UAAsB,EAAE,aAAsB;QACvD,IAAI,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO,aAAa,IAAI,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,eAAe,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,OAAe;QACrC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,YAAoB,EAAE,MAAoB;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QAEzE,gCAAgC;QAChC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,eAAe,CACvB,kBAAkB,EAClB,MAAM,CAAC,UAAU,EACjB,WAAW,OAAO,qBAAqB,EACvC,kBAAkB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,kCAAkC,CAC1F,CAAC;QACJ,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzB,MAAM,IAAI,eAAe,CACvB,kBAAkB,EAClB,MAAM,CAAC,UAAU,EACjB,qCAAqC,YAAY,EAAE,EACnD,6CAA6C,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvD,MAAM,IAAI,eAAe,CACvB,kBAAkB,EAClB,MAAM,CAAC,UAAU,EACjB,iCAAiC,YAAY,EAAE,EAC/C,6DAA6D,CAC9D,CAAC;YACJ,CAAC;YACD,kDAAkD;YAClD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;gBACrC,MAAM,KAAK,CAAC;YACd,CAAC;YACD,yCAAyC;YACzC,MAAM,IAAI,eAAe,CACvB,kBAAkB,EAClB,MAAM,CAAC,UAAU,EACjB,qCAAqC,YAAY,EAAE,EACnD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,yBAAyB;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE;gBAC3C,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,QAAQ;gBACf,GAAG,EAAE,YAAY;aAClB,CAAC,CAAC;YAEH,iDAAiD;YACjD,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,eAAe,CACvB,cAAc,EACd,MAAM,CAAC,UAAU,EACjB,4BAA4B,OAAO,GAAG,EACtC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAChB,YAAoB,EACpB,kBAA+B;QAE/B,cAAc;QACd,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAErC,6BAA6B;QAC7B,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,GAAG;gBACP,GAAG,MAAM;gBACT,UAAU,EAAE,kBAAkB;aAC/B,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,oBAAoB;QACxB,MAAM,OAAO,GAAyC,EAAE,CAAC;QAEzD,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACnD,IAAI,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;gBACrC,8DAA8D;gBAC9D,OAAO,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;gBAC5B,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC5C,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,OAAsC,CAAC;IAChD,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,UAAsB;QAC1C,MAAM,KAAK,GAA+B;YACxC,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,oBAAoB;YAC1C,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,QAAQ;YAC7B,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,UAAU;YACjC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,eAAe;YACtC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK;YACvB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,OAAO;YAC3B,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,eAAe;SACrC,CAAC;QACF,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF"}