mirror of
https://github.com/laurent22/joplin.git
synced 2024-12-27 10:32:58 +02:00
611be7c0fa
* Delete unused file * Implement CssUtils * Inject custom CSS styles * Add info about custom CSS styles to README * Add note that ElectronClient/app/app.js is generated * Add support for Setting.TYPE_BUTTON * Add buttons in Preferences to open custom CSS files * Swap custom CSS filenames * Swap custom CSS filenames * Wrap "Edit" with translation fn * Incorporate PR feedback from @laurent22 * Add openOrCreateFile to Settings * Move openOrCreateFile to shim * Removing header for now - see https://github.com/laurent22/joplin/pull/2099#discussion_r353120915
28 lines
724 B
JavaScript
28 lines
724 B
JavaScript
const fs = require('fs-extra');
|
|
|
|
const loadCustomCss = async filePath => {
|
|
let cssString = '';
|
|
if (await fs.pathExists(filePath)) {
|
|
try {
|
|
cssString = await fs.readFile(filePath, 'utf-8');
|
|
} catch (error) {
|
|
let msg = error.message ? error.message : '';
|
|
msg = `Could not load custom css from ${filePath}\n${msg}`;
|
|
error.message = msg;
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
return cssString;
|
|
};
|
|
|
|
const injectCustomStyles = async cssFilePath => {
|
|
const css = await loadCustomCss(cssFilePath);
|
|
const styleTag = document.createElement('style');
|
|
styleTag.type = 'text/css';
|
|
styleTag.appendChild(document.createTextNode(css));
|
|
document.head.appendChild(styleTag);
|
|
};
|
|
|
|
module.exports = {loadCustomCss, injectCustomStyles};
|