diff --git a/src/routes/Onboarding/CmdK.tsx b/src/routes/Onboarding/CmdK.tsx
index 432ad1cc5..1ed836eb0 100644
--- a/src/routes/Onboarding/CmdK.tsx
+++ b/src/routes/Onboarding/CmdK.tsx
@@ -1,19 +1,17 @@
import usePlatform from 'hooks/usePlatform'
-import { OnboardingButtons, kbdClasses, useDismiss, useNextClick } from '.'
+import { OnboardingButtons, kbdClasses } from '.'
import { onboardingPaths } from 'routes/Onboarding/paths'
import { hotkeyDisplay } from 'lib/hotkeyWrapper'
import { COMMAND_PALETTE_HOTKEY } from 'components/CommandBar/CommandBar'
export default function CmdK() {
- const dismiss = useDismiss()
- const next = useNextClick(onboardingPaths.USER_MENU)
const platformName = usePlatform()
return (
Command Bar
@@ -38,12 +36,7 @@ export default function CmdK() {
. You can control settings, authentication, and file management from
the command bar, as well as a growing number of modeling commands.
-
+
)
diff --git a/src/routes/Onboarding/FutureWork.tsx b/src/routes/Onboarding/FutureWork.tsx
index cf7a13466..4be5e0fce 100644
--- a/src/routes/Onboarding/FutureWork.tsx
+++ b/src/routes/Onboarding/FutureWork.tsx
@@ -1,4 +1,4 @@
-import { OnboardingButtons, useDemoCode, useDismiss } from '.'
+import { OnboardingButtons, useDemoCode } from '.'
import { useEffect } from 'react'
import { useModelingContext } from 'hooks/useModelingContext'
import { APP_NAME } from 'lib/constants'
@@ -7,7 +7,6 @@ import { sceneInfra } from 'lib/singletons'
export default function FutureWork() {
const { send } = useModelingContext()
- const dismiss = useDismiss()
// Reset the code, the camera, and the modeling state
useDemoCode()
@@ -19,7 +18,7 @@ export default function FutureWork() {
return (
-
+
Future Work
We have curves, cuts, multi-profile sketch mode, and many more CAD
@@ -59,9 +58,6 @@ export default function FutureWork() {
diff --git a/src/routes/Onboarding/InteractiveNumbers.tsx b/src/routes/Onboarding/InteractiveNumbers.tsx
index 3f5987dab..d8a6cb0c5 100644
--- a/src/routes/Onboarding/InteractiveNumbers.tsx
+++ b/src/routes/Onboarding/InteractiveNumbers.tsx
@@ -1,23 +1,15 @@
-import {
- OnboardingButtons,
- kbdClasses,
- useDemoCode,
- useDismiss,
- useNextClick,
-} from '.'
+import { OnboardingButtons, kbdClasses, useDemoCode } from '.'
import { onboardingPaths } from 'routes/Onboarding/paths'
import { bracketWidthConstantLine } from 'lib/exampleKcl'
export default function OnboardingInteractiveNumbers() {
useDemoCode()
- const dismiss = useDismiss()
- const next = useNextClick(onboardingPaths.COMMAND_K)
return (
@@ -88,12 +80,7 @@ export default function OnboardingInteractiveNumbers() {
your ideas for how to make it better.
-
+
)
diff --git a/src/routes/Onboarding/Introduction.tsx b/src/routes/Onboarding/Introduction.tsx
index 9dac8f05c..ada5d8ab3 100644
--- a/src/routes/Onboarding/Introduction.tsx
+++ b/src/routes/Onboarding/Introduction.tsx
@@ -1,4 +1,4 @@
-import { OnboardingButtons, useDemoCode, useDismiss, useNextClick } from '.'
+import { OnboardingButtons, useDemoCode } from '.'
import { onboardingPaths } from 'routes/Onboarding/paths'
import { useSettingsAuthContext } from 'hooks/useSettingsAuthContext'
import { Themes, getSystemTheme } from 'lib/theme'
@@ -8,13 +8,12 @@ import { isDesktop } from 'lib/isDesktop'
import { useNavigate, useRouteLoaderData } from 'react-router-dom'
import { codeManager, kclManager } from 'lib/singletons'
import { APP_NAME } from 'lib/constants'
-import { useState } from 'react'
+import { useEffect, useState } from 'react'
import { IndexLoaderData } from 'lib/types'
import { PATHS } from 'lib/paths'
import { useFileContext } from 'hooks/useFileContext'
import { useLspContext } from 'components/LspProvider'
import { reportRejection } from 'lib/trap'
-import { toSync } from 'lib/utils'
/**
* Show either a welcome screen or a warning screen
@@ -39,7 +38,7 @@ interface OnboardingResetWarningProps {
function OnboardingResetWarning(props: OnboardingResetWarningProps) {
return (
-
+
{!isDesktop() ? (
) : (
@@ -52,7 +51,6 @@ function OnboardingResetWarning(props: OnboardingResetWarningProps) {
function OnboardingWarningDesktop(props: OnboardingResetWarningProps) {
const navigate = useNavigate()
- const dismiss = useDismiss()
const loaderData = useRouteLoaderData(PATHS.FILE) as IndexLoaderData
const { context: fileContext } = useFileContext()
const { onProjectClose, onProjectOpen } = useLspContext()
@@ -81,17 +79,28 @@ function OnboardingWarningDesktop(props: OnboardingResetWarningProps) {
{
+ onAccept().catch(reportRejection)
+ }}
/>
>
)
}
function OnboardingWarningWeb(props: OnboardingResetWarningProps) {
- const dismiss = useDismiss()
+ useEffect(() => {
+ async function beforeNavigate() {
+ // We do want to update both the state and editor here.
+ codeManager.updateCodeStateEditor(bracket)
+ await codeManager.writeToFile()
+ await kclManager.executeCode(true)
+ props.setShouldShowWarning(false)
+ }
+ return () => {
+ beforeNavigate().catch(reportRejection)
+ }
+ }, [])
return (
<>
@@ -101,19 +110,7 @@ function OnboardingWarningWeb(props: OnboardingResetWarningProps) {
We see you have some of your own code written in this project. Please
save it somewhere else before continuing the onboarding.
- {
- // We do want to update both the state and editor here.
- codeManager.updateCodeStateEditor(bracket)
- await codeManager.writeToFile()
-
- await kclManager.executeCode(true)
- props.setShouldShowWarning(false)
- }, reportRejection)}
- nextText="Overwrite code and continue"
- />
+
>
)
}
@@ -136,12 +133,10 @@ function OnboardingIntroductionInner() {
(theme.current === Themes.System && getSystemTheme() === Themes.Light)
? '-dark'
: ''
- const dismiss = useDismiss()
- const next = useNextClick(onboardingPaths.CAMERA)
return (