abstract-document 6.0.2 → 6.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +58 -58
- package/LICENSE +21 -0
- package/README.md +45 -45
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/group.js +90 -90
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/header-and-footer.js +69 -69
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/hello.js +51 -51
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/mixed-hyperlink-and-textrun.js +115 -115
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/mixed-textrun-and-images.js +169 -169
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/multiple-images.js +141 -141
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/multiple-tables.js +467 -467
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-center-alignment.js +97 -97
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-end-alignment.js +97 -97
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-start-alignment-that-linebreaks.js +96 -96
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-start-alignment.js +96 -96
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/page-numbering.js +102 -102
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/simple-table.js +167 -167
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-hyperlink.js +70 -70
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-image.js +97 -97
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-center-alignment-that-linebreaks.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-center-alignment.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-end-alignment-that-linebreaks.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-end-alignment.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-start-alignment-that-linebreaks.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-start-alignment.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun.js +68 -68
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/world.js +51 -51
- package/lib/{abstract-document/__tests__/markdown/test-defs/markdown.d.ts → abstract-document-exporters/__tests__/pdf/test-defs/simple-table-auto-cell-widths.d.ts} +1 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-auto-cell-widths.d.ts.map +1 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-auto-cell-widths.js +105 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-auto-cell-widths.js.map +1 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-fixed-cell-widths.d.ts +3 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-fixed-cell-widths.d.ts.map +1 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-fixed-cell-widths.js +104 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-fixed-cell-widths.js.map +1 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-hex.d.ts.map +1 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-hex.js +0 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-hex.js.map +1 -1
- package/lib/abstract-document-exporters/__tests__/{docx2/test-defs/table-of-content-separator.d.ts → pdf/test-defs/single-image-svg-color-url.d.ts} +1 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-url.d.ts.map +1 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-url.js +108 -0
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-url.js.map +1 -0
- package/lib/abstract-document-exporters/pdf/render-image.js +2 -2
- package/lib/abstract-document-exporters/pdf/render-image.js.map +1 -1
- package/package.json +4 -3
- package/src/abstract-document/__tests__/hello-world-abstract-doc.ts +245 -245
- package/src/abstract-document/__tests__/markdown/export-test-def.ts +10 -10
- package/src/abstract-document/__tests__/markdown/export.test.tsx +15 -15
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-bold-italic.tsx +30 -30
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-bold.tsx +30 -30
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-empty-keepTogether.tsx +43 -43
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-header.tsx +37 -37
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-italic.tsx +30 -30
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-keepTogether.tsx +50 -50
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-subscript.tsx +44 -44
- package/src/abstract-document/__tests__/markdown/test-defs/markdown-superscript.tsx +37 -37
- package/src/abstract-document/__tests__/model-builder._test.ts +48 -48
- package/src/abstract-document/abstract-doc.ts +19 -19
- package/src/abstract-document/atoms/atom.ts +14 -14
- package/src/abstract-document/atoms/hyper-link.ts +27 -27
- package/src/abstract-document/atoms/image.ts +21 -21
- package/src/abstract-document/atoms/link-target.ts +15 -15
- package/src/abstract-document/atoms/text-field.ts +36 -36
- package/src/abstract-document/atoms/text-run.ts +25 -25
- package/src/abstract-document/atoms/toc-separator.ts +14 -14
- package/src/abstract-document/default-styles.ts +145 -145
- package/src/abstract-document/index.ts +83 -83
- package/src/abstract-document/markdown/markdown.ts +142 -142
- package/src/abstract-document/markdown/types.ts +78 -78
- package/src/abstract-document/numberings/numbering-definition.ts +17 -17
- package/src/abstract-document/numberings/numbering-format.ts +7 -7
- package/src/abstract-document/numberings/numbering-level-definition.ts +42 -42
- package/src/abstract-document/numberings/numbering.ts +3 -3
- package/src/abstract-document/page/master-page.ts +23 -23
- package/src/abstract-document/page/section.ts +27 -27
- package/src/abstract-document/primitives/font.ts +37 -37
- package/src/abstract-document/primitives/image-resource.ts +27 -27
- package/src/abstract-document/primitives/layout-foundation.ts +37 -37
- package/src/abstract-document/primitives/length.ts +11 -11
- package/src/abstract-document/primitives/point.ts +11 -11
- package/src/abstract-document/primitives/rect.ts +15 -15
- package/src/abstract-document/primitives/size.ts +13 -13
- package/src/abstract-document/resources.ts +101 -101
- package/src/abstract-document/section-elements/group.ts +25 -25
- package/src/abstract-document/section-elements/page-break.ts +14 -14
- package/src/abstract-document/section-elements/paragraph-numbering.ts +6 -6
- package/src/abstract-document/section-elements/paragraph.ts +30 -30
- package/src/abstract-document/section-elements/section-element.ts +6 -6
- package/src/abstract-document/section-elements/table.ts +37 -37
- package/src/abstract-document/styles/page-style.ts +76 -76
- package/src/abstract-document/styles/paragraph-style.ts +45 -45
- package/src/abstract-document/styles/style-key.ts +5 -5
- package/src/abstract-document/styles/style.ts +44 -44
- package/src/abstract-document/styles/table-cell-style.ts +54 -54
- package/src/abstract-document/styles/table-style.ts +45 -45
- package/src/abstract-document/styles/text-style.ts +73 -73
- package/src/abstract-document/table/table-cell.ts +29 -29
- package/src/abstract-document/table/table-row.ts +17 -17
- package/src/abstract-document/types.ts +3 -3
- package/src/abstract-document-exporters/__tests__/docx2/export-test-def.ts +10 -10
- package/src/abstract-document-exporters/__tests__/docx2/export.test.tsx +67 -67
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/group.tsx +114 -114
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/header-and-footer.tsx +110 -110
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/hello.tsx +70 -70
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/mixed-hyperlink-and-textrun.tsx +137 -137
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/mixed-textrun-and-images.tsx +212 -212
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/multiple-images.tsx +182 -182
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/multiple-tables.tsx +553 -553
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-center-alignment.tsx +119 -119
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-end-alignment.tsx +119 -119
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-start-alignment-that-linebreaks.tsx +121 -121
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/multiple-textrun-with-start-alignment.tsx +118 -118
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/page-numbering.tsx +123 -123
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/simple-table.tsx +210 -210
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-hyperlink.tsx +89 -89
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-image.tsx +137 -137
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-center-alignment-that-linebreaks.tsx +88 -88
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-center-alignment.tsx +88 -88
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-end-alignment-that-linebreaks.tsx +88 -88
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-end-alignment.tsx +88 -88
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-start-alignment-that-linebreaks.tsx +88 -88
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun-with-start-alignment.tsx +88 -88
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/single-textrun.tsx +87 -87
- package/src/abstract-document-exporters/__tests__/docx2/test-defs/world.tsx +70 -70
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Group.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Header and footer.docx and b/package/src/abstract-document-exporters/__tests__/docx2/tmp/Header → footer.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Mixed hyperlink and textrun.docx and b/package/src/abstract-document-exporters/__tests__/docx2/tmp/Mixed hyperlink → textrun.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Mixed textrun and images.docx and b/package/src/abstract-document-exporters/__tests__/docx2/tmp/Mixed textrun → images.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple images.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple tables.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple textrun with Center alignment.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple textrun with End alignment.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple textrun with Start alignment that linebreaks.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple textrun with Start alignment.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Page numbering.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Simple table.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single hyperlink.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single image.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun with Center alignment that linebreaks.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun with Center alignment.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun with End alignment that linebreaks.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun with End alignment.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun with Start alignment that linebreaks.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun with Start alignment.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Single textrun.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/hello.docx +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/world.docx +0 -0
- package/src/abstract-document-exporters/__tests__/pdf/export-test-def.ts +10 -10
- package/src/abstract-document-exporters/__tests__/pdf/export.test.tsx +46 -46
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/date.tsx +66 -66
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/group-paragraphs.tsx +1291 -1291
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/group-tables.tsx +1314 -1314
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/header-and-footer.tsx +162 -162
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/hello.tsx +45 -45
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/margins-header-body-footer.tsx +1008 -1008
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/mixed-hyperlink-and-textrun.tsx +113 -113
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/mixed-textrun-and-images.tsx +104 -104
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/multiple-images.tsx +71 -71
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/multiple-textrun-with-center-alignment.tsx +98 -98
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/multiple-textrun-with-end-alignment.tsx +98 -98
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/multiple-textrun-with-start-alignment-that-linebreaks.tsx +116 -116
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/multiple-textrun-with-start-alignment.tsx +98 -98
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/page-numbering.tsx +97 -97
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/pagebreak.tsx +102 -102
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-all-auto-cell-widths.tsx +119 -119
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-all-fixed-cell-widths.tsx +119 -119
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-cell-padding-image.tsx +200 -200
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-cell-padding-text.tsx +338 -338
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-center-alignment.tsx +114 -114
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-mix-auto-fix-cell-widths.tsx +119 -119
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-padding.tsx +115 -115
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-right-alignment.tsx +115 -115
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-row-alignment.tsx +297 -297
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-text-alignment-in-cell-wrapping.tsx +491 -491
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/simple-table-text-alignment-in-cell.tsx +248 -248
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-hyperlink.tsx +65 -65
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-hex.tsx +272 -273
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-name.tsx +272 -272
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-image-svg-color-url.tsx +97 -0
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-image.tsx +70 -70
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun-with-center-alignment-that-linebreaks.tsx +81 -81
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun-with-center-alignment.tsx +66 -66
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun-with-end-alignment-that-linebreaks.tsx +81 -81
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun-with-end-alignment.tsx +66 -66
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun-with-start-alignment-that-linebreaks.tsx +81 -81
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun-with-start-alignment.tsx +66 -66
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/single-textrun.tsx +45 -45
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/table-of-content-separator.tsx +81 -81
- package/src/abstract-document-exporters/__tests__/pdf/test-defs/world.tsx +45 -45
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Group Paragraphs.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Group Paratraphs.pdf +912 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Group Tables.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Group.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Header and footer.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Margins header body footer.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Margins header body footer1.pdf +640 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Margins header body footer2.pdf +609 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Margins header body footer3.pdf +1188 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Margins header body footer4.pdf +1188 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Mixed hyperlink and textrun.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Mixed textrun and images.pdf and b/package/src/abstract-document-exporters/__tests__/pdf/tmp/Mixed textrun → images.pdf +0 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Multiple images.pdf +0 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Multiple textrun with Center alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Multiple textrun with End alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Multiple textrun with Start alignment that linebreaks.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Multiple textrun with Start alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Page numbering.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table all auto.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table all fix.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table auto.pdf +133 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table cell padding of image.pdf +0 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table cell padding of text.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table center alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table mix auto fix.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table one auto.pdf +133 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table padding.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table padding1.pdf +133 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table right alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table row alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table text alignment in cell with wrapping.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table text alignment in cell.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Simple table.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single date.pdf +14 -14
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single hyperlink.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single image svg color hex.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single image svg color name.pdf +179 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single image svg color url.pdf +222 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single image svg color.pdf +179 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single image.pdf +0 -0
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun with Center alignment that linebreaks.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun with Center alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun with End alignment that linebreaks.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun with End alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun with Start alignment that linebreaks.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun with Start alignment.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Single textrun.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/Table of content separator.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/hello.pdf +2 -2
- package/src/abstract-document-exporters/__tests__/pdf/tmp/world.pdf +2 -2
- package/src/abstract-document-exporters/docx/document-container.ts +18 -18
- package/src/abstract-document-exporters/docx/docx-constants.ts +46 -46
- package/src/abstract-document-exporters/docx/docx-document-renderer.ts +1084 -1084
- package/src/abstract-document-exporters/docx/ref-container.ts +53 -53
- package/src/abstract-document-exporters/docx/string-utils.ts +39 -39
- package/src/abstract-document-exporters/docx/xml-writer.ts +333 -333
- package/src/abstract-document-exporters/docx2/render-image.ts +159 -159
- package/src/abstract-document-exporters/docx2/render.ts +476 -476
- package/src/abstract-document-exporters/index.ts +5 -5
- package/src/abstract-document-exporters/pdf/font.ts +67 -67
- package/src/abstract-document-exporters/pdf/measure.ts +410 -410
- package/src/abstract-document-exporters/pdf/paginate.ts +337 -337
- package/src/abstract-document-exporters/pdf/pre-process.ts +363 -363
- package/src/abstract-document-exporters/pdf/render-image.ts +189 -189
- package/src/abstract-document-exporters/pdf/render.ts +752 -752
- package/src/abstract-document-exporters/pdf/update-refs.ts +163 -163
- package/src/abstract-document-exporters/shared/get_resources.ts +71 -71
- package/src/abstract-document-jsx/index.ts +86 -86
- package/src/index.ts +5 -5
- package/lib/abstract-document/__tests__/markdown/test-defs/markdown.d.ts.map +0 -1
- package/lib/abstract-document/__tests__/markdown/test-defs/markdown.js +0 -14
- package/lib/abstract-document/__tests__/markdown/test-defs/markdown.js.map +0 -1
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/table-of-content-separator.d.ts.map +0 -1
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/table-of-content-separator.js +0 -18
- package/lib/abstract-document-exporters/__tests__/docx2/test-defs/table-of-content-separator.js.map +0 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-date.d.ts +0 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-date.d.ts.map +0 -1
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-date.js +0 -70
- package/lib/abstract-document-exporters/__tests__/pdf/test-defs/single-date.js.map +0 -1
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Multiple tables.zip +0 -0
- package/src/abstract-document-exporters/__tests__/docx2/tmp/Table of content separator.docx +0 -0
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import * as TextStyle from "../styles/text-style";
|
|
2
|
-
|
|
3
|
-
export interface HyperLink {
|
|
4
|
-
readonly type: "HyperLink";
|
|
5
|
-
readonly styleName: string;
|
|
6
|
-
readonly text: string;
|
|
7
|
-
readonly target: string;
|
|
8
|
-
readonly style: TextStyle.TextStyle;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export interface HyperLinkProps {
|
|
12
|
-
readonly styleName?: string;
|
|
13
|
-
readonly text: string;
|
|
14
|
-
readonly target: string;
|
|
15
|
-
readonly style?: TextStyle.TextStyle;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function create(props: HyperLinkProps): HyperLink {
|
|
19
|
-
const { styleName = "", text, target, style = TextStyle.create() } = props;
|
|
20
|
-
return {
|
|
21
|
-
type: "HyperLink",
|
|
22
|
-
styleName,
|
|
23
|
-
text,
|
|
24
|
-
target,
|
|
25
|
-
style
|
|
26
|
-
};
|
|
27
|
-
}
|
|
1
|
+
import * as TextStyle from "../styles/text-style";
|
|
2
|
+
|
|
3
|
+
export interface HyperLink {
|
|
4
|
+
readonly type: "HyperLink";
|
|
5
|
+
readonly styleName: string;
|
|
6
|
+
readonly text: string;
|
|
7
|
+
readonly target: string;
|
|
8
|
+
readonly style: TextStyle.TextStyle;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface HyperLinkProps {
|
|
12
|
+
readonly styleName?: string;
|
|
13
|
+
readonly text: string;
|
|
14
|
+
readonly target: string;
|
|
15
|
+
readonly style?: TextStyle.TextStyle;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function create(props: HyperLinkProps): HyperLink {
|
|
19
|
+
const { styleName = "", text, target, style = TextStyle.create() } = props;
|
|
20
|
+
return {
|
|
21
|
+
type: "HyperLink",
|
|
22
|
+
styleName,
|
|
23
|
+
text,
|
|
24
|
+
target,
|
|
25
|
+
style
|
|
26
|
+
};
|
|
27
|
+
}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { ImageResource } from "../primitives/image-resource";
|
|
2
|
-
|
|
3
|
-
export interface Image {
|
|
4
|
-
readonly type: "Image";
|
|
5
|
-
readonly imageResource: ImageResource;
|
|
6
|
-
readonly width: number;
|
|
7
|
-
readonly height: number;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface ImageProps {
|
|
11
|
-
readonly imageResource: ImageResource;
|
|
12
|
-
readonly width: number;
|
|
13
|
-
readonly height: number;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function create(props: ImageProps): Image {
|
|
17
|
-
return {
|
|
18
|
-
type: "Image",
|
|
19
|
-
...props
|
|
20
|
-
};
|
|
21
|
-
}
|
|
1
|
+
import { ImageResource } from "../primitives/image-resource";
|
|
2
|
+
|
|
3
|
+
export interface Image {
|
|
4
|
+
readonly type: "Image";
|
|
5
|
+
readonly imageResource: ImageResource;
|
|
6
|
+
readonly width: number;
|
|
7
|
+
readonly height: number;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface ImageProps {
|
|
11
|
+
readonly imageResource: ImageResource;
|
|
12
|
+
readonly width: number;
|
|
13
|
+
readonly height: number;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function create(props: ImageProps): Image {
|
|
17
|
+
return {
|
|
18
|
+
type: "Image",
|
|
19
|
+
...props
|
|
20
|
+
};
|
|
21
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
export interface LinkTarget {
|
|
2
|
-
readonly type: "LinkTarget";
|
|
3
|
-
readonly name: string;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
export interface LinkTargetProps {
|
|
7
|
-
readonly name: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export function create(props: LinkTargetProps): LinkTarget {
|
|
11
|
-
return {
|
|
12
|
-
type: "LinkTarget",
|
|
13
|
-
name: props.name
|
|
14
|
-
};
|
|
15
|
-
}
|
|
1
|
+
export interface LinkTarget {
|
|
2
|
+
readonly type: "LinkTarget";
|
|
3
|
+
readonly name: string;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
export interface LinkTargetProps {
|
|
7
|
+
readonly name: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export function create(props: LinkTargetProps): LinkTarget {
|
|
11
|
+
return {
|
|
12
|
+
type: "LinkTarget",
|
|
13
|
+
name: props.name
|
|
14
|
+
};
|
|
15
|
+
}
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import * as TextStyle from "../styles/text-style";
|
|
2
|
-
|
|
3
|
-
export type FieldType = "Date" | "PageNumber" | "TotalPages" | "PageNumberOf";
|
|
4
|
-
|
|
5
|
-
export interface TextField {
|
|
6
|
-
readonly type: "TextField";
|
|
7
|
-
readonly styleName: string;
|
|
8
|
-
readonly fieldType: FieldType;
|
|
9
|
-
readonly style: TextStyle.TextStyle;
|
|
10
|
-
readonly target: string;
|
|
11
|
-
readonly text: string;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface TextFieldProps {
|
|
15
|
-
readonly styleName?: string;
|
|
16
|
-
readonly fieldType: FieldType;
|
|
17
|
-
readonly style?: TextStyle.TextStyle;
|
|
18
|
-
readonly target?: string;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export function create(props: TextFieldProps): TextField {
|
|
22
|
-
const {
|
|
23
|
-
styleName = "",
|
|
24
|
-
fieldType,
|
|
25
|
-
style = TextStyle.create(),
|
|
26
|
-
target = ""
|
|
27
|
-
} = props;
|
|
28
|
-
return {
|
|
29
|
-
type: "TextField",
|
|
30
|
-
styleName,
|
|
31
|
-
fieldType,
|
|
32
|
-
style,
|
|
33
|
-
target,
|
|
34
|
-
text: ""
|
|
35
|
-
};
|
|
36
|
-
}
|
|
1
|
+
import * as TextStyle from "../styles/text-style";
|
|
2
|
+
|
|
3
|
+
export type FieldType = "Date" | "PageNumber" | "TotalPages" | "PageNumberOf";
|
|
4
|
+
|
|
5
|
+
export interface TextField {
|
|
6
|
+
readonly type: "TextField";
|
|
7
|
+
readonly styleName: string;
|
|
8
|
+
readonly fieldType: FieldType;
|
|
9
|
+
readonly style: TextStyle.TextStyle;
|
|
10
|
+
readonly target: string;
|
|
11
|
+
readonly text: string;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface TextFieldProps {
|
|
15
|
+
readonly styleName?: string;
|
|
16
|
+
readonly fieldType: FieldType;
|
|
17
|
+
readonly style?: TextStyle.TextStyle;
|
|
18
|
+
readonly target?: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function create(props: TextFieldProps): TextField {
|
|
22
|
+
const {
|
|
23
|
+
styleName = "",
|
|
24
|
+
fieldType,
|
|
25
|
+
style = TextStyle.create(),
|
|
26
|
+
target = ""
|
|
27
|
+
} = props;
|
|
28
|
+
return {
|
|
29
|
+
type: "TextField",
|
|
30
|
+
styleName,
|
|
31
|
+
fieldType,
|
|
32
|
+
style,
|
|
33
|
+
target,
|
|
34
|
+
text: ""
|
|
35
|
+
};
|
|
36
|
+
}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import * as TextStyle from "../styles/text-style";
|
|
2
|
-
|
|
3
|
-
export interface TextRun {
|
|
4
|
-
readonly type: "TextRun";
|
|
5
|
-
readonly styleName: string;
|
|
6
|
-
readonly nestedStyleNames?: ReadonlyArray<string>;
|
|
7
|
-
readonly text: string;
|
|
8
|
-
readonly style?: TextStyle.TextStyle;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export interface TextRunProps {
|
|
12
|
-
readonly styleName?: string;
|
|
13
|
-
readonly text: string;
|
|
14
|
-
readonly style?: TextStyle.TextStyle;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export function create(props: TextRunProps): TextRun {
|
|
18
|
-
const { styleName = "", text, style = TextStyle.create() } = props;
|
|
19
|
-
return {
|
|
20
|
-
type: "TextRun",
|
|
21
|
-
styleName,
|
|
22
|
-
text,
|
|
23
|
-
style
|
|
24
|
-
};
|
|
25
|
-
}
|
|
1
|
+
import * as TextStyle from "../styles/text-style";
|
|
2
|
+
|
|
3
|
+
export interface TextRun {
|
|
4
|
+
readonly type: "TextRun";
|
|
5
|
+
readonly styleName: string;
|
|
6
|
+
readonly nestedStyleNames?: ReadonlyArray<string>;
|
|
7
|
+
readonly text: string;
|
|
8
|
+
readonly style?: TextStyle.TextStyle;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface TextRunProps {
|
|
12
|
+
readonly styleName?: string;
|
|
13
|
+
readonly text: string;
|
|
14
|
+
readonly style?: TextStyle.TextStyle;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export function create(props: TextRunProps): TextRun {
|
|
18
|
+
const { styleName = "", text, style = TextStyle.create() } = props;
|
|
19
|
+
return {
|
|
20
|
+
type: "TextRun",
|
|
21
|
+
styleName,
|
|
22
|
+
text,
|
|
23
|
+
style
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
// TODO: This should be part of some kind of table of content API that better maps to Word file generation.
|
|
2
|
-
// TocSeparator would correspond to docx <w:fldChar w:fldCharType="separate"/> element.
|
|
3
|
-
|
|
4
|
-
export interface TocSeparator {
|
|
5
|
-
readonly type: "TocSeparator";
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface TocSeparatorProps {}
|
|
9
|
-
|
|
10
|
-
export function create(_props: TocSeparatorProps): TocSeparator {
|
|
11
|
-
return {
|
|
12
|
-
type: "TocSeparator"
|
|
13
|
-
};
|
|
14
|
-
}
|
|
1
|
+
// TODO: This should be part of some kind of table of content API that better maps to Word file generation.
|
|
2
|
+
// TocSeparator would correspond to docx <w:fldChar w:fldCharType="separate"/> element.
|
|
3
|
+
|
|
4
|
+
export interface TocSeparator {
|
|
5
|
+
readonly type: "TocSeparator";
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface TocSeparatorProps {}
|
|
9
|
+
|
|
10
|
+
export function create(_props: TocSeparatorProps): TocSeparator {
|
|
11
|
+
return {
|
|
12
|
+
type: "TocSeparator"
|
|
13
|
+
};
|
|
14
|
+
}
|
|
@@ -1,145 +1,145 @@
|
|
|
1
|
-
import * as R from "ramda";
|
|
2
|
-
// import {ParagraphStyle, StyleKey, TableStyle, TextStyle, TableCellStyle, LayoutFoundation, Style} from "./index";
|
|
3
|
-
import * as LayoutFoundation from "./primitives/layout-foundation";
|
|
4
|
-
import * as ParagraphStyle from "./styles/paragraph-style";
|
|
5
|
-
import * as Style from "./styles/style";
|
|
6
|
-
import * as StyleKey from "./styles/style-key";
|
|
7
|
-
import * as TableCellStyle from "./styles/table-cell-style";
|
|
8
|
-
import * as TableStyle from "./styles/table-style";
|
|
9
|
-
import * as TextStyle from "./styles/text-style";
|
|
10
|
-
import { Indexer } from "./types";
|
|
11
|
-
|
|
12
|
-
export const defaultAndStandardStyles = createDefaultAndStandardStyles();
|
|
13
|
-
|
|
14
|
-
export function createDefaultAndStandardStyles(): Indexer<Style.Style> {
|
|
15
|
-
return { ...createDefaultStyles(), ...createStandardStyles() };
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function createStandardStyles(): Indexer<Style.Style> {
|
|
19
|
-
return createStyles([
|
|
20
|
-
// Markdown styles START --> //
|
|
21
|
-
[
|
|
22
|
-
"H1",
|
|
23
|
-
ParagraphStyle.create({
|
|
24
|
-
textStyle: TextStyle.create({ bold: true, fontSize: 32 }),
|
|
25
|
-
margins: LayoutFoundation.create({ top: 32 / 4, bottom: 32 / 16 })
|
|
26
|
-
})
|
|
27
|
-
],
|
|
28
|
-
[
|
|
29
|
-
"H2",
|
|
30
|
-
ParagraphStyle.create({
|
|
31
|
-
textStyle: TextStyle.create({ bold: true, fontSize: 24 }),
|
|
32
|
-
margins: LayoutFoundation.create({ top: 24 / 4, bottom: 24 / 16 })
|
|
33
|
-
})
|
|
34
|
-
],
|
|
35
|
-
[
|
|
36
|
-
"H3",
|
|
37
|
-
ParagraphStyle.create({
|
|
38
|
-
textStyle: TextStyle.create({ bold: true, fontSize: 18 }),
|
|
39
|
-
margins: LayoutFoundation.create({ top: 18 / 4, bottom: 18 / 16 })
|
|
40
|
-
})
|
|
41
|
-
],
|
|
42
|
-
[
|
|
43
|
-
"H4",
|
|
44
|
-
ParagraphStyle.create({
|
|
45
|
-
textStyle: TextStyle.create({ bold: true, fontSize: 15 }),
|
|
46
|
-
margins: LayoutFoundation.create({ top: 15 / 4, bottom: 15 / 16 })
|
|
47
|
-
})
|
|
48
|
-
],
|
|
49
|
-
[
|
|
50
|
-
"H5",
|
|
51
|
-
ParagraphStyle.create({
|
|
52
|
-
textStyle: TextStyle.create({ bold: true, fontSize: 13 }),
|
|
53
|
-
margins: LayoutFoundation.create({ top: 13 / 4, bottom: 13 / 16 })
|
|
54
|
-
})
|
|
55
|
-
],
|
|
56
|
-
[
|
|
57
|
-
"H6",
|
|
58
|
-
ParagraphStyle.create({
|
|
59
|
-
textStyle: TextStyle.create({ bold: true, fontSize: 10 }),
|
|
60
|
-
margins: LayoutFoundation.create({ top: 10 / 4, bottom: 10 / 16 })
|
|
61
|
-
})
|
|
62
|
-
],
|
|
63
|
-
["Emphasis", TextStyle.create({ italic: true })],
|
|
64
|
-
["Strong", TextStyle.create({ bold: true })],
|
|
65
|
-
["Subscript", TextStyle.create({ subScript: true, fontSize: 6 })],
|
|
66
|
-
["Superscript", TextStyle.create({ superScript: true, fontSize: 6 })]
|
|
67
|
-
// <-- Markdown styles END //
|
|
68
|
-
]);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
function createStyles(
|
|
72
|
-
tuples: Array<[string, Style.Style]>
|
|
73
|
-
): Indexer<Style.Style> {
|
|
74
|
-
return R.fromPairs(
|
|
75
|
-
tuples.map(
|
|
76
|
-
s =>
|
|
77
|
-
[StyleKey.create(s[1].type, s[0]), s[1]] as R.KeyValuePair<
|
|
78
|
-
StyleKey.StyleKey,
|
|
79
|
-
Style.Style
|
|
80
|
-
>
|
|
81
|
-
)
|
|
82
|
-
);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export function createDefaultStyles(): Indexer<Style.Style> {
|
|
86
|
-
const paragraphStyle = defaultParagraphStyle();
|
|
87
|
-
const textStyle = defaultTextStyle();
|
|
88
|
-
const tableStyle = defaultTableStyle();
|
|
89
|
-
const tableCellStyle = defaultTableCellStyle();
|
|
90
|
-
return {
|
|
91
|
-
[StyleKey.create(paragraphStyle.type, "Default")]: paragraphStyle,
|
|
92
|
-
[StyleKey.create(textStyle.type, "Default")]: textStyle,
|
|
93
|
-
[StyleKey.create(tableStyle.type, "Default")]: tableStyle,
|
|
94
|
-
[StyleKey.create(tableCellStyle.type, "Default")]: tableCellStyle
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
function defaultParagraphStyle(): ParagraphStyle.ParagraphStyle {
|
|
99
|
-
return ParagraphStyle.create({
|
|
100
|
-
alignment: "Start",
|
|
101
|
-
margins: LayoutFoundation.create({
|
|
102
|
-
top: 0,
|
|
103
|
-
bottom: 0,
|
|
104
|
-
left: 0,
|
|
105
|
-
right: 0
|
|
106
|
-
}),
|
|
107
|
-
textStyle: defaultTextStyle()
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
function defaultTextStyle(): TextStyle.TextStyle {
|
|
112
|
-
return TextStyle.create({
|
|
113
|
-
fontFamily: "Helvetica",
|
|
114
|
-
fontSize: 10,
|
|
115
|
-
underline: false,
|
|
116
|
-
bold: false,
|
|
117
|
-
italic: false,
|
|
118
|
-
subScript: false,
|
|
119
|
-
superScript: false
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
function defaultTableStyle(): TableStyle.TableStyle {
|
|
124
|
-
return TableStyle.create({
|
|
125
|
-
alignment: "Left"
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
function defaultTableCellStyle(): TableCellStyle.TableCellStyle {
|
|
130
|
-
return TableCellStyle.create({
|
|
131
|
-
borders: LayoutFoundation.create({
|
|
132
|
-
top: 0,
|
|
133
|
-
bottom: 0,
|
|
134
|
-
left: 0,
|
|
135
|
-
right: 0
|
|
136
|
-
}),
|
|
137
|
-
padding: LayoutFoundation.create({
|
|
138
|
-
top: 0,
|
|
139
|
-
bottom: 0,
|
|
140
|
-
left: 0,
|
|
141
|
-
right: 0
|
|
142
|
-
}),
|
|
143
|
-
verticalAlignment: "Middle"
|
|
144
|
-
});
|
|
145
|
-
}
|
|
1
|
+
import * as R from "ramda";
|
|
2
|
+
// import {ParagraphStyle, StyleKey, TableStyle, TextStyle, TableCellStyle, LayoutFoundation, Style} from "./index";
|
|
3
|
+
import * as LayoutFoundation from "./primitives/layout-foundation";
|
|
4
|
+
import * as ParagraphStyle from "./styles/paragraph-style";
|
|
5
|
+
import * as Style from "./styles/style";
|
|
6
|
+
import * as StyleKey from "./styles/style-key";
|
|
7
|
+
import * as TableCellStyle from "./styles/table-cell-style";
|
|
8
|
+
import * as TableStyle from "./styles/table-style";
|
|
9
|
+
import * as TextStyle from "./styles/text-style";
|
|
10
|
+
import { Indexer } from "./types";
|
|
11
|
+
|
|
12
|
+
export const defaultAndStandardStyles = createDefaultAndStandardStyles();
|
|
13
|
+
|
|
14
|
+
export function createDefaultAndStandardStyles(): Indexer<Style.Style> {
|
|
15
|
+
return { ...createDefaultStyles(), ...createStandardStyles() };
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function createStandardStyles(): Indexer<Style.Style> {
|
|
19
|
+
return createStyles([
|
|
20
|
+
// Markdown styles START --> //
|
|
21
|
+
[
|
|
22
|
+
"H1",
|
|
23
|
+
ParagraphStyle.create({
|
|
24
|
+
textStyle: TextStyle.create({ bold: true, fontSize: 32 }),
|
|
25
|
+
margins: LayoutFoundation.create({ top: 32 / 4, bottom: 32 / 16 })
|
|
26
|
+
})
|
|
27
|
+
],
|
|
28
|
+
[
|
|
29
|
+
"H2",
|
|
30
|
+
ParagraphStyle.create({
|
|
31
|
+
textStyle: TextStyle.create({ bold: true, fontSize: 24 }),
|
|
32
|
+
margins: LayoutFoundation.create({ top: 24 / 4, bottom: 24 / 16 })
|
|
33
|
+
})
|
|
34
|
+
],
|
|
35
|
+
[
|
|
36
|
+
"H3",
|
|
37
|
+
ParagraphStyle.create({
|
|
38
|
+
textStyle: TextStyle.create({ bold: true, fontSize: 18 }),
|
|
39
|
+
margins: LayoutFoundation.create({ top: 18 / 4, bottom: 18 / 16 })
|
|
40
|
+
})
|
|
41
|
+
],
|
|
42
|
+
[
|
|
43
|
+
"H4",
|
|
44
|
+
ParagraphStyle.create({
|
|
45
|
+
textStyle: TextStyle.create({ bold: true, fontSize: 15 }),
|
|
46
|
+
margins: LayoutFoundation.create({ top: 15 / 4, bottom: 15 / 16 })
|
|
47
|
+
})
|
|
48
|
+
],
|
|
49
|
+
[
|
|
50
|
+
"H5",
|
|
51
|
+
ParagraphStyle.create({
|
|
52
|
+
textStyle: TextStyle.create({ bold: true, fontSize: 13 }),
|
|
53
|
+
margins: LayoutFoundation.create({ top: 13 / 4, bottom: 13 / 16 })
|
|
54
|
+
})
|
|
55
|
+
],
|
|
56
|
+
[
|
|
57
|
+
"H6",
|
|
58
|
+
ParagraphStyle.create({
|
|
59
|
+
textStyle: TextStyle.create({ bold: true, fontSize: 10 }),
|
|
60
|
+
margins: LayoutFoundation.create({ top: 10 / 4, bottom: 10 / 16 })
|
|
61
|
+
})
|
|
62
|
+
],
|
|
63
|
+
["Emphasis", TextStyle.create({ italic: true })],
|
|
64
|
+
["Strong", TextStyle.create({ bold: true })],
|
|
65
|
+
["Subscript", TextStyle.create({ subScript: true, fontSize: 6 })],
|
|
66
|
+
["Superscript", TextStyle.create({ superScript: true, fontSize: 6 })]
|
|
67
|
+
// <-- Markdown styles END //
|
|
68
|
+
]);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
function createStyles(
|
|
72
|
+
tuples: Array<[string, Style.Style]>
|
|
73
|
+
): Indexer<Style.Style> {
|
|
74
|
+
return R.fromPairs(
|
|
75
|
+
tuples.map(
|
|
76
|
+
s =>
|
|
77
|
+
[StyleKey.create(s[1].type, s[0]), s[1]] as R.KeyValuePair<
|
|
78
|
+
StyleKey.StyleKey,
|
|
79
|
+
Style.Style
|
|
80
|
+
>
|
|
81
|
+
)
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export function createDefaultStyles(): Indexer<Style.Style> {
|
|
86
|
+
const paragraphStyle = defaultParagraphStyle();
|
|
87
|
+
const textStyle = defaultTextStyle();
|
|
88
|
+
const tableStyle = defaultTableStyle();
|
|
89
|
+
const tableCellStyle = defaultTableCellStyle();
|
|
90
|
+
return {
|
|
91
|
+
[StyleKey.create(paragraphStyle.type, "Default")]: paragraphStyle,
|
|
92
|
+
[StyleKey.create(textStyle.type, "Default")]: textStyle,
|
|
93
|
+
[StyleKey.create(tableStyle.type, "Default")]: tableStyle,
|
|
94
|
+
[StyleKey.create(tableCellStyle.type, "Default")]: tableCellStyle
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function defaultParagraphStyle(): ParagraphStyle.ParagraphStyle {
|
|
99
|
+
return ParagraphStyle.create({
|
|
100
|
+
alignment: "Start",
|
|
101
|
+
margins: LayoutFoundation.create({
|
|
102
|
+
top: 0,
|
|
103
|
+
bottom: 0,
|
|
104
|
+
left: 0,
|
|
105
|
+
right: 0
|
|
106
|
+
}),
|
|
107
|
+
textStyle: defaultTextStyle()
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
function defaultTextStyle(): TextStyle.TextStyle {
|
|
112
|
+
return TextStyle.create({
|
|
113
|
+
fontFamily: "Helvetica",
|
|
114
|
+
fontSize: 10,
|
|
115
|
+
underline: false,
|
|
116
|
+
bold: false,
|
|
117
|
+
italic: false,
|
|
118
|
+
subScript: false,
|
|
119
|
+
superScript: false
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
function defaultTableStyle(): TableStyle.TableStyle {
|
|
124
|
+
return TableStyle.create({
|
|
125
|
+
alignment: "Left"
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
function defaultTableCellStyle(): TableCellStyle.TableCellStyle {
|
|
130
|
+
return TableCellStyle.create({
|
|
131
|
+
borders: LayoutFoundation.create({
|
|
132
|
+
top: 0,
|
|
133
|
+
bottom: 0,
|
|
134
|
+
left: 0,
|
|
135
|
+
right: 0
|
|
136
|
+
}),
|
|
137
|
+
padding: LayoutFoundation.create({
|
|
138
|
+
top: 0,
|
|
139
|
+
bottom: 0,
|
|
140
|
+
left: 0,
|
|
141
|
+
right: 0
|
|
142
|
+
}),
|
|
143
|
+
verticalAlignment: "Middle"
|
|
144
|
+
});
|
|
145
|
+
}
|