@crypto512/jicon-mcp 1.0.3 → 1.1.0

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 (116) hide show
  1. package/README.md +40 -3
  2. package/TOOL_LIST.md +261 -140
  3. package/dist/config/constants.d.ts +2 -0
  4. package/dist/config/constants.d.ts.map +1 -1
  5. package/dist/config/constants.js +2 -0
  6. package/dist/config/constants.js.map +1 -1
  7. package/dist/config/loader.d.ts.map +1 -1
  8. package/dist/config/loader.js +2 -0
  9. package/dist/config/loader.js.map +1 -1
  10. package/dist/config/types.d.ts +6 -0
  11. package/dist/config/types.d.ts.map +1 -1
  12. package/dist/config/types.js +4 -0
  13. package/dist/config/types.js.map +1 -1
  14. package/dist/confluence/client.d.ts +11 -2
  15. package/dist/confluence/client.d.ts.map +1 -1
  16. package/dist/confluence/client.js +29 -12
  17. package/dist/confluence/client.js.map +1 -1
  18. package/dist/confluence/tools.d.ts +2 -2
  19. package/dist/confluence/tools.d.ts.map +1 -1
  20. package/dist/confluence/tools.js +145 -59
  21. package/dist/confluence/tools.js.map +1 -1
  22. package/dist/index.js +17 -2
  23. package/dist/index.js.map +1 -1
  24. package/dist/jira/client.d.ts.map +1 -1
  25. package/dist/jira/client.js +3 -13
  26. package/dist/jira/client.js.map +1 -1
  27. package/dist/jira/tools.d.ts.map +1 -1
  28. package/dist/jira/tools.js +9 -30
  29. package/dist/jira/tools.js.map +1 -1
  30. package/dist/permissions/tool-registry.d.ts +4 -2
  31. package/dist/permissions/tool-registry.d.ts.map +1 -1
  32. package/dist/permissions/tool-registry.js +14 -2
  33. package/dist/permissions/tool-registry.js.map +1 -1
  34. package/dist/tempo/formatters.d.ts.map +1 -1
  35. package/dist/tempo/formatters.js +1 -16
  36. package/dist/tempo/formatters.js.map +1 -1
  37. package/dist/tempo/tools.d.ts +2 -2
  38. package/dist/tempo/tools.d.ts.map +1 -1
  39. package/dist/tempo/tools.js +5 -13
  40. package/dist/tempo/tools.js.map +1 -1
  41. package/dist/utils/buffer-tools.d.ts +115 -63
  42. package/dist/utils/buffer-tools.d.ts.map +1 -1
  43. package/dist/utils/buffer-tools.js +385 -330
  44. package/dist/utils/buffer-tools.js.map +1 -1
  45. package/dist/utils/content-buffer.d.ts +24 -1
  46. package/dist/utils/content-buffer.d.ts.map +1 -1
  47. package/dist/utils/content-buffer.js +49 -39
  48. package/dist/utils/content-buffer.js.map +1 -1
  49. package/dist/utils/jicon-help.d.ts +5 -5
  50. package/dist/utils/jicon-help.d.ts.map +1 -1
  51. package/dist/utils/jicon-help.js +259 -536
  52. package/dist/utils/jicon-help.js.map +1 -1
  53. package/dist/utils/plantuml/client.d.ts +1 -1
  54. package/dist/utils/plantuml/client.d.ts.map +1 -1
  55. package/dist/utils/plantuml/client.js +34 -59
  56. package/dist/utils/plantuml/client.js.map +1 -1
  57. package/dist/utils/plantuml/docker-manager.d.ts +3 -1
  58. package/dist/utils/plantuml/docker-manager.d.ts.map +1 -1
  59. package/dist/utils/plantuml/docker-manager.js +6 -2
  60. package/dist/utils/plantuml/docker-manager.js.map +1 -1
  61. package/dist/utils/plantuml/include-expander.d.ts +32 -0
  62. package/dist/utils/plantuml/include-expander.d.ts.map +1 -0
  63. package/dist/utils/plantuml/include-expander.js +129 -0
  64. package/dist/utils/plantuml/include-expander.js.map +1 -0
  65. package/dist/utils/plantuml/index.d.ts +2 -1
  66. package/dist/utils/plantuml/index.d.ts.map +1 -1
  67. package/dist/utils/plantuml/index.js +3 -1
  68. package/dist/utils/plantuml/index.js.map +1 -1
  69. package/dist/utils/plantuml/service.d.ts +32 -8
  70. package/dist/utils/plantuml/service.d.ts.map +1 -1
  71. package/dist/utils/plantuml/service.js +108 -15
  72. package/dist/utils/plantuml/service.js.map +1 -1
  73. package/dist/utils/plantuml/tools.d.ts +4 -4
  74. package/dist/utils/plantuml/tools.d.ts.map +1 -1
  75. package/dist/utils/plantuml/tools.js +50 -5
  76. package/dist/utils/plantuml/tools.js.map +1 -1
  77. package/dist/utils/plantuml/types.d.ts +4 -4
  78. package/dist/utils/plantuml/validation-helper.d.ts +33 -0
  79. package/dist/utils/plantuml/validation-helper.d.ts.map +1 -0
  80. package/dist/utils/plantuml/validation-helper.js +97 -0
  81. package/dist/utils/plantuml/validation-helper.js.map +1 -0
  82. package/dist/utils/response-formatter.js +7 -7
  83. package/dist/utils/response-formatter.js.map +1 -1
  84. package/dist/utils/time-formatter.d.ts +10 -0
  85. package/dist/utils/time-formatter.d.ts.map +1 -0
  86. package/dist/utils/time-formatter.js +22 -0
  87. package/dist/utils/time-formatter.js.map +1 -0
  88. package/dist/utils/url-tools.d.ts.map +1 -1
  89. package/dist/utils/url-tools.js +11 -4
  90. package/dist/utils/url-tools.js.map +1 -1
  91. package/dist/utils/xhtml/error-locator.d.ts +70 -0
  92. package/dist/utils/xhtml/error-locator.d.ts.map +1 -0
  93. package/dist/utils/xhtml/error-locator.js +229 -0
  94. package/dist/utils/xhtml/error-locator.js.map +1 -0
  95. package/dist/utils/xhtml/index.d.ts +6 -3
  96. package/dist/utils/xhtml/index.d.ts.map +1 -1
  97. package/dist/utils/xhtml/index.js +7 -3
  98. package/dist/utils/xhtml/index.js.map +1 -1
  99. package/dist/utils/xhtml/operations.d.ts +54 -0
  100. package/dist/utils/xhtml/operations.d.ts.map +1 -1
  101. package/dist/utils/xhtml/operations.js +205 -0
  102. package/dist/utils/xhtml/operations.js.map +1 -1
  103. package/dist/utils/xhtml/plantuml.d.ts +1 -1
  104. package/dist/utils/xhtml/plantuml.d.ts.map +1 -1
  105. package/dist/utils/xhtml/plantuml.js +19 -30
  106. package/dist/utils/xhtml/plantuml.js.map +1 -1
  107. package/dist/utils/xhtml/serializer.d.ts +5 -0
  108. package/dist/utils/xhtml/serializer.d.ts.map +1 -1
  109. package/dist/utils/xhtml/serializer.js +18 -4
  110. package/dist/utils/xhtml/serializer.js.map +1 -1
  111. package/dist/utils/xhtml/types.d.ts +3 -3
  112. package/dist/utils/xhtml/types.d.ts.map +1 -1
  113. package/dist/utils/xhtml/validator.d.ts.map +1 -1
  114. package/dist/utils/xhtml/validator.js +87 -4
  115. package/dist/utils/xhtml/validator.js.map +1 -1
  116. package/package.json +1 -1
