notion-enhancer/repo/tweaks/client.mjs
dragonwocky 7f266f207b tweak: full width pages + table wrap bugfixes
+ neutral theme font size fix + menu focused mod b/w tab switching fix
2021-10-10 16:33:06 +11:00

53 lines
1.5 KiB
JavaScript

/*
* notion-enhancer: tweaks
* (c) 2021 dragonwocky <thedragonring.bod@gmail.com> (https://dragonwocky.me/)
* (https://notion-enhancer.github.io/) under the MIT license
*/
'use strict';
export default async function (api, db) {
const { web } = api;
const cssInsert = await db.get(['insert.css']);
if (cssInsert?.filename) {
document.head.append(
web.html`<style id="enhancer--tweak-${cssInsert.filename}">${cssInsert.content}</style>`
);
}
const responsiveBreakpointPx = await db.get(['tweak.responsive_breakpoint_px']),
responsiveBreakpointPercent =
screen.width * 0.01 * (await db.get(['tweak.responsive_breakpoint_percent'])),
addResponsiveBreakpoint = () => {
document.body.classList.remove('enhancer--tweak-responsive_breakpoint');
if (
window.innerWidth <= responsiveBreakpointPx ||
window.innerWidth <= responsiveBreakpointPercent
) {
document.body.classList.add('enhancer--tweak-responsive_breakpoint');
}
};
window.addEventListener('resize', addResponsiveBreakpoint);
addResponsiveBreakpoint();
const tweaks = [
'full_width_pages',
'normalise_table_scroll',
'hide_help',
'hide_slash_for_commands',
'snappy_transitions',
'thicker_bold',
'spaced_lines',
'condensed_bullets',
'bracketed_links',
'accented_links',
'quotation_marks',
];
for (const tweak of tweaks) {
if (await db.get([`tweak.${tweak}`])) {
document.body.classList.add(`enhancer--tweak-${tweak}`);
}
}
}