feat: add shared package with types and constants

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Consultoria AS
2026-01-22 01:48:57 +00:00
parent dc0056b243
commit 830e98625d
8 changed files with 185 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
export const PLANS = {
starter: {
name: 'Starter',
cfdiLimit: 100,
usersLimit: 1,
features: ['dashboard', 'cfdi_basic', 'iva_isr'],
},
business: {
name: 'Business',
cfdiLimit: 500,
usersLimit: 3,
features: ['dashboard', 'cfdi_basic', 'iva_isr', 'reportes', 'alertas', 'calendario'],
},
professional: {
name: 'Professional',
cfdiLimit: 2000,
usersLimit: 10,
features: ['dashboard', 'cfdi_basic', 'iva_isr', 'reportes', 'alertas', 'calendario', 'conciliacion', 'forecasting', 'xml_sat'],
},
enterprise: {
name: 'Enterprise',
cfdiLimit: -1,
usersLimit: -1,
features: ['dashboard', 'cfdi_basic', 'iva_isr', 'reportes', 'alertas', 'calendario', 'conciliacion', 'forecasting', 'xml_sat', 'api', 'multi_empresa'],
},
} as const;
export type Plan = keyof typeof PLANS;
export function getPlanLimits(plan: Plan) {
return PLANS[plan];
}
export function hasFeature(plan: Plan, feature: string): boolean {
return PLANS[plan].features.includes(feature);
}