react-native-firework-sdk 2.1.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FireworkVideoUI.xcframework/Info.plist +40 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/FireworkVideoUI +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Headers/FireworkVideoUI-Swift.h +280 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Headers/FireworkVideoUI.h +18 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Info.plist +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios.abi.json +1327 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios.private.swiftinterface +41 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios.swiftinterface +41 -0
- package/FireworkVideoUI.xcframework/ios-arm64/FireworkVideoUI.framework/Modules/module.modulemap +11 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/FireworkVideoUI +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Headers/FireworkVideoUI-Swift.h +556 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Headers/FireworkVideoUI.h +18 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Info.plist +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.abi.json +1327 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +41 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftinterface +41 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.abi.json +1327 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +41 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +41 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/Modules/module.modulemap +11 -0
- package/FireworkVideoUI.xcframework/ios-arm64_x86_64-simulator/FireworkVideoUI.framework/_CodeSignature/CodeResources +245 -0
- package/README.md +1 -1
- package/android/build.gradle +1 -2
- package/android/src/main/java/com/fireworksdk/bridge/components/videofeed/FWVideoFeed.kt +6 -0
- package/android/src/main/java/com/fireworksdk/bridge/components/videofeed/StoryBlockFrameLayout.kt +6 -0
- package/android/src/main/java/com/fireworksdk/bridge/models/FWAdBadgeConfigModelDeserializer.kt +3 -3
- package/android/src/main/java/com/fireworksdk/bridge/models/FWEventName.kt +3 -0
- package/android/src/main/java/com/fireworksdk/bridge/models/FWFontInfoModelDeserializer.kt +1 -1
- package/android/src/main/java/com/fireworksdk/bridge/models/FWProductInfoViewConfigurationDeserializer.kt +10 -6
- package/android/src/main/java/com/fireworksdk/bridge/models/FWSDKInitOptionsModelDeserializer.kt +3 -3
- package/android/src/main/java/com/fireworksdk/bridge/models/FWShoppingCtaResultDeserializer.kt +2 -2
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoFeedConfigModelDeserializer.kt +14 -12
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoFeedPropsModel.kt +1 -0
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoFeedPropsModelDeserializer.kt +11 -7
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoFeedSource.kt +1 -0
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoPlaybackDetails.kt +8 -8
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoPlayerConfigModel.kt +1 -0
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoPlayerConfigModelDeserializer.kt +19 -12
- package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoShoppingProductDeserializer.kt +11 -11
- package/android/src/main/java/com/fireworksdk/bridge/reactnative/manager/FWStoryBlockManager.kt +5 -0
- package/android/src/main/java/com/fireworksdk/bridge/reactnative/manager/FWVideoFeedManager.kt +5 -0
- package/android/src/main/java/com/fireworksdk/bridge/reactnative/module/FWLiveStreamModule.kt +45 -4
- package/android/src/main/java/com/fireworksdk/bridge/reactnative/module/FWVideoShoppingModule.kt +2 -0
- package/android/src/main/java/com/fireworksdk/bridge/reactnative/module/FireworkSDKModule.kt +112 -36
- package/android/src/main/java/com/fireworksdk/bridge/reactnative/utils/FWEventUtils.kt +7 -4
- package/android/src/main/java/com/fireworksdk/bridge/utils/FWConfigUtil.kt +26 -32
- package/android/src/main/java/com/fireworksdk/bridge/utils/FWGlobalDataUtil.kt +6 -0
- package/ios/Components/StoryBlock.swift +5 -6
- package/ios/Components/StoryBlockManager.m +1 -0
- package/ios/Components/StoryBlockManager.swift +4 -0
- package/ios/Components/VideoFeed.swift +12 -8
- package/ios/Components/VideoFeedManager.m +1 -0
- package/ios/Components/VideoFeedManager.swift +4 -0
- package/ios/Components/VideoPlayerConfiguration.swift +1 -0
- package/ios/FireworkSdk.xcodeproj/project.pbxproj +261 -471
- package/ios/FireworkVideoUI/FireworkVideoUI/FireworkVideoUI.docc/FireworkVideoUI.md +13 -0
- package/ios/FireworkVideoUI/FireworkVideoUI/FireworkVideoUI.h +18 -0
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/AppLanguageManager.swift +147 -0
- package/ios/{Utils/AppLanguage/Bundle+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/Foundation/Bundle+AppLanguage.swift} +7 -7
- package/ios/{Utils/AppLanguage/NumberFormatter+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/Foundation/NumberFormatter+AppLanguage.swift} +5 -5
- package/ios/{Utils/AppLanguage/URLSession+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/Foundation/URLSession+AppLanguage.swift} +7 -7
- package/ios/{Utils/AppLanguage/UIImageView+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UIImageView+AppLanguage.swift} +8 -8
- package/ios/{Utils/AppLanguage/UILabel+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UILabel+AppLanguage.swift} +17 -17
- package/ios/{Utils/AppLanguage/UITextField+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UITextField+AppLanguage.swift} +16 -16
- package/ios/{Utils/AppLanguage/UITextView+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UITextView+AppLanguage.swift} +16 -16
- package/ios/{Utils/AppLanguage/UIView+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UIView+AppLanguage.swift} +7 -7
- package/ios/{Utils/AppLanguage/UIViewController+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UIViewController+AppLanguage.swift} +19 -5
- package/ios/{Utils/AppLanguage/UIWindow+FWSwizzle.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/Extensions/UIKit/UIWindow+AppLanguage.swift} +5 -5
- package/ios/{Utils/AppLanguage/FWLanguageUtil.swift → FireworkVideoUI/FireworkVideoUI/Sources/AppLanguage/LanguageUtil.swift} +4 -4
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/LayoutFlip/Extensions/Foundation/NSObject+LayoutFlip.swift +42 -0
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/LayoutFlip/Extensions/UIKit/CALayer+LayoutFlip.swift +160 -0
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/LayoutFlip/Extensions/UIKit/UILabel+LayoutFlip.swift +35 -0
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/LayoutFlip/Extensions/UIKit/UIView+LayoutFlip.swift +199 -0
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/LayoutFlip/LayoutFlipManager.swift +59 -0
- package/ios/{Utils/Extensions/DispatchQueue+FWOnce.swift → FireworkVideoUI/FireworkVideoUI/Sources/Utils/Extensions/Foundation/DispatchQueue+Once.swift} +4 -4
- package/ios/FireworkVideoUI/FireworkVideoUI/Sources/Utils/Extensions/Foundation/String+Base64.swift +18 -0
- package/ios/{Utils/Extensions/UIView+FWUIHierarchy.swift → FireworkVideoUI/FireworkVideoUI/Sources/Utils/Extensions/UIKit/UIView+UIHierarchy.swift} +4 -5
- package/ios/{Utils/FWSwizzleUtil.swift → FireworkVideoUI/FireworkVideoUI/Sources/Utils/Swizzle.swift} +2 -2
- package/ios/FireworkVideoUI/FireworkVideoUI.xcodeproj/project.pbxproj +766 -0
- package/ios/FireworkVideoUI/FireworkVideoUI.xcworkspace/contents.xcworkspacedata +10 -0
- package/ios/FireworkVideoUI/FireworkVideoUI.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/FireworkVideoUI/FireworkVideoUITests/FireworkVideoUITests.swift +37 -0
- package/ios/FireworkVideoUI/Podfile +15 -0
- package/ios/FireworkVideoUI/Podfile.lock +16 -0
- package/ios/Models/NativeToRN/FireworkEventName.swift +4 -0
- package/ios/Models/NativeToRN/FireworkSDK+Json.swift +5 -1
- package/ios/Models/RNToNative/RCTConvert+StoryBlock.swift +2 -1
- package/ios/Models/RNToNative/RCTConvert+VideoFeed.swift +2 -1
- package/ios/Modules/FWNavigatorModule/FWNavigatorModule.swift +8 -100
- package/ios/Modules/FireworkSDKModule/FireworkSDKModule+EventTracking.swift +34 -16
- package/ios/Modules/FireworkSDKModule/FireworkSDKModule.swift +23 -7
- package/ios/Modules/FireworkSDKModule/SDKInitOptions.swift +0 -1
- package/ios/Modules/LiveStream/LiveStreamModule.swift +1 -0
- package/ios/Modules/Shopping/ProductInfoViewConfiguration.swift +0 -8
- package/ios/Modules/Shopping/ShoppingModule.swift +0 -18
- package/ios/Support/MultiHostStreaming/FWMultiHostStreaming.podspec +4 -6
- package/ios/Utils/Extensions/Swizzle/UINavigationController+FWSwizzle.swift +4 -1
- package/ios/scripts/react_native_firework_sdk_pods.rb +22 -26
- package/lib/commonjs/FireworkSDK.js +40 -17
- package/lib/commonjs/FireworkSDK.js.map +1 -1
- package/lib/commonjs/LiveStream.js +2 -2
- package/lib/commonjs/LiveStream.js.map +1 -1
- package/lib/commonjs/VideoShopping.js +1 -1
- package/lib/commonjs/VideoShopping.js.map +1 -1
- package/lib/commonjs/components/StoryBlock.js +9 -9
- package/lib/commonjs/components/StoryBlock.js.map +1 -1
- package/lib/commonjs/components/VideoFeed.js +6 -4
- package/lib/commonjs/components/VideoFeed.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/FWEventName.js +1 -0
- package/lib/commonjs/models/FWEventName.js.map +1 -1
- package/lib/commonjs/models/VideoPlaybackEventName.js +3 -0
- package/lib/commonjs/models/VideoPlaybackEventName.js.map +1 -1
- package/lib/module/FireworkSDK.js +39 -17
- package/lib/module/FireworkSDK.js.map +1 -1
- package/lib/module/LiveStream.js +2 -2
- package/lib/module/LiveStream.js.map +1 -1
- package/lib/module/VideoShopping.js +1 -1
- package/lib/module/VideoShopping.js.map +1 -1
- package/lib/module/components/StoryBlock.js +9 -7
- package/lib/module/components/StoryBlock.js.map +1 -1
- package/lib/module/components/VideoFeed.js +6 -4
- package/lib/module/components/VideoFeed.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/FWEventName.js +1 -0
- package/lib/module/models/FWEventName.js.map +1 -1
- package/lib/module/models/VideoPlaybackEventName.js +3 -0
- package/lib/module/models/VideoPlaybackEventName.js.map +1 -1
- package/lib/typescript/FireworkSDK.d.ts +8 -4
- package/lib/typescript/LiveStream.d.ts +2 -2
- package/lib/typescript/VideoShopping.d.ts +1 -1
- package/lib/typescript/components/StoryBlock.d.ts +7 -0
- package/lib/typescript/components/VideoFeed.d.ts +7 -0
- package/lib/typescript/index.d.ts +2 -2
- package/lib/typescript/models/FWEventName.d.ts +1 -0
- package/lib/typescript/models/ProductInfoViewConfiguration.d.ts +0 -31
- package/lib/typescript/models/SDKInitOptions.d.ts +6 -1
- package/lib/typescript/models/StoryBlockSource.d.ts +1 -1
- package/lib/typescript/models/VideoFeedSource.d.ts +1 -1
- package/lib/typescript/models/VideoPlaybackDetails.d.ts +16 -0
- package/lib/typescript/models/VideoPlaybackEventName.d.ts +13 -1
- package/lib/typescript/models/VideoPlayerConfiguration.d.ts +4 -0
- package/package.json +7 -2
- package/react-native-firework-sdk.podspec +10 -5
- package/src/FireworkSDK.ts +41 -15
- package/src/LiveStream.ts +2 -2
- package/src/VideoShopping.ts +1 -1
- package/src/components/StoryBlock.tsx +12 -3
- package/src/components/VideoFeed.tsx +12 -4
- package/src/index.ts +0 -2
- package/src/models/FWEventName.ts +1 -0
- package/src/models/ProductInfoViewConfiguration.ts +0 -32
- package/src/models/SDKInitOptions.ts +6 -1
- package/src/models/StoryBlockSource.ts +2 -1
- package/src/models/VideoFeedSource.ts +2 -1
- package/src/models/VideoPlaybackDetails.ts +16 -0
- package/src/models/VideoPlaybackEventName.ts +13 -1
- package/src/models/VideoPlayerConfiguration.ts +4 -0
- package/ios/Utils/AppLanguage/FWAppLanguageManager.swift +0 -139
- package/ios/Utils/FWRTL/Classes/Manager/FWRTLManager.h +0 -25
- package/ios/Utils/FWRTL/Classes/Manager/FWRTLManager.m +0 -75
- package/ios/Utils/FWRTL/Classes/UICategories/CALayer+FWRTL.h +0 -21
- package/ios/Utils/FWRTL/Classes/UICategories/CALayer+FWRTL.m +0 -124
- package/ios/Utils/FWRTL/Classes/UICategories/FWRTLRemoteViewControllerAdaptor.h +0 -11
- package/ios/Utils/FWRTL/Classes/UICategories/FWRTLRemoteViewControllerAdaptor.m +0 -86
- package/ios/Utils/FWRTL/Classes/UICategories/FWRTLWhiteListManager.h +0 -16
- package/ios/Utils/FWRTL/Classes/UICategories/FWRTLWhiteListManager.m +0 -55
- package/ios/Utils/FWRTL/Classes/UICategories/UILabel+FWRTL.h +0 -18
- package/ios/Utils/FWRTL/Classes/UICategories/UILabel+FWRTL.m +0 -39
- package/ios/Utils/FWRTL/Classes/UICategories/UIView+FWRTL.h +0 -54
- package/ios/Utils/FWRTL/Classes/UICategories/UIView+FWRTL.m +0 -141
- package/ios/Utils/FWRTL/Classes/UICategories/UIWindow+FWRTL.h +0 -16
- package/ios/Utils/FWRTL/Classes/UICategories/UIWindow+FWRTL.m +0 -20
- package/ios/Utils/FWRTL/Classes/Utils/FWRTLDefinitions.h +0 -52
- package/ios/Utils/FWRTL/Classes/Utils/NSObject+FWRTLReloadBlock.h +0 -19
- package/ios/Utils/FWRTL/Classes/Utils/NSObject+FWRTLReloadBlock.m +0 -49
- package/ios/Utils/FWRTL/Classes/Utils/NSString+FWRTL.h +0 -21
- package/ios/Utils/FWRTL/Classes/Utils/NSString+FWRTL.m +0 -38
- package/ios/Utils/FWRTL/Classes/Utils/UIImage+FWRTL.h +0 -18
- package/ios/Utils/FWRTL/Classes/Utils/UIImage+FWRTL.m +0 -43
- /package/ios/Support/MultiHostStreaming/{src → Sources}/MultiHostStreamingSDK.swift +0 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// swift-interface-format-version: 1.0
|
|
2
|
+
// swift-compiler-version: Apple Swift version 5.7.2 (swiftlang-5.7.2.135.5 clang-1400.0.29.51)
|
|
3
|
+
// swift-module-flags: -target x86_64-apple-ios12.1-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name FireworkVideoUI
|
|
4
|
+
// swift-module-flags-ignorable: -enable-bare-slash-regex
|
|
5
|
+
import FireworkVideo
|
|
6
|
+
@_exported import FireworkVideoUI
|
|
7
|
+
import Foundation
|
|
8
|
+
import Swift
|
|
9
|
+
import UIKit
|
|
10
|
+
import WebKit
|
|
11
|
+
import _Concurrency
|
|
12
|
+
import _StringProcessing
|
|
13
|
+
extension Dispatch.DispatchQueue {
|
|
14
|
+
public class func once(file: Swift.String = #file, function: Swift.String = #function, line: Swift.Int = #line, block: () -> Swift.Void)
|
|
15
|
+
public class func once(token: Swift.String, block: () -> Swift.Void)
|
|
16
|
+
}
|
|
17
|
+
extension UIKit.UIView {
|
|
18
|
+
@_Concurrency.MainActor(unsafe) public var parentViewController: UIKit.UIViewController? {
|
|
19
|
+
get
|
|
20
|
+
}
|
|
21
|
+
@_Concurrency.MainActor(unsafe) public var isIOSSDKView: Swift.Bool {
|
|
22
|
+
get
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
@_hasMissingDesignatedInitializers public class Swizzle {
|
|
26
|
+
public static func swizzleSelector(cls: Swift.AnyClass, originalSelector: ObjectiveC.Selector, customSelector: ObjectiveC.Selector)
|
|
27
|
+
public static func swizzleClassSelector(cls: Swift.AnyClass, originalSelector: ObjectiveC.Selector, customSelector: ObjectiveC.Selector)
|
|
28
|
+
@objc deinit
|
|
29
|
+
}
|
|
30
|
+
@_hasMissingDesignatedInitializers public class AppLanguageManager {
|
|
31
|
+
public struct NotificationName {
|
|
32
|
+
public static let AppLanguageChanged: Foundation.Notification.Name
|
|
33
|
+
}
|
|
34
|
+
public static let shared: FireworkVideoUI.AppLanguageManager
|
|
35
|
+
public var appLanguage: Swift.String? {
|
|
36
|
+
get
|
|
37
|
+
}
|
|
38
|
+
@discardableResult
|
|
39
|
+
public func changeAppLanguage(_ language: Swift.String?) -> Swift.Bool
|
|
40
|
+
@objc deinit
|
|
41
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// swift-interface-format-version: 1.0
|
|
2
|
+
// swift-compiler-version: Apple Swift version 5.7.2 (swiftlang-5.7.2.135.5 clang-1400.0.29.51)
|
|
3
|
+
// swift-module-flags: -target x86_64-apple-ios12.1-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name FireworkVideoUI
|
|
4
|
+
// swift-module-flags-ignorable: -enable-bare-slash-regex
|
|
5
|
+
import FireworkVideo
|
|
6
|
+
@_exported import FireworkVideoUI
|
|
7
|
+
import Foundation
|
|
8
|
+
import Swift
|
|
9
|
+
import UIKit
|
|
10
|
+
import WebKit
|
|
11
|
+
import _Concurrency
|
|
12
|
+
import _StringProcessing
|
|
13
|
+
extension Dispatch.DispatchQueue {
|
|
14
|
+
public class func once(file: Swift.String = #file, function: Swift.String = #function, line: Swift.Int = #line, block: () -> Swift.Void)
|
|
15
|
+
public class func once(token: Swift.String, block: () -> Swift.Void)
|
|
16
|
+
}
|
|
17
|
+
extension UIKit.UIView {
|
|
18
|
+
@_Concurrency.MainActor(unsafe) public var parentViewController: UIKit.UIViewController? {
|
|
19
|
+
get
|
|
20
|
+
}
|
|
21
|
+
@_Concurrency.MainActor(unsafe) public var isIOSSDKView: Swift.Bool {
|
|
22
|
+
get
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
@_hasMissingDesignatedInitializers public class Swizzle {
|
|
26
|
+
public static func swizzleSelector(cls: Swift.AnyClass, originalSelector: ObjectiveC.Selector, customSelector: ObjectiveC.Selector)
|
|
27
|
+
public static func swizzleClassSelector(cls: Swift.AnyClass, originalSelector: ObjectiveC.Selector, customSelector: ObjectiveC.Selector)
|
|
28
|
+
@objc deinit
|
|
29
|
+
}
|
|
30
|
+
@_hasMissingDesignatedInitializers public class AppLanguageManager {
|
|
31
|
+
public struct NotificationName {
|
|
32
|
+
public static let AppLanguageChanged: Foundation.Notification.Name
|
|
33
|
+
}
|
|
34
|
+
public static let shared: FireworkVideoUI.AppLanguageManager
|
|
35
|
+
public var appLanguage: Swift.String? {
|
|
36
|
+
get
|
|
37
|
+
}
|
|
38
|
+
@discardableResult
|
|
39
|
+
public func changeAppLanguage(_ language: Swift.String?) -> Swift.Bool
|
|
40
|
+
@objc deinit
|
|
41
|
+
}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>files</key>
|
|
6
|
+
<dict>
|
|
7
|
+
<key>Headers/FireworkVideoUI-Swift.h</key>
|
|
8
|
+
<data>
|
|
9
|
+
i583HibrN7k0YmXoCN8LIDbmSt4=
|
|
10
|
+
</data>
|
|
11
|
+
<key>Headers/FireworkVideoUI.h</key>
|
|
12
|
+
<data>
|
|
13
|
+
NRZg85mNKv6PczcMet582mQjwKE=
|
|
14
|
+
</data>
|
|
15
|
+
<key>Info.plist</key>
|
|
16
|
+
<data>
|
|
17
|
+
FtJGot0fSLaAkiHWZqUC+MKO2RM=
|
|
18
|
+
</data>
|
|
19
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
|
|
20
|
+
<data>
|
|
21
|
+
Au+a1vc6m45SBkvfSdh3UT+uM2E=
|
|
22
|
+
</data>
|
|
23
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
|
|
24
|
+
<data>
|
|
25
|
+
h6vJW+NP0+gY51ZhP57nW392cYk=
|
|
26
|
+
</data>
|
|
27
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
|
|
28
|
+
<data>
|
|
29
|
+
atyRF4RCvp3Q7O/mp4rYXB1jE0Q=
|
|
30
|
+
</data>
|
|
31
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftinterface</key>
|
|
32
|
+
<data>
|
|
33
|
+
h6vJW+NP0+gY51ZhP57nW392cYk=
|
|
34
|
+
</data>
|
|
35
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
|
|
36
|
+
<data>
|
|
37
|
+
GstdOocn005n9Y9BSuCOjaZ/KBo=
|
|
38
|
+
</data>
|
|
39
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
|
|
40
|
+
<data>
|
|
41
|
+
Au+a1vc6m45SBkvfSdh3UT+uM2E=
|
|
42
|
+
</data>
|
|
43
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
|
|
44
|
+
<data>
|
|
45
|
+
y0ggQlQYk8fPmRZJgyJe3Ma5o+w=
|
|
46
|
+
</data>
|
|
47
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
|
|
48
|
+
<data>
|
|
49
|
+
JazAtiVxFvmfMtiCcVLmAg7e1KM=
|
|
50
|
+
</data>
|
|
51
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftinterface</key>
|
|
52
|
+
<data>
|
|
53
|
+
y0ggQlQYk8fPmRZJgyJe3Ma5o+w=
|
|
54
|
+
</data>
|
|
55
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
|
|
56
|
+
<data>
|
|
57
|
+
ufdIb2xdE4Uk5fET7rrUGlF8CFY=
|
|
58
|
+
</data>
|
|
59
|
+
<key>Modules/module.modulemap</key>
|
|
60
|
+
<data>
|
|
61
|
+
acpgMXnxtKZurb9LYb4tLOcX2cM=
|
|
62
|
+
</data>
|
|
63
|
+
</dict>
|
|
64
|
+
<key>files2</key>
|
|
65
|
+
<dict>
|
|
66
|
+
<key>Headers/FireworkVideoUI-Swift.h</key>
|
|
67
|
+
<dict>
|
|
68
|
+
<key>hash2</key>
|
|
69
|
+
<data>
|
|
70
|
+
xWiKQmcf3DHCgH9dBkmdlAsxIZiUklEHKL8VF5guI8w=
|
|
71
|
+
</data>
|
|
72
|
+
</dict>
|
|
73
|
+
<key>Headers/FireworkVideoUI.h</key>
|
|
74
|
+
<dict>
|
|
75
|
+
<key>hash2</key>
|
|
76
|
+
<data>
|
|
77
|
+
C2EMdBka9kS6ugy1NmcysmLzhwcZtW52x27D4Pi5P2Q=
|
|
78
|
+
</data>
|
|
79
|
+
</dict>
|
|
80
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
|
|
81
|
+
<dict>
|
|
82
|
+
<key>hash2</key>
|
|
83
|
+
<data>
|
|
84
|
+
A0FxvzFLyYWeXhK8cUOfscPrLasCqhaZNJhKluYu59k=
|
|
85
|
+
</data>
|
|
86
|
+
</dict>
|
|
87
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
|
|
88
|
+
<dict>
|
|
89
|
+
<key>hash2</key>
|
|
90
|
+
<data>
|
|
91
|
+
UkEtCk4njRXmEtNtWaE93q1xAPpSOkHeaFgW+Lz63CI=
|
|
92
|
+
</data>
|
|
93
|
+
</dict>
|
|
94
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
|
|
95
|
+
<dict>
|
|
96
|
+
<key>hash2</key>
|
|
97
|
+
<data>
|
|
98
|
+
ijGRDjteeQYBsYlAIa1ygEoPzdBUK0odDABdGpCdg6I=
|
|
99
|
+
</data>
|
|
100
|
+
</dict>
|
|
101
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftinterface</key>
|
|
102
|
+
<dict>
|
|
103
|
+
<key>hash2</key>
|
|
104
|
+
<data>
|
|
105
|
+
UkEtCk4njRXmEtNtWaE93q1xAPpSOkHeaFgW+Lz63CI=
|
|
106
|
+
</data>
|
|
107
|
+
</dict>
|
|
108
|
+
<key>Modules/FireworkVideoUI.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
|
|
109
|
+
<dict>
|
|
110
|
+
<key>hash2</key>
|
|
111
|
+
<data>
|
|
112
|
+
gHcFcwcr1aAv9W0SVThpQzKZ4iwioor9z8/+tAL9+5Q=
|
|
113
|
+
</data>
|
|
114
|
+
</dict>
|
|
115
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
|
|
116
|
+
<dict>
|
|
117
|
+
<key>hash2</key>
|
|
118
|
+
<data>
|
|
119
|
+
A0FxvzFLyYWeXhK8cUOfscPrLasCqhaZNJhKluYu59k=
|
|
120
|
+
</data>
|
|
121
|
+
</dict>
|
|
122
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
|
|
123
|
+
<dict>
|
|
124
|
+
<key>hash2</key>
|
|
125
|
+
<data>
|
|
126
|
+
Mzu7kL+XazpOcd2k3KQRRBTHmNTN7XErWwVGHsUJv7E=
|
|
127
|
+
</data>
|
|
128
|
+
</dict>
|
|
129
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
|
|
130
|
+
<dict>
|
|
131
|
+
<key>hash2</key>
|
|
132
|
+
<data>
|
|
133
|
+
/VtAsoSxZoVfhFW8ufywQGyBJU+cSfB3cI/rcVkUFGU=
|
|
134
|
+
</data>
|
|
135
|
+
</dict>
|
|
136
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftinterface</key>
|
|
137
|
+
<dict>
|
|
138
|
+
<key>hash2</key>
|
|
139
|
+
<data>
|
|
140
|
+
Mzu7kL+XazpOcd2k3KQRRBTHmNTN7XErWwVGHsUJv7E=
|
|
141
|
+
</data>
|
|
142
|
+
</dict>
|
|
143
|
+
<key>Modules/FireworkVideoUI.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
|
|
144
|
+
<dict>
|
|
145
|
+
<key>hash2</key>
|
|
146
|
+
<data>
|
|
147
|
+
3LgfAp0SD5Qb24w+Jt+yH3P1gvMKdtH25ZZQHYt25Os=
|
|
148
|
+
</data>
|
|
149
|
+
</dict>
|
|
150
|
+
<key>Modules/module.modulemap</key>
|
|
151
|
+
<dict>
|
|
152
|
+
<key>hash2</key>
|
|
153
|
+
<data>
|
|
154
|
+
e6XgRro0MbWm+Nu76XbtPBOQtqanmjktK8gkROMrsUo=
|
|
155
|
+
</data>
|
|
156
|
+
</dict>
|
|
157
|
+
</dict>
|
|
158
|
+
<key>rules</key>
|
|
159
|
+
<dict>
|
|
160
|
+
<key>^.*</key>
|
|
161
|
+
<true/>
|
|
162
|
+
<key>^.*\.lproj/</key>
|
|
163
|
+
<dict>
|
|
164
|
+
<key>optional</key>
|
|
165
|
+
<true/>
|
|
166
|
+
<key>weight</key>
|
|
167
|
+
<real>1000</real>
|
|
168
|
+
</dict>
|
|
169
|
+
<key>^.*\.lproj/locversion.plist$</key>
|
|
170
|
+
<dict>
|
|
171
|
+
<key>omit</key>
|
|
172
|
+
<true/>
|
|
173
|
+
<key>weight</key>
|
|
174
|
+
<real>1100</real>
|
|
175
|
+
</dict>
|
|
176
|
+
<key>^Base\.lproj/</key>
|
|
177
|
+
<dict>
|
|
178
|
+
<key>weight</key>
|
|
179
|
+
<real>1010</real>
|
|
180
|
+
</dict>
|
|
181
|
+
<key>^version.plist$</key>
|
|
182
|
+
<true/>
|
|
183
|
+
</dict>
|
|
184
|
+
<key>rules2</key>
|
|
185
|
+
<dict>
|
|
186
|
+
<key>.*\.dSYM($|/)</key>
|
|
187
|
+
<dict>
|
|
188
|
+
<key>weight</key>
|
|
189
|
+
<real>11</real>
|
|
190
|
+
</dict>
|
|
191
|
+
<key>^(.*/)?\.DS_Store$</key>
|
|
192
|
+
<dict>
|
|
193
|
+
<key>omit</key>
|
|
194
|
+
<true/>
|
|
195
|
+
<key>weight</key>
|
|
196
|
+
<real>2000</real>
|
|
197
|
+
</dict>
|
|
198
|
+
<key>^.*</key>
|
|
199
|
+
<true/>
|
|
200
|
+
<key>^.*\.lproj/</key>
|
|
201
|
+
<dict>
|
|
202
|
+
<key>optional</key>
|
|
203
|
+
<true/>
|
|
204
|
+
<key>weight</key>
|
|
205
|
+
<real>1000</real>
|
|
206
|
+
</dict>
|
|
207
|
+
<key>^.*\.lproj/locversion.plist$</key>
|
|
208
|
+
<dict>
|
|
209
|
+
<key>omit</key>
|
|
210
|
+
<true/>
|
|
211
|
+
<key>weight</key>
|
|
212
|
+
<real>1100</real>
|
|
213
|
+
</dict>
|
|
214
|
+
<key>^Base\.lproj/</key>
|
|
215
|
+
<dict>
|
|
216
|
+
<key>weight</key>
|
|
217
|
+
<real>1010</real>
|
|
218
|
+
</dict>
|
|
219
|
+
<key>^Info\.plist$</key>
|
|
220
|
+
<dict>
|
|
221
|
+
<key>omit</key>
|
|
222
|
+
<true/>
|
|
223
|
+
<key>weight</key>
|
|
224
|
+
<real>20</real>
|
|
225
|
+
</dict>
|
|
226
|
+
<key>^PkgInfo$</key>
|
|
227
|
+
<dict>
|
|
228
|
+
<key>omit</key>
|
|
229
|
+
<true/>
|
|
230
|
+
<key>weight</key>
|
|
231
|
+
<real>20</real>
|
|
232
|
+
</dict>
|
|
233
|
+
<key>^embedded\.provisionprofile$</key>
|
|
234
|
+
<dict>
|
|
235
|
+
<key>weight</key>
|
|
236
|
+
<real>20</real>
|
|
237
|
+
</dict>
|
|
238
|
+
<key>^version\.plist$</key>
|
|
239
|
+
<dict>
|
|
240
|
+
<key>weight</key>
|
|
241
|
+
<real>20</real>
|
|
242
|
+
</dict>
|
|
243
|
+
</dict>
|
|
244
|
+
</dict>
|
|
245
|
+
</plist>
|
package/README.md
CHANGED
package/android/build.gradle
CHANGED
|
@@ -68,7 +68,6 @@ android {
|
|
|
68
68
|
repositories {
|
|
69
69
|
mavenCentral()
|
|
70
70
|
google()
|
|
71
|
-
maven { url 'https://jitpack.io' }
|
|
72
71
|
mavenLocal()
|
|
73
72
|
|
|
74
73
|
maven {
|
|
@@ -151,7 +150,7 @@ dependencies {
|
|
|
151
150
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
|
|
152
151
|
|
|
153
152
|
|
|
154
|
-
def fireworkSdkVersion = "6.
|
|
153
|
+
def fireworkSdkVersion = "6.2.1"
|
|
155
154
|
implementation "com.firework:sdk:$fireworkSdkVersion"
|
|
156
155
|
implementation "com.firework.external.imageloading:glide:$fireworkSdkVersion"
|
|
157
156
|
implementation "com.firework.external.livestream:singleHostPlayer:$fireworkSdkVersion"
|
|
@@ -59,6 +59,12 @@ class FWVideoFeed(
|
|
|
59
59
|
)
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
+
fun setHashtagFilterExpressionProps(hashtagFilterExpression: String?) {
|
|
63
|
+
videoFeedPropsModel = videoFeedPropsModel.copy(
|
|
64
|
+
hashtagFilterExpression = hashtagFilterExpression
|
|
65
|
+
)
|
|
66
|
+
}
|
|
67
|
+
|
|
62
68
|
fun setModeProps(mode: String?) {
|
|
63
69
|
videoFeedPropsModel = videoFeedPropsModel.copy(
|
|
64
70
|
mode = mode
|
package/android/src/main/java/com/fireworksdk/bridge/components/videofeed/StoryBlockFrameLayout.kt
CHANGED
|
@@ -33,6 +33,12 @@ class StoryBlockFrameLayout(
|
|
|
33
33
|
)
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
+
fun setHashtagFilterExpressionProps(hashtagFilterExpression: String?) {
|
|
37
|
+
videoFeedPropsModel = videoFeedPropsModel.copy(
|
|
38
|
+
hashtagFilterExpression = hashtagFilterExpression
|
|
39
|
+
)
|
|
40
|
+
}
|
|
41
|
+
|
|
36
42
|
fun setDynamicContentParameters(parametersMap: HashMap<String, List<String>>?) {
|
|
37
43
|
videoFeedPropsModel = videoFeedPropsModel.copy(
|
|
38
44
|
dynamicContentParameters = parametersMap
|
package/android/src/main/java/com/fireworksdk/bridge/models/FWAdBadgeConfigModelDeserializer.kt
CHANGED
|
@@ -11,9 +11,9 @@ object FWAdBadgeConfigModelDeserializer {
|
|
|
11
11
|
fun deserialize(responseJson: JSONObject?): FWAdBadgeConfigModel? {
|
|
12
12
|
responseJson ?: return null
|
|
13
13
|
|
|
14
|
-
val badgeTextType = responseJson.optString(BADGE_TEXT_TYPE_KEY)
|
|
15
|
-
val backgroundColor = responseJson.optString(BACKGROUND_COLOR_KEY)
|
|
16
|
-
val textColor = responseJson.optString(TEXT_COLOR_KEY)
|
|
14
|
+
val badgeTextType = if (responseJson.has(BADGE_TEXT_TYPE_KEY)) responseJson.optString(BADGE_TEXT_TYPE_KEY) else null
|
|
15
|
+
val backgroundColor = if (responseJson.has(BACKGROUND_COLOR_KEY)) responseJson.optString(BACKGROUND_COLOR_KEY) else null
|
|
16
|
+
val textColor = if (responseJson.has(TEXT_COLOR_KEY)) responseJson.optString(TEXT_COLOR_KEY) else null
|
|
17
17
|
|
|
18
18
|
return FWAdBadgeConfigModel(
|
|
19
19
|
badgeTextType = badgeTextType,
|
|
@@ -21,10 +21,13 @@ enum class FWFeedViewEventName(val rawValue: String) {
|
|
|
21
21
|
enum class FWVideoPlaybackSubEventName(val rawValue: String) {
|
|
22
22
|
Impression("fw:video:impression"),
|
|
23
23
|
Start("fw:video:start"),
|
|
24
|
+
Pause("fw:video:pause"),
|
|
25
|
+
Resume("fw:video:resume"),
|
|
24
26
|
FirstQuartile("fw:video:first-quartile"),
|
|
25
27
|
Midpoint("fw:video:midpoint"),
|
|
26
28
|
ThirdQuartile("fw:video:third-quartile"),
|
|
27
29
|
Complete("fw:video:complete"),
|
|
30
|
+
AdStart("fw:video:ad-start"),
|
|
28
31
|
AdEnd("fw:video:ad-end"),
|
|
29
32
|
ClickCTA("fw:video:click-cta"),
|
|
30
33
|
ClickShare("fw:video:click-share"),
|
|
@@ -11,7 +11,7 @@ object FWFontInfoModelDeserializer {
|
|
|
11
11
|
responseJson ?: return null
|
|
12
12
|
|
|
13
13
|
val isCustom = responseJson.optBoolean(IS_CUSTOM_KEY, false)
|
|
14
|
-
val typefaceName = responseJson.optString(TYPEFACE_NAME_KEY)
|
|
14
|
+
val typefaceName = if (responseJson.has(TYPEFACE_NAME_KEY)) responseJson.optString(TYPEFACE_NAME_KEY) else null
|
|
15
15
|
|
|
16
16
|
return FWFontInfoModel(
|
|
17
17
|
isCustom = isCustom,
|
|
@@ -27,10 +27,12 @@ object FWProductInfoViewConfigurationDeserializer {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
private fun deserializeCtaButtonConfiguration(ctaButtonConfiguration: JSONObject?): FWProductInfoViewConfiguration.CtaButtonConfiguration {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
val
|
|
33
|
-
val
|
|
30
|
+
ctaButtonConfiguration ?: return FWProductInfoViewConfiguration.CtaButtonConfiguration()
|
|
31
|
+
|
|
32
|
+
val textString = if (ctaButtonConfiguration.has(TEXT_KEY)) ctaButtonConfiguration.optString(TEXT_KEY) else null
|
|
33
|
+
val backgroundColor = if (ctaButtonConfiguration.has(BACKGROUND_COLOR_KEY)) ctaButtonConfiguration.optString(BACKGROUND_COLOR_KEY) else null
|
|
34
|
+
val textColor = if (ctaButtonConfiguration.has(TEXT_COLOR_KEY)) ctaButtonConfiguration.optString(TEXT_COLOR_KEY) else null
|
|
35
|
+
val fontSize = if (ctaButtonConfiguration.has(FONT_SIZE_KEY)) ctaButtonConfiguration.optInt(FONT_SIZE_KEY) else null
|
|
34
36
|
|
|
35
37
|
var text = FWProductInfoViewConfiguration.CtaButtonConfiguration.TextValue.AddToCart
|
|
36
38
|
when (textString) {
|
|
@@ -48,8 +50,10 @@ object FWProductInfoViewConfigurationDeserializer {
|
|
|
48
50
|
)
|
|
49
51
|
}
|
|
50
52
|
|
|
51
|
-
private fun deserializeLinkButtonConfiguration(
|
|
52
|
-
|
|
53
|
+
private fun deserializeLinkButtonConfiguration(linkButtonConfigJson: JSONObject?): FWProductInfoViewConfiguration.LinkButtonConfiguration {
|
|
54
|
+
linkButtonConfigJson ?: return FWProductInfoViewConfiguration.LinkButtonConfiguration()
|
|
55
|
+
|
|
56
|
+
val isHidden = if (linkButtonConfigJson.has(IS_HIDDEN_KEY)) linkButtonConfigJson.optBoolean(IS_HIDDEN_KEY) else null
|
|
53
57
|
|
|
54
58
|
return FWProductInfoViewConfiguration.LinkButtonConfiguration(
|
|
55
59
|
isHidden = isHidden,
|
package/android/src/main/java/com/fireworksdk/bridge/models/FWSDKInitOptionsModelDeserializer.kt
CHANGED
|
@@ -11,9 +11,9 @@ object FWSDKInitOptionsModelDeserializer {
|
|
|
11
11
|
fun deserialize(responseJson: JSONObject?): FWSDKInitOptionsModel? {
|
|
12
12
|
responseJson?: return null
|
|
13
13
|
|
|
14
|
-
val userId = responseJson.optString(USER_ID_KEY)
|
|
15
|
-
val shareBaseURL = responseJson.optString(SHARE_BASE_URL_KEY)
|
|
16
|
-
val videoLaunchBehavior = responseJson.optString(VIDEO_LAUNCH_BEHAVIOR_KEY)
|
|
14
|
+
val userId = if (responseJson.has(USER_ID_KEY)) responseJson.optString(USER_ID_KEY) else null
|
|
15
|
+
val shareBaseURL = if (responseJson.has(SHARE_BASE_URL_KEY)) responseJson.optString(SHARE_BASE_URL_KEY) else null
|
|
16
|
+
val videoLaunchBehavior = if (responseJson.has(VIDEO_LAUNCH_BEHAVIOR_KEY)) responseJson.optString(VIDEO_LAUNCH_BEHAVIOR_KEY) else null
|
|
17
17
|
|
|
18
18
|
return FWSDKInitOptionsModel(
|
|
19
19
|
userId = userId,
|
package/android/src/main/java/com/fireworksdk/bridge/models/FWShoppingCtaResultDeserializer.kt
CHANGED
|
@@ -11,8 +11,8 @@ object FWShoppingCtaResultDeserializer {
|
|
|
11
11
|
fun deserialize(responseJson: JSONObject?): FWShoppingCtaResult? {
|
|
12
12
|
responseJson?: return null
|
|
13
13
|
|
|
14
|
-
val resString = responseJson.optString(RES_KEY)
|
|
15
|
-
val tips = responseJson.optString(TIPS_KEY)
|
|
14
|
+
val resString = if (responseJson.has(RES_KEY)) responseJson.optString(RES_KEY) else null
|
|
15
|
+
val tips = if (responseJson.has(TIPS_KEY)) responseJson.optString(TIPS_KEY) else null
|
|
16
16
|
|
|
17
17
|
var res = FWShoppingCtaResult.Res.Success
|
|
18
18
|
when (resString) {
|
package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoFeedConfigModelDeserializer.kt
CHANGED
|
@@ -23,14 +23,14 @@ object FWVideoFeedConfigModelDeserializer {
|
|
|
23
23
|
fun deserialize(responseJson: JSONObject?): FWVideoFeedConfigModel? {
|
|
24
24
|
responseJson?: return null
|
|
25
25
|
|
|
26
|
-
val backgroundColor = responseJson.optString(BACKGROUND_COLOR_KEY)
|
|
27
|
-
val cornerRadius = responseJson.optInt(CORNER_RADIUS_KEY)
|
|
28
|
-
val title = deserializeTitle(responseJson.optJSONObject(TITLE_KEY))
|
|
29
|
-
val titlePosition = responseJson.optString(TITLE_POSITION_KEY)
|
|
30
|
-
val playIcon = deserializePlayIcon(responseJson.optJSONObject(PLAY_ICON_KEY))
|
|
31
|
-
val showAdBadge = responseJson.optBoolean(SHOW_AD_BADGE_KEY)
|
|
32
|
-
val enableAutoplay = responseJson.optBoolean(ENABLE_AUTOPLAY_KEY)
|
|
33
|
-
val gridColumns = responseJson.optInt(GRID_COLUMNS_KEY)
|
|
26
|
+
val backgroundColor = if (responseJson.has(BACKGROUND_COLOR_KEY)) responseJson.optString(BACKGROUND_COLOR_KEY) else null
|
|
27
|
+
val cornerRadius = if (responseJson.has(CORNER_RADIUS_KEY)) responseJson.optInt(CORNER_RADIUS_KEY) else null
|
|
28
|
+
val title = if (responseJson.has(TITLE_KEY)) deserializeTitle(responseJson.optJSONObject(TITLE_KEY)) else null
|
|
29
|
+
val titlePosition = if (responseJson.has(TITLE_POSITION_KEY)) responseJson.optString(TITLE_POSITION_KEY) else null
|
|
30
|
+
val playIcon = if (responseJson.has(PLAY_ICON_KEY)) deserializePlayIcon(responseJson.optJSONObject(PLAY_ICON_KEY)) else null
|
|
31
|
+
val showAdBadge = if (responseJson.has(SHOW_AD_BADGE_KEY)) responseJson.optBoolean(SHOW_AD_BADGE_KEY) else null
|
|
32
|
+
val enableAutoplay = if (responseJson.has(ENABLE_AUTOPLAY_KEY)) responseJson.optBoolean(ENABLE_AUTOPLAY_KEY) else null
|
|
33
|
+
val gridColumns = if (responseJson.has(GRID_COLUMNS_KEY)) responseJson.optInt(GRID_COLUMNS_KEY) else null
|
|
34
34
|
|
|
35
35
|
return FWVideoFeedConfigModel(
|
|
36
36
|
backgroundColor = backgroundColor,
|
|
@@ -45,10 +45,12 @@ object FWVideoFeedConfigModelDeserializer {
|
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
private fun deserializeTitle(titleJson: JSONObject?): FWVideoFeedConfigModel.FWTitleModel {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
val
|
|
51
|
-
val
|
|
48
|
+
titleJson ?: return FWVideoFeedConfigModel.FWTitleModel()
|
|
49
|
+
|
|
50
|
+
val hidden = if (titleJson.has(HIDDEN_KEY)) titleJson.optBoolean(HIDDEN_KEY) else null
|
|
51
|
+
val textColor = if (titleJson.has(TEXT_COLOR_KEY)) titleJson.optString(TEXT_COLOR_KEY) else null
|
|
52
|
+
val fontSize = if (titleJson.has(FONT_SIZE_KEY)) titleJson.optInt(FONT_SIZE_KEY) else null
|
|
53
|
+
val fontInfo = FWFontInfoModelDeserializer.deserialize(titleJson.optJSONObject(FONT_INFO_KEY))
|
|
52
54
|
|
|
53
55
|
return FWVideoFeedConfigModel.FWTitleModel(
|
|
54
56
|
hidden = hidden,
|
|
@@ -10,6 +10,7 @@ data class FWVideoFeedPropsModel(
|
|
|
10
10
|
val channel: String? = null,
|
|
11
11
|
val playlist: String? = null,
|
|
12
12
|
val playlistGroup: String? = null,
|
|
13
|
+
val hashtagFilterExpression: String? = null,
|
|
13
14
|
val mode: String? = null,
|
|
14
15
|
val enablePictureInPicture: Boolean? = null,
|
|
15
16
|
val videoFeedConfiguration: FWVideoFeedConfigModel? = null,
|
package/android/src/main/java/com/fireworksdk/bridge/models/FWVideoFeedPropsModelDeserializer.kt
CHANGED
|
@@ -8,6 +8,7 @@ object FWVideoFeedPropsModelDeserializer {
|
|
|
8
8
|
private const val CHANNEL_KEY = "channel"
|
|
9
9
|
private const val PLAYLIST_KEY = "playlist"
|
|
10
10
|
private const val PLAYLIST_GROUP_KEY = "playlistGroup"
|
|
11
|
+
private const val HASHTAG_FILTER_EXPRESSION_KEY = "hashtagFilterExpression"
|
|
11
12
|
private const val MODE_KEY = "mode"
|
|
12
13
|
private const val ENABLE_PIP_KEY = "enablePictureInPicture"
|
|
13
14
|
|
|
@@ -18,12 +19,14 @@ object FWVideoFeedPropsModelDeserializer {
|
|
|
18
19
|
fun deserialize(responseJson: JSONObject?): FWVideoFeedPropsModel? {
|
|
19
20
|
responseJson ?: return null
|
|
20
21
|
|
|
21
|
-
val source = responseJson.optString(SOURCE_KEY)
|
|
22
|
-
val channel = responseJson.optString(CHANNEL_KEY)
|
|
23
|
-
val playlist = responseJson.optString(PLAYLIST_KEY)
|
|
24
|
-
val playlistGroup = responseJson.optString(PLAYLIST_GROUP_KEY)
|
|
25
|
-
val
|
|
26
|
-
|
|
22
|
+
val source = if (responseJson.has(SOURCE_KEY)) responseJson.optString(SOURCE_KEY) else null
|
|
23
|
+
val channel = if (responseJson.has(CHANNEL_KEY)) responseJson.optString(CHANNEL_KEY) else null
|
|
24
|
+
val playlist = if (responseJson.has(PLAYLIST_KEY)) responseJson.optString(PLAYLIST_KEY) else null
|
|
25
|
+
val playlistGroup = if (responseJson.has(PLAYLIST_GROUP_KEY)) responseJson.optString(PLAYLIST_GROUP_KEY) else null
|
|
26
|
+
val hashtagFilterExpression = if (responseJson.has(HASHTAG_FILTER_EXPRESSION_KEY)) responseJson.optString(
|
|
27
|
+
HASHTAG_FILTER_EXPRESSION_KEY) else null
|
|
28
|
+
val mode = if (responseJson.has(MODE_KEY)) responseJson.optString(MODE_KEY) else null
|
|
29
|
+
val enablePictureInPicture = if (responseJson.has(ENABLE_PIP_KEY)) responseJson.optBoolean(ENABLE_PIP_KEY) else null
|
|
27
30
|
|
|
28
31
|
val videoFeedConfiguration = FWVideoFeedConfigModelDeserializer.deserialize(
|
|
29
32
|
responseJson.optJSONObject(VIDEO_FEED_CONFIGURATION_KEY)
|
|
@@ -31,7 +34,7 @@ object FWVideoFeedPropsModelDeserializer {
|
|
|
31
34
|
val videoPlayerConfiguration = FWVideoPlayerConfigModelDeserializer.deserialize(
|
|
32
35
|
responseJson.optJSONObject(VIDEO_PLAYER_CONFIGURATION_KEY)
|
|
33
36
|
)
|
|
34
|
-
val dynamicContentParametersObject = responseJson.optJSONObject(DYNAMIC_CONTENT_PARAMETERS_KEY)
|
|
37
|
+
val dynamicContentParametersObject = if (responseJson.has(DYNAMIC_CONTENT_PARAMETERS_KEY)) responseJson.optJSONObject(DYNAMIC_CONTENT_PARAMETERS_KEY) else null
|
|
35
38
|
var dynamicContentParameters: Map<String, List<String>>? = null
|
|
36
39
|
|
|
37
40
|
val keys = dynamicContentParametersObject?.keys()
|
|
@@ -57,6 +60,7 @@ object FWVideoFeedPropsModelDeserializer {
|
|
|
57
60
|
channel = channel,
|
|
58
61
|
playlist = playlist,
|
|
59
62
|
playlistGroup = playlistGroup,
|
|
63
|
+
hashtagFilterExpression = hashtagFilterExpression,
|
|
60
64
|
mode = mode,
|
|
61
65
|
enablePictureInPicture= enablePictureInPicture,
|
|
62
66
|
videoFeedConfiguration = videoFeedConfiguration,
|
|
@@ -5,12 +5,12 @@ import kotlinx.android.parcel.Parcelize
|
|
|
5
5
|
|
|
6
6
|
@Parcelize
|
|
7
7
|
data class FWVideoPlaybackDetails(
|
|
8
|
-
val
|
|
9
|
-
val
|
|
10
|
-
val
|
|
11
|
-
val
|
|
12
|
-
val
|
|
13
|
-
val
|
|
14
|
-
val
|
|
15
|
-
val
|
|
8
|
+
val badge: String? = null,
|
|
9
|
+
val caption: String? = null,
|
|
10
|
+
val duration: Double? = null,
|
|
11
|
+
val hasCta: Boolean? = null,
|
|
12
|
+
val height: Int? = null,
|
|
13
|
+
val width: Int? = null,
|
|
14
|
+
val videoId: String? = null,
|
|
15
|
+
val progress: Double? = null,
|
|
16
16
|
) : Parcelable
|