@kindly-ai/react-native 0.1.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.
Files changed (63) hide show
  1. package/KindlyReactNative.podspec +36 -0
  2. package/LICENSE +20 -0
  3. package/README.md +127 -0
  4. package/android/build.gradle +113 -0
  5. package/android/maven-repo/ai/kindly/sdk/1.0.93/sdk-1.0.93.aar +0 -0
  6. package/android/maven-repo/ai/kindly/sdk/1.0.93/sdk-1.0.93.pom +125 -0
  7. package/android/src/main/AndroidManifest.xml +2 -0
  8. package/android/src/main/java/com/kindlyai/reactnative/KindlyReactNativeModule.kt +445 -0
  9. package/android/src/main/java/com/kindlyai/reactnative/KindlyReactNativePackage.kt +38 -0
  10. package/ios/Frameworks/Kindly.xcframework/Info.plist +44 -0
  11. package/ios/Frameworks/Kindly.xcframework/_CodeSignature/CodeDirectory +0 -0
  12. package/ios/Frameworks/Kindly.xcframework/_CodeSignature/CodeRequirements +0 -0
  13. package/ios/Frameworks/Kindly.xcframework/_CodeSignature/CodeRequirements-1 +0 -0
  14. package/ios/Frameworks/Kindly.xcframework/_CodeSignature/CodeResources +578 -0
  15. package/ios/Frameworks/Kindly.xcframework/_CodeSignature/CodeSignature +0 -0
  16. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Assets.car +0 -0
  17. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Config.plist +0 -0
  18. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/ConfirmationWindow.nib +0 -0
  19. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Headers/Kindly-Swift.h +331 -0
  20. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Headers/Kindly.h +18 -0
  21. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Info.plist +0 -0
  22. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Kindly +0 -0
  23. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios.abi.json +28769 -0
  24. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios.private.swiftinterface +547 -0
  25. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  26. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios.swiftinterface +543 -0
  27. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/Modules/module.modulemap +11 -0
  28. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/PrivacyInfo.xcprivacy +83 -0
  29. package/ios/Frameworks/Kindly.xcframework/ios-arm64/Kindly.framework/_CodeSignature/CodeResources +223 -0
  30. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Assets.car +0 -0
  31. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Config.plist +0 -0
  32. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/ConfirmationWindow.nib +0 -0
  33. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Headers/Kindly-Swift.h +658 -0
  34. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Headers/Kindly.h +18 -0
  35. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Info.plist +0 -0
  36. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Kindly +0 -0
  37. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios-simulator.abi.json +28769 -0
  38. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +547 -0
  39. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  40. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/arm64-apple-ios-simulator.swiftinterface +543 -0
  41. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/x86_64-apple-ios-simulator.abi.json +28769 -0
  42. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +547 -0
  43. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  44. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/Kindly.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +543 -0
  45. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/Modules/module.modulemap +11 -0
  46. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/PrivacyInfo.xcprivacy +83 -0
  47. package/ios/Frameworks/Kindly.xcframework/ios-arm64_x86_64-simulator/Kindly.framework/_CodeSignature/CodeResources +267 -0
  48. package/ios/KindlyReactNative.h +18 -0
  49. package/ios/KindlyReactNative.mm +234 -0
  50. package/ios/KindlyReactNativeImpl.swift +410 -0
  51. package/lib/module/NativeKindlyReactNative.js +22 -0
  52. package/lib/module/NativeKindlyReactNative.js.map +1 -0
  53. package/lib/module/index.js +280 -0
  54. package/lib/module/index.js.map +1 -0
  55. package/lib/module/package.json +1 -0
  56. package/lib/typescript/package.json +1 -0
  57. package/lib/typescript/src/NativeKindlyReactNative.d.ts +47 -0
  58. package/lib/typescript/src/NativeKindlyReactNative.d.ts.map +1 -0
  59. package/lib/typescript/src/index.d.ts +150 -0
  60. package/lib/typescript/src/index.d.ts.map +1 -0
  61. package/package.json +121 -0
  62. package/src/NativeKindlyReactNative.ts +80 -0
  63. package/src/index.tsx +353 -0
