configcat-common
Version:
ConfigCat is a configuration as a service that lets you manage your features and configurations without actually deploying new code.
79 lines (78 loc) • 6.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RefreshResult = exports.ClientCacheState = exports.OverrideBehaviour = exports.User = exports.SettingKeyValue = exports.SegmentComparator = exports.PrerequisiteFlagComparator = exports.UserComparator = exports.SettingType = exports.FormattableLogMessage = exports.LogLevel = exports.DataGovernance = exports.PollingMode = exports.ExternalConfigCache = exports.InMemoryConfigCache = exports.FetchError = exports.FetchResult = exports.FetchStatus = exports.createFlagOverridesFromMap = exports.createConsoleLogger = exports.disposeAllClients = exports.getClient = void 0;
var ConfigCatClient_1 = require("./ConfigCatClient");
var ConfigCatClientOptions_1 = require("./ConfigCatClientOptions");
Object.defineProperty(exports, "PollingMode", { enumerable: true, get: function () { return ConfigCatClientOptions_1.PollingMode; } });
var ConfigCatLogger_1 = require("./ConfigCatLogger");
Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return ConfigCatLogger_1.LogLevel; } });
var FlagOverrides_1 = require("./FlagOverrides");
Object.defineProperty(exports, "OverrideBehaviour", { enumerable: true, get: function () { return FlagOverrides_1.OverrideBehaviour; } });
var Polyfills_1 = require("./Polyfills");
Polyfills_1.setupPolyfills();
/**
* Returns an instance of `ConfigCatClient` for the specified SDK Key.
* @remarks This method returns a single, shared instance per each distinct SDK Key.
* That is, a new client object is created only when there is none available for the specified SDK Key.
* Otherwise, the already created instance is returned (in which case the `pollingMode`, `options` and `configCatKernel` arguments are ignored).
* So, please keep in mind that when you make multiple calls to this method using the same SDK Key, you may end up with multiple references to the same client object.
* @param sdkKey SDK Key to access the ConfigCat config.
* @param pollingMode The polling mode to use.
* @param options Options for the specified polling mode.
*/
function getClient(sdkKey, pollingMode, options, configCatKernel) {
return ConfigCatClient_1.ConfigCatClient.get(sdkKey, pollingMode, options, configCatKernel);
}
exports.getClient = getClient;
/**
* Disposes all existing `ConfigCatClient` instances.
*/
function disposeAllClients() {
ConfigCatClient_1.ConfigCatClient.disposeAll();
}
exports.disposeAllClients = disposeAllClients;
/**
* Creates an instance of `ConfigCatConsoleLogger`.
* @param logLevel Log level (the minimum level to use for filtering log events).
* @param eol The character sequence to use for line breaks in log messages. Defaults to "\n".
*/
function createConsoleLogger(logLevel, eol) {
return new ConfigCatLogger_1.ConfigCatConsoleLogger(logLevel, eol);
}
exports.createConsoleLogger = createConsoleLogger;
/**
* Creates an instance of `FlagOverrides` that uses a map data source.
* @param map The map that contains the overrides.
* @param behaviour The override behaviour.
* Specifies whether the local values should override the remote values
* or local values should only be used when a remote value doesn't exist
* or the local values should be used only.
* @param watchChanges If set to `true`, the input map will be tracked for changes.
*/
function createFlagOverridesFromMap(map, behaviour, watchChanges) {
return new FlagOverrides_1.FlagOverrides(new FlagOverrides_1.MapOverrideDataSource(map, watchChanges), behaviour);
}
exports.createFlagOverridesFromMap = createFlagOverridesFromMap;
var ConfigFetcher_1 = require("./ConfigFetcher");
Object.defineProperty(exports, "FetchStatus", { enumerable: true, get: function () { return ConfigFetcher_1.FetchStatus; } });
Object.defineProperty(exports, "FetchResult", { enumerable: true, get: function () { return ConfigFetcher_1.FetchResult; } });
Object.defineProperty(exports, "FetchError", { enumerable: true, get: function () { return ConfigFetcher_1.FetchError; } });
var ConfigCatCache_1 = require("./ConfigCatCache");
Object.defineProperty(exports, "InMemoryConfigCache", { enumerable: true, get: function () { return ConfigCatCache_1.InMemoryConfigCache; } });
Object.defineProperty(exports, "ExternalConfigCache", { enumerable: true, get: function () { return ConfigCatCache_1.ExternalConfigCache; } });
var ConfigCatClientOptions_2 = require("./ConfigCatClientOptions");
Object.defineProperty(exports, "DataGovernance", { enumerable: true, get: function () { return ConfigCatClientOptions_2.DataGovernance; } });
var ConfigCatLogger_2 = require("./ConfigCatLogger");
Object.defineProperty(exports, "FormattableLogMessage", { enumerable: true, get: function () { return ConfigCatLogger_2.FormattableLogMessage; } });
var ConfigJson_1 = require("./ConfigJson");
Object.defineProperty(exports, "SettingType", { enumerable: true, get: function () { return ConfigJson_1.SettingType; } });
Object.defineProperty(exports, "UserComparator", { enumerable: true, get: function () { return ConfigJson_1.UserComparator; } });
Object.defineProperty(exports, "PrerequisiteFlagComparator", { enumerable: true, get: function () { return ConfigJson_1.PrerequisiteFlagComparator; } });
Object.defineProperty(exports, "SegmentComparator", { enumerable: true, get: function () { return ConfigJson_1.SegmentComparator; } });
var ConfigCatClient_2 = require("./ConfigCatClient");
Object.defineProperty(exports, "SettingKeyValue", { enumerable: true, get: function () { return ConfigCatClient_2.SettingKeyValue; } });
var User_1 = require("./User");
Object.defineProperty(exports, "User", { enumerable: true, get: function () { return User_1.User; } });
var ConfigServiceBase_1 = require("./ConfigServiceBase");
Object.defineProperty(exports, "ClientCacheState", { enumerable: true, get: function () { return ConfigServiceBase_1.ClientCacheState; } });
Object.defineProperty(exports, "RefreshResult", { enumerable: true, get: function () { return ConfigServiceBase_1.RefreshResult; } });