key_theme_generator/key_theme_generator.sh

8 lines
3.9 KiB
Bash
Executable File

#!/usr/bin/env bash
config='theme.sh'
source ${config}
for var in "${accent}" "${bg}" "${fg}" "${fgOnAccent}" "${fgOnWhite}" "${link}" "${hashtag}" "${renote}" "${infoBg}" "${infoFg}" "${infoWarnBg}" "${infoWarnFg}" "${badge}" "${success}" "${error}" "${warn}" "${codeString}" "${codeNumber}" "${codeBoolean}" "${deckBg}"
do [ "$var" == '' ] && echo 'don'"'"'t be silly, you forgot to fill something in '${config}'!' && exit 1
done
printf '{\n\tbase: '"'"'dark'"'"',\n\tprops: {\n\t\taccent: '"'${accent}'"',\n\t\taccentDarken: '"'"':darken<10<@accent'"'"',\n\t\taccentLighten: '"'"':lighten<10<@accent'"'"',\n\t\taccentedBg: '"'"':alpha<0.15<@accent'"'"',\n\t\tfocus: '"'"':alpha<0.3<@accent'"'"',\n\t\tbg: '"'${bg}'"',\n\t\tacrylicBg: '"'"':alpha<0.5<@bg'"'"',\n\t\tfg: '"'${fg}'"',\n\t\tfgTransparentWeak: '"'"':alpha<0.75<@fg'"'"',\n\t\tfgTransparent: '"'"':alpha<0.5<@fg'"'"',\n\t\tfgHighlighted: '"'"':lighten<3<@fg'"'"',\n\t\tfgOnAccent: '"'${fgOnAccent}'"',\n\t\tfgOnWhite: '"'${fgOnWhite}'"',\n\t\tdivider: '"'"'rgba(255, 255, 255, 0.1)'"'"',\n\t\tindicator: '"'"'@accent'"'"',\n\t\tpanel: '"'"':lighten<3<@bg'"'"',\n\t\tpanelHighlight: '"'"':lighten<3<@panel'"'"',\n\t\tpanelHeaderBg: '"'"':lighten<3<@panel'"'"',\n\t\tpanelHeaderFg: '"'"'@fg'"'"',\n\t\tpanelHeaderDivider: '"'"'rgba(0, 0, 0, 0)'"'"',\n\t\tpanelBorder: '"'"'" solid 1px var(--divider)'"'"',\n\t\tthread: '"'"':lighten<12<@panel'"'"',\n\t\tacrylicPanel: '"'"':alpha<0.5<@panel'"'"',\n\t\twindowHeader: '"'"':alpha<0.85<@panel'"'"',\n\t\tpopup: '"'"':lighten<3<@panel'"'"',\n\t\tshadow: '"'"'rgba(0, 0, 0, 0.3)'"'"',\n\t\theader: '"'"'alpha<0.7<@panel'"'"',\n\t\tnavBg: '"'"'@panel'"'"',\n\t\tnavFg: '"'"'@fg'"'"',\n\t\tnavHoverFg: '"'"':lighten<17<@fg'"'"',\n\t\tnavActive: '"'"'@accent'"'"',\n\t\tnavIndicator: '"'"'@indicator'"'"',\n\t\tlink: '"'${link}'"',\n\t\thashtag: '"'${hashtag}'"',\n\t\tmention: '"'"'@accent'"'"',\n\t\tmentionMe: '"'"'@mention'"'"',\n\t\trenote: '"'${renote}'"',\n\t\tmodalBg: '"'"'rgba(0, 0, 0, 0.5)'"'"',\n\t\tscrollbarHandle: '"'"'rgba(255, 255, 255, 0.2)'"'"',\n\t\tscrollbarHandleHover: '"'"'rgba(255, 255, 255, 0.4)'"'"',\n\t\tdateLabelFg: '"'"'@fg'"'"',\n\t\tinfoBg: '"'${infoBg}'"',\n\t\tinfoFg: '"'${infoFg}'"',\n\t\tinfoWarnBg: '"'${infoWarnBg}'"',\n\t\tinfoWarnFg: '"'${infoWarnFg}'"',\n\t\tswitchBg: '"'"'rgba(255, 255, 255, 0.15)'"'"',\n\t\tbuttonBg: '"'"'rgba(255, 255, 255, 0.05)'"'"',\n\t\tbuttonHoverBg: '"'"'rgba(255, 255, 255, 0.1)'"'"',\n\t\tbuttonGradateA: '"'"'@accent'"'"',\n\t\tbuttonGradateB: '"'"':hue<20<@accent'"'"',\n\t\tswitchOffBg: '"'"'rgba(255, 255, 255, 0.1)'"'"',\n\t\tswitchOffFg: '"'"':alpha<0.8<@fg'"'"',\n\t\tswitchOnBg: '"'"'@accentedBg'"'"',\n\t\tswitchOnFg: '"'"'@accent'"'"',\n\t\tinputBorder: '"'"'rgba(255, 255, 255, 0.1)'"'"',\n\t\tinputBorderHover: '"'"'rgba(255, 255, 255, 0.2)'"'"',\n\t\tlistItemHoverBg: '"'"'rgba(255, 255, 255, 0.03)'"'"',\n\t\tdriveFolderBg: '"'"':alpha<0.3<@accent'"'"',\n\t\twallpaperOverlay: '"'"'rgba(0, 0, 0, 0.5)'"'"',\n\t\tbadge: '"'${badge}'"',\n\t\tmessageBg: '"'"'@bg'"'"',\n\t\tsuccess: '"'${success}'"',\n\t\terror: '"'${error}'"',\n\t\twarn: '"'${warn}'"',\n\t\tcodeString: '"'${codeString}'"',\n\t\tcodeNumber: '"'${codeNumber}'"',\n\t\tcodeBoolean: '"'${codeBoolean}'"',\n\t\tdeckBg: '"'${deckBg}'"',\n\t\thtmlThemeColor: '"'"'@bg'"'"',\n\t\tX2: '"'"':darken<2<@panel'"'"',\n\t\tX3: '"'"'rgba(255, 255, 255, 0.05)'"'"',\n\t\tX4: '"'"'rgba(255, 255, 255, 0.1)'"'"',\n\t\tX5: '"'"'rgba(255, 255, 255, 0.05)'"'"',\n\t\tX6: '"'"'rgba(255, 255, 255, 0.15)'"'"',\n\t\tX7: '"'"'rgba(255, 255, 255, 0.05)'"'"',\n\t\tX8: '"'"':lighten<5<@accent'"'"',\n\t\tX9: '"'"':darken<5<@accent'"'"',\n\t\tX10: '"'"':alpha<0.4<@accent'"'"',\n\t\tX11: '"'"'rgba(0, 0, 0, 0.3)'"'"',\n\t\tX12: '"'"'rgba(255, 255, 255, 0.1)'"'"',\n\t\tX13: '"'"'rgba(255, 255, 255, 0.15)'"'"',\n\t\tX14: '"'"':alpha<0.5<@navBg'"'"',\n\t\tX15: '"'"':alpha<0<@panel'"'"',\n\t\tX16: '"'"':alpha<0.7<@panel'"'"',\n\t\tX17: '"'"':alpha<0.8<@bg'"'"',\n\t},\n}' > theme.css