@zelloptt/react-native-zello-sdk 0.4.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/README.md +9 -4
  2. package/android/build.gradle +1 -1
  3. package/android/src/main/java/com/zellosdk/ZelloAndroidSdkModule.kt +103 -29
  4. package/android/src/main/java/com/zellosdk/ZelloAndroidSdkModuleHelper.kt +53 -8
  5. package/ios/Extensions/ZelloConsoleSettings+Extension.swift +6 -1
  6. package/ios/Extensions/ZelloContact+Extension.swift +51 -0
  7. package/ios/Extensions/ZelloIOSSdkModule+Extension.swift +49 -9
  8. package/ios/ZelloIOSSdkModule.swift +88 -27
  9. package/ios/ZelloIOSSdkModuleBridge.m +22 -11
  10. package/lib/commonjs/docs/assets/navigation.js +1 -1
  11. package/lib/commonjs/docs/assets/navigation.js.map +1 -1
  12. package/lib/commonjs/docs/assets/search.js +1 -1
  13. package/lib/commonjs/docs/assets/search.js.map +1 -1
  14. package/lib/commonjs/docs/classes/sdk.Zello.html +69 -45
  15. package/lib/commonjs/docs/classes/types.ZelloAlertMessage.html +7 -7
  16. package/lib/commonjs/docs/classes/types.ZelloChannel.html +8 -8
  17. package/lib/commonjs/docs/classes/types.ZelloChannelUser.html +5 -4
  18. package/lib/commonjs/docs/classes/types.ZelloDispatchCall.html +4 -4
  19. package/lib/commonjs/docs/classes/types.ZelloDispatchChannel.html +9 -9
  20. package/lib/commonjs/docs/classes/types.ZelloGroupConversation.html +24 -0
  21. package/lib/commonjs/docs/classes/types.ZelloHistoryAlertMessage.html +8 -8
  22. package/lib/commonjs/docs/classes/types.ZelloHistoryImageMessage.html +7 -7
  23. package/lib/commonjs/docs/classes/types.ZelloHistoryLocationMessage.html +11 -11
  24. package/lib/commonjs/docs/classes/types.ZelloHistoryTextMessage.html +8 -8
  25. package/lib/commonjs/docs/classes/types.ZelloHistoryVoiceMessage.html +8 -8
  26. package/lib/commonjs/docs/classes/types.ZelloImageMessage.html +8 -8
  27. package/lib/commonjs/docs/classes/types.ZelloIncomingEmergency.html +7 -7
  28. package/lib/commonjs/docs/classes/types.ZelloIncomingVoiceMessage.html +6 -6
  29. package/lib/commonjs/docs/classes/types.ZelloLocationMessage.html +10 -10
  30. package/lib/commonjs/docs/classes/types.ZelloOutgoingEmergency.html +5 -5
  31. package/lib/commonjs/docs/classes/types.ZelloOutgoingVoiceMessage.html +7 -7
  32. package/lib/commonjs/docs/classes/types.ZelloRecentEntry.html +7 -7
  33. package/lib/commonjs/docs/classes/types.ZelloTextMessage.html +7 -7
  34. package/lib/commonjs/docs/classes/types.ZelloUser.html +10 -8
  35. package/lib/commonjs/docs/classes/types.ZelloUserSupportedFeatures.html +5 -0
  36. package/lib/commonjs/docs/enums/events.ZelloEvent.html +107 -82
  37. package/lib/commonjs/docs/enums/types.ZelloAccountStatus.html +4 -4
  38. package/lib/commonjs/docs/enums/types.ZelloChannelAlertLevel.html +4 -4
  39. package/lib/commonjs/docs/enums/types.ZelloChannelConnectionStatus.html +2 -2
  40. package/lib/commonjs/docs/enums/types.ZelloConnectionError.html +2 -2
  41. package/lib/commonjs/docs/enums/types.ZelloConnectionState.html +2 -2
  42. package/lib/commonjs/docs/enums/types.ZelloContactType.html +4 -2
  43. package/lib/commonjs/docs/enums/types.ZelloDispatchCallStatus.html +2 -2
  44. package/lib/commonjs/docs/enums/types.ZelloOutgoingVoiceMessageError.html +2 -2
  45. package/lib/commonjs/docs/enums/types.ZelloOutgoingVoiceMessageState.html +2 -2
  46. package/lib/commonjs/docs/enums/types.ZelloRecentEntryType.html +2 -2
  47. package/lib/commonjs/docs/enums/types.ZelloUserStatus.html +6 -6
  48. package/lib/commonjs/docs/index.html +7 -4
  49. package/lib/commonjs/docs/modules/events.html +1 -1
  50. package/lib/commonjs/docs/modules/index.html +4 -2
  51. package/lib/commonjs/docs/modules/sdk.html +1 -1
  52. package/lib/commonjs/docs/modules/types.html +4 -2
  53. package/lib/commonjs/docs/types/types.ZelloChannelOptions.html +4 -4
  54. package/lib/commonjs/docs/types/types.ZelloConfig.html +1 -1
  55. package/lib/commonjs/docs/types/types.ZelloConsoleSettings.html +8 -0
  56. package/lib/commonjs/docs/types/types.ZelloContact.html +1 -1
  57. package/lib/commonjs/docs/types/types.ZelloCredentials.html +1 -1
  58. package/lib/commonjs/docs/types/types.ZelloHistoryMessage.html +1 -1
  59. package/lib/commonjs/docs/types/types.ZelloMessage.html +1 -1
  60. package/lib/commonjs/events/index.js +6 -0
  61. package/lib/commonjs/events/index.js.map +1 -1
  62. package/lib/commonjs/sdk/index.js +195 -47
  63. package/lib/commonjs/sdk/index.js.map +1 -1
  64. package/lib/commonjs/types/index.js +56 -12
  65. package/lib/commonjs/types/index.js.map +1 -1
  66. package/lib/commonjs/utils/index.js +41 -10
  67. package/lib/commonjs/utils/index.js.map +1 -1
  68. package/lib/module/docs/assets/navigation.js +1 -1
  69. package/lib/module/docs/assets/navigation.js.map +1 -1
  70. package/lib/module/docs/assets/search.js +1 -1
  71. package/lib/module/docs/assets/search.js.map +1 -1
  72. package/lib/module/docs/classes/sdk.Zello.html +69 -45
  73. package/lib/module/docs/classes/types.ZelloAlertMessage.html +7 -7
  74. package/lib/module/docs/classes/types.ZelloChannel.html +8 -8
  75. package/lib/module/docs/classes/types.ZelloChannelUser.html +5 -4
  76. package/lib/module/docs/classes/types.ZelloDispatchCall.html +4 -4
  77. package/lib/module/docs/classes/types.ZelloDispatchChannel.html +9 -9
  78. package/lib/module/docs/classes/types.ZelloGroupConversation.html +24 -0
  79. package/lib/module/docs/classes/types.ZelloHistoryAlertMessage.html +8 -8
  80. package/lib/module/docs/classes/types.ZelloHistoryImageMessage.html +7 -7
  81. package/lib/module/docs/classes/types.ZelloHistoryLocationMessage.html +11 -11
  82. package/lib/module/docs/classes/types.ZelloHistoryTextMessage.html +8 -8
  83. package/lib/module/docs/classes/types.ZelloHistoryVoiceMessage.html +8 -8
  84. package/lib/module/docs/classes/types.ZelloImageMessage.html +8 -8
  85. package/lib/module/docs/classes/types.ZelloIncomingEmergency.html +7 -7
  86. package/lib/module/docs/classes/types.ZelloIncomingVoiceMessage.html +6 -6
  87. package/lib/module/docs/classes/types.ZelloLocationMessage.html +10 -10
  88. package/lib/module/docs/classes/types.ZelloOutgoingEmergency.html +5 -5
  89. package/lib/module/docs/classes/types.ZelloOutgoingVoiceMessage.html +7 -7
  90. package/lib/module/docs/classes/types.ZelloRecentEntry.html +7 -7
  91. package/lib/module/docs/classes/types.ZelloTextMessage.html +7 -7
  92. package/lib/module/docs/classes/types.ZelloUser.html +10 -8
  93. package/lib/module/docs/classes/types.ZelloUserSupportedFeatures.html +5 -0
  94. package/lib/module/docs/enums/events.ZelloEvent.html +107 -82
  95. package/lib/module/docs/enums/types.ZelloAccountStatus.html +4 -4
  96. package/lib/module/docs/enums/types.ZelloChannelAlertLevel.html +4 -4
  97. package/lib/module/docs/enums/types.ZelloChannelConnectionStatus.html +2 -2
  98. package/lib/module/docs/enums/types.ZelloConnectionError.html +2 -2
  99. package/lib/module/docs/enums/types.ZelloConnectionState.html +2 -2
  100. package/lib/module/docs/enums/types.ZelloContactType.html +4 -2
  101. package/lib/module/docs/enums/types.ZelloDispatchCallStatus.html +2 -2
  102. package/lib/module/docs/enums/types.ZelloOutgoingVoiceMessageError.html +2 -2
  103. package/lib/module/docs/enums/types.ZelloOutgoingVoiceMessageState.html +2 -2
  104. package/lib/module/docs/enums/types.ZelloRecentEntryType.html +2 -2
  105. package/lib/module/docs/enums/types.ZelloUserStatus.html +6 -6
  106. package/lib/module/docs/index.html +7 -4
  107. package/lib/module/docs/modules/events.html +1 -1
  108. package/lib/module/docs/modules/index.html +4 -2
  109. package/lib/module/docs/modules/sdk.html +1 -1
  110. package/lib/module/docs/modules/types.html +4 -2
  111. package/lib/module/docs/types/types.ZelloChannelOptions.html +4 -4
  112. package/lib/module/docs/types/types.ZelloConfig.html +1 -1
  113. package/lib/module/docs/types/types.ZelloConsoleSettings.html +8 -0
  114. package/lib/module/docs/types/types.ZelloContact.html +1 -1
  115. package/lib/module/docs/types/types.ZelloCredentials.html +1 -1
  116. package/lib/module/docs/types/types.ZelloHistoryMessage.html +1 -1
  117. package/lib/module/docs/types/types.ZelloMessage.html +1 -1
  118. package/lib/module/events/index.js +6 -0
  119. package/lib/module/events/index.js.map +1 -1
  120. package/lib/module/sdk/index.js +197 -49
  121. package/lib/module/sdk/index.js.map +1 -1
  122. package/lib/module/types/index.js +57 -11
  123. package/lib/module/types/index.js.map +1 -1
  124. package/lib/module/utils/index.js +41 -11
  125. package/lib/module/utils/index.js.map +1 -1
  126. package/lib/typescript/commonjs/src/events/index.d.ts +38 -1
  127. package/lib/typescript/commonjs/src/events/index.d.ts.map +1 -1
  128. package/lib/typescript/commonjs/src/sdk/index.d.ts +38 -4
  129. package/lib/typescript/commonjs/src/sdk/index.d.ts.map +1 -1
  130. package/lib/typescript/commonjs/src/types/index.d.ts +66 -10
  131. package/lib/typescript/commonjs/src/types/index.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/src/utils/index.d.ts +2 -1
  133. package/lib/typescript/commonjs/src/utils/index.d.ts.map +1 -1
  134. package/lib/typescript/module/src/events/index.d.ts +38 -1
  135. package/lib/typescript/module/src/events/index.d.ts.map +1 -1
  136. package/lib/typescript/module/src/sdk/index.d.ts +38 -4
  137. package/lib/typescript/module/src/sdk/index.d.ts.map +1 -1
  138. package/lib/typescript/module/src/types/index.d.ts +66 -10
  139. package/lib/typescript/module/src/types/index.d.ts.map +1 -1
  140. package/lib/typescript/module/src/utils/index.d.ts +2 -1
  141. package/lib/typescript/module/src/utils/index.d.ts.map +1 -1
  142. package/package.json +2 -1
  143. package/react-native-zello-sdk.podspec +1 -1
  144. package/src/events/index.ts +37 -0
  145. package/src/sdk/index.ts +237 -50
  146. package/src/types/index.ts +90 -12
  147. package/src/utils/index.ts +65 -20
  148. package/lib/commonjs/docs/classes/types.ZelloConsoleSettings.html +0 -5
  149. package/lib/module/docs/classes/types.ZelloConsoleSettings.html +0 -5
