ui: commercial fixes (#3409)

minor commercial fixes
This commit is contained in:
blessedcoolant 2023-05-14 20:44:06 +12:00 committed by GitHub
commit 3d60c958c7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 39 additions and 4 deletions

View File

@ -30,9 +30,14 @@ const DEFAULT_CONFIG = {};
interface Props { interface Props {
config?: PartialAppConfig; config?: PartialAppConfig;
headerComponent?: ReactNode; headerComponent?: ReactNode;
setIsReady?: (isReady: boolean) => void;
} }
const App = ({ config = DEFAULT_CONFIG, headerComponent }: Props) => { const App = ({
config = DEFAULT_CONFIG,
headerComponent,
setIsReady,
}: Props) => {
useToastWatcher(); useToastWatcher();
useGlobalHotkeys(); useGlobalHotkeys();
@ -61,6 +66,16 @@ const App = ({ config = DEFAULT_CONFIG, headerComponent }: Props) => {
setLoadingOverridden(true); setLoadingOverridden(true);
}, []); }, []);
useEffect(() => {
if (isApplicationReady && setIsReady) {
setIsReady(true);
}
return () => {
setIsReady && setIsReady(false);
};
}, [isApplicationReady, setIsReady]);
return ( return (
<Grid w="100vw" h="100vh" position="relative" overflow="hidden"> <Grid w="100vw" h="100vh" position="relative" overflow="hidden">
{isLightboxEnabled && <Lightbox />} {isLightboxEnabled && <Lightbox />}

View File

@ -24,9 +24,16 @@ interface Props extends PropsWithChildren {
token?: string; token?: string;
config?: PartialAppConfig; config?: PartialAppConfig;
headerComponent?: ReactNode; headerComponent?: ReactNode;
setIsReady?: (isReady: boolean) => void;
} }
const InvokeAIUI = ({ apiUrl, token, config, headerComponent }: Props) => { const InvokeAIUI = ({
apiUrl,
token,
config,
headerComponent,
setIsReady,
}: Props) => {
useEffect(() => { useEffect(() => {
// configure API client token // configure API client token
if (token) { if (token) {
@ -55,7 +62,11 @@ const InvokeAIUI = ({ apiUrl, token, config, headerComponent }: Props) => {
<Provider store={store}> <Provider store={store}>
<React.Suspense fallback={<Loading />}> <React.Suspense fallback={<Loading />}>
<ThemeLocaleProvider> <ThemeLocaleProvider>
<App config={config} headerComponent={headerComponent} /> <App
config={config}
headerComponent={headerComponent}
setIsReady={setIsReady}
/>
</ThemeLocaleProvider> </ThemeLocaleProvider>
</React.Suspense> </React.Suspense>
</Provider> </Provider>

View File

@ -17,8 +17,17 @@ const InvokeAILogoComponent = () => {
h="32px" h="32px"
minW="32px" minW="32px"
minH="32px" minH="32px"
userSelect="none"
/> />
<Flex gap={3} display={{ base: 'inherit', sm: 'none', md: 'inherit' }}> <Flex
gap={3}
display={{
base: 'inherit',
sm: 'none',
md: 'inherit',
userSelect = 'none',
}}
>
<Text fontSize="xl"> <Text fontSize="xl">
invoke <strong>ai</strong> invoke <strong>ai</strong>
</Text> </Text>