embedoc 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +941 -0
  3. package/dist/cli.d.ts +6 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +337 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/core/dependency.d.ts +59 -0
  8. package/dist/core/dependency.d.ts.map +1 -0
  9. package/dist/core/dependency.js +209 -0
  10. package/dist/core/dependency.js.map +1 -0
  11. package/dist/core/generator.d.ts +23 -0
  12. package/dist/core/generator.d.ts.map +1 -0
  13. package/dist/core/generator.js +211 -0
  14. package/dist/core/generator.js.map +1 -0
  15. package/dist/core/inline-datasource.d.ts +117 -0
  16. package/dist/core/inline-datasource.d.ts.map +1 -0
  17. package/dist/core/inline-datasource.js +346 -0
  18. package/dist/core/inline-datasource.js.map +1 -0
  19. package/dist/core/parser.d.ts +41 -0
  20. package/dist/core/parser.d.ts.map +1 -0
  21. package/dist/core/parser.js +250 -0
  22. package/dist/core/parser.js.map +1 -0
  23. package/dist/core/processor.d.ts +18 -0
  24. package/dist/core/processor.d.ts.map +1 -0
  25. package/dist/core/processor.js +219 -0
  26. package/dist/core/processor.js.map +1 -0
  27. package/dist/datasources/csv.d.ts +17 -0
  28. package/dist/datasources/csv.d.ts.map +1 -0
  29. package/dist/datasources/csv.js +54 -0
  30. package/dist/datasources/csv.js.map +1 -0
  31. package/dist/datasources/glob.d.ts +17 -0
  32. package/dist/datasources/glob.d.ts.map +1 -0
  33. package/dist/datasources/glob.js +72 -0
  34. package/dist/datasources/glob.js.map +1 -0
  35. package/dist/datasources/index.d.ts +22 -0
  36. package/dist/datasources/index.d.ts.map +1 -0
  37. package/dist/datasources/index.js +53 -0
  38. package/dist/datasources/index.js.map +1 -0
  39. package/dist/datasources/json.d.ts +16 -0
  40. package/dist/datasources/json.d.ts.map +1 -0
  41. package/dist/datasources/json.js +59 -0
  42. package/dist/datasources/json.js.map +1 -0
  43. package/dist/datasources/sqlite.d.ts +15 -0
  44. package/dist/datasources/sqlite.d.ts.map +1 -0
  45. package/dist/datasources/sqlite.js +40 -0
  46. package/dist/datasources/sqlite.js.map +1 -0
  47. package/dist/datasources/yaml.d.ts +16 -0
  48. package/dist/datasources/yaml.d.ts.map +1 -0
  49. package/dist/datasources/yaml.js +60 -0
  50. package/dist/datasources/yaml.js.map +1 -0
  51. package/dist/helpers/markdown.d.ts +10 -0
  52. package/dist/helpers/markdown.d.ts.map +1 -0
  53. package/dist/helpers/markdown.js +93 -0
  54. package/dist/helpers/markdown.js.map +1 -0
  55. package/dist/index.d.ts +50 -0
  56. package/dist/index.d.ts.map +1 -0
  57. package/dist/index.js +51 -0
  58. package/dist/index.js.map +1 -0
  59. package/dist/types/index.d.ts +254 -0
  60. package/dist/types/index.d.ts.map +1 -0
  61. package/dist/types/index.js +5 -0
  62. package/dist/types/index.js.map +1 -0
  63. package/package.json +88 -0
