- { registeredChannel.syncStatus && (
+ { !! registeredChannel.syncStatus && (
<>
diff --git a/plugins/woocommerce-admin/client/marketing/overview-multichannel/LearnMarketing/PostTile.tsx b/plugins/woocommerce-admin/client/marketing/overview-multichannel/LearnMarketing/PostTile.tsx
index c5404557db5..7dc38070cd3 100644
--- a/plugins/woocommerce-admin/client/marketing/overview-multichannel/LearnMarketing/PostTile.tsx
+++ b/plugins/woocommerce-admin/client/marketing/overview-multichannel/LearnMarketing/PostTile.tsx
@@ -27,7 +27,7 @@ export const PostTile: React.FC< PostTileProps > = ( { post } ) => {
} }
>
- { post.image &&
}
+ { !! post.image &&
}
{ post.title }
@@ -37,7 +37,7 @@ export const PostTile: React.FC< PostTileProps > = ( { post } ) => {
// translators: %s: author's name.
sprintf( __( 'By %s', 'woocommerce' ), post.author_name )
}
- { post.author_avatar && (
+ { !! post.author_avatar && (
{
/>
) }
{ !! dataRegistered?.length &&
}
- { dataRegistered &&
- dataRecommended &&
+ { !! ( dataRegistered && dataRecommended ) &&
!! ( dataRegistered.length || dataRecommended.length ) && (
{
/>
) }
- { shouldShowExtensions && }
+ { !! shouldShowExtensions && }
);
diff --git a/plugins/woocommerce-admin/client/marketing/overview/index.js b/plugins/woocommerce-admin/client/marketing/overview/index.js
index 966254141ed..6a69a18cb3c 100644
--- a/plugins/woocommerce-admin/client/marketing/overview/index.js
+++ b/plugins/woocommerce-admin/client/marketing/overview/index.js
@@ -27,7 +27,7 @@ const MarketingOverview = () => {
- { shouldShowExtensions && (
+ { !! shouldShowExtensions && (
) }
diff --git a/plugins/woocommerce-admin/client/payments/payment-recommendations.tsx b/plugins/woocommerce-admin/client/payments/payment-recommendations.tsx
index babef4e8679..1425d26fab0 100644
--- a/plugins/woocommerce-admin/client/payments/payment-recommendations.tsx
+++ b/plugins/woocommerce-admin/client/payments/payment-recommendations.tsx
@@ -193,7 +193,14 @@ const PaymentRecommendations: React.FC = () => {
),
before: (
-
+
),
};
} );
diff --git a/plugins/woocommerce-admin/client/products/product-block-page.scss b/plugins/woocommerce-admin/client/products/product-block-page.scss
new file mode 100644
index 00000000000..9dc12e60198
--- /dev/null
+++ b/plugins/woocommerce-admin/client/products/product-block-page.scss
@@ -0,0 +1,47 @@
+.woocommerce-product-block-editor {
+ .components-input-control {
+ &__prefix {
+ margin-left: $gap-smaller;
+ }
+
+ &__suffix {
+ margin-right: $gap-smaller;
+ }
+ }
+
+ .components-currency-control {
+ .components-input-control__prefix {
+ color: $gray-700;
+ }
+
+ .components-input-control__input {
+ text-align: right;
+ }
+ }
+
+ .woocommerce-product-form {
+ &__custom-label-input {
+ display: flex;
+ flex-direction: column;
+
+ label {
+ display: block;
+ margin-bottom: $gap-smaller;
+ }
+ }
+
+ &__optional-input {
+ color: $gray-700;
+ }
+ }
+
+ .wp-block-columns {
+ gap: $gap-large;
+ }
+
+ .wp-block-woocommerce-product-section {
+ > .block-editor-inner-blocks > .block-editor-block-list__layout > .wp-block:not(:first-child) {
+ margin-top: $gap-large;
+ }
+ }
+}
diff --git a/plugins/woocommerce-admin/client/products/product-page.tsx b/plugins/woocommerce-admin/client/products/product-page.tsx
index 5f3eb9873c8..e62c91a6dce 100644
--- a/plugins/woocommerce-admin/client/products/product-page.tsx
+++ b/plugins/woocommerce-admin/client/products/product-page.tsx
@@ -16,6 +16,7 @@ import { useParams } from 'react-router-dom';
* Internal dependencies
*/
import './product-page.scss';
+import './product-block-page.scss';
declare const productBlockEditorSettings: ProductEditorSettings;
@@ -34,18 +35,23 @@ const ProductEditor: React.FC< { product: Product | undefined } > = ( {
);
};
-const EditProductEditor: React.FC< { productId: string } > = ( {
+const EditProductEditor: React.FC< { productId: number } > = ( {
productId,
} ) => {
- const { product } = useSelect( ( select: typeof WPSelect ) => {
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
- // @ts-ignore Missing types.
- const { getEditedEntityRecord } = select( 'core' );
+ const { product } = useSelect(
+ ( select: typeof WPSelect ) => {
+ const { getEntityRecord } = select( 'core' );
- return {
- product: getEditedEntityRecord( 'postType', 'product', productId ),
- };
- } );
+ return {
+ product: getEntityRecord(
+ 'postType',
+ 'product',
+ productId
+ ) as Product,
+ };
+ },
+ [ productId ]
+ );
return
;
};
@@ -74,7 +80,9 @@ export default function ProductPage() {
const { productId } = useParams();
if ( productId ) {
- return
;
+ return (
+
+ );
}
return
;
diff --git a/plugins/woocommerce-admin/client/tasks/fills/PaymentGatewaySuggestions/components/List/Item.js b/plugins/woocommerce-admin/client/tasks/fills/PaymentGatewaySuggestions/components/List/Item.js
index 80bdede39d2..25ceb1c4557 100644
--- a/plugins/woocommerce-admin/client/tasks/fills/PaymentGatewaySuggestions/components/List/Item.js
+++ b/plugins/woocommerce-admin/client/tasks/fills/PaymentGatewaySuggestions/components/List/Item.js
@@ -31,6 +31,7 @@ export const Item = ( { isRecommended, markConfigured, paymentGateway } ) => {
settingsUrl: manageUrl,
is_local_partner: isLocalPartner,
external_link: externalLink,
+ transaction_processors: transactionProcessors,
} = paymentGateway;
const connectSlot = useSlot(
@@ -88,6 +89,21 @@ export const Item = ( { isRecommended, markConfigured, paymentGateway } ) => {
{ content }
+ { transactionProcessors && (
+
+ { Object.keys( transactionProcessors ).map(
+ ( key ) => {
+ return (
+
+ );
+ }
+ ) }
+
+ ) }