Update onboarding to V1 browser and desktop flows (#6714)
* Remove unused `telemetryLoader` * Remove onboarding redirect behavior * Allow subRoute to be passed to navigateToProject * Replace warning dialog routes with toasts * Wire up new utilities and toasts to UI components * Add home sidebar buttons for tutorial flow * Rename menu item * Add flex-1 so home-layout fills available space * Remove onboarding avatar tests, they are becoming irrelevant * Consolidate onboarding tests to one longer one and update it to not use pixel color checks, and use fixtures. * Shorten warning toast button text * tsc, lint, and circular deps * Update circular dep file * Fix mistakes made in circular update tweaking * One more dumb created circular dep * Update src/routes/Onboarding/utils.tsx Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> * Fix narrow screen home layout breaking * fix: kevin, navigation routes fixed * fix: filename parsing is correct now for onboarding with the last file sep * Fix e2e test state checks that are diff on Linux * Create onboarding project entirely through systemIOMachine * Fix Windows path construction * Make utility to verify a string is an onboarding value * Little biome formatting suggestion fix * Units onboarding step was not using OnboardingButtons * Add type checking of next and previous status, fix useNextClick * Update `OnboardingStatus` type on WASM side * Make onboarding different on browser and web, placeholder component * Show proof of concept with custom content per route * Make text type args not insta dismiss when you click anywhere * Make some utility hooks for the onboarding * Update requestedProjectName along with requestedProjectName * Build out a rough draft of desktop onboarding * Remove unused onboarding route files * Build out rough draft of browser onboarding content * @jgomez720 browser flow feedback * @jgomez420 desktop feedback * tsc and lints * Tweaks * Import is dead, long live Add files * What's up with my inability to type "highlight"? * Codespell and String casting * Update browser sample to be axial fan * lint and tsc * codespell again * Remove unused nightmare function `useDemoCode` * Add a few unit tests * Update desktop to use bulk file creation from #6747 * Oops overwrote main.kcl on the modify with text-to-cad step * Undo the dumb use of `sep` that I introduced * Fix up project test which was fragile to the number of steps in the onboarding smh * Fix up onboarding flow test * typo --------- Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> Co-authored-by: Kevin Nadro <kevin@zoo.dev>
This commit is contained in:
@ -496,43 +496,84 @@ pub enum OnboardingStatus {
|
||||
/// The user has dismissed onboarding.
|
||||
Dismissed,
|
||||
|
||||
// Routes
|
||||
#[serde(rename = "/")]
|
||||
#[display("/")]
|
||||
Index,
|
||||
#[serde(rename = "/camera")]
|
||||
#[display("/camera")]
|
||||
Camera,
|
||||
#[serde(rename = "/streaming")]
|
||||
#[display("/streaming")]
|
||||
Streaming,
|
||||
#[serde(rename = "/editor")]
|
||||
#[display("/editor")]
|
||||
Editor,
|
||||
#[serde(rename = "/parametric-modeling")]
|
||||
#[display("/parametric-modeling")]
|
||||
ParametricModeling,
|
||||
#[serde(rename = "/interactive-numbers")]
|
||||
#[display("/interactive-numbers")]
|
||||
InteractiveNumbers,
|
||||
#[serde(rename = "/command-k")]
|
||||
#[display("/command-k")]
|
||||
CommandK,
|
||||
#[serde(rename = "/user-menu")]
|
||||
#[display("/user-menu")]
|
||||
UserMenu,
|
||||
#[serde(rename = "/project-menu")]
|
||||
#[display("/project-menu")]
|
||||
ProjectMenu,
|
||||
#[serde(rename = "/export")]
|
||||
#[display("/export")]
|
||||
Export,
|
||||
#[serde(rename = "/sketching")]
|
||||
#[display("/sketching")]
|
||||
Sketching,
|
||||
#[serde(rename = "/future-work")]
|
||||
#[display("/future-work")]
|
||||
FutureWork,
|
||||
// Desktop Routes
|
||||
#[serde(rename = "/desktop")]
|
||||
#[display("/desktop")]
|
||||
DesktopWelcome,
|
||||
#[serde(rename = "/desktop/scene")]
|
||||
#[display("/desktop/scene")]
|
||||
DesktopScene,
|
||||
#[serde(rename = "/desktop/toolbar")]
|
||||
#[display("/desktop/toolbar")]
|
||||
DesktopToolbar,
|
||||
#[serde(rename = "/desktop/text-to-cad")]
|
||||
#[display("/desktop/text-to-cad")]
|
||||
DesktopTextToCadWelcome,
|
||||
#[serde(rename = "/desktop/text-to-cad-prompt")]
|
||||
#[display("/desktop/text-to-cad-prompt")]
|
||||
DesktopTextToCadPrompt,
|
||||
#[serde(rename = "/desktop/feature-tree-pane")]
|
||||
#[display("/desktop/feature-tree-pane")]
|
||||
DesktopFeatureTreePane,
|
||||
#[serde(rename = "/desktop/code-pane")]
|
||||
#[display("/desktop/code-pane")]
|
||||
DesktopCodePane,
|
||||
#[serde(rename = "/desktop/project-pane")]
|
||||
#[display("/desktop/project-pane")]
|
||||
DesktopProjectFilesPane,
|
||||
#[serde(rename = "/desktop/other-panes")]
|
||||
#[display("/desktop/other-panes")]
|
||||
DesktopOtherPanes,
|
||||
#[serde(rename = "/desktop/prompt-to-edit")]
|
||||
#[display("/desktop/prompt-to-edit")]
|
||||
DesktopPromptToEditWelcome,
|
||||
#[serde(rename = "/desktop/prompt-to-edit-prompt")]
|
||||
#[display("/desktop/prompt-to-edit-prompt")]
|
||||
DesktopPromptToEditPrompt,
|
||||
#[serde(rename = "/desktop/prompt-to-edit-result")]
|
||||
#[display("/desktop/prompt-to-edit-result")]
|
||||
DesktopPromptToEditResult,
|
||||
#[serde(rename = "/desktop/imports")]
|
||||
#[display("/desktop/imports")]
|
||||
DesktopImports,
|
||||
#[serde(rename = "/desktop/exports")]
|
||||
#[display("/desktop/exports")]
|
||||
DesktopExports,
|
||||
#[serde(rename = "/desktop/conclusion")]
|
||||
#[display("/desktop/conclusion")]
|
||||
DesktopConclusion,
|
||||
|
||||
// Browser Routes
|
||||
#[serde(rename = "/browser")]
|
||||
#[display("/browser")]
|
||||
BrowserWelcome,
|
||||
#[serde(rename = "/browser/scene")]
|
||||
#[display("/browser/scene")]
|
||||
BrowserScene,
|
||||
#[serde(rename = "/browser/toolbar")]
|
||||
#[display("/browser/toolbar")]
|
||||
BrowserToolbar,
|
||||
#[serde(rename = "/browser/text-to-cad")]
|
||||
#[display("/browser/text-to-cad")]
|
||||
BrowserTextToCadWelcome,
|
||||
#[serde(rename = "/browser/text-to-cad-prompt")]
|
||||
#[display("/browser/text-to-cad-prompt")]
|
||||
BrowserTextToCadPrompt,
|
||||
#[serde(rename = "/browser/feature-tree-pane")]
|
||||
#[display("/browser/feature-tree-pane")]
|
||||
BrowserFeatureTreePane,
|
||||
#[serde(rename = "/browser/prompt-to-edit")]
|
||||
#[display("/browser/prompt-to-edit")]
|
||||
BrowserPromptToEditWelcome,
|
||||
#[serde(rename = "/browser/prompt-to-edit-prompt")]
|
||||
#[display("/browser/prompt-to-edit-prompt")]
|
||||
BrowserPromptToEditPrompt,
|
||||
#[serde(rename = "/browser/prompt-to-edit-result")]
|
||||
#[display("/browser/prompt-to-edit-result")]
|
||||
BrowserPromptToEditResult,
|
||||
#[serde(rename = "/browser/conclusion")]
|
||||
#[display("/browser/conclusion")]
|
||||
BrowserConclusion,
|
||||
}
|
||||
|
||||
fn is_default<T: Default + PartialEq>(t: &T) -> bool {
|
||||
|
Reference in New Issue
Block a user