UNPKG

@splitsoftware/splitio-commons

Version:
19 lines (18 loc) 1.14 kB
"use strict"; 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;