From 5a5c27c1491616fe7095cee2536bc0254195f8f1 Mon Sep 17 00:00:00 2001 From: Steven Nguyen Date: Fri, 8 Sep 2023 17:32:06 -0700 Subject: [PATCH 1/7] Fix users list not re-rendering --- src/routes/console/project-[project]/auth/+page.svelte | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/routes/console/project-[project]/auth/+page.svelte b/src/routes/console/project-[project]/auth/+page.svelte index 742fa8a78..bdd8d834a 100644 --- a/src/routes/console/project-[project]/auth/+page.svelte +++ b/src/routes/console/project-[project]/auth/+page.svelte @@ -34,13 +34,6 @@ export let data: PageData; - // TODO: Remove this when the console SDK is updated - const users = data.users.users.map((user) => { - const labels: string[] = []; - const accessedAt = ''; - return { accessedAt, labels, ...user }; - }); - const projectId = $page.params.project; async function userCreated(event: CustomEvent>>) { await goto(`${base}/console/project-${projectId}/auth/user-${event.detail.$id}`); @@ -65,7 +58,7 @@ Last Activity - {#each users as user} + {#each data.users.users as user} From cb06fe4e0acbda454b3960bc35366fd42e0675d2 Mon Sep 17 00:00:00 2001 From: Steven Nguyen Date: Tue, 12 Sep 2023 14:04:14 -0700 Subject: [PATCH 2/7] Fix incorrect links to migration docs for self-hosted <> cloud --- .../project-[project]/settings/migrations/+page.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/routes/console/project-[project]/settings/migrations/+page.svelte b/src/routes/console/project-[project]/settings/migrations/+page.svelte index 857c0bcdc..e879a1b5d 100644 --- a/src/routes/console/project-[project]/settings/migrations/+page.svelte +++ b/src/routes/console/project-[project]/settings/migrations/+page.svelte @@ -235,7 +235,7 @@

Export data from your project to Appwrite Cloud. Learn more in our documentation. @@ -262,7 +262,7 @@

Export data from your project to a self-hosted instance. Learn more in our documentation. From f1b1ed826a0309164b11210e62ee2ce04b851324 Mon Sep 17 00:00:00 2001 From: Steven Nguyen Date: Wed, 13 Sep 2023 10:50:07 -0700 Subject: [PATCH 3/7] Update template configuration to show supported runtimes There are times when people jump into creating the function without reading the template details. Because templates only support certain runtime versions, it's important to show the supported runtimes in the wizard or else the developer will be confused why their enabled incompatible runtime doesn't show in the Runtime dropdown. --- .../wizards/functions/steps/templateConfiguration.svelte | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lib/wizards/functions/steps/templateConfiguration.svelte b/src/lib/wizards/functions/steps/templateConfiguration.svelte index 49be494b6..afa87567a 100644 --- a/src/lib/wizards/functions/steps/templateConfiguration.svelte +++ b/src/lib/wizards/functions/steps/templateConfiguration.svelte @@ -33,6 +33,15 @@ {$template.name} {$template.tagline} +
+
+ Supported runtimes: +
+

