From a81d59f3baf2cd5b0bb92690f4781dfee0bbcf31 Mon Sep 17 00:00:00 2001 From: Hein Date: Mon, 2 Feb 2026 13:18:40 +0200 Subject: [PATCH] =?UTF-8?q?refactor(GlobalStateStore):=20=F0=9F=94=84=20re?= =?UTF-8?q?move=20unused=20ProgramDataWrapper=20component?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GlobalStateStoreWrapper.tsx | 117 ------------------ 1 file changed, 117 deletions(-) diff --git a/src/GlobalStateStore/GlobalStateStoreWrapper.tsx b/src/GlobalStateStore/GlobalStateStoreWrapper.tsx index 9660ee4..e69de29 100644 --- a/src/GlobalStateStore/GlobalStateStoreWrapper.tsx +++ b/src/GlobalStateStore/GlobalStateStoreWrapper.tsx @@ -1,117 +0,0 @@ -import React, { useEffect } from 'react' -import { setDefaultAPIOption } from '@bitechdev/utils' -import axios from 'axios' -import { Center, Notification } from '@mantine/core' -import { programDataStore, useProgramDataStore } from './store/ProgramDataStore.store' -import { ProgramDataStoreState, ProgramWrapperProps, SessionDetail } from './types' - -/** - * Fetches program data and updates session details. - * - * @param {ProgramWrapperProps} props - Props for the ProgramDataWrapper component - * @return {ReactNode} The children of the component - */ -const ProgramDataWrapper = (props: ProgramWrapperProps) => { - const { fetchData, updateSession, connected, session, setState } = useProgramDataStore( - (state: ProgramDataStoreState) => ({ - fetchData: state.fetchData, - updateSession: state.updateSession, - connected: state.connected, - session: state.session, - setState: state.setState, - }) - ) - - useEffect(() => { - if (props.version) { - const program = programDataStore.getState()?.program - if (program) { - setState('program', { ...program, version: props.version }) - } - } - }, [props.version]) - - useEffect(() => { - if (session?.apiURL && session?.apiURL !== '') { - fetchData(props.apiURL) - .catch((e) => { - console.error('Error fetching data:', e) - }) - .finally(() => { - //Set the default API options - setDefaultAPIOption({ - getAPIProvider: () => { - const s = programDataStore.getState() - if (s.session?.authtoken && s.session?.authtoken !== '') { - return { provider: undefined, providerKey: undefined } - } - return { - provider: s.session?.provider, - providerKey: s.session?.providerKey, - } - }, - getAuthToken: () => { - const s = programDataStore.getState() - return s.session?.authtoken - }, - }) - }) - } - }, [session?.apiURL, session?.authtoken]) - - useEffect(() => { - try { - updateSession?.((state: SessionDetail) => ({ - apiURL: state.apiURL !== props.apiURL || !state.apiURL ? props.apiURL : state.apiURL, - debugMode: props.debugMode ?? state.debugMode, - testMode: props.testMode ?? state.testMode, - authtoken: - props.testMode && (!state.authtoken || state.authtoken === '') ? 'test' : state.authtoken, - provider: - props.testMode && (!state.provider || state.provider === '') ? 'bitech' : state.provider, - providerKey: - props.testMode && (!state.providerKey || state.providerKey === '') - ? 'test' - : state.providerKey, - })) - - axios.defaults.headers.common = { - 'X-Program-API': 'bitechcore', - Authorization: `Bearer ${session?.authtoken}`, - } - - if (session?.provider !== '') { - axios.defaults.headers.common['x-api-provider'] = session?.provider - } - if (session?.providerKey !== '') { - axios.defaults.headers.common['x-api-key'] = session?.providerKey - } - } catch (e) { - console.error('Error in ProgramDataWrapper useEffect:', e) - } - }, [ - session.authtoken, - session.provider, - session.providerKey, - props.apiURL, - props.debugMode, - props.testMode, - ]) - - if (props.renderFallback && !connected) { - return ( - props.fallback ?? ( -
- - Please make sure your app was correctly installed. If this problem persists, reset your - page cache and go to the login page. - -
- ) - ) - } - - return props.children -} - -export { ProgramDataWrapper }