diff --git a/CHANGES.txt b/CHANGES.txt
index 24273a1..8129d20 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -4,6 +4,7 @@
- Updated @splitsoftware/splitio-commons package to version 2.0.0 that includes major updates and updated some transitive dependencies for vulnerability fixes.
- BREAKING CHANGES:
- Removed the `LocalhostFromObject` export from the default import (`import { LocalhostFromObject } from '@splitsoftware/splitio-react-native'`). It is no longer necessary to manually import and configure it in the `sync.localhostMode` option to enable localhost mode.
+ - Removed the "full" import (`import { SplitFactory } from '@splitsoftware/splitio-react-native/full'`), since with the removal of `LocalhostFromObject` from the default import there is no difference between them.
0.10.0 (September 13, 2024)
- Updated @splitsoftware/splitio-commons package to version 1.17.0 that includes minor updates:
diff --git a/package.json b/package.json
index abd6186..7f7b30a 100644
--- a/package.json
+++ b/package.json
@@ -18,7 +18,6 @@
"android",
"ios",
"RNSplit.podspec",
- "full",
"!android/build",
"!android/gradle",
"!android/gradlew",
diff --git a/src/full/index.ts b/src/full/index.ts
deleted file mode 100644
index d76a207..0000000
--- a/src/full/index.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export { SplitFactory } from './splitFactory';
-export { ErrorLogger } from '@splitsoftware/splitio-commons/src/logger/browser/ErrorLogger';
-export { WarnLogger } from '@splitsoftware/splitio-commons/src/logger/browser/WarnLogger';
-export { InfoLogger } from '@splitsoftware/splitio-commons/src/logger/browser/InfoLogger';
-export { DebugLogger } from '@splitsoftware/splitio-commons/src/logger/browser/DebugLogger';
diff --git a/src/full/splitFactory.ts b/src/full/splitFactory.ts
deleted file mode 100644
index 707828c..0000000
--- a/src/full/splitFactory.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-import { settingsFactory } from '../settings/full';
-import { getModules } from '../platform/getModules';
-import { sdkFactory } from '@splitsoftware/splitio-commons/src/sdkFactory/index';
-import type { ISdkFactoryParams } from '@splitsoftware/splitio-commons/src/sdkFactory/types';
-import { IReactNativeSettings } from '../../types/splitio';
-
-/**
- * SplitFactory for React Native.
- *
- * @param config Configuration object used to instantiate the SDK
- * @param __updateModules Optional function that lets redefine internal SDK modules. Use with
- * caution since, unlike `config`, this param is not validated neither considered part of the public API.
- * @throws Will throw an error if the provided config is invalid.
- */
-export function SplitFactory(config: IReactNativeSettings, __updateModules?: (modules: ISdkFactoryParams) => void) {
- const settings = settingsFactory(config);
- const modules = getModules(settings);
- if (__updateModules) __updateModules(modules);
- return sdkFactory(modules);
-}
diff --git a/src/settings/__tests__/index.spec.ts b/src/settings/__tests__/index.spec.ts
index 4b1ad49..ab157b6 100644
--- a/src/settings/__tests__/index.spec.ts
+++ b/src/settings/__tests__/index.spec.ts
@@ -1,18 +1,15 @@
-import { settingsFactory as slimSettingsFactory } from '../index';
-import { settingsFactory as fullSettingsFactory } from '../full';
+import { settingsFactory } from '../index';
test('SETTINGS / Consent is overwritable and "GRANTED" by default', () => {
- [slimSettingsFactory, fullSettingsFactory].forEach((settingsFactory) => {
- let settings = settingsFactory({});
- expect(settings.userConsent).toEqual('GRANTED'); // userConsent defaults to granted if not provided
+ let settings = settingsFactory({});
+ expect(settings.userConsent).toEqual('GRANTED'); // userConsent defaults to granted if not provided
- settings = settingsFactory({ userConsent: 'INVALID-VALUE' });
- expect(settings.userConsent).toEqual('GRANTED'); // userConsent defaults to granted if a wrong value is provided
+ settings = settingsFactory({ userConsent: 'INVALID-VALUE' });
+ expect(settings.userConsent).toEqual('GRANTED'); // userConsent defaults to granted if a wrong value is provided
- settings = settingsFactory({ userConsent: 'UNKNOWN' });
- expect(settings.userConsent).toEqual('UNKNOWN'); // userConsent can be overwritten
+ settings = settingsFactory({ userConsent: 'UNKNOWN' });
+ expect(settings.userConsent).toEqual('UNKNOWN'); // userConsent can be overwritten
- settings = settingsFactory({ userConsent: 'declined' });
- expect(settings.userConsent).toEqual('DECLINED'); // userConsent can be overwritten
- });
+ settings = settingsFactory({ userConsent: 'declined' });
+ expect(settings.userConsent).toEqual('DECLINED'); // userConsent can be overwritten
});
diff --git a/src/settings/full.ts b/src/settings/full.ts
deleted file mode 100644
index ddd7d07..0000000
--- a/src/settings/full.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-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);
- // @ts-ignore. For internal use, flush data on background until a persistent storage is provided.
- settings.flushDataOnBackground = true;
- return settings;
-}
diff --git a/types/full/index.d.ts b/types/full/index.d.ts
deleted file mode 100644
index 1b7c39b..0000000
--- a/types/full/index.d.ts
+++ /dev/null
@@ -1,44 +0,0 @@
-// Declaration file for React Native Split Software SDK
-// Project: http://www.split.io/
-// Definitions by: Nico Zelaya
-
-///
-export = JsSdk;
-
-declare module JsSdk {
- /**
- * Split.io SDK factory function.
- *
- * The settings parameter should be an object that complies with the SplitIO.IReactNativeSettings.
- * For more information read the corresponding article: @see {@link https://help.split.io/hc/en-us/articles/4406066357901#configuration}
- */
- export function SplitFactory(settings: SplitIO.IReactNativeSettings): SplitIO.ISDK;
-
- /**
- * Creates a logger instance that enables descriptive log messages with DEBUG log level when passed in the factory settings.
- *
- * @see {@link https://help.split.io/hc/en-us/articles/4406066357901#logging}
- */
- export function DebugLogger(): SplitIO.ILogger;
-
- /**
- * Creates a logger instance that enables descriptive log messages with INFO log level when passed in the factory settings.
- *
- * @see {@link https://help.split.io/hc/en-us/articles/4406066357901#logging}
- */
- export function InfoLogger(): SplitIO.ILogger;
-
- /**
- * Creates a logger instance that enables descriptive log messages with WARN log level when passed in the factory settings.
- *
- * @see {@link https://help.split.io/hc/en-us/articles/4406066357901#logging}
- */
- export function WarnLogger(): SplitIO.ILogger;
-
- /**
- * Creates a logger instance that enables descriptive log messages with ERROR log level when passed in the factory settings.
- *
- * @see {@link https://help.split.io/hc/en-us/articles/4406066357901#logging}
- */
- export function ErrorLogger(): SplitIO.ILogger;
-}