diff --git a/lib/document/document-converter.js b/lib/document/document-converter.js index 8a23a479..b1c019b3 100644 --- a/lib/document/document-converter.js +++ b/lib/document/document-converter.js @@ -31,7 +31,7 @@ class DocumentPDFConverter { this.linkStylesheet = /(]*\/>)/g this.stemContent = require('./stem') this.repeatTableElementsContent = fs.readFileSync(ospath.join(__dirname, 'repeating-table-elements.js'), 'utf8') - this.pagedContent = fs.readFileSync(require.resolve('@ggrossetie/pagedjs/dist/paged.polyfill.js'), 'utf8') + this.pagedContent = fs.readFileSync(ospath.join(__dirname, '../../node_modules/pagedjs/dist/paged.polyfill.js'), 'utf8') this.pagedRendering = fs.readFileSync(`${__dirname}/paged-rendering.js`, 'utf8') const stylesDirectoryPath = ospath.resolve(`${__dirname}/../../css`) this.asciidoctorStyleContent = fs.readFileSync(`${stylesDirectoryPath}/asciidoctor.css`, 'utf8') diff --git a/lib/document/repeating-table-elements.js b/lib/document/repeating-table-elements.js index 4dcc6abe..0a0fb3e4 100644 --- a/lib/document/repeating-table-elements.js +++ b/lib/document/repeating-table-elements.js @@ -24,7 +24,7 @@ class RepeatingTableElements extends Paged.Handler { // Remove orphaned table headers at page breaks const fromTables = pageElement.querySelectorAll('table:not([data-split-from])') fromTables.forEach((table) => { - if (table.getElementsByTagName('tbody')[0].children.length === 0) { + if (table.getElementsByTagName('tbody')[0]?.children.length === 0) { table.parentNode.removeChild(table) } }) diff --git a/package-lock.json b/package-lock.json index 194ba199..60e3efb4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,12 +14,12 @@ "@fortawesome/free-brands-svg-icons": "6.2.1", "@fortawesome/free-regular-svg-icons": "6.2.1", "@fortawesome/free-solid-svg-icons": "6.2.1", - "@ggrossetie/pagedjs": "0.2.0-next.1623590414", "chokidar": "~3.5", "file-url": "~3.0", "fs-extra": "~11.1.0", "html-entities": "~2.3", "mathjax": "3.2.2", + "pagedjs": "^0.4.3", "pdf-lib": "~1.17", "puppeteer": "15.4.0", "yargs": "17.6.2" @@ -254,16 +254,21 @@ } }, "node_modules/@babel/runtime": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", - "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.15.tgz", + "integrity": "sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA==", "dependencies": { - "regenerator-runtime": "^0.13.4" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" + }, "node_modules/@babel/types": { "version": "7.18.4", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", @@ -396,18 +401,6 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", "dev": true }, - "node_modules/@ggrossetie/pagedjs": { - "version": "0.2.0-next.1623590414", - "resolved": "https://registry.npmjs.org/@ggrossetie/pagedjs/-/pagedjs-0.2.0-next.1623590414.tgz", - "integrity": "sha512-zECa0Q8/DlvpuDkk/3+EJ1OTWZMiEX4ue5ipSx+TImI/SPnUVwVHaaPOA1MaUA6asSl7MUg2T1hVptYibb2KQQ==", - "dependencies": { - "@babel/polyfill": "^7.10.1", - "@babel/runtime": "^7.14.0", - "clear-cut": "^2.0.2", - "css-tree": "^1.1.3", - "event-emitter": "^0.3.5" - } - }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.8", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", @@ -5187,6 +5180,18 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/pagedjs": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/pagedjs/-/pagedjs-0.4.3.tgz", + "integrity": "sha512-YtAN9JAjsQw1142gxEjEAwXvOF5nYQuDwnQ67RW2HZDkMLI+b4RsBE37lULZa9gAr6kDAOGBOhXI4wGMoY3raw==", + "dependencies": { + "@babel/polyfill": "^7.10.1", + "@babel/runtime": "^7.21.0", + "clear-cut": "^2.0.2", + "css-tree": "^1.1.3", + "event-emitter": "^0.3.5" + } + }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -6038,9 +6043,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, "node_modules/regexp.prototype.flags": { "version": "1.4.3", @@ -7668,11 +7673,18 @@ } }, "@babel/runtime": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", - "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.15.tgz", + "integrity": "sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA==", "requires": { - "regenerator-runtime": "^0.13.4" + "regenerator-runtime": "^0.14.0" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" + } } }, "@babel/types": { @@ -7777,18 +7789,6 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", "dev": true }, - "@ggrossetie/pagedjs": { - "version": "0.2.0-next.1623590414", - "resolved": "https://registry.npmjs.org/@ggrossetie/pagedjs/-/pagedjs-0.2.0-next.1623590414.tgz", - "integrity": "sha512-zECa0Q8/DlvpuDkk/3+EJ1OTWZMiEX4ue5ipSx+TImI/SPnUVwVHaaPOA1MaUA6asSl7MUg2T1hVptYibb2KQQ==", - "requires": { - "@babel/polyfill": "^7.10.1", - "@babel/runtime": "^7.14.0", - "clear-cut": "^2.0.2", - "css-tree": "^1.1.3", - "event-emitter": "^0.3.5" - } - }, "@humanwhocodes/config-array": { "version": "0.11.8", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", @@ -11443,6 +11443,18 @@ } } }, + "pagedjs": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/pagedjs/-/pagedjs-0.4.3.tgz", + "integrity": "sha512-YtAN9JAjsQw1142gxEjEAwXvOF5nYQuDwnQ67RW2HZDkMLI+b4RsBE37lULZa9gAr6kDAOGBOhXI4wGMoY3raw==", + "requires": { + "@babel/polyfill": "^7.10.1", + "@babel/runtime": "^7.21.0", + "clear-cut": "^2.0.2", + "css-tree": "^1.1.3", + "event-emitter": "^0.3.5" + } + }, "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -12119,9 +12131,9 @@ } }, "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, "regexp.prototype.flags": { "version": "1.4.3", diff --git a/package.json b/package.json index ff82bfcf..b1b143ab 100644 --- a/package.json +++ b/package.json @@ -53,12 +53,12 @@ "@fortawesome/free-brands-svg-icons": "6.2.1", "@fortawesome/free-regular-svg-icons": "6.2.1", "@fortawesome/free-solid-svg-icons": "6.2.1", - "@ggrossetie/pagedjs": "0.2.0-next.1623590414", "chokidar": "~3.5", "file-url": "~3.0", "fs-extra": "~11.1.0", "html-entities": "~2.3", "mathjax": "3.2.2", + "pagedjs": "^0.4.3", "pdf-lib": "~1.17", "puppeteer": "15.4.0", "yargs": "17.6.2"