From 2a28f38491549fe73ddf46fb52b9759f59a3b3d1 Mon Sep 17 00:00:00 2001
From: Philipp Stracker
Date: Thu, 21 Nov 2024 19:07:32 +0100
Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Implement=20sandbox=20login=20actio?=
=?UTF-8?q?ns?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Components/AdvancedOptionsForm.js | 21 ++++++++++++--
.../resources/js/data/common/action-types.js | 1 +
.../resources/js/data/common/actions.js | 14 ++++++++++
.../resources/js/data/common/constants.js | 10 +++++++
.../resources/js/data/common/controls.js | 28 ++++++++++++++++++-
.../resources/js/data/common/hooks.js | 6 ++--
.../src/Endpoint/LoginLinkRestEndpoint.php | 10 +++++--
7 files changed, 82 insertions(+), 8 deletions(-)
diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Onboarding/Components/AdvancedOptionsForm.js b/modules/ppcp-settings/resources/js/Components/Screens/Onboarding/Components/AdvancedOptionsForm.js
index acc78af72..3702a6e14 100644
--- a/modules/ppcp-settings/resources/js/Components/Screens/Onboarding/Components/AdvancedOptionsForm.js
+++ b/modules/ppcp-settings/resources/js/Components/Screens/Onboarding/Components/AdvancedOptionsForm.js
@@ -11,7 +11,8 @@ import { OnboardingHooks, CommonHooks } from '../../../../data';
const AdvancedOptionsForm = ( { setCompleted } ) => {
const { isBusy } = CommonHooks.useBusyState();
- const { isSandboxMode, setSandboxMode } = CommonHooks.useSandbox();
+ const { isSandboxMode, setSandboxMode, connectViaSandbox } =
+ CommonHooks.useSandbox();
const {
isManualConnectionMode,
setManualConnectionMode,
@@ -81,6 +82,21 @@ const AdvancedOptionsForm = ( { setCompleted } ) => {
setCompleted( true );
};
+ const handleSandboxConnect = async () => {
+ const res = await connectViaSandbox();
+
+ if ( ! res.success || ! res.data ) {
+ handleServerError(
+ res,
+ __(
+ 'Could not generate a Sandbox login link.',
+ 'woocommerce-paypal-payments'
+ )
+ );
+ return;
+ }
+ };
+
const handleConnect = async () => {
if ( ! handleFormValidation() ) {
return;
@@ -117,8 +133,9 @@ const AdvancedOptionsForm = ( { setCompleted } ) => {
) }
isToggled={ !! isSandboxMode }
setToggled={ setSandboxMode }
+ isLoading={ isBusy }
>
-