@capillarytech/react-native-hydra-lib 1.7.0-beta.1
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/CHANGELOG.md +252 -0
- package/DEPRECATION_POLICY.md +220 -0
- package/LICENSE +20 -0
- package/MIGRATION.md +361 -0
- package/README.md +491 -0
- package/RELEASE_NOTES.md +528 -0
- package/android/build.gradle +565 -0
- package/android/generated/java/com/hydralib/NativeHydraLibSpec.java +185 -0
- package/android/generated/jni/CMakeLists.txt +36 -0
- package/android/generated/jni/RNHydraLibSpec-generated.cpp +248 -0
- package/android/generated/jni/RNHydraLibSpec.h +31 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/ComponentDescriptors.cpp +24 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/ComponentDescriptors.h +26 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/EventEmitters.cpp +18 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/EventEmitters.h +37 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/Props.cpp +39 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/Props.h +47 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/RNHydraLibSpecJSI-generated.cpp +283 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/RNHydraLibSpecJSI.h +395 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/ShadowNodes.cpp +19 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/ShadowNodes.h +54 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/States.cpp +16 -0
- package/android/generated/jni/react/renderer/components/RNHydraLibSpec/States.h +53 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +11 -0
- package/android/src/main/AndroidManifestNew.xml +16 -0
- package/android/src/main/AndroidManifestNoFirebaseIcon.xml +5 -0
- package/android/src/main/java/com/hydralib/delegates/HydraActivityCallbacks.kt +90 -0
- package/android/src/main/java/com/hydralib/delegates/NonHydraNotificationActivity.kt +43 -0
- package/android/src/main/java/com/hydralib/eventemitter/HydraEventEmitter.kt +150 -0
- package/android/src/main/java/com/hydralib/eventemitter/HydraEventType.kt +44 -0
- package/android/src/main/java/com/hydralib/gamification/GamificationBannerViewManager.kt +121 -0
- package/android/src/main/java/com/hydralib/gamification/GamificationEmbedViewManager.kt +153 -0
- package/android/src/main/java/com/hydralib/gamification/GamificationLoyaltyViewManager.kt +95 -0
- package/android/src/main/java/com/hydralib/hydrasdk/HydraCore.kt +860 -0
- package/android/src/main/java/com/hydralib/hydrasdk/HydraExtenstions.kt +331 -0
- package/android/src/main/java/com/hydralib/hydrasdk/HydraInAppMessages.kt +136 -0
- package/android/src/main/java/com/hydralib/hydrasdk/HydraInbox.kt +70 -0
- package/android/src/main/java/com/hydralib/hydrasdk/HydraInboxUI.kt +54 -0
- package/android/src/main/java/com/hydralib/hydrasdk/HydraPushNotification.kt +299 -0
- package/android/src/main/java/com/hydralib/nativeapis/Hydra.kt +28 -0
- package/android/src/main/java/com/hydralib/nativeapis/HydraFirebaseRemoteConfigKeys.kt +76 -0
- package/android/src/main/java/com/hydralib/nativeapis/HydraInitializer.kt +130 -0
- package/android/src/main/java/com/hydralib/nativeapis/HydraNativeMessaging.kt +18 -0
- package/android/src/main/java/com/hydralib/nativeapis/HydraRemoteConfig.kt +59 -0
- package/android/src/main/java/com/hydralib/utils/RNHydraPreferencesManager.kt +154 -0
- package/android/src/main/java/com/hydralib/utils/ResourceUtil.kt +10 -0
- package/android/src/newarch/HydraLibModule.kt +218 -0
- package/android/src/oldarch/HydraLibModule.kt +258 -0
- package/android/src/rn72OrLess/HydraLibPackage.kt +43 -0
- package/android/src/rn73OrMore/HydraLibPackage.kt +53 -0
- package/ios/Delegates/HydraApplicationDelegate.swift +196 -0
- package/ios/Delegates/HydraFirebaseMessagingDelegate.swift +20 -0
- package/ios/Delegates/HydraUNUserNotificationCenterDelegate.swift +26 -0
- package/ios/EventEmitter/HydraEventEmitter.swift +98 -0
- package/ios/EventEmitter/HydraEventType.swift +28 -0
- package/ios/EventEmitter/HydraNativeEmitterBrigde.h +15 -0
- package/ios/EventEmitter/HydraNativeEmitterBrigde.mm +48 -0
- package/ios/GamificationViews/GamificationBannerViewComponentView.h +14 -0
- package/ios/GamificationViews/GamificationBannerViewComponentView.mm +125 -0
- package/ios/GamificationViews/GamificationEmbedViewComponentView.h +14 -0
- package/ios/GamificationViews/GamificationEmbedViewComponentView.mm +131 -0
- package/ios/GamificationViews/GamificationLoyaltyViewComponentView.h +14 -0
- package/ios/GamificationViews/GamificationLoyaltyViewComponentView.mm +120 -0
- package/ios/HydraLib.h +16 -0
- package/ios/HydraLib.mm +207 -0
- package/ios/HydraSDK/HydraInAppMessages.swift +93 -0
- package/ios/HydraSDK/HydraInbox.swift +97 -0
- package/ios/HydraSDK/HydraInboxUI.swift +105 -0
- package/ios/HydraSDK/HydraPushNotification.swift +476 -0
- package/ios/HydraSDK/HydraSDKCore.swift +707 -0
- package/ios/NativeAPIs/Hydra.h +34 -0
- package/ios/NativeAPIs/Hydra.mm +47 -0
- package/ios/NativeAPIs/HydraNativeFirebaseRemoteConfigKeys.h +23 -0
- package/ios/NativeAPIs/HydraNativeFirebaseRemoteConfigKeys.mm +80 -0
- package/ios/NativeAPIs/HydraNativeInitializer.h +16 -0
- package/ios/NativeAPIs/HydraNativeInitializer.mm +39 -0
- package/ios/NativeAPIs/HydraNativeMessaging.h +24 -0
- package/ios/NativeAPIs/HydraNativeMessaging.mm +53 -0
- package/ios/NativeAPIs/HydraNativeRemoteConfig.h +27 -0
- package/ios/NativeAPIs/HydraNativeRemoteConfig.mm +89 -0
- package/ios/Utils/HydraExtensions.swift +322 -0
- package/ios/Utils/HydraRNConstants.swift +13 -0
- package/ios/Utils/RNHydraLogger.swift +31 -0
- package/ios/generated/RNHydraLibSpec/ComponentDescriptors.cpp +24 -0
- package/ios/generated/RNHydraLibSpec/ComponentDescriptors.h +26 -0
- package/ios/generated/RNHydraLibSpec/EventEmitters.cpp +18 -0
- package/ios/generated/RNHydraLibSpec/EventEmitters.h +37 -0
- package/ios/generated/RNHydraLibSpec/Props.cpp +39 -0
- package/ios/generated/RNHydraLibSpec/Props.h +47 -0
- package/ios/generated/RNHydraLibSpec/RCTComponentViewHelpers.h +28 -0
- package/ios/generated/RNHydraLibSpec/RNHydraLibSpec-generated.mm +291 -0
- package/ios/generated/RNHydraLibSpec/RNHydraLibSpec.h +167 -0
- package/ios/generated/RNHydraLibSpec/ShadowNodes.cpp +19 -0
- package/ios/generated/RNHydraLibSpec/ShadowNodes.h +54 -0
- package/ios/generated/RNHydraLibSpec/States.cpp +16 -0
- package/ios/generated/RNHydraLibSpec/States.h +53 -0
- package/ios/generated/RNHydraLibSpecJSI-generated.cpp +283 -0
- package/ios/generated/RNHydraLibSpecJSI.h +395 -0
- package/lib/commonjs/GamificationBannerViewNativeComponent.js +10 -0
- package/lib/commonjs/GamificationBannerViewNativeComponent.js.map +1 -0
- package/lib/commonjs/GamificationEmbedViewNativeComponent.js +10 -0
- package/lib/commonjs/GamificationEmbedViewNativeComponent.js.map +1 -0
- package/lib/commonjs/GamificationLoyaltyViewNativeComponent.js +10 -0
- package/lib/commonjs/GamificationLoyaltyViewNativeComponent.js.map +1 -0
- package/lib/commonjs/NativeHydraLib.js +11 -0
- package/lib/commonjs/NativeHydraLib.js.map +1 -0
- package/lib/commonjs/components/GamificationBannerView.js +15 -0
- package/lib/commonjs/components/GamificationBannerView.js.map +1 -0
- package/lib/commonjs/components/GamificationEmbedView.js +15 -0
- package/lib/commonjs/components/GamificationEmbedView.js.map +1 -0
- package/lib/commonjs/components/GamificationLoyaltyView.js +15 -0
- package/lib/commonjs/components/GamificationLoyaltyView.js.map +1 -0
- package/lib/commonjs/hydra-apis/Hydra.js +43 -0
- package/lib/commonjs/hydra-apis/Hydra.js.map +1 -0
- package/lib/commonjs/hydra-apis/HydraCore.js +42 -0
- package/lib/commonjs/hydra-apis/HydraCore.js.map +1 -0
- package/lib/commonjs/hydra-apis/HydraInAppMessaging.js +24 -0
- package/lib/commonjs/hydra-apis/HydraInAppMessaging.js.map +1 -0
- package/lib/commonjs/hydra-apis/HydraInbox.js +29 -0
- package/lib/commonjs/hydra-apis/HydraInbox.js.map +1 -0
- package/lib/commonjs/hydra-apis/HydraInboxUI.js +18 -0
- package/lib/commonjs/hydra-apis/HydraInboxUI.js.map +1 -0
- package/lib/commonjs/hydra-apis/HydraNativeEventEmitter.js +133 -0
- package/lib/commonjs/hydra-apis/HydraNativeEventEmitter.js.map +1 -0
- package/lib/commonjs/hydra-apis/HydraPushNotification.js +21 -0
- package/lib/commonjs/hydra-apis/HydraPushNotification.js.map +1 -0
- package/lib/commonjs/index.js +230 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/models/HydraAccountConfig.js +41 -0
- package/lib/commonjs/models/HydraAccountConfig.js.map +1 -0
- package/lib/commonjs/models/HydraFirebaseRemoteConfigKeys.js +40 -0
- package/lib/commonjs/models/HydraFirebaseRemoteConfigKeys.js.map +1 -0
- package/lib/commonjs/models/HydraGeoConfig.js +24 -0
- package/lib/commonjs/models/HydraGeoConfig.js.map +1 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppButtonComponent.js +26 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppButtonComponent.js.map +1 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppComponentStyle.js +26 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppComponentStyle.js.map +1 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.js +39 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.js.map +1 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppMessage.js +60 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppMessage.js.map +1 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppTemplateType.js +66 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppTemplateType.js.map +1 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppTextComponent.js +21 -0
- package/lib/commonjs/models/HydraInAppMessage/HydraInAppTextComponent.js.map +1 -0
- package/lib/commonjs/models/HydraLogLevel.js +16 -0
- package/lib/commonjs/models/HydraLogLevel.js.map +1 -0
- package/lib/commonjs/models/HydraNativeEvent.js +27 -0
- package/lib/commonjs/models/HydraNativeEvent.js.map +1 -0
- package/lib/commonjs/models/HydraNotification/HydraNotification.js +70 -0
- package/lib/commonjs/models/HydraNotification/HydraNotification.js.map +1 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationBody.js +25 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationBody.js.map +1 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationCta.js +23 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationCta.js.map +1 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationCtaType.js +62 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationCtaType.js.map +1 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationExpandedDetails.js +25 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationExpandedDetails.js.map +1 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationGateway.js +13 -0
- package/lib/commonjs/models/HydraNotification/HydraNotificationGateway.js.map +1 -0
- package/lib/commonjs/models/HydraPushPreferences.js +20 -0
- package/lib/commonjs/models/HydraPushPreferences.js.map +1 -0
- package/lib/commonjs/models/HydraUserDetails.js +26 -0
- package/lib/commonjs/models/HydraUserDetails.js.map +1 -0
- package/lib/commonjs/models/HydraVisitorInfo.js +19 -0
- package/lib/commonjs/models/HydraVisitorInfo.js.map +1 -0
- package/lib/commonjs/models/NonHydraNotification.js +18 -0
- package/lib/commonjs/models/NonHydraNotification.js.map +1 -0
- package/lib/commonjs/models/UserState.js +41 -0
- package/lib/commonjs/models/UserState.js.map +1 -0
- package/lib/module/GamificationBannerViewNativeComponent.js +5 -0
- package/lib/module/GamificationBannerViewNativeComponent.js.map +1 -0
- package/lib/module/GamificationEmbedViewNativeComponent.js +5 -0
- package/lib/module/GamificationEmbedViewNativeComponent.js.map +1 -0
- package/lib/module/GamificationLoyaltyViewNativeComponent.js +5 -0
- package/lib/module/GamificationLoyaltyViewNativeComponent.js.map +1 -0
- package/lib/module/NativeHydraLib.js +7 -0
- package/lib/module/NativeHydraLib.js.map +1 -0
- package/lib/module/components/GamificationBannerView.js +10 -0
- package/lib/module/components/GamificationBannerView.js.map +1 -0
- package/lib/module/components/GamificationEmbedView.js +10 -0
- package/lib/module/components/GamificationEmbedView.js.map +1 -0
- package/lib/module/components/GamificationLoyaltyView.js +10 -0
- package/lib/module/components/GamificationLoyaltyView.js.map +1 -0
- package/lib/module/hydra-apis/Hydra.js +37 -0
- package/lib/module/hydra-apis/Hydra.js.map +1 -0
- package/lib/module/hydra-apis/HydraCore.js +36 -0
- package/lib/module/hydra-apis/HydraCore.js.map +1 -0
- package/lib/module/hydra-apis/HydraInAppMessaging.js +18 -0
- package/lib/module/hydra-apis/HydraInAppMessaging.js.map +1 -0
- package/lib/module/hydra-apis/HydraInbox.js +23 -0
- package/lib/module/hydra-apis/HydraInbox.js.map +1 -0
- package/lib/module/hydra-apis/HydraInboxUI.js +12 -0
- package/lib/module/hydra-apis/HydraInboxUI.js.map +1 -0
- package/lib/module/hydra-apis/HydraNativeEventEmitter.js +127 -0
- package/lib/module/hydra-apis/HydraNativeEventEmitter.js.map +1 -0
- package/lib/module/hydra-apis/HydraPushNotification.js +15 -0
- package/lib/module/hydra-apis/HydraPushNotification.js.map +1 -0
- package/lib/module/index.js +36 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/models/HydraAccountConfig.js +36 -0
- package/lib/module/models/HydraAccountConfig.js.map +1 -0
- package/lib/module/models/HydraFirebaseRemoteConfigKeys.js +35 -0
- package/lib/module/models/HydraFirebaseRemoteConfigKeys.js.map +1 -0
- package/lib/module/models/HydraGeoConfig.js +19 -0
- package/lib/module/models/HydraGeoConfig.js.map +1 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppButtonComponent.js +21 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppButtonComponent.js.map +1 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppComponentStyle.js +21 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppComponentStyle.js.map +1 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.js +35 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.js.map +1 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppMessage.js +55 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppMessage.js.map +1 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppTemplateType.js +62 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppTemplateType.js.map +1 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppTextComponent.js +16 -0
- package/lib/module/models/HydraInAppMessage/HydraInAppTextComponent.js.map +1 -0
- package/lib/module/models/HydraLogLevel.js +12 -0
- package/lib/module/models/HydraLogLevel.js.map +1 -0
- package/lib/module/models/HydraNativeEvent.js +23 -0
- package/lib/module/models/HydraNativeEvent.js.map +1 -0
- package/lib/module/models/HydraNotification/HydraNotification.js +65 -0
- package/lib/module/models/HydraNotification/HydraNotification.js.map +1 -0
- package/lib/module/models/HydraNotification/HydraNotificationBody.js +20 -0
- package/lib/module/models/HydraNotification/HydraNotificationBody.js.map +1 -0
- package/lib/module/models/HydraNotification/HydraNotificationCta.js +18 -0
- package/lib/module/models/HydraNotification/HydraNotificationCta.js.map +1 -0
- package/lib/module/models/HydraNotification/HydraNotificationCtaType.js +58 -0
- package/lib/module/models/HydraNotification/HydraNotificationCtaType.js.map +1 -0
- package/lib/module/models/HydraNotification/HydraNotificationExpandedDetails.js +20 -0
- package/lib/module/models/HydraNotification/HydraNotificationExpandedDetails.js.map +1 -0
- package/lib/module/models/HydraNotification/HydraNotificationGateway.js +9 -0
- package/lib/module/models/HydraNotification/HydraNotificationGateway.js.map +1 -0
- package/lib/module/models/HydraPushPreferences.js +15 -0
- package/lib/module/models/HydraPushPreferences.js.map +1 -0
- package/lib/module/models/HydraUserDetails.js +21 -0
- package/lib/module/models/HydraUserDetails.js.map +1 -0
- package/lib/module/models/HydraVisitorInfo.js +14 -0
- package/lib/module/models/HydraVisitorInfo.js.map +1 -0
- package/lib/module/models/NonHydraNotification.js +13 -0
- package/lib/module/models/NonHydraNotification.js.map +1 -0
- package/lib/module/models/UserState.js +37 -0
- package/lib/module/models/UserState.js.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/src/GamificationBannerViewNativeComponent.d.ts +7 -0
- package/lib/typescript/commonjs/src/GamificationBannerViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/GamificationEmbedViewNativeComponent.d.ts +7 -0
- package/lib/typescript/commonjs/src/GamificationEmbedViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/GamificationLoyaltyViewNativeComponent.d.ts +7 -0
- package/lib/typescript/commonjs/src/GamificationLoyaltyViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/NativeHydraLib.d.ts +46 -0
- package/lib/typescript/commonjs/src/NativeHydraLib.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/GamificationBannerView.d.ts +6 -0
- package/lib/typescript/commonjs/src/components/GamificationBannerView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/GamificationEmbedView.d.ts +6 -0
- package/lib/typescript/commonjs/src/components/GamificationEmbedView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/GamificationLoyaltyView.d.ts +6 -0
- package/lib/typescript/commonjs/src/components/GamificationLoyaltyView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/Hydra.d.ts +15 -0
- package/lib/typescript/commonjs/src/hydra-apis/Hydra.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraCore.d.ts +18 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraCore.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraInAppMessaging.d.ts +8 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraInAppMessaging.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraInbox.d.ts +9 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraInbox.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraInboxUI.d.ts +5 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraInboxUI.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraNativeEventEmitter.d.ts +35 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraNativeEventEmitter.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraPushNotification.d.ts +6 -0
- package/lib/typescript/commonjs/src/hydra-apis/HydraPushNotification.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +37 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraAccountConfig.d.ts +14 -0
- package/lib/typescript/commonjs/src/models/HydraAccountConfig.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraFirebaseRemoteConfigKeys.d.ts +13 -0
- package/lib/typescript/commonjs/src/models/HydraFirebaseRemoteConfigKeys.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraGeoConfig.d.ts +14 -0
- package/lib/typescript/commonjs/src/models/HydraGeoConfig.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppButtonComponent.d.ts +16 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppButtonComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppComponentStyle.d.ts +10 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppComponentStyle.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.d.ts +9 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppMessage.d.ts +29 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppMessage.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppTemplateType.d.ts +15 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppTemplateType.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppTextComponent.d.ts +11 -0
- package/lib/typescript/commonjs/src/models/HydraInAppMessage/HydraInAppTextComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraLogLevel.d.ts +9 -0
- package/lib/typescript/commonjs/src/models/HydraLogLevel.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNativeEvent.d.ts +20 -0
- package/lib/typescript/commonjs/src/models/HydraNativeEvent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotification.d.ts +32 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotification.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationBody.d.ts +19 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationBody.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationCta.d.ts +13 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationCta.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationCtaType.d.ts +13 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationCtaType.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationExpandedDetails.d.ts +19 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationExpandedDetails.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationGateway.d.ts +6 -0
- package/lib/typescript/commonjs/src/models/HydraNotification/HydraNotificationGateway.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraPushPreferences.d.ts +10 -0
- package/lib/typescript/commonjs/src/models/HydraPushPreferences.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraUserDetails.d.ts +16 -0
- package/lib/typescript/commonjs/src/models/HydraUserDetails.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/HydraVisitorInfo.d.ts +6 -0
- package/lib/typescript/commonjs/src/models/HydraVisitorInfo.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/NonHydraNotification.d.ts +9 -0
- package/lib/typescript/commonjs/src/models/NonHydraNotification.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/models/UserState.d.ts +11 -0
- package/lib/typescript/commonjs/src/models/UserState.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/src/GamificationBannerViewNativeComponent.d.ts +7 -0
- package/lib/typescript/module/src/GamificationBannerViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/GamificationEmbedViewNativeComponent.d.ts +7 -0
- package/lib/typescript/module/src/GamificationEmbedViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/GamificationLoyaltyViewNativeComponent.d.ts +7 -0
- package/lib/typescript/module/src/GamificationLoyaltyViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/NativeHydraLib.d.ts +46 -0
- package/lib/typescript/module/src/NativeHydraLib.d.ts.map +1 -0
- package/lib/typescript/module/src/components/GamificationBannerView.d.ts +6 -0
- package/lib/typescript/module/src/components/GamificationBannerView.d.ts.map +1 -0
- package/lib/typescript/module/src/components/GamificationEmbedView.d.ts +6 -0
- package/lib/typescript/module/src/components/GamificationEmbedView.d.ts.map +1 -0
- package/lib/typescript/module/src/components/GamificationLoyaltyView.d.ts +6 -0
- package/lib/typescript/module/src/components/GamificationLoyaltyView.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/Hydra.d.ts +15 -0
- package/lib/typescript/module/src/hydra-apis/Hydra.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/HydraCore.d.ts +18 -0
- package/lib/typescript/module/src/hydra-apis/HydraCore.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/HydraInAppMessaging.d.ts +8 -0
- package/lib/typescript/module/src/hydra-apis/HydraInAppMessaging.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/HydraInbox.d.ts +9 -0
- package/lib/typescript/module/src/hydra-apis/HydraInbox.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/HydraInboxUI.d.ts +5 -0
- package/lib/typescript/module/src/hydra-apis/HydraInboxUI.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/HydraNativeEventEmitter.d.ts +35 -0
- package/lib/typescript/module/src/hydra-apis/HydraNativeEventEmitter.d.ts.map +1 -0
- package/lib/typescript/module/src/hydra-apis/HydraPushNotification.d.ts +6 -0
- package/lib/typescript/module/src/hydra-apis/HydraPushNotification.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +37 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraAccountConfig.d.ts +14 -0
- package/lib/typescript/module/src/models/HydraAccountConfig.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraFirebaseRemoteConfigKeys.d.ts +13 -0
- package/lib/typescript/module/src/models/HydraFirebaseRemoteConfigKeys.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraGeoConfig.d.ts +14 -0
- package/lib/typescript/module/src/models/HydraGeoConfig.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppButtonComponent.d.ts +16 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppButtonComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppComponentStyle.d.ts +10 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppComponentStyle.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.d.ts +9 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppMessage.d.ts +29 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppMessage.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppTemplateType.d.ts +15 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppTemplateType.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppTextComponent.d.ts +11 -0
- package/lib/typescript/module/src/models/HydraInAppMessage/HydraInAppTextComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraLogLevel.d.ts +9 -0
- package/lib/typescript/module/src/models/HydraLogLevel.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNativeEvent.d.ts +20 -0
- package/lib/typescript/module/src/models/HydraNativeEvent.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotification.d.ts +32 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotification.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationBody.d.ts +19 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationBody.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationCta.d.ts +13 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationCta.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationCtaType.d.ts +13 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationCtaType.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationExpandedDetails.d.ts +19 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationExpandedDetails.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationGateway.d.ts +6 -0
- package/lib/typescript/module/src/models/HydraNotification/HydraNotificationGateway.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraPushPreferences.d.ts +10 -0
- package/lib/typescript/module/src/models/HydraPushPreferences.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraUserDetails.d.ts +16 -0
- package/lib/typescript/module/src/models/HydraUserDetails.d.ts.map +1 -0
- package/lib/typescript/module/src/models/HydraVisitorInfo.d.ts +6 -0
- package/lib/typescript/module/src/models/HydraVisitorInfo.d.ts.map +1 -0
- package/lib/typescript/module/src/models/NonHydraNotification.d.ts +9 -0
- package/lib/typescript/module/src/models/NonHydraNotification.d.ts.map +1 -0
- package/lib/typescript/module/src/models/UserState.d.ts +11 -0
- package/lib/typescript/module/src/models/UserState.d.ts.map +1 -0
- package/package.json +225 -0
- package/react-native-hydra-lib.podspec +256 -0
- package/react-native.config.js +33 -0
- package/sbom.spdx.json +544 -0
- package/scripts/HydraPods.rb +151 -0
- package/scripts/generate-sbom.js +367 -0
- package/scripts/hydra-podspecs/HydraCore.podspec +13 -0
- package/scripts/hydra-podspecs/HydraInAppMessage.podspec +15 -0
- package/scripts/hydra-podspecs/HydraInboxCore.podspec +15 -0
- package/scripts/hydra-podspecs/HydraInboxUI.podspec +15 -0
- package/scripts/hydra-podspecs/HydraPushNotification.podspec +14 -0
- package/scripts/hydra-podspecs/HydraPushNotificationServiceExtension.podspec +15 -0
- package/src/GamificationBannerViewNativeComponent.ts +10 -0
- package/src/GamificationEmbedViewNativeComponent.ts +10 -0
- package/src/GamificationLoyaltyViewNativeComponent.ts +10 -0
- package/src/NativeHydraLib.ts +81 -0
- package/src/components/GamificationBannerView.tsx +10 -0
- package/src/components/GamificationEmbedView.tsx +10 -0
- package/src/components/GamificationLoyaltyView.tsx +10 -0
- package/src/hydra-apis/Hydra.ts +52 -0
- package/src/hydra-apis/HydraCore.ts +76 -0
- package/src/hydra-apis/HydraInAppMessaging.ts +25 -0
- package/src/hydra-apis/HydraInbox.ts +33 -0
- package/src/hydra-apis/HydraInboxUI.ts +10 -0
- package/src/hydra-apis/HydraNativeEventEmitter.ts +216 -0
- package/src/hydra-apis/HydraPushNotification.ts +15 -0
- package/src/index.tsx +71 -0
- package/src/models/HydraAccountConfig.ts +45 -0
- package/src/models/HydraFirebaseRemoteConfigKeys.ts +43 -0
- package/src/models/HydraGeoConfig.ts +27 -0
- package/src/models/HydraInAppMessage/HydraInAppButtonComponent.ts +27 -0
- package/src/models/HydraInAppMessage/HydraInAppComponentStyle.ts +24 -0
- package/src/models/HydraInAppMessage/HydraInAppFeedbackSelectionType.ts +35 -0
- package/src/models/HydraInAppMessage/HydraInAppMessage.ts +89 -0
- package/src/models/HydraInAppMessage/HydraInAppTemplateType.ts +57 -0
- package/src/models/HydraInAppMessage/HydraInAppTextComponent.ts +18 -0
- package/src/models/HydraLogLevel.ts +8 -0
- package/src/models/HydraNativeEvent.ts +19 -0
- package/src/models/HydraNotification/HydraNotification.ts +97 -0
- package/src/models/HydraNotification/HydraNotificationBody.ts +23 -0
- package/src/models/HydraNotification/HydraNotificationCta.ts +20 -0
- package/src/models/HydraNotification/HydraNotificationCtaType.ts +59 -0
- package/src/models/HydraNotification/HydraNotificationExpandedDetails.ts +28 -0
- package/src/models/HydraNotification/HydraNotificationGateway.ts +5 -0
- package/src/models/HydraPushPreferences.ts +16 -0
- package/src/models/HydraUserDetails.ts +31 -0
- package/src/models/HydraVisitorInfo.ts +14 -0
- package/src/models/NonHydraNotification.ts +15 -0
- package/src/models/UserState.ts +33 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Hydra.h
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 30/03/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
#import <UIKit/UIKit.h>
|
|
10
|
+
#import "HydraNativeRemoteConfig.h"
|
|
11
|
+
#import "HydraNativeFirebaseRemoteConfigKeys.h"
|
|
12
|
+
|
|
13
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
14
|
+
|
|
15
|
+
@interface Hydra : NSObject
|
|
16
|
+
|
|
17
|
+
+ (instancetype)sharedInstance;
|
|
18
|
+
|
|
19
|
+
/// Initialize the Hydra SDK.
|
|
20
|
+
///
|
|
21
|
+
/// @param application The UIApplication instance.
|
|
22
|
+
/// @param launchOptions The launch options dictionary from AppDelegate.
|
|
23
|
+
/// @param firebaseRemoteConfigKeys Optional. Custom Firebase Remote Config key names.
|
|
24
|
+
/// Pass nil to use default keys.
|
|
25
|
+
/// @param hydraRemoteConfig Optional. A pre-built HydraNativeRemoteConfig object.
|
|
26
|
+
/// When provided, Firebase Remote Config is bypassed entirely.
|
|
27
|
+
- (void)initialize:(UIApplication *)application
|
|
28
|
+
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
|
|
29
|
+
withKeys:(nullable HydraNativeFirebaseRemoteConfigKeys *)firebaseRemoteConfigKeys
|
|
30
|
+
withHydraRemoteConfig:(nullable HydraNativeRemoteConfig *)hydraRemoteConfig;
|
|
31
|
+
|
|
32
|
+
@end
|
|
33
|
+
|
|
34
|
+
NS_ASSUME_NONNULL_END
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Hydra.m
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 30/03/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "Hydra.h"
|
|
9
|
+
#import <React/RCTBridgeModule.h>
|
|
10
|
+
#import <UserNotifications/UserNotifications.h>
|
|
11
|
+
|
|
12
|
+
#if __has_include("react_native_hydra_lib-Swift.h")
|
|
13
|
+
#import "react_native_hydra_lib-Swift.h"
|
|
14
|
+
#elif __has_include(<react_native_hydra_lib/react_native_hydra_lib-Swift.h>)
|
|
15
|
+
#import <react_native_hydra_lib/react_native_hydra_lib-Swift.h>
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
@implementation Hydra
|
|
19
|
+
|
|
20
|
+
+ (instancetype)sharedInstance {
|
|
21
|
+
static Hydra *shared = nil;
|
|
22
|
+
static dispatch_once_t onceToken;
|
|
23
|
+
dispatch_once(&onceToken, ^{
|
|
24
|
+
shared = [[self alloc] init];
|
|
25
|
+
});
|
|
26
|
+
return shared;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
- (void)initialize:(UIApplication *)application
|
|
30
|
+
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
|
|
31
|
+
withKeys:(nullable HydraNativeFirebaseRemoteConfigKeys *)firebaseRemoteConfigKeys
|
|
32
|
+
withHydraRemoteConfig:(nullable HydraNativeRemoteConfig *)hydraRemoteConfig {
|
|
33
|
+
if (firebaseRemoteConfigKeys != nil) {
|
|
34
|
+
[[HydraApplicationDelegate shared] initApplicationWithFirebaseRemoteConfigKeys:application
|
|
35
|
+
didFinishLaunchingWithOptions:launchOptions
|
|
36
|
+
firebaseRemoteConfigKeys:firebaseRemoteConfigKeys];
|
|
37
|
+
} else if (hydraRemoteConfig != nil) {
|
|
38
|
+
[[HydraApplicationDelegate shared] initApplication:application
|
|
39
|
+
didFinishLaunchingWithOptions:launchOptions
|
|
40
|
+
hydraRemoteConfig:hydraRemoteConfig];
|
|
41
|
+
} else {
|
|
42
|
+
[[HydraApplicationDelegate shared] initApplicationWithFirebaseRemoteConfig:application
|
|
43
|
+
didFinishLaunchingWithOptions:launchOptions];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraNativeFirebaseRemoteConfigKeys.h
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 19/05/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
@interface HydraNativeFirebaseRemoteConfigKeys : NSObject
|
|
11
|
+
@property (nonatomic, strong) NSString *keyForAccountId;
|
|
12
|
+
@property (nonatomic, strong) NSString *keyForBaseUrl;
|
|
13
|
+
@property (nonatomic, strong) NSString *keyForSsl;
|
|
14
|
+
@property (nonatomic, strong) NSString *keyForRemoteLogLevel;
|
|
15
|
+
@property (nonatomic, strong, nullable) NSString *keyForOrgId;
|
|
16
|
+
@property (nonatomic, strong, nullable) NSString *keyForGamificationKey;
|
|
17
|
+
@property (nonatomic, strong, nullable) NSString *keyForGamificationRegion;
|
|
18
|
+
@property (nonatomic, strong, nullable) NSString *keyForGamificationBaseUrl;
|
|
19
|
+
|
|
20
|
+
-(instancetype)initWithKeyForAccountId:(NSString *)keyForAccountId keyForBaseUrl:(NSString *)keyForBaseUrl keyForSsl:(NSString *)keyForSsl keyForRemoteLogLevel:(NSString *)keyForRemoteLogLevel keyForOrgId:(nullable NSString *)keyForOrgId keyForGamificationKey:(nullable NSString *)keyForGamificationKey keyForGamificationRegion:(nullable NSString *)keyForGamificationRegion keyForGamificationBaseUrl:(nullable NSString *)keyForGamificationBaseUrl;
|
|
21
|
+
- (NSDictionary *)toDictionary;
|
|
22
|
+
+ (instancetype)fromDictionary:(NSDictionary *)dict;
|
|
23
|
+
@end
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraNativeFirebaseRemoteConfigKeys.m
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 19/05/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "HydraNativeFirebaseRemoteConfigKeys.h"
|
|
9
|
+
#import <React/RCTBridgeModule.h>
|
|
10
|
+
#import <UserNotifications/UserNotifications.h>
|
|
11
|
+
|
|
12
|
+
#if __has_include("react_native_hydra_lib-Swift.h")
|
|
13
|
+
#import "react_native_hydra_lib-Swift.h"
|
|
14
|
+
#elif __has_include(<react_native_hydra_lib/react_native_hydra_lib-Swift.h>)
|
|
15
|
+
#import <react_native_hydra_lib/react_native_hydra_lib-Swift.h>
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
@implementation HydraNativeFirebaseRemoteConfigKeys
|
|
19
|
+
-(instancetype)initWithKeyForAccountId:(NSString *)keyForAccountId keyForBaseUrl:(NSString *)keyForBaseUrl keyForSsl:(NSString *)keyForSsl keyForRemoteLogLevel:(NSString *)keyForRemoteLogLevel keyForOrgId:(nullable NSString *)keyForOrgId keyForGamificationKey:(nullable NSString *)keyForGamificationKey keyForGamificationRegion:(nullable NSString *)keyForGamificationRegion keyForGamificationBaseUrl:(nullable NSString *)keyForGamificationBaseUrl {
|
|
20
|
+
self = [super init];
|
|
21
|
+
if(keyForAccountId == nil || keyForAccountId.length == 0){
|
|
22
|
+
[[HydraSDKCore shared] logErrorWithErrorMsg:@"Key for account id is required"];
|
|
23
|
+
return nil;
|
|
24
|
+
} else if( keyForBaseUrl == nil || keyForBaseUrl.length == 0){
|
|
25
|
+
[[HydraSDKCore shared] logErrorWithErrorMsg:@"Key for baseUrl is required"];
|
|
26
|
+
return nil;
|
|
27
|
+
} else if(keyForSsl == nil || keyForSsl.length == 0){
|
|
28
|
+
[[HydraSDKCore shared] logErrorWithErrorMsg:@"Key for Ssl is required"];
|
|
29
|
+
return nil;
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
if(self){
|
|
33
|
+
_keyForAccountId = keyForAccountId;
|
|
34
|
+
_keyForBaseUrl = keyForBaseUrl;
|
|
35
|
+
_keyForSsl = keyForSsl;
|
|
36
|
+
_keyForRemoteLogLevel = keyForRemoteLogLevel;
|
|
37
|
+
_keyForOrgId = keyForOrgId;
|
|
38
|
+
_keyForGamificationKey = keyForGamificationKey;
|
|
39
|
+
_keyForGamificationRegion = keyForGamificationRegion;
|
|
40
|
+
_keyForGamificationBaseUrl = keyForGamificationBaseUrl;
|
|
41
|
+
}
|
|
42
|
+
return self;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
- (NSDictionary *)toDictionary {
|
|
47
|
+
NSMutableDictionary *dict = [@{
|
|
48
|
+
@"keyForAccountId" : self.keyForAccountId ?: @"",
|
|
49
|
+
@"keyForBaseUrl" : self.keyForBaseUrl ?: @"",
|
|
50
|
+
@"keyForSsl" : self.keyForSsl ?: @"",
|
|
51
|
+
@"keyForRemoteLogLevel" : self.keyForRemoteLogLevel ?: @"",
|
|
52
|
+
} mutableCopy];
|
|
53
|
+
if (self.keyForOrgId != nil) {
|
|
54
|
+
dict[@"keyForOrgId"] = self.keyForOrgId;
|
|
55
|
+
}
|
|
56
|
+
if (self.keyForGamificationKey != nil) {
|
|
57
|
+
dict[@"keyForGamificationKey"] = self.keyForGamificationKey;
|
|
58
|
+
}
|
|
59
|
+
if (self.keyForGamificationRegion != nil) {
|
|
60
|
+
dict[@"keyForGamificationRegion"] = self.keyForGamificationRegion;
|
|
61
|
+
}
|
|
62
|
+
if (self.keyForGamificationBaseUrl != nil) {
|
|
63
|
+
dict[@"keyForGamificationBaseUrl"] = self.keyForGamificationBaseUrl;
|
|
64
|
+
}
|
|
65
|
+
return [dict copy];
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
+ (instancetype)fromDictionary:(NSDictionary *)dict {
|
|
69
|
+
NSString *keyForAccountId = dict[@"keyForAccountId"];
|
|
70
|
+
NSString *keyForBaseUrl = dict[@"keyForBaseUrl"];
|
|
71
|
+
NSString *keyForSsl = dict[@"keyForSsl"];
|
|
72
|
+
NSString *keyForRemoteLogLevel = dict[@"keyForRemoteLogLevel"];
|
|
73
|
+
NSString *keyForOrgId = dict[@"keyForOrgId"];
|
|
74
|
+
NSString *keyForGamificationKey = dict[@"keyForGamificationKey"];
|
|
75
|
+
NSString *keyForGamificationRegion = dict[@"keyForGamificationRegion"];
|
|
76
|
+
NSString *keyForGamificationBaseUrl = dict[@"keyForGamificationBaseUrl"];
|
|
77
|
+
|
|
78
|
+
return [[HydraNativeFirebaseRemoteConfigKeys alloc] initWithKeyForAccountId:keyForAccountId keyForBaseUrl:keyForBaseUrl keyForSsl:keyForSsl keyForRemoteLogLevel:keyForRemoteLogLevel keyForOrgId:keyForOrgId keyForGamificationKey:keyForGamificationKey keyForGamificationRegion:keyForGamificationRegion keyForGamificationBaseUrl:keyForGamificationBaseUrl];
|
|
79
|
+
}
|
|
80
|
+
@end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraInitializer.h
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 23/12/24.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
#import "HydraNativeRemoteConfig.h"
|
|
10
|
+
#import "HydraNativeFirebaseRemoteConfigKeys.h"
|
|
11
|
+
@interface HydraNativeInitializer : NSObject
|
|
12
|
+
+ (instancetype)sharedInstance;
|
|
13
|
+
- (void)initApplicationUsingFirebaseRemoteConfig:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
|
|
14
|
+
- (void)initApplicationUsingFirebaseRemoteConfig:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions withKeys:(HydraNativeFirebaseRemoteConfigKeys *) firebaseRemoteConfigKeys;
|
|
15
|
+
- (void)initApplication:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions withHydraRemoteConfig:(HydraNativeRemoteConfig *)hydraRemoteConfig;
|
|
16
|
+
@end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraInitializer.m
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 23/12/24.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "HydraNativeInitializer.h"
|
|
9
|
+
#import <React/RCTBridgeModule.h>
|
|
10
|
+
#import <UserNotifications/UserNotifications.h>
|
|
11
|
+
|
|
12
|
+
#if __has_include("react_native_hydra_lib-Swift.h")
|
|
13
|
+
#import "react_native_hydra_lib-Swift.h"
|
|
14
|
+
#elif __has_include(<react_native_hydra_lib/react_native_hydra_lib-Swift.h>)
|
|
15
|
+
#import <react_native_hydra_lib/react_native_hydra_lib-Swift.h>
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
@implementation HydraNativeInitializer
|
|
19
|
+
+ (instancetype)sharedInstance {
|
|
20
|
+
static HydraNativeInitializer *shared = nil;
|
|
21
|
+
static dispatch_once_t onceToken;
|
|
22
|
+
dispatch_once(&onceToken, ^{
|
|
23
|
+
shared = [[self alloc] init];
|
|
24
|
+
});
|
|
25
|
+
return shared;
|
|
26
|
+
}
|
|
27
|
+
- (void)initApplicationUsingFirebaseRemoteConfig:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
|
28
|
+
[[HydraApplicationDelegate shared] initApplicationWithFirebaseRemoteConfig:application didFinishLaunchingWithOptions:launchOptions];
|
|
29
|
+
|
|
30
|
+
}
|
|
31
|
+
- (void)initApplication:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions withHydraRemoteConfig:(HydraNativeRemoteConfig *)hydraRemoteConfig {
|
|
32
|
+
[[HydraApplicationDelegate shared] initApplication:application didFinishLaunchingWithOptions:launchOptions hydraRemoteConfig:hydraRemoteConfig];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
- (void)initApplicationUsingFirebaseRemoteConfig:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions withKeys:(HydraNativeFirebaseRemoteConfigKeys *) firebaseRemoteConfigKeys{
|
|
36
|
+
[[HydraApplicationDelegate shared] initApplicationWithFirebaseRemoteConfigKeys:application didFinishLaunchingWithOptions:launchOptions firebaseRemoteConfigKeys : firebaseRemoteConfigKeys];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
@end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraNativeMessaging.h
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 01/01/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
#import "FirebaseMessaging/FirebaseMessaging.h"
|
|
10
|
+
#import <UserNotifications/UserNotifications.h>
|
|
11
|
+
|
|
12
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
13
|
+
|
|
14
|
+
@interface HydraNativeMessaging : NSObject
|
|
15
|
+
+ (instancetype)sharedInstance;
|
|
16
|
+
- (void)messaging:(FIRMessaging *)messaging didReceiveRegistrationToken:(NSString *)fcmToken;
|
|
17
|
+
- (void)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler;
|
|
18
|
+
- (void)userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)(void))completionHandler;
|
|
19
|
+
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler;
|
|
20
|
+
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error;
|
|
21
|
+
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken;
|
|
22
|
+
@end
|
|
23
|
+
|
|
24
|
+
NS_ASSUME_NONNULL_END
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraNativeMessaging.m
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 01/01/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "HydraNativeMessaging.h"
|
|
9
|
+
#import <React/RCTBridgeModule.h>
|
|
10
|
+
#import <UserNotifications/UserNotifications.h>
|
|
11
|
+
|
|
12
|
+
#if __has_include("react_native_hydra_lib-Swift.h")
|
|
13
|
+
#import "react_native_hydra_lib-Swift.h"
|
|
14
|
+
#elif __has_include(<react_native_hydra_lib/react_native_hydra_lib-Swift.h>)
|
|
15
|
+
#import <react_native_hydra_lib/react_native_hydra_lib-Swift.h>
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
@implementation HydraNativeMessaging
|
|
19
|
+
|
|
20
|
+
+ (instancetype)sharedInstance {
|
|
21
|
+
static HydraNativeMessaging *shared = nil;
|
|
22
|
+
static dispatch_once_t onceToken;
|
|
23
|
+
dispatch_once(&onceToken, ^{
|
|
24
|
+
shared = [[self alloc] init];
|
|
25
|
+
});
|
|
26
|
+
return shared;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
- (void)userNotificationCenter:(nonnull UNUserNotificationCenter *)center willPresentNotification:(nonnull UNNotification *)notification withCompletionHandler:(nonnull void (^)(UNNotificationPresentationOptions))completionHandler {
|
|
30
|
+
[[HydraPushNotification shared] userNotificationCenter:center willPresent:notification withCompletionHandler:completionHandler];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
- (void)userNotificationCenter:(nonnull UNUserNotificationCenter *)center didReceiveNotificationResponse:(nonnull UNNotificationResponse *)response withCompletionHandler:(nonnull void (^)())completionHandler {
|
|
34
|
+
[[HydraPushNotification shared] userNotificationCenter:center didReceive:response withCompletionHandler:completionHandler];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
- (void)messaging:(nonnull FIRMessaging *)messaging didReceiveRegistrationToken:(nonnull NSString *)fcmToken {
|
|
38
|
+
[[HydraPushNotification shared] messaging:messaging didReceiveRegistrationToken:fcmToken];
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
- (void)application:(nonnull UIApplication *)application didReceiveRemoteNotification:(nonnull NSDictionary *)userInfo fetchCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler {
|
|
42
|
+
[[HydraPushNotification shared] application:application didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
- (void)application:(nonnull UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(nonnull NSError *)error {
|
|
46
|
+
[[HydraPushNotification shared] application:application didFailToRegisterForRemoteNotificationsWithError:error];
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
- (void)application:(nonnull UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(nonnull NSData *)deviceToken {
|
|
50
|
+
[[HydraPushNotification shared] application:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
@end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraNativeRemoteConfig.h
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 26/02/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
11
|
+
|
|
12
|
+
@interface HydraNativeRemoteConfig : NSObject
|
|
13
|
+
@property (nonatomic, strong) NSString *accountId;
|
|
14
|
+
@property (nonatomic, strong) NSString *baseUrl;
|
|
15
|
+
@property (nonatomic, strong) NSString *sslPublicKey;
|
|
16
|
+
@property (nonatomic, assign) NSInteger remoteLogLevel;
|
|
17
|
+
@property (nonatomic, strong, nullable) NSString *orgId;
|
|
18
|
+
@property (nonatomic, strong, nullable) NSString *gamificationKey;
|
|
19
|
+
@property (nonatomic, strong, nullable) NSString *gamificationRegion;
|
|
20
|
+
@property (nonatomic, strong, nullable) NSString *gamificationBaseUrl;
|
|
21
|
+
|
|
22
|
+
-(nullable instancetype)initWithAccountId:(NSString *)accountId baseUrl:(NSString *)baseUrl sslPublicKey:(NSString *)sslPublicKey remoteLogLevel:(NSInteger)remoteLogLevel orgId:(nullable NSString *)orgId gamificationKey:(nullable NSString *)gamificationKey gamificationRegion:(nullable NSString *)gamificationRegion gamificationBaseUrl:(nullable NSString *)gamificationBaseUrl;
|
|
23
|
+
- (NSDictionary *)toDictionary;
|
|
24
|
+
+ (nullable instancetype)fromDictionary:(NSDictionary *)dict;
|
|
25
|
+
@end
|
|
26
|
+
|
|
27
|
+
NS_ASSUME_NONNULL_END
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
//
|
|
2
|
+
// HydraNativeRemoteConfig.m
|
|
3
|
+
// react-native-hydra-lib
|
|
4
|
+
//
|
|
5
|
+
// Created by Sandesh Kumar Jain on 26/02/25.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "HydraNativeRemoteConfig.h"
|
|
9
|
+
#import <React/RCTBridgeModule.h>
|
|
10
|
+
#import <UserNotifications/UserNotifications.h>
|
|
11
|
+
|
|
12
|
+
#if __has_include("react_native_hydra_lib-Swift.h")
|
|
13
|
+
#import "react_native_hydra_lib-Swift.h"
|
|
14
|
+
#elif __has_include(<react_native_hydra_lib/react_native_hydra_lib-Swift.h>)
|
|
15
|
+
#import <react_native_hydra_lib/react_native_hydra_lib-Swift.h>
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
@implementation HydraNativeRemoteConfig
|
|
19
|
+
|
|
20
|
+
- (instancetype)initWithAccountId:(NSString *)accountId baseUrl:(NSString *)baseUrl sslPublicKey:(NSString *)sslPublicKey remoteLogLevel:(NSInteger)remoteLogLevel orgId:(nullable NSString *)orgId gamificationKey:(nullable NSString *)gamificationKey gamificationRegion:(nullable NSString *)gamificationRegion gamificationBaseUrl:(nullable NSString *)gamificationBaseUrl {
|
|
21
|
+
self = [super init];
|
|
22
|
+
if(accountId == nil || accountId.length == 0){
|
|
23
|
+
[[HydraSDKCore shared] logErrorWithErrorMsg:@"Account id is required"];
|
|
24
|
+
return nil;
|
|
25
|
+
} else if( baseUrl == nil || baseUrl.length == 0){
|
|
26
|
+
[[HydraSDKCore shared] logErrorWithErrorMsg:@"Base URL is required"];
|
|
27
|
+
return nil;
|
|
28
|
+
} else if(sslPublicKey == nil ){
|
|
29
|
+
[[HydraSDKCore shared] logErrorWithErrorMsg:@"SSL Public Key is required"];
|
|
30
|
+
return nil;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
if(self){
|
|
34
|
+
_accountId = accountId;
|
|
35
|
+
_baseUrl = baseUrl;
|
|
36
|
+
_sslPublicKey = sslPublicKey;
|
|
37
|
+
_remoteLogLevel = remoteLogLevel;
|
|
38
|
+
_orgId = orgId;
|
|
39
|
+
_gamificationKey = gamificationKey;
|
|
40
|
+
_gamificationRegion = gamificationRegion;
|
|
41
|
+
_gamificationBaseUrl = gamificationBaseUrl;
|
|
42
|
+
}
|
|
43
|
+
return self;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
- (NSDictionary *)toDictionary {
|
|
48
|
+
NSMutableDictionary *dict = [@{
|
|
49
|
+
@"accountId": self.accountId ?: @"",
|
|
50
|
+
@"baseUrl": self.baseUrl ?: @"",
|
|
51
|
+
@"sslPublicKey": self.sslPublicKey ?: @"",
|
|
52
|
+
@"remoteLogLevel": @(self.remoteLogLevel)
|
|
53
|
+
} mutableCopy];
|
|
54
|
+
if (self.orgId != nil) {
|
|
55
|
+
dict[@"orgId"] = self.orgId;
|
|
56
|
+
}
|
|
57
|
+
if (self.gamificationKey != nil) {
|
|
58
|
+
dict[@"gamificationKey"] = self.gamificationKey;
|
|
59
|
+
}
|
|
60
|
+
if (self.gamificationRegion != nil) {
|
|
61
|
+
dict[@"gamificationRegion"] = self.gamificationRegion;
|
|
62
|
+
}
|
|
63
|
+
if (self.gamificationBaseUrl != nil) {
|
|
64
|
+
dict[@"gamificationBaseUrl"] = self.gamificationBaseUrl;
|
|
65
|
+
}
|
|
66
|
+
return [dict copy];
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
+ (instancetype)fromDictionary:(NSDictionary *)dict {
|
|
70
|
+
NSString *accountId = dict[@"accountId"];
|
|
71
|
+
NSString *baseUrl = dict[@"baseUrl"];
|
|
72
|
+
NSString *sslPublicKey = dict[@"sslPublicKey"];
|
|
73
|
+
NSNumber *remoteLogLevel = dict[@"remoteLogLevel"];
|
|
74
|
+
NSString *orgId = dict[@"orgId"];
|
|
75
|
+
NSString *gamificationKey = dict[@"gamificationKey"];
|
|
76
|
+
NSString *gamificationRegion = dict[@"gamificationRegion"];
|
|
77
|
+
NSString *gamificationBaseUrl = dict[@"gamificationBaseUrl"];
|
|
78
|
+
|
|
79
|
+
return [[HydraNativeRemoteConfig alloc] initWithAccountId:accountId
|
|
80
|
+
baseUrl:baseUrl
|
|
81
|
+
sslPublicKey:sslPublicKey
|
|
82
|
+
remoteLogLevel:remoteLogLevel.integerValue
|
|
83
|
+
orgId:orgId
|
|
84
|
+
gamificationKey:gamificationKey
|
|
85
|
+
gamificationRegion:gamificationRegion
|
|
86
|
+
gamificationBaseUrl:gamificationBaseUrl];
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
@end
|