From a36828596e48f8fcf014e081d845080392f31caa Mon Sep 17 00:00:00 2001
From: Sanjaiyan Parthipan
Date: Thu, 4 Aug 2022 21:29:39 +0530
Subject: [PATCH 1/2] =?UTF-8?q?Optimize=20route-announcer=20=F0=9F=93=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
packages/next/client/route-announcer.tsx | 34 +++++++++++++-----------
1 file changed, 18 insertions(+), 16 deletions(-)
diff --git a/packages/next/client/route-announcer.tsx b/packages/next/client/route-announcer.tsx
index 022342e0b300..beda36cd2254 100644
--- a/packages/next/client/route-announcer.tsx
+++ b/packages/next/client/route-announcer.tsx
@@ -1,7 +1,22 @@
import React from 'react'
import { useRouter } from './router'
-export function RouteAnnouncer() {
+const nextjsRouteAnnouncerStyles: React.CSSProperties = {
+ border: 0,
+ clip: 'rect(0 0 0 0)',
+ height: '1px',
+ margin: '-1px',
+ overflow: 'hidden',
+ padding: 0,
+ position: 'absolute',
+ width: '1px',
+
+ // https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
+ whiteSpace: 'nowrap',
+ wordWrap: 'normal',
+}
+
+export const RouteAnnouncer = React.memo(() => {
const { asPath } = useRouter()
const [routeAnnouncement, setRouteAnnouncement] = React.useState('')
@@ -39,24 +54,11 @@ export function RouteAnnouncer() {
aria-live="assertive" // Make the announcement immediately.
id="__next-route-announcer__"
role="alert"
- style={{
- border: 0,
- clip: 'rect(0 0 0 0)',
- height: '1px',
- margin: '-1px',
- overflow: 'hidden',
- padding: 0,
- position: 'absolute',
- width: '1px',
-
- // https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
- whiteSpace: 'nowrap',
- wordWrap: 'normal',
- }}
+ style={nextjsRouteAnnouncerStyles}
>
{routeAnnouncement}
)
-}
+})
export default RouteAnnouncer
From 83dd8932729a061a894b19d6eba3cfe25ddad894 Mon Sep 17 00:00:00 2001
From: Sanjaiyan Parthipan
Date: Fri, 5 Aug 2022 10:18:25 +0530
Subject: [PATCH 2/2] Remove memo
---
packages/next/client/route-announcer.tsx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/next/client/route-announcer.tsx b/packages/next/client/route-announcer.tsx
index beda36cd2254..3b59fd84d96b 100644
--- a/packages/next/client/route-announcer.tsx
+++ b/packages/next/client/route-announcer.tsx
@@ -16,7 +16,7 @@ const nextjsRouteAnnouncerStyles: React.CSSProperties = {
wordWrap: 'normal',
}
-export const RouteAnnouncer = React.memo(() => {
+export const RouteAnnouncer = () => {
const { asPath } = useRouter()
const [routeAnnouncement, setRouteAnnouncement] = React.useState('')
@@ -59,6 +59,6 @@ export const RouteAnnouncer = React.memo(() => {
{routeAnnouncement}
)
-})
+}
export default RouteAnnouncer