From 51a3aa357e5594836879900b69d451047f54da36 Mon Sep 17 00:00:00 2001 From: hkgnp Date: Tue, 22 Feb 2022 07:38:51 +0800 Subject: [PATCH] changed base64 encoder --- package-lock.json | 98 +++++++++++++++++++++++++++++++++++++++++++++-- package.json | 6 ++- src/convert.ts | 5 ++- src/mermaid.ts | 7 ---- 4 files changed, 103 insertions(+), 13 deletions(-) delete mode 100644 src/mermaid.ts diff --git a/package-lock.json b/package-lock.json index 5d9f5a6..ec41316 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,17 @@ { "name": "logseq-mermaid-plugin", - "version": "1.0.1", + "version": "1.0.10", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "logseq-mermaid-plugin", - "version": "1.0.1", + "version": "1.0.10", "license": "MIT", "dependencies": { - "@logseq/libs": "^0.0.1-alpha.34" + "@logseq/libs": "^0.0.1-alpha.34", + "buffer": "^6.0.3", + "js-base64": "^3.7.2" }, "devDependencies": { "parcel": "^2.2.0" @@ -1215,6 +1217,25 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -1244,6 +1265,29 @@ "url": "https://opencollective.com/browserslist" } }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -1795,6 +1839,25 @@ "entities": "^3.0.1" } }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -1828,6 +1891,11 @@ "integrity": "sha1-a+Fm0USCihMdaGiRuYPfYsOUkf8=", "dev": true }, + "node_modules/js-base64": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", + "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -3652,6 +3720,11 @@ "safe-buffer": "^5.0.1" } }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -3671,6 +3744,15 @@ "picocolors": "^1.0.0" } }, + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -4043,6 +4125,11 @@ "entities": "^3.0.1" } }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, "import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -4070,6 +4157,11 @@ "integrity": "sha1-a+Fm0USCihMdaGiRuYPfYsOUkf8=", "dev": true }, + "js-base64": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", + "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", diff --git a/package.json b/package.json index 9c6936e..9f2533e 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "icon": "./icon.svg" }, "name": "logseq-mermaid-plugin", - "version": "1.0.10", + "version": "1.1.0", "description": "", "main": "dist/index.html", "targets": { @@ -19,7 +19,9 @@ "author": "hkgnp", "license": "MIT", "dependencies": { - "@logseq/libs": "^0.0.1-alpha.34" + "@logseq/libs": "^0.0.1-alpha.34", + "buffer": "^6.0.3", + "js-base64": "^3.7.2" }, "devDependencies": { "parcel": "^2.2.0" diff --git a/src/convert.ts b/src/convert.ts index f9d4641..d7afb32 100644 --- a/src/convert.ts +++ b/src/convert.ts @@ -1,3 +1,5 @@ +import { Base64 } from 'js-base64'; + export const renderMermaid = async (type, payload, colour, mermaidUUID) => { await logseq.Editor.editBlock(payload.uuid); await logseq.Editor.exitEditingMode(); @@ -16,7 +18,8 @@ export const renderMermaid = async (type, payload, colour, mermaidUUID) => { toDecode = toDecode.replace('\n', ' '); - const jsonString = btoa(toDecode); + // const jsonString = btoa(toDecode); + const jsonString = Base64.encode(toDecode, true); const renderBlock = async (str: string) => { await logseq.Editor.updateBlock( diff --git a/src/mermaid.ts b/src/mermaid.ts deleted file mode 100644 index 5893caf..0000000 --- a/src/mermaid.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - HTMLDivElement: any; - } -} - -export const renderMermaid = (content) => {};