38 lines
1.1 KiB
TypeScript
38 lines
1.1 KiB
TypeScript
import twColors from "tailwindcss/colors"
|
|
import {kv} from "@app/storage"
|
|
import {synced} from "@welshman/store"
|
|
|
|
export const colors = [
|
|
["amber", twColors.amber[600]],
|
|
["blue", twColors.blue[600]],
|
|
["cyan", twColors.cyan[600]],
|
|
["emerald", twColors.emerald[600]],
|
|
["fuchsia", twColors.fuchsia[600]],
|
|
["green", twColors.green[600]],
|
|
["indigo", twColors.indigo[600]],
|
|
["sky", twColors.sky[600]],
|
|
["lime", twColors.lime[600]],
|
|
["orange", twColors.orange[600]],
|
|
["pink", twColors.pink[600]],
|
|
["purple", twColors.purple[600]],
|
|
["red", twColors.red[600]],
|
|
["rose", twColors.rose[600]],
|
|
["sky", twColors.sky[600]],
|
|
["teal", twColors.teal[600]],
|
|
["violet", twColors.violet[600]],
|
|
["yellow", twColors.yellow[600]],
|
|
["zinc", twColors.zinc[600]],
|
|
]
|
|
|
|
export const theme = synced({
|
|
key: "theme",
|
|
defaultValue: window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light",
|
|
storage: kv,
|
|
})
|
|
|
|
// Hook for development
|
|
Object.assign(window, {
|
|
setFlTheme: (t: string) => {
|
|
document.body.setAttribute("data-fl-theme", t)
|
|
},
|
|
})
|