rn-erxes-sdk 0.4.6 → 0.5.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.
@@ -0,0 +1,76 @@
1
+ // Android native module for rn-erxes-sdk. Bridges the erxes Android Messenger
2
+ // SDK (com.erxes:messenger-sdk) to React Native, mirroring the iOS bridge in
3
+ // `ios/RnErxesSdk.swift`. Android currently implements chat mode only.
4
+ //
5
+ // Plugins (Android Gradle Plugin, Kotlin) come from the consuming app's
6
+ // buildscript classpath via React Native autolinking, so this module does not
7
+ // declare its own buildscript block — it is always built linked into an app
8
+ // (or an Expo prebuild), never standalone.
9
+ apply plugin: "com.android.library"
10
+ apply plugin: "org.jetbrains.kotlin.android"
11
+
12
+ def getExtOrDefault(name) {
13
+ return rootProject.ext.has(name) ? rootProject.ext.get(name) : project.properties["RnErxesSdk_" + name]
14
+ }
15
+
16
+ def getExtOrIntegerDefault(name) {
17
+ return rootProject.ext.has(name) ? rootProject.ext.get(name) : (project.properties["RnErxesSdk_" + name]).toInteger()
18
+ }
19
+
20
+ android {
21
+ namespace "com.erxessdk"
22
+
23
+ compileSdkVersion getExtOrIntegerDefault("compileSdkVersion")
24
+
25
+ defaultConfig {
26
+ // The erxes Android SDK requires API 24+.
27
+ minSdkVersion Math.max(24, getExtOrIntegerDefault("minSdkVersion"))
28
+ targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
29
+ }
30
+
31
+ buildTypes {
32
+ release {
33
+ minifyEnabled false
34
+ }
35
+ }
36
+
37
+ // The erxes Android SDK is compiled against Java 17.
38
+ compileOptions {
39
+ sourceCompatibility JavaVersion.VERSION_17
40
+ targetCompatibility JavaVersion.VERSION_17
41
+ }
42
+
43
+ kotlinOptions {
44
+ jvmTarget = "17"
45
+ }
46
+ }
47
+
48
+ repositories {
49
+ google()
50
+ mavenCentral()
51
+ // The erxes Android SDK is not published to a remote Maven repo yet. For local
52
+ // development, install it with:
53
+ // ./gradlew :messenger-sdk:publishToMavenLocal (run in the android-sdk checkout)
54
+ // which drops com.erxes:messenger-sdk:<version> into ~/.m2. When the SDK is
55
+ // published remotely (e.g. JitPack/Maven Central), add that repo here and drop
56
+ // mavenLocal().
57
+ mavenLocal()
58
+ }
59
+
60
+ dependencies {
61
+ // Version is supplied by the consuming app's React Native Gradle setup.
62
+ implementation "com.facebook.react:react-android"
63
+
64
+ // The erxes Android Messenger SDK (chat mode).
65
+ implementation "com.erxes:messenger-sdk:0.30.1"
66
+
67
+ // Needed at compile time to construct `Appearance(primaryColor: Color)`. The
68
+ // SDK pulls these transitively at runtime, but exposes them as `implementation`
69
+ // (not `api`), so we depend on them explicitly. No Compose compiler is needed —
70
+ // this module references `Color` only as a data type, it has no @Composable code.
71
+ implementation platform("androidx.compose:compose-bom:2024.12.01")
72
+ implementation "androidx.compose.ui:ui-graphics"
73
+
74
+ // For the StateFlow (isReady) collector on the main dispatcher.
75
+ implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0"
76
+ }
@@ -0,0 +1,7 @@
1
+ # Fallback build settings used when the consuming app's root project does not
2
+ # define these in `ext` (e.g. standalone tooling). A real React Native app
3
+ # overrides these via its root build.gradle `ext` block.
4
+ RnErxesSdk_compileSdkVersion=35
5
+ RnErxesSdk_minSdkVersion=24
6
+ RnErxesSdk_targetSdkVersion=34
7
+ RnErxesSdk_kotlinVersion=2.0.21
@@ -0,0 +1,6 @@
1
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
+ <!--
3
+ The SDK declares its own MessengerActivity in its manifest, which merges in
4
+ automatically. This module only needs the manifest shell.
5
+ -->
6
+ </manifest>
@@ -0,0 +1,286 @@
1
+ package com.erxessdk
2
+
3
+ import androidx.compose.ui.graphics.Color
4
+ import com.erxes.messenger.ErxesMessenger
5
+ import com.erxes.messenger.config.ActionItem
6
+ import com.erxes.messenger.config.Appearance
7
+ import com.erxes.messenger.config.DisplayMode
8
+ import com.erxes.messenger.config.MessengerConfig
9
+ import com.erxes.messenger.config.MessengerUser
10
+ import com.facebook.react.bridge.Arguments
11
+ import com.facebook.react.bridge.Promise
12
+ import com.facebook.react.bridge.ReactApplicationContext
13
+ import com.facebook.react.bridge.ReactContextBaseJavaModule
14
+ import com.facebook.react.bridge.ReactMethod
15
+ import com.facebook.react.bridge.ReadableArray
16
+ import com.facebook.react.bridge.ReadableMap
17
+ import com.facebook.react.bridge.UiThreadUtil
18
+ import com.facebook.react.bridge.WritableMap
19
+ import com.facebook.react.modules.core.DeviceEventManagerModule
20
+ import kotlinx.coroutines.CoroutineScope
21
+ import kotlinx.coroutines.Dispatchers
22
+ import kotlinx.coroutines.SupervisorJob
23
+ import kotlinx.coroutines.cancel
24
+ import kotlinx.coroutines.flow.distinctUntilChanged
25
+ import kotlinx.coroutines.flow.filter
26
+ import kotlinx.coroutines.launch
27
+
28
+ /**
29
+ * React Native bridge for the erxes Android Messenger SDK. Counterpart to the
30
+ * iOS `RnErxesSdk` (see `ios/RnErxesSdk.swift`); the native module name, method
31
+ * names, and event names match so the shared JS layer (`src/nativeIos.ts`) and
32
+ * `NativeEventEmitter` wiring work unchanged across platforms.
33
+ *
34
+ * Android implements **chat mode** only. The classic-mode launcher/imperative-hide
35
+ * methods (`showLauncher`/`hideLauncher`/`hideMessenger`) have no Android SDK
36
+ * equivalent and are no-ops here so the cross-platform JS contract resolves
37
+ * identically.
38
+ */
39
+ class RnErxesSdkModule(private val reactContext: ReactApplicationContext) :
40
+ ReactContextBaseJavaModule(reactContext) {
41
+
42
+ /** Replaced on each `configure()`; collects `ErxesMessenger.isReady`. */
43
+ private var readyScope: CoroutineScope? = null
44
+
45
+ /** Active JS listener count — mirrors iOS `hasListeners` so we don't emit into the void. */
46
+ private var listenerCount = 0
47
+
48
+ override fun getName(): String = NAME
49
+
50
+ // region Configuration
51
+
52
+ @ReactMethod
53
+ fun configure(options: ReadableMap, promise: Promise) {
54
+ val integrationId = options.stringOrNull("integrationId")
55
+ if (integrationId.isNullOrEmpty()) {
56
+ promise.reject("missing_integration_id", "integrationId is required")
57
+ return
58
+ }
59
+
60
+ val endpoint = endpoint(options)
61
+ if (endpoint == null) {
62
+ promise.reject("missing_endpoint", "endpoint, serverUrl, or subDomain is required")
63
+ return
64
+ }
65
+
66
+ // Mirrors iOS: default to classic, opt into chat with displayMode: 'chat'.
67
+ val displayMode = when (options.stringOrNull("displayMode")) {
68
+ "chat" -> DisplayMode.CHAT
69
+ else -> DisplayMode.CLASSIC
70
+ }
71
+
72
+ val appearance = hexColor(options.stringOrNull("primaryColor"))
73
+ ?.let { Appearance(primaryColor = it) }
74
+ ?: Appearance()
75
+
76
+ val config = MessengerConfig(
77
+ endpoint = endpoint,
78
+ integrationId = integrationId,
79
+ cachedCustomerId = options.stringOrNull("cachedCustomerId"),
80
+ appearance = appearance,
81
+ displayMode = displayMode,
82
+ homeActions = actionItems(options.arrayOrNull("homeActions")),
83
+ drawerActions = actionItems(options.arrayOrNull("drawerActions")),
84
+ )
85
+
86
+ // Route chat-mode action taps to JS as `onErxesAction` events.
87
+ ErxesMessenger.onAction = { id ->
88
+ if (listenerCount > 0) {
89
+ emit(ACTION_EVENT, Arguments.createMap().apply { putString("id", id) })
90
+ }
91
+ }
92
+
93
+ // Forward the connect handshake to JS as `onErxesReady`. `isReady` is a
94
+ // StateFlow, so it replays its current value on collection — a `configure()`
95
+ // after the SDK is already connected still notifies JS. `distinctUntilChanged`
96
+ // + `filter { it }` mirror the iOS Combine pipeline (one emission per connect).
97
+ readyScope?.cancel()
98
+ val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate)
99
+ readyScope = scope
100
+ scope.launch {
101
+ ErxesMessenger.isReady
102
+ .distinctUntilChanged()
103
+ .filter { it }
104
+ .collect {
105
+ if (listenerCount > 0) {
106
+ emit(READY_EVENT, null)
107
+ }
108
+ }
109
+ }
110
+
111
+ // `configure()` registers chat-mode auto-present via activity lifecycle
112
+ // callbacks, so run it on the main thread.
113
+ UiThreadUtil.runOnUiThread {
114
+ ErxesMessenger.configure(reactContext.applicationContext, config)
115
+ promise.resolve(null)
116
+ }
117
+ }
118
+
119
+ // endregion
120
+
121
+ // region User
122
+
123
+ @ReactMethod
124
+ fun setUser(options: ReadableMap, promise: Promise) {
125
+ // Note: iOS `MessengerUser` carries `customData`; the Android SDK's
126
+ // `MessengerUser` does not, so `customData` is accepted but ignored here.
127
+ ErxesMessenger.setUser(
128
+ MessengerUser(
129
+ email = options.stringOrNull("email"),
130
+ name = options.stringOrNull("name"),
131
+ phone = options.stringOrNull("phone"),
132
+ )
133
+ )
134
+ promise.resolve(null)
135
+ }
136
+
137
+ @ReactMethod
138
+ fun clearUser(promise: Promise) {
139
+ ErxesMessenger.clearUser()
140
+ promise.resolve(null)
141
+ }
142
+
143
+ // endregion
144
+
145
+ // region Presentation
146
+
147
+ @ReactMethod
148
+ fun showMessenger(promise: Promise) {
149
+ val activity = currentActivity
150
+ if (activity == null) {
151
+ promise.reject("missing_presenter", "Unable to find an activity to present from")
152
+ return
153
+ }
154
+ UiThreadUtil.runOnUiThread {
155
+ runCatching { ErxesMessenger.show(activity) }
156
+ .onSuccess { promise.resolve(null) }
157
+ .onFailure { promise.reject("show_failed", it.message, it) }
158
+ }
159
+ }
160
+
161
+ // The launcher visibility / imperative-hide methods are classic-mode iOS
162
+ // concepts with no Android SDK equivalent (chat mode auto-presents and is
163
+ // dismissed by the user). No-op so the shared JS contract resolves identically.
164
+
165
+ @ReactMethod
166
+ fun hideMessenger(promise: Promise) {
167
+ promise.resolve(null)
168
+ }
169
+
170
+ @ReactMethod
171
+ fun showLauncher(promise: Promise) {
172
+ promise.resolve(null)
173
+ }
174
+
175
+ @ReactMethod
176
+ fun hideLauncher(promise: Promise) {
177
+ promise.resolve(null)
178
+ }
179
+
180
+ // endregion
181
+
182
+ // region Event emitter plumbing (required by NativeEventEmitter on Android)
183
+
184
+ @ReactMethod
185
+ fun addListener(eventName: String) {
186
+ listenerCount += 1
187
+ }
188
+
189
+ @ReactMethod
190
+ fun removeListeners(count: Int) {
191
+ listenerCount = (listenerCount - count).coerceAtLeast(0)
192
+ }
193
+
194
+ override fun invalidate() {
195
+ readyScope?.cancel()
196
+ readyScope = null
197
+ ErxesMessenger.onAction = null
198
+ listenerCount = 0
199
+ super.invalidate()
200
+ }
201
+
202
+ private fun emit(name: String, body: WritableMap?) {
203
+ reactContext
204
+ .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter::class.java)
205
+ .emit(name, body)
206
+ }
207
+
208
+ // endregion
209
+
210
+ // region Parsing helpers (ported from the iOS bridge)
211
+
212
+ private fun endpoint(options: ReadableMap): String? {
213
+ options.stringOrNull("endpoint")?.let { return it }
214
+ options.stringOrNull("serverUrl")?.let { return it }
215
+
216
+ val subDomain = options.stringOrNull("subDomain") ?: return null
217
+ return if (subDomain.startsWith("http://") || subDomain.startsWith("https://")) {
218
+ subDomain
219
+ } else {
220
+ "https://$subDomain"
221
+ }
222
+ }
223
+
224
+ /**
225
+ * Parse `[{ id, title, systemIcon }]` from JS into `[ActionItem]`. Entries
226
+ * without an `id` are skipped. The iOS `systemIcon` (an SF Symbol name) has no
227
+ * Android equivalent — Android `ActionItem` icons are vectors/drawables — so it
228
+ * is ignored; the action still works via `id`/`title`.
229
+ */
230
+ private fun actionItems(value: ReadableArray?): List<ActionItem> {
231
+ if (value == null) return emptyList()
232
+ val items = mutableListOf<ActionItem>()
233
+ for (i in 0 until value.size()) {
234
+ val map = value.getMap(i) ?: continue
235
+ val id = map.stringOrNull("id") ?: continue
236
+ items.add(ActionItem(id = id, title = map.stringOrNull("title") ?: ""))
237
+ }
238
+ return items
239
+ }
240
+
241
+ /** Parse a `#RGB`/`#RRGGBB`/`#RRGGBBAA` hex string into a Compose [Color]. */
242
+ private fun hexColor(value: String?): Color? {
243
+ var hex = value?.trim()?.removePrefix("#") ?: return null
244
+
245
+ // Expand shorthand #RGB to #RRGGBB.
246
+ if (hex.length == 3) {
247
+ hex = hex.map { "$it$it" }.joinToString("")
248
+ }
249
+
250
+ if (hex.length != 6 && hex.length != 8) return null
251
+ val intValue = hex.toLongOrNull(16) ?: return null
252
+
253
+ return if (hex.length == 8) {
254
+ Color(
255
+ red = ((intValue shr 24) and 0xFF).toInt(),
256
+ green = ((intValue shr 16) and 0xFF).toInt(),
257
+ blue = ((intValue shr 8) and 0xFF).toInt(),
258
+ alpha = (intValue and 0xFF).toInt(),
259
+ )
260
+ } else {
261
+ Color(
262
+ red = ((intValue shr 16) and 0xFF).toInt(),
263
+ green = ((intValue shr 8) and 0xFF).toInt(),
264
+ blue = (intValue and 0xFF).toInt(),
265
+ )
266
+ }
267
+ }
268
+
269
+ private fun ReadableMap.stringOrNull(key: String): String? =
270
+ if (hasKey(key) && !isNull(key)) getString(key)?.ifEmpty { null } else null
271
+
272
+ private fun ReadableMap.arrayOrNull(key: String): ReadableArray? =
273
+ if (hasKey(key) && !isNull(key)) getArray(key) else null
274
+
275
+ // endregion
276
+
277
+ companion object {
278
+ const val NAME = "RnErxesSdk"
279
+
280
+ /** JS event fired when a chat-mode action is tapped. */
281
+ private const val ACTION_EVENT = "onErxesAction"
282
+
283
+ /** JS event fired when the connect handshake completes. */
284
+ private const val READY_EVENT = "onErxesReady"
285
+ }
286
+ }
@@ -0,0 +1,15 @@
1
+ package com.erxessdk
2
+
3
+ import com.facebook.react.ReactPackage
4
+ import com.facebook.react.bridge.NativeModule
5
+ import com.facebook.react.bridge.ReactApplicationContext
6
+ import com.facebook.react.uimanager.ViewManager
7
+
8
+ /** Registers [RnErxesSdkModule] with React Native. Discovered via autolinking. */
9
+ class RnErxesSdkPackage : ReactPackage {
10
+ override fun createNativeModules(reactContext: ReactApplicationContext): List<NativeModule> =
11
+ listOf(RnErxesSdkModule(reactContext))
12
+
13
+ override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> =
14
+ emptyList()
15
+ }
@@ -102,7 +102,7 @@ function ErxesMessenger(_ref2) {
102
102
  onActionRef.current = onAction;
103
103
  }, [homeActions, drawerActions, onAction]);
