@zelloptt/react-native-zello-sdk 2.0.1 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +100 -15
- package/android/build.gradle +29 -10
- package/android/gradle.properties +4 -4
- package/android/src/main/java/com/zellosdk/ZelloAndroidSdkModule.kt +93 -68
- package/android/src/main/java/com/zellosdk/ZelloAndroidSdkModuleHelper.kt +25 -0
- package/app.plugin.js +97 -0
- package/ios/Extensions/ZelloContact+Extension.swift +26 -3
- package/ios/Extensions/ZelloHistoryVoiceMessage+Extension.swift +3 -0
- package/ios/Extensions/ZelloIOSSdkModule+Extension.swift +8 -2
- package/ios/Extensions/ZelloIncomingEmergency+Extension.swift +1 -0
- package/ios/Extensions/ZelloTranscription+Extension.swift +18 -0
- package/ios/ZelloIOSSdkModule.swift +24 -7
- package/ios/ZelloIOSSdkModuleBridge.m +1 -0
- package/ios/ZelloSdkModule.h +8 -0
- package/ios/ZelloSdkModule.mm +189 -0
- package/ios/ZelloSdkModuleImpl.swift +280 -0
- package/lib/commonjs/docs/assets/highlight.css +17 -10
- package/lib/commonjs/docs/assets/icons.js +1 -1
- package/lib/commonjs/docs/assets/icons.js.map +1 -1
- package/lib/commonjs/docs/assets/icons.svg +1 -1
- package/lib/commonjs/docs/assets/main.js +220 -288
- package/lib/commonjs/docs/assets/main.js.map +1 -1
- package/lib/commonjs/docs/assets/navigation.js +1 -1
- package/lib/commonjs/docs/assets/navigation.js.map +1 -1
- package/lib/commonjs/docs/assets/search.js +1 -1
- package/lib/commonjs/docs/assets/search.js.map +1 -1
- package/lib/commonjs/docs/assets/style.css +21 -6
- package/lib/commonjs/docs/classes/sdk.Zello.html +793 -97
- package/lib/commonjs/docs/classes/types.ZelloAlertMessage.html +122 -9
- package/lib/commonjs/docs/classes/types.ZelloChannel.html +155 -10
- package/lib/commonjs/docs/classes/types.ZelloChannelUser.html +86 -4
- package/lib/commonjs/docs/classes/types.ZelloDispatchCall.html +90 -6
- package/lib/commonjs/docs/classes/types.ZelloDispatchChannel.html +163 -11
- package/lib/commonjs/docs/classes/types.ZelloGroupConversation.html +178 -13
- package/lib/commonjs/docs/classes/types.ZelloHistoryAlertMessage.html +131 -10
- package/lib/commonjs/docs/classes/types.ZelloHistoryImageMessage.html +123 -9
- package/lib/commonjs/docs/classes/types.ZelloHistoryLocationMessage.html +155 -13
- package/lib/commonjs/docs/classes/types.ZelloHistoryTextMessage.html +131 -10
- package/lib/commonjs/docs/classes/types.ZelloHistoryVoiceMessage.html +145 -10
- package/lib/commonjs/docs/classes/types.ZelloImageMessage.html +130 -10
- package/lib/commonjs/docs/classes/types.ZelloIncomingEmergency.html +114 -9
- package/lib/commonjs/docs/classes/types.ZelloIncomingVoiceMessage.html +124 -8
- package/lib/commonjs/docs/classes/types.ZelloLocationMessage.html +146 -12
- package/lib/commonjs/docs/classes/types.ZelloOutgoingEmergency.html +98 -7
- package/lib/commonjs/docs/classes/types.ZelloOutgoingVoiceMessage.html +120 -9
- package/lib/commonjs/docs/classes/types.ZelloRecentEntry.html +114 -9
- package/lib/commonjs/docs/classes/types.ZelloTextMessage.html +122 -9
- package/lib/commonjs/docs/classes/types.ZelloTranscription.html +122 -0
- package/lib/commonjs/docs/classes/types.ZelloTranslation.html +91 -0
- package/lib/commonjs/docs/classes/types.ZelloUser.html +142 -11
- package/lib/commonjs/docs/classes/types.ZelloUserSupportedFeatures.html +82 -5
- package/lib/commonjs/docs/enums/events.ZelloEvent.html +563 -95
- package/lib/commonjs/docs/enums/types.ZelloAccountStatus.html +67 -5
- package/lib/commonjs/docs/enums/types.ZelloChannelAlertLevel.html +67 -5
- package/lib/commonjs/docs/enums/types.ZelloChannelConnectionStatus.html +68 -3
- package/lib/commonjs/docs/enums/types.ZelloChannelType.html +84 -0
- package/lib/commonjs/docs/enums/types.ZelloConnectionError.html +68 -3
- package/lib/commonjs/docs/enums/types.ZelloConnectionState.html +73 -3
- package/lib/commonjs/docs/enums/types.ZelloContactType.html +73 -3
- package/lib/commonjs/docs/enums/types.ZelloDispatchCallStatus.html +73 -3
- package/lib/commonjs/docs/enums/types.ZelloOutgoingVoiceMessageError.html +63 -3
- package/lib/commonjs/docs/enums/types.ZelloOutgoingVoiceMessageState.html +78 -3
- package/lib/commonjs/docs/enums/types.ZelloRecentEntryType.html +78 -3
- package/lib/commonjs/docs/enums/types.ZelloUserStatus.html +81 -7
- package/lib/commonjs/docs/hierarchy.html +29 -1
- package/lib/commonjs/docs/index.html +155 -26
- package/lib/commonjs/docs/interfaces/specs_NativeZelloSdk.Spec.html +504 -0
- package/lib/commonjs/docs/modules/events.html +37 -1
- package/lib/commonjs/docs/modules/index.html +37 -1
- package/lib/commonjs/docs/modules/sdk.html +37 -1
- package/lib/commonjs/docs/modules/specs_NativeZelloSdk.html +41 -0
- package/lib/commonjs/docs/modules/types.html +45 -1
- package/lib/commonjs/docs/modules.html +36 -1
- package/lib/commonjs/docs/types/types.ZelloChannelOptions.html +114 -9
- package/lib/commonjs/docs/types/types.ZelloConfig.html +86 -7
- package/lib/commonjs/docs/types/types.ZelloConsoleSettings.html +96 -9
- package/lib/commonjs/docs/types/types.ZelloContact.html +80 -6
- package/lib/commonjs/docs/types/types.ZelloCredentials.html +75 -6
- package/lib/commonjs/docs/types/types.ZelloHistoryMessage.html +97 -8
- package/lib/commonjs/docs/types/types.ZelloMessage.html +91 -7
- package/lib/commonjs/docs/variables/specs_NativeZelloSdk.default.html +34 -0
- package/lib/commonjs/events/index.js +217 -0
- package/lib/commonjs/events/index.js.map +1 -1
- package/lib/commonjs/sdk/index.js +731 -911
- package/lib/commonjs/sdk/index.js.map +1 -1
- package/lib/commonjs/specs/NativeZelloSdk.js +27 -0
- package/lib/commonjs/specs/NativeZelloSdk.js.map +1 -0
- package/lib/commonjs/types/index.js +423 -302
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/commonjs/utils/index.js +27 -4
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/docs/assets/highlight.css +17 -10
- package/lib/module/docs/assets/icons.js +1 -1
- package/lib/module/docs/assets/icons.js.map +1 -1
- package/lib/module/docs/assets/icons.svg +1 -1
- package/lib/module/docs/assets/main.js +220 -288
- package/lib/module/docs/assets/main.js.map +1 -1
- package/lib/module/docs/assets/navigation.js +1 -1
- package/lib/module/docs/assets/navigation.js.map +1 -1
- package/lib/module/docs/assets/search.js +1 -1
- package/lib/module/docs/assets/search.js.map +1 -1
- package/lib/module/docs/assets/style.css +21 -6
- package/lib/module/docs/classes/sdk.Zello.html +793 -97
- package/lib/module/docs/classes/types.ZelloAlertMessage.html +122 -9
- package/lib/module/docs/classes/types.ZelloChannel.html +155 -10
- package/lib/module/docs/classes/types.ZelloChannelUser.html +86 -4
- package/lib/module/docs/classes/types.ZelloDispatchCall.html +90 -6
- package/lib/module/docs/classes/types.ZelloDispatchChannel.html +163 -11
- package/lib/module/docs/classes/types.ZelloGroupConversation.html +178 -13
- package/lib/module/docs/classes/types.ZelloHistoryAlertMessage.html +131 -10
- package/lib/module/docs/classes/types.ZelloHistoryImageMessage.html +123 -9
- package/lib/module/docs/classes/types.ZelloHistoryLocationMessage.html +155 -13
- package/lib/module/docs/classes/types.ZelloHistoryTextMessage.html +131 -10
- package/lib/module/docs/classes/types.ZelloHistoryVoiceMessage.html +145 -10
- package/lib/module/docs/classes/types.ZelloImageMessage.html +130 -10
- package/lib/module/docs/classes/types.ZelloIncomingEmergency.html +114 -9
- package/lib/module/docs/classes/types.ZelloIncomingVoiceMessage.html +124 -8
- package/lib/module/docs/classes/types.ZelloLocationMessage.html +146 -12
- package/lib/module/docs/classes/types.ZelloOutgoingEmergency.html +98 -7
- package/lib/module/docs/classes/types.ZelloOutgoingVoiceMessage.html +120 -9
- package/lib/module/docs/classes/types.ZelloRecentEntry.html +114 -9
- package/lib/module/docs/classes/types.ZelloTextMessage.html +122 -9
- package/lib/module/docs/classes/types.ZelloTranscription.html +122 -0
- package/lib/module/docs/classes/types.ZelloTranslation.html +91 -0
- package/lib/module/docs/classes/types.ZelloUser.html +142 -11
- package/lib/module/docs/classes/types.ZelloUserSupportedFeatures.html +82 -5
- package/lib/module/docs/enums/events.ZelloEvent.html +563 -95
- package/lib/module/docs/enums/types.ZelloAccountStatus.html +67 -5
- package/lib/module/docs/enums/types.ZelloChannelAlertLevel.html +67 -5
- package/lib/module/docs/enums/types.ZelloChannelConnectionStatus.html +68 -3
- package/lib/module/docs/enums/types.ZelloChannelType.html +84 -0
- package/lib/module/docs/enums/types.ZelloConnectionError.html +68 -3
- package/lib/module/docs/enums/types.ZelloConnectionState.html +73 -3
- package/lib/module/docs/enums/types.ZelloContactType.html +73 -3
- package/lib/module/docs/enums/types.ZelloDispatchCallStatus.html +73 -3
- package/lib/module/docs/enums/types.ZelloOutgoingVoiceMessageError.html +63 -3
- package/lib/module/docs/enums/types.ZelloOutgoingVoiceMessageState.html +78 -3
- package/lib/module/docs/enums/types.ZelloRecentEntryType.html +78 -3
- package/lib/module/docs/enums/types.ZelloUserStatus.html +81 -7
- package/lib/module/docs/hierarchy.html +29 -1
- package/lib/module/docs/index.html +155 -26
- package/lib/module/docs/interfaces/specs_NativeZelloSdk.Spec.html +504 -0
- package/lib/module/docs/modules/events.html +37 -1
- package/lib/module/docs/modules/index.html +37 -1
- package/lib/module/docs/modules/sdk.html +37 -1
- package/lib/module/docs/modules/specs_NativeZelloSdk.html +41 -0
- package/lib/module/docs/modules/types.html +45 -1
- package/lib/module/docs/modules.html +36 -1
- package/lib/module/docs/types/types.ZelloChannelOptions.html +114 -9
- package/lib/module/docs/types/types.ZelloConfig.html +86 -7
- package/lib/module/docs/types/types.ZelloConsoleSettings.html +96 -9
- package/lib/module/docs/types/types.ZelloContact.html +80 -6
- package/lib/module/docs/types/types.ZelloCredentials.html +75 -6
- package/lib/module/docs/types/types.ZelloHistoryMessage.html +97 -8
- package/lib/module/docs/types/types.ZelloMessage.html +91 -7
- package/lib/module/docs/variables/specs_NativeZelloSdk.default.html +34 -0
- package/lib/module/events/index.js +217 -0
- package/lib/module/events/index.js.map +1 -1
- package/lib/module/sdk/index.js +730 -912
- package/lib/module/sdk/index.js.map +1 -1
- package/lib/module/specs/NativeZelloSdk.js +25 -0
- package/lib/module/specs/NativeZelloSdk.js.map +1 -0
- package/lib/module/types/index.js +378 -301
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/utils/index.js +27 -5
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/commonjs/src/events/index.d.ts +9 -0
- package/lib/typescript/commonjs/src/events/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/sdk/index.d.ts +10 -0
- package/lib/typescript/commonjs/src/sdk/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/specs/NativeZelloSdk.d.ts +55 -0
- package/lib/typescript/commonjs/src/specs/NativeZelloSdk.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/types/index.d.ts +106 -4
- package/lib/typescript/commonjs/src/types/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/utils/index.d.ts +2 -1
- package/lib/typescript/commonjs/src/utils/index.d.ts.map +1 -1
- package/lib/typescript/module/src/events/index.d.ts +9 -0
- package/lib/typescript/module/src/events/index.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +4 -4
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/sdk/index.d.ts +11 -1
- package/lib/typescript/module/src/sdk/index.d.ts.map +1 -1
- package/lib/typescript/module/src/specs/NativeZelloSdk.d.ts +55 -0
- package/lib/typescript/module/src/specs/NativeZelloSdk.d.ts.map +1 -0
- package/lib/typescript/module/src/types/index.d.ts +106 -4
- package/lib/typescript/module/src/types/index.d.ts.map +1 -1
- package/lib/typescript/module/src/utils/algorithms/index.d.ts +1 -1
- package/lib/typescript/module/src/utils/algorithms/index.d.ts.map +1 -1
- package/lib/typescript/module/src/utils/index.d.ts +2 -1
- package/lib/typescript/module/src/utils/index.d.ts.map +1 -1
- package/package.json +53 -16
- package/react-native-zello-sdk.podspec +23 -24
- package/scripts/podfile-transform.js +416 -0
- package/scripts/setup-ios.js +248 -0
- package/scripts/zello_pods.rb +128 -0
- package/scripts/zello_sdk_requirement.rb +12 -0
- package/src/events/index.ts +9 -0
- package/src/sdk/index.ts +105 -225
- package/src/specs/NativeZelloSdk.ts +89 -0
- package/src/types/index.ts +153 -6
- package/src/utils/index.ts +50 -3
|
@@ -1,11 +1,85 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ZelloUserStatus | @zelloptt/react-native-zello-sdk</title><meta name="description" content="Documentation for @zelloptt/react-native-zello-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"
|
|
2
|
-
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ZelloUserStatus | @zelloptt/react-native-zello-sdk</title><meta name="description" content="Documentation for @zelloptt/react-native-zello-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@zelloptt/react-native-zello-sdk</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
|
11
|
+
<li><a href="../modules/types.html">types</a></li>
|
|
12
|
+
<li><a href="" aria-current="page">ZelloUserStatus</a></li></ul>
|
|
13
|
+
<h1>Enumeration ZelloUserStatus</h1></div>
|
|
14
|
+
<section class="tsd-panel tsd-comment">
|
|
15
|
+
<div class="tsd-comment tsd-typography"><p>The status of a <a href="../classes/types.ZelloUser.html" class="tsd-kind-class">ZelloUser</a>.</p>
|
|
16
|
+
</div></section><aside class="tsd-sources">
|
|
17
|
+
<ul>
|
|
18
|
+
<li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/75d8156a650d25b348cd0fdcc4ae6e117cb085f5/src/types/index.ts#L58">src/types/index.ts:58</a></li></ul></aside>
|
|
19
|
+
<section class="tsd-panel-group tsd-index-group">
|
|
20
|
+
<section class="tsd-panel tsd-index-panel">
|
|
21
|
+
<details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
22
|
+
<h5 class="tsd-index-heading uppercase">Index</h5></summary>
|
|
23
|
+
<div class="tsd-accordion-details">
|
|
24
|
+
<section class="tsd-index-section">
|
|
25
|
+
<h3 class="tsd-index-heading tsd-anchor-link" id="enumeration-members">Enumeration Members<a href="#enumeration-members" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
26
|
+
<div class="tsd-index-list"><a href="#available" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Available</span></a>
|
|
3
27
|
<a href="#busy" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Busy</span></a>
|
|
4
28
|
<a href="#offline" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Offline</span></a>
|
|
5
29
|
<a href="#standby" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Standby</span></a>
|
|
6
|
-
</div></section></div></details></section></section
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
30
|
+
</div></section></div></details></section></section>
|
|
31
|
+
<details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Enumeration Members"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
32
|
+
<h2 class="tsd-anchor-link" id="enumeration-members-1">Enumeration Members<a href="#enumeration-members-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary>
|
|
33
|
+
<section>
|
|
34
|
+
<section class="tsd-panel tsd-member">
|
|
35
|
+
<h3 class="tsd-anchor-link" id="available"><span>Available</span><a href="#available" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
36
|
+
<div class="tsd-signature"><span class="tsd-kind-enum-member">Available</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"available"</span></div>
|
|
37
|
+
<div class="tsd-comment tsd-typography"><p>The user is connected. Messages will play live.</p>
|
|
38
|
+
</div><aside class="tsd-sources">
|
|
39
|
+
<ul>
|
|
40
|
+
<li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/75d8156a650d25b348cd0fdcc4ae6e117cb085f5/src/types/index.ts#L62">src/types/index.ts:62</a></li></ul></aside></section>
|
|
41
|
+
<section class="tsd-panel tsd-member">
|
|
42
|
+
<h3 class="tsd-anchor-link" id="busy"><span>Busy</span><a href="#busy" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
43
|
+
<div class="tsd-signature"><span class="tsd-kind-enum-member">Busy</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"busy"</span></div>
|
|
44
|
+
<div class="tsd-comment tsd-typography"><p>The user is connected. Messages will not play live.</p>
|
|
45
|
+
</div><aside class="tsd-sources">
|
|
46
|
+
<ul>
|
|
47
|
+
<li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/75d8156a650d25b348cd0fdcc4ae6e117cb085f5/src/types/index.ts#L66">src/types/index.ts:66</a></li></ul></aside></section>
|
|
48
|
+
<section class="tsd-panel tsd-member">
|
|
49
|
+
<h3 class="tsd-anchor-link" id="offline"><span>Offline</span><a href="#offline" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
50
|
+
<div class="tsd-signature"><span class="tsd-kind-enum-member">Offline</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"offline"</span></div>
|
|
51
|
+
<div class="tsd-comment tsd-typography"><p>The user is disconnected and cannot receive messages.</p>
|
|
52
|
+
</div><aside class="tsd-sources">
|
|
53
|
+
<ul>
|
|
54
|
+
<li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/75d8156a650d25b348cd0fdcc4ae6e117cb085f5/src/types/index.ts#L75">src/types/index.ts:75</a></li></ul></aside></section>
|
|
55
|
+
<section class="tsd-panel tsd-member">
|
|
56
|
+
<h3 class="tsd-anchor-link" id="standby"><span>Standby</span><a href="#standby" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
57
|
+
<div class="tsd-signature"><span class="tsd-kind-enum-member">Standby</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"standby"</span></div>
|
|
58
|
+
<div class="tsd-comment tsd-typography"><p>The user is disconnected. Messages will not play live.
|
|
10
59
|
The user will download messages sent to them when they reconnect.</p>
|
|
11
|
-
</div><aside class="tsd-sources"
|
|
60
|
+
</div><aside class="tsd-sources">
|
|
61
|
+
<ul>
|
|
62
|
+
<li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/75d8156a650d25b348cd0fdcc4ae6e117cb085f5/src/types/index.ts#L71">src/types/index.ts:71</a></li></ul></aside></section></section></details></div>
|
|
63
|
+
<div class="col-sidebar">
|
|
64
|
+
<div class="page-menu">
|
|
65
|
+
<div class="tsd-navigation settings">
|
|
66
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
67
|
+
<h3>Settings</h3></summary>
|
|
68
|
+
<div class="tsd-accordion-details">
|
|
69
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
70
|
+
<ul id="tsd-filter-options">
|
|
71
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
72
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
73
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
74
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div>
|
|
75
|
+
<details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
76
|
+
<h3>On This Page</h3></summary>
|
|
77
|
+
<div class="tsd-accordion-details">
|
|
78
|
+
<details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Enumeration Members"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Enumeration Members</summary>
|
|
79
|
+
<div><a href="#available"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Available</span></a><a href="#busy"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Busy</span></a><a href="#offline"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Offline</span></a><a href="#standby"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Enumeration Member"><use href="../assets/icons.svg#icon-16"></use></svg><span>Standby</span></a></div></details></div></details></div>
|
|
80
|
+
<div class="site-menu">
|
|
81
|
+
<nav class="tsd-navigation"><a href="../modules.html">@zelloptt/react-native-zello-sdk</a>
|
|
82
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
83
|
+
<li>Loading...</li></ul></nav></div></div></div><footer>
|
|
84
|
+
<p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer>
|
|
85
|
+
<div class="overlay"></div></body></html>
|
|
@@ -1 +1,29 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@zelloptt/react-native-zello-sdk</title><meta name="description" content="Documentation for @zelloptt/react-native-zello-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@zelloptt/react-native-zello-sdk</title><meta name="description" content="Documentation for @zelloptt/react-native-zello-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="index.html" class="title">@zelloptt/react-native-zello-sdk</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<h1>@zelloptt/react-native-zello-sdk</h1></div>
|
|
11
|
+
<h2>Hierarchy Summary</h2></div>
|
|
12
|
+
<div class="col-sidebar">
|
|
13
|
+
<div class="page-menu">
|
|
14
|
+
<div class="tsd-navigation settings">
|
|
15
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>
|
|
16
|
+
<h3>Settings</h3></summary>
|
|
17
|
+
<div class="tsd-accordion-details">
|
|
18
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
19
|
+
<ul id="tsd-filter-options">
|
|
20
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
21
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
22
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
23
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
|
24
|
+
<div class="site-menu">
|
|
25
|
+
<nav class="tsd-navigation"><a href="modules.html">@zelloptt/react-native-zello-sdk</a>
|
|
26
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
27
|
+
<li>Loading...</li></ul></nav></div></div></div><footer>
|
|
28
|
+
<p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer>
|
|
29
|
+
<div class="overlay"></div></body></html>
|
|
@@ -1,46 +1,132 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@zelloptt/react-native-zello-sdk</title><meta name="description" content="Documentation for @zelloptt/react-native-zello-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"
|
|
2
|
-
<
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="./"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@zelloptt/react-native-zello-sdk</title><meta name="description" content="Documentation for @zelloptt/react-native-zello-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="index.html" class="title">@zelloptt/react-native-zello-sdk</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<h1>@zelloptt/react-native-zello-sdk</h1></div>
|
|
11
|
+
<div class="tsd-panel tsd-typography"><h1 id="react-native-zello-sdk" class="tsd-anchor-link">react-native-zello-sdk<a href="#react-native-zello-sdk" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h1>
|
|
12
|
+
<p>Zello SDK for React Native.</p>
|
|
13
|
+
<p>Our React Native SDK offers itself as a thin wrapper around our native iOS and Android SDK’s. It is built with TypeScript, and communicates with the native SDK’s via a <a href="https://reactnative.dev/docs/turbo-native-modules-introduction">Turbo Native Module</a> on React Native’s New Architecture.</p>
|
|
3
14
|
<p>This repository contains both the React Native Bridge, as well as an example app to demonstrate usage.</p>
|
|
4
15
|
<p>To see an example of the React Native SDK, check out <a href="https://github.com/zelloptt/react-native-zello-sdk/tree/master/example">the example folder</a>.</p>
|
|
5
16
|
<p>The following instructions are for the installation of the SDK into your application - <strong>not</strong> for the example app.</p>
|
|
6
|
-
<h2 id="prerequisites" class="tsd-anchor-link">Prerequisites<a href="#prerequisites" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2
|
|
17
|
+
<h2 id="prerequisites" class="tsd-anchor-link">Prerequisites<a href="#prerequisites" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
|
|
18
|
+
<p>A React Native application and environment.</p>
|
|
19
|
+
<ul>
|
|
20
|
+
<li><strong>React Native 0.86+</strong> with the <strong>New Architecture enabled</strong> (the default since 0.76). This SDK is a Turbo Native Module and does not support the legacy architecture.</li>
|
|
21
|
+
<li><strong>Node 20+</strong> (Node 22+ recommended, matching the React Native 0.86 toolchain).</li>
|
|
22
|
+
</ul>
|
|
7
23
|
<p>A thorough understanding of Zello. The best place to get started is our <a href="https://sdk.zello.com/">documentation</a>.</p>
|
|
8
|
-
<h2 id="installation" class="tsd-anchor-link">Installation<a href="#installation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2
|
|
24
|
+
<h2 id="installation" class="tsd-anchor-link">Installation<a href="#installation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
|
|
25
|
+
<p>Install the package via NPM:</p>
|
|
9
26
|
<pre><code class="sh"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">install</span><span class="hl-1"> </span><span class="hl-2">@zelloptt/react-native-zello-sdk</span>
|
|
10
27
|
</code><button type="button">Copy</button></pre>
|
|
11
28
|
|
|
12
|
-
<h3 id="ios" class="tsd-anchor-link">iOS<a href="#ios" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3
|
|
13
|
-
<p>
|
|
14
|
-
<
|
|
15
|
-
<
|
|
29
|
+
<h3 id="ios" class="tsd-anchor-link">iOS<a href="#ios" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
30
|
+
<p>Before getting started, please reference the <a href="https://developers.zello.com/sdk/latest/ios/documentation/zellosdk/getting-started">iOS Installation Guide</a>. There is no need to add the native <code>ZelloSDK</code> to your project directly — this library declares it for you.</p>
|
|
31
|
+
<p>The native ZelloSDK is consumed through <strong>Swift Package Manager only</strong> (product <code>ZelloSDKUmbrella</code> from <a href="https://github.com/zelloptt/ios-mobile-sdk"><code>github.com/zelloptt/ios-mobile-sdk</code></a>); it is no longer available through CocoaPods. React Native itself still requires CocoaPods, so the React Native layer of this library stays a CocoaPod and a small Podfile helper wires the Swift package into your app.</p>
|
|
32
|
+
<p>Requirements:</p>
|
|
33
|
+
<ul>
|
|
34
|
+
<li><strong>React Native 0.86 or later</strong>: the podspec uses React Native's <code>spm_dependency</code> and raises during <code>pod install</code> on older versions.</li>
|
|
35
|
+
<li><strong>iOS 17.0 or later</strong>, in <strong>both</strong> places: <code>platform :ios, '17.0'</code> in your <code>Podfile</code>, and the <code>IPHONEOS_DEPLOYMENT_TARGET</code> of your app target and of any app extension (for example the Notification Service Extension).</li>
|
|
36
|
+
<li>Native ZelloSDK <code>3.3.2</code> or later, below <code>4.0.0</code>. The requirement is <code>upToNextMajorVersion</code> from <code>3.3.2</code>; a fresh resolve picks the newest <code>3.x</code>, while a committed <code>Package.resolved</code> keeps its pin until you use <em>File > Packages > Update to Latest Package Versions</em>.</li>
|
|
37
|
+
</ul>
|
|
38
|
+
<h4 id="setup" class="tsd-anchor-link">Setup<a href="#setup" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
39
|
+
<pre><code class="sh"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">install</span><span class="hl-1"> </span><span class="hl-2">@zelloptt/react-native-zello-sdk@4</span><br/><span class="hl-0">npx</span><span class="hl-1"> </span><span class="hl-2">@zelloptt/react-native-zello-sdk</span><span class="hl-1"> </span><span class="hl-2">setup-ios</span><br/><span class="hl-0">cd</span><span class="hl-1"> </span><span class="hl-2">ios</span><span class="hl-1"> && </span><span class="hl-0">bundle</span><span class="hl-1"> </span><span class="hl-2">exec</span><span class="hl-1"> </span><span class="hl-2">pod</span><span class="hl-1"> </span><span class="hl-2">install</span>
|
|
40
|
+
</code><button type="button">Copy</button></pre>
|
|
41
|
+
|
|
42
|
+
<p><code>setup-ios</code> edits only your <code>Podfile</code> (it never touches the <code>.xcodeproj</code>): it prints a diff and asks for confirmation. Options: <code>--dry-run</code> (print the diff only), <code>--yes</code> (non-interactive), <code>--project-root <dir></code> / <code>--podfile <path></code> (monorepos), <code>--app-target <name></code> and <code>--extension-target <name></code> (repeatable) when the targets cannot be detected. Only top-level <code>Podfile</code> targets whose name contains <code>Extension</code>, <code>NSE</code> or <code>Widget</code> are detected as extensions; list any other extension with <code>--extension-target</code>. It exits with code <code>2</code> and changes nothing when it needs a manual step.</p>
|
|
43
|
+
<p>Or make the changes yourself:</p>
|
|
44
|
+
<pre><code class="ruby"># Podfile — before `prepare_react_native_project!`
|
|
45
|
+
require Pod::Executable.execute_command('node', ['-p',
|
|
46
|
+
"require.resolve('@zelloptt/react-native-zello-sdk/scripts/zello_pods.rb', {paths: [process.argv[1]]})",
|
|
47
|
+
__dir__]).strip
|
|
48
|
+
|
|
49
|
+
platform :ios, '17.0'
|
|
50
|
+
|
|
51
|
+
target 'MyApp' do
|
|
52
|
+
# ...
|
|
53
|
+
post_install do |installer|
|
|
54
|
+
zello_post_install(installer, app_target: 'MyApp', extension_targets: ['NotificationServiceExtension'])
|
|
55
|
+
react_native_post_install(installer, config[:reactNativePath])
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
</code><button type="button">Copy</button></pre>
|
|
59
|
+
|
|
60
|
+
<p><code>zello_post_install</code> adds the package to your Xcode project, links <code>ZelloSDKUmbrella</code> into the app and embeds it, and links it (without embedding) into the listed extension targets. It is idempotent, and raises with an explanation if the deployment target is below 17.0 or a <code>ZelloSDK</code> pod is still present. Open the <code>.xcworkspace</code> afterwards; Xcode resolves the package on first build.</p>
|
|
61
|
+
<p>If your app project already references <code>github.com/zelloptt/ios-mobile-sdk</code>, <code>zello_post_install</code> keeps your version requirement unless it is an <em>Up to Next Major Version</em> rule with a lower minimum than <code>3.3.2</code>; then it raises the minimum to <code>3.3.2</code>. The bridge pod always requires <code>3.3.2</code> up to the next major, and Xcode resolves one version that satisfies both.</p>
|
|
62
|
+
<p>Static and dynamic <code>use_frameworks!</code> as well as no <code>use_frameworks!</code> are all supported. With static or no <code>use_frameworks!</code>, <code>pod install</code> prints <code>[SPM] WARNING!!! Pod react-native-zello-sdk is using swift package(s) ZelloSDKUmbrella with static linking, this might cause linker errors</code>; this is expected, because <code>zello_post_install</code> links the dynamic <code>ZelloSDKUmbrella</code> into the app.</p>
|
|
63
|
+
<h4 id="upgrading-from-3x" class="tsd-anchor-link">Upgrading from 3.x<a href="#upgrading-from-3x" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
64
|
+
<ol>
|
|
65
|
+
<li>Run the three commands above. <code>setup-ios</code> removes <code>pod 'ZelloSDK'</code>, the CocoaPods resilient-pods <code>post_install</code> workaround (<code>BUILD_LIBRARY_FOR_DISTRIBUTION</code> for <code>PhoneNumberKit</code>, <code>SnowplowTracker</code>, <code>CocoaLumberjack</code>, <code>PromisesSwift</code>) and raises <code>platform :ios</code> to <code>17.0</code>. If you did it by hand, remove those as well as any <code>ZELLO_USE_SPM</code> setting and any manually added <code>ZelloSDKUmbrella</code> package reference in your extension targets.</li>
|
|
66
|
+
<li>Raise the app and extension deployment targets to 17.0 if they are lower.</li>
|
|
67
|
+
<li>Do a <strong>Clean Build Folder</strong> in Xcode (or <code>rm -rf ios/build</code>) once: frameworks previously embedded by CocoaPods can linger in an incremental build and clash with the new ones.</li>
|
|
68
|
+
</ol>
|
|
69
|
+
<h4 id="troubleshooting-swift-package-manager" class="tsd-anchor-link">Troubleshooting (Swift Package Manager)<a href="#troubleshooting-swift-package-manager" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
70
|
+
<ul>
|
|
71
|
+
<li><code>[CP] Copy Pods Resources ... Operation not permitted</code> with static or no <code>use_frameworks!</code>: set <code>ENABLE_USER_SCRIPT_SANDBOXING = NO</code> on the app and extension targets.</li>
|
|
72
|
+
<li><code>Multiple commands produce '*.ttf'</code> with static or no <code>use_frameworks!</code>: remove the duplicated font files from the app target's <em>Copy Bundle Resources</em> phase (keep them in <code>UIAppFonts</code>); CocoaPods already copies them.</li>
|
|
73
|
+
<li><strong>PhoneNumberKit:</strong> ZelloSDK pulls PhoneNumberKit via Swift Package Manager — the <code>marmelroy/PhoneNumberKit</code> 3.x on native <code>3.3.2</code>, the 5.x from the PhoneNumberKit organization's repository on <code>3.3.3</code> and later. These are two different repositories sharing one package identity, so:
|
|
74
|
+
<ul>
|
|
75
|
+
<li>an app that depends on <code>marmelroy/PhoneNumberKit</code> itself gets <em>package 'phonenumberkit' is required using two different URLs</em> once <code>3.3.3</code> resolves — switch your dependency to the PhoneNumberKit organization repository, or drop it;</li>
|
|
76
|
+
<li>builds that disable automatic resolution (<code>-onlyUsePackageVersionsFromResolvedFile</code>) fail until their <code>Package.resolved</code> is updated;</li>
|
|
77
|
+
<li>a PhoneNumberKit <strong>pod</strong> next to the Swift package duplicates classes — remove the pod.</li>
|
|
78
|
+
</ul>
|
|
79
|
+
</li>
|
|
80
|
+
</ul>
|
|
81
|
+
<h4 id="expo" class="tsd-anchor-link">Expo<a href="#expo" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
82
|
+
<p>Add the config plugin, plus <code>expo-build-properties</code> to raise the app's deployment target, to <code>app.json</code>:</p>
|
|
83
|
+
<pre><code class="json"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-3">"expo"</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-3">"plugins"</span><span class="hl-1">: [</span><br/><span class="hl-1"> [</span><span class="hl-2">"expo-build-properties"</span><span class="hl-1">, { </span><span class="hl-3">"ios"</span><span class="hl-1">: { </span><span class="hl-3">"deploymentTarget"</span><span class="hl-1">: </span><span class="hl-2">"17.0"</span><span class="hl-1"> } }],</span><br/><span class="hl-1"> [</span><span class="hl-2">"@zelloptt/react-native-zello-sdk"</span><span class="hl-1">, { </span><span class="hl-3">"extensionTargets"</span><span class="hl-1">: [</span><span class="hl-2">"NotificationServiceExtension"</span><span class="hl-1">] }]</span><br/><span class="hl-1"> ]</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
84
|
+
</code><button type="button">Copy</button></pre>
|
|
85
|
+
|
|
86
|
+
<p>The plugin applies the same Podfile changes as <code>setup-ios</code> on <code>expo prebuild</code>, and sets the deployment target of the listed <code>extensionTargets</code> to 17.0. Expo applies plugin mods in reverse order, so list it <strong>before</strong> any plugin that creates the extension target; prebuild fails if a listed extension target is not in the Xcode project. Expo apps use no <code>use_frameworks!</code> unless <code>ios.useFrameworks</code> is set.</p>
|
|
87
|
+
<h4 id="troubleshooting" class="tsd-anchor-link">Troubleshooting<a href="#troubleshooting" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
88
|
+
<p>While setting up your Notification Service Extension, you may receive an error:</p>
|
|
89
|
+
<pre><code><span class="hl-4">Cycle</span><span class="hl-1"> </span><span class="hl-4">inside</span><span class="hl-1"> </span><span class="hl-4">YourApp</span><span class="hl-1">; </span><span class="hl-4">building</span><span class="hl-1"> </span><span class="hl-4">could</span><span class="hl-1"> </span><span class="hl-4">produce</span><span class="hl-1"> </span><span class="hl-4">unreliable</span><span class="hl-1"> </span><span class="hl-4">results</span><span class="hl-1">.</span><br/><span class="hl-4">Cycle</span><span class="hl-1"> </span><span class="hl-5">details</span><span class="hl-1">:</span><br/><span class="hl-1">→ </span><span class="hl-4">Target</span><span class="hl-1"> ‘</span><span class="hl-4">YourApp</span><span class="hl-1">’</span><br/><span class="hl-1">○ </span><span class="hl-4">That</span><span class="hl-1"> </span><span class="hl-4">command</span><span class="hl-1"> </span><span class="hl-4">depends</span><span class="hl-1"> </span><span class="hl-4">on</span><span class="hl-1"> </span><span class="hl-4">command</span><span class="hl-1"> </span><span class="hl-6">in</span><span class="hl-1"> </span><span class="hl-4">Target</span><span class="hl-1"> ‘</span><span class="hl-4">YourApp</span><span class="hl-1">’: </span><span class="hl-4">script</span><span class="hl-1"> </span><span class="hl-4">phase</span><span class="hl-1"> “[</span><span class="hl-7">CP</span><span class="hl-1">-</span><span class="hl-4">User</span><span class="hl-1">] [</span><span class="hl-7">RNFB</span><span class="hl-1">] </span><span class="hl-4">Core</span><span class="hl-1"> </span><span class="hl-4">Configuration</span><span class="hl-1">”</span>
|
|
16
90
|
</code><button>Copy</button></pre>
|
|
17
91
|
|
|
18
92
|
<p>If you receive the above error, you should move the <code>Build Phases</code> phase named <code>Embed Foundation Extensions</code> to higher up in the order.</p>
|
|
19
|
-
<h3 id="android" class="tsd-anchor-link">Android<a href="#android" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3
|
|
20
|
-
<
|
|
21
|
-
<
|
|
93
|
+
<h3 id="android" class="tsd-anchor-link">Android<a href="#android" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3>
|
|
94
|
+
<p>Before getting started, please reference the <a href="https://sdk.zello.com/installation-guides/android-installation-guide">Android Installation Guide</a>.</p>
|
|
95
|
+
<h4 id="dependencies" class="tsd-anchor-link">Dependencies<a href="#dependencies" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
96
|
+
<p>You may or may not need to add the repositories to your app's <code>build.gradle</code>:</p>
|
|
97
|
+
<pre><code><span class="hl-4">repositories</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">google</span><span class="hl-1">()</span><br/><span class="hl-1"> </span><span class="hl-0">mavenCentral</span><span class="hl-1">()</span><br/><span class="hl-1"> </span><span class="hl-4">maven</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">url</span><span class="hl-1"> = </span><span class="hl-0">uri</span><span class="hl-1">(</span><span class="hl-2">"https://zello-sdk.s3.amazonaws.com/android/latest"</span><span class="hl-1">)</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
22
98
|
</code><button>Copy</button></pre>
|
|
23
99
|
|
|
24
|
-
<h4 id="linking" class="tsd-anchor-link">Linking<a href="#linking" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4
|
|
25
|
-
<p>
|
|
100
|
+
<h4 id="linking" class="tsd-anchor-link">Linking<a href="#linking" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4>
|
|
101
|
+
<p>Since the Zello Android SDK requires Hilt, and we must inject the <code>Zello</code> instance into the package, the project does not work with autolinking.</p>
|
|
102
|
+
<p>Because the module is now a Turbo Native Module (New Architecture), the package must be a <code>BaseReactPackage</code> that exposes the module through a <code>ReactModuleInfoProvider</code> with <code>isTurboModule = true</code>:</p>
|
|
26
103
|
<pre><code class="kotlin">/// ZelloAndroidSdkPackage.kt
|
|
27
104
|
|
|
28
|
-
import com.facebook.react.
|
|
105
|
+
import com.facebook.react.BaseReactPackage
|
|
29
106
|
import com.facebook.react.bridge.NativeModule
|
|
30
107
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
31
|
-
import com.facebook.react.
|
|
108
|
+
import com.facebook.react.module.model.ReactModuleInfo
|
|
109
|
+
import com.facebook.react.module.model.ReactModuleInfoProvider
|
|
32
110
|
import com.zello.sdk.Zello
|
|
33
111
|
import com.zellosdk.ZelloAndroidSdkModule
|
|
34
112
|
import javax.inject.Inject
|
|
35
113
|
|
|
36
|
-
class ZelloAndroidSdkPackage @Inject constructor(private val zello: Zello) :
|
|
37
|
-
|
|
38
|
-
override fun
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
114
|
+
class ZelloAndroidSdkPackage @Inject constructor(private val zello: Zello) : BaseReactPackage() {
|
|
115
|
+
|
|
116
|
+
override fun getModule(name: String, reactContext: ReactApplicationContext): NativeModule? =
|
|
117
|
+
if (name == "NativeZelloSdk") ZelloAndroidSdkModule(reactContext, zello) else null
|
|
118
|
+
|
|
119
|
+
override fun getReactModuleInfoProvider() = ReactModuleInfoProvider {
|
|
120
|
+
mapOf(
|
|
121
|
+
"NativeZelloSdk" to ReactModuleInfo(
|
|
122
|
+
"NativeZelloSdk", // name
|
|
123
|
+
"NativeZelloSdk", // className
|
|
124
|
+
false, // canOverrideExistingModule
|
|
125
|
+
false, // needsEagerInit
|
|
126
|
+
false, // isCxxModule
|
|
127
|
+
true // isTurboModule
|
|
128
|
+
)
|
|
129
|
+
)
|
|
44
130
|
}
|
|
45
131
|
}
|
|
46
132
|
</code><button type="button">Copy</button></pre>
|
|
@@ -77,8 +163,51 @@ class MainApplication : Application(), ReactApplication {
|
|
|
77
163
|
}
|
|
78
164
|
</code><button type="button">Copy</button></pre>
|
|
79
165
|
|
|
80
|
-
<h2 id="contributing" class="tsd-anchor-link">Contributing<a href="#contributing" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2
|
|
81
|
-
<
|
|
166
|
+
<h2 id="contributing" class="tsd-anchor-link">Contributing<a href="#contributing" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
|
|
167
|
+
<p>See the <a href="media/CONTRIBUTING.md">contributing guide</a> to learn how to contribute to the repository and the development workflow.</p>
|
|
168
|
+
<h2 id="license" class="tsd-anchor-link">License<a href="#license" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
|
|
169
|
+
<p>MIT</p>
|
|
82
170
|
<hr>
|
|
83
171
|
<p>Made with <a href="https://github.com/callstack/react-native-builder-bob">create-react-native-library</a></p>
|
|
84
|
-
</div></div
|
|
172
|
+
</div></div>
|
|
173
|
+
<div class="col-sidebar">
|
|
174
|
+
<div class="page-menu">
|
|
175
|
+
<div class="tsd-navigation settings">
|
|
176
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>
|
|
177
|
+
<h3>Settings</h3></summary>
|
|
178
|
+
<div class="tsd-accordion-details">
|
|
179
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
180
|
+
<ul id="tsd-filter-options">
|
|
181
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
182
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
183
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
184
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div>
|
|
185
|
+
<details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>
|
|
186
|
+
<h3>On This Page</h3></summary>
|
|
187
|
+
<div class="tsd-accordion-details"><a href="#react-native-zello-sdk"><span>react-<wbr/>native-<wbr/>zello-<wbr/>sdk</span></a>
|
|
188
|
+
<ul>
|
|
189
|
+
<li><a href="#prerequisites"><span>Prerequisites</span></a></li>
|
|
190
|
+
<li><a href="#installation"><span>Installation</span></a></li>
|
|
191
|
+
<li>
|
|
192
|
+
<ul>
|
|
193
|
+
<li><a href="#ios"><span>i<wbr/>OS</span></a></li>
|
|
194
|
+
<li>
|
|
195
|
+
<ul>
|
|
196
|
+
<li><a href="#setup"><span>Setup</span></a></li>
|
|
197
|
+
<li><a href="#upgrading-from-3x"><span>Upgrading from 3.x</span></a></li>
|
|
198
|
+
<li><a href="#troubleshooting-swift-package-manager"><span>Troubleshooting (<wbr/>Swift <wbr/>Package <wbr/>Manager)</span></a></li>
|
|
199
|
+
<li><a href="#expo"><span>Expo</span></a></li>
|
|
200
|
+
<li><a href="#troubleshooting"><span>Troubleshooting</span></a></li></ul></li>
|
|
201
|
+
<li><a href="#android"><span>Android</span></a></li>
|
|
202
|
+
<li>
|
|
203
|
+
<ul>
|
|
204
|
+
<li><a href="#dependencies"><span>Dependencies</span></a></li>
|
|
205
|
+
<li><a href="#linking"><span>Linking</span></a></li></ul></li></ul></li>
|
|
206
|
+
<li><a href="#contributing"><span>Contributing</span></a></li>
|
|
207
|
+
<li><a href="#license"><span>License</span></a></li></ul></div></details></div>
|
|
208
|
+
<div class="site-menu">
|
|
209
|
+
<nav class="tsd-navigation"><a href="modules.html">@zelloptt/react-native-zello-sdk</a>
|
|
210
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
211
|
+
<li>Loading...</li></ul></nav></div></div></div><footer>
|
|
212
|
+
<p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer>
|
|
213
|
+
<div class="overlay"></div></body></html>
|