@@ -3,4 +3,4 @@
3
3
  This is the &quot;x&quot; in your {<a href="http://x.zellowork.com" target="_blank" class="external">x.zellowork.com</a>} Zello Work console login.</p>
4
4
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">password</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>The password for the user.</p>
5
5
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">username</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>The username to connect.</p>
6
- </div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/68ceb919b83b2ca14f8c1bb7bc5f3f7eb87a5cf9/src/types/index.ts#L241">src/types/index.ts:241</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><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><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><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><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><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@zelloptt/react-native-zello-sdk</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
6
+ </div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/e82383ec6cfc9b9cceb3ebceec52547bba1f26bf/src/types/index.ts#L303">src/types/index.ts:303</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><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><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><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><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><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@zelloptt/react-native-zello-sdk</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -6,4 +6,4 @@ If outgoing, undefined.</p>
6
6
  This identifier persists across sessions.</p>
7
7
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">incoming</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><p>Whether the message was received or sent.</p>
8
8
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">timestamp</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><p>The timestamp of the message.</p>
9
- </div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/68ceb919b83b2ca14f8c1bb7bc5f3f7eb87a5cf9/src/types/index.ts#L652">src/types/index.ts:652</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><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><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><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><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><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@zelloptt/react-native-zello-sdk</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
9
+ </div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/e82383ec6cfc9b9cceb3ebceec52547bba1f26bf/src/types/index.ts#L714">src/types/index.ts:714</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><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><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><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><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><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@zelloptt/react-native-zello-sdk</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -4,4 +4,4 @@ If outgoing, undefined.</p>
4
4
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">contact</span><span class="tsd-signature-symbol">: </span><a href="types.ZelloContact.html" class="tsd-signature-type tsd-kind-type-alias">ZelloContact</a></h5><div class="tsd-comment tsd-typography"><p>The contact that sent or received the message. If this is a channel message, the contact will be the channel.</p>
5
5
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">incoming</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><p>Whether the message was received or sent.</p>
6
6
  </div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><span class="tsd-kind-property">timestamp</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><p>The timestamp of the message.</p>
