Given an *.elm
file, it will use elm-css
to generate *.css
files. A vinyl object will be emitted for each *.css
file that is generated.
Example
on the elm side
-- HomeCss.elm module HomeCss exposing (..) import Css exposing (..)import Css.Namespace exposing (namespace) type CssIds = Home css = (stylesheet << namespace "home") [ id Home [ backgroundColor (hex "000000") , color (hex "FFFFFF") ] ]
-- MyStyles.elm port module MyStyles exposing (..) import Css.File exposing (CssFileStructure, CssCompilerProgram)import AboutCssimport HomeCssimport SharedCss port files : CssFileStructure -> Cmd msg fileStructure : CssFileStructurefileStructure = Css.File.toFileStructure [ ( "shared.css", Css.File.compile [ SharedCss.css ] ) , ( "home.css", Css.File.compile [ HomeCss.css ] ) , ( "about.css", Css.File.compile [ AboutCss.css ] ) ] main : CssCompilerProgrammain = Css.File.compiler files fileStructure
on the gulp side
const elmCss = gulp