@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,60 +1,49 @@
1
- /* @flow */
2
-
3
- import ErrorCollector from '../../../../lib/ErrorCollector';
4
- import querySelectorOne from '../../../../lib/dom/querySelectorOne';
5
-
6
- export default function parser(el: HTMLElement) {
7
- const ec = new ErrorCollector('thread');
8
-
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = parser;
8
+ var _ErrorCollector = _interopRequireDefault(require("../../../../lib/ErrorCollector"));
9
+ var _querySelectorOne = _interopRequireDefault(require("../../../../lib/dom/querySelectorOne"));
10
+ function parser(el) {
11
+ const ec = new _ErrorCollector.default('thread');
9
12
  const inBundle = !el.hasAttribute('aria-multiselectable');
10
-
11
13
  ec.run('tabindex', () => {
12
14
  if (!el.hasAttribute('tabindex')) throw new Error('expected tabindex');
13
15
  });
14
-
15
- const inboxThreadId: ?string = ec.run('thread id', () => {
16
- const m = /thread-[^:]+:[^:\d]*(\d+)/.exec(
17
- el.getAttribute('data-item-id') || ''
18
- );
16
+ const inboxThreadId = ec.run('thread id', () => {
17
+ const m = /thread-[^:]+:[^:\d]*(\d+)/.exec(el.getAttribute('data-item-id') || '');
19
18
  if (!m) {
20
19
  throw new Error('thread id regex failed');
21
20
  }
22
21
  return m[0];
23
22
  });
24
-
25
- const heading = ec.run('heading', () =>
26
- el.querySelector('div[role=heading]')
27
- );
28
- const stickyHeading = !heading
29
- ? null
30
- : ec.run('stickyHeading', () => {
31
- const el = heading.firstElementChild;
32
- if (el instanceof HTMLDivElement) return el;
33
- throw new Error('child missing');
34
- });
35
- const toolbar = !stickyHeading
36
- ? null
37
- : ec.run('toolbar', () => querySelectorOne(stickyHeading, 'ul'));
23
+ const heading = ec.run('heading', () => el.querySelector('div[role=heading]'));
24
+ const stickyHeading = !heading ? null : ec.run('stickyHeading', () => {
25
+ const el = heading.firstElementChild;
26
+ if (el instanceof HTMLDivElement) return el;
27
+ throw new Error('child missing');
28
+ });
29
+ const toolbar = !stickyHeading ? null : ec.run('toolbar', () => (0, _querySelectorOne.default)(stickyHeading, 'ul'));
38
30
 
39
31
  // This will be null for threads that are still loading.
40
32
  const list = ec.run('list', () => el.querySelector('div[role=list]'));
41
-
42
33
  const elements = {
43
34
  heading,
44
35
  stickyHeading,
45
36
  toolbar,
46
- list,
37
+ list
47
38
  };
48
39
  const score = 1 - ec.errorCount() / ec.runCount();
49
40
  return {
50
41
  elements,
51
42
  attributes: {
52
43
  inBundle,
53
- inboxThreadId,
44
+ inboxThreadId
54
45
  },
55
46
  score,
56
- errors: ec.getErrorLogs(),
47
+ errors: ec.getErrorLogs()
57
48
  };
58
- }
59
-
60
- export type Parsed = $ReturnType<typeof parser>;
49
+ }
@@ -1,60 +1,35 @@
1
- /* @flow */
2
-
3
- import ErrorCollector from '../../../../lib/ErrorCollector';
4
- import querySelectorOne from '../../../../lib/dom/querySelectorOne';
5
-
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = parser;
8
+ var _ErrorCollector = _interopRequireDefault(require("../../../../lib/ErrorCollector"));
9
+ var _querySelectorOne = _interopRequireDefault(require("../../../../lib/dom/querySelectorOne"));
6
10
  const RGB_REGEX = /^rgb\s*\(\s*(\d+),\s*(\d+),\s*(\d+)\s*\)/;
7
-
8
- export default function parser(el: HTMLElement) {
9
- const ec = new ErrorCollector('threadRow');
10
-
11
+ function parser(el) {
12
+ const ec = new _ErrorCollector.default('threadRow');
11
13
  const inBundle = !el.hasAttribute('aria-multiselectable');
12
-
13
14
  ec.run('tabindex', () => {
14
15
  if (!el.hasAttribute('tabindex')) throw new Error('expected tabindex');
15
16
  });
16
-
17
- const subject = ec.run('subject', () =>
18
- querySelectorOne(
19
- el,
20
- 'div[jsaction][jslog] > div:not(:first-child):not(:last-child) > div > div[class]:not([style]):not(:first-child) > div:not(:first-child):not(:last-child) > div:not([style]):not(:first-child):not(:last-child):not([class*="inboxsdk"])'
21
- )
22
- );
23
-
24
- const checkbox = ec.run('checkbox', () =>
25
- querySelectorOne(
26
- el,
27
- 'div[jsaction] > div > div[jsaction] > div[role=checkbox]'
28
- )
29
- );
30
-
31
- const recipients = ec.run('recipients', () =>
32
- el.querySelectorAll(
33
- 'div[jsaction] > div:not(:first-child):not(:last-child) > div > div > span[email]'
34
- )
35
- );
36
-
37
- const isOnlyDraft = ec.run(
38
- 'isOnlyDraft',
39
- () => !(recipients && recipients.length > 0)
40
- );
41
-
17
+ const subject = ec.run('subject', () => (0, _querySelectorOne.default)(el, 'div[jsaction][jslog] > div:not(:first-child):not(:last-child) > div > div[class]:not([style]):not(:first-child) > div:not(:first-child):not(:last-child) > div:not([style]):not(:first-child):not(:last-child):not([class*="inboxsdk"])'));
18
+ const checkbox = ec.run('checkbox', () => (0, _querySelectorOne.default)(el, 'div[jsaction] > div > div[jsaction] > div[role=checkbox]'));
19
+ const recipients = ec.run('recipients', () => el.querySelectorAll('div[jsaction] > div:not(:first-child):not(:last-child) > div > div > span[email]'));
20
+ const isOnlyDraft = ec.run('isOnlyDraft', () => !(recipients && recipients.length > 0));
42
21
  const draftLabels = ec.run('draftLabels', () => {
43
- const recipientCandidates = el.querySelectorAll(
44
- 'div[jsaction] > div:not(:first-child):not(:last-child) > div > div > span'
45
- );
22
+ const recipientCandidates = el.querySelectorAll('div[jsaction] > div:not(:first-child):not(:last-child) > div > div > span');
46
23
 
47
24
  // We have to locate draft labels via text color because it's impossible
48
25
  // to locate them with reliable CSS selectors
49
- return Array.from(recipientCandidates).filter((candidate) => {
26
+ return Array.from(recipientCandidates).filter(candidate => {
50
27
  const colorString = getComputedStyle(candidate).getPropertyValue('color');
51
28
  const colorMatch = RGB_REGEX.exec(colorString);
52
29
  if (!colorMatch) throw new Error('Failed to read color string');
53
-
54
30
  const r = +colorMatch[1],
55
31
  g = +colorMatch[2],
56
32
  b = +colorMatch[3];
57
-
58
33
  return r > 200 && g < 100 && b < 100; // Draft labels are red
59
34
  });
60
35
  });
@@ -65,73 +40,48 @@ export default function parser(el: HTMLElement) {
65
40
  // There are no recipient elements with an email attr, which means this
66
41
  // thread only has drafts. In order to find the recipient parent we need
67
42
  // to work from a draft label upwards.
68
- if (!(draftLabels && draftLabels.length > 0))
69
- throw new Error('Could not locate draft labels');
43
+ if (!(draftLabels && draftLabels.length > 0)) throw new Error('Could not locate draft labels');
70
44
  return draftLabels[0].parentElement;
71
45
  });
72
-
73
- const inboxThreadId: ?string = ec.run('thread id', () => {
74
- const m = /thread-[^:]+:[^:\d]*(\d+)/.exec(
75
- el.getAttribute('data-item-id') || ''
76
- );
46
+ const inboxThreadId = ec.run('thread id', () => {
47
+ const m = /thread-[^:]+:[^:\d]*(\d+)/.exec(el.getAttribute('data-item-id') || '');
77
48
  if (!m) {
78
49
  throw new Error('thread row id regex failed');
79
50
  }
80
51
  return m[0];
81
52
  });
82
-
83
- const messageCountParent = ec.run(
84
- 'messageCountParent',
85
- () => recipientParent && recipientParent.nextElementSibling
86
- );
87
-
53
+ const messageCountParent = ec.run('messageCountParent', () => recipientParent && recipientParent.nextElementSibling);
88
54
  const visibleMessageCount = ec.run('visibleMessageCount', () => {
89
- const messageCountEl =
90
- messageCountParent && messageCountParent.querySelector('span');
91
- const match =
92
- messageCountEl && /^\((\d+)\)$/.exec(messageCountEl.textContent);
55
+ const messageCountEl = messageCountParent && messageCountParent.querySelector('span');
56
+ const match = messageCountEl && /^\((\d+)\)$/.exec(messageCountEl.textContent);
93
57
  if (!match) return 1;
94
58
  return parseInt(match[1]);
95
59
  });
96
-
97
60
  const visibleDraftCount = ec.run('visibleDraftCount', () => {
98
61
  if (isOnlyDraft && visibleMessageCount) return visibleMessageCount;
99
-
100
62
  if (!draftLabels) throw new Error('Could not locate draft labels');
101
63
  return draftLabels.length;
102
64
  });
103
-
104
65
  const contacts = ec.run('contacts', () => {
105
66
  if (!recipients) return null;
106
-
107
- return Array.from(recipients)
108
- .map((recipientEl) => {
109
- const emailAddress = recipientEl.getAttribute('email');
110
- if (!emailAddress) return null;
111
-
112
- return { name: null, emailAddress };
113
- })
114
- .filter(Boolean);
67
+ return Array.from(recipients).map(recipientEl => {
68
+ const emailAddress = recipientEl.getAttribute('email');
69
+ if (!emailAddress) return null;
70
+ return {
71
+ name: null,
72
+ emailAddress
73
+ };
74
+ }).filter(Boolean);
115
75
  });
116
-
117
- const labelParent = ec.run('labelParent', () =>
118
- querySelectorOne(
119
- el,
120
- 'div[jsaction][jslog] > div:not(:first-child):not(:last-child) > div > div[class]:not([style]):not(:first-child) > div:not(:first-child):not(:last-child)'
121
- )
122
- );
123
-
124
- const toolbar = ec.run('toolbar', () =>
125
- querySelectorOne(el, 'div[jsaction] div[jsaction] > ul[aria-label]')
126
- );
127
-
76
+ const labelParent = ec.run('labelParent', () => (0, _querySelectorOne.default)(el, 'div[jsaction][jslog] > div:not(:first-child):not(:last-child) > div > div[class]:not([style]):not(:first-child) > div:not(:first-child):not(:last-child)'));
77
+ const toolbar = ec.run('toolbar', () => (0, _querySelectorOne.default)(el, 'div[jsaction] div[jsaction] > ul[aria-label]'));
128
78
  const elements = {
129
79
  subject,
130
80
  checkbox,
131
81
  labelParent,
132
82
  toolbar,
133
83
  recipientParent,
134
- messageCountParent,
84
+ messageCountParent
135
85
  };
136
86
  const score = 1 - ec.errorCount() / ec.runCount();
137
87
  return {
@@ -142,11 +92,9 @@ export default function parser(el: HTMLElement) {
142
92
  inboxThreadId,
143
93
  visibleMessageCount,
144
94
  visibleDraftCount,
145
- contacts,
95
+ contacts
146
96
  },
147
97
  score,
148
- errors: ec.getErrorLogs(),
98
+ errors: ec.getErrorLogs()
149
99
  };
150
- }
151
-
152
- export type Parsed = $ReturnType<typeof parser>;
100
+ }
@@ -1,56 +1,50 @@
1
- /* @flow */
1
+ "use strict";
2
2
 
3
- import Kefir from 'kefir';
4
- import type { TagTree } from 'tag-tree';
5
- import LiveSet from 'live-set';
6
- import censorHTMLtree from '../../../common/censorHTMLtree';
7
- import InboxComposeView from './views/inbox-compose-view';
8
- import toItemWithLifetimeStream from '../../lib/toItemWithLifetimeStream';
9
- import makeElementStreamMerger from '../../lib/dom/make-element-stream-merger';
10
- import type InboxDriver from './inbox-driver';
11
-
12
- import parser from './detection/compose/parser';
13
-
14
- export default function getComposeViewDriverLiveSet(
15
- driver: InboxDriver,
16
- tree: TagTree<HTMLElement>
17
- ): LiveSet<InboxComposeView> {
18
- const denodeify = ({ el, removalStream }) => ({
19
- el: el.getValue(),
20
- removalStream,
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = getComposeViewDriverLiveSet;
8
+ var _kefir = _interopRequireDefault(require("kefir"));
9
+ var _liveSet = _interopRequireDefault(require("live-set"));
10
+ var _censorHTMLtree = _interopRequireDefault(require("../../../common/censorHTMLtree"));
11
+ var _inboxComposeView = _interopRequireDefault(require("./views/inbox-compose-view"));
12
+ var _toItemWithLifetimeStream = _interopRequireDefault(require("../../lib/toItemWithLifetimeStream"));
13
+ var _makeElementStreamMerger = _interopRequireDefault(require("../../lib/dom/make-element-stream-merger"));
14
+ var _parser = _interopRequireDefault(require("./detection/compose/parser"));
15
+ function getComposeViewDriverLiveSet(driver, tree) {
16
+ const denodeify = _ref => {
17
+ let {
18
+ el,
19
+ removalStream
20
+ } = _ref;
21
+ return {
22
+ el: el.getValue(),
23
+ removalStream
24
+ };
25
+ };
26
+ const inlineCompose = (0, _toItemWithLifetimeStream.default)(tree.getAllByTag('inlineCompose')).map(denodeify);
27
+ const regularCompose = (0, _toItemWithLifetimeStream.default)(tree.getAllByTag('regularCompose')).map(denodeify);
28
+ const fullscreenCompose = (0, _toItemWithLifetimeStream.default)(tree.getAllByTag('fullscreenCompose')).map(denodeify);
29
+ const compose = _kefir.default.merge([inlineCompose, regularCompose.merge(fullscreenCompose).flatMap((0, _makeElementStreamMerger.default)())]);
30
+ const composeViewDriverStream = compose.map(_ref2 => {
31
+ let {
32
+ el,
33
+ removalStream
34
+ } = _ref2;
35
+ const parsed = (0, _parser.default)(el);
36
+ if (parsed.errors.length) {
37
+ driver.getLogger().errorSite(new Error('parse errors (compose)'), {
38
+ score: parsed.score,
39
+ errors: parsed.errors,
40
+ html: (0, _censorHTMLtree.default)(el)
41
+ });
42
+ }
43
+ const view = new _inboxComposeView.default(driver, el, parsed);
44
+ removalStream.take(1).onValue(() => view.removedFromDOM());
45
+ return view;
21
46
  });
22
-
23
- const inlineCompose = toItemWithLifetimeStream(
24
- tree.getAllByTag('inlineCompose')
25
- ).map(denodeify);
26
- const regularCompose = toItemWithLifetimeStream(
27
- tree.getAllByTag('regularCompose')
28
- ).map(denodeify);
29
- const fullscreenCompose = toItemWithLifetimeStream(
30
- tree.getAllByTag('fullscreenCompose')
31
- ).map(denodeify);
32
-
33
- const compose = Kefir.merge([
34
- inlineCompose,
35
- regularCompose.merge(fullscreenCompose).flatMap(makeElementStreamMerger()),
36
- ]);
37
-
38
- const composeViewDriverStream: Kefir.Observable<InboxComposeView> =
39
- compose.map(({ el, removalStream }) => {
40
- const parsed = parser(el);
41
- if (parsed.errors.length) {
42
- driver.getLogger().errorSite(new Error('parse errors (compose)'), {
43
- score: parsed.score,
44
- errors: parsed.errors,
45
- html: censorHTMLtree(el),
46
- });
47
- }
48
- const view = new InboxComposeView(driver, el, parsed);
49
- removalStream.take(1).onValue(() => view.removedFromDOM());
50
- return view;
51
- });
52
-
53
- return new LiveSet({
47
+ return new _liveSet.default({
54
48
  scheduler: tree.getAllByTag('inlineCompose').getScheduler(),
55
49
  read() {
56
50
  return new Set();
@@ -71,35 +65,19 @@ export default function getComposeViewDriverLiveSet(
71
65
  function getStatus() {
72
66
  return {
73
67
  mainLength: document.querySelectorAll('[role=main]').length,
74
- regularLength: document.querySelectorAll(
75
- 'body > div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id]'
76
- ).length,
77
- noJsActionLength: document.querySelectorAll(
78
- 'body > div[id] > div[id][class]:not([role]) > div[class] > div[id]'
79
- ).length,
80
- noNotLength: document.querySelectorAll(
81
- 'body > div[id][jsaction] > div[id][class] > div[class] > div[id]'
82
- ).length,
83
- noBodyDirectChildLength: document.querySelectorAll(
84
- 'body div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id]'
85
- ).length,
86
- noBodyLength: document.querySelectorAll(
87
- 'div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id]'
88
- ).length,
68
+ regularLength: document.querySelectorAll('body > div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id]').length,
69
+ noJsActionLength: document.querySelectorAll('body > div[id] > div[id][class]:not([role]) > div[class] > div[id]').length,
70
+ noNotLength: document.querySelectorAll('body > div[id][jsaction] > div[id][class] > div[class] > div[id]').length,
71
+ noBodyDirectChildLength: document.querySelectorAll('body div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id]').length,
72
+ noBodyLength: document.querySelectorAll('div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id]').length,
89
73
  // We can use class names for logging heuristics. Don't want to use
90
74
  // them anywhere else.
91
- classLength: document.querySelectorAll('div.ek div.md > div')
92
- .length,
75
+ classLength: document.querySelectorAll('div.ek div.md > div').length,
93
76
  classEkLength: document.querySelectorAll('.ek').length,
94
77
  classMdLength: document.querySelectorAll('.md').length,
95
- composeHtml: Array.from(
96
- document.querySelectorAll(
97
- 'body > div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id], div.ek div.md > div'
98
- )
99
- ).map((el) => censorHTMLtree(el)),
78
+ composeHtml: Array.from(document.querySelectorAll('body > div[id][jsaction] > div[id][class]:not([role]) > div[class] > div[id], div.ek div.md > div')).map(el => (0, _censorHTMLtree.default)(el))
100
79
  };
101
80
  }
102
-
103
81
  const startStatus = getStatus();
104
82
  const waitTime = 180 * 1000;
105
83
  driver.getLogger().error(err, startStatus);
@@ -108,14 +86,14 @@ export default function getComposeViewDriverLiveSet(
108
86
  driver.getLogger().eventSdkPassive('waitfor compose data', {
109
87
  startStatus,
110
88
  waitTime,
111
- laterStatus,
89
+ laterStatus
112
90
  });
113
91
  }, waitTime);
114
- },
92
+ }
115
93
  });
116
94
  return () => {
117
95
  sub.unsubscribe();
118
96
  };
119
- },
97
+ }
120
98
  });
121
- }
99
+ }
@@ -1,42 +1,36 @@
1
- /* @flow */
1
+ "use strict";
2
2
 
3
- import { defn } from 'ud';
4
- import inboxAjax from '../../driver-common/inboxAjax';
5
- import getAccountUrlPart from '../../driver-common/getAccountUrlPart';
6
- import { extractMessageIdsFromThreadResponse } from './inboxResponseProcessor';
7
-
8
- import type InboxDriver from './inbox-driver';
9
-
10
- async function getInboxMessageIdForInboxThreadId(
11
- driver: InboxDriver,
12
- inboxThreadId: string
13
- ): Promise<string> {
14
- const { text } = await inboxAjax({
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _ud = require("ud");
9
+ var _inboxAjax = _interopRequireDefault(require("../../driver-common/inboxAjax"));
10
+ var _getAccountUrlPart = _interopRequireDefault(require("../../driver-common/getAccountUrlPart"));
11
+ var _inboxResponseProcessor = require("./inboxResponseProcessor");
12
+ async function getInboxMessageIdForInboxThreadId(driver, inboxThreadId) {
13
+ const {
14
+ text
15
+ } = await (0, _inboxAjax.default)({
15
16
  method: 'POST',
16
- url: `https://inbox.google.com/sync${getAccountUrlPart()}/i/fd`,
17
+ url: `https://inbox.google.com/sync${(0, _getAccountUrlPart.default)()}/i/fd`,
17
18
  headers: {
18
19
  'Content-Type': 'application/json',
19
- 'X-Framework-Xsrf-Token': await driver
20
- .getPageCommunicator()
21
- .getXsrfToken(),
20
+ 'X-Framework-Xsrf-Token': await driver.getPageCommunicator().getXsrfToken(),
22
21
  'X-Gmail-BTAI': await driver.getPageCommunicator().getBtaiHeader(),
23
- 'X-Google-BTD': '1',
22
+ 'X-Google-BTD': '1'
24
23
  },
25
24
  data: JSON.stringify({
26
- '1': [
27
- {
28
- '1': inboxThreadId,
29
- '3': [],
30
- },
31
- ],
32
- }),
25
+ '1': [{
26
+ '1': inboxThreadId,
27
+ '3': []
28
+ }]
29
+ })
33
30
  });
34
-
35
- const [firstMessageId] = extractMessageIdsFromThreadResponse(text);
36
- if (!firstMessageId)
37
- throw new Error('Failed to find inbox message ID for thread');
38
-
31
+ const [firstMessageId] = (0, _inboxResponseProcessor.extractMessageIdsFromThreadResponse)(text);
32
+ if (!firstMessageId) throw new Error('Failed to find inbox message ID for thread');
39
33
  return firstMessageId;
40
34
  }
41
-
42
- export default defn(module, getInboxMessageIdForInboxThreadId);
35
+ var _default = (0, _ud.defn)(module, getInboxMessageIdForInboxThreadId);
36
+ exports.default = _default;