@mdfriday/foundry 25.9.3 → 25.9.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/README.md +10 -0
  2. package/dist/internal/application/ssg.d.ts.map +1 -1
  3. package/dist/internal/application/ssg.js +12 -0
  4. package/dist/internal/application/ssg.js.map +1 -1
  5. package/dist/internal/application/test-incremental-ssg.d.ts +9 -0
  6. package/dist/internal/application/test-incremental-ssg.d.ts.map +1 -0
  7. package/dist/internal/application/test-incremental-ssg.js +80 -0
  8. package/dist/internal/application/test-incremental-ssg.js.map +1 -0
  9. package/dist/internal/application/test-ssg.d.ts +8 -0
  10. package/dist/internal/application/test-ssg.d.ts.map +1 -0
  11. package/dist/internal/application/test-ssg.js +30 -0
  12. package/dist/internal/application/test-ssg.js.map +1 -0
  13. package/dist/internal/domain/config/entity/config.d.ts +8 -2
  14. package/dist/internal/domain/config/entity/config.d.ts.map +1 -1
  15. package/dist/internal/domain/config/entity/config.js +10 -3
  16. package/dist/internal/domain/config/entity/config.js.map +1 -1
  17. package/dist/internal/domain/config/entity/social.d.ts +66 -0
  18. package/dist/internal/domain/config/entity/social.d.ts.map +1 -0
  19. package/dist/internal/domain/config/entity/social.js +126 -0
  20. package/dist/internal/domain/config/entity/social.js.map +1 -0
  21. package/dist/internal/domain/config/factory/config.d.ts.map +1 -1
  22. package/dist/internal/domain/config/factory/config.js +2 -1
  23. package/dist/internal/domain/config/factory/config.js.map +1 -1
  24. package/dist/internal/domain/config/index.d.ts +2 -0
  25. package/dist/internal/domain/config/index.d.ts.map +1 -1
  26. package/dist/internal/domain/config/index.js +5 -1
  27. package/dist/internal/domain/config/index.js.map +1 -1
  28. package/dist/internal/domain/config/tests/entity-config.test.js +16 -12
  29. package/dist/internal/domain/config/tests/entity-config.test.js.map +1 -1
  30. package/dist/internal/domain/config/tests/social.test.d.ts +2 -0
  31. package/dist/internal/domain/config/tests/social.test.d.ts.map +1 -0
  32. package/dist/internal/domain/config/tests/social.test.js +164 -0
  33. package/dist/internal/domain/config/tests/social.test.js.map +1 -0
  34. package/dist/internal/domain/config/type.d.ts +22 -0
  35. package/dist/internal/domain/config/type.d.ts.map +1 -1
  36. package/dist/internal/domain/config/type.js.map +1 -1
  37. package/dist/internal/domain/config/vo/social.d.ts +23 -0
  38. package/dist/internal/domain/config/vo/social.d.ts.map +1 -0
  39. package/dist/internal/domain/config/vo/social.js +212 -0
  40. package/dist/internal/domain/config/vo/social.js.map +1 -0
  41. package/dist/internal/domain/content/entity/page.d.ts +6 -1
  42. package/dist/internal/domain/content/entity/page.d.ts.map +1 -1
  43. package/dist/internal/domain/content/entity/page.js +14 -2
  44. package/dist/internal/domain/content/entity/page.js.map +1 -1
  45. package/dist/internal/domain/content/entity/pagebuilder.d.ts +3 -2
  46. package/dist/internal/domain/content/entity/pagebuilder.d.ts.map +1 -1
  47. package/dist/internal/domain/content/entity/pagebuilder.js +16 -5
  48. package/dist/internal/domain/content/entity/pagebuilder.js.map +1 -1
  49. package/dist/internal/domain/content/entity/pagemeta.d.ts +10 -2
  50. package/dist/internal/domain/content/entity/pagemeta.d.ts.map +1 -1
  51. package/dist/internal/domain/content/entity/pagemeta.js +17 -1
  52. package/dist/internal/domain/content/entity/pagemeta.js.map +1 -1
  53. package/dist/internal/domain/content/entity/paginator.d.ts +6 -0
  54. package/dist/internal/domain/content/entity/paginator.d.ts.map +1 -1
  55. package/dist/internal/domain/content/entity/paginator.js +24 -2
  56. package/dist/internal/domain/content/entity/paginator.js.map +1 -1
  57. package/dist/internal/domain/content/factory/hub.d.ts.map +1 -1
  58. package/dist/internal/domain/content/factory/hub.js +2 -1
  59. package/dist/internal/domain/content/factory/hub.js.map +1 -1
  60. package/dist/internal/domain/content/type.d.ts +59 -1
  61. package/dist/internal/domain/content/type.d.ts.map +1 -1
  62. package/dist/internal/domain/content/type.js.map +1 -1
  63. package/dist/internal/domain/content/vo/frontmatter.d.ts +29 -1
  64. package/dist/internal/domain/content/vo/frontmatter.d.ts.map +1 -1
  65. package/dist/internal/domain/content/vo/frontmatter.js +242 -1
  66. package/dist/internal/domain/content/vo/frontmatter.js.map +1 -1
  67. package/dist/internal/domain/markdown/test/external-adapter.test.d.ts +2 -0
  68. package/dist/internal/domain/markdown/test/external-adapter.test.d.ts.map +1 -0
  69. package/dist/internal/domain/markdown/test/external-adapter.test.js +150 -0
  70. package/dist/internal/domain/markdown/test/external-adapter.test.js.map +1 -0
  71. package/dist/internal/domain/markdown/test/markdown.test.d.ts +2 -0
  72. package/dist/internal/domain/markdown/test/markdown.test.d.ts.map +1 -0
  73. package/dist/internal/domain/markdown/test/markdown.test.js +88 -0
  74. package/dist/internal/domain/markdown/test/markdown.test.js.map +1 -0
  75. package/dist/internal/domain/markdown/vo/externaladapter.d.ts +63 -0
  76. package/dist/internal/domain/markdown/vo/externaladapter.d.ts.map +1 -0
  77. package/dist/internal/domain/markdown/vo/externaladapter.js +194 -0
  78. package/dist/internal/domain/markdown/vo/externaladapter.js.map +1 -0
  79. package/dist/internal/domain/markdown/vo/markdownit.d.ts +33 -0
  80. package/dist/internal/domain/markdown/vo/markdownit.d.ts.map +1 -0
  81. package/dist/internal/domain/markdown/vo/markdownit.js +175 -0
  82. package/dist/internal/domain/markdown/vo/markdownit.js.map +1 -0
  83. package/dist/internal/domain/module/entity/module.d.ts.map +1 -1
  84. package/dist/internal/domain/module/entity/module.js +10 -6
  85. package/dist/internal/domain/module/entity/module.js.map +1 -1
  86. package/dist/internal/domain/module/vo/themes.test.js +12 -8
  87. package/dist/internal/domain/module/vo/themes.test.js.map +1 -1
  88. package/dist/internal/domain/site/entity/menu-builder.d.ts +35 -21
  89. package/dist/internal/domain/site/entity/menu-builder.d.ts.map +1 -1
  90. package/dist/internal/domain/site/entity/menu-builder.js +194 -107
  91. package/dist/internal/domain/site/entity/menu-builder.js.map +1 -1
  92. package/dist/internal/domain/site/entity/page.d.ts +19 -7
  93. package/dist/internal/domain/site/entity/page.d.ts.map +1 -1
  94. package/dist/internal/domain/site/entity/page.js +58 -3
  95. package/dist/internal/domain/site/entity/page.js.map +1 -1
  96. package/dist/internal/domain/site/entity/pager.d.ts +2 -0
  97. package/dist/internal/domain/site/entity/pager.d.ts.map +1 -1
  98. package/dist/internal/domain/site/entity/pager.js +9 -0
  99. package/dist/internal/domain/site/entity/pager.js.map +1 -1
  100. package/dist/internal/domain/site/entity/site.d.ts +14 -8
  101. package/dist/internal/domain/site/entity/site.d.ts.map +1 -1
  102. package/dist/internal/domain/site/entity/site.js +35 -8
  103. package/dist/internal/domain/site/entity/site.js.map +1 -1
  104. package/dist/internal/domain/site/factory/navigation-factory.d.ts +4 -2
  105. package/dist/internal/domain/site/factory/navigation-factory.d.ts.map +1 -1
  106. package/dist/internal/domain/site/factory/navigation-factory.js +5 -4
  107. package/dist/internal/domain/site/factory/navigation-factory.js.map +1 -1
  108. package/dist/internal/domain/site/factory/site.d.ts.map +1 -1
  109. package/dist/internal/domain/site/factory/site.js +7 -9
  110. package/dist/internal/domain/site/factory/site.js.map +1 -1
  111. package/dist/internal/domain/site/type.d.ts +11 -0
  112. package/dist/internal/domain/site/type.d.ts.map +1 -1
  113. package/dist/internal/domain/site/valueobject/author.d.ts +4 -4
  114. package/dist/internal/domain/site/valueobject/author.d.ts.map +1 -1
  115. package/dist/internal/domain/site/valueobject/author.js +7 -4
  116. package/dist/internal/domain/site/valueobject/author.js.map +1 -1
  117. package/dist/internal/domain/site/valueobject/menu.d.ts +27 -115
  118. package/dist/internal/domain/site/valueobject/menu.d.ts.map +1 -1
  119. package/dist/internal/domain/site/valueobject/menu.js +42 -193
  120. package/dist/internal/domain/site/valueobject/menu.js.map +1 -1
  121. package/dist/internal/domain/site/valueobject/organization.d.ts +63 -0
  122. package/dist/internal/domain/site/valueobject/organization.d.ts.map +1 -0
  123. package/dist/internal/domain/site/valueobject/organization.js +94 -0
  124. package/dist/internal/domain/site/valueobject/organization.js.map +1 -0
  125. package/dist/internal/domain/site/valueobject/organization.test.d.ts +2 -0
  126. package/dist/internal/domain/site/valueobject/organization.test.d.ts.map +1 -0
  127. package/dist/internal/domain/site/valueobject/organization.test.js +78 -0
  128. package/dist/internal/domain/site/valueobject/organization.test.js.map +1 -0
  129. package/dist/internal/domain/template/vo/registry.d.ts +18 -0
  130. package/dist/internal/domain/template/vo/registry.d.ts.map +1 -1
  131. package/dist/internal/domain/template/vo/registry.js +343 -0
  132. package/dist/internal/domain/template/vo/registry.js.map +1 -1
  133. package/dist/pkg/log/manager.js +1 -1
  134. package/dist/pkg/maps/scratch.d.ts +1 -0
  135. package/dist/pkg/maps/scratch.d.ts.map +1 -1
  136. package/dist/pkg/maps/scratch.js +4 -0
  137. package/dist/pkg/maps/scratch.js.map +1 -1
  138. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../../../internal/domain/content/vo/frontmatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../../../internal/domain/content/vo/frontmatter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=external-adapter.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-adapter.test.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/markdown/test/external-adapter.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const markdown_1 = require("../factory/markdown");