@@ -0,0 +1,40 @@
1
+ /**
2
+ * SQLite Datasource
3
+ */
4
+ import Database from 'better-sqlite3';
5
+ export class SqliteDatasource {
6
+ type = 'sqlite';
7
+ db;
8
+ queryString;
9
+ constructor(config) {
10
+ if (!config.path) {
11
+ throw new Error('SQLite datasource requires "path" configuration');
12
+ }
13
+ this.db = new Database(config.path, { readonly: true });
14
+ this.queryString = config.query;
15
+ }
16
+ async query(sql, params = []) {
17
+ try {
18
+ const stmt = this.db.prepare(sql);
19
+ const rows = stmt.all(...params);
20
+ return rows;
21
+ }
22
+ catch (error) {
23
+ const message = error instanceof Error ? error.message : String(error);
24
+ throw new Error(`SQLite query failed: ${message}`);
25
+ }
26
+ }
27
+ async getAll() {
28
+ if (!this.queryString) {
29
+ throw new Error('No query defined for this datasource. Use query() method instead.');
30
+ }
31
+ return this.query(this.queryString);
32
+ }
33
+ async close() {
34
+ this.db.close();
35
+ }
36
+ }
37
+ export function createSqliteDatasource(config) {
38
+ return new SqliteDatasource(config);
39
+ }
40
+ //# sourceMappingURL=sqlite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/datasources/sqlite.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,QAAQ,CAAC;IACjB,EAAE,CAAoB;IACtB,WAAW,CAAU;IAE7B,YAAY,MAAwB;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,SAAoB,EAAE;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;YACjC,OAAO,IAAmB,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAwB;IAC7D,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * YAML Datasource
3
+ */
4
+ import type { Datasource, DatasourceConfig, QueryResult } from '../types/index.js';
5
+ export declare class YamlDatasource implements Datasource {
6
+ readonly type = "yaml";
7
+ private data;
8
+ private filePath;
9
+ constructor(config: DatasourceConfig);
10
+ private loadData;
11
+ query(sql: string, params?: unknown[]): Promise<QueryResult>;
12
+ getAll(): Promise<QueryResult>;
13
+ close(): Promise<void>;
14
+ }
15
+ export declare function createYamlDatasource(config: DatasourceConfig): YamlDatasource;
16
+ //# sourceMappingURL=yaml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yaml.d.ts","sourceRoot":"","sources":["../../src/datasources/yaml.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEnF,qBAAa,cAAe,YAAW,UAAU;IAC/C,QAAQ,CAAC,IAAI,UAAU;IACvB,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,QAAQ,CAAS;gBAEb,MAAM,EAAE,gBAAgB;YAQtB,QAAQ;IAoBhB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBhE,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC;IAI9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAE7E"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * YAML Datasource
3
+ */
4
+ import { readFile } from 'node:fs/promises';
5
+ import yaml from 'js-yaml';
6
+ export class YamlDatasource {
7
+ type = 'yaml';
8
+ data = null;
9
+ filePath;
10
+ constructor(config) {
11
+ if (!config.path) {
12
+ throw new Error('YAML datasource requires "path" configuration');
13
+ }
14
+ this.filePath = config.path;
15
+ }
16
+ async loadData() {
17
+ if (this.data !== null) {
18
+ return this.data;
19
+ }
20
+ const content = await readFile(this.filePath, { encoding: 'utf-8' });
21
+ const parsed = yaml.load(content);
22
+ // Use as-is if array, wrap in array if object
23
+ if (Array.isArray(parsed)) {
24
+ this.data = parsed;
25
+ }
26
+ else if (typeof parsed === 'object' && parsed !== null) {
27
+ this.data = [parsed];
28
+ }
29
+ else {
30
+ throw new Error('YAML file must contain an array or object');
31
+ }
32
+ return this.data;
33
+ }
34
+ async query(sql, params = []) {
35
+ // YAML does not support SQL queries
36
+ // Simple filtering only
37
+ const data = await this.loadData();
38
+ // Only supports simple WHERE column = value
39
+ const whereMatch = sql.match(/WHERE\s+(\w+)\s*=\s*\?/i);
40
+ if (whereMatch && params.length > 0) {
41
+ const column = whereMatch[1];
42
+ const value = params[0];
43
+ return data.filter((row) => {
44
+ const rowValue = row[column ?? ''];
45
+ return rowValue === value || String(rowValue) === String(value);
46
+ });
47
+ }
48
+ return data;
49
+ }
50
+ async getAll() {
51
+ return this.loadData();
52
+ }
53
+ async close() {
54
+ this.data = null;
55
+ }
56
+ }
57
+ export function createYamlDatasource(config) {
58
+ return new YamlDatasource(config);
59
+ }
60
+ //# sourceMappingURL=yaml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yaml.js","sourceRoot":"","sources":["../../src/datasources/yaml.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,MAAM,OAAO,cAAc;IAChB,IAAI,GAAG,MAAM,CAAC;IACf,IAAI,GAAuB,IAAI,CAAC;IAChC,QAAQ,CAAS;IAEzB,YAAY,MAAwB;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAElC,8CAA8C;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,MAAqB,CAAC;QACpC,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,IAAI,GAAG,CAAC,MAAiC,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,SAAoB,EAAE;QAC7C,oCAAoC;QACpC,wBAAwB;QACxB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEnC,4CAA4C;QAC5C,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACxD,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;gBACzB,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;gBACnC,OAAO,QAAQ,KAAK,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAwB;IAC3D,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Markdown Helper
3
+ * Utilities for generating Markdown strings
4
+ */
5
+ import type { MarkdownHelper } from '../types/index.js';
6
+ /**
7
+ * Create a Markdown helper instance
8
+ */
9
+ export declare function createMarkdownHelper(): MarkdownHelper;
10
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/helpers/markdown.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAexD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CAwFrD"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Markdown Helper
3
+ * Utilities for generating Markdown strings
4
+ */
5
+ /**
6
+ * Escape cell content for Markdown tables
7
+ */
8
+ function escapeCell(value) {
9
+ if (value === null || value === undefined) {
10
+ return '';
11
+ }
12
+ const str = String(value);
13
+ // Escape pipe characters and newlines
14
+ return str.replace(/\|/g, '\\|').replace(/\n/g, '<br>');
15
+ }
16
+ /**
17
+ * Create a Markdown helper instance
18
+ */
19
+ export function createMarkdownHelper() {
20
+ return {
21
+ /**
22
+ * Generate a table
23
+ */
24
+ table(headers, rows) {
25
+ if (headers.length === 0) {
26
+ return '';
27
+ }
28
+ const lines = [];
29
+ // Header row
30
+ const headerLine = '| ' + headers.map(escapeCell).join(' | ') + ' |';
31
+ lines.push(headerLine);
32
+ // Separator row
33
+ const separatorLine = '| ' + headers.map(() => '---').join(' | ') + ' |';
34
+ lines.push(separatorLine);
35
+ // Data rows
36
+ for (const row of rows) {
37
+ const cells = headers.map((_, i) => escapeCell(row[i]));
38
+ const rowLine = '| ' + cells.join(' | ') + ' |';
39
+ lines.push(rowLine);
40
+ }
41
+ return lines.join('\n');
42
+ },
43
+ /**
44
+ * Generate a list
45
+ */
46
+ list(items, ordered = false) {
47
+ return items
48
+ .map((item, index) => {
49
+ const prefix = ordered ? `${index + 1}.` : '-';
50
+ return `${prefix} ${item}`;
51
+ })
52
+ .join('\n');
53
+ },
54
+ /**
55
+ * Generate a code block
56
+ */
57
+ codeBlock(code, language = '') {
58
+ return '```' + language + '\n' + code + '\n```';
59
+ },
60
+ /**
61
+ * Generate a link
62
+ */
63
+ link(text, url) {
64
+ return `[${text}](${url})`;
65
+ },
66
+ /**
67
+ * Generate a heading
68
+ */
69
+ heading(text, level = 1) {
70
+ const prefix = '#'.repeat(Math.min(Math.max(level, 1), 6));
71
+ return `${prefix} ${text}`;
72
+ },
73
+ /**
74
+ * Generate bold text
75
+ */
76
+ bold(text) {
77
+ return `**${text}**`;
78
+ },
79
+ /**
80
+ * Generate italic text
81
+ */
82
+ italic(text) {
83
+ return `*${text}*`;
84
+ },
85
+ /**
86
+ * Generate a checkbox
87
+ */
88
+ checkbox(checked) {
89
+ return checked ? '✔' : '';
90
+ },
91
+ };
92
+ }
93
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/helpers/markdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * embedoc - In-Place Document Generator
3
+ *
4
+ * @example
5
+ * ```typescript
6
+ * import { defineEmbed, build, generateAll } from 'embedoc';
7
+ *
8
+ * const myEmbed = defineEmbed({
9
+ * dependsOn: ['my_datasource'],
10
+ * async render(ctx) {
11
+ * const data = await ctx.datasources.my_datasource.query('SELECT * FROM table');
12
+ * return { content: ctx.markdown.table(['Column'], data.map(r => [r.name])) };
13
+ * }
14
+ * });
15
+ * ```
16
+ */
17
+ export type { CommentStyle, TargetConfig, GeneratorConfig, DatasourceConfig, OutputConfig, GithubConfig, EmbedifyConfig, InlineDatasourceConfig, ParsedMarker, DetectedComment, QueryResult, Datasource, DatasourceFactory, MarkdownHelper, EmbedContext, EmbedResult, EmbedDefinition, DefineEmbedFn, ParsedFrontmatter, ProcessResult, GenerateResult, BuildResult, CLIOptions, } from './types/index.js';
18
+ export { build, processFile } from './core/processor.js';
19
+ export { generateAll, generateFromDatasource } from './core/generator.js';
20
+ export { parseMarkers, parseFrontmatter, parseAttributes, resolveVariables, getCommentStyle, guessCommentStyle, parseInlineDataMarkers, DEFAULT_COMMENT_STYLES, } from './core/parser.js';
21
+ export { InlineDatasource, buildInlineDatasources, parseDotPath, resolveDotPath, setDotPath, getRootName, parseInlineContent, } from './core/inline-datasource.js';
22
+ export type { ParsedInlineData, ContentProcessingOptions } from './core/inline-datasource.js';
23
+ export { DependencyGraph } from './core/dependency.js';
24
+ export type { DependencyType, DependencyNode } from './core/dependency.js';
25
+ export { createDatasource, initializeDatasources, closeDatasources, SqliteDatasource, CsvDatasource, JsonDatasource, YamlDatasource, GlobDatasource, } from './datasources/index.js';
26
+ export { createMarkdownHelper } from './helpers/markdown.js';
27
+ import type { DefineEmbedFn } from './types/index.js';
28
+ /**
29
+ * Helper function to define an embed
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * import { defineEmbed } from 'embedoc';
34
+ *
35
+ * export default defineEmbed({
36
+ * dependsOn: ['metadata_db'],
37
+ * async render(ctx) {
38
+ * const { id } = ctx.params;
39
+ * const data = await ctx.datasources.metadata_db.query(
40
+ * 'SELECT * FROM tables WHERE name = ?',
41
+ * [id]
42
+ * );
43
+ * return { content: ctx.markdown.table(['Name'], data.map(r => [r.name])) };
44
+ * }
45
+ * });
46
+ * ```
47
+ */
48
+ export declare const defineEmbed: DefineEmbedFn;
49
+ export declare const defineTemplate: DefineEmbedFn;
50
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,YAAY,EAEV,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,sBAAsB,EAEtB,YAAY,EACZ,eAAe,EAEf,WAAW,EACX,UAAU,EACV,iBAAiB,EAEjB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,eAAe,EACf,aAAa,EAEb,iBAAiB,EAEjB,aAAa,EACb,cAAc,EACd,WAAW,EACX,UAAU,GACX,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3E,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,cAAc,EACd,cAAc,GACf,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7D,OAAO,KAAK,EAAmB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,WAAW,EAAE,aAA2D,CAAC;AAGtF,eAAO,MAAM,cAAc,eAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,51 @@
1
+ /**
2
+ * embedoc - In-Place Document Generator
3
+ *
4
+ * @example
5
+ * ```typescript
6
+ * import { defineEmbed, build, generateAll } from 'embedoc';
7
+ *
8
+ * const myEmbed = defineEmbed({
9
+ * dependsOn: ['my_datasource'],
10
+ * async render(ctx) {
11
+ * const data = await ctx.datasources.my_datasource.query('SELECT * FROM table');
12
+ * return { content: ctx.markdown.table(['Column'], data.map(r => [r.name])) };
13
+ * }
14
+ * });
15
+ * ```
16
+ */
17
+ // Core functions
18
+ export { build, processFile } from './core/processor.js';
19
+ export { generateAll, generateFromDatasource } from './core/generator.js';
20
+ export { parseMarkers, parseFrontmatter, parseAttributes, resolveVariables, getCommentStyle, guessCommentStyle, parseInlineDataMarkers, DEFAULT_COMMENT_STYLES, } from './core/parser.js';
21
+ // Inline datasource
22
+ export { InlineDatasource, buildInlineDatasources, parseDotPath, resolveDotPath, setDotPath, getRootName, parseInlineContent, } from './core/inline-datasource.js';
23
+ export { DependencyGraph } from './core/dependency.js';
24
+ // Datasources
25
+ export { createDatasource, initializeDatasources, closeDatasources, SqliteDatasource, CsvDatasource, JsonDatasource, YamlDatasource, GlobDatasource, } from './datasources/index.js';
26
+ // Helpers
27
+ export { createMarkdownHelper } from './helpers/markdown.js';
28
+ /**
29
+ * Helper function to define an embed
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * import { defineEmbed } from 'embedoc';
34
+ *
35
+ * export default defineEmbed({
36
+ * dependsOn: ['metadata_db'],
37
+ * async render(ctx) {
38
+ * const { id } = ctx.params;
39
+ * const data = await ctx.datasources.metadata_db.query(
40
+ * 'SELECT * FROM tables WHERE name = ?',
41
+ * [id]
42
+ * );
43
+ * return { content: ctx.markdown.table(['Name'], data.map(r => [r.name])) };
44
+ * }
45
+ * });
46
+ * ```
47
+ */
48
+ export const defineEmbed = (definition) => definition;
49
+ // Export alias for documentation consistency
50
+ export const defineTemplate = defineEmbed;
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAmCH,iBAAiB;AACjB,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,oBAAoB;AACpB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,cAAc;AACd,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,cAAc,EACd,cAAc,GACf,MAAM,wBAAwB,CAAC;AAEhC,UAAU;AACV,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAK7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAkB,CAAC,UAA2B,EAAE,EAAE,CAAC,UAAU,CAAC;AAEtF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC"}
@@ -0,0 +1,254 @@
1
+ /**
2
+ * embedoc Type Definitions
3
+ */
4
+ /**
5
+ * Comment style definition
6
+ */
7
+ export interface CommentStyle {
8
+ start: string;
9
+ end: string;
10
+ }
11
+ /**
12
+ * Target file pattern configuration
13
+ */
14
+ export interface TargetConfig {
15
+ pattern: string;
16
+ comment_style: string;
17
+ exclude?: string[];
18
+ }
19
+ /**
20
+ * Generator configuration
21
+ */
22
+ export interface GeneratorConfig {
23
+ output_path: string;
24
+ template: string;
25
+ overwrite?: boolean;
26
+ }
27
+ /**
28
+ * Datasource configuration
29
+ */
30
+ export interface DatasourceConfig {
31
+ type: 'sqlite' | 'csv' | 'json' | 'yaml' | 'glob';
32
+ path?: string;
33
+ pattern?: string;
34
+ query?: string;
35
+ encoding?: string;
36
+ generators?: GeneratorConfig[];
37
+ }
38
+ /**
39
+ * Output configuration
40
+ */
41
+ export interface OutputConfig {
42
+ encoding?: BufferEncoding;
43
+ line_ending?: 'lf' | 'crlf';
44
+ }
45
+ /**
46
+ * GitHub configuration
47
+ */
48
+ export interface GithubConfig {
49
+ base_url?: string;
50
+ }
51
+ /**
52
+ * Inline datasource configuration
53
+ */
54
+ export interface InlineDatasourceConfig {
55
+ /** Enable/disable inline datasources (default: true) */
56
+ enabled?: boolean;
57
+ /** Maximum size in bytes (default: 10240) */
58
+ maxBytes?: number;
59
+ /** Allowed formats (default: all) */
60
+ allowedFormats?: string[];
61
+ /** Conflict policy when inline name matches external (default: warn) */
62
+ conflictPolicy?: 'warn' | 'error' | 'prefer_external';
63
+ /** Allow anonymous inline data (default: false) */
64
+ allowAnonymous?: boolean;
65
+ /** Strip code fences from content (default: true) */
66
+ stripCodeFences?: boolean;
67
+ /** Custom regex patterns to strip from content start/end */
68
+ stripPatterns?: string[];
69
+ }
70
+ /**
71
+ * Main configuration file
72
+ */
73
+ export interface EmbedifyConfig {
74
+ version: string;
75
+ targets: TargetConfig[];
76
+ comment_styles?: Record<string, CommentStyle>;
77
+ datasources?: Record<string, DatasourceConfig>;
78
+ embeds_dir?: string;
79
+ templates_dir?: string;
80
+ output?: OutputConfig;
81
+ github?: GithubConfig;
82
+ /** Inline datasource configuration */
83
+ inline_datasource?: InlineDatasourceConfig;
84
+ }
85
+ /**
86
+ * Parsed marker information
87
+ */
88
+ export interface ParsedMarker {
89
+ /** Start position of entire marker */
90
+ startIndex: number;
91
+ /** End position of entire marker */
92
+ endIndex: number;
93
+ /** Template name */
94
+ templateName: string;
95
+ /** Parameters (attribute values) */
96
+ params: Record<string, string>;
97
+ /** Existing content (between markers) */
98
+ existingContent: string;
99
+ /** Full start marker line */
100
+ startMarkerLine: string;
101
+ /** Full end marker line */
102
+ endMarkerLine: string;
103
+ }
104
+ /**
105
+ * Detected comment format result
106
+ */
107
+ export interface DetectedComment {
108
+ style: CommentStyle;
109
+ styleName: string;
110
+ }
111
+ /**
112
+ * Datasource query result
113
+ */
114
+ export type QueryResult = Record<string, unknown>[];
115
+ /**
116
+ * Datasource interface
117
+ */
118
+ export interface Datasource {
119
+ /** Datasource type */
120
+ readonly type: string;
121
+ /** Execute query */
122
+ query(sql: string, params?: unknown[]): Promise<QueryResult>;
123
+ /** Get all data (for generators) */
124
+ getAll(): Promise<QueryResult>;
125
+ /** Close connection */
126
+ close(): Promise<void>;
127
+ }
128
+ /**
129
+ * Datasource factory
130
+ */
131
+ export type DatasourceFactory = (config: DatasourceConfig) => Promise<Datasource>;
132
+ /**
133
+ * Markdown helper
134
+ */
135
+ export interface MarkdownHelper {
136
+ /** Generate table */
137
+ table(headers: string[], rows: (string | number | boolean | null | undefined)[][]): string;
138
+ /** Generate list */
139
+ list(items: string[], ordered?: boolean): string;
140
+ /** Generate code block */
141
+ codeBlock(code: string, language?: string): string;
142
+ /** Generate link */
143
+ link(text: string, url: string): string;
144
+ /** Generate heading */
145
+ heading(text: string, level?: number): string;
146
+ /** Bold text */
147
+ bold(text: string): string;
148
+ /** Italic text */
149
+ italic(text: string): string;
150
+ /** Checkbox */
151
+ checkbox(checked: boolean): string;
152
+ }
153
+ /**
154
+ * Embed context
155
+ */
156
+ export interface EmbedContext {
157
+ /** Marker parameters */
158
+ params: Record<string, string>;
159
+ /** Frontmatter properties */
160
+ frontmatter: Record<string, unknown>;
161
+ /** Datasource access */
162
+ datasources: Record<string, Datasource>;
163
+ /** Markdown helper */
164
+ markdown: MarkdownHelper;
165
+ /** Current file path being processed */
166
+ filePath: string;
167
+ }
168
+ /**
169
+ * Embed execution result
170
+ */
171
+ export interface EmbedResult {
172
+ content: string;
173
+ }
174
+ /**
175
+ * Embed definition
176
+ */
177
+ export interface EmbedDefinition {
178
+ /** Dependent datasource names */
179
+ dependsOn?: string[];
180
+ /** Render function */
181
+ render(ctx: EmbedContext): Promise<EmbedResult>;
182
+ }
183
+ /**
184
+ * Helper function type for embed definition
185
+ */
186
+ export type DefineEmbedFn = (definition: EmbedDefinition) => EmbedDefinition;
187
+ /**
188
+ * Parsed frontmatter
189
+ */
190
+ export interface ParsedFrontmatter {
191
+ /** Frontmatter data */
192
+ data: Record<string, unknown>;
193
+ /** Content after frontmatter */
194
+ content: string;
195
+ /** Original frontmatter string (including ---) */
196
+ raw: string;
197
+ }
198
+ /**
199
+ * File processing result
200
+ */
201
+ export interface ProcessResult {
202
+ /** Processed file path */
203
+ filePath: string;
204
+ /** Whether successful */
205
+ success: boolean;
206
+ /** Number of updated markers */
207
+ markersUpdated: number;
208
+ /** Error (if any) */
209
+ error?: Error;
210
+ /** Whether changed */
211
+ changed: boolean;
212
+ }
213
+ /**
214
+ * Generation result
215
+ */
216
+ export interface GenerateResult {
217
+ /** Generated file path */
218
+ filePath: string;
219
+ /** Whether successful */
220
+ success: boolean;
221
+ /** Whether skipped (existing file without overwrite) */
222
+ skipped: boolean;
223
+ /** Error (if any) */
224
+ error?: Error;
225
+ }
226
+ /**
227
+ * Build result
228
+ */
229
+ export interface BuildResult {
230
+ /** Number of processed files */
231
+ totalFiles: number;
232
+ /** Number of successful files */
233
+ successFiles: number;
234
+ /** Number of failed files */
235
+ failedFiles: number;
236
+ /** Total number of updated markers */
237
+ totalMarkersUpdated: number;
238
+ /** Results for each file */
239
+ results: ProcessResult[];
240
+ /** Processing time (milliseconds) */
241
+ duration: number;
242
+ }
243
+ /**
244
+ * CLI options
245
+ */
246
+ export interface CLIOptions {
247
+ config?: string;
248
+ dryRun?: boolean;
249
+ verbose?: boolean;
250
+ datasource?: string;
251
+ generator?: string;
252
+ all?: boolean;
253
+ }
254
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * embedoc Type Definitions
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG"}