@inboxsdk/core 1.2.4 → 1.2.7

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 (332) hide show
  1. package/inboxsdk.js +4474 -463
  2. package/inboxsdk.js.map +1 -1
  3. package/package.json +1 -1
  4. package/pageWorld.js +1 -1
  5. package/pageWorld.js.map +1 -1
  6. package/src/common/load-script.d.ts +0 -6
  7. package/src/common/load-script.d.ts.map +1 -1
  8. package/src/inboxsdk-js/loading/platform-implementation-loader.d.ts.map +1 -1
  9. package/src/inboxsdk.d.ts +29 -0
  10. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.d.ts +2 -2
  11. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.d.ts.map +1 -1
  12. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.d.ts +6 -1
  13. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.d.ts.map +1 -1
  14. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts +2 -2
  15. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts.map +1 -1
  16. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.d.ts +5 -0
  17. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.d.ts.map +1 -1
  18. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.d.ts +13 -5
  19. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.d.ts.map +1 -1
  20. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts +1 -1
  21. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts.map +1 -1
  22. package/src/platform-implementation-js/lib/inject-script-EMBEDDED.d.ts.map +1 -1
  23. package/src/platform-implementation-js/namespaces/conversations.d.ts +7 -0
  24. package/src/platform-implementation-js/namespaces/conversations.d.ts.map +1 -1
  25. package/src/platform-implementation-js/namespaces/nav-menu.d.ts +4 -2
  26. package/src/platform-implementation-js/namespaces/nav-menu.d.ts.map +1 -1
  27. package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts +12 -5
  28. package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts.map +1 -1
  29. package/src/platform-implementation-js/views/native-nav-item-view.d.ts +2 -1
  30. package/src/platform-implementation-js/views/native-nav-item-view.d.ts.map +1 -1
  31. package/src/build/exec.js +0 -26
  32. package/src/build/spawn.js +0 -17
  33. package/src/common/ajax.js +0 -90
  34. package/src/common/cachebust-url.js +0 -10
  35. package/src/common/censorHTMLstring.js +0 -37
  36. package/src/common/censorHTMLtree.js +0 -28
  37. package/src/common/censorJSONTree.js +0 -15
  38. package/src/common/connectivity-test.js +0 -21
  39. package/src/common/defer.js +0 -11
  40. package/src/common/find-parent.js +0 -10
  41. package/src/common/get-extension-id.js +0 -7
  42. package/src/common/get-or-fail.js +0 -8
  43. package/src/common/get-session-id.js +0 -14
  44. package/src/common/get-stack-trace.js +0 -6
  45. package/src/common/html-to-text.js +0 -7
  46. package/src/common/isElementVisible.js +0 -6
  47. package/src/common/load-script.js +0 -128
  48. package/src/common/log-error.js +0 -185
  49. package/src/common/quoted-split.js +0 -18
  50. package/src/common/rate-limit-queuer.js +0 -57
  51. package/src/common/rate-limit.js +0 -14
  52. package/src/common/version.js +0 -8
  53. package/src/inboxsdk-js/header.js +0 -19
  54. package/src/inboxsdk-js/inboxsdk-NONREMOTE-INTEGRATED-PAGEWORLD.js +0 -4
  55. package/src/inboxsdk-js/inboxsdk-NONREMOTE.js +0 -4
  56. package/src/inboxsdk-js/inboxsdk-REMOTE.js +0 -2
  57. package/src/inboxsdk-js/inboxsdk-TEST.js +0 -5
  58. package/src/inboxsdk-js/inboxsdk.js +0 -23
  59. package/src/inboxsdk-js/loading/load-platform-implementation-DEV.js +0 -14
  60. package/src/inboxsdk-js/loading/platform-implementation-loader.js +0 -31
  61. package/src/injected-js/gmail/constants.js +0 -2
  62. package/src/injected-js/gmail/modify-suggestions.js +0 -106
  63. package/src/injected-js/gmail/setup-gmail-interceptor.js +0 -936
  64. package/src/injected-js/gmail/setup-gmonkey-handler.js +0 -49
  65. package/src/injected-js/gmail/sync-compose-processor-20220909.js +0 -298
  66. package/src/injected-js/gmail/sync-compose-processor.js +0 -55
  67. package/src/injected-js/gmail/sync-compose-request-processor.js +0 -109
  68. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +0 -71
  69. package/src/injected-js/gmail/thread-identifier/index.js +0 -133
  70. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +0 -61
  71. package/src/injected-js/injected-logger.js +0 -50
  72. package/src/injected-js/main.js +0 -49
  73. package/src/injected-js/message-metadata-holder.js +0 -103
  74. package/src/injected-js/setup-data-exposer.js +0 -135
  75. package/src/injected-js/setup-error-silencer.js +0 -15
  76. package/src/injected-js/setup-event-reemitter.js +0 -47
  77. package/src/injected-js/setupCustomViewEventAssassin.js +0 -90
  78. package/src/injected-js/setupInboxCustomViewLinkFixer.js +0 -24
  79. package/src/injected-js/setupPushStateListener.js +0 -14
  80. package/src/injected-js/xhr-helper.js +0 -43
  81. package/src/injected-js/xhr-proxy-factory.js +0 -537
  82. package/src/platform-implementation-js/constants/nav-item-types.js +0 -19
  83. package/src/platform-implementation-js/constants/router.js +0 -60
  84. package/src/platform-implementation-js/constants/toolbars.js +0 -5
  85. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +0 -158
  86. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.js +0 -20
  87. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.js +0 -38
  88. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.js +0 -98
  89. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-support-item.js +0 -4
  90. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +0 -14
  91. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +0 -60
  92. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/encodeDraftUrlId.js +0 -8
  93. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +0 -47
  94. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +0 -31
  95. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-rfc-message-id-for-gmail-message-id.js +0 -12
  96. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-rfc-message-id-for-gmail-thread-id.js +0 -33
  97. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +0 -22
  98. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +0 -18
  99. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +0 -57
  100. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +0 -40
  101. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +0 -55
  102. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.js +0 -14
  103. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +0 -177
  104. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +0 -17
  105. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.js +0 -44
  106. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +0 -49
  107. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +0 -18
  108. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +0 -138
  109. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +0 -112
  110. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +0 -152
  111. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +0 -21
  112. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +0 -48
  113. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +0 -357
  114. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +0 -19
  115. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +0 -36
  116. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +0 -36
  117. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +0 -85
  118. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +0 -142
  119. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.js +0 -115
  120. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +0 -50
  121. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +0 -723
  122. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter/get-main-content-element-changed-stream.js +0 -38
  123. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter/wait-for-gmail-mode-to-settle.js +0 -12
  124. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.js +0 -264
  125. package/src/platform-implementation-js/dom-driver/gmail/gmail-page-communicator.js +0 -201
  126. package/src/platform-implementation-js/dom-driver/gmail/gmail-response-processor.js +0 -532
  127. package/src/platform-implementation-js/dom-driver/gmail/gmail-sync-response-processor.js +0 -300
  128. package/src/platform-implementation-js/dom-driver/gmail/is-compose-titlebar-light-color.js +0 -21
  129. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +0 -92
  130. package/src/platform-implementation-js/dom-driver/gmail/makePageParserTree.js +0 -28
  131. package/src/platform-implementation-js/dom-driver/gmail/pageParserOptions.js +0 -19
  132. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.js +0 -129
  133. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +0 -80
  134. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +0 -23
  135. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +0 -26
  136. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +0 -16
  137. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +0 -723
  138. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +0 -24
  139. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +0 -172
  140. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +0 -106
  141. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +0 -328
  142. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +0 -22
  143. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +0 -720
  144. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +0 -135
  145. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +0 -50
  146. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +0 -65
  147. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-status-bar.js +0 -101
  148. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +0 -66
  149. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/detectClassicRecipientsArea.js +0 -38
  150. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +0 -10
  151. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +0 -14
  152. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +0 -13
  153. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +0 -60
  154. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +0 -54
  155. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +0 -98
  156. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-information-extractor.js +0 -28
  157. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +0 -13
  158. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +0 -18
  159. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +0 -16
  160. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-recipients.js +0 -22
  161. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +0 -23
  162. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/gmail-compose-button-view.js +0 -233
  163. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +0 -19
  164. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +0 -355
  165. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +0 -21
  166. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +0 -63
  167. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/page-parser.js +0 -223
  168. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +0 -19
  169. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/set-recipients.js +0 -157
  170. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/setupLinkPopovers.js +0 -109
  171. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +0 -123
  172. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +0 -16
  173. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +0 -1542
  174. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/attachment-icon.js +0 -4
  175. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +0 -75
  176. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +0 -737
  177. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.js +0 -763
  178. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +0 -103
  179. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +0 -508
  180. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +0 -236
  181. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-support-item-view.js +0 -84
  182. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +0 -986
  183. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +0 -26
  184. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +0 -658
  185. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +0 -459
  186. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +0 -265
  187. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-color-classes.js +0 -33
  188. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-view.js +0 -325
  189. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.js +0 -61
  190. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.js +0 -58
  191. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +0 -23
  192. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.js +0 -101
  193. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/more-dropdown-button-view.js +0 -30
  194. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/more-parent-accessory-button-view.js +0 -10
  195. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +0 -42
  196. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-dropdown-view.js +0 -22
  197. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +0 -112
  198. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +0 -122
  199. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +0 -194
  200. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +0 -352
  201. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +0 -76
  202. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +0 -57
  203. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +0 -291
  204. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +0 -28
  205. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +0 -46
  206. package/src/platform-implementation-js/driver-common/getAccountUrlPart.js +0 -17
  207. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +0 -17
  208. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +0 -44
  209. package/src/platform-implementation-js/driver-common/getOriginalMessagePage.js +0 -33
  210. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +0 -18
  211. package/src/platform-implementation-js/driver-common/getSyncThreadsForSearch.js +0 -49
  212. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +0 -13
  213. package/src/platform-implementation-js/driver-common/gmailAjax.js +0 -65
  214. package/src/platform-implementation-js/driver-common/inboxAjax.js +0 -5
  215. package/src/platform-implementation-js/driver-common/render-custom-icon.js +0 -16
  216. package/src/platform-implementation-js/driver-common/requestGmailThread.js +0 -24
  217. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +0 -245
  218. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +0 -144
  219. package/src/platform-implementation-js/driver-common/sidebar/constants.js +0 -26
  220. package/src/platform-implementation-js/driver-common/update-icon.js +0 -90
  221. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +0 -1
  222. package/src/platform-implementation-js/driver-interfaces/driver.js +0 -1
  223. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +0 -1
  224. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +0 -1
  225. package/src/platform-implementation-js/lib/ErrorCollector.js +0 -47
  226. package/src/platform-implementation-js/lib/Membrane.js +0 -22
  227. package/src/platform-implementation-js/lib/ScrollableContainByScreen.js +0 -30
  228. package/src/platform-implementation-js/lib/attemptWithRetries.js +0 -16
  229. package/src/platform-implementation-js/lib/common-page-communicator.js +0 -137
  230. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +0 -35
  231. package/src/platform-implementation-js/lib/css-selector-escape.js +0 -6
  232. package/src/platform-implementation-js/lib/delay-asap.js +0 -10
  233. package/src/platform-implementation-js/lib/delay-idle.js +0 -16
  234. package/src/platform-implementation-js/lib/dom/block-and-reemit-keyboard-events.js +0 -36
  235. package/src/platform-implementation-js/lib/dom/custom-events.js +0 -5
  236. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +0 -9
  237. package/src/platform-implementation-js/lib/dom/generic-button-view.js +0 -39
  238. package/src/platform-implementation-js/lib/dom/get-insert-before-element.js +0 -39
  239. package/src/platform-implementation-js/lib/dom/get-selection.js +0 -30
  240. package/src/platform-implementation-js/lib/dom/insert-element-in-order.js +0 -38
  241. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +0 -83
  242. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +0 -12
  243. package/src/platform-implementation-js/lib/dom/keyboard-shortcut-stream.js +0 -12
  244. package/src/platform-implementation-js/lib/dom/make-element-child-stream.js +0 -79
  245. package/src/platform-implementation-js/lib/dom/make-element-stream-merger.js +0 -27
  246. package/src/platform-implementation-js/lib/dom/make-element-view-stream.js +0 -15
  247. package/src/platform-implementation-js/lib/dom/make-mutation-observer-chunked-stream.js +0 -15
  248. package/src/platform-implementation-js/lib/dom/make-mutation-observer-stream.js +0 -5
  249. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +0 -8
  250. package/src/platform-implementation-js/lib/dom/outsideClicksAndEscape.js +0 -38
  251. package/src/platform-implementation-js/lib/dom/parentNodes.js +0 -8
  252. package/src/platform-implementation-js/lib/dom/querySelectorOrFail.js +0 -6
  253. package/src/platform-implementation-js/lib/dom/reemitClickEventForReact.js +0 -22
  254. package/src/platform-implementation-js/lib/dom/set-css.js +0 -20
  255. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +0 -88
  256. package/src/platform-implementation-js/lib/dom/simulate-key.js +0 -46
  257. package/src/platform-implementation-js/lib/dom/simulate-mouse-event.js +0 -16
  258. package/src/platform-implementation-js/lib/dom/trigger-relay-event.js +0 -7
  259. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.js +0 -25
  260. package/src/platform-implementation-js/lib/fake-window-resize.js +0 -5
  261. package/src/platform-implementation-js/lib/from-event-target-capture.js +0 -12
  262. package/src/platform-implementation-js/lib/fromEventsWithOptions.js +0 -10
  263. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +0 -124
  264. package/src/platform-implementation-js/lib/handler-registry.js +0 -67
  265. package/src/platform-implementation-js/lib/idMap.js +0 -40
  266. package/src/platform-implementation-js/lib/imageRequest.js +0 -8
  267. package/src/platform-implementation-js/lib/incrementName.js +0 -7
  268. package/src/platform-implementation-js/lib/inject-script-EMBEDDED.js +0 -8
  269. package/src/platform-implementation-js/lib/inject-script.js +0 -33
  270. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +0 -44
  271. package/src/platform-implementation-js/lib/is-valid-app-id.js +0 -27
  272. package/src/platform-implementation-js/lib/is-valid-email.js +0 -14
  273. package/src/platform-implementation-js/lib/isNotNil.js +0 -5
  274. package/src/platform-implementation-js/lib/isStreakAppId.js +0 -11
  275. package/src/platform-implementation-js/lib/logger.js +0 -439
  276. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +0 -10
  277. package/src/platform-implementation-js/lib/persistent-queue.js +0 -107
  278. package/src/platform-implementation-js/lib/populateRouteID.js +0 -17
  279. package/src/platform-implementation-js/lib/react/ElementContainer.js +0 -26
  280. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +0 -8
  281. package/src/platform-implementation-js/lib/safe-event-emitter.js +0 -16
  282. package/src/platform-implementation-js/lib/stopper-pool.js +0 -41
  283. package/src/platform-implementation-js/lib/stream-wait-for.js +0 -30
  284. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +0 -12
  285. package/src/platform-implementation-js/lib/toLiveSet.js +0 -22
  286. package/src/platform-implementation-js/lib/wait-for.js +0 -38
  287. package/src/platform-implementation-js/lib/waitForAsync.js +0 -18
  288. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +0 -5
  289. package/src/platform-implementation-js/main.js +0 -42
  290. package/src/platform-implementation-js/namespaces/app-menu.js +0 -81
  291. package/src/platform-implementation-js/namespaces/butter-bar.js +0 -163
  292. package/src/platform-implementation-js/namespaces/compose.js +0 -59
  293. package/src/platform-implementation-js/namespaces/conversations.js +0 -83
  294. package/src/platform-implementation-js/namespaces/global.js +0 -30
  295. package/src/platform-implementation-js/namespaces/keyboard.js +0 -30
  296. package/src/platform-implementation-js/namespaces/lists.js +0 -40
  297. package/src/platform-implementation-js/namespaces/modal.js +0 -43
  298. package/src/platform-implementation-js/namespaces/nav-menu.js +0 -33
  299. package/src/platform-implementation-js/namespaces/router.js +0 -139
  300. package/src/platform-implementation-js/namespaces/search.js +0 -29
  301. package/src/platform-implementation-js/namespaces/toolbars.js +0 -147
  302. package/src/platform-implementation-js/namespaces/user.js +0 -57
  303. package/src/platform-implementation-js/namespaces/widgets.js +0 -73
  304. package/src/platform-implementation-js/platform-implementation.js +0 -178
  305. package/src/platform-implementation-js/views/SimpleElementView.js +0 -16
  306. package/src/platform-implementation-js/views/app-menu-item-view.js +0 -442
  307. package/src/platform-implementation-js/views/app-toolbar-button-view.js +0 -43
  308. package/src/platform-implementation-js/views/collapsible-panel-view.js +0 -256
  309. package/src/platform-implementation-js/views/collapsible-section-view.js +0 -63
  310. package/src/platform-implementation-js/views/compose-button-view.js +0 -45
  311. package/src/platform-implementation-js/views/compose-view.js +0 -310
  312. package/src/platform-implementation-js/views/content-panel-view.js +0 -36
  313. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +0 -41
  314. package/src/platform-implementation-js/views/conversations/custom-message-view.js +0 -117
  315. package/src/platform-implementation-js/views/conversations/message-view.js +0 -203
  316. package/src/platform-implementation-js/views/conversations/thread-view.js +0 -97
  317. package/src/platform-implementation-js/views/keyboard-shortcut-handle.js +0 -14
  318. package/src/platform-implementation-js/views/native-nav-item-view.js +0 -60
  319. package/src/platform-implementation-js/views/nav-item-view.js +0 -130
  320. package/src/platform-implementation-js/views/route-view/custom-route-view.js +0 -25
  321. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +0 -29
  322. package/src/platform-implementation-js/views/route-view/list-route-view.js +0 -46
  323. package/src/platform-implementation-js/views/route-view/route-view.js +0 -47
  324. package/src/platform-implementation-js/views/section-view.js +0 -60
  325. package/src/platform-implementation-js/views/thread-row-view.js +0 -90
  326. package/src/platform-implementation-js/widgets/buttons/basic-button-view-controller.js +0 -39
  327. package/src/platform-implementation-js/widgets/buttons/dropdown-button-view-controller.js +0 -98
  328. package/src/platform-implementation-js/widgets/buttons/dropdown-view.js +0 -121
  329. package/src/platform-implementation-js/widgets/drawer-view.js +0 -46
  330. package/src/platform-implementation-js/widgets/modal-view.js +0 -108
  331. package/src/platform-implementation-js/widgets/mole-view.js +0 -38
  332. package/src/platform-implementation-js/widgets/top-message-bar-view.js +0 -15
