@splitsoftware/splitio-browserjs
Version:
Split SDK for JavaScript on Browser
24 lines (20 loc) • 1.07 kB
text/typescript
import { settingsValidation } from '@splitsoftware/splitio-commons/src/utils/settingsValidation/index';
import { defaults } from './defaults';
import { validateRuntime } from '@splitsoftware/splitio-commons/src/utils/settingsValidation/runtime';
import { validateStorageCS } from '@splitsoftware/splitio-commons/src/utils/settingsValidation/storage/storageCS';
import { validatePluggableIntegrations } from '@splitsoftware/splitio-commons/src/utils/settingsValidation/integrations/pluggable';
import { validateLogger } from '@splitsoftware/splitio-commons/src/utils/settingsValidation/logger/pluggableLogger';
import { validateConsent } from '@splitsoftware/splitio-commons/src/utils/settingsValidation/consent';
const params = {
defaults,
acceptKey: true, // Client with bound key
runtime: validateRuntime,
storage: validateStorageCS,
integrations: validatePluggableIntegrations,
logger: validateLogger,
consent: validateConsent,
};
export function settingsFactory(config: any) {
const settings = settingsValidation(config, params);
return settings;
}