diff --git a/src/lib/components/breadcrumbs.svelte b/src/lib/components/breadcrumbs.svelte
index e29c4c8d0..7355f8397 100644
--- a/src/lib/components/breadcrumbs.svelte
+++ b/src/lib/components/breadcrumbs.svelte
@@ -112,10 +112,13 @@
};
if (loadedProjects.total > 1 && selectedOrg) {
- const projectLinks = loadedProjects.projects.slice(0, 4).map((project) => ({
- name: project.name,
- href: `${base}/project-${project.region}-${project.$id}/overview/platforms`
- }));
+ const projectLinks = loadedProjects.projects.slice(0, 4).map((project) => {
+ const region = project.region || (!isCloud ? 'default' : project.region);
+ return {
+ name: project.name,
+ href: `${base}/project-${region}-${project.$id}/overview/platforms`
+ };
+ });
if (loadedProjects.projects.length > 4) {
projectLinks.push({
@@ -341,7 +344,7 @@
+ href={`${base}/project-${project.region || (!isCloud ? 'default' : project.region)}-${project.$id}/overview/platforms`}>
{project.name}
diff --git a/src/routes/(console)/project-[region]-[project]/+layout.svelte b/src/routes/(console)/project-[region]-[project]/+layout.svelte
index 0254a8cdc..3e5975878 100644
--- a/src/routes/(console)/project-[region]-[project]/+layout.svelte
+++ b/src/routes/(console)/project-[region]-[project]/+layout.svelte
@@ -25,6 +25,7 @@
canWriteSites
} from '$lib/stores/roles';
import CsvImportBox from '$lib/components/csvImportBox.svelte';
+ import { isCloud } from '$lib/system';
onMount(() => {
return realtime
@@ -42,7 +43,8 @@
{
label: 'Go to Auth',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/auth`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/auth`);
},
keys: ['g', 'a'],
group: 'navigation'
@@ -50,7 +52,8 @@
{
label: 'Go to Databases',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/databases`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/databases`);
},
keys: ['g', 'd'],
group: 'navigation',
@@ -59,7 +62,8 @@
{
label: 'Go to Functions',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/functions`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/functions`);
},
keys: ['g', 'f'],
group: 'navigation',
@@ -68,7 +72,8 @@
{
label: 'Go to Messaging',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/messaging`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/messaging`);
},
keys: ['g', 'm'],
disabled: page.url.pathname.endsWith('messaging') || !$canSeeMessages,
@@ -77,7 +82,8 @@
{
label: 'Go to Storage',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/storage`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/storage`);
},
keys: ['g', 's'],
group: 'navigation',
@@ -86,7 +92,8 @@
{
label: 'Go to Settings',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/settings`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/settings`);
},
keys: ['g', 'e'],
group: 'navigation',
@@ -95,7 +102,8 @@
{
label: 'Go to Sites',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}/sites`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}/sites`);
},
keys: ['g', 'i'],
group: 'navigation',
@@ -104,7 +112,8 @@
{
label: 'Go to Overview',
callback: () => {
- goto(`${base}/project-${$project.region}-${$project.$id}`);
+ const region = $project.region || (!isCloud ? 'default' : $project.region);
+ goto(`${base}/project-${region}-${$project.$id}`);
},
keys: ['g', 'o'],
group: 'navigation'
diff --git a/src/routes/(console)/project-[region]-[project]/+layout.ts b/src/routes/(console)/project-[region]-[project]/+layout.ts
index c1fb52045..77df693ca 100644
--- a/src/routes/(console)/project-[region]-[project]/+layout.ts
+++ b/src/routes/(console)/project-[region]-[project]/+layout.ts
@@ -17,6 +17,8 @@ export const load: LayoutLoad = async ({ params, depends, parent }) => {
const project = await sdk.forConsole.projects.get(params.project);
+ if (!isCloud && !project.region) project.region = 'default';
+
// fast path without a network call!
let organization = (organizations as OrganizationList)?.teams?.find(
(org) => org.$id === project.teamId