You've already forked AstralRinth
forked from didirus/AstralRinth
* fix tauri config * fix package patch * regen pnpm lock * use new workflow * New GH actions * Update lockfile * update scripts * Fix build script * Fix missing deps * Fix assets eslint * Update libraries lint * Fix all lint configs * update lockfile * add fmt + clippy fails * Separate App Tauri portion * fix app features * Fix lints * install tauri cli * update lockfile * corepack, fix lints * add store path * fix unused import * Fix tests * Issue templates + port over tauri release * fix actions * fix before build command * Add X86 target * Update build matrix * finalize actions * make debug build smaller * Use debug build to make cache smaller * dummy commit * change proj name * update file name * Use release builds for less space use * Remove rust cache * Readd for app build * add merge queue trigger
39 lines
1.0 KiB
JavaScript
39 lines
1.0 KiB
JavaScript
export default defineNitroPlugin((nitroApp) => {
|
|
nitroApp.hooks.hook("render:html", (html, { event }) => {
|
|
try {
|
|
const cookies = parseCookies(event);
|
|
|
|
if (cookies && cookies["color-mode"]) {
|
|
const theme = JSON.parse(cookies["color-mode"]);
|
|
|
|
html.htmlAttrs.push(`class="${theme.value}-mode"`);
|
|
} else {
|
|
html.htmlAttrs.push(`class="dark-mode"`);
|
|
}
|
|
|
|
// Reset cookie attributes to correct ones
|
|
if (cookies) {
|
|
const opts = {
|
|
maxAge: 60 * 60 * 24 * 365 * 10,
|
|
sameSite: "lax",
|
|
secure: true,
|
|
httpOnly: false,
|
|
path: "/",
|
|
};
|
|
|
|
if (cookies["auth-token"]) {
|
|
setCookie(event, "auth-token", cookies["auth-token"], opts);
|
|
}
|
|
if (cookies["color-mode"]) {
|
|
setCookie(event, "color-mode", cookies["color-mode"], opts);
|
|
}
|
|
if (cookies.cosmetics) {
|
|
setCookie(event, "cosmetics", cookies.cosmetics, opts);
|
|
}
|
|
}
|
|
} catch (err) {
|
|
console.error(err);
|
|
}
|
|
});
|
|
});
|