summaryrefslogtreecommitdiff
path: root/src/compiler/optimize/prism.ts (follow)
AgeCommit message (Collapse)AuthorFilesLines
2021-04-09Parse inner JSX as Astro (#67)Gravatar Matthew Phillips 1-85/+0
* Parse inner JSX as Astro This completes the compiler changes, updating the parser so that it parses inner "JSX" as Astro. It does this by finding the start and end of HTML tags and feeds that back into the parser. The result is a structure like this: ``` { type: 'MustacheTag', expression: [ { type: 'Expression', codeStart: 'colors.map(color => (', codeEnd: '}}' children: [ { type: 'Fragment', children: [ { type: 'Element', name: 'div' } ] } ] } ] } ``` There is a new Node type, `Expression`. Note that `MustacheTag` remains in the tree, all it contains is an Expression though. I could spend some time trying to remove it, there's just a few places that expect it to exist. * Update import to the transform * Transform prism components into expressions
2021-04-08[ci] npm run formatGravatar matthewp 1-1/+1
2021-04-08Add support for syntax highlighting of code blocks (#65)Gravatar Matthew Phillips 1-0/+85
* Add support for syntax highlighting of code blocks * Escape usage of backtick strings * Add workspace root for snowpack * Use prismjs/components as an external module