a3644a50c5
* fix(gatekeeper): missing priceId-s should stop the server from booting * feat(shared): add all new workspace plans * feat(billing): add new world plans * feat(ci): use stripe sandbox id-s from test env vars * chore(ci): remove defunct stripe context * chore(server-env): fix server env example * feat(gatekeeper): add missing plans to graphql schema * test(gatekeeper): update plan upgrade tests to match implementation * fix(ci): update ci .env source * fix(ci): we do need some secrets from stripe * fix(ci): run gql schema introspect with the test env * fix(frontend): format new plan names * chore(ci): temp disable gql schema checks * feat(helm): add unlimited seat prices env vars * feat(helm): add unlimited seat prices to values * feat(gatekeeper): do not load priceId-s as a side effect, load with module init
20 lines
610 B
TypeScript
20 lines
610 B
TypeScript
import { PaidWorkspacePlans, WorkspacePlanBillingIntervals } from '@speckle/shared'
|
|
|
|
/**
|
|
* This includes the pricing plans (Stripe products) a customer can sub to
|
|
*/
|
|
export type WorkspacePricingProducts = PaidWorkspacePlans | 'guest'
|
|
|
|
type WorkspacePlanProductsMetadata<PriceData = string> = Record<
|
|
WorkspacePricingProducts,
|
|
Record<WorkspacePlanBillingIntervals, PriceData> & {
|
|
productId: string
|
|
}
|
|
>
|
|
|
|
export type WorkspacePlanProductAndPriceIds = WorkspacePlanProductsMetadata<string>
|
|
export type WorkspacePlanProductPrices = WorkspacePlanProductsMetadata<{
|
|
amount: number
|
|
currency: string
|
|
}>
|