7
- </div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/68ceb919b83b2ca14f8c1bb7bc5f3f7eb87a5cf9/src/types/index.ts#L302">src/types/index.ts:302</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><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><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><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><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><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@zelloptt/react-native-zello-sdk</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
7
+ </div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/zelloptt/react-native-zello-sdk/blob/e82383ec6cfc9b9cceb3ebceec52547bba1f26bf/src/types/index.ts#L364">src/types/index.ts:364</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><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><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><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><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><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@zelloptt/react-native-zello-sdk</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -39,6 +39,12 @@ export let ZelloEvent = /*#__PURE__*/function (ZelloEvent) {
39
39
  ZelloEvent["DISPATCH_CALL_TRANSFERRED"] = "onDispatchCallTransferred";
40
40
  ZelloEvent["DISPATCH_CALL_ENDED"] = "onDispatchCallEnded";
41
41
  ZelloEvent["CONSOLE_SETTINGS_CHANGED"] = "onConsoleSettingsChanged";
42
+ ZelloEvent["GROUP_CONVERSATION_CREATED"] = "onGroupConversationCreated";
43
+ ZelloEvent["GROUP_CONVERSATION_INVITE"] = "onGroupConversationInvite";
44
+ ZelloEvent["GROUP_CONVERSATION_USERS_ADDED"] = "onGroupConversationUsersAdded";
45
+ ZelloEvent["GROUP_CONVERSATION_USERS_LEFT"] = "onGroupConversationUsersLeft";
46
+ ZelloEvent["GROUP_CONVERSATION_LEFT"] = "onGroupConversationLeft";
47
+ ZelloEvent["GROUP_CONVERSATION_RENAMED"] = "onGroupConversationRenamed";
42
48
  return ZelloEvent;
