@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,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;