@breadstone-tools/markdowner-core 0.0.71 → 0.0.73
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 +26 -0
- package/package.json +3 -3
- package/Process/MarkdownProcessor.d.ts +0 -46
- package/Process/MarkdownProcessor.d.ts.map +0 -1
- package/Process/MarkdownProcessor.js +0 -92
- package/Process/MarkdownProcessor.js.map +0 -1
- package/Process/Processors/Abstracts/BaseProcessor.d.ts +0 -60
- package/Process/Processors/Abstracts/BaseProcessor.d.ts.map +0 -1
- package/Process/Processors/Abstracts/BaseProcessor.js +0 -71
- package/Process/Processors/Abstracts/BaseProcessor.js.map +0 -1
- package/Process/Processors/BlockquoteProcessor.Test.d.ts +0 -2
- package/Process/Processors/BlockquoteProcessor.Test.d.ts.map +0 -1
- package/Process/Processors/BlockquoteProcessor.Test.js +0 -36
- package/Process/Processors/BlockquoteProcessor.Test.js.map +0 -1
- package/Process/Processors/BlockquoteProcessor.d.ts +0 -25
- package/Process/Processors/BlockquoteProcessor.d.ts.map +0 -1
- package/Process/Processors/BlockquoteProcessor.js +0 -67
- package/Process/Processors/BlockquoteProcessor.js.map +0 -1
- package/Process/Processors/CalloutProcessor.d.ts +0 -29
- package/Process/Processors/CalloutProcessor.d.ts.map +0 -1
- package/Process/Processors/CalloutProcessor.js +0 -68
- package/Process/Processors/CalloutProcessor.js.map +0 -1
- package/Process/Processors/CodeBlockProcessor.d.ts +0 -24
- package/Process/Processors/CodeBlockProcessor.d.ts.map +0 -1
- package/Process/Processors/CodeBlockProcessor.js +0 -65
- package/Process/Processors/CodeBlockProcessor.js.map +0 -1
- package/Process/Processors/Interfaces/IProcessor.d.ts +0 -9
- package/Process/Processors/Interfaces/IProcessor.d.ts.map +0 -1
- package/Process/Processors/Interfaces/IProcessor.js +0 -3
- package/Process/Processors/Interfaces/IProcessor.js.map +0 -1
- package/Process/Processors/SplitProcessor.d.ts +0 -49
- package/Process/Processors/SplitProcessor.d.ts.map +0 -1
- package/Process/Processors/SplitProcessor.js +0 -123
- package/Process/Processors/SplitProcessor.js.map +0 -1
- package/Process/Processors/TabProcessor.d.ts +0 -42
- package/Process/Processors/TabProcessor.d.ts.map +0 -1
- package/Process/Processors/TabProcessor.js +0 -94
- package/Process/Processors/TabProcessor.js.map +0 -1
- package/Process/Processors/Utils.d.ts +0 -6
- package/Process/Processors/Utils.d.ts.map +0 -1
- package/Process/Processors/Utils.js +0 -14
- package/Process/Processors/Utils.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,29 @@
|
|
|
1
|
+
## 0.0.71 (2025-06-30)
|
|
2
|
+
|
|
3
|
+
### 🩹 Fixes
|
|
4
|
+
|
|
5
|
+
- add missing newline at end of package.json ([73866991d5](https://github.com/RueDeRennes/mosaik/commit/73866991d5))
|
|
6
|
+
|
|
7
|
+
## 0.0.70 (2025-06-28)
|
|
8
|
+
|
|
9
|
+
### 🩹 Fixes
|
|
10
|
+
|
|
11
|
+
- update background color to transparent for page header and menu components; update release script to version 0.0.70 ([e8e7c124a4](https://github.com/RueDeRennes/mosaik/commit/e8e7c124a4))
|
|
12
|
+
|
|
13
|
+
## 0.0.69 (2025-06-26)
|
|
14
|
+
|
|
15
|
+
This was a version bump only for markdowner-core to align it with other projects, there were no code changes.
|
|
16
|
+
|
|
17
|
+
## 0.0.68 (2025-06-26)
|
|
18
|
+
|
|
19
|
+
### 🚀 Features
|
|
20
|
+
|
|
21
|
+
- add copyExecutorsJson script and update build commands ([0a0aba85b9](https://github.com/RueDeRennes/mosaik/commit/0a0aba85b9))
|
|
22
|
+
|
|
23
|
+
## 0.0.67 (2025-06-26)
|
|
24
|
+
|
|
25
|
+
This was a version bump only for markdowner-core to align it with other projects, there were no code changes.
|
|
26
|
+
|
|
1
27
|
## 0.0.66 (2025-06-25)
|
|
2
28
|
|
|
3
29
|
This was a version bump only for markdowner-core to align it with other projects, there were no code changes.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@breadstone-tools/markdowner-core",
|
|
3
3
|
"description": "Markdowner core library",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.73",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "andre.wehlert <awehlert@breadstone.de> (https://www.breadstone.de)",
|
|
7
7
|
"repository": {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"typings": "./Index.d.ts",
|
|
14
14
|
"types": "./Index.d.ts",
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@breadstone-infrastructure/utilities": "^0.0.
|
|
17
|
-
"marked": "^
|
|
16
|
+
"@breadstone-infrastructure/utilities": "^0.0.73",
|
|
17
|
+
"marked": "^16.0.0"
|
|
18
18
|
}
|
|
19
19
|
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { type MarkedOptions } from 'marked';
|
|
2
|
-
import type { IProcessor } from './Processors/Interfaces/IProcessor.js';
|
|
3
|
-
/**
|
|
4
|
-
* Main processor for Markdown content.
|
|
5
|
-
* Orchestrates processors and integrates them with `marked`.
|
|
6
|
-
*
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export declare class MarkdownProcessor {
|
|
10
|
-
private _processors;
|
|
11
|
-
/**
|
|
12
|
-
* Constructs a new MarkdownProcessor.
|
|
13
|
-
*/
|
|
14
|
-
constructor(processors?: Array<IProcessor>);
|
|
15
|
-
/**
|
|
16
|
-
* Adds a custom processor to the manager.
|
|
17
|
-
*
|
|
18
|
-
* @public
|
|
19
|
-
* @param processor - The processor to add.
|
|
20
|
-
*/
|
|
21
|
-
addProcessor(processor: IProcessor): void;
|
|
22
|
-
/**
|
|
23
|
-
* Removes a custom processor from the manager.
|
|
24
|
-
*
|
|
25
|
-
* @public
|
|
26
|
-
* @param processor - The processor to remove.
|
|
27
|
-
*/
|
|
28
|
-
removeProcessor(processor: IProcessor): void;
|
|
29
|
-
/**
|
|
30
|
-
* Processes Markdown content into HTML.
|
|
31
|
-
*
|
|
32
|
-
* @public
|
|
33
|
-
* @param markdown - The Markdown content to process.
|
|
34
|
-
* @returns The resulting HTML string.
|
|
35
|
-
*/
|
|
36
|
-
process(markdown: string, options?: Omit<MarkedOptions, 'async'>): string;
|
|
37
|
-
/**
|
|
38
|
-
* Processes Markdown content into HTML asynchronously.
|
|
39
|
-
*
|
|
40
|
-
* @public
|
|
41
|
-
* @param markdown - The Markdown content to process.
|
|
42
|
-
* @returns A promise that resolves to the resulting HTML string.
|
|
43
|
-
*/
|
|
44
|
-
processAsync(markdown: string, options?: Omit<MarkedOptions, 'async'>): Promise<string>;
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=MarkdownProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MarkdownProcessor.d.ts","sourceRoot":"","sources":["../../src/Process/MarkdownProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAK1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAKxE;;;;;GAKG;AACH,qBAAa,iBAAiB;IAI1B,OAAO,CAAC,WAAW,CAAyB;IAM5C;;OAEG;gBACgB,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;IAkBjD;;;;;OAKG;IACI,YAAY,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAIhD;;;;;OAKG;IACI,eAAe,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAInD;;;;;;OAMG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,MAAM;IAiBhF;;;;;;OAMG;IACI,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAajG"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
// #region Imports
|
|
2
|
-
import { Marked } from 'marked';
|
|
3
|
-
import { BlockquoteProcessor } from './Processors/BlockquoteProcessor.js';
|
|
4
|
-
import { CodeBlockProcessor } from './Processors/CodeBlockProcessor.js';
|
|
5
|
-
import { TabProcessor } from './Processors/TabProcessor.js';
|
|
6
|
-
import { CalloutProcessor } from './Processors/CalloutProcessor.js';
|
|
7
|
-
import { SplitProcessor } from './Processors/SplitProcessor.js';
|
|
8
|
-
// #endregion
|
|
9
|
-
/**
|
|
10
|
-
* Main processor for Markdown content.
|
|
11
|
-
* Orchestrates processors and integrates them with `marked`.
|
|
12
|
-
*
|
|
13
|
-
* @public
|
|
14
|
-
*/
|
|
15
|
-
export class MarkdownProcessor {
|
|
16
|
-
// #region Fields
|
|
17
|
-
_processors = [];
|
|
18
|
-
// #endregion
|
|
19
|
-
// #region Ctor
|
|
20
|
-
/**
|
|
21
|
-
* Constructs a new MarkdownProcessor.
|
|
22
|
-
*/
|
|
23
|
-
constructor(processors) {
|
|
24
|
-
this._processors = [];
|
|
25
|
-
if (!processors?.length) {
|
|
26
|
-
this._processors.push(new BlockquoteProcessor());
|
|
27
|
-
this._processors.push(new CalloutProcessor());
|
|
28
|
-
this._processors.push(new CodeBlockProcessor());
|
|
29
|
-
this._processors.push(new TabProcessor());
|
|
30
|
-
this._processors.push(new SplitProcessor());
|
|
31
|
-
}
|
|
32
|
-
this._processors.push(...processors ?? []);
|
|
33
|
-
}
|
|
34
|
-
// #endregion
|
|
35
|
-
// #region Methods
|
|
36
|
-
/**
|
|
37
|
-
* Adds a custom processor to the manager.
|
|
38
|
-
*
|
|
39
|
-
* @public
|
|
40
|
-
* @param processor - The processor to add.
|
|
41
|
-
*/
|
|
42
|
-
addProcessor(processor) {
|
|
43
|
-
this._processors.push(processor);
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Removes a custom processor from the manager.
|
|
47
|
-
*
|
|
48
|
-
* @public
|
|
49
|
-
* @param processor - The processor to remove.
|
|
50
|
-
*/
|
|
51
|
-
removeProcessor(processor) {
|
|
52
|
-
this._processors = this._processors.filter((p) => p !== processor);
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Processes Markdown content into HTML.
|
|
56
|
-
*
|
|
57
|
-
* @public
|
|
58
|
-
* @param markdown - The Markdown content to process.
|
|
59
|
-
* @returns The resulting HTML string.
|
|
60
|
-
*/
|
|
61
|
-
process(markdown, options) {
|
|
62
|
-
const extensions = this._processors.map((p) => ({
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
64
|
-
walkTokens: p.walkTokens,
|
|
65
|
-
extensions: [p.extension]
|
|
66
|
-
}));
|
|
67
|
-
const html = new Marked()
|
|
68
|
-
.use(...extensions)
|
|
69
|
-
.parse(markdown, {
|
|
70
|
-
async: false,
|
|
71
|
-
...options
|
|
72
|
-
});
|
|
73
|
-
return html;
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Processes Markdown content into HTML asynchronously.
|
|
77
|
-
*
|
|
78
|
-
* @public
|
|
79
|
-
* @param markdown - The Markdown content to process.
|
|
80
|
-
* @returns A promise that resolves to the resulting HTML string.
|
|
81
|
-
*/
|
|
82
|
-
processAsync(markdown, options) {
|
|
83
|
-
const html = new Marked()
|
|
84
|
-
.use(...this._processors)
|
|
85
|
-
.parse(markdown, {
|
|
86
|
-
async: true,
|
|
87
|
-
...options
|
|
88
|
-
});
|
|
89
|
-
return html;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=MarkdownProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MarkdownProcessor.js","sourceRoot":"","sources":["../../src/Process/MarkdownProcessor.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAElB,OAAO,EAAE,MAAM,EAA4C,MAAM,QAAQ,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,aAAa;AAEb;;;;;GAKG;AACH,MAAM,OAAO,iBAAiB;IAE1B,iBAAiB;IAET,WAAW,GAAsB,EAAE,CAAC;IAE5C,aAAa;IAEb,eAAe;IAEf;;OAEG;IACH,YAAmB,UAA8B;QAC7C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,aAAa;IAEb,kBAAkB;IAElB;;;;;OAKG;IACI,YAAY,CAAC,SAAqB;QACrC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACI,eAAe,CAAC,SAAqB;QACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;OAMG;IACI,OAAO,CAAC,QAAgB,EAAE,OAAsC;QACnE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAkB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,6DAA6D;YAC7D,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SAC5B,CAAC,CAAC,CAAC;QAEJ,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE;aACpB,GAAG,CAAC,GAAG,UAAU,CAAC;aAClB,KAAK,CAAC,QAAQ,EAAE;YACb,KAAK,EAAE,KAAK;YACZ,GAAG,OAAO;SACb,CAAC,CAAC;QAEP,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACI,YAAY,CAAC,QAAgB,EAAE,OAAsC;QACxE,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE;aACpB,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;aACxB,KAAK,CAAC,QAAQ,EAAE;YACb,KAAK,EAAE,IAAI;YACX,GAAG,OAAO;SACb,CAAC,CAAC;QAEP,OAAO,IAAI,CAAC;IAChB,CAAC;CAIJ"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import type { IProcessor } from '../Interfaces/IProcessor.js';
|
|
2
|
-
import type { MarkedExtension, TokenizerAndRendererExtension, Tokens } from 'marked';
|
|
3
|
-
/**
|
|
4
|
-
* Abstract base class for custom Markdown processors.
|
|
5
|
-
*/
|
|
6
|
-
export declare abstract class BaseProcessor implements MarkedExtension, IProcessor {
|
|
7
|
-
/**
|
|
8
|
-
* @public
|
|
9
|
-
* @abstract
|
|
10
|
-
* @readonly
|
|
11
|
-
*/
|
|
12
|
-
abstract get extension(): TokenizerAndRendererExtension;
|
|
13
|
-
/**
|
|
14
|
-
* Override this method to provide custom hooks for processing tokens.
|
|
15
|
-
*
|
|
16
|
-
* @public
|
|
17
|
-
* @readonly
|
|
18
|
-
* @returns An object containing hooks for processing tokens.
|
|
19
|
-
*/
|
|
20
|
-
get hooks(): MarkedExtension['hooks'];
|
|
21
|
-
/**
|
|
22
|
-
* Preprocesses the Markdown content before rendering.
|
|
23
|
-
*
|
|
24
|
-
* @public
|
|
25
|
-
* @param markdown - The Markdown content to preprocess.
|
|
26
|
-
* @returns The preprocessed Markdown content.
|
|
27
|
-
*/
|
|
28
|
-
preprocess(markdown: string): string;
|
|
29
|
-
/**
|
|
30
|
-
* Postprocessing the HTML content after rendering.
|
|
31
|
-
*
|
|
32
|
-
* @public
|
|
33
|
-
* @param html - The HTML content to postprocess.
|
|
34
|
-
* @returns The postprocessed HTML content.
|
|
35
|
-
*/
|
|
36
|
-
postprocess(html: string): string;
|
|
37
|
-
/**
|
|
38
|
-
* Processes all tokens.
|
|
39
|
-
*
|
|
40
|
-
* @public
|
|
41
|
-
* @param tokens - The tokens to process.
|
|
42
|
-
* @returns The processed tokens.
|
|
43
|
-
*/
|
|
44
|
-
processAllTokens(tokens: Array<Tokens.Generic>): Array<Tokens.Generic>;
|
|
45
|
-
/**
|
|
46
|
-
* Override this method to process tokens.
|
|
47
|
-
*
|
|
48
|
-
* @public
|
|
49
|
-
* @param token - The token to process.
|
|
50
|
-
*/
|
|
51
|
-
walkTokens?(_token: Tokens.Generic): void;
|
|
52
|
-
/**
|
|
53
|
-
* Minifies HTML by removing all newlines and unnecessary whitespaces.
|
|
54
|
-
*
|
|
55
|
-
* @param html - The raw HTML string to minify.
|
|
56
|
-
* @returns A minified HTML string.
|
|
57
|
-
*/
|
|
58
|
-
protected minifyHTML(html: string): string;
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=BaseProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BaseProcessor.d.ts","sourceRoot":"","sources":["../../../../src/Process/Processors/Abstracts/BaseProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIrF;;GAEG;AACH,8BAAsB,aAAc,YAAW,eAAe,EAAE,UAAU;IAItE;;;;OAIG;IACH,aAAoB,SAAS,IAAI,6BAA6B,CAAC;IAE/D;;;;;;OAMG;IACH,IAAW,KAAK,IAAI,eAAe,CAAC,OAAO,CAAC,CAM3C;IAMD;;;;;;OAMG;IACI,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI3C;;;;;;OAMG;IACI,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIxC;;;;;;OAMG;IACI,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IAI7E;;;;;OAKG;IACI,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI;IAIhD;;;;;OAKG;IACH,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAM7C"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
// #region Imports
|
|
2
|
-
// #endregion
|
|
3
|
-
/**
|
|
4
|
-
* Abstract base class for custom Markdown processors.
|
|
5
|
-
*/
|
|
6
|
-
export class BaseProcessor {
|
|
7
|
-
/**
|
|
8
|
-
* Override this method to provide custom hooks for processing tokens.
|
|
9
|
-
*
|
|
10
|
-
* @public
|
|
11
|
-
* @readonly
|
|
12
|
-
* @returns An object containing hooks for processing tokens.
|
|
13
|
-
*/
|
|
14
|
-
get hooks() {
|
|
15
|
-
return {
|
|
16
|
-
processAllTokens: (tokens) => this.processAllTokens(tokens),
|
|
17
|
-
preprocess: (markdown) => this.preprocess(markdown),
|
|
18
|
-
postprocess: (html) => this.postprocess(html)
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
// #endregion
|
|
22
|
-
// #region Methods
|
|
23
|
-
/**
|
|
24
|
-
* Preprocesses the Markdown content before rendering.
|
|
25
|
-
*
|
|
26
|
-
* @public
|
|
27
|
-
* @param markdown - The Markdown content to preprocess.
|
|
28
|
-
* @returns The preprocessed Markdown content.
|
|
29
|
-
*/
|
|
30
|
-
preprocess(markdown) {
|
|
31
|
-
return markdown;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Postprocessing the HTML content after rendering.
|
|
35
|
-
*
|
|
36
|
-
* @public
|
|
37
|
-
* @param html - The HTML content to postprocess.
|
|
38
|
-
* @returns The postprocessed HTML content.
|
|
39
|
-
*/
|
|
40
|
-
postprocess(html) {
|
|
41
|
-
return html;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Processes all tokens.
|
|
45
|
-
*
|
|
46
|
-
* @public
|
|
47
|
-
* @param tokens - The tokens to process.
|
|
48
|
-
* @returns The processed tokens.
|
|
49
|
-
*/
|
|
50
|
-
processAllTokens(tokens) {
|
|
51
|
-
return tokens;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Override this method to process tokens.
|
|
55
|
-
*
|
|
56
|
-
* @public
|
|
57
|
-
* @param token - The token to process.
|
|
58
|
-
*/
|
|
59
|
-
walkTokens(_token) {
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Minifies HTML by removing all newlines and unnecessary whitespaces.
|
|
63
|
-
*
|
|
64
|
-
* @param html - The raw HTML string to minify.
|
|
65
|
-
* @returns A minified HTML string.
|
|
66
|
-
*/
|
|
67
|
-
minifyHTML(html) {
|
|
68
|
-
return html.replace(/\s+/g, ' ').trim();
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=BaseProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BaseProcessor.js","sourceRoot":"","sources":["../../../../src/Process/Processors/Abstracts/BaseProcessor.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAKlB,aAAa;AAEb;;GAEG;AACH,MAAM,OAAgB,aAAa;IAW/B;;;;;;OAMG;IACH,IAAW,KAAK;QACZ,OAAO;YACH,gBAAgB,EAAE,CAAC,MAA6B,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;YAClF,UAAU,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC3D,WAAW,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;SACxD,CAAC;IACN,CAAC;IAED,aAAa;IAEb,kBAAkB;IAElB;;;;;;OAMG;IACI,UAAU,CAAC,QAAgB;QAC9B,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;;;;;OAMG;IACI,WAAW,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACI,gBAAgB,CAAC,MAA6B;QACjD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACI,UAAU,CAAE,MAAsB;IAEzC,CAAC;IAED;;;;;OAKG;IACO,UAAU,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;CAIJ"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BlockquoteProcessor.Test.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/BlockquoteProcessor.Test.ts"],"names":[],"mappings":""}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { BlockquoteProcessor } from './BlockquoteProcessor';
|
|
3
|
-
import { MarkdownProcessor } from '../MarkdownProcessor';
|
|
4
|
-
describe('BlockquoteProcessor', () => {
|
|
5
|
-
it('should render a blockquote with [!INFO] syntax', () => {
|
|
6
|
-
const markdown = '> [!INFO]\n> Highlights information that users should take into account.';
|
|
7
|
-
const html = new MarkdownProcessor([new BlockquoteProcessor()]).process(markdown);
|
|
8
|
-
expect(html)
|
|
9
|
-
.toBe('<blockquote class="blockquote-info"><strong>Info:</strong>Highlights information that users should take into account.</blockquote>');
|
|
10
|
-
});
|
|
11
|
-
it('should render a blockquote with [!WARNING] syntax', () => {
|
|
12
|
-
const markdown = '> [!WARNING]\n> Critical content demanding immediate user attention.';
|
|
13
|
-
const html = new MarkdownProcessor([new BlockquoteProcessor()]).process(markdown);
|
|
14
|
-
expect(html)
|
|
15
|
-
.toBe('<blockquote class="blockquote-warning"><strong>Warning:</strong>Critical content demanding immediate user attention.</blockquote>');
|
|
16
|
-
});
|
|
17
|
-
it('should render a blockquote with [!DANGER] syntax', () => {
|
|
18
|
-
const markdown = '> [!DANGER]\n> Severe warnings for users.';
|
|
19
|
-
const html = new MarkdownProcessor([new BlockquoteProcessor()]).process(markdown);
|
|
20
|
-
expect(html)
|
|
21
|
-
.toBe('<blockquote class="blockquote-danger"><strong>Danger:</strong>Severe warnings for users.</blockquote>');
|
|
22
|
-
});
|
|
23
|
-
it('should render a blockquote with [!SUCCESS] syntax', () => {
|
|
24
|
-
const markdown = '> [!SUCCESS]\n> Optional information for successful actions.';
|
|
25
|
-
const html = new MarkdownProcessor([new BlockquoteProcessor()]).process(markdown);
|
|
26
|
-
expect(html)
|
|
27
|
-
.toBe('<blockquote class="blockquote-success"><strong>Success:</strong>Optional information for successful actions.</blockquote>');
|
|
28
|
-
});
|
|
29
|
-
it('should render a default blockquote when no type is specified', () => {
|
|
30
|
-
const markdown = '> This is a default blockquote with no headline.';
|
|
31
|
-
const html = new MarkdownProcessor([new BlockquoteProcessor()]).process(markdown);
|
|
32
|
-
expect(html)
|
|
33
|
-
.toBe('<blockquote>This is a default blockquote with no headline.</blockquote>');
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
//# sourceMappingURL=BlockquoteProcessor.Test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BlockquoteProcessor.Test.js","sourceRoot":"","sources":["../../../src/Process/Processors/BlockquoteProcessor.Test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACtD,MAAM,QAAQ,GAAG,0EAA0E,CAAC;QAC5F,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAElF,MAAM,CAAC,IAAI,CAAC;aACP,IAAI,CAAC,oIAAoI,CAAC,CAAC;IACpJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QACzD,MAAM,QAAQ,GAAG,sEAAsE,CAAC;QACxF,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAElF,MAAM,CAAC,IAAI,CAAC;aACP,IAAI,CAAC,mIAAmI,CAAC,CAAC;IACnJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QACxD,MAAM,QAAQ,GAAG,2CAA2C,CAAC;QAC7D,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAElF,MAAM,CAAC,IAAI,CAAC;aACP,IAAI,CAAC,uGAAuG,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QACzD,MAAM,QAAQ,GAAG,8DAA8D,CAAC;QAChF,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAElF,MAAM,CAAC,IAAI,CAAC;aACP,IAAI,CAAC,2HAA2H,CAAC,CAAC;IAC3I,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACpE,MAAM,QAAQ,GAAG,kDAAkD,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAElF,MAAM,CAAC,IAAI,CAAC;aACP,IAAI,CAAC,yEAAyE,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
import type { Tokens, TokenizerAndRendererExtension } from 'marked';
|
|
3
|
-
/**
|
|
4
|
-
* A processor that transforms blockquotes using the `[!TYPE]` syntax into styled callouts.
|
|
5
|
-
*
|
|
6
|
-
* Supported types: `info`, `warning`, `danger`, `success`. Fallback: `default`.
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* ```markdown
|
|
10
|
-
* > [!INFO]
|
|
11
|
-
* > This is an informational message.
|
|
12
|
-
*
|
|
13
|
-
* > [!WARNING] Pay attention!
|
|
14
|
-
* > Critical instructions follow.
|
|
15
|
-
*
|
|
16
|
-
* > Just a normal blockquote.
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* @public
|
|
20
|
-
*/
|
|
21
|
-
export declare class BlockquoteProcessor extends BaseProcessor {
|
|
22
|
-
get extension(): TokenizerAndRendererExtension;
|
|
23
|
-
walkTokens(token: Tokens.Generic): void;
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=BlockquoteProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BlockquoteProcessor.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/BlockquoteProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAgB,6BAA6B,EAAE,MAAM,QAAQ,CAAC;AAgBlF;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,mBAAoB,SAAQ,aAAa;IAElD,IAAoB,SAAS,IAAI,6BAA6B,CAQ7D;IAEe,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI;CAQ1D"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
const KNOWN_VARIANTS = new Set([
|
|
3
|
-
'primary', 'secondary', 'tertiary', 'info', 'warning', 'danger', 'error', 'success', 'highlight', 'neutral'
|
|
4
|
-
]);
|
|
5
|
-
/**
|
|
6
|
-
* A processor that transforms blockquotes using the `[!TYPE]` syntax into styled callouts.
|
|
7
|
-
*
|
|
8
|
-
* Supported types: `info`, `warning`, `danger`, `success`. Fallback: `default`.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```markdown
|
|
12
|
-
* > [!INFO]
|
|
13
|
-
* > This is an informational message.
|
|
14
|
-
*
|
|
15
|
-
* > [!WARNING] Pay attention!
|
|
16
|
-
* > Critical instructions follow.
|
|
17
|
-
*
|
|
18
|
-
* > Just a normal blockquote.
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
export class BlockquoteProcessor extends BaseProcessor {
|
|
24
|
-
get extension() {
|
|
25
|
-
return {
|
|
26
|
-
name: 'blockquote',
|
|
27
|
-
level: 'block',
|
|
28
|
-
renderer(token) {
|
|
29
|
-
return BlockquoteRenderer.render(token);
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
walkTokens(token) {
|
|
34
|
-
if (token.type !== 'blockquote') {
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
BlockquoteTokenizer.enrich(token);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
class BlockquoteTokenizer {
|
|
41
|
-
static enrich(token) {
|
|
42
|
-
const text = token.text.trim();
|
|
43
|
-
const match = (/^\[!(PRIMARY|SECONDARY|TERTIARY|INFO|WARNING|DANGER|ERROR|SUCCESS|HIGHLIGHT|NEUTRAL)\]\s*(.*)$/i).exec(text);
|
|
44
|
-
if (match) {
|
|
45
|
-
const variant = match[1].toLowerCase();
|
|
46
|
-
const content = match[2].trim();
|
|
47
|
-
token.variant = KNOWN_VARIANTS.has(variant)
|
|
48
|
-
? variant
|
|
49
|
-
: 'neutral';
|
|
50
|
-
token.content = content;
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
token.variant = 'neutral';
|
|
54
|
-
token.content = text;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
class BlockquoteRenderer {
|
|
59
|
-
static render(token) {
|
|
60
|
-
const variantClass = `class="blockquote ${token.variant}"`;
|
|
61
|
-
const label = token.variant !== 'neutral'
|
|
62
|
-
? `<strong>${token.variant.charAt(0).toUpperCase() + token.variant.slice(1)}:</strong> `
|
|
63
|
-
: '';
|
|
64
|
-
return `<blockquote${variantClass}>${label}${token.content}</blockquote>`;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=BlockquoteProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BlockquoteProcessor.js","sourceRoot":"","sources":["../../../src/Process/Processors/BlockquoteProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAK7D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAoB;IAC9C,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;CAC9G,CAAC,CAAC;AAUH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IAElD,IAAoB,SAAS;QACzB,OAAO;YACH,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,OAAO;YACd,QAAQ,CAAqB,KAAqB;gBAC9C,OAAO,kBAAkB,CAAC,MAAM,CAAC,KAAyB,CAAC,CAAC;YAChE,CAAC;SACJ,CAAC;IACN,CAAC;IAEe,UAAU,CAAC,KAAqB;QAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC9B,OAAO;QACX,CAAC;QAED,mBAAmB,CAAC,MAAM,CAAC,KAAyB,CAAC,CAAC;IAC1D,CAAC;CAEJ;AAED,MAAM,mBAAmB;IAEd,MAAM,CAAC,MAAM,CAAC,KAAuB;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,CAAC,iGAAiG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE7H,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAuB,CAAC;YAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAEhC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;gBACvC,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,SAAS,CAAC;YAChB,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;YAC1B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,CAAC;IACL,CAAC;CAEJ;AAED,MAAM,kBAAkB;IAEb,MAAM,CAAC,MAAM,CAAC,KAAuB;QACxC,MAAM,YAAY,GAAG,qBAAqB,KAAK,CAAC,OAAO,GAAG,CAAC;QAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS;YACrC,CAAC,CAAC,WAAW,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;YACxF,CAAC,CAAC,EAAE,CAAC;QAET,OAAO,cAAc,YAAY,IAAI,KAAK,GAAG,KAAK,CAAC,OAAO,eAAe,CAAC;IAC9E,CAAC;CAEJ"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
import type { TokenizerAndRendererExtension, Tokens } from 'marked';
|
|
3
|
-
type CalloutVariant = 'primary' | 'secondary' | 'tertiary' | 'info' | 'warning' | 'danger' | 'success' | 'highlight' | 'neutral';
|
|
4
|
-
export interface ICalloutToken extends Tokens.Generic {
|
|
5
|
-
type: 'callout';
|
|
6
|
-
raw: string;
|
|
7
|
-
variant: CalloutVariant;
|
|
8
|
-
title?: string;
|
|
9
|
-
tokens: Array<Tokens.Generic>;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* A processor that transforms :::callout-style blocks into styled callout boxes.
|
|
13
|
-
*
|
|
14
|
-
* Supported types: info, warning, tip, success, danger, note
|
|
15
|
-
*
|
|
16
|
-
* @example
|
|
17
|
-
* ```markdown
|
|
18
|
-
* ::: warning Be cautious!
|
|
19
|
-
* This is a warning box.
|
|
20
|
-
* :::
|
|
21
|
-
* ```
|
|
22
|
-
*
|
|
23
|
-
* @public
|
|
24
|
-
*/
|
|
25
|
-
export declare class CalloutProcessor extends BaseProcessor {
|
|
26
|
-
get extension(): TokenizerAndRendererExtension;
|
|
27
|
-
}
|
|
28
|
-
export {};
|
|
29
|
-
//# sourceMappingURL=CalloutProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CalloutProcessor.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/CalloutProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,EAAsC,MAAM,QAAQ,CAAC;AAExG,KAAK,cAAc,GAAK,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAMnI,MAAM,WAAW,aAAc,SAAQ,MAAM,CAAC,OAAO;IACjD,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CACjC;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;IAE/C,IAAoB,SAAS,IAAI,6BAA6B,CAc7D;CAEJ"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
const KNOWN_VARIANTS = new Set([
|
|
3
|
-
'primary', 'secondary', 'tertiary', 'info', 'warning', 'danger', 'success', 'highlight', 'neutral'
|
|
4
|
-
]);
|
|
5
|
-
/**
|
|
6
|
-
* A processor that transforms :::callout-style blocks into styled callout boxes.
|
|
7
|
-
*
|
|
8
|
-
* Supported types: info, warning, tip, success, danger, note
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```markdown
|
|
12
|
-
* ::: warning Be cautious!
|
|
13
|
-
* This is a warning box.
|
|
14
|
-
* :::
|
|
15
|
-
* ```
|
|
16
|
-
*
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
export class CalloutProcessor extends BaseProcessor {
|
|
20
|
-
get extension() {
|
|
21
|
-
return {
|
|
22
|
-
name: 'callout',
|
|
23
|
-
level: 'block',
|
|
24
|
-
start(src) {
|
|
25
|
-
return (/^::: (primary|secondary|tertiary|info|warning|danger|success|highlight|neutral)/i).exec(src)?.index;
|
|
26
|
-
},
|
|
27
|
-
tokenizer(src) {
|
|
28
|
-
return CalloutTokenizer.tokenize(src, this.lexer);
|
|
29
|
-
},
|
|
30
|
-
renderer(token) {
|
|
31
|
-
return CalloutRenderer.render(token, this);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
class CalloutTokenizer {
|
|
37
|
-
static tokenize(src, lexer) {
|
|
38
|
-
const match = (/^::: (\w+)(?:\s+([^\n]+))?\n([\s\S]+?)\n:::/m).exec(src);
|
|
39
|
-
if (!match) {
|
|
40
|
-
return undefined;
|
|
41
|
-
}
|
|
42
|
-
const variant = match[1].toLowerCase();
|
|
43
|
-
if (!KNOWN_VARIANTS.has(variant)) {
|
|
44
|
-
return undefined;
|
|
45
|
-
}
|
|
46
|
-
const title = match[2].trim();
|
|
47
|
-
const content = match[3].trim();
|
|
48
|
-
const contentTokens = lexer.inlineTokens(content);
|
|
49
|
-
return {
|
|
50
|
-
type: 'callout',
|
|
51
|
-
raw: match[0],
|
|
52
|
-
variant,
|
|
53
|
-
title,
|
|
54
|
-
tokens: contentTokens
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
class CalloutRenderer {
|
|
59
|
-
static render(token, renderer) {
|
|
60
|
-
const classes = ['callout', token.variant];
|
|
61
|
-
const title = token.title
|
|
62
|
-
? `<div class="callout-title">${token.title}</div>`
|
|
63
|
-
: '';
|
|
64
|
-
const body = renderer.parser.parse(token.tokens);
|
|
65
|
-
return `<div class="${classes.join(' ')}">${title}${body}</div>`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=CalloutProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CalloutProcessor.js","sourceRoot":"","sources":["../../../src/Process/Processors/CalloutProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAK7D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAiB;IAC3C,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;CACrG,CAAC,CAAC;AAUH;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,gBAAiB,SAAQ,aAAa;IAE/C,IAAoB,SAAS;QACzB,OAAO;YACH,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,OAAO;YACd,KAAK,CAAC,GAAW;gBACb,OAAO,CAAC,kFAAkF,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC;YACjH,CAAC;YACD,SAAS,CAAsB,GAAW;gBACtC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACtD,CAAC;YACD,QAAQ,CAAqB,KAAqB;gBAC9C,OAAO,eAAe,CAAC,MAAM,CAAC,KAAsB,EAAE,IAAI,CAAC,CAAC;YAChE,CAAC;SACJ,CAAC;IACN,CAAC;CAEJ;AAED,MAAM,gBAAgB;IAEX,MAAM,CAAC,QAAQ,CAAC,GAAW,EAAE,KAAY;QAC5C,MAAM,KAAK,GAAG,CAAC,8CAA8C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzE,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAoB,CAAC;QACzD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEhC,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAElD,OAAO;YACH,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YACb,OAAO;YACP,KAAK;YACL,MAAM,EAAE,aAAa;SACxB,CAAC;IACN,CAAC;CAEJ;AAED,MAAM,eAAe;IAEV,MAAM,CAAC,MAAM,CAAC,KAAoB,EAAE,QAAsB;QAC7D,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK;YACrB,CAAC,CAAC,8BAA8B,KAAK,CAAC,KAAK,QAAQ;YACnD,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjD,OAAO,eAAe,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,QAAQ,CAAC;IACrE,CAAC;CAEJ"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
import type { TokenizerAndRendererExtension, Tokens } from 'marked';
|
|
3
|
-
/**
|
|
4
|
-
* A processor that transforms fenced code blocks with extended metadata
|
|
5
|
-
* (language, filename, highlighted lines).
|
|
6
|
-
*
|
|
7
|
-
* Example:
|
|
8
|
-
* ```ts name="example.ts" {1,3-4}
|
|
9
|
-
* const foo = 42;
|
|
10
|
-
* const bar = 7;
|
|
11
|
-
* ```
|
|
12
|
-
*
|
|
13
|
-
* This will extract:
|
|
14
|
-
* - language: "ts"
|
|
15
|
-
* - filename: "example.ts"
|
|
16
|
-
* - highlights: "1,3-4"
|
|
17
|
-
*
|
|
18
|
-
* @public
|
|
19
|
-
*/
|
|
20
|
-
export declare class CodeBlockProcessor extends BaseProcessor {
|
|
21
|
-
get extension(): TokenizerAndRendererExtension;
|
|
22
|
-
walkTokens(token: Tokens.Generic): void;
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=CodeBlockProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlockProcessor.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/CodeBlockProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,EAAgB,MAAM,QAAQ,CAAC;AAclF;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IAEjD,IAAoB,SAAS,IAAI,6BAA6B,CAQ7D;IAEe,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI;CAK1D"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
/**
|
|
3
|
-
* A processor that transforms fenced code blocks with extended metadata
|
|
4
|
-
* (language, filename, highlighted lines).
|
|
5
|
-
*
|
|
6
|
-
* Example:
|
|
7
|
-
* ```ts name="example.ts" {1,3-4}
|
|
8
|
-
* const foo = 42;
|
|
9
|
-
* const bar = 7;
|
|
10
|
-
* ```
|
|
11
|
-
*
|
|
12
|
-
* This will extract:
|
|
13
|
-
* - language: "ts"
|
|
14
|
-
* - filename: "example.ts"
|
|
15
|
-
* - highlights: "1,3-4"
|
|
16
|
-
*
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
export class CodeBlockProcessor extends BaseProcessor {
|
|
20
|
-
get extension() {
|
|
21
|
-
return {
|
|
22
|
-
name: 'code',
|
|
23
|
-
level: 'block',
|
|
24
|
-
renderer(token) {
|
|
25
|
-
return CodeBlockRenderer.render(token);
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
walkTokens(token) {
|
|
30
|
-
if (token.type !== 'code') {
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
CodeBlockTokenizer.enrich(token);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
class CodeBlockTokenizer {
|
|
37
|
-
static enrich(token) {
|
|
38
|
-
const match = (/^(\w+)(?:\s+name="(.+?)")?(?:\s+\{([\d,-]+)\})?/i).exec(token.lang ?? '');
|
|
39
|
-
if (!match) {
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
const [, lang, fileName, highlights] = match;
|
|
43
|
-
token.meta = {
|
|
44
|
-
lang,
|
|
45
|
-
fileName,
|
|
46
|
-
highlights
|
|
47
|
-
};
|
|
48
|
-
token.lang = lang; // override lang so PrismJS still works
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
class CodeBlockRenderer {
|
|
52
|
-
static render(token) {
|
|
53
|
-
const lang = token.meta?.lang ?? 'plaintext';
|
|
54
|
-
const file = token.meta?.fileName;
|
|
55
|
-
const lines = token.meta?.highlights;
|
|
56
|
-
const filenameBlock = file
|
|
57
|
-
? `<div class="code-filename">${file}</div>\n`
|
|
58
|
-
: '';
|
|
59
|
-
const highlightAttr = lines
|
|
60
|
-
? ` data-lines="${lines}"`
|
|
61
|
-
: '';
|
|
62
|
-
return `${filenameBlock}<pre><code class="language-${lang}"${highlightAttr}>${token.text}</code></pre>`;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=CodeBlockProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlockProcessor.js","sourceRoot":"","sources":["../../../src/Process/Processors/CodeBlockProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAe7D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IAEjD,IAAoB,SAAS;QACzB,OAAO;YACH,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO;YACd,QAAQ,CAAqB,KAAqB;gBAC9C,OAAO,iBAAiB,CAAC,MAAM,CAAC,KAAwB,CAAC,CAAC;YAC9D,CAAC;SACJ,CAAC;IACN,CAAC;IAEe,UAAU,CAAC,KAAqB;QAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QACtC,kBAAkB,CAAC,MAAM,CAAC,KAAwB,CAAC,CAAC;IACxD,CAAC;CAEJ;AAED,MAAM,kBAAkB;IAEb,MAAM,CAAC,MAAM,CAAC,KAAsB;QACvC,MAAM,KAAK,GAAG,CAAC,kDAAkD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAEvB,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;QAE7C,KAAK,CAAC,IAAI,GAAG;YACT,IAAI;YACJ,QAAQ;YACR,UAAU;SACb,CAAC;QAEF,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,uCAAuC;IAC9D,CAAC;CAEJ;AAED,MAAM,iBAAiB;IAEZ,MAAM,CAAC,MAAM,CAAC,KAAsB;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,WAAW,CAAC;QAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC;QAClC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC;QAErC,MAAM,aAAa,GAAG,IAAI;YACtB,CAAC,CAAC,8BAA8B,IAAI,UAAU;YAC9C,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,KAAK;YACvB,CAAC,CAAC,gBAAgB,KAAK,GAAG;YAC1B,CAAC,CAAC,EAAE,CAAC;QAET,OAAO,GAAG,aAAa,8BAA8B,IAAI,IAAI,aAAa,IAAI,KAAK,CAAC,IAAI,eAAe,CAAC;IAC5G,CAAC;CAEJ"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { MarkedExtension, TokenizerAndRendererExtension, Tokens } from 'marked';
|
|
2
|
-
/**
|
|
3
|
-
* Represents a processor that can handle a specific type of Markdown token.
|
|
4
|
-
*/
|
|
5
|
-
export interface IProcessor extends Pick<MarkedExtension, 'extensions' | 'walkTokens'> {
|
|
6
|
-
get extension(): TokenizerAndRendererExtension;
|
|
7
|
-
walkTokens?(token: Tokens.Generic): void;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=IProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IProcessor.d.ts","sourceRoot":"","sources":["../../../../src/Process/Processors/Interfaces/IProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIrF;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY,CAAC;IAIlF,IAAI,SAAS,IAAI,6BAA6B,CAAC;IAM/C,UAAU,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;CAI5C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IProcessor.js","sourceRoot":"","sources":["../../../../src/Process/Processors/Interfaces/IProcessor.ts"],"names":[],"mappings":"AAAA,kBAAkB"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
import type { TokenizerAndRendererExtension, Tokens } from 'marked';
|
|
3
|
-
type SplitVariant = 'primary' | 'secondary' | 'tertiary' | 'info' | 'warning' | 'danger' | 'error' | 'success' | 'highlight' | 'neutral';
|
|
4
|
-
export interface ISplitToken extends Tokens.Generic {
|
|
5
|
-
type: 'split';
|
|
6
|
-
raw: string;
|
|
7
|
-
left?: ISplitColumnToken;
|
|
8
|
-
right?: ISplitColumnToken;
|
|
9
|
-
tokens?: Array<Tokens.Generic>;
|
|
10
|
-
}
|
|
11
|
-
export interface ISplitColumnToken extends Tokens.Generic {
|
|
12
|
-
type: 'splitColumn';
|
|
13
|
-
raw: string;
|
|
14
|
-
title: string;
|
|
15
|
-
tokens: Array<Tokens.Generic>;
|
|
16
|
-
variant?: SplitVariant;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* A processor that transforms `:::split` blocks into a two-column layout.
|
|
20
|
-
* Each column may include a heading, a list, and an optional variant like `[!INFO]`.
|
|
21
|
-
*
|
|
22
|
-
* Supported variants: `primary`, `secondary`, `tertiary`, `info`, `warning`, `danger`, `error`, `success`, `highlight`, `neutral`.
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```markdown
|
|
26
|
-
* ::: split
|
|
27
|
-
* ::: left
|
|
28
|
-
* [!INFO]
|
|
29
|
-
* ### Advantages
|
|
30
|
-
* - Easy integration
|
|
31
|
-
* - Markdown based
|
|
32
|
-
* ::: end-left
|
|
33
|
-
*
|
|
34
|
-
* ::: right
|
|
35
|
-
* [!ERROR]
|
|
36
|
-
* ### Disadvantages
|
|
37
|
-
* - Requires a custom parser
|
|
38
|
-
* - Not standardized
|
|
39
|
-
* ::: end-right
|
|
40
|
-
* ::: end-split
|
|
41
|
-
* ```
|
|
42
|
-
*
|
|
43
|
-
* @public
|
|
44
|
-
*/
|
|
45
|
-
export declare class SplitProcessor extends BaseProcessor {
|
|
46
|
-
get extension(): TokenizerAndRendererExtension;
|
|
47
|
-
}
|
|
48
|
-
export {};
|
|
49
|
-
//# sourceMappingURL=SplitProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SplitProcessor.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/SplitProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAA+B,6BAA6B,EAAiB,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhH,KAAK,YAAY,GAAK,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAQ3I,MAAM,WAAW,WAAY,SAAQ,MAAM,CAAC,OAAO;IAC/C,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,iBAAkB,SAAQ,MAAM,CAAC,OAAO;IACrD,IAAI,EAAE,aAAa,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,YAAY,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAE7C,IAAoB,SAAS,IAAI,6BAA6B,CAc7D;CAEJ"}
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
const KNOWN_VARIANTS = new Set([
|
|
3
|
-
'primary', 'secondary', 'tertiary',
|
|
4
|
-
'info', 'warning', 'danger', 'error',
|
|
5
|
-
'success', 'highlight', 'neutral'
|
|
6
|
-
]);
|
|
7
|
-
/**
|
|
8
|
-
* A processor that transforms `:::split` blocks into a two-column layout.
|
|
9
|
-
* Each column may include a heading, a list, and an optional variant like `[!INFO]`.
|
|
10
|
-
*
|
|
11
|
-
* Supported variants: `primary`, `secondary`, `tertiary`, `info`, `warning`, `danger`, `error`, `success`, `highlight`, `neutral`.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```markdown
|
|
15
|
-
* ::: split
|
|
16
|
-
* ::: left
|
|
17
|
-
* [!INFO]
|
|
18
|
-
* ### Advantages
|
|
19
|
-
* - Easy integration
|
|
20
|
-
* - Markdown based
|
|
21
|
-
* ::: end-left
|
|
22
|
-
*
|
|
23
|
-
* ::: right
|
|
24
|
-
* [!ERROR]
|
|
25
|
-
* ### Disadvantages
|
|
26
|
-
* - Requires a custom parser
|
|
27
|
-
* - Not standardized
|
|
28
|
-
* ::: end-right
|
|
29
|
-
* ::: end-split
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* @public
|
|
33
|
-
*/
|
|
34
|
-
export class SplitProcessor extends BaseProcessor {
|
|
35
|
-
get extension() {
|
|
36
|
-
return {
|
|
37
|
-
name: 'split',
|
|
38
|
-
level: 'block',
|
|
39
|
-
start(src) {
|
|
40
|
-
return (/^::: split/).exec(src)?.index;
|
|
41
|
-
},
|
|
42
|
-
tokenizer(src) {
|
|
43
|
-
return SplitTokenizer.tokenize(src, this.lexer);
|
|
44
|
-
},
|
|
45
|
-
renderer(token) {
|
|
46
|
-
return SplitRenderer.render(token, this.parser);
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Tokenizer for the `:::split` block syntax.
|
|
53
|
-
*/
|
|
54
|
-
class SplitTokenizer {
|
|
55
|
-
static tokenize(src, lexer) {
|
|
56
|
-
const match = (/^::: split\n([\s\S]+?)\n::: end-split/m).exec(src);
|
|
57
|
-
if (!match) {
|
|
58
|
-
return undefined;
|
|
59
|
-
}
|
|
60
|
-
return {
|
|
61
|
-
type: 'split',
|
|
62
|
-
raw: match[0],
|
|
63
|
-
left: this.parseSection(match[1], 'left', lexer),
|
|
64
|
-
right: this.parseSection(match[1], 'right', lexer)
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
static parseSection(content, side, lexer) {
|
|
68
|
-
const regex = new RegExp(`::: ${side}\\n([\\s\\S]+?)\\n::: end-${side}`, 'm');
|
|
69
|
-
const sectionMatch = regex.exec(content);
|
|
70
|
-
if (!sectionMatch) {
|
|
71
|
-
return undefined;
|
|
72
|
-
}
|
|
73
|
-
const lines = sectionMatch[1].trim().split('\n');
|
|
74
|
-
let variant = undefined;
|
|
75
|
-
const variantMatch = (/^\[\!(\w+)\]/).exec(lines[0]);
|
|
76
|
-
if (variantMatch) {
|
|
77
|
-
const v = variantMatch[1].toLowerCase();
|
|
78
|
-
if (KNOWN_VARIANTS.has(v)) {
|
|
79
|
-
variant = v;
|
|
80
|
-
}
|
|
81
|
-
lines[0] = ''; // remove variant line
|
|
82
|
-
}
|
|
83
|
-
const contentLines = lines.filter(Boolean);
|
|
84
|
-
const hasHeading = (/^#+\s/).test(contentLines[0]);
|
|
85
|
-
const title = hasHeading ? contentLines[0].replace(/^#+\s*/, '') : '';
|
|
86
|
-
const listStart = hasHeading ? 1 : 0;
|
|
87
|
-
const xxx = contentLines
|
|
88
|
-
.slice(listStart)
|
|
89
|
-
.join('\n')
|
|
90
|
-
.trim();
|
|
91
|
-
const tokens = lexer.inlineTokens(xxx);
|
|
92
|
-
return {
|
|
93
|
-
type: 'splitColumn',
|
|
94
|
-
raw: sectionMatch[0],
|
|
95
|
-
title: title,
|
|
96
|
-
tokens: tokens,
|
|
97
|
-
variant: variant
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Renders the `split` token into two-column HTML layout.
|
|
103
|
-
*/
|
|
104
|
-
class SplitRenderer {
|
|
105
|
-
static render(token, parser) {
|
|
106
|
-
const left = SplitRenderer.renderColumn(token.left, 'left', parser);
|
|
107
|
-
const right = SplitRenderer.renderColumn(token.right, 'right', parser);
|
|
108
|
-
return `<div class="split">${left}${right}</div>`;
|
|
109
|
-
}
|
|
110
|
-
static renderColumn(token, baseClass, parser) {
|
|
111
|
-
if (!token) {
|
|
112
|
-
return '';
|
|
113
|
-
}
|
|
114
|
-
const classes = [baseClass];
|
|
115
|
-
if (token.variant) {
|
|
116
|
-
classes.push(token.variant);
|
|
117
|
-
}
|
|
118
|
-
const heading = token.title ? `<h3>${token.title}</h3>` : '';
|
|
119
|
-
const body = parser.parseInline(token.tokens);
|
|
120
|
-
return `<div class="column ${classes.join(' ')}">${heading}${body}</div>`;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
//# sourceMappingURL=SplitProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SplitProcessor.js","sourceRoot":"","sources":["../../../src/Process/Processors/SplitProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
import type { Tokens, TokenizerAndRendererExtension } from 'marked';
|
|
3
|
-
type TabVariant = 'primary' | 'secondary' | 'tertiary' | 'info' | 'warning' | 'danger' | 'error' | 'success' | 'highlight' | 'neutral';
|
|
4
|
-
export interface ITabsToken extends Tokens.Generic {
|
|
5
|
-
type: 'tabs';
|
|
6
|
-
raw: string;
|
|
7
|
-
tabs: Array<ITabToken>;
|
|
8
|
-
}
|
|
9
|
-
export interface ITabToken {
|
|
10
|
-
id: string;
|
|
11
|
-
title: string;
|
|
12
|
-
content: string;
|
|
13
|
-
variant?: TabVariant;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* A processor that transforms `:::tabs` blocks into tabbed layout structures.
|
|
17
|
-
* Each tab may include a title, content, and an optional variant using `[!TYPE]`.
|
|
18
|
-
*
|
|
19
|
-
* Supported variants: `primary`, `secondary`, `tertiary`, `info`, `warning`, `danger`, `error`, `success`, `highlight`, `neutral`.
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```markdown
|
|
23
|
-
* ::: tabs
|
|
24
|
-
* ::: tab Tab 1
|
|
25
|
-
* [!INFO]
|
|
26
|
-
* Content for the first tab.
|
|
27
|
-
* ::: end-tab
|
|
28
|
-
*
|
|
29
|
-
* ::: tab Tab 2
|
|
30
|
-
* [!WARNING]
|
|
31
|
-
* Content for the second tab.
|
|
32
|
-
* ::: end-tab
|
|
33
|
-
* ::: end-tabs
|
|
34
|
-
* ```
|
|
35
|
-
*
|
|
36
|
-
* @public
|
|
37
|
-
*/
|
|
38
|
-
export declare class TabProcessor extends BaseProcessor {
|
|
39
|
-
get extension(): TokenizerAndRendererExtension;
|
|
40
|
-
}
|
|
41
|
-
export {};
|
|
42
|
-
//# sourceMappingURL=TabProcessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TabProcessor.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/TabProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAgB,MAAM,EAAE,6BAA6B,EAAE,MAAM,QAAQ,CAAC;AAElF,KAAK,UAAU,GAAK,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAQzI,MAAM,WAAW,UAAW,SAAQ,MAAM,CAAC,OAAO;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,UAAU,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,YAAa,SAAQ,aAAa;IAE3C,IAAoB,SAAS,IAAI,6BAA6B,CAc7D;CAEJ"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { BaseProcessor } from './Abstracts/BaseProcessor.js';
|
|
2
|
-
const KNOWN_VARIANTS = new Set([
|
|
3
|
-
'primary', 'secondary', 'tertiary',
|
|
4
|
-
'info', 'warning', 'danger', 'error',
|
|
5
|
-
'success', 'highlight', 'neutral'
|
|
6
|
-
]);
|
|
7
|
-
/**
|
|
8
|
-
* A processor that transforms `:::tabs` blocks into tabbed layout structures.
|
|
9
|
-
* Each tab may include a title, content, and an optional variant using `[!TYPE]`.
|
|
10
|
-
*
|
|
11
|
-
* Supported variants: `primary`, `secondary`, `tertiary`, `info`, `warning`, `danger`, `error`, `success`, `highlight`, `neutral`.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```markdown
|
|
15
|
-
* ::: tabs
|
|
16
|
-
* ::: tab Tab 1
|
|
17
|
-
* [!INFO]
|
|
18
|
-
* Content for the first tab.
|
|
19
|
-
* ::: end-tab
|
|
20
|
-
*
|
|
21
|
-
* ::: tab Tab 2
|
|
22
|
-
* [!WARNING]
|
|
23
|
-
* Content for the second tab.
|
|
24
|
-
* ::: end-tab
|
|
25
|
-
* ::: end-tabs
|
|
26
|
-
* ```
|
|
27
|
-
*
|
|
28
|
-
* @public
|
|
29
|
-
*/
|
|
30
|
-
export class TabProcessor extends BaseProcessor {
|
|
31
|
-
get extension() {
|
|
32
|
-
return {
|
|
33
|
-
name: 'tabs',
|
|
34
|
-
level: 'block',
|
|
35
|
-
start(src) {
|
|
36
|
-
return (/^::: tabs/).exec(src)?.index;
|
|
37
|
-
},
|
|
38
|
-
tokenizer(src) {
|
|
39
|
-
return TabTokenizer.tokenize(src);
|
|
40
|
-
},
|
|
41
|
-
renderer(token) {
|
|
42
|
-
return TabRenderer.render(token);
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
class TabTokenizer {
|
|
48
|
-
static tokenize(src) {
|
|
49
|
-
const match = (/^::: tabs\n([\s\S]+?)\n::: end-tabs/m).exec(src);
|
|
50
|
-
if (!match) {
|
|
51
|
-
return undefined;
|
|
52
|
-
}
|
|
53
|
-
const tabRegex = /^::: tab (.+?)\n([\s\S]+?)\n::: end-tab/gm;
|
|
54
|
-
const tabs = [];
|
|
55
|
-
let tabMatch = null;
|
|
56
|
-
let index = 0;
|
|
57
|
-
while ((tabMatch = tabRegex.exec(match[1])) !== null) {
|
|
58
|
-
const rawLines = tabMatch[2].trim().split('\n');
|
|
59
|
-
let variant = undefined;
|
|
60
|
-
const variantMatch = (/^\[\!(\w+)\]/).exec(rawLines[0]);
|
|
61
|
-
if (variantMatch) {
|
|
62
|
-
const v = variantMatch[1].toLowerCase();
|
|
63
|
-
if (KNOWN_VARIANTS.has(v)) {
|
|
64
|
-
variant = v;
|
|
65
|
-
rawLines.shift(); // Remove variant line
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
const content = rawLines.join('\n').trim();
|
|
69
|
-
tabs.push({
|
|
70
|
-
id: `tab-${index++}`,
|
|
71
|
-
title: tabMatch[1].trim(),
|
|
72
|
-
content,
|
|
73
|
-
variant
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
return {
|
|
77
|
-
type: 'tabs',
|
|
78
|
-
raw: match[0],
|
|
79
|
-
tabs
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
class TabRenderer {
|
|
84
|
-
static render(token) {
|
|
85
|
-
const headers = token.tabs
|
|
86
|
-
.map((tab) => `<li class="tab-item${tab.variant ? ` ${tab.variant}` : ''}" data-tab="${tab.id}">${tab.title}</li>`)
|
|
87
|
-
.join('');
|
|
88
|
-
const bodies = token.tabs
|
|
89
|
-
.map((tab) => `<div class="tab-content${tab.variant ? ` ${tab.variant}` : ''}" id="${tab.id}">${tab.content}</div>`)
|
|
90
|
-
.join('');
|
|
91
|
-
return `<div class="tabs"><ul class="tab-list">${headers}</ul>${bodies}</div>`;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=TabProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TabProcessor.js","sourceRoot":"","sources":["../../../src/Process/Processors/TabProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/Process/Processors/Utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIrC,yBAAiB,UAAU,CAAC;IAExB,SAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAEpE;IAED,SAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,GAAG,CAAC,CAExD;CAEJ"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// #region Imports
|
|
2
|
-
// #endregion
|
|
3
|
-
export var TokenUtils;
|
|
4
|
-
(function (TokenUtils) {
|
|
5
|
-
function setTokenMeta(token, meta) {
|
|
6
|
-
Object.assign(token, { meta });
|
|
7
|
-
}
|
|
8
|
-
TokenUtils.setTokenMeta = setTokenMeta;
|
|
9
|
-
function getTokenMeta(token) {
|
|
10
|
-
return token.meta;
|
|
11
|
-
}
|
|
12
|
-
TokenUtils.getTokenMeta = getTokenMeta;
|
|
13
|
-
})(TokenUtils || (TokenUtils = {}));
|
|
14
|
-
//# sourceMappingURL=Utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/Process/Processors/Utils.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAIlB,aAAa;AAEb,MAAM,KAAW,UAAU,CAU1B;AAVD,WAAiB,UAAU;IAEvB,SAAgB,YAAY,CAAI,KAAqB,EAAE,IAAO;QAC1D,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;IAFe,uBAAY,eAE3B,CAAA;IAED,SAAgB,YAAY,CAAI,KAAqB;QACjD,OAAO,KAAK,CAAC,IAAS,CAAC;IAC3B,CAAC;IAFe,uBAAY,eAE3B,CAAA;AAEL,CAAC,EAVgB,UAAU,KAAV,UAAU,QAU1B"}
|