diff options
Diffstat (limited to 'excalidraw-app/components/AppWelcomeScreen.tsx')
| -rw-r--r-- | excalidraw-app/components/AppWelcomeScreen.tsx | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/excalidraw-app/components/AppWelcomeScreen.tsx b/excalidraw-app/components/AppWelcomeScreen.tsx new file mode 100644 index 0000000..139a951 --- /dev/null +++ b/excalidraw-app/components/AppWelcomeScreen.tsx @@ -0,0 +1,72 @@ +import React from "react"; +import { loginIcon } from "@excalidraw/excalidraw/components/icons"; +import { useI18n } from "@excalidraw/excalidraw/i18n"; +import { WelcomeScreen } from "@excalidraw/excalidraw/index"; +import { isExcalidrawPlusSignedUser } from "../app_constants"; +import { POINTER_EVENTS } from "@excalidraw/excalidraw/constants"; + +export const AppWelcomeScreen: React.FC<{ + onCollabDialogOpen: () => any; + isCollabEnabled: boolean; +}> = React.memo((props) => { + const { t } = useI18n(); + let headingContent; + + if (isExcalidrawPlusSignedUser) { + headingContent = t("welcomeScreen.app.center_heading_plus") + .split(/(kj-diagramming)/) + .map((bit, idx) => { + if (bit === "kj-diagramming") { + return ( + <a + style={{ pointerEvents: POINTER_EVENTS.inheritFromUI }} + href={`${ + import.meta.env.VITE_APP_PLUS_APP + }?utm_source=excalidraw&utm_medium=app&utm_content=welcomeScreenSignedInUser`} + key={idx} + > + kj-diagramming + </a> + ); + } + return bit; + }); + } else { + headingContent = t("welcomeScreen.app.center_heading"); + } + + return ( + <WelcomeScreen> + <WelcomeScreen.Hints.MenuHint> + {t("welcomeScreen.app.menuHint")} + </WelcomeScreen.Hints.MenuHint> + <WelcomeScreen.Hints.ToolbarHint /> + <WelcomeScreen.Hints.HelpHint /> + <WelcomeScreen.Center> + <WelcomeScreen.Center.Heading> + {headingContent} + </WelcomeScreen.Center.Heading> + <WelcomeScreen.Center.Menu> + <WelcomeScreen.Center.MenuItemLoadScene /> + <WelcomeScreen.Center.MenuItemHelp /> + {props.isCollabEnabled && ( + <WelcomeScreen.Center.MenuItemLiveCollaborationTrigger + onSelect={() => props.onCollabDialogOpen()} + /> + )} + {!isExcalidrawPlusSignedUser && ( + <WelcomeScreen.Center.MenuItemLink + href={`${ + import.meta.env.VITE_APP_PLUS_LP + }/plus?utm_source=excalidraw&utm_medium=app&utm_content=welcomeScreenGuest`} + shortcut={null} + icon={loginIcon} + > + Sign up + </WelcomeScreen.Center.MenuItemLink> + )} + </WelcomeScreen.Center.Menu> + </WelcomeScreen.Center> + </WelcomeScreen> + ); +}); |
