Make dismiss button work

This commit is contained in:
ernstmul
2025-01-16 16:37:08 +01:00
parent ed32dbfa1b
commit 66a2eae02a
4 changed files with 22 additions and 3 deletions
+9
View File
@@ -0,0 +1,9 @@
export function hasOnboardingDismissed(projectId: string) {
const val = localStorage.getItem(`onboardingDismissed-${projectId}`) === 'true';
console.log('val');
return val;
}
export function setHasOnboardingDismissed(projectId: string) {
localStorage.setItem(`onboardingDismissed-${projectId}`, 'true');
}
@@ -27,6 +27,7 @@
import type { Metric } from '$lib/sdk/usage';
import { periodToDates } from '$lib/layout/usage.svelte';
import { canWriteProjects } from '$lib/stores/roles';
import { hasOnboardingDismissed } from '$lib/helpers/onboarding';
$: projectId = $page.params.project;
$: path = `${base}/project-${projectId}/overview`;
@@ -82,7 +83,7 @@
</svelte:head>
{#if $project}
{#if $onboarding}
{#if $onboarding && !hasOnboardingDismissed(projectId)}
<Onboardnew {projectId} />
{:else}
<Container overlapCover>
@@ -2,9 +2,10 @@
import { Id } from '$lib/components';
import { Cover, CoverTitle } from '$lib/layout';
import { onboarding, project } from '../store';
import { hasOnboardingDismissed } from '$lib/helpers/onboarding';
</script>
{#if !$onboarding}
{#if !$onboarding || hasOnboardingDismissed($project.$id)}
<Cover>
<svelte:fragment slot="header">
<CoverTitle>
@@ -9,6 +9,8 @@
import DiscordImgSource from './assets/discord.png';
import DiscordImgSourceDark from './assets/discord-dark.png';
import { base } from '$app/paths';
import { setHasOnboardingDismissed } from '$lib/helpers/onboarding';
import { goto } from '$app/navigation';
export let projectId: string;
</script>
@@ -18,7 +20,13 @@
<h1>Welcome, Jacob</h1>
<span>Follow a few quick steps to get started with Appwrite</span>
</div>
<Button.Button variant="secondary" size="s">Dismiss this page</Button.Button>
<Button.Button
variant="secondary"
size="s"
on:click={() => {
setHasOnboardingDismissed(projectId);
goto(`${base}/project-${projectId}`);
}}>Dismiss this page</Button.Button>
</div>
<div class="dashboard-content">
<Step.List>