react-native-firework-sdk 2.15.1 → 2.15.3

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.
@@ -118,8 +118,6 @@ public class StoryBlock: UIView, StoryBlockViewControllerDelegate, PictureInPict
118
118
  return
119
119
  }
120
120
 
121
- storyBlockVC.view.flipIfNeeded()
122
-
123
121
  onStoryBlockGetFeedId?(["feedId": storyBlockVC.feedID])
124
122
 
125
123
  self.storyBlockVC = storyBlockVC
@@ -196,8 +196,6 @@ public class VideoFeed: UIView, VideoFeedViewControllerDelegate, PictureInPictur
196
196
  return
197
197
  }
198
198
 
199
- feedVC.view.flipIfNeeded()
200
-
201
199
  onVideoFeedGetFeedId?(["feedId": feedVC.feedID])
202
200
 
203
201
  let viewConfiguration = convertToVideoFeedContentConfiguration()
@@ -330,30 +330,26 @@ class FireworkSDK {
330
330
  await this.completeRemainingInitialization();
331
331
  }
332
332
  /**
333
- * You only need to call this method when you call init method in native side instead of JS side.
334
- */
335
-
336
- /**
337
- * You need to call this method when you call init method in native side.
338
- * @param nativeLazyInit
339
- * Genenally, you should call naitve init in application(:, didFinishLaunchingWithOptions:) -> Bool on iOS
340
- * and MainApplication.onCreate on Android. If not, you should pass nativeLazyInit as true.
333
+ * Mark the initialization method as being called on the JS side.
334
+ * @param {MarkInitCalledOptions} options
341
335
  */
342
336
 
343
337
 
344
338
  async markInitCalled() {
345
- let nativeLazyInit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
339
+ let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
340
+ directlyCallNativeInit: false
341
+ };
346
342
 
347
343
  _FWLoggerUtil.default.log('Call FireworkSDK markInitCalled method');
348
344
 
349
- if (!nativeLazyInit) {
350
- await this.completeRemainingInitialization();
345
+ if (options.directlyCallNativeInit) {
346
+ await this.completeRemainingInitialization(options);
351
347
  await _FireworkSDKModule.default.markInitCalled();
352
348
  } else {
353
349
  const hasCalledSDKInit = await _FireworkSDKModule.default.markInitCalled();
354
350
 
355
351
  if (hasCalledSDKInit) {
356
- await this.completeRemainingInitialization();
352
+ await this.completeRemainingInitialization(options);
357
353
  }
358
354
  }
359
355
  }
@@ -442,14 +438,20 @@ class FireworkSDK {
442
438
  }
443
439
 
444
440
  async completeRemainingInitialization() {
441
+ let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
442
+ directlyCallNativeInit: false
443
+ };
444
+
445
445
  if (_FWGlobalState.default.getInstance().sdkInitCalled) {
446
446
  return;
447
447
  }
448
448
 
449
449
  _FWGlobalState.default.getInstance().resolveSdkInitCalled();
450
450
 
451
- await _ShoppingModule.default.init();
452
- await _LiveStreamModule.default.init();
451
+ if (!options.directlyCallNativeInit) {
452
+ await _ShoppingModule.default.init();
453
+ await _LiveStreamModule.default.init();
454
+ }
453
455
  }
454
456
 
