Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NextJS: Fix default next image loader when src has params #24187

Merged

Conversation

json-betsec
Copy link
Contributor

Closes #24104

What I did

This PR fixes a bug in @storybook/nextjs which malforms URLs with search parameters in them given to next/image.

Checklist for Contributors

Testing

The changes in this PR are covered in the following automated tests:

Couldn't find any existing tests to add to.

  • stories
  • unit tests
  • integration tests
  • end-to-end tests

Manual testing

  1. Create a new NextJS storybook
  2. Add a component that uses next/image with a url that specifies query parameters
  3. Observe that the image loads because the URL is no longer malformed

Documentation

No documentation updates were needed.

  • Add or update documentation reflecting your changes
  • If you are deprecating/removing a feature, make sure to update
    MIGRATION.MD

Checklist for Maintainers

  • When this PR is ready for testing, make sure to add ci:normal, ci:merged or ci:daily GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in code/lib/cli/src/sandbox-templates.ts

  • Make sure this PR contains one of the labels below:

    Available labels
    • bug: Internal changes that fixes incorrect behavior.
    • maintenance: User-facing maintenance tasks.
    • dependencies: Upgrading (sometimes downgrading) dependencies.
    • build: Internal-facing build tooling & test updates. Will not show up in release changelog.
    • cleanup: Minor cleanup style change. Will not show up in release changelog.
    • documentation: Documentation only changes. Will not show up in release changelog.
    • feature request: Introducing a new feature.
    • BREAKING CHANGE: Changes that break compatibility in some way with current major version.
    • other: Changes that don't fit in the above categories.

🦋 Canary release

This PR does not have a canary release associated. You can request a canary release of this pull request by mentioning the @storybookjs/core team here.

core team members can create a canary release here or locally with gh workflow run --repo storybookjs/storybook canary-release-pr.yml --field pr=<PR_NUMBER>

@ndelangen ndelangen changed the title Fix default next image loader when src has params NextJS: Fix default next image loader when src has params Sep 19, 2023
@ndelangen
Copy link
Member

@json-betsec did you do the manual test yourself?

Could you do a final pass/check before I merge this?

What do you think the risk of the PR is?
We could ship this as part of 7.5?

@json-betsec
Copy link
Contributor Author

Could you do a final pass/check before I merge this?

I did a final check and this PR is good to go

What do you think the risk of the PR is?

I think this PR is very low risk

Could we ship this as part of 7.5?

Absolutely!

NOTE: I do think this file could just be:

import type * as _NextImage from 'next/image';

export const defaultLoader = ({ src }: _NextImage.ImageLoaderProps) => {
  return src;
};

Which could be considered, but hey, to make this release, this PR can be good to merge too!

@yannbf yannbf mentioned this pull request Oct 17, 2023
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: @storybook/nextjs next-image query parameters breaks images
6 participants