unleash-server
Version:
Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.
369 lines • 18.2 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TAG_TYPE_DELETED = exports.TAG_TYPE_CREATED = exports.DROP_TAGS = exports.TAG_IMPORT = exports.TAG_DELETED = exports.TAG_CREATED = exports.DROP_PROJECTS = exports.PROJECT_GROUP_ROLE_CHANGED = exports.PROJECT_GROUP_REMOVED = exports.PROJECT_GROUP_ADDED = exports.PROJECT_USER_ROLE_CHANGED = exports.PROJECT_USER_REMOVED = exports.PROJECT_USER_ADDED = exports.PROJECT_IMPORT = exports.PROJECT_DELETED = exports.PROJECT_UPDATED = exports.PROJECT_CREATED = exports.CONTEXT_FIELD_DELETED = exports.CONTEXT_FIELD_UPDATED = exports.CONTEXT_FIELD_CREATED = exports.DROP_STRATEGIES = exports.STRATEGY_IMPORT = exports.STRATEGY_UPDATED = exports.STRATEGY_REACTIVATED = exports.STRATEGY_DEPRECATED = exports.STRATEGY_DELETED = exports.STRATEGY_CREATED = exports.FEATURE_ENVIRONMENT_DISABLED = exports.FEATURE_ENVIRONMENT_ENABLED = exports.DROP_FEATURES = exports.FEATURE_STALE_OFF = exports.FEATURE_STALE_ON = exports.FEATURE_UNTAGGED = exports.DROP_FEATURE_TAGS = exports.FEATURE_STRATEGY_REMOVE = exports.FEATURE_STRATEGY_ADD = exports.FEATURE_STRATEGY_UPDATE = exports.FEATURE_TAG_IMPORT = exports.FEATURE_TAGGED = exports.FEATURE_IMPORT = exports.FEATURE_REVIVED = exports.FEATURE_ARCHIVED = exports.FEATURE_PROJECT_CHANGE = exports.FEATURE_ENVIRONMENT_VARIANTS_UPDATED = exports.FEATURE_VARIANTS_UPDATED = exports.FEATURE_METADATA_UPDATED = exports.FEATURE_UPDATED = exports.FEATURE_DELETED = exports.FEATURE_CREATED = exports.APPLICATION_CREATED = void 0;
exports.FeatureRevivedEvent = exports.FeatureArchivedEvent = exports.FeatureCreatedEvent = exports.FeatureChangeProjectEvent = exports.EnvironmentVariantEvent = exports.FeatureVariantEvent = exports.FeatureEnvironmentEvent = exports.FeatureStaleEvent = exports.PROJECT_UNFAVORITED = exports.PROJECT_FAVORITED = exports.FEATURE_UNFAVORITED = exports.FEATURE_FAVORITED = exports.API_TOKEN_DELETED = exports.API_TOKEN_UPDATED = exports.API_TOKEN_CREATED = exports.CHANGE_REQUEST_APPLIED = exports.CHANGE_REQUEST_SENT_TO_REVIEW = exports.CHANGE_REQUEST_CANCELLED = exports.CHANGE_REQUEST_APPROVAL_ADDED = exports.CHANGE_REQUEST_APPROVED = exports.CHANGE_DISCARDED = exports.CHANGE_ADDED = exports.CHANGE_REQUEST_DISCARDED = exports.CHANGE_REQUEST_CREATED = exports.PUBLIC_SIGNUP_TOKEN_TOKEN_UPDATED = exports.PUBLIC_SIGNUP_TOKEN_USER_ADDED = exports.PUBLIC_SIGNUP_TOKEN_CREATED = exports.PAT_CREATED = exports.CLIENT_REGISTER = exports.CLIENT_METRICS = exports.SETTING_DELETED = exports.SETTING_UPDATED = exports.SETTING_CREATED = exports.GROUP_UPDATED = exports.GROUP_CREATED = exports.SEGMENT_DELETED = exports.SEGMENT_UPDATED = exports.SEGMENT_CREATED = exports.ENVIRONMENT_IMPORT = exports.DROP_ENVIRONMENTS = exports.USER_DELETED = exports.USER_UPDATED = exports.USER_CREATED = exports.DB_POOL_UPDATE = exports.ADDON_CONFIG_DELETED = exports.ADDON_CONFIG_UPDATED = exports.ADDON_CONFIG_CREATED = exports.DROP_TAG_TYPES = exports.TAG_TYPE_IMPORT = exports.TAG_TYPE_UPDATED = void 0;
exports.ApiTokenUpdatedEvent = exports.ApiTokenDeletedEvent = exports.ApiTokenCreatedEvent = exports.PublicSignupTokenUserAddedEvent = exports.PublicSignupTokenUpdatedEvent = exports.PublicSignupTokenCreatedEvent = exports.SettingUpdatedEvent = exports.SettingDeletedEvent = exports.SettingCreatedEvent = exports.ProjectGroupUpdateRoleEvent = exports.ProjectGroupRemovedEvent = exports.ProjectGroupAddedEvent = exports.ProjectUserUpdateRoleEvent = exports.ProjectUserRemovedEvent = exports.ProjectUserAddedEvent = exports.FeatureStrategyRemoveEvent = exports.FeatureStrategyUpdateEvent = exports.FeatureStrategyAddEvent = exports.FeatureMetadataUpdateEvent = exports.FeatureDeletedEvent = void 0;
exports.APPLICATION_CREATED = 'application-created';
// feature event types
exports.FEATURE_CREATED = 'feature-created';
exports.FEATURE_DELETED = 'feature-deleted';
exports.FEATURE_UPDATED = 'feature-updated';
exports.FEATURE_METADATA_UPDATED = 'feature-metadata-updated';
exports.FEATURE_VARIANTS_UPDATED = 'feature-variants-updated';
exports.FEATURE_ENVIRONMENT_VARIANTS_UPDATED = 'feature-environment-variants-updated';
exports.FEATURE_PROJECT_CHANGE = 'feature-project-change';
exports.FEATURE_ARCHIVED = 'feature-archived';
exports.FEATURE_REVIVED = 'feature-revived';
exports.FEATURE_IMPORT = 'feature-import';
exports.FEATURE_TAGGED = 'feature-tagged';
exports.FEATURE_TAG_IMPORT = 'feature-tag-import';
exports.FEATURE_STRATEGY_UPDATE = 'feature-strategy-update';
exports.FEATURE_STRATEGY_ADD = 'feature-strategy-add';
exports.FEATURE_STRATEGY_REMOVE = 'feature-strategy-remove';
exports.DROP_FEATURE_TAGS = 'drop-feature-tags';
exports.FEATURE_UNTAGGED = 'feature-untagged';
exports.FEATURE_STALE_ON = 'feature-stale-on';
exports.FEATURE_STALE_OFF = 'feature-stale-off';
exports.DROP_FEATURES = 'drop-features';
exports.FEATURE_ENVIRONMENT_ENABLED = 'feature-environment-enabled';
exports.FEATURE_ENVIRONMENT_DISABLED = 'feature-environment-disabled';
exports.STRATEGY_CREATED = 'strategy-created';
exports.STRATEGY_DELETED = 'strategy-deleted';
exports.STRATEGY_DEPRECATED = 'strategy-deprecated';
exports.STRATEGY_REACTIVATED = 'strategy-reactivated';
exports.STRATEGY_UPDATED = 'strategy-updated';
exports.STRATEGY_IMPORT = 'strategy-import';
exports.DROP_STRATEGIES = 'drop-strategies';
exports.CONTEXT_FIELD_CREATED = 'context-field-created';
exports.CONTEXT_FIELD_UPDATED = 'context-field-updated';
exports.CONTEXT_FIELD_DELETED = 'context-field-deleted';
exports.PROJECT_CREATED = 'project-created';
exports.PROJECT_UPDATED = 'project-updated';
exports.PROJECT_DELETED = 'project-deleted';
exports.PROJECT_IMPORT = 'project-import';
exports.PROJECT_USER_ADDED = 'project-user-added';
exports.PROJECT_USER_REMOVED = 'project-user-removed';
exports.PROJECT_USER_ROLE_CHANGED = 'project-user-role-changed';
exports.PROJECT_GROUP_ADDED = 'project-group-added';
exports.PROJECT_GROUP_REMOVED = 'project-group-removed';
exports.PROJECT_GROUP_ROLE_CHANGED = 'project-group-role-changed';
exports.DROP_PROJECTS = 'drop-projects';
exports.TAG_CREATED = 'tag-created';
exports.TAG_DELETED = 'tag-deleted';
exports.TAG_IMPORT = 'tag-import';
exports.DROP_TAGS = 'drop-tags';
exports.TAG_TYPE_CREATED = 'tag-type-created';
exports.TAG_TYPE_DELETED = 'tag-type-deleted';
exports.TAG_TYPE_UPDATED = 'tag-type-updated';
exports.TAG_TYPE_IMPORT = 'tag-type-import';
exports.DROP_TAG_TYPES = 'drop-tag-types';
exports.ADDON_CONFIG_CREATED = 'addon-config-created';
exports.ADDON_CONFIG_UPDATED = 'addon-config-updated';
exports.ADDON_CONFIG_DELETED = 'addon-config-deleted';
exports.DB_POOL_UPDATE = 'db-pool-update';
exports.USER_CREATED = 'user-created';
exports.USER_UPDATED = 'user-updated';
exports.USER_DELETED = 'user-deleted';
exports.DROP_ENVIRONMENTS = 'drop-environments';
exports.ENVIRONMENT_IMPORT = 'environment-import';
exports.SEGMENT_CREATED = 'segment-created';
exports.SEGMENT_UPDATED = 'segment-updated';
exports.SEGMENT_DELETED = 'segment-deleted';
exports.GROUP_CREATED = 'group-created';
exports.GROUP_UPDATED = 'group-updated';
exports.SETTING_CREATED = 'setting-created';
exports.SETTING_UPDATED = 'setting-updated';
exports.SETTING_DELETED = 'setting-deleted';
exports.CLIENT_METRICS = 'client-metrics';
exports.CLIENT_REGISTER = 'client-register';
exports.PAT_CREATED = 'pat-created';
exports.PUBLIC_SIGNUP_TOKEN_CREATED = 'public-signup-token-created';
exports.PUBLIC_SIGNUP_TOKEN_USER_ADDED = 'public-signup-token-user-added';
exports.PUBLIC_SIGNUP_TOKEN_TOKEN_UPDATED = 'public-signup-token-updated';
exports.CHANGE_REQUEST_CREATED = 'change-request-created';
exports.CHANGE_REQUEST_DISCARDED = 'change-request-discarded';
exports.CHANGE_ADDED = 'change-added';
exports.CHANGE_DISCARDED = 'change-discarded';
exports.CHANGE_REQUEST_APPROVED = 'change-request-approved';
exports.CHANGE_REQUEST_APPROVAL_ADDED = 'change-request-approval-added';
exports.CHANGE_REQUEST_CANCELLED = 'change-request-cancelled';
exports.CHANGE_REQUEST_SENT_TO_REVIEW = 'change-request-sent-to-review';
exports.CHANGE_REQUEST_APPLIED = 'change-request-applied';
exports.API_TOKEN_CREATED = 'api-token-created';
exports.API_TOKEN_UPDATED = 'api-token-updated';
exports.API_TOKEN_DELETED = 'api-token-deleted';
exports.FEATURE_FAVORITED = 'feature-favorited';
exports.FEATURE_UNFAVORITED = 'feature-unfavorited';
exports.PROJECT_FAVORITED = 'project-favorited';
exports.PROJECT_UNFAVORITED = 'project-unfavorited';
class BaseEvent {
constructor(type, createdBy, tags = []) {
this.type = type;
this.createdBy = createdBy;
this.tags = tags;
}
}
class FeatureStaleEvent extends BaseEvent {
constructor(p) {
super(p.stale ? exports.FEATURE_STALE_ON : exports.FEATURE_STALE_OFF, p.createdBy, p.tags);
this.project = p.project;
this.featureName = p.featureName;
}
}
exports.FeatureStaleEvent = FeatureStaleEvent;
class FeatureEnvironmentEvent extends BaseEvent {
constructor(p) {
super(p.enabled
? exports.FEATURE_ENVIRONMENT_ENABLED
: exports.FEATURE_ENVIRONMENT_DISABLED, p.createdBy, p.tags);
this.project = p.project;
this.featureName = p.featureName;
this.environment = p.environment;
}
}
exports.FeatureEnvironmentEvent = FeatureEnvironmentEvent;
class FeatureVariantEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_VARIANTS_UPDATED, p.createdBy, p.tags);
this.project = p.project;
this.featureName = p.featureName;
this.data = { variants: p.newVariants };
this.preData = { variants: p.oldVariants };
}
}
exports.FeatureVariantEvent = FeatureVariantEvent;
class EnvironmentVariantEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_ENVIRONMENT_VARIANTS_UPDATED, p.createdBy);
this.featureName = p.featureName;
this.environment = p.environment;
this.project = p.project;
this.data = { variants: p.newVariants };
this.preData = { variants: p.oldVariants };
}
}
exports.EnvironmentVariantEvent = EnvironmentVariantEvent;
class FeatureChangeProjectEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_PROJECT_CHANGE, p.createdBy, p.tags);
const { newProject, oldProject, featureName } = p;
this.project = newProject;
this.featureName = featureName;
this.data = { newProject, oldProject };
}
}
exports.FeatureChangeProjectEvent = FeatureChangeProjectEvent;
class FeatureCreatedEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_CREATED, p.createdBy, p.tags);
const { project, featureName, data } = p;
this.project = project;
this.featureName = featureName;
this.data = data;
}
}
exports.FeatureCreatedEvent = FeatureCreatedEvent;
class FeatureArchivedEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_ARCHIVED, p.createdBy, p.tags);
const { project, featureName } = p;
this.project = project;
this.featureName = featureName;
}
}
exports.FeatureArchivedEvent = FeatureArchivedEvent;
class FeatureRevivedEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_REVIVED, p.createdBy, p.tags);
const { project, featureName } = p;
this.project = project;
this.featureName = featureName;
}
}
exports.FeatureRevivedEvent = FeatureRevivedEvent;
class FeatureDeletedEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_DELETED, p.createdBy, p.tags);
const { project, featureName, preData } = p;
this.project = project;
this.featureName = featureName;
this.preData = preData;
}
}
exports.FeatureDeletedEvent = FeatureDeletedEvent;
class FeatureMetadataUpdateEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_METADATA_UPDATED, p.createdBy, p.tags);
const { project, featureName, data, preData } = p;
this.project = project;
this.featureName = featureName;
this.data = data;
this.preData = preData;
}
}
exports.FeatureMetadataUpdateEvent = FeatureMetadataUpdateEvent;
class FeatureStrategyAddEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_STRATEGY_ADD, p.createdBy, p.tags);
const { project, featureName, environment, data } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.data = data;
}
}
exports.FeatureStrategyAddEvent = FeatureStrategyAddEvent;
class FeatureStrategyUpdateEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_STRATEGY_UPDATE, p.createdBy, p.tags);
const { project, featureName, environment, data, preData } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.data = data;
this.preData = preData;
}
}
exports.FeatureStrategyUpdateEvent = FeatureStrategyUpdateEvent;
class FeatureStrategyRemoveEvent extends BaseEvent {
constructor(p) {
super(exports.FEATURE_STRATEGY_REMOVE, p.createdBy, p.tags);
const { project, featureName, environment, preData } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.preData = preData;
}
}
exports.FeatureStrategyRemoveEvent = FeatureStrategyRemoveEvent;
class ProjectUserAddedEvent extends BaseEvent {
constructor(p) {
super(exports.PROJECT_USER_ADDED, p.createdBy);
const { project, data } = p;
this.project = project;
this.data = data;
this.preData = null;
}
}
exports.ProjectUserAddedEvent = ProjectUserAddedEvent;
class ProjectUserRemovedEvent extends BaseEvent {
constructor(p) {
super(exports.PROJECT_USER_REMOVED, p.createdBy);
const { project, preData } = p;
this.project = project;
this.data = null;
this.preData = preData;
}
}
exports.ProjectUserRemovedEvent = ProjectUserRemovedEvent;
class ProjectUserUpdateRoleEvent extends BaseEvent {
constructor(eventData) {
super(exports.PROJECT_USER_REMOVED, eventData.createdBy);
const { project, data, preData } = eventData;
this.project = project;
this.data = data;
this.preData = preData;
}
}
exports.ProjectUserUpdateRoleEvent = ProjectUserUpdateRoleEvent;
class ProjectGroupAddedEvent extends BaseEvent {
constructor(p) {
super(exports.PROJECT_GROUP_ADDED, p.createdBy);
const { project, data } = p;
this.project = project;
this.data = data;
this.preData = null;
}
}
exports.ProjectGroupAddedEvent = ProjectGroupAddedEvent;
class ProjectGroupRemovedEvent extends BaseEvent {
constructor(p) {
super(exports.PROJECT_GROUP_REMOVED, p.createdBy);
const { project, preData } = p;
this.project = project;
this.data = null;
this.preData = preData;
}
}
exports.ProjectGroupRemovedEvent = ProjectGroupRemovedEvent;
class ProjectGroupUpdateRoleEvent extends BaseEvent {
constructor(eventData) {
super(exports.PROJECT_GROUP_ROLE_CHANGED, eventData.createdBy);
const { project, data, preData } = eventData;
this.project = project;
this.data = data;
this.preData = preData;
}
}
exports.ProjectGroupUpdateRoleEvent = ProjectGroupUpdateRoleEvent;
class SettingCreatedEvent extends BaseEvent {
constructor(eventData) {
super(exports.SETTING_CREATED, eventData.createdBy);
this.data = eventData.data;
}
}
exports.SettingCreatedEvent = SettingCreatedEvent;
class SettingDeletedEvent extends BaseEvent {
constructor(eventData) {
super(exports.SETTING_DELETED, eventData.createdBy);
this.data = eventData.data;
}
}
exports.SettingDeletedEvent = SettingDeletedEvent;
class SettingUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(exports.SETTING_UPDATED, eventData.createdBy);
this.data = eventData.data;
}
}
exports.SettingUpdatedEvent = SettingUpdatedEvent;
class PublicSignupTokenCreatedEvent extends BaseEvent {
constructor(eventData) {
super(exports.PUBLIC_SIGNUP_TOKEN_CREATED, eventData.createdBy);
this.data = eventData.data;
}
}
exports.PublicSignupTokenCreatedEvent = PublicSignupTokenCreatedEvent;
class PublicSignupTokenUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(exports.PUBLIC_SIGNUP_TOKEN_TOKEN_UPDATED, eventData.createdBy);
this.data = eventData.data;
}
}
exports.PublicSignupTokenUpdatedEvent = PublicSignupTokenUpdatedEvent;
class PublicSignupTokenUserAddedEvent extends BaseEvent {
constructor(eventData) {
super(exports.PUBLIC_SIGNUP_TOKEN_USER_ADDED, eventData.createdBy);
this.data = eventData.data;
}
}
exports.PublicSignupTokenUserAddedEvent = PublicSignupTokenUserAddedEvent;
class ApiTokenCreatedEvent extends BaseEvent {
constructor(eventData) {
super(exports.API_TOKEN_CREATED, eventData.createdBy);
this.data = eventData.apiToken;
this.environment = eventData.apiToken.environment;
this.project = eventData.apiToken.project;
}
}
exports.ApiTokenCreatedEvent = ApiTokenCreatedEvent;
class ApiTokenDeletedEvent extends BaseEvent {
constructor(eventData) {
super(exports.API_TOKEN_DELETED, eventData.createdBy);
this.preData = eventData.apiToken;
this.environment = eventData.apiToken.environment;
this.project = eventData.apiToken.project;
}
}
exports.ApiTokenDeletedEvent = ApiTokenDeletedEvent;
class ApiTokenUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(exports.API_TOKEN_UPDATED, eventData.createdBy);
this.preData = eventData.previousToken;
this.data = eventData.apiToken;
this.environment = eventData.apiToken.environment;
this.project = eventData.apiToken.project;
}
}
exports.ApiTokenUpdatedEvent = ApiTokenUpdatedEvent;
//# sourceMappingURL=events.js.map