Files
seasoned/src/modules/darkmodeModule.ts
Kevin 8e586811ec Feat: vite & upgraded dependencies (#100)
* On every route change, update local variables from query params

* ResultSection is keyed to query to force re-render

* Resolved lint warnings

* replace webpack w/ vite

* update all imports with alias @ and scss

* vite environment variables, also typed

* upgraded eslint, defined new rules & added ignore comments

* resolved linting issues

* moved index.html to project root

* updated dockerfile w/ build stage before runtime image definition

* sign drone config
2026-02-23 20:53:19 +01:00

32 lines
783 B
TypeScript

/* eslint-disable no-param-reassign */
import IStateDarkmode from "../interfaces/IStateDarkmode";
const state: IStateDarkmode = {
darkmodeSupported: false,
userChoice: undefined
};
/* eslint-disable @typescript-eslint/no-shadow */
export default {
namespaced: true,
state,
getters: {
darkmodeSupported: (state: IStateDarkmode) => state.darkmodeSupported
},
mutations: {
SET_DARKMODE_SUPPORT: (
state: IStateDarkmode,
browserSupported: boolean
) => {
state.darkmodeSupported = browserSupported;
}
},
actions: {
findAndSetDarkmodeSupported({ commit }) {
const browserSupported =
window.matchMedia("(prefers-color-scheme)").media !== "not all";
commit("SET_DARKMODE_SUPPORT", browserSupported);
}
}
};