From 1658101fc575cd5dc10ad030680dec96d20b4927 Mon Sep 17 00:00:00 2001 From: Darshan Date: Fri, 6 Jun 2025 14:05:51 +0530 Subject: [PATCH 01/18] fix: alert and alignment issues. --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- src/lib/commandCenter/panels/ai.svelte | 13 +++++++------ 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 1462d9839..1408c487e 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "@appwrite.io/pink-icons": "0.25.0", "@appwrite.io/pink-icons-svelte": "^2.0.0-RC.1", "@appwrite.io/pink-legacy": "^1.0.3", - "@appwrite.io/pink-svelte": "https://pkg.vc/-/@appwrite/@appwrite.io/pink-svelte@4e03f34", + "@appwrite.io/pink-svelte": "https://pkg.vc/-/@appwrite/@appwrite.io/pink-svelte@40bae6b", "@popperjs/core": "^2.11.8", "@sentry/sveltekit": "^8.38.0", "@stripe/stripe-js": "^3.5.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f0c7936b0..d45decef9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -24,8 +24,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 '@appwrite.io/pink-svelte': - specifier: https://pkg.vc/-/@appwrite/@appwrite.io/pink-svelte@4e03f34 - version: https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@4e03f34(svelte@5.25.3) + specifier: https://pkg.vc/-/@appwrite/@appwrite.io/pink-svelte@40bae6b + version: https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@40bae6b(svelte@5.25.3) '@popperjs/core': specifier: ^2.11.8 version: 2.11.8 @@ -281,8 +281,8 @@ packages: '@appwrite.io/pink-legacy@1.0.3': resolution: {integrity: sha512-GGde5fmPhs+s6/3aFeMPc/kKADG/gTFkYQSy6oBN8pK0y0XNCLrZZgBv+EBbdhwdtqVEWXa0X85Mv9w7jcIlwQ==} - '@appwrite.io/pink-svelte@https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@4e03f34': - resolution: {tarball: https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@4e03f34} + '@appwrite.io/pink-svelte@https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@40bae6b': + resolution: {tarball: https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@40bae6b} version: 2.0.0-RC.2 peerDependencies: svelte: ^4.0.0 @@ -3654,7 +3654,7 @@ snapshots: '@appwrite.io/pink-icons': 1.0.0 the-new-css-reset: 1.11.3 - '@appwrite.io/pink-svelte@https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@4e03f34(svelte@5.25.3)': + '@appwrite.io/pink-svelte@https://pkg.vc/-/@appwrite/%40appwrite.io%2Fpink-svelte@40bae6b(svelte@5.25.3)': dependencies: '@appwrite.io/pink-icons-svelte': 2.0.0-RC.1(svelte@5.25.3) '@floating-ui/dom': 1.6.13 diff --git a/src/lib/commandCenter/panels/ai.svelte b/src/lib/commandCenter/panels/ai.svelte index 9bda77da8..e44d0e28e 100644 --- a/src/lib/commandCenter/panels/ai.svelte +++ b/src/lib/commandCenter/panels/ai.svelte @@ -167,13 +167,10 @@
{ $preferences.hideAiDisclaimer = true; - }}> - - We collect user responses to refine our experimental AI feature. - - + }} />
{/if} @@ -229,8 +226,11 @@
{ handleSubmit(e); }}> @@ -238,6 +238,7 @@ Date: Sat, 7 Jun 2025 15:42:09 +0530 Subject: [PATCH 02/18] fix: unable to add domain if apex already exists! --- .../domains/add-domain/+page.svelte | 17 ++++++++++------- .../settings/domains/add-domain/+page.svelte | 18 +++++++++++------- .../domains/add-domain/+page.svelte | 16 ++++++++++------ 3 files changed, 31 insertions(+), 20 deletions(-) diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte index 3af8bb2e4..4390e1993 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte @@ -48,18 +48,21 @@ async function addDomain() { const apexDomain = getApexDomain(domainName); - let domain = data.domains?.domains.find((d) => d.domain === apexDomain); + let domain = data.domains?.domains.find((d: Models.Domain) => d.domain === apexDomain); if (apexDomain && !domain && isCloud) { try { domain = await sdk.forConsole.domains.create($project.teamId, apexDomain); } catch (error) { - addNotification({ - type: 'error', - message: error.message - }); - - return; + // apex might already be added on organization level, skip. + const alreadyAdded = error?.type === 'domain_already_exists'; + if (!alreadyAdded) { + addNotification({ + type: 'error', + message: error.message + }); + return; + } } } diff --git a/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte index b9e50a3e8..ad574bf26 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte @@ -12,6 +12,7 @@ import { isCloud } from '$lib/system'; import { project } from '$routes/(console)/project-[region]-[project]/store'; import { getApexDomain } from '$lib/helpers/tlds'; + import type { Models } from '@appwrite.io/console'; const routeBase = `${base}/project-${page.params.region}-${page.params.project}/settings/domains`; @@ -29,18 +30,21 @@ async function addDomain() { const apexDomain = getApexDomain(domainName); - let domain = data.domains?.domains.find((d) => d.domain === apexDomain); + let domain = data.domains?.domains.find((d: Models.Domain) => d.domain === apexDomain); if (apexDomain && !domain && isCloud) { try { domain = await sdk.forConsole.domains.create($project.teamId, apexDomain); } catch (error) { - addNotification({ - type: 'error', - message: error.message - }); - - return; + // apex might already be added on organization level, skip. + const alreadyAdded = error?.type === 'domain_already_exists'; + if (!alreadyAdded) { + addNotification({ + type: 'error', + message: error.message + }); + return; + } } } diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte index ea8388747..fd7e21020 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte @@ -53,17 +53,21 @@ async function addDomain() { const apexDomain = getApexDomain(domainName); - let domain = data.domains?.domains.find((d) => d.domain === apexDomain); + let domain = data.domains?.domains.find((d: Models.Domain) => d.domain === apexDomain); if (apexDomain && !domain && isCloud) { try { domain = await sdk.forConsole.domains.create($project.teamId, apexDomain); } catch (error) { - addNotification({ - type: 'error', - message: error.message - }); - return; + // apex might already be added on organization level, skip. + const alreadyAdded = error?.type === 'domain_already_exists'; + if (!alreadyAdded) { + addNotification({ + type: 'error', + message: error.message + }); + return; + } } } From 8f0c9027b3f4d15f6d5a084acc6196e7f700d138 Mon Sep 17 00:00:00 2001 From: ChiragAgg5k Date: Mon, 9 Jun 2025 10:38:52 +0530 Subject: [PATCH 03/18] fix: add optional chaining for organization ID --- .../(console)/organization-[organization]/header.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/routes/(console)/organization-[organization]/header.svelte b/src/routes/(console)/organization-[organization]/header.svelte index 86fe4a0c9..c9185b305 100644 --- a/src/routes/(console)/organization-[organization]/header.svelte +++ b/src/routes/(console)/organization-[organization]/header.svelte @@ -18,7 +18,7 @@ } from '$lib/stores/roles'; import { GRACE_PERIOD_OVERRIDE, isCloud } from '$lib/system'; import { IconGithub, IconPlus } from '@appwrite.io/pink-icons-svelte'; - import { Icon, Tooltip, Typography, Layout, Badge } from '@appwrite.io/pink-svelte'; + import { Badge, Icon, Layout, Tooltip, Typography } from '@appwrite.io/pink-svelte'; let areMembersLimited: boolean; $: organization.subscribe(() => { @@ -75,7 +75,7 @@ ].filter((tab) => !tab.disabled); -{#if $organization.$id} +{#if $organization?.$id} From a51ff50bd86e8a2ab3826afbd48ac5ce24cc44a9 Mon Sep 17 00:00:00 2001 From: ChiragAgg5k Date: Mon, 9 Jun 2025 11:13:54 +0530 Subject: [PATCH 04/18] fix: update organization store usage to improve type safety --- .../organization-[organization]/header.svelte | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/routes/(console)/organization-[organization]/header.svelte b/src/routes/(console)/organization-[organization]/header.svelte index c9185b305..126503c56 100644 --- a/src/routes/(console)/organization-[organization]/header.svelte +++ b/src/routes/(console)/organization-[organization]/header.svelte @@ -8,7 +8,7 @@ import { isTabSelected } from '$lib/helpers/load'; import { Cover } from '$lib/layout'; import { daysLeftInTrial, getServiceLimit, plansInfo, readOnly } from '$lib/stores/billing'; - import { members, newMemberModal, organization } from '$lib/stores/organization'; + import { members, newMemberModal, type Organization } from '$lib/stores/organization'; import { canSeeBilling, canSeeProjects, @@ -21,16 +21,18 @@ import { Badge, Icon, Layout, Tooltip, Typography } from '@appwrite.io/pink-svelte'; let areMembersLimited: boolean; - $: organization.subscribe(() => { + + $: { const limit = getServiceLimit('members') || Infinity; const isLimited = limit !== 0 && limit < Infinity; areMembersLimited = isCloud && (($readOnly && !GRACE_PERIOD_OVERRIDE) || (isLimited && $members?.total >= limit)); - }); + } + $: organization = page.data.organization as Organization; $: avatars = $members.memberships?.map((m) => m.userName || m.userEmail) ?? []; - $: organizationId = $organization?.$id ?? page.params.organization; + $: organizationId = organization?.$id ?? page.params.organization; $: path = `${base}/organization-${organizationId}`; $: tabs = [ { @@ -75,26 +77,26 @@ ].filter((tab) => !tab.disabled); -{#if $organization?.$id} +{#if organization?.$id} - {$organization.name} + {organization.name} - {#if isCloud && $organization?.billingPlan === BillingPlan.GITHUB_EDUCATION} + {#if isCloud && organization?.billingPlan === BillingPlan.GITHUB_EDUCATION} - {:else if isCloud && $organization?.billingPlan === BillingPlan.FREE} + {:else if isCloud && organization?.billingPlan === BillingPlan.FREE} {/if} - {#if isCloud && $organization?.billingTrialStartDate && $daysLeftInTrial > 0 && $organization.billingPlan !== BillingPlan.FREE && $plansInfo.get($organization.billingPlan)?.trialDays} + {#if isCloud && organization?.billingTrialStartDate && $daysLeftInTrial > 0 && organization.billingPlan !== BillingPlan.FREE && $plansInfo.get(organization.billingPlan)?.trialDays} {`Your trial ends on ${toLocaleDate( - $organization.billingStartDate + organization.billingStartDate )}. ${$daysLeftInTrial} days remaining.`} From ae1f4b0f744295f53a96ad7cd4dca49d1d90777f Mon Sep 17 00:00:00 2001 From: ChiragAgg5k Date: Mon, 9 Jun 2025 11:15:35 +0530 Subject: [PATCH 05/18] fix: simplify organization ID retrieval in header component --- src/routes/(console)/organization-[organization]/header.svelte | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/routes/(console)/organization-[organization]/header.svelte b/src/routes/(console)/organization-[organization]/header.svelte index 126503c56..d4b2d16c9 100644 --- a/src/routes/(console)/organization-[organization]/header.svelte +++ b/src/routes/(console)/organization-[organization]/header.svelte @@ -32,8 +32,7 @@ $: organization = page.data.organization as Organization; $: avatars = $members.memberships?.map((m) => m.userName || m.userEmail) ?? []; - $: organizationId = organization?.$id ?? page.params.organization; - $: path = `${base}/organization-${organizationId}`; + $: path = `${base}/organization-${organization.$id}`; $: tabs = [ { href: path, From 4829547017c2326a0b2c7687d79a21692063f7ae Mon Sep 17 00:00:00 2001 From: Darshan Date: Mon, 9 Jun 2025 16:27:11 +0530 Subject: [PATCH 06/18] fix: disable until accepted. --- src/routes/(public)/(guest)/register/+page.svelte | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/routes/(public)/(guest)/register/+page.svelte b/src/routes/(public)/(guest)/register/+page.svelte index 494918d8c..e166d5ffd 100644 --- a/src/routes/(public)/(guest)/register/+page.svelte +++ b/src/routes/(public)/(guest)/register/+page.svelte @@ -107,7 +107,7 @@ helper="Password must be at least 8 characters long" required bind:value={pass} /> - + By registering, you agree that you have read, understand, and acknowledge our General Terms of Use. - + + + {#if isCloud} or - From bbd235b7911fdd0e7cb420b0f63abeae51569f38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Mon, 9 Jun 2025 13:06:38 +0200 Subject: [PATCH 07/18] Fix network subdomains --- .../sites/site-[site]/domains/add-domain/+page.svelte | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte index ea8388747..3d8e175b6 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte @@ -22,7 +22,7 @@ import { writable } from 'svelte/store'; import { onMount } from 'svelte'; import { ConnectRepoModal } from '$lib/components/git/index.js'; - import { project } from '$routes/(console)/project-[region]-[project]/store'; + import { project, regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; import { isCloud } from '$lib/system'; import { getApexDomain } from '$lib/helpers/tlds'; @@ -55,7 +55,9 @@ const apexDomain = getApexDomain(domainName); let domain = data.domains?.domains.find((d) => d.domain === apexDomain); - if (apexDomain && !domain && isCloud) { + const isSiteDomain = domain.endsWith($regionalConsoleVariables._APP_DOMAIN_SITES); + + if (apexDomain && !domain && isCloud && !isSiteDomain) { try { domain = await sdk.forConsole.domains.create($project.teamId, apexDomain); } catch (error) { From c789904bcbed2d5c0e630d5ad0daea922a6f2d77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Mon, 9 Jun 2025 13:18:15 +0200 Subject: [PATCH 08/18] QA fixes --- .../sites/site-[site]/domains/add-domain/+page.svelte | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte index 3d8e175b6..320455a87 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte @@ -22,7 +22,10 @@ import { writable } from 'svelte/store'; import { onMount } from 'svelte'; import { ConnectRepoModal } from '$lib/components/git/index.js'; - import { project, regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; + import { + project, + regionalConsoleVariables + } from '$routes/(console)/project-[region]-[project]/store'; import { isCloud } from '$lib/system'; import { getApexDomain } from '$lib/helpers/tlds'; @@ -55,8 +58,8 @@ const apexDomain = getApexDomain(domainName); let domain = data.domains?.domains.find((d) => d.domain === apexDomain); - const isSiteDomain = domain.endsWith($regionalConsoleVariables._APP_DOMAIN_SITES); - + const isSiteDomain = domainName.endsWith($regionalConsoleVariables._APP_DOMAIN_SITES); + if (apexDomain && !domain && isCloud && !isSiteDomain) { try { domain = await sdk.forConsole.domains.create($project.teamId, apexDomain); From 4dc904d115dd836b6d1264f8cccc1160ef2e3eb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Mon, 9 Jun 2025 13:33:30 +0200 Subject: [PATCH 09/18] Update src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte --- .../sites/site-[site]/domains/add-domain/+page.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte index 320455a87..84c7ebacc 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte @@ -60,7 +60,7 @@ const isSiteDomain = domainName.endsWith($regionalConsoleVariables._APP_DOMAIN_SITES); - if (apexDomain && !domain && isCloud && !isSiteDomain) { + if (isCloud && apexDomain && !domain && !isSiteDomain) { try { domain = await sdk.forConsole.domains.create($project.teamId, apexDomain); } catch (error) { From c7f179294eba6f78f4a107066ce4168c2eb0678d Mon Sep 17 00:00:00 2001 From: Arman Date: Mon, 9 Jun 2025 13:49:31 +0200 Subject: [PATCH 10/18] chore: change default project name --- .../organization-[organization]/createProjectCloud.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/(console)/organization-[organization]/createProjectCloud.svelte b/src/routes/(console)/organization-[organization]/createProjectCloud.svelte index fa8dd9975..075f3d4c0 100644 --- a/src/routes/(console)/organization-[organization]/createProjectCloud.svelte +++ b/src/routes/(console)/organization-[organization]/createProjectCloud.svelte @@ -17,7 +17,7 @@ export let showCreateProjectCloud: boolean; let id: string = null; - let name: string = 'Appwrite project'; + let name: string = 'New project'; let region: string = Region.Fra; let error: string = null; From 732a5b74e28236ea28524acf53d085ae6e65d2ee Mon Sep 17 00:00:00 2001 From: Arman Date: Mon, 9 Jun 2025 13:49:59 +0200 Subject: [PATCH 11/18] chore: change default project name --- .../(console)/organization-[organization]/createProject.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/(console)/organization-[organization]/createProject.svelte b/src/routes/(console)/organization-[organization]/createProject.svelte index 2e45d77c2..5e70a1acd 100644 --- a/src/routes/(console)/organization-[organization]/createProject.svelte +++ b/src/routes/(console)/organization-[organization]/createProject.svelte @@ -20,7 +20,7 @@ let error: string; let showCustomId = false; let disabled: boolean = false; - let name: string = 'Appwrite project'; + let name: string = 'New project'; async function create() { try { From e0745b920bab164ff9f5b51f3572fe7e7f6878da Mon Sep 17 00:00:00 2001 From: Darshan Date: Mon, 9 Jun 2025 18:13:00 +0530 Subject: [PATCH 12/18] fix: domains showing on unrelated resources. --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- .../domains/add-domain/+page.svelte | 12 +++++++++--- .../site-[site]/domains/add-domain/+page.svelte | 11 +++++++++-- 4 files changed, 24 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 1408c487e..0fe8f5a25 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ }, "dependencies": { "@ai-sdk/svelte": "^1.1.24", - "@appwrite.io/console": "https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@e190a19", + "@appwrite.io/console": "https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@a5e5564", "@appwrite.io/pink-icons": "0.25.0", "@appwrite.io/pink-icons-svelte": "^2.0.0-RC.1", "@appwrite.io/pink-legacy": "^1.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d45decef9..cac4e0adc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: specifier: ^1.1.24 version: 1.1.24(svelte@5.25.3)(zod@3.24.3) '@appwrite.io/console': - specifier: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@e190a19 - version: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@e190a19 + specifier: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@a5e5564 + version: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@a5e5564 '@appwrite.io/pink-icons': specifier: 0.25.0 version: 0.25.0 @@ -257,8 +257,8 @@ packages: '@analytics/type-utils@0.6.2': resolution: {integrity: sha512-TD+xbmsBLyYy/IxFimW/YL/9L2IEnM7/EoV9Aeh56U64Ify8o27HJcKjo38XY9Tcn0uOq1AX3thkKgvtWvwFQg==} - '@appwrite.io/console@https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@e190a19': - resolution: {tarball: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@e190a19} + '@appwrite.io/console@https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@a5e5564': + resolution: {tarball: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@a5e5564} version: 1.8.0 '@appwrite.io/pink-icons-svelte@2.0.0-RC.1': @@ -3635,7 +3635,7 @@ snapshots: '@analytics/type-utils@0.6.2': {} - '@appwrite.io/console@https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@e190a19': {} + '@appwrite.io/console@https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@a5e5564': {} '@appwrite.io/pink-icons-svelte@2.0.0-RC.1(svelte@5.25.3)': dependencies: diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte index 4390e1993..d2ded628f 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte @@ -5,13 +5,13 @@ import { Wizard } from '$lib/layout'; import { addNotification } from '$lib/stores/notifications'; import { sdk } from '$lib/stores/sdk'; - import { Fieldset, Layout, Tooltip, Icon, Input, Alert } from '@appwrite.io/pink-svelte'; + import { Fieldset, Icon, Tooltip } from '@appwrite.io/pink-svelte'; import { goto, invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sortBranches } from '$lib/stores/vcs'; import { IconInfo } from '@appwrite.io/pink-icons-svelte'; import { LabelCard } from '$lib/components'; - import { Runtime, StatusCode, type Models } from '@appwrite.io/console'; + import { type Models, ProxyResourceType, Runtime, StatusCode } from '@appwrite.io/console'; import { statusCodeOptions } from '$lib/stores/domains'; import { writable } from 'svelte/store'; import { onMount } from 'svelte'; @@ -75,7 +75,13 @@ } else if (behaviour === 'REDIRECT') { rule = await sdk .forProject(page.params.region, page.params.project) - .proxy.createRedirectRule(domainName, redirect, statusCode); + .proxy.createRedirectRule( + domainName, + redirect, + statusCode, + page.params.function, + ProxyResourceType.Function + ); } else if (behaviour === 'ACTIVE') { rule = await sdk .forProject(page.params.region, page.params.project) diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte index 5ee280984..6152f2718 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte @@ -5,7 +5,7 @@ import { Wizard } from '$lib/layout'; import { addNotification } from '$lib/stores/notifications'; import { sdk } from '$lib/stores/sdk'; - import { Fieldset, Layout, Tooltip, Icon, Input, Alert } from '@appwrite.io/pink-svelte'; + import { Fieldset, Icon, Tooltip } from '@appwrite.io/pink-svelte'; import { goto, invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sortBranches } from '$lib/stores/vcs'; @@ -16,6 +16,7 @@ BuildRuntime, Framework, type Models, + ProxyResourceType, StatusCode } from '@appwrite.io/console'; import { statusCodeOptions } from '$lib/stores/domains'; @@ -85,7 +86,13 @@ } else if (behaviour === 'REDIRECT') { rule = await sdk .forProject(page.params.region, page.params.project) - .proxy.createRedirectRule(domainName, redirect, statusCode); + .proxy.createRedirectRule( + domainName, + redirect, + statusCode, + page.params.site, + ProxyResourceType.Site + ); } else if (behaviour === 'ACTIVE') { rule = await sdk .forProject(page.params.region, page.params.project) From ca526b6cf842317a4538db0eb26561dfc11a7969 Mon Sep 17 00:00:00 2001 From: Darshan Date: Mon, 9 Jun 2025 18:17:18 +0530 Subject: [PATCH 13/18] fix: the dumb IDE removed the imports! --- .../function-[function]/domains/add-domain/+page.svelte | 2 +- .../sites/site-[site]/domains/add-domain/+page.svelte | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte index d2ded628f..66faf1e8d 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/+page.svelte @@ -5,7 +5,7 @@ import { Wizard } from '$lib/layout'; import { addNotification } from '$lib/stores/notifications'; import { sdk } from '$lib/stores/sdk'; - import { Fieldset, Icon, Tooltip } from '@appwrite.io/pink-svelte'; + import { Fieldset, Layout, Tooltip, Icon, Input, Alert } from '@appwrite.io/pink-svelte'; import { goto, invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sortBranches } from '$lib/stores/vcs'; diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte index 6152f2718..af66889d3 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/+page.svelte @@ -5,7 +5,7 @@ import { Wizard } from '$lib/layout'; import { addNotification } from '$lib/stores/notifications'; import { sdk } from '$lib/stores/sdk'; - import { Fieldset, Icon, Tooltip } from '@appwrite.io/pink-svelte'; + import { Fieldset, Layout, Tooltip, Icon, Input, Alert } from '@appwrite.io/pink-svelte'; import { goto, invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sortBranches } from '$lib/stores/vcs'; From 4bb3d282f0f1b947a0fdb060bb7be9d0f419eb2a Mon Sep 17 00:00:00 2001 From: Darshan Date: Mon, 9 Jun 2025 18:31:44 +0530 Subject: [PATCH 14/18] fix: queries. --- .../sites/site-[site]/domains/+page.ts | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/+page.ts b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/+page.ts index ebe497444..a00f0c4b8 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/+page.ts +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/+page.ts @@ -26,18 +26,10 @@ export const load = async ({ params, depends, url, route }) => { .forProject(params.region, params.project) .proxy.listRules( [ - Query.or([ - Query.and([ - Query.equal('type', RuleType.REDIRECT), - Query.equal('trigger', RuleTrigger.MANUAL) - ]), - Query.and([ - Query.equal('type', RuleType.DEPLOYMENT), - Query.equal('trigger', RuleTrigger.MANUAL), - Query.equal('deploymentResourceType', DeploymentResourceType.SITE), - Query.equal('deploymentResourceId', params.site) - ]) - ]), + Query.equal('type', [RuleType.DEPLOYMENT, RuleType.REDIRECT]), + Query.equal('deploymentResourceType', DeploymentResourceType.SITE), + Query.equal('deploymentResourceId', params.site), + Query.equal('trigger', RuleTrigger.MANUAL), Query.limit(limit), Query.offset(offset), Query.orderDesc(''), From f4e81f539fd9a69b05ee57edf6c1c2324d6c76d9 Mon Sep 17 00:00:00 2001 From: Arman Date: Mon, 9 Jun 2025 17:14:17 +0200 Subject: [PATCH 15/18] fix: navbar dropdown (close on esc) --- src/lib/components/navbar.svelte | 169 +++++++++++++------------------ 1 file changed, 69 insertions(+), 100 deletions(-) diff --git a/src/lib/components/navbar.svelte b/src/lib/components/navbar.svelte index 004909298..435037fd6 100644 --- a/src/lib/components/navbar.svelte +++ b/src/lib/components/navbar.svelte @@ -23,14 +23,13 @@ Navbar, Icon, Layout, - Link, Tooltip, - Card, ActionMenu, ToggleButton, Button, Avatar, - Typography + Typography, + Popover } from '@appwrite.io/pink-svelte'; import { toggleCommandCenter } from '$lib/commandCenter/commandCenter.svelte'; import { @@ -209,91 +208,79 @@ {isMac() ? '⌘ + K' : 'Ctrl + K'} - { - showAccountMenu = !showAccountMenu; - shouldAnimateThemeToggle = false; - if (showAccountMenu) { - trackEvent(Click.MenuDropDownClick); - } - }}> -
+ +
-
- {#if showAccountMenu} - @@ -405,24 +392,6 @@ } } - .account-container { - position: absolute; - right: var(--space-7); - top: var(--base-44); - width: 244px; - display: flex; - z-index: 1; - } - - .account-backdrop { - position: absolute; - left: 0; - top: 0; - width: 100vw; - height: 100vh; - background-color: transparent; - } - /* The default drop list has a max-inline width of 280px, which squeezes the support modal. */ :global(.extended-width) { max-inline-size: none; From 00a2741647d11dd2c209a682793ca69e918a5048 Mon Sep 17 00:00:00 2001 From: Damodar Lohani Date: Tue, 10 Jun 2025 07:22:30 +0000 Subject: [PATCH 16/18] Fix sidebar offset --- src/lib/components/billing/gradientBanner.svelte | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/lib/components/billing/gradientBanner.svelte b/src/lib/components/billing/gradientBanner.svelte index 9d7d6dfe2..92923bae5 100644 --- a/src/lib/components/billing/gradientBanner.svelte +++ b/src/lib/components/billing/gradientBanner.svelte @@ -22,8 +22,7 @@ const alertHeight = container?.getBoundingClientRect()?.height || 0; const { header, sidebar, content } = queryLayoutElements(); const headerHeight = header?.getBoundingClientRect().height || 0; - const offset = alertHeight + (!isTabletViewport && header ? headerHeight : 0); - + const offset = alertHeight + (!$isTabletViewport && header ? headerHeight : 0); if (header) header.style.top = `${alertHeight}px`; if (sidebar) { sidebar.style.top = `${offset}px`; From 81b4a9deb8eb7a4d0e6dcd04da15a6f38c25dc38 Mon Sep 17 00:00:00 2001 From: Damodar Lohani Date: Tue, 10 Jun 2025 07:31:02 +0000 Subject: [PATCH 17/18] fix check failing --- src/lib/stores/billing.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/lib/stores/billing.ts b/src/lib/stores/billing.ts index 5719023c0..bbc6c07b5 100644 --- a/src/lib/stores/billing.ts +++ b/src/lib/stores/billing.ts @@ -275,6 +275,7 @@ export function isServiceLimited(serviceId: PlanServices, plan: Tier, total: num } export function checkForEnterpriseTrial(org: Organization) { + if (!org || !org.billingNextInvoiceDate) return; if (calculateEnterpriseTrial(org) > 0) { headerAlert.add({ id: 'teamEnterpriseTrial', @@ -533,9 +534,9 @@ export async function checkForNewDevUpgradePro(org: Organization) { const now = new Date().getTime(); const account = get(user); const accountCreated = new Date(account.$createdAt).getTime(); - if (now - accountCreated < 1000 * 60 * 60 * 24 * 7) return; - const isDismissed = !!localStorage.getItem('newDevUpgradePro'); - if (isDismissed) return; + // if (now - accountCreated < 1000 * 60 * 60 * 24 * 7) return; + // const isDismissed = !!localStorage.getItem('newDevUpgradePro'); + // if (isDismissed) return; // check if coupon already applied try { await sdk.forConsole.billing.getCouponAccount(NEW_DEV_PRO_UPGRADE_COUPON); From b8e22816ce9201212cb28fda58855dde42d0f209 Mon Sep 17 00:00:00 2001 From: Damodar Lohani Date: Tue, 10 Jun 2025 07:33:32 +0000 Subject: [PATCH 18/18] undo wrong commit --- src/lib/stores/billing.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/stores/billing.ts b/src/lib/stores/billing.ts index bbc6c07b5..c68f336c1 100644 --- a/src/lib/stores/billing.ts +++ b/src/lib/stores/billing.ts @@ -534,9 +534,9 @@ export async function checkForNewDevUpgradePro(org: Organization) { const now = new Date().getTime(); const account = get(user); const accountCreated = new Date(account.$createdAt).getTime(); - // if (now - accountCreated < 1000 * 60 * 60 * 24 * 7) return; - // const isDismissed = !!localStorage.getItem('newDevUpgradePro'); - // if (isDismissed) return; + if (now - accountCreated < 1000 * 60 * 60 * 24 * 7) return; + const isDismissed = !!localStorage.getItem('newDevUpgradePro'); + if (isDismissed) return; // check if coupon already applied try { await sdk.forConsole.billing.getCouponAccount(NEW_DEV_PRO_UPGRADE_COUPON);