From 3a2bdcd6e9e02ac49e42e05edf6ac640f09fc027 Mon Sep 17 00:00:00 2001 From: Darshan Date: Fri, 19 Dec 2025 21:05:34 +0530 Subject: [PATCH] update: smaller payloads :D --- src/lib/commandCenter/searchers/projects.ts | 6 +++++- src/lib/components/breadcrumbs.svelte | 3 ++- src/routes/(console)/+layout.ts | 6 +++++- .../(console)/onboarding/create-project/+page.ts | 2 +- .../(console)/organization-[organization]/+page.ts | 3 ++- .../change-plan/+page.svelte | 11 +++++++---- .../usage/[[invoice]]/+page.ts | 12 ++++++++---- src/routes/(console)/supportWizard.svelte | 4 +++- src/routes/(public)/functions/deploy/+page.svelte | 12 ++++++++---- src/routes/(public)/sites/deploy/+page.svelte | 14 +++++++++----- .../(public)/template-[template]/+page.svelte | 12 ++++++++---- 11 files changed, 58 insertions(+), 27 deletions(-) diff --git a/src/lib/commandCenter/searchers/projects.ts b/src/lib/commandCenter/searchers/projects.ts index d9c5c8da0..6ecfe955d 100644 --- a/src/lib/commandCenter/searchers/projects.ts +++ b/src/lib/commandCenter/searchers/projects.ts @@ -38,7 +38,11 @@ export const projectsSearcher = (async (query: string) => { } const { projects } = await sdk.forConsole.projects.list({ - queries: [Query.equal('teamId', get(organization).$id), Query.orderDesc('')] + queries: [ + Query.equal('teamId', get(organization).$id), + Query.orderDesc(''), + Query.select(['$id', 'name', 'region']) + ] }); return projects diff --git a/src/lib/components/breadcrumbs.svelte b/src/lib/components/breadcrumbs.svelte index 6a7fe4878..7f1a59c47 100644 --- a/src/lib/components/breadcrumbs.svelte +++ b/src/lib/components/breadcrumbs.svelte @@ -140,7 +140,8 @@ queries: [ Query.equal('teamId', organizationId ?? page.data.currentOrgId), Query.limit(5), - Query.orderDesc('$updatedAt') + Query.orderDesc('$updatedAt'), + Query.select(['$id', 'name', 'region', 'teamId']) ] })) ?? loadedProjects; diff --git a/src/routes/(console)/+layout.ts b/src/routes/(console)/+layout.ts index 3cf1478a3..44956eb5d 100644 --- a/src/routes/(console)/+layout.ts +++ b/src/routes/(console)/+layout.ts @@ -35,7 +35,11 @@ export const load: LayoutLoad = async ({ depends, parent }) => { try { projectsCount = ( await sdk.forConsole.projects.list({ - queries: [Query.equal('teamId', currentOrgId), Query.limit(1)] + queries: [ + Query.equal('teamId', currentOrgId), + Query.limit(1), + Query.select(['$id']) + ] }) ).total; } catch (e) { diff --git a/src/routes/(console)/onboarding/create-project/+page.ts b/src/routes/(console)/onboarding/create-project/+page.ts index 1dc717add..b38775355 100644 --- a/src/routes/(console)/onboarding/create-project/+page.ts +++ b/src/routes/(console)/onboarding/create-project/+page.ts @@ -65,7 +65,7 @@ export const load: PageLoad = async ({ parent }) => { let projects: Models.ProjectList = null; try { projects = await sdk.forConsole.projects.list({ - queries: [Query.equal('teamId', org.$id), Query.limit(1)] + queries: [Query.equal('teamId', org.$id), Query.limit(1), Query.select(['$id'])] }); } catch (e) { redirect(303, `${base}/organization-${org.$id}`); diff --git a/src/routes/(console)/organization-[organization]/+page.ts b/src/routes/(console)/organization-[organization]/+page.ts index bdbb21114..fcfaaccdd 100644 --- a/src/routes/(console)/organization-[organization]/+page.ts +++ b/src/routes/(console)/organization-[organization]/+page.ts @@ -24,7 +24,8 @@ export const load: PageLoad = async ({ params, url, route, depends, parent }) => Query.offset(offset), Query.equal('teamId', params.organization), Query.limit(limit), - Query.orderDesc('') + Query.orderDesc(''), + Query.select(['$id', 'name', 'region', 'status']) ], search: search || undefined }); diff --git a/src/routes/(console)/organization-[organization]/change-plan/+page.svelte b/src/routes/(console)/organization-[organization]/change-plan/+page.svelte index 8d4e7110a..cc8d94dc4 100644 --- a/src/routes/(console)/organization-[organization]/change-plan/+page.svelte +++ b/src/routes/(console)/organization-[organization]/change-plan/+page.svelte @@ -106,10 +106,13 @@ } try { - allProjects = await sdk.forConsole.projects.list([ - Query.equal('teamId', data.organization.$id), - Query.limit(1000) - ]); + allProjects = await sdk.forConsole.projects.list({ + queries: [ + Query.equal('teamId', data.organization.$id), + Query.limit(1000), + Query.select(['$id', 'name']) // TODO: @itznotabug, check if we need to add `$createdAt` + ] + }); } catch { allProjects = { projects: [] }; } diff --git a/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts b/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts index 8fd36fadf..05fd3ff84 100644 --- a/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts +++ b/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts @@ -1,7 +1,7 @@ import { sdk } from '$lib/stores/sdk'; import type { PageLoad } from './$types'; -import { Query } from '@appwrite.io/console'; import type { UsageProjectInfo } from '../../store'; +import { type Models, Query } from '@appwrite.io/console'; import type { Invoice, OrganizationUsage } from '$lib/sdk/billing'; export const load: PageLoad = async ({ params, parent }) => { @@ -70,14 +70,18 @@ export const load: PageLoad = async ({ params, parent }) => { // all this to get the project's name and region! function getUsageProjects(usage: OrganizationUsage) { return (async () => { - const projects: Record = {}; const limit = 100; - const requests = []; + const requests: Array> = []; + const projects: Record = {}; for (let index = 0; index < usage.projects.length; index += limit) { const chunkIds = usage.projects.slice(index, index + limit).map((p) => p.projectId); requests.push( sdk.forConsole.projects.list({ - queries: [Query.limit(limit), Query.equal('$id', chunkIds)] + queries: [ + Query.limit(limit), + Query.equal('$id', chunkIds), + Query.select(['$id', 'name', 'region']) + ] }) ); } diff --git a/src/routes/(console)/supportWizard.svelte b/src/routes/(console)/supportWizard.svelte index c53c0c4a3..eabf8a26b 100644 --- a/src/routes/(console)/supportWizard.svelte +++ b/src/routes/(console)/supportWizard.svelte @@ -80,7 +80,9 @@ onMount(async () => { // Filter projects by organization ID using server-side queries const projectList = await sdk.forConsole.projects.list({ - queries: $organization?.$id ? [Query.equal('teamId', $organization.$id)] : [] + queries: $organization?.$id + ? [Query.equal('teamId', $organization.$id), Query.select(['$id', 'name'])] + : [] }); projectOptions = projectList.projects.map((project) => ({ value: project.$id, diff --git a/src/routes/(public)/functions/deploy/+page.svelte b/src/routes/(public)/functions/deploy/+page.svelte index 4b353d17b..0399cf3a3 100644 --- a/src/routes/(public)/functions/deploy/+page.svelte +++ b/src/routes/(public)/functions/deploy/+page.svelte @@ -43,7 +43,11 @@ loadingProjects = true; projects = await sdk.forConsole.projects.list({ - queries: [Query.equal('teamId', selectedOrg), Query.orderDesc('')] + queries: [ + Query.equal('teamId', selectedOrg), + Query.orderDesc(''), + Query.select(['$id', 'name']) + ] }); selectedProject = projects?.total ? projects.projects[0].$id : null; @@ -215,9 +219,9 @@ : undefined} disabled={loadingProjects} options={[ - ...(projects?.projects?.map((p) => ({ - label: p.name, - value: p.$id + ...(projects?.projects?.map((project) => ({ + label: project.name, + value: project.$id })) ?? []), { label: 'Create project', diff --git a/src/routes/(public)/sites/deploy/+page.svelte b/src/routes/(public)/sites/deploy/+page.svelte index ef6000fbb..0d258793a 100644 --- a/src/routes/(public)/sites/deploy/+page.svelte +++ b/src/routes/(public)/sites/deploy/+page.svelte @@ -48,7 +48,11 @@ async function fetchProjects() { loadingProjects = true; projects = await sdk.forConsole.projects.list({ - queries: [Query.equal('teamId', selectedOrg), Query.orderDesc('')] + queries: [ + Query.equal('teamId', selectedOrg), + Query.orderDesc(''), + Query.select(['$id', 'name']) + ] }); selectedProject = projects?.total ? projects.projects[0].$id : null; @@ -87,7 +91,7 @@ loadingProjects = false; } } else { - const project = projects.projects.find((p) => p.$id === selectedProject); + const project = projects.projects.find((project) => project.$id === selectedProject); if (!project) { addNotification({ type: 'error', message: 'Selected project not found' }); return; @@ -371,9 +375,9 @@ : undefined} disabled={loadingProjects} options={[ - ...(projects?.projects?.map((p) => ({ - label: p.name, - value: p.$id + ...(projects?.projects?.map((project) => ({ + label: project.name, + value: project.$id })) ?? []), { label: 'Create project', diff --git a/src/routes/(public)/template-[template]/+page.svelte b/src/routes/(public)/template-[template]/+page.svelte index b82f6787c..63a8f5001 100644 --- a/src/routes/(public)/template-[template]/+page.svelte +++ b/src/routes/(public)/template-[template]/+page.svelte @@ -55,7 +55,11 @@ async function fetchProjects() { projects = await sdk.forConsole.projects.list({ - queries: [Query.equal('teamId', selectedOrg), Query.orderDesc('')] + queries: [ + Query.equal('teamId', selectedOrg), + Query.orderDesc(''), + Query.select(['$id', 'name']) + ] }); selectedProject = projects?.total ? projects.projects[0].$id : null; } @@ -180,9 +184,9 @@ label="Project" required options={[ - ...projects.projects.map((p) => ({ - label: p.name, - value: p.$id + ...projects.projects.map((project) => ({ + label: project.name, + value: project.$id })), { label: 'Create project',