legal-markdown-js 2.6.2 → 2.6.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAa9C;;;;;GAKG;AACH,MAAM,WAAW,UAAW,SAAQ,oBAAoB;IACtD,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0BAA0B;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8BAA8B;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAa;IAE5B;;;;OAIG;gBACS,OAAO,GAAE,UAAe;IAIpC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;;;;;;;OASG;IACU,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2D/E;;;;;;;OAOG;IACU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB7D;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG;IAoBX;;;;;;;;;OASG;YACW,kCAAkC;IAyEhD;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAiBnB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;CAyC7B"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAa9C;;;;;GAKG;AACH,MAAM,WAAW,UAAW,SAAQ,oBAAoB;IACtD,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0BAA0B;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8BAA8B;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAa;IAE5B;;;;OAIG;gBACS,OAAO,GAAE,UAAe;IAIpC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;;;;;;;OASG;IACU,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2D/E;;;;;;;OAOG;IACU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB7D;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG;IAoBX;;;;;;;;;OASG;YACW,kCAAkC;IAgFhD;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAiBnB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;CAyC7B"}
@@ -247,12 +247,18 @@ class CliService {
247
247
  // Get the directory of the input file for imports
248
248
  const resolvedInputPath = (0, _lib_1.resolveFilePath)(this.options.basePath, inputPath);
249
249
  const inputDir = path.dirname(resolvedInputPath);
250
+ // Resolve CSS path if provided
251
+ let cssPath = options.cssPath || options.css;
252
+ if (cssPath && !path.isAbsolute(cssPath)) {
253
+ // If CSS path is relative, resolve it against STYLES_DIR
254
+ cssPath = path.resolve(_constants_1.RESOLVED_PATHS.STYLES_DIR, cssPath);
255
+ }
250
256
  // Use the passed options (already processed for force commands)
251
257
  const generateOptions = {
252
258
  ...options,
253
259
  basePath: inputDir,
254
260
  includeHighlighting: options.highlight,
255
- cssPath: options.cssPath || options.css,
261
+ cssPath,
256
262
  title: options.title || baseName,
257
263
  };
258
264
  // Generate HTML if requested
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,7 @@ Your content with {{variable}} substitutions..."></textarea>
72
72
  <div class="example-dropdown">
73
73
  <select class="css-example-select">
74
74
  <option value="">🎨 CSS Examples</option>
75
+ <option value="default">Default Legal Styles</option>
75
76
  <option value="modern">Modern Style</option>
76
77
  <option value="classic">Classic Legal</option>
77
78
  <option value="minimal">Minimal</option>
@@ -176,7 +177,7 @@ p {
176
177
  </span>
177
178
  </label>
178
179
  <label class="checkbox-item">
179
- <input type="checkbox" id="enableFieldTracking"> Field tracking
180
+ <input type="checkbox" id="enableFieldTracking" checked> Field tracking
180
181
  <span class="tooltip">
181
182
  <span class="tooltip-icon">â„šī¸</span>
182
183
  <span class="tooltip-text">Adds HTML spans around template variables and headers for debugging and styling. When disabled, maintains compatibility with Ruby version.</span>
@@ -273,6 +274,7 @@ p {
273
274
  <div id="messageArea"></div>
274
275
  </div>
275
276
 
277
+ <script src="https://cdn.jsdelivr.net/npm/marked@16.1.1/marked.min.js"></script>
276
278
  <script src="./legal-markdown.umd.min.js"></script>
277
279
  <script>
278
280
  class LegalMarkdownApp {
@@ -288,6 +290,7 @@ p {
288
290
  this.initializePreviewResizer();
289
291
  this.updateBaseStyles(); // Initialize base styles
290
292
  this.loadExample('service-agreement');
293
+ this.loadCSSExample('default'); // Load default CSS by default
291
294
  }
292
295
 
293
296
  initializeTheme() {
@@ -485,19 +488,28 @@ p {
485
488
  }
486
489
 
487
490
  formatMarkdownForDisplay(content) {
488
- // Basic markdown to HTML conversion for display
489
- return content
490
- .replace(/^# (.*$)/gm, '<h1>$1</h1>')
491
- .replace(/^## (.*$)/gm, '<h2>$1</h2>')
492
- .replace(/^### (.*$)/gm, '<h3>$1</h3>')
493
- .replace(/\*\*(.*?)\*\*/g, '<strong>$1</strong>')
494
- .replace(/\*(.*?)\*/g, '<em>$1</em>')
495
- .replace(/\n\n/g, '</p><p>')
496
- .replace(/^(.+)$/gm, '<p>$1</p>')
497
- .replace(/<p><\/p>/g, '')
498
- .replace(/<p>(<h[1-6]>.*<\/h[1-6]>)<\/p>/g, '$1');
491
+ // IMPORTANT: This content has already been processed by our Legal Markdown pipeline
492
+ // in processContent(). Here we just need to convert the final markdown to HTML.
493
+ if (typeof marked === 'undefined') {
494
+ console.error('Marked library is not available. Ensure it is loaded correctly.');
495
+ return `<p>Error: Markdown parser unavailable. Please check your setup.</p>
496
+ <pre>${this.escapeHtml(content)}</pre>`;
497
+ }
498
+
499
+ try {
500
+ return marked.parse(content, {
501
+ breaks: true,
502
+ gfm: true
503
+ });
504
+ } catch (error) {
505
+ console.error('Markdown parsing failed:', error);
506
+ return `<p>Error: Failed to process Markdown content.</p>
507
+ <pre>${this.escapeHtml(content)}</pre>`;
508
+ }
499
509
  }
500
510
 
511
+
512
+
501
513
  downloadDocument() {
502
514
  if (!this.processedResult) {
503
515
  this.showMessage('Please process a document first.', 'error');
@@ -1357,7 +1369,7 @@ Signature: ___________________________ Date: ___________`
1357
1369
  stats.push(`${yamlKeys} YAML variables`);
1358
1370
  }
1359
1371
 
1360
- if (result.fieldReport) {
1372
+ if (result.fieldReport && Array.isArray(result.fieldReport)) {
1361
1373
  stats.push(`${result.fieldReport.length} field substitutions`);
1362
1374
  }
1363
1375
 
@@ -1585,6 +1597,471 @@ Your content with {{variable}} substitutions...
1585
1597
 
1586
1598
  getCSSExamples() {
1587
1599
  return {
1600
+ 'default': `/**
1601
+ * Default Legal Markdown Styles
1602
+ *
1603
+ * Professional stylesheet for legal documents, optimized for both screen and print media.
1604
+ * Features modern typography, clean design, and comprehensive print optimizations.
1605
+ */
1606
+
1607
+ /**
1608
+ * Default Legal Markdown Styles
1609
+ *
1610
+ * Professional stylesheet for legal documents, optimized for both screen and print media.
1611
+ * Features modern typography, clean design, and comprehensive print optimizations.
1612
+ *
1613
+ * Structure:
1614
+ * 1. Variables and base configuration
1615
+ * 2. Typography and visual hierarchy
1616
+ * 3. Content elements
1617
+ * 4. Tables and signatures
1618
+ * 5. Print optimizations
1619
+ * 6. Utilities and special classes
1620
+ */
1621
+
1622
+ /* Variables and base configuration
1623
+ ========================================================================== */
1624
+ :root {
1625
+ /* Colors - Professional slate and teal palette */
1626
+ --color-primary: #1e293b; /* Slate 800 */
1627
+ --color-accent: #0891b2; /* Cyan 600 */
1628
+ --color-link: #0891b2; /* Cyan 600 */
1629
+ --color-text: #334155; /* Slate 700 */
1630
+ --color-error: #dc2626; /* Red 600 */
1631
+ --color-bg: #ffffff; /* White */
1632
+ --color-muted: #64748b; /* Slate 500 */
1633
+
1634
+ /* Typography */
1635
+ --font-primary: -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
1636
+ --font-mono: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Courier New', monospace;
1637
+
1638
+ /* Assets - Default logo placeholder */
1639
+ --logo-filename: https://placehold.co/120x40/2563eb/ffffff.png?text=LOGO;
1640
+
1641
+ /* Spacing */
1642
+ --spacing-xsmall: 4px;
1643
+ --spacing-small: 8px;
1644
+ --spacing-medium: 16px;
1645
+ --spacing-large: 32px;
1646
+ --spacing-xlarge: 48px;
1647
+
1648
+ /* Sizes */
1649
+ --font-size-base: 12pt;
1650
+ --font-size-h1: 1.8em;
1651
+ --font-size-h2: 1.4em;
1652
+ --font-size-h3: 1.2em;
1653
+ --font-size-h4: 1.1em;
1654
+
1655
+ /* Layout */
1656
+ --max-width: 210mm; /* A4 width */
1657
+ --border-radius: 6px;
1658
+ --border-width: 1px;
1659
+ }
1660
+
1661
+ /* Base document configuration
1662
+ ========================================================================== */
1663
+ body {
1664
+ font-family: var(--font-primary);
1665
+ font-size: var(--font-size-base);
1666
+ line-height: 1.6;
1667
+ color: var(--color-text);
1668
+ max-width: var(--max-width);
1669
+ margin: 0 auto;
1670
+ padding: 20mm 15mm;
1671
+ background-color: var(--color-bg);
1672
+ }
1673
+
1674
+ /* Typography hierarchy
1675
+ ========================================================================== */
1676
+ /* Prevent page breaks in headings */
1677
+ h1,
1678
+ h2,
1679
+ h3,
1680
+ h4,
1681
+ h5,
1682
+ h6 {
1683
+ page-break-after: avoid;
1684
+ page-break-inside: avoid;
1685
+ color: var(--color-primary);
1686
+ font-weight: 600;
1687
+ }
1688
+
1689
+ /* Main document title */
1690
+ h1,
1691
+ .legal-header-level-1 {
1692
+ font-size: var(--font-size-h1);
1693
+ line-height: 1.3;
1694
+ margin: var(--spacing-medium) 0 var(--spacing-large);
1695
+ text-align: center;
1696
+ border-bottom: 3px solid var(--color-accent);
1697
+ padding-bottom: var(--spacing-medium);
1698
+ color: var(--color-primary);
1699
+ }
1700
+
1701
+ /* Section headings */
1702
+ h2,
1703
+ .legal-header-level-2 {
1704
+ font-size: var(--font-size-h2);
1705
+ margin-top: var(--spacing-large);
1706
+ margin-bottom: var(--spacing-medium);
1707
+ border-bottom: 2px solid var(--color-accent);
1708
+ padding-bottom: var(--spacing-small);
1709
+ color: var(--color-primary);
1710
+ }
1711
+
1712
+ /* Subsection headings */
1713
+ h3,
1714
+ .legal-header-level-3 {
1715
+ font-size: var(--font-size-h3);
1716
+ font-weight: 600;
1717
+ margin-top: var(--spacing-large);
1718
+ margin-bottom: var(--spacing-medium);
1719
+ border-bottom: 1px solid var(--color-accent);
1720
+ padding-bottom: var(--spacing-xsmall);
1721
+ color: var(--color-primary);
1722
+ }
1723
+
1724
+ /* Minor headings */
1725
+ h4,
1726
+ .legal-header-level-4 {
1727
+ font-size: var(--font-size-h4);
1728
+ font-weight: 600;
1729
+ margin-top: var(--spacing-medium);
1730
+ margin-bottom: var(--spacing-small);
1731
+ color: var(--color-primary);
1732
+ }
1733
+
1734
+ /* Legal headers */
1735
+ h5,
1736
+ h6,
1737
+ .legal-header-level-5,
1738
+ .legal-header-level-6 {
1739
+ font-size: 1em;
1740
+ font-weight: 600;
1741
+ margin-top: var(--spacing-medium);
1742
+ margin-bottom: var(--spacing-small);
1743
+ color: var(--color-primary);
1744
+ }
1745
+
1746
+ /* Content elements
1747
+ ========================================================================== */
1748
+ /* Paragraphs */
1749
+ p {
1750
+ margin-bottom: var(--spacing-medium);
1751
+ text-align: justify;
1752
+ orphans: 3; /* Minimum lines at start of page */
1753
+ widows: 3; /* Minimum lines at end of page */
1754
+ page-break-inside: avoid;
1755
+ }
1756
+
1757
+ /* Links */
1758
+ a {
1759
+ color: var(--color-link);
1760
+ text-decoration: none;
1761
+ transition: color 0.2s ease;
1762
+ }
1763
+
1764
+ a:hover {
1765
+ text-decoration: underline;
1766
+ color: var(--color-accent);
1767
+ }
1768
+
1769
+ /* Lists */
1770
+ ul,
1771
+ ol {
1772
+ margin: var(--spacing-medium) 0;
1773
+ padding-left: var(--spacing-large);
1774
+ page-break-inside: auto;
1775
+ }
1776
+
1777
+ li {
1778
+ margin-bottom: var(--spacing-small);
1779
+ page-break-inside: auto;
1780
+ }
1781
+
1782
+ /* Code blocks */
1783
+ pre {
1784
+ background-color: #f8fafc;
1785
+ border: var(--border-width) solid #e2e8f0;
1786
+ border-radius: var(--border-radius);
1787
+ padding: var(--spacing-medium);
1788
+ margin: var(--spacing-medium) 0;
1789
+ overflow-x: auto;
1790
+ font-family: var(--font-mono);
1791
+ font-size: 0.9em;
1792
+ line-height: 1.4;
1793
+ }
1794
+
1795
+ code {
1796
+ background-color: #f1f5f9;
1797
+ color: var(--color-primary);
1798
+ padding: var(--spacing-xsmall) var(--spacing-small);
1799
+ border-radius: 4px;
1800
+ font-family: var(--font-mono);
1801
+ font-size: 0.9em;
1802
+ }
1803
+
1804
+ /* Horizontal separators */
1805
+ hr {
1806
+ border: none;
1807
+ border-top: 2px solid var(--color-accent);
1808
+ margin: var(--spacing-large) 0;
1809
+ }
1810
+
1811
+ /* Empty fields and missing values */
1812
+ .missing-value {
1813
+ background-color: #fef2f2;
1814
+ color: var(--color-error);
1815
+ padding: var(--spacing-xsmall) var(--spacing-small);
1816
+ border-radius: 4px;
1817
+ border: var(--border-width) dashed var(--color-error);
1818
+ font-style: italic;
1819
+ }
1820
+
1821
+ /* Tables
1822
+ ========================================================================== */
1823
+ .table-responsive {
1824
+ overflow-x: auto;
1825
+ -webkit-overflow-scrolling: touch;
1826
+ margin: var(--spacing-medium) 0;
1827
+ }
1828
+
1829
+ table {
1830
+ width: 100%;
1831
+ border-collapse: collapse;
1832
+ margin: var(--spacing-medium) 0;
1833
+ table-layout: fixed;
1834
+ background-color: var(--color-bg);
1835
+ }
1836
+
1837
+ th,
1838
+ td {
1839
+ border: var(--border-width) solid #e2e8f0;
1840
+ padding: var(--spacing-small) var(--spacing-medium);
1841
+ text-align: left;
1842
+ vertical-align: top;
1843
+ }
1844
+
1845
+ th {
1846
+ background-color: #f8fafc;
1847
+ font-weight: 600;
1848
+ color: var(--color-primary);
1849
+ }
1850
+
1851
+ /* Signature table
1852
+ ========================================================================== */
1853
+ .signatures {
1854
+ page-break-inside: avoid;
1855
+ margin-top: var(--spacing-xlarge);
1856
+ border: none;
1857
+ }
1858
+
1859
+ .signatures th {
1860
+ display: none; /* Hide headers while maintaining structure */
1861
+ }
1862
+
1863
+ .signatures th,
1864
+ .signatures td {
1865
+ padding: var(--spacing-medium);
1866
+ text-align: left;
1867
+ border: none;
1868
+ border-bottom: 2px solid var(--color-primary);
1869
+ }
1870
+
1871
+ /* Two-column layout: 1/3 for labels, 2/3 for signatures */
1872
+ .signatures th:first-child,
1873
+ .signatures td:first-child {
1874
+ width: 33.33%;
1875
+ font-weight: 600;
1876
+ color: var(--color-primary);
1877
+ }
1878
+
1879
+ .signatures th:last-child,
1880
+ .signatures td:last-child {
1881
+ width: 66.67%;
1882
+ }
1883
+
1884
+ .signatures td:last-child {
1885
+ height: 6em;
1886
+ vertical-align: bottom;
1887
+ font-weight: normal;
1888
+ }
1889
+
1890
+ /* Table of contents
1891
+ ========================================================================== */
1892
+ .table-of-contents {
1893
+ background-color: #f8fafc;
1894
+ border: var(--border-width) solid #e2e8f0;
1895
+ border-radius: var(--border-radius);
1896
+ padding: var(--spacing-medium);
1897
+ margin: var(--spacing-large) 0;
1898
+ }
1899
+
1900
+ .table-of-contents li {
1901
+ margin-bottom: var(--spacing-small);
1902
+ list-style-type: none;
1903
+ }
1904
+
1905
+ /* Confidential section
1906
+ ========================================================================== */
1907
+ .confidential {
1908
+ width: 100%;
1909
+ background-color: var(--color-accent) !important;
1910
+ color: white !important;
1911
+ font-weight: bold !important;
1912
+ text-align: center !important;
1913
+ padding: var(--spacing-medium) 0 !important;
1914
+ margin: var(--spacing-large) 0 !important;
1915
+ text-transform: uppercase !important;
1916
+ letter-spacing: 1px !important;
1917
+ display: block !important;
1918
+ border-radius: var(--border-radius) !important;
1919
+ -webkit-print-color-adjust: exact !important;
1920
+ print-color-adjust: exact !important;
1921
+ }
1922
+
1923
+ /* Separator section
1924
+ ========================================================================== */
1925
+ .separator {
1926
+ width: 100%;
1927
+ background-color: var(--color-primary) !important;
1928
+ color: white !important;
1929
+ font-weight: bold !important;
1930
+ text-align: center !important;
1931
+ padding: var(--spacing-small) 0 !important;
1932
+ margin: var(--spacing-large) 0 var(--spacing-medium) !important;
1933
+ text-transform: uppercase !important;
1934
+ letter-spacing: 1px !important;
1935
+ display: block !important;
1936
+ border-radius: var(--border-radius) !important;
1937
+ -webkit-print-color-adjust: exact !important;
1938
+ print-color-adjust: exact !important;
1939
+ }
1940
+
1941
+ /* Algorithm blocks
1942
+ ========================================================================== */
1943
+ .algorithm {
1944
+ background-color: #f8fafc;
1945
+ border: var(--border-width) solid #e2e8f0;
1946
+ border-left: 4px solid var(--color-accent);
1947
+ border-radius: var(--border-radius);
1948
+ padding: var(--spacing-medium);
1949
+ margin: var(--spacing-medium) 0;
1950
+ font-family: var(--font-mono);
1951
+ font-size: 0.9em;
1952
+ line-height: 1.4;
1953
+ }
1954
+
1955
+ .algorithm pre {
1956
+ margin: 0;
1957
+ white-space: pre-wrap;
1958
+ background: none;
1959
+ border: none;
1960
+ padding: 0;
1961
+ }
1962
+
1963
+ /* Utilities
1964
+ ========================================================================== */
1965
+ .no-break {
1966
+ page-break-inside: avoid !important;
1967
+ }
1968
+
1969
+ .page-break-before {
1970
+ page-break-before: always !important;
1971
+ }
1972
+
1973
+ .text-center {
1974
+ text-align: center !important;
1975
+ }
1976
+
1977
+ .text-muted {
1978
+ color: var(--color-muted) !important;
1979
+ }
1980
+
1981
+ /* Print optimizations
1982
+ ========================================================================== */
1983
+ @media print {
1984
+ /* Page setup */
1985
+ @page {
1986
+ size: A4;
1987
+ margin: 20mm 15mm 15mm 15mm;
1988
+ }
1989
+
1990
+ body {
1991
+ font-size: 11pt;
1992
+ color: black;
1993
+ max-width: 100%;
1994
+ margin: 0;
1995
+ padding: 0;
1996
+ }
1997
+
1998
+ /* Links */
1999
+ a {
2000
+ text-decoration: none;
2001
+ color: var(--color-link);
2002
+ }
2003
+
2004
+ /* Internal links */
2005
+ a[href^='#'] {
2006
+ color: var(--color-link);
2007
+ text-decoration: none;
2008
+ }
2009
+
2010
+ a[data-internal-link='true'] {
2011
+ color: var(--color-link) !important;
2012
+ text-decoration: none !important;
2013
+ }
2014
+
2015
+ /* Show URLs after external links */
2016
+ a[href^='http']:after {
2017
+ content: ' (' attr(href) ')';
2018
+ font-size: 90%;
2019
+ color: var(--color-muted);
2020
+ }
2021
+
2022
+ /* Page break control */
2023
+ h1, h2, h3, h4, h5, h6 {
2024
+ page-break-after: avoid;
2025
+ }
2026
+
2027
+ p, li {
2028
+ page-break-inside: avoid;
2029
+ }
2030
+
2031
+ ul, ol {
2032
+ page-break-inside: auto;
2033
+ }
2034
+
2035
+ img {
2036
+ page-break-inside: avoid;
2037
+ max-width: 100%;
2038
+ }
2039
+
2040
+ /* Maintain colors in print */
2041
+ .confidential,
2042
+ .separator {
2043
+ background-color: var(--color-accent) !important;
2044
+ color: white !important;
2045
+ -webkit-print-color-adjust: exact !important;
2046
+ print-color-adjust: exact !important;
2047
+ }
2048
+
2049
+ .algorithm {
2050
+ break-inside: avoid;
2051
+ -webkit-print-color-adjust: exact;
2052
+ print-color-adjust: exact;
2053
+ }
2054
+
2055
+ /* Remove backgrounds for better printing */
2056
+ pre,
2057
+ code {
2058
+ background-color: transparent !important;
2059
+ border: 1px solid #ccc !important;
2060
+ }
2061
+ }
2062
+ `,
2063
+
2064
+
1588
2065
  'modern': `/* Modern Clean Style */
1589
2066
  .preview-container {
1590
2067
  font-family: 'Segoe UI', system-ui, sans-serif;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "legal-markdown-js",
3
- "version": "2.6.2",
3
+ "version": "2.6.4",
4
4
  "description": "Node.js implementation of LegalMarkdown for processing legal documents with markdown and YAML - Complete feature parity with Ruby version",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -9,7 +9,7 @@
9
9
  "build:ts": "tsc && tsc-alias",
10
10
  "build:styles": "mkdir -p dist/styles && cp -r $(node scripts/build-paths.js styles)/* dist/styles/ 2>/dev/null || true",
11
11
  "build:assets": "mkdir -p dist/assets && cp -r $(node scripts/build-paths.js images)/* dist/assets/ 2>/dev/null || true",
12
- "build:web": "cp -r src/web dist/",
12
+ "build:web": "node scripts/build-web.js",
13
13
  "build:copy-umd": "cp dist/legal-markdown.umd.min.js dist/web/",
14
14
  "build:umd": "webpack --mode production --config webpack.config.js",
15
15
  "build:watch": "tsc --watch",