fase(17): licensing module with RSA validation

This commit is contained in:
debian
2026-03-08 05:20:54 -04:00
parent 1f1678af17
commit 5a28270dc9
45 changed files with 1789 additions and 48 deletions

View File

@@ -0,0 +1,43 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.FeatureEntitlement = exports.ENTERPRISE_FEATURES = exports.PRO_FEATURES = exports.FREE_FEATURES = void 0;
exports.FREE_FEATURES = [
'exploration:basic',
'findings:basic',
'findings:export',
'reports:basic',
'auth:apikeys',
];
exports.PRO_FEATURES = [
...exports.FREE_FEATURES,
'exploration:scheduled',
'reports:pdf',
'integrations:webhook',
'integrations:slack',
'integrations:github',
'integrations:jira',
];
exports.ENTERPRISE_FEATURES = [
...exports.PRO_FEATURES,
'auth:sso',
'auth:ldap',
'audit:logs',
'branding:whitelabel',
'data:retention',
'infra:postgres',
];
class FeatureEntitlement {
constructor(features) {
this.features = features;
}
static forFeatures(features) {
return new FeatureEntitlement(new Set(features));
}
has(feature) {
return this.features.has(feature);
}
toArray() {
return Array.from(this.features);
}
}
exports.FeatureEntitlement = FeatureEntitlement;