unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
857 lines • 29.4 kB
JavaScript
import { ADDON_CONFIG_CREATED, ADDON_CONFIG_DELETED, ADDON_CONFIG_UPDATED, API_TOKEN_CREATED, API_TOKEN_DELETED, API_TOKEN_UPDATED, DEFAULT_STRATEGY_UPDATED, DROP_ENVIRONMENTS, DROP_FEATURE_TAGS, DROP_FEATURES, DROP_PROJECTS, DROP_STRATEGIES, DROP_TAG_TYPES, DROP_TAGS, ENVIRONMENT_IMPORT, FEATURE_ARCHIVED, FEATURE_COMPLETED, FEATURE_CREATED, FEATURE_DELETED, FEATURE_ENVIRONMENT_DISABLED, FEATURE_ENVIRONMENT_ENABLED, FEATURE_ENVIRONMENT_VARIANTS_UPDATED, FEATURE_FAVORITED, FEATURE_IMPORT, FEATURE_METADATA_UPDATED, FEATURE_POTENTIALLY_STALE_ON, FEATURE_PROJECT_CHANGE, FEATURE_REVIVED, FEATURE_STALE_OFF, FEATURE_STALE_ON, FEATURE_STRATEGY_ADD, FEATURE_STRATEGY_REMOVE, FEATURE_STRATEGY_UPDATE, FEATURE_TAG_IMPORT, FEATURE_TAGGED, FEATURE_TYPE_UPDATED, FEATURE_UNCOMPLETED, STRATEGY_ORDER_CHANGED, STRATEGY_CREATED, STRATEGY_DELETED, STRATEGY_DEPRECATED, STRATEGY_REACTIVATED, STRATEGY_UPDATED, STRATEGY_IMPORT, FEATURE_UNFAVORITED, FEATURE_UPDATED, FEATURE_VARIANTS_UPDATED, FEATURES_EXPORTED, FEATURES_IMPORTED, GROUP_DELETED, GROUP_UPDATED, GROUP_USER_ADDED, GROUP_USER_REMOVED, PAT_CREATED, PAT_DELETED, PROJECT_ACCESS_ADDED, PROJECT_ACCESS_GROUP_ROLES_DELETED, PROJECT_ACCESS_GROUP_ROLES_UPDATED, PROJECT_ACCESS_USER_ROLES_DELETED, PROJECT_ACCESS_USER_ROLES_UPDATED, PROJECT_ARCHIVED, PROJECT_CREATED, PROJECT_DELETED, PROJECT_ENVIRONMENT_ADDED, PROJECT_ENVIRONMENT_REMOVED, PROJECT_FAVORITED, PROJECT_GROUP_ADDED, PROJECT_IMPORT, PROJECT_REVIVED, PROJECT_UNFAVORITED, PROJECT_UPDATED, PROJECT_USER_ADDED, PROJECT_USER_REMOVED, PROJECT_USER_ROLE_CHANGED, PUBLIC_SIGNUP_TOKEN_CREATED, PUBLIC_SIGNUP_TOKEN_TOKEN_UPDATED, PUBLIC_SIGNUP_TOKEN_USER_ADDED, RELEASE_PLAN_ADDED, RELEASE_PLAN_MILESTONE_STARTED, RELEASE_PLAN_REMOVED, RELEASE_PLAN_TEMPLATE_ARCHIVED, RELEASE_PLAN_TEMPLATE_CREATED, RELEASE_PLAN_TEMPLATE_DELETED, RELEASE_PLAN_TEMPLATE_UPDATED, ROLE_CREATED, ROLE_DELETED, ROLE_UPDATED, SCIM_GROUPS_DELETED, SCIM_USERS_DELETED, SEGMENT_CREATED, SEGMENT_DELETED, SEGMENT_UPDATED, SETTING_CREATED, SETTING_DELETED, SETTING_UPDATED, TAG_CREATED, TAG_DELETED, TAG_IMPORT, TAG_TYPE_DELETED, TAG_TYPE_IMPORT, TAG_TYPE_UPDATED, USER_CREATED, USER_DELETED, USER_PREFERENCE_UPDATED, USER_UPDATED, FEATURE_LINK_REMOVED, FEATURE_LINK_UPDATED, FEATURE_LINK_ADDED, APPLICATION_CREATED, } from '../events/index.js';
export class BaseEvent {
/**
* @param type the type of the event we're creating.
* @param auditUser User info used to track which user performed the action. Includes username (email or username), userId and ip
*/
constructor(type, auditUser) {
this.type = type;
this.createdBy = auditUser.username || 'unknown';
this.createdByUserId = auditUser.id || -1337;
this.ip = auditUser.ip || '';
}
}
export class FeatureStaleEvent extends BaseEvent {
constructor(p) {
super(p.stale ? FEATURE_STALE_ON : FEATURE_STALE_OFF, p.auditUser);
this.project = p.project;
this.featureName = p.featureName;
}
}
export class FeatureEnvironmentEvent extends BaseEvent {
constructor(p) {
super(p.enabled
? FEATURE_ENVIRONMENT_ENABLED
: FEATURE_ENVIRONMENT_DISABLED, p.auditUser);
this.project = p.project;
this.featureName = p.featureName;
this.environment = p.environment;
}
}
export class StrategiesOrderChangedEvent extends BaseEvent {
constructor(p) {
super(STRATEGY_ORDER_CHANGED, p.auditUser);
const { project, featureName, environment, data, preData } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.data = data;
this.preData = preData;
}
}
export class FeatureVariantEvent extends BaseEvent {
constructor(p) {
super(FEATURE_VARIANTS_UPDATED, p.auditUser);
this.project = p.project;
this.featureName = p.featureName;
this.data = { variants: p.newVariants };
this.preData = { variants: p.oldVariants };
}
}
export class EnvironmentVariantEvent extends BaseEvent {
/**
*/
constructor(p) {
super(FEATURE_ENVIRONMENT_VARIANTS_UPDATED, p.auditUser);
this.featureName = p.featureName;
this.environment = p.environment;
this.project = p.project;
this.data = { variants: p.newVariants };
this.preData = { variants: p.oldVariants };
}
}
export class ProjectCreatedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_CREATED, eventData.auditUser);
this.project = eventData.project;
this.data = eventData.data;
}
}
export class ProjectUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_UPDATED, eventData.auditUser);
this.project = eventData.project;
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class ProjectDeletedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_DELETED, eventData.auditUser);
this.project = eventData.project;
}
}
export class ProjectArchivedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_ARCHIVED, eventData.auditUser);
this.project = eventData.project;
}
}
export class ProjectRevivedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_REVIVED, eventData.auditUser);
this.project = eventData.project;
}
}
export class RoleUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(ROLE_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class FeatureChangeProjectEvent extends BaseEvent {
constructor(p) {
super(FEATURE_PROJECT_CHANGE, p.auditUser);
const { newProject, oldProject, featureName } = p;
this.project = newProject;
this.featureName = featureName;
this.data = {
newProject,
oldProject,
};
}
}
export class FeatureCreatedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_CREATED, p.auditUser);
const { project, featureName, data } = p;
this.project = project;
this.featureName = featureName;
this.data = data;
}
}
export class ProjectImport extends BaseEvent {
constructor(p) {
super(PROJECT_IMPORT, p.auditUser);
this.data = p.project;
}
}
export class FeatureImport extends BaseEvent {
constructor(p) {
super(FEATURE_IMPORT, p.auditUser);
this.data = p.feature;
}
}
export class StrategyImport extends BaseEvent {
constructor(p) {
super(STRATEGY_IMPORT, p.auditUser);
this.data = p.strategy;
}
}
export class EnvironmentImport extends BaseEvent {
constructor(p) {
super(ENVIRONMENT_IMPORT, p.auditUser);
this.data = p.env;
}
}
export class TagTypeImport extends BaseEvent {
constructor(p) {
super(TAG_TYPE_IMPORT, p.auditUser);
this.data = p.tagType;
}
}
export class TagImport extends BaseEvent {
constructor(p) {
super(TAG_IMPORT, p.auditUser);
this.data = p.tag;
}
}
export class FeatureTagImport extends BaseEvent {
constructor(p) {
super(FEATURE_TAG_IMPORT, p.auditUser);
this.data = p.featureTag;
}
}
export class FeatureCompletedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_COMPLETED, p.auditUser);
const { featureName, data, project } = p;
this.featureName = featureName;
this.data = data;
this.project = project;
}
}
export class FeatureUncompletedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_UNCOMPLETED, p.auditUser);
const { featureName, project } = p;
this.featureName = featureName;
this.project = project;
}
}
export class FeatureUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURE_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.project = eventData.project;
this.featureName = eventData.featureName;
}
}
export class FeatureTaggedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURE_TAGGED, eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
this.data = eventData.data;
}
}
export class FeatureTypeUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURE_TYPE_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class FeatureDependencyAddedEvent extends BaseEvent {
constructor(eventData) {
super('feature-dependency-added', eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
this.data = eventData.data;
}
}
export class FeatureDependencyRemovedEvent extends BaseEvent {
constructor(eventData) {
super('feature-dependency-removed', eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
this.data = eventData.data;
}
}
export class FeatureDependenciesRemovedEvent extends BaseEvent {
constructor(eventData) {
super('feature-dependencies-removed', eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
}
}
export class FeaturesImportedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURES_IMPORTED, eventData.auditUser);
this.project = eventData.project;
this.environment = eventData.environment;
}
}
export class FeatureArchivedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_ARCHIVED, p.auditUser);
const { project, featureName } = p;
this.project = project;
this.featureName = featureName;
}
}
export class FeatureRevivedEvent extends BaseEvent {
/**
*/
constructor(p) {
super(FEATURE_REVIVED, p.auditUser);
const { project, featureName } = p;
this.project = project;
this.featureName = featureName;
}
}
export class FeatureDeletedEvent extends BaseEvent {
/**
*/
constructor(p) {
super(FEATURE_DELETED, p.auditUser);
const { project, featureName, preData } = p;
this.project = project;
this.featureName = featureName;
this.preData = preData;
this.tags = p.tags;
}
}
export class FeatureMetadataUpdateEvent extends BaseEvent {
/**
*/
constructor(p) {
super(FEATURE_METADATA_UPDATED, p.auditUser);
const { project, featureName, data, preData } = p;
this.project = project;
this.featureName = featureName;
this.data = data;
this.preData = preData;
}
}
export class FeatureLinkAddedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_LINK_ADDED, p.auditUser);
const { project, featureName, data } = p;
this.project = project;
this.featureName = featureName;
this.data = data;
this.preData = null;
}
}
export class FeatureLinkUpdatedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_LINK_UPDATED, p.auditUser);
const { project, featureName, data, preData } = p;
this.project = project;
this.featureName = featureName;
this.data = data;
this.preData = preData;
}
}
export class FeatureLinkRemovedEvent extends BaseEvent {
constructor(p) {
super(FEATURE_LINK_REMOVED, p.auditUser);
const { project, featureName, preData } = p;
this.project = project;
this.featureName = featureName;
this.data = null;
this.preData = preData;
}
}
export class FeatureStrategyAddEvent extends BaseEvent {
/**
*/
constructor(p) {
super(FEATURE_STRATEGY_ADD, p.auditUser);
const { project, featureName, environment, data } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.data = data;
}
}
export class FeatureStrategyUpdateEvent extends BaseEvent {
/**
*/
constructor(p) {
super(FEATURE_STRATEGY_UPDATE, p.auditUser);
const { project, featureName, environment, data, preData } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.data = data;
this.preData = preData;
}
}
export class FeatureStrategyRemoveEvent extends BaseEvent {
constructor(p) {
super(FEATURE_STRATEGY_REMOVE, p.auditUser);
const { project, featureName, environment, preData } = p;
this.project = project;
this.featureName = featureName;
this.environment = environment;
this.preData = preData;
}
}
export class FeatureFavoritedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURE_FAVORITED, eventData.auditUser);
this.data = eventData.data;
this.featureName = eventData.featureName;
}
}
export class ProjectFavoritedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_FAVORITED, eventData.auditUser);
this.data = eventData.data;
this.project = eventData.project;
}
}
export class FeatureUnfavoritedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURE_UNFAVORITED, eventData.auditUser);
this.data = eventData.data;
this.featureName = eventData.featureName;
}
}
export class ProjectUnfavoritedEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_UNFAVORITED, eventData.auditUser);
this.data = eventData.data;
this.project = eventData.project;
}
}
export class ProjectUserAddedEvent extends BaseEvent {
/**
*/
constructor(p) {
super(PROJECT_USER_ADDED, p.auditUser);
const { project, data } = p;
this.project = project;
this.data = data;
this.preData = null;
}
}
export class ProjectUserRemovedEvent extends BaseEvent {
constructor(p) {
super(PROJECT_USER_REMOVED, p.auditUser);
const { project, preData } = p;
this.project = project;
this.data = null;
this.preData = preData;
}
}
export class ProjectUserUpdateRoleEvent extends BaseEvent {
constructor(eventData) {
super(PROJECT_USER_ROLE_CHANGED, eventData.auditUser);
const { project, data, preData } = eventData;
this.project = project;
this.data = data;
this.preData = preData;
}
}
export class ProjectGroupAddedEvent extends BaseEvent {
constructor(p) {
super(PROJECT_GROUP_ADDED, p.auditUser);
const { project, data } = p;
this.project = project;
this.data = data;
this.preData = null;
}
}
export class ProjectAccessAddedEvent extends BaseEvent {
constructor(p) {
super(PROJECT_ACCESS_ADDED, p.auditUser);
const { project, data } = p;
this.project = project;
this.data = data;
this.preData = null;
}
}
export class ProjectAccessUserRolesUpdated extends BaseEvent {
constructor(p) {
super(PROJECT_ACCESS_USER_ROLES_UPDATED, p.auditUser);
const { project, data, preData } = p;
this.project = project;
this.data = data;
this.preData = preData;
}
}
export class ProjectAccessGroupRolesUpdated extends BaseEvent {
constructor(p) {
super(PROJECT_ACCESS_GROUP_ROLES_UPDATED, p.auditUser);
const { project, data, preData } = p;
this.project = project;
this.data = data;
this.preData = preData;
}
}
export class GroupUserRemoved extends BaseEvent {
constructor(p) {
super(GROUP_USER_REMOVED, p.auditUser);
this.preData = {
groupId: p.groupId,
userId: p.userId,
};
}
}
export class GroupUserAdded extends BaseEvent {
constructor(p) {
super(GROUP_USER_ADDED, p.auditUser);
this.data = {
groupId: p.groupId,
userId: p.userId,
};
}
}
export class ProjectAccessUserRolesDeleted extends BaseEvent {
constructor(p) {
super(PROJECT_ACCESS_USER_ROLES_DELETED, p.auditUser);
const { project, preData } = p;
this.project = project;
this.data = null;
this.preData = preData;
}
}
export class ProjectAccessGroupRolesDeleted extends BaseEvent {
constructor(p) {
super(PROJECT_ACCESS_GROUP_ROLES_DELETED, p.auditUser);
const { project, preData } = p;
this.project = project;
this.data = null;
this.preData = preData;
}
}
export class SettingCreatedEvent extends BaseEvent {
constructor(eventData) {
super(SETTING_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class SettingDeletedEvent extends BaseEvent {
constructor(eventData) {
super(SETTING_DELETED, eventData.auditUser);
this.data = eventData.data;
}
}
export class SettingUpdatedEvent extends BaseEvent {
constructor(eventData, preData) {
super(SETTING_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.preData = preData;
}
}
export class PublicSignupTokenCreatedEvent extends BaseEvent {
constructor(eventData) {
super(PUBLIC_SIGNUP_TOKEN_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class PublicSignupTokenUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(PUBLIC_SIGNUP_TOKEN_TOKEN_UPDATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class PublicSignupTokenUserAddedEvent extends BaseEvent {
constructor(eventData) {
super(PUBLIC_SIGNUP_TOKEN_USER_ADDED, eventData.auditUser);
this.data = eventData.data;
}
}
export class ApiTokenCreatedEvent extends BaseEvent {
constructor(eventData) {
super(API_TOKEN_CREATED, eventData.auditUser);
this.data = eventData.apiToken;
this.environment = eventData.apiToken.environment;
this.project = eventData.apiToken.project;
}
}
export class ApiTokenDeletedEvent extends BaseEvent {
constructor(eventData) {
super(API_TOKEN_DELETED, eventData.auditUser);
this.preData = eventData.apiToken;
this.environment = eventData.apiToken.environment;
this.project = eventData.apiToken.project;
}
}
export class ApiTokenUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(API_TOKEN_UPDATED, eventData.auditUser);
this.preData = eventData.previousToken;
this.data = eventData.apiToken;
this.environment = eventData.apiToken.environment;
this.project = eventData.apiToken.project;
}
}
export class PotentiallyStaleOnEvent extends BaseEvent {
constructor(eventData) {
super(FEATURE_POTENTIALLY_STALE_ON, eventData.auditUser);
this.featureName = eventData.featureName;
this.project = eventData.project;
}
}
export class UserCreatedEvent extends BaseEvent {
constructor(eventData) {
super(USER_CREATED, eventData.auditUser);
this.data = mapUserToData(eventData.userCreated);
}
}
export class UserUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(USER_UPDATED, eventData.auditUser);
this.preData = mapUserToData(eventData.preUser);
this.data = mapUserToData(eventData.postUser);
}
}
export class UserDeletedEvent extends BaseEvent {
constructor(eventData) {
super(USER_DELETED, eventData.auditUser);
this.preData = mapUserToData(eventData.deletedUser);
}
}
export class ScimUsersDeleted extends BaseEvent {
constructor(eventData) {
super(SCIM_USERS_DELETED, eventData.auditUser);
this.data = eventData.data;
}
}
export class ScimGroupsDeleted extends BaseEvent {
constructor(eventData) {
super(SCIM_GROUPS_DELETED, eventData.auditUser);
this.data = eventData.data;
}
}
export class TagTypeCreatedEvent extends BaseEvent {
constructor(eventData) {
super('tag-type-created', eventData.auditUser);
this.data = eventData.data;
}
}
export class TagTypeDeletedEvent extends BaseEvent {
constructor(eventData) {
super(TAG_TYPE_DELETED, eventData.auditUser);
this.preData = eventData.preData;
}
}
export class TagTypeUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(TAG_TYPE_UPDATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class TagCreatedEvent extends BaseEvent {
constructor(eventData) {
super(TAG_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class TagDeletedEvent extends BaseEvent {
constructor(eventData) {
super(TAG_DELETED, eventData.auditUser);
this.data = eventData.data;
}
}
export class PatCreatedEvent extends BaseEvent {
constructor(eventData) {
super(PAT_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class PatDeletedEvent extends BaseEvent {
constructor(eventData) {
super(PAT_DELETED, eventData.auditUser);
this.data = eventData.data;
}
}
export class ProjectEnvironmentAdded extends BaseEvent {
constructor(eventData) {
super(PROJECT_ENVIRONMENT_ADDED, eventData.auditUser);
this.project = eventData.project;
this.environment = eventData.environment;
}
}
export class ProjectEnvironmentRemoved extends BaseEvent {
constructor(eventData) {
super(PROJECT_ENVIRONMENT_REMOVED, eventData.auditUser);
this.project = eventData.project;
this.environment = eventData.environment;
}
}
export class FeaturesExportedEvent extends BaseEvent {
constructor(eventData) {
super(FEATURES_EXPORTED, eventData.auditUser);
this.data = eventData;
}
}
export class DropProjectsEvent extends BaseEvent {
constructor(eventData) {
super(DROP_PROJECTS, eventData.auditUser);
this.data = { name: 'all-projects' };
}
}
export class DropFeaturesEvent extends BaseEvent {
constructor(eventData) {
super(DROP_FEATURES, eventData.auditUser);
this.data = { name: 'all-features' };
}
}
export class DropStrategiesEvent extends BaseEvent {
constructor(eventData) {
super(DROP_STRATEGIES, eventData.auditUser);
this.data = { name: 'all-strategies' };
}
}
export class DropEnvironmentsEvent extends BaseEvent {
constructor(eventData) {
super(DROP_ENVIRONMENTS, eventData.auditUser);
this.data = { name: 'all-environments' };
}
}
export class DropFeatureTagsEvent extends BaseEvent {
constructor(eventData) {
super(DROP_FEATURE_TAGS, eventData.auditUser);
this.data = { name: 'all-feature-tags' };
}
}
export class DropTagsEvent extends BaseEvent {
constructor(eventData) {
super(DROP_TAGS, eventData.auditUser);
this.data = { name: 'all-tags' };
}
}
export class DropTagTypesEvent extends BaseEvent {
constructor(eventData) {
super(DROP_TAG_TYPES, eventData.auditUser);
this.data = { name: 'all-tag-types' };
}
}
export class RoleCreatedEvent extends BaseEvent {
constructor(eventData) {
super(ROLE_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class RoleDeletedEvent extends BaseEvent {
constructor(eventData) {
super(ROLE_DELETED, eventData.auditUser);
this.preData = eventData.preData;
}
}
export class StrategyCreatedEvent extends BaseEvent {
constructor(eventData) {
super(STRATEGY_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class StrategyUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(STRATEGY_UPDATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class StrategyDeletedEvent extends BaseEvent {
constructor(eventData) {
super(STRATEGY_DELETED, eventData.auditUser);
this.data = eventData.data;
}
}
export class StrategyDeprecatedEvent extends BaseEvent {
constructor(eventData) {
super(STRATEGY_DEPRECATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class StrategyReactivatedEvent extends BaseEvent {
constructor(eventData) {
super(STRATEGY_REACTIVATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class DefaultStrategyUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(DEFAULT_STRATEGY_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.preData = eventData.preData;
this.project = eventData.project;
this.environment = eventData.environment;
}
}
export class AddonConfigCreatedEvent extends BaseEvent {
constructor(eventData) {
super(ADDON_CONFIG_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class AddonConfigUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(ADDON_CONFIG_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class AddonConfigDeletedEvent extends BaseEvent {
constructor(eventData) {
super(ADDON_CONFIG_DELETED, eventData.auditUser);
this.preData = eventData.preData;
}
}
export class SegmentCreatedEvent extends BaseEvent {
constructor(eventData) {
super(SEGMENT_CREATED, eventData.auditUser);
this.project = eventData.project;
this.data = eventData.data;
}
}
export class SegmentUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(SEGMENT_UPDATED, eventData.auditUser);
this.project = eventData.project;
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class SegmentDeletedEvent extends BaseEvent {
constructor(eventData) {
super(SEGMENT_DELETED, eventData.auditUser);
this.preData = eventData.preData;
this.project = eventData.project;
}
}
export class GroupUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(GROUP_UPDATED, eventData.auditUser);
this.preData = eventData.preData;
this.data = eventData.data;
}
}
export class GroupDeletedEvent extends BaseEvent {
constructor(eventData) {
super(GROUP_DELETED, eventData.auditUser);
this.preData = eventData.preData;
}
}
export class ReleasePlanTemplateCreatedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_TEMPLATE_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
export class ReleasePlanTemplateUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_TEMPLATE_UPDATED, eventData.auditUser);
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class ReleasePlanTemplateDeletedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_TEMPLATE_DELETED, eventData.auditUser);
this.preData = eventData.preData;
}
}
export class ReleasePlanTemplateArchivedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_TEMPLATE_ARCHIVED, eventData.auditUser);
this.data = eventData.data;
this.preData = eventData.preData;
}
}
export class ReleasePlanAddedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_ADDED, eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
this.environment = eventData.environment;
this.data = eventData.data;
}
}
export class ReleasePlanRemovedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_REMOVED, eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
this.environment = eventData.environment;
this.preData = eventData.preData;
}
}
export class ReleasePlanMilestoneStartedEvent extends BaseEvent {
constructor(eventData) {
super(RELEASE_PLAN_MILESTONE_STARTED, eventData.auditUser);
this.project = eventData.project;
this.featureName = eventData.featureName;
this.environment = eventData.environment;
this.preData = eventData.preData;
this.data = eventData.data;
}
}
export class ApplicationCreatedEvent extends BaseEvent {
constructor(eventData) {
super(APPLICATION_CREATED, eventData.auditUser);
this.data = eventData.data;
}
}
function mapUserToData(user) {
return {
id: user.id,
name: user.name,
username: user.username,
email: user.email,
rootRole: user.rootRole,
};
}
export class UserPreferenceUpdatedEvent extends BaseEvent {
constructor(eventData) {
super(USER_PREFERENCE_UPDATED, eventData.auditUser);
this.userId = eventData.userId;
this.data = eventData.data;
}
}
//# sourceMappingURL=events.js.map