43
49
  }({});
44
50
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ZelloEvent"],"sourceRoot":"../../../src","sources":["events/index.ts"],"mappings":";;AAAA,WAAYA,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["ZelloEvent"],"sourceRoot":"../../../src","sources":["events/index.ts"],"mappings":";;AAAA,WAAYA,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA","ignoreList":[]}
@@ -17,8 +17,8 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
17
17
  // noinspection JSUnusedGlobalSymbols
18
18
 
19
19
  import { NativeEventEmitter, NativeModules } from 'react-native';
20
- import { bridgeCallToSdkCall, bridgeConsoleSettingsToSdkConsoleSettings, isAndroid } from "../utils/index.js";
21
- import { ZelloAccountStatus, ZelloAlertMessage, ZelloChannelUser, ZelloConnectionError, ZelloConnectionState, ZelloContactType, ZelloImageMessage, ZelloIncomingVoiceMessage, ZelloLocationMessage, ZelloOutgoingEmergency, ZelloOutgoingVoiceMessage, ZelloOutgoingVoiceMessageError, ZelloOutgoingVoiceMessageState, ZelloRecentEntry, ZelloTextMessage } from "../types/index.js";
20
+ import { bridgeCallToSdkCall, bridgeChannelUserToSdkChannelUser, bridgeConsoleSettingsToSdkConsoleSettings, isAndroid } from "../utils/index.js";
21
+ import { ZelloAccountStatus, ZelloAlertMessage, ZelloConnectionError, ZelloConnectionState, ZelloContactType, ZelloImageMessage, ZelloIncomingVoiceMessage, ZelloLocationMessage, ZelloOutgoingEmergency, ZelloOutgoingVoiceMessage, ZelloOutgoingVoiceMessageError, ZelloOutgoingVoiceMessageState, ZelloRecentEntry, ZelloTextMessage } from "../types/index.js";
22
22
  import EventEmitter from 'react-native/Libraries/vendor/emitter/EventEmitter';
23
23
  import { compareNameAscending, sortedArrayFind } from "../utils/algorithms/index.js";
24
24
  import { bridgeContactToSdkContact, bridgeHistoryMessageToSdkHistoryMessage, bridgeIncomingEmergencyToSdkIncomingEmergency } from "../utils/index.js";
@@ -53,6 +53,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
53
53
  * The list of {@link ZelloChannel} in the contact list. Sorted by name, ascending.
54
54
  */
55
55
  _defineProperty(_this, "channels", []);
56
+ /**
57
+ * The list of {@link ZelloGroupConversation} in the contact list. Sorted by name, ascending.
58
+ */
59
+ _defineProperty(_this, "groupConversations", []);
56
60
  /**
57
61
  * The current account status. undefined when {@link state} is not {@link ZelloConnectionState.Connected}.
58
62
  */
@@ -107,9 +111,6 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
107
111
 
108
112
  /**
109
113
  * Sets configuration variables for the SDK.
110
- *
111
- * At the moment, this is only functional on Android.
112
- *
113
114
  * @param config The configuration to set.
114
115
  */
115
116
  _inherits(Zello, _EventEmitter);
@@ -186,6 +187,17 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
186
187
  return sortedArrayFind(this.channels, name, compareNameAscending);
187
188
  }
188
189
 
