Commit graph

1212 commits

Author SHA1 Message Date
Corbin Crutchley
c039ea93a1
Fix external astro image usage (#4147)
* fix: enable @astrojs/image to be used inside of non-vite contexts

* chore: add changeset

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-08-05 18:56:12 -05:00
Ben Holmes
2675b8633c
Frontmatter injection for MD and MDX (#4176)
* feat: inject vfile data as exports

* feat: add vfile to renderMarkdown output

* feat: add safe astroExports parser to utils

* refactor: expose vite-plugin-utils on astro package

* feat: handle astroExports in mdx

* deps: vfile

* chore: lockfile

* test: astroExports in mdx

* refactor: merge plugin exports into forntmatter

* refactor: astroExports -> astro.frontmatter

* refactor: md astroExports -> astro.frontmatter

* feat: astro.frontmatter vite-plugin-markdown

* chore: remove unused import

* fix: inline safelyGetAstroData in MDX integration

* chore: check that frontmatter export is valid export name

* chore: error log naming

* test: mdx remark frontmatter injection

* fix: inconsistent shiki mod resolution

* fix: add new frontmatter and heading props

* test: remark vdata

* fix: spread astro.data.frontmatter

* test deps: mdast-util-to-string, reading-time

* fix: astro-md test package name

* test: md frontmatter injection

* fix: layouts

* deps: remove vite-plugin-utils export

* fix: package lock

* chore: remove dup import

* chore: changeset

* chore: add comment on safelyGetAstroData source

* deps: move mdast-util-to-string + reading-time to test fixture

* chore: move remark plugins to test fixture

* fix: override plugin frontmatter with user frontmatter

* test: md injected frontmatter overrides

* test: frontmatter injection overrides mdx
2022-08-05 18:55:38 -05:00
Jack Merrill
4678a3f358
feat(image): Add GIF -> WEBP support (#4139) (#4140)
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-08-05 17:32:45 -05:00
Nate Moore
9afa4611cb
Support Fragment in MDX files (#4136)
* fix: Fragment for MDX files

* Update core.ts

* fix: better type guard for `render`

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-05 17:16:34 -05:00
Nate Moore
c56a9227c7
Fix [Object object] in MDX output (#4180)
* fix: use stringifyChunk in `renderToString` fn

* chore: add changeset

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-05 17:12:18 -05:00
Matthew Phillips
69db0298d0
Update compiler version (#4175)
* Update compiler version

* Adds a changesetp

* Update lockfile

* Skip old non-html5 doctype test

* update compiler to 0.23.1
2022-08-05 17:41:35 -04:00
Matthew Phillips
8eb3a8c6d9
Add test for mdx + React usage (#4174)
* Add test for mdx + React usage

* Add a changeset

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-08-05 17:13:30 -04:00
Tony Sullivan
5811208182
Fixes local image resolution in SSR builds on Windows (#4173)
* fixing SSR local file resolution path on windows

* chore: add changeset

* nit: fixing typo in image README file

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-08-05 20:36:30 +00:00
Ben Holmes
471c6f784e
[markdown] Harder, better, faster, stronger vite-plugin-markdown (#4137)
* refactor: vite-plugin-md -> vite-plugin-md-legacy

* wip: add vite-plugin-md

* feat: always apply jsx renderer

* fix: markHTMLString on VNode result

* feat: apply new vite-plugin-markdown!

* fix: add meta export to md

* fix: remove needless $$metadata export

* fix: toggle to legacy plugin on flag

* fix: pass fileId to renderMarkdown

* test: raw and compiled content on plain md

* fix: escape vite env refs

* refactor: astro-md -> legacy-astro-flavored-md, astro-md-mode -> astro-markdown

* fix: import.meta.env refs with tests

* fix: add pkg.json to clientAddress

* fix: prefer JSX integration over Astro runtime

* Revert "fix: prefer JSX integration over Astro runtime"

This reverts commit 3e5fa49344be9c857393da9af095faab152e92e1.

* fix: remove .mdx check on importSource

* chore: changeset

* chore: remove TODO

* fix: add back getHeadings

* fix: add pkg.json to astro-head fixture

* fix: default to Astro renderer for MDX and MD

* feat: add "headings" and "frontmatter" to md layouts

* refactor: remove legacy flag conditionals from legacy plugin

* fix: add back MDX warning when legacy is off

* test: getHeadings() glob

* fix: add error on "astro.headings" access

* feat: update docs example astro.headings => headings

* refactor: readFile as string w/ utf-8

* chore: remove astro metadata TODO

* refactor: stringify HTML once

* fix: add pkg.json to glob-pages-css
2022-08-05 15:43:50 -04:00
Nate Moore
36223f663e
Add getViteConfig helper (#4154)
* feat: add astro/compat entrypoint for vitest

* chore: add with-vitest example

* chore: add vitest as optional peer dependency

* chore: update lockfile

* refactor: remove astro/compat, use astro/config

* feat: allow arbitrary modes for `create-vite`

* feat: pass vite mode and command when using `getViteConfig`

* chore: remove vitest from peer deps

* chore: add changeset

* chore: update lockfile

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-05 14:41:01 -05:00
Nate Moore
025743849d
Fix duplicate CSS in dev mode (#4157)
* fix(hmr): remove SSR styles once HMR styles are injected

* refactor: remove data-astro-injected tag

* chore: add changeset

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-05 13:36:03 -05:00
Nate Moore
e569f0a5c7
Handle edge case in jsx-runtime (#4158)
* fix(#4135): handle edge case in jsx-runtime

* test: add mdx test case

* chore: fix utils reference

* test: fix mdx escape test

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-05 10:35:47 -05:00
hippotastic
16034f0dd5
Fix double-escaping of non-highlighted code blocks in Astro-flavored markdown (#4169) 2022-08-05 16:23:16 +02:00
Matthew Phillips
82a1063cc2
Include CSS when child component uses Astro.glob on page (#4156)
* Include CSS when child component uses Astro.glob on page

* windows compat

* Make work on windows

* Remove unnecessary concat
2022-08-05 09:52:12 -04:00
Fred K. Schott
c7efcf57e0
fix missing newline bug in mdx (#4145) 2022-08-04 23:12:07 -07:00
Fred K. Schott
3321aace06
improve an error message for getstaticpaths (#4153) 2022-08-04 23:11:58 -07:00
kagankan
81c9ad9a6b
Add vite.build.cssTarget support for CSS build (#4155)
* Add `vite.build.cssTarget` support for CSS build

* chore: update lockfile

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-04 14:39:43 -05:00
Fred K. Bot
32580d4fdc
[ci] release (#4152)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-08-04 12:21:38 -04:00
Matthew Phillips
4d64752274
Order server CSS the same as static (#4149)
* Order server CSS the same as static

* Adds a changeset
2022-08-04 11:43:25 -04:00
Fred K. Bot
7300f094fd
[ci] release (#4133)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-08-03 23:14:04 -07:00
Fred K. Schott
65f2d3b4b1
fix windows package export (#4141)
* fix windows package export

* Create neat-badgers-bow.md
2022-08-03 23:11:37 -07:00
Ben Holmes
2968ba2b6f
[MDX] Add headings and frontmatter to layout props (#4134)
* feat: expose headings on layout props

* test: frontmatter AND content

* test: headings in layouts

* chore: changeset
2022-08-03 17:54:55 -04:00
Viktor Persson
ec5518fe30
Add mdx extension to tailwind content glob. (#4063)
* Add mdx extension to tailwind content glob.

* Create wicked-hairs-rescue.md

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-08-03 14:04:44 -05:00
Nate Moore
5f3b3b44db
Improve style HMR (#4125)
* feat: improve style HMR

* chore: add inline comments

* Update hmr.ts

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-03 14:03:56 -05:00
Matthew Phillips
09eca9be5e
Only rethrow renderer error when no renderer found (#4131)
* Only rethrow renderer error when no renderer found

* Adds a changeset
2022-08-03 14:33:31 -04:00
Alan
08432d5b01
Allow globbed mdx files to have typed frontmatter (#4108)
* Allow frontmatter typing for .mdx files from glob

`Astro.glob<T>("*.md")` is special cased to allow `T` to be a type for the frontmatter in the markdown. Since .mdx files also get frontmatter added to the globbed result, let's type it as such.

* Add changeset

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Tony Sullivan <tony.f.sullivan@outlook.com>
2022-08-03 10:45:31 -05:00
Fred K. Bot
077d78fddc
[ci] release (#4116)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-08-02 14:50:21 -07:00
Matthew Phillips
2ee8e881d4
Upgrade Vite to 3.0.4 (#4124)
* Upgrade Vite to 3.0.4

* Add a changeset
2022-08-02 14:25:38 -07:00
Erika
64432bcb87
Refactor @astrojs/prism, fix Prism component import not working (#4114)
* Upgrade @astrojs/prism to a real package, fix component import not working

* Remove `@astrojs/prism` as a dependency of `astro`

* Update lock file

* Refactor to multiple files

* Oops, can't have astro imports run inside node

* Follow Nate's suggestion on being minors instead of patchs

* Update lockfile
2022-08-02 15:53:18 -04:00
Nate Moore
b60cc0538b
Add generic plugin for page-ssr injection (#4049)
* feat: add generic page-ssr plugin

* refactor: remove page-specific logic from astro/markdown/mdx plugins

* refactor: revert changes to vite-plugin-scripts

* fix: handle injected `page` scripts in build

* fix: prepend injected `page` scripts with `/@id/` in dev

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-02 14:07:17 -05:00
Adrian Dimitrov
9cc3a11c44
Do not send body with HEAD and GET on node integration (#4105)
* Do not send body with HEAD and GET on node integration

* Create seven-suits-sit.md

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-08-02 11:19:43 -05:00
Nate Moore
26cc0bbf78
Do not crawl non-style deps imported by styles (#4115)
* fix: do not crawl non-style deps imported by styles

* Update vite.ts

Co-authored-by: Nate Moore <nate@astro.build>
2022-08-02 10:26:38 -05:00
Matthew Phillips
e33fc9bc46
Load configs with Vite when loading with Proload fails (#4112)
* 4078 breaking test

* Use Vite for loading the config

* Try it

* Fallback to loading with Vite only when needed

* Remove console.error

* Remove extra console.log

* Add a changeset

* Use middlewareMode
2022-08-02 08:08:28 -04:00
Ben Holmes
40ef43a59b
[MDX] Add getHeadings + generate anchor links (#4095)
* deps: mdx github-slugger

* feat: add getHeadings via rehype plugin

* chore: stray console.log

* test: getHeadings w/ & w/0 JSX expressions

* docs: add generated exports

* refactor: pass headings using vfile.data

* deps: vfile

* test: heading anchor IDs

* docs: add collect-headings to default rehype plugins

* chore: changeset

* deps: estree-util-value-to-estree

* refactor: inject getHeadings export the right way!

* deps: switch to acorn

* refactor: just use acorn

* docs: `getHeadings` info structuring

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* docs: clarify `url` example

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* fix: move slugger inside plugin call

* refactor: cleanup code reassignment

* chore: lint

* deps: mdast-util-mdx, test utils

* refactor: add jsToTreeNode util

* feat: expose utils for lib authors

* test: rehype plugins w/ and w/o extends

* test: fixture

* refactor: remove utils from package exports

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2022-08-01 17:23:56 -04:00
Fred K. Bot
268d44e25b
[ci] release (#4086)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-07-30 00:29:04 -04:00
Tony Sullivan
a0d1731a7e
Updates the dev server to handle multiple routes matching the same URL (#4087)
* updates the dev server to handle multiple routes matching the same URL

* Adding an error message when multiple routes match in SSR

* resetting the flag used by the `calledTwiceTest`

* injected routes should be sorted with a higher priority than user-defined routes

* adding routing priority tests for injected routes

* chore: add changeset

* adding a dev test to make sure getStaticPaths is called once
2022-07-29 20:54:51 +00:00
Ben Holmes
1743fe140e
feat: support layout in MDX frontmatter (#4088)
* deps: add gray-matter

* feat: support layout frontmatter property

* test: frontmatter, content prop

* docs: update layout recommendation

* deps: fix lockfile

* chore: changeset

* fix: inherit rollup plugin transform

* fix: avoid parsing frontmatter on custom parsers

* fix: match YAML err handling from md

* docs: absolute url to docs

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>

* chore: formatting

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2022-07-29 11:22:57 -04:00
Matthew Phillips
09c1e586ee
Prevent hydration scripts from being rendered in the wrong order (#4080)
* Prevent hydration scripts from being rendered in the wrong order

* Remove comment

* Update jsx

* Remove promise for stop

* Try skipping lit tests

* Stringify these chunks too

* Unskip lit
2022-07-29 10:46:09 -04:00
Erika
c15cb36636
Fix shape of Markdown component to work with the language-server (#4085)
* Fix shape of Markdown component to work with the language-server

* Add changeset
2022-07-28 16:00:11 -04:00
Fred K. Bot
84193e3ea1
[ci] release (#4081)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-07-28 15:53:57 -04:00
Erika
cc10a5c8e0
Fix misc create-astro issues (#4075)
* Add prompt to automatically fix cache issue

* Throw an error when an invalid template is used

* Use already existing util

* Add changeset
2022-07-28 12:05:39 -04:00
Matthew Phillips
6120a71e54
Ensure file and url are always present in MDX for Astro.glob (#4076) 2022-07-28 10:58:44 -04:00
Fred K. Bot
6d103ddceb
[ci] release (#4056)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-07-28 08:17:45 -04:00
Alfredo González Martínez
c565465a96
Add properties (url, file) to MarkdownContent type (#4028)
'url' and 'file' properties were missing in MarkdownContent type,
but they should there according to:
https://docs.astro.build/en/guides/markdown-content/#markdown-layouts
2022-07-28 08:13:27 -04:00
Matthew Phillips
a198028b04
Fixes cloudflare throwing over process (#4072)
* Fixes cloudflare throwing over process

* Up the timeout for slower CI servers

* Fix linting

* Up the timeout a bit
2022-07-27 16:15:19 -04:00
Matthew Phillips
13b4f8ad88
Add fontsource packages to always be noExternal (#4073)
* Add fontsource packages to always be noExternal

* Adds a changesetp
2022-07-27 15:48:21 -04:00
Matthew Phillips
54b33d50fd
Add errors to cloudflare/vercel adapters when no output config (#4068) 2022-07-27 11:50:48 -04:00
Tony Sullivan
a397b981f5
Fixes type definitions @astrojs/image and adds more documentation to the README (#4045)
* WIP: moving to a static .d.ts types file

* fixing named exports for getImage and getPicture

* removing the exports.astro map for now

* WIP: adding readme docs for component attributes

* Adding docs for getImage and getPicture

* leaning fully on TSC to build .d.ts files

* finally found the solution for proper ESM import types

* adding a note to the README for tsconfig updates

* chore: add changesets

* typo

* docs: removing the "Images in Markdown" example

* removing the need for publishing src to NPM

* fix: make type re-export explicit

* updating image module defs to match InputFormat

* using astro syntax highlighting for README code blocks

* nit: missing backtick in README

* make sure Astro component directives aren't recommended twice
2022-07-27 15:39:05 +00:00
Matthew Phillips
40251118f8
Prevent Svelte HMR warning during the build (#4057) 2022-07-26 14:04:26 -04:00
Matthew Phillips
44694d8a90
Fixes binary data request bodies in the Node adapter (#4055)
* Fixes binary data request bodies in the Node adapter

* Fix type
2022-07-26 10:31:54 -04:00