diff --git a/src/lib/components/domains/cnameTable.svelte b/src/lib/components/domains/cnameTable.svelte index 9880f5ebfe..ed7c8bd5ed 100644 --- a/src/lib/components/domains/cnameTable.svelte +++ b/src/lib/components/domains/cnameTable.svelte @@ -1,6 +1,5 @@ diff --git a/src/lib/components/domains/recordTable.svelte b/src/lib/components/domains/recordTable.svelte index f099fa0032..bf7fa7abfb 100644 --- a/src/lib/components/domains/recordTable.svelte +++ b/src/lib/components/domains/recordTable.svelte @@ -1,6 +1,5 @@ diff --git a/src/lib/components/git/connectBehaviour.svelte b/src/lib/components/git/connectBehaviour.svelte index ae0da51eb7..5a1ad56cd4 100644 --- a/src/lib/components/git/connectBehaviour.svelte +++ b/src/lib/components/git/connectBehaviour.svelte @@ -1,9 +1,9 @@ diff --git a/src/lib/components/git/connectGit.svelte b/src/lib/components/git/connectGit.svelte index 9dbca0fc7b..a44fe5dab2 100644 --- a/src/lib/components/git/connectGit.svelte +++ b/src/lib/components/git/connectGit.svelte @@ -1,14 +1,14 @@ diff --git a/src/lib/components/git/deploymentDomains.svelte b/src/lib/components/git/deploymentDomains.svelte index f588cc57c4..cae9f098a6 100644 --- a/src/lib/components/git/deploymentDomains.svelte +++ b/src/lib/components/git/deploymentDomains.svelte @@ -2,10 +2,10 @@ import { Trim } from '$lib/components'; import { Link } from '$lib/elements'; import { Button } from '$lib/elements/forms'; - import { protocol } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { IconExternalLink, IconQrcode } from '@appwrite.io/pink-icons-svelte'; import { ActionMenu, Icon, Layout, Popover, Tag, Typography } from '@appwrite.io/pink-svelte'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; let { domains, @@ -31,7 +31,7 @@ {#if domains?.total} - + @@ -51,7 +51,7 @@ {#each sortedDomains as rule, i} {#if i !== 0} diff --git a/src/lib/stores/sdk.ts b/src/lib/stores/sdk.ts index 00acfef722..7daa433771 100644 --- a/src/lib/stores/sdk.ts +++ b/src/lib/stores/sdk.ts @@ -64,14 +64,39 @@ const getSubdomain = (region?: string) => { } }; +function createConsoleSdk(client: Client) { + return { + client, + account: new Account(client), + avatars: new Avatars(client), + functions: new Functions(client), + health: new Health(client), + locale: new Locale(client), + projects: new Projects(client), + teams: new Teams(client), + users: new Users(client), + migrations: new Migrations(client), + console: new Console(client), + assistant: new Assistant(client), + billing: new Billing(client), + sources: new Sources(client), + sites: new Sites(client), + domains: new Domains(client) + }; +} + const endpoint = getApiEndpoint(); const clientConsole = new Client(); +const scopedConsoleClient = new Client(); + const clientProject = new Client(); const clientRealtime = new Client(); if (!building) { clientConsole.setEndpoint(endpoint).setProject('console'); + scopedConsoleClient.setMode(endpoint).setProject('console'); + clientRealtime.setEndpoint(endpoint).setProject('console'); clientProject.setEndpoint(endpoint).setMode('admin'); clientRealtime.setEndpoint(endpoint).setProject('console'); @@ -110,24 +135,17 @@ export const realtime = { }; export const sdk = { - forConsole: { - client: clientConsole, - account: new Account(clientConsole), - avatars: new Avatars(clientConsole), - functions: new Functions(clientConsole), - health: new Health(clientConsole), - locale: new Locale(clientConsole), - projects: new Projects(clientConsole), - teams: new Teams(clientConsole), - users: new Users(clientConsole), - migrations: new Migrations(clientConsole), - console: new Console(clientConsole), - assistant: new Assistant(clientConsole), - billing: new Billing(clientConsole), - sources: new Sources(clientConsole), - sites: new Sites(clientConsole), - domains: new Domains(clientConsole) + forConsole: createConsoleSdk(clientConsole), + + forConsoleIn(region: string) { + const regionAwareEndpoint = getApiEndpoint(region); + if (regionAwareEndpoint !== scopedConsoleClient.config.endpoint) { + scopedConsoleClient.setEndpoint(regionAwareEndpoint); + } + + return createConsoleSdk(scopedConsoleClient); }, + forProject(region: string, projectId: string) { const endpoint = getApiEndpoint(region); if (endpoint !== clientProject.config.endpoint) { diff --git a/src/routes/(console)/project-[region]-[project]/+layout.ts b/src/routes/(console)/project-[region]-[project]/+layout.ts index f90abed153..d9a79cbc1e 100644 --- a/src/routes/(console)/project-[region]-[project]/+layout.ts +++ b/src/routes/(console)/project-[region]-[project]/+layout.ts @@ -19,9 +19,10 @@ export const load: LayoutLoad = async ({ params, depends }) => { try { const project = await sdk.forConsole.projects.get(params.project); - const [organization, prefs, _] = await Promise.all([ + const [organization, prefs, regionalConsoleVariables, _] = await Promise.all([ sdk.forConsole.teams.get(project.teamId) as Promise, sdk.forConsole.account.getPrefs(), + sdk.forConsoleIn(project.region).console.variables(), loadAvailableRegions(project.teamId) ]); if (prefs?.organization !== project.teamId) { @@ -54,6 +55,7 @@ export const load: LayoutLoad = async ({ params, depends }) => { return { project, organization, + regionalConsoleVariables, roles, scopes, currentPlan diff --git a/src/routes/(console)/project-[region]-[project]/functions/create-function/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/create-function/+page.svelte index f032d7f2b6..e902c28569 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/create-function/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/create-function/+page.svelte @@ -5,7 +5,6 @@ import { Click, trackEvent } from '$lib/actions/analytics'; import type { Models } from '@appwrite.io/console'; import { isSelfHosted } from '$lib/system'; - import { consoleVariables } from '$routes/(console)/store'; import { afterNavigate, goto } from '$app/navigation'; import { installation, repository } from '$lib/stores/vcs'; import { Repositories } from '$lib/components/git'; @@ -22,10 +21,11 @@ import Wizard from '$lib/layout/wizard.svelte'; import { Link } from '$lib/elements'; import { Button } from '$lib/elements/forms'; + import { regionalConsoleVariables } from '../../store'; export let data; - const isVcsEnabled = $consoleVariables?._APP_VCS_ENABLED === true; + const isVcsEnabled = $regionalConsoleVariables?._APP_VCS_ENABLED === true; const wizardBase = `${base}/project-${page.params.region}-${page.params.project}/functions`; let previousPage: string = wizardBase; afterNavigate(({ from }) => { diff --git a/src/routes/(console)/project-[region]-[project]/functions/create-function/manual/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/create-function/manual/+page.svelte index 5c1622d82a..bd7f4106bb 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/create-function/manual/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/create-function/manual/+page.svelte @@ -11,7 +11,6 @@ import { get, writable } from 'svelte/store'; import { ID, Runtime } from '@appwrite.io/console'; import type { Models } from '@appwrite.io/console'; - import { consoleVariables } from '$routes/(console)/store'; import Details from '../(components)/details.svelte'; import Aside from '../(components)/aside.svelte'; import { iconPath } from '$lib/stores/app'; @@ -19,6 +18,7 @@ import { IconInfo } from '@appwrite.io/pink-icons-svelte'; import Configuration from './configuration.svelte'; import { getIconFromRuntime } from '$lib/stores/runtimes'; + import { regionalConsoleVariables } from '../../../store'; import { InvalidFileType, removeFile } from '$lib/helpers/files'; import { isCloud } from '$lib/system'; import { humanFileSize } from '$lib/helpers/sizeConvertion'; @@ -89,7 +89,7 @@ await sdk .forProject(page.params.region, page.params.project) .proxy.createFunctionRule( - `${ID.unique()}.${$consoleVariables._APP_DOMAIN_FUNCTIONS}`, + `${ID.unique()}.${$regionalConsoleVariables._APP_DOMAIN_FUNCTIONS}`, func.$id ); @@ -164,7 +164,7 @@ $: maxSize = isCloud && $currentPlan ? $currentPlan.deploymentSize * 1000000 - : $consoleVariables._APP_COMPUTE_SIZE_LIMIT; // already in MB + : $regionalConsoleVariables._APP_COMPUTE_SIZE_LIMIT; // already in MB $: readableMaxSize = humanFileSize(maxSize); diff --git a/src/routes/(console)/project-[region]-[project]/functions/create-function/repository-[repository]/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/create-function/repository-[repository]/+page.svelte index d6c729b3e2..4414e0ddcf 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/create-function/repository-[repository]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/create-function/repository-[repository]/+page.svelte @@ -13,7 +13,6 @@ import { ID, Runtime, VCSDeploymentType } from '@appwrite.io/console'; import type { Models } from '@appwrite.io/console'; import { onMount } from 'svelte'; - import { consoleVariables } from '$routes/(console)/store'; import Details from '../(components)/details.svelte'; import ProductionBranchFieldset from '$lib/components/git/productionBranchFieldset.svelte'; import Configuration from './configuration.svelte'; @@ -22,6 +21,7 @@ import { Dependencies } from '$lib/constants'; import RepoCard from './repoCard.svelte'; import { getIconFromRuntime } from '$lib/stores/runtimes'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let data; @@ -92,7 +92,7 @@ await sdk .forProject(page.params.region, page.params.project) .proxy.createFunctionRule( - `${ID.unique()}.${$consoleVariables._APP_DOMAIN_FUNCTIONS}`, + `${ID.unique()}.${$regionalConsoleVariables._APP_DOMAIN_FUNCTIONS}`, func.$id ); diff --git a/src/routes/(console)/project-[region]-[project]/functions/create-function/template-[template]/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/create-function/template-[template]/+page.svelte index 1def9654f0..39646b9062 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/create-function/template-[template]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/create-function/template-[template]/+page.svelte @@ -22,7 +22,6 @@ Repositories, RepositoryBehaviour } from '$lib/components/git'; - import { consoleVariables } from '$routes/(console)/store'; import Details from '../(components)/details.svelte'; import Aside from '../(components)/aside.svelte'; import { iconPath } from '$lib/stores/app'; @@ -31,6 +30,7 @@ import RepoCard from './repoCard.svelte'; import { Dependencies } from '$lib/constants'; import { getIconFromRuntime } from '$lib/stores/runtimes'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let data; @@ -150,7 +150,7 @@ await sdk .forProject(page.params.region, page.params.project) .proxy.createFunctionRule( - `${ID.unique()}.${$consoleVariables._APP_DOMAIN_FUNCTIONS}`, + `${ID.unique()}.${$regionalConsoleVariables._APP_DOMAIN_FUNCTIONS}`, func.$id ); 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 e7a55a9566..c35e92fc0d 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 @@ -9,7 +9,6 @@ import { goto, invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sortBranches } from '$lib/stores/vcs'; - import { protocol } from '$routes/(console)/store'; import { IconInfo } from '@appwrite.io/pink-icons-svelte'; import { LabelCard } from '$lib/components'; import { Runtime, StatusCode, type Models } from '@appwrite.io/console'; @@ -19,7 +18,7 @@ import { ConnectRepoModal } from '$lib/components/git/index.js'; import { isValueOfStringEnum } from '$lib/helpers/types.js'; import { isCloud } from '$lib/system'; - import { project } from '$routes/(console)/project-[region]-[project]/store'; + import { project, regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; import { getApexDomain } from '$lib/helpers/tlds'; const routeBase = `${base}/project-${page.params.region}-${page.params.project}/functions/function-${page.params.function}/domains`; @@ -73,7 +72,7 @@ } else if (behaviour === 'REDIRECT') { rule = await sdk .forProject(page.params.region, page.params.project) - .proxy.createRedirectRule(domainName, $protocol + redirect, statusCode); + .proxy.createRedirectRule(domainName, $regionalProtocol + redirect, statusCode); } else if (behaviour === 'ACTIVE') { rule = await sdk .forProject(page.params.region, page.params.project) diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/verify-[domain]/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/verify-[domain]/+page.svelte index 0ca8e0f525..1bedec8d81 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/verify-[domain]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/add-domain/verify-[domain]/+page.svelte @@ -21,9 +21,9 @@ import { base } from '$app/paths'; import { writable } from 'svelte/store'; import { isASubdomain } from '$lib/helpers/tlds'; - import { consoleVariables } from '$routes/(console)/store'; import NameserverTable from '$lib/components/domains/nameserverTable.svelte'; import RecordTable from '$lib/components/domains/recordTable.svelte'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; let { data } = $props(); @@ -32,11 +32,11 @@ let selectedTab = $state<'cname' | 'nameserver' | 'a' | 'aaaa'>('nameserver'); $effect(() => { - if ($consoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { + if ($regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { selectedTab = 'cname'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_A) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_A) { selectedTab = 'a'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_AAAA) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA) { selectedTab = 'aaaa'; } }); @@ -111,7 +111,7 @@
- {#if isSubDomain && !!$consoleVariables._APP_DOMAIN_TARGET_CNAME && $consoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} + {#if isSubDomain && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && $regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} (selectedTab = 'cname')} @@ -127,7 +127,7 @@ Nameservers {/if} - {#if !isCloud && !!$consoleVariables._APP_DOMAIN_TARGET_A && $consoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} + {#if !isCloud && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_A && $regionalConsoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} (selectedTab = 'a')} @@ -135,7 +135,7 @@ A {/if} - {#if !isCloud && !!$consoleVariables._APP_DOMAIN_TARGET_AAAA && $consoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} + {#if !isCloud && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA && $regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} (selectedTab = 'aaaa')} diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/recordsCard.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/recordsCard.svelte index 557c5e1b62..2ba91a968e 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/recordsCard.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/recordsCard.svelte @@ -11,7 +11,7 @@ InteractiveText } from '@appwrite.io/pink-svelte'; import type { Models } from '@appwrite.io/console'; - import { consoleVariables } from '$routes/(console)/store'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let proxyRule: Models.ProxyRule; @@ -43,7 +43,7 @@ + text={$regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME} /> diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/table.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/table.svelte index 1c9df426f0..1dcb2baee9 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/domains/table.svelte @@ -2,7 +2,6 @@ import { Click, trackEvent } from '$lib/actions/analytics'; import { Link } from '$lib/elements'; import { Button } from '$lib/elements/forms'; - import { protocol } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { IconDotsHorizontal, IconRefresh, IconTrash } from '@appwrite.io/pink-icons-svelte'; import { @@ -17,6 +16,7 @@ import DeleteDomainModal from './deleteDomainModal.svelte'; import RetryDomainModal from './retryDomainModal.svelte'; import { columns } from './store'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; let { proxyRules @@ -52,7 +52,10 @@ {#if column.id === 'domain'} - + {proxyRule.domain} diff --git a/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/verify-[domain]/+page.svelte b/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/verify-[domain]/+page.svelte index dc9946534c..a54d7e8d29 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/verify-[domain]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/verify-[domain]/+page.svelte @@ -21,9 +21,9 @@ import { base } from '$app/paths'; import { writable } from 'svelte/store'; import { isASubdomain } from '$lib/helpers/tlds'; - import { consoleVariables } from '$routes/(console)/store'; import NameserverTable from '$lib/components/domains/nameserverTable.svelte'; import RecordTable from '$lib/components/domains/recordTable.svelte'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; let { data } = $props(); @@ -32,11 +32,11 @@ let selectedTab = $state<'cname' | 'nameserver' | 'a' | 'aaaa'>('nameserver'); $effect(() => { - if ($consoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { + if ($regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { selectedTab = 'cname'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_A) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_A) { selectedTab = 'a'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_AAAA) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA) { selectedTab = 'aaaa'; } }); @@ -110,7 +110,7 @@
- {#if isSubDomain && !!$consoleVariables._APP_DOMAIN_TARGET_CNAME && $consoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} + {#if isSubDomain && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && $regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} (selectedTab = 'cname')} @@ -126,7 +126,7 @@ Nameservers {/if} - {#if !isCloud && !!$consoleVariables._APP_DOMAIN_TARGET_A && $consoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} + {#if !isCloud && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_A && $regionalConsoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} (selectedTab = 'a')} @@ -134,7 +134,7 @@ A {/if} - {#if !isCloud && !!$consoleVariables._APP_DOMAIN_TARGET_AAAA && $consoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} + {#if !isCloud && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA && $regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} (selectedTab = 'aaaa')} diff --git a/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte b/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte index de4ebd50c6..0584a19610 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte @@ -2,7 +2,6 @@ import { Click, trackEvent } from '$lib/actions/analytics'; import { Link } from '$lib/elements'; import { Button } from '$lib/elements/forms'; - import { protocol } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { IconDotsHorizontal, IconRefresh, IconTrash } from '@appwrite.io/pink-icons-svelte'; import { @@ -17,6 +16,7 @@ import DeleteDomainModal from './deleteDomainModal.svelte'; import RetryDomainModal from './retryDomainModal.svelte'; import { columns } from './store'; + import { regionalProtocol } from '../../store'; let { domains @@ -44,7 +44,10 @@ {#if column.id === 'domain'} - + {domain.domain} diff --git a/src/routes/(console)/project-[region]-[project]/settings/updateInstallations.svelte b/src/routes/(console)/project-[region]-[project]/settings/updateInstallations.svelte index aadcb6a026..62aa81c077 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/updateInstallations.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/updateInstallations.svelte @@ -7,7 +7,6 @@ import type { Models } from '@appwrite.io/console'; import GitDisconnectModal from './GitDisconnectModal.svelte'; import { isSelfHosted } from '$lib/system'; - import { consoleVariables } from '$routes/(console)/store'; import { ActionMenu, Alert, @@ -28,6 +27,7 @@ import { Click, trackEvent } from '$lib/actions/analytics'; import type { ComponentType } from 'svelte'; import { Link } from '$lib/elements'; + import { regionalConsoleVariables } from '../store'; export let total: number; export let limit: number; @@ -37,7 +37,7 @@ let showGitDisconnect = false; let showInstallationDropdown: boolean[] = []; let selectedInstallation: Models.Installation; - const isVcsEnabled = $consoleVariables?._APP_VCS_ENABLED === true; + const isVcsEnabled = $regionalConsoleVariables?._APP_VCS_ENABLED === true; function getInstallationLink(installation: Models.Installation) { switch (installation.provider) { diff --git a/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte b/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte index 97021ef429..928694053c 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte @@ -5,10 +5,10 @@ import { Button, InputSelect } from '$lib/elements/forms'; import { copy } from '$lib/helpers/copy'; import { sdk } from '$lib/stores/sdk'; - import { protocol } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { IconDuplicate } from '@appwrite.io/pink-icons-svelte'; import { Icon, Image, Layout, Tooltip } from '@appwrite.io/pink-svelte'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; let { show = $bindable(), @@ -24,12 +24,12 @@ ? proxyRuleList.rules.map((rule) => { return { label: rule.domain, - value: $protocol + rule.domain + value: $regionalProtocol + rule.domain }; }) : []; - let url = $state(selectedUrl ? $protocol + selectedUrl : (options[0]?.value ?? '')); + let url = $state(selectedUrl ? $regionalProtocol + selectedUrl : (options[0]?.value ?? '')); let tooltipMessage = $state('Copy'); function getImage(url: string) { diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/aside.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/aside.svelte index 3e3d329783..96294b630b 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/aside.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/aside.svelte @@ -2,9 +2,9 @@ import { Card, SvgIcon, Trim } from '$lib/components'; import { Icon, Layout, Typography } from '@appwrite.io/pink-svelte'; import { IconGithub, IconGitBranch } from '@appwrite.io/pink-icons-svelte'; - import { consoleVariables } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { getFrameworkIcon } from '$lib/stores/sites'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let framework: Partial; export let repositoryName: string; @@ -71,7 +71,7 @@ {#key domain} - {$consoleVariables._APP_OPTIONS_FORCE_HTTPS + {$regionalConsoleVariables._APP_OPTIONS_FORCE_HTTPS ? 'https://' : 'http://'}{domain} diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/domain.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/domain.svelte index 397fdeeb1c..0a6bcf5eda 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/domain.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/domain.svelte @@ -3,10 +3,10 @@ import Button from '$lib/elements/forms/button.svelte'; import { debounce } from '$lib/helpers/debounce'; import { sdk } from '$lib/stores/sdk'; - import { consoleVariables } from '$routes/(console)/store'; import { ConsoleResourceType } from '@appwrite.io/console'; import { Fieldset, Layout, Status, Typography } from '@appwrite.io/pink-svelte'; import { onMount } from 'svelte'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let domain: string; export let domainIsValid = true; @@ -35,7 +35,7 @@ } try { await sdk.forConsole.console.getResource( - `${value}.${$consoleVariables._APP_DOMAIN_SITES}`, + `${value}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`, ConsoleResourceType.Rules ); domainStatus = 'complete'; @@ -60,7 +60,7 @@ - .{$consoleVariables._APP_DOMAIN_SITES} + .{$regionalConsoleVariables._APP_DOMAIN_SITES} diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/finish/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/finish/+page.svelte index 152a41aa29..a93295a9e6 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/finish/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/finish/+page.svelte @@ -10,13 +10,13 @@ import SiteCard from '../../(components)/siteCard.svelte'; import { onMount } from 'svelte'; import AddCollaboratorModal from '../../(components)/addCollaboratorModal.svelte'; - import { protocol } from '$routes/(console)/store'; import { Click, trackEvent } from '$lib/actions/analytics'; import { invalidate } from '$app/navigation'; import { sdk } from '$lib/stores/sdk'; import type { Adapter, BuildRuntime, Framework } from '@appwrite.io/console'; import { Dependencies } from '$lib/constants'; import { ConnectRepoModal } from '$lib/components/git'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; export let data; @@ -89,7 +89,7 @@ proxyRuleList={data.proxyRuleList} hideQRCode> - + diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/manual/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/manual/+page.svelte index eaea816785..0d9f1b58b1 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/manual/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/manual/+page.svelte @@ -15,9 +15,11 @@ import type { Models } from '@appwrite.io/console'; import Configuration from '../configuration.svelte'; import { buildVerboseDomain } from '../store'; - import { project } from '$routes/(console)/project-[region]-[project]/store'; + import { + project, + regionalConsoleVariables + } from '$routes/(console)/project-[region]-[project]/store'; import { organization } from '$lib/stores/organization'; - import { consoleVariables } from '$routes/(console)/store'; import { IconInfo } from '@appwrite.io/pink-icons-svelte'; import { InvalidFileType, removeFile } from '$lib/helpers/files'; import { humanFileSize } from '$lib/helpers/sizeConvertion'; @@ -32,7 +34,7 @@ let name = 'My website'; let id = ID.unique(); - let domain = `${id}.${$consoleVariables._APP_DOMAIN_SITES}`; + let domain = `${id}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`; let framework: Models.Framework = data.frameworks.frameworks?.find((f) => f.key === 'other') ?? data.frameworks.frameworks?.[0]; @@ -46,14 +48,14 @@ $: maxSize = isCloud && $currentPlan ? $currentPlan.deploymentSize * 1000000 - : $consoleVariables._APP_COMPUTE_SIZE_LIMIT; // already in MB + : $regionalConsoleVariables._APP_COMPUTE_SIZE_LIMIT; // already in MB $: readableMaxSize = humanFileSize(maxSize); async function create() { try { domain = await buildVerboseDomain( - $consoleVariables._APP_DOMAIN_SITES, + $regionalConsoleVariables._APP_DOMAIN_SITES, name, $organization.name, $project.name, @@ -89,7 +91,10 @@ // Add domain await sdk .forProject(page.params.region, page.params.project) - .proxy.createSiteRule(`${domain}.${$consoleVariables._APP_DOMAIN_SITES}`, site.$id); + .proxy.createSiteRule( + `${domain}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`, + site.$id + ); //Add variables const promises = variables.map((variable) => diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.svelte index 1def9713b6..a061a490f8 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.svelte @@ -25,8 +25,8 @@ import type { Models } from '@appwrite.io/console'; import { onMount } from 'svelte'; import Configuration from '../../configuration.svelte'; - import { consoleVariables } from '$routes/(console)/store'; import Domain from '../../domain.svelte'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let data; let showExitModal = false; @@ -119,7 +119,10 @@ // Add domain await sdk .forProject(page.params.region, page.params.project) - .proxy.createSiteRule(`${domain}.${$consoleVariables._APP_DOMAIN_SITES}`, site.$id); + .proxy.createSiteRule( + `${domain}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`, + site.$id + ); //Add variables const promises = variables.map((variable) => diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.ts b/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.ts index 4287ee29fc..f5607d1223 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.ts +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/repositories/repository-[repository]/+page.ts @@ -3,7 +3,8 @@ import { ID } from '@appwrite.io/console'; import { buildVerboseDomain } from '../../store'; export const load = async ({ parent, params, url }) => { - const { installations, frameworks, project, organization, consoleVariables } = await parent(); + const { installations, frameworks, project, organization, regionalConsoleVariables } = + await parent(); const [repository] = await Promise.all([ sdk .forProject(params.region, params.project) @@ -11,7 +12,7 @@ export const load = async ({ parent, params, url }) => { ]); const domain = await buildVerboseDomain( - consoleVariables._APP_DOMAIN_SITES, + regionalConsoleVariables._APP_DOMAIN_SITES, repository.name, organization.name, project.name, diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte index 294fdce16a..4ad7bd9988 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte @@ -32,11 +32,11 @@ Repositories, RepositoryBehaviour } from '$lib/components/git'; + import Domain from '../../domain.svelte'; import { app, iconPath } from '$lib/stores/app'; - import { consoleVariables } from '$routes/(console)/store'; import { connectGitHub } from '$lib/stores/git'; - import Domain from '../../domain.svelte'; import { getFrameworkIcon } from '$lib/stores/sites'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let data; @@ -137,7 +137,7 @@ await sdk .forProject(page.params.region, page.params.project) .proxy.createSiteRule( - `${domain}.${$consoleVariables._APP_DOMAIN_SITES}`, + `${domain}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`, site.$id ); diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.ts b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.ts index 2f22a6337e..d8fd8c41a1 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.ts +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.ts @@ -1,14 +1,15 @@ import { sdk } from '$lib/stores/sdk'; -import { buildVerboseDomain } from '../../store.js'; import { ID } from '@appwrite.io/console'; +import { buildVerboseDomain } from '../../store.js'; export const load = async ({ parent, params }) => { - const { installations, frameworks, project, organization, consoleVariables } = await parent(); + const { installations, frameworks, project, organization, regionalConsoleVariables } = + await parent(); const template = await sdk .forProject(params.region, params.project) .sites.getTemplate(params.template); const domain = await buildVerboseDomain( - consoleVariables._APP_DOMAIN_SITES, + regionalConsoleVariables._APP_DOMAIN_SITES, template.name, organization.name, project.name, diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/+page.svelte index 46894e8d4d..97ea0bf4cf 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/+page.svelte @@ -5,7 +5,6 @@ import DomainsOverview from './domainsOverview.svelte'; import DeploymentsOverview from './deploymentsOverview.svelte'; import { Button } from '$lib/elements/forms'; - import { protocol } from '$routes/(console)/store'; import InstantRollbackDomain from './instantRollbackModal.svelte'; import { app } from '$lib/stores/app'; import { sdk } from '$lib/stores/sdk'; @@ -14,6 +13,7 @@ import { onMount } from 'svelte'; import { page } from '$app/state'; import { base } from '$app/paths'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; export let data; let showRollback = false; @@ -35,7 +35,7 @@ {#if data.proxyRuleList.total} {/if} diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/deployment-[deployment]/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/deployment-[deployment]/+page.svelte index 541b3c00e6..82db52688a 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/deployment-[deployment]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/deployment-[deployment]/+page.svelte @@ -12,13 +12,13 @@ import CancelDeploymentModal from '../cancelDeploymentModal.svelte'; import RedeployModal from '../../../redeployModal.svelte'; import ActivateDeploymentModal from '../../../activateDeploymentModal.svelte'; - import { protocol } from '$routes/(console)/store'; import { Accordion } from '@appwrite.io/pink-svelte'; import { capitalize } from '$lib/helpers/string'; import LogsTimer from '../../../(components)/logsTimer.svelte'; import { invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { page } from '$app/state'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; let { data } = $props(); @@ -49,7 +49,9 @@ {#if deployment?.status === 'ready' && data.proxyRuleList?.total} - {/if} 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 5fe1dde878..0bb99fee4e 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 @@ -9,7 +9,6 @@ import { goto, invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sortBranches } from '$lib/stores/vcs'; - import { protocol } from '$routes/(console)/store'; import { IconInfo } from '@appwrite.io/pink-icons-svelte'; import { LabelCard } from '$lib/components'; import { @@ -23,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, regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; import { isCloud } from '$lib/system'; import { getApexDomain } from '$lib/helpers/tlds'; @@ -77,7 +76,7 @@ } else if (behaviour === 'REDIRECT') { rule = await sdk .forProject(page.params.region, page.params.project) - .proxy.createRedirectRule(domainName, $protocol + redirect, statusCode); + .proxy.createRedirectRule(domainName, $regionalProtocol + redirect, statusCode); } 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/verify-[domain]/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte index 9e30d8a053..846a5290a1 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/add-domain/verify-[domain]/+page.svelte @@ -21,9 +21,9 @@ import { base } from '$app/paths'; import { writable } from 'svelte/store'; import { isASubdomain } from '$lib/helpers/tlds'; - import { consoleVariables } from '$routes/(console)/store'; - import NameserverTable from '$lib/components/domains/nameserverTable.svelte'; import RecordTable from '$lib/components/domains/recordTable.svelte'; + import NameserverTable from '$lib/components/domains/nameserverTable.svelte'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; let { data } = $props(); @@ -33,11 +33,11 @@ let selectedTab = $state<'cname' | 'nameserver' | 'a' | 'aaaa'>('nameserver'); $effect(() => { - if ($consoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { + if ($regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { selectedTab = 'cname'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_A) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_A) { selectedTab = 'a'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_AAAA) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA) { selectedTab = 'aaaa'; } }); @@ -113,7 +113,7 @@
- {#if isSubDomain && !!$consoleVariables._APP_DOMAIN_TARGET_CNAME && $consoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} + {#if isSubDomain && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && $regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} (selectedTab = 'cname')} @@ -129,7 +129,7 @@ Nameservers {/if} - {#if !isCloud && !!$consoleVariables._APP_DOMAIN_TARGET_A && $consoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} + {#if !isCloud && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_A && $regionalConsoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} (selectedTab = 'a')} @@ -137,7 +137,7 @@ A {/if} - {#if !isCloud && !!$consoleVariables._APP_DOMAIN_TARGET_AAAA && $consoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} + {#if !isCloud && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA && $regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} (selectedTab = 'aaaa')} diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/createPreviewDomainModal.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/createPreviewDomainModal.svelte index 3cfc0d6ad8..33db2cceee 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/createPreviewDomainModal.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/createPreviewDomainModal.svelte @@ -6,11 +6,11 @@ import { invalidate } from '$app/navigation'; import { Submit, trackEvent, trackError } from '$lib/actions/analytics'; import { Dependencies } from '$lib/constants'; - import { consoleVariables } from '$routes/(console)/store'; import { page } from '$app/state'; import { Layout, Status, Typography } from '@appwrite.io/pink-svelte'; import { ConsoleResourceType, ID } from '@appwrite.io/console'; import { debounce } from '$lib/helpers/debounce'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; export let show = false; @@ -24,7 +24,7 @@ await sdk .forProject(page.params.region, page.params.project) .proxy.createSiteRule( - `${domain}.${$consoleVariables._APP_DOMAIN_SITES}`, + `${domain}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`, page.params.site ); @@ -59,7 +59,7 @@ } try { await sdk.forConsole.console.getResource( - `${value}.${$consoleVariables._APP_DOMAIN_SITES}`, + `${value}.${$regionalConsoleVariables._APP_DOMAIN_SITES}`, ConsoleResourceType.Rules ); domainStatus = 'complete'; @@ -91,7 +91,7 @@ - .{$consoleVariables._APP_DOMAIN_SITES} + .{$regionalConsoleVariables._APP_DOMAIN_SITES} diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/retryDomainModal.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/retryDomainModal.svelte index 9c0191b223..7b36770793 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/retryDomainModal.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/retryDomainModal.svelte @@ -8,12 +8,12 @@ import { Dependencies } from '$lib/constants'; import type { Models } from '@appwrite.io/console'; 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 { isASubdomain } from '$lib/helpers/tlds'; import NameserverTable from '$lib/components/domains/nameserverTable.svelte'; import RecordTable from '$lib/components/domains/recordTable.svelte'; + import { regionalConsoleVariables } from '$routes/(console)/project-[region]-[project]/store'; let { show = $bindable(false), @@ -27,11 +27,11 @@ let selectedTab = $state<'cname' | 'nameserver' | 'a' | 'aaaa'>('nameserver'); $effect(() => { - if ($consoleVariables._APP_DOMAIN_SITES && isSubDomain) { + if ($regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && isSubDomain) { selectedTab = 'cname'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_A) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_A) { selectedTab = 'a'; - } else if ($consoleVariables._APP_DOMAIN_TARGET_AAAA) { + } else if ($regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA) { selectedTab = 'aaaa'; } }); @@ -68,7 +68,7 @@
- {#if isSubDomain && !!$consoleVariables._APP_DOMAIN_SITES && $consoleVariables._APP_DOMAIN_SITES !== 'localhost'} + {#if isSubDomain && !!$regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME && $regionalConsoleVariables._APP_DOMAIN_TARGET_CNAME !== 'localhost'} (selectedTab = 'cname')} @@ -84,7 +84,7 @@ Nameservers {/if} - {#if !!$consoleVariables._APP_DOMAIN_TARGET_A && $consoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} + {#if !!$regionalConsoleVariables._APP_DOMAIN_TARGET_A && $regionalConsoleVariables._APP_DOMAIN_TARGET_A !== '127.0.0.1'} (selectedTab = 'a')} @@ -92,7 +92,7 @@ A {/if} - {#if !!$consoleVariables._APP_DOMAIN_TARGET_AAAA && $consoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} + {#if !!$regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA && $regionalConsoleVariables._APP_DOMAIN_TARGET_AAAA !== '::1'} (selectedTab = 'aaaa')} diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/table.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/table.svelte index e8dde4d2d9..b98cf258c9 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domains/table.svelte @@ -2,7 +2,6 @@ import { Click, trackEvent } from '$lib/actions/analytics'; import { Link } from '$lib/elements'; import { Button } from '$lib/elements/forms'; - import { protocol } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { IconDotsHorizontal, IconRefresh, IconTrash } from '@appwrite.io/pink-icons-svelte'; import { @@ -17,6 +16,7 @@ import DeleteDomainModal from './deleteDomainModal.svelte'; import RetryDomainModal from './retryDomainModal.svelte'; import { columns } from './store'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; let { proxyRules @@ -52,7 +52,10 @@ {#if column.id === 'domain'} - + {rule.domain} diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domainsOverview.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domainsOverview.svelte index 7cca035062..550052aa35 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domainsOverview.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/domainsOverview.svelte @@ -5,13 +5,13 @@ import OpenOnMobileModal from '../(components)/openOnMobileModal.svelte'; import { timeFromNow } from '$lib/helpers/date'; import { IconQrcode } from '@appwrite.io/pink-icons-svelte'; - import { protocol } from '$routes/(console)/store'; import { type Models } from '@appwrite.io/console'; import { Link } from '$lib/elements'; import { Button } from '$lib/elements/forms'; import { Card, Trim } from '$lib/components'; import { Click, trackEvent } from '$lib/actions/analytics'; import { RuleTrigger } from '$lib/stores/sdk'; + import { regionalProtocol } from '$routes/(console)/project-[region]-[project]/store'; export let proxyRuleList: Models.ProxyRuleList; @@ -75,7 +75,7 @@ diff --git a/src/routes/(console)/project-[region]-[project]/store.ts b/src/routes/(console)/project-[region]-[project]/store.ts index e2836f1a51..ce2f876e98 100644 --- a/src/routes/(console)/project-[region]-[project]/store.ts +++ b/src/routes/(console)/project-[region]-[project]/store.ts @@ -25,6 +25,25 @@ export const onboarding = derived( ($project) => $project?.platforms?.length === 0 && $project?.keys?.length === 0 ); +/** + * Region-aware version of `consoleVariables`, scoped to the project's assigned region. + * + * Falls back to the default `consoleVariables` if regional data is unavailable, just `edge-case` things. + */ +export const regionalConsoleVariables = derived( + page, + ($page) => + ($page.data.regionalConsoleVariables ?? + $page.data.consoleVariables) as Models.ConsoleVariables +); + +/** + * Protocol based on regional console variables. + */ +export const regionalProtocol = derived(regionalConsoleVariables, ($vars) => + $vars?._APP_OPTIONS_FORCE_HTTPS === 'enabled' ? 'https://' : 'http://' +); + function createStats() { const { subscribe, set, update } = writable>(new Map());