@featbit/js-client-sdk 2.0.2 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -201
- package/README.md +160 -152
- package/dist/esm/Configuration.d.ts +35 -0
- package/dist/esm/Configuration.d.ts.map +1 -0
- package/dist/esm/Configuration.js +179 -0
- package/dist/esm/Configuration.js.map +1 -0
- package/dist/esm/Context.d.ts +23 -0
- package/dist/esm/Context.d.ts.map +1 -0
- package/dist/esm/Context.js +49 -0
- package/dist/esm/Context.js.map +1 -0
- package/dist/esm/FbClientBuilder.d.ts +90 -0
- package/dist/esm/FbClientBuilder.d.ts.map +1 -0
- package/dist/esm/FbClientBuilder.js +133 -0
- package/dist/esm/FbClientBuilder.js.map +1 -0
- package/dist/esm/FbClientCore.d.ts +56 -0
- package/dist/esm/FbClientCore.d.ts.map +1 -0
- package/dist/esm/FbClientCore.js +283 -0
- package/dist/esm/FbClientCore.js.map +1 -0
- package/dist/esm/IContextProperty.d.ts +5 -0
- package/dist/esm/IContextProperty.d.ts.map +1 -0
- package/dist/esm/IContextProperty.js +3 -0
- package/dist/esm/IContextProperty.js.map +1 -0
- package/dist/esm/IDataKind.d.ts +12 -0
- package/dist/esm/IDataKind.d.ts.map +1 -0
- package/dist/esm/IDataKind.js +3 -0
- package/dist/esm/IDataKind.js.map +1 -0
- package/dist/esm/IFbClient.d.ts +30 -0
- package/dist/esm/IFbClient.d.ts.map +1 -0
- package/dist/esm/IFbClient.js +3 -0
- package/dist/esm/IFbClient.js.map +1 -0
- package/dist/esm/IFbClientCore.d.ts +240 -0
- package/dist/esm/IFbClientCore.d.ts.map +1 -0
- package/dist/esm/IFbClientCore.js +3 -0
- package/dist/esm/IFbClientCore.js.map +1 -0
- package/dist/esm/IVersionedData.d.ts +18 -0
- package/dist/esm/IVersionedData.d.ts.map +1 -0
- package/dist/esm/IVersionedData.js +3 -0
- package/dist/esm/IVersionedData.js.map +1 -0
- package/dist/esm/bootstrap/IBootstrapProvider.d.ts +5 -0
- package/dist/esm/bootstrap/IBootstrapProvider.d.ts.map +1 -0
- package/dist/esm/bootstrap/IBootstrapProvider.js +3 -0
- package/dist/esm/bootstrap/IBootstrapProvider.js.map +1 -0
- package/dist/esm/bootstrap/JsonBootstrapProvider.d.ts +9 -0
- package/dist/esm/bootstrap/JsonBootstrapProvider.d.ts.map +1 -0
- package/dist/esm/bootstrap/JsonBootstrapProvider.js +29 -0
- package/dist/esm/bootstrap/JsonBootstrapProvider.js.map +1 -0
- package/dist/esm/bootstrap/NullBootstrapProvider.d.ts +8 -0
- package/dist/esm/bootstrap/NullBootstrapProvider.d.ts.map +1 -0
- package/dist/esm/bootstrap/NullBootstrapProvider.js +19 -0
- package/dist/esm/bootstrap/NullBootstrapProvider.js.map +1 -0
- package/dist/esm/bootstrap/index.d.ts +4 -0
- package/dist/esm/bootstrap/index.d.ts.map +1 -0
- package/dist/esm/bootstrap/index.js +20 -0
- package/dist/esm/bootstrap/index.js.map +1 -0
- package/dist/esm/constants.d.ts +3 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +6 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/data-sources/DataSourceUpdates.d.ts +17 -0
- package/dist/esm/data-sources/DataSourceUpdates.d.ts.map +1 -0
- package/dist/esm/data-sources/DataSourceUpdates.js +84 -0
- package/dist/esm/data-sources/DataSourceUpdates.js.map +1 -0
- package/dist/esm/data-sources/createStreamListeners.d.ts +19 -0
- package/dist/esm/data-sources/createStreamListeners.d.ts.map +1 -0
- package/dist/esm/data-sources/createStreamListeners.js +49 -0
- package/dist/esm/data-sources/createStreamListeners.js.map +1 -0
- package/dist/esm/data-sources/index.d.ts +3 -0
- package/dist/esm/data-sources/index.d.ts.map +1 -0
- package/dist/esm/data-sources/index.js +19 -0
- package/dist/esm/data-sources/index.js.map +1 -0
- package/dist/esm/data-sync/DataSyncMode.d.ts +5 -0
- package/dist/esm/data-sync/DataSyncMode.d.ts.map +1 -0
- package/dist/esm/data-sync/DataSyncMode.js +9 -0
- package/dist/esm/data-sync/DataSyncMode.js.map +1 -0
- package/dist/esm/data-sync/IDataSynchronizer.d.ts +15 -0
- package/dist/esm/data-sync/IDataSynchronizer.d.ts.map +1 -0
- package/dist/esm/data-sync/IDataSynchronizer.js +3 -0
- package/dist/esm/data-sync/IDataSynchronizer.js.map +1 -0
- package/dist/esm/data-sync/IRequestor.d.ts +11 -0
- package/dist/esm/data-sync/IRequestor.d.ts.map +1 -0
- package/dist/esm/data-sync/IRequestor.js +3 -0
- package/dist/esm/data-sync/IRequestor.js.map +1 -0
- package/dist/esm/data-sync/NullDataSynchronizer.d.ts +8 -0
- package/dist/esm/data-sync/NullDataSynchronizer.d.ts.map +1 -0
- package/dist/esm/data-sync/NullDataSynchronizer.js +15 -0
- package/dist/esm/data-sync/NullDataSynchronizer.js.map +1 -0
- package/dist/esm/data-sync/PollingDataSynchronizer.d.ts +23 -0
- package/dist/esm/data-sync/PollingDataSynchronizer.d.ts.map +1 -0
- package/dist/esm/data-sync/PollingDataSynchronizer.js +87 -0
- package/dist/esm/data-sync/PollingDataSynchronizer.js.map +1 -0
- package/dist/esm/data-sync/Requestor.d.ts +20 -0
- package/dist/esm/data-sync/Requestor.d.ts.map +1 -0
- package/dist/esm/data-sync/Requestor.js +56 -0
- package/dist/esm/data-sync/Requestor.js.map +1 -0
- package/dist/esm/data-sync/WebSocketDataSynchronizer.d.ts +20 -0
- package/dist/esm/data-sync/WebSocketDataSynchronizer.d.ts.map +1 -0
- package/dist/esm/data-sync/WebSocketDataSynchronizer.js +55 -0
- package/dist/esm/data-sync/WebSocketDataSynchronizer.js.map +1 -0
- package/dist/esm/data-sync/index.d.ts +10 -0
- package/dist/esm/data-sync/index.d.ts.map +1 -0
- package/dist/esm/data-sync/index.js +26 -0
- package/dist/esm/data-sync/index.js.map +1 -0
- package/dist/esm/data-sync/types.d.ts +17 -0
- package/dist/esm/data-sync/types.d.ts.map +1 -0
- package/dist/esm/data-sync/types.js +9 -0
- package/dist/esm/data-sync/types.js.map +1 -0
- package/dist/esm/data-sync/utils.d.ts +3 -0
- package/dist/esm/data-sync/utils.d.ts.map +1 -0
- package/dist/esm/data-sync/utils.js +33 -0
- package/dist/esm/data-sync/utils.js.map +1 -0
- package/dist/esm/errors.d.ts +16 -0
- package/dist/esm/errors.d.ts.map +1 -0
- package/dist/esm/errors.js +41 -0
- package/dist/esm/errors.js.map +1 -0
- package/dist/esm/evaluation/EvalResult.d.ts +20 -0
- package/dist/esm/evaluation/EvalResult.d.ts.map +1 -0
- package/dist/esm/evaluation/EvalResult.js +33 -0
- package/dist/esm/evaluation/EvalResult.js.map +1 -0
- package/dist/esm/evaluation/Evaluator.d.ts +15 -0
- package/dist/esm/evaluation/Evaluator.d.ts.map +1 -0
- package/dist/esm/evaluation/Evaluator.js +28 -0
- package/dist/esm/evaluation/Evaluator.js.map +1 -0
- package/dist/esm/evaluation/IEvalDetail.d.ts +21 -0
- package/dist/esm/evaluation/IEvalDetail.d.ts.map +1 -0
- package/dist/esm/evaluation/IEvalDetail.js +3 -0
- package/dist/esm/evaluation/IEvalDetail.js.map +1 -0
- package/dist/esm/evaluation/ReasonKinds.d.ts +11 -0
- package/dist/esm/evaluation/ReasonKinds.d.ts.map +1 -0
- package/dist/esm/evaluation/ReasonKinds.js +15 -0
- package/dist/esm/evaluation/ReasonKinds.js.map +1 -0
- package/dist/esm/evaluation/data/IFlag.d.ts +26 -0
- package/dist/esm/evaluation/data/IFlag.d.ts.map +1 -0
- package/dist/esm/evaluation/data/IFlag.js +12 -0
- package/dist/esm/evaluation/data/IFlag.js.map +1 -0
- package/dist/esm/evaluation/data/index.d.ts +2 -0
- package/dist/esm/evaluation/data/index.d.ts.map +1 -0
- package/dist/esm/evaluation/data/index.js +18 -0
- package/dist/esm/evaluation/data/index.js.map +1 -0
- package/dist/esm/evaluation/index.d.ts +6 -0
- package/dist/esm/evaluation/index.d.ts.map +1 -0
- package/dist/esm/evaluation/index.js +22 -0
- package/dist/esm/evaluation/index.js.map +1 -0
- package/dist/esm/events/DefaultEventProcessor.d.ts +16 -0
- package/dist/esm/events/DefaultEventProcessor.d.ts.map +1 -0
- package/dist/esm/events/DefaultEventProcessor.js +79 -0
- package/dist/esm/events/DefaultEventProcessor.js.map +1 -0
- package/dist/esm/events/DefaultEventQueue.d.ts +18 -0
- package/dist/esm/events/DefaultEventQueue.d.ts.map +1 -0
- package/dist/esm/events/DefaultEventQueue.js +42 -0
- package/dist/esm/events/DefaultEventQueue.js.map +1 -0
- package/dist/esm/events/DefaultEventSender.d.ts +10 -0
- package/dist/esm/events/DefaultEventSender.d.ts.map +1 -0
- package/dist/esm/events/DefaultEventSender.js +67 -0
- package/dist/esm/events/DefaultEventSender.js.map +1 -0
- package/dist/esm/events/DefaultEventSerializer.d.ts +6 -0
- package/dist/esm/events/DefaultEventSerializer.d.ts.map +1 -0
- package/dist/esm/events/DefaultEventSerializer.js +14 -0
- package/dist/esm/events/DefaultEventSerializer.js.map +1 -0
- package/dist/esm/events/EventDispatcher.d.ts +17 -0
- package/dist/esm/events/EventDispatcher.d.ts.map +1 -0
- package/dist/esm/events/EventDispatcher.js +127 -0
- package/dist/esm/events/EventDispatcher.js.map +1 -0
- package/dist/esm/events/EventSerializer.d.ts +5 -0
- package/dist/esm/events/EventSerializer.d.ts.map +1 -0
- package/dist/esm/events/EventSerializer.js +3 -0
- package/dist/esm/events/EventSerializer.js.map +1 -0
- package/dist/esm/events/IEventProcessor.d.ts +7 -0
- package/dist/esm/events/IEventProcessor.d.ts.map +1 -0
- package/dist/esm/events/IEventProcessor.js +3 -0
- package/dist/esm/events/IEventProcessor.js.map +1 -0
- package/dist/esm/events/IEventQueue.d.ts +11 -0
- package/dist/esm/events/IEventQueue.d.ts.map +1 -0
- package/dist/esm/events/IEventQueue.js +3 -0
- package/dist/esm/events/IEventQueue.js.map +1 -0
- package/dist/esm/events/IEventSender.d.ts +13 -0
- package/dist/esm/events/IEventSender.d.ts.map +1 -0
- package/dist/esm/events/IEventSender.js +10 -0
- package/dist/esm/events/IEventSender.js.map +1 -0
- package/dist/esm/events/NullEventProcessor.d.ts +8 -0
- package/dist/esm/events/NullEventProcessor.d.ts.map +1 -0
- package/dist/esm/events/NullEventProcessor.js +16 -0
- package/dist/esm/events/NullEventProcessor.js.map +1 -0
- package/dist/esm/events/event.d.ts +44 -0
- package/dist/esm/events/event.d.ts.map +1 -0
- package/dist/esm/events/event.js +115 -0
- package/dist/esm/events/event.js.map +1 -0
- package/dist/esm/events/index.d.ts +12 -0
- package/dist/esm/events/index.d.ts.map +1 -0
- package/dist/esm/events/index.js +28 -0
- package/dist/esm/events/index.js.map +1 -0
- package/dist/esm/index.d.ts +20 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +36 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/integrations/TestLogger.d.ts +10 -0
- package/dist/esm/integrations/TestLogger.d.ts.map +1 -0
- package/dist/esm/integrations/TestLogger.js +25 -0
- package/dist/esm/integrations/TestLogger.js.map +1 -0
- package/dist/esm/integrations/index.d.ts +3 -0
- package/dist/esm/integrations/index.d.ts.map +1 -0
- package/dist/esm/integrations/index.js +21 -0
- package/dist/esm/integrations/index.js.map +1 -0
- package/dist/esm/integrations/test_data/FlagBuilder.d.ts +19 -0
- package/dist/esm/integrations/test_data/FlagBuilder.d.ts.map +1 -0
- package/dist/esm/integrations/test_data/FlagBuilder.js +56 -0
- package/dist/esm/integrations/test_data/FlagBuilder.js.map +1 -0
- package/dist/esm/integrations/test_data/TestData.d.ts +18 -0
- package/dist/esm/integrations/test_data/TestData.d.ts.map +1 -0
- package/dist/esm/integrations/test_data/TestData.js +38 -0
- package/dist/esm/integrations/test_data/TestData.js.map +1 -0
- package/dist/esm/integrations/test_data/TestDataSynchronizer.d.ts +21 -0
- package/dist/esm/integrations/test_data/TestDataSynchronizer.d.ts.map +1 -0
- package/dist/esm/integrations/test_data/TestDataSynchronizer.js +50 -0
- package/dist/esm/integrations/test_data/TestDataSynchronizer.js.map +1 -0
- package/dist/esm/integrations/test_data/index.d.ts +5 -0
- package/dist/esm/integrations/test_data/index.d.ts.map +1 -0
- package/dist/esm/integrations/test_data/index.js +13 -0
- package/dist/esm/integrations/test_data/index.js.map +1 -0
- package/dist/esm/logging/BasicLogger.d.ts +34 -0
- package/dist/esm/logging/BasicLogger.d.ts.map +1 -0
- package/dist/esm/logging/BasicLogger.js +101 -0
- package/dist/esm/logging/BasicLogger.js.map +1 -0
- package/dist/esm/logging/IBasicLoggerOptions.d.ts +43 -0
- package/dist/esm/logging/IBasicLoggerOptions.d.ts.map +1 -0
- package/dist/esm/logging/IBasicLoggerOptions.js +3 -0
- package/dist/esm/logging/IBasicLoggerOptions.js.map +1 -0
- package/dist/esm/logging/ILogger.d.ts +47 -0
- package/dist/esm/logging/ILogger.d.ts.map +1 -0
- package/dist/esm/logging/ILogger.js +3 -0
- package/dist/esm/logging/ILogger.js.map +1 -0
- package/dist/esm/logging/LogLevel.d.ts +10 -0
- package/dist/esm/logging/LogLevel.d.ts.map +1 -0
- package/dist/esm/logging/LogLevel.js +3 -0
- package/dist/esm/logging/LogLevel.js.map +1 -0
- package/dist/esm/logging/SafeLogger.d.ts +28 -0
- package/dist/esm/logging/SafeLogger.d.ts.map +1 -0
- package/dist/esm/logging/SafeLogger.js +63 -0
- package/dist/esm/logging/SafeLogger.js.map +1 -0
- package/dist/esm/logging/format.d.ts +12 -0
- package/dist/esm/logging/format.d.ts.map +1 -0
- package/dist/esm/logging/format.js +156 -0
- package/dist/esm/logging/format.js.map +1 -0
- package/dist/esm/logging/index.d.ts +7 -0
- package/dist/esm/logging/index.d.ts.map +1 -0
- package/dist/esm/logging/index.js +23 -0
- package/dist/esm/logging/index.js.map +1 -0
- package/dist/esm/options/ClientContext.d.ts +28 -0
- package/dist/esm/options/ClientContext.d.ts.map +1 -0
- package/dist/esm/options/ClientContext.js +21 -0
- package/dist/esm/options/ClientContext.js.map +1 -0
- package/dist/esm/options/IClientContext.d.ts +45 -0
- package/dist/esm/options/IClientContext.d.ts.map +1 -0
- package/dist/esm/options/IClientContext.js +3 -0
- package/dist/esm/options/IClientContext.js.map +1 -0
- package/dist/esm/options/IOptions.d.ts +101 -0
- package/dist/esm/options/IOptions.d.ts.map +1 -0
- package/dist/esm/options/IOptions.js +3 -0
- package/dist/esm/options/IOptions.js.map +1 -0
- package/dist/esm/options/IUser.d.ts +7 -0
- package/dist/esm/options/IUser.d.ts.map +1 -0
- package/dist/esm/options/IUser.js +3 -0
- package/dist/esm/options/IUser.js.map +1 -0
- package/dist/esm/options/IValidatedOptions.d.ts +27 -0
- package/dist/esm/options/IValidatedOptions.d.ts.map +1 -0
- package/dist/esm/options/IValidatedOptions.js +3 -0
- package/dist/esm/options/IValidatedOptions.js.map +1 -0
- package/dist/esm/options/OptionMessages.d.ts +14 -0
- package/dist/esm/options/OptionMessages.d.ts.map +1 -0
- package/dist/esm/options/OptionMessages.js +33 -0
- package/dist/esm/options/OptionMessages.js.map +1 -0
- package/dist/esm/options/UserBuilder.d.ts +17 -0
- package/dist/esm/options/UserBuilder.d.ts.map +1 -0
- package/dist/esm/options/UserBuilder.js +35 -0
- package/dist/esm/options/UserBuilder.js.map +1 -0
- package/dist/esm/options/Validators.d.ts +111 -0
- package/dist/esm/options/Validators.d.ts.map +1 -0
- package/dist/esm/options/Validators.js +247 -0
- package/dist/esm/options/Validators.js.map +1 -0
- package/dist/esm/options/index.d.ts +9 -0
- package/dist/esm/options/index.d.ts.map +1 -0
- package/dist/esm/options/index.js +25 -0
- package/dist/esm/options/index.js.map +1 -0
- package/dist/esm/platform/IInfo.d.ts +73 -0
- package/dist/esm/platform/IInfo.d.ts.map +1 -0
- package/dist/esm/platform/IInfo.js +3 -0
- package/dist/esm/platform/IInfo.js.map +1 -0
- package/dist/esm/platform/IPlatform.d.ts +19 -0
- package/dist/esm/platform/IPlatform.d.ts.map +1 -0
- package/dist/esm/platform/IPlatform.js +3 -0
- package/dist/esm/platform/IPlatform.js.map +1 -0
- package/dist/esm/platform/IStore.d.ts +110 -0
- package/dist/esm/platform/IStore.d.ts.map +1 -0
- package/dist/esm/platform/IStore.js +3 -0
- package/dist/esm/platform/IStore.js.map +1 -0
- package/dist/esm/platform/IWebSocket.d.ts +21 -0
- package/dist/esm/platform/IWebSocket.d.ts.map +1 -0
- package/dist/esm/platform/IWebSocket.js +3 -0
- package/dist/esm/platform/IWebSocket.js.map +1 -0
- package/dist/esm/platform/browser/BrowserInfo.d.ts +7 -0
- package/dist/esm/platform/browser/BrowserInfo.d.ts.map +1 -0
- package/dist/esm/platform/browser/BrowserInfo.js +24 -0
- package/dist/esm/platform/browser/BrowserInfo.js.map +1 -0
- package/dist/esm/platform/browser/BrowserPlatform.d.ts +12 -0
- package/dist/esm/platform/browser/BrowserPlatform.d.ts.map +1 -0
- package/dist/esm/platform/browser/BrowserPlatform.js +17 -0
- package/dist/esm/platform/browser/BrowserPlatform.js.map +1 -0
- package/dist/esm/platform/browser/BrowserRequests.d.ts +5 -0
- package/dist/esm/platform/browser/BrowserRequests.d.ts.map +1 -0
- package/dist/esm/platform/browser/BrowserRequests.js +9 -0
- package/dist/esm/platform/browser/BrowserRequests.js.map +1 -0
- package/dist/esm/platform/browser/BrowserWebSocket.d.ts +38 -0
- package/dist/esm/platform/browser/BrowserWebSocket.d.ts.map +1 -0
- package/dist/esm/platform/browser/BrowserWebSocket.js +129 -0
- package/dist/esm/platform/browser/BrowserWebSocket.js.map +1 -0
- package/dist/esm/platform/browser/FbClient.d.ts +30 -0
- package/dist/esm/platform/browser/FbClient.d.ts.map +1 -0
- package/dist/esm/platform/browser/FbClient.js +47 -0
- package/dist/esm/platform/browser/FbClient.js.map +1 -0
- package/dist/esm/platform/browser/LocalStorageStore.d.ts +26 -0
- package/dist/esm/platform/browser/LocalStorageStore.d.ts.map +1 -0
- package/dist/esm/platform/browser/LocalStorageStore.js +122 -0
- package/dist/esm/platform/browser/LocalStorageStore.js.map +1 -0
- package/dist/esm/platform/index.d.ts +5 -0
- package/dist/esm/platform/index.d.ts.map +1 -0
- package/dist/esm/platform/index.js +21 -0
- package/dist/esm/platform/index.js.map +1 -0
- package/dist/esm/platform/requests.d.ts +64 -0
- package/dist/esm/platform/requests.d.ts.map +1 -0
- package/dist/esm/platform/requests.js +7 -0
- package/dist/esm/platform/requests.js.map +1 -0
- package/dist/esm/store/DataKinds.d.ts +5 -0
- package/dist/esm/store/DataKinds.d.ts.map +1 -0
- package/dist/esm/store/DataKinds.js +9 -0
- package/dist/esm/store/DataKinds.js.map +1 -0
- package/dist/esm/store/IDataSourceUpdates.d.ts +48 -0
- package/dist/esm/store/IDataSourceUpdates.d.ts.map +1 -0
- package/dist/esm/store/IDataSourceUpdates.js +3 -0
- package/dist/esm/store/IDataSourceUpdates.js.map +1 -0
- package/dist/esm/store/InMemoryStore.d.ts +24 -0
- package/dist/esm/store/InMemoryStore.d.ts.map +1 -0
- package/dist/esm/store/InMemoryStore.js +96 -0
- package/dist/esm/store/InMemoryStore.js.map +1 -0
- package/dist/esm/store/index.d.ts +6 -0
- package/dist/esm/store/index.d.ts.map +1 -0
- package/dist/esm/store/index.js +22 -0
- package/dist/esm/store/index.js.map +1 -0
- package/dist/esm/store/serialization.d.ts +23 -0
- package/dist/esm/store/serialization.d.ts.map +1 -0
- package/dist/esm/store/serialization.js +37 -0
- package/dist/esm/store/serialization.js.map +1 -0
- package/dist/esm/store/store.d.ts +30 -0
- package/dist/esm/store/store.d.ts.map +1 -0
- package/dist/esm/store/store.js +6 -0
- package/dist/esm/store/store.js.map +1 -0
- package/dist/esm/utils/Emits.d.ts +30 -0
- package/dist/esm/utils/Emits.d.ts.map +1 -0
- package/dist/esm/utils/Emits.js +64 -0
- package/dist/esm/utils/Emits.js.map +1 -0
- package/dist/esm/utils/EventEmitter.d.ts +22 -0
- package/dist/esm/utils/EventEmitter.d.ts.map +1 -0
- package/dist/esm/utils/EventEmitter.js +108 -0
- package/dist/esm/utils/EventEmitter.js.map +1 -0
- package/dist/esm/utils/IEventEmitter.d.ts +16 -0
- package/dist/esm/utils/IEventEmitter.d.ts.map +1 -0
- package/dist/esm/utils/IEventEmitter.js +3 -0
- package/dist/esm/utils/IEventEmitter.js.map +1 -0
- package/dist/esm/utils/Regex.d.ts +7 -0
- package/dist/esm/utils/Regex.d.ts.map +1 -0
- package/dist/esm/utils/Regex.js +22 -0
- package/dist/esm/utils/Regex.js.map +1 -0
- package/dist/esm/utils/ValueConverters.d.ts +13 -0
- package/dist/esm/utils/ValueConverters.d.ts.map +1 -0
- package/dist/esm/utils/ValueConverters.js +46 -0
- package/dist/esm/utils/ValueConverters.js.map +1 -0
- package/dist/esm/utils/VoidFunction.d.ts +2 -0
- package/dist/esm/utils/VoidFunction.d.ts.map +1 -0
- package/dist/esm/utils/VoidFunction.js +3 -0
- package/dist/esm/utils/VoidFunction.js.map +1 -0
- package/dist/esm/utils/canonicalizeUri.d.ts +2 -0
- package/dist/esm/utils/canonicalizeUri.d.ts.map +1 -0
- package/dist/esm/utils/canonicalizeUri.js +9 -0
- package/dist/esm/utils/canonicalizeUri.js.map +1 -0
- package/dist/esm/utils/http.d.ts +12 -0
- package/dist/esm/utils/http.d.ts.map +1 -0
- package/dist/esm/utils/http.js +26 -0
- package/dist/esm/utils/http.js.map +1 -0
- package/dist/esm/utils/index.d.ts +5 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +21 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/isNullOrUndefined.d.ts +2 -0
- package/dist/esm/utils/isNullOrUndefined.d.ts.map +1 -0
- package/dist/esm/utils/isNullOrUndefined.js +8 -0
- package/dist/esm/utils/isNullOrUndefined.js.map +1 -0
- package/dist/esm/utils/serializeUser.d.ts +3 -0
- package/dist/esm/utils/serializeUser.d.ts.map +1 -0
- package/dist/esm/utils/serializeUser.js +24 -0
- package/dist/esm/utils/serializeUser.js.map +1 -0
- package/dist/esm/utils/sleep.d.ts +3 -0
- package/dist/esm/utils/sleep.d.ts.map +1 -0
- package/dist/esm/utils/sleep.js +18 -0
- package/dist/esm/utils/sleep.js.map +1 -0
- package/dist/esm/version.d.ts +3 -0
- package/dist/esm/version.d.ts.map +1 -0
- package/dist/esm/version.js +6 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/umd/featbit-js-client-sdk-3.0.0.js +2 -0
- package/dist/umd/featbit-js-client-sdk-3.0.0.js.map +1 -0
- package/dist/umd/featbit-js-client-sdk.js +2 -0
- package/dist/umd/featbit-js-client-sdk.js.map +1 -0
- package/package.json +22 -24
- package/src/Configuration.ts +234 -0
- package/src/Context.ts +62 -0
- package/src/FbClientBuilder.ts +161 -0
- package/src/FbClientCore.ts +389 -0
- package/src/IContextProperty.ts +4 -0
- package/src/IDataKind.ts +11 -0
- package/src/IFbClient.ts +30 -0
- package/src/IFbClientCore.ts +291 -0
- package/src/IVersionedData.ts +18 -0
- package/src/bootstrap/IBootstrapProvider.ts +5 -0
- package/src/bootstrap/JsonBootstrapProvider.ts +35 -0
- package/src/bootstrap/NullBootstrapProvider.ts +21 -0
- package/src/bootstrap/index.ts +3 -0
- package/src/constants.ts +2 -6
- package/src/data-sources/DataSourceUpdates.ts +93 -0
- package/src/data-sources/createStreamListeners.ts +66 -0
- package/src/data-sources/index.ts +2 -0
- package/src/data-sync/DataSyncMode.ts +4 -0
- package/src/data-sync/IDataSynchronizer.ts +15 -0
- package/src/data-sync/IRequestor.ts +10 -0
- package/src/data-sync/NullDataSynchronizer.ts +15 -0
- package/src/data-sync/PollingDataSynchronizer.ts +111 -0
- package/src/data-sync/Requestor.ts +61 -0
- package/src/data-sync/WebSocketDataSynchronizer.ts +74 -0
- package/src/data-sync/index.ts +9 -0
- package/src/data-sync/types.ts +20 -0
- package/src/data-sync/utils.ts +32 -0
- package/src/errors.ts +41 -0
- package/src/evaluation/EvalResult.ts +36 -0
- package/src/evaluation/Evaluator.ts +27 -0
- package/src/evaluation/IEvalDetail.ts +24 -0
- package/src/evaluation/ReasonKinds.ts +10 -0
- package/src/evaluation/data/IFlag.ts +29 -0
- package/src/evaluation/data/index.ts +1 -0
- package/src/evaluation/index.ts +5 -0
- package/src/events/DefaultEventProcessor.ts +84 -0
- package/src/events/DefaultEventQueue.ts +50 -0
- package/src/events/DefaultEventSender.ts +75 -0
- package/src/events/DefaultEventSerializer.ts +12 -0
- package/src/events/EventDispatcher.ts +128 -0
- package/src/events/EventSerializer.ts +5 -0
- package/src/events/IEventProcessor.ts +9 -0
- package/src/events/IEventQueue.ts +17 -0
- package/src/events/IEventSender.ts +14 -0
- package/src/events/NullEventProcessor.ts +16 -0
- package/src/events/event.ts +130 -0
- package/src/events/index.ts +11 -0
- package/src/index.ts +19 -4
- package/src/integrations/TestLogger.ts +25 -0
- package/src/integrations/index.ts +2 -0
- package/src/integrations/test_data/FlagBuilder.ts +60 -0
- package/src/integrations/test_data/TestData.ts +58 -0
- package/src/integrations/test_data/TestDataSynchronizer.ts +50 -0
- package/src/integrations/test_data/index.ts +5 -0
- package/src/logging/BasicLogger.ts +108 -0
- package/src/logging/IBasicLoggerOptions.ts +46 -0
- package/src/logging/ILogger.ts +49 -0
- package/src/logging/LogLevel.ts +9 -0
- package/src/logging/SafeLogger.ts +70 -0
- package/src/logging/format.ts +154 -0
- package/src/logging/index.ts +6 -0
- package/src/options/ClientContext.ts +40 -0
- package/src/options/IClientContext.ts +54 -0
- package/src/options/IOptions.ts +124 -0
- package/src/options/IUser.ts +7 -0
- package/src/options/IValidatedOptions.ts +30 -0
- package/src/options/OptionMessages.ts +36 -0
- package/src/options/UserBuilder.ts +36 -0
- package/src/options/Validators.ts +301 -0
- package/src/options/index.ts +8 -0
- package/src/platform/IInfo.ts +82 -0
- package/src/platform/IPlatform.ts +21 -0
- package/src/platform/IStore.ts +119 -0
- package/src/platform/IWebSocket.ts +23 -0
- package/src/platform/browser/BrowserInfo.ts +25 -0
- package/src/platform/browser/BrowserPlatform.ts +20 -0
- package/src/platform/browser/BrowserRequests.ts +7 -0
- package/src/platform/browser/BrowserWebSocket.ts +143 -0
- package/src/platform/browser/FbClient.ts +59 -0
- package/src/platform/browser/LocalStorageStore.ts +153 -0
- package/src/platform/index.ts +4 -0
- package/src/platform/requests.ts +77 -0
- package/src/store/DataKinds.ts +7 -0
- package/src/store/IDataSourceUpdates.ts +49 -0
- package/src/store/InMemoryStore.ts +115 -0
- package/src/store/index.ts +5 -0
- package/src/store/serialization.ts +52 -0
- package/src/store/store.ts +38 -0
- package/src/utils/Emits.ts +76 -0
- package/src/utils/EventEmitter.ts +129 -0
- package/src/utils/IEventEmitter.ts +15 -0
- package/src/utils/Regex.ts +22 -0
- package/src/utils/ValueConverters.ts +56 -0
- package/src/utils/VoidFunction.ts +1 -0
- package/src/utils/canonicalizeUri.ts +4 -0
- package/src/utils/http.ts +40 -0
- package/src/utils/index.ts +4 -0
- package/src/utils/isNullOrUndefined.ts +3 -0
- package/src/utils/serializeUser.ts +28 -0
- package/src/utils/sleep.ts +6 -0
- package/src/version.ts +1 -0
- package/esm/constants.d.ts +0 -6
- package/esm/constants.js +0 -7
- package/esm/constants.js.map +0 -1
- package/esm/events.d.ts +0 -14
- package/esm/events.js +0 -27
- package/esm/events.js.map +0 -1
- package/esm/featbit.d.ts +0 -34
- package/esm/featbit.js +0 -382
- package/esm/featbit.js.map +0 -1
- package/esm/index.d.ts +0 -4
- package/esm/index.js +0 -5
- package/esm/index.js.map +0 -1
- package/esm/logger.d.ts +0 -4
- package/esm/logger.js +0 -20
- package/esm/logger.js.map +0 -1
- package/esm/network.service.d.ts +0 -27
- package/esm/network.service.js +0 -288
- package/esm/network.service.js.map +0 -1
- package/esm/optionMessages.d.ts +0 -5
- package/esm/optionMessages.js +0 -16
- package/esm/optionMessages.js.map +0 -1
- package/esm/queue.d.ts +0 -8
- package/esm/queue.js +0 -35
- package/esm/queue.js.map +0 -1
- package/esm/store.d.ts +0 -20
- package/esm/store.js +0 -143
- package/esm/store.js.map +0 -1
- package/esm/throttleutil.d.ts +0 -9
- package/esm/throttleutil.js +0 -133
- package/esm/throttleutil.js.map +0 -1
- package/esm/types.d.ts +0 -94
- package/esm/types.js +0 -24
- package/esm/types.js.map +0 -1
- package/esm/umd.d.ts +0 -2
- package/esm/utils.d.ts +0 -11
- package/esm/utils.js +0 -142
- package/esm/utils.js.map +0 -1
- package/src/events.ts +0 -29
- package/src/featbit.ts +0 -343
- package/src/logger.ts +0 -13
- package/src/network.service.ts +0 -223
- package/src/optionMessages.ts +0 -13
- package/src/queue.ts +0 -23
- package/src/store.ts +0 -169
- package/src/throttleutil.ts +0 -72
- package/src/types.ts +0 -113
- package/src/umd.ts +0 -15
- package/src/utils.ts +0 -173
- package/umd/featbit-js-client-sdk-2.0.2.js +0 -2
- package/umd/featbit-js-client-sdk-2.0.2.js.map +0 -1
- package/umd/featbit-js-client-sdk.js +0 -2
- package/umd/featbit-js-client-sdk.js.map +0 -1
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.FbClientCore = void 0;
|
|
16
|
+
const Configuration_1 = __importDefault(require("./Configuration"));
|
|
17
|
+
const ClientContext_1 = __importDefault(require("./options/ClientContext"));
|
|
18
|
+
const DataSourceUpdates_1 = __importDefault(require("./data-sources/DataSourceUpdates"));
|
|
19
|
+
const createStreamListeners_1 = require("./data-sources/createStreamListeners");
|
|
20
|
+
const WebSocketDataSynchronizer_1 = __importDefault(require("./data-sync/WebSocketDataSynchronizer"));
|
|
21
|
+
const PollingDataSynchronizer_1 = __importDefault(require("./data-sync/PollingDataSynchronizer"));
|
|
22
|
+
const Requestor_1 = __importDefault(require("./data-sync/Requestor"));
|
|
23
|
+
const DataKinds_1 = __importDefault(require("./store/DataKinds"));
|
|
24
|
+
const Evaluator_1 = __importDefault(require("./evaluation/Evaluator"));
|
|
25
|
+
const ReasonKinds_1 = require("./evaluation/ReasonKinds");
|
|
26
|
+
const errors_1 = require("./errors");
|
|
27
|
+
const Context_1 = __importDefault(require("./Context"));
|
|
28
|
+
const ValueConverters_1 = require("./utils/ValueConverters");
|
|
29
|
+
const NullDataSynchronizer_1 = require("./data-sync/NullDataSynchronizer");
|
|
30
|
+
const NullEventProcessor_1 = require("./events/NullEventProcessor");
|
|
31
|
+
const DefaultEventProcessor_1 = require("./events/DefaultEventProcessor");
|
|
32
|
+
const event_1 = require("./events/event");
|
|
33
|
+
const DataSyncMode_1 = require("./data-sync/DataSyncMode");
|
|
34
|
+
const Validators_1 = require("./options/Validators");
|
|
35
|
+
var ClientState;
|
|
36
|
+
(function (ClientState) {
|
|
37
|
+
ClientState[ClientState["Initializing"] = 0] = "Initializing";
|
|
38
|
+
ClientState[ClientState["Initialized"] = 1] = "Initialized";
|
|
39
|
+
ClientState[ClientState["Failed"] = 2] = "Failed";
|
|
40
|
+
})(ClientState || (ClientState = {}));
|
|
41
|
+
class FbClientCore {
|
|
42
|
+
constructor(options, platform, callbacks) {
|
|
43
|
+
this.options = options;
|
|
44
|
+
this.platform = platform;
|
|
45
|
+
this.state = ClientState.Initializing;
|
|
46
|
+
this.onError = callbacks.onError;
|
|
47
|
+
this.onFailed = callbacks.onFailed;
|
|
48
|
+
this.onReady = callbacks.onReady;
|
|
49
|
+
const { onUpdate, hasEventListeners } = callbacks;
|
|
50
|
+
const config = new Configuration_1.default(options);
|
|
51
|
+
if (!config.sdkKey && !config.offline) {
|
|
52
|
+
throw new Error('You must configure the client with an SDK key');
|
|
53
|
+
}
|
|
54
|
+
if (!config.user) {
|
|
55
|
+
throw new Error('You must configure the client with a user');
|
|
56
|
+
}
|
|
57
|
+
this.config = config;
|
|
58
|
+
this.logger = config.logger;
|
|
59
|
+
this.init(platform, onUpdate, hasEventListeners);
|
|
60
|
+
}
|
|
61
|
+
init(platform, onUpdate, hasEventListeners) {
|
|
62
|
+
var _a, _b, _c;
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
const clientContext = new ClientContext_1.default(this.config.sdkKey, this.config, platform);
|
|
65
|
+
this.store = this.config.storeFactory(clientContext);
|
|
66
|
+
this.store.identify(this.config.user);
|
|
67
|
+
this.dataSourceUpdates = new DataSourceUpdates_1.default(this.store, hasEventListeners, onUpdate);
|
|
68
|
+
this.evaluator = new Evaluator_1.default(this.store);
|
|
69
|
+
// use bootstrap provider to populate store
|
|
70
|
+
yield this.config.bootstrapProvider.populate(this.config.user.keyId, this.dataSourceUpdates);
|
|
71
|
+
if (this.config.offline) {
|
|
72
|
+
this.eventProcessor = new NullEventProcessor_1.NullEventProcessor();
|
|
73
|
+
this.dataSynchronizer = new NullDataSynchronizer_1.NullDataSynchronizer();
|
|
74
|
+
this.initSuccess();
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
this.eventProcessor = new DefaultEventProcessor_1.DefaultEventProcessor(clientContext);
|
|
78
|
+
const listeners = (0, createStreamListeners_1.createStreamListeners)(this.dataSourceUpdates, this.logger, {
|
|
79
|
+
put: () => this.initSuccess(),
|
|
80
|
+
patch: () => this.initSuccess()
|
|
81
|
+
});
|
|
82
|
+
const dataSynchronizer = this.config.dataSyncMode === DataSyncMode_1.DataSyncModeEnum.STREAMING
|
|
83
|
+
? new WebSocketDataSynchronizer_1.default(this.config.sdkKey, this.config.user, clientContext, platform.webSocket, () => this.store.version, listeners, this.config.webSocketPingInterval)
|
|
84
|
+
: new PollingDataSynchronizer_1.default(this.config, new Requestor_1.default(this.config.sdkKey, this.config, this.platform.info, this.platform.requests), () => this.store.version, listeners, (e) => this.dataSourceErrorHandler(e));
|
|
85
|
+
this.dataSynchronizer = (_c = (_b = (_a = this.config).dataSynchronizerFactory) === null || _b === void 0 ? void 0 : _b.call(_a, clientContext, this.store, this.dataSourceUpdates, () => this.initSuccess(), (e) => this.dataSourceErrorHandler(e))) !== null && _c !== void 0 ? _c : dataSynchronizer;
|
|
86
|
+
}
|
|
87
|
+
this.start();
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
identify(user) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
const validator = new Validators_1.UserValidator();
|
|
93
|
+
if (!validator.is(user)) {
|
|
94
|
+
validator.messages.forEach((error) => {
|
|
95
|
+
var _a;
|
|
96
|
+
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn(error);
|
|
97
|
+
});
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
this.store.identify(user);
|
|
101
|
+
this.dataSynchronizer.identify(user);
|
|
102
|
+
const [flags] = this.store.all(DataKinds_1.default.Flags);
|
|
103
|
+
if (Object.keys(flags).length === 0) {
|
|
104
|
+
yield this.config.bootstrapProvider.populate(user.keyId, this.dataSourceUpdates);
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
start() {
|
|
109
|
+
if (this.config.offline) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
this.dataSynchronizer.start();
|
|
113
|
+
setTimeout(() => {
|
|
114
|
+
var _a, _b;
|
|
115
|
+
if (!this.initialized()) {
|
|
116
|
+
const msg = `FbClient failed to start successfully within ${this.config.startWaitTime} milliseconds. ` +
|
|
117
|
+
'This error usually indicates a connection issue with FeatBit or an invalid sdkKey.' +
|
|
118
|
+
'Please double-check your sdkKey and streamingUri/pollingUri configuration. ' +
|
|
119
|
+
'We will continue to initialize the FbClient, it still have a chance to get to work ' +
|
|
120
|
+
'if it\'s a temporary network issue';
|
|
121
|
+
const error = new Error(msg);
|
|
122
|
+
this.state = ClientState.Failed;
|
|
123
|
+
this.rejectionReason = error;
|
|
124
|
+
(_a = this.initReject) === null || _a === void 0 ? void 0 : _a.call(this, error);
|
|
125
|
+
return (_b = this.logger) === null || _b === void 0 ? void 0 : _b.warn(msg);
|
|
126
|
+
}
|
|
127
|
+
}, this.config.startWaitTime);
|
|
128
|
+
}
|
|
129
|
+
initialized() {
|
|
130
|
+
return this.state === ClientState.Initialized;
|
|
131
|
+
}
|
|
132
|
+
waitForInitialization() {
|
|
133
|
+
// An initialization promise is only created if someone is going to use that promise.
|
|
134
|
+
// If we always created an initialization promise, and there was no call waitForInitialization
|
|
135
|
+
// by the time the promise was rejected, then that would result in an unhandled promise
|
|
136
|
+
// rejection.
|
|
137
|
+
// Initialization promise was created by a previous call to waitForInitialization.
|
|
138
|
+
if (this.initializedPromise) {
|
|
139
|
+
return this.initializedPromise;
|
|
140
|
+
}
|
|
141
|
+
// Initialization completed before waitForInitialization was called, so we have completed
|
|
142
|
+
// and there was no promise. So we make a resolved promise and return it.
|
|
143
|
+
if (this.state === ClientState.Initialized) {
|
|
144
|
+
this.initializedPromise = Promise.resolve(this);
|
|
145
|
+
return this.initializedPromise;
|
|
146
|
+
}
|
|
147
|
+
// Initialization failed before waitForInitialization was called, so we have completed
|
|
148
|
+
// and there was no promise. So we make a rejected promise and return it.
|
|
149
|
+
if (this.state === ClientState.Failed) {
|
|
150
|
+
this.initializedPromise = Promise.reject(this.rejectionReason);
|
|
151
|
+
return this.initializedPromise;
|
|
152
|
+
}
|
|
153
|
+
if (!this.initializedPromise) {
|
|
154
|
+
this.initializedPromise = new Promise((resolve, reject) => {
|
|
155
|
+
this.initResolve = resolve;
|
|
156
|
+
this.initReject = reject;
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
return this.initializedPromise;
|
|
160
|
+
}
|
|
161
|
+
boolVariation(key, defaultValue) {
|
|
162
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.bool).value;
|
|
163
|
+
}
|
|
164
|
+
boolVariationDetail(key, defaultValue) {
|
|
165
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.bool);
|
|
166
|
+
}
|
|
167
|
+
jsonVariation(key, defaultValue) {
|
|
168
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.json).value;
|
|
169
|
+
}
|
|
170
|
+
jsonVariationDetail(key, defaultValue) {
|
|
171
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.json);
|
|
172
|
+
}
|
|
173
|
+
numberVariation(key, defaultValue) {
|
|
174
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.number).value;
|
|
175
|
+
}
|
|
176
|
+
numberVariationDetail(key, defaultValue) {
|
|
177
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.number);
|
|
178
|
+
}
|
|
179
|
+
stringVariation(key, defaultValue) {
|
|
180
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.string).value;
|
|
181
|
+
}
|
|
182
|
+
stringVariationDetail(key, defaultValue) {
|
|
183
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.string);
|
|
184
|
+
}
|
|
185
|
+
variation(key, defaultValue) {
|
|
186
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.string).value;
|
|
187
|
+
}
|
|
188
|
+
variationDetail(key, defaultValue) {
|
|
189
|
+
return this.evaluateCore(key, defaultValue, ValueConverters_1.ValueConverters.string);
|
|
190
|
+
}
|
|
191
|
+
getAllVariations() {
|
|
192
|
+
var _a;
|
|
193
|
+
const context = Context_1.default.fromUser(this.config.user);
|
|
194
|
+
if (!context.valid) {
|
|
195
|
+
const error = new errors_1.ClientError(`${(_a = context.message) !== null && _a !== void 0 ? _a : 'User not valid;'} returning default value.`);
|
|
196
|
+
this.onError(error);
|
|
197
|
+
return Promise.resolve([]);
|
|
198
|
+
}
|
|
199
|
+
const [flags, _] = this.store.all(DataKinds_1.default.Flags);
|
|
200
|
+
const result = Object.keys(flags).map(flagKey => {
|
|
201
|
+
var _a;
|
|
202
|
+
const evalResult = this.evaluator.evaluate(flagKey);
|
|
203
|
+
return { flagKey, kind: evalResult.kind, reason: evalResult.reason, value: (_a = evalResult.value) === null || _a === void 0 ? void 0 : _a.variation };
|
|
204
|
+
});
|
|
205
|
+
return Promise.resolve(result);
|
|
206
|
+
}
|
|
207
|
+
close() {
|
|
208
|
+
var _a;
|
|
209
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
210
|
+
yield this.eventProcessor.close();
|
|
211
|
+
(_a = this.dataSynchronizer) === null || _a === void 0 ? void 0 : _a.close();
|
|
212
|
+
this.store.close();
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
track(eventName, metricValue) {
|
|
216
|
+
const metricEvent = new event_1.MetricEvent(this.config.user, eventName, this.platform.info.appType, metricValue !== null && metricValue !== void 0 ? metricValue : 1);
|
|
217
|
+
this.eventProcessor.record(metricEvent);
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
flush(callback) {
|
|
221
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
222
|
+
try {
|
|
223
|
+
yield this.eventProcessor.flush();
|
|
224
|
+
callback === null || callback === void 0 ? void 0 : callback(true);
|
|
225
|
+
return true;
|
|
226
|
+
}
|
|
227
|
+
catch (err) {
|
|
228
|
+
callback === null || callback === void 0 ? void 0 : callback(false);
|
|
229
|
+
return false;
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
evaluateCore(flagKey, defaultValue, typeConverter) {
|
|
234
|
+
var _a, _b, _c;
|
|
235
|
+
const context = Context_1.default.fromUser(this.config.user);
|
|
236
|
+
if (!context.valid) {
|
|
237
|
+
const error = new errors_1.ClientError(`${(_a = context.message) !== null && _a !== void 0 ? _a : 'User not valid;'} returning default value.`);
|
|
238
|
+
this.onError(error);
|
|
239
|
+
return { flagKey, kind: ReasonKinds_1.ReasonKinds.Error, reason: error.message, value: defaultValue };
|
|
240
|
+
}
|
|
241
|
+
const evalResult = this.evaluator.evaluate(flagKey);
|
|
242
|
+
if (evalResult.kind === ReasonKinds_1.ReasonKinds.FlagNotFound) {
|
|
243
|
+
// flag not found, return default value
|
|
244
|
+
const error = new errors_1.ClientError(evalResult.reason);
|
|
245
|
+
this.onError(error);
|
|
246
|
+
return { flagKey, kind: evalResult.kind, reason: evalResult.reason, value: defaultValue };
|
|
247
|
+
}
|
|
248
|
+
if (!this.initialized()) {
|
|
249
|
+
(_b = this.logger) === null || _b === void 0 ? void 0 : _b.warn('Variation called before FeatBit client initialization completed (did you wait for the' +
|
|
250
|
+
"'ready' event?)");
|
|
251
|
+
}
|
|
252
|
+
else {
|
|
253
|
+
// send event
|
|
254
|
+
this.eventProcessor.record(evalResult.toEvalEvent(this.config.user));
|
|
255
|
+
}
|
|
256
|
+
const { isSucceeded, value } = typeConverter((_c = evalResult.value) === null || _c === void 0 ? void 0 : _c.variation);
|
|
257
|
+
return isSucceeded
|
|
258
|
+
? { flagKey, kind: evalResult.kind, reason: evalResult.reason, value }
|
|
259
|
+
: { flagKey, kind: ReasonKinds_1.ReasonKinds.WrongType, reason: 'type mismatch', value: defaultValue };
|
|
260
|
+
}
|
|
261
|
+
dataSourceErrorHandler(e) {
|
|
262
|
+
var _a;
|
|
263
|
+
const error = e.code === 401 ? new Error('Authentication failed. Double check your SDK key.') : e;
|
|
264
|
+
this.onError(error);
|
|
265
|
+
this.onFailed(error);
|
|
266
|
+
if (!this.initialized()) {
|
|
267
|
+
this.state = ClientState.Failed;
|
|
268
|
+
this.rejectionReason = error;
|
|
269
|
+
(_a = this.initReject) === null || _a === void 0 ? void 0 : _a.call(this, error);
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
initSuccess() {
|
|
273
|
+
var _a, _b;
|
|
274
|
+
if (!this.initialized()) {
|
|
275
|
+
this.state = ClientState.Initialized;
|
|
276
|
+
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.info('FbClient started successfully.');
|
|
277
|
+
(_b = this.initResolve) === null || _b === void 0 ? void 0 : _b.call(this, this);
|
|
278
|
+
this.onReady();
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
exports.FbClientCore = FbClientCore;
|
|
283
|
+
//# sourceMappingURL=FbClientCore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FbClientCore.js","sourceRoot":"","sources":["../../src/FbClientCore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IContextProperty.d.ts","sourceRoot":"","sources":["../../src/IContextProperty.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IContextProperty.js","sourceRoot":"","sources":["../../src/IContextProperty.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Used internally to describe the type of data being queried or updated, such as feature flags or
|
|
3
|
+
* user segments.
|
|
4
|
+
*/
|
|
5
|
+
export interface IDataKind {
|
|
6
|
+
/**
|
|
7
|
+
* A string such as `"flags"` or `"segments"` which can be used in keys to distinguish this
|
|
8
|
+
* kind of data from other kinds.
|
|
9
|
+
*/
|
|
10
|
+
namespace: string;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=IDataKind.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDataKind.d.ts","sourceRoot":"","sources":["../../src/IDataKind.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDataKind.js","sourceRoot":"","sources":["../../src/IDataKind.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { IFbClientCore } from "./IFbClientCore";
|
|
2
|
+
import { IEventEmitter } from "./utils/IEventEmitter";
|
|
3
|
+
export interface IFbClient extends IFbClientCore, IEventEmitter {
|
|
4
|
+
/**
|
|
5
|
+
*
|
|
6
|
+
* Registers an event listener that will be called when the client triggers some type of event.
|
|
7
|
+
*
|
|
8
|
+
* This is the standard `on` method inherited from Node's `EventEmitter`; see the
|
|
9
|
+
* {@link https://nodejs.org/api/events.html#events_class_eventemitter|Node API docs} for more
|
|
10
|
+
* details on how to manage event listeners. Here is a description of the event types defined
|
|
11
|
+
* by `FbClient`.
|
|
12
|
+
*
|
|
13
|
+
* - `"ready"`: Sent only once, when the client has successfully connected to FeatBit.
|
|
14
|
+
* Alternately, you can detect this with [[waitForInitialization]].
|
|
15
|
+
* - `"failed"`: Sent only once, if the client has permanently failed to connect to FeatBit.
|
|
16
|
+
* Alternately, you can detect this with [[waitForInitialization]].
|
|
17
|
+
* - `"error"`: Contains an error object describing some abnormal condition that the client has detected
|
|
18
|
+
* (such as a network error).
|
|
19
|
+
* - `"update"`: The client has received a change to a feature flag. The event parameter is an object
|
|
20
|
+
* containing a single property, `key`, the flag key. Note that this does not necessarily mean the flag's
|
|
21
|
+
* value has changed for any particular context, only that some part of the flag configuration was changed.
|
|
22
|
+
* - `"update:KEY"`: The client has received a change to the feature flag whose key is KEY. This is the
|
|
23
|
+
* same as `"update"` but allows you to listen for a specific flag.
|
|
24
|
+
*
|
|
25
|
+
* @param event the name of the event to listen for
|
|
26
|
+
* @param listener the function to call when the event happens
|
|
27
|
+
*/
|
|
28
|
+
on(event: string | symbol, listener: (...args: any[]) => void): this;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=IFbClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IFbClient.d.ts","sourceRoot":"","sources":["../../src/IFbClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,WAAW,SAAU,SAAQ,aAAa,EAAE,aAAa;IAC7D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;CACtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IFbClient.js","sourceRoot":"","sources":["../../src/IFbClient.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { IEvalDetail } from "./evaluation/IEvalDetail";
|
|
2
|
+
import { IConvertResult } from "./utils/ValueConverters";
|
|
3
|
+
import { IUser } from "./options";
|
|
4
|
+
/**
|
|
5
|
+
* The FeatBit SDK client object.
|
|
6
|
+
*
|
|
7
|
+
* Create this object with {@link FbClientBuilder}. Applications should configure the client at startup time
|
|
8
|
+
* and continue to use it throughout the lifetime of the application, rather than creating instances
|
|
9
|
+
* on the fly.
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export interface IFbClientCore {
|
|
13
|
+
/**
|
|
14
|
+
* Set the current user of the client.
|
|
15
|
+
*
|
|
16
|
+
* @param user
|
|
17
|
+
* The current user. The actual type of this parameter is
|
|
18
|
+
* {@link IUser}.
|
|
19
|
+
*/
|
|
20
|
+
identify(user: IUser): void;
|
|
21
|
+
/**
|
|
22
|
+
* Indicates whether the client is ready to be used.
|
|
23
|
+
*
|
|
24
|
+
* @returns true if the client is ready to be used, false otherwise.
|
|
25
|
+
*/
|
|
26
|
+
initialized(): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Wait until the client is initialized. The promise resolves when the client has finished initializing successfully.
|
|
29
|
+
* If the client fails to initialize, the promise will be rejected.
|
|
30
|
+
*
|
|
31
|
+
* @returns A promise.
|
|
32
|
+
*/
|
|
33
|
+
waitForInitialization(): Promise<IFbClientCore>;
|
|
34
|
+
/**
|
|
35
|
+
* Calculates the boolean value of a feature flag for a given user.
|
|
36
|
+
*
|
|
37
|
+
* If the flag variation does not have a boolean value, {@link defaultValue} is returned.
|
|
38
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
39
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
40
|
+
*
|
|
41
|
+
* @param key
|
|
42
|
+
* The unique key of the feature flag.
|
|
43
|
+
* @param defaultValue
|
|
44
|
+
* The default value to return if the flag cannot be evaluated.
|
|
45
|
+
*
|
|
46
|
+
* @returns the variation for the given user, or {@link defaultValue} if the flag cannot be evaluated
|
|
47
|
+
*/
|
|
48
|
+
boolVariation(key: string, defaultValue: boolean): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Calculates the boolean value of a feature flag for a given user, and returns an object that
|
|
51
|
+
* describes the way the value was determined.
|
|
52
|
+
*
|
|
53
|
+
* If the flag variation does not have a boolean value, {@link defaultValue} is returned.
|
|
54
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
55
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
56
|
+
*
|
|
57
|
+
* @param key
|
|
58
|
+
* The unique key of the feature flag.
|
|
59
|
+
* @param defaultValue
|
|
60
|
+
* The default value to return if the flag cannot be evaluated.
|
|
61
|
+
*
|
|
62
|
+
* @returns {@link IEvalDetail} object describing the way the value was determined.
|
|
63
|
+
*/
|
|
64
|
+
boolVariationDetail(key: string, defaultValue: boolean): IEvalDetail<boolean>;
|
|
65
|
+
/**
|
|
66
|
+
* Calculates the number value of a feature flag for a given user.
|
|
67
|
+
*
|
|
68
|
+
* If the flag variation does not have a number value, {@link defaultValue} is returned.
|
|
69
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
70
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
71
|
+
*
|
|
72
|
+
* @param key
|
|
73
|
+
* The unique key of the feature flag.
|
|
74
|
+
* @param defaultValue
|
|
75
|
+
* The default value to return if the flag cannot be evaluated.
|
|
76
|
+
*
|
|
77
|
+
* @returns the variation for the given user, or {@link defaultValue} if the flag cannot be evaluated
|
|
78
|
+
*/
|
|
79
|
+
numberVariation(key: string, defaultValue: number): number;
|
|
80
|
+
/**
|
|
81
|
+
* Calculates the number value of a feature flag for a given user, and returns an object that
|
|
82
|
+
* describes the way the value was determined.
|
|
83
|
+
*
|
|
84
|
+
* If the flag variation does not have a number value, {@link defaultValue} is returned.
|
|
85
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
86
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
87
|
+
*
|
|
88
|
+
* @param key
|
|
89
|
+
* The unique key of the feature flag.
|
|
90
|
+
* @param defaultValue
|
|
91
|
+
* The default value to return if the flag cannot be evaluated.
|
|
92
|
+
*
|
|
93
|
+
* @returns {@link IEvalDetail} object describing the way the value was determined.
|
|
94
|
+
*/
|
|
95
|
+
numberVariationDetail(key: string, defaultValue: number): IEvalDetail<number>;
|
|
96
|
+
/**
|
|
97
|
+
* Calculates the string value of a feature flag for a given user.
|
|
98
|
+
*
|
|
99
|
+
* If the flag variation does not have a string value, {@link defaultValue} is returned.
|
|
100
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
101
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
102
|
+
*
|
|
103
|
+
* @param key
|
|
104
|
+
* The unique key of the feature flag.
|
|
105
|
+
* @param defaultValue
|
|
106
|
+
* The default value to return if the flag cannot be evaluated.
|
|
107
|
+
*
|
|
108
|
+
* @returns the variation for the given user, or {@link defaultValue} if the flag cannot be evaluated
|
|
109
|
+
*/
|
|
110
|
+
stringVariation(key: string, defaultValue: string): string;
|
|
111
|
+
/**
|
|
112
|
+
* Calculates the string value of a feature flag for a given user, and returns an object that
|
|
113
|
+
* describes the way the value was determined.
|
|
114
|
+
*
|
|
115
|
+
* If the flag variation does not have a string value, {@link defaultValue} is returned.
|
|
116
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
117
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
118
|
+
*
|
|
119
|
+
* @param key
|
|
120
|
+
* The unique key of the feature flag.
|
|
121
|
+
* @param defaultValue
|
|
122
|
+
* The default value to return if the flag cannot be evaluated.
|
|
123
|
+
*
|
|
124
|
+
* @returns {@link IEvalDetail} object describing the way the value was determined.
|
|
125
|
+
*/
|
|
126
|
+
stringVariationDetail(key: string, defaultValue: string): IEvalDetail<string>;
|
|
127
|
+
/**
|
|
128
|
+
* Calculates the JSON value of a feature flag for a given user.
|
|
129
|
+
*
|
|
130
|
+
* If the flag variation does not have a JSON value, {@link defaultValue} is returned.
|
|
131
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
132
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
133
|
+
*
|
|
134
|
+
* @param key
|
|
135
|
+
* The unique key of the feature flag.
|
|
136
|
+
* @param defaultValue
|
|
137
|
+
* The default value to return if the flag cannot be evaluated.
|
|
138
|
+
*
|
|
139
|
+
* @returns the variation for the given user, or {@link defaultValue} if the flag cannot be evaluated
|
|
140
|
+
*/
|
|
141
|
+
jsonVariation(key: string, defaultValue: any): any;
|
|
142
|
+
/**
|
|
143
|
+
* Calculates the JSON value of a feature flag for a given user, and returns an object that
|
|
144
|
+
* describes the way the value was determined.
|
|
145
|
+
*
|
|
146
|
+
* If the flag variation does not have a JSON value, {@link defaultValue} is returned.
|
|
147
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
148
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
149
|
+
*
|
|
150
|
+
* @param key
|
|
151
|
+
* The unique key of the feature flag.
|
|
152
|
+
* @param defaultValue
|
|
153
|
+
* The default value to return if the flag cannot be evaluated.
|
|
154
|
+
*
|
|
155
|
+
* @returns {@link IEvalDetail} object describing the way the value was determined.
|
|
156
|
+
*/
|
|
157
|
+
jsonVariationDetail(key: string, defaultValue: any): IEvalDetail<any>;
|
|
158
|
+
/**
|
|
159
|
+
* Calculates the string value of a feature flag for a given user.
|
|
160
|
+
*
|
|
161
|
+
* If the flag variation does not have a string value, {@link defaultValue} is returned.
|
|
162
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
163
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
164
|
+
*
|
|
165
|
+
* @param key
|
|
166
|
+
* The unique key of the feature flag.
|
|
167
|
+
* @param defaultValue
|
|
168
|
+
* The default value to return if the flag cannot be evaluated.
|
|
169
|
+
*
|
|
170
|
+
* @returns the variation for the given user, or {@link defaultValue} if the flag cannot be evaluated
|
|
171
|
+
*/
|
|
172
|
+
variation(key: string, defaultValue: string): string;
|
|
173
|
+
/**
|
|
174
|
+
* Calculates the string value of a feature flag for a given user, and returns an object that
|
|
175
|
+
* describes the way the value was determined.
|
|
176
|
+
*
|
|
177
|
+
* If the flag variation does not have a string value, {@link defaultValue} is returned.
|
|
178
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
179
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
180
|
+
*
|
|
181
|
+
* @param key
|
|
182
|
+
* The unique key of the feature flag.
|
|
183
|
+
* @param defaultValue
|
|
184
|
+
* The default value to return if the flag cannot be evaluated.
|
|
185
|
+
*
|
|
186
|
+
* @returns {@link IEvalDetail} object describing the way the value was determined.
|
|
187
|
+
*/
|
|
188
|
+
variationDetail(key: string, defaultValue: string): IEvalDetail<string>;
|
|
189
|
+
/**
|
|
190
|
+
* This method is exposed only for testing purpose, please DO NOT USE IT
|
|
191
|
+
*
|
|
192
|
+
* Calculates the value of a feature flag for a given user, and returns a {@link IEvalDetail} object that
|
|
193
|
+
* describes the way the value was determined.
|
|
194
|
+
*
|
|
195
|
+
* If an error makes it impossible to evaluate the flag (for instance, the feature flag key
|
|
196
|
+
* does not match any existing flag), {@link defaultValue} is returned.
|
|
197
|
+
*
|
|
198
|
+
* @param flagKey
|
|
199
|
+
* The unique key of the feature flag.
|
|
200
|
+
* @param defaultValue
|
|
201
|
+
* The default value to return if the flag cannot be evaluated.
|
|
202
|
+
* @param typeConverter
|
|
203
|
+
* the function to convert result.
|
|
204
|
+
*
|
|
205
|
+
* @returns {@link IEvalDetail} object describing the way the value was determined.
|
|
206
|
+
*/
|
|
207
|
+
evaluateCore<TValue>(flagKey: string, defaultValue: TValue, typeConverter: (value: string) => IConvertResult<TValue>): IEvalDetail<TValue>;
|
|
208
|
+
/**
|
|
209
|
+
* Returns the variation with of all feature flags for a given user, and returns an object that
|
|
210
|
+
* describes the way the value was determined for each flag.
|
|
211
|
+
*
|
|
212
|
+
* @returns A list of {@link IEvalDetail} objects describing the way the values were determined.
|
|
213
|
+
*/
|
|
214
|
+
getAllVariations(): Promise<IEvalDetail<string>[]>;
|
|
215
|
+
/**
|
|
216
|
+
* Shuts down the client and releases any resources it is using.
|
|
217
|
+
*
|
|
218
|
+
* @returns A promise that resolves when the client has been shut down.
|
|
219
|
+
*/
|
|
220
|
+
close(): Promise<void>;
|
|
221
|
+
/**
|
|
222
|
+
* Tracks that an application-defined event occurred, and provides an additional numeric value for custom metrics.
|
|
223
|
+
*
|
|
224
|
+
* @param eventName
|
|
225
|
+
* the name of the event.
|
|
226
|
+
* @param metricValue
|
|
227
|
+
* a numeric value used by the FeatBit experimentation feature in custom numeric metrics, the default value is 1 if not provided.
|
|
228
|
+
*/
|
|
229
|
+
track(eventName: string, metricValue?: number | undefined): void;
|
|
230
|
+
/**
|
|
231
|
+
* Tells the client that all pending events (if any) should be delivered as soon as possible.
|
|
232
|
+
*
|
|
233
|
+
* @param callback
|
|
234
|
+
* Will be called when the flush operation is complete. If the flush fails, the callback will be called with false.
|
|
235
|
+
*
|
|
236
|
+
* @returns A promise that resolves when the client has been shut down.
|
|
237
|
+
*/
|
|
238
|
+
flush(callback?: (res: boolean) => void): Promise<boolean>;
|
|
239
|
+
}
|
|
240
|
+
//# sourceMappingURL=IFbClientCore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IFbClientCore.d.ts","sourceRoot":"","sources":["../../src/IFbClientCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IAE5B;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC;IAEvB;;;;;OAKG;IACH,qBAAqB,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAEhD;;;;;;;;;;;;;OAaG;IACH,aAAa,CACX,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC;IAEX;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CACjB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,OAAO,GACpB,WAAW,CAAC,OAAO,CAAC,CAAC;IAExB;;;;;;;;;;;;;OAaG;IACH,eAAe,CACb,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC;IAEV;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CACnB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,WAAW,CAAC,MAAM,CAAC,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,eAAe,CACb,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC;IAEV;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CACnB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,WAAW,CAAC,MAAM,CAAC,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,aAAa,CACX,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,GAAG,GAChB,GAAG,CAAC;IAEP;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CACjB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,GAAG,GAChB,WAAW,CAAC,GAAG,CAAC,CAAC;IAEpB;;;;;;;;;;;;;OAaG;IACH,SAAS,CACP,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC;IAEV;;;;;;;;;;;;;;OAcG;IACH,eAAe,CACb,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,WAAW,CAAC,MAAM,CAAC,CAAC;IAEvB;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,cAAc,CAAC,MAAM,CAAC,GACvD,WAAW,CAAC,MAAM,CAAC,CAAC;IAEvB;;;;;OAKG;IACH,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAEnD;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAA;IAEhE;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IFbClientCore.js","sourceRoot":"","sources":["../../src/IFbClientCore.ts"],"names":[],"mappings":""}
|