ppx_cssnow works on browser versions that don't have access toCSSStyleSheet.ppx_cssnow supports CSS variables.- CSS variables are now hashed.
- A function,
Variables.setis generated whose signature is?variable_name1:string -> ?variable_name2:string -> ... -> Vdom.Attr.t
- New flags to control hashing behavior. Syntax is
[%css stylesheet {|...|} ~dont_hash:[] ~dont_hash_prefixes:[] ~rewrite:[]].dont_hash: string listcan be used to disable hashing behavior.dont_hash_prefixes: string listcan be used to disable hashing behavior based on a prefix.rewrite: (string * string) listcan be used to override hashing behavior by "rewriting" identifiers (e.g.["a", "b"; "c", "d"]results in "a" being "rewritten" to "b" and "c" to "d").
Breaking changes:
- Renamed the callsite from
[%css.raw {|...|}]to[%css stylesheet {|...|}]. ppx_cssused to generate OCaml stringsval identifier : string, now the identifiers generateval identifier : Vdom.Attr.t. Where the attribute is applied withVdom.Attr.class_orVdom.Attr.iddepending on the identifier that was used. If there are classes and id's with the same name,<identifier>_idand<identifier>_classare generated instead. This was only done for convenience of users that use ppx_css alongside the libraryvirtual_domorbonsai_webthat always calledVdom.Attr.class_orVdom.Attr.id. If you would like to still access the strings directly, they will be contained within newly generatedFor_referencingmodule.