+ { /* eslint-disable-next-line jsx-a11y/anchor-is-valid */ }{ ' ' }
{
diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Payment/SettingDependencyMessage.js b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Payment/SettingDependencyMessage.js
index e824031e7f..72dc8d074f 100644
--- a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Payment/SettingDependencyMessage.js
+++ b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Payment/SettingDependencyMessage.js
@@ -36,6 +36,7 @@ const transformSectionId = ( sectionId ) => {
*/
const SettingLink = ( { settingName, sectionId } ) => (
+ { /* eslint-disable-next-line jsx-a11y/anchor-is-valid */ }
{
diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/ConnectionDetails.js b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/ConnectionDetails.js
index 351c061136..d36ee5eb86 100644
--- a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/ConnectionDetails.js
+++ b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/ConnectionDetails.js
@@ -73,6 +73,7 @@ const generateOptions = ( config, settings, updateFormValue ) => [
value: 'manual_connect',
label: __( 'Manual Connect', 'woocommerce-paypal-payments' ),
description: sprintf(
+ // translators: %s: Link to PayPal REST application documentation.
__(
'For advanced users: Connect a custom PayPal REST app for full control over your integration. For more information on creating a PayPal REST application, click here.',
'woocommerce-paypal-payments'
@@ -128,9 +129,10 @@ const generateOptions = ( config, settings, updateFormValue ) => [
const generateModeData = ( config, settings, updateFormValue ) => ( {
title: config.title,
description: config.description,
- connectTitle: __(
- `Connect ${ config.label } Account`, // TODO: Avoid variables inside __() translation literal.
- 'woocommerce-paypal-payments'
+ connectTitle: sprintf(
+ /* translators: %s: Account type (e.g., Sandbox, Live) */
+ __( 'Connect %s Account', 'woocommerce-paypal-payments' ),
+ config.label
),
connectDescription: config.connectDescription,
options: generateOptions( config, settings, updateFormValue ),
diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/OrderIntent.js b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/OrderIntent.js
index c67c8a768e..7837c2bb66 100644
--- a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/OrderIntent.js
+++ b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Blocks/OrderIntent.js
@@ -1,4 +1,5 @@
import { __ } from '@wordpress/i18n';
+// eslint-disable-next-line import/no-extraneous-dependencies
import { useEffect } from 'react';
import { ControlToggleButton } from '../../../../../ReusableComponents/Controls';
@@ -17,7 +18,11 @@ const OrderIntent = () => {
if ( ! authorizeOnly && captureVirtualOnlyOrders ) {
setCaptureVirtualOnlyOrders( false );
}
- }, [ authorizeOnly ] );
+ }, [
+ authorizeOnly,
+ captureVirtualOnlyOrders,
+ setCaptureVirtualOnlyOrders,
+ ] );
return (
{
Webhook Status documentation.',
'woocommerce-paypal-payments'
diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Parts/DisconnectButton.js b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Parts/DisconnectButton.js
index 83e014b841..9ad25bcf7a 100644
--- a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Parts/DisconnectButton.js
+++ b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Components/Settings/Parts/DisconnectButton.js
@@ -24,7 +24,7 @@ const DisconnectButton = () => {
const handleConfirm = useCallback( async () => {
await disconnectMerchant( resetFlag );
goToPluginSettings();
- }, [ disconnectMerchant, resetFlag ] );
+ }, [ disconnectMerchant, goToPluginSettings, resetFlag ] );
const confirmationTitle = __(
'Disconnect from PayPal?',
diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Tabs/TabPayLaterMessaging.js b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Tabs/TabPayLaterMessaging.js
index 1a8a2c6249..f323623368 100644
--- a/modules/ppcp-settings/resources/js/Components/Screens/Settings/Tabs/TabPayLaterMessaging.js
+++ b/modules/ppcp-settings/resources/js/Components/Screens/Settings/Tabs/TabPayLaterMessaging.js
@@ -9,7 +9,7 @@ const TabPayLaterMessaging = () => {
setProduct,
setShop,
setHome,
- setCustom_placement,
+ setCustomPlacement,
} = PayLaterMessagingHooks.usePayLaterMessaging();
const PcpPayLaterConfigurator =
window.ppcpSettings?.PcpPayLaterConfigurator;
@@ -41,11 +41,20 @@ const TabPayLaterMessaging = () => {
setProduct( data.config.product );
setShop( data.config.shop );
setHome( data.config.home );
- setCustom_placement( data.config.custom_placement );
+ setCustomPlacement( data.config.custom_placement );
},
} );
}
- }, [ PcpPayLaterConfigurator, config ] );
+ }, [
+ PcpPayLaterConfigurator,
+ config,
+ setCart,
+ setCheckout,
+ setCustomPlacement,
+ setHome,
+ setProduct,
+ setShop,
+ ] );
return (
{
const [ product, setProduct ] = usePersistent( 'product' );
const [ shop, setShop ] = usePersistent( 'shop' );
const [ home, setHome ] = usePersistent( 'home' );
- const [ custom_placement, setCustom_placement ] =
+ const [ customPlacement, setCustomPlacement ] =
usePersistent( 'custom_placement' );
return {
@@ -44,8 +44,8 @@ const useHooks = () => {
setShop,
home,
setHome,
- custom_placement,
- setCustom_placement,
+ customPlacement,
+ setCustomPlacement,
};
};
@@ -66,8 +66,8 @@ export const usePayLaterMessaging = () => {
setShop,
home,
setHome,
- custom_placement,
- setCustom_placement,
+ customPlacement,
+ setCustomPlacement,
} = useHooks();
return {
@@ -77,13 +77,13 @@ export const usePayLaterMessaging = () => {
product,
shop,
home,
- custom_placement,
+ customPlacement,
},
setCart,
setCheckout,
setProduct,
setShop,
setHome,
- setCustom_placement,
+ setCustomPlacement,
};
};
diff --git a/modules/ppcp-settings/resources/js/data/pay-later-messaging/reducer.js b/modules/ppcp-settings/resources/js/data/pay-later-messaging/reducer.js
index 5843ef4005..ef1c3ad04e 100644
--- a/modules/ppcp-settings/resources/js/data/pay-later-messaging/reducer.js
+++ b/modules/ppcp-settings/resources/js/data/pay-later-messaging/reducer.js
@@ -24,7 +24,7 @@ const defaultPersistent = Object.freeze( {
product: {},
shop: {},
home: {},
- custom_placement: [],
+ customPlacement: [],
} );
// Reducer logic.
diff --git a/modules/ppcp-settings/resources/js/data/styling/hooks.js b/modules/ppcp-settings/resources/js/data/styling/hooks.js
index ecf999eaf5..092f8fc3b2 100644
--- a/modules/ppcp-settings/resources/js/data/styling/hooks.js
+++ b/modules/ppcp-settings/resources/js/data/styling/hooks.js
@@ -20,7 +20,6 @@ import {
STYLING_PAYMENT_METHODS,
STYLING_SHAPES,
} from './configuration';
-import { persistentData } from './selectors';
/**
* Single source of truth for access Redux details.
diff --git a/modules/ppcp-settings/resources/js/hooks/useHandleConnections.js b/modules/ppcp-settings/resources/js/hooks/useHandleConnections.js
index cdfbc58461..795b396471 100644
--- a/modules/ppcp-settings/resources/js/hooks/useHandleConnections.js
+++ b/modules/ppcp-settings/resources/js/hooks/useHandleConnections.js
@@ -28,9 +28,9 @@ const ACTIVITIES = {
};
export const useHandleOnboardingButton = ( isSandbox ) => {
- const { onboardingUrl } = isSandbox
- ? CommonHooks.useSandbox()
- : CommonHooks.useProduction();
+ const sandboxData = CommonHooks.useSandbox();
+ const productionData = CommonHooks.useProduction();
+ const { onboardingUrl } = isSandbox ? sandboxData : productionData;
const { ownBrandOnly, storeCountry } = CommonHooks.useWooSettings();
const { products, options } = OnboardingHooks.useDetermineProducts(
ownBrandOnly,
diff --git a/modules/ppcp-settings/resources/js/hooks/usePaymentGatewayRefresh.js b/modules/ppcp-settings/resources/js/hooks/usePaymentGatewayRefresh.js
index a14d395e79..3037d409e5 100644
--- a/modules/ppcp-settings/resources/js/hooks/usePaymentGatewayRefresh.js
+++ b/modules/ppcp-settings/resources/js/hooks/usePaymentGatewayRefresh.js
@@ -70,7 +70,7 @@ export const usePaymentGatewayRefresh = () => {
}
// Update Redux state to mark gateways as refreshed.
- const result = await refreshGateways();
+ await refreshGateways();
setRefreshCompleted( true );
return { success: true };
diff --git a/modules/ppcp-settings/resources/js/hooks/usePaymentGatewaySync.js b/modules/ppcp-settings/resources/js/hooks/usePaymentGatewaySync.js
index 69c64a07fe..c847d2e8f7 100644
--- a/modules/ppcp-settings/resources/js/hooks/usePaymentGatewaySync.js
+++ b/modules/ppcp-settings/resources/js/hooks/usePaymentGatewaySync.js
@@ -19,8 +19,6 @@ export const usePaymentGatewaySync = () => {
const { isReady: merchantIsReady } = CommonHooks.useStore();
const [ isSyncing, setIsSyncing ] = useState( false );
- const [ syncCompleted, setSyncCompleted ] = useState( false );
- const [ syncError, setSyncError ] = useState( null );
// Use a ref to track if we've initiated a sync during this session.
const syncAttemptedRef = useRef( false );
@@ -36,7 +34,6 @@ export const usePaymentGatewaySync = () => {
}
setIsSyncing( true );
- setSyncError( null );
try {
const result = await syncGateways();
@@ -44,13 +41,11 @@ export const usePaymentGatewaySync = () => {
if ( result.success ) {
// Add a small delay to ensure UI updates properly.
await new Promise( ( resolve ) => setTimeout( resolve, 1000 ) );
- setSyncCompleted( true );
return { success: true };
}
throw new Error( result.message || 'Failed to sync gateways' );
} catch ( error ) {
- setSyncError( error );
// After an error, allow retry after 5 seconds.
setTimeout( () => {
syncAttemptedRef.current = false;
diff --git a/modules/ppcp-settings/resources/js/hooks/useSettingDependencyState.js b/modules/ppcp-settings/resources/js/hooks/useSettingDependencyState.js
index f7e57bb6c1..b8d1f8b109 100644
--- a/modules/ppcp-settings/resources/js/hooks/useSettingDependencyState.js
+++ b/modules/ppcp-settings/resources/js/hooks/useSettingDependencyState.js
@@ -32,7 +32,7 @@ const useSettingDependencyState = ( methods ) => {
if ( method.depends_on_settings.settings ) {
const settingsObj = method.depends_on_settings.settings;
- for ( const [ settingId, settingData ] of Object.entries(
+ for ( const [ , settingData ] of Object.entries(
settingsObj
) ) {
const requiredId = settingData.id;
diff --git a/modules/ppcp-settings/resources/js/index.js b/modules/ppcp-settings/resources/js/index.js
index f044642ba9..0bc2e8e9b2 100644
--- a/modules/ppcp-settings/resources/js/index.js
+++ b/modules/ppcp-settings/resources/js/index.js
@@ -1,4 +1,6 @@
+// eslint-disable-next-line import/no-extraneous-dependencies
import React from 'react';
+// eslint-disable-next-line import/no-extraneous-dependencies
import { createRoot } from 'react-dom/client';
import App from './Components/App';
diff --git a/modules/ppcp-settings/resources/js/switchSettingsUi.js b/modules/ppcp-settings/resources/js/switchSettingsUi.js
index ef69f8a3a6..aa79aeb933 100644
--- a/modules/ppcp-settings/resources/js/switchSettingsUi.js
+++ b/modules/ppcp-settings/resources/js/switchSettingsUi.js
@@ -33,7 +33,7 @@ document.addEventListener( 'DOMContentLoaded', () => {
}
return response.json();
} )
- .then( ( data ) => {
+ .then( () => {
window.location.reload();
} )
.catch( ( error ) => {