4
+ const type_1 = require("../type");
5
+ describe('External Adapter', () => {
6
+ test('should work with external processor object', async () => {
7
+ // Simulate an external processor (e.g., from Obsidian)
8
+ const externalProcessor = {
9
+ render: (source) => {
10
+ // Simple markdown to HTML conversion
11
+ return source
12
+ .replace(/^# (.+)$/gm, '<h1>$1</h1>')
13
+ .replace(/\*\*(.+?)\*\*/g, '<strong>$1</strong>')
14
+ .replace(/\n\n/g, '</p><p>')
15
+ .replace(/^(.+)$/gm, '<p>$1</p>')
16
+ .replace(/<\/p><p><h/g, '</p><h')
17
+ .replace(/h1><\/p>/g, 'h1>');
18
+ },
19
+ metadata: {
20
+ name: 'Custom Processor',
21
+ version: '1.0.0',
22
+ features: ['basic-rendering'],
23
+ },
24
+ };
25
+ const markdown = (0, markdown_1.createMarkdownWithExternalProcessor)(externalProcessor);
26
+ const source = '# Hello World\n\nThis is **bold** text.';
27
+ const encoder = new TextEncoder();
28
+ const srcBytes = encoder.encode(source);
29
+ const rctx = {
30
+ ctx: {},
31
+ src: srcBytes,
32
+ renderTOC: false,
33
+ getRenderer: type_1.DefaultRendererFunc,
34
+ };
35
+ const dctx = {
36
+ document: null,
37
+ documentID: 'external-test',
38
+ documentName: 'external-test.md',
39
+ filename: 'external-test.md',
40
+ };
41
+ const result = await markdown.render(rctx, dctx);
42
+ expect(result).toBeDefined();
43
+ expect(result.headers()).toHaveLength(1);
44
+ expect(result.headers()[0].name()).toBe('Hello World');
45
+ expect(result.headers()[0].level()).toBe(1);
46
+ const html = new TextDecoder().decode(result.bytes());
47
+ expect(html).toContain('<h1>Hello World</h1>');
48
+ expect(html).toContain('<strong>bold</strong>');
49
+ });
50
+ test('should work with simple render function', async () => {
51
+ // Simulate a simple render function (e.g., from a basic markdown processor)
52
+ const renderFunc = (source) => {
53
+ return source
54
+ .replace(/^## (.+)$/gm, '<h2>$1</h2>')
55
+ .replace(/\*(.+?)\*/g, '<em>$1</em>');
56
+ };
57
+ const markdown = (0, markdown_1.createMarkdownWithRenderFunction)(renderFunc);
58
+ const source = '## Test Header\n\nSome *italic* text.';
59
+ const encoder = new TextEncoder();
60
+ const srcBytes = encoder.encode(source);
61
+ const rctx = {
62
+ ctx: {},
63
+ src: srcBytes,
64
+ renderTOC: false,
65
+ getRenderer: type_1.DefaultRendererFunc,
66
+ };
67
+ const dctx = {
68
+ document: null,
69
+ documentID: 'function-test',
70
+ documentName: 'function-test.md',
71
+ filename: 'function-test.md',
72
+ };
73
+ const result = await markdown.render(rctx, dctx);
74
+ expect(result).toBeDefined();
75
+ expect(result.headers()).toHaveLength(1);
76
+ expect(result.headers()[0].name()).toBe('Test Header');
77
+ expect(result.headers()[0].level()).toBe(2);
78
+ });
79
+ test('should work with Obsidian-style processor', async () => {
80
+ // Simulate Obsidian's render function
81
+ const obsidianRenderFunc = (source) => {
82
+ // Simulate Obsidian's markdown processing with some custom features
83
+ let html = source
84
+ .replace(/^### (.+)$/gm, '<h3>$1</h3>')
85
+ .replace(/\[\[(.+?)\]\]/g, '<a href="obsidian://open?vault=MyVault&file=$1">$1</a>') // Obsidian internal links
86
+ .replace(/==(.+?)==/g, '<mark>$1</mark>'); // Obsidian highlighting
87
+ return html;
88
+ };
89
+ const markdown = (0, markdown_1.createMarkdownForObsidian)(obsidianRenderFunc, { pluginName: 'MyObsidianPlugin', version: '2.1.0' });
90
+ const source = '### Obsidian Test\n\n[[Some Link]] with ==highlighted== text.';
91
+ const encoder = new TextEncoder();
92
+ const srcBytes = encoder.encode(source);
93
+ const rctx = {
94
+ ctx: {},
95
+ src: srcBytes,
96
+ renderTOC: false,
97
+ getRenderer: type_1.DefaultRendererFunc,
98
+ };
99
+ const dctx = {
100
+ document: null,
101
+ documentID: 'obsidian-test',
102
+ documentName: 'obsidian-test.md',
103
+ filename: 'obsidian-test.md',
104
+ };
105
+ const result = await markdown.render(rctx, dctx);
106
+ expect(result).toBeDefined();
107
+ expect(result.headers()).toHaveLength(1);
108
+ expect(result.headers()[0].name()).toBe('Obsidian Test');
109
+ expect(result.headers()[0].level()).toBe(3);
110
+ const html = new TextDecoder().decode(result.bytes());
111
+ expect(html).toContain('<h3>Obsidian Test</h3>');
112
+ expect(html).toContain('obsidian://open?vault=MyVault&file=Some Link');
113
+ expect(html).toContain('<mark>highlighted</mark>');
114
+ });
115
+ test('should handle async render functions', async () => {
116
+ // Simulate an async render function
117
+ const asyncRenderFunc = async (source) => {
118
+ // Simulate some async processing
119
+ await new Promise(resolve => setTimeout(resolve, 10));
120
+ return source
121
+ .replace(/^#### (.+)$/gm, '<h4>$1</h4>')
122
+ .replace(/`(.+?)`/g, '<code>$1</code>');
123
+ };
124
+ const markdown = (0, markdown_1.createMarkdownWithRenderFunction)(asyncRenderFunc);
125
+ const source = '#### Async Test\n\nSome `code` here.';
126
+ const encoder = new TextEncoder();
127
+ const srcBytes = encoder.encode(source);
128
+ const rctx = {
129
+ ctx: {},
130
+ src: srcBytes,
131
+ renderTOC: false,
132
+ getRenderer: type_1.DefaultRendererFunc,
133
+ };
134
+ const dctx = {
135
+ document: null,
136
+ documentID: 'async-test',
137
+ documentName: 'async-test.md',
138
+ filename: 'async-test.md',
139
+ };
140
+ const result = await markdown.render(rctx, dctx);
141
+ expect(result).toBeDefined();
142
+ expect(result.headers()).toHaveLength(1);
143
+ expect(result.headers()[0].name()).toBe('Async Test');
144
+ expect(result.headers()[0].level()).toBe(4);
145
+ const html = new TextDecoder().decode(result.bytes());
146
+ expect(html).toContain('<h4>Async Test</h4>');
147
+ expect(html).toContain('<code>code</code>');
148
+ });
149
+ });
150
+ //# sourceMappingURL=external-adapter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-adapter.test.js","sourceRoot":"","sources":["../../../../../internal/domain/markdown/test/external-adapter.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=markdown.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.test.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/markdown/test/markdown.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const markdown_1 = require("../factory/markdown");
7
+ const type_1 = require("../type");
8
+ const markdown_it_1 = __importDefault(require("markdown-it"));
9
+ describe('Markdown Domain', () => {
10
+ test('should create markdown instance with default configuration', async () => {
11
+ const markdown = (0, markdown_1.createMarkdown)();
12
+ const source = '# Hello World\n\nThis is a **test** markdown.';
13
+ const encoder = new TextEncoder();
14
+ const srcBytes = encoder.encode(source);
15
+ const rctx = {
16
+ ctx: {},
17
+ src: srcBytes,
18
+ renderTOC: false,
19
+ getRenderer: type_1.DefaultRendererFunc,
20
+ };
21
+ const dctx = {
22
+ document: null,
23
+ documentID: 'test',
24
+ documentName: 'test.md',
25
+ filename: 'test.md',
26
+ };
27
+ const result = await markdown.render(rctx, dctx);
28
+ expect(result).toBeDefined();
29
+ expect(result.bytes()).toBeInstanceOf(Uint8Array);
30
+ expect(result.headers()).toHaveLength(1);
31
+ expect(result.headers()[0].name()).toBe('Hello World');
32
+ expect(result.headers()[0].level()).toBe(1);
33
+ });
34
+ test('should work with external MarkdownIt instance', async () => {
35
+ const externalMd = new markdown_it_1.default();
36
+ const markdown = (0, markdown_1.createMarkdownWithExternalRenderer)(externalMd);
37
+ const source = '## Test Header\n\nSome content.';
38
+ const encoder = new TextEncoder();
39
+ const srcBytes = encoder.encode(source);
40
+ const rctx = {
41
+ ctx: {},
42
+ src: srcBytes,
43
+ renderTOC: false,
44
+ getRenderer: type_1.DefaultRendererFunc,
45
+ };
46
+ const dctx = {
47
+ document: null,
48
+ documentID: 'test2',
49
+ documentName: 'test2.md',
50
+ filename: 'test2.md',
51
+ };
52
+ const result = await markdown.render(rctx, dctx);
53
+ expect(result).toBeDefined();
54
+ expect(result.headers()).toHaveLength(1);
55
+ expect(result.headers()[0].name()).toBe('Test Header');
56
+ expect(result.headers()[0].level()).toBe(2);
57
+ });
58
+ test('should generate table of contents', async () => {
59
+ const markdown = (0, markdown_1.createMarkdown)();
60
+ const source = `# Chapter 1
61
+ ## Section 1.1
62
+ ### Subsection 1.1.1
63
+ ## Section 1.2
64
+ # Chapter 2`;
65
+ const encoder = new TextEncoder();
66
+ const srcBytes = encoder.encode(source);
67
+ const rctx = {
68
+ ctx: {},
69
+ src: srcBytes,
70
+ renderTOC: true,
71
+ getRenderer: type_1.DefaultRendererFunc,
72
+ };
73
+ const dctx = {
74
+ document: null,
75
+ documentID: 'toc-test',
76
+ documentName: 'toc-test.md',
77
+ filename: 'toc-test.md',
78
+ };
79
+ const result = await markdown.render(rctx, dctx);
80
+ expect(result.headers()).toHaveLength(5);
81
+ const toc = result.tableOfContents();
82
+ const tocHtml = toc.toHTML(1, 6, false);
83
+ expect(tocHtml).toContain('<ul>');
84
+ expect(tocHtml).toContain('Chapter 1');
85
+ expect(tocHtml).toContain('Section 1.1');
86
+ });
87
+ });
88
+ //# sourceMappingURL=markdown.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.test.js","sourceRoot":"","sources":["../../../../../internal/domain/markdown/test/markdown.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import Token from 'markdown-it/lib/token';
2
+ import { MarkdownRenderer, ExternalMarkdownProcessor, BasicMarkdownRenderFunc, BasicMarkdownParseFunc } from '../type';
3
+ /**
4
+ * Simple token implementation for external processors that don't provide full AST
5
+ */
6
+ export declare class SimpleToken implements Partial<Token> {
7
+ type: string;
8
+ tag: string;
9
+ content: string;
10
+ level: number;
11
+ map: [number, number] | null;
12
+ constructor(type: string, tag?: string, content?: string, level?: number, map?: [number, number] | null);
13
+ }
14
+ /**
15
+ * External markdown processor adapter
16
+ * This allows integration with any external markdown system (e.g., Obsidian)
17
+ */
18
+ export declare class ExternalMarkdownAdapter implements MarkdownRenderer {
19
+ private processor;
20
+ constructor(processor: ExternalMarkdownProcessor);
21
+ render(source: string): Promise<string>;
22
+ parse(source: string): Promise<Token[]>;
23
+ private convertASTToTokens;
24
+ private processASTNode;
25
+ private createSimpleTokens;
26
+ /**
27
+ * Get metadata about the external processor
28
+ */
29
+ getMetadata(): {
30
+ name?: string;
31
+ version?: string;
32
+ features?: string[];
33
+ };
34
+ }
35
+ /**
36
+ * Function-based adapter for simple render-only processors
37
+ */
38
+ export declare class FunctionBasedAdapter implements MarkdownRenderer {
39
+ private renderFunc;
40
+ private parseFunc?;
41
+ constructor(renderFunc: BasicMarkdownRenderFunc, parseFunc?: BasicMarkdownParseFunc | undefined);
42
+ render(source: string): Promise<string>;
43
+ parse(source: string): Promise<Token[]>;
44
+ }
45
+ /**
46
+ * Factory functions for creating adapters
47
+ */
48
+ /**
49
+ * Create adapter from external processor object
50
+ */
51
+ export declare function createExternalAdapter(processor: ExternalMarkdownProcessor): ExternalMarkdownAdapter;
52
+ /**
53
+ * Create adapter from render function only
54
+ */
55
+ export declare function createFunctionAdapter(renderFunc: BasicMarkdownRenderFunc, parseFunc?: BasicMarkdownParseFunc): FunctionBasedAdapter;
56
+ /**
57
+ * Create adapter for Obsidian-style processors
58
+ */
59
+ export declare function createObsidianAdapter(renderFunc: BasicMarkdownRenderFunc, metadata?: {
60
+ pluginName?: string;
61
+ version?: string;
62
+ }): ExternalMarkdownAdapter;
63
+ //# sourceMappingURL=externaladapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externaladapter.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/markdown/vo/externaladapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,uBAAuB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBAAa,WAAY,YAAW,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;gBAG3B,IAAI,EAAE,MAAM,EACZ,GAAG,GAAE,MAAW,EAChB,OAAO,GAAE,MAAW,EACpB,KAAK,GAAE,MAAU,EACjB,GAAG,GAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAW;CAQtC;AAED;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,gBAAgB;IAClD,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,yBAAyB;IAElD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKvC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAiB7C,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,cAAc;IAoEtB,OAAO,CAAC,kBAAkB;IAuE1B;;OAEG;IACH,WAAW;;;;;CAGZ;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;IAEzD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,SAAS,CAAC;gBADV,UAAU,EAAE,uBAAuB,EACnC,SAAS,CAAC,EAAE,sBAAsB,YAAA;IAGtC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKvC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;CAqB9C;AAED;;GAEG;AAEH;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,yBAAyB,GAAG,uBAAuB,CAEnG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,uBAAuB,EACnC,SAAS,CAAC,EAAE,sBAAsB,GACjC,oBAAoB,CAEtB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,uBAAuB,EACnC,QAAQ,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,uBAAuB,CASzB"}
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FunctionBasedAdapter = exports.ExternalMarkdownAdapter = exports.SimpleToken = void 0;
4
+ exports.createExternalAdapter = createExternalAdapter;
5
+ exports.createFunctionAdapter = createFunctionAdapter;
6
+ exports.createObsidianAdapter = createObsidianAdapter;
7
+ /**
8
+ * Simple token implementation for external processors that don't provide full AST
9
+ */
10
+ class SimpleToken {
11
+ constructor(type, tag = '', content = '', level = 0, map = null) {
12
+ this.type = type;
13
+ this.tag = tag;
14
+ this.content = content;
15
+ this.level = level;
16
+ this.map = map;
17
+ }
18
+ }
19
+ exports.SimpleToken = SimpleToken;
20
+ /**
21
+ * External markdown processor adapter
22
+ * This allows integration with any external markdown system (e.g., Obsidian)
23
+ */
24
+ class ExternalMarkdownAdapter {
25
+ constructor(processor) {
26
+ this.processor = processor;
27
+ }
28
+ async render(source) {
29
+ const result = this.processor.render(source);
30
+ return typeof result === 'string' ? result : await result;
31
+ }
32
+ async parse(source) {
33
+ if (this.processor.parse) {
34
+ const result = this.processor.parse(source);
35
+ const ast = typeof result === 'object' ? result : await result;
36
+ // Try to convert the AST to our token format
37
+ if (Array.isArray(ast)) {
38
+ return ast;
39
+ }
40
+ else if (ast && typeof ast === 'object') {
41
+ return this.convertASTToTokens(ast);
42
+ }
43
+ }
44
+ // Fallback: create simple tokens by parsing the source manually
45
+ return this.createSimpleTokens(source);
46
+ }
47
+ convertASTToTokens(ast) {
48
+ const tokens = [];
49
+ // This is a generic AST to Token converter
50
+ // Different external processors might have different AST structures
51
+ if (ast.children && Array.isArray(ast.children)) {
52
+ for (const child of ast.children) {
53
+ tokens.push(...this.processASTNode(child));
54
+ }
55
+ }
56
+ else if (ast.type) {
57
+ tokens.push(...this.processASTNode(ast));
58
+ }
59
+ return tokens;
60
+ }
61
+ processASTNode(node) {
62
+ const tokens = [];
63
+ if (!node.type)
64
+ return tokens;
65
+ // Handle different node types
66
+ switch (node.type) {
67
+ case 'heading':
68
+ tokens.push(new SimpleToken('heading_open', `h${node.level || 1}`, '', 0, node.position ? [node.position.start.line - 1, node.position.end.line] : null));
69
+ if (node.children) {
70
+ for (const child of node.children) {
71
+ tokens.push(...this.processASTNode(child));
72
+ }
73
+ }
74
+ tokens.push(new SimpleToken('heading_close', `h${node.level || 1}`));
75
+ break;
76
+ case 'text':
77
+ tokens.push(new SimpleToken('inline', '', node.value || node.content || '', 0, node.position ? [node.position.start.line - 1, node.position.end.line] : null));
78
+ break;
79
+ case 'paragraph':
80
+ tokens.push(new SimpleToken('paragraph_open', 'p'));
81
+ if (node.children) {
82
+ for (const child of node.children) {
83
+ tokens.push(...this.processASTNode(child));
84
+ }
85
+ }
86
+ tokens.push(new SimpleToken('paragraph_close', 'p'));
87
+ break;
88
+ case 'code':
89
+ case 'codeBlock':
90
+ tokens.push(new SimpleToken('code_block', 'code', node.value || node.content || '', 0, node.position ? [node.position.start.line - 1, node.position.end.line] : null));
91
+ break;
92
+ default:
93
+ // For unknown node types, try to process children
94
+ if (node.children && Array.isArray(node.children)) {
95
+ for (const child of node.children) {
96
+ tokens.push(...this.processASTNode(child));
97
+ }
98
+ }
99
+ }
100
+ return tokens;
101
+ }
102
+ createSimpleTokens(source) {
103
+ const tokens = [];
104
+ const lines = source.split('\n');
105
+ for (let i = 0; i < lines.length; i++) {
106
+ const line = lines[i].trim();
107
+ if (!line)
108
+ continue;
109
+ // Simple heading detection
110
+ const headingMatch = line.match(/^(#{1,6})\s+(.+)$/);
111
+ if (headingMatch) {
112
+ const level = headingMatch[1].length;
113
+ const text = headingMatch[2];
114
+ tokens.push(new SimpleToken('heading_open', `h${level}`, '', 0, [i, i + 1]));
115
+ tokens.push(new SimpleToken('inline', '', text, 1, [i, i + 1]));
116
+ tokens.push(new SimpleToken('heading_close', `h${level}`, '', 0, [i, i + 1]));
117
+ continue;
118
+ }
119
+ // Simple paragraph detection
120
+ tokens.push(new SimpleToken('paragraph_open', 'p', '', 0, [i, i + 1]));
121
+ tokens.push(new SimpleToken('inline', '', line, 1, [i, i + 1]));
122
+ tokens.push(new SimpleToken('paragraph_close', 'p', '', 0, [i, i + 1]));
123
+ }
124
+ return tokens;
125
+ }
126
+ /**
127
+ * Get metadata about the external processor
128
+ */
129
+ getMetadata() {
130
+ return this.processor.metadata || {};
131
+ }
132
+ }
133
+ exports.ExternalMarkdownAdapter = ExternalMarkdownAdapter;
134
+ /**
135
+ * Function-based adapter for simple render-only processors
136
+ */
137
+ class FunctionBasedAdapter {
138
+ constructor(renderFunc, parseFunc) {
139
+ this.renderFunc = renderFunc;
140
+ this.parseFunc = parseFunc;
141
+ }
142
+ async render(source) {
143
+ const result = this.renderFunc(source);
144
+ return typeof result === 'string' ? result : await result;
145
+ }
146
+ async parse(source) {
147
+ if (this.parseFunc) {
148
+ const result = this.parseFunc(source);
149
+ const ast = typeof result === 'object' ? result : await result;
150
+ if (Array.isArray(ast)) {
151
+ return ast;
152
+ }
153
+ }
154
+ // Fallback to simple parsing
155
+ const processor = {
156
+ render: this.renderFunc,
157
+ };
158
+ if (this.parseFunc) {
159
+ processor.parse = this.parseFunc;
160
+ }
161
+ const adapter = new ExternalMarkdownAdapter(processor);
162
+ return adapter.parse(source);
163
+ }
164
+ }
165
+ exports.FunctionBasedAdapter = FunctionBasedAdapter;
166
+ /**
167
+ * Factory functions for creating adapters
168
+ */
169
+ /**
170
+ * Create adapter from external processor object
171
+ */
172
+ function createExternalAdapter(processor) {
173
+ return new ExternalMarkdownAdapter(processor);
174
+ }
175
+ /**
176
+ * Create adapter from render function only
177
+ */
178
+ function createFunctionAdapter(renderFunc, parseFunc) {
179
+ return new FunctionBasedAdapter(renderFunc, parseFunc);
180
+ }
181
+ /**
182
+ * Create adapter for Obsidian-style processors
183
+ */
184
+ function createObsidianAdapter(renderFunc, metadata) {
185
+ return new ExternalMarkdownAdapter({
186
+ render: renderFunc,
187
+ metadata: {
188
+ name: metadata?.pluginName || 'Obsidian',
189
+ version: metadata?.version || 'unknown',
190
+ features: ['rendering', 'basic-parsing'],
191
+ },
192
+ });
193
+ }
194
+ //# sourceMappingURL=externaladapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externaladapter.js","sourceRoot":"","sources":["../../../../../internal/domain/markdown/vo/externaladapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import MarkdownIt from 'markdown-it';
2
+ import Token from 'markdown-it/lib/token';
3
+ import { MarkdownRenderer, Position } from '../type';
4
+ import { DomainMarkdownConfig } from './config';
5
+ /**
6
+ * MarkdownIt-based renderer implementation
7
+ */
8
+ export declare class MarkdownItRenderer implements MarkdownRenderer {
9
+ private md;
10
+ private config;
11
+ constructor(config: DomainMarkdownConfig, externalMd?: MarkdownIt);
12
+ render(source: string): Promise<string>;
13
+ parse(source: string): Promise<Token[]>;
14
+ /**
15
+ * Get the underlying MarkdownIt instance
16
+ */
17
+ getMarkdownIt(): MarkdownIt;
18
+ /**
19
+ * Add a custom plugin
20
+ */
21
+ addPlugin(plugin: any, options?: any): void;
22
+ private createMarkdownItInstance;
23
+ private configureBasicPlugins;
24
+ }
25
+ /**
26
+ * Factory function to create MarkdownIt renderer with default configuration
27
+ */
28
+ export declare function createMarkdownItRenderer(config?: Partial<DomainMarkdownConfig>, externalMd?: MarkdownIt): MarkdownItRenderer;
29
+ /**
30
+ * Utility to extract position information from tokens
31
+ */
32
+ export declare function getTokenPosition(token: Token): Position | null;
33
+ //# sourceMappingURL=markdownit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdownit.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/markdown/vo/markdownit.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,MAAM,uBAAuB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAqB,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAGhD;;GAEG;AACH,qBAAa,kBAAmB,YAAW,gBAAgB;IACzD,OAAO,CAAC,EAAE,CAAa;IACvB,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,EAAE,oBAAoB,EAAE,UAAU,CAAC,EAAE,UAAU;IAY3D,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAI7C;;OAEG;IACH,aAAa,IAAI,UAAU;IAI3B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,IAAI;IAI3C,OAAO,CAAC,wBAAwB;IAwBhC,OAAO,CAAC,qBAAqB;CAsB9B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACtC,UAAU,CAAC,EAAE,UAAU,GACtB,kBAAkB,CA0EpB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,IAAI,CAS9D"}