From 18c5cb8e2b22906fae396be5924bd2124eb5d9c2 Mon Sep 17 00:00:00 2001 From: ernstmul Date: Wed, 2 Apr 2025 12:47:14 +0200 Subject: [PATCH] Add builder landing page, and remove old routes --- .../(console)/project-[project]/+page.ts | 4 + .../project-[project]/builder}/+page.svelte | 0 src/routes/(studio)/+layout.svelte | 80 ------------------- src/routes/(studio)/+layout.ts | 70 ---------------- .../(studio)/org-[organization]/+page.svelte | 30 ------- 5 files changed, 4 insertions(+), 180 deletions(-) rename src/routes/{(studio)/proj-[project] => (console)/project-[project]/builder}/+page.svelte (100%) delete mode 100644 src/routes/(studio)/+layout.svelte delete mode 100644 src/routes/(studio)/+layout.ts delete mode 100644 src/routes/(studio)/org-[organization]/+page.svelte diff --git a/src/routes/(console)/project-[project]/+page.ts b/src/routes/(console)/project-[project]/+page.ts index 53c3af2a9..6f43a5707 100644 --- a/src/routes/(console)/project-[project]/+page.ts +++ b/src/routes/(console)/project-[project]/+page.ts @@ -2,8 +2,12 @@ import { redirect } from '@sveltejs/kit'; import { base } from '$app/paths'; import type { PageLoad } from './$types'; import { hasOnboardingDismissed } from '$lib/helpers/onboarding'; +import { isStudio } from '$lib/system'; export const load: PageLoad = async ({ params }) => { + if (isStudio) { + redirect(302, `${base}/project-${params.project}/builder`); + } if (hasOnboardingDismissed(params.project)) { redirect(302, `${base}/project-${params.project}/overview`); } diff --git a/src/routes/(studio)/proj-[project]/+page.svelte b/src/routes/(console)/project-[project]/builder/+page.svelte similarity index 100% rename from src/routes/(studio)/proj-[project]/+page.svelte rename to src/routes/(console)/project-[project]/builder/+page.svelte diff --git a/src/routes/(studio)/+layout.svelte b/src/routes/(studio)/+layout.svelte deleted file mode 100644 index da755c82b..000000000 --- a/src/routes/(studio)/+layout.svelte +++ /dev/null @@ -1,80 +0,0 @@ - - -
- -
- - - - -
-
- {#if hasProjectSidebar} - - {:else} - - {/if} -
-
- - diff --git a/src/routes/(studio)/+layout.ts b/src/routes/(studio)/+layout.ts deleted file mode 100644 index d51edd31e..000000000 --- a/src/routes/(studio)/+layout.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { Dependencies } from '$lib/constants'; -import type { Plan } from '$lib/sdk/billing'; -import type { Tier } from '$lib/stores/billing'; -import { sdk } from '$lib/stores/sdk'; -import { isCloud } from '$lib/system'; -import type { LayoutLoad } from './$types'; -import { Query } from '@appwrite.io/console'; - -export const load: LayoutLoad = async ({ params, fetch, depends, parent }) => { - await parent(); - depends(Dependencies.RUNTIMES); - depends(Dependencies.CONSOLE_VARIABLES); - depends(Dependencies.ORGANIZATION); - - const prefs = await sdk.forConsole.account.getPrefs(); - - const { endpoint, project } = sdk.forConsole.client.config; - const versionPromise = fetch(`${endpoint}/health/version`, { - headers: { - 'X-Appwrite-Project': project - } - }).then((response) => response.json() as { version?: string }); - - const variablesPromise = sdk.forConsole.console.variables(); - - const [data, variables] = await Promise.all([versionPromise, variablesPromise]); - - let plansInfo = new Map(); - if (isCloud) { - const plansArray = await sdk.forConsole.billing.getPlansInfo(); - plansInfo = plansArray.plans.reduce((map, plan) => { - map.set(plan.$id as Tier, plan); - return map; - }, new Map()); - } - - const organizations = !isCloud - ? await sdk.forConsole.teams.list() - : await sdk.forConsole.billing.listOrganization(); - - let projects = []; - let currentOrgId = params.organization ? params.organization : prefs.organization; - - if (!currentOrgId && organizations.teams.length > 0) { - currentOrgId = organizations.teams[0].$id; - } - if (currentOrgId) { - const orgProjects = await sdk.forConsole.projects.list([ - Query.equal('teamId', currentOrgId), - Query.limit(100), - Query.orderDesc('$updatedAt') - ]); - projects = orgProjects.projects.length > 0 ? orgProjects.projects : []; - } - - const selectedOrganizationId = - params && params.organization ? params.organization : prefs.organization; - - return { - consoleVariables: variables, - version: data?.version ?? null, - plansInfo, - roles: [], - scopes: [], - projects: projects, - currentProjectId: params.project ?? '', - organizations: organizations, - currentOrganization: organizations.teams.find((org) => org.$id === selectedOrganizationId) - }; -}; diff --git a/src/routes/(studio)/org-[organization]/+page.svelte b/src/routes/(studio)/org-[organization]/+page.svelte deleted file mode 100644 index b97b46e7c..000000000 --- a/src/routes/(studio)/org-[organization]/+page.svelte +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - Projects - Create project - - - - - - {#each data.projects as project} - - {/each} - - -