190
+ /**
191
+ * Returns the group conversation with the given name. Case-insensitive.
192
+ * @param name The name of the group conversation to search for.
193
+ * @return The group conversation with the given name, or null if no group conversation with that name exists.
194
+ */
195
+ }, {
196
+ key: "getGroupConversation",
197
+ value: function getGroupConversation(name) {
198
+ return sortedArrayFind(this.groupConversations, name, compareNameAscending);
199
+ }
200
+
189
201
  /**
190
202
  * Sets the selected contact.
191
203
  * While optional, this is typically used for tracking the contact that the user is currently interacting with.
@@ -195,11 +207,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
195
207
  }, {
196
208
  key: "setSelectedContact",
197
209
  value: function setSelectedContact(contact) {
198
- const isChannel = contact.type === ZelloContactType.Channel;
199
210
  if (isAndroid) {
200
- ZelloAndroidSdkModule.setSelectedContact(contact.name, isChannel);
211
+ ZelloAndroidSdkModule.setSelectedContact(contact.name, contact.type);
201
212
  } else {
202
- ZelloIOSSdkModule.selectContact(contact.name, isChannel);
213
+ ZelloIOSSdkModule.selectContact(contact.name, contact.type);
203
214
  }
204
215
  }
205
216
 
@@ -230,7 +241,11 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
230
241
  if (isAndroid) {
231
242
  ZelloAndroidSdkModule.connectChannel(channel.name);
232
243
  } else {
233
- ZelloIOSSdkModule.connectChannel(channel.name);
244
+ if (channel.type === ZelloContactType.GroupConversation) {
245
+ ZelloIOSSdkModule.connectGroupConversation(channel.name);
246
+ } else {
247
+ ZelloIOSSdkModule.connectChannel(channel.name);
248
+ }
234
249
  }
235
250
  }
236
251
 
@@ -246,7 +261,11 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
246
261
  if (isAndroid) {
247
262
  ZelloAndroidSdkModule.disconnectChannel(channel.name);
248
263
  } else {
249
- ZelloIOSSdkModule.disconnectChannel(channel.name);
264
+ if (channel.type === ZelloContactType.GroupConversation) {
265
+ ZelloIOSSdkModule.disconnectGroupConversation(channel.name);
266
+ } else {
267
+ ZelloIOSSdkModule.disconnectChannel(channel.name);
268
+ }
250
269
  }
251
270
  }
252
271
 
@@ -259,11 +278,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
259
278
  }, {
260
279
  key: "startVoiceMessage",
261
280
  value: function startVoiceMessage(contact) {
262
- const isChannel = contact.type === ZelloContactType.Channel;
263
281
  if (isAndroid) {
264
- ZelloAndroidSdkModule.startVoiceMessage(contact.name, isChannel);
282
+ ZelloAndroidSdkModule.startVoiceMessage(contact.name, contact.type);
265
283
  } else {
266
- ZelloIOSSdkModule.startVoiceMessage(contact.name, isChannel);
284
+ ZelloIOSSdkModule.startVoiceMessage(contact.name, contact.type);
267
285
  }
268
286
  }
269
287
 
@@ -290,11 +308,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
290
308
  }, {
291
309
  key: "sendImage",
292
310
  value: function sendImage(contact, data) {
293
- const isChannel = contact.type === ZelloContactType.Channel;
294
311
  if (isAndroid) {
295
- ZelloAndroidSdkModule.sendImage(contact.name, isChannel, data);
312
+ ZelloAndroidSdkModule.sendImage(contact.name, contact.type, data);
296
313
  } else {
297
- ZelloIOSSdkModule.sendImage(contact.name, isChannel, data);
314
+ ZelloIOSSdkModule.sendImage(contact.name, contact.type, data);
298
315
  }
299
316
  }
300
317
 
@@ -306,11 +323,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
306
323
  }, {
307
324
  key: "sendLocation",
308
325
  value: function sendLocation(contact) {
309
- const isChannel = contact.type === ZelloContactType.Channel;
310
326
  if (isAndroid) {
311
- ZelloAndroidSdkModule.sendLocation(contact.name, isChannel);
327
+ ZelloAndroidSdkModule.sendLocation(contact.name, contact.type);
312
328
  } else {
313
- ZelloIOSSdkModule.sendLocation(contact.name, isChannel);
329
+ ZelloIOSSdkModule.sendLocation(contact.name, contact.type);
314
330
  }
315
331
  }
316
332
 
@@ -323,11 +339,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
323
339
  }, {
324
340
  key: "sendText",
325
341
  value: function sendText(contact, text) {
326
- const isChannel = contact.type === ZelloContactType.Channel;
327
342
  if (isAndroid) {
328
- ZelloAndroidSdkModule.sendText(contact.name, isChannel, text);
343
+ ZelloAndroidSdkModule.sendText(contact.name, contact.type, text);
329
344
  } else {
330
- ZelloIOSSdkModule.sendText(contact.name, isChannel, text);
345
+ ZelloIOSSdkModule.sendText(contact.name, contact.type, text);
331
346
  }
332
347
  }
333
348
 
@@ -341,11 +356,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
341
356
  }, {
342
357
  key: "sendAlert",
343
358
  value: function sendAlert(contact, text, level) {
344
- const isChannel = contact.type === ZelloContactType.Channel;
345
359
  if (isAndroid) {
346
- ZelloAndroidSdkModule.sendAlert(contact.name, isChannel, text, level);
360
+ ZelloAndroidSdkModule.sendAlert(contact.name, contact.type, text, level);
347
361
  } else {
348
- ZelloIOSSdkModule.sendAlert(contact.name, isChannel, text, level);
362
+ ZelloIOSSdkModule.sendAlert(contact.name, contact.type, text, level);
349
363
  }
350
364
  }
351
365
 
@@ -371,11 +385,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
371
385
  }, {
372
386
  key: "muteContact",
373
387
  value: function muteContact(contact) {
374
- const isChannel = contact.type === ZelloContactType.Channel;
375
388
  if (isAndroid) {
376
- ZelloAndroidSdkModule.muteContact(contact.name, isChannel);
389
+ ZelloAndroidSdkModule.muteContact(contact.name, contact.type);
377
390
  } else {
378
- ZelloIOSSdkModule.muteContact(contact.name, isChannel);
391
+ ZelloIOSSdkModule.muteContact(contact.name, contact.type);
379
392
  }
380
393
  }
381
394
 
@@ -387,11 +400,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
387
400
  }, {
388
401
  key: "unmuteContact",
389
402
  value: function unmuteContact(contact) {
390
- const isChannel = contact.type === ZelloContactType.Channel;
391
403
  if (isAndroid) {
392
- ZelloAndroidSdkModule.unmuteContact(contact.name, isChannel);
404
+ ZelloAndroidSdkModule.unmuteContact(contact.name, contact.type);
393
405
  } else {
394
- ZelloIOSSdkModule.unmuteContact(contact.name, isChannel);
406
+ ZelloIOSSdkModule.unmuteContact(contact.name, contact.type);
395
407
  }
396
408
  }
397
409
 
@@ -435,7 +447,6 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
435
447
  value: function getHistory(contact, size) {
436
448
  const defaultHistorySize = 50;
437
449
  return new Promise(resolve => {
438
- const isChannel = contact.type === ZelloContactType.Channel;
439
450
  const callback = history => {
440
451
  if (!history) {
441
452
  resolve([]);
@@ -445,9 +456,9 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
445
456
  resolve(messages);
446
457
  };
447
458
  if (isAndroid) {
448
- ZelloAndroidSdkModule.getHistory(contact.name, isChannel, size ?? defaultHistorySize, callback);
459
+ ZelloAndroidSdkModule.getHistory(contact.name, contact.type, size ?? defaultHistorySize, callback);
449
460
  } else {
450
- ZelloIOSSdkModule.getHistory(contact.name, isChannel, size ?? defaultHistorySize, callback);
461
+ ZelloIOSSdkModule.getHistory(contact.name, contact.type, size ?? defaultHistorySize, callback);
451
462
  }
452
463
  });
453
464
  }
@@ -460,11 +471,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
460
471
  }, {
461
472
  key: "playHistoryMessage",
462
473
  value: function playHistoryMessage(message) {
463
- const isChannel = message.contact.type === ZelloContactType.Channel;
464
474
  if (isAndroid) {
465
- ZelloAndroidSdkModule.playHistoryMessage(message.historyId, message.contact.name, isChannel);
475
+ ZelloAndroidSdkModule.playHistoryMessage(message.historyId, message.contact.name, message.contact.type);
466
476
  } else {
467
- ZelloIOSSdkModule.playHistoryMessage(message.historyId, message.contact.name, isChannel);
477
+ ZelloIOSSdkModule.playHistoryMessage(message.historyId, message.contact.name, message.contact.type);
468
478
  }
469
479
  }
470
480
 
@@ -491,11 +501,10 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
491
501
  key: "getImageDataForHistoryImageMessage",
492
502
  value: function getImageDataForHistoryImageMessage(message) {
493
503
  return new Promise(resolve => {
494
- const isChannel = message.contact.type === ZelloContactType.Channel;
495
504
  if (isAndroid) {
496
- ZelloAndroidSdkModule.getImageDataForHistoryImageMessage(message.historyId, message.contact.name, isChannel, data => resolve(data));
505
+ ZelloAndroidSdkModule.getImageDataForHistoryImageMessage(message.historyId, message.contact.name, message.contact.type, data => resolve(data));
497
506
  } else {
498
- ZelloIOSSdkModule.getHistoryImageData(message.historyId, message.contact.name, isChannel, data => resolve(data));
507
+ ZelloIOSSdkModule.getHistoryImageData(message.historyId, message.contact.name, message.contact.type, data => resolve(data));
499
508
  }
500
509
  });
501
510
  }
@@ -517,6 +526,81 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
517
526
  ZelloIOSSdkModule.endDispatchCall(channel.name);
518
527
  }
519
528
  }
529
+
530
+ /**
531
+ * Creates a new group conversation with the given users.
532
+ * This will trigger the {@link ZelloEvent.GROUP_CONVERSATION_CREATED} and {@link ZelloEvent.CONTACT_LIST_UPDATED} events.
533
+ * @param users The users to create the group conversation with.
534
+ * @param displayName Optional; The display name of the group conversation. The conversation can be renamed later by using {@link renameGroupConversation}.
535
+ */
536
+ }, {
537
+ key: "createGroupConversation",
538
+ value: function createGroupConversation(users, displayName) {
539
+ if (!this.consoleSettings?.allowGroupConversations) {
540
+ return;
541
+ }
542
+ if (isAndroid) {
543
+ ZelloAndroidSdkModule.createGroupConversation(users.map(user => user.name), displayName);
544
+ } else {
545
+ ZelloIOSSdkModule.createGroupConversation(users.map(user => user.name), displayName);
546
+ }
547
+ }
548
+
549
+ /**
550
+ * Adds users to the given group conversation.
551
+ * This will trigger the {@link ZelloEvent.GROUP_CONVERSATION_USERS_ADDED} and {@link ZelloEvent.CONTACT_LIST_UPDATED} events.
552
+ * @param groupConversation The group conversation to add users to.
553
+ * @param users The users to add to the group conversation.
554
+ */
555
+ }, {
556
+ key: "addUsersToGroupConversation",
557
+ value: function addUsersToGroupConversation(groupConversation, users) {
558
+ if (!this.consoleSettings?.allowGroupConversations) {
559
+ return;
560
+ }
561
+ if (isAndroid) {
562
+ ZelloAndroidSdkModule.addUsersToGroupConversation(groupConversation.name, users.map(user => user.name));
563
+ } else {
564
+ ZelloIOSSdkModule.addUsersToGroupConversation(groupConversation.name, users.map(user => user.name));
565
+ }
566
+ }
567
+
568
+ /**
569
+ * Removes the user from the group conversation.
570
+ * This will trigger the {@link ZelloEvent.GROUP_CONVERSATION_LEFT} and {@link ZelloEvent.CONTACT_LIST_UPDATED} events.
571
+ * @param groupConversation The group conversation to leave.
572
+ */
573
+ }, {
574
+ key: "leaveGroupConversation",
575
+ value: function leaveGroupConversation(groupConversation) {
576
+ if (!this.consoleSettings?.allowGroupConversations) {
577
+ return;
578
+ }
579
+ if (isAndroid) {
580
+ ZelloAndroidSdkModule.leaveGroupConversation(groupConversation.name);
581
+ } else {
582
+ ZelloIOSSdkModule.leaveGroupConversation(groupConversation.name);
583
+ }
584
+ }
585
+
586
+ /**
587
+ * Renames the group conversation.
588
+ * This will trigger the {@link ZelloEvent.GROUP_CONVERSATION_RENAMED} and {@link ZelloEvent.CONTACT_LIST_UPDATED} events.
589
+ * @param groupConversation The group conversation to rename.
590
+ * @param name The new name for the group conversation.
591
+ */
592
+ }, {
593
+ key: "renameGroupConversation",
594
+ value: function renameGroupConversation(groupConversation, name) {
595
+ if (!this.consoleSettings?.allowGroupConversations) {
596
+ return;
597
+ }
598
+ if (isAndroid) {
599
+ ZelloAndroidSdkModule.renameGroupConversation(groupConversation.name, name);
600
+ } else {
601
+ ZelloIOSSdkModule.renameGroupConversation(groupConversation.name, name);
602
+ }
603
+ }
520
604
  }, {
521
605
  key: "setupEventListener",
522
606
  value: function setupEventListener(eventEmitter) {
@@ -561,10 +645,12 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
561
645
  this.users.sort(compareNameAscending);
562
646
  this.channels = event.channels.map(channel => bridgeContactToSdkContact(channel));
563
647
  this.channels.sort(compareNameAscending);
648
+ this.groupConversations = event.groupConversations.map(groupConversation => bridgeContactToSdkContact(groupConversation));
649
+ this.groupConversations.sort(compareNameAscending);
564
650
  if (event.emergencyChannel) {
565
651
  this.emergencyChannel = bridgeContactToSdkContact(event.emergencyChannel);
566
652
  }
567
- this.emit(ZelloEvent.CONTACT_LIST_UPDATED, this.users, this.channels);
653
+ this.emit(ZelloEvent.CONTACT_LIST_UPDATED, this.users, this.channels, this.groupConversations);
568
654
  break;
569
655
  }
570
656
  case 'onSelectedContactChanged':
@@ -588,7 +674,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
588
674
  if (!contact) {
589
675
  break;
590
676
  }
591
- this.incomingVoiceMessage = new ZelloIncomingVoiceMessage(contact, new ZelloChannelUser(event.channelUserName), parseInt(event.timestamp, 10));
677
+ this.incomingVoiceMessage = new ZelloIncomingVoiceMessage(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), parseInt(event.timestamp, 10));
592
678
  this.emit(ZelloEvent.INCOMING_VOICE_MESSAGE_STARTED, this.incomingVoiceMessage);
