From 88d1f25e4234fd5252351c76fac800befab0f742 Mon Sep 17 00:00:00 2001 From: Emiliano Sanchez Date: Sat, 19 Oct 2024 15:20:15 -0300 Subject: [PATCH] Rename SplitSdk to SplitFactory function --- CHANGES.txt | 1 + src/__tests__/SplitClient.test.tsx | 18 ++++++------- src/__tests__/SplitFactoryProvider.test.tsx | 26 +++++++++---------- src/__tests__/SplitTreatments.test.tsx | 10 +++---- src/__tests__/index.test.ts | 8 +++--- .../{mockSplitSdk.ts => mockSplitFactory.ts} | 0 src/__tests__/useSplitClient.test.tsx | 16 ++++++------ src/__tests__/useSplitManager.test.tsx | 6 ++--- src/__tests__/useSplitTreatments.test.tsx | 12 ++++----- src/__tests__/useTrack.test.tsx | 10 +++---- src/index.ts | 2 +- src/utils.ts | 6 ++--- umd.ts | 4 +-- 13 files changed, 60 insertions(+), 59 deletions(-) rename src/__tests__/testUtils/{mockSplitSdk.ts => mockSplitFactory.ts} (100%) diff --git a/CHANGES.txt b/CHANGES.txt index be96343..e72af17 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -5,6 +5,7 @@ - BREAKING CHANGES: - Removed deprecated modules: `SplitFactory` component, `useClient`, `useTreatments` and `useManager` hooks, and `withSplitFactory`, `withSplitClient` and `withSplitTreatments` high-order components. Refer to ./MIGRATION-GUIDE.md for instructions on how to migrate to the new alternatives. - Renamed TypeScript interfaces `ISplitFactoryProps` to `ISplitFactoryProviderProps`, and `ISplitFactoryChildProps` to `ISplitFactoryProviderChildProps`. + - Renamed `SplitSdk` to `SplitFactory` function, which is the underlying Split SDK factory, i.e., `import { SplitFactory } from '@splitsoftware/splitio'`. 1.13.0 (September 6, 2024) - Updated @splitsoftware/splitio package to version 10.28.0 that includes minor updates: diff --git a/src/__tests__/SplitClient.test.tsx b/src/__tests__/SplitClient.test.tsx index 641ed97..518df16 100644 --- a/src/__tests__/SplitClient.test.tsx +++ b/src/__tests__/SplitClient.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { render, act } from '@testing-library/react'; /** Mocks and test utils */ -import { mockSdk, Event } from './testUtils/mockSplitSdk'; +import { mockSdk, Event } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; /** Test target */ @@ -39,7 +39,7 @@ describe('SplitClient', () => { }); test('passes ready props to the child if client is ready.', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY_FROM_CACHE); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); (outerFactory.manager().names as jest.Mock).mockReturnValue(['split1']); @@ -66,7 +66,7 @@ describe('SplitClient', () => { }); test('rerender child on SDK_READY_TIMEDOUT, SDK_READY_FROM_CACHE, SDK_READY and SDK_UPDATE events.', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); (outerFactory.manager().names as jest.Mock).mockReturnValue(['split1']); @@ -118,7 +118,7 @@ describe('SplitClient', () => { }); test('rerender child on SDK_READY_TIMED_OUT and SDK_UPDATE events, but not on SDK_READY.', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); (outerFactory.manager().names as jest.Mock).mockReturnValue(['split1']); @@ -162,7 +162,7 @@ describe('SplitClient', () => { }); test('rerender child only on SDK_READY event, as default behaviour.', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); (outerFactory.manager().names as jest.Mock).mockReturnValue(['split1']); @@ -203,7 +203,7 @@ describe('SplitClient', () => { }); test('must update on SDK events between the render and commit phases', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let count = 0; render( @@ -228,7 +228,7 @@ describe('SplitClient', () => { }); test('renders a passed JSX.Element with a new SplitContext value.', (done) => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const Component = () => { return ( @@ -270,7 +270,7 @@ describe('SplitClient', () => { test(`passes a new client if re-rendered with a different splitKey. Only updates the state if the new client triggers an event, but not the previous one.`, (done) => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let renderTimes = 0; class InnerComponent extends React.Component { diff --git a/src/__tests__/SplitFactoryProvider.test.tsx b/src/__tests__/SplitFactoryProvider.test.tsx index 0695676..e5ad0f0 100644 --- a/src/__tests__/SplitFactoryProvider.test.tsx +++ b/src/__tests__/SplitFactoryProvider.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { render, act } from '@testing-library/react'; /** Mocks */ -import { mockSdk, Event } from './testUtils/mockSplitSdk'; +import { mockSdk, Event } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; const logSpy = jest.spyOn(console, 'log'); @@ -39,7 +39,7 @@ describe('SplitFactoryProvider', () => { }); test('passes ready props to the child if initialized with a ready factory.', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY_FROM_CACHE); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); (outerFactory.manager().names as jest.Mock).mockReturnValue(['split1']); @@ -98,7 +98,7 @@ describe('SplitFactoryProvider', () => { ); - const innerFactory = (SplitSdk as jest.Mock).mock.results.slice(-1)[0].value; + const innerFactory = (SplitFactory as jest.Mock).mock.results.slice(-1)[0].value; act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY_TIMED_OUT)); act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY_FROM_CACHE)); act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY)); @@ -108,7 +108,7 @@ describe('SplitFactoryProvider', () => { }); test('rerenders child on SDK_READY_TIMEDOUT, SDK_READY_FROM_CACHE, SDK_READY and SDK_UPDATE events (factory prop)', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let renderTimes = 0; let previousLastUpdate = -1; @@ -182,7 +182,7 @@ describe('SplitFactoryProvider', () => { ); - const innerFactory = (SplitSdk as jest.Mock).mock.results.slice(-1)[0].value; + const innerFactory = (SplitFactory as jest.Mock).mock.results.slice(-1)[0].value; act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY_TIMED_OUT)); act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY)); act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_UPDATE)); @@ -191,7 +191,7 @@ describe('SplitFactoryProvider', () => { }); test('rerenders child on SDK_READY_TIMED_OUT and SDK_UPDATE events, but not on SDK_READY (factory prop)', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let renderTimes = 0; let previousLastUpdate = -1; @@ -255,7 +255,7 @@ describe('SplitFactoryProvider', () => { ); - const innerFactory = (SplitSdk as jest.Mock).mock.results.slice(-1)[0].value; + const innerFactory = (SplitFactory as jest.Mock).mock.results.slice(-1)[0].value; act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY_TIMED_OUT)); act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_READY)); act(() => (innerFactory as any).client().__emitter__.emit(Event.SDK_UPDATE)); @@ -263,7 +263,7 @@ describe('SplitFactoryProvider', () => { }); test('rerenders child only on SDK_READY and SDK_READY_FROM_CACHE event, as default behaviour (factory prop)', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let renderTimes = 0; let previousLastUpdate = -1; @@ -317,7 +317,7 @@ describe('SplitFactoryProvider', () => { }); test('logs warning if both a config and factory are passed as props.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); render( @@ -336,7 +336,7 @@ describe('SplitFactoryProvider', () => { let renderTimes = 0; const createdFactories = new Set(); const clientDestroySpies: jest.SpyInstance[] = []; - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const Component = ({ factory, isReady, hasTimedout }: ISplitFactoryProviderChildProps) => { renderTimes++; @@ -373,7 +373,7 @@ describe('SplitFactoryProvider', () => { }; const emitSdkEvents = () => { - const factory = (SplitSdk as jest.Mock).mock.results.slice(-1)[0].value; + const factory = (SplitFactory as jest.Mock).mock.results.slice(-1)[0].value; factory.client().__emitter__.emit(Event.SDK_READY_TIMED_OUT) factory.client().__emitter__.emit(Event.SDK_READY) }; @@ -426,7 +426,7 @@ describe('SplitFactoryProvider', () => { test('doesn\'t clean up on unmount if the factory is provided as a prop.', () => { let destroyMainClientSpy; let destroySharedClientSpy; - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const wrapper = render( {({ factory }) => { diff --git a/src/__tests__/SplitTreatments.test.tsx b/src/__tests__/SplitTreatments.test.tsx index 6c39c23..dbd5e62 100644 --- a/src/__tests__/SplitTreatments.test.tsx +++ b/src/__tests__/SplitTreatments.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { render, RenderResult, act } from '@testing-library/react'; /** Mocks */ -import { mockSdk, Event } from './testUtils/mockSplitSdk'; +import { mockSdk, Event } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; import { getStatus, IClientWithContext } from '../utils'; import { newSplitFactoryLocalhostInstance } from './testUtils/utils'; @@ -54,7 +54,7 @@ describe('SplitTreatments', () => { }); it('passes as treatments prop the value returned by the method "client.getTreatmentsWithConfig(ByFlagSets)" if the SDK is ready.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); render( @@ -184,7 +184,7 @@ describe.each([ return null; } ])('SplitTreatments & useSplitTreatments optimization', (InnerComponent) => { - let outerFactory = SplitSdk(sdkBrowser); + let outerFactory = SplitFactory(sdkBrowser); (outerFactory as any).client().__emitter__.emit(Event.SDK_READY); function Component({ names, flagSets, attributes, splitKey, clientAttributes }: { @@ -301,7 +301,7 @@ describe.each([ it('rerenders and re-evaluate feature flags when Split context changes (in both SplitFactoryProvider and SplitClient components).', async () => { // changes in SplitContext implies that either the factory, the client (user key), or its status changed, what might imply a change in treatments - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let renderTimesComp1 = 0; let renderTimesComp2 = 0; diff --git a/src/__tests__/index.test.ts b/src/__tests__/index.test.ts index 8005083..d8efd44 100644 --- a/src/__tests__/index.test.ts +++ b/src/__tests__/index.test.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import { SplitContext as ExportedSplitContext, - SplitSdk as ExportedSplitSdk, + SplitFactory as ExportedSplitFactory, SplitFactoryProvider as ExportedSplitFactoryProvider, SplitClient as ExportedSplitClient, SplitTreatments as ExportedSplitTreatments, @@ -24,7 +24,7 @@ import { IUseSplitTreatmentsOptions, } from '../index'; import { SplitContext } from '../SplitContext'; -import { SplitFactory as SplitioEntrypoint } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { SplitFactoryProvider } from '../SplitFactoryProvider'; import { SplitClient } from '../SplitClient'; import { SplitTreatments } from '../SplitTreatments'; @@ -52,8 +52,8 @@ describe('index', () => { expect(ExportedSplitContext).toBe(SplitContext); }); - it('should export Splitio entrypoint', () => { - expect(ExportedSplitSdk).toBe(SplitioEntrypoint); + it('should export SplitFactory', () => { + expect(ExportedSplitFactory).toBe(SplitFactory); }); }); diff --git a/src/__tests__/testUtils/mockSplitSdk.ts b/src/__tests__/testUtils/mockSplitFactory.ts similarity index 100% rename from src/__tests__/testUtils/mockSplitSdk.ts rename to src/__tests__/testUtils/mockSplitFactory.ts diff --git a/src/__tests__/useSplitClient.test.tsx b/src/__tests__/useSplitClient.test.tsx index 29b894e..b706b1f 100644 --- a/src/__tests__/useSplitClient.test.tsx +++ b/src/__tests__/useSplitClient.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { act, render } from '@testing-library/react'; /** Mocks */ -import { mockSdk, Event } from './testUtils/mockSplitSdk'; +import { mockSdk, Event } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; /** Test target */ @@ -19,7 +19,7 @@ import { testAttributesBinding, TestComponentProps } from './testUtils/utils'; describe('useSplitClient', () => { test('returns the main client from the context updated by SplitFactoryProvider.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let client; render( @@ -33,7 +33,7 @@ describe('useSplitClient', () => { }); test('returns the client from the context updated by SplitClient.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let client; render( @@ -49,7 +49,7 @@ describe('useSplitClient', () => { }); test('returns a new client from the factory at Split context given a splitKey.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let client; render( @@ -99,7 +99,7 @@ describe('useSplitClient', () => { }); test('must update on SDK events', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const mainClient = outerFactory.client() as any; const user2Client = outerFactory.client('user_2') as any; @@ -222,7 +222,7 @@ describe('useSplitClient', () => { // Remove this test once side effects are moved to the useSplitClient effect. test('must update on SDK events between the render phase (hook call) and commit phase (effect call)', () =>{ - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let count = 0; render( @@ -244,7 +244,7 @@ describe('useSplitClient', () => { }); test('must support changes in update props', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const mainClient = outerFactory.client() as any; let rendersCount = 0; diff --git a/src/__tests__/useSplitManager.test.tsx b/src/__tests__/useSplitManager.test.tsx index 4705a48..e04191a 100644 --- a/src/__tests__/useSplitManager.test.tsx +++ b/src/__tests__/useSplitManager.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { act, render } from '@testing-library/react'; /** Mocks */ -import { Event, mockSdk } from './testUtils/mockSplitSdk'; +import { Event, mockSdk } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; import { getStatus } from '../utils'; @@ -17,7 +17,7 @@ import { useSplitManager } from '../useSplitManager'; describe('useSplitManager', () => { test('returns the factory manager from the Split context, and updates when the context changes.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let hookResult; render( diff --git a/src/__tests__/useSplitTreatments.test.tsx b/src/__tests__/useSplitTreatments.test.tsx index 13a54b6..abc5454 100644 --- a/src/__tests__/useSplitTreatments.test.tsx +++ b/src/__tests__/useSplitTreatments.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { act, render } from '@testing-library/react'; /** Mocks */ -import { mockSdk, Event } from './testUtils/mockSplitSdk'; +import { mockSdk, Event } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; import { CONTROL_WITH_CONFIG } from '../constants'; @@ -27,7 +27,7 @@ describe('useSplitTreatments', () => { const attributes = { att1: 'att1' }; test('returns the treatments evaluated by the client at Split context, or control if the client is not operational.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const client: any = outerFactory.client(); let treatments: SplitIO.TreatmentsWithConfig; let treatmentsByFlagSets: SplitIO.TreatmentsWithConfig; @@ -64,7 +64,7 @@ describe('useSplitTreatments', () => { }); test('returns the treatments from the client at Split context updated by SplitClient, or control if the client is not operational.', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const client: any = outerFactory.client('user2'); let treatments: SplitIO.TreatmentsWithConfig; @@ -91,7 +91,7 @@ describe('useSplitTreatments', () => { }); test('returns the treatments from a new client given a splitKey, and re-evaluates on SDK events.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const client: any = outerFactory.client('user2'); let renderTimes = 0; @@ -164,7 +164,7 @@ describe('useSplitTreatments', () => { }); test('useSplitTreatments must update on SDK events', async () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); const mainClient = outerFactory.client() as any; const user2Client = outerFactory.client('user_2') as any; diff --git a/src/__tests__/useTrack.test.tsx b/src/__tests__/useTrack.test.tsx index 4447189..43a55a4 100644 --- a/src/__tests__/useTrack.test.tsx +++ b/src/__tests__/useTrack.test.tsx @@ -2,11 +2,11 @@ import React from 'react'; import { render } from '@testing-library/react'; /** Mocks */ -import { mockSdk } from './testUtils/mockSplitSdk'; +import { mockSdk } from './testUtils/mockSplitFactory'; jest.mock('@splitsoftware/splitio/client', () => { return { SplitFactory: mockSdk() }; }); -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { sdkBrowser } from './testUtils/sdkConfigs'; /** Test target */ @@ -22,7 +22,7 @@ describe('useTrack', () => { const properties = { prop1: 'prop1' }; test('returns the track method bound to the client at Split context updated by SplitFactoryProvider.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let boundTrack; let trackResult; @@ -41,7 +41,7 @@ describe('useTrack', () => { }); test('returns the track method bound to the client at Split context updated by SplitClient.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let boundTrack; let trackResult; @@ -62,7 +62,7 @@ describe('useTrack', () => { }); test('returns the track method bound to a new client given a splitKey and optional trafficType.', () => { - const outerFactory = SplitSdk(sdkBrowser); + const outerFactory = SplitFactory(sdkBrowser); let boundTrack; let trackResult; diff --git a/src/index.ts b/src/index.ts index cb76510..d4c45f7 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,5 @@ // Split SDK factory (Renamed to avoid name conflict with SplitFactory component) -export { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +export { SplitFactory } from '@splitsoftware/splitio/client'; // Components export { SplitTreatments } from './SplitTreatments'; diff --git a/src/utils.ts b/src/utils.ts index 5915875..9ae5a3c 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,6 +1,6 @@ import memoizeOne from 'memoize-one'; import shallowEqual from 'shallowequal'; -import { SplitFactory as SplitSdk } from '@splitsoftware/splitio/client'; +import { SplitFactory } from '@splitsoftware/splitio/client'; import { CONTROL_WITH_CONFIG, VERSION, WARN_NAMES_AND_FLAGSETS } from './constants'; import { ISplitStatus } from './types'; @@ -34,9 +34,9 @@ export const __factories: Map = n // idempotent operation export function getSplitFactory(config: SplitIO.IBrowserSettings) { if (!__factories.has(config)) { - // SplitSDK is not an idempotent operation + // SplitFactory is not an idempotent operation // @ts-expect-error. 2nd param is not part of type definitions. Used to overwrite the SDK version - const newFactory = SplitSdk(config, (modules) => { + const newFactory = SplitFactory(config, (modules) => { modules.settings.version = VERSION; }) as IFactoryWithClients; newFactory.config = config; diff --git a/umd.ts b/umd.ts index 57f44af..3ce942a 100644 --- a/umd.ts +++ b/umd.ts @@ -1,12 +1,12 @@ import { - SplitSdk, + SplitFactory, SplitFactoryProvider, SplitClient, SplitTreatments, useSplitClient, useSplitTreatments, useTrack, useSplitManager, SplitContext, } from './src/index'; export default { - SplitSdk, + SplitFactory, SplitFactoryProvider, SplitClient, SplitTreatments, useSplitClient, useSplitTreatments, useTrack, useSplitManager, SplitContext,