@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,66 +1,50 @@
1
- /* @flow */
2
-
3
- import { defn } from 'ud';
4
- import Kefir from 'kefir';
5
- import kefirStopper from 'kefir-stopper';
6
- import kefirBus from 'kefir-bus';
7
- import InboxBackdrop from './inbox-backdrop';
8
- import fromEventTargetCapture from '../../../lib/from-event-target-capture';
9
- import type { DrawerViewOptions } from '../../../driver-interfaces/driver';
10
- import type ComposeView from '../../../views/compose-view';
11
- import findParent from '../../../../common/find-parent';
12
-
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 _kefir = _interopRequireDefault(require("kefir"));
11
+ var _kefirStopper = _interopRequireDefault(require("kefir-stopper"));
12
+ var _kefirBus = _interopRequireDefault(require("kefir-bus"));
13
+ var _inboxBackdrop = _interopRequireDefault(require("./inbox-backdrop"));
14
+ var _fromEventTargetCapture = _interopRequireDefault(require("../../../lib/from-event-target-capture"));
15
+ var _findParent = _interopRequireDefault(require("../../../../common/find-parent"));
13
16
  const TAKE_OVER_EVENT = 'inboxSDKdrawerViewTakingOver';
14
17
  const zIndex = 500;
15
-
16
18
  class InboxDrawerView {
17
- _chrome: boolean;
18
- _exitEl: HTMLElement;
19
- _containerEl: HTMLElement;
20
- _el: HTMLElement;
21
- _backdrop: ?InboxBackdrop = null;
22
- _slideAnimationDone: Kefir.Observable<null>;
23
- _closing = kefirStopper();
24
- _closed = kefirStopper();
25
- _composeChanges = kefirBus();
26
- _preAutoCloseStream = kefirBus();
27
-
28
- constructor(options: DrawerViewOptions) {
19
+ constructor(options) {
20
+ (0, _defineProperty2.default)(this, "_backdrop", null);
21
+ (0, _defineProperty2.default)(this, "_closing", (0, _kefirStopper.default)());
22
+ (0, _defineProperty2.default)(this, "_closed", (0, _kefirStopper.default)());
23
+ (0, _defineProperty2.default)(this, "_composeChanges", (0, _kefirBus.default)());
24
+ (0, _defineProperty2.default)(this, "_preAutoCloseStream", (0, _kefirBus.default)());
29
25
  this._chrome = typeof options.chrome === 'boolean' ? options.chrome : true;
30
-
31
- let insertionTarget = ((document.body: any): HTMLElement);
26
+ let insertionTarget = document.body;
32
27
  let composeRect = null;
33
-
34
- const { composeView, closeWithCompose } = options;
28
+ const {
29
+ composeView,
30
+ closeWithCompose
31
+ } = options;
35
32
  if (composeView) {
36
- const ret = this._setupComposeInsertionTarget(
37
- composeView,
38
- closeWithCompose
39
- );
33
+ const ret = this._setupComposeInsertionTarget(composeView, closeWithCompose);
40
34
  insertionTarget = ret.insertionTarget;
41
35
  composeRect = ret.composeRect;
42
36
  }
43
-
44
37
  this._setupElement(options, insertionTarget);
45
38
 
46
39
  // Move or resize the ComposeView so that it's not clipped by the DrawerView.
47
40
  let composeNeedToMoveLeft = 0;
48
41
  if (composeView) {
49
42
  if (!composeRect) throw new Error('should not happen');
50
- composeNeedToMoveLeft = this._setupComposeAnimation(
51
- composeView,
52
- composeRect,
53
- true
54
- );
43
+ composeNeedToMoveLeft = this._setupComposeAnimation(composeView, composeRect, true);
55
44
  }
56
-
57
45
  this._el.offsetHeight; // force layout so that adding a class does a transition.
58
46
  this._el.classList.add('inboxsdk__active');
59
- this._slideAnimationDone = Kefir.fromEvents(this._el, 'transitionend')
60
- .take(1)
61
- .takeUntilBy(this._closing)
62
- .map(() => null);
63
-
47
+ this._slideAnimationDone = _kefir.default.fromEvents(this._el, 'transitionend').take(1).takeUntilBy(this._closing).map(() => null);
64
48
  if (composeView) {
65
49
  this._positionCompose(composeView, composeNeedToMoveLeft);
66
50
  }
@@ -68,41 +52,29 @@ class InboxDrawerView {
68
52
  // Gmail calls preventDefault on escape keypresses. We want to close the
69
53
  // drawer for any escape keypresses which weren't preventDefaulted by the
70
54
  // current extension.
71
- fromEventTargetCapture(document, 'keydown')
72
- .filter((e) => (e.key ? e.key === 'Escape' : e.which === 27))
73
- .takeUntilBy(this._closing)
74
- .onValue((e) => {
75
- const origPreventDefault = e.preventDefault;
76
- e.preventDefault = function () {
77
- this._defaultPreventedInContext = true;
78
- return origPreventDefault.call(this);
79
- };
80
- });
81
- Kefir.fromEvents(document, 'keydown')
82
- .filter((e) => (e.key ? e.key === 'Escape' : e.which === 27))
83
- .filter((e) => !e._defaultPreventedInContext)
84
- .filter((event) => {
85
- let isCanceled = false;
86
- const appEvent = {
87
- type: 'escape',
88
- cause: event,
89
- cancel: () => {
90
- isCanceled = true;
91
- },
92
- };
93
- this._preAutoCloseStream.emit(appEvent);
94
- return !isCanceled;
95
- })
96
- .takeUntilBy(this._closing)
97
- .onValue(() => {
98
- this.close();
99
- });
55
+ (0, _fromEventTargetCapture.default)(document, 'keydown').filter(e => e.key ? e.key === 'Escape' : e.which === 27).takeUntilBy(this._closing).onValue(e => {
56
+ const origPreventDefault = e.preventDefault;
57
+ e.preventDefault = function () {
58
+ this._defaultPreventedInContext = true;
59
+ return origPreventDefault.call(this);
60
+ };
61
+ });
62
+ _kefir.default.fromEvents(document, 'keydown').filter(e => e.key ? e.key === 'Escape' : e.which === 27).filter(e => !e._defaultPreventedInContext).filter(event => {
63
+ let isCanceled = false;
64
+ const appEvent = {
65
+ type: 'escape',
66
+ cause: event,
67
+ cancel: () => {
68
+ isCanceled = true;
69
+ }
70
+ };
71
+ this._preAutoCloseStream.emit(appEvent);
72
+ return !isCanceled;
73
+ }).takeUntilBy(this._closing).onValue(() => {
74
+ this.close();
75
+ });
100
76
  }
101
-
102
- _setupComposeInsertionTarget(
103
- composeView: ComposeView,
104
- closeWithCompose: ?boolean
105
- ): { composeRect: ClientRect, insertionTarget: HTMLElement } {
77
+ _setupComposeInsertionTarget(composeView, closeWithCompose) {
106
78
  if (composeView.isMinimized()) {
107
79
  throw new Error("Can't attach DrawerView to minimized ComposeView");
108
80
  }
@@ -112,22 +84,11 @@ class InboxDrawerView {
112
84
  if (composeView.isFullscreen()) {
113
85
  composeView.setFullscreen(false);
114
86
  }
115
- const closeEvents = [
116
- Kefir.fromEvents(composeView, 'restored'),
117
- Kefir.later(10).flatMap(() =>
118
- Kefir.fromEvents(composeView, 'fullscreenChanged')
119
- ),
120
- ];
87
+ const closeEvents = [_kefir.default.fromEvents(composeView, 'restored'), _kefir.default.later(10).flatMap(() => _kefir.default.fromEvents(composeView, 'fullscreenChanged'))];
121
88
  if (closeWithCompose) {
122
- closeEvents.push(
123
- Kefir.fromEvents(composeView, 'destroy'),
124
- Kefir.fromEvents(composeView, 'minimized')
125
- );
89
+ closeEvents.push(_kefir.default.fromEvents(composeView, 'destroy'), _kefir.default.fromEvents(composeView, 'minimized'));
126
90
  }
127
- Kefir.merge(closeEvents)
128
- .takeUntilBy(this._closing.merge(this._composeChanges))
129
- .onValue(() => this.close());
130
-
91
+ _kefir.default.merge(closeEvents).takeUntilBy(this._closing.merge(this._composeChanges)).onValue(() => this.close());
131
92
  const composeEl = composeView.getElement();
132
93
 
133
94
  // Read the compose size before any DOM modifications besides un-fullscreening it.
@@ -147,155 +108,103 @@ class InboxDrawerView {
147
108
  // set up the z-indexes of the ComposeView's offsetParent and the
148
109
  // insertionTarget point so everything will look right.
149
110
  const composeOffsetParent = composeEl.offsetParent;
150
- if (!(composeOffsetParent instanceof HTMLElement))
151
- throw new Error('should not happen');
152
- const insertionTarget =
153
- findParent(
154
- composeOffsetParent,
155
- (el) =>
156
- window.getComputedStyle(el).getPropertyValue('z-index') !== 'auto' &&
157
- el.getBoundingClientRect().left === 0
158
- ) || ((document.body: any): HTMLElement);
159
-
160
- composeEl.dispatchEvent(
161
- new CustomEvent(TAKE_OVER_EVENT, {
162
- bubbles: false,
163
- cancelable: false,
164
- detail: null,
165
- })
166
- );
167
- composeOffsetParent.dispatchEvent(
168
- new CustomEvent(TAKE_OVER_EVENT, {
169
- bubbles: false,
170
- cancelable: false,
171
- detail: null,
172
- })
173
- );
174
- insertionTarget.dispatchEvent(
175
- new CustomEvent(TAKE_OVER_EVENT, {
176
- bubbles: false,
177
- cancelable: false,
178
- detail: null,
179
- })
180
- );
111
+ if (!(composeOffsetParent instanceof HTMLElement)) throw new Error('should not happen');
112
+ const insertionTarget = (0, _findParent.default)(composeOffsetParent, el => window.getComputedStyle(el).getPropertyValue('z-index') !== 'auto' && el.getBoundingClientRect().left === 0) || document.body;
113
+ composeEl.dispatchEvent(new CustomEvent(TAKE_OVER_EVENT, {
114
+ bubbles: false,
115
+ cancelable: false,
116
+ detail: null
117
+ }));
118
+ composeOffsetParent.dispatchEvent(new CustomEvent(TAKE_OVER_EVENT, {
119
+ bubbles: false,
120
+ cancelable: false,
121
+ detail: null
122
+ }));
123
+ insertionTarget.dispatchEvent(new CustomEvent(TAKE_OVER_EVENT, {
124
+ bubbles: false,
125
+ cancelable: false,
126
+ detail: null
127
+ }));
181
128
 
182
129
  // Needed to stop composeviews from coming apart visually in Gmail.
183
130
  insertionTarget.classList.add('inboxsdk__drawers_in_use');
184
131
  // Needed to make DrawerView show over search bar in Inbox.
185
132
  insertionTarget.style.zIndex = String(zIndex);
186
-
187
133
  if (!composeOffsetParent.hasAttribute('data-drawer-old-zindex')) {
188
- composeOffsetParent.setAttribute(
189
- 'data-drawer-old-zindex',
190
- composeOffsetParent.style.zIndex
191
- );
134
+ composeOffsetParent.setAttribute('data-drawer-old-zindex', composeOffsetParent.style.zIndex);
192
135
  }
193
136
  composeOffsetParent.style.zIndex = String(zIndex + 2); // 1 more than compose
194
137
 
195
- this._closed
196
- .takeUntilBy(Kefir.fromEvents(insertionTarget, TAKE_OVER_EVENT))
197
- .onValue(() => {
198
- insertionTarget.style.zIndex = '';
199
- });
200
- this._closed
201
- .merge(this._composeChanges)
202
- .takeUntilBy(Kefir.fromEvents(composeOffsetParent, TAKE_OVER_EVENT))
203
- .onValue(() => {
204
- composeOffsetParent.style.zIndex =
205
- composeOffsetParent.getAttribute('data-drawer-old-zindex') || '';
206
- composeOffsetParent.removeAttribute('data-drawer-old-zindex');
207
- });
208
-
209
- return { composeRect, insertionTarget };
210
- }
211
-
212
- _setupElement(options: DrawerViewOptions, insertionTarget: HTMLElement) {
213
- const backdrop = (this._backdrop = new InboxBackdrop(
214
- zIndex,
138
+ this._closed.takeUntilBy(_kefir.default.fromEvents(insertionTarget, TAKE_OVER_EVENT)).onValue(() => {
139
+ insertionTarget.style.zIndex = '';
140
+ });
141
+ this._closed.merge(this._composeChanges).takeUntilBy(_kefir.default.fromEvents(composeOffsetParent, TAKE_OVER_EVENT)).onValue(() => {
142
+ composeOffsetParent.style.zIndex = composeOffsetParent.getAttribute('data-drawer-old-zindex') || '';
143
+ composeOffsetParent.removeAttribute('data-drawer-old-zindex');
144
+ });
145
+ return {
146
+ composeRect,
215
147
  insertionTarget
216
- ));
148
+ };
149
+ }
150
+ _setupElement(options, insertionTarget) {
151
+ const backdrop = this._backdrop = new _inboxBackdrop.default(zIndex, insertionTarget);
217
152
  this._preAutoCloseStream.plug(backdrop.getPreAutoCloseStream());
218
- backdrop
219
- .getStopper()
220
- .takeUntilBy(this._closing)
221
- .onValue(() => {
222
- this.close();
223
- });
224
-
153
+ backdrop.getStopper().takeUntilBy(this._closing).onValue(() => {
154
+ this.close();
155
+ });
225
156
  this._containerEl = document.createElement('div');
226
157
  this._containerEl.className = 'inboxsdk__drawer_view_container';
227
158
  this._containerEl.style.zIndex = String(zIndex + 1);
228
-
229
159
  this._el = document.createElement('div');
230
160
  this._el.setAttribute('role', 'dialog');
231
161
  this._el.tabIndex = 0;
232
162
  this._el.className = 'inboxsdk__drawer_view';
233
-
234
163
  if (options.matchSidebarContentPanelWidth) {
235
164
  this._el.classList.add('inboxsdk__match_sidebar_content_panel_width');
236
165
  }
237
-
238
166
  this._containerEl.appendChild(this._el);
239
-
240
167
  if (this._chrome) {
241
168
  const titleBar = document.createElement('div');
242
169
  titleBar.className = 'inboxsdk__drawer_title_bar';
243
-
244
170
  const closeButton = document.createElement('button');
245
171
  closeButton.type = 'button';
246
172
  closeButton.title = 'Close';
247
173
  closeButton.className = 'inboxsdk__close_button';
248
- closeButton.addEventListener('click', (e: MouseEvent) => {
174
+ closeButton.addEventListener('click', e => {
249
175
  this.close();
250
176
  });
251
177
  titleBar.appendChild(closeButton);
252
-
253
178
  const title = document.createElement('div');
254
179
  title.className = 'inboxsdk__drawer_title';
255
180
  title.setAttribute('role', 'heading');
256
181
  title.textContent = options.title || '';
257
182
  titleBar.appendChild(title);
258
-
259
183
  this._el.appendChild(titleBar);
260
184
  }
261
-
262
185
  this._el.appendChild(options.el);
263
-
264
186
  insertionTarget.appendChild(this._containerEl);
265
-
266
187
  this._closing.onValue(() => {
267
188
  if (this._backdrop) this._backdrop.destroy();
268
189
  this._el.classList.remove('inboxsdk__active');
269
- Kefir.fromEvents(this._el, 'transitionend')
270
- .merge(Kefir.later(200)) // transition might not finish if element is hidden
271
- .take(1)
272
- .onValue(() => {
273
- this._closed.destroy();
274
- this._containerEl.remove();
275
- });
190
+ _kefir.default.fromEvents(this._el, 'transitionend').merge(_kefir.default.later(200)) // transition might not finish if element is hidden
191
+ .take(1).onValue(() => {
192
+ this._closed.destroy();
193
+ this._containerEl.remove();
194
+ });
276
195
  });
277
196
  }
278
-
279
- _setupComposeAnimation(
280
- composeView: ComposeView,
281
- composeRect: ClientRect,
282
- forceLayout: boolean
283
- ): number {
197
+ _setupComposeAnimation(composeView, composeRect, forceLayout) {
284
198
  const composeEl = composeView.getElement();
285
- const parentEl: HTMLElement = (composeEl.parentElement: any);
199
+ const parentEl = composeEl.parentElement;
286
200
  const drawerRect = this._el.getBoundingClientRect();
287
-
288
201
  const margin = 24;
289
202
  const preexistingLeftAdjustment = parseInt(parentEl.style.left) || 0;
290
- const composeNeedToMoveLeft =
291
- composeRect.right -
292
- preexistingLeftAdjustment -
293
- (window.innerWidth - drawerRect.width - margin);
203
+ const composeNeedToMoveLeft = composeRect.right - preexistingLeftAdjustment - (window.innerWidth - drawerRect.width - margin);
294
204
  if (composeNeedToMoveLeft > 0) {
295
205
  parentEl.style.position = 'relative';
296
206
  parentEl.style.transition = 'left 150ms cubic-bezier(.4,0,.2,1)';
297
207
  parentEl.style.left = '0';
298
-
299
208
  if (forceLayout) {
300
209
  parentEl.offsetHeight;
301
210
  }
@@ -303,84 +212,58 @@ class InboxDrawerView {
303
212
  // animation here. We let the caller do that after they've forced layout
304
213
  // of the DrawerView _el too if they want.
305
214
  }
215
+
306
216
  return composeNeedToMoveLeft;
307
217
  }
308
-
309
- _positionCompose(composeView: ComposeView, composeNeedToMoveLeft: number) {
218
+ _positionCompose(composeView, composeNeedToMoveLeft) {
310
219
  if (composeNeedToMoveLeft > 0) {
311
220
  const composeEl = composeView.getElement();
312
- const parentEl: HTMLElement = (composeEl.parentElement: any);
221
+ const parentEl = composeEl.parentElement;
313
222
  parentEl.style.left = `${-composeNeedToMoveLeft}px`;
314
223
 
315
224
  // When the drawer closes, animate the compose back to its original
316
225
  // location, and then unset our extra CSS.
317
226
  // If the drawer has a different compose associated with it, then just
318
227
  // immediately remove this compose view's extra CSS.
319
- this._closing
320
- .takeUntilBy(this._composeChanges)
321
- .takeUntilBy(Kefir.fromEvents(composeEl, TAKE_OVER_EVENT))
322
- .onValue(() => {
323
- parentEl.style.left = '0';
324
- })
325
- .flatMap(
326
- () =>
327
- Kefir.fromEvents(parentEl, 'transitionend').merge(Kefir.later(200)) // transition might not finish if element is hidden
328
- )
329
- .merge(this._composeChanges)
330
- .take(1)
331
- .takeUntilBy(Kefir.fromEvents(composeEl, TAKE_OVER_EVENT))
332
- .onValue(() => {
333
- parentEl.style.position = '';
334
- parentEl.style.left = '';
335
- parentEl.style.transition = '';
336
- });
228
+ this._closing.takeUntilBy(this._composeChanges).takeUntilBy(_kefir.default.fromEvents(composeEl, TAKE_OVER_EVENT)).onValue(() => {
229
+ parentEl.style.left = '0';
230
+ }).flatMap(() => _kefir.default.fromEvents(parentEl, 'transitionend').merge(_kefir.default.later(200)) // transition might not finish if element is hidden
231
+ ).merge(this._composeChanges).take(1).takeUntilBy(_kefir.default.fromEvents(composeEl, TAKE_OVER_EVENT)).onValue(() => {
232
+ parentEl.style.position = '';
233
+ parentEl.style.left = '';
234
+ parentEl.style.transition = '';
235
+ });
337
236
  }
338
237
  }
339
-
340
- associateComposeView(composeView: ComposeView, closeWithCompose: boolean) {
238
+ associateComposeView(composeView, closeWithCompose) {
341
239
  this._composeChanges.emit(null);
342
-
343
- const { insertionTarget, composeRect } = this._setupComposeInsertionTarget(
344
- composeView,
345
- closeWithCompose
346
- );
347
-
348
- if (this._backdrop)
349
- insertionTarget.appendChild(this._backdrop.getElement());
350
- if (this._containerEl.parentElement !== insertionTarget)
351
- insertionTarget.appendChild(this._containerEl);
352
-
353
- const composeNeedToMoveLeft = this._setupComposeAnimation(
354
- composeView,
355
- composeRect,
356
- false
357
- );
240
+ const {
241
+ insertionTarget,
242
+ composeRect
243
+ } = this._setupComposeInsertionTarget(composeView, closeWithCompose);
244
+ if (this._backdrop) insertionTarget.appendChild(this._backdrop.getElement());
245
+ if (this._containerEl.parentElement !== insertionTarget) insertionTarget.appendChild(this._containerEl);
246
+ const composeNeedToMoveLeft = this._setupComposeAnimation(composeView, composeRect, false);
358
247
  this._positionCompose(composeView, composeNeedToMoveLeft);
359
248
  }
360
-
361
249
  disassociateComposeView() {
362
250
  this._composeChanges.emit(null);
363
251
  }
364
-
365
252
  getSlideAnimationDone() {
366
253
  return this._slideAnimationDone;
367
254
  }
368
-
369
255
  getClosingStream() {
370
256
  return this._closing;
371
257
  }
372
-
373
258
  getClosedStream() {
374
259
  return this._closed;
375
260
  }
376
-
377
261
  getPreAutoCloseStream() {
378
262
  return this._preAutoCloseStream;
379
263
  }
380
-
381
264
  close() {
382
265
  this._closing.destroy();
383
266
  }
384
267
  }
385
-
386
- export default defn(module, InboxDrawerView);
268
+ var _default = (0, _ud.defn)(module, InboxDrawerView);
269
+ exports.default = _default;
@@ -1,26 +1,25 @@
1
- /* @flow */
1
+ "use strict";
2
2
 
3
- export default class InboxDropdownView {
4
- _containerEl: HTMLElement;
5
- _contentEl: HTMLElement;
6
-
7
- constructor(className?: string) {
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ class InboxDropdownView {
8
+ constructor(className) {
8
9
  this._containerEl = document.createElement('div');
9
10
  this._containerEl.className = 'inboxsdk__dropdown ' + (className || '');
10
11
  this._contentEl = document.createElement('div');
11
12
  this._contentEl.className = 'inboxsdk__dropdown_content';
12
13
  this._containerEl.appendChild(this._contentEl);
13
14
  }
14
-
15
- getContentElement(): HTMLElement {
15
+ getContentElement() {
16
16
  return this._contentEl;
17
17
  }
18
-
19
- getContainerElement(): HTMLElement {
18
+ getContainerElement() {
20
19
  return this._containerEl;
21
20
  }
22
-
23
21
  destroy() {
24
22
  this._containerEl.remove();
25
23
  }
26
24
  }
25
+ exports.default = InboxDropdownView;
@@ -1,82 +1,64 @@
1
- /* @flow */
2
-
3
- import Kefir from 'kefir';
4
- import kefirStopper from 'kefir-stopper';
5
- import kefirBus from 'kefir-bus';
6
-
7
- import type { RouteViewDriver } from '../../../driver-interfaces/route-view-driver';
8
-
9
- export default class InboxDummyRouteView {
10
- _type: string;
11
- _eventStream = kefirBus();
12
- _stopper = kefirStopper();
13
-
14
- constructor(type: string) {
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 _kefir = _interopRequireDefault(require("kefir"));
10
+ var _kefirStopper = _interopRequireDefault(require("kefir-stopper"));
11
+ var _kefirBus = _interopRequireDefault(require("kefir-bus"));
12
+ class InboxDummyRouteView {
13
+ constructor(type) {
14
+ (0, _defineProperty2.default)(this, "_eventStream", (0, _kefirBus.default)());
15
+ (0, _defineProperty2.default)(this, "_stopper", (0, _kefirStopper.default)());
15
16
  // Check we implement interface
16
- (this: RouteViewDriver);
17
+ this;
17
18
  this._type = type;
18
19
  }
19
-
20
20
  getStopper() {
21
21
  return this._stopper;
22
22
  }
23
-
24
23
  destroy() {
25
24
  this._eventStream.end();
26
25
  this._stopper.destroy();
27
26
  }
28
-
29
- getElement(): HTMLElement {
27
+ getElement() {
30
28
  throw new Error('Should not happen');
31
29
  }
32
-
33
- getType(): string {
30
+ getType() {
34
31
  return this._type;
35
32
  }
36
-
37
- getRouteType(): string {
33
+ getRouteType() {
38
34
  return 'UNKNOWN';
39
35
  }
40
-
41
- getRouteID(): string {
36
+ getRouteID() {
42
37
  return 'UNKNOWN';
43
38
  }
44
-
45
- getParams(): Object {
39
+ getParams() {
46
40
  return {};
47
41
  }
48
-
49
- getEventStream(): Kefir.Observable<Object> {
42
+ getEventStream() {
50
43
  return this._eventStream;
51
44
  }
52
-
53
- getCustomViewElement(): ?HTMLElement {
45
+ getCustomViewElement() {
54
46
  return null;
55
47
  }
56
-
57
48
  refresh() {
58
49
  // stub
59
50
  }
60
-
61
- getHash(): string {
51
+ getHash() {
62
52
  throw new Error('should not happen');
63
53
  }
64
-
65
- addCollapsibleSection(
66
- sectionDescriptorProperty: Kefir.Observable<?Object>,
67
- groupOrderHint: any
68
- ) {
54
+ addCollapsibleSection(sectionDescriptorProperty, groupOrderHint) {
69
55
  throw new Error('should not happen');
70
56
  }
71
-
72
- addSection(
73
- sectionDescriptorProperty: Kefir.Observable<?Object>,
74
- groupOrderHint: any
75
- ) {
57
+ addSection(sectionDescriptorProperty, groupOrderHint) {
76
58
  throw new Error('should not happen');
77
59
  }
78
-
79
- setFullWidth(fullWidth: boolean) {
60
+ setFullWidth(fullWidth) {
80
61
  throw new Error('should not happen');
81
62
  }
82
63
  }
64
+ exports.default = InboxDummyRouteView;