diff --git a/src/routes/(console)/project-[project]/databases/+page.svelte b/src/routes/(console)/project-[project]/databases/+page.svelte
index ff290a965..273073b13 100644
--- a/src/routes/(console)/project-[project]/databases/+page.svelte
+++ b/src/routes/(console)/project-[project]/databases/+page.svelte
@@ -4,7 +4,7 @@
import { page } from '$app/stores';
import { Empty, PaginationWithLimit, SearchQuery, ViewSelector } from '$lib/components';
import { Button } from '$lib/elements/forms';
- import { Container, ContainerHeader } from '$lib/layout';
+ import { Container } from '$lib/layout';
import type { Models } from '@appwrite.io/console';
import type { PageData } from './$types';
@@ -14,7 +14,7 @@
import Table from './table.svelte';
import { registerCommands } from '$lib/commandCenter';
import { canWriteDatabases } from '$lib/stores/roles';
- import { Layout, Tooltip } from '@appwrite.io/pink-svelte';
+ import { Layout } from '@appwrite.io/pink-svelte';
export let data: PageData;
diff --git a/src/routes/(console)/project-[project]/sites/+page.svelte b/src/routes/(console)/project-[project]/sites/+page.svelte
index 2d5adc9f1..ed96263de 100644
--- a/src/routes/(console)/project-[project]/sites/+page.svelte
+++ b/src/routes/(console)/project-[project]/sites/+page.svelte
@@ -1,29 +1,22 @@
+
+
+ {#each siteList.sites as site}
+
+
+
+
+
+
+ {
+ e.preventDefault();
+ selectedSite = site;
+ showRedeploy = true;
+ toggle(e);
+ }}>
+ Redeploy
+
+
+ Domains
+
+
+ Settings
+
+
+
+
+
+
+ {/each}
+
+
+{#if selectedSite?.$id && showRedeploy}
+
+{/if}
+
+
diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/redeployModal.svelte b/src/routes/(console)/project-[project]/sites/redeployModal.svelte
similarity index 90%
rename from src/routes/(console)/project-[project]/sites/site-[site]/deployments/redeployModal.svelte
rename to src/routes/(console)/project-[project]/sites/redeployModal.svelte
index 6eeda93fa..b13fa14d8 100644
--- a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/redeployModal.svelte
+++ b/src/routes/(console)/project-[project]/sites/redeployModal.svelte
@@ -9,13 +9,13 @@
import type { Models } from '@appwrite.io/console';
export let show = false;
- export let selectedDeployment: Models.Deployment = null;
+ export let selectedDeploymentId: string;
export let site: Models.Site;
let error: string;
async function redeploy() {
try {
- await sdk.forProject.sites.createBuild(site.$id, selectedDeployment.$id);
+ await sdk.forProject.sites.updateDeploymentBuild(site.$id, selectedDeploymentId);
addNotification({
type: 'success',
message: `Redeploying ${site.name}`
diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte
index db3cc80ac..4ca40a66a 100644
--- a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte
+++ b/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte
@@ -14,7 +14,7 @@
import { toLocaleDate } from '$lib/helpers/date';
import Table from './table.svelte';
import QuickFilters from './quickFilters.svelte';
- import RedeployModal from './redeployModal.svelte';
+ import RedeployModal from '../../redeployModal.svelte';
import CreateGitDeploymentModal from './createGitDeploymentModal.svelte';
import UsageCard from './usageCard.svelte';
import ConnectRepoModal from '../../(components)/connectRepoModal.svelte';
@@ -237,7 +237,10 @@
{#if selectedDeployment}
-
+
{/if}
{#if showConnectRepo}
diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/table.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/deployments/table.svelte
index 6f60fd8ca..0b537fdf6 100644
--- a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/table.svelte
+++ b/src/routes/(console)/project-[project]/sites/site-[site]/deployments/table.svelte
@@ -9,7 +9,7 @@
import { calculateSize } from '$lib/helpers/sizeConvertion';
import { page } from '$app/stores';
import Delete from './deleteDeploymentModal.svelte';
- import RedeployModal from './redeployModal.svelte';
+ import RedeployModal from '../../redeployModal.svelte';
import Cancel from './cancelDeploymentModal.svelte';
import { base } from '$app/paths';
import { ActionMenu, Popover, Status, Table } from '@appwrite.io/pink-svelte';
@@ -174,5 +174,8 @@
-
+
{/if}
diff --git a/src/routes/(console)/project-[project]/sites/store.ts b/src/routes/(console)/project-[project]/sites/store.ts
index 751e1c907..b0557b307 100644
--- a/src/routes/(console)/project-[project]/sites/store.ts
+++ b/src/routes/(console)/project-[project]/sites/store.ts
@@ -1,5 +1,44 @@
+import type { Column } from '$lib/helpers/types';
import { Framework, type Models } from '@appwrite.io/console';
+import {
+ IconAngular,
+ IconNuxt,
+ IconReact,
+ IconSvelte,
+ IconVue
+} from '@appwrite.io/pink-icons-svelte';
+import { writable } from 'svelte/store';
export function getEnumFromModel(model: Models.Framework): Framework {
return Framework[model.name];
}
+
+export const columns = writable([
+ { id: 'name', title: 'Name', type: 'string', show: true, width: 100 },
+ // { id: 'domains', title: 'Domains', type: 'string', show: true, width: 120 },
+ { id: '$updatedAt', title: 'Updated', type: 'datetime', show: true, width: 120 },
+ { id: '$createdAt', title: 'Created', type: 'datetime', show: true, width: 120 }
+]);
+
+export function getFrameworkIcon(framework: string) {
+ console.log(framework);
+ switch (true) {
+ case framework.toLocaleLowerCase().includes('sveltekit'):
+ return IconSvelte;
+ case framework.toLocaleLowerCase().includes('nuxt'):
+ return IconNuxt;
+ case framework.toLocaleLowerCase().includes('vue'):
+ return IconVue;
+ case framework.toLocaleLowerCase().includes('react'):
+ return IconReact;
+ case framework.toLocaleLowerCase().includes('angular'):
+ return IconAngular;
+ case framework.toLocaleLowerCase().includes('svelte'):
+ return IconSvelte;
+ case framework.toLocaleLowerCase().includes('next'):
+ return IconReact; //TODO: add next icon
+
+ default:
+ return undefined;
+ }
+}
diff --git a/src/routes/(console)/project-[project]/sites/table.svelte b/src/routes/(console)/project-[project]/sites/table.svelte
new file mode 100644
index 000000000..017242efd
--- /dev/null
+++ b/src/routes/(console)/project-[project]/sites/table.svelte
@@ -0,0 +1,44 @@
+
+
+
+
+ {#each $columns as column}
+ {#if column.show}
+
+ {column.title}
+
+ {/if}
+ {/each}
+
+ {#each siteList.sites as site}
+
+ {#each $columns as column}
+ {#if column.show}
+ {#if column.id === 'name'}
+
+
+ {:else if column.id === '$updatedAt'}
+
+ {toLocaleDateTime(site[column.id])}
+
+ {:else if column.id === '$createdAt'}
+
+ {toLocaleDateTime(site[column.id])}
+
+ {/if}
+ {/if}
+ {/each}
+
+ {/each}
+