mirror of
https://github.com/Unleash/unleash.git
synced 2025-09-10 17:53:36 +02:00
refactor: drop legacy prefix
This commit is contained in:
parent
f9a1474502
commit
8527787db8
@ -3,6 +3,7 @@ import metricsHelper from '../util/metrics-helper';
|
||||
import { DB_TIME } from '../metric-events';
|
||||
import { Logger, LogProvider } from '../logger';
|
||||
import {
|
||||
FeatureToggle,
|
||||
IFeatureToggleClient,
|
||||
IFeatureToggleQuery,
|
||||
IStrategyConfig,
|
||||
@ -31,7 +32,7 @@ export interface IGetAdminFeatures {
|
||||
|
||||
// This is extracted from the feature-toggle-client-store that was mixing
|
||||
// client and admin concerns
|
||||
export default class FeatureToggleLegacyAdminStore {
|
||||
export default class FeatureToggleAdminStore {
|
||||
private db: Db;
|
||||
|
||||
private logger: Logger;
|
||||
@ -40,7 +41,7 @@ export default class FeatureToggleLegacyAdminStore {
|
||||
|
||||
constructor(db: Db, eventBus: EventEmitter, getLogger: LogProvider) {
|
||||
this.db = db;
|
||||
this.logger = getLogger('feature-toggle-legacy-admin-store.ts');
|
||||
this.logger = getLogger('feature-toggle-admin-store.ts');
|
||||
this.timer = (action) =>
|
||||
metricsHelper.wrapTimer(eventBus, DB_TIME, {
|
||||
store: 'admin-feature-toggle',
|
||||
@ -52,7 +53,7 @@ export default class FeatureToggleLegacyAdminStore {
|
||||
featureQuery,
|
||||
archived,
|
||||
userId,
|
||||
}: IGetAllFeatures): Promise<IFeatureToggleClient[]> {
|
||||
}: IGetAllFeatures): Promise<FeatureToggle[]> {
|
||||
const environment = featureQuery?.environment || DEFAULT_ENV;
|
||||
const stopTimer = this.timer('getFeatureAdmin');
|
||||
|
||||
@ -159,14 +160,9 @@ export default class FeatureToggleLegacyAdminStore {
|
||||
stopTimer();
|
||||
|
||||
const featureToggles = rows.reduce((acc, r) => {
|
||||
let feature: PartialDeep<IFeatureToggleClient> = acc[r.name] ?? {
|
||||
let feature: PartialDeep<FeatureToggle> = acc[r.name] ?? {
|
||||
strategies: [],
|
||||
};
|
||||
if (this.isUnseenStrategyRow(feature, r)) {
|
||||
feature.strategies.push(
|
||||
FeatureToggleLegacyAdminStore.rowToStrategy(r),
|
||||
);
|
||||
}
|
||||
if (this.isNewTag(feature, r)) {
|
||||
this.addTag(feature, r);
|
||||
}
|
||||
@ -179,7 +175,6 @@ export default class FeatureToggleLegacyAdminStore {
|
||||
this.addSegmentIdsToStrategy(feature, r);
|
||||
}
|
||||
feature.impressionData = r.impression_data;
|
||||
feature.enabled = !!r.enabled;
|
||||
feature.name = r.name;
|
||||
feature.description = r.description;
|
||||
feature.project = r.project;
|
||||
@ -194,7 +189,7 @@ export default class FeatureToggleLegacyAdminStore {
|
||||
return acc;
|
||||
}, {});
|
||||
|
||||
const features: IFeatureToggleClient[] = Object.values(featureToggles);
|
||||
const features: FeatureToggle[] = Object.values(featureToggles);
|
||||
|
||||
return features;
|
||||
}
|
||||
@ -230,7 +225,7 @@ export default class FeatureToggleLegacyAdminStore {
|
||||
row: Record<string, any>,
|
||||
): void {
|
||||
const tags = feature.tags || [];
|
||||
const newTag = FeatureToggleLegacyAdminStore.rowToTag(row);
|
||||
const newTag = FeatureToggleAdminStore.rowToTag(row);
|
||||
feature.tags = [...tags, newTag];
|
||||
}
|
||||
|
@ -37,7 +37,7 @@ import { AccountStore } from './account-store';
|
||||
import ProjectStatsStore from './project-stats-store';
|
||||
import { Db } from './db';
|
||||
import { ImportTogglesStore } from '../features/export-import-toggles/import-toggles-store';
|
||||
import FeatureToggleLegacyAdminStore from './feature-toggle-legacy-admin-store';
|
||||
import FeatureToggleAdminStore from './feature-toggle-admin-store';
|
||||
|
||||
export const createStores = (
|
||||
config: IUnleashConfig,
|
||||
@ -87,7 +87,7 @@ export const createStores = (
|
||||
eventBus,
|
||||
getLogger,
|
||||
),
|
||||
featureToggleLegacyAdminStore: new FeatureToggleLegacyAdminStore(
|
||||
featureToggleLegacyAdminStore: new FeatureToggleAdminStore(
|
||||
db,
|
||||
eventBus,
|
||||
getLogger,
|
||||
|
@ -34,7 +34,7 @@ import FakeAccessStore from '../../../test/fixtures/fake-access-store';
|
||||
import FakeRoleStore from '../../../test/fixtures/fake-role-store';
|
||||
import FakeEnvironmentStore from '../../../test/fixtures/fake-environment-store';
|
||||
import EventStore from '../../db/event-store';
|
||||
import FeatureToggleLegacyAdminStore from '../../db/feature-toggle-legacy-admin-store';
|
||||
import FeatureToggleAdminStore from '../../db/feature-toggle-admin-store';
|
||||
|
||||
export const createFeatureToggleService = (
|
||||
db: Db,
|
||||
@ -53,7 +53,7 @@ export const createFeatureToggleService = (
|
||||
eventBus,
|
||||
getLogger,
|
||||
);
|
||||
const featureToggleLegacyAdminStore = new FeatureToggleLegacyAdminStore(
|
||||
const featureToggleLegacyAdminStore = new FeatureToggleAdminStore(
|
||||
db,
|
||||
eventBus,
|
||||
getLogger,
|
||||
|
@ -82,7 +82,7 @@ import {
|
||||
} from '../types/permissions';
|
||||
import NoAccessError from '../error/no-access-error';
|
||||
import { IFeatureProjectUserParams } from '../routes/admin-api/project/project-features';
|
||||
import { IFeatureToggleLegacyAdminStore } from '../types/stores/feature-toggle-legacy-admin-store';
|
||||
import { IFeatureToggleAdminStore } from '../types/stores/feature-toggle-admin-store';
|
||||
|
||||
interface IFeatureContext {
|
||||
featureName: string;
|
||||
@ -114,7 +114,7 @@ class FeatureToggleService {
|
||||
|
||||
private featureToggleClientStore: IFeatureToggleClientStore;
|
||||
|
||||
private featureToggleLegacyAdminStore: IFeatureToggleLegacyAdminStore;
|
||||
private featureToggleLegacyAdminStore: IFeatureToggleAdminStore;
|
||||
|
||||
private tagStore: IFeatureTagStore;
|
||||
|
||||
|
@ -57,6 +57,7 @@ export interface FeatureToggle extends FeatureToggleDTO {
|
||||
project: string;
|
||||
lastSeenAt?: Date;
|
||||
createdAt?: Date;
|
||||
favorite?: boolean;
|
||||
}
|
||||
|
||||
export interface IFeatureToggleClient {
|
||||
@ -72,7 +73,6 @@ export interface IFeatureToggleClient {
|
||||
lastSeenAt?: Date;
|
||||
createdAt?: Date;
|
||||
tags?: ITag[];
|
||||
favorite?: boolean;
|
||||
}
|
||||
|
||||
export interface IFeatureEnvironmentInfo {
|
||||
|
@ -33,7 +33,7 @@ import { IFavoriteProjectsStore } from './stores/favorite-projects';
|
||||
import { IAccountStore } from './stores/account-store';
|
||||
import { IProjectStatsStore } from './stores/project-stats-store-type';
|
||||
import { IImportTogglesStore } from '../features/export-import-toggles/import-toggles-store-type';
|
||||
import { IFeatureToggleLegacyAdminStore } from './stores/feature-toggle-legacy-admin-store';
|
||||
import { IFeatureToggleAdminStore } from './stores/feature-toggle-admin-store';
|
||||
|
||||
export interface IUnleashStores {
|
||||
accessStore: IAccessStore;
|
||||
@ -51,7 +51,7 @@ export interface IUnleashStores {
|
||||
featureTagStore: IFeatureTagStore;
|
||||
featureToggleStore: IFeatureToggleStore;
|
||||
featureToggleClientStore: IFeatureToggleClientStore;
|
||||
featureToggleLegacyAdminStore: IFeatureToggleLegacyAdminStore;
|
||||
featureToggleLegacyAdminStore: IFeatureToggleAdminStore;
|
||||
featureTypeStore: IFeatureTypeStore;
|
||||
groupStore: IGroupStore;
|
||||
projectStore: IProjectStore;
|
||||
|
6
src/lib/types/stores/feature-toggle-admin-store.ts
Normal file
6
src/lib/types/stores/feature-toggle-admin-store.ts
Normal file
@ -0,0 +1,6 @@
|
||||
import { FeatureToggle } from '../model';
|
||||
import { IGetAdminFeatures } from '../../db/feature-toggle-client-store';
|
||||
|
||||
export interface IFeatureToggleAdminStore {
|
||||
getAdmin(params: IGetAdminFeatures): Promise<FeatureToggle[]>;
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
import { IFeatureToggleClient } from '../model';
|
||||
import { IGetAdminFeatures } from '../../db/feature-toggle-client-store';
|
||||
|
||||
export interface IFeatureToggleLegacyAdminStore {
|
||||
// @Deprecated
|
||||
getAdmin(params: IGetAdminFeatures): Promise<IFeatureToggleClient[]>;
|
||||
}
|
@ -5,10 +5,10 @@ import {
|
||||
} from '../../lib/types/model';
|
||||
import { IFeatureToggleClientStore } from '../../lib/types/stores/feature-toggle-client-store';
|
||||
import { IGetAdminFeatures } from '../../lib/db/feature-toggle-client-store';
|
||||
import { IFeatureToggleLegacyAdminStore } from '../../lib/types/stores/feature-toggle-legacy-admin-store';
|
||||
import { IFeatureToggleAdminStore } from '../../lib/types/stores/feature-toggle-admin-store';
|
||||
|
||||
export default class FakeFeatureToggleClientStore
|
||||
implements IFeatureToggleClientStore, IFeatureToggleLegacyAdminStore
|
||||
implements IFeatureToggleClientStore, IFeatureToggleAdminStore
|
||||
{
|
||||
featureToggles: FeatureToggle[] = [];
|
||||
|
||||
@ -57,7 +57,7 @@ export default class FakeFeatureToggleClientStore
|
||||
async getAdmin({
|
||||
featureQuery: query,
|
||||
archived,
|
||||
}: IGetAdminFeatures): Promise<IFeatureToggleClient[]> {
|
||||
}: IGetAdminFeatures): Promise<FeatureToggle[]> {
|
||||
return this.getFeatures(query, archived);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user