593
679
  break;
594
680
  }
@@ -599,7 +685,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
599
685
  if (!contact) {
600
686
  break;
601
687
  }
602
- this.emit(ZelloEvent.INCOMING_VOICE_MESSAGE_STOPPED, new ZelloIncomingVoiceMessage(contact, new ZelloChannelUser(event.channelUserName), parseInt(event.timestamp, 10)));
688
+ this.emit(ZelloEvent.INCOMING_VOICE_MESSAGE_STOPPED, new ZelloIncomingVoiceMessage(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), parseInt(event.timestamp, 10)));
603
689
  break;
604
690
  }
605
691
  case 'onOutgoingVoiceMessageConnecting':
@@ -643,7 +729,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
643
729
  if (!contact) {
644
730
  break;
645
731
  }
646
- this.emit(ZelloEvent.INCOMING_IMAGE_MESSAGE_RECEIVED, new ZelloImageMessage(contact, new ZelloChannelUser(event.channelUserName), true, parseInt(event.timestamp, 10), event.thumbnail, event.image));
732
+ this.emit(ZelloEvent.INCOMING_IMAGE_MESSAGE_RECEIVED, new ZelloImageMessage(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), true, parseInt(event.timestamp, 10), event.thumbnail, event.image));
647
733
  break;
648
734
  }
