@splitsoftware/splitio-commons
Version:
Split JavaScript SDK common components
19 lines (18 loc) • 1.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateConfigurableIntegrations = void 0;
var common_1 = require("./common");
var lang_1 = require("../../lang");
/**
* This function validates `settings.integrations` object that consists of a list of configuration items, used by the isomorphic JS SDK.
*
* @param settings - config object provided by the user to initialize the sdk
* @param validIntegrationTypes - list of integration types to filter from `settings.integrations`
*
* @returns array of valid integration items. The array might be empty if `settings` object does not have valid integrations.
*/
function validateConfigurableIntegrations(settings, validIntegrationTypes) {
if (validIntegrationTypes === void 0) { validIntegrationTypes = []; }
return (0, common_1.validateIntegrations)(settings, function (integration) { return integration && (0, lang_1.isString)(integration.type) && validIntegrationTypes.indexOf(integration.type) > -1; }, 'Integration items must have a valid "type" value');
}
exports.validateConfigurableIntegrations = validateConfigurableIntegrations;