diff --git a/.changeset/quiet-terms-juggle.md b/.changeset/quiet-terms-juggle.md new file mode 100644 index 00000000000..a6743ae384d --- /dev/null +++ b/.changeset/quiet-terms-juggle.md @@ -0,0 +1,5 @@ +--- +"@primer/react": patch +--- + +chore: fix UnderlineWrapper html structure diff --git a/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.docs.json b/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.docs.json index 14c7f62c1a7..332e803b990 100644 --- a/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.docs.json +++ b/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.docs.json @@ -58,6 +58,12 @@ "type": "boolean", "defaultValue": "false", "description": "Loading state for all counters. It displays loading animation for individual counters until all are resolved. It is needed to prevent multiple layout shift." + }, + { + "name": "as", + "type": "React.ElementType", + "defaultValue": "'div'", + "description": "The HTML element or React component used to render the outermost element." } ], "subcomponents": [ diff --git a/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.tsx b/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.tsx index 7dd02c34482..575593ece7d 100644 --- a/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.tsx +++ b/packages/react/src/experimental/UnderlinePanels/UnderlinePanels.tsx @@ -52,6 +52,10 @@ export type UnderlinePanelsProps = { * Class name for custom styling */ className?: string + /** + * Element type for the tab container + */ + as?: React.ElementType } export type TabProps = PropsWithChildren<{ diff --git a/packages/react/src/internal/components/UnderlineTabbedInterface.tsx b/packages/react/src/internal/components/UnderlineTabbedInterface.tsx index 6bb6a388cae..7516a0cd4f1 100644 --- a/packages/react/src/internal/components/UnderlineTabbedInterface.tsx +++ b/packages/react/src/internal/components/UnderlineTabbedInterface.tsx @@ -21,7 +21,7 @@ type UnderlineWrapperProps = { } export const UnderlineWrapper = forwardRef((props, ref) => { - const {children, className, as: Component = 'nav', ...rest} = props + const {children, className, as: Component = 'div', ...rest} = props return (