@fiduswriter/document 0.1.0-alpha.3 → 0.1.0-alpha.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.
- package/README.md +22 -1
- package/dist/bibliography/common.d.ts +92 -0
- package/dist/bibliography/common.d.ts.map +1 -0
- package/dist/bibliography/common.js +85 -0
- package/dist/bibliography/common.js.map +1 -0
- package/dist/bibliography/csl_bib.d.ts +3 -0
- package/dist/bibliography/csl_bib.d.ts.map +1 -0
- package/dist/bibliography/csl_bib.js +131 -0
- package/dist/bibliography/csl_bib.js.map +1 -0
- package/dist/citations/citeproc_sys.d.ts +13 -0
- package/dist/citations/citeproc_sys.d.ts.map +1 -0
- package/dist/citations/citeproc_sys.js +43 -0
- package/dist/citations/citeproc_sys.js.map +1 -0
- package/dist/citations/format.d.ts +23 -0
- package/dist/citations/format.d.ts.map +1 -0
- package/dist/citations/format.js +161 -0
- package/dist/citations/format.js.map +1 -0
- package/dist/editor/e2ee/encryptor.d.ts +123 -0
- package/dist/editor/e2ee/encryptor.d.ts.map +1 -0
- package/dist/editor/e2ee/encryptor.js +201 -0
- package/dist/editor/e2ee/encryptor.js.map +1 -0
- package/dist/exporter/docx/citations.d.ts +21 -0
- package/dist/exporter/docx/citations.d.ts.map +1 -0
- package/dist/exporter/docx/citations.js +154 -0
- package/dist/exporter/docx/citations.js.map +1 -0
- package/dist/exporter/docx/comments.d.ts +18 -0
- package/dist/exporter/docx/comments.d.ts.map +1 -0
- package/dist/exporter/docx/comments.js +137 -0
- package/dist/exporter/docx/comments.js.map +1 -0
- package/dist/exporter/docx/footnotes.d.ts +42 -0
- package/dist/exporter/docx/footnotes.d.ts.map +1 -0
- package/dist/exporter/docx/footnotes.js +182 -0
- package/dist/exporter/docx/footnotes.js.map +1 -0
- package/dist/exporter/docx/images.d.ts +14 -0
- package/dist/exporter/docx/images.d.ts.map +1 -0
- package/dist/exporter/docx/images.js +86 -0
- package/dist/exporter/docx/images.js.map +1 -0
- package/dist/exporter/docx/index.d.ts +22 -0
- package/dist/exporter/docx/index.d.ts.map +1 -0
- package/dist/exporter/docx/index.js +107 -0
- package/dist/exporter/docx/index.js.map +1 -0
- package/dist/exporter/docx/lists.d.ts +33 -0
- package/dist/exporter/docx/lists.d.ts.map +1 -0
- package/dist/exporter/docx/lists.js +229 -0
- package/dist/exporter/docx/lists.js.map +1 -0
- package/dist/exporter/docx/math.d.ts +13 -0
- package/dist/exporter/docx/math.d.ts.map +1 -0
- package/dist/exporter/docx/math.js +42 -0
- package/dist/exporter/docx/math.js.map +1 -0
- package/dist/exporter/docx/metadata.d.ts +14 -0
- package/dist/exporter/docx/metadata.d.ts.map +1 -0
- package/dist/exporter/docx/metadata.js +239 -0
- package/dist/exporter/docx/metadata.js.map +1 -0
- package/dist/exporter/docx/rels.d.ts +25 -0
- package/dist/exporter/docx/rels.d.ts.map +1 -0
- package/dist/exporter/docx/rels.js +168 -0
- package/dist/exporter/docx/rels.js.map +1 -0
- package/dist/exporter/docx/render.d.ts +20 -0
- package/dist/exporter/docx/render.d.ts.map +1 -0
- package/dist/exporter/docx/render.js +774 -0
- package/dist/exporter/docx/render.js.map +1 -0
- package/dist/exporter/docx/richtext.d.ts +25 -0
- package/dist/exporter/docx/richtext.d.ts.map +1 -0
- package/dist/exporter/docx/richtext.js +1052 -0
- package/dist/exporter/docx/richtext.js.map +1 -0
- package/dist/exporter/docx/tables.d.ts +14 -0
- package/dist/exporter/docx/tables.d.ts.map +1 -0
- package/dist/exporter/docx/tables.js +109 -0
- package/dist/exporter/docx/tables.js.map +1 -0
- package/dist/exporter/docx/tools.d.ts +3 -0
- package/dist/exporter/docx/tools.d.ts.map +1 -0
- package/dist/exporter/docx/tools.js +48 -0
- package/dist/exporter/docx/tools.js.map +1 -0
- package/dist/exporter/epub/index.d.ts +11 -0
- package/dist/exporter/epub/index.d.ts.map +1 -0
- package/dist/exporter/epub/index.js +102 -0
- package/dist/exporter/epub/index.js.map +1 -0
- package/dist/exporter/epub/templates.d.ts +32 -0
- package/dist/exporter/epub/templates.d.ts.map +1 -0
- package/dist/exporter/epub/templates.js +95 -0
- package/dist/exporter/epub/templates.js.map +1 -0
- package/dist/exporter/epub/tools.d.ts +5 -0
- package/dist/exporter/epub/tools.d.ts.map +1 -0
- package/dist/exporter/epub/tools.js +81 -0
- package/dist/exporter/epub/tools.js.map +1 -0
- package/dist/exporter/html/citations.d.ts +27 -0
- package/dist/exporter/html/citations.d.ts.map +1 -0
- package/dist/exporter/html/citations.js +91 -0
- package/dist/exporter/html/citations.js.map +1 -0
- package/dist/exporter/html/convert.d.ts +100 -0
- package/dist/exporter/html/convert.d.ts.map +1 -0
- package/dist/exporter/html/convert.js +718 -0
- package/dist/exporter/html/convert.js.map +1 -0
- package/dist/exporter/html/index.d.ts +61 -0
- package/dist/exporter/html/index.d.ts.map +1 -0
- package/dist/exporter/html/index.js +134 -0
- package/dist/exporter/html/index.js.map +1 -0
- package/dist/exporter/html/templates.d.ts +10 -0
- package/dist/exporter/html/templates.d.ts.map +1 -0
- package/dist/exporter/html/templates.js +21 -0
- package/dist/exporter/html/templates.js.map +1 -0
- package/dist/exporter/html/tools.d.ts +2 -0
- package/dist/exporter/html/tools.d.ts.map +1 -0
- package/dist/exporter/html/tools.js +49 -0
- package/dist/exporter/html/tools.js.map +1 -0
- package/dist/exporter/jats/bibliography.d.ts +2 -0
- package/dist/exporter/jats/bibliography.d.ts.map +1 -0
- package/dist/exporter/jats/bibliography.js +153 -0
- package/dist/exporter/jats/bibliography.js.map +1 -0
- package/dist/exporter/jats/citations.d.ts +14 -0
- package/dist/exporter/jats/citations.d.ts.map +1 -0
- package/dist/exporter/jats/citations.js +83 -0
- package/dist/exporter/jats/citations.js.map +1 -0
- package/dist/exporter/jats/convert.d.ts +45 -0
- package/dist/exporter/jats/convert.d.ts.map +1 -0
- package/dist/exporter/jats/convert.js +799 -0
- package/dist/exporter/jats/convert.js.map +1 -0
- package/dist/exporter/jats/index.d.ts +19 -0
- package/dist/exporter/jats/index.d.ts.map +1 -0
- package/dist/exporter/jats/index.js +66 -0
- package/dist/exporter/jats/index.js.map +1 -0
- package/dist/exporter/jats/templates.d.ts +16 -0
- package/dist/exporter/jats/templates.d.ts.map +1 -0
- package/dist/exporter/jats/templates.js +25 -0
- package/dist/exporter/jats/templates.js.map +1 -0
- package/dist/exporter/jats/text.d.ts +3 -0
- package/dist/exporter/jats/text.d.ts.map +1 -0
- package/dist/exporter/jats/text.js +72 -0
- package/dist/exporter/jats/text.js.map +1 -0
- package/dist/exporter/latex/convert.d.ts +27 -0
- package/dist/exporter/latex/convert.d.ts.map +1 -0
- package/dist/exporter/latex/convert.js +865 -0
- package/dist/exporter/latex/convert.js.map +1 -0
- package/dist/exporter/latex/escape_latex.d.ts +2 -0
- package/dist/exporter/latex/escape_latex.d.ts.map +1 -0
- package/dist/exporter/latex/escape_latex.js +20 -0
- package/dist/exporter/latex/escape_latex.js.map +1 -0
- package/dist/exporter/latex/index.d.ts +23 -0
- package/dist/exporter/latex/index.d.ts.map +1 -0
- package/dist/exporter/latex/index.js +57 -0
- package/dist/exporter/latex/index.js.map +1 -0
- package/dist/exporter/latex/readme.d.ts +2 -0
- package/dist/exporter/latex/readme.d.ts.map +1 -0
- package/dist/exporter/latex/readme.js +23 -0
- package/dist/exporter/latex/readme.js.map +1 -0
- package/dist/exporter/native/shrink.d.ts +21 -0
- package/dist/exporter/native/shrink.d.ts.map +1 -0
- package/dist/exporter/native/shrink.js +115 -0
- package/dist/exporter/native/shrink.js.map +1 -0
- package/dist/exporter/odt/citations.d.ts +18 -0
- package/dist/exporter/odt/citations.d.ts.map +1 -0
- package/dist/exporter/odt/citations.js +87 -0
- package/dist/exporter/odt/citations.js.map +1 -0
- package/dist/exporter/odt/footnotes.d.ts +25 -0
- package/dist/exporter/odt/footnotes.d.ts.map +1 -0
- package/dist/exporter/odt/footnotes.js +112 -0
- package/dist/exporter/odt/footnotes.js.map +1 -0
- package/dist/exporter/odt/images.d.ts +13 -0
- package/dist/exporter/odt/images.d.ts.map +1 -0
- package/dist/exporter/odt/images.js +98 -0
- package/dist/exporter/odt/images.js.map +1 -0
- package/dist/exporter/odt/index.d.ts +23 -0
- package/dist/exporter/odt/index.d.ts.map +1 -0
- package/dist/exporter/odt/index.js +99 -0
- package/dist/exporter/odt/index.js.map +1 -0
- package/dist/exporter/odt/math.d.ts +13 -0
- package/dist/exporter/odt/math.d.ts.map +1 -0
- package/dist/exporter/odt/math.js +48 -0
- package/dist/exporter/odt/math.js.map +1 -0
- package/dist/exporter/odt/metadata.d.ts +14 -0
- package/dist/exporter/odt/metadata.d.ts.map +1 -0
- package/dist/exporter/odt/metadata.js +203 -0
- package/dist/exporter/odt/metadata.js.map +1 -0
- package/dist/exporter/odt/render.d.ts +24 -0
- package/dist/exporter/odt/render.d.ts.map +1 -0
- package/dist/exporter/odt/render.js +644 -0
- package/dist/exporter/odt/render.js.map +1 -0
- package/dist/exporter/odt/richtext.d.ts +22 -0
- package/dist/exporter/odt/richtext.d.ts.map +1 -0
- package/dist/exporter/odt/richtext.js +728 -0
- package/dist/exporter/odt/richtext.js.map +1 -0
- package/dist/exporter/odt/styles.d.ts +33 -0
- package/dist/exporter/odt/styles.d.ts.map +1 -0
- package/dist/exporter/odt/styles.js +348 -0
- package/dist/exporter/odt/styles.js.map +1 -0
- package/dist/exporter/odt/track.d.ts +11 -0
- package/dist/exporter/odt/track.d.ts.map +1 -0
- package/dist/exporter/odt/track.js +59 -0
- package/dist/exporter/odt/track.js.map +1 -0
- package/dist/exporter/pandoc/citations.d.ts +17 -0
- package/dist/exporter/pandoc/citations.d.ts.map +1 -0
- package/dist/exporter/pandoc/citations.js +85 -0
- package/dist/exporter/pandoc/citations.js.map +1 -0
- package/dist/exporter/pandoc/convert.d.ts +38 -0
- package/dist/exporter/pandoc/convert.d.ts.map +1 -0
- package/dist/exporter/pandoc/convert.js +881 -0
- package/dist/exporter/pandoc/convert.js.map +1 -0
- package/dist/exporter/pandoc/index.d.ts +38 -0
- package/dist/exporter/pandoc/index.d.ts.map +1 -0
- package/dist/exporter/pandoc/index.js +67 -0
- package/dist/exporter/pandoc/index.js.map +1 -0
- package/dist/exporter/pandoc/readme.d.ts +2 -0
- package/dist/exporter/pandoc/readme.d.ts.map +1 -0
- package/dist/exporter/pandoc/readme.js +9 -0
- package/dist/exporter/pandoc/readme.js.map +1 -0
- package/dist/exporter/pandoc/tools.d.ts +6 -0
- package/dist/exporter/pandoc/tools.d.ts.map +1 -0
- package/dist/exporter/pandoc/tools.js +52 -0
- package/dist/exporter/pandoc/tools.js.map +1 -0
- package/dist/exporter/print/index.d.ts +9 -0
- package/dist/exporter/print/index.d.ts.map +1 -0
- package/dist/exporter/print/index.js +140 -0
- package/dist/exporter/print/index.js.map +1 -0
- package/dist/exporter/tools/doc_content.d.ts +7 -0
- package/dist/exporter/tools/doc_content.d.ts.map +1 -0
- package/dist/exporter/tools/doc_content.js +129 -0
- package/dist/exporter/tools/doc_content.js.map +1 -0
- package/dist/exporter/tools/file.d.ts +2 -0
- package/dist/exporter/tools/file.d.ts.map +1 -0
- package/dist/exporter/tools/file.js +10 -0
- package/dist/exporter/tools/file.js.map +1 -0
- package/dist/exporter/tools/json.d.ts +7 -0
- package/dist/exporter/tools/json.d.ts.map +1 -0
- package/dist/exporter/tools/json.js +82 -0
- package/dist/exporter/tools/json.js.map +1 -0
- package/dist/exporter/tools/svg.d.ts +2 -0
- package/dist/exporter/tools/svg.d.ts.map +1 -0
- package/dist/exporter/tools/svg.js +26 -0
- package/dist/exporter/tools/svg.js.map +1 -0
- package/dist/exporter/tools/xml.d.ts +41 -0
- package/dist/exporter/tools/xml.d.ts.map +1 -0
- package/dist/exporter/tools/xml.js +440 -0
- package/dist/exporter/tools/xml.js.map +1 -0
- package/dist/exporter/tools/xml_zip.d.ts +20 -0
- package/dist/exporter/tools/xml_zip.d.ts.map +1 -0
- package/dist/exporter/tools/xml_zip.js +86 -0
- package/dist/exporter/tools/xml_zip.js.map +1 -0
- package/dist/exporter/tools/zip.d.ts +21 -0
- package/dist/exporter/tools/zip.d.ts.map +1 -0
- package/dist/exporter/tools/zip.js +71 -0
- package/dist/exporter/tools/zip.js.map +1 -0
- package/dist/exporter/tools/zotero_csl.d.ts +10 -0
- package/dist/exporter/tools/zotero_csl.d.ts.map +1 -0
- package/dist/exporter/tools/zotero_csl.js +78 -0
- package/dist/exporter/tools/zotero_csl.js.map +1 -0
- package/dist/importer/citations.d.ts +25 -0
- package/dist/importer/citations.d.ts.map +1 -0
- package/dist/importer/citations.js +116 -0
- package/dist/importer/citations.js.map +1 -0
- package/dist/importer/docx/citations.d.ts +65 -0
- package/dist/importer/docx/citations.d.ts.map +1 -0
- package/dist/importer/docx/citations.js +106 -0
- package/dist/importer/docx/citations.js.map +1 -0
- package/dist/importer/docx/convert.d.ts +228 -0
- package/dist/importer/docx/convert.d.ts.map +1 -0
- package/dist/importer/docx/convert.js +1226 -0
- package/dist/importer/docx/convert.js.map +1 -0
- package/dist/importer/docx/helpers.d.ts +2 -0
- package/dist/importer/docx/helpers.d.ts.map +1 -0
- package/dist/importer/docx/helpers.js +10 -0
- package/dist/importer/docx/helpers.js.map +1 -0
- package/dist/importer/docx/omml2mathml.d.ts +7 -0
- package/dist/importer/docx/omml2mathml.d.ts.map +1 -0
- package/dist/importer/docx/omml2mathml.js +1239 -0
- package/dist/importer/docx/omml2mathml.js.map +1 -0
- package/dist/importer/docx/parse.d.ts +205 -0
- package/dist/importer/docx/parse.d.ts.map +1 -0
- package/dist/importer/docx/parse.js +663 -0
- package/dist/importer/docx/parse.js.map +1 -0
- package/dist/importer/native/get_images.d.ts +11 -0
- package/dist/importer/native/get_images.d.ts.map +1 -0
- package/dist/importer/native/get_images.js +64 -0
- package/dist/importer/native/get_images.js.map +1 -0
- package/dist/importer/native/update.d.ts +6 -0
- package/dist/importer/native/update.d.ts.map +1 -0
- package/dist/importer/native/update.js +26 -0
- package/dist/importer/native/update.js.map +1 -0
- package/dist/importer/odt/citations.d.ts +47 -0
- package/dist/importer/odt/citations.d.ts.map +1 -0
- package/dist/importer/odt/citations.js +79 -0
- package/dist/importer/odt/citations.js.map +1 -0
- package/dist/importer/odt/convert.d.ts +330 -0
- package/dist/importer/odt/convert.d.ts.map +1 -0
- package/dist/importer/odt/convert.js +1506 -0
- package/dist/importer/odt/convert.js.map +1 -0
- package/dist/importer/pandoc/convert.d.ts +84 -0
- package/dist/importer/pandoc/convert.d.ts.map +1 -0
- package/dist/importer/pandoc/convert.js +777 -0
- package/dist/importer/pandoc/convert.js.map +1 -0
- package/dist/importer/pandoc/helpers.d.ts +4 -0
- package/dist/importer/pandoc/helpers.d.ts.map +1 -0
- package/dist/importer/pandoc/helpers.js +75 -0
- package/dist/importer/pandoc/helpers.js.map +1 -0
- package/dist/importer/zip_analyzer.d.ts +25 -0
- package/dist/importer/zip_analyzer.d.ts.map +1 -0
- package/dist/importer/zip_analyzer.js +84 -0
- package/dist/importer/zip_analyzer.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/mathlive/opf_includes.d.ts +2 -0
- package/dist/mathlive/opf_includes.d.ts.map +1 -0
- package/dist/mathlive/opf_includes.js +25 -0
- package/dist/mathlive/opf_includes.js.map +1 -0
- package/dist/schema/common/annotate.d.ts +59 -0
- package/dist/schema/common/annotate.d.ts.map +1 -0
- package/dist/schema/common/annotate.js +75 -0
- package/dist/schema/common/annotate.js.map +1 -0
- package/dist/schema/common/base.d.ts +109 -0
- package/dist/schema/common/base.d.ts.map +1 -0
- package/dist/schema/common/base.js +109 -0
- package/dist/schema/common/base.js.map +1 -0
- package/dist/schema/common/citation.d.ts +29 -0
- package/dist/schema/common/citation.d.ts.map +1 -0
- package/dist/schema/common/citation.js +62 -0
- package/dist/schema/common/citation.js.map +1 -0
- package/dist/schema/common/equation.d.ts +18 -0
- package/dist/schema/common/equation.d.ts.map +1 -0
- package/dist/schema/common/equation.js +32 -0
- package/dist/schema/common/equation.js.map +1 -0
- package/dist/schema/common/figure.d.ts +108 -0
- package/dist/schema/common/figure.d.ts.map +1 -0
- package/dist/schema/common/figure.js +176 -0
- package/dist/schema/common/figure.js.map +1 -0
- package/dist/schema/common/heading.d.ts +33 -0
- package/dist/schema/common/heading.d.ts.map +1 -0
- package/dist/schema/common/heading.js +41 -0
- package/dist/schema/common/heading.js.map +1 -0
- package/dist/schema/common/index.d.ts +11 -0
- package/dist/schema/common/index.d.ts.map +1 -0
- package/dist/schema/common/index.js +11 -0
- package/dist/schema/common/index.js.map +1 -0
- package/dist/schema/common/list.d.ts +83 -0
- package/dist/schema/common/list.d.ts.map +1 -0
- package/dist/schema/common/list.js +92 -0
- package/dist/schema/common/list.js.map +1 -0
- package/dist/schema/common/reference.d.ts +78 -0
- package/dist/schema/common/reference.d.ts.map +1 -0
- package/dist/schema/common/reference.js +97 -0
- package/dist/schema/common/reference.js.map +1 -0
- package/dist/schema/common/table.d.ts +92 -0
- package/dist/schema/common/table.d.ts.map +1 -0
- package/dist/schema/common/table.js +85 -0
- package/dist/schema/common/table.js.map +1 -0
- package/dist/schema/common/track.d.ts +131 -0
- package/dist/schema/common/track.d.ts.map +1 -0
- package/dist/schema/common/track.js +184 -0
- package/dist/schema/common/track.js.map +1 -0
- package/dist/schema/const.d.ts +3 -0
- package/dist/schema/const.d.ts.map +1 -0
- package/{src → dist}/schema/const.js +3 -3
- package/dist/schema/const.js.map +1 -0
- package/dist/schema/convert.d.ts +3 -0
- package/dist/schema/convert.d.ts.map +1 -0
- package/dist/schema/convert.js +1215 -0
- package/dist/schema/convert.js.map +1 -0
- package/dist/schema/document/content.d.ts +137 -0
- package/dist/schema/document/content.d.ts.map +1 -0
- package/dist/schema/document/content.js +177 -0
- package/dist/schema/document/content.js.map +1 -0
- package/dist/schema/document/index.d.ts +879 -0
- package/dist/schema/document/index.d.ts.map +1 -0
- package/dist/schema/document/index.js +68 -0
- package/dist/schema/document/index.js.map +1 -0
- package/dist/schema/document/structure.d.ts +273 -0
- package/dist/schema/document/structure.d.ts.map +1 -0
- package/dist/schema/document/structure.js +445 -0
- package/dist/schema/document/structure.js.map +1 -0
- package/dist/schema/export.d.ts +880 -0
- package/dist/schema/export.d.ts.map +1 -0
- package/dist/schema/export.js +16 -0
- package/dist/schema/export.js.map +1 -0
- package/dist/schema/footnotes.d.ts +499 -0
- package/dist/schema/footnotes.d.ts.map +1 -0
- package/dist/schema/footnotes.js +88 -0
- package/dist/schema/footnotes.js.map +1 -0
- package/dist/schema/footnotes_convert.d.ts +5 -0
- package/dist/schema/footnotes_convert.d.ts.map +1 -0
- package/dist/schema/footnotes_convert.js +26 -0
- package/dist/schema/footnotes_convert.js.map +1 -0
- package/dist/schema/i18n.d.ts +586 -0
- package/dist/schema/i18n.d.ts.map +1 -0
- package/dist/schema/i18n.js +585 -0
- package/dist/schema/i18n.js.map +1 -0
- package/dist/schema/index.d.ts +6 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +6 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/schema/mini_json.d.ts +5 -0
- package/dist/schema/mini_json.d.ts.map +1 -0
- package/dist/schema/mini_json.js +50 -0
- package/dist/schema/mini_json.js.map +1 -0
- package/dist/schema/text.d.ts +2 -0
- package/dist/schema/text.d.ts.map +1 -0
- package/dist/schema/text.js +23 -0
- package/dist/schema/text.js.map +1 -0
- package/dist/types.d.ts +122 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +9 -0
- package/dist/types.js.map +1 -0
- package/package.json +48 -16
- package/scripts/export-schema.js +1 -1
- package/src/exporter/tools/{file.js → file.ts} +1 -1
- package/src/exporter/tools/{json.js → json.ts} +30 -19
- package/src/global.d.ts +11 -0
- package/src/schema/const.ts +58 -0
- package/src/types.ts +136 -0
- package/jest.config.js +0 -24
- /package/src/{index.js → index.ts} +0 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export class DOCXExporterLists {
|
|
2
|
+
constructor(docContent: any, xml: any, rels: any);
|
|
3
|
+
docContent: any;
|
|
4
|
+
xml: any;
|
|
5
|
+
rels: any;
|
|
6
|
+
useBulletList: boolean;
|
|
7
|
+
usedNumberedList: any[];
|
|
8
|
+
styleXML: boolean;
|
|
9
|
+
numberingXML: boolean;
|
|
10
|
+
abstractNumIdCounter: number;
|
|
11
|
+
numIdCounter: number;
|
|
12
|
+
bulletType: boolean;
|
|
13
|
+
numberFormat: string;
|
|
14
|
+
numberedTypes: any[];
|
|
15
|
+
styleFilePath: string;
|
|
16
|
+
numberingFilePath: string;
|
|
17
|
+
ctFilePath: string;
|
|
18
|
+
init(): Promise<void> | Promise<any[]>;
|
|
19
|
+
initCt(): any;
|
|
20
|
+
ctXML: any;
|
|
21
|
+
addRelsToCt(): void;
|
|
22
|
+
findLists(): void;
|
|
23
|
+
addNumberingXml(): any;
|
|
24
|
+
addListParagraphStyle(): any;
|
|
25
|
+
addUsedListTypes(): void;
|
|
26
|
+
numberedAbstractType: number | undefined;
|
|
27
|
+
getBulletType(): boolean;
|
|
28
|
+
getNumberedType(): any;
|
|
29
|
+
addBulletNumType(numId: any, abstractNumId: any): void;
|
|
30
|
+
addNumberedNumType(numId: any, start: any): void;
|
|
31
|
+
addNumberedAbstractNumType(abstractNumId: any, start: any): void;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=lists.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lists.d.ts","sourceRoot":"","sources":["../../../src/exporter/docx/lists.js"],"names":[],"mappings":"AAoBA;IACI,kDAmBC;IAlBG,gBAA4B;IAC5B,SAAc;IACd,UAAgB;IAChB,uBAA0B;IAC1B,wBAA0B;IAC1B,kBAAqB;IACrB,sBAAyB;IACzB,6BAA6B;IAC7B,qBAAqB;IAIrB,oBAAuB;IACvB,qBAA6B;IAC7B,qBAAuB;IACvB,sBAAsC;IACtC,0BAA6C;IAC7C,mBAAuC;IAG3C,uCA0BC;IAED,cAMC;IAJO,WAAkB;IAM1B,oBAUC;IAED,kBAQC;IAED,uBASC;IAED,6BAWC;IAED,yBAqDC;IAPO,yCAAqD;IAS7D,yBAEC;IAED,uBAEC;IAED,uDAgCC;IAED,iDASC;IAED,iEA0BC;CACJ"}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import { descendantNodes } from "../tools/doc_content.js";
|
|
2
|
+
const DEFAULT_LISTPARAGRAPH_XML = `
|
|
3
|
+
<w:style w:type="paragraph" w:styleId="ListParagraph">
|
|
4
|
+
<w:name w:val="List Paragraph"/>
|
|
5
|
+
<w:basedOn w:val="Normal"/>
|
|
6
|
+
<w:uiPriority w:val="34"/>
|
|
7
|
+
<w:qFormat/>
|
|
8
|
+
<w:rsid w:val="006E68A6"/>
|
|
9
|
+
<w:pPr>
|
|
10
|
+
<w:ind w:left="720"/>
|
|
11
|
+
<w:contextualSpacing/>
|
|
12
|
+
</w:pPr>
|
|
13
|
+
</w:style>
|
|
14
|
+
`;
|
|
15
|
+
const DEFAULT_NUMBERING_XML = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
16
|
+
<w:numbering xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex" xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex" xmlns:cx2="http://schemas.microsoft.com/office/drawing/2015/10/21/chartex" xmlns:cx3="http://schemas.microsoft.com/office/drawing/2016/5/9/chartex" xmlns:cx4="http://schemas.microsoft.com/office/drawing/2016/5/10/chartex" xmlns:cx5="http://schemas.microsoft.com/office/drawing/2016/5/11/chartex" xmlns:cx6="http://schemas.microsoft.com/office/drawing/2016/5/12/chartex" xmlns:cx7="http://schemas.microsoft.com/office/drawing/2016/5/13/chartex" xmlns:cx8="http://schemas.microsoft.com/office/drawing/2016/5/14/chartex" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:aink="http://schemas.microsoft.com/office/drawing/2016/ink" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" mc:Ignorable="w14 w15 w16se wp14">
|
|
17
|
+
</w:numbering>`;
|
|
18
|
+
export class DOCXExporterLists {
|
|
19
|
+
constructor(docContent, xml, rels) {
|
|
20
|
+
this.docContent = docContent;
|
|
21
|
+
this.xml = xml;
|
|
22
|
+
this.rels = rels;
|
|
23
|
+
this.useBulletList = false;
|
|
24
|
+
this.usedNumberedList = [];
|
|
25
|
+
this.styleXML = false;
|
|
26
|
+
this.numberingXML = false;
|
|
27
|
+
this.abstractNumIdCounter = 0;
|
|
28
|
+
this.numIdCounter = 0;
|
|
29
|
+
// We only need one bulletType for all bullet lists, but a new
|
|
30
|
+
// numberedType for each numbered list so that the numbering starts in 1
|
|
31
|
+
// each time.
|
|
32
|
+
this.bulletType = false;
|
|
33
|
+
this.numberFormat = "decimal";
|
|
34
|
+
this.numberedTypes = [];
|
|
35
|
+
this.styleFilePath = "word/styles.xml";
|
|
36
|
+
this.numberingFilePath = "word/numbering.xml";
|
|
37
|
+
this.ctFilePath = "[Content_Types].xml";
|
|
38
|
+
}
|
|
39
|
+
init() {
|
|
40
|
+
this.findLists();
|
|
41
|
+
if (this.usedNumberedList.length > 0 || this.useBulletList) {
|
|
42
|
+
const p = [];
|
|
43
|
+
p.push(new Promise(resolve => {
|
|
44
|
+
this.initCt().then(() => resolve());
|
|
45
|
+
}));
|
|
46
|
+
p.push(new Promise(resolve => {
|
|
47
|
+
this.addNumberingXml().then(() => resolve());
|
|
48
|
+
}));
|
|
49
|
+
p.push(new Promise(resolve => {
|
|
50
|
+
this.addListParagraphStyle().then(() => resolve());
|
|
51
|
+
}));
|
|
52
|
+
return Promise.all(p);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
return Promise.resolve();
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
initCt() {
|
|
59
|
+
return this.xml.getXml(this.ctFilePath).then(ctXML => {
|
|
60
|
+
this.ctXML = ctXML;
|
|
61
|
+
this.addRelsToCt();
|
|
62
|
+
return Promise.resolve();
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
addRelsToCt() {
|
|
66
|
+
const override = this.ctXML.query("Override", {
|
|
67
|
+
PartName: `/${this.numberingFilePath}`
|
|
68
|
+
});
|
|
69
|
+
if (!override) {
|
|
70
|
+
const types = this.ctXML.query("Types");
|
|
71
|
+
types.appendXML(`<Override PartName="/${this.numberingFilePath}" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml"/>`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
findLists() {
|
|
75
|
+
descendantNodes(this.docContent).forEach(node => {
|
|
76
|
+
if (node.type === "bullet_list") {
|
|
77
|
+
this.useBulletList = true;
|
|
78
|
+
}
|
|
79
|
+
else if (node.type === "ordered_list") {
|
|
80
|
+
this.usedNumberedList.push(node.attrs.order);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
addNumberingXml() {
|
|
85
|
+
return this.xml
|
|
86
|
+
.getXml(this.numberingFilePath, DEFAULT_NUMBERING_XML)
|
|
87
|
+
.then(numberingXML => {
|
|
88
|
+
this.numberingXML = numberingXML;
|
|
89
|
+
this.rels.addNumberingRel();
|
|
90
|
+
this.addUsedListTypes();
|
|
91
|
+
return Promise.resolve();
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
addListParagraphStyle() {
|
|
95
|
+
return this.xml.getXml(this.styleFilePath).then(styleXML => {
|
|
96
|
+
this.styleXML = styleXML;
|
|
97
|
+
if (!this.styleXML.query("w:style", { "w:styleId": "ListParagraph" })) {
|
|
98
|
+
const stylesEl = this.styleXML.query("w:styles");
|
|
99
|
+
stylesEl.appendXML(DEFAULT_LISTPARAGRAPH_XML);
|
|
100
|
+
}
|
|
101
|
+
return Promise.resolve();
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
addUsedListTypes() {
|
|
105
|
+
const allAbstractNum = this.numberingXML.queryAll("w:abstractNum");
|
|
106
|
+
allAbstractNum.forEach(abstractNum => {
|
|
107
|
+
// We check the format for the lowest level list and use the first
|
|
108
|
+
// one we find for 'bullet' or 'not bullet'
|
|
109
|
+
// This means that if a list is defined using anything else than
|
|
110
|
+
// bullets, it will be accepted as the format of
|
|
111
|
+
// the numeric list.
|
|
112
|
+
const levelZeroFormat = abstractNum
|
|
113
|
+
.query("w:lvl", { "w:ilvl": "0" })
|
|
114
|
+
.query("w:numFmt")
|
|
115
|
+
.getAttribute("w:val");
|
|
116
|
+
const abstractNumId = Number.parseInt(abstractNum.getAttribute("w:abstractNumId"));
|
|
117
|
+
if (levelZeroFormat === "bullet" && !this.bulletAbstractType) {
|
|
118
|
+
const numEl = this.numberingXML.query("w:abstractNumId", {
|
|
119
|
+
"w:val": abstractNumId
|
|
120
|
+
}).parentElement;
|
|
121
|
+
const numId = Number.parseInt(numEl.getAttribute("w:numId"));
|
|
122
|
+
this.bulletType = numId;
|
|
123
|
+
}
|
|
124
|
+
else if (levelZeroFormat !== "bullet" && !this.numberFormat) {
|
|
125
|
+
this.numberFormat = levelZeroFormat;
|
|
126
|
+
}
|
|
127
|
+
if (this.abstractNumIdCounter < abstractNumId) {
|
|
128
|
+
this.abstractNumIdCounter = abstractNumId;
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
const allNum = this.numberingXML.queryAll("w:num");
|
|
132
|
+
allNum.forEach(numEl => {
|
|
133
|
+
const numId = Number.parseInt(numEl.getAttribute("w:val"));
|
|
134
|
+
if (this.numIdCounter < numId) {
|
|
135
|
+
this.numIdCounter = numId;
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
if (!this.bulletType && this.useBulletList) {
|
|
139
|
+
this.addBulletNumType(++this.numIdCounter, ++this.abstractNumIdCounter);
|
|
140
|
+
this.bulletType = this.numIdCounter;
|
|
141
|
+
}
|
|
142
|
+
if (this.usedNumberedList.length > 0) {
|
|
143
|
+
this.abstractNumIdCounter++;
|
|
144
|
+
this.numberedAbstractType = this.abstractNumIdCounter;
|
|
145
|
+
}
|
|
146
|
+
for (let i = 0; i < this.usedNumberedList.length; i++) {
|
|
147
|
+
const numId = ++this.numIdCounter;
|
|
148
|
+
this.addNumberedNumType(numId, this.usedNumberedList[i]);
|
|
149
|
+
this.numberedTypes.push(numId);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
getBulletType() {
|
|
153
|
+
return this.bulletType;
|
|
154
|
+
}
|
|
155
|
+
getNumberedType() {
|
|
156
|
+
return this.numberedTypes.shift();
|
|
157
|
+
}
|
|
158
|
+
addBulletNumType(numId, abstractNumId) {
|
|
159
|
+
const numberingEl = this.numberingXML.query("w:numbering");
|
|
160
|
+
numberingEl.appendXML(`
|
|
161
|
+
<w:abstractNum w:abstractNumId="${abstractNumId}" w15:restartNumberingAfterBreak="0">
|
|
162
|
+
<w:nsid w:val="3620195A" />
|
|
163
|
+
<w:multiLevelType w:val="hybridMultilevel" />
|
|
164
|
+
<w:tmpl w:val="A74C9E6A" />
|
|
165
|
+
</w:abstractNum>
|
|
166
|
+
<w:num w:numId="${numId}">
|
|
167
|
+
<w:abstractNumId w:val="${abstractNumId}" />
|
|
168
|
+
</w:num>
|
|
169
|
+
`);
|
|
170
|
+
const newAbstractNum = this.numberingXML.query("w:abstractNum", {
|
|
171
|
+
"w:abstractNumId": String(abstractNumId)
|
|
172
|
+
});
|
|
173
|
+
// Definition seem to always define 9 levels (0-8).
|
|
174
|
+
for (let level = 0; level < 9; level++) {
|
|
175
|
+
newAbstractNum.appendXML(`
|
|
176
|
+
<w:lvl w:ilvl="${level}" w:tplc="04090001" w:tentative="1">
|
|
177
|
+
<w:start w:val="1" />
|
|
178
|
+
<w:numFmt w:val="bullet" />
|
|
179
|
+
<w:lvlText w:val="•" />
|
|
180
|
+
<w:lvlJc w:val="left" />
|
|
181
|
+
<w:pPr>
|
|
182
|
+
<w:ind w:left="${(level + 1) * 720}" w:hanging="360" />
|
|
183
|
+
</w:pPr>
|
|
184
|
+
<w:rPr>
|
|
185
|
+
<w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" />
|
|
186
|
+
</w:rPr>
|
|
187
|
+
</w:lvl>
|
|
188
|
+
`);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
addNumberedNumType(numId, start) {
|
|
192
|
+
this.abstractNumIdCounter++;
|
|
193
|
+
this.addNumberedAbstractNumType(this.abstractNumIdCounter, start);
|
|
194
|
+
const numberingEl = this.numberingXML.query("w:numbering");
|
|
195
|
+
numberingEl.appendXML(`
|
|
196
|
+
<w:num w:numId="${numId}">
|
|
197
|
+
<w:abstractNumId w:val="${this.abstractNumIdCounter}" />
|
|
198
|
+
</w:num>
|
|
199
|
+
`);
|
|
200
|
+
}
|
|
201
|
+
addNumberedAbstractNumType(abstractNumId, start) {
|
|
202
|
+
const numberingEl = this.numberingXML.query("w:numbering");
|
|
203
|
+
numberingEl.appendXML(`
|
|
204
|
+
<w:abstractNum w:abstractNumId="${abstractNumId}" w15:restartNumberingAfterBreak="0">
|
|
205
|
+
<w:nsid w:val="7F6635F3" />
|
|
206
|
+
<w:multiLevelType w:val="hybridMultilevel" />
|
|
207
|
+
<w:tmpl w:val="BFFEF214" />
|
|
208
|
+
</w:abstractNum>
|
|
209
|
+
`);
|
|
210
|
+
const newAbstractNum = this.numberingXML.query("w:abstractNum", {
|
|
211
|
+
"w:abstractNumId": String(abstractNumId)
|
|
212
|
+
});
|
|
213
|
+
// Definition seem to always define 9 levels (0-8).
|
|
214
|
+
for (let level = 0; level < 9; level++) {
|
|
215
|
+
newAbstractNum.appendXML(`
|
|
216
|
+
<w:lvl w:ilvl="${level}" w:tplc="0409000F">
|
|
217
|
+
<w:start w:val="${start}" />
|
|
218
|
+
<w:numFmt w:val="${this.numberFormat}" />
|
|
219
|
+
<w:lvlText w:val="%${level + 1}." />
|
|
220
|
+
<w:lvlJc w:val="left" />
|
|
221
|
+
<w:pPr>
|
|
222
|
+
<w:ind w:left="${(level + 1) * 720}" w:hanging="360" />
|
|
223
|
+
</w:pPr>
|
|
224
|
+
</w:lvl>
|
|
225
|
+
`);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=lists.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lists.js","sourceRoot":"","sources":["../../../src/exporter/docx/lists.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export class DOCXExporterMath {
|
|
2
|
+
constructor(xml: any);
|
|
3
|
+
xml: any;
|
|
4
|
+
fontTableXML: boolean;
|
|
5
|
+
addedCambriaMath: boolean;
|
|
6
|
+
domParser: DOMParser;
|
|
7
|
+
init(): any;
|
|
8
|
+
fontTablesXML: any;
|
|
9
|
+
mathLive: any;
|
|
10
|
+
latexToMathML(latex: any): any;
|
|
11
|
+
getOmml(latex: any): string;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=math.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/exporter/docx/math.js"],"names":[],"mappings":"AAaA;IACI,sBAKC;IAJG,SAAc;IACd,sBAAyB;IACzB,0BAA6B;IAC7B,qBAAgC;IAGpC,YAQC;IAJW,mBAAkC;IAGnB,cAAwB;IAGnD,+BAEC;IAED,4BASC;CACJ"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { mml2omml } from "mathml2omml";
|
|
2
|
+
// Not entirely sure if we need this font here. This is included whenever Word
|
|
3
|
+
// itself adds a formula, but our ooml doesn't refer to the font, so it may be pointless.
|
|
4
|
+
const CAMBRIA_MATH_FONT_DECLARATION = `
|
|
5
|
+
<w:font w:name="Cambria Math">
|
|
6
|
+
<w:panose1 w:val="02040503050406030204" />
|
|
7
|
+
<w:charset w:val="00" />
|
|
8
|
+
<w:family w:val="roman" />
|
|
9
|
+
<w:pitch w:val="variable" />
|
|
10
|
+
<w:sig w:usb0="E00002FF" w:usb1="420024FF" w:usb2="00000000" w:usb3="00000000" w:csb0="0000019F" w:csb1="00000000" />
|
|
11
|
+
</w:font>`;
|
|
12
|
+
export class DOCXExporterMath {
|
|
13
|
+
constructor(xml) {
|
|
14
|
+
this.xml = xml;
|
|
15
|
+
this.fontTableXML = false;
|
|
16
|
+
this.addedCambriaMath = false;
|
|
17
|
+
this.domParser = new DOMParser();
|
|
18
|
+
}
|
|
19
|
+
init() {
|
|
20
|
+
return this.xml
|
|
21
|
+
.getXml("word/fontTable.xml")
|
|
22
|
+
.then(fontTablesXML => {
|
|
23
|
+
this.fontTablesXML = fontTablesXML;
|
|
24
|
+
return import("mathlive");
|
|
25
|
+
})
|
|
26
|
+
.then(MathLive => (this.mathLive = MathLive));
|
|
27
|
+
}
|
|
28
|
+
latexToMathML(latex) {
|
|
29
|
+
return this.mathLive.convertLatexToMathMl(latex);
|
|
30
|
+
}
|
|
31
|
+
getOmml(latex) {
|
|
32
|
+
if (!this.addedCambriaMath) {
|
|
33
|
+
const fontsEl = this.fontTablesXML.query("w:fonts");
|
|
34
|
+
fontsEl.appendXML(CAMBRIA_MATH_FONT_DECLARATION);
|
|
35
|
+
this.addedCambriaMath = true;
|
|
36
|
+
}
|
|
37
|
+
const mathmlString = `<math xmlns="http://www.w3.org/1998/Math/MathML"><semantics>${this.latexToMathML(latex)}</semantics></math>`;
|
|
38
|
+
const ommlString = mml2omml(mathmlString);
|
|
39
|
+
return ommlString;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=math.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"math.js","sourceRoot":"","sources":["../../../src/exporter/docx/math.js"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAA;AAEpC,8EAA8E;AAC9E,yFAAyF;AACzF,MAAM,6BAA6B,GAAG;;;;;;;cAOxB,CAAA;AAEd,MAAM,OAAO,gBAAgB;IACzB,YAAY,GAAG;QACX,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QACzB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,EAAE,CAAA;IACpC,CAAC;IAED,IAAI;QACA,OAAO,IAAI,CAAC,GAAG;aACV,MAAM,CAAC,oBAAoB,CAAC;aAC5B,IAAI,CAAC,aAAa,CAAC,EAAE;YAClB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;YAClC,OAAO,MAAM,CAAC,UAAU,CAAC,CAAA;QAC7B,CAAC,CAAC;aACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAA;IACrD,CAAC;IAED,aAAa,CAAC,KAAK;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACpD,CAAC;IAED,OAAO,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACnD,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAA;YAChD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;QAChC,CAAC;QACD,MAAM,YAAY,GAAG,+DAA+D,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,qBAAqB,CAAA;QAClI,MAAM,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAA;QACzC,OAAO,UAAU,CAAA;IACrB,CAAC;CACJ"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export class DOCXExporterMetadata {
|
|
2
|
+
constructor(xml: any, metadata: any, csl?: null);
|
|
3
|
+
xml: any;
|
|
4
|
+
metadata: any;
|
|
5
|
+
csl: any;
|
|
6
|
+
coreXML: boolean;
|
|
7
|
+
customXML: boolean;
|
|
8
|
+
init(): any;
|
|
9
|
+
hasBibliography(): Promise<"0" | "1">;
|
|
10
|
+
addMetadata(): void;
|
|
11
|
+
addCustomProperties(): Promise<void>;
|
|
12
|
+
addContributorProperties(): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/exporter/docx/metadata.js"],"names":[],"mappings":"AAEA;IACI,iDAMC;IALG,SAAc;IACd,cAAwB;IACxB,SAAc;IACd,iBAAoB;IACpB,mBAAsB;IAG1B,YAMC;IAED,sCAcC;IAED,oBA0EC;IAED,qCAwEC;IAED,0CAsGC;CACJ"}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { escapeText } from "fwtoolkit";
|
|
2
|
+
export class DOCXExporterMetadata {
|
|
3
|
+
constructor(xml, metadata, csl = null) {
|
|
4
|
+
this.xml = xml;
|
|
5
|
+
this.metadata = metadata;
|
|
6
|
+
this.csl = csl;
|
|
7
|
+
this.coreXML = false;
|
|
8
|
+
this.customXML = false;
|
|
9
|
+
}
|
|
10
|
+
init() {
|
|
11
|
+
return this.xml.getXml("docProps/core.xml").then(coreXML => {
|
|
12
|
+
this.coreXML = coreXML;
|
|
13
|
+
this.addMetadata();
|
|
14
|
+
return this.addCustomProperties();
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
async hasBibliography() {
|
|
18
|
+
if (!this.csl || !this.metadata.citationStyle) {
|
|
19
|
+
return "0";
|
|
20
|
+
}
|
|
21
|
+
try {
|
|
22
|
+
const style = await this.csl.getStyle(this.metadata.citationStyle);
|
|
23
|
+
// Check if the style has a bibliography section
|
|
24
|
+
const hasBib = style.children.some(section => section.name === "bibliography");
|
|
25
|
+
return hasBib ? "1" : "0";
|
|
26
|
+
}
|
|
27
|
+
catch (_error) {
|
|
28
|
+
return "0";
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
addMetadata() {
|
|
32
|
+
const corePropertiesEl = this.coreXML.query("cp:coreProperties");
|
|
33
|
+
// Title
|
|
34
|
+
let titleEl = this.coreXML.query("dc:title");
|
|
35
|
+
if (!titleEl) {
|
|
36
|
+
corePropertiesEl.appendXML("<dc:title></dc:title>");
|
|
37
|
+
titleEl = corePropertiesEl.lastElementChild;
|
|
38
|
+
}
|
|
39
|
+
titleEl.innerXML = escapeText(this.metadata.title);
|
|
40
|
+
// Authors
|
|
41
|
+
const authors = this.metadata.authors.map(author => {
|
|
42
|
+
const nameParts = [];
|
|
43
|
+
if (author.firstname) {
|
|
44
|
+
nameParts.push(author.firstname);
|
|
45
|
+
}
|
|
46
|
+
if (author.lastname) {
|
|
47
|
+
nameParts.push(author.lastname);
|
|
48
|
+
}
|
|
49
|
+
if (!nameParts.length && author.institution) {
|
|
50
|
+
// We have an institution but no names. Use institution as name.
|
|
51
|
+
nameParts.push(author.institution);
|
|
52
|
+
}
|
|
53
|
+
return nameParts.join(" ");
|
|
54
|
+
});
|
|
55
|
+
const lastAuthor = authors.length
|
|
56
|
+
? escapeText(authors[0])
|
|
57
|
+
: gettext("Unknown");
|
|
58
|
+
const allAuthors = authors.length
|
|
59
|
+
? escapeText(authors.join(";"))
|
|
60
|
+
: gettext("Unknown");
|
|
61
|
+
let allAuthorsEl = this.coreXML.query("dc:creator");
|
|
62
|
+
if (!allAuthorsEl) {
|
|
63
|
+
corePropertiesEl.appendXML("<dc:creator></dc:creator>");
|
|
64
|
+
allAuthorsEl = corePropertiesEl.lastElementChild;
|
|
65
|
+
}
|
|
66
|
+
allAuthorsEl.innerXML = allAuthors;
|
|
67
|
+
let lastAuthorEl = this.coreXML.query("dc:lastModifiedBy");
|
|
68
|
+
if (!lastAuthorEl) {
|
|
69
|
+
corePropertiesEl.appendXML("<dc:lastModifiedBy></dc:lastModifiedBy>");
|
|
70
|
+
lastAuthorEl = corePropertiesEl.lastElementChild;
|
|
71
|
+
}
|
|
72
|
+
lastAuthorEl.innerXML = lastAuthor;
|
|
73
|
+
// Keywords
|
|
74
|
+
if (this.metadata.keywords.length) {
|
|
75
|
+
// It is not really clear how keywords should be separated in DOCX files,
|
|
76
|
+
// so we use ", ".
|
|
77
|
+
const keywordsString = escapeText(this.metadata.keywords.join(", "));
|
|
78
|
+
let keywordsEl = this.coreXML.query("cp:keywords");
|
|
79
|
+
if (!keywordsEl) {
|
|
80
|
+
corePropertiesEl.appendXML("<cp:keywords></cp:keywords>");
|
|
81
|
+
keywordsEl = corePropertiesEl.lastElementChild;
|
|
82
|
+
}
|
|
83
|
+
keywordsEl.innerXML = keywordsString;
|
|
84
|
+
}
|
|
85
|
+
// time
|
|
86
|
+
const date = new Date();
|
|
87
|
+
const dateString = date.toISOString().split(".")[0] + "Z";
|
|
88
|
+
const createdEl = this.coreXML.query("dcterms:created");
|
|
89
|
+
createdEl.innerXML = dateString;
|
|
90
|
+
let modifiedEl = this.coreXML.query("dcterms:modified");
|
|
91
|
+
if (!modifiedEl) {
|
|
92
|
+
corePropertiesEl.appendXML('<dcterms:modified xsi:type="dcterms:W3CDTF"></dcterms:modified>');
|
|
93
|
+
modifiedEl = corePropertiesEl.lastElementChild;
|
|
94
|
+
}
|
|
95
|
+
modifiedEl.innerXML = dateString;
|
|
96
|
+
}
|
|
97
|
+
async addCustomProperties() {
|
|
98
|
+
// Create or update docProps/custom.xml with citation style information
|
|
99
|
+
const customXmlContent = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
100
|
+
<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
|
|
101
|
+
</Properties>`;
|
|
102
|
+
const customXML = await this.xml.getXml("docProps/custom.xml", Promise.resolve(customXmlContent));
|
|
103
|
+
this.customXML = customXML;
|
|
104
|
+
// Add citation style property
|
|
105
|
+
if (this.metadata.citationStyle) {
|
|
106
|
+
const propertiesEl = this.customXML.query("Properties");
|
|
107
|
+
// Remove any existing ZOTERO_PREF_ properties
|
|
108
|
+
const existingZoteroProps = this.customXML
|
|
109
|
+
.queryAll("property")
|
|
110
|
+
.filter(prop => prop.getAttribute("name") &&
|
|
111
|
+
prop.getAttribute("name").startsWith("ZOTERO_PREF_"));
|
|
112
|
+
existingZoteroProps.forEach(prop => prop.parentElement.removeChild(prop));
|
|
113
|
+
// Find the highest pid to determine the next one
|
|
114
|
+
const existingProperties = this.customXML.queryAll("property");
|
|
115
|
+
let maxPid = 0;
|
|
116
|
+
existingProperties.forEach(prop => {
|
|
117
|
+
const pid = parseInt(prop.getAttribute("pid"));
|
|
118
|
+
if (pid > maxPid) {
|
|
119
|
+
maxPid = pid;
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
// Determine if the citation style has a bibliography
|
|
123
|
+
const hasBib = await this.hasBibliography();
|
|
124
|
+
// Create the data content
|
|
125
|
+
const citationStyleUrl = `http://www.zotero.org/styles/${escapeText(this.metadata.citationStyle)}`;
|
|
126
|
+
const dataContent = `<data data-version="3" zotero-version="8.0.2"><session id=""/><style id="${citationStyleUrl}" locale="${escapeText(this.metadata.language || "en-US")}" hasBibliography="${hasBib}" bibliographyStyleHasBeenSet="1"/><prefs><pref name="fieldType" value="Field"/></prefs></data>`;
|
|
127
|
+
// Split content into chunks of 255 characters (DOCX limit)
|
|
128
|
+
const chunkSize = 255;
|
|
129
|
+
const chunks = [];
|
|
130
|
+
for (let i = 0; i < dataContent.length; i += chunkSize) {
|
|
131
|
+
chunks.push(dataContent.substring(i, i + chunkSize));
|
|
132
|
+
}
|
|
133
|
+
// Create properties for each chunk
|
|
134
|
+
chunks.forEach((chunk, index) => {
|
|
135
|
+
const propName = `ZOTERO_PREF_${index + 1}`;
|
|
136
|
+
const propertyXML = `<property fmtid="{D5CDD505-2E9C-101B-9397-08002B2CF9AE}" pid="${maxPid + index + 1}" name="${propName}">
|
|
137
|
+
<vt:lpwstr></vt:lpwstr>
|
|
138
|
+
</property>`;
|
|
139
|
+
propertiesEl.appendXML(propertyXML);
|
|
140
|
+
// Set the text content after appending (textContent escapes XML characters)
|
|
141
|
+
const lpwstrEl = propertiesEl.lastElementChild.query("vt:lpwstr");
|
|
142
|
+
if (lpwstrEl) {
|
|
143
|
+
lpwstrEl.textContent = chunk;
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
// Add structured contributor metadata properties
|
|
148
|
+
await this.addContributorProperties();
|
|
149
|
+
return Promise.resolve();
|
|
150
|
+
}
|
|
151
|
+
async addContributorProperties() {
|
|
152
|
+
if (!this.metadata.contributors || !this.metadata.contributors.length) {
|
|
153
|
+
return Promise.resolve();
|
|
154
|
+
}
|
|
155
|
+
const propertiesEl = this.customXML.query("Properties");
|
|
156
|
+
// Remove any existing fidus_contributor_ properties
|
|
157
|
+
const existingContributorProps = this.customXML
|
|
158
|
+
.queryAll("property")
|
|
159
|
+
.filter(prop => prop.getAttribute("name") &&
|
|
160
|
+
prop.getAttribute("name").startsWith("fidus_contributor_"));
|
|
161
|
+
existingContributorProps.forEach(prop => prop.parentElement.removeChild(prop));
|
|
162
|
+
// Find the highest pid
|
|
163
|
+
const existingProperties = this.customXML.queryAll("property");
|
|
164
|
+
let maxPid = 0;
|
|
165
|
+
existingProperties.forEach(prop => {
|
|
166
|
+
const pid = parseInt(prop.getAttribute("pid"));
|
|
167
|
+
if (pid > maxPid) {
|
|
168
|
+
maxPid = pid;
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
const contributors = this.metadata.contributors;
|
|
172
|
+
// Add contributor count
|
|
173
|
+
maxPid++;
|
|
174
|
+
const countXML = `<property fmtid="{D5CDD505-2E9C-101B-9397-08002B2CF9AE}" pid="${maxPid}" name="fidus_contributor_count">
|
|
175
|
+
<vt:i4></vt:i4>
|
|
176
|
+
</property>`;
|
|
177
|
+
propertiesEl.appendXML(countXML);
|
|
178
|
+
const countEl = propertiesEl.lastElementChild.query("vt:i4");
|
|
179
|
+
if (countEl) {
|
|
180
|
+
countEl.textContent = String(contributors.length);
|
|
181
|
+
}
|
|
182
|
+
// Add property for each contributor
|
|
183
|
+
contributors.forEach((contributor, index) => {
|
|
184
|
+
const num = index + 1;
|
|
185
|
+
const nameParts = [];
|
|
186
|
+
if (contributor.firstname) {
|
|
187
|
+
nameParts.push(contributor.firstname);
|
|
188
|
+
}
|
|
189
|
+
if (contributor.lastname) {
|
|
190
|
+
nameParts.push(contributor.lastname);
|
|
191
|
+
}
|
|
192
|
+
const fullName = nameParts.join(" ") || contributor.institution || "";
|
|
193
|
+
const fields = [
|
|
194
|
+
{
|
|
195
|
+
name: `fidus_contributor_${num}_role`,
|
|
196
|
+
value: contributor.role || ""
|
|
197
|
+
},
|
|
198
|
+
{ name: `fidus_contributor_${num}_name`, value: fullName },
|
|
199
|
+
{
|
|
200
|
+
name: `fidus_contributor_${num}_firstname`,
|
|
201
|
+
value: contributor.firstname || ""
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
name: `fidus_contributor_${num}_lastname`,
|
|
205
|
+
value: contributor.lastname || ""
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
name: `fidus_contributor_${num}_institution`,
|
|
209
|
+
value: contributor.institution || ""
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
name: `fidus_contributor_${num}_email`,
|
|
213
|
+
value: contributor.email || ""
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
name: `fidus_contributor_${num}_id_type`,
|
|
217
|
+
value: contributor.id_type || ""
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
name: `fidus_contributor_${num}_id_value`,
|
|
221
|
+
value: contributor.id_value || ""
|
|
222
|
+
}
|
|
223
|
+
];
|
|
224
|
+
fields.forEach(field => {
|
|
225
|
+
maxPid++;
|
|
226
|
+
const propertyXML = `<property fmtid="{D5CDD505-2E9C-101B-9397-08002B2CF9AE}" pid="${maxPid}" name="${field.name}">
|
|
227
|
+
<vt:lpwstr></vt:lpwstr>
|
|
228
|
+
</property>`;
|
|
229
|
+
propertiesEl.appendXML(propertyXML);
|
|
230
|
+
const lpwstrEl = propertiesEl.lastElementChild.query("vt:lpwstr");
|
|
231
|
+
if (lpwstrEl) {
|
|
232
|
+
lpwstrEl.textContent = field.value;
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
});
|
|
236
|
+
return Promise.resolve();
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/exporter/docx/metadata.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class DOCXExporterRels {
|
|
2
|
+
constructor(xml: any, docName: any);
|
|
3
|
+
xml: any;
|
|
4
|
+
docName: any;
|
|
5
|
+
relsXML: boolean;
|
|
6
|
+
ctXML: boolean;
|
|
7
|
+
relIdCounter: number;
|
|
8
|
+
filePath: string;
|
|
9
|
+
ctFilePath: string;
|
|
10
|
+
styleXML: boolean;
|
|
11
|
+
styleFilePath: string;
|
|
12
|
+
hyperLinkStyle: boolean;
|
|
13
|
+
init(): Promise<[any, any]>;
|
|
14
|
+
initCt(): any;
|
|
15
|
+
findMaxRelId(): void;
|
|
16
|
+
addRelsToCt(): void;
|
|
17
|
+
addLinkRel(link: any): number;
|
|
18
|
+
addLinkStyle(): void;
|
|
19
|
+
addImageRel(imgFileName: any): number;
|
|
20
|
+
addFootnoteRel(): number;
|
|
21
|
+
addNumberingRel(): number;
|
|
22
|
+
addCommentsRel(): void;
|
|
23
|
+
addCommentsExtendedRel(): void;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=rels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rels.d.ts","sourceRoot":"","sources":["../../../src/exporter/docx/rels.js"],"names":[],"mappings":"AAcA;IACI,oCAWC;IAVG,SAAc;IACd,aAAsB;IACtB,iBAAoB;IACpB,eAAkB;IAClB,qBAAsB;IACtB,iBAAqD;IACrD,mBAAuC;IACvC,kBAAqB;IACrB,sBAAsC;IACtC,wBAA2B;IAG/B,4BAeC;IAED,cAMC;IAGD,qBAWC;IAED,oBAUC;IAGD,8BAMC;IAED,qBAgBC;IAGD,sCAMC;IAED,yBAgBC;IAED,0BAgBC;IAED,uBAmBC;IAED,+BAmBC;CACJ"}
|