import fileToString from '../filters/file-to-string.js'
import minifyCSS from '../filters/minify-css.js'
export default ({
colors: {black, darkGray, lightGray, primary, white},
numbering
}) => {
var root = `/* _includes/shortcodes/internal-css.js */
:root {
/* Color Codes */
${white ? `--white: ${white.rgb};` : ''}
${lightGray ? `--lightGray: ${lightGray.rgb};` : ''}
${darkGray ? `--darkGray: ${darkGray.rgb};` : ''}
${black ? `--black: ${black.rgb};` : ''}
${primary ? `--primary: ${primary.rgb};` : ''}
/* Named Properties */
--background-color: rgb(var(--white));
--text-color: rgb(var(--black));
--background-gray: rgb(var(--lightGray));
--text-gray: rgb(var(--darkGray));
--border: 1px solid var(--background-gray);
}
@media screen {
@media (prefers-color-scheme: dark) {
:root {
--background-color: rgb(var(--black));
--text-color: rgb(var(--white));
--background-gray: rgb(var(--darkGray));
--text-gray: rgb(var(--lightGray));
}
}
}`
var fonts = 'css/fonts.css'
var layout = 'css/layout.css'
var numberingCSS = 'css/numbering.css'
var typography = 'css/typography.css'
var colors = 'css/colors.css'
var css = ''
css += `/* ./${fonts} */ ${fileToString(fonts)}`
css += `/* ./${layout} */ ${fileToString(layout)}`
css += `/* ./${typography} */ ${fileToString(typography)}`
css += `/* ./${colors} */ ${fileToString(colors)}`
if(numbering) {
css += `/* ./${numberingCSS} */ ${fileToString(numberingCSS)}`
}
return minifyCSS(root + css)
}