legal-markdown-js 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +168 -0
  3. package/dist/browser.d.ts +87 -0
  4. package/dist/browser.d.ts.map +1 -0
  5. package/dist/browser.js +157 -0
  6. package/dist/browser.js.map +1 -0
  7. package/dist/cli/index.d.ts +34 -0
  8. package/dist/cli/index.d.ts.map +1 -0
  9. package/dist/cli/index.js +221 -0
  10. package/dist/cli/index.js.map +1 -0
  11. package/dist/cli/service.d.ts +128 -0
  12. package/dist/cli/service.d.ts.map +1 -0
  13. package/dist/cli/service.js +284 -0
  14. package/dist/cli/service.js.map +1 -0
  15. package/dist/constants/index.d.ts +229 -0
  16. package/dist/constants/index.d.ts.map +1 -0
  17. package/dist/constants/index.js +232 -0
  18. package/dist/constants/index.js.map +1 -0
  19. package/dist/core/exporters/metadata-exporter.d.ts +104 -0
  20. package/dist/core/exporters/metadata-exporter.d.ts.map +1 -0
  21. package/dist/core/exporters/metadata-exporter.js +201 -0
  22. package/dist/core/exporters/metadata-exporter.js.map +1 -0
  23. package/dist/core/index.d.ts +40 -0
  24. package/dist/core/index.d.ts.map +1 -0
  25. package/dist/core/index.js +56 -0
  26. package/dist/core/index.js.map +1 -0
  27. package/dist/core/parsers/yaml-parser.d.ts +149 -0
  28. package/dist/core/parsers/yaml-parser.d.ts.map +1 -0
  29. package/dist/core/parsers/yaml-parser.js +321 -0
  30. package/dist/core/parsers/yaml-parser.js.map +1 -0
  31. package/dist/core/processors/clause-processor.d.ts +74 -0
  32. package/dist/core/processors/clause-processor.d.ts.map +1 -0
  33. package/dist/core/processors/clause-processor.js +213 -0
  34. package/dist/core/processors/clause-processor.js.map +1 -0
  35. package/dist/core/processors/date-processor.d.ts +90 -0
  36. package/dist/core/processors/date-processor.d.ts.map +1 -0
  37. package/dist/core/processors/date-processor.js +336 -0
  38. package/dist/core/processors/date-processor.js.map +1 -0
  39. package/dist/core/processors/header-processor.d.ts +104 -0
  40. package/dist/core/processors/header-processor.d.ts.map +1 -0
  41. package/dist/core/processors/header-processor.js +585 -0
  42. package/dist/core/processors/header-processor.js.map +1 -0
  43. package/dist/core/processors/import-processor.d.ts +116 -0
  44. package/dist/core/processors/import-processor.d.ts.map +1 -0
  45. package/dist/core/processors/import-processor.js +236 -0
  46. package/dist/core/processors/import-processor.js.map +1 -0
  47. package/dist/core/processors/mixin-processor.d.ts +93 -0
  48. package/dist/core/processors/mixin-processor.d.ts.map +1 -0
  49. package/dist/core/processors/mixin-processor.js +378 -0
  50. package/dist/core/processors/mixin-processor.js.map +1 -0
  51. package/dist/core/processors/reference-processor.d.ts +115 -0
  52. package/dist/core/processors/reference-processor.d.ts.map +1 -0
  53. package/dist/core/processors/reference-processor.js +273 -0
  54. package/dist/core/processors/reference-processor.js.map +1 -0
  55. package/dist/errors/index.d.ts +234 -0
  56. package/dist/errors/index.d.ts.map +1 -0
  57. package/dist/errors/index.js +267 -0
  58. package/dist/errors/index.js.map +1 -0
  59. package/dist/extensions/batch-processor.d.ts +197 -0
  60. package/dist/extensions/batch-processor.d.ts.map +1 -0
  61. package/dist/extensions/batch-processor.js +392 -0
  62. package/dist/extensions/batch-processor.js.map +1 -0
  63. package/dist/extensions/formatters/index.d.ts +99 -0
  64. package/dist/extensions/formatters/index.d.ts.map +1 -0
  65. package/dist/extensions/formatters/index.js +128 -0
  66. package/dist/extensions/formatters/index.js.map +1 -0
  67. package/dist/extensions/index.d.ts +53 -0
  68. package/dist/extensions/index.d.ts.map +1 -0
  69. package/dist/extensions/index.js +71 -0
  70. package/dist/extensions/index.js.map +1 -0
  71. package/dist/extensions/latex-parser.d.ts +111 -0
  72. package/dist/extensions/latex-parser.d.ts.map +1 -0
  73. package/dist/extensions/latex-parser.js +563 -0
  74. package/dist/extensions/latex-parser.js.map +1 -0
  75. package/dist/extensions/rst-parser.d.ts +112 -0
  76. package/dist/extensions/rst-parser.d.ts.map +1 -0
  77. package/dist/extensions/rst-parser.js +268 -0
  78. package/dist/extensions/rst-parser.js.map +1 -0
  79. package/dist/extensions/template-loops.d.ts +61 -0
  80. package/dist/extensions/template-loops.d.ts.map +1 -0
  81. package/dist/extensions/template-loops.js +418 -0
  82. package/dist/extensions/template-loops.js.map +1 -0
  83. package/dist/extensions/utilities/index.d.ts +114 -0
  84. package/dist/extensions/utilities/index.d.ts.map +1 -0
  85. package/dist/extensions/utilities/index.js +137 -0
  86. package/dist/extensions/utilities/index.js.map +1 -0
  87. package/dist/extensions/validators/index.d.ts +65 -0
  88. package/dist/extensions/validators/index.d.ts.map +1 -0
  89. package/dist/extensions/validators/index.js +88 -0
  90. package/dist/extensions/validators/index.js.map +1 -0
  91. package/dist/generators/html-generator.d.ts +184 -0
  92. package/dist/generators/html-generator.d.ts.map +1 -0
  93. package/dist/generators/html-generator.js +361 -0
  94. package/dist/generators/html-generator.js.map +1 -0
  95. package/dist/generators/pdf-generator.d.ts +165 -0
  96. package/dist/generators/pdf-generator.d.ts.map +1 -0
  97. package/dist/generators/pdf-generator.js +275 -0
  98. package/dist/generators/pdf-generator.js.map +1 -0
  99. package/dist/helpers/date-helpers.d.ts +216 -0
  100. package/dist/helpers/date-helpers.d.ts.map +1 -0
  101. package/dist/helpers/date-helpers.js +402 -0
  102. package/dist/helpers/date-helpers.js.map +1 -0
  103. package/dist/helpers/index.d.ts +87 -0
  104. package/dist/helpers/index.d.ts.map +1 -0
  105. package/dist/helpers/index.js +149 -0
  106. package/dist/helpers/index.js.map +1 -0
  107. package/dist/helpers/number-helpers.d.ts +269 -0
  108. package/dist/helpers/number-helpers.d.ts.map +1 -0
  109. package/dist/helpers/number-helpers.js +406 -0
  110. package/dist/helpers/number-helpers.js.map +1 -0
  111. package/dist/helpers/string-helpers.d.ts +391 -0
  112. package/dist/helpers/string-helpers.d.ts.map +1 -0
  113. package/dist/helpers/string-helpers.js +549 -0
  114. package/dist/helpers/string-helpers.js.map +1 -0
  115. package/dist/index.d.ts +229 -0
  116. package/dist/index.d.ts.map +1 -0
  117. package/dist/index.js +384 -0
  118. package/dist/index.js.map +1 -0
  119. package/dist/legal-markdown.umd.min.js +2 -0
  120. package/dist/legal-markdown.umd.min.js.LICENSE.txt +14 -0
  121. package/dist/legal-markdown.umd.min.js.map +1 -0
  122. package/dist/lib/index.d.ts +150 -0
  123. package/dist/lib/index.d.ts.map +1 -0
  124. package/dist/lib/index.js +265 -0
  125. package/dist/lib/index.js.map +1 -0
  126. package/dist/parsers/content-detector.d.ts +131 -0
  127. package/dist/parsers/content-detector.d.ts.map +1 -0
  128. package/dist/parsers/content-detector.js +220 -0
  129. package/dist/parsers/content-detector.js.map +1 -0
  130. package/dist/parsers/fallback-parsers.d.ts +14 -0
  131. package/dist/parsers/fallback-parsers.d.ts.map +1 -0
  132. package/dist/parsers/fallback-parsers.js +188 -0
  133. package/dist/parsers/fallback-parsers.js.map +1 -0
  134. package/dist/parsers/implementations/pandoc-native.d.ts +13 -0
  135. package/dist/parsers/implementations/pandoc-native.d.ts.map +1 -0
  136. package/dist/parsers/implementations/pandoc-native.js +63 -0
  137. package/dist/parsers/implementations/pandoc-native.js.map +1 -0
  138. package/dist/parsers/implementations/pandoc-wasm.d.ts +14 -0
  139. package/dist/parsers/implementations/pandoc-wasm.d.ts.map +1 -0
  140. package/dist/parsers/implementations/pandoc-wasm.js +64 -0
  141. package/dist/parsers/implementations/pandoc-wasm.js.map +1 -0
  142. package/dist/parsers/pandoc-factory.d.ts +97 -0
  143. package/dist/parsers/pandoc-factory.d.ts.map +1 -0
  144. package/dist/parsers/pandoc-factory.js +146 -0
  145. package/dist/parsers/pandoc-factory.js.map +1 -0
  146. package/dist/parsers/pandoc-loader.d.ts +24 -0
  147. package/dist/parsers/pandoc-loader.d.ts.map +1 -0
  148. package/dist/parsers/pandoc-loader.js +124 -0
  149. package/dist/parsers/pandoc-loader.js.map +1 -0
  150. package/dist/parsers/pandoc-parser.d.ts +27 -0
  151. package/dist/parsers/pandoc-parser.d.ts.map +1 -0
  152. package/dist/parsers/pandoc-parser.js +3 -0
  153. package/dist/parsers/pandoc-parser.js.map +1 -0
  154. package/dist/styles/default.css +125 -0
  155. package/dist/styles/headers.css +146 -0
  156. package/dist/styles/highlight.css +171 -0
  157. package/dist/tracking/field-tracker.d.ts +206 -0
  158. package/dist/tracking/field-tracker.d.ts.map +1 -0
  159. package/dist/tracking/field-tracker.js +247 -0
  160. package/dist/tracking/field-tracker.js.map +1 -0
  161. package/dist/types.d.ts +186 -0
  162. package/dist/types.d.ts.map +1 -0
  163. package/dist/types.js +33 -0
  164. package/dist/types.js.map +1 -0
  165. package/dist/utils/logger.d.ts +107 -0
  166. package/dist/utils/logger.d.ts.map +1 -0
  167. package/dist/utils/logger.js +122 -0
  168. package/dist/utils/logger.js.map +1 -0
  169. package/dist/web/bundle-standalone.js +28 -0
  170. package/dist/web/bundle.js +17 -0
  171. package/dist/web/index.html +1465 -0
  172. package/dist/web/legal-markdown.umd.min.js +2 -0
  173. package/dist/web/standalone.html +390 -0
  174. package/dist/web/styles.css +874 -0
  175. package/package.json +118 -0
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Lightweight Logging Utility for Legal Markdown Processing
4
+ *
5
+ * This module provides a simple, efficient logging utility for the Legal Markdown
6
+ * processing system. It offers structured logging with different levels and
7
+ * optional data context support.
8
+ *
9
+ * Features:
10
+ * - Multiple log levels (debug, info, warn, error)
11
+ * - Debug mode controlled by environment variable
12
+ * - Structured logging with contextual data
13
+ * - Console-based output with formatted prefixes
14
+ * - Optional data parameter for detailed logging
15
+ * - Lightweight with no external dependencies
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * import { logger } from './logger';
20
+ *
21
+ * // Basic logging
22
+ * logger.info('Processing legal document');
23
+ * logger.warn('Missing field detected');
24
+ * logger.error('Failed to parse YAML');
25
+ *
26
+ * // Logging with context data
27
+ * logger.debug('Field processed', { fieldName: 'client.name', value: 'Acme Corp' });
28
+ * logger.info('Document exported', { format: 'pdf', size: '2.3MB' });
29
+ * ```
30
+ */
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ exports.logger = void 0;
33
+ /**
34
+ * Simple logger utility for Legal Markdown processing
35
+ *
36
+ * Provides structured logging with different levels and optional context data.
37
+ * Debug logging is only enabled when DEBUG environment variable is set.
38
+ *
39
+ * @constant {Object} logger
40
+ * @example
41
+ * ```typescript
42
+ * import { logger } from './logger';
43
+ *
44
+ * // Set DEBUG=true in environment to see debug logs
45
+ * logger.debug('Processing started', { file: 'contract.md' });
46
+ * logger.info('Document processed successfully');
47
+ * logger.warn('Optional field missing', { field: 'client.address' });
48
+ * logger.error('Processing failed', { error: 'Invalid syntax' });
49
+ * ```
50
+ */
51
+ exports.logger = {
52
+ /**
53
+ * Log debug messages (only shown when DEBUG environment variable is set)
54
+ *
55
+ * @method debug
56
+ * @param {string} message - The debug message to log
57
+ * @param {any} [data] - Optional contextual data to include with the log
58
+ * @returns {void}
59
+ * @example
60
+ * ```typescript
61
+ * // Enable debug mode: DEBUG=true node app.js
62
+ * logger.debug('Processing field', { name: 'client.name', type: 'string' });
63
+ * logger.debug('Import resolved', { path: './shared/header.md' });
64
+ * ```
65
+ */
66
+ debug: (message, data) => {
67
+ // Browser-compatible debug check
68
+ const isDebugEnabled = typeof process !== 'undefined' && process.env && process.env.DEBUG;
69
+ if (isDebugEnabled) {
70
+ console.debug(`[DEBUG] ${message}`, data || '');
71
+ }
72
+ },
73
+ /**
74
+ * Log informational messages
75
+ *
76
+ * @method info
77
+ * @param {string} message - The informational message to log
78
+ * @param {any} [data] - Optional contextual data to include with the log
79
+ * @returns {void}
80
+ * @example
81
+ * ```typescript
82
+ * logger.info('Document processing completed');
83
+ * logger.info('Export successful', { format: 'html', path: './output.html' });
84
+ * ```
85
+ */
86
+ info: (message, data) => {
87
+ console.info(`[INFO] ${message}`, data || '');
88
+ },
89
+ /**
90
+ * Log warning messages
91
+ *
92
+ * @method warn
93
+ * @param {string} message - The warning message to log
94
+ * @param {any} [data] - Optional contextual data to include with the log
95
+ * @returns {void}
96
+ * @example
97
+ * ```typescript
98
+ * logger.warn('Missing optional field', { field: 'client.phone' });
99
+ * logger.warn('Import file not found', { path: './missing.md' });
100
+ * ```
101
+ */
102
+ warn: (message, data) => {
103
+ console.warn(`[WARN] ${message}`, data || '');
104
+ },
105
+ /**
106
+ * Log error messages
107
+ *
108
+ * @method error
109
+ * @param {string} message - The error message to log
110
+ * @param {any} [data] - Optional contextual data to include with the log
111
+ * @returns {void}
112
+ * @example
113
+ * ```typescript
114
+ * logger.error('Failed to parse YAML frontmatter', { error: 'Invalid syntax' });
115
+ * logger.error('Document processing failed', { file: 'contract.md', reason: 'Missing imports' });
116
+ * ```
117
+ */
118
+ error: (message, data) => {
119
+ console.error(`[ERROR] ${message}`, data || '');
120
+ },
121
+ };
122
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;;;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACU,QAAA,MAAM,GAAG;IACpB;;;;;;;;;;;;;OAaG;IACH,KAAK,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;QACrC,iCAAiC;QACjC,MAAM,cAAc,GAAG,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QAC1F,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,IAAI,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;QACpC,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,IAAI,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;QACpC,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;QACrC,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Standalone bundle entry point for Legal Markdown
3
+ * This creates a browser-compatible bundle that can be used without a server
4
+ */
5
+
6
+ // Import the main library
7
+ const { processLegalMarkdown } = require('../index');
8
+
9
+ // Create a self-contained bundle for browsers
10
+ (function() {
11
+ // Convert the async function to work in browser context
12
+ window.LegalMarkdown = {
13
+ processLegalMarkdown: async function(content, options = {}) {
14
+ try {
15
+ // Use the actual library
16
+ return await processLegalMarkdown(content, options);
17
+ } catch (error) {
18
+ console.error('Legal Markdown processing error:', error);
19
+ throw error;
20
+ }
21
+ }
22
+ };
23
+
24
+ // Also export for CommonJS if available
25
+ if (typeof module !== 'undefined' && module.exports) {
26
+ module.exports = window.LegalMarkdown;
27
+ }
28
+ })();
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Browser bundle entry point for Legal Markdown
3
+ * This file creates a browser-compatible version of the legal-markdown library
4
+ */
5
+
6
+ // Import the main library
7
+ const { processLegalMarkdown } = require('../index');
8
+
9
+ // Create a browser-compatible API
10
+ window.LegalMarkdown = {
11
+ processLegalMarkdown: processLegalMarkdown
12
+ };
13
+
14
+ // Export for CommonJS environments too
15
+ if (typeof module !== 'undefined' && module.exports) {
16
+ module.exports = window.LegalMarkdown;
17
+ }