diff --git a/package-lock.json b/package-lock.json index 697905d4..022345af 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4577,9 +4577,9 @@ "optional": true }, "@types/node": { - "version": "12.19.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.6.tgz", - "integrity": "sha512-U2VopDdmBoYBmtm8Rz340mvvSz34VgX/K9+XCuckvcLGMkt3rbMX8soqFOikIPlPBc5lmw8By9NUK7bEFSBFlQ==", + "version": "14.17.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.7.tgz", + "integrity": "sha512-SYTdMaW47se8499q8m0fYKZZRlmq0RaRv6oYmlVm6DUm31l0fhOl1D03X8hGxohCKTI2Bg6w7W0TiYB51aJzag==", "dev": true }, "@types/parse-glob": { @@ -6876,14 +6876,22 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron": { - "version": "9.4.4", - "resolved": "https://registry.npmjs.org/electron/-/electron-9.4.4.tgz", - "integrity": "sha512-dcPlTrMWQu5xuSm6sYV42KK/BRIqh3erM8v/WtZqaDmG7pkCeJpvw26Dgbqhdt78XmqqGiN96giEe6A3S9vpAQ==", + "version": "13.1.7", + "resolved": "https://registry.npmjs.org/electron/-/electron-13.1.7.tgz", + "integrity": "sha512-sVfpP/0s6a82FK32LMuEe9L+aWZw15u3uYn9xUJArPjy4OZHteE6yM5871YCNXNiDnoCLQ5eqQWipiVgHsf8nQ==", "dev": true, "requires": { "@electron/get": "^1.0.1", - "@types/node": "^12.0.12", + "@types/node": "^14.6.2", "extract-zip": "^1.0.3" + }, + "dependencies": { + "@types/node": { + "version": "14.17.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.7.tgz", + "integrity": "sha512-SYTdMaW47se8499q8m0fYKZZRlmq0RaRv6oYmlVm6DUm31l0fhOl1D03X8hGxohCKTI2Bg6w7W0TiYB51aJzag==", + "dev": true + } } }, "electron-installer-common": { @@ -13727,9 +13735,9 @@ "dev": true }, "node-abi": { - "version": "2.19.3", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.19.3.tgz", - "integrity": "sha512-9xZrlyfvKhWme2EXFKQhZRp1yNWT/uI1luYPr3sFl+H4keYY4xR+1jO7mvTTijIsHf1M+QDe9uWuKeEpLInIlg==", + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz", + "integrity": "sha512-g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg==", "dev": true, "requires": { "semver": "^5.4.1" diff --git a/package.json b/package.json index 018cbeca..845bfe21 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "@types/express": "^4.17.1", "@types/jest": "^26.0.24", "@types/json5": "0.0.30", - "@types/node": "^12.0.0", + "@types/node": "^14.17.4", "@types/react": "^17.0.15", "@types/react-dom": "^17.0.9", "@types/react-frame-component": "^4.1.1", @@ -37,7 +37,7 @@ "@types/styled-components": "^5.1.11", "@types/styled-system": "^4.2.2", "@types/victory": "^31.0.21", - "electron": "^9.4.4", + "electron": "^13.1.7", "electron-rebuild": "^1.8.6", "jest": "^27.0.6", "react-test-renderer": "^17.0.2", diff --git a/src/files/Filesystem.ts b/src/files/Filesystem.ts index 1e5c7fd8..72989a7e 100644 --- a/src/files/Filesystem.ts +++ b/src/files/Filesystem.ts @@ -192,7 +192,7 @@ function make( files: Signal.Writable, Now: Now = Date, Timers: Timers = timers, - Fs: Fs = fs.promises, + Fs: Fs = fs.promises as Fs, // TODO(jaked) Nsfw: Nsfw = nsfw, ): Filesystem { const fsFiles = new Map(); diff --git a/src/main.ts b/src/main.ts index 5ed9e066..f8fcb75e 100644 --- a/src/main.ts +++ b/src/main.ts @@ -65,6 +65,7 @@ async function createWindow () { // TODO(jaked) // need to remove this for security nodeIntegration: true, + contextIsolation: false, additionalArguments: [config.dataDir] } diff --git a/src/publish/ghPages.ts b/src/publish/ghPages.ts index 1732b2b4..ecbde7f7 100644 --- a/src/publish/ghPages.ts +++ b/src/publish/ghPages.ts @@ -43,7 +43,7 @@ export default async function ghPages( await mkdir(Path.dirname(path), { recursive: true }); const exportValue = note.exportValue.get(); const buffer = exportValue.get('buffer') ?? bug(`expected buffer`) - await writeFile(path, buffer); + await writeFile(path, buffer as Buffer); } else if (note.type === 'png') { const path = Path.join(tempdir, note.name) + '.png'; @@ -51,24 +51,24 @@ export default async function ghPages( await mkdir(Path.dirname(path), { recursive: true }); const exportValue = note.exportValue.get(); const buffer = exportValue.get('buffer') ?? bug(`expected buffer`) - await writeFile(path, buffer); + await writeFile(path, buffer as Buffer); } else if (note.type === 'xml') { const path = Path.join(tempdir, note.name) + '.xml'; await mkdir(Path.dirname(path), { recursive: true }); const xml = note.rendered.get(); - await writeFile(path, xml); + await writeFile(path, xml as string); } else if (note.type === 'pm') { const htmlPath = Path.join(tempdir, note.name) + '.html'; - const html = note.html?.get(); + const html = note.html ?? bug(`expected html`); await mkdir(Path.dirname(htmlPath), { recursive: true }); - await writeFile(htmlPath, html); + await writeFile(htmlPath, html.get()) const jsPath = Path.join(tempdir, note.name) + '.js'; - const js = note.js?.get(); - await writeFile(jsPath, js); + const js = note.js ?? bug(`expected js`); + await writeFile(jsPath, js.get()); } }).values()]); const publish = true;