diff --git a/src/routes/(console)/project-[region]-[project]/sites/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/+page.svelte index be8278543..b13c125df 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/+page.svelte @@ -11,12 +11,14 @@ import { isServiceLimited } from '$lib/stores/billing'; import { organization } from '$lib/stores/organization'; import { canWriteSites } from '$lib/stores/roles.js'; - import { Icon, Layout } from '@appwrite.io/pink-svelte'; + import { Card, Icon, Layout, Typography } from '@appwrite.io/pink-svelte'; import { Button } from '$lib/elements/forms'; import { app } from '$lib/stores/app'; import CreateSiteModal from './createSiteModal.svelte'; import EmptyLight from './(images)/empty-sites-light.svg'; import EmptyDark from './(images)/empty-sites-dark.svg'; + import EmptyLightMobile from './(images)/empty-sites-light-mobile.svg'; + import EmptyDarkMobile from './(images)/empty-sites-dark-mobile.svg'; import Grid from './grid.svelte'; import { IconPlus } from '@appwrite.io/pink-icons-svelte'; import { columns } from './store'; @@ -26,6 +28,7 @@ import { invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import { sdk } from '$lib/stores/sdk'; + import { isSmallViewport } from '$lib/stores/viewport'; export let data; @@ -55,46 +58,65 @@ } }); }); + + $: isDark = $app.themeInUse === 'dark'; + $: imgSrc = isDark + ? $isSmallViewport + ? EmptyDarkMobile + : EmptyDark + : $isSmallViewport + ? EmptyLightMobile + : EmptyLight; + $: imgClass = $isSmallViewport ? 'mobile' : 'desktop'; - - - - - - - {#if $canWriteSites} - + {#if data.sitesLive} + {#if data.siteList.total} + {#if data.view === View.Grid} + + {:else} + {/if} - - - {#if data.siteList.total} - {#if data.view === View.Grid} - + + {:else if data.search} + {:else} -
+ (show = true)}> + {/if} - - {:else if data.search} - {:else} - (show = true)}> - + + + + + + + + Appwrite Sites is in high demand + + +
+ + To ensure a smooth experience for everyone, we’re rolling out access + gradually. + +
+
+
+
+
{/if} diff --git a/src/routes/(console)/project-[region]-[project]/sites/+page.ts b/src/routes/(console)/project-[region]-[project]/sites/+page.ts index 62eeb026a..b041a903f 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/+page.ts +++ b/src/routes/(console)/project-[region]-[project]/sites/+page.ts @@ -5,13 +5,23 @@ import { CARD_LIMIT, Dependencies } from '$lib/constants'; export const load = async ({ url, depends, route, params }) => { depends(Dependencies.SITES); - const page = getPage(url); const search = getSearch(url); const limit = getLimit(url, route, CARD_LIMIT); const offset = pageToOffset(page, limit); const view = getView(url, route, View.Grid, View.Grid); + const sitesLive = false; + + if (!sitesLive) + return { + sitesLive, + offset, + limit, + search, + view + }; + const siteList = await sdk .forProject(params.region, params.project) .sites.list( @@ -20,6 +30,7 @@ export const load = async ({ url, depends, route, params }) => { ); return { + sitesLive, offset, limit, search,