From b0bee4e53fa64d02859400832c8c4525a8d23c8c Mon Sep 17 00:00:00 2001 From: Arman Date: Thu, 27 Jul 2023 19:34:23 +0200 Subject: [PATCH] feat: teams limit, small refactos --- src/lib/components/cardContainer.svelte | 2 +- src/lib/elements/table/body.svelte | 5 ++-- src/lib/layout/containerHeader.svelte | 30 ++++++++++--------- src/lib/stores/billing.ts | 2 +- .../project-[project]/auth/teams/+page.svelte | 28 ++++++++++++----- .../overview/platforms/+page.svelte | 2 +- 6 files changed, 42 insertions(+), 27 deletions(-) diff --git a/src/lib/components/cardContainer.svelte b/src/lib/components/cardContainer.svelte index 145130695..8c76a51f5 100644 --- a/src/lib/components/cardContainer.svelte +++ b/src/lib/components/cardContainer.svelte @@ -13,7 +13,7 @@ export let service = ''; export let serviceId = service; - $: planLimit = getServiceLimit(serviceId); + $: planLimit = getServiceLimit(serviceId)?.amount ?? Infinity; $: limit = preferences.get($page.route)?.limit ?? CARD_LIMIT; diff --git a/src/lib/elements/table/body.svelte b/src/lib/elements/table/body.svelte index ab03e4884..e573ce91f 100644 --- a/src/lib/elements/table/body.svelte +++ b/src/lib/elements/table/body.svelte @@ -1,6 +1,5 @@ {#if isCloud && total && limit !== 'unlimited' && total >= limit} - - - You've reached the maximum number of {title.toLowerCase()} for the {tier} plan. - - for additional {title.toLocaleLowerCase()}. - - + + + + You've reached the maximum number of {title.toLowerCase()} for the {tier} plan. + + for additional {title.toLocaleLowerCase()}. + + + {/if} -
+
{title} {#if isCloud} diff --git a/src/lib/stores/billing.ts b/src/lib/stores/billing.ts index 96bf73e1d..e7b11d702 100644 --- a/src/lib/stores/billing.ts +++ b/src/lib/stores/billing.ts @@ -27,7 +27,7 @@ export function getCreditCardImage(brand: string, width = 46, height = 32) { } export function getServiceLimit(serviceId: string) { - return limitRates?.[get(organization)?.billingPlan]?.find((l) => l.id === serviceId)?.amount; + return limitRates?.[get(organization)?.billingPlan]?.find((l) => l.id === serviceId); } export const tierFree = { diff --git a/src/routes/console/project-[project]/auth/teams/+page.svelte b/src/routes/console/project-[project]/auth/teams/+page.svelte index 063b9bb73..1c1ca90ab 100644 --- a/src/routes/console/project-[project]/auth/teams/+page.svelte +++ b/src/routes/console/project-[project]/auth/teams/+page.svelte @@ -20,10 +20,12 @@ import Create from '../createTeam.svelte'; import { goto } from '$app/navigation'; import { toLocaleDateTime } from '$lib/helpers/date'; - import { Container } from '$lib/layout'; + import { Container, ContainerHeader } from '$lib/layout'; import { base } from '$app/paths'; import type { Models } from '@appwrite.io/console'; import type { PageData } from './$types'; + import { getServiceLimit } from '$lib/stores/billing'; + import { tooltip } from '$lib/actions/tooltip'; export let data: PageData; @@ -36,11 +38,23 @@ - - - + + +
+ +
+
+
{#if data.teams.total} @@ -48,7 +62,7 @@ Members Created - + {#each data.teams.teams as team} diff --git a/src/routes/console/project-[project]/overview/platforms/+page.svelte b/src/routes/console/project-[project]/overview/platforms/+page.svelte index 09c1a0f1b..4309c2e6a 100644 --- a/src/routes/console/project-[project]/overview/platforms/+page.svelte +++ b/src/routes/console/project-[project]/overview/platforms/+page.svelte @@ -82,7 +82,7 @@