@knpkv/confluence-to-markdown 0.5.0 → 0.7.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.
- package/CHANGELOG.md +61 -0
- package/README.md +58 -14
- package/dist/AdfPlaceholders.d.ts +42 -0
- package/dist/AdfPlaceholders.d.ts.map +1 -0
- package/dist/AdfPlaceholders.js +547 -0
- package/dist/AdfPlaceholders.js.map +1 -0
- package/dist/AdfSchemaValidator.d.ts +37 -0
- package/dist/AdfSchemaValidator.d.ts.map +1 -0
- package/dist/AdfSchemaValidator.js +37 -0
- package/dist/AdfSchemaValidator.js.map +1 -0
- package/dist/AdfWalker.d.ts +39 -0
- package/dist/AdfWalker.d.ts.map +1 -0
- package/dist/AdfWalker.js +527 -0
- package/dist/AdfWalker.js.map +1 -0
- package/dist/AtlaskitTransformers.d.ts +35 -0
- package/dist/AtlaskitTransformers.d.ts.map +1 -0
- package/dist/AtlaskitTransformers.js +48 -0
- package/dist/AtlaskitTransformers.js.map +1 -0
- package/dist/Brand.d.ts +6 -6
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +8 -6
- package/dist/Brand.js.map +1 -1
- package/dist/ConfluenceAuth.d.ts +4 -4
- package/dist/ConfluenceAuth.d.ts.map +1 -1
- package/dist/ConfluenceAuth.js +15 -27
- package/dist/ConfluenceAuth.js.map +1 -1
- package/dist/ConfluenceClient.d.ts +4 -4
- package/dist/ConfluenceClient.d.ts.map +1 -1
- package/dist/ConfluenceClient.js +21 -14
- package/dist/ConfluenceClient.js.map +1 -1
- package/dist/ConfluenceConfig.d.ts +3 -3
- package/dist/ConfluenceConfig.d.ts.map +1 -1
- package/dist/ConfluenceConfig.js +13 -11
- package/dist/ConfluenceConfig.js.map +1 -1
- package/dist/ConfluenceError.d.ts +56 -4
- package/dist/ConfluenceError.d.ts.map +1 -1
- package/dist/ConfluenceError.js +30 -1
- package/dist/ConfluenceError.js.map +1 -1
- package/dist/GitService.d.ts +11 -3
- package/dist/GitService.d.ts.map +1 -1
- package/dist/GitService.js +19 -27
- package/dist/GitService.js.map +1 -1
- package/dist/LocalFileSystem.d.ts +3 -3
- package/dist/LocalFileSystem.d.ts.map +1 -1
- package/dist/LocalFileSystem.js +6 -6
- package/dist/LocalFileSystem.js.map +1 -1
- package/dist/MarkdownConverter.d.ts +16 -65
- package/dist/MarkdownConverter.d.ts.map +1 -1
- package/dist/MarkdownConverter.js +64 -85
- package/dist/MarkdownConverter.js.map +1 -1
- package/dist/Schemas.d.ts +128 -141
- package/dist/Schemas.d.ts.map +1 -1
- package/dist/Schemas.js +21 -23
- package/dist/Schemas.js.map +1 -1
- package/dist/SyncEngine.d.ts +8 -5
- package/dist/SyncEngine.d.ts.map +1 -1
- package/dist/SyncEngine.js +189 -113
- package/dist/SyncEngine.js.map +1 -1
- package/dist/bin.js +23 -35
- package/dist/bin.js.map +1 -1
- package/dist/commands/auth.d.ts +2 -14
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +11 -16
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/clone.d.ts +4 -6
- package/dist/commands/clone.d.ts.map +1 -1
- package/dist/commands/clone.js +34 -32
- package/dist/commands/clone.js.map +1 -1
- package/dist/commands/delete.d.ts +2 -10
- package/dist/commands/delete.d.ts.map +1 -1
- package/dist/commands/delete.js +5 -4
- package/dist/commands/delete.js.map +1 -1
- package/dist/commands/errorHandler.d.ts +2 -1
- package/dist/commands/errorHandler.d.ts.map +1 -1
- package/dist/commands/errorHandler.js +22 -15
- package/dist/commands/errorHandler.js.map +1 -1
- package/dist/commands/fetch.d.ts +27 -0
- package/dist/commands/fetch.d.ts.map +1 -0
- package/dist/commands/fetch.js +48 -0
- package/dist/commands/fetch.js.map +1 -0
- package/dist/commands/git.d.ts +7 -10
- package/dist/commands/git.d.ts.map +1 -1
- package/dist/commands/git.js +6 -6
- package/dist/commands/git.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +1 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/layers.d.ts +10 -9
- package/dist/commands/layers.d.ts.map +1 -1
- package/dist/commands/layers.js +41 -30
- package/dist/commands/layers.js.map +1 -1
- package/dist/commands/new.d.ts +2 -6
- package/dist/commands/new.d.ts.map +1 -1
- package/dist/commands/new.js +5 -4
- package/dist/commands/new.js.map +1 -1
- package/dist/commands/pageInput.d.ts +19 -0
- package/dist/commands/pageInput.d.ts.map +1 -0
- package/dist/commands/pageInput.js +68 -0
- package/dist/commands/pageInput.js.map +1 -0
- package/dist/commands/root.d.ts +8 -0
- package/dist/commands/root.d.ts.map +1 -0
- package/dist/commands/root.js +29 -0
- package/dist/commands/root.js.map +1 -0
- package/dist/commands/sync.d.ts +6 -9
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +5 -6
- package/dist/commands/sync.js.map +1 -1
- package/dist/index.d.ts +3 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -13
- package/dist/index.js.map +1 -1
- package/dist/internal/NodeLayers.d.ts.map +1 -1
- package/dist/internal/NodeLayers.js +1 -2
- package/dist/internal/NodeLayers.js.map +1 -1
- package/dist/internal/adfMetadata.d.ts +30 -0
- package/dist/internal/adfMetadata.d.ts.map +1 -0
- package/dist/internal/adfMetadata.js +126 -0
- package/dist/internal/adfMetadata.js.map +1 -0
- package/dist/internal/cleanMarkdown.d.ts +5 -0
- package/dist/internal/cleanMarkdown.d.ts.map +1 -0
- package/dist/internal/cleanMarkdown.js +13 -0
- package/dist/internal/cleanMarkdown.js.map +1 -0
- package/dist/internal/frontmatter.d.ts.map +1 -1
- package/dist/internal/frontmatter.js +41 -8
- package/dist/internal/frontmatter.js.map +1 -1
- package/dist/internal/gitCommands.d.ts +9 -3
- package/dist/internal/gitCommands.d.ts.map +1 -1
- package/dist/internal/gitCommands.js +18 -9
- package/dist/internal/gitCommands.js.map +1 -1
- package/dist/internal/hashUtils.d.ts +1 -1
- package/dist/internal/hashUtils.d.ts.map +1 -1
- package/dist/internal/hashUtils.js +1 -1
- package/dist/internal/hashUtils.js.map +1 -1
- package/dist/internal/oauthServer.d.ts +10 -5
- package/dist/internal/oauthServer.d.ts.map +1 -1
- package/dist/internal/oauthServer.js +19 -40
- package/dist/internal/oauthServer.js.map +1 -1
- package/dist/internal/pathUtils.d.ts +1 -1
- package/dist/internal/pathUtils.d.ts.map +1 -1
- package/dist/internal/pathUtils.js +1 -1
- package/dist/internal/pathUtils.js.map +1 -1
- package/dist/internal/process.d.ts +15 -0
- package/dist/internal/process.d.ts.map +1 -0
- package/dist/internal/process.js +10 -0
- package/dist/internal/process.js.map +1 -0
- package/dist/internal/stdio.d.ts +6 -0
- package/dist/internal/stdio.d.ts.map +1 -0
- package/dist/internal/stdio.js +15 -0
- package/dist/internal/stdio.js.map +1 -0
- package/dist/internal/tokenStorage.d.ts +3 -13
- package/dist/internal/tokenStorage.d.ts.map +1 -1
- package/dist/internal/tokenStorage.js +26 -24
- package/dist/internal/tokenStorage.js.map +1 -1
- package/dist/internal/userCache.d.ts +1 -1
- package/dist/internal/userCache.d.ts.map +1 -1
- package/dist/internal/userCache.js +1 -1
- package/dist/internal/userCache.js.map +1 -1
- package/package.json +29 -20
- package/skills/confluence/SKILL.md +143 -0
- package/skills/confluence/agents/openai.yaml +4 -0
- package/src/AdfPlaceholders.ts +563 -0
- package/src/AdfSchemaValidator.ts +65 -0
- package/src/AdfWalker.ts +591 -0
- package/src/AtlaskitTransformers.ts +70 -0
- package/src/Brand.ts +11 -16
- package/src/ConfluenceAuth.ts +22 -30
- package/src/ConfluenceClient.ts +28 -24
- package/src/ConfluenceConfig.ts +14 -14
- package/src/ConfluenceError.ts +65 -3
- package/src/GitService.ts +39 -49
- package/src/LocalFileSystem.ts +7 -9
- package/src/MarkdownConverter.ts +108 -143
- package/src/Schemas.ts +17 -16
- package/src/SyncEngine.ts +272 -127
- package/src/atlaskit-adf-schema.d.ts +3 -0
- package/src/bin.ts +30 -56
- package/src/commands/auth.ts +21 -18
- package/src/commands/clone.ts +46 -38
- package/src/commands/delete.ts +5 -4
- package/src/commands/errorHandler.ts +25 -18
- package/src/commands/fetch.ts +90 -0
- package/src/commands/git.ts +6 -6
- package/src/commands/index.ts +1 -0
- package/src/commands/layers.ts +64 -37
- package/src/commands/new.ts +5 -4
- package/src/commands/pageInput.ts +103 -0
- package/src/commands/root.ts +59 -0
- package/src/commands/sync.ts +7 -6
- package/src/index.ts +3 -18
- package/src/internal/NodeLayers.ts +1 -2
- package/src/internal/adfMetadata.ts +145 -0
- package/src/internal/cleanMarkdown.ts +15 -0
- package/src/internal/frontmatter.ts +45 -8
- package/src/internal/gitCommands.ts +23 -17
- package/src/internal/hashUtils.ts +2 -2
- package/src/internal/oauthServer.ts +84 -105
- package/src/internal/pathUtils.ts +1 -1
- package/src/internal/process.ts +15 -0
- package/src/internal/stdio.ts +22 -0
- package/src/internal/tokenStorage.ts +39 -29
- package/src/internal/userCache.ts +2 -2
- package/test/AdfPlaceholders.test.ts +508 -0
- package/test/AdfSchemaValidator.test.ts +34 -0
- package/test/AdfWalker.test.ts +676 -0
- package/test/AtlaskitTransformers.test.ts +25 -0
- package/test/Brand.test.ts +11 -11
- package/test/GitService.test.ts +6 -2
- package/test/MarkdownConverter.test.ts +121 -105
- package/test/RoundTrip.test.ts +521 -0
- package/test/Schemas.test.ts +40 -40
- package/test/adfMetadata.test.ts +110 -0
- package/test/cleanMarkdown.test.ts +36 -0
- package/test/commandHarness.test.ts +79 -0
- package/test/commandHarness.ts +147 -0
- package/test/fetch.test.ts +61 -0
- package/test/frontmatter.test.ts +41 -0
- package/test/integration.test.ts +569 -156
- package/test/layers.test.ts +12 -0
- package/test/oauthServer.test.ts +4 -5
- package/test/pageInput.test.ts +83 -0
- package/test/tokenStorage.test.ts +17 -17
- package/dist/SchemaConverterError.d.ts +0 -108
- package/dist/SchemaConverterError.d.ts.map +0 -1
- package/dist/SchemaConverterError.js +0 -84
- package/dist/SchemaConverterError.js.map +0 -1
- package/dist/ast/BlockNode.d.ts +0 -453
- package/dist/ast/BlockNode.d.ts.map +0 -1
- package/dist/ast/BlockNode.js +0 -310
- package/dist/ast/BlockNode.js.map +0 -1
- package/dist/ast/Document.d.ts +0 -216
- package/dist/ast/Document.d.ts.map +0 -1
- package/dist/ast/Document.js +0 -69
- package/dist/ast/Document.js.map +0 -1
- package/dist/ast/InlineNode.d.ts +0 -477
- package/dist/ast/InlineNode.d.ts.map +0 -1
- package/dist/ast/InlineNode.js +0 -263
- package/dist/ast/InlineNode.js.map +0 -1
- package/dist/ast/MacroNode.d.ts +0 -267
- package/dist/ast/MacroNode.d.ts.map +0 -1
- package/dist/ast/MacroNode.js +0 -164
- package/dist/ast/MacroNode.js.map +0 -1
- package/dist/ast/index.d.ts +0 -10
- package/dist/ast/index.d.ts.map +0 -1
- package/dist/ast/index.js +0 -14
- package/dist/ast/index.js.map +0 -1
- package/dist/parsers/ConfluenceParser.d.ts +0 -26
- package/dist/parsers/ConfluenceParser.d.ts.map +0 -1
- package/dist/parsers/ConfluenceParser.js +0 -797
- package/dist/parsers/ConfluenceParser.js.map +0 -1
- package/dist/parsers/MarkdownParser.d.ts +0 -26
- package/dist/parsers/MarkdownParser.d.ts.map +0 -1
- package/dist/parsers/MarkdownParser.js +0 -982
- package/dist/parsers/MarkdownParser.js.map +0 -1
- package/dist/parsers/index.d.ts +0 -8
- package/dist/parsers/index.d.ts.map +0 -1
- package/dist/parsers/index.js +0 -8
- package/dist/parsers/index.js.map +0 -1
- package/dist/schemas/ConfluenceSchema.d.ts +0 -21
- package/dist/schemas/ConfluenceSchema.d.ts.map +0 -1
- package/dist/schemas/ConfluenceSchema.js +0 -38
- package/dist/schemas/ConfluenceSchema.js.map +0 -1
- package/dist/schemas/ConversionSchema.d.ts +0 -35
- package/dist/schemas/ConversionSchema.d.ts.map +0 -1
- package/dist/schemas/ConversionSchema.js +0 -208
- package/dist/schemas/ConversionSchema.js.map +0 -1
- package/dist/schemas/MarkdownSchema.d.ts +0 -21
- package/dist/schemas/MarkdownSchema.d.ts.map +0 -1
- package/dist/schemas/MarkdownSchema.js +0 -38
- package/dist/schemas/MarkdownSchema.js.map +0 -1
- package/dist/schemas/hast/HastFromHtml.d.ts +0 -27
- package/dist/schemas/hast/HastFromHtml.d.ts.map +0 -1
- package/dist/schemas/hast/HastFromHtml.js +0 -107
- package/dist/schemas/hast/HastFromHtml.js.map +0 -1
- package/dist/schemas/hast/HastSchema.d.ts +0 -195
- package/dist/schemas/hast/HastSchema.d.ts.map +0 -1
- package/dist/schemas/hast/HastSchema.js +0 -183
- package/dist/schemas/hast/HastSchema.js.map +0 -1
- package/dist/schemas/hast/index.d.ts +0 -9
- package/dist/schemas/hast/index.d.ts.map +0 -1
- package/dist/schemas/hast/index.js +0 -3
- package/dist/schemas/hast/index.js.map +0 -1
- package/dist/schemas/index.d.ts +0 -14
- package/dist/schemas/index.d.ts.map +0 -1
- package/dist/schemas/index.js +0 -16
- package/dist/schemas/index.js.map +0 -1
- package/dist/schemas/mdast/MdastFromMarkdown.d.ts +0 -30
- package/dist/schemas/mdast/MdastFromMarkdown.d.ts.map +0 -1
- package/dist/schemas/mdast/MdastFromMarkdown.js +0 -79
- package/dist/schemas/mdast/MdastFromMarkdown.js.map +0 -1
- package/dist/schemas/mdast/MdastSchema.d.ts +0 -385
- package/dist/schemas/mdast/MdastSchema.d.ts.map +0 -1
- package/dist/schemas/mdast/MdastSchema.js +0 -266
- package/dist/schemas/mdast/MdastSchema.js.map +0 -1
- package/dist/schemas/mdast/index.d.ts +0 -10
- package/dist/schemas/mdast/index.d.ts.map +0 -1
- package/dist/schemas/mdast/index.js +0 -4
- package/dist/schemas/mdast/index.js.map +0 -1
- package/dist/schemas/mdast/mdastToString.d.ts +0 -13
- package/dist/schemas/mdast/mdastToString.d.ts.map +0 -1
- package/dist/schemas/mdast/mdastToString.js +0 -85
- package/dist/schemas/mdast/mdastToString.js.map +0 -1
- package/dist/schemas/nodes/block/BlockSchema.d.ts +0 -43
- package/dist/schemas/nodes/block/BlockSchema.d.ts.map +0 -1
- package/dist/schemas/nodes/block/BlockSchema.js +0 -634
- package/dist/schemas/nodes/block/BlockSchema.js.map +0 -1
- package/dist/schemas/nodes/block/index.d.ts +0 -7
- package/dist/schemas/nodes/block/index.d.ts.map +0 -1
- package/dist/schemas/nodes/block/index.js +0 -7
- package/dist/schemas/nodes/block/index.js.map +0 -1
- package/dist/schemas/nodes/index.d.ts +0 -9
- package/dist/schemas/nodes/index.d.ts.map +0 -1
- package/dist/schemas/nodes/index.js +0 -12
- package/dist/schemas/nodes/index.js.map +0 -1
- package/dist/schemas/nodes/inline/InlineSchema.d.ts +0 -48
- package/dist/schemas/nodes/inline/InlineSchema.d.ts.map +0 -1
- package/dist/schemas/nodes/inline/InlineSchema.js +0 -436
- package/dist/schemas/nodes/inline/InlineSchema.js.map +0 -1
- package/dist/schemas/nodes/inline/index.d.ts +0 -7
- package/dist/schemas/nodes/inline/index.d.ts.map +0 -1
- package/dist/schemas/nodes/inline/index.js +0 -7
- package/dist/schemas/nodes/inline/index.js.map +0 -1
- package/dist/schemas/nodes/macro/MacroSchema.d.ts +0 -27
- package/dist/schemas/nodes/macro/MacroSchema.d.ts.map +0 -1
- package/dist/schemas/nodes/macro/MacroSchema.js +0 -162
- package/dist/schemas/nodes/macro/MacroSchema.js.map +0 -1
- package/dist/schemas/nodes/macro/index.d.ts +0 -7
- package/dist/schemas/nodes/macro/index.d.ts.map +0 -1
- package/dist/schemas/nodes/macro/index.js +0 -7
- package/dist/schemas/nodes/macro/index.js.map +0 -1
- package/dist/schemas/preprocessing/ConfluencePreprocessor.d.ts +0 -24
- package/dist/schemas/preprocessing/ConfluencePreprocessor.d.ts.map +0 -1
- package/dist/schemas/preprocessing/ConfluencePreprocessor.js +0 -359
- package/dist/schemas/preprocessing/ConfluencePreprocessor.js.map +0 -1
- package/dist/schemas/preprocessing/index.d.ts +0 -8
- package/dist/schemas/preprocessing/index.d.ts.map +0 -1
- package/dist/schemas/preprocessing/index.js +0 -2
- package/dist/schemas/preprocessing/index.js.map +0 -1
- package/dist/serializers/ConfluenceSerializer.d.ts +0 -30
- package/dist/serializers/ConfluenceSerializer.d.ts.map +0 -1
- package/dist/serializers/ConfluenceSerializer.js +0 -560
- package/dist/serializers/ConfluenceSerializer.js.map +0 -1
- package/dist/serializers/MarkdownSerializer.d.ts +0 -34
- package/dist/serializers/MarkdownSerializer.d.ts.map +0 -1
- package/dist/serializers/MarkdownSerializer.js +0 -395
- package/dist/serializers/MarkdownSerializer.js.map +0 -1
- package/dist/serializers/index.d.ts +0 -8
- package/dist/serializers/index.d.ts.map +0 -1
- package/dist/serializers/index.js +0 -8
- package/dist/serializers/index.js.map +0 -1
- package/src/SchemaConverterError.ts +0 -108
- package/src/ast/BlockNode.ts +0 -469
- package/src/ast/Document.ts +0 -90
- package/src/ast/InlineNode.ts +0 -323
- package/src/ast/MacroNode.ts +0 -245
- package/src/ast/index.ts +0 -83
- package/src/parsers/ConfluenceParser.ts +0 -956
- package/src/parsers/MarkdownParser.ts +0 -1338
- package/src/parsers/index.ts +0 -8
- package/src/schemas/ConfluenceSchema.ts +0 -56
- package/src/schemas/ConversionSchema.ts +0 -318
- package/src/schemas/MarkdownSchema.ts +0 -56
- package/src/schemas/hast/HastFromHtml.ts +0 -153
- package/src/schemas/hast/HastSchema.ts +0 -274
- package/src/schemas/hast/index.ts +0 -35
- package/src/schemas/index.ts +0 -20
- package/src/schemas/mdast/MdastFromMarkdown.ts +0 -118
- package/src/schemas/mdast/MdastSchema.ts +0 -566
- package/src/schemas/mdast/index.ts +0 -59
- package/src/schemas/mdast/mdastToString.ts +0 -102
- package/src/schemas/nodes/block/BlockSchema.ts +0 -773
- package/src/schemas/nodes/block/index.ts +0 -13
- package/src/schemas/nodes/index.ts +0 -20
- package/src/schemas/nodes/inline/InlineSchema.ts +0 -523
- package/src/schemas/nodes/inline/index.ts +0 -14
- package/src/schemas/nodes/macro/MacroSchema.ts +0 -226
- package/src/schemas/nodes/macro/index.ts +0 -6
- package/src/schemas/preprocessing/ConfluencePreprocessor.ts +0 -455
- package/src/schemas/preprocessing/index.ts +0 -8
- package/src/serializers/ConfluenceSerializer.ts +0 -737
- package/src/serializers/MarkdownSerializer.ts +0 -543
- package/src/serializers/index.ts +0 -8
- package/test/ast/BlockNode.test.ts +0 -265
- package/test/ast/Document.test.ts +0 -126
- package/test/ast/InlineNode.test.ts +0 -161
- package/test/fixtures/integration-test.html.fixture +0 -103
- package/test/fixtures/integration-test.md.expected +0 -257
- package/test/parsers/ConfluenceParser.test.ts +0 -452
- package/test/schemas/ConfluencePreprocessor.test.ts +0 -180
- package/test/schemas/ConversionSchema.test.ts +0 -159
- package/test/schemas/HastSchema.test.ts +0 -138
- package/test/schemas/MdastSchema.test.ts +0 -145
- package/test/schemas/nodes/block/BlockSchema.test.ts +0 -173
- package/test/schemas/nodes/inline/InlineSchema.test.ts +0 -198
- package/test/schemas/nodes/macro/MacroSchema.test.ts +0 -142
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Transform schemas for macro nodes (Hast <-> AST).
|
|
3
|
-
*
|
|
4
|
-
* Provides transforms for Confluence-specific macro elements like info panels,
|
|
5
|
-
* expand sections, TOC, and status badges.
|
|
6
|
-
*
|
|
7
|
-
* @module
|
|
8
|
-
*/
|
|
9
|
-
import * as Effect from "effect/Effect";
|
|
10
|
-
import { PanelTypes } from "../../../ast/MacroNode.js";
|
|
11
|
-
import { getTextContent, isHastElement, makeHastElement, makeHastText } from "../../hast/index.js";
|
|
12
|
-
import { makeMdastCode, makeMdastParagraph, makeMdastText, mdastToString } from "../../mdast/index.js";
|
|
13
|
-
import { blockNodeToHast, blockNodeToMdast } from "../block/index.js";
|
|
14
|
-
/**
|
|
15
|
-
* Convert HAST element to AST macro node.
|
|
16
|
-
*/
|
|
17
|
-
export const macroNodeFromHastElement = (element, parseBlockChildren) => Effect.gen(function* () {
|
|
18
|
-
const tagName = element.tagName.toLowerCase();
|
|
19
|
-
// Info/warning/note panels
|
|
20
|
-
if (tagName === "div" && element.properties?.["dataMacro"]) {
|
|
21
|
-
const macro = element.properties["dataMacro"];
|
|
22
|
-
if (PanelTypes.includes(macro)) {
|
|
23
|
-
const children = yield* parseBlockChildren(element.children);
|
|
24
|
-
// Cast to SimpleBlock[] - at runtime only simple blocks are parsed for panel children
|
|
25
|
-
return {
|
|
26
|
-
_tag: "InfoPanel",
|
|
27
|
-
version: 1,
|
|
28
|
-
panelType: macro,
|
|
29
|
-
title: element.properties["dataTitle"] || undefined,
|
|
30
|
-
children: children
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
// Expand/details
|
|
35
|
-
if (tagName === "details") {
|
|
36
|
-
const summary = element.children.find((c) => isHastElement(c) && c.tagName === "summary");
|
|
37
|
-
const title = summary ? getTextContent(summary) : undefined;
|
|
38
|
-
const contentChildren = element.children.filter((c) => !(isHastElement(c) && c.tagName === "summary"));
|
|
39
|
-
const children = yield* parseBlockChildren(contentChildren);
|
|
40
|
-
// Cast to SimpleBlock[] - at runtime only simple blocks are parsed for expand children
|
|
41
|
-
return {
|
|
42
|
-
_tag: "ExpandMacro",
|
|
43
|
-
version: 1,
|
|
44
|
-
title,
|
|
45
|
-
children: children
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
// TOC
|
|
49
|
-
if (tagName === "nav" && element.properties?.["dataMacro"] === "toc") {
|
|
50
|
-
const minStr = element.properties["dataMin"];
|
|
51
|
-
const maxStr = element.properties["dataMax"];
|
|
52
|
-
return {
|
|
53
|
-
_tag: "TocMacro",
|
|
54
|
-
version: 1,
|
|
55
|
-
minLevel: minStr ? parseInt(minStr) : undefined,
|
|
56
|
-
maxLevel: maxStr ? parseInt(maxStr) : undefined
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
// Code macro (from preprocessed data)
|
|
60
|
-
if (tagName === "pre" && element.properties?.["dataMacro"] === "code") {
|
|
61
|
-
const codeEl = element.children.find((c) => isHastElement(c) && c.tagName === "code");
|
|
62
|
-
const code = codeEl ? getTextContent(codeEl) : getTextContent(element);
|
|
63
|
-
const language = element.properties["dataLanguage"] || undefined;
|
|
64
|
-
return {
|
|
65
|
-
_tag: "CodeMacro",
|
|
66
|
-
version: 1,
|
|
67
|
-
language,
|
|
68
|
-
code,
|
|
69
|
-
lineNumbers: false,
|
|
70
|
-
collapse: false
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
// Status macro
|
|
74
|
-
if (tagName === "span" && element.properties?.["dataMacro"] === "status") {
|
|
75
|
-
const color = element.properties["dataColor"] || "Grey";
|
|
76
|
-
const text = getTextContent(element);
|
|
77
|
-
return {
|
|
78
|
-
_tag: "StatusMacro",
|
|
79
|
-
version: 1,
|
|
80
|
-
text,
|
|
81
|
-
color: normalizeStatusColor(color)
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
return null;
|
|
85
|
-
});
|
|
86
|
-
/**
|
|
87
|
-
* Normalize status color to allowed values.
|
|
88
|
-
*/
|
|
89
|
-
const normalizeStatusColor = (color) => {
|
|
90
|
-
const normalized = color.toLowerCase();
|
|
91
|
-
switch (normalized) {
|
|
92
|
-
case "red":
|
|
93
|
-
return "Red";
|
|
94
|
-
case "yellow":
|
|
95
|
-
return "Yellow";
|
|
96
|
-
case "green":
|
|
97
|
-
return "Green";
|
|
98
|
-
case "blue":
|
|
99
|
-
return "Blue";
|
|
100
|
-
default:
|
|
101
|
-
return "Grey";
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
/**
|
|
105
|
-
* Convert AST macro node to HAST element.
|
|
106
|
-
*/
|
|
107
|
-
export const macroNodeToHast = (node) => {
|
|
108
|
-
switch (node._tag) {
|
|
109
|
-
case "InfoPanel":
|
|
110
|
-
return makeHastElement("div", {
|
|
111
|
-
dataMacro: node.panelType,
|
|
112
|
-
...(node.title ? { dataTitle: node.title } : {})
|
|
113
|
-
}, node.children.map(blockNodeToHast));
|
|
114
|
-
case "ExpandMacro":
|
|
115
|
-
return makeHastElement("details", { dataMacro: "expand" }, [
|
|
116
|
-
...(node.title ? [makeHastElement("summary", {}, [makeHastText(node.title)])] : []),
|
|
117
|
-
...node.children.map(blockNodeToHast)
|
|
118
|
-
]);
|
|
119
|
-
case "TocMacro":
|
|
120
|
-
return makeHastElement("nav", {
|
|
121
|
-
dataMacro: "toc",
|
|
122
|
-
...(node.minLevel !== undefined ? { dataMin: String(node.minLevel) } : {}),
|
|
123
|
-
...(node.maxLevel !== undefined ? { dataMax: String(node.maxLevel) } : {})
|
|
124
|
-
});
|
|
125
|
-
case "CodeMacro":
|
|
126
|
-
return makeHastElement("pre", {
|
|
127
|
-
dataMacro: "code",
|
|
128
|
-
...(node.language ? { dataLanguage: node.language } : {})
|
|
129
|
-
}, [makeHastElement("code", {}, [makeHastText(node.code)])]);
|
|
130
|
-
case "StatusMacro":
|
|
131
|
-
return makeHastElement("span", { dataMacro: "status", dataColor: node.color }, [makeHastText(node.text)]);
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
/**
|
|
135
|
-
* Convert AST macro node to MDAST block content.
|
|
136
|
-
*/
|
|
137
|
-
export const macroNodeToMdast = (node) => {
|
|
138
|
-
switch (node._tag) {
|
|
139
|
-
case "InfoPanel":
|
|
140
|
-
// Render as container syntax with children
|
|
141
|
-
return {
|
|
142
|
-
type: "html",
|
|
143
|
-
value: `:::${node.panelType}${node.title ? ` ${node.title}` : ""}\n${node.children.map((c) => mdastToString(blockNodeToMdast(c))).join("\n")}\n:::`
|
|
144
|
-
};
|
|
145
|
-
case "ExpandMacro":
|
|
146
|
-
return {
|
|
147
|
-
type: "html",
|
|
148
|
-
value: `<details>\n<summary>${node.title ?? ""}</summary>\n${node.children.map((c) => mdastToString(blockNodeToMdast(c))).join("\n")}\n</details>`
|
|
149
|
-
};
|
|
150
|
-
case "TocMacro":
|
|
151
|
-
return {
|
|
152
|
-
type: "html",
|
|
153
|
-
value: "[[toc]]"
|
|
154
|
-
};
|
|
155
|
-
case "CodeMacro":
|
|
156
|
-
return makeMdastCode(node.code, node.language);
|
|
157
|
-
case "StatusMacro":
|
|
158
|
-
// Render as badge-like text
|
|
159
|
-
return makeMdastParagraph([makeMdastText(`[${node.text}]`)]);
|
|
160
|
-
}
|
|
161
|
-
};
|
|
162
|
-
//# sourceMappingURL=MacroSchema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MacroSchema.js","sourceRoot":"","sources":["../../../../src/schemas/nodes/macro/MacroSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schemas/nodes/macro/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schemas/nodes/macro/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Schema-based Confluence HTML preprocessing.
|
|
3
|
-
*
|
|
4
|
-
* Transforms raw Confluence storage format into parseable HTML by expanding
|
|
5
|
-
* macros, converting task lists, and normalizing Confluence-specific markup.
|
|
6
|
-
*
|
|
7
|
-
* @module
|
|
8
|
-
*/
|
|
9
|
-
import type * as Brand from "effect/Brand";
|
|
10
|
-
import * as Schema from "effect/Schema";
|
|
11
|
-
/**
|
|
12
|
-
* Branded type for preprocessed Confluence HTML.
|
|
13
|
-
*
|
|
14
|
-
* @category Types
|
|
15
|
-
*/
|
|
16
|
-
export type PreprocessedHtml = string & Brand.Brand<"PreprocessedHtml">;
|
|
17
|
-
/**
|
|
18
|
-
* Schema for preprocessed HTML brand.
|
|
19
|
-
*
|
|
20
|
-
* @category Schemas
|
|
21
|
-
*/
|
|
22
|
-
export declare const PreprocessedHtmlSchema: Schema.brand<typeof Schema.String, "PreprocessedHtml">;
|
|
23
|
-
export declare const PreprocessedHtmlFromConfluence: Schema.transformOrFail<typeof Schema.String, Schema.brand<typeof Schema.String, "PreprocessedHtml">, never>;
|
|
24
|
-
//# sourceMappingURL=ConfluencePreprocessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConfluencePreprocessor.d.ts","sourceRoot":"","sources":["../../../src/schemas/preprocessing/ConfluencePreprocessor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAI1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAMvC;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;AAEvE;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,wDAElC,CAAA;AAiCD,eAAO,MAAM,8BAA8B,6GAsB1C,CAAA"}
|
|
@@ -1,359 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { pipe } from "effect/Function";
|
|
3
|
-
import * as ParseResult from "effect/ParseResult";
|
|
4
|
-
import * as Schema from "effect/Schema";
|
|
5
|
-
import { PanelTypes } from "../../ast/MacroNode.js";
|
|
6
|
-
/** Maximum HTML input size (1MB) to prevent ReDoS attacks */
|
|
7
|
-
const MAX_HTML_SIZE = 1024 * 1024;
|
|
8
|
-
/**
|
|
9
|
-
* Schema for preprocessed HTML brand.
|
|
10
|
-
*
|
|
11
|
-
* @category Schemas
|
|
12
|
-
*/
|
|
13
|
-
export const PreprocessedHtmlSchema = Schema.String.pipe(Schema.brand("PreprocessedHtml"));
|
|
14
|
-
/**
|
|
15
|
-
* Transform raw Confluence HTML to preprocessed HTML.
|
|
16
|
-
*
|
|
17
|
-
* Applies the following transformations:
|
|
18
|
-
* - Layout section extraction with markers
|
|
19
|
-
* - Structured macro expansion (code, info panels, expand, TOC, status)
|
|
20
|
-
* - Task list normalization
|
|
21
|
-
* - Image attachment processing
|
|
22
|
-
* - Emoticon conversion
|
|
23
|
-
* - User mention extraction
|
|
24
|
-
* - ADF extension handling
|
|
25
|
-
* - Namespace stripping (ac:, ri: tags)
|
|
26
|
-
*
|
|
27
|
-
* @example
|
|
28
|
-
* ```typescript
|
|
29
|
-
* import { PreprocessedHtmlFromConfluence } from "@knpkv/confluence-to-markdown/schemas/preprocessing"
|
|
30
|
-
* import * as Schema from "effect/Schema"
|
|
31
|
-
* import { Effect } from "effect"
|
|
32
|
-
*
|
|
33
|
-
* const program = Effect.gen(function* () {
|
|
34
|
-
* const html = yield* Schema.decode(PreprocessedHtmlFromConfluence)(
|
|
35
|
-
* '<ac:structured-macro ac:name="info"><ac:rich-text-body>Content</ac:rich-text-body></ac:structured-macro>'
|
|
36
|
-
* )
|
|
37
|
-
* // html contains: <div data-macro="info">Content</div>
|
|
38
|
-
* })
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
* @category Schemas
|
|
42
|
-
*/
|
|
43
|
-
const makePreprocessedHtml = Schema.decodeSync(PreprocessedHtmlSchema);
|
|
44
|
-
export const PreprocessedHtmlFromConfluence = Schema.transformOrFail(Schema.String, PreprocessedHtmlSchema, {
|
|
45
|
-
strict: true,
|
|
46
|
-
decode: (html, _options, ast) => Effect.gen(function* () {
|
|
47
|
-
if (html.length > MAX_HTML_SIZE) {
|
|
48
|
-
return yield* Effect.fail(new ParseResult.Type(ast, html, `HTML input too large: ${html.length} bytes (max ${MAX_HTML_SIZE})`));
|
|
49
|
-
}
|
|
50
|
-
return pipe(html, preprocessConfluenceHtml, makePreprocessedHtml);
|
|
51
|
-
}),
|
|
52
|
-
encode: (preprocessed) =>
|
|
53
|
-
// Identity - branded string is already a string
|
|
54
|
-
Effect.succeed(preprocessed)
|
|
55
|
-
});
|
|
56
|
-
/**
|
|
57
|
-
* Main preprocessing pipeline.
|
|
58
|
-
*/
|
|
59
|
-
const preprocessConfluenceHtml = (html) => {
|
|
60
|
-
let result = html;
|
|
61
|
-
// 1. Process layouts FIRST - before any other preprocessing
|
|
62
|
-
result = preprocessLayouts(result);
|
|
63
|
-
// 2. Process structured macros iteratively
|
|
64
|
-
result = processStructuredMacros(result);
|
|
65
|
-
// 3. Process task lists BEFORE stripping ac: tags
|
|
66
|
-
result = preprocessTaskLists(result);
|
|
67
|
-
// 4. Process images with attachments
|
|
68
|
-
result = preprocessImages(result);
|
|
69
|
-
// 5. Process emoticons
|
|
70
|
-
result = preprocessEmoticons(result);
|
|
71
|
-
// 6. Process user mentions
|
|
72
|
-
result = preprocessUserMentions(result);
|
|
73
|
-
// 7. Process Confluence links with link-body
|
|
74
|
-
result = preprocessConfluenceLinks(result);
|
|
75
|
-
// 8. Process ADF extensions (decision lists)
|
|
76
|
-
result = preprocessAdfExtensions(result);
|
|
77
|
-
// 9. Strip remaining ac/ri namespace tags
|
|
78
|
-
result = stripNamespaces(result);
|
|
79
|
-
return result;
|
|
80
|
-
};
|
|
81
|
-
/**
|
|
82
|
-
* Process Confluence layouts.
|
|
83
|
-
* Inserts markers for roundtrip preservation.
|
|
84
|
-
*/
|
|
85
|
-
const preprocessLayouts = (html) => {
|
|
86
|
-
return html.replace(/<ac:layout>([\s\S]*?)<\/ac:layout>/gi, (_, layoutContent) => {
|
|
87
|
-
let result = "<div data-cf-marker><!--cf:layout-start--></div>";
|
|
88
|
-
let sectionIndex = 0;
|
|
89
|
-
const sectionRegex = /<ac:layout-section([^>]*)>([\s\S]*?)<\/ac:layout-section>/gi;
|
|
90
|
-
let sectionMatch;
|
|
91
|
-
while ((sectionMatch = sectionRegex.exec(layoutContent)) !== null) {
|
|
92
|
-
const sectionAttrs = sectionMatch[1] ?? "";
|
|
93
|
-
const sectionContent = sectionMatch[2] ?? "";
|
|
94
|
-
const typeMatch = sectionAttrs.match(/ac:type="([^"]*)"/);
|
|
95
|
-
const sectionType = typeMatch?.[1] ?? "fixed-width";
|
|
96
|
-
const breakoutModeMatch = sectionAttrs.match(/ac:breakout-mode="([^"]*)"/);
|
|
97
|
-
const breakoutWidthMatch = sectionAttrs.match(/ac:breakout-width="([^"]*)"/);
|
|
98
|
-
const breakoutMode = breakoutModeMatch?.[1] ?? "";
|
|
99
|
-
const breakoutWidth = breakoutWidthMatch?.[1] ?? "";
|
|
100
|
-
const cellContents = [];
|
|
101
|
-
const cellRegex = /<ac:layout-cell[^>]*>([\s\S]*?)<\/ac:layout-cell>/gi;
|
|
102
|
-
let cellMatch;
|
|
103
|
-
while ((cellMatch = cellRegex.exec(sectionContent)) !== null) {
|
|
104
|
-
cellContents.push(cellMatch[1] ?? "");
|
|
105
|
-
}
|
|
106
|
-
result += `<div data-cf-marker><!--cf:section:${sectionIndex};${encodeURIComponent(sectionType)};${encodeURIComponent(breakoutMode)};${encodeURIComponent(breakoutWidth)};${cellContents.length}--></div>`;
|
|
107
|
-
cellContents.forEach((cellContent, cellIndex) => {
|
|
108
|
-
result += `<div data-cf-marker><!--cf:cell:${sectionIndex};${cellIndex}--></div>${cellContent}`;
|
|
109
|
-
});
|
|
110
|
-
result += `<div data-cf-marker><!--cf:section-end:${sectionIndex}--></div>`;
|
|
111
|
-
sectionIndex++;
|
|
112
|
-
}
|
|
113
|
-
result += "<div data-cf-marker><!--cf:layout-end--></div>";
|
|
114
|
-
return result;
|
|
115
|
-
});
|
|
116
|
-
};
|
|
117
|
-
/**
|
|
118
|
-
* Process structured macros iteratively.
|
|
119
|
-
*/
|
|
120
|
-
const processStructuredMacros = (html) => {
|
|
121
|
-
let result = html;
|
|
122
|
-
let iterations = 0;
|
|
123
|
-
const maxIterations = 100;
|
|
124
|
-
while (iterations < maxIterations) {
|
|
125
|
-
const macroStart = result.indexOf("<ac:structured-macro");
|
|
126
|
-
if (macroStart === -1)
|
|
127
|
-
break;
|
|
128
|
-
// First, find the end of the opening tag to check if self-closing
|
|
129
|
-
const openingTagEnd = result.indexOf(">", macroStart);
|
|
130
|
-
if (openingTagEnd === -1)
|
|
131
|
-
break;
|
|
132
|
-
// Check if self-closing (ends with />)
|
|
133
|
-
const isSelfClosing = result[openingTagEnd - 1] === "/";
|
|
134
|
-
let endPos;
|
|
135
|
-
if (isSelfClosing) {
|
|
136
|
-
// Self-closing macro: <ac:structured-macro ... />
|
|
137
|
-
endPos = openingTagEnd + 1;
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
// Regular macro with body: find matching closing tag
|
|
141
|
-
let depth = 1;
|
|
142
|
-
let pos = openingTagEnd + 1;
|
|
143
|
-
endPos = -1;
|
|
144
|
-
while (pos < result.length && depth > 0) {
|
|
145
|
-
if (result.slice(pos, pos + 20) === "<ac:structured-macro") {
|
|
146
|
-
// Check if this nested opening is also self-closing
|
|
147
|
-
const nestedEnd = result.indexOf(">", pos);
|
|
148
|
-
if (nestedEnd !== -1 && result[nestedEnd - 1] === "/") {
|
|
149
|
-
// Self-closing nested macro - don't change depth
|
|
150
|
-
pos = nestedEnd + 1;
|
|
151
|
-
}
|
|
152
|
-
else {
|
|
153
|
-
depth++;
|
|
154
|
-
pos += 20;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
else if (result.slice(pos, pos + 21) === "</ac:structured-macro") {
|
|
158
|
-
depth--;
|
|
159
|
-
if (depth === 0) {
|
|
160
|
-
endPos = result.indexOf(">", pos) + 1;
|
|
161
|
-
}
|
|
162
|
-
pos += 21;
|
|
163
|
-
}
|
|
164
|
-
else {
|
|
165
|
-
pos++;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
if (endPos === -1)
|
|
169
|
-
break;
|
|
170
|
-
}
|
|
171
|
-
const macroContent = result.slice(macroStart, endPos);
|
|
172
|
-
const replacement = processSingleMacro(macroContent);
|
|
173
|
-
result = result.slice(0, macroStart) + replacement + result.slice(endPos);
|
|
174
|
-
iterations++;
|
|
175
|
-
}
|
|
176
|
-
return result;
|
|
177
|
-
};
|
|
178
|
-
/**
|
|
179
|
-
* Process a single Confluence macro to HTML.
|
|
180
|
-
*/
|
|
181
|
-
const processSingleMacro = (macroContent) => {
|
|
182
|
-
const nameMatch = macroContent.match(/ac:name="([^"]+)"/);
|
|
183
|
-
const macroName = nameMatch?.[1] ?? "";
|
|
184
|
-
// Plain-text body (for code macros)
|
|
185
|
-
const plainBodyStart = macroContent.indexOf("<ac:plain-text-body><![CDATA[");
|
|
186
|
-
const plainBodyEnd = macroContent.indexOf("]]></ac:plain-text-body>");
|
|
187
|
-
if (plainBodyStart !== -1 && plainBodyEnd !== -1) {
|
|
188
|
-
const content = macroContent.slice(plainBodyStart + 29, plainBodyEnd);
|
|
189
|
-
const langMatch = macroContent.match(/ac:name="code".*?<ac:parameter[^>]*ac:name="language"[^>]*>([^<]+)/);
|
|
190
|
-
const language = langMatch?.[1] ?? "";
|
|
191
|
-
return `<pre data-macro="code" data-language="${language}"><code>${escapeHtml(content)}</code></pre>`;
|
|
192
|
-
}
|
|
193
|
-
// Rich-text body
|
|
194
|
-
const richBodyStart = macroContent.indexOf("<ac:rich-text-body>");
|
|
195
|
-
const richBodyEnd = macroContent.indexOf("</ac:rich-text-body>");
|
|
196
|
-
if (richBodyStart !== -1 && richBodyEnd !== -1) {
|
|
197
|
-
const content = macroContent.slice(richBodyStart + 19, richBodyEnd);
|
|
198
|
-
// Info/warning/note panels
|
|
199
|
-
if (PanelTypes.includes(macroName)) {
|
|
200
|
-
const titleMatch = macroContent.match(/<ac:parameter[^>]*ac:name="title"[^>]*>([^<]+)/);
|
|
201
|
-
const title = titleMatch?.[1] ?? "";
|
|
202
|
-
return `<div data-macro="${macroName}" data-title="${escapeHtml(title)}">${content}</div>`;
|
|
203
|
-
}
|
|
204
|
-
// Expand macro
|
|
205
|
-
if (macroName === "expand") {
|
|
206
|
-
const titleMatch = macroContent.match(/<ac:parameter[^>]*ac:name="title"[^>]*>([^<]+)/);
|
|
207
|
-
const title = titleMatch?.[1] ?? "";
|
|
208
|
-
return `<details data-macro="expand"><summary>${escapeHtml(title)}</summary>${content}</details>`;
|
|
209
|
-
}
|
|
210
|
-
return content;
|
|
211
|
-
}
|
|
212
|
-
// TOC macro
|
|
213
|
-
if (macroName === "toc") {
|
|
214
|
-
const minMatch = macroContent.match(/<ac:parameter[^>]*ac:name="minLevel"[^>]*>(\d+)/);
|
|
215
|
-
const maxMatch = macroContent.match(/<ac:parameter[^>]*ac:name="maxLevel"[^>]*>(\d+)/);
|
|
216
|
-
return `<nav data-macro="toc" data-min="${minMatch?.[1] ?? ""}" data-max="${maxMatch?.[1] ?? ""}"></nav>`;
|
|
217
|
-
}
|
|
218
|
-
// Status macro
|
|
219
|
-
if (macroName === "status") {
|
|
220
|
-
const colorMatch = macroContent.match(/<ac:parameter[^>]*ac:name="colour"[^>]*>([^<]+)/);
|
|
221
|
-
const titleMatch = macroContent.match(/<ac:parameter[^>]*ac:name="title"[^>]*>([^<]+)/);
|
|
222
|
-
return `<span data-macro="status" data-color="${colorMatch?.[1] ?? ""}">${escapeHtml(titleMatch?.[1] ?? "")}</span>`;
|
|
223
|
-
}
|
|
224
|
-
// view-file macro: render as a visible anchor pointing at the attachment.
|
|
225
|
-
if (macroName === "view-file") {
|
|
226
|
-
const filenameMatch = macroContent.match(/ri:filename="([^"]+)"/);
|
|
227
|
-
const filename = filenameMatch?.[1] ?? "";
|
|
228
|
-
return `<a data-macro="view-file" href="attachment:${escapeHtml(filename)}">${escapeHtml(filename)}</a>`;
|
|
229
|
-
}
|
|
230
|
-
// Unknown macro - preserve as unsupported. The body is HTML-escaped so the
|
|
231
|
-
// next iteration of processStructuredMacros doesn't re-match the same
|
|
232
|
-
// <ac:structured-macro> tag and loop forever.
|
|
233
|
-
return `<div data-unsupported-macro="${macroName}">${escapeHtml(macroContent)}</div>`;
|
|
234
|
-
};
|
|
235
|
-
/**
|
|
236
|
-
* Preprocess task lists.
|
|
237
|
-
*/
|
|
238
|
-
const preprocessTaskLists = (html) => {
|
|
239
|
-
let result = html;
|
|
240
|
-
const taskRegex = /<ac:task>([\s\S]*?)<\/ac:task>/gi;
|
|
241
|
-
result = result.replace(taskRegex, (_, taskContent) => {
|
|
242
|
-
const idMatch = taskContent.match(/<ac:task-id>([^<]*)<\/ac:task-id>/);
|
|
243
|
-
const uuidMatch = taskContent.match(/<ac:task-uuid>([^<]*)<\/ac:task-uuid>/);
|
|
244
|
-
const statusMatch = taskContent.match(/<ac:task-status>([^<]*)<\/ac:task-status>/);
|
|
245
|
-
const bodyMatch = taskContent.match(/<ac:task-body>([\s\S]*?)<\/ac:task-body>/);
|
|
246
|
-
const id = idMatch?.[1] ?? "";
|
|
247
|
-
const uuid = uuidMatch?.[1] ?? "";
|
|
248
|
-
const status = statusMatch?.[1] ?? "incomplete";
|
|
249
|
-
const body = bodyMatch?.[1] ?? "";
|
|
250
|
-
const cleanBody = body.replace(/<[^>]+>/g, "").trim();
|
|
251
|
-
return `<li data-task-id="${id}" data-task-uuid="${uuid}" data-task-status="${status}">${cleanBody}</li>`;
|
|
252
|
-
});
|
|
253
|
-
result = result.replace(/<ac:task-list[^>]*>/gi, "<ul data-macro=\"task-list\">");
|
|
254
|
-
result = result.replace(/<\/ac:task-list>/gi, "</ul>");
|
|
255
|
-
return result;
|
|
256
|
-
};
|
|
257
|
-
/**
|
|
258
|
-
* Preprocess images with attachments.
|
|
259
|
-
*/
|
|
260
|
-
const preprocessImages = (html) => {
|
|
261
|
-
return html.replace(/<ac:image([^>]*)>[\s\S]*?<ri:attachment([^>]*)\/>[\s\S]*?<\/ac:image>/gi, (_, imageAttrs, attachmentAttrs) => {
|
|
262
|
-
const filename = attachmentAttrs.match(/ri:filename="([^"]*)"/)?.[1] ?? "";
|
|
263
|
-
const align = imageAttrs.match(/ac:align="([^"]*)"/)?.[1] ?? "";
|
|
264
|
-
const width = imageAttrs.match(/ac:width="([^"]*)"/)?.[1] ?? "";
|
|
265
|
-
const alt = imageAttrs.match(/ac:alt="([^"]*)"/)?.[1] ?? "";
|
|
266
|
-
const attrs = [
|
|
267
|
-
`data-attachment="${escapeHtml(filename)}"`,
|
|
268
|
-
align && `data-align="${align}"`,
|
|
269
|
-
width && `data-width="${width}"`,
|
|
270
|
-
alt && `alt="${escapeHtml(alt)}"`
|
|
271
|
-
].filter(Boolean).join(" ");
|
|
272
|
-
return `<img ${attrs}>`;
|
|
273
|
-
});
|
|
274
|
-
};
|
|
275
|
-
/**
|
|
276
|
-
* Preprocess emoticons.
|
|
277
|
-
*/
|
|
278
|
-
const preprocessEmoticons = (html) => {
|
|
279
|
-
return html.replace(/<ac:emoticon([^>]*)\/?>/gi, (_, attrs) => {
|
|
280
|
-
const shortname = attrs.match(/ac:emoji-shortname="([^"]*)"/)?.[1] ?? "";
|
|
281
|
-
const emojiId = attrs.match(/ac:emoji-id="([^"]*)"/)?.[1] ?? "";
|
|
282
|
-
const fallback = attrs.match(/ac:emoji-fallback="([^"]*)"/)?.[1] ?? "";
|
|
283
|
-
return `<span data-emoji="${escapeHtml(shortname)}" data-emoji-id="${emojiId}">${fallback}</span>`;
|
|
284
|
-
});
|
|
285
|
-
};
|
|
286
|
-
/**
|
|
287
|
-
* Preprocess user mentions.
|
|
288
|
-
*/
|
|
289
|
-
const preprocessUserMentions = (html) => {
|
|
290
|
-
return html.replace(/<ac:link>\s*<ri:user([^>]*)\/?>\s*<\/ac:link>/gi, (_, attrs) => {
|
|
291
|
-
const accountId = attrs.match(/ri:account-id="([^"]*)"/)?.[1] ?? "";
|
|
292
|
-
return `<span data-user-mention="${escapeHtml(accountId)}"></span>`;
|
|
293
|
-
});
|
|
294
|
-
};
|
|
295
|
-
/**
|
|
296
|
-
* Preprocess Confluence links with link-body.
|
|
297
|
-
* <ac:link><ac:link-body>Link text</ac:link-body></ac:link>
|
|
298
|
-
* -> <span data-confluence-link>Link text</span>
|
|
299
|
-
*/
|
|
300
|
-
const preprocessConfluenceLinks = (html) => {
|
|
301
|
-
return html.replace(/<ac:link>\s*<ac:link-body>([\s\S]*?)<\/ac:link-body>\s*<\/ac:link>/gi, (_, linkText) => {
|
|
302
|
-
return `<span data-confluence-link>${linkText}</span>`;
|
|
303
|
-
});
|
|
304
|
-
};
|
|
305
|
-
/**
|
|
306
|
-
* Preprocess ADF extensions (decision lists).
|
|
307
|
-
*/
|
|
308
|
-
const preprocessAdfExtensions = (html) => {
|
|
309
|
-
return html.replace(/<ac:adf-extension>([\s\S]*?)<\/ac:adf-extension>/gi, (_, content) => {
|
|
310
|
-
if (content.includes("type=\"decision-list\"")) {
|
|
311
|
-
const items = [];
|
|
312
|
-
const itemRegex = /<ac:adf-node\s+type="decision-item">([\s\S]*?)<\/ac:adf-node>/gi;
|
|
313
|
-
let itemMatch;
|
|
314
|
-
while ((itemMatch = itemRegex.exec(content)) !== null) {
|
|
315
|
-
const itemContent = itemMatch[1] ?? "";
|
|
316
|
-
const localIdMatch = itemContent.match(/<ac:adf-attribute\s+key="local-id">([^<]*)<\/ac:adf-attribute>/);
|
|
317
|
-
const stateMatch = itemContent.match(/<ac:adf-attribute\s+key="state">([^<]*)<\/ac:adf-attribute>/);
|
|
318
|
-
const textMatch = itemContent.match(/<ac:adf-content>([^<]*)<\/ac:adf-content>/);
|
|
319
|
-
items.push({
|
|
320
|
-
localId: localIdMatch?.[1] ?? "",
|
|
321
|
-
state: stateMatch?.[1] ?? "UNDECIDED",
|
|
322
|
-
content: textMatch?.[1] ?? ""
|
|
323
|
-
});
|
|
324
|
-
}
|
|
325
|
-
if (items.length > 0) {
|
|
326
|
-
const encoded = items.map((item) => `${encodeURIComponent(item.localId)};${encodeURIComponent(item.state)};${encodeURIComponent(item.content)}`).join("|");
|
|
327
|
-
return `<!--cf:decision:${encoded}-->`;
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
// Check if it's an ADF panel (note, info, warning, etc.)
|
|
331
|
-
if (content.includes("type=\"panel\"")) {
|
|
332
|
-
const panelTypeMatch = content.match(/<ac:adf-attribute\s+key="panel-type">([^<]*)<\/ac:adf-attribute>/);
|
|
333
|
-
const panelType = panelTypeMatch?.[1] ?? "info";
|
|
334
|
-
const contentMatch = content.match(/<ac:adf-content>([\s\S]*?)<\/ac:adf-content>/);
|
|
335
|
-
const innerContent = contentMatch?.[1] ?? "";
|
|
336
|
-
return `<div data-macro="${panelType}" data-title="">${innerContent}</div>`;
|
|
337
|
-
}
|
|
338
|
-
const fallbackMatch = content.match(/<ac:adf-fallback>([\s\S]*?)<\/ac:adf-fallback>/);
|
|
339
|
-
if (fallbackMatch) {
|
|
340
|
-
return fallbackMatch[1] ?? "";
|
|
341
|
-
}
|
|
342
|
-
return "";
|
|
343
|
-
});
|
|
344
|
-
};
|
|
345
|
-
/**
|
|
346
|
-
* Strip remaining ac/ri namespace tags.
|
|
347
|
-
*/
|
|
348
|
-
const stripNamespaces = (html) => {
|
|
349
|
-
return html
|
|
350
|
-
.replace(/<ac:parameter[^>]{0,1000}>[^<]{0,10000}<\/ac:parameter>/gi, "")
|
|
351
|
-
.replace(/<\/?ac:[a-z-]{1,50}[^>]{0,1000}>/gi, "")
|
|
352
|
-
.replace(/<\/?ri:[a-z-]{1,50}[^>]{0,1000}\/?>/gi, "");
|
|
353
|
-
};
|
|
354
|
-
const escapeHtml = (str) => str
|
|
355
|
-
.replace(/&/g, "&")
|
|
356
|
-
.replace(/</g, "<")
|
|
357
|
-
.replace(/>/g, ">")
|
|
358
|
-
.replace(/"/g, """);
|
|
359
|
-
//# sourceMappingURL=ConfluencePreprocessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConfluencePreprocessor.js","sourceRoot":"","sources":["../../../src/schemas/preprocessing/ConfluencePreprocessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Confluence HTML preprocessing schemas.
|
|
3
|
-
*
|
|
4
|
-
* @module
|
|
5
|
-
*/
|
|
6
|
-
export type { PreprocessedHtml } from "./ConfluencePreprocessor.js";
|
|
7
|
-
export { PreprocessedHtmlFromConfluence, PreprocessedHtmlSchema } from "./ConfluencePreprocessor.js";
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schemas/preprocessing/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,8BAA8B,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schemas/preprocessing/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,8BAA8B,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA"}
|