649
735
  case 'onOutgoingImageMessageSent':
@@ -670,7 +756,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
670
756
  if (!contact) {
671
757
  break;
672
758
  }
673
- this.emit(ZelloEvent.INCOMING_ALERT_MESSAGE_RECEIVED, new ZelloAlertMessage(contact, new ZelloChannelUser(event.channelUserName), true, parseInt(event.timestamp, 10), event.text));
759
+ this.emit(ZelloEvent.INCOMING_ALERT_MESSAGE_RECEIVED, new ZelloAlertMessage(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), true, parseInt(event.timestamp, 10), event.text));
674
760
  break;
675
761
  }
676
762
  case 'onOutgoingAlertMessageSent':
@@ -697,7 +783,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
697
783
  if (!contact) {
698
784
  break;
699
785
  }
700
- this.emit(ZelloEvent.INCOMING_TEXT_MESSAGE_RECEIVED, new ZelloTextMessage(contact, new ZelloChannelUser(event.channelUserName), true, parseInt(event.timestamp, 10), event.text));
786
+ this.emit(ZelloEvent.INCOMING_TEXT_MESSAGE_RECEIVED, new ZelloTextMessage(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), true, parseInt(event.timestamp, 10), event.text));
701
787
  break;
702
788
  }
703
789
  case 'onOutgoingTextMessageSent':
