@inboxsdk/core 0.2.28-alpha.4 → 0.2.28-alpha.6

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 (264) hide show
  1. package/inboxsdk.js +1 -1
  2. package/package.json +5 -1
  3. package/src/inboxsdk-js/check-requirements.js +7 -3
  4. package/src/inboxsdk-js/header.js +1 -0
  5. package/src/inboxsdk-js/inboxsdk-NONREMOTE-INTEGRATED-PAGEWORLD.js +5 -6
  6. package/src/inboxsdk-js/inboxsdk-NONREMOTE.js +4 -3
  7. package/src/inboxsdk-js/inboxsdk-REMOTE.js +3 -1
  8. package/src/inboxsdk-js/inboxsdk-TEST.js +4 -3
  9. package/src/inboxsdk-js/inboxsdk.js +33 -39
  10. package/src/inboxsdk-js/loading/load-platform-implementation-DEV.js +15 -18
  11. package/src/inboxsdk.d.ts +2 -0
  12. package/src/injected-js/gmail/modify-suggestions.test.js +8 -9
  13. package/src/injected-js/gmail/setup-gmail-interceptor.js +340 -579
  14. package/src/injected-js/gmail/sync-compose-request-processor.test.js +39 -49
  15. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +20 -33
  16. package/src/injected-js/gmail/thread-identifier/index.js +57 -93
  17. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +22 -31
  18. package/src/injected-js/gmail/thread-identifier/thread-row-parser.test.js +12 -28
  19. package/src/injected-js/inbox/setupAjaxInterceptor.js +64 -121
  20. package/src/injected-js/inbox/setupClickAndGetNewIframeSrc.js +53 -66
  21. package/src/injected-js/inbox/setupComposeViewDraftIDFinder.js +20 -36
  22. package/src/injected-js/inbox/setupInboxFakeWindowResizeListener.js +13 -13
  23. package/src/injected-js/main.js +11 -24
  24. package/src/injected-js/message-metadata-holder.js +52 -82
  25. package/src/injected-js/setup-data-exposer.js +89 -148
  26. package/src/injected-js/setup-error-silencer.js +21 -21
  27. package/src/injected-js/setup-event-reemitter.js +30 -22
  28. package/src/injected-js/setupInboxCustomViewLinkFixer.js +24 -29
  29. package/src/injected-js/setupPushStateListener.js +18 -11
  30. package/src/injected-js/xhr-helper.js +62 -65
  31. package/src/injected-js/xhr-proxy-factory.js +195 -445
  32. package/src/injected-js/xhr-proxy-factory.test.js +824 -991
  33. package/src/platform-implementation-js/constants/router.js +14 -9
  34. package/src/platform-implementation-js/constants/toolbars.js +8 -3
  35. package/src/platform-implementation-js/dom-driver/gmail/custom-style.js +13 -13
  36. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +115 -136
  37. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +13 -14
  38. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +27 -48
  39. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +31 -42
  40. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +30 -40
  41. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +10 -18
  42. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +21 -28
  43. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +33 -45
  44. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +31 -49
  45. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +58 -65
  46. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +40 -124
  47. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +17 -22
  48. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.test.js +10 -11
  49. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +44 -80
  50. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +19 -26
  51. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +71 -147
  52. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +91 -148
  53. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +150 -166
  54. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.test.js +70 -120
  55. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +15 -15
  56. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +44 -67
  57. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +230 -379
  58. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.test.js +121 -307
  59. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +17 -24
  60. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +41 -49
  61. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +30 -40
  62. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +28 -60
  63. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +61 -133
  64. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +30 -42
  65. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.test.js +52 -46
  66. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +354 -694
  67. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +77 -93
  68. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +35 -82
  69. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.test.js +44 -94
  70. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +12 -19
  71. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +17 -29
  72. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +26 -26
  73. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +391 -797
  74. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +7 -9
  75. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +60 -109
  76. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +95 -135
  77. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +103 -211
  78. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.test.js +61 -61
  79. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +17 -17
  80. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +188 -541
  81. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +67 -135
  82. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +27 -49
  83. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.js +7 -13
  84. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.js +9 -22
  85. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +36 -63
  86. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +38 -113
  87. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +11 -16
  88. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +11 -17
  89. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +8 -11
  90. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +27 -47
  91. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +11 -24
  92. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +59 -111
  93. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +15 -14
  94. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +11 -17
  95. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +18 -24
  96. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +19 -23
  97. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +11 -19
  98. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +141 -376
  99. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +17 -28
  100. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +34 -70
  101. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +10 -17
  102. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +83 -137
  103. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +10 -19
  104. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +632 -1190
  105. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +29 -38
  106. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +327 -617
  107. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +26 -49
  108. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +188 -380
  109. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +104 -194
  110. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +382 -811
  111. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.js +34 -58
  112. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.js +330 -581
  113. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.test.js +123 -277
  114. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +15 -35
  115. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +216 -571
  116. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +152 -336
  117. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +87 -211
  118. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +10 -11
  119. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +20 -29
  120. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +41 -76
  121. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +45 -99
  122. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +76 -128
  123. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +128 -319
  124. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +45 -78
  125. package/src/platform-implementation-js/dom-driver/inbox/__mocks__/getSidebarClassnames.js +8 -4
  126. package/src/platform-implementation-js/dom-driver/inbox/addNavItem.js +36 -54
  127. package/src/platform-implementation-js/dom-driver/inbox/addRecipientRow.js +35 -53
  128. package/src/platform-implementation-js/dom-driver/inbox/createLink.js +13 -15
  129. package/src/platform-implementation-js/dom-driver/inbox/createLink.test.js +15 -18
  130. package/src/platform-implementation-js/dom-driver/inbox/custom-style.js +14 -13
  131. package/src/platform-implementation-js/dom-driver/inbox/detection/appToolbarLocation/parser.js +14 -20
  132. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentCard/parser.js +14 -13
  133. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentOverlay/parser.js +35 -67
  134. package/src/platform-implementation-js/dom-driver/inbox/detection/chatSidebar/parser.js +16 -18
  135. package/src/platform-implementation-js/dom-driver/inbox/detection/compose/parser.js +68 -185
  136. package/src/platform-implementation-js/dom-driver/inbox/detection/message/parser.js +28 -56
  137. package/src/platform-implementation-js/dom-driver/inbox/detection/nativeDrawer/parser.js +12 -10
  138. package/src/platform-implementation-js/dom-driver/inbox/detection/searchBar/parser.js +16 -16
  139. package/src/platform-implementation-js/dom-driver/inbox/detection/thread/parser.js +24 -35
  140. package/src/platform-implementation-js/dom-driver/inbox/detection/thread-row/parser.js +37 -89
  141. package/src/platform-implementation-js/dom-driver/inbox/getComposeViewDriverLiveSet.js +56 -78
  142. package/src/platform-implementation-js/dom-driver/inbox/getInboxMessageIdForInboxThreadId.js +26 -32
  143. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.js +52 -109
  144. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.test.js +7 -8
  145. package/src/platform-implementation-js/dom-driver/inbox/gotoView.js +16 -20
  146. package/src/platform-implementation-js/dom-driver/inbox/gotoView.test.js +15 -16
  147. package/src/platform-implementation-js/dom-driver/inbox/inbox-butter-bar-driver.js +75 -83
  148. package/src/platform-implementation-js/dom-driver/inbox/inbox-driver.js +530 -822
  149. package/src/platform-implementation-js/dom-driver/inbox/inbox-page-communicator.js +48 -61
  150. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.js +9 -12
  151. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.test.js +12 -19
  152. package/src/platform-implementation-js/dom-driver/inbox/makePageParserTree.js +24 -33
  153. package/src/platform-implementation-js/dom-driver/inbox/pageParserOptions.js +201 -388
  154. package/src/platform-implementation-js/dom-driver/inbox/registerSearchSuggestionsProvider.js +249 -265
  155. package/src/platform-implementation-js/dom-driver/inbox/setupCustomAutocompleteSelectionHandling.js +84 -152
  156. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.js +55 -67
  157. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.test.js +43 -65
  158. package/src/platform-implementation-js/dom-driver/inbox/views/InboxLabelView.js +31 -56
  159. package/src/platform-implementation-js/dom-driver/inbox/views/InboxMoleViewDriver.js +191 -294
  160. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarButtonView.js +32 -45
  161. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarView.js +21 -39
  162. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-sidebar-view.js +153 -240
  163. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-button-view.js +75 -150
  164. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-tooltip-view.js +20 -37
  165. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-card-view.js +60 -114
  166. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-overlay-view.js +47 -65
  167. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +41 -52
  168. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-chat-sidebar-view.js +27 -36
  169. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-button-view.js +52 -80
  170. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-view.js +465 -649
  171. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.js +37 -58
  172. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.test.js +14 -26
  173. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +118 -235
  174. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dropdown-view.js +10 -11
  175. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dummy-route-view.js +28 -46
  176. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-message-view.js +131 -202
  177. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-modal-view.js +40 -80
  178. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-route-view.js +35 -61
  179. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-row-view.js +124 -221
  180. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.js +125 -213
  181. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.test.js +104 -126
  182. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-tooltip-view.js +36 -51
  183. package/src/platform-implementation-js/dom-driver/inbox/views/inboxNavItemView.js +158 -297
  184. package/src/platform-implementation-js/dom-driver/inbox/waitForAnimationClickBlockerGone.js +21 -35
  185. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +24 -43
  186. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +39 -68
  187. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +14 -19
  188. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +27 -35
  189. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +16 -22
  190. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +14 -14
  191. package/src/platform-implementation-js/driver-common/inboxAjax.js +12 -7
  192. package/src/platform-implementation-js/driver-common/requestGmailThread.js +19 -20
  193. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +197 -306
  194. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +113 -161
  195. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +1 -114
  196. package/src/platform-implementation-js/driver-interfaces/driver.js +1 -131
  197. package/src/platform-implementation-js/driver-interfaces/message-view-driver.js +4 -48
  198. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +1 -29
  199. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +1 -32
  200. package/src/platform-implementation-js/driver-interfaces/thread-row-view-driver.js +1 -11
  201. package/src/platform-implementation-js/lib/array-to-lifetimes.js +43 -41
  202. package/src/platform-implementation-js/lib/array-to-lifetimes.test.js +139 -155
  203. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +19 -38
  204. package/src/platform-implementation-js/lib/css-selector-escape.js +7 -3
  205. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +8 -11
  206. package/src/platform-implementation-js/lib/dom/get-selection.js +23 -52
  207. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +69 -101
  208. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +8 -10
  209. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +15 -17
  210. package/src/platform-implementation-js/lib/dom/querySelectorOne.js +8 -11
  211. package/src/platform-implementation-js/lib/dom/set-css.js +7 -3
  212. package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.js +9 -11
  213. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +32 -33
  214. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.test.js +23 -26
  215. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +86 -149
  216. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +42 -57
  217. package/src/platform-implementation-js/lib/make-revocable-function.js +19 -21
  218. package/src/platform-implementation-js/lib/make-revocable-function.test.js +20 -22
  219. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +15 -17
  220. package/src/platform-implementation-js/lib/parseParamsFromRouteID.test.js +9 -18
  221. package/src/platform-implementation-js/lib/populateRouteID.js +8 -9
  222. package/src/platform-implementation-js/lib/populateRouteID.test.js +20 -19
  223. package/src/platform-implementation-js/lib/react/ElementContainer.js +23 -20
  224. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.js +10 -9
  225. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.test.js +13 -20
  226. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +13 -18
  227. package/src/platform-implementation-js/lib/routeIDmatchesHash.test.js +11 -17
  228. package/src/platform-implementation-js/lib/shared-style.js +14 -13
  229. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +18 -17
  230. package/src/platform-implementation-js/lib/toLiveSet.js +17 -15
  231. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +6 -5
  232. package/src/platform-implementation-js/main.js +9 -24
  233. package/src/platform-implementation-js/namespaces/compose.js +37 -60
  234. package/src/platform-implementation-js/namespaces/conversations.js +52 -124
  235. package/src/platform-implementation-js/namespaces/global.js +27 -39
  236. package/src/platform-implementation-js/namespaces/keyboard.js +29 -33
  237. package/src/platform-implementation-js/namespaces/lists.js +25 -31
  238. package/src/platform-implementation-js/namespaces/modal.js +34 -28
  239. package/src/platform-implementation-js/namespaces/nav-menu.js +30 -45
  240. package/src/platform-implementation-js/namespaces/router.js +70 -137
  241. package/src/platform-implementation-js/namespaces/search.js +19 -17
  242. package/src/platform-implementation-js/namespaces/toolbars.js +71 -117
  243. package/src/platform-implementation-js/namespaces/user.js +36 -37
  244. package/src/platform-implementation-js/namespaces/widgets.js +54 -61
  245. package/src/platform-implementation-js/platform-implementation.js +98 -229
  246. package/src/platform-implementation-js/views/app-toolbar-button-view.js +26 -47
  247. package/src/platform-implementation-js/views/collapsible-section-view.js +66 -63
  248. package/src/platform-implementation-js/views/content-panel-view.js +28 -30
  249. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +21 -44
  250. package/src/platform-implementation-js/views/conversations/custom-message-view.js +44 -104
  251. package/src/platform-implementation-js/views/conversations/message-view.js +131 -202
  252. package/src/platform-implementation-js/views/conversations/thread-view.js +75 -127
  253. package/src/platform-implementation-js/views/native-nav-item-view.js +32 -65
  254. package/src/platform-implementation-js/views/nav-item-view.js +51 -115
  255. package/src/platform-implementation-js/views/route-view/custom-route-view.js +25 -20
  256. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +18 -18
  257. package/src/platform-implementation-js/views/route-view/list-route-view.js +30 -52
  258. package/src/platform-implementation-js/views/route-view/route-view.js +24 -35
  259. package/src/platform-implementation-js/views/section-view.js +60 -52
  260. package/src/platform-implementation-js/views/thread-row-view.js +49 -74
  261. package/src/platform-implementation-js/widgets/drawer-view.js +29 -36
  262. package/src/platform-implementation-js/widgets/modal-view.js +39 -68
  263. package/src/platform-implementation-js/widgets/mole-view.js +22 -22
  264. package/src/platform-implementation-js/widgets/top-message-bar-view.js +13 -10