+ {#each $template.runtimes as runtime} + {runtime.name} + {/each} +
Date: Wed, 13 Sep 2023 11:47:19 -0700 Subject: [PATCH 4/7] Sort list of supported runtimes A sorted list is easier to scan if a developer is looking for a specific version. --- src/lib/wizards/functions/steps/templateConfiguration.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/wizards/functions/steps/templateConfiguration.svelte b/src/lib/wizards/functions/steps/templateConfiguration.svelte index afa87567a..1f6beac3d 100644 --- a/src/lib/wizards/functions/steps/templateConfiguration.svelte +++ b/src/lib/wizards/functions/steps/templateConfiguration.svelte @@ -38,7 +38,7 @@ Supported runtimes:
- {#each $template.runtimes as runtime} + {#each $template.runtimes.sort((r1, r2) => r1.name.localeCompare(r2.name)) as runtime} {runtime.name} {/each}
From 91df9e05c258ebae55697138b8a8f36d06b81740 Mon Sep 17 00:00:00 2001 From: Steven Nguyen Date: Tue, 12 Sep 2023 17:11:18 -0700 Subject: [PATCH 5/7] Simplify usage of console variables await the data during load so it's available downstream without needing to await. --- src/lib/pages/domains/wizard/step1.svelte | 11 +---------- src/routes/console/+layout.svelte | 5 +---- src/routes/console/+layout.ts | 11 +++++++---- .../settings/updateConfiguration.svelte | 5 +++-- .../templates/template-[template]/+page.svelte | 6 ++++-- .../settings/updateInstallations.svelte | 7 ++++--- src/routes/console/store.ts | 5 +---- 7 files changed, 21 insertions(+), 29 deletions(-) diff --git a/src/lib/pages/domains/wizard/step1.svelte b/src/lib/pages/domains/wizard/step1.svelte index 480a58580..2c8a0e884 100644 --- a/src/lib/pages/domains/wizard/step1.svelte +++ b/src/lib/pages/domains/wizard/step1.svelte @@ -6,21 +6,12 @@ import { sdk } from '$lib/stores/sdk'; import { isSelfHosted } from '$lib/system'; import { func } from '$routes/console/project-[project]/functions/function-[function]/store'; - import { onMount } from 'svelte'; import { ProxyTypes } from '../index.svelte'; import { domain, typeStore } from './store'; import { consoleVariables } from '$routes/console/store'; let error = null; - let isDomainsEnabled = false; - - onMount(async () => { - if (!isSelfHosted) { - return; - } - - isDomainsEnabled = (await $consoleVariables)?._APP_DOMAIN_ENABLED === true; - }); + const isDomainsEnabled = $consoleVariables?._APP_DOMAIN_ENABLED === true; async function createDomain() { try { diff --git a/src/routes/console/+layout.svelte b/src/routes/console/+layout.svelte index c7e0bda5a..cb94ecde7 100644 --- a/src/routes/console/+layout.svelte +++ b/src/routes/console/+layout.svelte @@ -33,10 +33,7 @@ .join(' '); } - let isAssistantEnabled = false; - onMount(async () => { - isAssistantEnabled = (await $consoleVariables)?._APP_ASSISTANT_ENABLED === true; - }); + const isAssistantEnabled = $consoleVariables?._APP_ASSISTANT_ENABLED === true; $: isOnSettingsLayout = $project?.$id ? $page.url.pathname.includes(`project-${$project.$id}/settings`) diff --git a/src/routes/console/+layout.ts b/src/routes/console/+layout.ts index 8221f5d43..fdcdec07f 100644 --- a/src/routes/console/+layout.ts +++ b/src/routes/console/+layout.ts @@ -8,15 +8,18 @@ export const load: LayoutLoad = async ({ fetch, depends }) => { depends(Dependencies.CONSOLE_VARIABLES); const { endpoint, project } = sdk.forConsole.client.config; - const response = await fetch(`${endpoint}/health/version`, { + const versionPromise = fetch(`${endpoint}/health/version`, { headers: { 'X-Appwrite-Project': project } - }); - const data = await response.json(); + }).then((response) => response.json() as { version?: string }); + + const variablesPromise = sdk.forConsole.console.variables(); + + const [data, variables] = await Promise.all([versionPromise, variablesPromise]); return { - consoleVariables: sdk.forConsole.console.variables(), + consoleVariables: variables, version: data?.version ?? null }; }; diff --git a/src/routes/console/project-[project]/functions/function-[function]/settings/updateConfiguration.svelte b/src/routes/console/project-[project]/functions/function-[function]/settings/updateConfiguration.svelte index e29904e78..40060a009 100644 --- a/src/routes/console/project-[project]/functions/function-[function]/settings/updateConfiguration.svelte +++ b/src/routes/console/project-[project]/functions/function-[function]/settings/updateConfiguration.svelte @@ -49,9 +49,10 @@ import InputSelectSearch from '$lib/elements/forms/inputSelectSearch.svelte'; import { installations } from '$lib/wizards/functions/store'; import { isSelfHosted } from '$lib/system'; - import { consoleVariables, isVcsEnabled } from '$routes/console/store'; + import { consoleVariables } from '$routes/console/store'; const functionId = $page.params.function; + const isVcsEnabled = $consoleVariables?._APP_VCS_ENABLED === true; let entrypoint: string; let commands: string; @@ -271,7 +272,7 @@ {:else} - {#if isSelfHosted && !isVcsEnabled($consoleVariables)} + {#if isSelfHosted && !isVcsEnabled} Installing Git to a self-hosted instance diff --git a/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte b/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte index 7a8809820..f76bbf6c3 100644 --- a/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte +++ b/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte @@ -6,8 +6,10 @@ import { Container } from '$lib/layout'; import { isSelfHosted } from '$lib/system'; import { connectTemplate } from '$lib/wizards/functions/cover.svelte'; - import { consoleVariables, isVcsEnabled } from '$routes/console/store'; + import { consoleVariables } from '$routes/console/store'; import { template } from './store'; + + const isVcsEnabled = $consoleVariables?._APP_VCS_ENABLED === true; @@ -60,7 +62,7 @@

{$template.tagline}

- {#if isSelfHosted && !isVcsEnabled($consoleVariables)} + {#if isSelfHosted && !isVcsEnabled} Cloning templates to a self-hosted instance diff --git a/src/routes/console/project-[project]/settings/updateInstallations.svelte b/src/routes/console/project-[project]/settings/updateInstallations.svelte index a61bd158b..a3c6d5273 100644 --- a/src/routes/console/project-[project]/settings/updateInstallations.svelte +++ b/src/routes/console/project-[project]/settings/updateInstallations.svelte @@ -29,7 +29,7 @@ import GitDisconnectModal from './GitDisconnectModal.svelte'; import dayjs from 'dayjs'; import { isSelfHosted } from '$lib/system'; - import { consoleVariables, isVcsEnabled } from '$routes/console/store'; + import { consoleVariables } from '$routes/console/store'; export let total: number; export let limit: number; @@ -40,6 +40,7 @@ let showGitDisconnect = false; let showInstallationDropdown: boolean[] = []; let selectedInstallation: Models.Installation; + const isVcsEnabled = $consoleVariables?._APP_VCS_ENABLED === true; function getInstallationLink(installation: Models.Installation) { switch (installation.provider) { @@ -180,7 +181,7 @@ bind:offset /> {:else} - {#if isSelfHosted && !isVcsEnabled($consoleVariables)} + {#if isSelfHosted && !isVcsEnabled} Installing Git to a self-hosted instance @@ -203,7 +204,7 @@