diff --git a/src/routes/console/project-[project]/overview/platforms/+page.svelte b/src/routes/console/project-[project]/overview/platforms/+page.svelte
index 5c2332b05..852bb7a27 100644
--- a/src/routes/console/project-[project]/overview/platforms/+page.svelte
+++ b/src/routes/console/project-[project]/overview/platforms/+page.svelte
@@ -36,6 +36,9 @@
import { base } from '$app/paths';
import { app } from '$lib/stores/app';
import type { PageData } from './$types';
+ import { CommandRegistrant } from '$lib/helpers/commandCenter';
+ import { goto } from '$app/navigation';
+ import { project, projectRegistrant } from '../../store';
export let data: PageData;
@@ -70,6 +73,9 @@
return 'unknown';
}
};
+
+ const { register } = $projectRegistrant();
+ $: register();
diff --git a/src/routes/console/project-[project]/storage/+page.svelte b/src/routes/console/project-[project]/storage/+page.svelte
index 826598d66..ed3d7c4ac 100644
--- a/src/routes/console/project-[project]/storage/+page.svelte
+++ b/src/routes/console/project-[project]/storage/+page.svelte
@@ -17,6 +17,7 @@
import { tooltip } from '$lib/actions/tooltip';
import type { Models } from '@appwrite.io/console';
import type { PageData } from './$types';
+ import { projectRegistrant } from '../store';
export let data: PageData;
@@ -28,6 +29,18 @@
showCreate = false;
await goto(`${base}/console/project-${project}/storage/bucket-${event.detail.$id}`);
}
+
+ const { register } = $projectRegistrant();
+ $: register([
+ {
+ label: 'Create bucket',
+ callback: () => {
+ showCreate = true;
+ },
+ keys: ['c'],
+ disabled: showCreate
+ }
+ ]);
diff --git a/src/routes/console/project-[project]/store.ts b/src/routes/console/project-[project]/store.ts
index 2c96c8070..7dc6da82c 100644
--- a/src/routes/console/project-[project]/store.ts
+++ b/src/routes/console/project-[project]/store.ts
@@ -2,8 +2,55 @@ import { derived, writable } from 'svelte/store';
import { page } from '$app/stores';
import type { Models } from '@appwrite.io/console';
import type { BarSeriesOption } from 'echarts/charts';
+import { ExtendCommandRegistrant } from '$lib/helpers/commandCenter';
+import { goto } from '$app/navigation';
export const project = derived(page, ($page) => $page.data.project as Models.Project);
+
+export const projectRegistrant = derived<
+ typeof project,
+ ReturnType
+>(project, ($project) => {
+ return ExtendCommandRegistrant([
+ {
+ label: 'Go to Overview',
+ keys: ['o'],
+ callback: () => {
+ goto(`/console/project-${$project.$id}`);
+ }
+ },
+
+ {
+ label: 'Go to Auth',
+ callback: () => {
+ goto(`/console/project-${$project.$id}/auth`);
+ },
+ keys: ['a']
+ },
+ {
+ label: 'Go to Databases',
+ callback: () => {
+ goto(`/console/project-${$project.$id}/databases`);
+ },
+ keys: ['d']
+ },
+ {
+ label: 'Go to Functions',
+ callback: () => {
+ goto(`/console/project-${$project.$id}/functions`);
+ },
+ keys: ['f']
+ },
+ {
+ label: 'Go to Storage',
+ callback: () => {
+ goto(`/console/project-${$project.$id}/storage`);
+ },
+ keys: ['s']
+ }
+ ]);
+});
+
export const onboarding = derived(
project,
($project) => $project.platforms.length === 0 && $project.keys.length === 0