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

Symbols/foreign letters not working with localized pathnames #607

Closed
Entropy-10 opened this issue Nov 8, 2023 · 6 comments · Fixed by #959
Closed

Symbols/foreign letters not working with localized pathnames #607

Entropy-10 opened this issue Nov 8, 2023 · 6 comments · Fixed by #959
Labels
bug Something isn't working contributions welcome Good for people looking to contribute

Comments

@Entropy-10
Copy link

Entropy-10 commented Nov 8, 2023

Description

When using localized pathnames, if you currently try to use symbols or foreign letters it causes the url to generate incorrectly and cause a 404 not found error.

navigation.ts

export const pathnames = {
    '/': '/',
    '/test': {
        en: '/test',
        ja: '/テスト'
    }
} satisfies Pathnames<typeof locales>

Mandatory reproduction URL (CodeSandbox or GitHub repository)

Edit next-intl-bug-template (app) (forked)

Reproduction description

Steps to reproduce:

  1. Open reproduction
  2. Click on Go to Japanese Test Page
  3. See incorrect url and 404 not found error

Expected behaviour

Expected: http://localhost:3000/ja/テスト
Actual Result: http://localhost:3000/ja/%E3%83%86%E3%82%B9%E3%83%88.

@Entropy-10 Entropy-10 added bug Something isn't working unconfirmed Needs triage. labels Nov 8, 2023
@amannn
Copy link
Owner

amannn commented Nov 8, 2023

Thanks for the report!

Also the rewrite in the middleware doesn't seem to handle this URL correctly: https://xskh6r-3000.csb.app/ja/テスト

@amannn amannn removed the unconfirmed Needs triage. label Nov 8, 2023
@amannn amannn added the contributions welcome Good for people looking to contribute label Nov 23, 2023
@AdamZaczek
Copy link

Localized pathnames are super important for any platform relying on content. We've been trying to get around this, with no success. Looking forward to the fix!

@amannn
Copy link
Owner

amannn commented Dec 21, 2023

Contributions are welcome here in case someone wants to look into it.

I think this can be tackled as following:

  1. Add a failing test in the middleware test suite
  2. Adapt the middleware accordingly
  3. Add a failing test in the localized navigation test suite
  4. Adapt createLocalizedPathnamesNavigation accordingly (react-client implementation, react-server implementation)

See also the contributors guidelines.

@reilnuud
Copy link

reilnuud commented Mar 5, 2024

Can't commit to contributing a fix here, but our team figured out a workaround in the meantime.

Since the route segments are getting URI encoded during the request process, there's no match when comparing the defined routes and the actual GET requests since the pathnames aren't encoded.

So the path:
/مدونة /[slug]
doesn't match the req url:
/%D9%85%D8%AF%D9%88%D9%86%D8%A9/[slug]

We implemented a workaround for this by wrapping export const pathnames in a function encodePathSegments:

I can't promise this code will work for you or that is exhaustive but it did the trick for our team.

navigation.js

