import type { RcThemeProviderProps } from '@ringcentral/juno'; import { RcThemeProvider } from '@ringcentral/juno'; import type { FunctionComponent } from 'react'; import React from 'react'; export interface PhoneProviderProps { phone: T; theme?: RcThemeProviderProps['theme']; } export const PhoneContext = React.createContext(null); export default PhoneContext; /** * Init `UI module system provider` and `Juno theme provider` * make sure you only have one `PhoneProvider` in your app */ export const PhoneProvider: FunctionComponent = ({ phone, theme, children, }) => { return ( {children} ); }; /** * @deprecated please use UI module System * bind phone provider * @param Comp target component that you want to bind phone state */ export function withPhone(Comp: any) { // eslint-disable-next-line func-names return (props: any) => { return ( {(phone) => } ); }; }