@@ -1,288 +1,217 @@
1
- /* @flow */
2
-
3
- import { defn, defonce } from 'ud';
4
- import asap from 'asap';
5
- import EventEmitter from '../../lib/safe-event-emitter';
6
- import type Membrane from '../../lib/Membrane';
7
- import get from '../../../common/get-or-fail';
8
- import AttachmentCardView from './attachment-card-view';
9
- import { MessageViewToolbarSectionNames } from '../../namespaces/conversations';
10
- import type ThreadView from './thread-view';
11
- import type {
12
- MessageViewDriver,
13
- VIEW_STATE,
14
- MessageViewLinkDescriptor,
15
- MessageViewToolbarButtonDescriptor,
16
- } from '../../driver-interfaces/message-view-driver';
17
- import type { Driver } from '../../driver-interfaces/driver';
18
-
19
- const memberMap = defonce(module, () => new WeakMap());
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _ud = require("ud");
10
+ var _asap = _interopRequireDefault(require("asap"));
11
+ var _safeEventEmitter = _interopRequireDefault(require("../../lib/safe-event-emitter"));
12
+ var _getOrFail = _interopRequireDefault(require("../../../common/get-or-fail"));
13
+ var _attachmentCardView = _interopRequireDefault(require("./attachment-card-view"));
14
+ var _conversations = require("../../namespaces/conversations");
15
+ const memberMap = (0, _ud.defonce)(module, () => new WeakMap());
20
16
 
