Commit graph

106 commits

Author SHA1 Message Date
Josh Goldberg ✨
2fea174303
feat: use typescript-eslint@v6's reworked configs (#7425) 2023-07-03 20:59:43 +08:00
Wooseop Kim
e644b34659
fix: make Picture generate valid dev URLs (#7500) 2023-07-03 16:09:40 +08:00
Paweł Mrowiec
4256409a94
Fix image metadata generation (#7510)
* Fix problem where image metadata generation throwed error when provided url started with /@astroimage

* Remove unnecessary changes
2023-06-30 09:38:23 -05:00
Wooseop Kim
9739adc91f
fix: encode spaces when generating srcset (#7340) 2023-06-22 15:56:41 +08:00
Nate Moore
39403c32fa
Unflag hybrid output (#7260)
* feat(hybrid): unflag hybrid output

* chore: cleanup rebase errors
2023-06-05 13:19:15 -05:00
Nate Moore
e0ca0d8c8a
Revert "feat(hybrid): unflag hybrid output (#7255)" (#7259)
This reverts commit bc5d6ed39f.
2023-05-31 12:06:24 -05:00
Nate Moore
bc5d6ed39f
feat(hybrid): unflag hybrid output (#7255) 2023-05-31 11:47:25 -05:00
matthewp
5c3c672d26 [ci] format 2023-05-17 13:26:03 +00:00
Happydev
719002ca5b
feat: hybrid output (#6991)
* update config schema

* adapt default route `prerender` value

* adapt error message for hybrid output

* core hybrid output support

* add JSDocs for hybrid output

* dev server hybrid output support

* defer hybrid output check

* update endpoint request warning

* support `output=hybrid` in integrations

* put constant variable out of for loop

* revert: reapply back ssr plugin in ssr mode

* change `prerender` option default

* apply `prerender` by default in hybrid mode

* simplfy conditional

* update config schema

* add `isHybridOutput` helper

* more readable prerender condition

* set default prerender value if no export is found

* only add `pagesVirtualModuleId` ro rollup input in `output=static`

* don't export vite plugin

* remove unneeded check

* don't prerender when it shouldn't

* extract fallback `prerender` meta

Extract the fallback `prerender` module meta out of the `scan` function.
It shouldn't be its responsibility to handle that

* pass missing argument to function

* test: update cloudflare integration tests

* test: update tests of vercel integration

* test: update tests of node integration

* test: update tests of netlify func integration

* test: update tests of netlify edge integration

* throw when `hybrid` mode is malconfigured

* update node integraiton `output` warning

* test(WIP): skip node prerendering tests for now

* remove non-existant import

* test: bring back prerendering tests

* remove outdated comments

* test: refactor test to support windows paths

* remove outdated comments

* apply sarah review

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

* docs: `experiment.hybridOutput` jsodcs

* test: prevent import from being cached

* refactor: extract hybrid output check to  function

* add `hybrid` to output warning in adapter hooks

* chore: changeset

* add `.js` extension to import

* chore: use spaces instead of tabs for gh formating

* resolve merge conflict

* chore: move test to another file for consitency

---------

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2023-05-17 09:23:20 -04:00
Bjorn Lu
77270cc2cd
Avoid removing leading slash for build.assetsPrefix (#6969)
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2023-05-02 14:13:44 -04:00
Bjorn Lu
ff04307863
Add build.assetsPrefix option for CDN support (#6714)
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-04-05 21:31:17 +08:00
Erika
46ecf46628
Remove unnecessary image-related .wasm files inside build output when possible (#6701)
* fix(image): Remove unnecessary .wasm files after build

* chore: changeset
2023-03-30 20:57:57 +02:00
Kilian Gosewisch
386336441a
Fix image regeneration after changing image service (#6680) 2023-03-28 14:59:01 +02:00
matthewp
0c8c5fc919 [ci] format 2023-03-23 16:03:49 +00:00
Matthew Phillips
4685f55549
Change how squoosh is loaded in the image integration (#6548)
* WIP fix image integration in Netlify

* Add a changeset

* Try another way

* Get the chunks folder

* try inlining

* deep sigh

* fix some things

* more

* Remove some stuff

* remove unused imports

* Add changeset

* remove unused --copy-wasm

* Remove unused post:build
2023-03-23 12:01:27 -04:00
Erika
1e7d6af412
feat(all): Migrate to TypeScript 5.0 (#6579) 2023-03-20 17:02:07 +01:00
Erika
c44aa15534
fix: Enforce the usage of type imports when possible (#6502) 2023-03-10 16:19:57 +01:00
Vincent Tavernier
e58a92527f
[@astrojs/image] Handle missing trailing slash in processStaticImage (#6421)
The code path changed by this commit isn't only taken when running using Vite. If the site is configured with a base url which is different from `/` but does **not** end with `/` (for example, because `trailingSlash` is set to `never`), the `- 1` results in an off-by-one error when truncating the URL.

By checking if the base url ends with `/`, we can determine the right length for the prefix to truncate.
2023-03-07 13:00:34 -05:00
ematipico
377530a810 [ci] format 2023-03-07 13:43:21 +00:00
Emanuele Stoppa
fe88f89512
chore: use directive @ts-expect-error instead of @ts-ignore (#6429) 2023-03-07 13:41:24 +00:00
Nate Moore
504c7bacb8
Use getSetCookie, if available (#6347)
* fix: use getSetCookie, if available

* fix: explicitly use entries

* fix(image): be defensive on node@18.14.1

* chore: update changeset

* ci: skip test in 18.14.1
2023-02-23 13:41:00 -06:00
Gérald Gounot
ac3649bb58
Add support for SVG images to  @astrojs/image (#6118)
* @astrojs/image: add support for SVG images

* @astrojs/image: add tests for SVG images

* @astrojs/image: update README.md with SVG format info

* Add minor changeset for @astrojs/image
2023-02-15 09:21:41 +01:00
matthewp
43ec7f374a [ci] format 2023-01-30 20:31:49 +00:00
Alexey Shmalko
b3e65991f7
fix(image): allow usage of image from any directory (#5932)
Currently, @astrojs/image allows *importing* images from srcDir
only. Importing images from outside srcDir fails miserably *in dev
mode* and produces incorrect src.

This happens because `path.relative(fileURLToPath(config.srcDir), id)`
resolves to "../something" and when joined with '/@astroimage' cancels
it out (`join('/@astroimage', '../../something')` => `'/something'`).

Rework /@astroimage URL scheme to be similar to "/@fs/" scheme—always
export absolute path to the target file.
2023-01-30 15:29:41 -05:00
Renato Lacerda
ca91976edb
Fix GetPictureResult interface (#5894) 2023-01-30 15:29:03 -05:00
Caleb Jasik
9c298aa5ae
@astrojs/image: Allow passing undefined to transform options (#6008)
* Allow passing `undefined` to transform options

This fixes #6001, allowing undefined passed as a variable in addition to not passing the property at all

* Create strange-olives-rest.md

* Improve error message for missing `widths` prop

* Add changeset
2023-01-27 18:05:00 +01:00
Erika
35b26f377f
Fix image integration crash on Netlify Functions due to import.meta.url (#5888)
* fix(image): Fix immediate crash on Netlify functions due to `import.meta.url`

* chore: changeset
2023-01-19 14:04:15 +01:00
Erika
1bd42c6b2a
Fix image integration not working on Node 18+ (#5871)
* fix(image): Remove unnecessary polyfill now that we dropped Node 14

* fix(squoosh): Remove fetch of local wasm binary since undici doesn't support that

* chore: changeset
2023-01-17 15:48:06 +01:00
natemoo-re
cb5dbcc51f [ci] format 2023-01-09 16:03:47 +00:00
Nate Moore
f8f4d49aba
Output assets to _astro directory (#5772)
* WIP: emit assets to _astro

* chore: better _astro handling

* refactor: emit server assets to `chunks/`

* chore: update /asset tests

* test: add explicit build output tests

* fix: update image to emit to configured asset path

* chore: update changeset

* chore: update image tests

* chore: update image tests

* test: update css test

* test: update bundling test

* test: update tests

* Update packages/astro/src/@types/astro.ts

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

* Update packages/astro/src/@types/astro.ts

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

* Update packages/astro/src/@types/astro.ts

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

* chore: add clarifying comment

Co-authored-by: Nate Moore <nate@astro.build>
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2023-01-09 10:01:33 -06:00
wulinsheng123
9963c6e4d5
feat: change path into assets (#5584)
* feat: change path

* feat: fix bug #5502

* fix: astro fix to patch

* feat: change to major

* chore: update changelog

* fix: change entryFileNames into assets folder

* fix: fix error message in test

Co-authored-by: bluwy <bjornlu.dev@gmail.com>
2023-01-05 10:41:10 -06:00
Bjorn Lu
5eba34fcc6
Remove deprecated APIs (#5707)
* Remove deprecated Astro globals

* Remove deprecated hook param

* Fix test

* Add changeset

* Add TODO
2023-01-03 14:06:07 -05:00
Anders Kaseorg
53e0c98dae
Fix spelling mistakes found by codespell and mwic (#5627) 2022-12-19 12:00:00 +01:00
truesri
65d27666e1
Fix bug: pass alt from getPicture to getImage (#5521) 2022-12-06 17:17:08 +08:00
wulinsheng123
299ae9bb6a
fix bug: added a warning if the image was GIF (#5474)
Co-authored-by: wuls <linsheng.wu@beantechs.com>
2022-11-28 14:27:39 -05:00
matthewp
c18c618a09 [ci] format 2022-11-16 21:58:37 +00:00
wulinsheng123
e2fb0c4ff2
Log error if failed to fetch remote image (#5393)
* I cant catch an error in the loadRemoteImage function when the fetch function occurs error

* I cant catch an error in the loadRemoteImage function when the fetch function occurs error

* fix ssg file

Co-authored-by: wuls <linsheng.wu@beantechs.com>
Co-authored-by: Okiki Ojo <okikio.dev@gmail.com>
2022-11-16 16:55:48 -05:00
Matthew Phillips
40226dd14d
Use Vite to load non JS astro configs (#5377)
* Use Vite to load non JS astro configs

* Adding a changeset

* Allow config to not exist

* Use a file url

* Use proload as a fallback

* add missing peerdep

* fix lint mistakes

* Refactor the vite-load

* First check if the file exists

* Pass through fs

* Update packages/astro/src/core/config/vite-load.ts

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>

* Also load astro.config.cjs

* Do search before trying to load

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-11-15 10:02:23 -05:00
Matthew Phillips
ee750087ce
Fix usage of the Image component with the Vercel adapter (#5361)
* Revert "Revert "Allow image-pool to be used as its own Worker (#5317)" (#5360)"

This reverts commit 20e60c6e08.

* Remove special image-pool.js moving around

* Merge in assetIncludes

* changeset

* Copy to chunk folder in SSR too

* Update tidy-shoes-yawn.md
2022-11-14 13:42:35 -05:00
Matthew Phillips
20e60c6e08
Revert "Allow image-pool to be used as its own Worker (#5317)" (#5360)
* Revert "Allow image-pool to be used as its own Worker (#5317)"

This reverts commit d701ae074a.

* Adding a changeset

* Remove diff

* Remove unused code
2022-11-10 16:07:22 -08:00
Bjorn Lu
dc00ca4648
Share picture fallback image with source (#5324) 2022-11-09 08:31:09 -05:00
matthewp
982e446e8d [ci] format 2022-11-08 16:16:50 +00:00
Matthew Phillips
d701ae074a
Allow image-pool to be used as its own Worker (#5317)
* Allow image-pool to be used as its own Worker

* Adding a changeset

* fix image tests

* update picture tests

* Pass the current URL
2022-11-08 11:14:51 -05:00
Bjorn Lu
3918787cb9
Support relative protocol image URL (#5072)
* Support relative protocol image URL

* Fix test

* Actually fix test
2022-10-13 11:59:38 -04:00
Bjorn Lu
93f72f90bc
Fix image external config in build (#5073) 2022-10-13 11:16:08 -04:00
matthewp
575bf9205e [ci] format 2022-10-12 21:27:56 +00:00
Matthew Phillips
e55af8a232
Node.js standalone mode + support for astro preview (#5056)
* wip

* Deprecate buildConfig and move to config.build

* Implement the standalone server

* Stay backwards compat

* Add changesets

* correctly merge URLs

* Get config earlier

* update node tests

* Return the preview server

* update remaining tests

* swap usage and config ordering

* Update packages/astro/src/@types/astro.ts

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

* Update .changeset/metal-pumas-walk.md

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

* Update .changeset/metal-pumas-walk.md

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

* Update .changeset/stupid-points-refuse.md

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

* Update .changeset/stupid-points-refuse.md

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

* Link to build.server config

Co-authored-by: Fred K. Schott <fkschott@gmail.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2022-10-12 17:25:51 -04:00
Bjorn Lu
2d9d422167
Support strict dependency install for image integration (#5034) 2022-10-10 11:35:48 -04:00
Matthew Phillips
062335dbf7
Fix remote images in SSG mode (#5021) 2022-10-07 17:08:15 -04:00
Oskar Baumann
a2b66c7549
[@astrojs/image]: Fix <Picture /> component with query string (#4997)
* remove query params from file extension

* Revert changes to make change as small as possible

* moving the removeQueryParam check to basename()

* chore: adding a changeset

* adding SSR test coverage for new picture test cases

Co-authored-by: Tony Sullivan <tony.f.sullivan@outlook.com>
2022-10-06 15:53:11 +00:00