diff --git a/assets/blur-screen-blurs.png b/assets/blur-screen-blurs.png deleted file mode 100644 index 9bbcc47..0000000 Binary files a/assets/blur-screen-blurs.png and /dev/null differ diff --git a/assets/blur-screen-bones.png b/assets/blur-screen-bones.png deleted file mode 100644 index 172e50f..0000000 Binary files a/assets/blur-screen-bones.png and /dev/null differ diff --git a/assets/blur-screen-bricks.png b/assets/blur-screen-bricks.png deleted file mode 100644 index 493a080..0000000 Binary files a/assets/blur-screen-bricks.png and /dev/null differ diff --git a/assets/results-dark.png b/assets/results-dark.png new file mode 100644 index 0000000..92ed3b4 Binary files /dev/null and b/assets/results-dark.png differ diff --git a/assets/results-light.png b/assets/results-light.png new file mode 100644 index 0000000..45ffb84 Binary files /dev/null and b/assets/results-light.png differ diff --git a/assets/screen-multi-inline.png b/assets/screen-multi-inline.png deleted file mode 100644 index 41cda12..0000000 Binary files a/assets/screen-multi-inline.png and /dev/null differ diff --git a/assets/screen.png b/assets/screen.png deleted file mode 100644 index 8710e3c..0000000 Binary files a/assets/screen.png and /dev/null differ diff --git a/assets/style-settings.png b/assets/style-settings.png index 0005d3c..9ac2670 100644 Binary files a/assets/style-settings.png and b/assets/style-settings.png differ diff --git a/main.js b/main.js index d5eeeda..aab221e 100644 --- a/main.js +++ b/main.js @@ -41,7 +41,6 @@ var BlurPlugin = class extends import_obsidian.Plugin { console.log("%c Obsidian Blur Plugin unloaded", "color:lime;"); } async blurBlockHandler(type, source, el, ctx) { - const element = document.createRange().createContextualFragment(source); if (el.className === "block-language-blur-brick") { const block = el.createEl("div", { cls: "blur-brick-block" }); let inputElement; @@ -49,7 +48,7 @@ var BlurPlugin = class extends import_obsidian.Plugin { source.split(/\W+/).forEach((w) => { let word = w.trim(); if (word !== "") { - inputElement.appendChild(createEl("code", { text: word, cls: "blur-brick" })); + inputElement.appendChild(createEl("code", { text: word.replace(/[^\s]/g, "\u2588"), cls: "blur-brick" })); } }); } else if (el.className === "block-language-blur-bone") { @@ -65,7 +64,13 @@ var BlurPlugin = class extends import_obsidian.Plugin { } else if (el.className === "block-language-blur") { const block = el.createEl("div", { cls: "blur-block" }); let inputElement; - inputElement = block.createEl("div", { text: source, cls: "blur-innerblock" }); + inputElement = block.createEl("div", { text: "", cls: "blur-innerblock" }); + source.split(/\W+/).forEach((w) => { + let word = w.trim(); + if (word !== "") { + inputElement.appendChild(createEl("code", { text: word, cls: "blur-inline" })); + } + }); } } }; @@ -73,20 +78,23 @@ function buildPostProcessor() { return (el) => { el.findAll("code").forEach((code) => { let text = code.innerText.trim(); - if (text.startsWith("~[]")) { - let blur = text.substring(3).trim(); + if (text.startsWith("~[") && text.endsWith("]")) { + let part = text.substring(1); + let content = part.substring(part.length - 1, 1); code.addClass("blur-brick"); - code.innerText = blur; - } else if (text.startsWith("~{}")) { - let blur = text.substring(3).trim(); - code.addClass("blur-inline"); - code.innerText = blur; - } else if (text.startsWith("~()")) { - let blur = text.substring(3).trim(); + code.innerText = content.replace(/[^\s]/g, "\u2588"); + } else if (text.startsWith("~(") && text.endsWith(")")) { + let part = text.substring(1); + let content = part.substring(part.length - 1, 1); code.addClass("blur-bone"); - code.innerText = blur; + code.innerText = content; + } else if (text.startsWith("~{") && text.endsWith("}")) { + let part = text.substring(1); + let content = part.substring(part.length - 1, 1); + code.addClass("blur-inline"); + code.innerText = content; } }); }; } -//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsibWFpbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHsgTWFya2Rvd25Qb3N0UHJvY2Vzc29yLCBQbHVnaW59IGZyb20gJ29ic2lkaWFuJztcblxuaW50ZXJmYWNlIEJsdXJQbHVnaW5TZXR0aW5ncyB7XG5cdG15U2V0dGluZzogc3RyaW5nO1xufVxuXG5jb25zdCBERUZBVUxUX1NFVFRJTkdTOiBCbHVyUGx1Z2luU2V0dGluZ3MgPSB7XG5cdG15U2V0dGluZzogJ2RlZmF1bHQnXG59XG5cbmVudW0gQ29tcG9uZW50Q2hvaWNlIHtcblx0RGVmYXVsdCA9IFwiRGVmYXVsdFwiLFxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCbHVyUGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcblxuICBzZXR0aW5nczogQmx1clBsdWdpblNldHRpbmdzO1xuXG4gIGFzeW5jIG9ubG9hZCgpIHtcblx0XHR0aGlzLnJlZ2lzdGVyTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IoXCJibHVyXCIsIHRoaXMuYmx1ckJsb2NrSGFuZGxlci5iaW5kKHRoaXMsIG51bGwpKTtcblx0XHR0aGlzLnJlZ2lzdGVyTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IoXCJibHVyLWJyaWNrXCIsIHRoaXMuYmx1ckJsb2NrSGFuZGxlci5iaW5kKHRoaXMsIG51bGwpKTtcblx0XHR0aGlzLnJlZ2lzdGVyTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IoXCJibHVyLWJvbmVcIiwgdGhpcy5ibHVyQmxvY2tIYW5kbGVyLmJpbmQodGhpcywgbnVsbCkpO1xuXHRcdHRoaXMucmVnaXN0ZXJNYXJrZG93blBvc3RQcm9jZXNzb3IoXG5cdFx0XHRidWlsZFBvc3RQcm9jZXNzb3IoKVxuXHRcdCk7XG5cdFx0Y29uc29sZS5sb2coXCIlYyBPYnNpZGlhbiBCbHVyIFBsdWdpbiBsb2FkZWRcIiwgJ2NvbG9yOmxpbWU7Jyk7XG5cdH1cblxuICBvbnVubG9hZCgpIHtcblx0XHRjb25zb2xlLmxvZyhcIiVjIE9ic2lkaWFuIEJsdXIgUGx1Z2luIHVubG9hZGVkXCIsICdjb2xvcjpsaW1lOycpO1xuXHR9XG5cbiAgYXN5bmMgYmx1ckJsb2NrSGFuZGxlcih0eXBlOiBDb21wb25lbnRDaG9pY2UsIHNvdXJjZTogc3RyaW5nLCBlbDogSFRNTEVsZW1lbnQsIGN0eDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICBjb25zdCBlbGVtZW50OmFueSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCkuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KHNvdXJjZSlcbiAgICBpZiAoZWwuY2xhc3NOYW1lPT09J2Jsb2NrLWxhbmd1YWdlLWJsdXItYnJpY2snKSB7XG4gICAgICBjb25zdCBibG9jayA9IGVsLmNyZWF0ZUVsKFwiZGl2XCIsIHtjbHM6IFwiYmx1ci1icmljay1ibG9ja1wifSlcbiAgICAgIGxldCBpbnB1dEVsZW1lbnQ6IEhUTUxFbGVtZW50XG4gICAgICBpbnB1dEVsZW1lbnQgPSBibG9jay5jcmVhdGVFbChcImRpdlwiLCB7dGV4dDogJycsIGNsczogXCJibHVyLWJyaWNrLWlubmVyYmxvY2tcIn0pXG4gICAgICBzb3VyY2Uuc3BsaXQoL1xcVysvKS5mb3JFYWNoKCh3OnN0cmluZykgPT4ge1xuICAgICAgICBsZXQgd29yZCA9IHcudHJpbSgpO1xuICAgICAgICBpZiAod29yZCAhPT0gJycpIHtcbiAgICAgICAgICBpbnB1dEVsZW1lbnQuYXBwZW5kQ2hpbGQoY3JlYXRlRWwoJ2NvZGUnLCB7dGV4dDogd29yZCwgY2xzOiBcImJsdXItYnJpY2tcIiB9KSk7IFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgICBlbHNlIGlmIChlbC5jbGFzc05hbWU9PT0nYmxvY2stbGFuZ3VhZ2UtYmx1ci1ib25lJykge1xuICAgICAgY29uc3QgYmxvY2sgPSBlbC5jcmVhdGVFbChcImRpdlwiLCB7Y2xzOiBcImJsdXItYm9uZS1ibG9ja1wifSlcbiAgICAgIGxldCBpbnB1dEVsZW1lbnQ6IEhUTUxFbGVtZW50XG4gICAgICBpbnB1dEVsZW1lbnQgPSBibG9jay5jcmVhdGVFbChcImRpdlwiLCB7dGV4dDogJycsIGNsczogXCJibHVyLWJvbmUtaW5uZXJibG9ja1wifSlcbiAgICAgIHNvdXJjZS5zcGxpdCgvXFxXKy8pLmZvckVhY2goKHc6c3RyaW5nKSA9PiB7XG4gICAgICAgIGxldCB3b3JkID0gdy50cmltKCk7XG4gICAgICAgIGlmICh3b3JkICE9PSAnJykge1xuICAgICAgICAgIGlucHV0RWxlbWVudC5hcHBlbmRDaGlsZChjcmVhdGVFbCgnY29kZScsIHt0ZXh0OiB3b3JkLCBjbHM6IFwiYmx1ci1ib25lXCJ9KSk7IFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgICBlbHNlIGlmIChlbC5jbGFzc05hbWU9PT0nYmxvY2stbGFuZ3VhZ2UtYmx1cicpIHtcbiAgICAgIGNvbnN0IGJsb2NrID0gZWwuY3JlYXRlRWwoXCJkaXZcIiwge2NsczogXCJibHVyLWJsb2NrXCJ9KVxuICAgICAgbGV0IGlucHV0RWxlbWVudDogSFRNTEVsZW1lbnRcbiAgICAgIGlucHV0RWxlbWVudCA9IGJsb2NrLmNyZWF0ZUVsKFwiZGl2XCIsIHt0ZXh0OiBzb3VyY2UsIGNsczogXCJibHVyLWlubmVyYmxvY2tcIn0pXG4gICAgfVxuXHR9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFBvc3RQcm9jZXNzb3IoKTogTWFya2Rvd25Qb3N0UHJvY2Vzc29yIHtcblx0cmV0dXJuIChlbCkgPT4ge1xuICAgIGVsLmZpbmRBbGwoXCJjb2RlXCIpLmZvckVhY2goKGNvZGUpID0+IHtcbiAgICAgIGxldCB0ZXh0ID0gY29kZS5pbm5lclRleHQudHJpbSgpO1xuICAgICAgaWYgKHRleHQuc3RhcnRzV2l0aCgnfltdJykpIHtcbiAgICAgICAgbGV0IGJsdXIgPSB0ZXh0LnN1YnN0cmluZygzKS50cmltKCk7XG4gICAgICAgIGNvZGUuYWRkQ2xhc3MoJ2JsdXItYnJpY2snKTtcbiAgICAgICAgY29kZS5pbm5lclRleHQ9Ymx1cjtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHRleHQuc3RhcnRzV2l0aCgnfnt9JykpIHtcbiAgICAgICAgbGV0IGJsdXIgPSB0ZXh0LnN1YnN0cmluZygzKS50cmltKCk7XG4gICAgICAgICAgY29kZS5hZGRDbGFzcygnYmx1ci1pbmxpbmUnKTtcbiAgICAgICAgICBjb2RlLmlubmVyVGV4dD1ibHVyO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAodGV4dC5zdGFydHNXaXRoKFwifigpXCIpKSB7XG4gICAgICAgIGxldCBibHVyID0gdGV4dC5zdWJzdHJpbmcoMykudHJpbSgpO1xuICAgICAgICAgIGNvZGUuYWRkQ2xhc3MoJ2JsdXItYm9uZScpO1xuICAgICAgICAgIGNvZGUuaW5uZXJUZXh0PWJsdXI7XG4gICAgICB9XG4gICAgfSlcbiAgfVxufSJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLHNCQUE2QztBQWM3QyxJQUFxQixhQUFyQixjQUF3Qyx1QkFBTztBQUFBLEVBSTdDLE1BQU0sU0FBUztBQUNmLFNBQUssbUNBQW1DLFFBQVEsS0FBSyxpQkFBaUIsS0FBSyxNQUFNLElBQUksQ0FBQztBQUN0RixTQUFLLG1DQUFtQyxjQUFjLEtBQUssaUJBQWlCLEtBQUssTUFBTSxJQUFJLENBQUM7QUFDNUYsU0FBSyxtQ0FBbUMsYUFBYSxLQUFLLGlCQUFpQixLQUFLLE1BQU0sSUFBSSxDQUFDO0FBQzNGLFNBQUssOEJBQ0osbUJBQW1CLENBQ3BCO0FBQ0EsWUFBUSxJQUFJLGtDQUFrQyxhQUFhO0FBQUEsRUFDNUQ7QUFBQSxFQUVDLFdBQVc7QUFDWCxZQUFRLElBQUksb0NBQW9DLGFBQWE7QUFBQSxFQUM5RDtBQUFBLEVBRUMsTUFBTSxpQkFBaUIsTUFBdUIsUUFBZ0IsSUFBaUIsS0FBd0I7QUFDckcsVUFBTSxVQUFjLFNBQVMsWUFBWSxFQUFFLHlCQUF5QixNQUFNO0FBQzFFLFFBQUksR0FBRyxjQUFZLDZCQUE2QjtBQUM5QyxZQUFNLFFBQVEsR0FBRyxTQUFTLE9BQU8sRUFBQyxLQUFLLG1CQUFrQixDQUFDO0FBQzFELFVBQUk7QUFDSixxQkFBZSxNQUFNLFNBQVMsT0FBTyxFQUFDLE1BQU0sSUFBSSxLQUFLLHdCQUF1QixDQUFDO0FBQzdFLGFBQU8sTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLE1BQWE7QUFDeEMsWUFBSSxPQUFPLEVBQUUsS0FBSztBQUNsQixZQUFJLFNBQVMsSUFBSTtBQUNmLHVCQUFhLFlBQVksU0FBUyxRQUFRLEVBQUMsTUFBTSxNQUFNLEtBQUssYUFBYSxDQUFDLENBQUM7QUFBQSxRQUM3RTtBQUFBLE1BQ0YsQ0FBQztBQUFBLElBQ0gsV0FDUyxHQUFHLGNBQVksNEJBQTRCO0FBQ2xELFlBQU0sUUFBUSxHQUFHLFNBQVMsT0FBTyxFQUFDLEtBQUssa0JBQWlCLENBQUM7QUFDekQsVUFBSTtBQUNKLHFCQUFlLE1BQU0sU0FBUyxPQUFPLEVBQUMsTUFBTSxJQUFJLEtBQUssdUJBQXNCLENBQUM7QUFDNUUsYUFBTyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsTUFBYTtBQUN4QyxZQUFJLE9BQU8sRUFBRSxLQUFLO0FBQ2xCLFlBQUksU0FBUyxJQUFJO0FBQ2YsdUJBQWEsWUFBWSxTQUFTLFFBQVEsRUFBQyxNQUFNLE1BQU0sS0FBSyxZQUFXLENBQUMsQ0FBQztBQUFBLFFBQzNFO0FBQUEsTUFDRixDQUFDO0FBQUEsSUFDSCxXQUNTLEdBQUcsY0FBWSx1QkFBdUI7QUFDN0MsWUFBTSxRQUFRLEdBQUcsU0FBUyxPQUFPLEVBQUMsS0FBSyxhQUFZLENBQUM7QUFDcEQsVUFBSTtBQUNKLHFCQUFlLE1BQU0sU0FBUyxPQUFPLEVBQUMsTUFBTSxRQUFRLEtBQUssa0JBQWlCLENBQUM7QUFBQSxJQUM3RTtBQUFBLEVBQ0g7QUFDRDtBQUVPLDhCQUFxRDtBQUMzRCxTQUFPLENBQUMsT0FBTztBQUNaLE9BQUcsUUFBUSxNQUFNLEVBQUUsUUFBUSxDQUFDLFNBQVM7QUFDbkMsVUFBSSxPQUFPLEtBQUssVUFBVSxLQUFLO0FBQy9CLFVBQUksS0FBSyxXQUFXLEtBQUssR0FBRztBQUMxQixZQUFJLE9BQU8sS0FBSyxVQUFVLENBQUMsRUFBRSxLQUFLO0FBQ2xDLGFBQUssU0FBUyxZQUFZO0FBQzFCLGFBQUssWUFBVTtBQUFBLE1BQ2pCLFdBQ1MsS0FBSyxXQUFXLEtBQUssR0FBRztBQUMvQixZQUFJLE9BQU8sS0FBSyxVQUFVLENBQUMsRUFBRSxLQUFLO0FBQ2hDLGFBQUssU0FBUyxhQUFhO0FBQzNCLGFBQUssWUFBVTtBQUFBLE1BQ25CLFdBQ1MsS0FBSyxXQUFXLEtBQUssR0FBRztBQUMvQixZQUFJLE9BQU8sS0FBSyxVQUFVLENBQUMsRUFBRSxLQUFLO0FBQ2hDLGFBQUssU0FBUyxXQUFXO0FBQ3pCLGFBQUssWUFBVTtBQUFBLE1BQ25CO0FBQUEsSUFDRixDQUFDO0FBQUEsRUFDSDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo= +//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsibWFpbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHsgTWFya2Rvd25Qb3N0UHJvY2Vzc29yLCBQbHVnaW59IGZyb20gJ29ic2lkaWFuJztcblxuaW50ZXJmYWNlIEJsdXJQbHVnaW5TZXR0aW5ncyB7XG5cdG15U2V0dGluZzogc3RyaW5nO1xufVxuXG5jb25zdCBERUZBVUxUX1NFVFRJTkdTOiBCbHVyUGx1Z2luU2V0dGluZ3MgPSB7XG5cdG15U2V0dGluZzogJ2RlZmF1bHQnXG59XG5cbmVudW0gQ29tcG9uZW50Q2hvaWNlIHtcblx0RGVmYXVsdCA9IFwiRGVmYXVsdFwiLFxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCbHVyUGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcblxuICBzZXR0aW5nczogQmx1clBsdWdpblNldHRpbmdzO1xuXG4gIGFzeW5jIG9ubG9hZCgpIHtcblx0XHR0aGlzLnJlZ2lzdGVyTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IoXCJibHVyXCIsIHRoaXMuYmx1ckJsb2NrSGFuZGxlci5iaW5kKHRoaXMsIG51bGwpKTtcblx0XHR0aGlzLnJlZ2lzdGVyTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IoXCJibHVyLWJyaWNrXCIsIHRoaXMuYmx1ckJsb2NrSGFuZGxlci5iaW5kKHRoaXMsIG51bGwpKTtcblx0XHR0aGlzLnJlZ2lzdGVyTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IoXCJibHVyLWJvbmVcIiwgdGhpcy5ibHVyQmxvY2tIYW5kbGVyLmJpbmQodGhpcywgbnVsbCkpO1xuXHRcdHRoaXMucmVnaXN0ZXJNYXJrZG93blBvc3RQcm9jZXNzb3IoXG5cdFx0XHRidWlsZFBvc3RQcm9jZXNzb3IoKVxuXHRcdCk7XG5cdFx0Y29uc29sZS5sb2coXCIlYyBPYnNpZGlhbiBCbHVyIFBsdWdpbiBsb2FkZWRcIiwgJ2NvbG9yOmxpbWU7Jyk7XG5cdH1cblxuICBvbnVubG9hZCgpIHtcblx0XHRjb25zb2xlLmxvZyhcIiVjIE9ic2lkaWFuIEJsdXIgUGx1Z2luIHVubG9hZGVkXCIsICdjb2xvcjpsaW1lOycpO1xuXHR9XG5cbiAgYXN5bmMgYmx1ckJsb2NrSGFuZGxlcih0eXBlOiBDb21wb25lbnRDaG9pY2UsIHNvdXJjZTogc3RyaW5nLCBlbDogSFRNTEVsZW1lbnQsIGN0eDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICBpZiAoZWwuY2xhc3NOYW1lPT09J2Jsb2NrLWxhbmd1YWdlLWJsdXItYnJpY2snKSB7XG4gICAgICBjb25zdCBibG9jayA9IGVsLmNyZWF0ZUVsKFwiZGl2XCIsIHtjbHM6IFwiYmx1ci1icmljay1ibG9ja1wifSlcbiAgICAgIGxldCBpbnB1dEVsZW1lbnQ6IEhUTUxFbGVtZW50XG4gICAgICBpbnB1dEVsZW1lbnQgPSBibG9jay5jcmVhdGVFbChcImRpdlwiLCB7dGV4dDogJycsIGNsczogXCJibHVyLWJyaWNrLWlubmVyYmxvY2tcIn0pXG4gICAgICBzb3VyY2Uuc3BsaXQoL1xcVysvKS5mb3JFYWNoKCh3OnN0cmluZykgPT4ge1xuICAgICAgICBsZXQgd29yZCA9IHcudHJpbSgpO1xuICAgICAgICBpZiAod29yZCAhPT0gJycpIHtcbiAgICAgICAgICAvL3JlZGFjdCB3LyBjaGFyICdcdTI1ODgnICAmYmxvY2s7IFx1MjU4OFxuICAgICAgICAgIGlucHV0RWxlbWVudC5hcHBlbmRDaGlsZChjcmVhdGVFbCgnY29kZScsIHt0ZXh0OiB3b3JkLnJlcGxhY2UoL1teXFxzXS9nLCAnXHUyNTg4JyksIGNsczogXCJibHVyLWJyaWNrXCIgfSkpOyBcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gICAgZWxzZSBpZiAoZWwuY2xhc3NOYW1lPT09J2Jsb2NrLWxhbmd1YWdlLWJsdXItYm9uZScpIHtcbiAgICAgIGNvbnN0IGJsb2NrID0gZWwuY3JlYXRlRWwoXCJkaXZcIiwge2NsczogXCJibHVyLWJvbmUtYmxvY2tcIn0pXG4gICAgICBsZXQgaW5wdXRFbGVtZW50OiBIVE1MRWxlbWVudFxuICAgICAgaW5wdXRFbGVtZW50ID0gYmxvY2suY3JlYXRlRWwoXCJkaXZcIiwge3RleHQ6ICcnLCBjbHM6IFwiYmx1ci1ib25lLWlubmVyYmxvY2tcIn0pXG4gICAgICBzb3VyY2Uuc3BsaXQoL1xcVysvKS5mb3JFYWNoKCh3OnN0cmluZykgPT4ge1xuICAgICAgICBsZXQgd29yZCA9IHcudHJpbSgpO1xuICAgICAgICBpZiAod29yZCAhPT0gJycpIHtcbiAgICAgICAgICBpbnB1dEVsZW1lbnQuYXBwZW5kQ2hpbGQoY3JlYXRlRWwoJ2NvZGUnLCB7dGV4dDogd29yZCwgY2xzOiBcImJsdXItYm9uZVwifSkpOyBcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gICAgZWxzZSBpZiAoZWwuY2xhc3NOYW1lPT09J2Jsb2NrLWxhbmd1YWdlLWJsdXInKSB7XG4gICAgICBjb25zdCBibG9jayA9IGVsLmNyZWF0ZUVsKFwiZGl2XCIsIHtjbHM6IFwiYmx1ci1ibG9ja1wifSlcbiAgICAgIGxldCBpbnB1dEVsZW1lbnQ6IEhUTUxFbGVtZW50XG4gICAgICBpbnB1dEVsZW1lbnQgPSBibG9jay5jcmVhdGVFbChcImRpdlwiLCB7dGV4dDogJycsIGNsczogXCJibHVyLWlubmVyYmxvY2tcIn0pXG4gICAgICBzb3VyY2Uuc3BsaXQoL1xcVysvKS5mb3JFYWNoKCh3OnN0cmluZykgPT4ge1xuICAgICAgICBsZXQgd29yZCA9IHcudHJpbSgpO1xuICAgICAgICBpZiAod29yZCAhPT0gJycpIHtcbiAgICAgICAgICBpbnB1dEVsZW1lbnQuYXBwZW5kQ2hpbGQoY3JlYXRlRWwoJ2NvZGUnLCB7dGV4dDogd29yZCwgY2xzOiBcImJsdXItaW5saW5lXCJ9KSk7IFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblx0fVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQb3N0UHJvY2Vzc29yKCk6IE1hcmtkb3duUG9zdFByb2Nlc3NvciB7XG5cdHJldHVybiAoZWwpID0+IHtcbiAgICBlbC5maW5kQWxsKFwiY29kZVwiKS5mb3JFYWNoKChjb2RlKSA9PiB7XG4gICAgICBsZXQgdGV4dCA9IGNvZGUuaW5uZXJUZXh0LnRyaW0oKTtcbiAgICAgIGlmICh0ZXh0LnN0YXJ0c1dpdGgoJ35bJykgJiYgdGV4dC5lbmRzV2l0aCgnXScpKSB7XG4gICAgICAgIGxldCBwYXJ0ID0gdGV4dC5zdWJzdHJpbmcoMSk7XG4gICAgICAgIGxldCBjb250ZW50ID0gcGFydC5zdWJzdHJpbmcocGFydC5sZW5ndGgtMSwxKTtcbiAgICAgICAgY29kZS5hZGRDbGFzcygnYmx1ci1icmljaycpO1xuICAgICAgICAvL3JlZGFjdCB3LyBjaGFyICdcdTI1ODgnICAmYmxvY2s7IFx1MjU4OFxuICAgICAgICBjb2RlLmlubmVyVGV4dD1jb250ZW50LnJlcGxhY2UoL1teXFxzXS9nLCAnXHUyNTg4Jyk7XG4gICAgICB9XG4gICAgICBlbHNlIGlmICh0ZXh0LnN0YXJ0c1dpdGgoXCJ+KFwiKSAmJiB0ZXh0LmVuZHNXaXRoKCcpJykpIHtcbiAgICAgICAgbGV0IHBhcnQgPSB0ZXh0LnN1YnN0cmluZygxKTtcbiAgICAgICAgbGV0IGNvbnRlbnQgPSBwYXJ0LnN1YnN0cmluZyhwYXJ0Lmxlbmd0aC0xLDEpO1xuICAgICAgICBjb2RlLmFkZENsYXNzKCdibHVyLWJvbmUnKTtcbiAgICAgICAgY29kZS5pbm5lclRleHQ9Y29udGVudDtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHRleHQuc3RhcnRzV2l0aCgnfnsnKSAmJiB0ZXh0LmVuZHNXaXRoKCd9JykpIHtcbiAgICAgICAgbGV0IHBhcnQgPSB0ZXh0LnN1YnN0cmluZygxKTtcbiAgICAgICAgbGV0IGNvbnRlbnQgPSBwYXJ0LnN1YnN0cmluZyhwYXJ0Lmxlbmd0aC0xLDEpO1xuICAgICAgICBjb2RlLmFkZENsYXNzKCdibHVyLWlubGluZScpO1xuICAgICAgICBjb2RlLmlubmVyVGV4dD1jb250ZW50O1xuICAgICAgfVxuICAgIH0pXG4gIH1cbn0iXSwKICAibWFwcGluZ3MiOiAi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 diff --git a/main.ts b/main.ts index 3832e43..989c46f 100644 --- a/main.ts +++ b/main.ts @@ -31,7 +31,6 @@ export default class BlurPlugin extends Plugin { } async blurBlockHandler(type: ComponentChoice, source: string, el: HTMLElement, ctx: any): Promise { - const element:any = document.createRange().createContextualFragment(source) if (el.className==='block-language-blur-brick') { const block = el.createEl("div", {cls: "blur-brick-block"}) let inputElement: HTMLElement @@ -39,7 +38,8 @@ export default class BlurPlugin extends Plugin { source.split(/\W+/).forEach((w:string) => { let word = w.trim(); if (word !== '') { - inputElement.appendChild(createEl('code', {text: word, cls: "blur-brick" })); + //redact w/ char '█' █ █ + inputElement.appendChild(createEl('code', {text: word.replace(/[^\s]/g, '█'), cls: "blur-brick" })); } }) } @@ -57,7 +57,13 @@ export default class BlurPlugin extends Plugin { else if (el.className==='block-language-blur') { const block = el.createEl("div", {cls: "blur-block"}) let inputElement: HTMLElement - inputElement = block.createEl("div", {text: source, cls: "blur-innerblock"}) + inputElement = block.createEl("div", {text: '', cls: "blur-innerblock"}) + source.split(/\W+/).forEach((w:string) => { + let word = w.trim(); + if (word !== '') { + inputElement.appendChild(createEl('code', {text: word, cls: "blur-inline"})); + } + }) } } } @@ -66,20 +72,24 @@ export function buildPostProcessor(): MarkdownPostProcessor { return (el) => { el.findAll("code").forEach((code) => { let text = code.innerText.trim(); - if (text.startsWith('~[]')) { - let blur = text.substring(3).trim(); + if (text.startsWith('~[') && text.endsWith(']')) { + let part = text.substring(1); + let content = part.substring(part.length-1,1); code.addClass('blur-brick'); - code.innerText=blur; + //redact w/ char '█' █ █ + code.innerText=content.replace(/[^\s]/g, '█'); } - else if (text.startsWith('~{}')) { - let blur = text.substring(3).trim(); - code.addClass('blur-inline'); - code.innerText=blur; + else if (text.startsWith("~(") && text.endsWith(')')) { + let part = text.substring(1); + let content = part.substring(part.length-1,1); + code.addClass('blur-bone'); + code.innerText=content; } - else if (text.startsWith("~()")) { - let blur = text.substring(3).trim(); - code.addClass('blur-bone'); - code.innerText=blur; + else if (text.startsWith('~{') && text.endsWith('}')) { + let part = text.substring(1); + let content = part.substring(part.length-1,1); + code.addClass('blur-inline'); + code.innerText=content; } }) } diff --git a/manifest.json b/manifest.json index eefa186..85eecf0 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-blur", "name": "Obsidian Blur", - "version": "0.0.2", + "version": "0.0.3", "minAppVersion": "0.15.0", "description": "Obsidian plugin for creating obfuscated blocks of text.", "author": "@gapmiss", diff --git a/styles.css b/styles.css index 8b0f2fe..3511fdf 100644 --- a/styles.css +++ b/styles.css @@ -1,9 +1,9 @@ :root { --obsidian-blur-bone-border-radius:1.33em; --obsidian-blur-bone-line-height:1; - --obsidian-blur-brick-border-radius:.33em; + --obsidian-blur-brick-border-radius:1px; --obsidian-blur-brick-line-height:1; - --obsidian-blur-filter:3.3px; + --obsidian-blur-filter:5px; } body.theme-dark { --obsidian-blur-brick-color:hsla(220,100%,100%,1); @@ -16,17 +16,15 @@ body.theme-light { div.blur-block { filter: blur(var(--obsidian-blur-filter)) !important; -webkit-filter: blur(var(--obsidian-blur-filter)) !important; - /* background-color: transparent !important; */ } .obsidian-blur-hover div.blur-block:hover { filter: blur(0px) !important; -webkit-filter: blur(0px) !important; - /* background-color: transparent !important; */ } code.blur-inline { filter: blur(var(--obsidian-blur-filter)) !important; -webkit-filter: blur(var(--obsidian-blur-filter)) !important; - /* background-color: transparent !important; */ + display:inline-block !important; } .obsidian-blur-hover code.blur-inline:hover { filter: blur(0) !important; @@ -37,27 +35,24 @@ code.blur-bone { color: var(--obsidian-blur-bone-color) !important; border-radius: var(--obsidian-blur-bone-border-radius) !important; line-height: var(--obsidian-blur-bone-line-height) !important; + display:inline-block !important; } .obsidian-blur-hover code.blur-bone:hover { background-color: transparent !important; - /* color: inherit !important; */ } code.blur-brick { background-color: var(--obsidian-blur-brick-color) !important; color: var(--obsidian-blur-brick-color) !important; border-radius: var(--obsidian-blur-brick-border-radius) !important; - /* color: transparent !important; */ line-height: var(--obsidian-blur-brick-line-height) !important; + display:inline-block !important; } .obsidian-blur-hover code.blur-brick:hover { background-color: transparent !important; - /* color: inherit !important; */ } .blur-bone-innerblock code.blur-bone { - margin-right: 10px !important; - margin-block: calc(2 + var(--obsidian-blur-bone-line-height)px); + margin: .25em; } .blur-brick-innerblock code.blur-brick { - margin-right: 3px; - padding-right: 6px; + margin: .25em; } \ No newline at end of file diff --git a/versions.json b/versions.json index 5e7b85b..21ee644 100644 --- a/versions.json +++ b/versions.json @@ -1,4 +1,5 @@ { + "0.0.3": "0.15.0", "0.0.2": "0.15.0", "0.0.1": "0.15.0" }