const encodePathSegments = paths =>
  Object.entries(paths).reduce((agg, [path, localeRoutes]) => {
    if (typeof localeRoutes === "string") {
      // eslint-disable-next-line no-param-reassign
      agg[path] = localeRoutes;
      return agg;
    }
    // eslint-disable-next-line no-param-reassign
    agg[path] = Object.entries(localeRoutes).reduce(
      (routes, [lang, langRoute]) => {
        // eslint-disable-next-line no-param-reassign
        routes[lang] = langRoute
          .split("/")
          .map(segment => {
            if (!segment.match(/^\[/)) return encodeURI(segment);
            return segment;
          })
          .join("/");
        return routes;
      },
      {}
    );
    return agg;
  }, {});

export const pathnames = encodePathSegments({
  /* pathnames object */
})

@amannn
Copy link
Owner

amannn commented Mar 25, 2024

I had a moment to look into this, would someone like to try out the prerelease from #959?

Many thanks to @reilnuud for sharing a workaround here! Note that as part of upgrading, this workaround needs to be removed as defined pathnames are expected to be decoded.

amannn added a commit that referenced this issue Apr 3, 2024
#959)

Fixes #607

**Prerelease:**

```
[email protected]
```

**Example:**

```js
export const pathnames = {
  '/': '/',
  '/test': {
    en: '/test',
    ja: '/テスト'
  }
} satisfies Pathnames<typeof locales>
```

Previously, a request to `/ja/テスト` would be a 404 since the pathname
wasn't matched correctly. Now, the internal `/test` route is properly
used for rendering.

If you've previously used [a workaround to encode
pathnames](#607 (comment)),
please remove it when upgrading to the latest version of `next-intl`.
mergify bot pushed a commit to kinguru-io/kinguru-monorepo that referenced this issue Apr 3, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [next-intl](https://next-intl-docs.vercel.app) ([source](https://togithub.com/amannn/next-intl)) | [`3.10.0` -> `3.11.0`](https://renovatebot.com/diffs/npm/next-intl/3.10.0/3.11.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/next-intl/3.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next-intl/3.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next-intl/3.10.0/3.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next-intl/3.10.0/3.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>amannn/next-intl (next-intl)</summary>

### [`v3.11.0`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#3110-2024-04-03)

[Compare Source](https://togithub.com/amannn/next-intl/compare/v3.10.0...v3.11.0)

##### Features

-   Support symbols in localized pathnames that require URL encoding ([#&#8203;959](https://togithub.com/amannn/next-intl/issues/959)) ([b6e66f4](https://togithub.com/amannn/next-intl/commit/b6e66f4afd663ea5dc0851f5b528bcc55388b927)), closes [#&#8203;607](https://togithub.com/amannn/next-intl/issues/607) [/github.com/amannn/next-intl/issues/607#issuecomment-1979747515](https://togithub.com//github.com/amannn/next-intl/issues/607/issues/issuecomment-1979747515)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/kinguru-io/kinguru-monorepo).
coilysiren pushed a commit to HHS/simpler-grants-gov that referenced this issue Apr 8, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@next/third-parties](https://togithub.com/vercel/next.js)
([source](https://togithub.com/vercel/next.js/tree/HEAD/packages/third-parties))
| [`14.1.0` ->
`14.1.4`](https://renovatebot.com/diffs/npm/@next%2fthird-parties/14.1.0/14.1.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@next%2fthird-parties/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@next%2fthird-parties/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@next%2fthird-parties/14.1.0/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@next%2fthird-parties/14.1.0/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/nextjs](https://togithub.com/storybookjs/storybook/tree/next/code/frameworks/nextjs)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/frameworks/nextjs))
| [`7.6.12` ->
`7.6.17`](https://renovatebot.com/diffs/npm/@storybook%2fnextjs/7.6.12/7.6.17)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fnextjs/7.6.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fnextjs/7.6.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fnextjs/7.6.12/7.6.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fnextjs/7.6.12/7.6.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [next](https://nextjs.org)
([source](https://togithub.com/vercel/next.js)) | [`14.1.0` ->
`14.1.4`](https://renovatebot.com/diffs/npm/next/14.1.0/14.1.4) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/next/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next/14.1.0/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next/14.1.0/14.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [next-intl](https://next-intl-docs.vercel.app)
([source](https://togithub.com/amannn/next-intl)) | [`3.9.1` ->
`3.11.1`](https://renovatebot.com/diffs/npm/next-intl/3.9.1/3.11.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/next-intl/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next-intl/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next-intl/3.9.1/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next-intl/3.9.1/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vercel/next.js (@&#8203;next/third-parties)</summary>

###
[`v14.1.4`](https://togithub.com/vercel/next.js/releases/tag/v14.1.4)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.3...v14.1.4)

> \[!NOTE]\
> This release is backporting bug fixes. It does **not** include all
pending features/changes on canary.

##### Core Changes

- Update React from
[`60a927d`](https://togithub.com/vercel/next.js/commit/60a927d04) to
[`4b84f11`](https://togithub.com/vercel/next.js/commit/4b84f11)
([#&#8203;63476](https://togithub.com/vercel/next.js/issues/63476))
[@&#8203;ztanner](https://togithub.com/ztanner)
- fix revalidation issue with route handlers
([#&#8203;63213](https://togithub.com/vercel/next.js/issues/63213))
[@&#8203;ztanner](https://togithub.com/ztanner)
- ensure mpa navigations to the same URL work after restoring from
bfcache
([#&#8203;63155](https://togithub.com/vercel/next.js/issues/63155))
[@&#8203;ztanner](https://togithub.com/ztanner)
- Ensure PromiseLikeOfReactNode is not included in .d.ts files
([#&#8203;63185](https://togithub.com/vercel/next.js/issues/63185))
[@&#8203;timneutkens](https://togithub.com/timneutkens)
- Fix metadata url cases should not append with trailing slash
([#&#8203;63050](https://togithub.com/vercel/next.js/issues/63050))
[@&#8203;huozhi](https://togithub.com/huozhi)
- feat: add deploymentId config
([#&#8203;63198](https://togithub.com/vercel/next.js/issues/63198))
[@&#8203;styfle](https://togithub.com/styfle)
- fix: bump
[@&#8203;vercel/nft](https://togithub.com/vercel/nft)[@&#8203;0](https://togithub.com/0).26.3
([#&#8203;61538](https://togithub.com/vercel/next.js/issues/61538))
[@&#8203;styfle](https://togithub.com/styfle)
- fix x-forwarded-port header
([#&#8203;63303](https://togithub.com/vercel/next.js/issues/63303))
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood)
- fix: x-forwarded-port header is 'undefined' when no port in url
([#&#8203;60484](https://togithub.com/vercel/next.js/issues/60484))
[@&#8203;yuvalotem](https://togithub.com/yuvalotem)

##### Test Changes

- test: switch order of tests to avoid flakniess
([#&#8203;63482](https://togithub.com/vercel/next.js/issues/63482))
[@&#8203;huozhi](https://togithub.com/huozhi)
- fix broken create-next-app tests
([#&#8203;63019](https://togithub.com/vercel/next.js/issues/63019))
[@&#8203;ztanner](https://togithub.com/ztanner)

###
[`v14.1.3`](https://togithub.com/vercel/next.js/releases/tag/v14.1.3)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.2...v14.1.3)

##### Core Changes

- Upgrade to latest
[@&#8203;edge-runtime](https://togithub.com/edge-runtime) packages:
[#&#8203;62955](https://togithub.com/vercel/next.js/issues/62955)
- Fix output: export with custom distDir:
[#&#8203;62064](https://togithub.com/vercel/next.js/issues/62064)
- Migrate locale redirect handling to router-server:
[#&#8203;62606](https://togithub.com/vercel/next.js/issues/62606)

##### Credits

Huge thanks to [@&#8203;ijjk](https://togithub.com/ijjk)

###
[`v14.1.2`](https://togithub.com/vercel/next.js/releases/tag/v14.1.2)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.1...v14.1.2)

*Note: this is a backport release for critical bug fixes -- this does
not include all pending features/changes on canary*

##### Core Changes

- Fix sitemap generateSitemaps support for string id
([#&#8203;61088](https://togithub.com/vercel/next.js/issues/61088))
- Fix: generateSitemaps in production giving 404
([#&#8203;62212](https://togithub.com/vercel/next.js/issues/62212))
- Fix redirect under suspense boundary with basePath
([#&#8203;62597](https://togithub.com/vercel/next.js/issues/62597))
- Fix: Add stricter check for "use server" exports
([#&#8203;62821](https://togithub.com/vercel/next.js/issues/62821))
- ensure server action errors notify rejection handlers
([#&#8203;61588](https://togithub.com/vercel/next.js/issues/61588))
- make router restore action resilient to a missing tree
([#&#8203;62098](https://togithub.com/vercel/next.js/issues/62098))
- build: remove sentry from the externals list
[#&#8203;61194](https://togithub.com/vercel/next.js/issues/61194)
- Reduce memory/cache overhead from over loader processing
[#&#8203;62005](https://togithub.com/vercel/next.js/issues/62005)

##### Credits

Huge thanks to [@&#8203;huozhi](https://togithub.com/huozhi),
[@&#8203;shuding](https://togithub.com/shuding),
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood),
[@&#8203;styfle](https://togithub.com/styfle),
[@&#8203;ijjk](https://togithub.com/ijjk),
[@&#8203;ztanner](https://togithub.com/ztanner),
[@&#8203;balazsorban44](https://togithub.com/balazsorban44),
[@&#8203;kdy1](https://togithub.com/kdy1), and
[@&#8203;williamli](https://togithub.com/williamli) for helping!

###
[`v14.1.1`](https://togithub.com/vercel/next.js/releases/tag/v14.1.1)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.0...v14.1.1)

*Note: this is a backport release for critical bug fixes -- this does
not include all pending features/changes on canary*

##### Core Changes

- Should not warn metadataBase missing if only absolute urls are
present:
[https://github.com/vercel/next.js/pull/61898](https://togithub.com/vercel/next.js/pull/61898)
- Fix trailing slash for canonical url:
[https://github.com/vercel/next.js/pull/62109](https://togithub.com/vercel/next.js/pull/62109)
- Fix metadata json manifest convention:
[https://github.com/vercel/next.js/pull/62615](https://togithub.com/vercel/next.js/pull/62615)
- Improve the Server Actions SWC transform:
[https://github.com/vercel/next.js/pull/61001](https://togithub.com/vercel/next.js/pull/61001)
- Fix Server Reference being double registered:
[https://github.com/vercel/next.js/pull/61244](https://togithub.com/vercel/next.js/pull/61244)
- Improve the Server Actions SWC transform (part 2):
[https://github.com/vercel/next.js/pull/62052](https://togithub.com/vercel/next.js/pull/62052)
- Fix module-level Server Action creation with closure-closed values:
[https://github.com/vercel/next.js/pull/62437](https://togithub.com/vercel/next.js/pull/62437)
- Fix draft mode invariant:
[https://github.com/vercel/next.js/pull/62121](https://togithub.com/vercel/next.js/pull/62121)
- fix: babel usage with next/image:
[https://github.com/vercel/next.js/pull/61835](https://togithub.com/vercel/next.js/pull/61835)
- Fix next/server api alias for ESM pkg:
[https://github.com/vercel/next.js/pull/61721](https://togithub.com/vercel/next.js/pull/61721)
- Replace image optimizer IPC call with request handler:
[https://github.com/vercel/next.js/pull/61471](https://togithub.com/vercel/next.js/pull/61471)
- chore: refactor image optimization to separate external/internal urls:
[https://github.com/vercel/next.js/pull/61172](https://togithub.com/vercel/next.js/pull/61172)
- fix(image): warn when animated image is missing unoptimized prop:
[https://github.com/vercel/next.js/pull/61045](https://togithub.com/vercel/next.js/pull/61045)
- fix(build-output): show stack during CSR bailout warning:
[https://github.com/vercel/next.js/pull/62594](https://togithub.com/vercel/next.js/pull/62594)
- Fix extra swc optimizer applied to node_modules in browser layer:
[https://github.com/vercel/next.js/pull/62051](https://togithub.com/vercel/next.js/pull/62051)
- fix(next-swc): Detect exports.foo from cjs_finder:
[https://github.com/vercel/next.js/pull/61795](https://togithub.com/vercel/next.js/pull/61795)
- Fix attempted import error for react:
[https://github.com/vercel/next.js/pull/61791](https://togithub.com/vercel/next.js/pull/61791)
- Add stack trace to client rendering bailout error:
[https://github.com/vercel/next.js/pull/61200](https://togithub.com/vercel/next.js/pull/61200)
- fix router crash on revalidate + popstate:
[https://github.com/vercel/next.js/pull/62383](https://togithub.com/vercel/next.js/pull/62383)
- fix loading issue when navigating to page with async metadata:
[https://github.com/vercel/next.js/pull/61687](https://togithub.com/vercel/next.js/pull/61687)
- revert changes to process default routes at build:
[https://github.com/vercel/next.js/pull/61241](https://togithub.com/vercel/next.js/pull/61241)
- fix parallel route top-level catch-all normalization logic to support
nested explicit (non-catchall) slot routes:
[https://github.com/vercel/next.js/pull/60776](https://togithub.com/vercel/next.js/pull/60776)
- Improve redirection handling:
[https://github.com/vercel/next.js/pull/62561](https://togithub.com/vercel/next.js/pull/62561)
- Simplify node/edge server chunking some:
[https://github.com/vercel/next.js/pull/62424](https://togithub.com/vercel/next.js/pull/62424)

##### Credits

Huge thanks to [@&#8203;huozhi](https://togithub.com/huozhi),
[@&#8203;shuding](https://togithub.com/shuding),
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood),
[@&#8203;styfle](https://togithub.com/styfle),
[@&#8203;ijjk](https://togithub.com/ijjk),
[@&#8203;ztanner](https://togithub.com/ztanner),
[@&#8203;balazsorban44](https://togithub.com/balazsorban44),
[@&#8203;kdy1](https://togithub.com/kdy1), and
[@&#8203;williamli](https://togithub.com/williamli) for helping!

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/nextjs)</summary>

###
[`v7.6.17`](https://togithub.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#7617)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.16...v7.6.17)

- Addon-docs: Fix Table of Contents heading leak -
[#&#8203;23677](https://togithub.com/storybookjs/storybook/pull/23677),
thanks [@&#8203;vmizg](https://togithub.com/vmizg)!
- Core: Update ip version to fix CVE-2023-42282 -
[#&#8203;26086](https://togithub.com/storybookjs/storybook/pull/26086),
thanks [@&#8203;drik98](https://togithub.com/drik98)!

###
[`v7.6.16`](https://togithub.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#7616)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.15...v7.6.16)

- Addon Themes: Make type generic less strict -
[#&#8203;26042](https://togithub.com/storybookjs/storybook/pull/26042),
thanks [@&#8203;yannbf](https://togithub.com/yannbf)!
- Interaction: Make sure that adding spies doesn't cause infinite loops
with self referencing args
[#&#8203;26019](https://togithub.com/storybookjs/storybook/pull/26019),
thanks [@&#8203;kasperpeulen](https://togithub.com/kasperpeulen)!

###
[`v7.6.15`](https://togithub.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#7615)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.14...v7.6.15)

This release accidentally didn't contain anything.

###
[`v7.6.14`](https://togithub.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#7614)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.13...v7.6.14)

- Core: Fix boolean `true` args in URL getting ignored -
[#&#8203;25950](https://togithub.com/storybookjs/storybook/pull/25950),
thanks [@&#8203;JReinhold](https://togithub.com/JReinhold)!

###
[`v7.6.13`](https://togithub.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#7613)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.12...v7.6.13)

- Next.js: Fix frameworkOptions resolution -
[#&#8203;25907](https://togithub.com/storybookjs/storybook/pull/25907),
thanks
[@&#8203;valentinpalkovic](https://togithub.com/valentinpalkovic)!
- React Native: Fix init fails when package is already installed -
[#&#8203;25908](https://togithub.com/storybookjs/storybook/pull/25908),
thanks [@&#8203;dannyhw](https://togithub.com/dannyhw)!
- React Native: Remove watcher from init -
[#&#8203;25895](https://togithub.com/storybookjs/storybook/pull/25895),
thanks [@&#8203;dannyhw](https://togithub.com/dannyhw)!
- Webpack: Update StorybookConfig import in core-webpack types.ts -
[#&#8203;25740](https://togithub.com/storybookjs/storybook/pull/25740),
thanks
[@&#8203;valentinpalkovic](https://togithub.com/valentinpalkovic)!

</details>

<details>
<summary>vercel/next.js (next)</summary>

###
[`v14.1.4`](https://togithub.com/vercel/next.js/compare/v14.1.3...f1fc35730c7aeb0ff39513f91ab2b9ed876393fe)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.3...v14.1.4)

###
[`v14.1.3`](https://togithub.com/vercel/next.js/compare/v14.1.2...fc38ee190c9b7de09ebff13a17ebd948cf580ec3)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.2...v14.1.3)

###
[`v14.1.2`](https://togithub.com/vercel/next.js/compare/v14.1.1...f564deef86be32a6b25125ddb8172c7c27d3f19a)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.1...v14.1.2)

###
[`v14.1.1`](https://togithub.com/vercel/next.js/releases/tag/v14.1.1)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.0...v14.1.1)

*Note: this is a backport release for critical bug fixes -- this does
not include all pending features/changes on canary*

##### Core Changes

- Should not warn metadataBase missing if only absolute urls are
present:
[https://github.com/vercel/next.js/pull/61898](https://togithub.com/vercel/next.js/pull/61898)
- Fix trailing slash for canonical url:
[https://github.com/vercel/next.js/pull/62109](https://togithub.com/vercel/next.js/pull/62109)
- Fix metadata json manifest convention:
[https://github.com/vercel/next.js/pull/62615](https://togithub.com/vercel/next.js/pull/62615)
- Improve the Server Actions SWC transform:
[https://github.com/vercel/next.js/pull/61001](https://togithub.com/vercel/next.js/pull/61001)
- Fix Server Reference being double registered:
[https://github.com/vercel/next.js/pull/61244](https://togithub.com/vercel/next.js/pull/61244)
- Improve the Server Actions SWC transform (part 2):
[https://github.com/vercel/next.js/pull/62052](https://togithub.com/vercel/next.js/pull/62052)
- Fix module-level Server Action creation with closure-closed values:
[https://github.com/vercel/next.js/pull/62437](https://togithub.com/vercel/next.js/pull/62437)
- Fix draft mode invariant:
[https://github.com/vercel/next.js/pull/62121](https://togithub.com/vercel/next.js/pull/62121)
- fix: babel usage with next/image:
[https://github.com/vercel/next.js/pull/61835](https://togithub.com/vercel/next.js/pull/61835)
- Fix next/server api alias for ESM pkg:
[https://github.com/vercel/next.js/pull/61721](https://togithub.com/vercel/next.js/pull/61721)
- Replace image optimizer IPC call with request handler:
[https://github.com/vercel/next.js/pull/61471](https://togithub.com/vercel/next.js/pull/61471)
- chore: refactor image optimization to separate external/internal urls:
[https://github.com/vercel/next.js/pull/61172](https://togithub.com/vercel/next.js/pull/61172)
- fix(image): warn when animated image is missing unoptimized prop:
[https://github.com/vercel/next.js/pull/61045](https://togithub.com/vercel/next.js/pull/61045)
- fix(build-output): show stack during CSR bailout warning:
[https://github.com/vercel/next.js/pull/62594](https://togithub.com/vercel/next.js/pull/62594)
- Fix extra swc optimizer applied to node_modules in browser layer:
[https://github.com/vercel/next.js/pull/62051](https://togithub.com/vercel/next.js/pull/62051)
- fix(next-swc): Detect exports.foo from cjs_finder:
[https://github.com/vercel/next.js/pull/61795](https://togithub.com/vercel/next.js/pull/61795)
- Fix attempted import error for react:
[https://github.com/vercel/next.js/pull/61791](https://togithub.com/vercel/next.js/pull/61791)
- Add stack trace to client rendering bailout error:
[https://github.com/vercel/next.js/pull/61200](https://togithub.com/vercel/next.js/pull/61200)
- fix router crash on revalidate + popstate:
[https://github.com/vercel/next.js/pull/62383](https://togithub.com/vercel/next.js/pull/62383)
- fix loading issue when navigating to page with async metadata:
[https://github.com/vercel/next.js/pull/61687](https://togithub.com/vercel/next.js/pull/61687)
- revert changes to process default routes at build:
[https://github.com/vercel/next.js/pull/61241](https://togithub.com/vercel/next.js/pull/61241)
- fix parallel route top-level catch-all normalization logic to support
nested explicit (non-catchall) slot routes:
[https://github.com/vercel/next.js/pull/60776](https://togithub.com/vercel/next.js/pull/60776)
- Improve redirection handling:
[https://github.com/vercel/next.js/pull/62561](https://togithub.com/vercel/next.js/pull/62561)
- Simplify node/edge server chunking some:
[https://github.com/vercel/next.js/pull/62424](https://togithub.com/vercel/next.js/pull/62424)

##### Credits

Huge thanks to [@&#8203;huozhi](https://togithub.com/huozhi),
[@&#8203;shuding](https://togithub.com/shuding),
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood),
[@&#8203;styfle](https://togithub.com/styfle),
[@&#8203;ijjk](https://togithub.com/ijjk),
[@&#8203;ztanner](https://togithub.com/ztanner),
[@&#8203;balazsorban44](https://togithub.com/balazsorban44),
[@&#8203;kdy1](https://togithub.com/kdy1), and
[@&#8203;williamli](https://togithub.com/williamli) for helping!

</details>

<details>
<summary>amannn/next-intl (next-intl)</summary>

###
[`v3.11.1`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#3111-2024-04-05)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.11.0...v3.11.1)

##### Bug Fixes

- Apply correct port when redirecting to another domain and the app
doesn't run behind a proxy
([#&#8203;979](https://togithub.com/amannn/next-intl/issues/979) by
[@&#8203;awkaiser-tr](https://togithub.com/awkaiser-tr))
([485f59e](https://togithub.com/amannn/next-intl/commit/485f59e2c09224bf260e87ede30a67d0a5c542c0)),
closes [#&#8203;658](https://togithub.com/amannn/next-intl/issues/658)

###
[`v3.11.0`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#3110-2024-04-03)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.10.0...v3.11.0)

##### Features

- Support symbols in localized pathnames that require URL encoding
([#&#8203;959](https://togithub.com/amannn/next-intl/issues/959))
([b6e66f4](https://togithub.com/amannn/next-intl/commit/b6e66f4afd663ea5dc0851f5b528bcc55388b927)),
closes [#&#8203;607](https://togithub.com/amannn/next-intl/issues/607)
[/github.com/amannn/next-intl/issues/607#issuecomment-1979747515](https://togithub.com//github.com/amannn/next-intl/issues/607/issues/issuecomment-1979747515)

###
[`v3.10.0`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#3100-2024-03-25)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.9.5...v3.10.0)

##### Features

- When using localized pathnames, allow access to internal pathnames
only if they match an entry from a particular locale—otherwise redirect
([#&#8203;914](https://togithub.com/amannn/next-intl/issues/914) by
[@&#8203;RomainGueffier](https://togithub.com/RomainGueffier))
([0658600](https://togithub.com/amannn/next-intl/commit/0658600ee323350dfeb2d616c38f6737674e76da))

#### 3.9.5 (2024-03-15)

##### Bug Fixes

- Improve support for older browsers by switching from `replaceAll` to
`replace`
([#&#8203;885](https://togithub.com/amannn/next-intl/issues/885) by
[@&#8203;MichalMoravik](https://togithub.com/MichalMoravik))
([080333a](https://togithub.com/amannn/next-intl/commit/080333aa8ec2e4e41dc740e370032ee429b190f0)),
closes [#&#8203;884](https://togithub.com/amannn/next-intl/issues/884)

#### 3.9.4 (2024-03-08)

##### Bug Fixes

- Handle changing href for `<Link />` correctly when using
`localePrefix: 'never'`
([#&#8203;926](https://togithub.com/amannn/next-intl/issues/926))
([b609dc0](https://togithub.com/amannn/next-intl/commit/b609dc05b31832af04ee57b73133568e43b69d1f)),
closes [#&#8203;918](https://togithub.com/amannn/next-intl/issues/918)

#### 3.9.3 (2024-03-07)

##### Bug Fixes

- Handle optional params in catch-all segments correctly when using
localized pathnames
([#&#8203;925](https://togithub.com/amannn/next-intl/issues/925))
([8ba8b69](https://togithub.com/amannn/next-intl/commit/8ba8b699b5343a816f725d329fdb1153fa647b99)),
closes [#&#8203;917](https://togithub.com/amannn/next-intl/issues/917)

#### 3.9.2 (2024-03-05)

##### Bug Fixes

- Incorporate `basePath` correctly in `useRouter` functions
([#&#8203;906](https://togithub.com/amannn/next-intl/issues/906) by
[@&#8203;Oberwaditzer](https://togithub.com/Oberwaditzer))
([4abcbeb](https://togithub.com/amannn/next-intl/commit/4abcbebdd603a18d9f1173709c174a8ac4210e37)),
closes [#&#8203;905](https://togithub.com/amannn/next-intl/issues/905)
[#&#8203;910](https://togithub.com/amannn/next-intl/issues/910)

#### 3.9.1 (2024-02-23)

##### Bug Fixes

- Return `now` from global context if no `updateInterval` has been set
on `useNow`
([#&#8203;881](https://togithub.com/amannn/next-intl/issues/881))
([dbbefcf](https://togithub.com/amannn/next-intl/commit/dbbefcf145dfc8a924fbf685da87e276c8bb4d10))

###
[`v3.9.5`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#395-2024-03-15)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.9.4...v3.9.5)

##### Bug Fixes

- Improve support for older browsers by switching from `replaceAll` to
`replace`
([#&#8203;885](https://togithub.com/amannn/next-intl/issues/885) by
[@&#8203;MichalMoravik](https://togithub.com/MichalMoravik))
([080333a](https://togithub.com/amannn/next-intl/commit/080333aa8ec2e4e41dc740e370032ee429b190f0)),
closes [#&#8203;884](https://togithub.com/amannn/next-intl/issues/884)

###
[`v3.9.4`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#394-2024-03-08)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.9.3...v3.9.4)

##### Bug Fixes

- Handle changing href for `<Link />` correctly when using
`localePrefix: 'never'`
([#&#8203;926](https://togithub.com/amannn/next-intl/issues/926))
([b609dc0](https://togithub.com/amannn/next-intl/commit/b609dc05b31832af04ee57b73133568e43b69d1f)),
closes [#&#8203;918](https://togithub.com/amannn/next-intl/issues/918)

###
[`v3.9.3`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#393-2024-03-07)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.9.2...v3.9.3)

##### Bug Fixes

- Handle optional params in catch-all segments correctly when using
localized pathnames
([#&#8203;925](https://togithub.com/amannn/next-intl/issues/925))
([8ba8b69](https://togithub.com/amannn/next-intl/commit/8ba8b699b5343a816f725d329fdb1153fa647b99)),
closes [#&#8203;917](https://togithub.com/amannn/next-intl/issues/917)

###
[`v3.9.2`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#392-2024-03-05)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.9.1...v3.9.2)

##### Bug Fixes

- Incorporate `basePath` correctly in `useRouter` functions
([#&#8203;906](https://togithub.com/amannn/next-intl/issues/906) by
[@&#8203;Oberwaditzer](https://togithub.com/Oberwaditzer))
([4abcbeb](https://togithub.com/amannn/next-intl/commit/4abcbebdd603a18d9f1173709c174a8ac4210e37)),
closes [#&#8203;905](https://togithub.com/amannn/next-intl/issues/905)
[#&#8203;910](https://togithub.com/amannn/next-intl/issues/910)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on the 2nd and 4th day instance on
sunday after 9pm" in timezone America/New_York, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/HHS/simpler-grants-gov).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMTIuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
sawyerh pushed a commit to navapbc/template-application-nextjs that referenced this issue Apr 15, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type |
Update |
|---|---|---|---|---|---|---|---|
|
[@aws-sdk/client-evidently](https://togithub.com/aws/aws-sdk-js-v3/tree/main/clients/client-evidently)
([source](https://togithub.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-evidently))
| [`3.540.0` ->
`3.554.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-evidently/3.540.0/3.554.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-evidently/3.554.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-evidently/3.554.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-evidently/3.540.0/3.554.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-evidently/3.540.0/3.554.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| dependencies | minor |
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.12.2` ->
`20.12.7`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.2/20.12.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.2/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.2/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| devDependencies | patch |
|
[eslint-config-next](https://nextjs.org/docs/app/building-your-application/configuring/eslint#eslint-config)
([source](https://togithub.com/vercel/next.js/tree/HEAD/packages/eslint-config-next))
| [`14.1.4` ->
`14.2.1`](https://renovatebot.com/diffs/npm/eslint-config-next/14.1.4/14.2.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-config-next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-config-next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-config-next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-config-next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| devDependencies | minor |
|
[eslint-plugin-you-dont-need-lodash-underscore](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore.git)
([source](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore))
| [`6.13.0` ->
`6.14.0`](https://renovatebot.com/diffs/npm/eslint-plugin-you-dont-need-lodash-underscore/6.13.0/6.14.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-plugin-you-dont-need-lodash-underscore/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-plugin-you-dont-need-lodash-underscore/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-plugin-you-dont-need-lodash-underscore/6.13.0/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-plugin-you-dont-need-lodash-underscore/6.13.0/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| devDependencies | minor |
| [next](https://nextjs.org)
([source](https://togithub.com/vercel/next.js)) | [`14.1.4` ->
`14.2.1`](https://renovatebot.com/diffs/npm/next/14.1.4/14.2.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| dependencies | minor |
| [next-intl](https://next-intl-docs.vercel.app)
([source](https://togithub.com/amannn/next-intl)) | [`3.10.0` ->
`3.11.1`](https://renovatebot.com/diffs/npm/next-intl/3.10.0/3.11.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/next-intl/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next-intl/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next-intl/3.10.0/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next-intl/3.10.0/3.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| dependencies | minor |
| [node](https://togithub.com/nodejs/node) | `20.12.0-bullseye-slim` ->
`20.12.2-bullseye-slim` |
[![age](https://developer.mend.io/api/mc/badges/age/docker/node/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/docker/node/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/docker/node/20.12.0/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/node/20.12.0/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| final | patch |
| [node](https://togithub.com/nodejs/node) | `20.12.0-bullseye-slim` ->
`20.12.2-bullseye-slim` |
[![age](https://developer.mend.io/api/mc/badges/age/docker/node/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/docker/node/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/docker/node/20.12.0/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/node/20.12.0/20.12.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| stage | patch |
| [typescript](https://www.typescriptlang.org/)
([source](https://togithub.com/Microsoft/TypeScript)) | [`5.4.3` ->
`5.4.5`](https://renovatebot.com/diffs/npm/typescript/5.4.3/5.4.5) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.4.3/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.4.3/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| devDependencies | patch |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-evidently)</summary>

###
[`v3.554.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-evidently/CHANGELOG.md#35540-2024-04-11)

[Compare
Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.552.0...v3.554.0)

**Note:** Version bump only for package
[@&#8203;aws-sdk/client-evidently](https://togithub.com/aws-sdk/client-evidently)

###
[`v3.552.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-evidently/CHANGELOG.md#35520-2024-04-09)

[Compare
Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.549.0...v3.552.0)

**Note:** Version bump only for package
[@&#8203;aws-sdk/client-evidently](https://togithub.com/aws-sdk/client-evidently)

###
[`v3.549.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-evidently/CHANGELOG.md#35490-2024-04-04)

[Compare
Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.540.0...v3.549.0)

**Note:** Version bump only for package
[@&#8203;aws-sdk/client-evidently](https://togithub.com/aws-sdk/client-evidently)

</details>

<details>
<summary>vercel/next.js (eslint-config-next)</summary>

###
[`v14.2.1`](https://togithub.com/vercel/next.js/compare/v14.2.0...v14.2.1)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.2.0...v14.2.1)

###
[`v14.2.0`](https://togithub.com/vercel/next.js/compare/v14.1.4...774563f2b994ae9686b8ec68b506a6ef3d7c9756)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.4...v14.2.0)

</details>

<details>
<summary>you-dont-need/You-Dont-Need-Lodash-Underscore
(eslint-plugin-you-dont-need-lodash-underscore)</summary>

###
[`v6.14.0`](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/releases/tag/v6.14.0)

[Compare
Source](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/compare/v6.13.0...v6.14.0)

#### What's Changed

- chore(deps): bump js-yaml and coveralls by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/375](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/375)
- chore(deps): bump minimist, mkdirp and mocha by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/376](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/376)
- chore(deps): bump ansi-regex from 3.0.0 to 3.0.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/366](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/366)
- chore(deps): bump ajv and eslint by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/367](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/367)
- chore(deps): bump ajv and eslint by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/377](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/377)
- Upgrade dependabot/fetch-metadata by
[@&#8203;szepeviktor](https://togithub.com/szepeviktor) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/380](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/380)
- Improve README by
[@&#8203;szepeviktor](https://togithub.com/szepeviktor) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/378](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/378)
- Improve README even more by
[@&#8203;szepeviktor](https://togithub.com/szepeviktor) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/381](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/381)
- Add lodash \_.mapKeys by [@&#8203;rajdee](https://togithub.com/rajdee)
in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/351](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/351)
- Add \_.cloneDeep by [@&#8203;menghif](https://togithub.com/menghif) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/382](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/382)
- add entry for isPlainObject by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/384](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/384)
- Correct isPlainObject() by
[@&#8203;danielsharvey](https://togithub.com/danielsharvey) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/386](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/386)
- Fix
[#&#8203;393](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/issues/393)
remove a destructuring assignment example on \_.pick native
implementation by
[@&#8203;yoshikazusawa](https://togithub.com/yoshikazusawa) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/394](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/394)
- Mention Object.groupBy() by
[@&#8203;Heniker](https://togithub.com/Heniker) in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/390](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/390)

#### New Contributors

- [@&#8203;szepeviktor](https://togithub.com/szepeviktor) made their
first contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/380](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/380)
- [@&#8203;rajdee](https://togithub.com/rajdee) made their first
contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/351](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/351)
- [@&#8203;menghif](https://togithub.com/menghif) made their first
contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/382](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/382)
- [@&#8203;Uzlopak](https://togithub.com/Uzlopak) made their first
contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/384](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/384)
- [@&#8203;danielsharvey](https://togithub.com/danielsharvey) made their
first contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/386](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/386)
- [@&#8203;yoshikazusawa](https://togithub.com/yoshikazusawa) made their
first contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/394](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/394)
- [@&#8203;Heniker](https://togithub.com/Heniker) made their first
contribution in
[https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/390](https://togithub.com/you-dont-need/You-Dont-Need-Lodash-Underscore/pull/390)

**Full Changelog**:
you-dont-need/You-Dont-Need-Lodash-Underscore@v6.13.0...v6.14.0

</details>

<details>
<summary>vercel/next.js (next)</summary>

###
[`v14.2.1`](https://togithub.com/vercel/next.js/compare/v14.2.0...v14.2.1)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.2.0...v14.2.1)

###
[`v14.2.0`](https://togithub.com/vercel/next.js/compare/v14.1.4...774563f2b994ae9686b8ec68b506a6ef3d7c9756)

[Compare
Source](https://togithub.com/vercel/next.js/compare/v14.1.4...v14.2.0)

</details>

<details>
<summary>amannn/next-intl (next-intl)</summary>

###
[`v3.11.1`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#3111-2024-04-05)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.11.0...v3.11.1)

##### Bug Fixes

- Apply correct port when redirecting to another domain and the app
doesn't run behind a proxy
([#&#8203;979](https://togithub.com/amannn/next-intl/issues/979) by
[@&#8203;awkaiser-tr](https://togithub.com/awkaiser-tr))
([485f59e](https://togithub.com/amannn/next-intl/commit/485f59e2c09224bf260e87ede30a67d0a5c542c0)),
closes [#&#8203;658](https://togithub.com/amannn/next-intl/issues/658)

###
[`v3.11.0`](https://togithub.com/amannn/next-intl/blob/HEAD/CHANGELOG.md#3110-2024-04-03)

[Compare
Source](https://togithub.com/amannn/next-intl/compare/v3.10.0...v3.11.0)

##### Features

- Support symbols in localized pathnames that require URL encoding
([#&#8203;959](https://togithub.com/amannn/next-intl/issues/959))
([b6e66f4](https://togithub.com/amannn/next-intl/commit/b6e66f4afd663ea5dc0851f5b528bcc55388b927)),
closes [#&#8203;607](https://togithub.com/amannn/next-intl/issues/607)
[/github.com/amannn/next-intl/issues/607#issuecomment-1979747515](https://togithub.com//github.com/amannn/next-intl/issues/607/issues/issuecomment-1979747515)

</details>

<details>
<summary>nodejs/node (node)</summary>

###
[`v20.12.2`](https://togithub.com/nodejs/node/releases/tag/v20.12.2):
2024-04-10, Version 20.12.2 &#x27;Iron&#x27; (LTS), @&#8203;RafaelGSS

[Compare
Source](https://togithub.com/nodejs/node/compare/v20.12.1...v20.12.2)

This is a security release.

##### Notable Changes

- CVE-2024-27980 - Command injection via args parameter of
`child_process.spawn` without shell option enabled on Windows

##### Commits

- \[[`69ffc6d50d`](https://togithub.com/nodejs/node/commit/69ffc6d50d)]
- **src**: disallow direct .bat and .cmd file spawning (Ben Noordhuis)
[nodejs-private/node-private#563](https://togithub.com/nodejs-private/node-private/pull/563)

###
[`v20.12.1`](https://togithub.com/nodejs/node/releases/tag/v20.12.1):
2024-04-03, Version 20.12.1 &#x27;Iron&#x27; (LTS), @&#8203;RafaelGSS

[Compare
Source](https://togithub.com/nodejs/node/compare/v20.12.0...v20.12.1)

This is a security release

##### Notable Changes

- CVE-2024-27983 - Assertion failed in
node::http2::Http2Session::~Http2Session() leads to HTTP/2 server crash-
(High)
- CVE-2024-27982 - HTTP Request Smuggling via Content Length Obfuscation
- (Medium)
-   llhttp version 9.2.1
-   undici version 5.28.4

##### Commits

- \[[`bd8f10a257`](https://togithub.com/nodejs/node/commit/bd8f10a257)]
- **deps**: update undici to v5.28.4 (Matteo Collina)
[nodejs-private/node-private#576](https://togithub.com/nodejs-private/node-private/pull/576)
- \[[`5e34540a96`](https://togithub.com/nodejs/node/commit/5e34540a96)]
- **http**: do not allow OBS fold in headers by default (Paolo Insogna)
[nodejs-private/node-private#557](https://togithub.com/nodejs-private/node-private/pull/557)
- \[[`ba1ae6d188`](https://togithub.com/nodejs/node/commit/ba1ae6d188)]
- **src**: ensure to close stream when destroying session (Anna
Henningsen)
[nodejs-private/node-private#561](https://togithub.com/nodejs-private/node-private/pull/561)

</details>

<details>
<summary>Microsoft/TypeScript (typescript)</summary>

###
[`v5.4.5`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.4.5):
TypeScript 5.4.5

[Compare
Source](https://togithub.com/Microsoft/TypeScript/compare/v5.4.4...v5.4.5)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/).

For the complete list of fixed issues, check out the

- [fixed issues query for Typescript 5.4.0
(Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.1
(RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.2
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.3
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.4
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.4%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.5
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.5%22+is%3Aclosed+).

Downloads are available on:

- [NuGet
package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)

###
[`v5.4.4`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.4.4):
TypeScript 5.4.4

[Compare
Source](https://togithub.com/Microsoft/TypeScript/compare/v5.4.3...v5.4.4)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/).

For the complete list of fixed issues, check out the

- [fixed issues query for Typescript 5.4.0
(Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.1
(RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.2
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.3
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.4
(Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.4%22+is%3Aclosed+).

Downloads are available on:

- [NuGet
package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on the first day of the
month" in timezone America/Los_Angeles, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/navapbc/template-application-nextjs).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI5My4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@reilnuud
Copy link

FYI I know this one is closed, but we'll be testing this when we do a round of maintenance on the related project in the next couple weeks here and I'll drop an update here regarding how it goes. Thanks for this fix!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working contributions welcome Good for people looking to contribute
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants