diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
deleted file mode 100644
index 990d5bb6cfe..00000000000
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ /dev/null
@@ -1,19 +0,0 @@
----
-name: Feature request
-about: Suggest a new feature for PatternFly. Features augment or impact end user experience and requires design input.
-title: "[Component] - [short description]"
-type: Feature
-assignees: ''
-
----
-
-**Is this a new component or an extension of an existing one?**
-What is the existing component, if any?
-
-**Describe the feature**
-A clear and concise description of the new feature. What is the expected behavior?
-
-**Are there visuals for this feature? If applicable, please include examples for each state and for varying widths**
-Include screenshots or links to Marvel or other mockups.
-
-**Any other information?**
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
new file mode 100644
index 00000000000..7e9c1bb19c3
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -0,0 +1,99 @@
+name: Feature request
+description: Suggest a new feature or component for PatternFly.
+title: "[Component] - [short description]"
+labels: ["extension", "needs-triage"]
+body:
+ - type: markdown
+ attributes:
+ value: |
+ ### Thanks for helping improve PatternFly!
+ Please fill out this form to help the team understand your proposal.
+
+ - type: dropdown
+ id: category
+ attributes:
+ label: Is this a new component or an extension?
+ options:
+ - New Component
+ - Variant of an existing component
+ - Enhancement to a current feature
+ validations:
+ required: true
+
+ - type: input
+ id: existing_component
+ attributes:
+ label: Existing Component
+ description: If this is a variant or enhancement, which component does it impact?
+ placeholder: e.g., Table, Select, Wizard
+ validations:
+ required: false
+
+ - type: textarea
+ id: description
+ attributes:
+ label: Describe the feature
+ description: A clear and concise description of the new feature.
+ placeholder: What is the expected behavior? Is there any specific error handling?
+ validations:
+ required: true
+
+ - type: textarea
+ id: user_story
+ attributes:
+ label: User Story
+ description: Providing context helps us understand the priority.
+ placeholder: As a [user role], I want to [action] so that [benefit].
+ validations:
+ required: true
+
+ - type: textarea
+ id: visuals
+ attributes:
+ label: Visuals & Mockups
+ description: Include links to Figma or upload screenshots for desktop/mobile views.
+ placeholder: |
+ - Figma link:
+ - Screenshots: (Drag images here)
+ validations:
+ required: false
+
+ - type: textarea
+ id: interaction_states
+ attributes:
+ label: Interaction States & Variations
+ description: Describe the behavior across different states.
+ placeholder: |
+ - Initial/Empty:
+ - Loading:
+ - Error/Validation:
+ - Mobile/Responsive Viewport:
+ validations:
+ required: true
+
+ - type: textarea
+ id: accessibility
+ attributes:
+ label: Accessibility (A11y)
+ description: Specific keyboard interaction or focus management requirements.
+ placeholder: e.g., Tab navigation, ARIA labels, or focus traps.
+ validations:
+ required: false
+
+ - type: input
+ id: product_release
+ attributes:
+ label: Product & Target Release
+ description: If applicable, what is your product and target release date?
+ placeholder: e.g., OpenShift 4.15
+ validations:
+ required: false
+
+ - type: checkboxes
+ id: contribution_check
+ attributes:
+ label: Contribution
+ options:
+ - label: I am interested in contributing this feature.
+ - label: I have searched for similar existing requests.
+ required: true
diff --git a/.github/workflows/add-new-issues-to-project.yml b/.github/workflows/add-new-issues-to-project.yml
index 114f1cce430..ec999f05b1a 100644
--- a/.github/workflows/add-new-issues-to-project.yml
+++ b/.github/workflows/add-new-issues-to-project.yml
@@ -16,6 +16,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Team Membership Checker
+ id: teamcheck
# You may pin to the exact commit or the version.
# uses: TheModdingInquisition/actions-team-membership@a69636a92bc927f32c3910baac06bacc949c984c
uses: TheModdingInquisition/actions-team-membership@v1.0
@@ -27,9 +28,10 @@ jobs:
# The organization of the team to check for. Defaults to the context organization.
organization: 'patternfly'
# If the action should exit if the user is not part of the team.
- exit: true
+ exit: false
- name: Add label if user is a team member
+ if: steps.teamcheck.outputs.permitted == 'true'
run: |
curl -X POST \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 00000000000..2adc63e5c96
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,4 @@
+# Generated icon files - these are auto-generated and should not be formatted
+packages/react-icons/scripts/icons/rhIcons*.mjs
+packages/react-icons/scripts/icons/rhdsIcons*.mjs
+
diff --git a/README.md b/README.md
index b2cdee88a52..6ad8857abff 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
This project provides a set of React components for the [PatternFly project](https://patternfly.org).
**Community:** [PatternFly website](https://www.patternfly.org) | [Slack](https://slack.patternfly.org) | [Medium](https://medium.com/patternfly) | [Mailing list](https://www.redhat.com/mailman/listinfo/patternfly)
-
+
### Table of contents
1. [PatternFly React packages](#patternfly-react-packages)
2. [Setup](#Setup)
@@ -16,7 +16,7 @@ This project provides a set of React components for the [PatternFly project](htt
Using PatternFly 3? Take a look at the [PatternFly 3 React component information](https://github.com/patternfly/patternfly-react/blob/patternfly-3/README.md).
### PatternFly React packages
-
+
| Package link | Description |
| --- | --- |
| **:blue_heart: Core packages** |
diff --git a/package.json b/package.json
index 41033f69eef..2b18643bf39 100644
--- a/package.json
+++ b/package.json
@@ -29,48 +29,49 @@
"@babel/preset-env": "^7.28.5",
"@babel/preset-react": "^7.28.5",
"@babel/preset-typescript": "^7.28.5",
- "@eslint/compat": "^1.3.1",
+ "@eslint/compat": "^1.4.1",
"@eslint/js": "^9.32.0",
"@octokit/rest": "^21.1.1",
+ "@rhds/icons": "^2.1.0",
"@rollup/plugin-commonjs": "^26.0.3",
"@rollup/plugin-node-resolve": "^15.3.1",
"@rollup/plugin-replace": "^5.0.7",
"@rollup/plugin-terser": "^0.4.4",
- "@testing-library/dom": "^10.4.0",
- "@testing-library/jest-dom": "^6.6.3",
- "@testing-library/react": "^16.2.0",
+ "@testing-library/dom": "^10.4.1",
+ "@testing-library/jest-dom": "^6.9.1",
+ "@testing-library/react": "^16.3.2",
"@testing-library/user-event": "^14.6.1",
"@types/jest": "29.5.14",
"@types/node": "^22.16.5",
- "@types/react": "^18.3.23",
+ "@types/react": "^18.3.27",
"@types/react-dom": "^18.3.7",
"babel-jest": "^29.7.0",
- "concurrently": "^9.1.2",
+ "concurrently": "^9.2.1",
"eslint": "^9.32.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-markdown": "^5.1.0",
- "eslint-plugin-prettier": "^5.2.6",
+ "eslint-plugin-prettier": "^5.5.5",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-compiler": "19.0.0-beta-ebf51a3-20250411",
"eslint-plugin-react-hooks": "^5.2.0",
- "eslint-plugin-testing-library": "^7.1.1",
- "fs-extra": "^11.3.0",
- "glob": "^11.0.3",
+ "eslint-plugin-testing-library": "^7.15.4",
+ "fs-extra": "^11.3.3",
+ "glob": "^11.1.0",
"globals": "^15.15.0",
"husky": "^9.1.7",
"jest": "^29.7.0",
"jest-environment-jsdom": "^29.7.0",
"jest-transform-stub": "^2.0.0",
- "lerna": "^8.2.1",
- "lint-staged": "^15.5.0",
+ "lerna": "^8.2.4",
+ "lint-staged": "^15.5.2",
"mutation-observer": "^1.0.3",
- "plop": "^4.0.1",
- "prettier": "^3.5.3",
- "publint": "^0.3.9",
+ "plop": "^4.0.4",
+ "prettier": "^3.8.1",
+ "publint": "^0.3.16",
"react": "^18.3.1",
"react-dom": "^18.3.1",
- "rimraf": "^6.0.1",
- "rollup": "^4.36.0",
+ "rimraf": "^6.1.2",
+ "rollup": "^4.57.1",
"rollup-plugin-scss": "^4.0.1",
"rollup-plugin-svg": "^2.0.0",
"sass": "^1.86.0",
diff --git a/packages/eslint-plugin-patternfly-react/CHANGELOG.md b/packages/eslint-plugin-patternfly-react/CHANGELOG.md
index 8ccb8afe584..797538e4ca8 100644
--- a/packages/eslint-plugin-patternfly-react/CHANGELOG.md
+++ b/packages/eslint-plugin-patternfly-react/CHANGELOG.md
@@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+# [6.5.0-prerelease.11](https://github.com/patternfly/patternfly-react/compare/eslint-plugin-patternfly-react@6.5.0-prerelease.1...eslint-plugin-patternfly-react@6.5.0-prerelease.11) (2025-12-16)
+
+**Note:** Version bump only for package eslint-plugin-patternfly-react
+
# [6.5.0-prerelease.1](https://github.com/patternfly/patternfly-react/compare/eslint-plugin-patternfly-react@6.4.0...eslint-plugin-patternfly-react@6.5.0-prerelease.1) (2025-10-30)
**Note:** Version bump only for package eslint-plugin-patternfly-react
diff --git a/packages/eslint-plugin-patternfly-react/package.json b/packages/eslint-plugin-patternfly-react/package.json
index bdde8d6fab8..63b2b320aaa 100644
--- a/packages/eslint-plugin-patternfly-react/package.json
+++ b/packages/eslint-plugin-patternfly-react/package.json
@@ -1,6 +1,6 @@
{
"name": "eslint-plugin-patternfly-react",
- "version": "6.5.0-prerelease.1",
+ "version": "6.5.0-prerelease.11",
"type": "commonjs",
"exports": {
".": "./lib/index.js"
diff --git a/packages/react-charts/CHANGELOG.md b/packages/react-charts/CHANGELOG.md
index 59de911b097..f4de635ef53 100644
--- a/packages/react-charts/CHANGELOG.md
+++ b/packages/react-charts/CHANGELOG.md
@@ -3,6 +3,40 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+# [8.5.0-prerelease.14](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.13...@patternfly/react-charts@8.5.0-prerelease.14) (2026-02-18)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
+# [8.5.0-prerelease.13](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.12...@patternfly/react-charts@8.5.0-prerelease.13) (2026-02-05)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
+# [8.5.0-prerelease.12](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.11...@patternfly/react-charts@8.5.0-prerelease.12) (2026-01-28)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
+# [8.5.0-prerelease.11](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.10...@patternfly/react-charts@8.5.0-prerelease.11) (2026-01-09)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
+# [8.5.0-prerelease.10](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.9...@patternfly/react-charts@8.5.0-prerelease.10) (2025-12-17)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
+# [8.5.0-prerelease.9](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.6...@patternfly/react-charts@8.5.0-prerelease.9) (2025-12-16)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
+# [8.5.0-prerelease.6](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.5...@patternfly/react-charts@8.5.0-prerelease.6) (2025-11-14)
+
+### Bug Fixes
+
+- Moves items to new nav. ([#12013](https://github.com/patternfly/patternfly-react/issues/12013)) ([ddd0696](https://github.com/patternfly/patternfly-react/commit/ddd0696796134c7d0f9583ce56e26b0df47156cb))
+
+# [8.5.0-prerelease.5](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.4...@patternfly/react-charts@8.5.0-prerelease.5) (2025-11-12)
+
+**Note:** Version bump only for package @patternfly/react-charts
+
# [8.5.0-prerelease.4](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-charts@8.5.0-prerelease.3...@patternfly/react-charts@8.5.0-prerelease.4) (2025-11-06)
**Note:** Version bump only for package @patternfly/react-charts
diff --git a/packages/react-charts/package.json b/packages/react-charts/package.json
index 745a9c83e80..766e91d671d 100644
--- a/packages/react-charts/package.json
+++ b/packages/react-charts/package.json
@@ -1,6 +1,6 @@
{
"name": "@patternfly/react-charts",
- "version": "8.5.0-prerelease.4",
+ "version": "8.5.0-prerelease.14",
"description": "This library provides a set of React chart components for use with the PatternFly reference implementation.",
"main": "dist/js/index.js",
"module": "dist/esm/index.js",
@@ -42,12 +42,12 @@
"@patternfly/react-styles": "workspace:^",
"@patternfly/react-tokens": "workspace:^",
"hoist-non-react-statics": "^3.3.2",
- "lodash": "^4.17.21",
+ "lodash": "^4.17.23",
"tslib": "^2.8.1"
},
"devDependencies": {
- "@types/lodash": "^4.17.20",
- "fs-extra": "^11.3.0",
+ "@types/lodash": "^4.17.21",
+ "fs-extra": "^11.3.3",
"jest-canvas-mock": "^2.5.2"
},
"peerDependencies": {
diff --git a/packages/react-charts/src/echarts/components/Line/examples/index.md b/packages/react-charts/src/echarts/components/Line/examples/index.md
index bbbdb5abdd9..c440cf73d37 100644
--- a/packages/react-charts/src/echarts/components/Line/examples/index.md
+++ b/packages/react-charts/src/echarts/components/Line/examples/index.md
@@ -1,6 +1,7 @@
---
id: Line chart
-section: charts
+section: components
+subsection: charts
propComponents: [
{
component: 'Charts',
diff --git a/packages/react-charts/src/echarts/components/Sankey/examples/index.md b/packages/react-charts/src/echarts/components/Sankey/examples/index.md
index ea47a3892eb..26670100e7f 100644
--- a/packages/react-charts/src/echarts/components/Sankey/examples/index.md
+++ b/packages/react-charts/src/echarts/components/Sankey/examples/index.md
@@ -1,6 +1,7 @@
---
id: Sankey chart
-section: charts
+section: components
+subsection: charts
propComponents: [
{
component: 'Charts',
diff --git a/packages/react-charts/src/victory/components/ChartArea/examples/ChartArea.md b/packages/react-charts/src/victory/components/ChartArea/examples/ChartArea.md
index 1b1f7d9e1ee..8211352198d 100644
--- a/packages/react-charts/src/victory/components/ChartArea/examples/ChartArea.md
+++ b/packages/react-charts/src/victory/components/ChartArea/examples/ChartArea.md
@@ -1,6 +1,7 @@
---
id: Area chart
-section: charts
+section: components
+subsection: charts
propComponents: [
'Chart',
'ChartArea',
diff --git a/packages/react-charts/src/victory/components/ChartBar/examples/ChartBar.md b/packages/react-charts/src/victory/components/ChartBar/examples/ChartBar.md
index d9364fdc094..29f57c11b9e 100644
--- a/packages/react-charts/src/victory/components/ChartBar/examples/ChartBar.md
+++ b/packages/react-charts/src/victory/components/ChartBar/examples/ChartBar.md
@@ -1,6 +1,7 @@
---
id: Bar chart
-section: charts
+section: components
+subsection: charts
propComponents: ['Chart', 'ChartAxis', 'ChartBar', 'ChartGroup', 'ChartLabel', 'ChartVoronoiContainer']
hideDarkMode: true
---
diff --git a/packages/react-charts/src/victory/components/ChartBoxPlot/examples/ChartBoxPlot.md b/packages/react-charts/src/victory/components/ChartBoxPlot/examples/ChartBoxPlot.md
index c6b1a37da37..cccdad20c88 100644
--- a/packages/react-charts/src/victory/components/ChartBoxPlot/examples/ChartBoxPlot.md
+++ b/packages/react-charts/src/victory/components/ChartBoxPlot/examples/ChartBoxPlot.md
@@ -1,6 +1,7 @@
---
id: Box plot chart
-section: charts
+section: components
+subsection: charts
propComponents: [
'Chart',
'ChartAxis',
diff --git a/packages/react-charts/src/victory/components/ChartBullet/examples/ChartBullet.md b/packages/react-charts/src/victory/components/ChartBullet/examples/ChartBullet.md
index 32029b6b5c6..9484f65b26d 100644
--- a/packages/react-charts/src/victory/components/ChartBullet/examples/ChartBullet.md
+++ b/packages/react-charts/src/victory/components/ChartBullet/examples/ChartBullet.md
@@ -1,6 +1,7 @@
---
id: Bullet chart
-section: charts
+section: components
+subsection: charts
propComponents: [
'ChartAxis',
'ChartBullet',
diff --git a/packages/react-charts/src/victory/components/ChartCursorTooltip/__snapshots__/ChartCursorFlyout.test.tsx.snap b/packages/react-charts/src/victory/components/ChartCursorTooltip/__snapshots__/ChartCursorFlyout.test.tsx.snap
index b655956fd5d..4eb9b6d341d 100644
--- a/packages/react-charts/src/victory/components/ChartCursorTooltip/__snapshots__/ChartCursorFlyout.test.tsx.snap
+++ b/packages/react-charts/src/victory/components/ChartCursorTooltip/__snapshots__/ChartCursorFlyout.test.tsx.snap
@@ -18,12 +18,12 @@ exports[`allows tooltip via container component 1`] = `
width="200"
>
- {(isUploadEnabled || emptyState) && !value ? (
+ {isUploadEnabled || emptyState ? (
event.stopPropagation() // Prevents clicking TextArea from opening file dialog
diff --git a/packages/react-code-editor/src/components/CodeEditor/__test__/__snapshots__/CodeEditor.test.tsx.snap b/packages/react-code-editor/src/components/CodeEditor/__test__/__snapshots__/CodeEditor.test.tsx.snap
index 80f02fa90b6..2e567f30153 100644
--- a/packages/react-code-editor/src/components/CodeEditor/__test__/__snapshots__/CodeEditor.test.tsx.snap
+++ b/packages/react-code-editor/src/components/CodeEditor/__test__/__snapshots__/CodeEditor.test.tsx.snap
@@ -6,124 +6,166 @@ exports[`Matches snapshot with control buttons enabled 1`] = `
class="pf-v6-c-code-editor"
>
-
-
-
-
+
+
-
-
-
-
-
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
diff --git a/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditor.md b/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditor.md
index 0c3d3681b5d..7fe074cf68c 100644
--- a/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditor.md
+++ b/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditor.md
@@ -14,6 +14,7 @@ import HashtagIcon from '@patternfly/react-icons/dist/esm/icons/hashtag-icon';
import MapIcon from '@patternfly/react-icons/dist/esm/icons/map-icon';
import MoonIcon from '@patternfly/react-icons/dist/esm/icons/moon-icon';
import PlayIcon from '@patternfly/react-icons/dist/esm/icons/play-icon';
+import FontIcon from '@patternfly/react-icons/dist/esm/icons/font-icon';
## Examples
diff --git a/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditorConfigurationModal.tsx b/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditorConfigurationModal.tsx
index 1f5cc3d7bca..95b4e4e8516 100644
--- a/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditorConfigurationModal.tsx
+++ b/packages/react-code-editor/src/components/CodeEditor/examples/CodeEditorConfigurationModal.tsx
@@ -2,8 +2,19 @@ import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
import MapIcon from '@patternfly/react-icons/dist/esm/icons/map-icon';
import MoonIcon from '@patternfly/react-icons/dist/esm/icons/moon-icon';
import HashtagIcon from '@patternfly/react-icons/dist/esm/icons/hashtag-icon';
+import FontIcon from '@patternfly/react-icons/dist/esm/icons/font-icon';
import { CodeEditor, CodeEditorControl } from '@patternfly/react-code-editor';
-import { Flex, FlexItem, Icon, Modal, ModalBody, ModalHeader, Switch, SwitchProps } from '@patternfly/react-core';
+import {
+ Flex,
+ FlexItem,
+ Icon,
+ Modal,
+ ModalBody,
+ ModalHeader,
+ NumberInput,
+ Switch,
+ SwitchProps
+} from '@patternfly/react-core';
import { useState } from 'react';
interface ConfigModalItemProps {
@@ -11,76 +22,105 @@ interface ConfigModalItemProps {
icon?: React.ReactNode;
/** Description of the configuration option. */
description: string;
- /** Flag indicating whether the option is enabled or disabled. */
- isChecked?: SwitchProps['isChecked'];
- /** onChange handler for the switch. */
- onChange?: SwitchProps['onChange'];
/** Title of the configuration option. We assume that titles are unique. */
title: string;
- /** Labels for the enabled and disabled states of the switch. */
- labels?: {
- enabled: string;
- disabled: string;
- };
- /** Optional OUIA ID of the configuration option. Also used as a prefix for the ids of inner elements. */
- ouiaId?: string;
+ /**
+ * Optional ID of the configuration option. Also used as a prefix for the following elements:
+ * - `${id}-title` for the element which contains the title
+ * - `${id}-description` for the element which contains the description
+ */
+ id?: string;
+ /**
+ * Slot to render inside the configuration modal. Remember to add `aria-labelledby` and `aria-describedby` props
+ * to the control inside the slot, pointing to the title and description ids respectively.
+ */
+ slot?: React.ReactNode;
}
const ConfigModalItem: React.FunctionComponent = ({
icon = ,
description,
- isChecked = false,
- labels = { enabled: undefined, disabled: undefined },
- onChange,
title,
- ouiaId
+ id = `ConfigModalItem-${title.replace(/\s+/g, '-').toLowerCase()}`,
+ slot
}) => (
{icon}
-
+
{title}
-
{description}
+
{description}
-
+ {slot}
+
+);
+
+interface ConfigModalSwitchProps extends Omit {
+ /** Flag indicating whether the option is enabled or disabled. */
+ isChecked?: SwitchProps['isChecked'];
+ /** onChange handler for the switch. */
+ onChange?: SwitchProps['onChange'];
+ /** Labels for the enabled and disabled states of the switch. */
+ labels?: {
+ enabled: string;
+ disabled: string;
+ };
+}
+
+const ConfigModalSwitch: React.FunctionComponent = ({
+ icon = ,
+ description,
+ title,
+ id = `ConfigModalSwitch-${title.replace(/\s+/g, '-').toLowerCase()}`,
+ isChecked = false,
+ onChange,
+ labels = { enabled: undefined, disabled: undefined }
+}) => (
+
-
-
+ }
+ />
);
interface ConfigModalControlProps {
- /** Array of configuration controls to be rendered inside the modal. */
- controls: ConfigModalItemProps[];
+ /** Controls to be rendered inside the configuration modal. */
+ children: React.ReactNode;
/** Title of the configuration modal. */
title?: string;
/** Description of the configuration modal. */
description?: string;
- /** Optional OUIA ID of the configuration modal. Also used as a prefix for the ids of inner elements. */
+ /** Optional ID of the configuration modal. Also used as a prefix for the ids of inner elements and the OUIA id. */
ouiaId?: string;
}
const ConfigModalControl: React.FunctionComponent = ({
- controls,
+ children,
title = 'Editor settings',
- description = 'Settings will be applied immediately',
+ description = 'Changes apply immediately',
ouiaId = 'CodeEditorConfigurationModal'
-}) => {
+}: ConfigModalControlProps) => {
const [isModalOpen, setIsModalOpen] = useState(false);
return (
@@ -89,27 +129,21 @@ const ConfigModalControl: React.FunctionComponent = ({
aria-describedby={`${ouiaId}-body`}
aria-labelledby={`${ouiaId}-title`}
isOpen={isModalOpen}
- onClose={() => setIsModalOpen(!isModalOpen)}
+ onClose={() => setIsModalOpen(false)}
ouiaId={ouiaId}
variant="small"
>
- {controls.map((control) => (
-
- ))}
+ {children}
}
+ isSettings
onClick={() => setIsModalOpen(true)}
tooltipProps={{ content: title, ariaLive: 'off' }}
/>
@@ -123,37 +157,62 @@ export const CodeEditorConfigurationModal: React.FunctionComponent = () => {
const [isMinimapVisible, setIsMinimapVisible] = useState(true);
const [isDarkTheme, setIsDarkTheme] = useState(false);
const [isLineNumbersVisible, setIsLineNumbersVisible] = useState(true);
+ const [fontSize, setFontSize] = useState(14);
const onChange = (code: string) => {
setCode(code);
};
const customControl = (
- setIsMinimapVisible(checked),
- icon:
- },
- {
- title: 'Dark theme',
- description: 'Switch the editor to a dark color theme',
- isChecked: isDarkTheme,
- onChange: (_e, checked) => setIsDarkTheme(checked),
- icon:
- },
- {
- title: 'Line numbers',
- description: 'Show line numbers to the left of each line of code',
- isChecked: isLineNumbersVisible,
- onChange: (_e, checked) => setIsLineNumbersVisible(checked),
- icon:
+
+ setIsMinimapVisible(checked)}
+ icon={}
+ />
+ setIsDarkTheme(checked)}
+ icon={}
+ />
+ setIsLineNumbersVisible(checked)}
+ icon={}
+ />
+ }
+ slot={
+ setFontSize((size) => Math.max(5, size - 1))}
+ onChange={(event) => setFontSize(Number((event.target as HTMLInputElement).value))}
+ onPlus={() => setFontSize((size) => size + 1)}
+ widthChars={2}
+ />
}
- ]}
- />
+ />
+
);
return (
@@ -165,6 +224,7 @@ export const CodeEditorConfigurationModal: React.FunctionComponent = () => {
isLineNumbersVisible={isLineNumbersVisible}
isMinimapVisible={isMinimapVisible}
onChange={onChange}
+ options={{ fontSize }}
/>
);
};
diff --git a/packages/react-core/CHANGELOG.md b/packages/react-core/CHANGELOG.md
index cbf18e13695..fbc529c7715 100644
--- a/packages/react-core/CHANGELOG.md
+++ b/packages/react-core/CHANGELOG.md
@@ -3,6 +3,136 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+# [6.5.0-prerelease.33](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.32...@patternfly/react-core@6.5.0-prerelease.33) (2026-02-18)
+
+### Features
+
+- **icons:** add swap support for mapped rh-ui icons ([#12245](https://github.com/patternfly/patternfly-react/issues/12245)) ([a81ce0e](https://github.com/patternfly/patternfly-react/commit/a81ce0e1b6fdd7a3e85cdd70e5bb667dc7d82801))
+
+# [6.5.0-prerelease.32](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.31...@patternfly/react-core@6.5.0-prerelease.32) (2026-02-06)
+
+### Bug Fixes
+
+- update ToggleGroup examples to properly toggle options ([#12239](https://github.com/patternfly/patternfly-react/issues/12239)) ([4332de4](https://github.com/patternfly/patternfly-react/commit/4332de4bb67b03521f99a888715019eefb9a0868)), closes [#12234](https://github.com/patternfly/patternfly-react/issues/12234)
+
+# [6.5.0-prerelease.31](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.30...@patternfly/react-core@6.5.0-prerelease.31) (2026-02-06)
+
+### Bug Fixes
+
+- **LoginPage:** allow brand props passthrough make brand optional ([#12194](https://github.com/patternfly/patternfly-react/issues/12194)) ([86d09b5](https://github.com/patternfly/patternfly-react/commit/86d09b5bbc360ae076d3bbf41a6a8e04e824e4e4))
+
+# [6.5.0-prerelease.30](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.29...@patternfly/react-core@6.5.0-prerelease.30) (2026-02-05)
+
+### Bug Fixes
+
+- **FileUploadField:** don't render empty dom node ([#12236](https://github.com/patternfly/patternfly-react/issues/12236)) ([57f5823](https://github.com/patternfly/patternfly-react/commit/57f5823f2f2eadbd6d2fa3ec4c8726bee72cefdf))
+
+# [6.5.0-prerelease.29](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.28...@patternfly/react-core@6.5.0-prerelease.29) (2026-02-05)
+
+### Features
+
+- **TreeView:** add support for disabled TreeViewListItems ([#12140](https://github.com/patternfly/patternfly-react/issues/12140)) ([3514831](https://github.com/patternfly/patternfly-react/commit/35148312f5d9ce4e706ad36b801455fc987842bb))
+
+# [6.5.0-prerelease.28](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.27...@patternfly/react-core@6.5.0-prerelease.28) (2026-01-12)
+
+**Note:** Version bump only for package @patternfly/react-core
+
+# [6.5.0-prerelease.27](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.26...@patternfly/react-core@6.5.0-prerelease.27) (2026-01-09)
+
+**Note:** Version bump only for package @patternfly/react-core
+
+# [6.5.0-prerelease.26](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.25...@patternfly/react-core@6.5.0-prerelease.26) (2026-01-09)
+
+### Bug Fixes
+
+- **Label:** render add variant labels as buttons ([#12192](https://github.com/patternfly/patternfly-react/issues/12192)) ([371d2c0](https://github.com/patternfly/patternfly-react/commit/371d2c09d463e03def196dba354ae9b856e9d4ac))
+
+# [6.5.0-prerelease.25](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.24...@patternfly/react-core@6.5.0-prerelease.25) (2025-12-17)
+
+### Features
+
+- **ClipboardCopy:** added textinput callbacks and props ([#12180](https://github.com/patternfly/patternfly-react/issues/12180)) ([4f5dcda](https://github.com/patternfly/patternfly-react/commit/4f5dcdae381bb12c9f728716e2be4aa5a8c67cb2))
+
+# [6.5.0-prerelease.24](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.21...@patternfly/react-core@6.5.0-prerelease.24) (2025-12-16)
+
+### Bug Fixes
+
+- **deps:** update dependency focus-trap to v7.6.6 ([#12102](https://github.com/patternfly/patternfly-react/issues/12102)) ([06af4c5](https://github.com/patternfly/patternfly-react/commit/06af4c503674e3fdb07819b75b53a257a7822579))
+- **DrawerPanelContent:** add inert when drawer is closed ([#12027](https://github.com/patternfly/patternfly-react/issues/12027)) ([8928745](https://github.com/patternfly/patternfly-react/commit/8928745fb7364828ed4d581f30f01146bdc9990e))
+- **Drawer:** update refs in examples ([#12152](https://github.com/patternfly/patternfly-react/issues/12152)) ([2767ce0](https://github.com/patternfly/patternfly-react/commit/2767ce0896ef22bbfea5839905ee5cfedac86a80))
+- fixes broken docs link. ([#12157](https://github.com/patternfly/patternfly-react/issues/12157)) ([80b72de](https://github.com/patternfly/patternfly-react/commit/80b72de8ba9a326375cd0919ff5b81ff5b1ebf7c))
+- **form:** keep required asterisk from orphaning ([#11961](https://github.com/patternfly/patternfly-react/issues/11961)) ([d11c186](https://github.com/patternfly/patternfly-react/commit/d11c186313c9820e674fe1cdce7d630b57a62755))
+- **layouts:** update example css & classnames ([#12145](https://github.com/patternfly/patternfly-react/issues/12145)) ([11fe19a](https://github.com/patternfly/patternfly-react/commit/11fe19a02297d85f50e11375820430b2980bc47b))
+- **Wizard:** Fix crash in nav when first sub-step is hidden ([#12166](https://github.com/patternfly/patternfly-react/issues/12166)) ([3730dcf](https://github.com/patternfly/patternfly-react/commit/3730dcfe2a3f35050ba7e39fed16ead322b39521))
+
+### Features
+
+- **Compass:** add isPill to Drawer by default ([#12151](https://github.com/patternfly/patternfly-react/issues/12151)) ([b2cdf1c](https://github.com/patternfly/patternfly-react/commit/b2cdf1cd5d95be91932e6ac11f39e2c0318e6f72))
+- **docked nav:** add support for docked nav layout ([#12175](https://github.com/patternfly/patternfly-react/issues/12175)) ([5519389](https://github.com/patternfly/patternfly-react/commit/55193896b899aa1e2b8dfbbddd644507988ee31f))
+
+# [6.5.0-prerelease.21](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.20...@patternfly/react-core@6.5.0-prerelease.21) (2025-12-03)
+
+**Note:** Version bump only for package @patternfly/react-core
+
+# [6.5.0-prerelease.20](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.19...@patternfly/react-core@6.5.0-prerelease.20) (2025-12-03)
+
+**Note:** Version bump only for package @patternfly/react-core
+
+# [6.5.0-prerelease.19](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.18...@patternfly/react-core@6.5.0-prerelease.19) (2025-12-01)
+
+### Features
+
+- **Dropdown:** Add optional container with ouiaId ([#12022](https://github.com/patternfly/patternfly-react/issues/12022)) ([0811452](https://github.com/patternfly/patternfly-react/commit/0811452f2720872e19d08a3781d4399368745dc8))
+- **ExpandableSection:** Allow more control over toggle icon ([#12051](https://github.com/patternfly/patternfly-react/issues/12051)) ([07c2bbf](https://github.com/patternfly/patternfly-react/commit/07c2bbfb32491c8f69dfa4261c9e1edb9136d487))
+
+# [6.5.0-prerelease.18](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.17...@patternfly/react-core@6.5.0-prerelease.18) (2025-11-21)
+
+**Note:** Version bump only for package @patternfly/react-core
+
+# [6.5.0-prerelease.17](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.16...@patternfly/react-core@6.5.0-prerelease.17) (2025-11-20)
+
+**Note:** Version bump only for package @patternfly/react-core
+
+# [6.5.0-prerelease.16](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.15...@patternfly/react-core@6.5.0-prerelease.16) (2025-11-20)
+
+### Features
+
+- **Compass:** add CompassMainFooter ([#12137](https://github.com/patternfly/patternfly-react/issues/12137)) ([1da6fc2](https://github.com/patternfly/patternfly-react/commit/1da6fc2fb7d1f09ca31cc95069dab87c587639f5))
+
+# [6.5.0-prerelease.15](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.14...@patternfly/react-core@6.5.0-prerelease.15) (2025-11-19)
+
+### Features
+
+- **Compass:** add compass nav components ([#12138](https://github.com/patternfly/patternfly-react/issues/12138)) ([4bd98bc](https://github.com/patternfly/patternfly-react/commit/4bd98bc297261f79e4a4a7d351e336cf26a526e4))
+
+# [6.5.0-prerelease.14](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.13...@patternfly/react-core@6.5.0-prerelease.14) (2025-11-17)
+
+### Bug Fixes
+
+- **Compass:** get props tables rendering correctly ([#12142](https://github.com/patternfly/patternfly-react/issues/12142)) ([399cbc4](https://github.com/patternfly/patternfly-react/commit/399cbc45844152083d0160d63f953aa7f29479d3))
+
+# [6.5.0-prerelease.13](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.12...@patternfly/react-core@6.5.0-prerelease.13) (2025-11-14)
+
+### Bug Fixes
+
+- Moves items to new nav. ([#12013](https://github.com/patternfly/patternfly-react/issues/12013)) ([ddd0696](https://github.com/patternfly/patternfly-react/commit/ddd0696796134c7d0f9583ce56e26b0df47156cb))
+
+### Features
+
+- **Compass:** updated mainheader structure to be composable ([#12135](https://github.com/patternfly/patternfly-react/issues/12135)) ([6bcdcaf](https://github.com/patternfly/patternfly-react/commit/6bcdcaf116645aad4c9c0d98ca61045976a84946))
+
+# [6.5.0-prerelease.12](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.11...@patternfly/react-core@6.5.0-prerelease.12) (2025-11-12)
+
+### Features
+
+- **Hero:** added component ([#12131](https://github.com/patternfly/patternfly-react/issues/12131)) ([8da87a2](https://github.com/patternfly/patternfly-react/commit/8da87a2615bb6cfc350a52677ec6bdae335bb6f8))
+
+# [6.5.0-prerelease.11](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.10...@patternfly/react-core@6.5.0-prerelease.11) (2025-11-10)
+
+### Bug Fixes
+
+- Moved compass component to generative ui. ([#12133](https://github.com/patternfly/patternfly-react/issues/12133)) ([bb46849](https://github.com/patternfly/patternfly-react/commit/bb4684986bbd3fdb879aa0ff60e2747150bd3722))
+
# [6.5.0-prerelease.10](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@6.5.0-prerelease.9...@patternfly/react-core@6.5.0-prerelease.10) (2025-11-10)
### Bug Fixes
diff --git a/packages/react-core/README.md b/packages/react-core/README.md
index a00c99ac118..cdeddc0a630 100644
--- a/packages/react-core/README.md
+++ b/packages/react-core/README.md
@@ -37,7 +37,7 @@ import '@patternfly/react-core/dist/styles/base.css';
#### Example component usage
-```js
+```ts
import { Button } from '@patternfly/react-core';
export default ;
diff --git a/packages/react-core/package.json b/packages/react-core/package.json
index acc37f25e74..dee08d8e603 100644
--- a/packages/react-core/package.json
+++ b/packages/react-core/package.json
@@ -1,6 +1,6 @@
{
"name": "@patternfly/react-core",
- "version": "6.5.0-prerelease.10",
+ "version": "6.5.0-prerelease.33",
"description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
"main": "dist/js/index.js",
"module": "dist/esm/index.js",
@@ -49,15 +49,15 @@
"@patternfly/react-icons": "workspace:^",
"@patternfly/react-styles": "workspace:^",
"@patternfly/react-tokens": "workspace:^",
- "focus-trap": "7.6.4",
+ "focus-trap": "7.6.6",
"react-dropzone": "^14.3.5",
"tslib": "^2.8.1"
},
"devDependencies": {
- "@patternfly/patternfly": "6.5.0-prerelease.19",
+ "@patternfly/patternfly": "6.5.0-prerelease.41",
"case-anything": "^3.1.2",
"css": "^3.0.0",
- "fs-extra": "^11.3.0"
+ "fs-extra": "^11.3.3"
},
"peerDependencies": {
"react": "^17 || ^18 || ^19",
diff --git a/packages/react-core/src/components/AboutModal/__tests__/__snapshots__/AboutModalBoxCloseButton.test.tsx.snap b/packages/react-core/src/components/AboutModal/__tests__/__snapshots__/AboutModalBoxCloseButton.test.tsx.snap
index 2d721cf9cf6..3c2698b2529 100644
--- a/packages/react-core/src/components/AboutModal/__tests__/__snapshots__/AboutModalBoxCloseButton.test.tsx.snap
+++ b/packages/react-core/src/components/AboutModal/__tests__/__snapshots__/AboutModalBoxCloseButton.test.tsx.snap
@@ -22,12 +22,24 @@ exports[`AboutModalBoxCloseButton Test 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 352 512"
width="1em"
>
-
+
+
+
+
+
+
@@ -57,12 +69,24 @@ exports[`AboutModalBoxCloseButton Test close button aria label 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 352 512"
width="1em"
>
-
+
+
+
+
+
+
@@ -92,12 +116,24 @@ exports[`AboutModalBoxCloseButton Test onclose 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 352 512"
width="1em"
>
-
+
+
+
+
+
+
diff --git a/packages/react-core/src/components/Accordion/AccordionToggle.tsx b/packages/react-core/src/components/Accordion/AccordionToggle.tsx
index 64bdc846455..f82aa1de125 100644
--- a/packages/react-core/src/components/Accordion/AccordionToggle.tsx
+++ b/packages/react-core/src/components/Accordion/AccordionToggle.tsx
@@ -4,8 +4,10 @@ import styles from '@patternfly/react-styles/css/components/Accordion/accordion'
import AngleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-right-icon';
import { AccordionContext, AccordionItemContext } from './AccordionContext';
-export interface AccordionToggleProps
- extends React.DetailedHTMLProps, HTMLButtonElement> {
+export interface AccordionToggleProps extends React.DetailedHTMLProps<
+ React.ButtonHTMLAttributes,
+ HTMLButtonElement
+> {
/** Content rendered inside the Accordion toggle */
children?: React.ReactNode;
/** Additional classes added to the Accordion Toggle */
diff --git a/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertActionCloseButton.test.tsx.snap b/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertActionCloseButton.test.tsx.snap
index 9ebc77452b1..39d5b531958 100644
--- a/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertActionCloseButton.test.tsx.snap
+++ b/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertActionCloseButton.test.tsx.snap
@@ -19,12 +19,24 @@ exports[`AlertActionCloseButton should match snapshot 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 352 512"
width="1em"
>
-
+
+
+
+
+
+
diff --git a/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertIcon.test.tsx.snap b/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertIcon.test.tsx.snap
index 00a41983f34..ba38160093a 100644
--- a/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertIcon.test.tsx.snap
+++ b/packages/react-core/src/components/Alert/__tests__/Generated/__snapshots__/AlertIcon.test.tsx.snap
@@ -11,12 +11,24 @@ exports[`AlertIcon should match snapshot (auto-generated) 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 512 512"
width="1em"
>
-
+
+
+
+
+
+
diff --git a/packages/react-core/src/components/Alert/__tests__/__snapshots__/AlertActionCloseButton.test.tsx.snap b/packages/react-core/src/components/Alert/__tests__/__snapshots__/AlertActionCloseButton.test.tsx.snap
index 98f1594e1b4..2568762c47f 100644
--- a/packages/react-core/src/components/Alert/__tests__/__snapshots__/AlertActionCloseButton.test.tsx.snap
+++ b/packages/react-core/src/components/Alert/__tests__/__snapshots__/AlertActionCloseButton.test.tsx.snap
@@ -28,12 +28,24 @@ exports[`Matches the snapshot 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 352 512"
width="1em"
>
-
+
+
+
+
+
+
diff --git a/packages/react-core/src/components/Alert/examples/AlertAsyncLiveRegion.tsx b/packages/react-core/src/components/Alert/examples/AlertAsyncLiveRegion.tsx
index 9380ff4d4e2..51553032071 100644
--- a/packages/react-core/src/components/Alert/examples/AlertAsyncLiveRegion.tsx
+++ b/packages/react-core/src/components/Alert/examples/AlertAsyncLiveRegion.tsx
@@ -42,13 +42,7 @@ export const AsyncLiveRegionAlert: React.FunctionComponent = () => {
text="Async alerts on"
buttonId="async-alerts-on"
isSelected={isActive}
- onChange={() => setIsActive(true)}
- />
- setIsActive(false)}
+ onChange={() => setIsActive(!isActive)}
/>
diff --git a/packages/react-core/src/components/Avatar/Avatar.tsx b/packages/react-core/src/components/Avatar/Avatar.tsx
index f7108e8c33e..1f1c2f2cde5 100644
--- a/packages/react-core/src/components/Avatar/Avatar.tsx
+++ b/packages/react-core/src/components/Avatar/Avatar.tsx
@@ -1,8 +1,10 @@
import styles from '@patternfly/react-styles/css/components/Avatar/avatar';
import { css } from '@patternfly/react-styles';
-export interface AvatarProps
- extends React.DetailedHTMLProps, HTMLImageElement> {
+export interface AvatarProps extends React.DetailedHTMLProps<
+ React.ImgHTMLAttributes,
+ HTMLImageElement
+> {
/** Additional classes added to the avatar. */
className?: string;
/** Attribute that specifies the URL of the image for the avatar. */
diff --git a/packages/react-core/src/components/BackToTop/__tests__/__snapshots__/BackToTop.test.tsx.snap b/packages/react-core/src/components/BackToTop/__tests__/__snapshots__/BackToTop.test.tsx.snap
index 0905c8f41cd..5836bd168ee 100644
--- a/packages/react-core/src/components/BackToTop/__tests__/__snapshots__/BackToTop.test.tsx.snap
+++ b/packages/react-core/src/components/BackToTop/__tests__/__snapshots__/BackToTop.test.tsx.snap
@@ -31,12 +31,24 @@ exports[`Matches the snapshot 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 320 512"
width="1em"
>
-
+
+
+
+
+
+
diff --git a/packages/react-core/src/components/Brand/Brand.tsx b/packages/react-core/src/components/Brand/Brand.tsx
index 89186f369c6..02c3695a9d4 100644
--- a/packages/react-core/src/components/Brand/Brand.tsx
+++ b/packages/react-core/src/components/Brand/Brand.tsx
@@ -4,8 +4,10 @@ import { setBreakpointCssVars } from '../../helpers';
import cssBrandHeight from '@patternfly/react-tokens/dist/esm/c_brand_Height';
import cssBrandWidth from '@patternfly/react-tokens/dist/esm/c_brand_Width';
-export interface BrandProps
- extends React.DetailedHTMLProps, HTMLImageElement> {
+export interface BrandProps extends React.DetailedHTMLProps<
+ React.ImgHTMLAttributes,
+ HTMLImageElement
+> {
/** Transforms the Brand into a element from an element. Container for child elements. */
children?: React.ReactNode;
/** Additional classes added to the either type of Brand. */
diff --git a/packages/react-core/src/components/Breadcrumb/__tests__/__snapshots__/Breadcrumb.test.tsx.snap b/packages/react-core/src/components/Breadcrumb/__tests__/__snapshots__/Breadcrumb.test.tsx.snap
index c0ef331e2a7..b3fca635b5a 100644
--- a/packages/react-core/src/components/Breadcrumb/__tests__/__snapshots__/Breadcrumb.test.tsx.snap
+++ b/packages/react-core/src/components/Breadcrumb/__tests__/__snapshots__/Breadcrumb.test.tsx.snap
@@ -53,12 +53,24 @@ exports[`Breadcrumb component should render breadcrumb with children 1`] = `
fill="currentColor"
height="1em"
role="img"
- viewBox="0 0 256 512"
width="1em"
>
-
+
+
+
+
+
+
-
+
+
+
+
+
+
diff --git a/packages/react-core/src/components/Checkbox/Checkbox.tsx b/packages/react-core/src/components/Checkbox/Checkbox.tsx
index ed91f65dd9a..5ad9d25e653 100644
--- a/packages/react-core/src/components/Checkbox/Checkbox.tsx
+++ b/packages/react-core/src/components/Checkbox/Checkbox.tsx
@@ -7,8 +7,7 @@ import { getUniqueId } from '../../helpers/util';
import { ASTERISK } from '../../helpers/htmlConstants';
export interface CheckboxProps
- extends Omit, 'type' | 'onChange' | 'disabled' | 'label'>,
- OUIAProps {
+ extends Omit, 'type' | 'onChange' | 'disabled' | 'label'>, OUIAProps {
/** Additional classes added to the checkbox wrapper. This wrapper will be div element by default. It will be a label element if
* isLabelWrapped is true, or it can be overridden by any element specified in the component prop.
*/
diff --git a/packages/react-core/src/components/ClipboardCopy/ClipboardCopy.tsx b/packages/react-core/src/components/ClipboardCopy/ClipboardCopy.tsx
index 453a5ad4556..1e67e4c3b00 100644
--- a/packages/react-core/src/components/ClipboardCopy/ClipboardCopy.tsx
+++ b/packages/react-core/src/components/ClipboardCopy/ClipboardCopy.tsx
@@ -55,6 +55,10 @@ export interface ClipboardCopyProps extends Omit
textAriaLabel?: string;
/** Aria-label to use on the ClipboardCopyToggle. */
toggleAriaLabel?: string;
+ /** ID to use on the TextInput. */
+ inputId?: string;
+ /** Name attribute to use on the TextInput. */
+ inputName?: string;
/** Flag to show if the input is read only. */
isReadOnly?: boolean;
/** Flag to determine if clipboard copy is in the expanded state initially */
@@ -91,6 +95,10 @@ export interface ClipboardCopyProps extends Omit
onCopy?: (event: React.ClipboardEvent, text?: React.ReactNode) => void;
/** A function that is triggered on changing the text. */
onChange?: (event: React.FormEvent, text?: string) => void;
+ /** Callback function when text input is focused */
+ onInputFocus?: (event?: any) => void;
+ /** Callback function when text input is blurred (focus leaves) */
+ onInputBlur?: (event?: any) => void;
/** The text which is copied. */
children: string | string[];
/** Additional actions for inline clipboard copy. Should be wrapped with ClipboardCopyAction. */
@@ -177,6 +185,8 @@ class ClipboardCopy extends Component {
/* eslint-disable @typescript-eslint/no-unused-vars */
isExpanded,
onChange, // Don't pass to