@@ -0,0 +1,36 @@
1
+ require "json"
2
+
3
+ package = JSON.parse(File.read(File.join(__dir__, "package.json")))
4
+
5
+ Pod::Spec.new do |s|
6
+ s.name = "KindlyReactNative"
7
+ s.version = package["version"]
8
+ s.summary = package["description"]
9
+ s.homepage = package["homepage"]
10
+ s.license = package["license"]
11
+ s.authors = package["author"]
12
+
13
+ # iOS 15.0 mirrors what `kindly-ai/sdk-chat-ios/Kindly.podspec` declares
14
+ # (the bundled xcframework is built against iOS 15). Older targets cause
15
+ # runtime crashes when dyld can't find symbols introduced in 15.x.
16
+ s.platforms = { :ios => "15.0" }
17
+ s.source = { :git => "https://github.com/AlexyIbrahim/sdk-chat-react-native-sources.git", :tag => "v#{s.version}" }
18
+
19
+ s.source_files = "ios/**/*.{h,m,mm,swift}"
20
+ s.private_header_files = "ios/**/*.h"
21
+
22
+ # Bundled iOS Kindly framework — populated by `scripts/bundle-native-sdks.yml`
23
+ # which fetches the pre-built signed xcframework from
24
+ # `kindly-ai/sdk-chat-ios` releases and copies it under `ios/Frameworks/`.
25
+ # Customers get the same binary native iOS customers get — no rebuild,
26
+ # no Apple cert in this pipeline.
27
+ s.vendored_frameworks = "ios/Frameworks/Kindly.xcframework"
28
+
29
+ # Sentry is the only external dep the bundled Kindly.xcframework needs at
30
+ # runtime (mirrors `Kindly.podspec` line 23 of the iOS source release repo).
31
+ s.dependency "Sentry", "~> 9.0"
32
+
33
+ s.swift_version = "5.0"
34
+
35
+ install_modules_dependencies(s)
36
+ end
package/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Alexy
4
+ Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ of this software and associated documentation files (the "Software"), to deal
6
+ in the Software without restriction, including without limitation the rights
7
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ copies of the Software, and to permit persons to whom the Software is
9
+ furnished to do so, subject to the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in all
12
+ copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,127 @@
1
+ # @kindly-ai/react-native
2
+
3
+ The official **Kindly Chat SDK** for React Native — a thin TurboModule
4
+ wrapper around the public iOS xcframework and Android AAR. The native
5
+ binaries ship inside the npm tarball, so customers don't need Swift Package
6
+ Manager, Maven Central, or any extra Gradle config.
7
+
8
+ > **Status:** Early access. Targets React Native New Architecture
9
+ > (TurboModules + Codegen). Requires RN ≥ 0.76.
10
+
11
+ ## Installation
12
+
13
+ ```sh
14
+ yarn add @kindly-ai/react-native
15
+ cd ios && pod install
16
+ ```
17
+
18
+ That's it — no extra setup. The bundled iOS framework is pre-signed with the
19
+ Apple Distribution cert and passes App Store ITMS-91065 validation.
20
+
21
+ ## Usage
22
+
23
+ ```ts
24
+ import { KindlySDK, hexColor } from '@kindly-ai/react-native';
25
+
26
+ // 1. Initialize once on app start
27
+ KindlySDK.start({
28
+ botKey: 'your-bot-key',
29
+ languageCode: 'en',
30
+ // Optional: invoked by the SDK when it needs an authenticated JWT.
31
+ // Return null for anonymous chats.
32
+ authTokenCallback: async () => null,
33
+ });
34
+
35
+ // 2. Open the chat UI when the user wants it
36
+ <Button title="Open chat" onPress={() => KindlySDK.launchChat()} />
37
+
38
+ // 3. (Optional) host-app callbacks for buttons / link interception
39
+ KindlySDK.setDelegate({
40
+ onButtonPressed: (button, chatLog) => console.log('button', button),
41
+ shouldHandleLink: (url) => {
42
+ if (url.startsWith('myapp://')) {
43
+ // Take over the deep link
44
+ return false;
45
+ }
46
+ return true; // let the SDK open it
47
+ },
48
+ });
49
+ ```
50
+
51
+ ## API
52
+
53
+ ### Lifecycle
54
+
55
+ | Method | Purpose |
56
+ |---|---|
57
+ | `start({botKey, languageCode?, authTokenCallback?})` | Initialize the SDK. Must be called before any other method. |
58
+ | `displayChat({languageCode?, triggerDialogueId?})` | Show the chat UI. |
59
+ | `launchChat({triggerDialogueId?})` | Connect (if needed) and show chat. Recommended on Android. |
60
+ | `closeChat()` | Dismiss the UI without ending the session. |
61
+ | `endChat()` | End the chat session: clears messages, token, dismisses UI. |
62
+ | `kill()` | Tear the SDK down completely; call `start()` again before reuse. |
63
+ | `setLanguage(code)` | Update the language for the current session. |
64
+
65
+ ### Messaging
66
+
67
+ | Method | Purpose |
68
+ |---|---|
69
+ | `sendMessage(text, {newContext?})` | Send a message programmatically. Returns the reconciled message. |
70
+ | `setNewContext({...})` / `clearNewContext()` | Stage / clear context attached to the next message. |
71
+ | `triggerDialogue(id)` / `clearTriggerDialogue()` | Trigger a specific dialogue by id. |
72
+ | `handleUrl(url)` | Handle a `kindly://chat/dialogue/{id}` deep link. Returns true if the URL was handled. |
73
+ | `callHandover(callback)` | Initiate a handover to a human agent. |
74
+
75
+ ### Theme
76
+
77
+ | Method | Purpose |
78
+ |---|---|
79
+ | `setCustomTheme({…})` | Apply a custom theme. Pass undefined fields to keep defaults. |
80
+ | `clearCustomTheme()` | Revert to the default / API-supplied theme. |
81
+ | `hexColor(hex)` | Helper: `#RRGGBB` / `#AARRGGBB` → ARGB int (used in the theme). |
82
+
83
+ ### Push
84
+
85
+ | Method | Purpose |
86
+ |---|---|
87
+ | `setAPNSDeviceToken(token)` | iOS only — register the APNS device token. |
88
+ | `saveNotificationToken(token)` | Android only — register the FCM token. |
89
+ | `handleNotification(data)` | Forward an incoming push payload to the SDK. |
90
+ | `isKindlyNotification(data)` | Returns true if the given push originated from Kindly. |
91
+
92
+ ### State / settings
93
+
94
+ | Method | Purpose |
95
+ |---|---|
96
+ | `isChatDisplayed()` | Returns true if the chat UI is currently visible (iOS only — Android always false). |
97
+ | `saveAuthToken(token)` | Save a JWT auth token (iOS keychain). |
98
+ | `setVerboseLogging(enabled)` | Toggle verbose SDK logging. |
99
+ | `setCrashReporting(enabled)` | Toggle Sentry crash reporting from inside the SDK. |
100
+
101
+ ### Delegate
102
+
103
+ | Method | Purpose |
104
+ |---|---|
105
+ | `setDelegate({onButtonPressed?, shouldHandleLink?, shouldHandleNotification?})` | Register host-app callbacks. |
106
+ | `clearDelegate()` | Remove all delegate callbacks. |
107
+
108
+ `shouldHandleLink` and `shouldHandleNotification` are awaited synchronously
109
+ by the native SDK with a 5-second timeout. After timeout the SDK falls back
110
+ to its default `true` (handle normally) so chat doesn't hang on a slow JS
111
+ callback.
112
+
113
+ ## Compatibility
114
+
115
+ - **React Native:** 0.76+ (New Architecture only)
116
+ - **iOS:** 15.0+
117
+ - **Android:** API level 24+ (Android 7.0)
118
+
119
+ ## Contributing
120
+
121
+ - [Development workflow](CONTRIBUTING.md#development-workflow)
122
+ - [Sending a pull request](CONTRIBUTING.md#sending-a-pull-request)
123
+ - [Code of conduct](CODE_OF_CONDUCT.md)
124
+
125
+ ## License
126
+
127
+ MIT
@@ -0,0 +1,113 @@
1
+ // Kindly React Native SDK — Android plugin build script.
2
+ //
3
+ // Architecture mirrors `flutter-sdk/android/build.gradle`:
4
+ //
5
+ // 1. Kotlin / AGP / JVM versions match the bundled Kindly Android SDK
6
+ // (currently Kotlin 2.3.20 / AGP 8.6.0 / JVM 17). The bundled AAR was
7
+ // compiled against those, and Kotlin metadata is NOT forward-compatible:
8
+ // older compilers throw "Module was compiled with an incompatible
9
+ // version of Kotlin" when they encounter 2.3.x metadata. Bumping in
10
+ // lockstep with `kindly-ai/sdk-chat-android-sources` is mandatory.
11
+ //
12
+ // 2. Local Maven repo (`maven-repo/`) inside this package's `android/`.
13
+ // Populated at bundle time by `scripts/bundle-native-sdks.yml` from
14
+ // `kindly-ai/sdk-chat-android` raw URLs. Customer apps pick it up
15
+ // transparently via the `allprojects { repositories { ... } }` block —
16
+ // strict-mode (`FAIL_ON_PROJECT_REPOS`) builds work without extra
17
+ // configuration since the path is local.
18
+ //
19
+ // 3. JitPack is NOT used. JitPack rejected `1.0.100`+ with opaque "Error
20
+ // building" messages and is generally flaky for arbitrary projects.
21
+ // The bundled-Maven approach has zero external dependencies.
22
+
23
+ buildscript {
24
+ ext.kotlin_version = "2.3.20"
25
+ repositories {
26
+ google()
27
+ mavenCentral()
28
+ }
29
+ dependencies {
30
+ classpath("com.android.tools.build:gradle:8.6.0")
31
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version")
32
+ }
33
+ }
34
+
35
+ apply plugin: "com.android.library"
36
+ apply plugin: "kotlin-android"
37
+
38
+ apply plugin: "com.facebook.react"
39
+
40
+ allprojects {
41
+ repositories {
42
+ google()
43
+ mavenCentral()
44
+ // Local Maven repo bundled INSIDE this RN package. Contains the signed
45
+ // Kindly Android SDK AAR + its full POM (= every transitive dep the
46
+ // SDK needs: Compose, Coil, Pusher, OkHttp, etc.). Populated at
47
+ // bundle time by `scripts/bundle-native-sdks.yml`, which fetches both
48
+ // files from the public release repo `kindly-ai/sdk-chat-android` and
49
+ // writes them under standard Maven layout.
50
+ maven { url "$projectDir/maven-repo" }
51
+ }
52
+ }
53
+
54
+ android {
55
+ namespace "com.kindlyai.reactnative"
56
+
57
+ // RN 0.85 template default is 36 — kept in lockstep so the codegen-
58
+ // generated abstract class compiles with the same ABI customers use.
59
+ compileSdkVersion 36
60
+
61
+ defaultConfig {
62
+ minSdkVersion 24 // RN's minimum since 0.74
63
+ targetSdkVersion 36
64
+ }
65
+
66
+ buildFeatures {
67
+ buildConfig true
68
+ }
69
+
70
+ buildTypes {
71
+ release {
72
+ minifyEnabled false
73
+ }
74
+ }
75
+
76
+ // JVM 17 — required by Kotlin 2.3.20 (which defaults to 21 unless
77
+ // overridden, and would fail with "Inconsistent JVM-target compatibility"
78
+ // if Java compile sat at 1.8). 17 is also the AGP 8.x default and what
79
+ // GitHub Actions / CI runners standardize on.
80
+ compileOptions {
81
+ sourceCompatibility JavaVersion.VERSION_17
82
+ targetCompatibility JavaVersion.VERSION_17
83
+ }
84
+
85
+ kotlinOptions {
86
+ jvmTarget = "17"
87
+ }
88
+
89
+ lint {
90
+ disable "GradleCompatible"
91
+ }
92
+
93
+ sourceSets {
94
+ main.java.srcDirs += "src/main/kotlin"
95
+ }
96
+ }
97
+
98
+ dependencies {
99
+ implementation "com.facebook.react:react-android"
100
+
101
+ // Kindly Android SDK resolved from the bundled `maven-repo/` (declared
102
+ // above in `allprojects`). The POM there lists the full transitive dep
103
+ // set so Gradle pulls everything automatically — no need to re-declare
104
+ // deps here. The version string is rewritten by
105
+ // `scripts/bundle-native-sdks.yml` at bundle time to match the just-
106
+ // released Android SDK version (`git describe --tags --abbrev=0` on
107
+ // the public release repo).
108
+ implementation "ai.kindly:sdk:1.0.93"
109
+
110
+ // Required by the AuthTokenCallback bridge in KindlyReactNativeModule.kt
111
+ // (`CompletableDeferred`, `runBlocking`, `withTimeoutOrNull`).
112
+ implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4"
113
+ }
@@ -0,0 +1,125 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3
+ <modelVersion>4.0.0</modelVersion>
4
+ <groupId>ai.kindly</groupId>
5
+ <artifactId>sdk</artifactId>
6
+ <version>1.0.93</version>
7
+ <packaging>aar</packaging>
8
+ <name>Kindly SDK</name>
9
+ <description>Kindly Chat SDK for Android — customer support chat widget</description>
10
+ <url>https://github.com/kindly-ai/chat-android.git</url>
11
+ <inceptionYear>2023</inceptionYear>
12
+ <licenses>
13
+ <license>
14
+ <name>The Apache License, Version 2.0</name>
15
+ <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
16
+ </license>
17
+ </licenses>
18
+ <developers>
19
+ <developer>
20
+ <id>AlexyIbrahim</id>
21
+ <name>Alexy Ibrahim</name>
22
+ <email>alexy.ib@gmail.com</email>
23
+ </developer>
24
+ </developers>
25
+ <scm>
26
+ <connection>scm:git:https://github.com/kindly-ai/sdk-chat-android.git</connection>
27
+ <developerConnection>scm:git:ssh://github.com/kindly-ai/sdk-chat-android.git</developerConnection>
28
+ <url>https://github.com/kindly-ai/sdk-chat-android</url>
29
+ </scm>
30
+ <build>
31
+ <plugins>
32
+ <plugin>
33
+ <groupId>com.simpligility.maven.plugins</groupId>
34
+ <artifactId>android-maven-plugin</artifactId>
35
+ <version>4.5.0</version>
36
+ <extensions>true</extensions>
37
+ </plugin>
38
+ </plugins>
39
+ </build>
40
+ <dependencies>
41
+ <dependency>
42
+ <groupId>junit</groupId>
43
+ <artifactId>junit</artifactId>
44
+ <version>2.0.0</version>
45
+ <type>jar</type>
46
+ <scope>test</scope>
47
+ <optional>true</optional>
48
+ </dependency>
49
+ <dependency>
50
+ <groupId>io.coil-kt</groupId>
51
+ <artifactId>coil-compose</artifactId>
52
+ <version>2.7.0</version>
53
+ </dependency>
54
+ <dependency>
55
+ <groupId>io.coil-kt</groupId>
56
+ <artifactId>coil-svg</artifactId>
57
+ <version>2.7.0</version>
58
+ </dependency>
59
+ <dependency>
60
+ <groupId>io.coil-kt</groupId>
61
+ <artifactId>coil-gif</artifactId>
62
+ <version>2.7.0</version>
63
+ </dependency>
64
+ <dependency>
65
+ <groupId>androidx.compose.ui</groupId>
66
+ <artifactId>ui</artifactId>
67
+ <version>1.6.4</version>
68
+ </dependency>
69
+ <dependency>
70
+ <groupId>androidx.compose.material3</groupId>
71
+ <artifactId>material3</artifactId>
72
+ <version>1.2.1</version>
73
+ </dependency>
74
+ <dependency>
75
+ <groupId>androidx.compose.ui</groupId>
76
+ <artifactId>ui-tooling-preview</artifactId>
77
+ <version>1.6.4</version>
78
+ </dependency>
79
+ <dependency>
80
+ <groupId>androidx.navigation</groupId>
81
+ <artifactId>navigation-compose</artifactId>
82
+ <version>2.7.7</version>
83
+ </dependency>
84
+ <dependency>
85
+ <groupId>androidx.activity</groupId>
86
+ <artifactId>activity-compose</artifactId>
87
+ <version>1.8.2</version>
88
+ </dependency>
89
+ <dependency>
90
+ <groupId>androidx.lifecycle</groupId>
91
+ <artifactId>lifecycle-runtime-ktx</artifactId>
92
+ <version>2.7.0</version>
93
+ </dependency>
94
+ <dependency>
95
+ <groupId>androidx.lifecycle</groupId>
96
+ <artifactId>lifecycle-process</artifactId>
97
+ <version>2.7.0</version>
98
+ </dependency>
99
+ <dependency>
100
+ <groupId>androidx.core</groupId>
101
+ <artifactId>core-ktx</artifactId>
102
+ <version>1.12.0</version>
103
+ </dependency>
104
+ <dependency>
105
+ <groupId>com.pusher</groupId>
106
+ <artifactId>pusher-java-client</artifactId>
107
+ <version>2.4.4</version>
108
+ </dependency>
109
+ <dependency>
110
+ <groupId>org.jetbrains.kotlinx</groupId>
111
+ <artifactId>kotlinx-serialization-json</artifactId>
112
+ <version>1.7.3</version>
113
+ </dependency>
114
+ <dependency>
115
+ <groupId>com.google.firebase</groupId>
116
+ <artifactId>firebase-messaging-ktx</artifactId>
117
+ <version>24.0.3</version>
118
+ </dependency>
119
+ <dependency>
120
+ <groupId>io.sentry</groupId>
121
+ <artifactId>sentry-android</artifactId>
122
+ <version>[8.0.0,9.0.0)</version>
123
+ </dependency>
124
+ </dependencies>
125
+ </project>
@@ -0,0 +1,2 @@
1
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
+ </manifest>