455
457
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["FireworkSDK.ts"],"names":["FireworkSDK","onVideoFeedClick","_onVideoFeedClick","value","Platform","OS","FireworkSDKModule","setVideoFeedClickCallbackEnabled","onCustomCTAClick","_onCustomCTAClick","FWLoggerUtil","log","setCustomCTAClickEnabled","onVideoPlayback","_onVideoPlayback","setVideoPlaybackEventEnabled","shareBaseURL","_shareBaseURL","updateInternalShareBaseURL","adBadgeConfiguration","_adBadgeConfiguration","valueHasChanged","badgeTextType","backgroundColor","textColor","androidFontInfo","isCustom","typefaceName","setAdBadgeConfiguration","then","eventEmitter","emit","FWEventName","AdBadgeConfigurationUpdated","appLanguage","_appLanguage","dataTrackingLevel","_dataTrackingLevel","setDataTrackingLevel","DataTrackingLevelUpdated","debugLogsEnabled","enabled","videoLaunchBehavior","_videoLaunchBehavior","livestreamPlayerDesignVersion","_livestreamPlayerDesignVersion","setLivestreamPlayerDesignVersion","LivestreamPlayerDesignVersionUpdated","FireworkSDKModuleEventEmitter","shopping","_shopping","liveStream","_liveStream","navigator","_navigator","getInstance","_instance","constructor","LivestreamPlayerDesignVersion","v1","VideoShopping","LiveStream","FWNavigator","addListener","SDKInit","event","error","completeRemainingInitialization","hasCalledSDKInitCallback","onSDKInit","LogMessage","logNativeMessage","message","CustomCTAClick","url","callbackId","playerHandler","pause","pausePlayer","resume","resumePlayer","VideoPlayback","eventName","VideoFeedClick","info","id","NativeAppLanguageUpdated","language","updateInternalAppLanguage","init","options","videoLaunchBehaviorUpdated","VideoLaunchBehaviorUpdated","markInitCalled","nativeLazyInit","hasCalledSDKInit","openVideoPlayer","config","FWGlobalState","sdkInitCalled","sdkInitCalledPromise","trackPurchase","parameters","changeAppLanguage","result","languageChanged","stopFloatingPlayer","getComponentType","feedId","componentTypeByFeedIdMap","get","AppLanguageUpdated","shareBaseURLChanged","setShareBaseURL","ShareBaseURLUpdated","resolveSdkInitCalled","ShoppingModule","LiveStreamModule"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, Platform } from 'react-native';\n\nimport FWNavigator from './FWNavigator';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport { FWEventName } from './models/FWEventName';\nimport type {\n CustomCTAClickEvent,\n SDKInitEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport FireworkSDKModule, {\n FireworkSDKModuleEventEmitter,\n} from './modules/FireworkSDKModule';\nimport LiveStreamModule from './modules/LiveStreamModule';\nimport ShoppingModule from './modules/ShoppingModule';\nimport FWGlobalState from './utils/FWGlobalState';\nimport FWLoggerUtil from './utils/FWLoggerUtil';\nimport VideoShopping from './VideoShopping';\n\nexport type SDKInitCallback = (event: SDKInitEvent) => Promise<void> | void;\nexport type CustomCTAClickCallback = (\n event: CustomCTAClickEvent\n) => Promise<void> | void;\nexport type VideoPlaybackCallback = (\n event: VideoPlaybackEvent\n) => Promise<void> | void;\nexport type VideoFeedClickCallback = (\n event: VideoFeedClickEvent\n) => Promise<void> | void;\n\n/**\n * Firework SDK.\n */\nclass FireworkSDK {\n private static _instance?: FireworkSDK;\n\n /**\n * The callback of SDK initialization.\n */\n public onSDKInit?: SDKInitCallback;\n\n /**\n * the callback of clicking Video Feed.\n */\n public get onVideoFeedClick(): VideoFeedClickCallback | undefined {\n return this._onVideoFeedClick;\n }\n public set onVideoFeedClick(value: VideoFeedClickCallback | undefined) {\n this._onVideoFeedClick = value;\n if (Platform.OS === 'ios') {\n FireworkSDKModule.setVideoFeedClickCallbackEnabled(!!value);\n }\n }\n private _onVideoFeedClick?: VideoFeedClickCallback | undefined;\n\n /**\n * The callback of clicking custom CTA.\n */\n public get onCustomCTAClick(): CustomCTAClickCallback | undefined {\n return this._onCustomCTAClick;\n }\n public set onCustomCTAClick(value: CustomCTAClickCallback | undefined) {\n FWLoggerUtil.log(`Set onCustomCTAClick callback ${!!value}`);\n this._onCustomCTAClick = value;\n FireworkSDKModule.setCustomCTAClickEnabled(value ? true : false);\n }\n private _onCustomCTAClick: CustomCTAClickCallback | undefined;\n\n /**\n * The callback of video playback.\n */\n public get onVideoPlayback(): VideoPlaybackCallback | undefined {\n return this._onVideoPlayback;\n }\n public set onVideoPlayback(value: VideoPlaybackCallback | undefined) {\n this._onVideoPlayback = value;\n FireworkSDKModule.setVideoPlaybackEventEnabled(value ? true : false);\n }\n private _onVideoPlayback?: VideoPlaybackCallback | undefined;\n\n /**\n * The global share base URL of the video.\n * The {@link VideoPlayerConfiguration.shareBaseURL} in {@link VideoPlayerConfiguration} will override this.\n */\n public get shareBaseURL(): string | undefined {\n return this._shareBaseURL;\n }\n public set shareBaseURL(value: string | undefined) {\n this.updateInternalShareBaseURL(value);\n }\n private _shareBaseURL: string | undefined;\n\n /**\n * The configuration for ad badges.\n */\n public get adBadgeConfiguration(): AdBadgeConfiguration | undefined {\n return this._adBadgeConfiguration;\n }\n public set adBadgeConfiguration(value: AdBadgeConfiguration | undefined) {\n const valueHasChanged =\n this._adBadgeConfiguration?.badgeTextType !== value?.badgeTextType ||\n this._adBadgeConfiguration?.backgroundColor !== value?.backgroundColor ||\n this._adBadgeConfiguration?.textColor !== value?.textColor ||\n this._adBadgeConfiguration?.androidFontInfo?.isCustom !==\n value?.androidFontInfo?.isCustom ||\n this._adBadgeConfiguration?.androidFontInfo?.typefaceName !==\n value?.androidFontInfo?.typefaceName;\n this._adBadgeConfiguration = value;\n\n FireworkSDKModule.setAdBadgeConfiguration(value ?? {}).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AdBadgeConfigurationUpdated);\n }\n });\n }\n private _adBadgeConfiguration: AdBadgeConfiguration | undefined;\n\n public get appLanguage(): string | undefined | null {\n return this._appLanguage;\n }\n private _appLanguage: string | undefined | null;\n\n /**\n * The configuration for data tracking level.\n */\n public get dataTrackingLevel(): DataTrackingLevel {\n return this._dataTrackingLevel;\n }\n public set dataTrackingLevel(value: DataTrackingLevel) {\n const valueHasChanged = this._dataTrackingLevel !== value;\n this._dataTrackingLevel = value;\n FireworkSDKModule.setDataTrackingLevel(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.DataTrackingLevelUpdated);\n }\n });\n }\n private _dataTrackingLevel: DataTrackingLevel = 'all';\n\n /**\n * Defaults to false.\n * You can enable debug logs by setting this property to true.\n */\n public get debugLogsEnabled(): boolean {\n return FWLoggerUtil.enabled;\n }\n public set debugLogsEnabled(value: boolean) {\n FWLoggerUtil.enabled = value;\n }\n\n /**\n * Get video launch behavior.\n */\n public get videoLaunchBehavior(): VideoLaunchBehavior | undefined {\n return this._videoLaunchBehavior;\n }\n private _videoLaunchBehavior: VideoLaunchBehavior | undefined;\n\n /**\n * The version of the livestream player design.\n */\n public get livestreamPlayerDesignVersion(): LivestreamPlayerDesignVersion {\n return this._livestreamPlayerDesignVersion;\n }\n public set livestreamPlayerDesignVersion(\n value: LivestreamPlayerDesignVersion\n ) {\n const valueHasChanged = this._livestreamPlayerDesignVersion !== value;\n this._livestreamPlayerDesignVersion = value;\n FireworkSDKModule.setLivestreamPlayerDesignVersion(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(\n FWEventName.LivestreamPlayerDesignVersionUpdated\n );\n }\n });\n }\n private _livestreamPlayerDesignVersion: LivestreamPlayerDesignVersion =\n LivestreamPlayerDesignVersion.v1;\n\n private get eventEmitter(): NativeEventEmitter {\n return FireworkSDKModuleEventEmitter;\n }\n\n /**\n * Get VideoShopping object.\n */\n public get shopping(): VideoShopping {\n return this._shopping;\n }\n private _shopping: VideoShopping = VideoShopping.getInstance();\n\n /**\n * Get LiveStream object.\n */\n public get liveStream(): LiveStream {\n return this._liveStream;\n }\n private _liveStream: LiveStream = LiveStream.getInstance();\n\n /**\n * Get FWNavigator object.\n */\n public get navigator(): FWNavigator {\n return this._navigator;\n }\n private _navigator: FWNavigator = FWNavigator.getInstance();\n\n private hasCalledSDKInitCallback: boolean = false;\n\n /**\n * Get global single instance of FireworkSDK class.\n * @returns FireworkSDK\n */\n public static getInstance() {\n if (!FireworkSDK._instance) {\n FireworkSDK._instance = new FireworkSDK();\n }\n\n return FireworkSDK._instance!;\n }\n\n private constructor() {\n FWLoggerUtil.log('FireworkSDK constructor');\n\n this.eventEmitter.addListener(FWEventName.SDKInit, (event) => {\n FWLoggerUtil.log(`Receive SDKInit event ${event?.error}`);\n\n if (event && !event.error) {\n this.completeRemainingInitialization();\n }\n\n if (!this.hasCalledSDKInitCallback) {\n this.hasCalledSDKInitCallback = true;\n if (this.onSDKInit && event) {\n this.onSDKInit(event);\n }\n }\n });\n\n this.eventEmitter.addListener(FWEventName.LogMessage, (event) => {\n FWLoggerUtil.logNativeMessage(event.message);\n });\n\n this.eventEmitter.addListener(FWEventName.CustomCTAClick, (event) => {\n FWLoggerUtil.log(`Receive CustomCTAClick url: ${event?.url}`);\n FWLoggerUtil.log(\n `Receive CustomCTAClick callbackId: ${event?.callbackId}`\n );\n\n if (this.onCustomCTAClick && event) {\n if (event.callbackId) {\n const callbackId = event.callbackId;\n delete event.callbackId;\n if (Platform.OS === 'ios') {\n event.playerHandler = {\n pause: () => FireworkSDKModule.pausePlayer(callbackId),\n resume: () => FireworkSDKModule.resumePlayer(callbackId),\n };\n }\n }\n this.onCustomCTAClick(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoPlayback, (event) => {\n FWLoggerUtil.log(\n `Receive VideoPlayback event eventName: ${event?.eventName}`\n );\n\n if (this.onVideoPlayback && event) {\n this.onVideoPlayback(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoFeedClick, (event) => {\n FWLoggerUtil.log(`Receive VideoFeedClick event id: ${event?.info.id}`);\n\n if (this.onVideoFeedClick && event) {\n this.onVideoFeedClick(event);\n }\n });\n\n if (Platform.OS === 'ios') {\n this.eventEmitter.addListener(\n FWEventName.NativeAppLanguageUpdated,\n (event) => {\n FWLoggerUtil.log(\n `Receive NativeAppLanguageUpdated event appLanguage: ${event.appLanguage}`\n );\n const language = event.appLanguage;\n this.updateInternalAppLanguage(language);\n }\n );\n }\n }\n\n /**\n * Initializes Firework SDK.\n * @param {SDKInitOptions?} options\n */\n public async init(options?: SDKInitOptions): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK init method');\n const videoLaunchBehaviorUpdated =\n this._videoLaunchBehavior !== options?.videoLaunchBehavior;\n this._videoLaunchBehavior = options?.videoLaunchBehavior;\n await FireworkSDKModule.init(options);\n if (videoLaunchBehaviorUpdated) {\n this.eventEmitter.emit(FWEventName.VideoLaunchBehaviorUpdated);\n }\n await this.completeRemainingInitialization();\n }\n\n /**\n * You only need to call this method when you call init method in native side instead of JS side.\n */\n /**\n * You need to call this method when you call init method in native side.\n * @param nativeLazyInit\n * Genenally, you should call naitve init in application(:, didFinishLaunchingWithOptions:) -> Bool on iOS\n * and MainApplication.onCreate on Android. If not, you should pass nativeLazyInit as true.\n */\n public async markInitCalled(nativeLazyInit: boolean = false): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK markInitCalled method');\n if (!nativeLazyInit) {\n await this.completeRemainingInitialization();\n await FireworkSDKModule.markInitCalled();\n } else {\n const hasCalledSDKInit = await FireworkSDKModule.markInitCalled();\n if (hasCalledSDKInit) {\n await this.completeRemainingInitialization();\n }\n }\n }\n\n /**\n * Open Video URL.\n * @param {string} url\n * @param {VideoPlayerConfiguration} config\n */\n public async openVideoPlayer(\n url: string,\n config?: OpenVideoPlayerConfiguration\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.openVideoPlayer(url, config ?? {});\n }\n\n /**\n * Records the user purchase. Only supported on iOS.\n * @param {TrackPurchaseParameters} parameters\n */\n public async trackPurchase(\n parameters: TrackPurchaseParameters\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.trackPurchase(parameters);\n }\n\n /**\n * Change App level language.\n * @param {string | undefined | null} language Such as en, ar and en-US. If language is undefined or null or empty string, SDK will use system language.\n * @returns {Promise<boolean>} The result of changing app language.\n */\n public async changeAppLanguage(language?: string | null): Promise<boolean> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n\n const result = await FireworkSDKModule.changeAppLanguage(language);\n\n if (result) {\n const languageChanged = this._appLanguage !== language;\n if (Platform.OS === 'ios' && languageChanged) {\n await this.navigator.stopFloatingPlayer();\n }\n this.updateInternalAppLanguage(language);\n }\n return result;\n }\n\n /**\n * Get the component type based on feedId.\n * @param {string} feedId\n * @returns {string | undefined} The component type based on feedId.\n */\n public getComponentType(feedId: string) {\n return FWGlobalState.getInstance().componentTypeByFeedIdMap.get(feedId);\n }\n\n private updateInternalAppLanguage(language?: string | null) {\n const valueHasChanged = this._appLanguage !== language;\n this._appLanguage = language;\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AppLanguageUpdated);\n }\n }\n\n private updateInternalShareBaseURL(shareBaseURL?: string) {\n const shareBaseURLChanged = this._shareBaseURL !== shareBaseURL;\n this._shareBaseURL = shareBaseURL;\n FireworkSDKModule.setShareBaseURL(shareBaseURL ?? '').then(() => {\n if (shareBaseURLChanged) {\n this.eventEmitter.emit(FWEventName.ShareBaseURLUpdated);\n }\n });\n }\n\n private async completeRemainingInitialization(): Promise<void> {\n if (FWGlobalState.getInstance().sdkInitCalled) {\n return;\n }\n\n FWGlobalState.getInstance().resolveSdkInitCalled();\n await ShoppingModule.init();\n await LiveStreamModule.init();\n }\n}\n\nexport default FireworkSDK;\n"]}
1
+ {"version":3,"sources":["FireworkSDK.ts"],"names":["FireworkSDK","onVideoFeedClick","_onVideoFeedClick","value","Platform","OS","FireworkSDKModule","setVideoFeedClickCallbackEnabled","onCustomCTAClick","_onCustomCTAClick","FWLoggerUtil","log","setCustomCTAClickEnabled","onVideoPlayback","_onVideoPlayback","setVideoPlaybackEventEnabled","shareBaseURL","_shareBaseURL","updateInternalShareBaseURL","adBadgeConfiguration","_adBadgeConfiguration","valueHasChanged","badgeTextType","backgroundColor","textColor","androidFontInfo","isCustom","typefaceName","setAdBadgeConfiguration","then","eventEmitter","emit","FWEventName","AdBadgeConfigurationUpdated","appLanguage","_appLanguage","dataTrackingLevel","_dataTrackingLevel","setDataTrackingLevel","DataTrackingLevelUpdated","debugLogsEnabled","enabled","videoLaunchBehavior","_videoLaunchBehavior","livestreamPlayerDesignVersion","_livestreamPlayerDesignVersion","setLivestreamPlayerDesignVersion","LivestreamPlayerDesignVersionUpdated","FireworkSDKModuleEventEmitter","shopping","_shopping","liveStream","_liveStream","navigator","_navigator","getInstance","_instance","constructor","LivestreamPlayerDesignVersion","v1","VideoShopping","LiveStream","FWNavigator","addListener","SDKInit","event","error","completeRemainingInitialization","hasCalledSDKInitCallback","onSDKInit","LogMessage","logNativeMessage","message","CustomCTAClick","url","callbackId","playerHandler","pause","pausePlayer","resume","resumePlayer","VideoPlayback","eventName","VideoFeedClick","info","id","NativeAppLanguageUpdated","language","updateInternalAppLanguage","init","options","videoLaunchBehaviorUpdated","VideoLaunchBehaviorUpdated","markInitCalled","directlyCallNativeInit","hasCalledSDKInit","openVideoPlayer","config","FWGlobalState","sdkInitCalled","sdkInitCalledPromise","trackPurchase","parameters","changeAppLanguage","result","languageChanged","stopFloatingPlayer","getComponentType","feedId","componentTypeByFeedIdMap","get","AppLanguageUpdated","shareBaseURLChanged","setShareBaseURL","ShareBaseURLUpdated","resolveSdkInitCalled","ShoppingModule","LiveStreamModule"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, Platform } from 'react-native';\n\nimport FWNavigator from './FWNavigator';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport { FWEventName } from './models/FWEventName';\nimport type {\n CustomCTAClickEvent,\n SDKInitEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type MarkInitCalledOptions from './models/MarkInitCalledOptions';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport FireworkSDKModule, {\n FireworkSDKModuleEventEmitter,\n} from './modules/FireworkSDKModule';\nimport LiveStreamModule from './modules/LiveStreamModule';\nimport ShoppingModule from './modules/ShoppingModule';\nimport FWGlobalState from './utils/FWGlobalState';\nimport FWLoggerUtil from './utils/FWLoggerUtil';\nimport VideoShopping from './VideoShopping';\n\nexport type SDKInitCallback = (event: SDKInitEvent) => Promise<void> | void;\nexport type CustomCTAClickCallback = (\n event: CustomCTAClickEvent\n) => Promise<void> | void;\nexport type VideoPlaybackCallback = (\n event: VideoPlaybackEvent\n) => Promise<void> | void;\nexport type VideoFeedClickCallback = (\n event: VideoFeedClickEvent\n) => Promise<void> | void;\n\n/**\n * Firework SDK.\n */\nclass FireworkSDK {\n private static _instance?: FireworkSDK;\n\n /**\n * The callback of SDK initialization.\n */\n public onSDKInit?: SDKInitCallback;\n\n /**\n * the callback of clicking Video Feed.\n */\n public get onVideoFeedClick(): VideoFeedClickCallback | undefined {\n return this._onVideoFeedClick;\n }\n public set onVideoFeedClick(value: VideoFeedClickCallback | undefined) {\n this._onVideoFeedClick = value;\n if (Platform.OS === 'ios') {\n FireworkSDKModule.setVideoFeedClickCallbackEnabled(!!value);\n }\n }\n private _onVideoFeedClick?: VideoFeedClickCallback | undefined;\n\n /**\n * The callback of clicking custom CTA.\n */\n public get onCustomCTAClick(): CustomCTAClickCallback | undefined {\n return this._onCustomCTAClick;\n }\n public set onCustomCTAClick(value: CustomCTAClickCallback | undefined) {\n FWLoggerUtil.log(`Set onCustomCTAClick callback ${!!value}`);\n this._onCustomCTAClick = value;\n FireworkSDKModule.setCustomCTAClickEnabled(value ? true : false);\n }\n private _onCustomCTAClick: CustomCTAClickCallback | undefined;\n\n /**\n * The callback of video playback.\n */\n public get onVideoPlayback(): VideoPlaybackCallback | undefined {\n return this._onVideoPlayback;\n }\n public set onVideoPlayback(value: VideoPlaybackCallback | undefined) {\n this._onVideoPlayback = value;\n FireworkSDKModule.setVideoPlaybackEventEnabled(value ? true : false);\n }\n private _onVideoPlayback?: VideoPlaybackCallback | undefined;\n\n /**\n * The global share base URL of the video.\n * The {@link VideoPlayerConfiguration.shareBaseURL} in {@link VideoPlayerConfiguration} will override this.\n */\n public get shareBaseURL(): string | undefined {\n return this._shareBaseURL;\n }\n public set shareBaseURL(value: string | undefined) {\n this.updateInternalShareBaseURL(value);\n }\n private _shareBaseURL: string | undefined;\n\n /**\n * The configuration for ad badges.\n */\n public get adBadgeConfiguration(): AdBadgeConfiguration | undefined {\n return this._adBadgeConfiguration;\n }\n public set adBadgeConfiguration(value: AdBadgeConfiguration | undefined) {\n const valueHasChanged =\n this._adBadgeConfiguration?.badgeTextType !== value?.badgeTextType ||\n this._adBadgeConfiguration?.backgroundColor !== value?.backgroundColor ||\n this._adBadgeConfiguration?.textColor !== value?.textColor ||\n this._adBadgeConfiguration?.androidFontInfo?.isCustom !==\n value?.androidFontInfo?.isCustom ||\n this._adBadgeConfiguration?.androidFontInfo?.typefaceName !==\n value?.androidFontInfo?.typefaceName;\n this._adBadgeConfiguration = value;\n\n FireworkSDKModule.setAdBadgeConfiguration(value ?? {}).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AdBadgeConfigurationUpdated);\n }\n });\n }\n private _adBadgeConfiguration: AdBadgeConfiguration | undefined;\n\n public get appLanguage(): string | undefined | null {\n return this._appLanguage;\n }\n private _appLanguage: string | undefined | null;\n\n /**\n * The configuration for data tracking level.\n */\n public get dataTrackingLevel(): DataTrackingLevel {\n return this._dataTrackingLevel;\n }\n public set dataTrackingLevel(value: DataTrackingLevel) {\n const valueHasChanged = this._dataTrackingLevel !== value;\n this._dataTrackingLevel = value;\n FireworkSDKModule.setDataTrackingLevel(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.DataTrackingLevelUpdated);\n }\n });\n }\n private _dataTrackingLevel: DataTrackingLevel = 'all';\n\n /**\n * Defaults to false.\n * You can enable debug logs by setting this property to true.\n */\n public get debugLogsEnabled(): boolean {\n return FWLoggerUtil.enabled;\n }\n public set debugLogsEnabled(value: boolean) {\n FWLoggerUtil.enabled = value;\n }\n\n /**\n * Get video launch behavior.\n */\n public get videoLaunchBehavior(): VideoLaunchBehavior | undefined {\n return this._videoLaunchBehavior;\n }\n private _videoLaunchBehavior: VideoLaunchBehavior | undefined;\n\n /**\n * The version of the livestream player design.\n */\n public get livestreamPlayerDesignVersion(): LivestreamPlayerDesignVersion {\n return this._livestreamPlayerDesignVersion;\n }\n public set livestreamPlayerDesignVersion(\n value: LivestreamPlayerDesignVersion\n ) {\n const valueHasChanged = this._livestreamPlayerDesignVersion !== value;\n this._livestreamPlayerDesignVersion = value;\n FireworkSDKModule.setLivestreamPlayerDesignVersion(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(\n FWEventName.LivestreamPlayerDesignVersionUpdated\n );\n }\n });\n }\n private _livestreamPlayerDesignVersion: LivestreamPlayerDesignVersion =\n LivestreamPlayerDesignVersion.v1;\n\n private get eventEmitter(): NativeEventEmitter {\n return FireworkSDKModuleEventEmitter;\n }\n\n /**\n * Get VideoShopping object.\n */\n public get shopping(): VideoShopping {\n return this._shopping;\n }\n private _shopping: VideoShopping = VideoShopping.getInstance();\n\n /**\n * Get LiveStream object.\n */\n public get liveStream(): LiveStream {\n return this._liveStream;\n }\n private _liveStream: LiveStream = LiveStream.getInstance();\n\n /**\n * Get FWNavigator object.\n */\n public get navigator(): FWNavigator {\n return this._navigator;\n }\n private _navigator: FWNavigator = FWNavigator.getInstance();\n\n private hasCalledSDKInitCallback: boolean = false;\n\n /**\n * Get global single instance of FireworkSDK class.\n * @returns FireworkSDK\n */\n public static getInstance() {\n if (!FireworkSDK._instance) {\n FireworkSDK._instance = new FireworkSDK();\n }\n\n return FireworkSDK._instance!;\n }\n\n private constructor() {\n FWLoggerUtil.log('FireworkSDK constructor');\n\n this.eventEmitter.addListener(FWEventName.SDKInit, (event) => {\n FWLoggerUtil.log(`Receive SDKInit event ${event?.error}`);\n\n if (event && !event.error) {\n this.completeRemainingInitialization();\n }\n\n if (!this.hasCalledSDKInitCallback) {\n this.hasCalledSDKInitCallback = true;\n if (this.onSDKInit && event) {\n this.onSDKInit(event);\n }\n }\n });\n\n this.eventEmitter.addListener(FWEventName.LogMessage, (event) => {\n FWLoggerUtil.logNativeMessage(event.message);\n });\n\n this.eventEmitter.addListener(FWEventName.CustomCTAClick, (event) => {\n FWLoggerUtil.log(`Receive CustomCTAClick url: ${event?.url}`);\n FWLoggerUtil.log(\n `Receive CustomCTAClick callbackId: ${event?.callbackId}`\n );\n\n if (this.onCustomCTAClick && event) {\n if (event.callbackId) {\n const callbackId = event.callbackId;\n delete event.callbackId;\n if (Platform.OS === 'ios') {\n event.playerHandler = {\n pause: () => FireworkSDKModule.pausePlayer(callbackId),\n resume: () => FireworkSDKModule.resumePlayer(callbackId),\n };\n }\n }\n this.onCustomCTAClick(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoPlayback, (event) => {\n FWLoggerUtil.log(\n `Receive VideoPlayback event eventName: ${event?.eventName}`\n );\n\n if (this.onVideoPlayback && event) {\n this.onVideoPlayback(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoFeedClick, (event) => {\n FWLoggerUtil.log(`Receive VideoFeedClick event id: ${event?.info.id}`);\n\n if (this.onVideoFeedClick && event) {\n this.onVideoFeedClick(event);\n }\n });\n\n if (Platform.OS === 'ios') {\n this.eventEmitter.addListener(\n FWEventName.NativeAppLanguageUpdated,\n (event) => {\n FWLoggerUtil.log(\n `Receive NativeAppLanguageUpdated event appLanguage: ${event.appLanguage}`\n );\n const language = event.appLanguage;\n this.updateInternalAppLanguage(language);\n }\n );\n }\n }\n\n /**\n * Initializes Firework SDK.\n * @param {SDKInitOptions?} options\n */\n public async init(options?: SDKInitOptions): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK init method');\n const videoLaunchBehaviorUpdated =\n this._videoLaunchBehavior !== options?.videoLaunchBehavior;\n this._videoLaunchBehavior = options?.videoLaunchBehavior;\n await FireworkSDKModule.init(options);\n if (videoLaunchBehaviorUpdated) {\n this.eventEmitter.emit(FWEventName.VideoLaunchBehaviorUpdated);\n }\n await this.completeRemainingInitialization();\n }\n\n /**\n * Mark the initialization method as being called on the JS side.\n * @param {MarkInitCalledOptions} options\n */\n public async markInitCalled(\n options: MarkInitCalledOptions = {\n directlyCallNativeInit: false,\n }\n ): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK markInitCalled method');\n if (options.directlyCallNativeInit) {\n await this.completeRemainingInitialization(options);\n await FireworkSDKModule.markInitCalled();\n } else {\n const hasCalledSDKInit = await FireworkSDKModule.markInitCalled();\n if (hasCalledSDKInit) {\n await this.completeRemainingInitialization(options);\n }\n }\n }\n\n /**\n * Open Video URL.\n * @param {string} url\n * @param {VideoPlayerConfiguration} config\n */\n public async openVideoPlayer(\n url: string,\n config?: OpenVideoPlayerConfiguration\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.openVideoPlayer(url, config ?? {});\n }\n\n /**\n * Records the user purchase. Only supported on iOS.\n * @param {TrackPurchaseParameters} parameters\n */\n public async trackPurchase(\n parameters: TrackPurchaseParameters\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.trackPurchase(parameters);\n }\n\n /**\n * Change App level language.\n * @param {string | undefined | null} language Such as en, ar and en-US. If language is undefined or null or empty string, SDK will use system language.\n * @returns {Promise<boolean>} The result of changing app language.\n */\n public async changeAppLanguage(language?: string | null): Promise<boolean> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n\n const result = await FireworkSDKModule.changeAppLanguage(language);\n\n if (result) {\n const languageChanged = this._appLanguage !== language;\n if (Platform.OS === 'ios' && languageChanged) {\n await this.navigator.stopFloatingPlayer();\n }\n this.updateInternalAppLanguage(language);\n }\n return result;\n }\n\n /**\n * Get the component type based on feedId.\n * @param {string} feedId\n * @returns {string | undefined} The component type based on feedId.\n */\n public getComponentType(feedId: string) {\n return FWGlobalState.getInstance().componentTypeByFeedIdMap.get(feedId);\n }\n\n private updateInternalAppLanguage(language?: string | null) {\n const valueHasChanged = this._appLanguage !== language;\n this._appLanguage = language;\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AppLanguageUpdated);\n }\n }\n\n private updateInternalShareBaseURL(shareBaseURL?: string) {\n const shareBaseURLChanged = this._shareBaseURL !== shareBaseURL;\n this._shareBaseURL = shareBaseURL;\n FireworkSDKModule.setShareBaseURL(shareBaseURL ?? '').then(() => {\n if (shareBaseURLChanged) {\n this.eventEmitter.emit(FWEventName.ShareBaseURLUpdated);\n }\n });\n }\n\n private async completeRemainingInitialization(\n options: MarkInitCalledOptions = {\n directlyCallNativeInit: false,\n }\n ): Promise<void> {\n if (FWGlobalState.getInstance().sdkInitCalled) {\n return;\n }\n\n FWGlobalState.getInstance().resolveSdkInitCalled();\n if (!options.directlyCallNativeInit) {\n await ShoppingModule.init();\n await LiveStreamModule.init();\n }\n }\n}\n\nexport default FireworkSDK;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["FireworkSDK"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;AAEA;;AAOA;;AACA;;AAKA;;AAWA;;AAwBA;;AAEA;;AAEA;;AAqCA;;AAgBA;;AASA;;;;eAEeA,oB","sourcesContent":["import type {\n IStoryBlockMethods,\n IStoryBlockProps,\n} from './components/StoryBlock';\nimport StoryBlock from './components/StoryBlock';\nimport type { IVideoFeedProps, VideoFeedMode } from './components/VideoFeed';\nimport VideoFeed from './components/VideoFeed';\nimport type {\n CustomCTAClickCallback,\n SDKInitCallback,\n VideoFeedClickCallback,\n VideoPlaybackCallback,\n} from './FireworkSDK';\nimport FireworkSDK from './FireworkSDK';\nimport FWNavigator from './FWNavigator';\nimport type {\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n} from './LiveStream';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { AdBadgeTextType } from './models/AdBadgeConfiguration';\nimport type AdConfiguration from './models/AdConfiguration';\nimport type { VastAttribute } from './models/AdConfiguration';\nimport type AndroidFontInfo from './models/AndroidFontInfo';\nimport type ButtonInfo from './models/ButtonInfo';\nimport type CountdownTimerConfiguration from './models/CountdownTimerConfiguration';\nimport type { CountdownTimerAppearanceMode } from './models/CountdownTimerConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport type FeedItemDetails from './models/FeedItemDetails';\nimport { FWComponentType } from './models/FWComponentType';\nimport type FWError from './models/FWError';\nimport type {\n ClickProductEvent,\n CustomClickCartIconEvent,\n CustomClickLinkButtonEvent,\n CustomCTAClickEvent,\n CustomTapProductCardEvent,\n LiveStreamChatEvent,\n LiveStreamEvent,\n PlayerHandler,\n SDKInitEvent,\n ShoppingCTAEvent,\n UpdateProductDetailsEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport type GradientDrawable from './models/GradientDrawable';\nimport type { GradientDrawableOrientation } from './models/GradientDrawable';\nimport type IOSFontInfo from './models/IOSFontInfo';\nimport type {\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n} from './models/IOSFontInfo';\nimport LiveStreamChatEventName from './models/LiveStreamChatEventName';\nimport type LiveStreamEventDetails from './models/LiveStreamEventDetails';\nimport LiveStreamEventName from './models/LiveStreamEventName';\nimport type LiveStreamMessageDetails from './models/LiveStreamMessageDetails';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type Product from './models/Product';\nimport type ProductInfoViewConfiguration from './models/ProductInfoViewConfiguration';\nimport type {\n LinkButtonConfiguration,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n} from './models/ProductInfoViewConfiguration';\nimport type ProductUnit from './models/ProductUnit';\nimport type { ProductPrice, ProductUnitOption } from './models/ProductUnit';\nimport type PushRNContainerParams from './models/PushRNContainerParams';\nimport type { RNAppProps } from './models/PushRNContainerParams';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type ShoppingCTAResult from './models/ShoppingCTAResult';\nimport type { StoryBlockConfiguration } from './models/StoryBlockConfiguration';\nimport type { StoryBlockSource } from './models/StoryBlockSource';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport type VideoFeedConfiguration from './models/VideoFeedConfiguration';\nimport type {\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n} from './models/VideoFeedConfiguration';\nimport type { VideoFeedSource } from './models/VideoFeedSource';\nimport type VideoPlaybackDetails from './models/VideoPlaybackDetails';\nimport type { VideoPlayerSize } from './models/VideoPlaybackDetails';\nimport VideoPlaybackEventName from './models/VideoPlaybackEventName';\nimport type VideoPlayerButtonConfiguration from './models/VideoPlayerButtonConfiguration';\nimport type { VideoPlayerCompleteAction } from './models/VideoPlayerCompleteAction';\nimport type VideoPlayerConfiguration from './models/VideoPlayerConfiguration';\nimport type {\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n} from './models/VideoPlayerCTADelay';\nimport type { VideoPlayerCTAStyle } from './models/VideoPlayerCTAStyle';\nimport type { VideoPlayerCTAWidth } from './models/VideoPlayerCTAWidth';\nimport type { VideoPlayerLivestreamCountdownTimerTheme } from './models/VideoPlayerLivestreamCountdownTimerTheme';\nimport type {\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n} from './models/VideoPlayerLogoConfiguration';\nimport type { VideoPlayerStyle } from './models/VideoPlayerStyle';\nimport VideoFeedUtil from './utils/VideoFeedUtil';\nimport type {\n ClickProductCallback,\n CustomClickCartIconCallback,\n CustomClickLinkButtonCallback,\n CustomTapProductCardCallback,\n ShoppingCTACallback,\n UpdateProductDetailsCallback,\n} from './VideoShopping';\nimport VideoShopping from './VideoShopping';\n\nexport default FireworkSDK;\n\nexport {\n AdBadgeConfiguration,\n AdBadgeTextType,\n AdConfiguration,\n AndroidFontInfo,\n ButtonInfo,\n ClickProductCallback,\n ClickProductEvent,\n CountdownTimerAppearanceMode,\n CountdownTimerConfiguration,\n CustomClickCartIconCallback,\n CustomClickCartIconEvent,\n CustomClickLinkButtonCallback,\n CustomClickLinkButtonEvent,\n CustomCTAClickCallback,\n CustomCTAClickEvent,\n CustomTapProductCardCallback,\n CustomTapProductCardEvent,\n DataTrackingLevel,\n FeedItemDetails,\n FireworkSDK,\n FWComponentType,\n FWError,\n FWNavigator,\n GradientDrawable,\n GradientDrawableOrientation,\n IOSFontInfo,\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n IStoryBlockMethods,\n IStoryBlockProps,\n IVideoFeedProps,\n LinkButtonConfiguration,\n LiveStream,\n LiveStreamChatEvent,\n LiveStreamChatEventName,\n LiveStreamEvent,\n LiveStreamEventDetails,\n LiveStreamEventName,\n LiveStreamMessageDetails,\n LivestreamPlayerDesignVersion,\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n OpenVideoPlayerConfiguration,\n PlayerHandler,\n Product,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ProductInfoViewConfiguration,\n ProductPrice,\n ProductUnit,\n ProductUnitOption,\n PushRNContainerParams,\n RNAppProps,\n SDKInitCallback,\n SDKInitEvent,\n SDKInitOptions,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n ShoppingCTACallback,\n ShoppingCTAEvent,\n ShoppingCTAResult,\n StoryBlock,\n StoryBlockConfiguration,\n StoryBlockSource,\n TrackPurchaseParameters,\n UpdateProductDetailsCallback,\n UpdateProductDetailsEvent,\n VastAttribute,\n VideoFeed,\n VideoFeedClickCallback,\n VideoFeedClickEvent,\n VideoFeedConfiguration,\n VideoFeedMode,\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedSource,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n VideoFeedUtil,\n VideoLaunchBehavior,\n VideoPlaybackCallback,\n VideoPlaybackDetails,\n VideoPlaybackEvent,\n VideoPlaybackEventName,\n VideoPlayerButtonConfiguration,\n VideoPlayerCompleteAction,\n VideoPlayerConfiguration,\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n VideoPlayerCTAStyle,\n VideoPlayerCTAWidth,\n VideoPlayerLivestreamCountdownTimerTheme,\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n VideoPlayerSize,\n VideoPlayerStyle,\n VideoShopping,\n};\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":["FireworkSDK"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;AAEA;;AAOA;;AACA;;AAKA;;AAWA;;AAwBA;;AAEA;;AAEA;;AAsCA;;AAgBA;;AASA;;;;eAEeA,oB","sourcesContent":["import type {\n IStoryBlockMethods,\n IStoryBlockProps,\n} from './components/StoryBlock';\nimport StoryBlock from './components/StoryBlock';\nimport type { IVideoFeedProps, VideoFeedMode } from './components/VideoFeed';\nimport VideoFeed from './components/VideoFeed';\nimport type {\n CustomCTAClickCallback,\n SDKInitCallback,\n VideoFeedClickCallback,\n VideoPlaybackCallback,\n} from './FireworkSDK';\nimport FireworkSDK from './FireworkSDK';\nimport FWNavigator from './FWNavigator';\nimport type {\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n} from './LiveStream';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { AdBadgeTextType } from './models/AdBadgeConfiguration';\nimport type AdConfiguration from './models/AdConfiguration';\nimport type { VastAttribute } from './models/AdConfiguration';\nimport type AndroidFontInfo from './models/AndroidFontInfo';\nimport type ButtonInfo from './models/ButtonInfo';\nimport type CountdownTimerConfiguration from './models/CountdownTimerConfiguration';\nimport type { CountdownTimerAppearanceMode } from './models/CountdownTimerConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport type FeedItemDetails from './models/FeedItemDetails';\nimport { FWComponentType } from './models/FWComponentType';\nimport type FWError from './models/FWError';\nimport type {\n ClickProductEvent,\n CustomClickCartIconEvent,\n CustomClickLinkButtonEvent,\n CustomCTAClickEvent,\n CustomTapProductCardEvent,\n LiveStreamChatEvent,\n LiveStreamEvent,\n PlayerHandler,\n SDKInitEvent,\n ShoppingCTAEvent,\n UpdateProductDetailsEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport type GradientDrawable from './models/GradientDrawable';\nimport type { GradientDrawableOrientation } from './models/GradientDrawable';\nimport type IOSFontInfo from './models/IOSFontInfo';\nimport type {\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n} from './models/IOSFontInfo';\nimport LiveStreamChatEventName from './models/LiveStreamChatEventName';\nimport type LiveStreamEventDetails from './models/LiveStreamEventDetails';\nimport LiveStreamEventName from './models/LiveStreamEventName';\nimport type LiveStreamMessageDetails from './models/LiveStreamMessageDetails';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type MarkInitCalledOptions from './models/MarkInitCalledOptions';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type Product from './models/Product';\nimport type ProductInfoViewConfiguration from './models/ProductInfoViewConfiguration';\nimport type {\n LinkButtonConfiguration,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n} from './models/ProductInfoViewConfiguration';\nimport type ProductUnit from './models/ProductUnit';\nimport type { ProductPrice, ProductUnitOption } from './models/ProductUnit';\nimport type PushRNContainerParams from './models/PushRNContainerParams';\nimport type { RNAppProps } from './models/PushRNContainerParams';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type ShoppingCTAResult from './models/ShoppingCTAResult';\nimport type { StoryBlockConfiguration } from './models/StoryBlockConfiguration';\nimport type { StoryBlockSource } from './models/StoryBlockSource';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport type VideoFeedConfiguration from './models/VideoFeedConfiguration';\nimport type {\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n} from './models/VideoFeedConfiguration';\nimport type { VideoFeedSource } from './models/VideoFeedSource';\nimport type VideoPlaybackDetails from './models/VideoPlaybackDetails';\nimport type { VideoPlayerSize } from './models/VideoPlaybackDetails';\nimport VideoPlaybackEventName from './models/VideoPlaybackEventName';\nimport type VideoPlayerButtonConfiguration from './models/VideoPlayerButtonConfiguration';\nimport type { VideoPlayerCompleteAction } from './models/VideoPlayerCompleteAction';\nimport type VideoPlayerConfiguration from './models/VideoPlayerConfiguration';\nimport type {\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n} from './models/VideoPlayerCTADelay';\nimport type { VideoPlayerCTAStyle } from './models/VideoPlayerCTAStyle';\nimport type { VideoPlayerCTAWidth } from './models/VideoPlayerCTAWidth';\nimport type { VideoPlayerLivestreamCountdownTimerTheme } from './models/VideoPlayerLivestreamCountdownTimerTheme';\nimport type {\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n} from './models/VideoPlayerLogoConfiguration';\nimport type { VideoPlayerStyle } from './models/VideoPlayerStyle';\nimport VideoFeedUtil from './utils/VideoFeedUtil';\nimport type {\n ClickProductCallback,\n CustomClickCartIconCallback,\n CustomClickLinkButtonCallback,\n CustomTapProductCardCallback,\n ShoppingCTACallback,\n UpdateProductDetailsCallback,\n} from './VideoShopping';\nimport VideoShopping from './VideoShopping';\n\nexport default FireworkSDK;\n\nexport {\n AdBadgeConfiguration,\n AdBadgeTextType,\n AdConfiguration,\n AndroidFontInfo,\n ButtonInfo,\n ClickProductCallback,\n ClickProductEvent,\n CountdownTimerAppearanceMode,\n CountdownTimerConfiguration,\n CustomClickCartIconCallback,\n CustomClickCartIconEvent,\n CustomClickLinkButtonCallback,\n CustomClickLinkButtonEvent,\n CustomCTAClickCallback,\n CustomCTAClickEvent,\n CustomTapProductCardCallback,\n CustomTapProductCardEvent,\n DataTrackingLevel,\n FeedItemDetails,\n FireworkSDK,\n FWComponentType,\n FWError,\n FWNavigator,\n GradientDrawable,\n GradientDrawableOrientation,\n IOSFontInfo,\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n IStoryBlockMethods,\n IStoryBlockProps,\n IVideoFeedProps,\n LinkButtonConfiguration,\n LiveStream,\n LiveStreamChatEvent,\n LiveStreamChatEventName,\n LiveStreamEvent,\n LiveStreamEventDetails,\n LiveStreamEventName,\n LiveStreamMessageDetails,\n LivestreamPlayerDesignVersion,\n MarkInitCalledOptions,\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n OpenVideoPlayerConfiguration,\n PlayerHandler,\n Product,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ProductInfoViewConfiguration,\n ProductPrice,\n ProductUnit,\n ProductUnitOption,\n PushRNContainerParams,\n RNAppProps,\n SDKInitCallback,\n SDKInitEvent,\n SDKInitOptions,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n ShoppingCTACallback,\n ShoppingCTAEvent,\n ShoppingCTAResult,\n StoryBlock,\n StoryBlockConfiguration,\n StoryBlockSource,\n TrackPurchaseParameters,\n UpdateProductDetailsCallback,\n UpdateProductDetailsEvent,\n VastAttribute,\n VideoFeed,\n VideoFeedClickCallback,\n VideoFeedClickEvent,\n VideoFeedConfiguration,\n VideoFeedMode,\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedSource,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n VideoFeedUtil,\n VideoLaunchBehavior,\n VideoPlaybackCallback,\n VideoPlaybackDetails,\n VideoPlaybackEvent,\n VideoPlaybackEventName,\n VideoPlayerButtonConfiguration,\n VideoPlayerCompleteAction,\n VideoPlayerConfiguration,\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n VideoPlayerCTAStyle,\n VideoPlayerCTAWidth,\n VideoPlayerLivestreamCountdownTimerTheme,\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n VideoPlayerSize,\n VideoPlayerStyle,\n VideoShopping,\n};\n"]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=MarkInitCalledOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -297,29 +297,25 @@ class FireworkSDK {
297
297
  await this.completeRemainingInitialization();
298
298
  }
299
299
  /**
300
- * You only need to call this method when you call init method in native side instead of JS side.
301
- */
302
-
303
- /**
304
- * You need to call this method when you call init method in native side.
305
- * @param nativeLazyInit
306
- * Genenally, you should call naitve init in application(:, didFinishLaunchingWithOptions:) -> Bool on iOS
307
- * and MainApplication.onCreate on Android. If not, you should pass nativeLazyInit as true.
300
+ * Mark the initialization method as being called on the JS side.
301
+ * @param {MarkInitCalledOptions} options
308
302
  */
309
303
 
310
304
 
311
305
  async markInitCalled() {
312
- let nativeLazyInit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
306
+ let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
307
+ directlyCallNativeInit: false
308
+ };
313
309
  FWLoggerUtil.log('Call FireworkSDK markInitCalled method');
314
310
 
315
- if (!nativeLazyInit) {
316
- await this.completeRemainingInitialization();
311
+ if (options.directlyCallNativeInit) {
312
+ await this.completeRemainingInitialization(options);
317
313
  await FireworkSDKModule.markInitCalled();
318
314
  } else {
319
315
  const hasCalledSDKInit = await FireworkSDKModule.markInitCalled();
320
316
 
321
317
  if (hasCalledSDKInit) {
322
- await this.completeRemainingInitialization();
318
+ await this.completeRemainingInitialization(options);
323
319
  }
324
320
  }
325
321
  }
@@ -407,13 +403,20 @@ class FireworkSDK {
407
403
  }
408
404
 
409
405
  async completeRemainingInitialization() {
406
+ let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
407
+ directlyCallNativeInit: false
408
+ };
409
+
410
410
  if (FWGlobalState.getInstance().sdkInitCalled) {
411
411
  return;
412
412
  }
413
413
 
414
414
  FWGlobalState.getInstance().resolveSdkInitCalled();
415
- await ShoppingModule.init();
416
- await LiveStreamModule.init();
415
+
416
+ if (!options.directlyCallNativeInit) {
417
+ await ShoppingModule.init();
418
+ await LiveStreamModule.init();
419
+ }
417
420
  }
