darkreader.js 634 B

123456789101112131415161718192021222324252627282930
  1. import { enable, disable, auto, setFetchMethod } from 'darkreader'
  2. import * as params from '@params'
  3. const darkreader = params?.darkmode?.darkreader || {}
  4. const defaultColorScheme = darkreader.defaultColorScheme || 'system'
  5. const theme = {
  6. brightness: 100,
  7. contrast: 100,
  8. sepia: 0,
  9. ...(darkreader.theme || {})
  10. }
  11. const fixes = {
  12. invert: ['img[src$=".svg"]'],
  13. ...(darkreader.fixes || {})
  14. }
  15. setFetchMethod(window.fetch)
  16. export function setSchemeDark () {
  17. enable(theme, fixes)
  18. }
  19. export function setSchemeLight () {
  20. disable()
  21. }
  22. export function setSchemeSystem () {
  23. auto(theme, fixes)
  24. }
  25. export { defaultColorScheme }