From cf3798f610f07ca7e2db240bb15befa20a046633 Mon Sep 17 00:00:00 2001 From: Philipp Stracker Date: Mon, 18 Nov 2024 16:25:57 +0100 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20Introduce=20new=20STORE=5F?= =?UTF-8?q?KEY=20const?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/js/data/onboarding/constants.js | 10 ++++++++++ .../resources/js/data/onboarding/index.js | 3 ++- .../resources/js/data/onboarding/selectors.js | 12 +++++++----- 3 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 modules/ppcp-settings/resources/js/data/onboarding/constants.js diff --git a/modules/ppcp-settings/resources/js/data/onboarding/constants.js b/modules/ppcp-settings/resources/js/data/onboarding/constants.js new file mode 100644 index 000000000..638b329df --- /dev/null +++ b/modules/ppcp-settings/resources/js/data/onboarding/constants.js @@ -0,0 +1,10 @@ +/** + * Name of the module-store in the main Redux store. + * Helps to isolate data. + * + * Used by: Reducer, Selector, Index + * + * @type {string} + */ +export const STORE_KEY = 'onboarding'; + diff --git a/modules/ppcp-settings/resources/js/data/onboarding/index.js b/modules/ppcp-settings/resources/js/data/onboarding/index.js index 0b07abf46..4f5ec7ed1 100644 --- a/modules/ppcp-settings/resources/js/data/onboarding/index.js +++ b/modules/ppcp-settings/resources/js/data/onboarding/index.js @@ -1,6 +1,7 @@ +import { STORE_KEY } from './constants'; import reducer from './reducer'; import * as selectors from './selectors'; import * as actions from './actions'; import * as resolvers from './resolvers'; -export { reducer, selectors, actions, resolvers }; +export { reducer, selectors, actions, resolvers, STORE_KEY }; diff --git a/modules/ppcp-settings/resources/js/data/onboarding/selectors.js b/modules/ppcp-settings/resources/js/data/onboarding/selectors.js index b7721b992..eb329c7d4 100644 --- a/modules/ppcp-settings/resources/js/data/onboarding/selectors.js +++ b/modules/ppcp-settings/resources/js/data/onboarding/selectors.js @@ -1,22 +1,24 @@ +import { STORE_KEY } from './constants'; + const EMPTY_OBJ = Object.freeze( {} ); -const getOnboardingState = ( state ) => { +const getState = ( state ) => { if ( ! state ) { return EMPTY_OBJ; } - return state.onboarding || EMPTY_OBJ; + return state[ STORE_KEY ] || EMPTY_OBJ; }; export const getPersistentData = ( state ) => { - return getOnboardingState( state ).data || EMPTY_OBJ; + return getState( state ).data || EMPTY_OBJ; }; export const getTransientData = ( state ) => { - const { data, flags, ...transientState } = getOnboardingState( state ); + const { data, flags, ...transientState } = getState( state ); return transientState || EMPTY_OBJ; }; export const getFlags = ( state ) => { - return getOnboardingState( state ).flags || EMPTY_OBJ; + return getState( state ).flags || EMPTY_OBJ; };