Files
speckle-server/packages/server/modules/gatekeeper/services/upgrades.ts
T
Kristaps Fabians Geikins 4b06f42db7 chore(server): run TS files directly (no compilation) (#5134)
* sort of works

* type fixes

* added option to run old way too
2025-07-23 11:20:40 +02:00

25 lines
695 B
TypeScript

import type { WorkspacePlans } from '@speckle/shared'
const WorkspacePlansUpgradeMapping: Record<WorkspacePlans, WorkspacePlans[]> = {
academia: [],
unlimited: [],
free: ['team', 'teamUnlimited', 'pro', 'proUnlimited'],
team: ['team', 'teamUnlimited', 'pro', 'proUnlimited'],
teamUnlimited: ['teamUnlimited', 'pro', 'proUnlimited'],
teamUnlimitedInvoiced: [],
pro: ['pro', 'proUnlimited'],
proUnlimited: ['proUnlimited'],
proUnlimitedInvoiced: [],
enterprise: []
}
export const isUpgradeWorkspacePlanValid = ({
current,
upgrade
}: {
current: WorkspacePlans
upgrade: WorkspacePlans
}): boolean => {
return WorkspacePlansUpgradeMapping[current].includes(upgrade)
}