diff --git a/src/lib/components/support.svelte b/src/lib/components/support.svelte index 06bf93f2aa..c63200f733 100644 --- a/src/lib/components/support.svelte +++ b/src/lib/components/support.svelte @@ -10,10 +10,13 @@ import { isSupportOnline, showSupportModal } from '../../routes/console/wizard/support/store'; import { isCloud } from '$lib/system'; import { organization } from '$lib/stores/organization'; + import { BillingPlan } from '$lib/constants'; export let show = false; - $: isPaid = $organization?.billingPlan === 'tier-1' || $organization?.billingPlan === 'tier-2'; + $: isPaid = + $organization?.billingPlan === BillingPlan.PRO || + $organization?.billingPlan === BillingPlan.SCALE; {#if isCloud} @@ -39,7 +42,7 @@
{/if} - {#if $organization?.billingPlan === 'tier-0'} + {#if $organization?.billingPlan === BillingPlan.STARTER} diff --git a/src/lib/constants.ts b/src/lib/constants.ts index 52d2b999bd..4b9dedb14c 100644 --- a/src/lib/constants.ts +++ b/src/lib/constants.ts @@ -616,3 +616,9 @@ export const limitRates = { } ] }; + +export enum BillingPlan { + STARTER = 'tier-0', + PRO = 'tier-1', + SCALE = 'tier-2' +} diff --git a/src/lib/layout/activity.svelte b/src/lib/layout/activity.svelte index 908ab6b8ad..e888b3b2eb 100644 --- a/src/lib/layout/activity.svelte +++ b/src/lib/layout/activity.svelte @@ -22,6 +22,7 @@ import { isCloud } from '$lib/system'; import { organization } from '$lib/stores/organization'; import { Button } from '$lib/elements/forms'; + import { BillingPlan } from '$lib/constants'; export let logs: Models.LogList; export let offset = 0; @@ -51,7 +52,7 @@ Logs are retained in rolling {hoursToDays(limit)} intervals with the {tierToPlan($organization.billingPlan).name} plan. - {#if $organization?.billingPlan === 'tier-0'} + {#if $organization?.billingPlan === BillingPlan.STARTER} to increase your log retention for a longer period. {/if} diff --git a/src/lib/layout/containerButton.svelte b/src/lib/layout/containerButton.svelte index 48459fb81b..6c39746adb 100644 --- a/src/lib/layout/containerButton.svelte +++ b/src/lib/layout/containerButton.svelte @@ -1,12 +1,13 @@ @@ -53,7 +54,7 @@ {/if} - {#if $createOrganization.billingPlan !== 'tier-0'} + {#if $createOrganization.billingPlan !== BillingPlan.STARTER}Additional members
{collaboratorsNumber} members
@@ -75,7 +76,7 @@{plan.name} plan
${plan.price}
@@ -91,7 +92,7 @@${totalExpences}
- {#if $createOrganization.billingPlan !== 'tier-0'} + {#if $createOrganization.billingPlan !== BillingPlan.STARTER}
This amount, and any additional usage fees, will be charged on a recurring 30-day
billing cycle after your trial period ends on
import { Alert } from '$lib/components';
+ import { BillingPlan } from '$lib/constants';
import { Button, Form, FormList, InputEmail } from '$lib/elements/forms';
import {
Table,
@@ -41,10 +42,10 @@
Usage on the Pro plan will be charged at the end of each billing period at the following
rates. Next billing period: {toLocaleDate(nextDate)}.
Usage on the Scale plan will be charged at the end of each billing period at the
following rates. Next billing period: {toLocaleDate(nextDate)}.
diff --git a/src/routes/console/wizard/cloudOrganizationChangeTier/choosePlan.svelte b/src/routes/console/wizard/cloudOrganizationChangeTier/choosePlan.svelte
index 058651b907..7c3095dddc 100644
--- a/src/routes/console/wizard/cloudOrganizationChangeTier/choosePlan.svelte
+++ b/src/routes/console/wizard/cloudOrganizationChangeTier/choosePlan.svelte
@@ -11,19 +11,20 @@
import type { Models } from '@appwrite.io/console';
import { sizeToBytes } from '$lib/helpers/sizeConvertion';
import { Pill } from '$lib/elements';
+ import { BillingPlan } from '$lib/constants';
let usage: OrganizationUsage = null;
let members: Models.MembershipList = null;
- $: if ($changeOrganizationTier.billingPlan === 'tier-0' && $changeTierSteps) {
+ $: if ($changeOrganizationTier.billingPlan === BillingPlan.STARTER && $changeTierSteps) {
$changeTierSteps = updateStepStatus($changeTierSteps, 2, true);
$changeTierSteps = updateStepStatus($changeTierSteps, 3, true);
$changeTierSteps = updateStepStatus($changeTierSteps, 4, true);
}
$: if (
- $changeOrganizationTier.billingPlan === 'tier-2' ||
- $changeOrganizationTier.billingPlan === 'tier-1'
+ $changeOrganizationTier.billingPlan === BillingPlan.SCALE ||
+ $changeOrganizationTier.billingPlan === BillingPlan.PRO
) {
$changeTierSteps = updateStepStatus($changeTierSteps, 2, false);
$changeTierSteps = updateStepStatus($changeTierSteps, 3, false);
@@ -62,7 +63,7 @@
$changeOrganizationTier.limitOverflow.users > 0 ||
$changeOrganizationTier.limitOverflow.executions > 0 ||
$changeOrganizationTier.limitOverflow.members > 0) &&
- $changeOrganizationTier.billingPlan === 'tier-0'
+ $changeOrganizationTier.billingPlan === BillingPlan.STARTER
) {
$changeOrganizationTier.isOverLimit = true;
$changeTierSteps = updateStepStatus($changeTierSteps, 5, false);
@@ -77,14 +78,14 @@
members = await sdk.forConsole.teams.listMemberships($organization.$id);
//Select closest tier from starting one
- // if ($organization.billingPlan === 'tier-2') {
- // $changeOrganizationTier.billingPlan = 'tier-1';
+ // if ($organization.billingPlan === BillingPlan.SCALE) {
+ // $changeOrganizationTier.billingPlan = BillingPlan.PRO;
// }
// else
- if ($organization.billingPlan === 'tier-1') {
- $changeOrganizationTier.billingPlan = 'tier-0';
- } else if ($organization.billingPlan === 'tier-0') {
- $changeOrganizationTier.billingPlan = 'tier-1';
+ if ($organization.billingPlan === BillingPlan.PRO) {
+ $changeOrganizationTier.billingPlan = BillingPlan.STARTER;
+ } else if ($organization.billingPlan === BillingPlan.STARTER) {
+ $changeOrganizationTier.billingPlan = BillingPlan.PRO;
}
});
@@ -92,14 +93,14 @@
if (!$changeOrganizationTier.billingPlan) {
throw new Error('Please select a plan.');
}
- if ($changeOrganizationTier.billingPlan === 'tier-0') {
+ if ($changeOrganizationTier.billingPlan === BillingPlan.STARTER) {
$changeOrganizationTier.collaborators = [];
}
}
- $: freePlan = $plansInfo.plans.find((p) => p.$id === 'tier-0');
- $: proPlan = $plansInfo.plans.find((p) => p.$id === 'tier-1');
- $: scalePlan = $plansInfo.plans.find((p) => p.$id === 'tier-2');
+ $: freePlan = $plansInfo.plans.find((p) => p.$id === BillingPlan.STARTER);
+ $: proPlan = $plansInfo.plans.find((p) => p.$id === BillingPlan.PRO);
+ $: scalePlan = $plansInfo.plans.find((p) => p.$id === BillingPlan.SCALE);