1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/src/lib/services/event-service.ts

34 lines
1.0 KiB
TypeScript
Raw Normal View History

import { IUnleashConfig } from '../types/option';
import { IUnleashStores } from '../types/stores';
import { Logger } from '../logger';
import { IEventStore } from '../types/stores/event-store';
import { IEvent } from '../types/model';
2021-08-26 13:59:11 +02:00
import { FEATURE_METADATA_UPDATED } from '../types/events';
export default class EventService {
private logger: Logger;
private eventStore: IEventStore;
constructor(
{ eventStore }: Pick<IUnleashStores, 'eventStore'>,
{ getLogger }: Pick<IUnleashConfig, 'getLogger'>,
) {
this.logger = getLogger('services/event-service.ts');
this.eventStore = eventStore;
}
async getEvents(): Promise<IEvent[]> {
return this.eventStore.getEvents();
}
async getEventsForToggle(name: string): Promise<IEvent[]> {
2021-08-26 13:59:11 +02:00
const events = await this.eventStore.getEventsFilterByType(name);
return events.filter(
(e: IEvent) => e.type !== FEATURE_METADATA_UPDATED,
);
}
}
module.exports = EventService;