@@ -724,7 +810,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
724
810
  if (!contact) {
725
811
  break;
726
812
  }
727
- this.emit(ZelloEvent.INCOMING_LOCATION_MESSAGE_RECEIVED, new ZelloLocationMessage(contact, new ZelloChannelUser(event.channelUserName), true, parseInt(event.timestamp, 10), event.latitude, event.longitude, event.accuracy, event.address).contact);
813
+ this.emit(ZelloEvent.INCOMING_LOCATION_MESSAGE_RECEIVED, new ZelloLocationMessage(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), true, parseInt(event.timestamp, 10), event.latitude, event.longitude, event.accuracy, event.address).contact);
728
814
  break;
729
815
  }
730
816
  case 'onOutgoingLocationMessageSent':
@@ -797,8 +883,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
797
883
  if (!contact) {
798
884
  return undefined;
799
885
  }
800
- const channelUser = recent.channelUser ? new ZelloChannelUser(recent.channelUser) : undefined;
801
- return new ZelloRecentEntry(contact, channelUser, parseInt(recent.timestamp, 10), recent.type.toLowerCase(), recent.incoming);
886
+ return new ZelloRecentEntry(contact, bridgeChannelUserToSdkChannelUser(event.channelUser), parseInt(recent.timestamp, 10), recent.type.toLowerCase(), recent.incoming);
802
887
  }).filter(recent => recent !== undefined);
803
888
  this.emit(ZelloEvent.RECENTS_UPDATED, this.recents);
804
889
  break;
@@ -834,6 +919,68 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
834
919
  this.processDispatchCallEvent(event);
835
920
  break;
836
921
  }
922
+ case 'onGroupConversationLeft':
923
+ {
924
+ const groupConversation = bridgeContactToSdkContact(event.conversation);
925
+ if (!groupConversation) {
926
+ break;
927
+ }
928
+ this.emit(ZelloEvent.GROUP_CONVERSATION_LEFT, groupConversation);
929
+ break;
930
+ }
931
+ case 'onGroupConversationInvite':
932
+ {
933
+ const groupConversation = bridgeContactToSdkContact(event.conversation);
934
+ if (!groupConversation) {
935
+ break;
936
+ }
937
+ this.emit(ZelloEvent.GROUP_CONVERSATION_INVITE, groupConversation);
938
+ break;
939
+ }
940
+ case 'onGroupConversationCreated':
941
+ {
942
+ const groupConversation = bridgeContactToSdkContact(event.conversation);
943
+ if (!groupConversation) {
944
+ break;
945
+ }
946
+ this.emit(ZelloEvent.GROUP_CONVERSATION_CREATED, groupConversation);
947
+ break;
948
+ }
949
+ case 'onGroupConversationRenamed':
950
+ {
951
+ const groupConversation = bridgeContactToSdkContact(event.conversation);
952
+ if (!groupConversation) {
953
+ break;
954
+ }
955
+ this.emit(ZelloEvent.GROUP_CONVERSATION_RENAMED, groupConversation);
956
+ break;
957
+ }
958
+ case 'onGroupConversationUsersAdded':
959
+ {
960
+ const groupConversation = bridgeContactToSdkContact(event.conversation);
961
+ if (!groupConversation) {
962
+ break;
963
+ }
964
+ const users = event.users.map(user => bridgeChannelUserToSdkChannelUser(user));
965
+ if (!users || users.length === 0) {
966
+ return;
967
+ }
968
+ this.emit(ZelloEvent.GROUP_CONVERSATION_USERS_ADDED, groupConversation, users);
969
+ break;
970
+ }
971
+ case 'onGroupConversationUsersLeft':
972
+ {
973
+ const groupConversation = bridgeContactToSdkContact(event.conversation);
974
+ if (!groupConversation) {
975
+ break;
976
+ }
977
+ const users = event.users.map(user => bridgeChannelUserToSdkChannelUser(user));
978
+ if (!users || users.length === 0) {
979
+ return;
980
+ }
981
+ this.emit(ZelloEvent.GROUP_CONVERSATION_USERS_LEFT, groupConversation, users);
982
+ break;
983
+ }
837
984
  default:
838
985
  break;
839
986
  }
@@ -869,6 +1016,7 @@ export let Zello = /*#__PURE__*/function (_EventEmitter) {
869
1016
  value: function clearContactList() {
870
1017
  this.users = [];
871
1018
  this.channels = [];
1019
+ this.groupConversations = [];
872
1020
  }
873
1021
  }], [{
874
1022
  key: "getInstance",