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

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 (263) 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/injected-js/gmail/modify-suggestions.test.js +8 -9
  12. package/src/injected-js/gmail/setup-gmail-interceptor.js +340 -579
  13. package/src/injected-js/gmail/sync-compose-request-processor.test.js +39 -49
  14. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +20 -33
  15. package/src/injected-js/gmail/thread-identifier/index.js +57 -93
  16. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +22 -31
  17. package/src/injected-js/gmail/thread-identifier/thread-row-parser.test.js +12 -28
  18. package/src/injected-js/inbox/setupAjaxInterceptor.js +64 -121
  19. package/src/injected-js/inbox/setupClickAndGetNewIframeSrc.js +53 -66
  20. package/src/injected-js/inbox/setupComposeViewDraftIDFinder.js +20 -36
  21. package/src/injected-js/inbox/setupInboxFakeWindowResizeListener.js +13 -13
  22. package/src/injected-js/main.js +11 -24
  23. package/src/injected-js/message-metadata-holder.js +52 -82
  24. package/src/injected-js/setup-data-exposer.js +89 -148
  25. package/src/injected-js/setup-error-silencer.js +21 -21
  26. package/src/injected-js/setup-event-reemitter.js +30 -22
  27. package/src/injected-js/setupInboxCustomViewLinkFixer.js +24 -29
  28. package/src/injected-js/setupPushStateListener.js +18 -11
  29. package/src/injected-js/xhr-helper.js +62 -65
  30. package/src/injected-js/xhr-proxy-factory.js +195 -445
  31. package/src/injected-js/xhr-proxy-factory.test.js +824 -991
  32. package/src/platform-implementation-js/constants/router.js +14 -9
  33. package/src/platform-implementation-js/constants/toolbars.js +8 -3
  34. package/src/platform-implementation-js/dom-driver/gmail/custom-style.js +13 -13
  35. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +115 -136
  36. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +13 -14
  37. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +27 -48
  38. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +31 -42
  39. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +30 -40
  40. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +10 -18
  41. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +21 -28
  42. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +33 -45
  43. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +31 -49
  44. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +58 -65
  45. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +40 -124
  46. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +17 -22
  47. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.test.js +10 -11
  48. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +44 -80
  49. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +19 -26
  50. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +71 -147
  51. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +91 -148
  52. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +150 -166
  53. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.test.js +70 -120
  54. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +15 -15
  55. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +44 -67
  56. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +230 -379
  57. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.test.js +121 -307
  58. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +17 -24
  59. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +41 -49
  60. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +30 -40
  61. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +28 -60
  62. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +61 -133
  63. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +30 -42
  64. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.test.js +52 -46
  65. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +354 -694
  66. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +77 -93
  67. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +35 -82
  68. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.test.js +44 -94
  69. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +12 -19
  70. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +17 -29
  71. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +26 -26
  72. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +391 -797
  73. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +7 -9
  74. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +60 -109
  75. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +95 -135
  76. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +103 -211
  77. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.test.js +61 -61
  78. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +17 -17
  79. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +188 -541
  80. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +67 -135
  81. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +27 -49
  82. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.js +7 -13
  83. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.js +9 -22
  84. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +36 -63
  85. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +38 -113
  86. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +11 -16
  87. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +11 -17
  88. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +8 -11
  89. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +27 -47
  90. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +11 -24
  91. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +59 -111
  92. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +15 -14
  93. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +11 -17
  94. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +18 -24
  95. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +19 -23
  96. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +11 -19
  97. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +141 -376
  98. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +17 -28
  99. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +34 -70
  100. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +10 -17
  101. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +83 -137
  102. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +10 -19
  103. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +632 -1190
  104. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +29 -38
  105. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +327 -617
  106. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +26 -49
  107. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +188 -380
  108. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +104 -194
  109. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +382 -811
  110. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.js +34 -58
  111. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.js +330 -581
  112. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.test.js +123 -277
  113. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +15 -35
  114. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +216 -571
  115. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +152 -336
  116. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +87 -211
  117. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +10 -11
  118. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +20 -29
  119. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +41 -76
  120. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +45 -99
  121. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +76 -128
  122. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +128 -319
  123. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +45 -78
  124. package/src/platform-implementation-js/dom-driver/inbox/__mocks__/getSidebarClassnames.js +8 -4
  125. package/src/platform-implementation-js/dom-driver/inbox/addNavItem.js +36 -54
  126. package/src/platform-implementation-js/dom-driver/inbox/addRecipientRow.js +35 -53
  127. package/src/platform-implementation-js/dom-driver/inbox/createLink.js +13 -15
  128. package/src/platform-implementation-js/dom-driver/inbox/createLink.test.js +15 -18
  129. package/src/platform-implementation-js/dom-driver/inbox/custom-style.js +14 -13
  130. package/src/platform-implementation-js/dom-driver/inbox/detection/appToolbarLocation/parser.js +14 -20
  131. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentCard/parser.js +14 -13
  132. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentOverlay/parser.js +35 -67
  133. package/src/platform-implementation-js/dom-driver/inbox/detection/chatSidebar/parser.js +16 -18
  134. package/src/platform-implementation-js/dom-driver/inbox/detection/compose/parser.js +68 -185
  135. package/src/platform-implementation-js/dom-driver/inbox/detection/message/parser.js +28 -56
  136. package/src/platform-implementation-js/dom-driver/inbox/detection/nativeDrawer/parser.js +12 -10
  137. package/src/platform-implementation-js/dom-driver/inbox/detection/searchBar/parser.js +16 -16
  138. package/src/platform-implementation-js/dom-driver/inbox/detection/thread/parser.js +24 -35
  139. package/src/platform-implementation-js/dom-driver/inbox/detection/thread-row/parser.js +37 -89
  140. package/src/platform-implementation-js/dom-driver/inbox/getComposeViewDriverLiveSet.js +56 -78
  141. package/src/platform-implementation-js/dom-driver/inbox/getInboxMessageIdForInboxThreadId.js +26 -32
  142. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.js +52 -109
  143. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.test.js +7 -8
  144. package/src/platform-implementation-js/dom-driver/inbox/gotoView.js +16 -20
  145. package/src/platform-implementation-js/dom-driver/inbox/gotoView.test.js +15 -16
  146. package/src/platform-implementation-js/dom-driver/inbox/inbox-butter-bar-driver.js +75 -83
  147. package/src/platform-implementation-js/dom-driver/inbox/inbox-driver.js +530 -822
  148. package/src/platform-implementation-js/dom-driver/inbox/inbox-page-communicator.js +48 -61
  149. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.js +9 -12
  150. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.test.js +12 -19
  151. package/src/platform-implementation-js/dom-driver/inbox/makePageParserTree.js +24 -33
  152. package/src/platform-implementation-js/dom-driver/inbox/pageParserOptions.js +201 -388
  153. package/src/platform-implementation-js/dom-driver/inbox/registerSearchSuggestionsProvider.js +249 -265
  154. package/src/platform-implementation-js/dom-driver/inbox/setupCustomAutocompleteSelectionHandling.js +84 -152
  155. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.js +55 -67
  156. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.test.js +43 -65
  157. package/src/platform-implementation-js/dom-driver/inbox/views/InboxLabelView.js +31 -56
  158. package/src/platform-implementation-js/dom-driver/inbox/views/InboxMoleViewDriver.js +191 -294
  159. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarButtonView.js +32 -45
  160. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarView.js +21 -39
  161. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-sidebar-view.js +153 -240
  162. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-button-view.js +75 -150
  163. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-tooltip-view.js +20 -37
  164. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-card-view.js +60 -114
  165. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-overlay-view.js +47 -65
  166. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +41 -52
  167. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-chat-sidebar-view.js +27 -36
  168. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-button-view.js +52 -80
  169. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-view.js +465 -649
  170. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.js +37 -58
  171. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.test.js +14 -26
  172. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +118 -235
  173. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dropdown-view.js +10 -11
  174. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dummy-route-view.js +28 -46
  175. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-message-view.js +131 -202
  176. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-modal-view.js +40 -80
  177. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-route-view.js +35 -61
  178. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-row-view.js +124 -221
  179. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.js +125 -213
  180. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.test.js +104 -126
  181. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-tooltip-view.js +36 -51
  182. package/src/platform-implementation-js/dom-driver/inbox/views/inboxNavItemView.js +158 -297
  183. package/src/platform-implementation-js/dom-driver/inbox/waitForAnimationClickBlockerGone.js +21 -35
  184. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +24 -43
  185. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +39 -68
  186. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +14 -19
  187. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +27 -35
  188. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +16 -22
  189. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +14 -14
  190. package/src/platform-implementation-js/driver-common/inboxAjax.js +12 -7
  191. package/src/platform-implementation-js/driver-common/requestGmailThread.js +19 -20
  192. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +197 -306
  193. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +113 -161
  194. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +1 -114
  195. package/src/platform-implementation-js/driver-interfaces/driver.js +1 -131
  196. package/src/platform-implementation-js/driver-interfaces/message-view-driver.js +4 -48
  197. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +1 -29
  198. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +1 -32
  199. package/src/platform-implementation-js/driver-interfaces/thread-row-view-driver.js +1 -11
  200. package/src/platform-implementation-js/lib/array-to-lifetimes.js +43 -41
  201. package/src/platform-implementation-js/lib/array-to-lifetimes.test.js +139 -155
  202. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +19 -38
  203. package/src/platform-implementation-js/lib/css-selector-escape.js +7 -3
  204. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +8 -11
  205. package/src/platform-implementation-js/lib/dom/get-selection.js +23 -52
  206. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +69 -101
  207. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +8 -10
  208. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +15 -17
  209. package/src/platform-implementation-js/lib/dom/querySelectorOne.js +8 -11
  210. package/src/platform-implementation-js/lib/dom/set-css.js +7 -3
  211. package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.js +9 -11
  212. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +32 -33
  213. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.test.js +23 -26
  214. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +86 -149
  215. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +42 -57
  216. package/src/platform-implementation-js/lib/make-revocable-function.js +19 -21
  217. package/src/platform-implementation-js/lib/make-revocable-function.test.js +20 -22
  218. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +15 -17
  219. package/src/platform-implementation-js/lib/parseParamsFromRouteID.test.js +9 -18
  220. package/src/platform-implementation-js/lib/populateRouteID.js +8 -9
  221. package/src/platform-implementation-js/lib/populateRouteID.test.js +20 -19
  222. package/src/platform-implementation-js/lib/react/ElementContainer.js +23 -20
  223. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.js +10 -9
  224. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.test.js +13 -20
  225. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +13 -18
  226. package/src/platform-implementation-js/lib/routeIDmatchesHash.test.js +11 -17
  227. package/src/platform-implementation-js/lib/shared-style.js +14 -13
  228. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +18 -17
  229. package/src/platform-implementation-js/lib/toLiveSet.js +17 -15
  230. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +6 -5
  231. package/src/platform-implementation-js/main.js +9 -24
  232. package/src/platform-implementation-js/namespaces/compose.js +37 -60
  233. package/src/platform-implementation-js/namespaces/conversations.js +52 -124
  234. package/src/platform-implementation-js/namespaces/global.js +27 -39
  235. package/src/platform-implementation-js/namespaces/keyboard.js +29 -33
  236. package/src/platform-implementation-js/namespaces/lists.js +25 -31
  237. package/src/platform-implementation-js/namespaces/modal.js +34 -28
  238. package/src/platform-implementation-js/namespaces/nav-menu.js +30 -45
  239. package/src/platform-implementation-js/namespaces/router.js +70 -137
  240. package/src/platform-implementation-js/namespaces/search.js +19 -17
  241. package/src/platform-implementation-js/namespaces/toolbars.js +71 -117
  242. package/src/platform-implementation-js/namespaces/user.js +36 -37
  243. package/src/platform-implementation-js/namespaces/widgets.js +54 -61
  244. package/src/platform-implementation-js/platform-implementation.js +98 -229
  245. package/src/platform-implementation-js/views/app-toolbar-button-view.js +26 -47
  246. package/src/platform-implementation-js/views/collapsible-section-view.js +66 -63
  247. package/src/platform-implementation-js/views/content-panel-view.js +28 -30
  248. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +21 -44
  249. package/src/platform-implementation-js/views/conversations/custom-message-view.js +44 -104
  250. package/src/platform-implementation-js/views/conversations/message-view.js +131 -202
  251. package/src/platform-implementation-js/views/conversations/thread-view.js +75 -127
  252. package/src/platform-implementation-js/views/native-nav-item-view.js +32 -65
  253. package/src/platform-implementation-js/views/nav-item-view.js +51 -115
  254. package/src/platform-implementation-js/views/route-view/custom-route-view.js +25 -20
  255. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +18 -18
  256. package/src/platform-implementation-js/views/route-view/list-route-view.js +30 -52
  257. package/src/platform-implementation-js/views/route-view/route-view.js +24 -35
  258. package/src/platform-implementation-js/views/section-view.js +60 -52
  259. package/src/platform-implementation-js/views/thread-row-view.js +49 -74
  260. package/src/platform-implementation-js/widgets/drawer-view.js +29 -36
  261. package/src/platform-implementation-js/widgets/modal-view.js +39 -68
  262. package/src/platform-implementation-js/widgets/mole-view.js +22 -22
  263. 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
+ }