Tryag File Manager
Home
||
Turbo Force
||
B-F Config_Cpanel
Current none :
/
var
/
www
/
html
/
tpid-konsulin
/
konsulin-cust-react
/
src
/
hooks
/
Or
Select Your none :
Upload File :
New :
File
Dir
/var/www/html/tpid-konsulin/konsulin-cust-react/src/hooks/context.tsx
import { actionType, alertState, dataVariantState, updateStockState, } from 'config/state' import { alertReducer, dataVariantReducer, updateStockReducer, } from 'helpers/dataReducer' import React, { useContext, useReducer, useState } from 'react' import Reducer from 'utils/reducer' interface AppContextInterface { alert: any dataStockUpdate: any dataVariantUpdate: any setDataVariant: (e: any) => void openAlert: (e: any) => void closeAlert: (e: any) => void onStockUpdateSubmitted: (e: any) => void onStockGet: (e: any) => void productNamePrice: any setProductNamePrice: (e: any) => void wholesalerPrice: any setWholesalerPrice: (e: any) => void category: { id: number | undefined; e: string | undefined } setCategory: (e: any) => void dataCheckoutPoint: any setDataCheckoutPoint: (e: any) => void dataCheckoutDisplayDelivery: any setDataCheckoutDisplayDelivery: (e: any) => void id_consultation: any setIdConsultation: (e: any) => void id_consultation_transaction: any setIdConsultation_transaction: (e: any) => void id_transaction_book: any setIdTransactionBook: (e: any) => void url_chat_consultationn: any setUrlChat: (e: any) => void savedInfobipRTC: any setSavedInfobipRTC: (e: any) => void savedInfobipActiveCall: any setSavedInfobipActiveCall: (e: any) => void savedInfobipActiveEvent: any setSavedInfobipActiveEvent: (e: any) => void savedPhoneNumber: any setSavedPhoneNumber: (e: any) => void isCameraClicked: any setIsCameraClicked: (e: any) => void merchantSearch: string setMerchantSearch: (e: string) => void stateCheckout: any setStateCheckout: (e: string) => void stateCodePromo: any setStateCodePromo: (e: string) => void setFCMToken: (e: string | undefined) => void fcmToken: string | undefined stateCodePromoProduct: any setStateCodePromoProduct: (e: string) => void savedItemsCheckout: any setSavedItemsCheckout: (e: any) => void savedCredential: any setSavedCredential: (e: any) => void inComingCallFromChat: boolean setIncomingCallFromChat: (e: boolean) => void chatTimesUP: boolean setChatTimesUp: (e: boolean) => void timesUPNotif: boolean setTimesUPNotif: (e: boolean) => void infobipToken: any setInfobipToken: (e: any) => void infobipDoctorData: any setInfobipDoctorData: (e: any) => void savedPoints: any setSavedPoints: (e: any) => void savedAddress: any setSavedAddress: (e: any) => void } export const AppContext = React.createContext<AppContextInterface>({ alert: null, dataStockUpdate: null, openAlert: (e: any) => {}, closeAlert: (e: any) => {}, onStockUpdateSubmitted: (e: any) => {}, onStockGet: (e: any) => {}, dataVariantUpdate: null, setDataVariant: (e: any) => {}, productNamePrice: null, setProductNamePrice: (e: any) => {}, wholesalerPrice: null, setWholesalerPrice: (e: any) => {}, category: { id: undefined, e: undefined }, setCategory: (e: any) => {}, id_consultation: null, setIdConsultation: (e: any) => {}, id_consultation_transaction: null, setIdConsultation_transaction: (e: any) => {}, id_transaction_book: null, setIdTransactionBook: (e: any) => {}, dataCheckoutPoint: null, setDataCheckoutPoint: (e: any) => {}, savedPhoneNumber: null, setSavedPhoneNumber: (e: any) => {}, dataCheckoutDisplayDelivery: null, setDataCheckoutDisplayDelivery: (e: any) => {}, url_chat_consultationn: null, setUrlChat: (e: any) => {}, infobipToken: null, setInfobipToken: (e: any) => {}, savedInfobipRTC: null, setSavedInfobipRTC: (e: any) => {}, savedInfobipActiveCall: null, setSavedInfobipActiveCall: (e: any) => {}, savedInfobipActiveEvent: null, setSavedInfobipActiveEvent: (e: any) => {}, savedCredential: null, setSavedCredential: (e: any) => {}, merchantSearch: '', setMerchantSearch: (e: any) => {}, setFCMToken: (e: string | undefined) => {}, fcmToken: undefined, stateCheckout: '', setStateCheckout: (e: string) => {}, savedItemsCheckout: '', setSavedItemsCheckout: (e: string) => {}, stateCodePromo: null, setStateCodePromo: (e: string) => {}, stateCodePromoProduct: null, setStateCodePromoProduct: (e: string) => {}, inComingCallFromChat: false, setIncomingCallFromChat: (e: boolean) => {}, chatTimesUP: false, setChatTimesUp: (e: boolean) => {}, timesUPNotif: false, setTimesUPNotif: (e: boolean) => {}, isCameraClicked: null, setIsCameraClicked: (e: any) => {}, infobipDoctorData: null, setInfobipDoctorData: (e: any) => {}, savedPoints: null, setSavedPoints: (e: any) => {}, savedAddress: null, setSavedAddress: (e: any) => {}, }) export const AppProvider: React.FC = ({ children }) => { const [alert, dispatchAlert] = useReducer(alertReducer, alertState) const [category, setCategory] = useState<any>({}) const [productNamePrice, setProductNamePrice] = useState<any>({}) const [wholesalerPrice, setWholesalerPrice] = useState<any>() const [id_consultation, setIdConsultation] = useState<any>() const [id_consultation_transaction, setIdConsultation_transaction] = useState<any>() const [id_transaction_book, setIdTransactionBook] = useState<any>(null) const [url_chat_consultationn, setUrlChat] = useState<any>() const [infobipToken, setInfobipToken] = useState<any>() const [infobipDoctorData, setInfobipDoctorData] = useState<any>() const [dataCheckoutPoint, setDataCheckoutPoint] = useState<any>() const [savedInfobipRTC, setSavedInfobipRTC] = useState<any>() const [savedInfobipActiveCall, setSavedInfobipActiveCall] = useState<any>() const [savedInfobipActiveEvent, setSavedInfobipActiveEvent] = useState<any>() const [isCameraClicked, setIsCameraClicked] = useState<boolean>(false) const [merchantSearch, setMerchantSearch] = useState<string>('') const [stateCheckout, setStateCheckout] = useState<any>([]) const [stateCodePromo, setStateCodePromo] = useState<any>() const [stateCodePromoProduct, setStateCodePromoProduct] = useState<any>() const [savedItemsCheckout, setSavedItemsCheckout] = useState<any>() const [chatTimesUP, setChatTimesUp] = useState<boolean>(false) const [savedCredential, setSavedCredential] = useState<any>() const [savedPhoneNumber, setSavedPhoneNumber] = useState<any>() const [timesUPNotif, setTimesUPNotif] = useState<boolean>(false) const [inComingCallFromChat, setIncomingCallFromChat] = useState<boolean>(false) const [fcmToken, setFCMToken] = useState<string>() const [savedPoints, setSavedPoints] = useState<any>() const [savedAddress, setSavedAddress] = useState<any>() const [dataCheckoutDisplayDelivery, setDataCheckoutDisplayDelivery] = useState<any>() const [dataStockUpdate, dispatchDataStokUpdate] = useReducer( updateStockReducer, updateStockState ) const [dataVariantUpdate, dispatchDataVariant] = useReducer( dataVariantReducer, dataVariantState ) const setDataVariant = (action: any) => { return new Reducer(dataVariantUpdate, dispatchDataVariant).dispatch({ ...action, type: actionType.SUBMIT, }) } const onStockGet = (action: any) => { return new Reducer(dataStockUpdate, dispatchDataStokUpdate).dispatch({ ...action, type: actionType.GET, }) } const onStockUpdateSubmitted = (action: any) => { return new Reducer(dataStockUpdate, dispatchDataStokUpdate).dispatch({ ...action, type: actionType.SUBMIT, }) } const openAlert = (action: any) => { return new Reducer(alert, dispatchAlert).dispatch({ ...action, type: actionType.OPEN, }) } const closeAlert = (a: any) => { if (typeof alert.callback === 'function') { alert.callback({ isConfirm: a.isConfirm }) } dispatchAlert({ type: actionType.CLOSE }) } return ( <AppContext.Provider value={{ alert, dataStockUpdate, dataVariantUpdate, category, productNamePrice, wholesalerPrice, id_consultation, url_chat_consultationn, infobipToken, infobipDoctorData, dataCheckoutPoint, dataCheckoutDisplayDelivery, id_transaction_book, savedInfobipRTC, savedInfobipActiveCall, savedInfobipActiveEvent, isCameraClicked, merchantSearch, stateCheckout, stateCodePromo, stateCodePromoProduct, id_consultation_transaction, savedItemsCheckout, fcmToken, chatTimesUP, inComingCallFromChat, savedCredential, savedPhoneNumber, savedPoints, timesUPNotif, savedAddress, setSavedAddress, setTimesUPNotif, setSavedPoints, setSavedPhoneNumber, setSavedCredential, setIncomingCallFromChat, setChatTimesUp, setFCMToken, setSavedItemsCheckout, setIdConsultation_transaction, setStateCodePromoProduct, setStateCodePromo, setStateCheckout, setMerchantSearch, setIsCameraClicked, setSavedInfobipActiveEvent, setSavedInfobipActiveCall, setSavedInfobipRTC, setIdTransactionBook, setDataCheckoutDisplayDelivery, setDataCheckoutPoint, setInfobipDoctorData, setInfobipToken, setUrlChat, setIdConsultation, setWholesalerPrice, setProductNamePrice, setCategory, setDataVariant, openAlert, closeAlert, onStockUpdateSubmitted, onStockGet, }} > {children} </AppContext.Provider> ) } export const useGlobalContext = () => { return useContext(AppContext) }