From 164af7f515ab5890486dfc1ba969bd48854d3f95 Mon Sep 17 00:00:00 2001
From: Philipp Stracker
Date: Mon, 28 Oct 2024 18:11:04 +0100
Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20MInor=20reorganization=20o?=
=?UTF-8?q?f=20code?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../resources/js/data/onboarding/actions.js | 26 +++++++++----------
.../resources/js/data/onboarding/hooks.js | 26 +++++++++----------
2 files changed, 25 insertions(+), 27 deletions(-)
diff --git a/modules/ppcp-settings/resources/js/data/onboarding/actions.js b/modules/ppcp-settings/resources/js/data/onboarding/actions.js
index d60fba409..3abf80e65 100644
--- a/modules/ppcp-settings/resources/js/data/onboarding/actions.js
+++ b/modules/ppcp-settings/resources/js/data/onboarding/actions.js
@@ -16,19 +16,6 @@ export const setIsSaving = ( isSaving ) => {
};
};
-/**
- * Persistent.Set the "onboarding completed" flag which shows or hides the wizard.
- *
- * @param {boolean} completed
- * @return {{type: string, payload}} The action.
- */
-export const setCompleted = ( completed ) => {
- return {
- type: ACTION_TYPES.SET_ONBOARDING_COMPLETED,
- completed,
- };
-};
-
/**
* Persistent. Set the full onboarding details, usually during app initialization.
*
@@ -42,6 +29,19 @@ export const setOnboardingDetails = ( payload ) => {
};
};
+/**
+ * Persistent.Set the "onboarding completed" flag which shows or hides the wizard.
+ *
+ * @param {boolean} completed
+ * @return {{type: string, payload}} The action.
+ */
+export const setCompleted = ( completed ) => {
+ return {
+ type: ACTION_TYPES.SET_ONBOARDING_COMPLETED,
+ completed,
+ };
+};
+
/**
* Persistent. Sets the onboarding wizard to a new step.
*
diff --git a/modules/ppcp-settings/resources/js/data/onboarding/hooks.js b/modules/ppcp-settings/resources/js/data/onboarding/hooks.js
index 62cb6d1a8..6d489e0dd 100644
--- a/modules/ppcp-settings/resources/js/data/onboarding/hooks.js
+++ b/modules/ppcp-settings/resources/js/data/onboarding/hooks.js
@@ -3,10 +3,9 @@ import { STORE_NAME } from '../constants';
export const useOnboardingDetails = () => {
const {
- setOnboardingStep,
+ persist,
setSandboxMode,
setManualConnectionMode,
- persist,
setClientId,
setClientSecret,
} = useDispatch( STORE_NAME );
@@ -25,10 +24,6 @@ export const useOnboardingDetails = () => {
return select( STORE_NAME ).getPersistentData().clientSecret;
}, [] );
- const onboardingStep = useSelect( ( select ) => {
- return select( STORE_NAME ).getPersistentData().step || 0;
- }, [] );
-
const isSandboxMode = useSelect( ( select ) => {
return select( STORE_NAME ).getPersistentData().useSandbox;
}, [] );
@@ -43,7 +38,6 @@ export const useOnboardingDetails = () => {
};
return {
- onboardingStep,
isSaving,
isSandboxMode,
isManualConnectionMode,
@@ -52,8 +46,6 @@ export const useOnboardingDetails = () => {
clientSecret,
setClientSecret: ( value ) =>
setDetailAndPersist( setClientSecret, value ),
- setOnboardingStep: ( step ) =>
- setDetailAndPersist( setOnboardingStep, step ),
setSandboxMode: ( state ) =>
setDetailAndPersist( setSandboxMode, state ),
setManualConnectionMode: ( state ) =>
@@ -62,9 +54,10 @@ export const useOnboardingDetails = () => {
};
export const useOnboardingStep = () => {
- const { setOnboardingStep, setCompleted } = useDispatch( STORE_NAME );
+ const { persist, setOnboardingStep, setCompleted } =
+ useDispatch( STORE_NAME );
- const onboardingStep = useSelect( ( select ) => {
+ const step = useSelect( ( select ) => {
return select( STORE_NAME ).getPersistentData().step || 0;
} );
@@ -72,10 +65,15 @@ export const useOnboardingStep = () => {
return select( STORE_NAME ).getPersistentData().completed;
} );
+ const setDetailAndPersist = async ( setter, value ) => {
+ setter( value );
+ await persist();
+ };
+
return {
- onboardingStep,
- setOnboardingStep: ( step ) => setOnboardingStep( step ),
+ step,
+ setStep: ( value ) => setDetailAndPersist( setOnboardingStep, value ),
completed,
- setCompleted: ( state ) => setCompleted( state ),
+ setCompleted: ( state ) => setDetailAndPersist( setCompleted, state ),
};
};