New Redux action to disconnect merchant

This commit is contained in:
Philipp Stracker 2025-01-13 14:16:46 +01:00
parent bc08aa74da
commit 401faf6975
No known key found for this signature in database
4 changed files with 29 additions and 0 deletions

View file

@ -21,6 +21,7 @@ export default {
DO_PERSIST_DATA: 'COMMON:DO_PERSIST_DATA',
DO_DIRECT_API_AUTHENTICATION: 'COMMON:DO_DIRECT_API_AUTHENTICATION',
DO_OAUTH_AUTHENTICATION: 'COMMON:DO_OAUTH_AUTHENTICATION',
DO_DISCONNECT_MERCHANT: 'COMMON:DO_DISCONNECT_MERCHANT',
DO_GENERATE_ONBOARDING_URL: 'COMMON:DO_GENERATE_ONBOARDING_URL',
DO_REFRESH_MERCHANT: 'COMMON:DO_REFRESH_MERCHANT',
DO_REFRESH_FEATURES: 'COMMON:DO_REFRESH_FEATURES',

View file

@ -212,6 +212,15 @@ export const authenticateWithOAuth = function* (
};
};
/**
* Side effect. Checks webhook simulation.
*
* @return {Action} The action.
*/
export const disconnectMerchant = function () {
return { type: ACTION_TYPES.DO_DISCONNECT_MERCHANT };
};
/**
* Side effect. Clears and refreshes the merchant data via a REST request.
*

View file

@ -56,6 +56,17 @@ export const REST_DIRECT_AUTHENTICATION_PATH =
export const REST_OAUTH_AUTHENTICATION_PATH =
'/wc/v3/wc_paypal/authenticate/oauth';
/**
* REST path to disconnect the current merchant from PayPal.
*
* Used by: Controls
* See: AuthenticateRestEndpoint.php
*
* @type {string}
*/
export const REST_DISCONNECT_MERCHANT_PATH =
'/wc/v3/wc_paypal/authenticate/disconnect';
/**
* REST path to generate an ISU URL for the PayPal-login.
*

View file

@ -16,6 +16,7 @@ import {
REST_HYDRATE_MERCHANT_PATH,
REST_REFRESH_FEATURES_PATH,
REST_OAUTH_AUTHENTICATION_PATH,
REST_DISCONNECT_MERCHANT_PATH,
REST_WEBHOOKS,
REST_WEBHOOKS_SIMULATE,
} from './constants';
@ -98,6 +99,13 @@ export const controls = {
}
},
async [ ACTION_TYPES.DO_DISCONNECT ]() {
return await apiFetch( {
path: REST_DISCONNECT_MERCHANT_PATH,
method: 'POST',
} );
},
async [ ACTION_TYPES.DO_REFRESH_MERCHANT ]() {
try {
return await apiFetch( { path: REST_HYDRATE_MERCHANT_PATH } );