From 3ef9263a076cce968b82a06cbf184a5b3266385a Mon Sep 17 00:00:00 2001 From: Deirdre Malone Date: Thu, 20 Aug 2026 10:23:15 +0100 Subject: [PATCH 1/2] feat: replace outdated react-linkify dependency --- web/package-lock.json | 48 +++++++---------------- web/package.json | 3 +- web/src/components/console/utils/link.tsx | 2 +- 3 files changed, 18 insertions(+), 35 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index 9565b2db1..ba72219bf 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -69,13 +69,14 @@ "immer": "^10.1.3", "immutable": "^3.8.3", "js-yaml": "^4.3.1", + "linkify-react": "^4.3.3", + "linkifyjs": "4.3.3", "lodash-es": "^4.17.21", "lru-cache": "^6.0.0", "murmurhash-js": "1.0.x", "react": "^17.0.1", "react-dom": "^17.0.1", "react-i18next": "^11.8.11", - "react-linkify": "^0.2.2", "react-modal": "^3.12.1", "react-redux": "7.2.9", "react-router-dom-v5-compat": "^6.30.0", @@ -19293,15 +19294,22 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "license": "MIT" }, - "node_modules/linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "node_modules/linkify-react": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/linkify-react/-/linkify-react-4.3.3.tgz", + "integrity": "sha512-bMWuN1YJ3hyDyojk4hzUugecN2RsTuibKAQBplUT2o+3uK33THdRL2qD0Zf3ibCXuBLBCyOE6Uj/S/1cY48Ygw==", "license": "MIT", - "dependencies": { - "uc.micro": "^1.0.1" + "peerDependencies": { + "linkifyjs": "==4.3.3", + "react": ">= 15.0.0" } }, + "node_modules/linkifyjs": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.3.3.tgz", + "integrity": "sha512-P8aEP5U/D1/IlTY2OeYsErdwh9bGuLE30NcXtKEjgdHcahveQoQwM2yZNsioQHsWFz0P7KKudisbrzCgR0sDHg==", + "license": "MIT" + }, "node_modules/listr2": { "version": "3.14.0", "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", @@ -22298,17 +22306,6 @@ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", "license": "MIT" }, - "node_modules/react-linkify": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/react-linkify/-/react-linkify-0.2.2.tgz", - "integrity": "sha512-0S8cvUNtEgfJpIGDPKklyrnrTffJ63WuJAc4KaYLBihl5TjgH5cHUmYD+AXLpsV+CVmfoo/56SUNfrZcY4zYMQ==", - "license": "MIT", - "dependencies": { - "linkify-it": "^2.0.3", - "prop-types": "^15.5.8", - "tlds": "^1.57.0" - } - }, "node_modules/react-modal": { "version": "3.16.3", "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.3.tgz", @@ -24834,15 +24831,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/tlds": { - "version": "1.261.0", - "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.261.0.tgz", - "integrity": "sha512-QXqwfEl9ddlGBaRFXIvNKK6OhipSiLXuRuLJX5DErz0o0Q0rYxulWLdFryTkV5PkdZct5iMInwYEGe/eR++1AA==", - "license": "MIT", - "bin": { - "tlds": "bin.js" - } - }, "node_modules/tldts": { "version": "6.1.86", "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz", @@ -25327,12 +25315,6 @@ "node": ">=14.17" } }, - "node_modules/uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "license": "MIT" - }, "node_modules/uglify-js": { "version": "3.19.3", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", diff --git a/web/package.json b/web/package.json index 00351206c..826f7e9f7 100644 --- a/web/package.json +++ b/web/package.json @@ -106,13 +106,14 @@ "immer": "^10.1.3", "immutable": "^3.8.3", "js-yaml": "^4.3.1", + "linkify-react": "^4.3.3", + "linkifyjs": "4.3.3", "lodash-es": "^4.17.21", "lru-cache": "^6.0.0", "murmurhash-js": "1.0.x", "react": "^17.0.1", "react-dom": "^17.0.1", "react-i18next": "^11.8.11", - "react-linkify": "^0.2.2", "react-modal": "^3.12.1", "react-redux": "7.2.9", "react-router-dom-v5-compat": "^6.30.0", diff --git a/web/src/components/console/utils/link.tsx b/web/src/components/console/utils/link.tsx index 4df925b70..ed93d17ae 100644 --- a/web/src/components/console/utils/link.tsx +++ b/web/src/components/console/utils/link.tsx @@ -1,5 +1,5 @@ import type { FC, ReactNode } from 'react'; -import Linkify from 'react-linkify'; +import Linkify from 'linkify-react'; import { Button, Icon } from '@patternfly/react-core'; import { ExternalLinkAltIcon } from '@patternfly/react-icons'; From 084afc1ef85969ca3bb649da2e695af83ba39f66 Mon Sep 17 00:00:00 2001 From: Deirdre Malone Date: Thu, 20 Aug 2026 10:38:36 +0100 Subject: [PATCH 2/2] Fix LinkifyExternal props for external links --- web/src/components/console/utils/link.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/src/components/console/utils/link.tsx b/web/src/components/console/utils/link.tsx index ed93d17ae..0bf39b272 100644 --- a/web/src/components/console/utils/link.tsx +++ b/web/src/components/console/utils/link.tsx @@ -34,7 +34,7 @@ export const ExternalLink: FC = ({ // Open links in a new window and set noopener/noreferrer. export const LinkifyExternal: FC<{ children: ReactNode }> = ({ children }) => ( - {children} + {children} ); LinkifyExternal.displayName = 'LinkifyExternal';