418
421
 
419
422
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["FireworkSDK.ts"],"names":["Platform","FWNavigator","LiveStream","FWEventName","LivestreamPlayerDesignVersion","FireworkSDKModule","FireworkSDKModuleEventEmitter","LiveStreamModule","ShoppingModule","FWGlobalState","FWLoggerUtil","VideoShopping","FireworkSDK","onVideoFeedClick","_onVideoFeedClick","value","OS","setVideoFeedClickCallbackEnabled","onCustomCTAClick","_onCustomCTAClick","log","setCustomCTAClickEnabled","onVideoPlayback","_onVideoPlayback","setVideoPlaybackEventEnabled","shareBaseURL","_shareBaseURL","updateInternalShareBaseURL","adBadgeConfiguration","_adBadgeConfiguration","valueHasChanged","badgeTextType","backgroundColor","textColor","androidFontInfo","isCustom","typefaceName","setAdBadgeConfiguration","then","eventEmitter","emit","AdBadgeConfigurationUpdated","appLanguage","_appLanguage","dataTrackingLevel","_dataTrackingLevel","setDataTrackingLevel","DataTrackingLevelUpdated","debugLogsEnabled","enabled","videoLaunchBehavior","_videoLaunchBehavior","livestreamPlayerDesignVersion","_livestreamPlayerDesignVersion","setLivestreamPlayerDesignVersion","LivestreamPlayerDesignVersionUpdated","shopping","_shopping","liveStream","_liveStream","navigator","_navigator","getInstance","_instance","constructor","v1","addListener","SDKInit","event","error","completeRemainingInitialization","hasCalledSDKInitCallback","onSDKInit","LogMessage","logNativeMessage","message","CustomCTAClick","url","callbackId","playerHandler","pause","pausePlayer","resume","resumePlayer","VideoPlayback","eventName","VideoFeedClick","info","id","NativeAppLanguageUpdated","language","updateInternalAppLanguage","init","options","videoLaunchBehaviorUpdated","VideoLaunchBehaviorUpdated","markInitCalled","nativeLazyInit","hasCalledSDKInit","openVideoPlayer","config","sdkInitCalled","sdkInitCalledPromise","trackPurchase","parameters","changeAppLanguage","result","languageChanged","stopFloatingPlayer","getComponentType","feedId","componentTypeByFeedIdMap","get","AppLanguageUpdated","shareBaseURLChanged","setShareBaseURL","ShareBaseURLUpdated","resolveSdkInitCalled"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, Platform } from 'react-native';\n\nimport FWNavigator from './FWNavigator';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport { FWEventName } from './models/FWEventName';\nimport type {\n CustomCTAClickEvent,\n SDKInitEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport FireworkSDKModule, {\n FireworkSDKModuleEventEmitter,\n} from './modules/FireworkSDKModule';\nimport LiveStreamModule from './modules/LiveStreamModule';\nimport ShoppingModule from './modules/ShoppingModule';\nimport FWGlobalState from './utils/FWGlobalState';\nimport FWLoggerUtil from './utils/FWLoggerUtil';\nimport VideoShopping from './VideoShopping';\n\nexport type SDKInitCallback = (event: SDKInitEvent) => Promise<void> | void;\nexport type CustomCTAClickCallback = (\n event: CustomCTAClickEvent\n) => Promise<void> | void;\nexport type VideoPlaybackCallback = (\n event: VideoPlaybackEvent\n) => Promise<void> | void;\nexport type VideoFeedClickCallback = (\n event: VideoFeedClickEvent\n) => Promise<void> | void;\n\n/**\n * Firework SDK.\n */\nclass FireworkSDK {\n private static _instance?: FireworkSDK;\n\n /**\n * The callback of SDK initialization.\n */\n public onSDKInit?: SDKInitCallback;\n\n /**\n * the callback of clicking Video Feed.\n */\n public get onVideoFeedClick(): VideoFeedClickCallback | undefined {\n return this._onVideoFeedClick;\n }\n public set onVideoFeedClick(value: VideoFeedClickCallback | undefined) {\n this._onVideoFeedClick = value;\n if (Platform.OS === 'ios') {\n FireworkSDKModule.setVideoFeedClickCallbackEnabled(!!value);\n }\n }\n private _onVideoFeedClick?: VideoFeedClickCallback | undefined;\n\n /**\n * The callback of clicking custom CTA.\n */\n public get onCustomCTAClick(): CustomCTAClickCallback | undefined {\n return this._onCustomCTAClick;\n }\n public set onCustomCTAClick(value: CustomCTAClickCallback | undefined) {\n FWLoggerUtil.log(`Set onCustomCTAClick callback ${!!value}`);\n this._onCustomCTAClick = value;\n FireworkSDKModule.setCustomCTAClickEnabled(value ? true : false);\n }\n private _onCustomCTAClick: CustomCTAClickCallback | undefined;\n\n /**\n * The callback of video playback.\n */\n public get onVideoPlayback(): VideoPlaybackCallback | undefined {\n return this._onVideoPlayback;\n }\n public set onVideoPlayback(value: VideoPlaybackCallback | undefined) {\n this._onVideoPlayback = value;\n FireworkSDKModule.setVideoPlaybackEventEnabled(value ? true : false);\n }\n private _onVideoPlayback?: VideoPlaybackCallback | undefined;\n\n /**\n * The global share base URL of the video.\n * The {@link VideoPlayerConfiguration.shareBaseURL} in {@link VideoPlayerConfiguration} will override this.\n */\n public get shareBaseURL(): string | undefined {\n return this._shareBaseURL;\n }\n public set shareBaseURL(value: string | undefined) {\n this.updateInternalShareBaseURL(value);\n }\n private _shareBaseURL: string | undefined;\n\n /**\n * The configuration for ad badges.\n */\n public get adBadgeConfiguration(): AdBadgeConfiguration | undefined {\n return this._adBadgeConfiguration;\n }\n public set adBadgeConfiguration(value: AdBadgeConfiguration | undefined) {\n const valueHasChanged =\n this._adBadgeConfiguration?.badgeTextType !== value?.badgeTextType ||\n this._adBadgeConfiguration?.backgroundColor !== value?.backgroundColor ||\n this._adBadgeConfiguration?.textColor !== value?.textColor ||\n this._adBadgeConfiguration?.androidFontInfo?.isCustom !==\n value?.androidFontInfo?.isCustom ||\n this._adBadgeConfiguration?.androidFontInfo?.typefaceName !==\n value?.androidFontInfo?.typefaceName;\n this._adBadgeConfiguration = value;\n\n FireworkSDKModule.setAdBadgeConfiguration(value ?? {}).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AdBadgeConfigurationUpdated);\n }\n });\n }\n private _adBadgeConfiguration: AdBadgeConfiguration | undefined;\n\n public get appLanguage(): string | undefined | null {\n return this._appLanguage;\n }\n private _appLanguage: string | undefined | null;\n\n /**\n * The configuration for data tracking level.\n */\n public get dataTrackingLevel(): DataTrackingLevel {\n return this._dataTrackingLevel;\n }\n public set dataTrackingLevel(value: DataTrackingLevel) {\n const valueHasChanged = this._dataTrackingLevel !== value;\n this._dataTrackingLevel = value;\n FireworkSDKModule.setDataTrackingLevel(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.DataTrackingLevelUpdated);\n }\n });\n }\n private _dataTrackingLevel: DataTrackingLevel = 'all';\n\n /**\n * Defaults to false.\n * You can enable debug logs by setting this property to true.\n */\n public get debugLogsEnabled(): boolean {\n return FWLoggerUtil.enabled;\n }\n public set debugLogsEnabled(value: boolean) {\n FWLoggerUtil.enabled = value;\n }\n\n /**\n * Get video launch behavior.\n */\n public get videoLaunchBehavior(): VideoLaunchBehavior | undefined {\n return this._videoLaunchBehavior;\n }\n private _videoLaunchBehavior: VideoLaunchBehavior | undefined;\n\n /**\n * The version of the livestream player design.\n */\n public get livestreamPlayerDesignVersion(): LivestreamPlayerDesignVersion {\n return this._livestreamPlayerDesignVersion;\n }\n public set livestreamPlayerDesignVersion(\n value: LivestreamPlayerDesignVersion\n ) {\n const valueHasChanged = this._livestreamPlayerDesignVersion !== value;\n this._livestreamPlayerDesignVersion = value;\n FireworkSDKModule.setLivestreamPlayerDesignVersion(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(\n FWEventName.LivestreamPlayerDesignVersionUpdated\n );\n }\n });\n }\n private _livestreamPlayerDesignVersion: LivestreamPlayerDesignVersion =\n LivestreamPlayerDesignVersion.v1;\n\n private get eventEmitter(): NativeEventEmitter {\n return FireworkSDKModuleEventEmitter;\n }\n\n /**\n * Get VideoShopping object.\n */\n public get shopping(): VideoShopping {\n return this._shopping;\n }\n private _shopping: VideoShopping = VideoShopping.getInstance();\n\n /**\n * Get LiveStream object.\n */\n public get liveStream(): LiveStream {\n return this._liveStream;\n }\n private _liveStream: LiveStream = LiveStream.getInstance();\n\n /**\n * Get FWNavigator object.\n */\n public get navigator(): FWNavigator {\n return this._navigator;\n }\n private _navigator: FWNavigator = FWNavigator.getInstance();\n\n private hasCalledSDKInitCallback: boolean = false;\n\n /**\n * Get global single instance of FireworkSDK class.\n * @returns FireworkSDK\n */\n public static getInstance() {\n if (!FireworkSDK._instance) {\n FireworkSDK._instance = new FireworkSDK();\n }\n\n return FireworkSDK._instance!;\n }\n\n private constructor() {\n FWLoggerUtil.log('FireworkSDK constructor');\n\n this.eventEmitter.addListener(FWEventName.SDKInit, (event) => {\n FWLoggerUtil.log(`Receive SDKInit event ${event?.error}`);\n\n if (event && !event.error) {\n this.completeRemainingInitialization();\n }\n\n if (!this.hasCalledSDKInitCallback) {\n this.hasCalledSDKInitCallback = true;\n if (this.onSDKInit && event) {\n this.onSDKInit(event);\n }\n }\n });\n\n this.eventEmitter.addListener(FWEventName.LogMessage, (event) => {\n FWLoggerUtil.logNativeMessage(event.message);\n });\n\n this.eventEmitter.addListener(FWEventName.CustomCTAClick, (event) => {\n FWLoggerUtil.log(`Receive CustomCTAClick url: ${event?.url}`);\n FWLoggerUtil.log(\n `Receive CustomCTAClick callbackId: ${event?.callbackId}`\n );\n\n if (this.onCustomCTAClick && event) {\n if (event.callbackId) {\n const callbackId = event.callbackId;\n delete event.callbackId;\n if (Platform.OS === 'ios') {\n event.playerHandler = {\n pause: () => FireworkSDKModule.pausePlayer(callbackId),\n resume: () => FireworkSDKModule.resumePlayer(callbackId),\n };\n }\n }\n this.onCustomCTAClick(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoPlayback, (event) => {\n FWLoggerUtil.log(\n `Receive VideoPlayback event eventName: ${event?.eventName}`\n );\n\n if (this.onVideoPlayback && event) {\n this.onVideoPlayback(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoFeedClick, (event) => {\n FWLoggerUtil.log(`Receive VideoFeedClick event id: ${event?.info.id}`);\n\n if (this.onVideoFeedClick && event) {\n this.onVideoFeedClick(event);\n }\n });\n\n if (Platform.OS === 'ios') {\n this.eventEmitter.addListener(\n FWEventName.NativeAppLanguageUpdated,\n (event) => {\n FWLoggerUtil.log(\n `Receive NativeAppLanguageUpdated event appLanguage: ${event.appLanguage}`\n );\n const language = event.appLanguage;\n this.updateInternalAppLanguage(language);\n }\n );\n }\n }\n\n /**\n * Initializes Firework SDK.\n * @param {SDKInitOptions?} options\n */\n public async init(options?: SDKInitOptions): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK init method');\n const videoLaunchBehaviorUpdated =\n this._videoLaunchBehavior !== options?.videoLaunchBehavior;\n this._videoLaunchBehavior = options?.videoLaunchBehavior;\n await FireworkSDKModule.init(options);\n if (videoLaunchBehaviorUpdated) {\n this.eventEmitter.emit(FWEventName.VideoLaunchBehaviorUpdated);\n }\n await this.completeRemainingInitialization();\n }\n\n /**\n * You only need to call this method when you call init method in native side instead of JS side.\n */\n /**\n * You need to call this method when you call init method in native side.\n * @param nativeLazyInit\n * Genenally, you should call naitve init in application(:, didFinishLaunchingWithOptions:) -> Bool on iOS\n * and MainApplication.onCreate on Android. If not, you should pass nativeLazyInit as true.\n */\n public async markInitCalled(nativeLazyInit: boolean = false): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK markInitCalled method');\n if (!nativeLazyInit) {\n await this.completeRemainingInitialization();\n await FireworkSDKModule.markInitCalled();\n } else {\n const hasCalledSDKInit = await FireworkSDKModule.markInitCalled();\n if (hasCalledSDKInit) {\n await this.completeRemainingInitialization();\n }\n }\n }\n\n /**\n * Open Video URL.\n * @param {string} url\n * @param {VideoPlayerConfiguration} config\n */\n public async openVideoPlayer(\n url: string,\n config?: OpenVideoPlayerConfiguration\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.openVideoPlayer(url, config ?? {});\n }\n\n /**\n * Records the user purchase. Only supported on iOS.\n * @param {TrackPurchaseParameters} parameters\n */\n public async trackPurchase(\n parameters: TrackPurchaseParameters\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.trackPurchase(parameters);\n }\n\n /**\n * Change App level language.\n * @param {string | undefined | null} language Such as en, ar and en-US. If language is undefined or null or empty string, SDK will use system language.\n * @returns {Promise<boolean>} The result of changing app language.\n */\n public async changeAppLanguage(language?: string | null): Promise<boolean> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n\n const result = await FireworkSDKModule.changeAppLanguage(language);\n\n if (result) {\n const languageChanged = this._appLanguage !== language;\n if (Platform.OS === 'ios' && languageChanged) {\n await this.navigator.stopFloatingPlayer();\n }\n this.updateInternalAppLanguage(language);\n }\n return result;\n }\n\n /**\n * Get the component type based on feedId.\n * @param {string} feedId\n * @returns {string | undefined} The component type based on feedId.\n */\n public getComponentType(feedId: string) {\n return FWGlobalState.getInstance().componentTypeByFeedIdMap.get(feedId);\n }\n\n private updateInternalAppLanguage(language?: string | null) {\n const valueHasChanged = this._appLanguage !== language;\n this._appLanguage = language;\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AppLanguageUpdated);\n }\n }\n\n private updateInternalShareBaseURL(shareBaseURL?: string) {\n const shareBaseURLChanged = this._shareBaseURL !== shareBaseURL;\n this._shareBaseURL = shareBaseURL;\n FireworkSDKModule.setShareBaseURL(shareBaseURL ?? '').then(() => {\n if (shareBaseURLChanged) {\n this.eventEmitter.emit(FWEventName.ShareBaseURLUpdated);\n }\n });\n }\n\n private async completeRemainingInitialization(): Promise<void> {\n if (FWGlobalState.getInstance().sdkInitCalled) {\n return;\n }\n\n FWGlobalState.getInstance().resolveSdkInitCalled();\n await ShoppingModule.init();\n await LiveStreamModule.init();\n }\n}\n\nexport default FireworkSDK;\n"]}
1
+ {"version":3,"sources":["FireworkSDK.ts"],"names":["Platform","FWNavigator","LiveStream","FWEventName","LivestreamPlayerDesignVersion","FireworkSDKModule","FireworkSDKModuleEventEmitter","LiveStreamModule","ShoppingModule","FWGlobalState","FWLoggerUtil","VideoShopping","FireworkSDK","onVideoFeedClick","_onVideoFeedClick","value","OS","setVideoFeedClickCallbackEnabled","onCustomCTAClick","_onCustomCTAClick","log","setCustomCTAClickEnabled","onVideoPlayback","_onVideoPlayback","setVideoPlaybackEventEnabled","shareBaseURL","_shareBaseURL","updateInternalShareBaseURL","adBadgeConfiguration","_adBadgeConfiguration","valueHasChanged","badgeTextType","backgroundColor","textColor","androidFontInfo","isCustom","typefaceName","setAdBadgeConfiguration","then","eventEmitter","emit","AdBadgeConfigurationUpdated","appLanguage","_appLanguage","dataTrackingLevel","_dataTrackingLevel","setDataTrackingLevel","DataTrackingLevelUpdated","debugLogsEnabled","enabled","videoLaunchBehavior","_videoLaunchBehavior","livestreamPlayerDesignVersion","_livestreamPlayerDesignVersion","setLivestreamPlayerDesignVersion","LivestreamPlayerDesignVersionUpdated","shopping","_shopping","liveStream","_liveStream","navigator","_navigator","getInstance","_instance","constructor","v1","addListener","SDKInit","event","error","completeRemainingInitialization","hasCalledSDKInitCallback","onSDKInit","LogMessage","logNativeMessage","message","CustomCTAClick","url","callbackId","playerHandler","pause","pausePlayer","resume","resumePlayer","VideoPlayback","eventName","VideoFeedClick","info","id","NativeAppLanguageUpdated","language","updateInternalAppLanguage","init","options","videoLaunchBehaviorUpdated","VideoLaunchBehaviorUpdated","markInitCalled","directlyCallNativeInit","hasCalledSDKInit","openVideoPlayer","config","sdkInitCalled","sdkInitCalledPromise","trackPurchase","parameters","changeAppLanguage","result","languageChanged","stopFloatingPlayer","getComponentType","feedId","componentTypeByFeedIdMap","get","AppLanguageUpdated","shareBaseURLChanged","setShareBaseURL","ShareBaseURLUpdated","resolveSdkInitCalled"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, Platform } from 'react-native';\n\nimport FWNavigator from './FWNavigator';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport { FWEventName } from './models/FWEventName';\nimport type {\n CustomCTAClickEvent,\n SDKInitEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type MarkInitCalledOptions from './models/MarkInitCalledOptions';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport FireworkSDKModule, {\n FireworkSDKModuleEventEmitter,\n} from './modules/FireworkSDKModule';\nimport LiveStreamModule from './modules/LiveStreamModule';\nimport ShoppingModule from './modules/ShoppingModule';\nimport FWGlobalState from './utils/FWGlobalState';\nimport FWLoggerUtil from './utils/FWLoggerUtil';\nimport VideoShopping from './VideoShopping';\n\nexport type SDKInitCallback = (event: SDKInitEvent) => Promise<void> | void;\nexport type CustomCTAClickCallback = (\n event: CustomCTAClickEvent\n) => Promise<void> | void;\nexport type VideoPlaybackCallback = (\n event: VideoPlaybackEvent\n) => Promise<void> | void;\nexport type VideoFeedClickCallback = (\n event: VideoFeedClickEvent\n) => Promise<void> | void;\n\n/**\n * Firework SDK.\n */\nclass FireworkSDK {\n private static _instance?: FireworkSDK;\n\n /**\n * The callback of SDK initialization.\n */\n public onSDKInit?: SDKInitCallback;\n\n /**\n * the callback of clicking Video Feed.\n */\n public get onVideoFeedClick(): VideoFeedClickCallback | undefined {\n return this._onVideoFeedClick;\n }\n public set onVideoFeedClick(value: VideoFeedClickCallback | undefined) {\n this._onVideoFeedClick = value;\n if (Platform.OS === 'ios') {\n FireworkSDKModule.setVideoFeedClickCallbackEnabled(!!value);\n }\n }\n private _onVideoFeedClick?: VideoFeedClickCallback | undefined;\n\n /**\n * The callback of clicking custom CTA.\n */\n public get onCustomCTAClick(): CustomCTAClickCallback | undefined {\n return this._onCustomCTAClick;\n }\n public set onCustomCTAClick(value: CustomCTAClickCallback | undefined) {\n FWLoggerUtil.log(`Set onCustomCTAClick callback ${!!value}`);\n this._onCustomCTAClick = value;\n FireworkSDKModule.setCustomCTAClickEnabled(value ? true : false);\n }\n private _onCustomCTAClick: CustomCTAClickCallback | undefined;\n\n /**\n * The callback of video playback.\n */\n public get onVideoPlayback(): VideoPlaybackCallback | undefined {\n return this._onVideoPlayback;\n }\n public set onVideoPlayback(value: VideoPlaybackCallback | undefined) {\n this._onVideoPlayback = value;\n FireworkSDKModule.setVideoPlaybackEventEnabled(value ? true : false);\n }\n private _onVideoPlayback?: VideoPlaybackCallback | undefined;\n\n /**\n * The global share base URL of the video.\n * The {@link VideoPlayerConfiguration.shareBaseURL} in {@link VideoPlayerConfiguration} will override this.\n */\n public get shareBaseURL(): string | undefined {\n return this._shareBaseURL;\n }\n public set shareBaseURL(value: string | undefined) {\n this.updateInternalShareBaseURL(value);\n }\n private _shareBaseURL: string | undefined;\n\n /**\n * The configuration for ad badges.\n */\n public get adBadgeConfiguration(): AdBadgeConfiguration | undefined {\n return this._adBadgeConfiguration;\n }\n public set adBadgeConfiguration(value: AdBadgeConfiguration | undefined) {\n const valueHasChanged =\n this._adBadgeConfiguration?.badgeTextType !== value?.badgeTextType ||\n this._adBadgeConfiguration?.backgroundColor !== value?.backgroundColor ||\n this._adBadgeConfiguration?.textColor !== value?.textColor ||\n this._adBadgeConfiguration?.androidFontInfo?.isCustom !==\n value?.androidFontInfo?.isCustom ||\n this._adBadgeConfiguration?.androidFontInfo?.typefaceName !==\n value?.androidFontInfo?.typefaceName;\n this._adBadgeConfiguration = value;\n\n FireworkSDKModule.setAdBadgeConfiguration(value ?? {}).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AdBadgeConfigurationUpdated);\n }\n });\n }\n private _adBadgeConfiguration: AdBadgeConfiguration | undefined;\n\n public get appLanguage(): string | undefined | null {\n return this._appLanguage;\n }\n private _appLanguage: string | undefined | null;\n\n /**\n * The configuration for data tracking level.\n */\n public get dataTrackingLevel(): DataTrackingLevel {\n return this._dataTrackingLevel;\n }\n public set dataTrackingLevel(value: DataTrackingLevel) {\n const valueHasChanged = this._dataTrackingLevel !== value;\n this._dataTrackingLevel = value;\n FireworkSDKModule.setDataTrackingLevel(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.DataTrackingLevelUpdated);\n }\n });\n }\n private _dataTrackingLevel: DataTrackingLevel = 'all';\n\n /**\n * Defaults to false.\n * You can enable debug logs by setting this property to true.\n */\n public get debugLogsEnabled(): boolean {\n return FWLoggerUtil.enabled;\n }\n public set debugLogsEnabled(value: boolean) {\n FWLoggerUtil.enabled = value;\n }\n\n /**\n * Get video launch behavior.\n */\n public get videoLaunchBehavior(): VideoLaunchBehavior | undefined {\n return this._videoLaunchBehavior;\n }\n private _videoLaunchBehavior: VideoLaunchBehavior | undefined;\n\n /**\n * The version of the livestream player design.\n */\n public get livestreamPlayerDesignVersion(): LivestreamPlayerDesignVersion {\n return this._livestreamPlayerDesignVersion;\n }\n public set livestreamPlayerDesignVersion(\n value: LivestreamPlayerDesignVersion\n ) {\n const valueHasChanged = this._livestreamPlayerDesignVersion !== value;\n this._livestreamPlayerDesignVersion = value;\n FireworkSDKModule.setLivestreamPlayerDesignVersion(value).then(() => {\n if (valueHasChanged) {\n this.eventEmitter.emit(\n FWEventName.LivestreamPlayerDesignVersionUpdated\n );\n }\n });\n }\n private _livestreamPlayerDesignVersion: LivestreamPlayerDesignVersion =\n LivestreamPlayerDesignVersion.v1;\n\n private get eventEmitter(): NativeEventEmitter {\n return FireworkSDKModuleEventEmitter;\n }\n\n /**\n * Get VideoShopping object.\n */\n public get shopping(): VideoShopping {\n return this._shopping;\n }\n private _shopping: VideoShopping = VideoShopping.getInstance();\n\n /**\n * Get LiveStream object.\n */\n public get liveStream(): LiveStream {\n return this._liveStream;\n }\n private _liveStream: LiveStream = LiveStream.getInstance();\n\n /**\n * Get FWNavigator object.\n */\n public get navigator(): FWNavigator {\n return this._navigator;\n }\n private _navigator: FWNavigator = FWNavigator.getInstance();\n\n private hasCalledSDKInitCallback: boolean = false;\n\n /**\n * Get global single instance of FireworkSDK class.\n * @returns FireworkSDK\n */\n public static getInstance() {\n if (!FireworkSDK._instance) {\n FireworkSDK._instance = new FireworkSDK();\n }\n\n return FireworkSDK._instance!;\n }\n\n private constructor() {\n FWLoggerUtil.log('FireworkSDK constructor');\n\n this.eventEmitter.addListener(FWEventName.SDKInit, (event) => {\n FWLoggerUtil.log(`Receive SDKInit event ${event?.error}`);\n\n if (event && !event.error) {\n this.completeRemainingInitialization();\n }\n\n if (!this.hasCalledSDKInitCallback) {\n this.hasCalledSDKInitCallback = true;\n if (this.onSDKInit && event) {\n this.onSDKInit(event);\n }\n }\n });\n\n this.eventEmitter.addListener(FWEventName.LogMessage, (event) => {\n FWLoggerUtil.logNativeMessage(event.message);\n });\n\n this.eventEmitter.addListener(FWEventName.CustomCTAClick, (event) => {\n FWLoggerUtil.log(`Receive CustomCTAClick url: ${event?.url}`);\n FWLoggerUtil.log(\n `Receive CustomCTAClick callbackId: ${event?.callbackId}`\n );\n\n if (this.onCustomCTAClick && event) {\n if (event.callbackId) {\n const callbackId = event.callbackId;\n delete event.callbackId;\n if (Platform.OS === 'ios') {\n event.playerHandler = {\n pause: () => FireworkSDKModule.pausePlayer(callbackId),\n resume: () => FireworkSDKModule.resumePlayer(callbackId),\n };\n }\n }\n this.onCustomCTAClick(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoPlayback, (event) => {\n FWLoggerUtil.log(\n `Receive VideoPlayback event eventName: ${event?.eventName}`\n );\n\n if (this.onVideoPlayback && event) {\n this.onVideoPlayback(event);\n }\n });\n\n this.eventEmitter.addListener(FWEventName.VideoFeedClick, (event) => {\n FWLoggerUtil.log(`Receive VideoFeedClick event id: ${event?.info.id}`);\n\n if (this.onVideoFeedClick && event) {\n this.onVideoFeedClick(event);\n }\n });\n\n if (Platform.OS === 'ios') {\n this.eventEmitter.addListener(\n FWEventName.NativeAppLanguageUpdated,\n (event) => {\n FWLoggerUtil.log(\n `Receive NativeAppLanguageUpdated event appLanguage: ${event.appLanguage}`\n );\n const language = event.appLanguage;\n this.updateInternalAppLanguage(language);\n }\n );\n }\n }\n\n /**\n * Initializes Firework SDK.\n * @param {SDKInitOptions?} options\n */\n public async init(options?: SDKInitOptions): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK init method');\n const videoLaunchBehaviorUpdated =\n this._videoLaunchBehavior !== options?.videoLaunchBehavior;\n this._videoLaunchBehavior = options?.videoLaunchBehavior;\n await FireworkSDKModule.init(options);\n if (videoLaunchBehaviorUpdated) {\n this.eventEmitter.emit(FWEventName.VideoLaunchBehaviorUpdated);\n }\n await this.completeRemainingInitialization();\n }\n\n /**\n * Mark the initialization method as being called on the JS side.\n * @param {MarkInitCalledOptions} options\n */\n public async markInitCalled(\n options: MarkInitCalledOptions = {\n directlyCallNativeInit: false,\n }\n ): Promise<void> {\n FWLoggerUtil.log('Call FireworkSDK markInitCalled method');\n if (options.directlyCallNativeInit) {\n await this.completeRemainingInitialization(options);\n await FireworkSDKModule.markInitCalled();\n } else {\n const hasCalledSDKInit = await FireworkSDKModule.markInitCalled();\n if (hasCalledSDKInit) {\n await this.completeRemainingInitialization(options);\n }\n }\n }\n\n /**\n * Open Video URL.\n * @param {string} url\n * @param {VideoPlayerConfiguration} config\n */\n public async openVideoPlayer(\n url: string,\n config?: OpenVideoPlayerConfiguration\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.openVideoPlayer(url, config ?? {});\n }\n\n /**\n * Records the user purchase. Only supported on iOS.\n * @param {TrackPurchaseParameters} parameters\n */\n public async trackPurchase(\n parameters: TrackPurchaseParameters\n ): Promise<void> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n FireworkSDKModule.trackPurchase(parameters);\n }\n\n /**\n * Change App level language.\n * @param {string | undefined | null} language Such as en, ar and en-US. If language is undefined or null or empty string, SDK will use system language.\n * @returns {Promise<boolean>} The result of changing app language.\n */\n public async changeAppLanguage(language?: string | null): Promise<boolean> {\n if (!FWGlobalState.getInstance().sdkInitCalled) {\n await FWGlobalState.getInstance().sdkInitCalledPromise;\n }\n\n const result = await FireworkSDKModule.changeAppLanguage(language);\n\n if (result) {\n const languageChanged = this._appLanguage !== language;\n if (Platform.OS === 'ios' && languageChanged) {\n await this.navigator.stopFloatingPlayer();\n }\n this.updateInternalAppLanguage(language);\n }\n return result;\n }\n\n /**\n * Get the component type based on feedId.\n * @param {string} feedId\n * @returns {string | undefined} The component type based on feedId.\n */\n public getComponentType(feedId: string) {\n return FWGlobalState.getInstance().componentTypeByFeedIdMap.get(feedId);\n }\n\n private updateInternalAppLanguage(language?: string | null) {\n const valueHasChanged = this._appLanguage !== language;\n this._appLanguage = language;\n if (valueHasChanged) {\n this.eventEmitter.emit(FWEventName.AppLanguageUpdated);\n }\n }\n\n private updateInternalShareBaseURL(shareBaseURL?: string) {\n const shareBaseURLChanged = this._shareBaseURL !== shareBaseURL;\n this._shareBaseURL = shareBaseURL;\n FireworkSDKModule.setShareBaseURL(shareBaseURL ?? '').then(() => {\n if (shareBaseURLChanged) {\n this.eventEmitter.emit(FWEventName.ShareBaseURLUpdated);\n }\n });\n }\n\n private async completeRemainingInitialization(\n options: MarkInitCalledOptions = {\n directlyCallNativeInit: false,\n }\n ): Promise<void> {\n if (FWGlobalState.getInstance().sdkInitCalled) {\n return;\n }\n\n FWGlobalState.getInstance().resolveSdkInitCalled();\n if (!options.directlyCallNativeInit) {\n await ShoppingModule.init();\n await LiveStreamModule.init();\n }\n }\n}\n\nexport default FireworkSDK;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["StoryBlock","VideoFeed","FireworkSDK","FWNavigator","LiveStream","FWComponentType","LiveStreamChatEventName","LiveStreamEventName","LivestreamPlayerDesignVersion","VideoPlaybackEventName","VideoFeedUtil","VideoShopping"],"mappings":"AAIA,OAAOA,UAAP,MAAuB,yBAAvB;AAEA,OAAOC,SAAP,MAAsB,wBAAtB;AAOA,OAAOC,WAAP,MAAwB,eAAxB;AACA,OAAOC,WAAP,MAAwB,eAAxB;AAKA,OAAOC,UAAP,MAAuB,cAAvB;AAWA,SAASC,eAAT,QAAgC,0BAAhC;AAwBA,OAAOC,uBAAP,MAAoC,kCAApC;AAEA,OAAOC,mBAAP,MAAgC,8BAAhC;AAEA,OAAOC,6BAAP,MAA0C,wCAA1C;AAqCA,OAAOC,sBAAP,MAAmC,iCAAnC;AAgBA,OAAOC,aAAP,MAA0B,uBAA1B;AASA,OAAOC,aAAP,MAA0B,iBAA1B;AAEA,eAAeT,WAAf;AAEA,SAoBEA,WApBF,EAqBEG,eArBF,EAuBEF,WAvBF,EAiCEC,UAjCF,EAmCEE,uBAnCF,EAsCEC,mBAtCF,EAwCEC,6BAxCF,EAoEER,UApEF,EA2EEC,SA3EF,EAqFES,aArFF,EA0FED,sBA1FF,EAuGEE,aAvGF","sourcesContent":["import type {\n IStoryBlockMethods,\n IStoryBlockProps,\n} from './components/StoryBlock';\nimport StoryBlock from './components/StoryBlock';\nimport type { IVideoFeedProps, VideoFeedMode } from './components/VideoFeed';\nimport VideoFeed from './components/VideoFeed';\nimport type {\n CustomCTAClickCallback,\n SDKInitCallback,\n VideoFeedClickCallback,\n VideoPlaybackCallback,\n} from './FireworkSDK';\nimport FireworkSDK from './FireworkSDK';\nimport FWNavigator from './FWNavigator';\nimport type {\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n} from './LiveStream';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { AdBadgeTextType } from './models/AdBadgeConfiguration';\nimport type AdConfiguration from './models/AdConfiguration';\nimport type { VastAttribute } from './models/AdConfiguration';\nimport type AndroidFontInfo from './models/AndroidFontInfo';\nimport type ButtonInfo from './models/ButtonInfo';\nimport type CountdownTimerConfiguration from './models/CountdownTimerConfiguration';\nimport type { CountdownTimerAppearanceMode } from './models/CountdownTimerConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport type FeedItemDetails from './models/FeedItemDetails';\nimport { FWComponentType } from './models/FWComponentType';\nimport type FWError from './models/FWError';\nimport type {\n ClickProductEvent,\n CustomClickCartIconEvent,\n CustomClickLinkButtonEvent,\n CustomCTAClickEvent,\n CustomTapProductCardEvent,\n LiveStreamChatEvent,\n LiveStreamEvent,\n PlayerHandler,\n SDKInitEvent,\n ShoppingCTAEvent,\n UpdateProductDetailsEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport type GradientDrawable from './models/GradientDrawable';\nimport type { GradientDrawableOrientation } from './models/GradientDrawable';\nimport type IOSFontInfo from './models/IOSFontInfo';\nimport type {\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n} from './models/IOSFontInfo';\nimport LiveStreamChatEventName from './models/LiveStreamChatEventName';\nimport type LiveStreamEventDetails from './models/LiveStreamEventDetails';\nimport LiveStreamEventName from './models/LiveStreamEventName';\nimport type LiveStreamMessageDetails from './models/LiveStreamMessageDetails';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type Product from './models/Product';\nimport type ProductInfoViewConfiguration from './models/ProductInfoViewConfiguration';\nimport type {\n LinkButtonConfiguration,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n} from './models/ProductInfoViewConfiguration';\nimport type ProductUnit from './models/ProductUnit';\nimport type { ProductPrice, ProductUnitOption } from './models/ProductUnit';\nimport type PushRNContainerParams from './models/PushRNContainerParams';\nimport type { RNAppProps } from './models/PushRNContainerParams';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type ShoppingCTAResult from './models/ShoppingCTAResult';\nimport type { StoryBlockConfiguration } from './models/StoryBlockConfiguration';\nimport type { StoryBlockSource } from './models/StoryBlockSource';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport type VideoFeedConfiguration from './models/VideoFeedConfiguration';\nimport type {\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n} from './models/VideoFeedConfiguration';\nimport type { VideoFeedSource } from './models/VideoFeedSource';\nimport type VideoPlaybackDetails from './models/VideoPlaybackDetails';\nimport type { VideoPlayerSize } from './models/VideoPlaybackDetails';\nimport VideoPlaybackEventName from './models/VideoPlaybackEventName';\nimport type VideoPlayerButtonConfiguration from './models/VideoPlayerButtonConfiguration';\nimport type { VideoPlayerCompleteAction } from './models/VideoPlayerCompleteAction';\nimport type VideoPlayerConfiguration from './models/VideoPlayerConfiguration';\nimport type {\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n} from './models/VideoPlayerCTADelay';\nimport type { VideoPlayerCTAStyle } from './models/VideoPlayerCTAStyle';\nimport type { VideoPlayerCTAWidth } from './models/VideoPlayerCTAWidth';\nimport type { VideoPlayerLivestreamCountdownTimerTheme } from './models/VideoPlayerLivestreamCountdownTimerTheme';\nimport type {\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n} from './models/VideoPlayerLogoConfiguration';\nimport type { VideoPlayerStyle } from './models/VideoPlayerStyle';\nimport VideoFeedUtil from './utils/VideoFeedUtil';\nimport type {\n ClickProductCallback,\n CustomClickCartIconCallback,\n CustomClickLinkButtonCallback,\n CustomTapProductCardCallback,\n ShoppingCTACallback,\n UpdateProductDetailsCallback,\n} from './VideoShopping';\nimport VideoShopping from './VideoShopping';\n\nexport default FireworkSDK;\n\nexport {\n AdBadgeConfiguration,\n AdBadgeTextType,\n AdConfiguration,\n AndroidFontInfo,\n ButtonInfo,\n ClickProductCallback,\n ClickProductEvent,\n CountdownTimerAppearanceMode,\n CountdownTimerConfiguration,\n CustomClickCartIconCallback,\n CustomClickCartIconEvent,\n CustomClickLinkButtonCallback,\n CustomClickLinkButtonEvent,\n CustomCTAClickCallback,\n CustomCTAClickEvent,\n CustomTapProductCardCallback,\n CustomTapProductCardEvent,\n DataTrackingLevel,\n FeedItemDetails,\n FireworkSDK,\n FWComponentType,\n FWError,\n FWNavigator,\n GradientDrawable,\n GradientDrawableOrientation,\n IOSFontInfo,\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n IStoryBlockMethods,\n IStoryBlockProps,\n IVideoFeedProps,\n LinkButtonConfiguration,\n LiveStream,\n LiveStreamChatEvent,\n LiveStreamChatEventName,\n LiveStreamEvent,\n LiveStreamEventDetails,\n LiveStreamEventName,\n LiveStreamMessageDetails,\n LivestreamPlayerDesignVersion,\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n OpenVideoPlayerConfiguration,\n PlayerHandler,\n Product,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ProductInfoViewConfiguration,\n ProductPrice,\n ProductUnit,\n ProductUnitOption,\n PushRNContainerParams,\n RNAppProps,\n SDKInitCallback,\n SDKInitEvent,\n SDKInitOptions,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n ShoppingCTACallback,\n ShoppingCTAEvent,\n ShoppingCTAResult,\n StoryBlock,\n StoryBlockConfiguration,\n StoryBlockSource,\n TrackPurchaseParameters,\n UpdateProductDetailsCallback,\n UpdateProductDetailsEvent,\n VastAttribute,\n VideoFeed,\n VideoFeedClickCallback,\n VideoFeedClickEvent,\n VideoFeedConfiguration,\n VideoFeedMode,\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedSource,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n VideoFeedUtil,\n VideoLaunchBehavior,\n VideoPlaybackCallback,\n VideoPlaybackDetails,\n VideoPlaybackEvent,\n VideoPlaybackEventName,\n VideoPlayerButtonConfiguration,\n VideoPlayerCompleteAction,\n VideoPlayerConfiguration,\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n VideoPlayerCTAStyle,\n VideoPlayerCTAWidth,\n VideoPlayerLivestreamCountdownTimerTheme,\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n VideoPlayerSize,\n VideoPlayerStyle,\n VideoShopping,\n};\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":["StoryBlock","VideoFeed","FireworkSDK","FWNavigator","LiveStream","FWComponentType","LiveStreamChatEventName","LiveStreamEventName","LivestreamPlayerDesignVersion","VideoPlaybackEventName","VideoFeedUtil","VideoShopping"],"mappings":"AAIA,OAAOA,UAAP,MAAuB,yBAAvB;AAEA,OAAOC,SAAP,MAAsB,wBAAtB;AAOA,OAAOC,WAAP,MAAwB,eAAxB;AACA,OAAOC,WAAP,MAAwB,eAAxB;AAKA,OAAOC,UAAP,MAAuB,cAAvB;AAWA,SAASC,eAAT,QAAgC,0BAAhC;AAwBA,OAAOC,uBAAP,MAAoC,kCAApC;AAEA,OAAOC,mBAAP,MAAgC,8BAAhC;AAEA,OAAOC,6BAAP,MAA0C,wCAA1C;AAsCA,OAAOC,sBAAP,MAAmC,iCAAnC;AAgBA,OAAOC,aAAP,MAA0B,uBAA1B;AASA,OAAOC,aAAP,MAA0B,iBAA1B;AAEA,eAAeT,WAAf;AAEA,SAoBEA,WApBF,EAqBEG,eArBF,EAuBEF,WAvBF,EAiCEC,UAjCF,EAmCEE,uBAnCF,EAsCEC,mBAtCF,EAwCEC,6BAxCF,EAqEER,UArEF,EA4EEC,SA5EF,EAsFES,aAtFF,EA2FED,sBA3FF,EAwGEE,aAxGF","sourcesContent":["import type {\n IStoryBlockMethods,\n IStoryBlockProps,\n} from './components/StoryBlock';\nimport StoryBlock from './components/StoryBlock';\nimport type { IVideoFeedProps, VideoFeedMode } from './components/VideoFeed';\nimport VideoFeed from './components/VideoFeed';\nimport type {\n CustomCTAClickCallback,\n SDKInitCallback,\n VideoFeedClickCallback,\n VideoPlaybackCallback,\n} from './FireworkSDK';\nimport FireworkSDK from './FireworkSDK';\nimport FWNavigator from './FWNavigator';\nimport type {\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n} from './LiveStream';\nimport LiveStream from './LiveStream';\nimport type AdBadgeConfiguration from './models/AdBadgeConfiguration';\nimport type { AdBadgeTextType } from './models/AdBadgeConfiguration';\nimport type AdConfiguration from './models/AdConfiguration';\nimport type { VastAttribute } from './models/AdConfiguration';\nimport type AndroidFontInfo from './models/AndroidFontInfo';\nimport type ButtonInfo from './models/ButtonInfo';\nimport type CountdownTimerConfiguration from './models/CountdownTimerConfiguration';\nimport type { CountdownTimerAppearanceMode } from './models/CountdownTimerConfiguration';\nimport type { DataTrackingLevel } from './models/DataTrackingLevel';\nimport type FeedItemDetails from './models/FeedItemDetails';\nimport { FWComponentType } from './models/FWComponentType';\nimport type FWError from './models/FWError';\nimport type {\n ClickProductEvent,\n CustomClickCartIconEvent,\n CustomClickLinkButtonEvent,\n CustomCTAClickEvent,\n CustomTapProductCardEvent,\n LiveStreamChatEvent,\n LiveStreamEvent,\n PlayerHandler,\n SDKInitEvent,\n ShoppingCTAEvent,\n UpdateProductDetailsEvent,\n VideoFeedClickEvent,\n VideoPlaybackEvent,\n} from './models/FWEvents';\nimport type GradientDrawable from './models/GradientDrawable';\nimport type { GradientDrawableOrientation } from './models/GradientDrawable';\nimport type IOSFontInfo from './models/IOSFontInfo';\nimport type {\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n} from './models/IOSFontInfo';\nimport LiveStreamChatEventName from './models/LiveStreamChatEventName';\nimport type LiveStreamEventDetails from './models/LiveStreamEventDetails';\nimport LiveStreamEventName from './models/LiveStreamEventName';\nimport type LiveStreamMessageDetails from './models/LiveStreamMessageDetails';\nimport LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';\nimport type MarkInitCalledOptions from './models/MarkInitCalledOptions';\nimport type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';\nimport type Product from './models/Product';\nimport type ProductInfoViewConfiguration from './models/ProductInfoViewConfiguration';\nimport type {\n LinkButtonConfiguration,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n} from './models/ProductInfoViewConfiguration';\nimport type ProductUnit from './models/ProductUnit';\nimport type { ProductPrice, ProductUnitOption } from './models/ProductUnit';\nimport type PushRNContainerParams from './models/PushRNContainerParams';\nimport type { RNAppProps } from './models/PushRNContainerParams';\nimport type SDKInitOptions from './models/SDKInitOptions';\nimport type { VideoLaunchBehavior } from './models/SDKInitOptions';\nimport type ShoppingCTAResult from './models/ShoppingCTAResult';\nimport type { StoryBlockConfiguration } from './models/StoryBlockConfiguration';\nimport type { StoryBlockSource } from './models/StoryBlockSource';\nimport type TrackPurchaseParameters from './models/TrackPurchaseParameters';\nimport type VideoFeedConfiguration from './models/VideoFeedConfiguration';\nimport type {\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n} from './models/VideoFeedConfiguration';\nimport type { VideoFeedSource } from './models/VideoFeedSource';\nimport type VideoPlaybackDetails from './models/VideoPlaybackDetails';\nimport type { VideoPlayerSize } from './models/VideoPlaybackDetails';\nimport VideoPlaybackEventName from './models/VideoPlaybackEventName';\nimport type VideoPlayerButtonConfiguration from './models/VideoPlayerButtonConfiguration';\nimport type { VideoPlayerCompleteAction } from './models/VideoPlayerCompleteAction';\nimport type VideoPlayerConfiguration from './models/VideoPlayerConfiguration';\nimport type {\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n} from './models/VideoPlayerCTADelay';\nimport type { VideoPlayerCTAStyle } from './models/VideoPlayerCTAStyle';\nimport type { VideoPlayerCTAWidth } from './models/VideoPlayerCTAWidth';\nimport type { VideoPlayerLivestreamCountdownTimerTheme } from './models/VideoPlayerLivestreamCountdownTimerTheme';\nimport type {\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n} from './models/VideoPlayerLogoConfiguration';\nimport type { VideoPlayerStyle } from './models/VideoPlayerStyle';\nimport VideoFeedUtil from './utils/VideoFeedUtil';\nimport type {\n ClickProductCallback,\n CustomClickCartIconCallback,\n CustomClickLinkButtonCallback,\n CustomTapProductCardCallback,\n ShoppingCTACallback,\n UpdateProductDetailsCallback,\n} from './VideoShopping';\nimport VideoShopping from './VideoShopping';\n\nexport default FireworkSDK;\n\nexport {\n AdBadgeConfiguration,\n AdBadgeTextType,\n AdConfiguration,\n AndroidFontInfo,\n ButtonInfo,\n ClickProductCallback,\n ClickProductEvent,\n CountdownTimerAppearanceMode,\n CountdownTimerConfiguration,\n CustomClickCartIconCallback,\n CustomClickCartIconEvent,\n CustomClickLinkButtonCallback,\n CustomClickLinkButtonEvent,\n CustomCTAClickCallback,\n CustomCTAClickEvent,\n CustomTapProductCardCallback,\n CustomTapProductCardEvent,\n DataTrackingLevel,\n FeedItemDetails,\n FireworkSDK,\n FWComponentType,\n FWError,\n FWNavigator,\n GradientDrawable,\n GradientDrawableOrientation,\n IOSFontInfo,\n IOSSystemFontStyle,\n IOSSystemFontWeight,\n IStoryBlockMethods,\n IStoryBlockProps,\n IVideoFeedProps,\n LinkButtonConfiguration,\n LiveStream,\n LiveStreamChatEvent,\n LiveStreamChatEventName,\n LiveStreamEvent,\n LiveStreamEventDetails,\n LiveStreamEventName,\n LiveStreamMessageDetails,\n LivestreamPlayerDesignVersion,\n MarkInitCalledOptions,\n onLiveStreamChatEventCallback,\n onLiveStreamEventCallback,\n OpenVideoPlayerConfiguration,\n PlayerHandler,\n Product,\n ProductCardConfiguration,\n ProductCardCTAButtonStyle,\n ProductCardCTAButtonText,\n ProductCardIconConfiguration,\n ProductCardLabelConfiguration,\n ProductCardPriceConfiguration,\n ProductCardPriceLabelAxis,\n ProductCardTheme,\n ProductInfoViewConfiguration,\n ProductPrice,\n ProductUnit,\n ProductUnitOption,\n PushRNContainerParams,\n RNAppProps,\n SDKInitCallback,\n SDKInitEvent,\n SDKInitOptions,\n ShoppingCTAButtonConfiguration,\n ShoppingCTAButtonText,\n ShoppingCTACallback,\n ShoppingCTAEvent,\n ShoppingCTAResult,\n StoryBlock,\n StoryBlockConfiguration,\n StoryBlockSource,\n TrackPurchaseParameters,\n UpdateProductDetailsCallback,\n UpdateProductDetailsEvent,\n VastAttribute,\n VideoFeed,\n VideoFeedClickCallback,\n VideoFeedClickEvent,\n VideoFeedConfiguration,\n VideoFeedMode,\n VideoFeedPadding,\n VideoFeedPlayIconConfiguration,\n VideoFeedSource,\n VideoFeedTitleConfiguration,\n VideoFeedTitlePosition,\n VideoFeedUtil,\n VideoLaunchBehavior,\n VideoPlaybackCallback,\n VideoPlaybackDetails,\n VideoPlaybackEvent,\n VideoPlaybackEventName,\n VideoPlayerButtonConfiguration,\n VideoPlayerCompleteAction,\n VideoPlayerConfiguration,\n VideoPlayerCTADelay,\n VideoPlayerCTADelayType,\n VideoPlayerCTAStyle,\n VideoPlayerCTAWidth,\n VideoPlayerLivestreamCountdownTimerTheme,\n VideoPlayerLogoConfiguration,\n VideoPlayerLogoOption,\n VideoPlayerSize,\n VideoPlayerStyle,\n VideoShopping,\n};\n"]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=MarkInitCalledOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -4,6 +4,7 @@ import type AdBadgeConfiguration from './models/AdBadgeConfiguration';
4
4
  import type { DataTrackingLevel } from './models/DataTrackingLevel';
5
5
  import type { CustomCTAClickEvent, SDKInitEvent, VideoFeedClickEvent, VideoPlaybackEvent } from './models/FWEvents';
6
6
  import LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';
7
+ import type MarkInitCalledOptions from './models/MarkInitCalledOptions';
7
8
  import type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';
8
9
  import type SDKInitOptions from './models/SDKInitOptions';
9
10
  import type { VideoLaunchBehavior } from './models/SDKInitOptions';
@@ -107,15 +108,10 @@ declare class FireworkSDK {
107
108
  */
108
109
  init(options?: SDKInitOptions): Promise<void>;
109
110
  /**
110
- * You only need to call this method when you call init method in native side instead of JS side.
111
+ * Mark the initialization method as being called on the JS side.
112
+ * @param {MarkInitCalledOptions} options
111
113
  */
112
- /**
113
- * You need to call this method when you call init method in native side.
114
- * @param nativeLazyInit
115
- * Genenally, you should call naitve init in application(:, didFinishLaunchingWithOptions:) -> Bool on iOS
116
- * and MainApplication.onCreate on Android. If not, you should pass nativeLazyInit as true.
117
- */
118
- markInitCalled(nativeLazyInit?: boolean): Promise<void>;
114
+ markInitCalled(options?: MarkInitCalledOptions): Promise<void>;
119
115
  /**
120
116
  * Open Video URL.
121
117
  * @param {string} url
@@ -29,6 +29,7 @@ import type LiveStreamEventDetails from './models/LiveStreamEventDetails';
29
29
  import LiveStreamEventName from './models/LiveStreamEventName';
30
30
  import type LiveStreamMessageDetails from './models/LiveStreamMessageDetails';
31
31
  import LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';
32
+ import type MarkInitCalledOptions from './models/MarkInitCalledOptions';
32
33
  import type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';
33
34
  import type Product from './models/Product';
34
35
  import type ProductInfoViewConfiguration from './models/ProductInfoViewConfiguration';
@@ -62,4 +63,4 @@ import VideoFeedUtil from './utils/VideoFeedUtil';
62
63
  import type { ClickProductCallback, CustomClickCartIconCallback, CustomClickLinkButtonCallback, CustomTapProductCardCallback, ShoppingCTACallback, UpdateProductDetailsCallback } from './VideoShopping';
63
64
  import VideoShopping from './VideoShopping';
64
65
  export default FireworkSDK;
65
- export { AdBadgeConfiguration, AdBadgeTextType, AdConfiguration, AndroidFontInfo, ButtonInfo, ClickProductCallback, ClickProductEvent, CountdownTimerAppearanceMode, CountdownTimerConfiguration, CustomClickCartIconCallback, CustomClickCartIconEvent, CustomClickLinkButtonCallback, CustomClickLinkButtonEvent, CustomCTAClickCallback, CustomCTAClickEvent, CustomTapProductCardCallback, CustomTapProductCardEvent, DataTrackingLevel, FeedItemDetails, FireworkSDK, FWComponentType, FWError, FWNavigator, GradientDrawable, GradientDrawableOrientation, IOSFontInfo, IOSSystemFontStyle, IOSSystemFontWeight, IStoryBlockMethods, IStoryBlockProps, IVideoFeedProps, LinkButtonConfiguration, LiveStream, LiveStreamChatEvent, LiveStreamChatEventName, LiveStreamEvent, LiveStreamEventDetails, LiveStreamEventName, LiveStreamMessageDetails, LivestreamPlayerDesignVersion, onLiveStreamChatEventCallback, onLiveStreamEventCallback, OpenVideoPlayerConfiguration, PlayerHandler, Product, ProductCardConfiguration, ProductCardCTAButtonStyle, ProductCardCTAButtonText, ProductCardIconConfiguration, ProductCardLabelConfiguration, ProductCardPriceConfiguration, ProductCardPriceLabelAxis, ProductCardTheme, ProductInfoViewConfiguration, ProductPrice, ProductUnit, ProductUnitOption, PushRNContainerParams, RNAppProps, SDKInitCallback, SDKInitEvent, SDKInitOptions, ShoppingCTAButtonConfiguration, ShoppingCTAButtonText, ShoppingCTACallback, ShoppingCTAEvent, ShoppingCTAResult, StoryBlock, StoryBlockConfiguration, StoryBlockSource, TrackPurchaseParameters, UpdateProductDetailsCallback, UpdateProductDetailsEvent, VastAttribute, VideoFeed, VideoFeedClickCallback, VideoFeedClickEvent, VideoFeedConfiguration, VideoFeedMode, VideoFeedPadding, VideoFeedPlayIconConfiguration, VideoFeedSource, VideoFeedTitleConfiguration, VideoFeedTitlePosition, VideoFeedUtil, VideoLaunchBehavior, VideoPlaybackCallback, VideoPlaybackDetails, VideoPlaybackEvent, VideoPlaybackEventName, VideoPlayerButtonConfiguration, VideoPlayerCompleteAction, VideoPlayerConfiguration, VideoPlayerCTADelay, VideoPlayerCTADelayType, VideoPlayerCTAStyle, VideoPlayerCTAWidth, VideoPlayerLivestreamCountdownTimerTheme, VideoPlayerLogoConfiguration, VideoPlayerLogoOption, VideoPlayerSize, VideoPlayerStyle, VideoShopping, };
66
+ export { AdBadgeConfiguration, AdBadgeTextType, AdConfiguration, AndroidFontInfo, ButtonInfo, ClickProductCallback, ClickProductEvent, CountdownTimerAppearanceMode, CountdownTimerConfiguration, CustomClickCartIconCallback, CustomClickCartIconEvent, CustomClickLinkButtonCallback, CustomClickLinkButtonEvent, CustomCTAClickCallback, CustomCTAClickEvent, CustomTapProductCardCallback, CustomTapProductCardEvent, DataTrackingLevel, FeedItemDetails, FireworkSDK, FWComponentType, FWError, FWNavigator, GradientDrawable, GradientDrawableOrientation, IOSFontInfo, IOSSystemFontStyle, IOSSystemFontWeight, IStoryBlockMethods, IStoryBlockProps, IVideoFeedProps, LinkButtonConfiguration, LiveStream, LiveStreamChatEvent, LiveStreamChatEventName, LiveStreamEvent, LiveStreamEventDetails, LiveStreamEventName, LiveStreamMessageDetails, LivestreamPlayerDesignVersion, MarkInitCalledOptions, onLiveStreamChatEventCallback, onLiveStreamEventCallback, OpenVideoPlayerConfiguration, PlayerHandler, Product, ProductCardConfiguration, ProductCardCTAButtonStyle, ProductCardCTAButtonText, ProductCardIconConfiguration, ProductCardLabelConfiguration, ProductCardPriceConfiguration, ProductCardPriceLabelAxis, ProductCardTheme, ProductInfoViewConfiguration, ProductPrice, ProductUnit, ProductUnitOption, PushRNContainerParams, RNAppProps, SDKInitCallback, SDKInitEvent, SDKInitOptions, ShoppingCTAButtonConfiguration, ShoppingCTAButtonText, ShoppingCTACallback, ShoppingCTAEvent, ShoppingCTAResult, StoryBlock, StoryBlockConfiguration, StoryBlockSource, TrackPurchaseParameters, UpdateProductDetailsCallback, UpdateProductDetailsEvent, VastAttribute, VideoFeed, VideoFeedClickCallback, VideoFeedClickEvent, VideoFeedConfiguration, VideoFeedMode, VideoFeedPadding, VideoFeedPlayIconConfiguration, VideoFeedSource, VideoFeedTitleConfiguration, VideoFeedTitlePosition, VideoFeedUtil, VideoLaunchBehavior, VideoPlaybackCallback, VideoPlaybackDetails, VideoPlaybackEvent, VideoPlaybackEventName, VideoPlayerButtonConfiguration, VideoPlayerCompleteAction, VideoPlayerConfiguration, VideoPlayerCTADelay, VideoPlayerCTADelayType, VideoPlayerCTAStyle, VideoPlayerCTAWidth, VideoPlayerLivestreamCountdownTimerTheme, VideoPlayerLogoConfiguration, VideoPlayerLogoOption, VideoPlayerSize, VideoPlayerStyle, VideoShopping, };
@@ -0,0 +1,6 @@
1
+ export default interface MarkInitCalledOptions {
2
+ /**
3
+ * Whether to directly call native init method.
4
+ */
5
+ directlyCallNativeInit: boolean;
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-firework-sdk",
3
- "version": "2.15.1",
3
+ "version": "2.15.3",
4
4
  "description": "Firework React Native SDK",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -33,6 +33,6 @@ fi
33
33
  s.static_framework = true
34
34
 
35
35
  s.dependency 'React-Core'
36
- s.dependency 'FireworkVideoUI', '0.2.13'
37
- s.dependency 'FireworkVideo', '1.28.0'
36
+ s.dependency 'FireworkVideoUI', '0.2.14'
37
+ s.dependency 'FireworkVideo', '1.28.3'
38
38
  end
@@ -12,6 +12,7 @@ import type {
12
12
  VideoPlaybackEvent,
13
13
  } from './models/FWEvents';
14
14
  import LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';
15
+ import type MarkInitCalledOptions from './models/MarkInitCalledOptions';
15
16
  import type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';
16
17
  import type SDKInitOptions from './models/SDKInitOptions';
17
18
  import type { VideoLaunchBehavior } from './models/SDKInitOptions';
@@ -320,23 +321,22 @@ class FireworkSDK {
320
321
  }
321
322
 
322
323
  /**
323
- * You only need to call this method when you call init method in native side instead of JS side.
324
+ * Mark the initialization method as being called on the JS side.
325
+ * @param {MarkInitCalledOptions} options
324
326
  */
325
- /**
326
- * You need to call this method when you call init method in native side.
327
- * @param nativeLazyInit
328
- * Genenally, you should call naitve init in application(:, didFinishLaunchingWithOptions:) -> Bool on iOS
329
- * and MainApplication.onCreate on Android. If not, you should pass nativeLazyInit as true.
330
- */
331
- public async markInitCalled(nativeLazyInit: boolean = false): Promise<void> {
327
+ public async markInitCalled(
328
+ options: MarkInitCalledOptions = {
329
+ directlyCallNativeInit: false,
330
+ }
331
+ ): Promise<void> {
332
332
  FWLoggerUtil.log('Call FireworkSDK markInitCalled method');
333
- if (!nativeLazyInit) {
334
- await this.completeRemainingInitialization();
333
+ if (options.directlyCallNativeInit) {
334
+ await this.completeRemainingInitialization(options);
335
335
  await FireworkSDKModule.markInitCalled();
336
336
  } else {
337
337
  const hasCalledSDKInit = await FireworkSDKModule.markInitCalled();
338
338
  if (hasCalledSDKInit) {
339
- await this.completeRemainingInitialization();
339
+ await this.completeRemainingInitialization(options);
340
340
  }
341
341
  }
342
342
  }
@@ -418,14 +418,20 @@ class FireworkSDK {
418
418
  });
419
419
  }
420
420
 
421
- private async completeRemainingInitialization(): Promise<void> {
421
+ private async completeRemainingInitialization(
422
+ options: MarkInitCalledOptions = {
423
+ directlyCallNativeInit: false,
424
+ }
425
+ ): Promise<void> {
422
426
  if (FWGlobalState.getInstance().sdkInitCalled) {
423
427
  return;
424
428
  }
425
429
 
426
430
  FWGlobalState.getInstance().resolveSdkInitCalled();
427
- await ShoppingModule.init();
428
- await LiveStreamModule.init();
431
+ if (!options.directlyCallNativeInit) {
432
+ await ShoppingModule.init();
433
+ await LiveStreamModule.init();
434
+ }
429
435
  }
430
436
  }
431
437
 
package/src/index.ts CHANGED
@@ -57,6 +57,7 @@ import type LiveStreamEventDetails from './models/LiveStreamEventDetails';
57
57
  import LiveStreamEventName from './models/LiveStreamEventName';
58
58
  import type LiveStreamMessageDetails from './models/LiveStreamMessageDetails';
59
59
  import LivestreamPlayerDesignVersion from './models/LivestreamPlayerDesignVersion';
60
+ import type MarkInitCalledOptions from './models/MarkInitCalledOptions';
60
61
  import type OpenVideoPlayerConfiguration from './models/OpenVideoPlayerConfiguration';
61
62
  import type Product from './models/Product';
62
63
  import type ProductInfoViewConfiguration from './models/ProductInfoViewConfiguration';
@@ -163,6 +164,7 @@ export {
163
164
  LiveStreamEventName,
164
165
  LiveStreamMessageDetails,
165
166
  LivestreamPlayerDesignVersion,
167
+ MarkInitCalledOptions,
166
168
  onLiveStreamChatEventCallback,
167
169
  onLiveStreamEventCallback,
168
170
  OpenVideoPlayerConfiguration,
@@ -0,0 +1,6 @@
1
+ export default interface MarkInitCalledOptions {
2
+ /**
3
+ * Whether to directly call native init method.
4
+ */
5
+ directlyCallNativeInit: boolean;
6
+ }