diff --git a/src/lib/components/domains/nameserverTable.svelte b/src/lib/components/domains/nameserverTable.svelte index 2dcd252c0..be059890f 100644 --- a/src/lib/components/domains/nameserverTable.svelte +++ b/src/lib/components/domains/nameserverTable.svelte @@ -7,7 +7,7 @@ export let verified = false; const nameserverList = $consoleVariables?._APP_DOMAINS_NAMESERVERS - ? $consoleVariables?._APP_DOMAINS_NAMESERVERS.split(',') + ? $consoleVariables?._APP_DOMAINS_NAMESERVERS?.split(',') : ['ns1.appwrite.io', 'ns2.appwrite.io']; diff --git a/src/lib/components/domains/recordTable.svelte b/src/lib/components/domains/recordTable.svelte index aefeada81..dba63ac6d 100644 --- a/src/lib/components/domains/recordTable.svelte +++ b/src/lib/components/domains/recordTable.svelte @@ -15,7 +15,7 @@ export let verified = false; export let variant: 'cname' | 'a' | 'aaaa'; - let subdomain = domain.split('.').slice(0, -2).join('.'); + let subdomain = domain?.split('.')?.slice(0, -2)?.join('.'); function setTarget() { switch (variant) { diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte index f484631bc..f11d13849 100644 --- a/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte +++ b/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte @@ -9,7 +9,6 @@ Tabs, Typography } from '@appwrite.io/pink-svelte'; - import VerificationFieldset from './verificationFieldset.svelte'; import { Button, Form } from '$lib/elements/forms'; import { sdk } from '$lib/stores/sdk'; import { organization } from '$lib/stores/organization'; @@ -28,8 +27,10 @@ let { data } = $props(); const ruleId = page.url.searchParams.get('rule'); + let isSubDomain = $derived(page.params.domain?.split('.')?.length >= 3); + let selectedTab: 'cname' | 'nameserver' | 'a' | 'aaaa' = $state( - !!$consoleVariables._APP_DOMAIN_TARGET_CNAME + !!$consoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain ? 'cname' : !!$consoleVariables._APP_DOMAIN_TARGET_A ? 'a' @@ -41,7 +42,6 @@ let routeBase = `${base}/project-${page.params.project}/sites/site-${page.params.site}/domains`; let isSubmitting = $state(writable(false)); - let isSubDomain = $derived(page.params.domain?.split('.')?.length >= 3); async function verify() { const isNewDomain = diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/verificationFieldset.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/verificationFieldset.svelte deleted file mode 100644 index 2e52df9a6..000000000 --- a/src/routes/(console)/project-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/verificationFieldset.svelte +++ /dev/null @@ -1,63 +0,0 @@ - - -
diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/domains/retryDomainModal.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/domains/retryDomainModal.svelte index cfd18874c..2eb893de3 100644 --- a/src/routes/(console)/project-[project]/sites/site-[site]/domains/retryDomainModal.svelte +++ b/src/routes/(console)/project-[project]/sites/site-[site]/domains/retryDomainModal.svelte @@ -7,16 +7,42 @@ import { Submit, trackEvent, trackError } from '$lib/actions/analytics'; import { Dependencies } from '$lib/constants'; import type { Models } from '@appwrite.io/console'; - import CnameTable from '$lib/components/domains/cnameTable.svelte'; + import { Divider, Tabs } from '@appwrite.io/pink-svelte'; + import { consoleVariables } from '$routes/(console)/store'; + import { isCloud } from '$lib/system'; + import { page } from '$app/state'; + import NameserverTable from '$lib/components/domains/nameserverTable.svelte'; + import RecordTable from '$lib/components/domains/recordTable.svelte'; - export let show = false; - export let selectedDomain: Models.ProxyRule; + let { + show = $bindable(false), + selectedDomain + }: { + show: boolean; + selectedDomain: Models.ProxyRule; + } = $props(); - let error = null; + let isSubDomain = $derived.by(() => + selectedDomain?.domain?.length ? selectedDomain?.domain?.split('.')?.length >= 3 : false + ); + let selectedTab: 'cname' | 'nameserver' | 'a' | 'aaaa' = $state( + !!$consoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain + ? 'cname' + : !!$consoleVariables._APP_DOMAIN_TARGET_A + ? 'a' + : !!$consoleVariables._APP_DOMAIN_TARGET_AAAA + ? 'aaaa' + : 'nameserver' + ); + + let verified = $state(false); + + let error = $state(null); async function retryDomain() { try { - await sdk.forProject.proxy.updateRuleVerification(selectedDomain.$id); + const domain = await sdk.forProject.proxy.updateRuleVerification(selectedDomain.$id); await invalidate(Dependencies.SITES_DOMAINS); + verified = domain.status === 'verified'; show = false; addNotification({ type: 'success', @@ -29,16 +55,55 @@ } } - $: if (!show) { - error = null; - } + $effect(() => { + if (!show) { + error = null; + } + });