From 223aaf03ad5b360299ccf3691de6d3a04dc77af1 Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Thu, 30 Apr 2026 12:11:21 +0300 Subject: [PATCH 1/6] Forms: Replace ExternalLink with Link component from @wordpress/ui. Replace all `ExternalLink` usages from `@wordpress/components` with the `Link` component from `@wordpress/ui` using the `openInNewTab` prop. --- .../forms/changelog/update-forms-external-links-ui | 4 ++++ .../forms/routes/responses/integrations-modal.tsx | 6 +++--- projects/packages/forms/routes/responses/stage.tsx | 4 ++-- .../jetpack-integrations-modal/helpers/akismet.tsx | 6 +++--- .../helpers/hostinger-reach.tsx | 6 +++--- .../jetpack-integrations-modal/helpers/jetpack-crm.tsx | 4 ++-- .../jetpack-integrations-modal/helpers/mailpoet.tsx | 6 +++--- .../jetpack-integrations-modal/helpers/salesforce.tsx | 2 +- .../contact-form/components/notifications-settings.js | 2 +- projects/packages/forms/src/blocks/contact-form/edit.tsx | 2 +- .../src/dashboard/components/empty-responses/index.tsx | 2 +- .../inspector/response-fields/field-email/index.tsx | 9 +++++---- .../inspector/response-fields/field-file/file.tsx | 2 +- .../inspector/response-fields/field-phone/index.tsx | 3 ++- .../inspector/response-fields/field-preview/index.tsx | 2 +- .../components/inspector/response-fields/index.tsx | 3 ++- .../components/inspector/response-meta/index.tsx | 6 +++--- .../packages/forms/src/dashboard/inbox/stage/index.js | 4 ++-- 18 files changed, 40 insertions(+), 33 deletions(-) create mode 100644 projects/packages/forms/changelog/update-forms-external-links-ui diff --git a/projects/packages/forms/changelog/update-forms-external-links-ui b/projects/packages/forms/changelog/update-forms-external-links-ui new file mode 100644 index 000000000000..4fd43a22b914 --- /dev/null +++ b/projects/packages/forms/changelog/update-forms-external-links-ui @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Replace `ExternalLink` and bare `` usages with `Link` component from `@wordpress/ui`. diff --git a/projects/packages/forms/routes/responses/integrations-modal.tsx b/projects/packages/forms/routes/responses/integrations-modal.tsx index 9d579cdfbaf2..e50fb38f65ee 100644 --- a/projects/packages/forms/routes/responses/integrations-modal.tsx +++ b/projects/packages/forms/routes/responses/integrations-modal.tsx @@ -138,7 +138,7 @@ const IntegrationCardComponent = ( { return (

{ createInterpolateElement( message, { - a: , + a: , } ) }

); @@ -177,7 +177,7 @@ const IntegrationCardComponent = ( { 'Akismet is active. There is one step left. Please add your
Akismet key.', 'jetpack-forms' ), - { a: } + { a: } ) : __( 'Setup is required to complete the integration.', 'jetpack-forms' ) }

@@ -220,7 +220,7 @@ const IntegrationCardComponent = ( { { id === 'akismet' && ( <> | - + { __( 'Learn about Akismet', 'jetpack-forms' ) } diff --git a/projects/packages/forms/routes/responses/stage.tsx b/projects/packages/forms/routes/responses/stage.tsx index 60c48bcb348c..90835b09da81 100644 --- a/projects/packages/forms/routes/responses/stage.tsx +++ b/projects/packages/forms/routes/responses/stage.tsx @@ -547,7 +547,7 @@ function StageInner() { const previewLabel = __( 'Form preview', 'jetpack-forms' ); if ( item.preview_url ) { return styleUnreadValue( - + { previewLabel } , item.is_unread @@ -561,7 +561,7 @@ function StageInner() { __( '(no title)', 'jetpack-forms' ); if ( item.entry_permalink ) { return styleUnreadValue( - + { source } , item.is_unread diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx index f0181f953606..dc33082c7db1 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx @@ -39,7 +39,7 @@ export function buildAkismetCard( { "Add one-click spam protection for your forms with Akismet. Simply install the plugin and you're set.", 'jetpack-forms' ), - { a: } + { a: } ), notActivatedMessage: __( 'Akismet is installed. Just activate the plugin to start blocking spam.', @@ -56,7 +56,7 @@ export function buildAkismetCard( { 'Akismet is active. There is one step left. Please add your Akismet key.', 'jetpack-forms' ), - { a: } + { a: } ) }

) } { ! file.is_previewable && ( - + { decodeEntities( file.name ) } ) } diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-phone/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-phone/index.tsx index 1f9361248172..1518bb993a6a 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-phone/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-phone/index.tsx @@ -2,6 +2,7 @@ * WordPress dependencies */ import { useEffect, useState } from '@wordpress/element'; +import { Link } from '@wordpress/ui'; /** * Internal dependencies */ @@ -65,7 +66,7 @@ const FieldPhone = ( { phone }: FieldPhoneProps ) => { return ( - { formattedNumber } + { formattedNumber } ); }; diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx index 7423321e4051..4856b611ad50 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx @@ -107,7 +107,7 @@ const FieldPreview = ( { field, onFilePreview }: FieldPreviewProps ) => { if ( fieldType === 'url' && /^https?:\/\//.test( stringValue ) ) { return ( - + { stringValue } ); diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-fields/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-fields/index.tsx index 5d72eacedd07..25a613efe98d 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-fields/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-fields/index.tsx @@ -1,6 +1,7 @@ /** * Internal dependencies */ +import { Link } from '@wordpress/ui'; import clsx from 'clsx'; import { isFieldsCollection, @@ -56,7 +57,7 @@ const ResponseFieldsIterator = ( { } if ( isLikelyPhoneNumber( value ) ) { - return { String( value ) }; + return { String( value ) }; } return value as import('react').ReactNode; diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx index f74cba79246c..bab7c80c7b1a 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx @@ -42,7 +42,7 @@ const SourceCell = ( { response }: { response: FormResponse } ) => { const label = __( 'Form preview', 'jetpack-forms' ); if ( response.preview_url ) { return ( - + { label } ); @@ -52,7 +52,7 @@ const SourceCell = ( { response }: { response: FormResponse } ) => { if ( response.entry_permalink ) { return ( - + { decodeEntities( response.entry_title ) || getPath( response ) } ); @@ -159,10 +159,10 @@ const ResponseMeta = ( { response }: ResponseMetaProps ): import('react').JSX.El { response.ip } diff --git a/projects/packages/forms/src/dashboard/inbox/stage/index.js b/projects/packages/forms/src/dashboard/inbox/stage/index.js index 7f7e01910554..afbc756ceb41 100644 --- a/projects/packages/forms/src/dashboard/inbox/stage/index.js +++ b/projects/packages/forms/src/dashboard/inbox/stage/index.js @@ -362,7 +362,7 @@ export default function InboxView( { parentId, pageTitle, pageSubtitle } = {} ) const previewLabel = __( 'Form preview', 'jetpack-forms' ); if ( item.preview_url ) { return ( - + { wrapperUnread( item.is_unread, previewLabel ) } ); @@ -373,7 +373,7 @@ export default function InboxView( { parentId, pageTitle, pageSubtitle } = {} ) return wrapperUnread( item.is_unread, decodeEntities( item.entry_title ) ); } return ( - + { wrapperUnread( item.is_unread, decodeEntities( item.entry_title ) || getPath( item ) From 2078c2aa451bc0c71771d8af8c55a0ad953112ee Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Thu, 30 Apr 2026 12:39:11 +0300 Subject: [PATCH 2/6] Replace usage of Button type link --- .../forms/routes/responses/integrations-modal.tsx | 4 ++-- .../jetpack-integrations-modal/helpers/akismet.tsx | 8 ++++---- .../jetpack-integrations-modal/helpers/google-drive.tsx | 5 +++-- .../jetpack-integrations-modal/helpers/jetpack-crm.tsx | 9 +-------- 4 files changed, 10 insertions(+), 16 deletions(-) diff --git a/projects/packages/forms/routes/responses/integrations-modal.tsx b/projects/packages/forms/routes/responses/integrations-modal.tsx index e50fb38f65ee..dde2c1aceec5 100644 --- a/projects/packages/forms/routes/responses/integrations-modal.tsx +++ b/projects/packages/forms/routes/responses/integrations-modal.tsx @@ -214,9 +214,9 @@ const IntegrationCardComponent = ( {

{ message }

- + { id === 'akismet' && ( <> | diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx index dc33082c7db1..9658ceb2f04c 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx @@ -80,16 +80,16 @@ export function buildAkismetCard( { { __( 'View spam', 'jetpack-forms' ) } ) : ( - + ) } | { settingsUrl && ( <> - + | ) } diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx index 0b295f8d0e27..0fb1651979d2 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx @@ -1,5 +1,6 @@ import { Button, __experimentalHStack as HStack } from '@wordpress/components'; // eslint-disable-line @wordpress/no-unsafe-wp-apis import { __ } from '@wordpress/i18n'; +import { Link } from '@wordpress/ui'; import GoogleSheetsIcon from '../../../../../icons/google-sheets.tsx'; import GoogleDriveConnectButton from '../components/google-drive-connect-button.tsx'; import GoogleDriveDisconnectButton from '../components/google-drive-disconnect-button.tsx'; @@ -60,9 +61,9 @@ export function buildGoogleDriveCard( { { __( 'View form responses', 'jetpack-forms' ) } ) : ( - + ) } | - ), + a: , } ) }

From d0480b9605821b379c0a9266b8618cd44a46d0f6 Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Thu, 30 Apr 2026 12:49:14 +0300 Subject: [PATCH 3/6] Akismet connection: open in new tab only when in editor context --- .../helpers/akismet.tsx | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx index 9658ceb2f04c..1364c99d3615 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx @@ -56,13 +56,21 @@ export function buildAkismetCard( { 'Akismet is active. There is one step left. Please add your Akismet key.', 'jetpack-forms' ), - { a: } + { + a: ( + + ), + } ) }

+ { __( 'View spam', 'jetpack-forms' ) } ) : ( - + { __( 'View spam', 'jetpack-forms' ) } ) } + { context } | { settingsUrl && ( <> - + { __( 'View stats and settings', 'jetpack-forms' ) } | From 95f8d942749c4df7ec9357e2a56298fd3fa62c37 Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Thu, 30 Apr 2026 14:06:23 +0300 Subject: [PATCH 4/6] Prettier --- .../inspector/response-fields/field-email/index.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-email/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-email/index.tsx index 180df502f281..2bc1e37993f7 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-email/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-email/index.tsx @@ -15,10 +15,10 @@ const FieldEmail = ( { email } ) => { justify="left" spacing="2" > - - { emailParts[ 0 ] } - @{ emailParts[ 1 ] } - + + { emailParts[ 0 ] } + @{ emailParts[ 1 ] } +
); From 88da434c67ed095e9ee842f9bdc33973326c21d2 Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Tue, 12 May 2026 18:03:55 +0300 Subject: [PATCH 5/6] Reorder props after rebase --- .../forms/routes/responses/integrations-modal.tsx | 8 ++++---- projects/packages/forms/routes/responses/stage.tsx | 4 ++-- .../jetpack-integrations-modal/helpers/akismet.tsx | 13 ++++++------- .../helpers/google-drive.tsx | 2 +- .../helpers/hostinger-reach.tsx | 6 +++--- .../helpers/jetpack-crm.tsx | 6 +++--- .../jetpack-integrations-modal/helpers/mailpoet.tsx | 6 +++--- .../helpers/salesforce.tsx | 2 +- .../components/notifications-settings.js | 2 +- .../packages/forms/src/blocks/contact-form/edit.tsx | 2 +- .../dashboard/components/empty-responses/index.tsx | 2 +- .../inspector/response-fields/field-file/file.tsx | 2 +- .../response-fields/field-preview/index.tsx | 2 +- .../components/inspector/response-meta/index.tsx | 6 +++--- .../forms/src/dashboard/inbox/stage/index.js | 4 ++-- 15 files changed, 33 insertions(+), 34 deletions(-) diff --git a/projects/packages/forms/routes/responses/integrations-modal.tsx b/projects/packages/forms/routes/responses/integrations-modal.tsx index dde2c1aceec5..caab714a674f 100644 --- a/projects/packages/forms/routes/responses/integrations-modal.tsx +++ b/projects/packages/forms/routes/responses/integrations-modal.tsx @@ -138,7 +138,7 @@ const IntegrationCardComponent = ( { return (

{ createInterpolateElement( message, { - a: , + a: , } ) }

); @@ -177,7 +177,7 @@ const IntegrationCardComponent = ( { 'Akismet is active. There is one step left. Please add your Akismet key.', 'jetpack-forms' ), - { a: } + { a: } ) : __( 'Setup is required to complete the integration.', 'jetpack-forms' ) }

@@ -214,13 +214,13 @@ const IntegrationCardComponent = ( {

{ message }

- + { __( 'View settings', 'jetpack-forms' ) } { id === 'akismet' && ( <> | - + { __( 'Learn about Akismet', 'jetpack-forms' ) } diff --git a/projects/packages/forms/routes/responses/stage.tsx b/projects/packages/forms/routes/responses/stage.tsx index 90835b09da81..60c48bcb348c 100644 --- a/projects/packages/forms/routes/responses/stage.tsx +++ b/projects/packages/forms/routes/responses/stage.tsx @@ -547,7 +547,7 @@ function StageInner() { const previewLabel = __( 'Form preview', 'jetpack-forms' ); if ( item.preview_url ) { return styleUnreadValue( - + { previewLabel } , item.is_unread @@ -561,7 +561,7 @@ function StageInner() { __( '(no title)', 'jetpack-forms' ); if ( item.entry_permalink ) { return styleUnreadValue( - + { source } , item.is_unread diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx index 1364c99d3615..73017a603af0 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx @@ -39,7 +39,7 @@ export function buildAkismetCard( { "Add one-click spam protection for your forms with Akismet. Simply install the plugin and you're set.", 'jetpack-forms' ), - { a: } + { a: } ), notActivatedMessage: __( 'Akismet is installed. Just activate the plugin to start blocking spam.', @@ -59,9 +59,9 @@ export function buildAkismetCard( { { a: ( ), } @@ -86,21 +86,20 @@ export function buildAkismetCard( { { context === 'dashboard' && handlers?.goToSpam ? ( { __( 'View spam', 'jetpack-forms' ) } ) : ( - + { __( 'View spam', 'jetpack-forms' ) } ) } - { context } | { settingsUrl && ( <> - + { __( 'View stats and settings', 'jetpack-forms' ) } | ) } - + { __( 'Learn about Akismet', 'jetpack-forms' ) } diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx index 0fb1651979d2..2b390f1e598f 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx @@ -61,7 +61,7 @@ export function buildGoogleDriveCard( { { __( 'View form responses', 'jetpack-forms' ) } ) : ( - + { __( 'View form responses', 'jetpack-forms' ) } ) } diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/hostinger-reach.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/hostinger-reach.tsx index b76533d255ca..4eda57df8139 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/hostinger-reach.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/hostinger-reach.tsx @@ -52,8 +52,8 @@ export function buildHostingerReachCard( { { a: ( ), @@ -69,7 +69,7 @@ export function buildHostingerReachCard( { body: ! isConnected ? ( <>

- + { __( 'Hostinger Reach is active. There is one step left. Please complete Hostinger Reach setup.', 'jetpack-forms' @@ -117,7 +117,7 @@ export function buildHostingerReachCard( { { context === 'block-editor' && ConsentToggle && } { settingsUrl && (

- + { __( 'View Hostinger Reach dashboard', 'jetpack-forms' ) }

diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/jetpack-crm.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/jetpack-crm.tsx index de50acad249e..5a715ddae67e 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/jetpack-crm.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/jetpack-crm.tsx @@ -60,7 +60,7 @@ export function buildJetpackCrmCard( { 'jetpack-forms' ), { - a: , + a: , } ) }

@@ -93,7 +93,7 @@ export function buildJetpackCrmCard( { { context === 'block-editor' ? connectedMsgEditor : connectedMsgDashboard }

{ settingsUrl && ( - + { __( 'Open Jetpack CRM settings', 'jetpack-forms' ) } ) } @@ -124,7 +124,7 @@ export function buildJetpackCrmCard( { 'You can save your form contacts in Jetpack CRM. To get started, please install the plugin.', 'jetpack-forms' ), - { a: } + { a: } ), notActivatedMessage: __( 'Jetpack CRM is installed. To start saving contacts, simply activate the plugin.', diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/mailpoet.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/mailpoet.tsx index 64fff1296e99..49059ac5022d 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/mailpoet.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/mailpoet.tsx @@ -59,7 +59,7 @@ export function buildMailPoetCard( { 'Add powerful email marketing to your forms with MailPoet. Simply install the plugin to start sending emails.', 'jetpack-forms' ), - { a: } + { a: } ), notActivatedMessage: __( 'MailPoet is installed. Just activate the plugin to start sending emails.', @@ -76,7 +76,7 @@ export function buildMailPoetCard( { 'MailPoet is active. There is one step left. Please complete MailPoet setup.', 'jetpack-forms' ), - { a: } + { a: } ) }

@@ -124,7 +124,7 @@ export function buildMailPoetCard( { { context === 'block-editor' && ConsentToggle && } { settingsUrl && (

- + { __( 'View dashboard', 'jetpack-forms' ) }

diff --git a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/salesforce.tsx b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/salesforce.tsx index e5919f5c0a84..92fa618f2464 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/salesforce.tsx +++ b/projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/salesforce.tsx @@ -82,7 +82,7 @@ export function buildSalesforceCard( { ) }

- + { __( 'Where to find your Salesforce Organization ID', 'jetpack-forms' ) }

diff --git a/projects/packages/forms/src/blocks/contact-form/components/notifications-settings.js b/projects/packages/forms/src/blocks/contact-form/components/notifications-settings.js index ffaa7992dd9c..5345aeb6eed5 100644 --- a/projects/packages/forms/src/blocks/contact-form/components/notifications-settings.js +++ b/projects/packages/forms/src/blocks/contact-form/components/notifications-settings.js @@ -85,7 +85,7 @@ const NotificationsSettings = ( { pushNotificationsLink: isWpcom ? ( ) : ( - + ), } ) } diff --git a/projects/packages/forms/src/blocks/contact-form/edit.tsx b/projects/packages/forms/src/blocks/contact-form/edit.tsx index caddfc619f4f..9acdf1a0d2a1 100644 --- a/projects/packages/forms/src/blocks/contact-form/edit.tsx +++ b/projects/packages/forms/src/blocks/contact-form/edit.tsx @@ -1249,7 +1249,7 @@ function JetpackContactFormEdit( { __next40pxDefaultSize={ true } />

- + { __( 'Read more.', 'jetpack-forms' ) }

diff --git a/projects/packages/forms/src/dashboard/components/empty-responses/index.tsx b/projects/packages/forms/src/dashboard/components/empty-responses/index.tsx index 20efe9141442..ef149822654a 100644 --- a/projects/packages/forms/src/dashboard/components/empty-responses/index.tsx +++ b/projects/packages/forms/src/dashboard/components/empty-responses/index.tsx @@ -91,7 +91,7 @@ const useInstallAkismet = (): UseInstallAkismetReturn => { 'jetpack-forms' ), { - moreInfoLink: , + moreInfoLink: , } ); diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-file/file.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-file/file.tsx index 8e5864d58c4f..92730508304a 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-file/file.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-file/file.tsx @@ -71,7 +71,7 @@ const FieldFile = ( { file, onClick } ) => { ) } { ! file.is_previewable && ( - + { decodeEntities( file.name ) } ) } diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx index 4856b611ad50..7423321e4051 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx @@ -107,7 +107,7 @@ const FieldPreview = ( { field, onFilePreview }: FieldPreviewProps ) => { if ( fieldType === 'url' && /^https?:\/\//.test( stringValue ) ) { return ( - + { stringValue } ); diff --git a/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx b/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx index bab7c80c7b1a..f74cba79246c 100644 --- a/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx +++ b/projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx @@ -42,7 +42,7 @@ const SourceCell = ( { response }: { response: FormResponse } ) => { const label = __( 'Form preview', 'jetpack-forms' ); if ( response.preview_url ) { return ( - + { label } ); @@ -52,7 +52,7 @@ const SourceCell = ( { response }: { response: FormResponse } ) => { if ( response.entry_permalink ) { return ( - + { decodeEntities( response.entry_title ) || getPath( response ) } ); @@ -159,10 +159,10 @@ const ResponseMeta = ( { response }: ResponseMetaProps ): import('react').JSX.El { response.ip } diff --git a/projects/packages/forms/src/dashboard/inbox/stage/index.js b/projects/packages/forms/src/dashboard/inbox/stage/index.js index afbc756ceb41..7f7e01910554 100644 --- a/projects/packages/forms/src/dashboard/inbox/stage/index.js +++ b/projects/packages/forms/src/dashboard/inbox/stage/index.js @@ -362,7 +362,7 @@ export default function InboxView( { parentId, pageTitle, pageSubtitle } = {} ) const previewLabel = __( 'Form preview', 'jetpack-forms' ); if ( item.preview_url ) { return ( - + { wrapperUnread( item.is_unread, previewLabel ) } ); @@ -373,7 +373,7 @@ export default function InboxView( { parentId, pageTitle, pageSubtitle } = {} ) return wrapperUnread( item.is_unread, decodeEntities( item.entry_title ) ); } return ( - + { wrapperUnread( item.is_unread, decodeEntities( item.entry_title ) || getPath( item ) From 0e4267feffd94f1dbfeb2ddbf106998b7a7b17b3 Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Tue, 12 May 2026 18:21:26 +0300 Subject: [PATCH 6/6] Forms: Align changelog with Link migration and Akismet tab behavior. --- .../packages/forms/changelog/update-forms-external-links-ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/projects/packages/forms/changelog/update-forms-external-links-ui b/projects/packages/forms/changelog/update-forms-external-links-ui index 4fd43a22b914..ab0edf5040a3 100644 --- a/projects/packages/forms/changelog/update-forms-external-links-ui +++ b/projects/packages/forms/changelog/update-forms-external-links-ui @@ -1,4 +1,4 @@ Significance: patch Type: changed -Replace `ExternalLink` and bare `` usages with `Link` component from `@wordpress/ui`. +Replace link-style `Button` components and bare `` tags with `Link` from `@wordpress/ui` in integrations, the responses modal, and response inspector mailto/tel links. Open Akismet-related URLs in a new tab only in the block editor so the dashboard keeps navigation in the same tab.