21
17
  // documented in src/docs/
22
- class MessageView extends EventEmitter {
23
- destroyed: boolean = false;
24
-
25
- constructor(
26
- messageViewImplementation: MessageViewDriver,
27
- appId: string,
28
- membrane: Membrane,
29
- Conversations: Object,
30
- driver: Driver
31
- ) {
18
+ class MessageView extends _safeEventEmitter.default {
19
+ constructor(messageViewImplementation, appId, membrane, Conversations, driver) {
32
20
  super();
33
-
21
+ (0, _defineProperty2.default)(this, "destroyed", false);
34
22
  const members = {
35
23
  messageViewImplementation,
36
24
  membrane,
37
25
  Conversations,
38
26
  driver,
39
- linksInBody: (null: ?Array<MessageViewLinkDescriptor>),
27
+ linksInBody: null
40
28
  };
41
29
  memberMap.set(this, members);
42
-
43
- _bindToEventStream(
44
- this,
45
- members,
46
- messageViewImplementation.getEventStream()
47
- );
30
+ _bindToEventStream(this, members, messageViewImplementation.getEventStream());
48
31
  }
49
-
50
- addAttachmentCardView(cardOptions: Object): AttachmentCardView {
51
- const { messageViewImplementation, membrane } = get(memberMap, this);
52
- const attachmentCardViewDriver =
53
- messageViewImplementation.addAttachmentCard(cardOptions);
32
+ addAttachmentCardView(cardOptions) {
33
+ const {
34
+ messageViewImplementation,
35
+ membrane
36
+ } = (0, _getOrFail.default)(memberMap, this);
37
+ const attachmentCardViewDriver = messageViewImplementation.addAttachmentCard(cardOptions);
54
38
  const attachmentCardView = membrane.get(attachmentCardViewDriver);
55
-
56
- attachmentCardViewDriver.getPreviewClicks().onValue((e) => {
39
+ attachmentCardViewDriver.getPreviewClicks().onValue(e => {
57
40
  if (cardOptions.previewOnClick) {
58
41
  cardOptions.previewOnClick({
59
42
  attachmentCardView,
60
- preventDefault: () => e.preventDefault(),
43
+ preventDefault: () => e.preventDefault()
61
44
  });
62
45
  }
63
46
  });
64
-
65
47
  return attachmentCardView;
66
48
  }
67
49
 
68
50
  // TODO why is this a separate method?
69
- addAttachmentCardViewNoPreview(cardOptions: Object): AttachmentCardView {
51
+ addAttachmentCardViewNoPreview(cardOptions) {
70
52
  return this.addAttachmentCardView(cardOptions);
71
53
  }
72
-
73
- addAttachmentsToolbarButton(buttonOptions: Object) {
74
- const { messageViewImplementation, membrane } = get(memberMap, this);
54
+ addAttachmentsToolbarButton(buttonOptions) {
55
+ const {
56
+ messageViewImplementation,
57
+ membrane
58
+ } = (0, _getOrFail.default)(memberMap, this);
75
59
  messageViewImplementation.addButtonToDownloadAllArea({
76
60
  tooltip: buttonOptions.tooltip,
77
61
  iconUrl: buttonOptions.iconUrl,
78
62
  onClick: () => {
79
- const attachmentCardViews = messageViewImplementation
80
- .getAttachmentCardViewDrivers()
81
- .map((cardDriver) => membrane.get(cardDriver));
82
- buttonOptions.onClick({ attachmentCardViews });
83
- },
63
+ const attachmentCardViews = messageViewImplementation.getAttachmentCardViewDrivers().map(cardDriver => membrane.get(cardDriver));
64
+ buttonOptions.onClick({
65
+ attachmentCardViews
66
+ });
67
+ }
84
68
  });
85
69
  }
86
-
87
- addToolbarButton(buttonOptions: MessageViewToolbarButtonDescriptor) {
88
- if (
89
- typeof buttonOptions.onClick !== 'function' ||
90
- typeof buttonOptions.title !== 'string' ||
91
- !Object.prototype.hasOwnProperty.call(
92
- MessageViewToolbarSectionNames,
93
- buttonOptions.section
94
- )
95
- ) {
96
- throw new Error(
97
- 'Missing required properties on MessageViewToolbarButtonDescriptor object'
98
- );
70
+ addToolbarButton(buttonOptions) {
71
+ if (typeof buttonOptions.onClick !== 'function' || typeof buttonOptions.title !== 'string' || !Object.prototype.hasOwnProperty.call(_conversations.MessageViewToolbarSectionNames, buttonOptions.section)) {
72
+ throw new Error('Missing required properties on MessageViewToolbarButtonDescriptor object');
99
73
  }
100
- const { messageViewImplementation } = get(memberMap, this);
74
+ const {
75
+ messageViewImplementation
76
+ } = (0, _getOrFail.default)(memberMap, this);
101
77
  messageViewImplementation.addMoreMenuItem(buttonOptions);
102
78
  }
103
-
104
- getBodyElement(): HTMLElement {
105
- return get(memberMap, this).messageViewImplementation.getContentsElement();
79
+ getBodyElement() {
80
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getContentsElement();
106
81
  }
107
-
108
- getMessageID(): string {
109
- get(memberMap, this)
110
- .driver.getLogger()
111
- .deprecationWarning(
112
- 'messageView.getMessageID',
113
- 'messageView.getMessageIDAsync'
114
- );
115
- return get(memberMap, this).messageViewImplementation.getMessageID();
82
+ getMessageID() {
83
+ (0, _getOrFail.default)(memberMap, this).driver.getLogger().deprecationWarning('messageView.getMessageID', 'messageView.getMessageIDAsync');
84
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getMessageID();
116
85
  }
117
-
118
- getMessageIDAsync(): Promise<string> {
119
- return get(memberMap, this).messageViewImplementation.getMessageIDAsync();
86
+ getMessageIDAsync() {
87
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getMessageIDAsync();
120
88
  }
121
89
 
122
90
  // TODO non-file-attachment card views are asynchronously loaded. Add some sort of
123
91
  // registerAttachmentCardViewHandler function to listen for other types of
124
92
  // attachment cards if we want to continue support for them.
125
- getFileAttachmentCardViews(): Array<AttachmentCardView> {
126
- const { messageViewImplementation, membrane } = get(memberMap, this);
127
- return messageViewImplementation
128
- .getAttachmentCardViewDrivers()
129
- .filter((cardDriver) => cardDriver.getAttachmentType() === 'FILE')
130
- .map((attachmentCardViewDriver) =>
131
- membrane.get(attachmentCardViewDriver)
132
- );
93
+ getFileAttachmentCardViews() {
94
+ const {
95
+ messageViewImplementation,
96
+ membrane
97
+ } = (0, _getOrFail.default)(memberMap, this);
98
+ return messageViewImplementation.getAttachmentCardViewDrivers().filter(cardDriver => cardDriver.getAttachmentType() === 'FILE').map(attachmentCardViewDriver => membrane.get(attachmentCardViewDriver));
133
99
  }
134
100
 
135
101
  // Deprecated name
136
- getAttachmentCardViews(): Array<AttachmentCardView> {
137
- const { driver } = get(memberMap, this);
138
- driver
139
- .getLogger()
140
- .deprecationWarning(
141
- 'MessageView.getAttachmentCardViews',
142
- 'MessageView.getFileAttachmentCardViews'
143
- );
102
+ getAttachmentCardViews() {
103
+ const {
104
+ driver
105
+ } = (0, _getOrFail.default)(memberMap, this);
106
+ driver.getLogger().deprecationWarning('MessageView.getAttachmentCardViews', 'MessageView.getFileAttachmentCardViews');
144
107
  if (driver.getOpts().REQUESTED_API_VERSION !== 1) {
145
108
  throw new Error('This method was discontinued after API version 1');
146
109
  }
147
110
  return this.getFileAttachmentCardViews();
148
111
  }
149
-
150
- isElementInQuotedArea(element: HTMLElement): boolean {
151
- return get(memberMap, this).messageViewImplementation.isElementInQuotedArea(
152
- element
153
- );
112
+ isElementInQuotedArea(element) {
113
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.isElementInQuotedArea(element);
154
114
  }
155
-
156
- isLoaded(): boolean {
157
- return get(memberMap, this).messageViewImplementation.isLoaded();
115
+ isLoaded() {
116
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.isLoaded();
158
117
  }
159
-
160
- getLinksInBody(): Array<MessageViewLinkDescriptor> {
161
- const members = get(memberMap, this);
118
+ getLinksInBody() {
119
+ const members = (0, _getOrFail.default)(memberMap, this);
162
120
  if (!members.linksInBody) {
163
121
  const anchors = this.getBodyElement().querySelectorAll('a');
164
- members.linksInBody = Array.from((anchors: any)).map(
165
- (anchor: HTMLAnchorElement) => ({
166
- text: anchor.textContent,
167
- html: anchor.innerHTML,
168
- href: anchor.href,
169
- element: anchor,
170
- isInQuotedArea: this.isElementInQuotedArea(anchor),
171
- })
172
- );
122
+ members.linksInBody = Array.from(anchors).map(anchor => ({
123
+ text: anchor.textContent,
124
+ html: anchor.innerHTML,
125
+ href: anchor.href,
126
+ element: anchor,
127
+ isInQuotedArea: this.isElementInQuotedArea(anchor)
128
+ }));
173
129
  }
174
-
175
130
  return members.linksInBody;
176
131
  }
177
-
178
- getSender(): Contact {
179
- return get(memberMap, this).messageViewImplementation.getSender();
132
+ getSender() {
133
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getSender();
180
134
  }
181
-
182
- getRecipients(): Array<Contact> {
183
- get(memberMap, this)
184
- .driver.getLogger()
185
- .deprecationWarning(
186
- 'MessageView.getRecipients',
187
- 'MessageView.getRecipientEmailAddresses() or MessageView.getRecipientsFull()'
188
- );
189
- return this.getRecipientEmailAddresses().map((emailAddress) => ({
135
+ getRecipients() {
136
+ (0, _getOrFail.default)(memberMap, this).driver.getLogger().deprecationWarning('MessageView.getRecipients', 'MessageView.getRecipientEmailAddresses() or MessageView.getRecipientsFull()');
137
+ return this.getRecipientEmailAddresses().map(emailAddress => ({
190
138
  emailAddress,
191
- name: null,
139
+ name: null
192
140
  }));
193
141
  }
194
-
195
- getRecipientEmailAddresses(): Array<string> {
196
- return get(
197
- memberMap,
198
- this
199
- ).messageViewImplementation.getRecipientEmailAddresses();
142
+ getRecipientEmailAddresses() {
143
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getRecipientEmailAddresses();
200
144
  }
201
-
202
- getRecipientsFull(): Promise<Array<Contact>> {
203
- return get(memberMap, this).messageViewImplementation.getRecipientsFull();
145
+ getRecipientsFull() {
146
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getRecipientsFull();
204
147
  }
205
-
206
- getThreadView(): ThreadView {
207
- const { messageViewImplementation, membrane } = get(memberMap, this);
148
+ getThreadView() {
149
+ const {
150
+ messageViewImplementation,
151
+ membrane
152
+ } = (0, _getOrFail.default)(memberMap, this);
208
153
  return membrane.get(messageViewImplementation.getThreadViewDriver());
209
154
  }
210
-
211
- getDateString(): string {
212
- return get(memberMap, this).messageViewImplementation.getDateString();
155
+ getDateString() {
156
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.getDateString();
213
157
  }
214
-
215
- addAttachmentIcon(iconDescriptor: Object) {
216
- return get(memberMap, this).messageViewImplementation.addAttachmentIcon(
217
- iconDescriptor
218
- );
158
+ addAttachmentIcon(iconDescriptor) {
159
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.addAttachmentIcon(iconDescriptor);
219
160
  }
220
-
221
- getViewState(): VIEW_STATE {
222
- const members = get(memberMap, this);
223
- return members.Conversations.MessageViewViewStates[
224
- members.messageViewImplementation.getViewState()
225
- ];
161
+ getViewState() {
162
+ const members = (0, _getOrFail.default)(memberMap, this);
163
+ return members.Conversations.MessageViewViewStates[members.messageViewImplementation.getViewState()];
226
164
  }
227
-
228
- hasOpenReply(): boolean {
229
- const { driver, messageViewImplementation } = get(memberMap, this);
165
+ hasOpenReply() {
166
+ const {
167
+ driver,
168
+ messageViewImplementation
169
+ } = (0, _getOrFail.default)(memberMap, this);
230
170
  driver.getLogger().deprecationWarning('MessageView.hasOpenReply');
231
171
  if (driver.getOpts().REQUESTED_API_VERSION !== 1) {
232
172
  throw new Error('This method was discontinued after API version 1');
233
173
  }
234
- return get(memberMap, this).messageViewImplementation.hasOpenReply();
174
+ return (0, _getOrFail.default)(memberMap, this).messageViewImplementation.hasOpenReply();
235
175
  }
236
176
  }
237
-
238
177
  function _bindToEventStream(messageView, members, stream) {
239
178
  stream.onEnd(function () {
240
179
  messageView.destroyed = true;
241
180
  messageView.emit('destroy');
242
-
243
181
  messageView.removeAllListeners();
244
182
  });
245
-
246
- stream
247
- .filter(function (event) {
248
- return event.type !== 'internal' && event.eventName === 'contactHover';
249
- })
250
- .onValue(function (event) {
251
- messageView.emit(event.eventName, {
252
- contactType: event.contactType,
253
- contact: event.contact,
254
- messageView: messageView,
255
- threadView: messageView.getThreadView(),
256
- });
183
+ stream.filter(function (event) {
184
+ return event.type !== 'internal' && event.eventName === 'contactHover';
185
+ }).onValue(function (event) {
186
+ messageView.emit(event.eventName, {
187
+ contactType: event.contactType,
188
+ contact: event.contact,
189
+ messageView: messageView,
190
+ threadView: messageView.getThreadView()
257
191
  });
258
-
192
+ });
259
193
  if (messageView.isLoaded()) {
260
- asap(() => {
261
- messageView.emit('load', { messageView });
194
+ (0, _asap.default)(() => {
195
+ messageView.emit('load', {
196
+ messageView
197
+ });
262
198
  });
263
199
  } else {
264
- stream
265
- .filter((event) => event.eventName === 'messageLoad')
266
- .onValue((event) => {
267
- messageView.emit('load', {
268
- messageView: messageView,
269
- });
200
+ stream.filter(event => event.eventName === 'messageLoad').onValue(event => {
201
+ messageView.emit('load', {
202
+ messageView: messageView
270
203
  });
204
+ });
271
205
  }
272
-
273
- stream
274
- .filter(function (event) {
275
- return event.eventName === 'viewStateChange';
276
- })
277
- .onValue(function (event) {
278
- messageView.emit('viewStateChange', {
279
- oldViewState:
280
- members.Conversations.MessageViewViewStates[event.oldValue],
281
- newViewState:
282
- members.Conversations.MessageViewViewStates[event.newValue],
283
- messageView: messageView,
284
- });
206
+ stream.filter(function (event) {
207
+ return event.eventName === 'viewStateChange';
208
+ }).onValue(function (event) {
209
+ messageView.emit('viewStateChange', {
210
+ oldViewState: members.Conversations.MessageViewViewStates[event.oldValue],
211
+ newViewState: members.Conversations.MessageViewViewStates[event.newValue],
212
+ messageView: messageView
285
213
  });
214
+ });
286
215
  }
287
-
288
- export default defn(module, MessageView);
216
+ var _default = (0, _ud.defn)(module, MessageView);
217
+ exports.default = _default;
@@ -1,156 +1,104 @@
1
- /* @flow */
2
-
3
- import { defn, defonce } from 'ud';
4
- import EventEmitter from '../../lib/safe-event-emitter';
5
- import type Membrane from '../../lib/Membrane';
6
- import type SimpleElementView from '../../views/SimpleElementView';
7
- import kefirCast from 'kefir-cast';
8
- import Kefir from 'kefir';
9
- import ContentPanelView from '../content-panel-view';
10
- import get from '../../../common/get-or-fail';
11
- import type MessageView from './message-view';
12
- import type { Driver, ThreadViewDriver } from '../../driver-interfaces/driver';
13
-
14
- import type CustomMessageView, {
15
- CustomMessageDescriptor,
16
- } from '../../views/conversations/custom-message-view';
17
-
18
- const memberMap = defonce(module, () => new WeakMap());
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _ud = require("ud");
10
+ var _safeEventEmitter = _interopRequireDefault(require("../../lib/safe-event-emitter"));
11
+ var _kefirCast = _interopRequireDefault(require("kefir-cast"));
12
+ var _kefir = _interopRequireDefault(require("kefir"));
13
+ var _contentPanelView = _interopRequireDefault(require("../content-panel-view"));
14
+ var _getOrFail = _interopRequireDefault(require("../../../common/get-or-fail"));
15
+ const memberMap = (0, _ud.defonce)(module, () => new WeakMap());
19
16
 
20
17
  // documented in src/docs/
21
- class ThreadView extends EventEmitter {
22
- destroyed: boolean = false;
23
-
24
- constructor(
25
- threadViewImplementation: ThreadViewDriver,
26
- appId: string,
27
- driver: Driver,
28
- membrane: Membrane
29
- ) {
18
+ class ThreadView extends _safeEventEmitter.default {
19
+ constructor(threadViewImplementation, appId, driver, membrane) {
30
20
  super();
31
-
32
- const members = { threadViewImplementation, appId, driver, membrane };
21
+ (0, _defineProperty2.default)(this, "destroyed", false);
22
+ const members = {
23
+ threadViewImplementation,
24
+ appId,
25
+ driver,
26
+ membrane
27
+ };
33
28
  memberMap.set(this, members);
34
-
35
29
  _bindToStreamEvents(this, threadViewImplementation);
36
30
  }
37
-
38
- addSidebarContentPanel(descriptor: Object): ?ContentPanelView {
39
- const descriptorPropertyStream = kefirCast(
40
- (Kefir: any),
41
- descriptor
42
- ).toProperty();
43
- const members = get(memberMap, this);
44
-
45
- members.driver
46
- .getLogger()
47
- .eventSdkPassive('threadView.addSidebarContentPanel');
48
-
49
- const contentPanelImplementation =
50
- members.threadViewImplementation.addSidebarContentPanel(
51
- descriptorPropertyStream
52
- );
31
+ addSidebarContentPanel(descriptor) {
32
+ const descriptorPropertyStream = (0, _kefirCast.default)(_kefir.default, descriptor).toProperty();
33
+ const members = (0, _getOrFail.default)(memberMap, this);
34
+ members.driver.getLogger().eventSdkPassive('threadView.addSidebarContentPanel');
35
+ const contentPanelImplementation = members.threadViewImplementation.addSidebarContentPanel(descriptorPropertyStream);
53
36
  if (contentPanelImplementation) {
54
- return new ContentPanelView(contentPanelImplementation);
37
+ return new _contentPanelView.default(contentPanelImplementation);
55
38
  }
56
-
57
39
  return null;
58
40
  }
59
-
60
- addNoticeBar(): SimpleElementView {
61
- const members = get(memberMap, this);
41
+ addNoticeBar() {
42
+ const members = (0, _getOrFail.default)(memberMap, this);
62
43
  return members.threadViewImplementation.addNoticeBar();
63
44
  }
64
-
65
- registerHiddenCustomMessageNoticeProvider(
66
- provider: (
67
- numberCustomMessagesHidden: number,
68
- numberNativeMessagesHidden: ?number,
69
- unmountPromise: Promise<void>
70
- ) => HTMLElement
71
- ) {
72
- const members = get(memberMap, this);
73
- return members.threadViewImplementation.registerHiddenCustomMessageNoticeProvider(
74
- provider
75
- );
45
+ registerHiddenCustomMessageNoticeProvider(provider) {
46
+ const members = (0, _getOrFail.default)(memberMap, this);
47
+ return members.threadViewImplementation.registerHiddenCustomMessageNoticeProvider(provider);
76
48
  }
77
-
78
- addCustomMessage(descriptor: Object): CustomMessageView {
79
- const descriptorPropertyStream = kefirCast(
80
- (Kefir: any),
81
- descriptor
82
- ).toProperty();
83
- const members = get(memberMap, this);
84
-
49
+ addCustomMessage(descriptor) {
50
+ const descriptorPropertyStream = (0, _kefirCast.default)(_kefir.default, descriptor).toProperty();
51
+ const members = (0, _getOrFail.default)(memberMap, this);
85
52
  members.driver.getLogger().eventSdkPassive('threadView.addCustomMessage');
86
-
87
- return members.threadViewImplementation.addCustomMessage(
88
- descriptorPropertyStream
89
- );
53
+ return members.threadViewImplementation.addCustomMessage(descriptorPropertyStream);
90
54
  }
91
-
92
- getMessageViews(): Array<MessageView> {
93
- const { threadViewImplementation, membrane } = get(memberMap, this);
94
-
95
- return threadViewImplementation
96
- .getMessageViewDrivers()
97
- .filter((messageViewDriver) => messageViewDriver.isLoaded())
98
- .map((messageViewDriver) => membrane.get(messageViewDriver));
55
+ getMessageViews() {
56
+ const {
57
+ threadViewImplementation,
58
+ membrane
59
+ } = (0, _getOrFail.default)(memberMap, this);
60
+ return threadViewImplementation.getMessageViewDrivers().filter(messageViewDriver => messageViewDriver.isLoaded()).map(messageViewDriver => membrane.get(messageViewDriver));
99
61
  }
100
-
101
- getMessageViewsAll(): Array<MessageView> {
102
- const { threadViewImplementation, membrane } = get(memberMap, this);
103
-
104
- return threadViewImplementation
105
- .getMessageViewDrivers()
106
- .map((messageViewDriver) => membrane.get(messageViewDriver));
62
+ getMessageViewsAll() {
63
+ const {
64
+ threadViewImplementation,
65
+ membrane
66
+ } = (0, _getOrFail.default)(memberMap, this);
67
+ return threadViewImplementation.getMessageViewDrivers().map(messageViewDriver => membrane.get(messageViewDriver));
107
68
  }
108
-
109
- getSubject(): string {
110
- return get(memberMap, this).threadViewImplementation.getSubject();
69
+ getSubject() {
70
+ return (0, _getOrFail.default)(memberMap, this).threadViewImplementation.getSubject();
111
71
  }
112
-
113
- getThreadID(): string {
114
- get(memberMap, this)
115
- .driver.getLogger()
116
- .deprecationWarning(
117
- 'threadView.getThreadID',
118
- 'threadView.getThreadIDAsync'
119
- );
120
- return get(memberMap, this).threadViewImplementation.getThreadID();
72
+ getThreadID() {
73
+ (0, _getOrFail.default)(memberMap, this).driver.getLogger().deprecationWarning('threadView.getThreadID', 'threadView.getThreadIDAsync');
74
+ return (0, _getOrFail.default)(memberMap, this).threadViewImplementation.getThreadID();
121
75
  }
122
-
123
- getThreadIDAsync(): Promise<string> {
124
- return get(memberMap, this).threadViewImplementation.getThreadIDAsync();
76
+ getThreadIDAsync() {
77
+ return (0, _getOrFail.default)(memberMap, this).threadViewImplementation.getThreadIDAsync();
125
78
  }
126
-
127
- addLabel(): SimpleElementView {
128
- return get(memberMap, this).threadViewImplementation.addLabel();
79
+ addLabel() {
80
+ return (0, _getOrFail.default)(memberMap, this).threadViewImplementation.addLabel();
129
81
  }
130
82
  }
131
-
132
- export default defn(module, ThreadView);
133
-
83
+ var _default = (0, _ud.defn)(module, ThreadView);
84
+ exports.default = _default;
134
85
  function _bindToStreamEvents(threadView, threadViewImplementation) {
135
86
  threadViewImplementation.getEventStream().onEnd(function () {
136
87
  threadView.destroyed = true;
137
88
  threadView.emit('destroy');
138
-
139
89
  threadView.removeAllListeners();
140
90
  });
141
-
142
- threadViewImplementation
143
- .getEventStream()
144
- .filter(function (event) {
145
- return event.type !== 'internal' && event.eventName === 'contactHover';
146
- })
147
- .onValue(function (event) {
148
- const { membrane } = get(memberMap, threadView);
149
- threadView.emit(event.eventName, {
150
- contactType: event.contactType,
151
- messageView: membrane.get(event.messageViewDriver),
152
- contact: event.contact,
153
- threadView: threadView,
154
- });
91
+ threadViewImplementation.getEventStream().filter(function (event) {
92
+ return event.type !== 'internal' && event.eventName === 'contactHover';
93
+ }).onValue(function (event) {
94
+ const {
95
+ membrane
96
+ } = (0, _getOrFail.default)(memberMap, threadView);
97
+ threadView.emit(event.eventName, {
98
+ contactType: event.contactType,
99
+ messageView: membrane.get(event.messageViewDriver),
100
+ contact: event.contact,
101
+ threadView: threadView
155
102
  });
156
- }
103
+ });
104
+ }