Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add explicit tests for "complex" defkeyframes forms
Any form that needs top level language structures (like `(let)`) instead of directly emitting their garden forms are "complex." For style declarations like defclass, we can rely on garden's support for `[:&]` as a self-referential symbol to handle these cases. `(at-keyframes)` *could* support this symbol, but per API expects a variadic sequence of rules, eg `(at-keyframes [:from {:opacity 0}] [:to {:opacity 1}])`. In the currently published version of garden, `defkeyframes` sort of abuses the fact that it incorrectly also accepts a list containing the sequence of rules. However, there's an unpublished change that "fixes" this bug, breaking defkeyframes. Relatedly, our unofficial support for manual `^{:key key}` meta on the first rule doesn't work with complex `defkeyframes`. I'm not *the most* worried about that, but we'll definitely need to fix the first issue, so if we can fix the second while we're there, we might as well.
- Loading branch information