diff --git a/.changeset/giant-bees-impress.md b/.changeset/giant-bees-impress.md new file mode 100644 index 00000000000..0b9d17e7e92 --- /dev/null +++ b/.changeset/giant-bees-impress.md @@ -0,0 +1,5 @@ +--- +"@primer/react": patch +--- + +Fix an issue in useAnnouncements.tsx causing a TypeError in production. The activeItem variable may be null. diff --git a/.changeset/lazy-jars-leave.md b/.changeset/lazy-jars-leave.md new file mode 100644 index 00000000000..22849369cf2 --- /dev/null +++ b/.changeset/lazy-jars-leave.md @@ -0,0 +1,5 @@ +--- +"@primer/react": patch +--- + +Avoid accessing properties of potentially null document.body in PageLayout diff --git a/packages/react/src/FilteredActionList/useAnnouncements.tsx b/packages/react/src/FilteredActionList/useAnnouncements.tsx index aa48a8a2b45..43e11c08400 100644 --- a/packages/react/src/FilteredActionList/useAnnouncements.tsx +++ b/packages/react/src/FilteredActionList/useAnnouncements.tsx @@ -4,6 +4,7 @@ import {announce} from '@primer/live-region-element' import {useEffect, useRef} from 'react' import type {FilteredActionListProps} from './FilteredActionListEntry' +import type {ItemInput} from '../deprecated/ActionList/List' // we add a delay so that it does not interrupt default screen reader announcement and queues after it const delayMs = 500 @@ -28,10 +29,10 @@ const getItemWithActiveDescendant = ( const optionElements = listElement.querySelectorAll('[role="option"]') const index = Array.from(optionElements).indexOf(activeItemElement) - const activeItem = items[index] + const activeItem = items[index] as ItemInput | undefined - const text = activeItem.text - const selected = activeItem.selected + const text = activeItem?.text + const selected = activeItem?.selected return {index, text, selected} } diff --git a/packages/react/src/PageLayout/PageLayout.tsx b/packages/react/src/PageLayout/PageLayout.tsx index ee166fb5bce..f1240338f66 100644 --- a/packages/react/src/PageLayout/PageLayout.tsx +++ b/packages/react/src/PageLayout/PageLayout.tsx @@ -364,13 +364,15 @@ const VerticalDivider: React.FC { @@ -378,7 +380,8 @@ const VerticalDivider: React.FC