@@ -1,38 +0,0 @@
1
- import last from 'lodash/last';
2
- import * as Kefir from 'kefir';
3
- import streamWaitFor from '../../../lib/stream-wait-for';
4
- import makeMutationObserverChunkedStream from '../../../lib/dom/make-mutation-observer-chunked-stream';
5
- import makeElementChildStream from '../../../lib/dom/make-element-child-stream';
6
- export default function getMainContentElementChangedStream(GmailElementGetter) {
7
- const s = waitForMainContentContainer(GmailElementGetter)
8
- .flatMap((mainContentContainer) => makeElementChildStream(mainContentContainer)
9
- .filter(({ el }) => el.classList.contains('nH'))
10
- .flatMap(({ el, removalStream }) => makeMutationObserverChunkedStream(el, {
11
- attributes: true,
12
- attributeFilter: ['style'],
13
- })
14
- .map((x) => last(x))
15
- .toProperty(() => {
16
- return { target: el };
17
- })
18
- .filter(_isNowVisible)
19
- .map((e) => e.target)
20
- .takeUntilBy(removalStream)))
21
- .toProperty();
22
- // Make sure we always have a subscriber. The function breaks if it loses all
23
- // subscribers and then re-gains some.
24
- s.onValue(() => {
25
- // ignore, just activate
26
- });
27
- return s;
28
- }
29
- function waitForMainContentContainer(GmailElementGetter) {
30
- if (GmailElementGetter.isStandaloneComposeWindow()) {
31
- return Kefir.never();
32
- }
33
- return streamWaitFor(() => GmailElementGetter.getMainContentContainer());
34
- }
35
- function _isNowVisible(mutation) {
36
- const el = mutation.target;
37
- return el.style.display !== 'none';
38
- }
@@ -1,12 +0,0 @@
1
- import once from 'lodash/once';
2
- import makeMutationObserverChunkedStream from '../../../lib/dom/make-mutation-observer-chunked-stream';
3
- const waitForGmailModeToSettle = once(() => makeMutationObserverChunkedStream(document.body, {
4
- attributes: true,
5
- attributeFilter: ['class'],
6
- })
7
- .toProperty(() => undefined)
8
- .filter(() => document.body.classList.length > 0)
9
- .map(() => undefined)
10
- .take(1)
11
- .toProperty());
12
- export default waitForGmailModeToSettle;
@@ -1,264 +0,0 @@
1
- import once from 'lodash/once';
2
- import * as Kefir from 'kefir';
3
- import makeElementChildStream from '../../lib/dom/make-element-child-stream';
4
- import querySelector from '../../lib/dom/querySelectorOrFail';
5
- import waitForGmailModeToSettle from './gmail-element-getter/wait-for-gmail-mode-to-settle';
6
- import getMainContentElementChangedStream from './gmail-element-getter/get-main-content-element-changed-stream';
7
- import isIntegratedViewGmail from './gmail-driver/isIntegratedViewGmail';
8
- import Logger from '../../lib/logger';
9
- import waitFor from '../../lib/wait-for';
10
- /**
11
- * The selector for the new app menu https://support.google.com/mail/answer/11555490 -- FEB 2023
12
- */
13
- const APP_MENU = '.aeN.WR.a6o.anZ.nH.oy8Mbf[role=navigation]';
14
- /**
15
- * If the APP_MENU selector is not found, NAV_MENU _might_ be present.
16
- */
17
- const NAV_MENU = '.aeN.WR.nH.oy8Mbf[role=navigation]';
18
- // TODO Figure out if these functions can and should be able to return null
19
- const GmailElementGetter = {
20
- getActiveMoreMenu() {
21
- const elements = document.querySelectorAll('.J-M.aX0.aYO.jQjAxd');
22
- for (let ii = 0; ii < elements.length; ii++) {
23
- if (elements[ii].style.display !== 'none') {
24
- return elements[ii];
25
- }
26
- }
27
- return null;
28
- },
29
- getAddonSidebarContainerElement() {
30
- // only for Gmailv1 + Gmailv2-before-2018-07-30?
31
- return document.querySelector('.no > .nn.bnl');
32
- },
33
- getCompanionSidebarContentContainerElement() {
34
- return document.querySelector('.brC-brG');
35
- },
36
- // <div class="brC-aT5-aOt-Jw" role="navigation" aria-label="Side panel">
37
- getCompanionSidebarIconContainerElement() {
38
- return document.querySelector('.brC-aT5-aOt-Jw');
39
- },
40
- getComposeButton() {
41
- if (isIntegratedViewGmail()) {
42
- return document.querySelector('.aIH .aic div[role=button].L3');
43
- }
44
- return document.querySelector('[gh=cm]');
45
- },
46
- getComposeWindowContainer() {
47
- return document.querySelector('.dw .nH > .nH > .no');
48
- },
49
- getContentSectionElement() {
50
- // New method for finding the content section element that also supports
51
- // Gmail integrated view. Use it if we're in Gmail integrated view.
52
- // Otherwise, use the old method, but log a warning if the old method
53
- // finds something different than the old method, so that way we can
54
- // figure out if it's okay to swap over.
55
- const el = document.querySelector('div.nH.bkK > .nH');
56
- if (isIntegratedViewGmail()) {
57
- return el;
58
- }
59
- else {
60
- const leftNavContainer = GmailElementGetter.getLeftNavContainerElement();
61
- const oldMethodEl = leftNavContainer
62
- ? leftNavContainer.nextElementSibling.children[0]
63
- : null;
64
- if (el !== oldMethodEl) {
65
- Logger.error(new Error('getContentSectionElement old and new method inconsistency'), {
66
- elClassName: el?.className,
67
- oldMethodClassName: oldMethodEl?.className,
68
- });
69
- }
70
- return oldMethodEl;
71
- }
72
- },
73
- getFullscreenComposeWindowContainer() {
74
- return document.querySelector('.aSs .aSt');
75
- },
76
- getFullscreenComposeWindowContainerStream() {
77
- if (!document.body)
78
- throw new Error();
79
- return (makeElementChildStream(document.body)
80
- .filter(({ el }) => el.classList.contains('aSs'))
81
- .flatMap(({ el, removalStream }) => makeElementChildStream(el).takeUntilBy(removalStream))
82
- .filter(({ el }) => el.classList.contains('aSt'))
83
- // Assume that only one element will come through and will never be removed from the page.
84
- .take(1)
85
- .map(({ el }) => ({ el, removalStream: Kefir.never() }))
86
- .toProperty());
87
- },
88
- getGtalkButtons() {
89
- return document.querySelector('.aeN .aj5.J-KU-Jg');
90
- },
91
- getLeftNavContainerElement() {
92
- if (this.getAppMenu()) {
93
- return this.getAppMenuContainer()?.querySelector('.aqn.aIH') ?? null;
94
- }
95
- if (isIntegratedViewGmail()) {
96
- return document.querySelector('div[role=navigation] + div.aqn');
97
- }
98
- return document.querySelector('.aeN');
99
- },
100
- getLeftNavHeightElement() {
101
- return document.querySelector('.aeN');
102
- },
103
- getMainContentBodyContainerElement() {
104
- return document.querySelector('.no > .nn.bkK');
105
- },
106
- getMainContentContainer() {
107
- // This method used to just look for the div[role=main] element and then
108
- // return its parent, but it turns out the Contacts page does not set
109
- // role=main.
110
- return document.querySelector('div.aeF > div.nH');
111
- },
112
- getMainContentElementChangedStream: once(function () {
113
- return getMainContentElementChangedStream(this);
114
- }),
115
- getMoleParent() {
116
- return document.body.querySelector('.dw .nH > .nH > .no');
117
- },
118
- // This function checks whether we should use the old InboxSDK style of adding nav items
119
- // inline among Gmail's nav items (as opposed to the newer style where we put our nav items
120
- // in their own sections at the bottom of the leftnav).
121
- shouldAddNavItemsInline() {
122
- // There's three cases this function should return true:
123
- // - The user is in a pre-Google-Chat Hangouts-only version of Gmail (the Gmail Settings ->
124
- // Chat and Meet -> Chat menu only has the options "Hangouts On" and "Hangouts Off").
125
- // - The user has "Classic Hangouts" picked in Gmail Settings -> Chat and Meet -> Chat.
126
- // - Integrated view gmail.
127
- if (isIntegratedViewGmail()) {
128
- return true;
129
- }
130
- const leftNavElement = document.querySelector('.aeN[role=navigation], .aeN [role=navigation]');
131
- if (!leftNavElement) {
132
- throw new Error('shouldAddNavItemsInline failed to find leftNavElement');
133
- }
134
- // leftNavElement classnames depending on gmail chat & meet settings:
135
- // Old Hangouts-only Gmail
136
- // div.aeN.WR.nH.oy8Mbf.nn
137
- // (looks identical to current Gmail's chat-off-meet-off setup, but there are important
138
- // CSS differences inside the element!)
139
- // ===================
140
- // No classname difference between open/collapsed
141
- // div.ajl.aib.aZ6 (classic hangouts on left or right, google meet on/off)
142
- // ===================
143
- // Collapsed gets .bhZ class added
144
- // div.aeN.WR.nH.oy8Mbf.nn (chat off, google meet off)
145
- // div.aeN.WR.BaIAZe.anZ.nH.oy8Mbf.nn (chat off, google meet on)
146
- // div.aeN.WR.anZ.nH.oy8Mbf.nn (google chat on left, google meet on/off)
147
- // div.aeN.WR.ahu.nH.oy8Mbf.nn (google chat on right, google meet on/off)
148
- if (leftNavElement.classList.contains('aZ6')) {
149
- return true;
150
- }
151
- else {
152
- return false;
153
- }
154
- },
155
- getAppMenuAsync: once(async () => {
156
- if (!GmailElementGetter.isStandalone()) {
157
- await GmailElementGetter.waitForGmailModeToSettle();
158
- try {
159
- const element = await waitFor(() => document.querySelector(`${APP_MENU}, ${NAV_MENU}`));
160
- if (!document.querySelector(APP_MENU)) {
161
- return;
162
- }
163
- return element;
164
- }
165
- catch (e) {
166
- Logger.error(e);
167
- }
168
- }
169
- }),
170
- getAppBurgerMenu() {
171
- return document.querySelector('header[role="banner"] > div > div > div[aria-expanded]');
172
- },
173
- isAppBurgerMenuOpen() {
174
- return (this.getAppBurgerMenu()?.getAttribute('aria-expanded') === 'true' ?? false);
175
- },
176
- getAppMenuContainer() {
177
- return document.querySelector('.aqk.aql.bkL');
178
- },
179
- getAppMenu() {
180
- return document.querySelector(APP_MENU);
181
- },
182
- getAppHeader() {
183
- return document.querySelector('.oy8Mbf.qp');
184
- },
185
- getSeparateSectionNavItemMenuInjectionContainer() {
186
- return document.querySelector('.aeN');
187
- },
188
- getSameSectionNavItemMenuInjectionContainer() {
189
- if (isIntegratedViewGmail()) {
190
- return document.querySelector('.yJ .wT > .n3');
191
- }
192
- else {
193
- return document.querySelector('.aeN .n3');
194
- }
195
- },
196
- getRowListElements() {
197
- return Array.from(document.querySelectorAll('[gh=tl]'));
198
- },
199
- getScrollContainer() {
200
- return document.querySelector('div.Tm.aeJ');
201
- },
202
- getSearchInput() {
203
- return document.querySelector('form[role=search] input');
204
- },
205
- getSearchSuggestionsBoxParent() {
206
- return document.querySelector('table.gstl_50 > tbody > tr > td.gssb_e');
207
- },
208
- getSidebarContainerElement() {
209
- return document.querySelector('[role=main] table.Bs > tr .y3');
210
- },
211
- getThreadBackButton() {
212
- let toolbarElement;
213
- try {
214
- toolbarElement = GmailElementGetter.getToolbarElement();
215
- }
216
- catch (err) {
217
- return null;
218
- }
219
- return toolbarElement.querySelector('.lS');
220
- },
221
- getThreadContainerElement() {
222
- return document.querySelector('[role=main] .g.id table.Bs > tr');
223
- },
224
- getToolbarElement() {
225
- return querySelector(document, '[gh=tm]');
226
- },
227
- getTopAccountContainer() {
228
- return document.querySelector('header[role="banner"] > div:nth-child(2) > div:nth-child(2)');
229
- },
230
- isGplusEnabled() {
231
- const topAccountContainer = GmailElementGetter.getTopAccountContainer();
232
- if (!topAccountContainer) {
233
- return false;
234
- }
235
- return (topAccountContainer.querySelectorAll('a[href*="https://plus"][href*="upgrade"]').length === 0);
236
- },
237
- isDarkTheme() {
238
- return document.body.classList.contains('inboxsdk__gmail_dark_theme');
239
- },
240
- isPreviewPane() {
241
- return !!document.querySelector('.aia');
242
- },
243
- isStandalone() {
244
- return this.isStandaloneComposeWindow() || this.isStandaloneThreadWindow();
245
- },
246
- isStandaloneComposeWindow() {
247
- return (document.body.classList.contains('xE') &&
248
- document.body.classList.contains('xp'));
249
- },
250
- isStandaloneThreadWindow() {
251
- return (document.body.classList.contains('aAU') &&
252
- document.body.classList.contains('xE') &&
253
- document.body.classList.contains('Su'));
254
- },
255
- StandaloneCompose: {
256
- getComposeWindowContainer() {
257
- return document.querySelector('[role=main]');
258
- },
259
- },
260
- waitForGmailModeToSettle() {
261
- return waitForGmailModeToSettle().toPromise();
262
- },
263
- };
264
- export default GmailElementGetter;
@@ -1,201 +0,0 @@
1
- import CommonPageCommunicator from '../../lib/common-page-communicator';
2
- import { CustomDomEvent } from '../../lib/dom/custom-events';
3
- import makeMutationObserverChunkedStream from '../../lib/dom/make-mutation-observer-chunked-stream';
4
- import Kefir from 'kefir';
5
- // This is intended to be instantiated from makeXhrInterceptor, since it depends
6
- // on the injected script, and if it's not instantiated elsewhere, you know that
7
- // if you have an instance of this, then the injected script is present and this
8
- // will work.
9
- export default class GmailPageCommunicator extends CommonPageCommunicator {
10
- async getMessageDate(threadId, message) {
11
- return this._getMessageData(threadId, message, 'data-inboxsdk-sortdate', 'inboxSDKtellMeThisMessageDate');
12
- }
13
- async getMessageRecipients(threadId, message) {
14
- return this._getMessageData(threadId, message, 'data-inboxsdk-recipients', 'inboxSDKtellMeThisMessageRecipients');
15
- }
16
- async _getMessageData(threadId, message, attribute, eventName) {
17
- let data = message.getAttribute(attribute);
18
- if (!data) {
19
- const [btaiHeader, xsrfToken] = this.isUsingSyncAPI()
20
- ? await Promise.all([this.getBtaiHeader(), this.getXsrfToken()])
21
- : [null, null];
22
- message.dispatchEvent(new CustomEvent(eventName, {
23
- bubbles: true,
24
- cancelable: false,
25
- detail: {
26
- threadId,
27
- ikValue: this.getIkValue(),
28
- btaiHeader,
29
- xsrfToken,
30
- },
31
- }));
32
- data = message.getAttribute(attribute);
33
- if (!data) {
34
- await makeMutationObserverChunkedStream(message, {
35
- attributes: true,
36
- attributeFilter: [attribute],
37
- })
38
- .take(1)
39
- .toPromise();
40
- data = message.getAttribute(attribute);
41
- }
42
- }
43
- if (data && data !== 'error')
44
- return JSON.parse(data);
45
- else
46
- return null;
47
- }
48
- getThreadIdForThreadRowByDatabase(threadRow) {
49
- let threadid = threadRow.getAttribute('data-inboxsdk-threadid');
50
- if (!threadid) {
51
- threadRow.dispatchEvent(new CustomEvent(CustomDomEvent.tellMeThisThreadIdByDatabase, {
52
- bubbles: true,
53
- cancelable: false,
54
- detail: null,
55
- }));
56
- threadid = threadRow.getAttribute('data-inboxsdk-threadid');
57
- }
58
- return threadid;
59
- }
60
- getThreadIdForThreadRowByClick(threadRow) {
61
- let threadid = threadRow.getAttribute('data-inboxsdk-threadid');
62
- if (!threadid) {
63
- threadRow.dispatchEvent(new CustomEvent(CustomDomEvent.tellMeThisThreadIdByClick, {
64
- bubbles: true,
65
- cancelable: false,
66
- detail: null,
67
- }));
68
- threadid = threadRow.getAttribute('data-inboxsdk-threadid');
69
- }
70
- return threadid;
71
- }
72
- getCurrentThreadID(threadContainerElement, isPreviewedThread = false) {
73
- threadContainerElement.dispatchEvent(new CustomEvent('inboxSDKtellMeCurrentThreadId', {
74
- bubbles: true,
75
- cancelable: false,
76
- detail: { isPreviewedThread },
77
- }));
78
- const s = threadContainerElement.getAttribute('data-inboxsdk-currentthreadid');
79
- if (s == null)
80
- throw new Error('Failed to read value');
81
- return s;
82
- }
83
- getUserOriginalPreviewPaneMode() {
84
- return document.head.getAttribute('data-inboxsdk-user-preview-pane-mode');
85
- }
86
- getActionTokenValue() {
87
- const s = document.head.getAttribute('data-inboxsdk-action-token-value');
88
- if (s == null)
89
- throw new Error('Failed to read value');
90
- return s;
91
- }
92
- isUsingSyncAPI() {
93
- const s = document.head.getAttribute('data-inboxsdk-using-sync-api');
94
- if (s == null)
95
- throw new Error('Failed to read value');
96
- return s === 'true';
97
- }
98
- isConversationViewDisabled() {
99
- return new Promise((resolve) => {
100
- Kefir.fromEvents(document, 'inboxSDKgmonkeyResponse')
101
- .take(1)
102
- .onValue((event) => {
103
- resolve(event.detail);
104
- });
105
- document.dispatchEvent(new CustomEvent('inboxSDKtellMeIsConversationViewDisabled', {
106
- bubbles: false,
107
- cancelable: false,
108
- detail: null,
109
- }));
110
- });
111
- }
112
- registerSuggestionsModifier(providerID) {
113
- document.dispatchEvent(new CustomEvent('inboxSDKregisterSuggestionsModifier', {
114
- bubbles: false,
115
- cancelable: false,
116
- detail: { providerID },
117
- }));
118
- }
119
- provideAutocompleteSuggestions(providerID, query, suggestions) {
120
- document.dispatchEvent(new CustomEvent('inboxSDKprovideSuggestions', {
121
- bubbles: false,
122
- cancelable: false,
123
- detail: {
124
- providerID,
125
- query,
126
- // Filter out non-JSONifiable things
127
- suggestions: JSON.parse(JSON.stringify(suggestions)),
128
- },
129
- }));
130
- }
131
- setupCustomListResultsQuery(query) {
132
- document.dispatchEvent(new CustomEvent('inboxSDKcustomListRegisterQuery', {
133
- bubbles: false,
134
- cancelable: false,
135
- detail: { query },
136
- }));
137
- }
138
- setCustomListNewQuery(detail) {
139
- document.dispatchEvent(new CustomEvent('inboxSDKcustomListNewQuery', {
140
- bubbles: false,
141
- cancelable: false,
142
- detail,
143
- }));
144
- }
145
- setCustomListResults(query, newResults) {
146
- document.dispatchEvent(new CustomEvent('inboxSDKcustomListResults', {
147
- bubbles: false,
148
- cancelable: false,
149
- detail: { query, newResults },
150
- }));
151
- }
152
- createCustomSearchTerm(term) {
153
- document.dispatchEvent(new CustomEvent('inboxSDKcreateCustomSearchTerm', {
154
- bubbles: false,
155
- cancelable: false,
156
- detail: { term },
157
- }));
158
- }
159
- setSearchQueryReplacement(query, newQuery) {
160
- document.dispatchEvent(new CustomEvent('inboxSDKsearchReplacementReady', {
161
- bubbles: false,
162
- cancelable: false,
163
- detail: { query, newQuery },
164
- }));
165
- }
166
- registerComposeRequestModifier(keyId, appId) {
167
- const modifierId = new Date().getTime() + '_' + appId + '_' + Math.random();
168
- const detail = { modifierId };
169
- if (this.isUsingSyncAPI()) {
170
- detail.draftID = keyId;
171
- }
172
- else {
173
- detail.composeid = keyId;
174
- }
175
- document.dispatchEvent(new CustomEvent('inboxSDKregisterComposeRequestModifier', {
176
- detail,
177
- bubbles: false,
178
- cancelable: false,
179
- }));
180
- return modifierId;
181
- }
182
- unregisterComposeRequestModifier(keyId, modifierId) {
183
- document.dispatchEvent(new CustomEvent('inboxSDKunregisterComposeRequestModifier', {
184
- detail: { keyId, modifierId },
185
- bubbles: false,
186
- cancelable: false,
187
- }));
188
- }
189
- modifyComposeRequest(keyId, modifierId, composeParams) {
190
- const detail = { modifierId, composeParams };
191
- if (this.isUsingSyncAPI())
192
- detail.draftID = keyId;
193
- else
194
- detail.composeid = keyId;
195
- document.dispatchEvent(new CustomEvent('inboxSDKcomposeRequestModified', {
196
- detail,
197
- bubbles: false,
198
- cancelable: false,
199
- }));
200
- }
201
- }