104
104
  (0, _react.useEffect)(() => {
105
- if (_reactNative.Platform.OS !== 'ios') {
105
+ if (_reactNative.Platform.OS !== 'ios' && _reactNative.Platform.OS !== 'android') {
106
106
  return;
107
107
  }
108
108
  setConfigured(false);
@@ -212,7 +212,7 @@ function ErxesMessenger(_ref2) {
212
212
  // Wait until `configure()` has resolved — otherwise `showMessenger()` would
213
213
  // race ahead of it and trip the native configure-before-show assertion. The
214
214
  // initial open is handled in `setup()`; this only reacts to later changes.
215
- if (_reactNative.Platform.OS !== 'ios' || visible === undefined || !configured) {
215
+ if (_reactNative.Platform.OS !== 'ios' && _reactNative.Platform.OS !== 'android' || visible === undefined || !configured) {
216
216
  return;
217
217
  }
218
218
  if (visible && !shownRef.current) {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_nativeIos","stripActions","actions","map","_ref","onPress","_onPress","nativeAction","ErxesMessenger","_ref2","integrationId","endpoint","serverUrl","subDomain","displayMode","user","cachedCustomerId","primaryColor","visible","autoOpen","autoHideOnUnmount","launcherVisible","homeActions","drawerActions","renderLoading","onLoad","onReady","onOpen","onClose","onError","onAction","onLoadingChange","actionsRef","useRef","onActionRef","onLoadingChangeRef","shownRef","configured","setConfigured","useState","loading","setLoading","useEffect","current","_onLoadingChangeRef$c","call","Platform","OS","helpers","show","ErxesNativeIOS","showMessenger","hide","hideMessenger","showLauncher","hideLauncher","setUser","nextUser","clearUser","sub","addActionListener","id","_onActionRef$current","action","find","item","readySub","addReadyListener","setup","configure","shouldOpen","error","remove","undefined"],"sourceRoot":"../../src","sources":["ErxesMessenger.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,UAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;AACA;;AA0EA;AACA;AACA;AACA;AACA;AACA,SAASG,YAAYA,CAACC,OAAsB,EAAE;EAC5C,OAAOA,OAAO,CAACC,GAAG,CAACC,IAAA;IAAA,IAAC;MAAEC,OAAO,EAAEC,QAAQ;MAAE,GAAGC;IAAa,CAAC,GAAAH,IAAA;IAAA,OAAKG,YAAY;EAAA,EAAC;AAC9E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAAAC,KAAA,EAuBN;EAAA,IAvBO;IAC7BC,aAAa;IACbC,QAAQ;IACRC,SAAS;IACTC,SAAS;IACTC,WAAW,GAAG,SAAS;IACvBC,IAAI;IACJC,gBAAgB;IAChBC,YAAY;IACZC,OAAO;IACPC,QAAQ,GAAGL,WAAW,KAAK,MAAM;IACjCM,iBAAiB,GAAG,IAAI;IACxBC,eAAe;IACfC,WAAW,GAAG,EAAE;IAChBC,aAAa,GAAG,EAAE;IAClBC,aAAa;IACbC,MAAM;IACNC,OAAO;IACPC,MAAM;IACNC,OAAO;IACPC,OAAO;IACPC,QAAQ;IACRC;EACmB,CAAC,GAAAtB,KAAA;EACpB;EACA;EACA,MAAMuB,UAAU,GAAG,IAAAC,aAAM,EAAgB,EAAE,CAAC;EAC5C,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAACH,QAAQ,CAAC;EACpC,MAAMK,kBAAkB,GAAG,IAAAF,aAAM,EAACF,eAAe,CAAC;EAClD;EACA;EACA;EACA;EACA,MAAMK,QAAQ,GAAG,IAAAH,aAAM,EAAC,KAAK,CAAC;;EAE9B;EACA;EACA;EACA,MAAM,CAACI,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACnD;EACA;EACA,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EAE7C,IAAAG,gBAAS,EAAC,MAAM;IACdP,kBAAkB,CAACQ,OAAO,GAAGZ,eAAe;EAC9C,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,IAAAW,gBAAS,EAAC,MAAM;IAAA,IAAAE,qBAAA;IACd,CAAAA,qBAAA,GAAAT,kBAAkB,CAACQ,OAAO,cAAAC,qBAAA,uBAA1BA,qBAAA,CAAAC,IAAA,CAAAV,kBAAkB,EAAWK,OAAO,CAAC;EACvC,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAAE,gBAAS,EAAC,MAAM;IACdV,UAAU,CAACW,OAAO,GAAG,CAAC,GAAGrB,WAAW,EAAE,GAAGC,aAAa,CAAC;IACvDW,WAAW,CAACS,OAAO,GAAGb,QAAQ;EAChC,CAAC,EAAE,CAACR,WAAW,EAAEC,aAAa,EAAEO,QAAQ,CAAC,CAAC;EAE1C,IAAAY,gBAAS,EAAC,MAAM;IACd,IAAII,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;MACzB;IACF;IAEAT,aAAa,CAAC,KAAK,CAAC;IAEpB,MAAMU,OAA8B,GAAG;MACrCC,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAMC,yBAAc,CAACC,aAAa,CAAC,CAAC;QACpCf,QAAQ,CAACO,OAAO,GAAG,IAAI;MACzB,CAAC;MACDS,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAMF,yBAAc,CAACG,aAAa,CAAC,CAAC;QACpCjB,QAAQ,CAACO,OAAO,GAAG,KAAK;MAC1B,CAAC;MACDW,YAAY,EAAEA,CAAA,KAAMJ,yBAAc,CAACI,YAAY,CAAC,CAAC;MACjDC,YAAY,EAAEA,CAAA,KAAML,yBAAc,CAACK,YAAY,CAAC,CAAC;MACjDC,OAAO,EAAGC,QAAQ,IAAKP,yBAAc,CAACM,OAAO,CAACC,QAAQ,CAAC;MACvDC,SAAS,EAAEA,CAAA,KAAMR,yBAAc,CAACQ,SAAS,CAAC;IAC5C,CAAC;IAED,MAAMC,GAAG,GAAGT,yBAAc,CAACU,iBAAiB,CAAC,MAAOC,EAAE,IAAK;MAAA,IAAAC,oBAAA;MACzD,MAAMC,MAAM,GAAG/B,UAAU,CAACW,OAAO,CAACqB,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACJ,EAAE,KAAKA,EAAE,CAAC;MAEhE,IAAIE,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE1D,OAAO,EAAE;QACnB,MAAM0D,MAAM,CAAC1D,OAAO,CAAC2C,OAAO,CAAC;QAC7B;MACF;MAEA,QAAAc,oBAAA,GAAM5B,WAAW,CAACS,OAAO,cAAAmB,oBAAA,uBAAnBA,oBAAA,CAAAjB,IAAA,CAAAX,WAAW,EAAW2B,EAAE,EAAEb,OAAO,CAAC;IAC1C,CAAC,CAAC;;IAEF;IACA;IACA,MAAMkB,QAAQ,GAAGhB,yBAAc,CAACiB,gBAAgB,CAAC,MAAM;MACrD1B,UAAU,CAAC,KAAK,CAAC;MACjBf,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;IACb,CAAC,CAAC;IAEF,eAAe0C,KAAKA,CAAA,EAAG;MACrB,IAAI;QACF3B,UAAU,CAAC,IAAI,CAAC;QAChBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;QAEV,IAAIV,IAAI,EAAE;UACR,MAAMmC,yBAAc,CAACM,OAAO,CAACzC,IAAI,CAAC;QACpC;QAEA,MAAMmC,yBAAc,CAACmB,SAAS,CAAC;UAC7B3D,aAAa;UACbC,QAAQ;UACRC,SAAS;UACTC,SAAS;UACTG,gBAAgB;UAChBF,WAAW;UACXG,YAAY;UACZK,WAAW,EAAErB,YAAY,CAACqB,WAAW,CAAC;UACtCC,aAAa,EAAEtB,YAAY,CAACsB,aAAa;QAC3C,CAAC,CAAC;;QAEF;QACA;;QAEA;QACA;QACA,MAAM+C,UAAU,GAAGpD,OAAO,IAAIC,QAAQ;QAEtC,IAAIL,WAAW,KAAK,MAAM,EAAE;UAC1B;UACA;UACA,IAAIwD,UAAU,EAAE;YACdlC,QAAQ,CAACO,OAAO,GAAG,IAAI;YACvBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;UACZ,CAAC,MAAM;YACL;YACA,MAAMuB,yBAAc,CAACG,aAAa,CAAC,CAAC;YACpCjB,QAAQ,CAACO,OAAO,GAAG,KAAK;UAC1B;QACF,CAAC,MAAM;UACL;UACA;UACA,IAAItB,eAAe,KAAK,IAAI,EAAE;YAC5B,MAAM6B,yBAAc,CAACI,YAAY,CAAC,CAAC;UACrC,CAAC,MAAM,IAAIjC,eAAe,KAAK,KAAK,EAAE;YACpC,MAAM6B,yBAAc,CAACK,YAAY,CAAC,CAAC;UACrC;UAEA,IAAIe,UAAU,EAAE;YACd,MAAMpB,yBAAc,CAACC,aAAa,CAAC,CAAC;YACpCf,QAAQ,CAACO,OAAO,GAAG,IAAI;YACvBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;UACZ;QACF;QAEAW,aAAa,CAAC,IAAI,CAAC;MACrB,CAAC,CAAC,OAAOiC,KAAK,EAAE;QACd;QACA;QACA9B,UAAU,CAAC,KAAK,CAAC;QACjBZ,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG0C,KAAK,CAAC;MAClB;IACF;IAEAH,KAAK,CAAC,CAAC;IAEP,OAAO,MAAM;MACXT,GAAG,CAACa,MAAM,CAAC,CAAC;MACZN,QAAQ,CAACM,MAAM,CAAC,CAAC;MAEjB,IAAIpD,iBAAiB,IAAIgB,QAAQ,CAACO,OAAO,EAAE;QACzCO,yBAAc,CAACG,aAAa,CAAC,CAAC;QAC9BjB,QAAQ,CAACO,OAAO,GAAG,KAAK;QACxBf,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;MACb;IACF,CAAC;IACD;IACA;IACA;EACF,CAAC,EAAE,CAAClB,aAAa,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,SAAS,EAAEC,WAAW,CAAC,CAAC;EAEhE,IAAA4B,gBAAS,EAAC,MAAM;IACd;IACA;IACA;IACA,IAAII,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI7B,OAAO,KAAKuD,SAAS,IAAI,CAACpC,UAAU,EAAE;MACjE;IACF;IAEA,IAAInB,OAAO,IAAI,CAACkB,QAAQ,CAACO,OAAO,EAAE;MAChCO,yBAAc,CAACC,aAAa,CAAC,CAAC;MAC9Bf,QAAQ,CAACO,OAAO,GAAG,IAAI;MACvBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;IACZ,CAAC,MAAM,IAAI,CAACT,OAAO,IAAIkB,QAAQ,CAACO,OAAO,EAAE;MACvCO,yBAAc,CAACG,aAAa,CAAC,CAAC;MAC9BjB,QAAQ,CAACO,OAAO,GAAG,KAAK;MACxBf,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;IACb;IACA;EACF,CAAC,EAAE,CAACV,OAAO,EAAEmB,UAAU,CAAC,CAAC;EAEzB,IAAIG,OAAO,IAAIhB,aAAa,EAAE;IAC5B,OAAOA,aAAa,CAAC,CAAC;EACxB;EAEA,OAAO,IAAI;AACb"}
1
+ {"version":3,"names":["_react","require","_reactNative","_nativeIos","stripActions","actions","map","_ref","onPress","_onPress","nativeAction","ErxesMessenger","_ref2","integrationId","endpoint","serverUrl","subDomain","displayMode","user","cachedCustomerId","primaryColor","visible","autoOpen","autoHideOnUnmount","launcherVisible","homeActions","drawerActions","renderLoading","onLoad","onReady","onOpen","onClose","onError","onAction","onLoadingChange","actionsRef","useRef","onActionRef","onLoadingChangeRef","shownRef","configured","setConfigured","useState","loading","setLoading","useEffect","current","_onLoadingChangeRef$c","call","Platform","OS","helpers","show","ErxesNativeIOS","showMessenger","hide","hideMessenger","showLauncher","hideLauncher","setUser","nextUser","clearUser","sub","addActionListener","id","_onActionRef$current","action","find","item","readySub","addReadyListener","setup","configure","shouldOpen","error","remove","undefined"],"sourceRoot":"../../src","sources":["ErxesMessenger.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,UAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;AACA;;AA0EA;AACA;AACA;AACA;AACA;AACA,SAASG,YAAYA,CAACC,OAAsB,EAAE;EAC5C,OAAOA,OAAO,CAACC,GAAG,CAACC,IAAA;IAAA,IAAC;MAAEC,OAAO,EAAEC,QAAQ;MAAE,GAAGC;IAAa,CAAC,GAAAH,IAAA;IAAA,OAAKG,YAAY;EAAA,EAAC;AAC9E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAAAC,KAAA,EAuBN;EAAA,IAvBO;IAC7BC,aAAa;IACbC,QAAQ;IACRC,SAAS;IACTC,SAAS;IACTC,WAAW,GAAG,SAAS;IACvBC,IAAI;IACJC,gBAAgB;IAChBC,YAAY;IACZC,OAAO;IACPC,QAAQ,GAAGL,WAAW,KAAK,MAAM;IACjCM,iBAAiB,GAAG,IAAI;IACxBC,eAAe;IACfC,WAAW,GAAG,EAAE;IAChBC,aAAa,GAAG,EAAE;IAClBC,aAAa;IACbC,MAAM;IACNC,OAAO;IACPC,MAAM;IACNC,OAAO;IACPC,OAAO;IACPC,QAAQ;IACRC;EACmB,CAAC,GAAAtB,KAAA;EACpB;EACA;EACA,MAAMuB,UAAU,GAAG,IAAAC,aAAM,EAAgB,EAAE,CAAC;EAC5C,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAACH,QAAQ,CAAC;EACpC,MAAMK,kBAAkB,GAAG,IAAAF,aAAM,EAACF,eAAe,CAAC;EAClD;EACA;EACA;EACA;EACA,MAAMK,QAAQ,GAAG,IAAAH,aAAM,EAAC,KAAK,CAAC;;EAE9B;EACA;EACA;EACA,MAAM,CAACI,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACnD;EACA;EACA,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EAE7C,IAAAG,gBAAS,EAAC,MAAM;IACdP,kBAAkB,CAACQ,OAAO,GAAGZ,eAAe;EAC9C,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,IAAAW,gBAAS,EAAC,MAAM;IAAA,IAAAE,qBAAA;IACd,CAAAA,qBAAA,GAAAT,kBAAkB,CAACQ,OAAO,cAAAC,qBAAA,uBAA1BA,qBAAA,CAAAC,IAAA,CAAAV,kBAAkB,EAAWK,OAAO,CAAC;EACvC,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAAE,gBAAS,EAAC,MAAM;IACdV,UAAU,CAACW,OAAO,GAAG,CAAC,GAAGrB,WAAW,EAAE,GAAGC,aAAa,CAAC;IACvDW,WAAW,CAACS,OAAO,GAAGb,QAAQ;EAChC,CAAC,EAAE,CAACR,WAAW,EAAEC,aAAa,EAAEO,QAAQ,CAAC,CAAC;EAE1C,IAAAY,gBAAS,EAAC,MAAM;IACd,IAAII,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAID,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;MACtD;IACF;IAEAT,aAAa,CAAC,KAAK,CAAC;IAEpB,MAAMU,OAA8B,GAAG;MACrCC,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAMC,yBAAc,CAACC,aAAa,CAAC,CAAC;QACpCf,QAAQ,CAACO,OAAO,GAAG,IAAI;MACzB,CAAC;MACDS,IAAI,EAAE,MAAAA,CAAA,KAAY;QAChB,MAAMF,yBAAc,CAACG,aAAa,CAAC,CAAC;QACpCjB,QAAQ,CAACO,OAAO,GAAG,KAAK;MAC1B,CAAC;MACDW,YAAY,EAAEA,CAAA,KAAMJ,yBAAc,CAACI,YAAY,CAAC,CAAC;MACjDC,YAAY,EAAEA,CAAA,KAAML,yBAAc,CAACK,YAAY,CAAC,CAAC;MACjDC,OAAO,EAAGC,QAAQ,IAAKP,yBAAc,CAACM,OAAO,CAACC,QAAQ,CAAC;MACvDC,SAAS,EAAEA,CAAA,KAAMR,yBAAc,CAACQ,SAAS,CAAC;IAC5C,CAAC;IAED,MAAMC,GAAG,GAAGT,yBAAc,CAACU,iBAAiB,CAAC,MAAOC,EAAE,IAAK;MAAA,IAAAC,oBAAA;MACzD,MAAMC,MAAM,GAAG/B,UAAU,CAACW,OAAO,CAACqB,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACJ,EAAE,KAAKA,EAAE,CAAC;MAEhE,IAAIE,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE1D,OAAO,EAAE;QACnB,MAAM0D,MAAM,CAAC1D,OAAO,CAAC2C,OAAO,CAAC;QAC7B;MACF;MAEA,QAAAc,oBAAA,GAAM5B,WAAW,CAACS,OAAO,cAAAmB,oBAAA,uBAAnBA,oBAAA,CAAAjB,IAAA,CAAAX,WAAW,EAAW2B,EAAE,EAAEb,OAAO,CAAC;IAC1C,CAAC,CAAC;;IAEF;IACA;IACA,MAAMkB,QAAQ,GAAGhB,yBAAc,CAACiB,gBAAgB,CAAC,MAAM;MACrD1B,UAAU,CAAC,KAAK,CAAC;MACjBf,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;IACb,CAAC,CAAC;IAEF,eAAe0C,KAAKA,CAAA,EAAG;MACrB,IAAI;QACF3B,UAAU,CAAC,IAAI,CAAC;QAChBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;QAEV,IAAIV,IAAI,EAAE;UACR,MAAMmC,yBAAc,CAACM,OAAO,CAACzC,IAAI,CAAC;QACpC;QAEA,MAAMmC,yBAAc,CAACmB,SAAS,CAAC;UAC7B3D,aAAa;UACbC,QAAQ;UACRC,SAAS;UACTC,SAAS;UACTG,gBAAgB;UAChBF,WAAW;UACXG,YAAY;UACZK,WAAW,EAAErB,YAAY,CAACqB,WAAW,CAAC;UACtCC,aAAa,EAAEtB,YAAY,CAACsB,aAAa;QAC3C,CAAC,CAAC;;QAEF;QACA;;QAEA;QACA;QACA,MAAM+C,UAAU,GAAGpD,OAAO,IAAIC,QAAQ;QAEtC,IAAIL,WAAW,KAAK,MAAM,EAAE;UAC1B;UACA;UACA,IAAIwD,UAAU,EAAE;YACdlC,QAAQ,CAACO,OAAO,GAAG,IAAI;YACvBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;UACZ,CAAC,MAAM;YACL;YACA,MAAMuB,yBAAc,CAACG,aAAa,CAAC,CAAC;YACpCjB,QAAQ,CAACO,OAAO,GAAG,KAAK;UAC1B;QACF,CAAC,MAAM;UACL;UACA;UACA,IAAItB,eAAe,KAAK,IAAI,EAAE;YAC5B,MAAM6B,yBAAc,CAACI,YAAY,CAAC,CAAC;UACrC,CAAC,MAAM,IAAIjC,eAAe,KAAK,KAAK,EAAE;YACpC,MAAM6B,yBAAc,CAACK,YAAY,CAAC,CAAC;UACrC;UAEA,IAAIe,UAAU,EAAE;YACd,MAAMpB,yBAAc,CAACC,aAAa,CAAC,CAAC;YACpCf,QAAQ,CAACO,OAAO,GAAG,IAAI;YACvBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;UACZ;QACF;QAEAW,aAAa,CAAC,IAAI,CAAC;MACrB,CAAC,CAAC,OAAOiC,KAAK,EAAE;QACd;QACA;QACA9B,UAAU,CAAC,KAAK,CAAC;QACjBZ,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG0C,KAAK,CAAC;MAClB;IACF;IAEAH,KAAK,CAAC,CAAC;IAEP,OAAO,MAAM;MACXT,GAAG,CAACa,MAAM,CAAC,CAAC;MACZN,QAAQ,CAACM,MAAM,CAAC,CAAC;MAEjB,IAAIpD,iBAAiB,IAAIgB,QAAQ,CAACO,OAAO,EAAE;QACzCO,yBAAc,CAACG,aAAa,CAAC,CAAC;QAC9BjB,QAAQ,CAACO,OAAO,GAAG,KAAK;QACxBf,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;MACb;IACF,CAAC;IACD;IACA;IACA;EACF,CAAC,EAAE,CAAClB,aAAa,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,SAAS,EAAEC,WAAW,CAAC,CAAC;EAEhE,IAAA4B,gBAAS,EAAC,MAAM;IACd;IACA;IACA;IACA,IACGI,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAID,qBAAQ,CAACC,EAAE,KAAK,SAAS,IACnD7B,OAAO,KAAKuD,SAAS,IACrB,CAACpC,UAAU,EACX;MACA;IACF;IAEA,IAAInB,OAAO,IAAI,CAACkB,QAAQ,CAACO,OAAO,EAAE;MAChCO,yBAAc,CAACC,aAAa,CAAC,CAAC;MAC9Bf,QAAQ,CAACO,OAAO,GAAG,IAAI;MACvBhB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAG,CAAC;IACZ,CAAC,MAAM,IAAI,CAACT,OAAO,IAAIkB,QAAQ,CAACO,OAAO,EAAE;MACvCO,yBAAc,CAACG,aAAa,CAAC,CAAC;MAC9BjB,QAAQ,CAACO,OAAO,GAAG,KAAK;MACxBf,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;IACb;IACA;EACF,CAAC,EAAE,CAACV,OAAO,EAAEmB,UAAU,CAAC,CAAC;EAEzB,IAAIG,OAAO,IAAIhB,aAAa,EAAE;IAC5B,OAAOA,aAAa,CAAC,CAAC;EACxB;EAEA,OAAO,IAAI;AACb"}
@@ -16,11 +16,11 @@ const ACTION_EVENT = 'onErxesAction';
16
16
 
17
17
  /** Native event name emitted when the connect handshake completes. */
18
18
  const READY_EVENT = 'onErxesReady';
19
- const LINKING_ERROR = "The rn-erxes-sdk native iOS module is not linked. Run `pod install` in your app's ios directory and rebuild the app.";
19
+ const LINKING_ERROR = _reactNative.Platform.OS === 'android' ? 'The rn-erxes-sdk native Android module is not linked. Rebuild the Android app (e.g. `npx react-native run-android`).' : "The rn-erxes-sdk native iOS module is not linked. Run `pod install` in your app's ios directory and rebuild the app.";
20
20
  const nativeModule = _reactNative.NativeModules.RnErxesSdk;
21
21
  function getNativeModule() {
22
- if (_reactNative.Platform.OS !== 'ios') {
23
- throw new Error('Erxes native messenger is only available on iOS.');
22
+ if (_reactNative.Platform.OS !== 'ios' && _reactNative.Platform.OS !== 'android') {
23
+ throw new Error('Erxes native messenger is only available on iOS and Android.');
24
24
  }
25
25
  if (!nativeModule) {
26
26
  throw new Error(LINKING_ERROR);
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","ACTION_EVENT","READY_EVENT","LINKING_ERROR","nativeModule","NativeModules","RnErxesSdk","getNativeModule","Platform","OS","Error","ErxesNativeIOS","configure","options","setUser","customData","Object","fromEntries","entries","filter","_ref","value","undefined","map","_ref2","key","String","clearUser","showMessenger","showLauncher","hideLauncher","hideMessenger","addActionListener","handler","emitter","NativeEventEmitter","addListener","event","id","addReadyListener","exports"],"sourceRoot":"../../src","sources":["nativeIos.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAQA;AACA;AACA;AACA;AACA;;AA2CA;AACA,MAAMC,YAAY,GAAG,eAAe;;AAEpC;AACA,MAAMC,WAAW,GAAG,cAAc;AAElC,MAAMC,aAAa,GACjB,sHAAsH;AAExH,MAAMC,YAAY,GAAGC,0BAAa,CAACC,UAAyC;AAE5E,SAASC,eAAeA,CAAA,EAAoB;EAC1C,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzB,MAAM,IAAIC,KAAK,CAAC,kDAAkD,CAAC;EACrE;EAEA,IAAI,CAACN,YAAY,EAAE;IACjB,MAAM,IAAIM,KAAK,CAACP,aAAa,CAAC;EAChC;EAEA,OAAOC,YAAY;AACrB;AAEO,MAAMO,cAAc,GAAG;EAC5BC,SAASA,CAACC,OAAwB,EAAE;IAClC,OAAON,eAAe,CAAC,CAAC,CAACK,SAAS,CAACC,OAAO,CAAC;EAC7C,CAAC;EACDC,OAAOA,CAACD,OAAsB,EAAE;IAC9B,MAAME,UAAU,GAAGC,MAAM,CAACC,WAAW,CACnCD,MAAM,CAACE,OAAO,CAACL,OAAO,CAACE,UAAU,IAAI,CAAC,CAAC,CAAC,CACrCI,MAAM,CAACC,IAAA;MAAA,IAAC,GAAGC,KAAK,CAAC,GAAAD,IAAA;MAAA,OAAKC,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKC,SAAS;IAAA,EAAC,CAC5DC,GAAG,CAACC,KAAA;MAAA,IAAC,CAACC,GAAG,EAAEJ,KAAK,CAAC,GAAAG,KAAA;MAAA,OAAK,CAACC,GAAG,EAAEC,MAAM,CAACL,KAAK,CAAC,CAAC;IAAA,EAC/C,CAAC;IAED,OAAOd,eAAe,CAAC,CAAC,CAACO,OAAO,CAAC;MAC/B,GAAGD,OAAO;MACVE;IACF,CAAC,CAAC;EACJ,CAAC;EACDY,SAASA,CAAA,EAAG;IACV,OAAOpB,eAAe,CAAC,CAAC,CAACoB,SAAS,CAAC,CAAC;EACtC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOrB,eAAe,CAAC,CAAC,CAACqB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOtB,eAAe,CAAC,CAAC,CAACsB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOvB,eAAe,CAAC,CAAC,CAACuB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOxB,eAAe,CAAC,CAAC,CAACwB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,iBAAiBA,CAACC,OAA6B,EAAuB;IACpE,MAAMC,OAAO,GAAG,IAAIC,+BAAkB,CACpC5B,eAAe,CAAC,CAClB,CAAC;IACD,OAAO2B,OAAO,CAACE,WAAW,CAACnC,YAAY,EAAGoC,KAAqB,IAC7DJ,OAAO,CAACI,KAAK,CAACC,EAAE,CAClB,CAAC;EACH,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,gBAAgBA,CAACN,OAAmB,EAAuB;IACzD,MAAMC,OAAO,GAAG,IAAIC,+BAAkB,CACpC5B,eAAe,CAAC,CAClB,CAAC;IACD,OAAO2B,OAAO,CAACE,WAAW,CAAClC,WAAW,EAAE,MAAM+B,OAAO,CAAC,CAAC,CAAC;EAC1D;AACF,CAAC;AAACO,OAAA,CAAA7B,cAAA,GAAAA,cAAA"}
1
+ {"version":3,"names":["_reactNative","require","ACTION_EVENT","READY_EVENT","LINKING_ERROR","Platform","OS","nativeModule","NativeModules","RnErxesSdk","getNativeModule","Error","ErxesNativeIOS","configure","options","setUser","customData","Object","fromEntries","entries","filter","_ref","value","undefined","map","_ref2","key","String","clearUser","showMessenger","showLauncher","hideLauncher","hideMessenger","addActionListener","handler","emitter","NativeEventEmitter","addListener","event","id","addReadyListener","exports"],"sourceRoot":"../../src","sources":["nativeIos.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAQA;AACA;AACA;AACA;AACA;;AA2CA;AACA,MAAMC,YAAY,GAAG,eAAe;;AAEpC;AACA,MAAMC,WAAW,GAAG,cAAc;AAElC,MAAMC,aAAa,GACjBC,qBAAQ,CAACC,EAAE,KAAK,SAAS,GACrB,sHAAsH,GACtH,sHAAsH;AAE5H,MAAMC,YAAY,GAAGC,0BAAa,CAACC,UAAyC;AAE5E,SAASC,eAAeA,CAAA,EAAoB;EAC1C,IAAIL,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAID,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;IACtD,MAAM,IAAIK,KAAK,CACb,8DACF,CAAC;EACH;EAEA,IAAI,CAACJ,YAAY,EAAE;IACjB,MAAM,IAAII,KAAK,CAACP,aAAa,CAAC;EAChC;EAEA,OAAOG,YAAY;AACrB;AAEO,MAAMK,cAAc,GAAG;EAC5BC,SAASA,CAACC,OAAwB,EAAE;IAClC,OAAOJ,eAAe,CAAC,CAAC,CAACG,SAAS,CAACC,OAAO,CAAC;EAC7C,CAAC;EACDC,OAAOA,CAACD,OAAsB,EAAE;IAC9B,MAAME,UAAU,GAAGC,MAAM,CAACC,WAAW,CACnCD,MAAM,CAACE,OAAO,CAACL,OAAO,CAACE,UAAU,IAAI,CAAC,CAAC,CAAC,CACrCI,MAAM,CAACC,IAAA;MAAA,IAAC,GAAGC,KAAK,CAAC,GAAAD,IAAA;MAAA,OAAKC,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKC,SAAS;IAAA,EAAC,CAC5DC,GAAG,CAACC,KAAA;MAAA,IAAC,CAACC,GAAG,EAAEJ,KAAK,CAAC,GAAAG,KAAA;MAAA,OAAK,CAACC,GAAG,EAAEC,MAAM,CAACL,KAAK,CAAC,CAAC;IAAA,EAC/C,CAAC;IAED,OAAOZ,eAAe,CAAC,CAAC,CAACK,OAAO,CAAC;MAC/B,GAAGD,OAAO;MACVE;IACF,CAAC,CAAC;EACJ,CAAC;EACDY,SAASA,CAAA,EAAG;IACV,OAAOlB,eAAe,CAAC,CAAC,CAACkB,SAAS,CAAC,CAAC;EACtC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOnB,eAAe,CAAC,CAAC,CAACmB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOpB,eAAe,CAAC,CAAC,CAACoB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOrB,eAAe,CAAC,CAAC,CAACqB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOtB,eAAe,CAAC,CAAC,CAACsB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,iBAAiBA,CAACC,OAA6B,EAAuB;IACpE,MAAMC,OAAO,GAAG,IAAIC,+BAAkB,CACpC1B,eAAe,CAAC,CAClB,CAAC;IACD,OAAOyB,OAAO,CAACE,WAAW,CAACnC,YAAY,EAAGoC,KAAqB,IAC7DJ,OAAO,CAACI,KAAK,CAACC,EAAE,CAClB,CAAC;EACH,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,gBAAgBA,CAACN,OAAmB,EAAuB;IACzD,MAAMC,OAAO,GAAG,IAAIC,+BAAkB,CACpC1B,eAAe,CAAC,CAClB,CAAC;IACD,OAAOyB,OAAO,CAACE,WAAW,CAAClC,WAAW,EAAE,MAAM+B,OAAO,CAAC,CAAC,CAAC;EAC1D;AACF,CAAC;AAACO,OAAA,CAAA7B,cAAA,GAAAA,cAAA"}
@@ -97,7 +97,7 @@ export function ErxesMessenger(_ref2) {
97
97
  onActionRef.current = onAction;
98
98
  }, [homeActions, drawerActions, onAction]);
99
99
  useEffect(() => {
100
- if (Platform.OS !== 'ios') {
100
+ if (Platform.OS !== 'ios' && Platform.OS !== 'android') {
101
101
  return;
102
102
  }
103
103
  setConfigured(false);
@@ -207,7 +207,7 @@ export function ErxesMessenger(_ref2) {
207
207
  // Wait until `configure()` has resolved — otherwise `showMessenger()` would
208
208
  // race ahead of it and trip the native configure-before-show assertion. The
209
209
  // initial open is handled in `setup()`; this only reacts to later changes.
210
- if (Platform.OS !== 'ios' || visible === undefined || !configured) {
210
+ if (Platform.OS !== 'ios' && Platform.OS !== 'android' || visible === undefined || !configured) {
211
211
  return;
212
212
  }
213
213
  if (visible && !shownRef.current) {
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useState","Platform","ErxesNativeIOS","stripActions","actions","map","_ref","onPress","_onPress","nativeAction","ErxesMessenger","_ref2","integrationId","endpoint","serverUrl","subDomain","displayMode","user","cachedCustomerId","primaryColor","visible","autoOpen","autoHideOnUnmount","launcherVisible","homeActions","drawerActions","renderLoading","onLoad","onReady","onOpen","onClose","onError","onAction","onLoadingChange","actionsRef","onActionRef","onLoadingChangeRef","shownRef","configured","setConfigured","loading","setLoading","current","_onLoadingChangeRef$c","call","OS","helpers","show","showMessenger","hide","hideMessenger","showLauncher","hideLauncher","setUser","nextUser","clearUser","sub","addActionListener","id","_onActionRef$current","action","find","item","readySub","addReadyListener","setup","configure","shouldOpen","error","remove","undefined"],"sourceRoot":"../../src","sources":["ErxesMessenger.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["useEffect","useRef","useState","Platform","ErxesNativeIOS","stripActions","actions","map","_ref","onPress","_onPress","nativeAction","ErxesMessenger","_ref2","integrationId","endpoint","serverUrl","subDomain","displayMode","user","cachedCustomerId","primaryColor","visible","autoOpen","autoHideOnUnmount","launcherVisible","homeActions","drawerActions","renderLoading","onLoad","onReady","onOpen","onClose","onError","onAction","onLoadingChange","actionsRef","onActionRef","onLoadingChangeRef","shownRef","configured","setConfigured","loading","setLoading","current","_onLoadingChangeRef$c","call","OS","helpers","show","showMessenger","hide","hideMessenger","showLauncher","hideLauncher","setUser","nextUser","clearUser","sub","addActionListener","id","_onActionRef$current","action","find","item","readySub","addReadyListener","setup","configure","shouldOpen","error","remove","undefined"],"sourceRoot":"../../src","sources":["ErxesMessenger.tsx"],"mappings":"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"}
@@ -11,11 +11,11 @@ const ACTION_EVENT = 'onErxesAction';
11
11
 
12
12
  /** Native event name emitted when the connect handshake completes. */
13
13
  const READY_EVENT = 'onErxesReady';
14
- const LINKING_ERROR = "The rn-erxes-sdk native iOS module is not linked. Run `pod install` in your app's ios directory and rebuild the app.";
14
+ const LINKING_ERROR = Platform.OS === 'android' ? 'The rn-erxes-sdk native Android module is not linked. Rebuild the Android app (e.g. `npx react-native run-android`).' : "The rn-erxes-sdk native iOS module is not linked. Run `pod install` in your app's ios directory and rebuild the app.";
15
15
  const nativeModule = NativeModules.RnErxesSdk;
16
16
  function getNativeModule() {
17
- if (Platform.OS !== 'ios') {
18
- throw new Error('Erxes native messenger is only available on iOS.');
17
+ if (Platform.OS !== 'ios' && Platform.OS !== 'android') {
18
+ throw new Error('Erxes native messenger is only available on iOS and Android.');
19
19
  }
20
20
  if (!nativeModule) {
21
21
  throw new Error(LINKING_ERROR);
@@ -1 +1 @@
1
- {"version":3,"names":["NativeEventEmitter","NativeModules","Platform","ACTION_EVENT","READY_EVENT","LINKING_ERROR","nativeModule","RnErxesSdk","getNativeModule","OS","Error","ErxesNativeIOS","configure","options","setUser","customData","Object","fromEntries","entries","filter","_ref","value","undefined","map","_ref2","key","String","clearUser","showMessenger","showLauncher","hideLauncher","hideMessenger","addActionListener","handler","emitter","addListener","event","id","addReadyListener"],"sourceRoot":"../../src","sources":["nativeIos.ts"],"mappings":"AAAA,SACEA,kBAAkB,EAClBC,aAAa,EACbC,QAAQ,QAGH,cAAc;;AAErB;AACA;AACA;AACA;AACA;;AA2CA;AACA,MAAMC,YAAY,GAAG,eAAe;;AAEpC;AACA,MAAMC,WAAW,GAAG,cAAc;AAElC,MAAMC,aAAa,GACjB,sHAAsH;AAExH,MAAMC,YAAY,GAAGL,aAAa,CAACM,UAAyC;AAE5E,SAASC,eAAeA,CAAA,EAAoB;EAC1C,IAAIN,QAAQ,CAACO,EAAE,KAAK,KAAK,EAAE;IACzB,MAAM,IAAIC,KAAK,CAAC,kDAAkD,CAAC;EACrE;EAEA,IAAI,CAACJ,YAAY,EAAE;IACjB,MAAM,IAAII,KAAK,CAACL,aAAa,CAAC;EAChC;EAEA,OAAOC,YAAY;AACrB;AAEA,OAAO,MAAMK,cAAc,GAAG;EAC5BC,SAASA,CAACC,OAAwB,EAAE;IAClC,OAAOL,eAAe,CAAC,CAAC,CAACI,SAAS,CAACC,OAAO,CAAC;EAC7C,CAAC;EACDC,OAAOA,CAACD,OAAsB,EAAE;IAC9B,MAAME,UAAU,GAAGC,MAAM,CAACC,WAAW,CACnCD,MAAM,CAACE,OAAO,CAACL,OAAO,CAACE,UAAU,IAAI,CAAC,CAAC,CAAC,CACrCI,MAAM,CAACC,IAAA;MAAA,IAAC,GAAGC,KAAK,CAAC,GAAAD,IAAA;MAAA,OAAKC,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKC,SAAS;IAAA,EAAC,CAC5DC,GAAG,CAACC,KAAA;MAAA,IAAC,CAACC,GAAG,EAAEJ,KAAK,CAAC,GAAAG,KAAA;MAAA,OAAK,CAACC,GAAG,EAAEC,MAAM,CAACL,KAAK,CAAC,CAAC;IAAA,EAC/C,CAAC;IAED,OAAOb,eAAe,CAAC,CAAC,CAACM,OAAO,CAAC;MAC/B,GAAGD,OAAO;MACVE;IACF,CAAC,CAAC;EACJ,CAAC;EACDY,SAASA,CAAA,EAAG;IACV,OAAOnB,eAAe,CAAC,CAAC,CAACmB,SAAS,CAAC,CAAC;EACtC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOpB,eAAe,CAAC,CAAC,CAACoB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOrB,eAAe,CAAC,CAAC,CAACqB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOtB,eAAe,CAAC,CAAC,CAACsB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOvB,eAAe,CAAC,CAAC,CAACuB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,iBAAiBA,CAACC,OAA6B,EAAuB;IACpE,MAAMC,OAAO,GAAG,IAAIlC,kBAAkB,CACpCQ,eAAe,CAAC,CAClB,CAAC;IACD,OAAO0B,OAAO,CAACC,WAAW,CAAChC,YAAY,EAAGiC,KAAqB,IAC7DH,OAAO,CAACG,KAAK,CAACC,EAAE,CAClB,CAAC;EACH,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,gBAAgBA,CAACL,OAAmB,EAAuB;IACzD,MAAMC,OAAO,GAAG,IAAIlC,kBAAkB,CACpCQ,eAAe,CAAC,CAClB,CAAC;IACD,OAAO0B,OAAO,CAACC,WAAW,CAAC/B,WAAW,EAAE,MAAM6B,OAAO,CAAC,CAAC,CAAC;EAC1D;AACF,CAAC"}
1
+ {"version":3,"names":["NativeEventEmitter","NativeModules","Platform","ACTION_EVENT","READY_EVENT","LINKING_ERROR","OS","nativeModule","RnErxesSdk","getNativeModule","Error","ErxesNativeIOS","configure","options","setUser","customData","Object","fromEntries","entries","filter","_ref","value","undefined","map","_ref2","key","String","clearUser","showMessenger","showLauncher","hideLauncher","hideMessenger","addActionListener","handler","emitter","addListener","event","id","addReadyListener"],"sourceRoot":"../../src","sources":["nativeIos.ts"],"mappings":"AAAA,SACEA,kBAAkB,EAClBC,aAAa,EACbC,QAAQ,QAGH,cAAc;;AAErB;AACA;AACA;AACA;AACA;;AA2CA;AACA,MAAMC,YAAY,GAAG,eAAe;;AAEpC;AACA,MAAMC,WAAW,GAAG,cAAc;AAElC,MAAMC,aAAa,GACjBH,QAAQ,CAACI,EAAE,KAAK,SAAS,GACrB,sHAAsH,GACtH,sHAAsH;AAE5H,MAAMC,YAAY,GAAGN,aAAa,CAACO,UAAyC;AAE5E,SAASC,eAAeA,CAAA,EAAoB;EAC1C,IAAIP,QAAQ,CAACI,EAAE,KAAK,KAAK,IAAIJ,QAAQ,CAACI,EAAE,KAAK,SAAS,EAAE;IACtD,MAAM,IAAII,KAAK,CACb,8DACF,CAAC;EACH;EAEA,IAAI,CAACH,YAAY,EAAE;IACjB,MAAM,IAAIG,KAAK,CAACL,aAAa,CAAC;EAChC;EAEA,OAAOE,YAAY;AACrB;AAEA,OAAO,MAAMI,cAAc,GAAG;EAC5BC,SAASA,CAACC,OAAwB,EAAE;IAClC,OAAOJ,eAAe,CAAC,CAAC,CAACG,SAAS,CAACC,OAAO,CAAC;EAC7C,CAAC;EACDC,OAAOA,CAACD,OAAsB,EAAE;IAC9B,MAAME,UAAU,GAAGC,MAAM,CAACC,WAAW,CACnCD,MAAM,CAACE,OAAO,CAACL,OAAO,CAACE,UAAU,IAAI,CAAC,CAAC,CAAC,CACrCI,MAAM,CAACC,IAAA;MAAA,IAAC,GAAGC,KAAK,CAAC,GAAAD,IAAA;MAAA,OAAKC,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKC,SAAS;IAAA,EAAC,CAC5DC,GAAG,CAACC,KAAA;MAAA,IAAC,CAACC,GAAG,EAAEJ,KAAK,CAAC,GAAAG,KAAA;MAAA,OAAK,CAACC,GAAG,EAAEC,MAAM,CAACL,KAAK,CAAC,CAAC;IAAA,EAC/C,CAAC;IAED,OAAOZ,eAAe,CAAC,CAAC,CAACK,OAAO,CAAC;MAC/B,GAAGD,OAAO;MACVE;IACF,CAAC,CAAC;EACJ,CAAC;EACDY,SAASA,CAAA,EAAG;IACV,OAAOlB,eAAe,CAAC,CAAC,CAACkB,SAAS,CAAC,CAAC;EACtC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOnB,eAAe,CAAC,CAAC,CAACmB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOpB,eAAe,CAAC,CAAC,CAACoB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,YAAYA,CAAA,EAAG;IACb,OAAOrB,eAAe,CAAC,CAAC,CAACqB,YAAY,CAAC,CAAC;EACzC,CAAC;EACDC,aAAaA,CAAA,EAAG;IACd,OAAOtB,eAAe,CAAC,CAAC,CAACsB,aAAa,CAAC,CAAC;EAC1C,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,iBAAiBA,CAACC,OAA6B,EAAuB;IACpE,MAAMC,OAAO,GAAG,IAAIlC,kBAAkB,CACpCS,eAAe,CAAC,CAClB,CAAC;IACD,OAAOyB,OAAO,CAACC,WAAW,CAAChC,YAAY,EAAGiC,KAAqB,IAC7DH,OAAO,CAACG,KAAK,CAACC,EAAE,CAClB,CAAC;EACH,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEC,gBAAgBA,CAACL,OAAmB,EAAuB;IACzD,MAAMC,OAAO,GAAG,IAAIlC,kBAAkB,CACpCS,eAAe,CAAC,CAClB,CAAC;IACD,OAAOyB,OAAO,CAACC,WAAW,CAAC/B,WAAW,EAAE,MAAM6B,OAAO,CAAC,CAAC,CAAC;EAC1D;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ErxesMessenger.d.ts","sourceRoot":"","sources":["../../src/ErxesMessenger.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ErxesMessenger.d.ts","sourceRoot":"","sources":["../../src/ErxesMessenger.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nativeIos.d.ts","sourceRoot":"","sources":["../../src/nativeIos.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EAEzB,MAAM,cAAc,CAAC;AAEtB;;;;GAIG;AACH,KAAK,eAAe,GAAG;IACrB,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACjC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,gEAAgE;IAChE,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC;IAClC,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CAC3E,CAAC;AAmCF,eAAO,MAAM,cAAc;uBACN,eAAe;qBAGjB,aAAa;;;;;;IA2B9B;;;;;OAKG;oCAC6B,MAAM,KAAK,IAAI,GAAG,mBAAmB;IAQrE;;;;;OAKG;8BACuB,MAAM,IAAI,GAAG,mBAAmB;CAM3D,CAAC;AAEF,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"nativeIos.d.ts","sourceRoot":"","sources":["../../src/nativeIos.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EAEzB,MAAM,cAAc,CAAC;AAEtB;;;;GAIG;AACH,KAAK,eAAe,GAAG;IACrB,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACjC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,gEAAgE;IAChE,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC;IAClC,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CAC3E,CAAC;AAuCF,eAAO,MAAM,cAAc;uBACN,eAAe;qBAGjB,aAAa;;;;;;IA2B9B;;;;;OAKG;oCAC6B,MAAM,KAAK,IAAI,GAAG,mBAAmB;IAQrE;;;;;OAKG;8BACuB,MAAM,IAAI,GAAG,mBAAmB;CAM3D,CAAC;AAEF,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rn-erxes-sdk",
3
- "version": "0.4.6",
3
+ "version": "0.5.0",
4
4
  "description": "react-native erxes sdk",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -175,7 +175,7 @@ export function ErxesMessenger({
175
175
  }, [homeActions, drawerActions, onAction]);
176
176
 
177
177
  useEffect(() => {
178
- if (Platform.OS !== 'ios') {
178
+ if (Platform.OS !== 'ios' && Platform.OS !== 'android') {
179
179
  return;
180
180
  }
181
181
 
@@ -299,7 +299,11 @@ export function ErxesMessenger({
299
299
  // Wait until `configure()` has resolved — otherwise `showMessenger()` would
300
300
  // race ahead of it and trip the native configure-before-show assertion. The
301
301
  // initial open is handled in `setup()`; this only reacts to later changes.
302
- if (Platform.OS !== 'ios' || visible === undefined || !configured) {
302
+ if (
303
+ (Platform.OS !== 'ios' && Platform.OS !== 'android') ||
304
+ visible === undefined ||
305
+ !configured
306
+ ) {
303
307
  return;
304
308
  }
305
309
 
package/src/nativeIos.ts CHANGED
@@ -60,13 +60,17 @@ const ACTION_EVENT = 'onErxesAction';
60
60
  const READY_EVENT = 'onErxesReady';
61
61
 
62
62
  const LINKING_ERROR =
63
- "The rn-erxes-sdk native iOS module is not linked. Run `pod install` in your app's ios directory and rebuild the app.";
63
+ Platform.OS === 'android'
64
+ ? 'The rn-erxes-sdk native Android module is not linked. Rebuild the Android app (e.g. `npx react-native run-android`).'
65
+ : "The rn-erxes-sdk native iOS module is not linked. Run `pod install` in your app's ios directory and rebuild the app.";
64
66
 
65
67
  const nativeModule = NativeModules.RnErxesSdk as NativeIOSModule | undefined;
66
68
 
67
69
  function getNativeModule(): NativeIOSModule {
68
- if (Platform.OS !== 'ios') {
69
- throw new Error('Erxes native messenger is only available on iOS.');
70
+ if (Platform.OS !== 'ios' && Platform.OS !== 'android') {
71
+ throw new Error(
72
+ 'Erxes native messenger is only available on iOS and Android.'
73
+ );
70
74
  }
71
75
 
72
76
  if (!nativeModule) {