@splitsoftware/splitio-react-native
Version:
Split SDK for React Native
55 lines (54 loc) • 2.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getModules = getModules;
var _splitApi = require("@splitsoftware/splitio-commons/cjs/services/splitApi");
var _syncManagerOnline = require("@splitsoftware/splitio-commons/cjs/sync/syncManagerOnline");
var _pushManager = require("@splitsoftware/splitio-commons/cjs/sync/streaming/pushManager");
var _pollingManagerCS = require("@splitsoftware/splitio-commons/cjs/sync/polling/pollingManagerCS");
var _index = require("@splitsoftware/splitio-commons/cjs/sdkManager/index");
var _sdkClientMethodCS = require("@splitsoftware/splitio-commons/cjs/sdkClient/sdkClientMethodCS");
var _impressionObserverCS = require("@splitsoftware/splitio-commons/cjs/trackers/impressionObserver/impressionObserverCS");
var _MinEvents = require("@splitsoftware/splitio-commons/cjs/utils/MinEvents");
var _constants = require("@splitsoftware/splitio-commons/cjs/utils/constants");
var _sdkUserConsent = require("@splitsoftware/splitio-commons/cjs/consent/sdkUserConsent");
var _browser = require("@splitsoftware/splitio-commons/cjs/utils/timeTracker/now/browser");
var _LocalhostFromObject = require("@splitsoftware/splitio-commons/cjs/sync/offline/LocalhostFromObject");
var _RNSignalListener = require("./RNSignalListener");
var _getEventSource = require("./getEventSource");
const platform = {
// Return global fetch which is always available in RN runtime
getFetch() {
return fetch;
},
EventEmitter: _MinEvents.EventEmitter,
getEventSource: _getEventSource.getEventSource,
now: _browser.now
};
const syncManagerOnlineCSFactory = (0, _syncManagerOnline.syncManagerOnlineFactory)(_pollingManagerCS.pollingManagerCSFactory, _pushManager.pushManagerFactory);
function getModules(settings) {
const modules = {
settings,
platform,
storageFactory: settings.storage,
splitApiFactory: _splitApi.splitApiFactory,
syncManagerFactory: syncManagerOnlineCSFactory,
sdkManagerFactory: _index.sdkManagerFactory,
sdkClientMethodFactory: _sdkClientMethodCS.sdkClientMethodCSFactory,
SignalListener: _RNSignalListener.RNSignalListener,
impressionsObserverFactory: _impressionObserverCS.impressionObserverCSFactory,
extraProps: params => {
return {
UserConsent: (0, _sdkUserConsent.createUserConsentAPI)(params)
};
}
};
if (settings.mode === _constants.LOCALHOST_MODE) {
modules.splitApiFactory = undefined;
modules.syncManagerFactory = _LocalhostFromObject.localhostFromObjectFactory;
modules.SignalListener = undefined;
}
return modules;
}
//# sourceMappingURL=getModules.js.map