@@ -5,8 +5,45 @@ import { z } from "zod";
5
5
  import { formatSuccess, formatError, isApiError } from "../utils/response-formatter.js";
6
6
  import { contentBuffer } from "../utils/content-buffer.js";
7
7
  import { formatPageMetadata } from "./formatters.js";
8
- import { validateXhtmlAsync } from "../utils/xhtml/index.js";
9
- import { detectRawPlantUml } from "../utils/xhtml/plantuml.js";
8
+ import { validateXhtmlAsync, parseXhtml, parseStructure, serializeXhtml, enhanceXhtmlError } from "../utils/xhtml/index.js";
9
+ import { detectRawPlantUml, detectDiagramType } from "../utils/xhtml/plantuml.js";
10
+ import { expandPlantUmlInXhtml } from "../utils/plantuml/index.js";
11
+ /**
12
+ * Generate a summary of content structure for draft responses.
13
+ * Helps AI assistants verify that diagrams and other elements are included.
14
+ */
15
+ function getContentSummary(content) {
16
+ const result = {
17
+ plantumlCount: 0,
18
+ plantumlTypes: [],
19
+ hasTable: false,
20
+ headingCount: 0,
21
+ };
22
+ // Parse XHTML to count elements
23
+ const parseResult = parseXhtml(content);
24
+ if (!parseResult.document) {
25
+ return result;
26
+ }
27
+ const doc = parseResult.document;
28
+ // Count PlantUML macros and detect types
29
+ const plantumlMacros = doc.querySelectorAll('ac\\:structured-macro[ac\\:name="plantuml"]');
30
+ result.plantumlCount = plantumlMacros.length;
31
+ for (let i = 0; i < plantumlMacros.length; i++) {
32
+ const macro = plantumlMacros[i];
33
+ const body = macro.querySelector('ac\\:plain-text-body');
34
+ if (body && body.textContent) {
35
+ const diagramType = detectDiagramType(body.textContent);
36
+ if (diagramType && !result.plantumlTypes.includes(diagramType)) {
37
+ result.plantumlTypes.push(diagramType);
38
+ }
39
+ }
40
+ }
41
+ // Count tables
42
+ result.hasTable = doc.querySelectorAll('table').length > 0;
43
+ // Count headings
44
+ result.headingCount = doc.querySelectorAll('h1, h2, h3, h4, h5, h6').length;
45
+ return result;
46
+ }
10
47
  /**
11
48
  * Resolve content from either direct content string or bufferId.
12
49
  * Returns { content, error } - if error is set, return it as the tool result.
@@ -42,7 +79,7 @@ function resolveContentFromBuffer(contentArg, bufferIdArg) {
42
79
  message: `Buffer ${bufferIdArg} contains ${bufferInfo.metadata.contentType} content, but Confluence requires XHTML.`,
43
80
  statusCode: 400,
44
81
  details: {
45
- hint: "Create Confluence content with buffer_create, then edit with buffer_edit_xhtml.",
82
+ hint: "Create Confluence content with buffer_create, then edit with buffer_edit.",
46
83
  foundContentType: bufferInfo.metadata.contentType,
47
84
  expectedContentType: "xhtml",
48
85
  },
@@ -131,18 +168,28 @@ async function validateContentForWrite(content) {
131
168
  }
132
169
  return null; // Valid content
133
170
  }
171
+ /**
172
+ * Store XHTML content in buffer with element IDs for structured editing.
173
+ * Parses XHTML, assigns data-jicon-id attributes, and stores with structure.
174
+ * Content is validated before Confluence writes, so parsing always succeeds.
175
+ */
176
+ function storeXhtmlWithStructure(content, metadata) {
177
+ const parseResult = parseXhtml(content);
178
+ const structureResult = parseStructure(parseResult.document);
179
+ const contentWithIds = serializeXhtml(parseResult.document);
180
+ const bufferId = contentBuffer.storeWithStructure(contentWithIds, structureResult.structure, structureResult.nextId, metadata);
181
+ return { bufferId, structure: structureResult.structure };
182
+ }
134
183
  export function createConfluenceTools(client) {
135
184
  return {
136
185
  confluence_search_content: {
137
186
  description: `Search Confluence content using CQL. Auto-fetches all results (up to 5000).
138
187
 
139
- BEFORE USING: Call help(topic="cql") for CQL syntax guide.
188
+ TIP: See help(topic="cql") for CQL syntax guide.
140
189
 
141
190
  Example: type=page AND space=DOCS AND text~"API" ORDER BY lastmodified DESC
142
191
 
143
- WARNING: Use text~ (not content~ or body~). Use space KEY (not name).
144
-
145
- Large responses are buffered - use buffer_get_chunk or buffer_grep to access.`,
192
+ WARNING: Use text~ (not content~ or body~). Use space KEY (not name).`,
146
193
  inputSchema: z.object({
147
194
  cql: z.string().describe("CQL query string"),
148
195
  expand: z.array(z.string()).optional().describe("Additional data to expand"),
@@ -208,8 +255,8 @@ Large responses are buffered - use buffer_get_chunk or buffer_grep to access.`,
208
255
 
209
256
  PREFERRED method when you have a page ID from search results. Faster and more reliable than get_page_by_title.
210
257
 
211
- Returns pageId, version, and bufferId containing the page content.
212
- Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft_create for user review.`,
258
+ Returns pageId, version, bufferId, and structure (element IDs) for structured editing.
259
+ Use buffer_edit with element IDs to modify, then confluence_draft_create for user review.`,
213
260
  inputSchema: z.object({
214
261
  pageId: z.coerce.string().describe("Page ID (accepts string or number)"),
215
262
  expand: z
@@ -221,8 +268,8 @@ Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft
221
268
  try {
222
269
  const result = await client.getPage(args.pageId, args.expand);
223
270
  const content = result.body?.storage?.value || "";
224
- // Always store content in buffer for consistent editing workflow
225
- const bufferId = contentBuffer.store(content, {
271
+ // Store content with element IDs for structured editing
272
+ const { bufferId, structure } = storeXhtmlWithStructure(content, {
226
273
  resourceType: "confluence_page",
227
274
  resourceId: String(result.id),
228
275
  contentType: "xhtml",
@@ -235,8 +282,9 @@ Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft
235
282
  pageId: result.id,
236
283
  version: result.version?.number,
237
284
  bufferId,
285
+ ...(structure && { structure }),
238
286
  contentSize: content.length,
239
- message: "Page loaded. Use buffer_edit_xhtml to modify, then confluence_draft_create for user review.",
287
+ message: "Page loaded. Use buffer_edit to modify, then confluence_draft_create for user review.",
240
288
  });
241
289
  }
242
290
  catch (error) {
@@ -249,8 +297,8 @@ Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft
249
297
 
250
298
  Use ONLY when you don't have a page ID. IMPORTANT: Use the space KEY (e.g. 'MESH', 'TC'), NOT the space name.
251
299
 
252
- Returns pageId, version, and bufferId containing the page content.
253
- Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft_create for user review.`,
300
+ Returns pageId, version, bufferId, and structure (element IDs) for structured editing.
301
+ Use buffer_edit with element IDs to modify, then confluence_draft_create for user review.`,
254
302
  inputSchema: z.object({
255
303
  spaceKey: z.string().describe("Space key (short code like 'MESH', 'TC'), NOT the full space name"),
256
304
  title: z.string().describe("Page title"),
@@ -267,8 +315,8 @@ Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft
267
315
  });
268
316
  }
269
317
  const content = result.body?.storage?.value || "";
270
- // Always store content in buffer for consistent editing workflow
271
- const bufferId = contentBuffer.store(content, {
318
+ // Store content with element IDs for structured editing
319
+ const { bufferId, structure } = storeXhtmlWithStructure(content, {
272
320
  resourceType: "confluence_page",
273
321
  resourceId: String(result.id),
274
322
  contentType: "xhtml",
@@ -281,8 +329,9 @@ Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft
281
329
  pageId: result.id,
282
330
  version: result.version?.number,
283
331
  bufferId,
332
+ ...(structure && { structure }),
284
333
  contentSize: content.length,
285
- message: "Page loaded. Use buffer_edit_xhtml to modify, then confluence_draft_create for user review.",
334
+ message: "Page loaded. Use buffer_edit to modify, then confluence_draft_create for user review.",
286
335
  });
287
336
  }
288
337
  catch (error) {
@@ -317,10 +366,7 @@ Use bufferId with buffer_edit/buffer_edit_xhtml to modify, then confluence_draft
317
366
  },
318
367
  },
319
368
  confluence_list_spaces: {
320
- description: `List all accessible Confluence spaces.
321
-
322
- Returns all spaces. Large responses are automatically buffered - use buffer_get_chunk or buffer_grep to access.
323
- For complex analysis, spawn a sub-agent with the bufferId.`,
369
+ description: `List all accessible Confluence spaces.`,
324
370
  inputSchema: z.object({
325
371
  type: z
326
372
  .enum(["global", "personal"])
@@ -355,10 +401,7 @@ For complex analysis, spawn a sub-agent with the bufferId.`,
355
401
  },
356
402
  },
357
403
  confluence_get_page_children: {
358
- description: `Get all child pages of a page.
359
-
360
- Returns all child pages. Large responses are automatically buffered - use buffer_get_chunk or buffer_grep to access.
361
- For complex analysis, spawn a sub-agent with the bufferId.`,
404
+ description: `Get all child pages of a page.`,
362
405
  inputSchema: z.object({
363
406
  pageId: z.coerce.string().describe("Parent page ID (accepts string or number)"),
364
407
  expand: z.array(z.string()).optional().describe("Additional data to expand"),
@@ -390,10 +433,7 @@ For complex analysis, spawn a sub-agent with the bufferId.`,
390
433
  },
391
434
  },
392
435
  confluence_get_comments: {
393
- description: `Get all comments on a Confluence page.
394
-
395
- Returns all comments. Large responses are automatically buffered - use buffer_get_chunk or buffer_grep to access.
396
- For complex analysis, spawn a sub-agent with the bufferId.`,
436
+ description: `Get all comments on a Confluence page.`,
397
437
  inputSchema: z.object({
398
438
  pageId: z.coerce.string().describe("Page ID (accepts string or number)"),
399
439
  }),
@@ -425,10 +465,7 @@ For complex analysis, spawn a sub-agent with the bufferId.`,
425
465
  },
426
466
  },
427
467
  confluence_list_attachments: {
428
- description: `List all attachments on a Confluence page.
429
-
430
- Returns all attachments. Large responses are automatically buffered - use buffer_get_chunk or buffer_grep to access.
431
- For complex analysis, spawn a sub-agent with the bufferId.`,
468
+ description: `List all attachments on a Confluence page.`,
432
469
  inputSchema: z.object({
433
470
  pageId: z.coerce.string().describe("Page ID (accepts string or number)"),
434
471
  }),
@@ -482,22 +519,20 @@ Returns the user's personal space key and details. Use this to verify your perso
482
519
  // Note: Confluence drafts cannot be updated via API, only created, read, or deleted.
483
520
  // The workflow is: create draft → edit locally in buffer → save (delete+recreate) → publish
484
521
  confluence_draft_create: {
485
- description: `Create a Confluence draft for user review. Returns draftId, bufferId, and clickable URL.
522
+ description: `Create a Confluence draft for user review. Returns draftId, bufferId, structure (element IDs), and clickable URL.
486
523
 
487
524
  IMPORTANT: User must validate the draft in Confluence UI before publishing.
488
- IMPORTANT: Raw @startuml blocks are NOT supported. Use buffer_edit_xhtml with insert-plantuml operation.
525
+ IMPORTANT: Raw @startuml outside macros is NOT supported. Use buffer_edit for auto-wrapping, or embed properly formatted ac:structured-macro elements.
489
526
 
490
- BEFORE USING: Call help(topic="storage") for Confluence storage format syntax.
491
- BEFORE USING: Call help(topic="plantuml") for diagram workflow.
527
+ TIP: See help(topic="storage") for XHTML syntax, help(topic="plantuml") for diagrams.
492
528
 
493
529
  Workflow:
494
- 1. Create draft with this tool → returns URL for user review
530
+ 1. Create draft with this tool → returns URL and structure with element IDs
495
531
  2. User reviews draft in Confluence UI (can edit there)
496
532
  3. If user requests changes: use confluence_draft_open to get user's edits
497
- 4. Modify with buffer_edit, then confluence_draft_save for new review
533
+ 4. Modify with buffer_edit using element IDs, then confluence_draft_save for new review
498
534
  5. User publishes manually via Confluence UI
499
535
 
500
- Content must be in Confluence storage format (XHTML-based).
501
536
  Provide either 'content' (string) OR 'bufferId' (from buffer_create/buffer_edit).`,
502
537
  inputSchema: z.object({
503
538
  spaceKey: z.string().describe("Space key"),
@@ -524,7 +559,7 @@ Provide either 'content' (string) OR 'bufferId' (from buffer_create/buffer_edit)
524
559
  });
525
560
  }
526
561
  const content = resolved.content;
527
- // Check for raw PlantUML that should use buffer_edit_xhtml instead
562
+ // Check for raw PlantUML that should use buffer_edit with plantuml parameter
528
563
  const rawPlantUml = detectRawPlantUml(content);
529
564
  if (rawPlantUml) {
530
565
  return formatError({
@@ -533,7 +568,7 @@ Provide either 'content' (string) OR 'bufferId' (from buffer_create/buffer_edit)
533
568
  statusCode: 400,
534
569
  details: {
535
570
  hint: rawPlantUml.hint,
536
- example: "buffer_edit_xhtml(bufferId, operation='insert-plantuml', code='@startuml...@enduml', semanticPosition='after-heading:Title')",
571
+ example: "buffer_edit(bufferId, after=ID, plantuml='@startuml...@enduml')",
537
572
  },
538
573
  });
539
574
  }
@@ -542,16 +577,18 @@ Provide either 'content' (string) OR 'bufferId' (from buffer_create/buffer_edit)
542
577
  if (validationError) {
543
578
  return validationError;
544
579
  }
580
+ // Expand PlantUML !include directives before sending to Confluence
581
+ const expandedContent = await expandPlantUmlInXhtml(content);
545
582
  try {
546
583
  const result = await client.createDraft({
547
584
  spaceKey: args.spaceKey,
548
585
  title: args.title,
549
- content,
586
+ content: expandedContent,
550
587
  parentId: args.parentId,
551
588
  labels: args.labels,
552
589
  });
553
- // Store content in buffer for local editing
554
- const newBufferId = contentBuffer.store(content, {
590
+ // Store content with element IDs for structured editing
591
+ const { bufferId: newBufferId } = storeXhtmlWithStructure(content, {
555
592
  resourceType: "confluence_page",
556
593
  resourceId: result.id,
557
594
  contentType: "xhtml",
@@ -562,25 +599,45 @@ Provide either 'content' (string) OR 'bufferId' (from buffer_create/buffer_edit)
562
599
  // Build the draft edit URL (drafts use resumedraft.action, not the webui link)
563
600
  const baseUrl = client.getBaseUrl();
564
601
  const draftUrl = `${baseUrl}/pages/resumedraft.action?draftId=${result.id}`;
602
+ // Generate content summary for verification
603
+ const summary = getContentSummary(content);
565
604
  return formatSuccess({
566
605
  draftId: result.id,
567
606
  bufferId: newBufferId,
568
607
  title: result.title,
569
608
  spaceKey: result.space?.key,
570
609
  version: result.version?.number || 1,
610
+ // URL is the most important field - display it prominently to the user
571
611
  url: draftUrl,
572
- message: "Draft created. User should click URL to review in Confluence and publish manually.",
612
+ userAction: `SHOW THIS URL TO USER: ${draftUrl}`,
613
+ contentSummary: {
614
+ plantumlDiagrams: summary.plantumlCount,
615
+ diagramTypes: summary.plantumlTypes.length > 0 ? summary.plantumlTypes : undefined,
616
+ hasTable: summary.hasTable,
617
+ headings: summary.headingCount,
618
+ },
619
+ message: "Draft created. IMPORTANT: Display the URL above to the user so they can review and publish.",
620
+ ...(summary.plantumlCount === 0 && {
621
+ warning: "No PlantUML diagrams found in content. If diagrams were expected, use buffer_edit with plantuml parameter.",
622
+ }),
573
623
  });
574
624
  }
575
625
  catch (error) {
626
+ // Try to enhance XHTML errors with location info for targeted fixes
627
+ if (isApiError(error) && args.bufferId) {
628
+ const enhanced = enhanceXhtmlError(error, args.bufferId);
629
+ if (enhanced) {
630
+ return formatError(enhanced);
631
+ }
632
+ }
576
633
  return formatError(isApiError(error) ? error : new Error(String(error)));
577
634
  }
578
635
  },
579
636
  },
580
637
  confluence_draft_open: {
581
- description: `Open an existing draft page for editing. Loads content into a local buffer.
638
+ description: `Open an existing draft page for editing. Loads content into buffer with structure (element IDs).
582
639
 
583
- Use buffer_edit to modify content, then confluence_draft_save. User publishes via Confluence UI.`,
640
+ Use buffer_edit with element IDs to modify content, then confluence_draft_save. User publishes via Confluence UI.`,
584
641
  inputSchema: z.object({
585
642
  draftId: z.coerce.string().describe("Draft page ID"),
586
643
  }),
@@ -588,8 +645,8 @@ Use buffer_edit to modify content, then confluence_draft_save. User publishes vi
588
645
  try {
589
646
  const result = await client.getDraft(args.draftId);
590
647
  const content = result.body?.storage?.value || "";
591
- // Store content in buffer for local editing
592
- const bufferId = contentBuffer.store(content, {
648
+ // Store content with element IDs for structured editing
649
+ const { bufferId, structure } = storeXhtmlWithStructure(content, {
593
650
  resourceType: "confluence_page",
594
651
  resourceId: result.id,
595
652
  contentType: "xhtml",
@@ -605,6 +662,7 @@ Use buffer_edit to modify content, then confluence_draft_save. User publishes vi
605
662
  return formatSuccess({
606
663
  draftId: result.id,
607
664
  bufferId,
665
+ ...(structure && { structure }),
608
666
  title: result.title,
609
667
  spaceKey: result.space?.key,
610
668
  version: result.version?.number,
@@ -649,9 +707,9 @@ Use buffer_edit to modify content, then confluence_draft_save. User publishes vi
649
707
  confluence_draft_save: {
650
708
  description: `Save buffer content to server as a new draft for user review.
651
709
 
652
- IMPORTANT: Raw @startuml blocks are NOT supported. Use buffer_edit_xhtml with insert-plantuml operation.
710
+ IMPORTANT: Raw @startuml outside macros is NOT supported. Use buffer_edit for auto-wrapping, or embed properly formatted ac:structured-macro elements.
653
711
 
654
- Returns a new draftId and URL. Always use the returned draftId for subsequent operations.`,
712
+ Returns new draftId, bufferId, structure (element IDs), and URL. Always use the returned draftId for subsequent operations.`,
655
713
  inputSchema: z.object({
656
714
  draftId: z.coerce.string().describe("Current draft ID"),
657
715
  bufferId: z.string().describe("Buffer ID containing updated content"),
@@ -688,7 +746,7 @@ Returns a new draftId and URL. Always use the returned draftId for subsequent op
688
746
  });
689
747
  }
690
748
  const savedContent = fullContent.chunk;
691
- // Check for raw PlantUML that should use buffer_edit_xhtml instead
749
+ // Check for raw PlantUML that should use buffer_edit with plantuml parameter
692
750
  const rawPlantUml = detectRawPlantUml(savedContent);
693
751
  if (rawPlantUml) {
694
752
  return formatError({
@@ -697,7 +755,7 @@ Returns a new draftId and URL. Always use the returned draftId for subsequent op
697
755
  statusCode: 400,
698
756
  details: {
699
757
  hint: rawPlantUml.hint,
700
- example: "buffer_edit_xhtml(bufferId, operation='insert-plantuml', code='@startuml...@enduml', semanticPosition='after-heading:Title')",
758
+ example: "buffer_edit(bufferId, after=ID, plantuml='@startuml...@enduml')",
701
759
  },
702
760
  });
703
761
  }
@@ -706,14 +764,34 @@ Returns a new draftId and URL. Always use the returned draftId for subsequent op
706
764
  if (validationError) {
707
765
  return validationError;
708
766
  }
767
+ // Expand PlantUML !include directives before sending to Confluence
768
+ const expandedContent = await expandPlantUmlInXhtml(savedContent);
709
769
  const title = args.title || existingDraft.title;
710
- // Delete old draft
711
- await client.deleteDraft(args.draftId);
770
+ // Delete old draft before creating new one
771
+ // NOTE: Confluence Data Center does NOT support updating drafts directly.
772
+ // See: https://docs.atlassian.com/atlassian-confluence/REST/6.6.0/
773
+ // "Updating a draft is not currently supported"
774
+ // Therefore, we use a delete → create workflow.
775
+ //
776
+ // If delete fails with 404, the draft may have already been deleted
777
+ // (e.g., by user via UI, auto-cleanup, or race condition).
778
+ // In this case, we proceed with creating the new draft.
779
+ try {
780
+ await client.deleteDraft(args.draftId);
781
+ }
782
+ catch (deleteError) {
783
+ const apiError = deleteError;
784
+ if (apiError.statusCode !== 404) {
785
+ // Re-throw non-404 errors
786
+ throw deleteError;
787
+ }
788
+ // 404 = draft doesn't exist, proceed with creating new one
789
+ }
712
790
  // Create new draft with updated content
713
791
  const newDraft = await client.createDraft({
714
792
  spaceKey,
715
793
  title,
716
- content: savedContent,
794
+ content: expandedContent,
717
795
  parentId: existingDraft.ancestors?.[0]?.id,
718
796
  });
719
797
  // Update buffer metadata with new draft ID
@@ -721,8 +799,8 @@ Returns a new draftId and URL. Always use the returned draftId for subsequent op
721
799
  resourceType: "confluence_page",
722
800
  resourceId: args.draftId,
723
801
  });
724
- // Store updated content with new draft ID
725
- const newBufferId = contentBuffer.store(savedContent, {
802
+ // Store content with element IDs for structured editing
803
+ const { bufferId: newBufferId, structure } = storeXhtmlWithStructure(savedContent, {
726
804
  resourceType: "confluence_page",
727
805
  resourceId: newDraft.id,
728
806
  contentType: "xhtml",
@@ -737,12 +815,20 @@ Returns a new draftId and URL. Always use the returned draftId for subsequent op
737
815
  previousDraftId: args.draftId,
738
816
  newDraftId: newDraft.id,
739
817
  bufferId: newBufferId,
818
+ ...(structure && { structure }),
740
819
  title: newDraft.title,
741
820
  url: draftUrl,
742
821
  message: "Draft saved. User should click URL to review changes and publish manually via Confluence UI.",
743
822
  });
744
823
  }
745
824
  catch (error) {
825
+ // Try to enhance XHTML errors with location info for targeted fixes
826
+ if (isApiError(error) && args.bufferId) {
827
+ const enhanced = enhanceXhtmlError(error, args.bufferId);
828
+ if (enhanced) {
829
+ return formatError(enhanced);
830
+ }
831
+ }
746
832
  return formatError(isApiError(error) ? error : new Error(String(error)));
747
833
  }
748
834
  },
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/confluence/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/confluence/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAA8B,MAAM,yBAAyB,CAAC;AACxJ,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,MAAM,GAAG;QACb,aAAa,EAAE,CAAC;QAChB,aAAa,EAAE,EAAc;QAC7B,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,CAAC;KAChB,CAAC;IAEF,gCAAgC;IAChC,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC;IAEjC,yCAAyC;IACzC,MAAM,cAAc,GAAG,GAAG,CAAC,gBAAgB,CAAC,6CAA6C,CAAC,CAAC;IAC3F,MAAM,CAAC,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAY,CAAC;QAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;QACzD,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxD,IAAI,WAAW,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/D,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IACH,CAAC;IAED,eAAe;IACf,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAE3D,iBAAiB;IACjB,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,MAAM,CAAC;IAE5E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAC/B,UAAmB,EACnB,WAAoB;IAEpB,sDAAsD;IACtD,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;QAC9B,OAAO;YACL,KAAK,EAAE,WAAW,CAAC;gBACjB,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,kDAAkD;gBAC3D,UAAU,EAAE,GAAG;aAChB,CAAC;SACH,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;gBACL,KAAK,EAAE,WAAW,CAAC;oBACjB,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,UAAU,WAAW,uBAAuB;oBACrD,UAAU,EAAE,GAAG;iBAChB,CAAC;aACH,CAAC;QACJ,CAAC;QAED,6DAA6D;QAC7D,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,UAAU,EAAE,QAAQ,EAAE,WAAW,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YACrF,OAAO;gBACL,KAAK,EAAE,WAAW,CAAC;oBACjB,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,UAAU,WAAW,aAAa,UAAU,CAAC,QAAQ,CAAC,WAAW,0CAA0C;oBACpH,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE;wBACP,IAAI,EAAE,2EAA2E;wBACjF,gBAAgB,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBACjD,mBAAmB,EAAE,OAAO;qBAC7B;iBACF,CAAC;aACH,CAAC;QACJ,CAAC;QAED,+BAA+B;QAC/B,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QAClF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;gBACL,KAAK,EAAE,WAAW,CAAC;oBACjB,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,wCAAwC;oBACjD,UAAU,EAAE,GAAG;iBAChB,CAAC;aACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC;IACxC,CAAC;IAED,0BAA0B;IAC1B,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,uBAAuB,CAAC,OAAe;IACpD,MAAM,UAAU,GAA0B,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;IAExG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,MAAM,aAAa,GAAa,EAAE,CAAC;QAEnC,yBAAyB;QACzB,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,aAAa,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAC/C,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClI,aAAa,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC,CAAC;gBACpD,uCAAuC;gBACvC,IAAI,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;oBAC1B,MAAM,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE;wBACrD,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK;wBAC/C,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;oBACzB,aAAa,CAAC,IAAI,CAAC,cAAc,cAAc,GAAG,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,6BAA6B;QAC7B,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAClE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,aAAa,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBAClD,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC5B,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;oBACpD,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;wBACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5F,aAAa,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC,CAAC;oBACxD,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,8BAA8B;gBAC9B,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvB,aAAa,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBACrD,aAAa,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;gBACvF,aAAa,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;gBACxD,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAClC,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAC5C,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAChC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBACjD,aAAa,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,aAAa,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;QACzF,aAAa,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QACpF,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,aAAa,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;QAC1F,aAAa,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAExE,OAAO,WAAW,CAAC;YACjB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,qEAAqE;YAC9E,UAAU,EAAE,GAAG;YACf,OAAO,EAAE;gBACP,gBAAgB,EAAE,aAAa;gBAC/B,IAAI,EAAE,sFAAsF;aAC7F;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,gBAAgB;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAC9B,OAAe,EACf,QAAiC;IAEjC,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,eAAe,GAAG,cAAc,CAAC,WAAW,CAAC,QAAS,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,cAAc,CAAC,WAAW,CAAC,QAAS,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,aAAa,CAAC,kBAAkB,CAC/C,cAAc,EACd,eAAe,CAAC,SAAS,EACzB,eAAe,CAAC,MAAM,EACtB,QAAQ,CACT,CAAC;IACF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAwB;IAC5D,OAAO;QACL,yBAAyB,EAAE;YACzB,WAAW,EAAE;;;;;;sEAMmD;YAChE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBAC5C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;aAC7E,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAGf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,MAAM,CACZ,CAAC;oBACF,+DAA+D;oBAC/D,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,gDAAgD;oBAChD,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;wBACtB,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;4BAC7B,qBAAqB;4BACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;4BAC7C,IAAI,IAAI,GAAG,4BAA4B,CAAC;4BAExC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gCAC9D,IAAI,IAAI,8DAA8D,CAAC;gCACvE,IAAI,IAAI,iEAAiE,CAAC;gCAC1E,IAAI,IAAI,uDAAuD,CAAC;4BAClE,CAAC;iCAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gCACzC,IAAI,IAAI,yEAAyE,CAAC;gCAClF,IAAI,IAAI,6CAA6C,CAAC;gCACtD,IAAI,IAAI,6CAA6C,CAAC;4BACxD,CAAC;iCAAM,CAAC;gCACN,IAAI,IAAI,sEAAsE,CAAC;gCAC/E,IAAI,IAAI,gDAAgD,CAAC;gCACzD,IAAI,IAAI,8DAA8D,CAAC;gCACvE,IAAI,IAAI,yEAAyE,CAAC;gCAClF,IAAI,IAAI,yEAAyE,CAAC;4BACpF,CAAC;4BAED,IAAI,IAAI,eAAe,CAAC;4BACxB,IAAI,IAAI,mEAAmE,CAAC;4BAC5E,IAAI,IAAI,oEAAoE,CAAC;4BAC7E,IAAI,IAAI,qEAAqE,CAAC;4BAE9E,OAAO,WAAW,CAAC;gCACjB,GAAG,KAAK;gCACR,OAAO,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI;6BAC9B,CAAC,CAAC;wBACL,CAAC;6BAAM,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;4BACpC,kBAAkB;4BAClB,OAAO,WAAW,CAAC;gCACjB,GAAG,KAAK;gCACR,OAAO,EAAE,KAAK,CAAC,OAAO,GAAG,wBAAwB;oCAC/C,kFAAkF;oCAClF,gFAAgF;oCAChF,oDAAoD;oCACpD,4EAA4E;oCAC5E,mEAAmE;6BACtE,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBACD,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,mBAAmB,EAAE;YACnB,WAAW,EAAE;;;;;0FAKuE;YACpF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;gBACxE,MAAM,EAAE,CAAC;qBACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;qBACjB,QAAQ,EAAE;qBACV,QAAQ,CAAC,6DAA6D,CAAC;aAC3E,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAGf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;oBAElD,wDAAwD;oBACxD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,OAAO,EAAE;wBAC/D,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC7B,WAAW,EAAE,OAAO;wBACpB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM;wBAC/B,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG;wBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;qBACpB,CAAC,CAAC;oBAEH,OAAO,aAAa,CAAC;wBACnB,GAAG,kBAAkB,CAAC,MAAM,CAAC;wBAC7B,MAAM,EAAE,MAAM,CAAC,EAAE;wBACjB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM;wBAC/B,QAAQ;wBACR,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;wBAC/B,WAAW,EAAE,OAAO,CAAC,MAAM;wBAC3B,OAAO,EAAE,uFAAuF;qBACjG,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,4BAA4B,EAAE;YAC5B,WAAW,EAAE;;;;;0FAKuE;YACpF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mEAAmE,CAAC;gBAClG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACxC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;aAC7E,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAIf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CACxC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACZ,CAAC;oBACF,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,OAAO,WAAW,CAAC;4BACjB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,mBAAmB,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,QAAQ,EAAE;4BAClE,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAC;oBACL,CAAC;oBAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;oBAElD,wDAAwD;oBACxD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,OAAO,EAAE;wBAC/D,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC7B,WAAW,EAAE,OAAO;wBACpB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM;wBAC/B,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG;wBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;qBACpB,CAAC,CAAC;oBAEH,OAAO,aAAa,CAAC;wBACnB,GAAG,kBAAkB,CAAC,MAAM,CAAC;wBAC7B,MAAM,EAAE,MAAM,CAAC,EAAE;wBACjB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM;wBAC/B,QAAQ;wBACR,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;wBAC/B,WAAW,EAAE,OAAO,CAAC,MAAM;wBAC3B,OAAO,EAAE,uFAAuF;qBACjG,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,wGAAwG;QACxG,wDAAwD;QACxD,iGAAiG;QAEjG,sBAAsB,EAAE;YACtB,WAAW,EAAE,0BAA0B;YACvC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;aACzE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAAwB,EAAuB,EAAE;gBAC/D,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAErC,8CAA8C;oBAC9C,aAAa,CAAC,oBAAoB,CAAC;wBACjC,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,IAAI,CAAC,MAAM;qBACxB,CAAC,CAAC;oBAEH,OAAO,aAAa,CAAC;wBACnB,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,QAAQ,IAAI,CAAC,MAAM,uBAAuB;qBACpD,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,sBAAsB,EAAE;YACtB,WAAW,EAAE,wCAAwC;YACrD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,IAAI,EAAE,CAAC;qBACJ,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;qBAC5B,QAAQ,EAAE;qBACV,QAAQ,CAAC,mBAAmB,CAAC;aACjC,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAEf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,oBAAoB,EAAE;YACpB,WAAW,EAAE,wCAAwC;YACrD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;aAC7E,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAGf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;oBACjE,+DAA+D;oBAC/D,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,4BAA4B,EAAE;YAC5B,WAAW,EAAE,gCAAgC;YAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;gBAC/E,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;aAC7E,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAGf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CACzC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CACZ,CAAC;oBACF,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,sBAAsB,EAAE;YACtB,WAAW,EAAE,oCAAoC;YACjD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;gBACxE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAGf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAClE,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,uBAAuB,EAAE;YACvB,WAAW,EAAE,wCAAwC;YACrD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;aACzE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAEf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACrD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,4BAA4B,EAAE;YAC5B,WAAW,EAAE,2CAA2C;YACxD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;gBACxE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gBAChD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;aAC9D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAIf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,CACb,CAAC;oBACF,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,2BAA2B,EAAE;YAC3B,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;aACzE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAEf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACzD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,iCAAiC,EAAE;YACjC,WAAW,EAAE;;;;;;;0JAOuI;YACpJ,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,KAAK,IAAyB,EAAE;gBACvC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;oBACrD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,OAAO,WAAW,CAAC;4BACjB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,0CAA0C;4BACnD,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAC;oBACL,CAAC;oBACD,OAAO,aAAa,CAAC;wBACnB,QAAQ,EAAE,SAAS,CAAC,GAAG;wBACvB,SAAS,EAAE,SAAS,CAAC,IAAI;wBACzB,SAAS,EAAE,SAAS,CAAC,IAAI;wBACzB,UAAU,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE;wBAClC,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK;wBACxC,GAAG,EAAE,2EAA2E;qBACjF,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,2CAA2C;QAC3C,cAAc;QACd,2CAA2C;QAC3C,qFAAqF;QACrF,4FAA4F;QAE5F,uBAAuB,EAAE;YACvB,WAAW,EAAE;;;;;;;;;;;;;;kFAc+D;YAC5E,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC1C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACxC,OAAO,EAAE,CAAC;qBACP,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,yDAAyD,CAAC;gBACtE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;gBACjG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAC1D,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;aACnE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAOf,EAAuB,EAAE;gBACxB,yDAAyD;gBACzD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvE,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,QAAQ,CAAC,KAAK,CAAC;gBACxB,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACtB,OAAO,WAAW,CAAC;wBACjB,KAAK,EAAE,IAAI;wBACX,OAAO,EAAE,iDAAiD;wBAC1D,UAAU,EAAE,GAAG;qBAChB,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAEjC,6EAA6E;gBAC7E,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAC/C,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,WAAW,CAAC;wBACjB,KAAK,EAAE,IAAI;wBACX,OAAO,EAAE,+EAA+E;wBACxF,UAAU,EAAE,GAAG;wBACf,OAAO,EAAE;4BACP,IAAI,EAAE,WAAW,CAAC,IAAI;4BACtB,OAAO,EAAE,iEAAiE;yBAC3E;qBACF,CAAC,CAAC;gBACL,CAAC;gBAED,qDAAqD;gBACrD,MAAM,eAAe,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC/D,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,eAAe,CAAC;gBACzB,CAAC;gBAED,mEAAmE;gBACnE,MAAM,eAAe,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBAE7D,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;wBACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,OAAO,EAAE,eAAe;wBACxB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAC,CAAC;oBAEH,wDAAwD;oBACxD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,uBAAuB,CAAC,OAAO,EAAE;wBACjE,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,MAAM,CAAC,EAAE;wBACrB,WAAW,EAAE,OAAO;wBACpB,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG;wBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBAEH,+EAA+E;oBAC/E,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;oBACpC,MAAM,QAAQ,GAAG,GAAG,OAAO,qCAAqC,MAAM,CAAC,EAAE,EAAE,CAAC;oBAE5E,4CAA4C;oBAC5C,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;oBAE3C,OAAO,aAAa,CAAC;wBACnB,OAAO,EAAE,MAAM,CAAC,EAAE;wBAClB,QAAQ,EAAE,WAAW;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG;wBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;wBACpC,uEAAuE;wBACvE,GAAG,EAAE,QAAQ;wBACb,UAAU,EAAE,0BAA0B,QAAQ,EAAE;wBAChD,cAAc,EAAE;4BACd,gBAAgB,EAAE,OAAO,CAAC,aAAa;4BACvC,YAAY,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;4BAClF,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,QAAQ,EAAE,OAAO,CAAC,YAAY;yBAC/B;wBACD,OAAO,EACL,6FAA6F;wBAC/F,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,CAAC,IAAI;4BACjC,OAAO,EAAE,4GAA4G;yBACtH,CAAC;qBACH,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,oEAAoE;oBACpE,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACzD,IAAI,QAAQ,EAAE,CAAC;4BACb,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;oBACD,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,qBAAqB,EAAE;YACrB,WAAW,EAAE;;kHAE+F;YAC5G,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;aACrD,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAAyB,EAAuB,EAAE;gBAChE,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACnD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;oBAElD,wDAAwD;oBACxD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,OAAO,EAAE;wBAC/D,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,MAAM,CAAC,EAAE;wBACrB,WAAW,EAAE,OAAO;wBACpB,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG;wBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBAEH,2BAA2B;oBAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;oBACpC,MAAM,QAAQ,GAAG,GAAG,OAAO,qCAAqC,MAAM,CAAC,EAAE,EAAE,CAAC;oBAE5E,oCAAoC;oBACpC,MAAM,cAAc,GAClB,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBAErE,OAAO,aAAa,CAAC;wBACnB,OAAO,EAAE,MAAM,CAAC,EAAE;wBAClB,QAAQ;wBACR,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;wBAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG;wBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM;wBAC/B,GAAG,EAAE,QAAQ;wBACb,cAAc;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,qBAAqB,EAAE;YACrB,WAAW,EAAE,+EAA+E;YAC5F,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;aACnE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAGf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;oBAEtE,gDAAgD;oBAChD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;oBAEpC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC3C,OAAO,EAAE,IAAI,CAAC,EAAE;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE;wBAC/B,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE;wBACjC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE;wBACjC,GAAG,EAAE,GAAG,OAAO,qCAAqC,IAAI,CAAC,EAAE,EAAE;qBAC9D,CAAC,CAAC,CAAC;oBAEJ,OAAO,aAAa,CAAC;wBACnB,MAAM;wBACN,KAAK,EAAE,MAAM,CAAC,SAAS;qBACxB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,qBAAqB,EAAE;YACrB,WAAW,EAAE;;;;4HAIyG;YACtH,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBACvD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;gBACrE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;aACjE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAIf,EAAuB,EAAE;gBACxB,IAAI,CAAC;oBACH,8CAA8C;oBAC9C,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC1D,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC;oBAE1C,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,WAAW,CAAC;4BACjB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,mDAAmD;4BAC5D,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAC;oBACL,CAAC;oBAED,0BAA0B;oBAC1B,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,OAAO,WAAW,CAAC;4BACjB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,UAAU,IAAI,CAAC,QAAQ,uBAAuB;4BACvD,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAC;oBACL,CAAC;oBAED,+BAA+B;oBAC/B,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;oBACpF,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,OAAO,WAAW,CAAC;4BACjB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,wCAAwC;4BACjD,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAC;oBACL,CAAC;oBAED,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC;oBAEvC,6EAA6E;oBAC7E,MAAM,WAAW,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;oBACpD,IAAI,WAAW,EAAE,CAAC;wBAChB,OAAO,WAAW,CAAC;4BACjB,KAAK,EAAE,IAAI;4BACX,OAAO,EAAE,+EAA+E;4BACxF,UAAU,EAAE,GAAG;4BACf,OAAO,EAAE;gCACP,IAAI,EAAE,WAAW,CAAC,IAAI;gCACtB,OAAO,EAAE,iEAAiE;6BAC3E;yBACF,CAAC,CAAC;oBACL,CAAC;oBAED,qDAAqD;oBACrD,MAAM,eAAe,GAAG,MAAM,uBAAuB,CAAC,YAAY,CAAC,CAAC;oBACpE,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,eAAe,CAAC;oBACzB,CAAC;oBAED,mEAAmE;oBACnE,MAAM,eAAe,GAAG,MAAM,qBAAqB,CAAC,YAAY,CAAC,CAAC;oBAElE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC;oBAEhD,2CAA2C;oBAC3C,0EAA0E;oBAC1E,mEAAmE;oBACnE,gDAAgD;oBAChD,gDAAgD;oBAChD,EAAE;oBACF,oEAAoE;oBACpE,2DAA2D;oBAC3D,wDAAwD;oBACxD,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACzC,CAAC;oBAAC,OAAO,WAAoB,EAAE,CAAC;wBAC9B,MAAM,QAAQ,GAAG,WAAsC,CAAC;wBACxD,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;4BAChC,0BAA0B;4BAC1B,MAAM,WAAW,CAAC;wBACpB,CAAC;wBACD,2DAA2D;oBAC7D,CAAC;oBAED,wCAAwC;oBACxC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;wBACxC,QAAQ;wBACR,KAAK;wBACL,OAAO,EAAE,eAAe;wBACxB,QAAQ,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;qBAC3C,CAAC,CAAC;oBAEH,2CAA2C;oBAC3C,aAAa,CAAC,oBAAoB,CAAC;wBACjC,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,IAAI,CAAC,OAAO;qBACzB,CAAC,CAAC;oBAEH,wDAAwD;oBACxD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,YAAY,EAAE;wBACjF,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,QAAQ,CAAC,EAAE;wBACvB,WAAW,EAAE,OAAO;wBACpB,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG;wBAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBAEH,2BAA2B;oBAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;oBACpC,MAAM,QAAQ,GAAG,GAAG,OAAO,qCAAqC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAE9E,OAAO,aAAa,CAAC;wBACnB,eAAe,EAAE,IAAI,CAAC,OAAO;wBAC7B,UAAU,EAAE,QAAQ,CAAC,EAAE;wBACvB,QAAQ,EAAE,WAAW;wBACrB,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;wBAC/B,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,GAAG,EAAE,QAAQ;wBACb,OAAO,EAAE,8FAA8F;qBACxG,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,oEAAoE;oBACpE,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACzD,IAAI,QAAQ,EAAE,CAAC;4BACb,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;oBACD,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;QAED,uBAAuB,EAAE;YACvB,WAAW,EAAE;;6DAE0C;YACvD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;aAC/D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,IAAyB,EAAuB,EAAE;gBAChE,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAEvC,+CAA+C;oBAC/C,aAAa,CAAC,oBAAoB,CAAC;wBACjC,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,IAAI,CAAC,OAAO;qBACzB,CAAC,CAAC;oBAEH,OAAO,aAAa,CAAC;wBACnB,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,OAAO,EAAE,gBAAgB;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,WAAW,CAChB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ import { createBufferTools } from "./utils/buffer-tools.js";
15
15
  import { createWorkloadTools } from "./utils/workload-tools.js";
16
16
  import { createUrlTools } from "./utils/url-tools.js";
17
17
  import { createJiconHelpTools, WORKFLOW_GUIDE } from "./utils/jicon-help.js";
18
- import { createPlantUmlTools, shutdown as shutdownPlantUml } from "./utils/plantuml/index.js";
18
+ import { createPlantUmlTools, shutdown as shutdownPlantUml, initializePlantUml, configure as configurePlantUml } from "./utils/plantuml/index.js";
19
19
  import { ConfigLoader } from "./config/loader.js";
20
20
  import { PermissionFilter } from "./permissions/filter.js";
21
21
  import { WriteHomeValidator } from "./permissions/write-home-validator.js";
@@ -223,7 +223,22 @@ async function main() {
223
223
  console.error(`✓ Workload tools enabled (for time calculations)`);
224
224
  console.error(`✓ URL tools enabled (for full URL construction)`);
225
225
  console.error(`✓ Jicon help enabled (unified help system with topics: jql, cql, storage, plantuml)`);
226
- console.error(`✓ PlantUML tools enabled (Docker-based validation and rendering)`);
226
+ // Configure PlantUML include expansion from config
227
+ configurePlantUml({ includeExpansion: config.plantumlInclude });
228
+ // Initialize PlantUML Docker container at startup
229
+ const plantUmlResult = await initializePlantUml({
230
+ disabled: config.disableDocker,
231
+ });
232
+ if (plantUmlResult.disabled) {
233
+ console.error(`- PlantUML disabled (disableDocker: true)`);
234
+ }
235
+ else if (plantUmlResult.success) {
236
+ console.error(`✓ PlantUML started (container: ${plantUmlResult.containerId?.substring(0, 12)}, port: ${plantUmlResult.port})`);
237
+ }
238
+ else {
239
+ console.error(`⚠ PlantUML failed to start: ${plantUmlResult.error}`);
240
+ console.error(` PlantUML tools will return errors. Ensure Docker is running.`);
241
+ }
227
242
  console.error(`✓ Prompts enabled: "jicon-workflows" (workflow guide at server level)`);
228
243
  console.error(`✓ Max output size: ${getMaxOutputSize()} chars (JICON_MAX_OUTPUT)`);
229
244
  // Log permission info
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}