UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.

140 lines • 9.19 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createFakeInstanceStatsService = exports.createInstanceStatsService = void 0; const instance_stats_service_1 = require("./instance-stats-service"); const getActiveUsers_1 = require("./getActiveUsers"); const getProductionChanges_1 = require("./getProductionChanges"); const feature_toggle_store_1 = __importDefault(require("../feature-toggle/feature-toggle-store")); const user_store_1 = __importDefault(require("../../db/user-store")); const project_store_1 = __importDefault(require("../project/project-store")); const environment_store_1 = __importDefault(require("../project-environments/environment-store")); const strategy_store_1 = __importDefault(require("../../db/strategy-store")); const context_field_store_1 = __importDefault(require("../context/context-field-store")); const group_store_1 = __importDefault(require("../../db/group-store")); const segment_store_1 = __importDefault(require("../segment/segment-store")); const role_store_1 = __importDefault(require("../../db/role-store")); const setting_store_1 = __importDefault(require("../../db/setting-store")); const client_instance_store_1 = __importDefault(require("../../db/client-instance-store")); const event_store_1 = __importDefault(require("../events/event-store")); const api_token_store_1 = require("../../db/api-token-store"); const client_metrics_store_v2_1 = require("../metrics/client-metrics/client-metrics-store-v2"); const version_service_1 = __importDefault(require("../../services/version-service")); const feature_toggle_strategies_store_1 = __importDefault(require("../feature-toggle/feature-toggle-strategies-store")); const fake_user_store_1 = __importDefault(require("../../../test/fixtures/fake-user-store")); const fake_feature_toggle_store_1 = __importDefault(require("../feature-toggle/fakes/fake-feature-toggle-store")); const fake_project_store_1 = __importDefault(require("../../../test/fixtures/fake-project-store")); const fake_environment_store_1 = __importDefault(require("../project-environments/fake-environment-store")); const fake_group_store_1 = __importDefault(require("../../../test/fixtures/fake-group-store")); const fake_context_field_store_1 = __importDefault(require("../context/fake-context-field-store")); const fake_role_store_1 = __importDefault(require("../../../test/fixtures/fake-role-store")); const fake_client_instance_store_1 = __importDefault(require("../../../test/fixtures/fake-client-instance-store")); const fake_client_metrics_store_v2_1 = __importDefault(require("../metrics/client-metrics/fake-client-metrics-store-v2")); const fake_api_token_store_1 = __importDefault(require("../../../test/fixtures/fake-api-token-store")); const fake_event_store_1 = __importDefault(require("../../../test/fixtures/fake-event-store")); const fake_setting_store_1 = __importDefault(require("../../../test/fixtures/fake-setting-store")); const fake_segment_store_1 = __importDefault(require("../../../test/fixtures/fake-segment-store")); const fake_strategies_store_1 = __importDefault(require("../../../test/fixtures/fake-strategies-store")); const fake_feature_strategies_store_1 = __importDefault(require("../feature-toggle/fakes/fake-feature-strategies-store")); const feature_strategies_read_model_1 = require("../feature-toggle/feature-strategies-read-model"); const fake_feature_strategies_read_model_1 = require("../feature-toggle/fake-feature-strategies-read-model"); const traffic_data_usage_store_1 = require("../traffic-data-usage/traffic-data-usage-store"); const fake_traffic_data_usage_store_1 = require("../traffic-data-usage/fake-traffic-data-usage-store"); const getLicensedUsers_1 = require("./getLicensedUsers"); const createInstanceStatsService = (db, config) => { const { eventBus, getLogger, flagResolver } = config; const featureToggleStore = new feature_toggle_store_1.default(db, eventBus, getLogger, flagResolver); const userStore = new user_store_1.default(db, getLogger, flagResolver); const projectStore = new project_store_1.default(db, eventBus, config); const environmentStore = new environment_store_1.default(db, eventBus, config); const strategyStore = new strategy_store_1.default(db, getLogger); const contextFieldStore = new context_field_store_1.default(db, getLogger, flagResolver); const groupStore = new group_store_1.default(db); const segmentStore = new segment_store_1.default(db, eventBus, getLogger, flagResolver); const roleStore = new role_store_1.default(db, eventBus, getLogger); const settingStore = new setting_store_1.default(db, getLogger); const clientInstanceStore = new client_instance_store_1.default(db, eventBus, getLogger); const eventStore = new event_store_1.default(db, getLogger); const apiTokenStore = new api_token_store_1.ApiTokenStore(db, eventBus, getLogger, flagResolver); const clientMetricsStoreV2 = new client_metrics_store_v2_1.ClientMetricsStoreV2(db, getLogger, flagResolver); const featureStrategiesReadModel = new feature_strategies_read_model_1.FeatureStrategiesReadModel(db); const trafficDataUsageStore = new traffic_data_usage_store_1.TrafficDataUsageStore(db, getLogger); const featureStrategiesStore = new feature_toggle_strategies_store_1.default(db, eventBus, getLogger, flagResolver); const instanceStatsServiceStores = { featureToggleStore, userStore, projectStore, environmentStore, strategyStore, contextFieldStore, groupStore, segmentStore, roleStore, settingStore, clientInstanceStore, eventStore, apiTokenStore, clientMetricsStoreV2, featureStrategiesReadModel, featureStrategiesStore, trafficDataUsageStore, }; const versionServiceStores = { settingStore }; const getActiveUsers = (0, getActiveUsers_1.createGetActiveUsers)(db); const getProductionChanges = (0, getProductionChanges_1.createGetProductionChanges)(db); const getLicencedUsers = (0, getLicensedUsers_1.createGetLicensedUsers)(db); const versionService = new version_service_1.default(versionServiceStores, config); const instanceStatsService = new instance_stats_service_1.InstanceStatsService(instanceStatsServiceStores, config, versionService, getActiveUsers, getProductionChanges, getLicencedUsers); return instanceStatsService; }; exports.createInstanceStatsService = createInstanceStatsService; const createFakeInstanceStatsService = (config) => { const { eventBus, getLogger, flagResolver } = config; const featureToggleStore = new fake_feature_toggle_store_1.default(); const userStore = new fake_user_store_1.default(); const projectStore = new fake_project_store_1.default(); const environmentStore = new fake_environment_store_1.default(); const strategyStore = new fake_strategies_store_1.default(); const contextFieldStore = new fake_context_field_store_1.default(); const groupStore = new fake_group_store_1.default(); const segmentStore = new fake_segment_store_1.default(); const roleStore = new fake_role_store_1.default(); const settingStore = new fake_setting_store_1.default(); const clientInstanceStore = new fake_client_instance_store_1.default(); const eventStore = new fake_event_store_1.default(); const apiTokenStore = new fake_api_token_store_1.default(); const clientMetricsStoreV2 = new fake_client_metrics_store_v2_1.default(); const featureStrategiesReadModel = new fake_feature_strategies_read_model_1.FakeFeatureStrategiesReadModel(); const trafficDataUsageStore = new fake_traffic_data_usage_store_1.FakeTrafficDataUsageStore(); const featureStrategiesStore = new fake_feature_strategies_store_1.default(); const instanceStatsServiceStores = { featureToggleStore, userStore, projectStore, environmentStore, strategyStore, contextFieldStore, groupStore, segmentStore, roleStore, settingStore, clientInstanceStore, eventStore, apiTokenStore, clientMetricsStoreV2, featureStrategiesReadModel, featureStrategiesStore, trafficDataUsageStore, }; const versionServiceStores = { settingStore }; const getActiveUsers = (0, getActiveUsers_1.createFakeGetActiveUsers)(); const getLicensedUsers = (0, getLicensedUsers_1.createFakeGetLicensedUsers)(); const getProductionChanges = (0, getProductionChanges_1.createFakeGetProductionChanges)(); const versionService = new version_service_1.default(versionServiceStores, config); const instanceStatsService = new instance_stats_service_1.InstanceStatsService(instanceStatsServiceStores, config, versionService, getActiveUsers, getProductionChanges, getLicensedUsers); return instanceStatsService; }; exports.createFakeInstanceStatsService = createFakeInstanceStatsService; //# sourceMappingURL=createInstanceStatsService.js.map