Age | Commit message (Collapse) | Author | Files | Lines |
|
* chore: use monorepo
* chore: scaffold astro-scripts
* chore: move tests inside packages/astro
* chore: refactor tests, add scripts
* chore: move parser to own module
* chore: move runtime to packages/astro
* fix: move parser to own package
* test: fix prettier-plugin-astro tests
* fix: tests
* chore: update package-lock
* chore: add changesets
* fix: cleanup examples
* fix: starter example
* chore: update changeset config
* chore: update changeset config
* chore: setup changeset release workflow
* chore: bump lockfiles
* chore: prism => astro-prism
* fix: tsc --emitDeclarationOnly
* chore: final cleanup, switch to yarn
* chore: add lerna
* chore: update workflows to yarn
* chore: update workflows
* chore: remove lint workflow
* chore: add astro-dev script
* chore: add symlinked README
|
|
* Add portfolio example
* Feedback
|
|
* build: add svelte to dynamic component imports
* fix: svelte bundling
* fix: ensure svelte runtime is bundled with build
* fix: svelte runtime in dev mode
* fix: include svelte runtime in imports
Co-authored-by: Duncan Healy <duncan.healy@gmail.com>
|
|
|
|
* Move the `request` object from import.meta to Astro
This moves the `request` object to the Astro "global" (really just a render-level variable).
* Document Astro.request
|
|
|
|
* fix(www): link styles (#100)
Co-authored-by: Nate Moore <nate@skypack.dev>
* Add `assets/` (#102)
* chore: add assets
* docs: update readme
Co-authored-by: Nate Moore <nate@skypack.dev>
* docs: fix readme
* docs: fix readme
* chore: remove github banner
* Allow multiple JSX in mustache
* Manually discard package-lock update (due to local use of npm v7)
* Tidy up
* Revert mode ts-ignore
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Nate Moore <nate@skypack.dev>
|
|
Another change in snowpack@3 caused this bug. It's not actually a bug in snowpack. Previously snowpack was keeping its list of installed packages in a global cache. In 3.3 it stopped doing so. We were accidentally relying on that global cache to be able to resolve dynamic components.
This fixes it so that we use the frontend snowpack instance to resolve dynamic components. Doing so means they are available when we try to load them.
|
|
* chore(examples): add kitchen-sink
* feat: support children in rendered components
* feat: add support for rendering children in Svelte
* fix: cleanup p/react fragment children
* chore: add @ts-nocheck to svelte files
* chore: update lockfiles
* fix: types
* feat: memoize frontend/renderer/utils
* fix: disable eslint for compiled SvelteWrapper
* fix: add missing dep
Co-authored-by: Nate Moore <nate@skypack.dev>
|
|
* Add Windows to test suite
* Try implicit URL
|
|
|
|
|
|
|
|
* Change to import.meta.glob()
Change of plans—maintain parity with Snowpack and Vite because our Collections API will use a different interface
* Get basic pagination working
* Get params working
* Rename to import.meta.fetchContent
* Upgrade to fdir
|
|
* add dep domhandler imported in in src/build/static
* lint and jsDoc error
* move domhandler to devDep
* chore: add package lock
* escape string jsDoc
* chore: add astro dep in until prism import is refactored
* chore: add snowpack example package lock
|
|
|
|
|
|
|
|
* 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
|
|
|
|
* 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
|
|
* Add example blog
* Add author data
* Improve navigation
* Style nav
* Add friendly error message
* Throw error if import glob used for non-Markdown files
* Use import.meta.collection() API instead
* README fixes
|
|
|
|
* Compiler cleanup
This is general compiler cleanup, especially around the codegen part. Goals here were too:
1. Make it possible to compile HTML recursively (needed for future astro-in-expressions work) by moving that work into its own function.
1. Get rid of collectionItems and have compiling the HTML return just a source string.
Also not planned, this change gets rid of the different between components and pages. All Astro components compile to the same JavaScript.
* Remove unused node types
|
|
|
|
|
|
|
|
* Fix React import
* Change default export
* Fix :visible dynamic component
* Use colon to alias vue createElement
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
|
|
|
|
* Fix complex MDX parsing
This allows fully MDX support using the micromark MDX extension. One caveat is that if you do something like use the less than sign, you need to escape it because the parser expects these to be tags otherwise.
* Move micromark definition
|
|
|
|
|
|
This adds `import.meta.request` to pages (not components).
|
|
* Support for custom elements
Now you can use custom elements like so in Astro components:
```html
<script type="module" src="./datepicker.js">
<date-picker></date-picker>
```
These will be resolve relative to the current astro component. In the build these modules are run through the same bundle/minify process as components.
* Remove component from public
* Formatting
* Disable empty fn rule
|
|
* Extract Astro styles to external stylesheets
* Require relative URLs in Markdown layouts
|
|
|
|
Previously dynamic component URLs were being resolved client-side in a weird way that only worked during dev. This change makes them handle during compilation, so it works in both (and improves readability of the dynamic import output).
|
|
|
|
* Convert CSS Modules to scoped styles
* Update README
* Move class scoping into HTML walker
* Fix SSR styles test
* Fix mustache tags
* Update PostCSS plugin name
* Add JSDoc comment
* Update test
|
|
|
|
* Add support for doctype
* Automatically prepend doctype
|
|
* Bundling! 🤘
* Finalize build changes
|
|
* WIP: new hydration methods
* refactor: genericize load/idle/visible renderers
* fix: do not pass "data-astro-id" to component
* docs: add hydration section to README
* docs: update README
Co-authored-by: Nate Moore <nate@skypack.dev>
|
|
|
|
|
|
|
|
* Add React component SSR
* Add React component SSR
|
|
This updates `astro build` to do a production build. It works! No optimizations yet.
|
|
|
|
This changes all hmx files to astro files and updates all code to not reference hmx any more.
|