@inboxsdk/core 1.2.5 → 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 (328) hide show
  1. package/inboxsdk.js +4462 -456
  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/inboxsdk.d.ts +29 -0
  7. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.d.ts +2 -2
  8. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.d.ts.map +1 -1
  9. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.d.ts +6 -1
  10. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.d.ts.map +1 -1
  11. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts +2 -2
  12. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts.map +1 -1
  13. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.d.ts +5 -0
  14. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.d.ts.map +1 -1
  15. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.d.ts +13 -5
  16. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.d.ts.map +1 -1
  17. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts +1 -1
  18. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts.map +1 -1
  19. package/src/platform-implementation-js/namespaces/conversations.d.ts +7 -0
  20. package/src/platform-implementation-js/namespaces/conversations.d.ts.map +1 -1
  21. package/src/platform-implementation-js/namespaces/nav-menu.d.ts +4 -2
  22. package/src/platform-implementation-js/namespaces/nav-menu.d.ts.map +1 -1
  23. package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts +12 -5
  24. package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts.map +1 -1
  25. package/src/platform-implementation-js/views/native-nav-item-view.d.ts +2 -1
  26. package/src/platform-implementation-js/views/native-nav-item-view.d.ts.map +1 -1
  27. package/src/build/exec.js +0 -26
  28. package/src/build/spawn.js +0 -17
  29. package/src/common/ajax.js +0 -90
  30. package/src/common/cachebust-url.js +0 -10
  31. package/src/common/censorHTMLstring.js +0 -37
  32. package/src/common/censorHTMLtree.js +0 -28
  33. package/src/common/censorJSONTree.js +0 -15
  34. package/src/common/connectivity-test.js +0 -21
  35. package/src/common/defer.js +0 -11
  36. package/src/common/find-parent.js +0 -10
  37. package/src/common/get-extension-id.js +0 -7
  38. package/src/common/get-or-fail.js +0 -8
  39. package/src/common/get-session-id.js +0 -14
  40. package/src/common/get-stack-trace.js +0 -6
  41. package/src/common/html-to-text.js +0 -7
  42. package/src/common/isElementVisible.js +0 -6
  43. package/src/common/load-script.js +0 -126
  44. package/src/common/log-error.js +0 -185
  45. package/src/common/quoted-split.js +0 -18
  46. package/src/common/rate-limit-queuer.js +0 -57
  47. package/src/common/rate-limit.js +0 -14
  48. package/src/common/version.js +0 -8
  49. package/src/inboxsdk-js/header.js +0 -19
  50. package/src/inboxsdk-js/inboxsdk-NONREMOTE-INTEGRATED-PAGEWORLD.js +0 -4
  51. package/src/inboxsdk-js/inboxsdk-NONREMOTE.js +0 -4
  52. package/src/inboxsdk-js/inboxsdk-REMOTE.js +0 -2
  53. package/src/inboxsdk-js/inboxsdk-TEST.js +0 -5
  54. package/src/inboxsdk-js/inboxsdk.js +0 -23
  55. package/src/inboxsdk-js/loading/load-platform-implementation-DEV.js +0 -14
  56. package/src/inboxsdk-js/loading/platform-implementation-loader.js +0 -28
  57. package/src/injected-js/gmail/constants.js +0 -2
  58. package/src/injected-js/gmail/modify-suggestions.js +0 -106
  59. package/src/injected-js/gmail/setup-gmail-interceptor.js +0 -936
  60. package/src/injected-js/gmail/setup-gmonkey-handler.js +0 -49
  61. package/src/injected-js/gmail/sync-compose-processor-20220909.js +0 -298
  62. package/src/injected-js/gmail/sync-compose-processor.js +0 -55
  63. package/src/injected-js/gmail/sync-compose-request-processor.js +0 -109
  64. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +0 -71
  65. package/src/injected-js/gmail/thread-identifier/index.js +0 -133
  66. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +0 -61
  67. package/src/injected-js/injected-logger.js +0 -50
  68. package/src/injected-js/main.js +0 -49
  69. package/src/injected-js/message-metadata-holder.js +0 -103
  70. package/src/injected-js/setup-data-exposer.js +0 -135
  71. package/src/injected-js/setup-error-silencer.js +0 -15
  72. package/src/injected-js/setup-event-reemitter.js +0 -47
  73. package/src/injected-js/setupCustomViewEventAssassin.js +0 -90
  74. package/src/injected-js/setupInboxCustomViewLinkFixer.js +0 -24
  75. package/src/injected-js/setupPushStateListener.js +0 -14
  76. package/src/injected-js/xhr-helper.js +0 -43
  77. package/src/injected-js/xhr-proxy-factory.js +0 -537
  78. package/src/platform-implementation-js/constants/nav-item-types.js +0 -19
  79. package/src/platform-implementation-js/constants/router.js +0 -60
  80. package/src/platform-implementation-js/constants/toolbars.js +0 -5
  81. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +0 -158
  82. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.js +0 -20
  83. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.js +0 -38
  84. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.js +0 -98
  85. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-support-item.js +0 -4
  86. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +0 -14
  87. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +0 -60
  88. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/encodeDraftUrlId.js +0 -8
  89. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +0 -47
  90. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +0 -31
  91. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-rfc-message-id-for-gmail-message-id.js +0 -12
  92. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-rfc-message-id-for-gmail-thread-id.js +0 -33
  93. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +0 -22
  94. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +0 -18
  95. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +0 -57
  96. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +0 -40
  97. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +0 -55
  98. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.js +0 -14
  99. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +0 -177
  100. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +0 -17
  101. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.js +0 -44
  102. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +0 -49
  103. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +0 -18
  104. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +0 -138
  105. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +0 -112
  106. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +0 -152
  107. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +0 -21
  108. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +0 -48
  109. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +0 -357
  110. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +0 -19
  111. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +0 -36
  112. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +0 -36
  113. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +0 -85
  114. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +0 -142
  115. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.js +0 -115
  116. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +0 -50
  117. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +0 -723
  118. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter/get-main-content-element-changed-stream.js +0 -38
  119. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter/wait-for-gmail-mode-to-settle.js +0 -12
  120. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.js +0 -264
  121. package/src/platform-implementation-js/dom-driver/gmail/gmail-page-communicator.js +0 -201
  122. package/src/platform-implementation-js/dom-driver/gmail/gmail-response-processor.js +0 -532
  123. package/src/platform-implementation-js/dom-driver/gmail/gmail-sync-response-processor.js +0 -300
  124. package/src/platform-implementation-js/dom-driver/gmail/is-compose-titlebar-light-color.js +0 -21
  125. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +0 -92
  126. package/src/platform-implementation-js/dom-driver/gmail/makePageParserTree.js +0 -28
  127. package/src/platform-implementation-js/dom-driver/gmail/pageParserOptions.js +0 -19
  128. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.js +0 -129
  129. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +0 -80
  130. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +0 -23
  131. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +0 -26
  132. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +0 -16
  133. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +0 -723
  134. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +0 -24
  135. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +0 -172
  136. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +0 -106
  137. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +0 -338
  138. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +0 -22
  139. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +0 -720
  140. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +0 -135
  141. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +0 -50
  142. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +0 -65
  143. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-status-bar.js +0 -101
  144. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +0 -66
  145. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/detectClassicRecipientsArea.js +0 -38
  146. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +0 -10
  147. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +0 -14
  148. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +0 -13
  149. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +0 -60
  150. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +0 -54
  151. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +0 -98
  152. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-information-extractor.js +0 -28
  153. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +0 -13
  154. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +0 -18
  155. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +0 -16
  156. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-recipients.js +0 -22
  157. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +0 -23
  158. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/gmail-compose-button-view.js +0 -233
  159. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +0 -19
  160. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +0 -355
  161. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +0 -21
  162. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +0 -63
  163. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/page-parser.js +0 -223
  164. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +0 -19
  165. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/set-recipients.js +0 -157
  166. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/setupLinkPopovers.js +0 -109
  167. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +0 -123
  168. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +0 -16
  169. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +0 -1542
  170. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/attachment-icon.js +0 -4
  171. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +0 -75
  172. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +0 -737
  173. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.js +0 -763
  174. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +0 -103
  175. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +0 -508
  176. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +0 -236
  177. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-support-item-view.js +0 -84
  178. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +0 -986
  179. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +0 -26
  180. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +0 -658
  181. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +0 -459
  182. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +0 -265
  183. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-color-classes.js +0 -33
  184. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-view.js +0 -325
  185. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.js +0 -61
  186. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.js +0 -58
  187. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +0 -23
  188. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.js +0 -101
  189. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/more-dropdown-button-view.js +0 -30
  190. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/more-parent-accessory-button-view.js +0 -10
  191. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +0 -42
  192. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-dropdown-view.js +0 -22
  193. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +0 -112
  194. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +0 -122
  195. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +0 -194
  196. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +0 -352
  197. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +0 -76
  198. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +0 -57
  199. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +0 -291
  200. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +0 -28
  201. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +0 -46
  202. package/src/platform-implementation-js/driver-common/getAccountUrlPart.js +0 -17
  203. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +0 -17
  204. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +0 -44
  205. package/src/platform-implementation-js/driver-common/getOriginalMessagePage.js +0 -33
  206. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +0 -18
  207. package/src/platform-implementation-js/driver-common/getSyncThreadsForSearch.js +0 -49
  208. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +0 -13
  209. package/src/platform-implementation-js/driver-common/gmailAjax.js +0 -65
  210. package/src/platform-implementation-js/driver-common/inboxAjax.js +0 -5
  211. package/src/platform-implementation-js/driver-common/render-custom-icon.js +0 -16
  212. package/src/platform-implementation-js/driver-common/requestGmailThread.js +0 -24
  213. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +0 -245
  214. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +0 -144
  215. package/src/platform-implementation-js/driver-common/sidebar/constants.js +0 -26
  216. package/src/platform-implementation-js/driver-common/update-icon.js +0 -90
  217. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +0 -1
  218. package/src/platform-implementation-js/driver-interfaces/driver.js +0 -1
  219. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +0 -1
  220. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +0 -1
  221. package/src/platform-implementation-js/lib/ErrorCollector.js +0 -47
  222. package/src/platform-implementation-js/lib/Membrane.js +0 -22
  223. package/src/platform-implementation-js/lib/ScrollableContainByScreen.js +0 -30
  224. package/src/platform-implementation-js/lib/attemptWithRetries.js +0 -16
  225. package/src/platform-implementation-js/lib/common-page-communicator.js +0 -137
  226. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +0 -35
  227. package/src/platform-implementation-js/lib/css-selector-escape.js +0 -6
  228. package/src/platform-implementation-js/lib/delay-asap.js +0 -10
  229. package/src/platform-implementation-js/lib/delay-idle.js +0 -16
  230. package/src/platform-implementation-js/lib/dom/block-and-reemit-keyboard-events.js +0 -36
  231. package/src/platform-implementation-js/lib/dom/custom-events.js +0 -5
  232. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +0 -9
  233. package/src/platform-implementation-js/lib/dom/generic-button-view.js +0 -39
  234. package/src/platform-implementation-js/lib/dom/get-insert-before-element.js +0 -39
  235. package/src/platform-implementation-js/lib/dom/get-selection.js +0 -30
  236. package/src/platform-implementation-js/lib/dom/insert-element-in-order.js +0 -38
  237. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +0 -83
  238. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +0 -12
  239. package/src/platform-implementation-js/lib/dom/keyboard-shortcut-stream.js +0 -12
  240. package/src/platform-implementation-js/lib/dom/make-element-child-stream.js +0 -79
  241. package/src/platform-implementation-js/lib/dom/make-element-stream-merger.js +0 -27
  242. package/src/platform-implementation-js/lib/dom/make-element-view-stream.js +0 -15
  243. package/src/platform-implementation-js/lib/dom/make-mutation-observer-chunked-stream.js +0 -15
  244. package/src/platform-implementation-js/lib/dom/make-mutation-observer-stream.js +0 -5
  245. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +0 -8
  246. package/src/platform-implementation-js/lib/dom/outsideClicksAndEscape.js +0 -38
  247. package/src/platform-implementation-js/lib/dom/parentNodes.js +0 -8
  248. package/src/platform-implementation-js/lib/dom/querySelectorOrFail.js +0 -6
  249. package/src/platform-implementation-js/lib/dom/reemitClickEventForReact.js +0 -22
  250. package/src/platform-implementation-js/lib/dom/set-css.js +0 -20
  251. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +0 -88
  252. package/src/platform-implementation-js/lib/dom/simulate-key.js +0 -46
  253. package/src/platform-implementation-js/lib/dom/simulate-mouse-event.js +0 -16
  254. package/src/platform-implementation-js/lib/dom/trigger-relay-event.js +0 -7
  255. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.js +0 -25
  256. package/src/platform-implementation-js/lib/fake-window-resize.js +0 -5
  257. package/src/platform-implementation-js/lib/from-event-target-capture.js +0 -12
  258. package/src/platform-implementation-js/lib/fromEventsWithOptions.js +0 -10
  259. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +0 -124
  260. package/src/platform-implementation-js/lib/handler-registry.js +0 -67
  261. package/src/platform-implementation-js/lib/idMap.js +0 -40
  262. package/src/platform-implementation-js/lib/imageRequest.js +0 -8
  263. package/src/platform-implementation-js/lib/incrementName.js +0 -7
  264. package/src/platform-implementation-js/lib/inject-script-EMBEDDED.js +0 -13
  265. package/src/platform-implementation-js/lib/inject-script.js +0 -33
  266. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +0 -44
  267. package/src/platform-implementation-js/lib/is-valid-app-id.js +0 -27
  268. package/src/platform-implementation-js/lib/is-valid-email.js +0 -14
  269. package/src/platform-implementation-js/lib/isNotNil.js +0 -5
  270. package/src/platform-implementation-js/lib/isStreakAppId.js +0 -11
  271. package/src/platform-implementation-js/lib/logger.js +0 -439
  272. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +0 -10
  273. package/src/platform-implementation-js/lib/persistent-queue.js +0 -107
  274. package/src/platform-implementation-js/lib/populateRouteID.js +0 -17
  275. package/src/platform-implementation-js/lib/react/ElementContainer.js +0 -26
  276. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +0 -8
  277. package/src/platform-implementation-js/lib/safe-event-emitter.js +0 -16
  278. package/src/platform-implementation-js/lib/stopper-pool.js +0 -41
  279. package/src/platform-implementation-js/lib/stream-wait-for.js +0 -30
  280. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +0 -12
  281. package/src/platform-implementation-js/lib/toLiveSet.js +0 -22
  282. package/src/platform-implementation-js/lib/wait-for.js +0 -38
  283. package/src/platform-implementation-js/lib/waitForAsync.js +0 -18
  284. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +0 -5
  285. package/src/platform-implementation-js/main.js +0 -42
  286. package/src/platform-implementation-js/namespaces/app-menu.js +0 -81
  287. package/src/platform-implementation-js/namespaces/butter-bar.js +0 -163
  288. package/src/platform-implementation-js/namespaces/compose.js +0 -59
  289. package/src/platform-implementation-js/namespaces/conversations.js +0 -83
  290. package/src/platform-implementation-js/namespaces/global.js +0 -30
  291. package/src/platform-implementation-js/namespaces/keyboard.js +0 -30
  292. package/src/platform-implementation-js/namespaces/lists.js +0 -40
  293. package/src/platform-implementation-js/namespaces/modal.js +0 -43
  294. package/src/platform-implementation-js/namespaces/nav-menu.js +0 -33
  295. package/src/platform-implementation-js/namespaces/router.js +0 -139
  296. package/src/platform-implementation-js/namespaces/search.js +0 -29
  297. package/src/platform-implementation-js/namespaces/toolbars.js +0 -147
  298. package/src/platform-implementation-js/namespaces/user.js +0 -57
  299. package/src/platform-implementation-js/namespaces/widgets.js +0 -73
  300. package/src/platform-implementation-js/platform-implementation.js +0 -178
  301. package/src/platform-implementation-js/views/SimpleElementView.js +0 -16
  302. package/src/platform-implementation-js/views/app-menu-item-view.js +0 -442
  303. package/src/platform-implementation-js/views/app-toolbar-button-view.js +0 -43
  304. package/src/platform-implementation-js/views/collapsible-panel-view.js +0 -256
  305. package/src/platform-implementation-js/views/collapsible-section-view.js +0 -63
  306. package/src/platform-implementation-js/views/compose-button-view.js +0 -45
  307. package/src/platform-implementation-js/views/compose-view.js +0 -310
  308. package/src/platform-implementation-js/views/content-panel-view.js +0 -36
  309. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +0 -41
  310. package/src/platform-implementation-js/views/conversations/custom-message-view.js +0 -117
  311. package/src/platform-implementation-js/views/conversations/message-view.js +0 -203
  312. package/src/platform-implementation-js/views/conversations/thread-view.js +0 -97
  313. package/src/platform-implementation-js/views/keyboard-shortcut-handle.js +0 -14
  314. package/src/platform-implementation-js/views/native-nav-item-view.js +0 -60
  315. package/src/platform-implementation-js/views/nav-item-view.js +0 -130
  316. package/src/platform-implementation-js/views/route-view/custom-route-view.js +0 -25
  317. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +0 -29
  318. package/src/platform-implementation-js/views/route-view/list-route-view.js +0 -46
  319. package/src/platform-implementation-js/views/route-view/route-view.js +0 -47
  320. package/src/platform-implementation-js/views/section-view.js +0 -60
  321. package/src/platform-implementation-js/views/thread-row-view.js +0 -90
  322. package/src/platform-implementation-js/widgets/buttons/basic-button-view-controller.js +0 -39
  323. package/src/platform-implementation-js/widgets/buttons/dropdown-button-view-controller.js +0 -98
  324. package/src/platform-implementation-js/widgets/buttons/dropdown-view.js +0 -121
  325. package/src/platform-implementation-js/widgets/drawer-view.js +0 -46
  326. package/src/platform-implementation-js/widgets/modal-view.js +0 -108
  327. package/src/platform-implementation-js/widgets/mole-view.js +0 -38
  328. package/src/platform-implementation-js/widgets/top-message-bar-view.js +0 -15
@@ -1,355 +0,0 @@
1
- import { defn, defonce } from 'ud';
2
- import GmailComposeButtonView from './gmail-compose-button-view';
3
- import BasicButtonViewController from '../../../../widgets/buttons/basic-button-view-controller';
4
- import insertElementInOrder from '../../../../lib/dom/insert-element-in-order';
5
- import { simulateClick } from '../../../../lib/dom/simulate-mouse-event';
6
- import waitFor from '../../../../lib/wait-for';
7
- import Logger from '../../../../lib/logger';
8
- import querySelector from '../../../../lib/dom/querySelectorOrFail';
9
- import censorHTMLtree from '../../../../../common/censorHTMLtree';
10
- import positionFormattingToolbar from './position-formatting-toolbar';
11
- import get from '../../../../../common/get-or-fail';
12
- const memberMap = defonce(module, () => new Map());
13
- export default defn(module, function manageButtonGrouping(gmailComposeView) {
14
- if (gmailComposeView
15
- .getElement()
16
- .getAttribute('data-button-grouping-managed') === 'true') {
17
- return;
18
- }
19
- var members = {};
20
- memberMap.set(gmailComposeView, members);
21
- gmailComposeView
22
- .getElement()
23
- .setAttribute('data-button-grouping-managed', 'true');
24
- gmailComposeView
25
- .getEventStream()
26
- .filter((event) => event.eventName === 'fullscreenChanged')
27
- .debounce(10)
28
- .onValue(() => {
29
- _handleComposeFullscreenStateChanged(gmailComposeView);
30
- });
31
- gmailComposeView
32
- .getEventStream()
33
- .filter(function (event) {
34
- return event.eventName === 'buttonAdded';
35
- })
36
- .onValue(() => {
37
- groupButtonsAndAdjustToolbarPosition(gmailComposeView);
38
- });
39
- gmailComposeView
40
- .getEventStream()
41
- .filter((event) => event.eventName === 'resize' || event.eventName === 'restored')
42
- .onValue(() => {
43
- groupButtonsAndAdjustToolbarPosition(gmailComposeView);
44
- });
45
- var el = gmailComposeView.getElement();
46
- gmailComposeView.getStopper().onValue(function () {
47
- memberMap.delete(gmailComposeView);
48
- el.setAttribute('data-button-grouping-managed', 'false');
49
- });
50
- });
51
- function _handleComposeFullscreenStateChanged(gmailComposeView) {
52
- if (gmailComposeView
53
- .getElement()
54
- .querySelector('.inboxsdk__compose_groupedActionToolbar')) {
55
- _ungroupButtons(gmailComposeView);
56
- }
57
- groupButtonsAndAdjustToolbarPosition(gmailComposeView);
58
- }
59
- function _ungroupButtons(gmailComposeView) {
60
- const members = get(memberMap, gmailComposeView);
61
- if (members.groupedToolbarButtonViewController)
62
- members.groupedToolbarButtonViewController.destroy();
63
- if (members.formattingToolbarMutationObserver)
64
- members.formattingToolbarMutationObserver.disconnect();
65
- const buttonToolbar = members.groupedActionToolbarContainer
66
- .firstElementChild;
67
- if (buttonToolbar) {
68
- _moveNoOverflowButtonsToContainer(gmailComposeView, buttonToolbar);
69
- buttonToolbar.remove();
70
- const composeActionToolbar = querySelector(gmailComposeView.getElement(), '.inboxsdk__compose_actionToolbar');
71
- composeActionToolbar.innerHTML = '';
72
- composeActionToolbar.appendChild(buttonToolbar);
73
- }
74
- }
75
- function groupButtonsAndAdjustToolbarPosition(gmailComposeView) {
76
- _groupButtonsIfNeeded(gmailComposeView);
77
- _fixToolbarPosition(gmailComposeView);
78
- }
79
- const groupButtonsIfNeededMap = new WeakSet();
80
- function _groupButtonsIfNeeded(gmailComposeView) {
81
- if (groupButtonsIfNeededMap.has(gmailComposeView))
82
- return;
83
- groupButtonsIfNeededMap.add(gmailComposeView);
84
- window.requestAnimationFrame(() => {
85
- groupButtonsIfNeededMap.delete(gmailComposeView);
86
- if (gmailComposeView.isDestroyed())
87
- return;
88
- if (_doButtonsNeedToGroup(gmailComposeView)) {
89
- var groupedActionToolbarContainer = _createGroupedActionToolbarContainer(gmailComposeView);
90
- var groupToggleButtonViewController = _createGroupToggleButtonViewController(gmailComposeView);
91
- _swapToActionToolbar(gmailComposeView, groupToggleButtonViewController);
92
- _checkAndSetInitialState(gmailComposeView, groupToggleButtonViewController);
93
- _startMonitoringFormattingToolbar(gmailComposeView, groupToggleButtonViewController);
94
- gmailComposeView.getStopper().onValue(function () {
95
- groupedActionToolbarContainer.remove();
96
- groupToggleButtonViewController.destroy();
97
- });
98
- }
99
- });
100
- }
101
- function _doButtonsNeedToGroup(gmailComposeView) {
102
- const composeEl = gmailComposeView.getElement();
103
- if (composeEl.querySelector('.inboxsdk__compose_groupedActionToolbar'))
104
- return false;
105
- if (composeEl.querySelectorAll('.inboxsdk__composeButton:not([data-no-overflow])').length < 2)
106
- return false;
107
- if (areNativeToolbarButtonsGrouped(composeEl)) {
108
- return true;
109
- }
110
- return false;
111
- }
112
- const toolbarButtonStyles = new WeakMap();
113
- function areNativeToolbarButtonsGrouped(composeEl) {
114
- const nativeButtonsContainer = composeEl.querySelector('.bAK');
115
- const containerWidth = nativeButtonsContainer?.offsetWidth ?? 0;
116
- const nativeButtons = Array.from(nativeButtonsContainer?.querySelectorAll('.wG') ?? []);
117
- let buttonsWidth = 0;
118
- for (const button of nativeButtons) {
119
- const style = toolbarButtonStyles.get(button) ?? getComputedStyle(button);
120
- if (!toolbarButtonStyles.has(button)) {
121
- toolbarButtonStyles.set(button, style);
122
- }
123
- const margin = parseFloat(style.marginLeft) + parseFloat(style.marginRight);
124
- buttonsWidth += button.offsetWidth;
125
- buttonsWidth += margin;
126
- if (buttonsWidth > containerWidth) {
127
- return true;
128
- }
129
- }
130
- return false;
131
- }
132
- function _createGroupedActionToolbarContainer(gmailComposeView) {
133
- var groupedActionToolbarContainer = document.createElement('div');
134
- groupedActionToolbarContainer.classList.add('inboxsdk__compose_groupedActionToolbar');
135
- groupedActionToolbarContainer.innerHTML =
136
- '<div class="inboxsdk__compose_groupedActionToolbar_arrow"> </div>';
137
- get(memberMap, gmailComposeView).groupedActionToolbarContainer =
138
- groupedActionToolbarContainer;
139
- groupedActionToolbarContainer.style.display = 'none';
140
- return groupedActionToolbarContainer;
141
- }
142
- function _createGroupToggleButtonViewController(gmailComposeView) {
143
- var members = get(memberMap, gmailComposeView);
144
- var buttonView = _createGroupToggleButtonView();
145
- var buttonViewController = new BasicButtonViewController({
146
- buttonView: buttonView,
147
- activateFunction: function () {
148
- _toggleGroupButtonToolbar(gmailComposeView, buttonViewController);
149
- if (_isToggleExpanded()) {
150
- get(memberMap, gmailComposeView)
151
- .groupedActionToolbarContainer.querySelectorAll('.inboxsdk__composeButton')[0]
152
- .focus();
153
- }
154
- },
155
- });
156
- members.groupedActionToolbarContainer.addEventListener('keydown', function (event) {
157
- if (event.which === 27) {
158
- //escape
159
- buttonViewController.activate();
160
- buttonView.getElement().focus();
161
- event.preventDefault();
162
- event.stopPropagation();
163
- }
164
- });
165
- get(memberMap, gmailComposeView).groupedToolbarButtonViewController =
166
- buttonViewController;
167
- return buttonViewController;
168
- }
169
- function _createGroupToggleButtonView() {
170
- var buttonView = new GmailComposeButtonView({
171
- tooltip: 'More Tools',
172
- iconUrl: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAEJGlDQ1BJQ0MgUHJvZmlsZQAAOBGFVd9v21QUPolvUqQWPyBYR4eKxa9VU1u5GxqtxgZJk6XtShal6dgqJOQ6N4mpGwfb6baqT3uBNwb8AUDZAw9IPCENBmJ72fbAtElThyqqSUh76MQPISbtBVXhu3ZiJ1PEXPX6yznfOec7517bRD1fabWaGVWIlquunc8klZOnFpSeTYrSs9RLA9Sr6U4tkcvNEi7BFffO6+EdigjL7ZHu/k72I796i9zRiSJPwG4VHX0Z+AxRzNRrtksUvwf7+Gm3BtzzHPDTNgQCqwKXfZwSeNHHJz1OIT8JjtAq6xWtCLwGPLzYZi+3YV8DGMiT4VVuG7oiZpGzrZJhcs/hL49xtzH/Dy6bdfTsXYNY+5yluWO4D4neK/ZUvok/17X0HPBLsF+vuUlhfwX4j/rSfAJ4H1H0qZJ9dN7nR19frRTeBt4Fe9FwpwtN+2p1MXscGLHR9SXrmMgjONd1ZxKzpBeA71b4tNhj6JGoyFNp4GHgwUp9qplfmnFW5oTdy7NamcwCI49kv6fN5IAHgD+0rbyoBc3SOjczohbyS1drbq6pQdqumllRC/0ymTtej8gpbbuVwpQfyw66dqEZyxZKxtHpJn+tZnpnEdrYBbueF9qQn93S7HQGGHnYP7w6L+YGHNtd1FJitqPAR+hERCNOFi1i1alKO6RQnjKUxL1GNjwlMsiEhcPLYTEiT9ISbN15OY/jx4SMshe9LaJRpTvHr3C/ybFYP1PZAfwfYrPsMBtnE6SwN9ib7AhLwTrBDgUKcm06FSrTfSj187xPdVQWOk5Q8vxAfSiIUc7Z7xr6zY/+hpqwSyv0I0/QMTRb7RMgBxNodTfSPqdraz/sDjzKBrv4zu2+a2t0/HHzjd2Lbcc2sG7GtsL42K+xLfxtUgI7YHqKlqHK8HbCCXgjHT1cAdMlDetv4FnQ2lLasaOl6vmB0CMmwT/IPszSueHQqv6i/qluqF+oF9TfO2qEGTumJH0qfSv9KH0nfS/9TIp0Wboi/SRdlb6RLgU5u++9nyXYe69fYRPdil1o1WufNSdTTsp75BfllPy8/LI8G7AUuV8ek6fkvfDsCfbNDP0dvRh0CrNqTbV7LfEEGDQPJQadBtfGVMWEq3QWWdufk6ZSNsjG2PQjp3ZcnOWWing6noonSInvi0/Ex+IzAreevPhe+CawpgP1/pMTMDo64G0sTCXIM+KdOnFWRfQKdJvQzV1+Bt8OokmrdtY2yhVX2a+qrykJfMq4Ml3VR4cVzTQVz+UoNne4vcKLoyS+gyKO6EHe+75Fdt0Mbe5bRIf/wjvrVmhbqBN97RD1vxrahvBOfOYzoosH9bq94uejSOQGkVM6sN/7HelL4t10t9F4gPdVzydEOx83Gv+uNxo7XyL/FtFl8z9ZAHF4bBsrEwAAADxJREFUOBFjYKASYISa8x/NPJLFmdAMIJs7+Awi2ys000hy7EBdghHLgy+wqeYimgU+2QaPxhrZQUe6RgBYwgkWqJftAwAAAABJRU5ErkJggg==',
173
- });
174
- buttonView.addClass('inboxsdk__compose_groupedActionButton');
175
- buttonView.getElement().setAttribute('tabindex', '1');
176
- return buttonView;
177
- }
178
- function _swapToActionToolbar(gmailComposeView, buttonViewController) {
179
- const actionToolbar = querySelector(gmailComposeView.getElement(), '.inboxsdk__compose_actionToolbar > div');
180
- const actionToolbarContainer = actionToolbar.parentElement;
181
- const newActionToolbar = document.createElement('div');
182
- newActionToolbar.appendChild(buttonViewController.getView().getElement());
183
- actionToolbarContainer.appendChild(newActionToolbar);
184
- const groupedActionToolbarContainer = get(memberMap, gmailComposeView)
185
- .groupedActionToolbarContainer;
186
- groupedActionToolbarContainer.insertBefore(actionToolbar, groupedActionToolbarContainer.firstElementChild);
187
- actionToolbarContainer.appendChild(groupedActionToolbarContainer);
188
- _moveNoOverflowButtonsToActionToolbar(gmailComposeView);
189
- }
190
- function _moveNoOverflowButtonsToActionToolbar(gmailComposeView) {
191
- const actionToolbar = querySelector(gmailComposeView.getElement(), '.inboxsdk__compose_actionToolbar > div');
192
- _moveNoOverflowButtonsToContainer(gmailComposeView, actionToolbar);
193
- }
194
- function _moveNoOverflowButtonsToContainer(gmailComposeView, container) {
195
- const noOverflowButtons = gmailComposeView
196
- .getElement()
197
- .querySelectorAll('.inboxsdk__composeButton[data-no-overflow]');
198
- Array.from(noOverflowButtons).forEach((buttonElement) => insertElementInOrder(container, buttonElement, undefined, true));
199
- }
200
- function _checkAndSetInitialState(gmailComposeView, groupToggleButtonViewController) {
201
- if (_isToggleExpanded()) {
202
- _expandGroupButtonToolbar(gmailComposeView, groupToggleButtonViewController);
203
- }
204
- }
205
- function _collapseGroupButtonToolbar(gmailComposeView, buttonViewController) {
206
- get(memberMap, gmailComposeView).groupedActionToolbarContainer.style.display = 'none';
207
- gmailComposeView
208
- .getElement()
209
- .classList.remove('inboxsdk__compose_groupedActionToolbar_visible');
210
- buttonViewController.getView().deactivate();
211
- localStorage['inboxsdk__compose_groupedActionButton_state'] = 'collapsed';
212
- const bottomToolbarTable = gmailComposeView.getBottomBarTable();
213
- bottomToolbarTable.style.position = '';
214
- // when expanding the group button this can change how the body is scrolled
215
- // in gmail v2 when the body is scrolled Gmail puts a shadow border between the
216
- // toolbar and the content. We "jiggle" the scroll position by 1px to trigger Gmails
217
- // logic to show/hide the shadow border
218
- const bodyScrollContainer = gmailComposeView
219
- .getElement()
220
- .querySelector('.qz');
221
- if (bodyScrollContainer) {
222
- bodyScrollContainer.scrollTop = bodyScrollContainer.scrollTop - 1;
223
- }
224
- }
225
- function _expandGroupButtonToolbar(gmailComposeView, buttonViewController) {
226
- get(memberMap, gmailComposeView).groupedActionToolbarContainer.style.display = '';
227
- gmailComposeView
228
- .getElement()
229
- .classList.add('inboxsdk__compose_groupedActionToolbar_visible');
230
- buttonViewController.getView().activate();
231
- localStorage['inboxsdk__compose_groupedActionButton_state'] = 'expanded';
232
- _positionGroupToolbar(gmailComposeView);
233
- const formattingToolbar = gmailComposeView.getFormattingToolbar();
234
- if (formattingToolbar && formattingToolbar.style.display === '') {
235
- simulateClick(gmailComposeView.getFormattingToolbarToggleButton());
236
- }
237
- // when expanding the group button this can change how the body is scrolled
238
- // in gmail v2 when the body is scrolled Gmail puts a shadow border between the
239
- // toolbar and the content. We "jiggle" the scroll position by 1px to trigger Gmails
240
- // logic to show/hide the shadow border
241
- const bodyScrollContainer = gmailComposeView
242
- .getElement()
243
- .querySelector('.qz');
244
- if (bodyScrollContainer) {
245
- bodyScrollContainer.scrollTop = bodyScrollContainer.scrollTop + 1;
246
- }
247
- }
248
- function _toggleGroupButtonToolbar(gmailComposeView, buttonViewController) {
249
- if (_isToggleExpanded()) {
250
- _collapseGroupButtonToolbar(gmailComposeView, buttonViewController);
251
- }
252
- else {
253
- _expandGroupButtonToolbar(gmailComposeView, buttonViewController);
254
- }
255
- }
256
- function _isToggleExpanded() {
257
- return (localStorage['inboxsdk__compose_groupedActionButton_state'] === 'expanded');
258
- }
259
- const fixToolbarPositionMap = new WeakSet();
260
- function _fixToolbarPosition(gmailComposeView) {
261
- if (fixToolbarPositionMap.has(gmailComposeView))
262
- return;
263
- fixToolbarPositionMap.add(gmailComposeView);
264
- window.requestAnimationFrame(() => {
265
- fixToolbarPositionMap.delete(gmailComposeView);
266
- if (gmailComposeView.isDestroyed())
267
- return;
268
- positionFormattingToolbar(gmailComposeView);
269
- var groupedActionToolbarContainer = gmailComposeView
270
- .getElement()
271
- .querySelector('.inboxsdk__compose_groupedActionToolbar');
272
- if (!groupedActionToolbarContainer) {
273
- return;
274
- }
275
- if (groupedActionToolbarContainer.style.display === 'none') {
276
- return;
277
- }
278
- _positionGroupToolbar(gmailComposeView);
279
- });
280
- }
281
- function _positionGroupToolbar(gmailComposeView) {
282
- if (gmailComposeView.isMinimized()) {
283
- return;
284
- }
285
- var groupedActionToolbarContainer = gmailComposeView
286
- .getElement()
287
- .querySelector('.inboxsdk__compose_groupedActionToolbar');
288
- if (!groupedActionToolbarContainer) {
289
- return;
290
- }
291
- const groupedToolbarButton = querySelector(gmailComposeView.getElement(), '.inboxsdk__compose_groupedActionButton');
292
- const groupedActionToolbarArrow = querySelector(groupedActionToolbarContainer, '.inboxsdk__compose_groupedActionToolbar_arrow');
293
- groupedActionToolbarContainer.style.display = '';
294
- if (groupedToolbarButton.offsetLeft + groupedToolbarButton.clientWidth >
295
- groupedActionToolbarContainer.offsetWidth) {
296
- var marginLeft = groupedToolbarButton.clientWidth / 2 -
297
- groupedActionToolbarContainer.offsetWidth / 2 -
298
- 3;
299
- groupedActionToolbarContainer.style.left =
300
- groupedToolbarButton.offsetLeft + marginLeft + 'px';
301
- groupedActionToolbarArrow.style.left = -(marginLeft + 1) + 'px';
302
- }
303
- else {
304
- groupedActionToolbarContainer.style.left = '';
305
- groupedActionToolbarArrow.style.left =
306
- groupedToolbarButton.offsetLeft - 1 + 'px';
307
- }
308
- const bottomToolbarTable = gmailComposeView.getBottomBarTable();
309
- bottomToolbarTable.style.position = 'relative';
310
- const bottomToolbarHeight = gmailComposeView.getBottomBarTable().clientHeight;
311
- groupedActionToolbarContainer.style.bottom = `${bottomToolbarHeight + 1}px`;
312
- if (bottomToolbarHeight < 1) {
313
- const heElements = gmailComposeView
314
- .getElement()
315
- .querySelectorAll('td.HE');
316
- Logger.error(new Error('bottom toolbar had bad height'), {
317
- bottomToolbarHeight,
318
- heElementHeights: Array.from(heElements).map((el) => el.clientHeight),
319
- heElementsHTML: Array.from(heElements).map(censorHTMLtree),
320
- });
321
- }
322
- }
323
- function _startMonitoringFormattingToolbar(gmailComposeView, groupToggleButtonViewController) {
324
- waitFor(function () {
325
- if (gmailComposeView.isDestroyed())
326
- throw 'skip';
327
- return gmailComposeView.getFormattingToolbar();
328
- })
329
- .then((formattingToolbar) => {
330
- const mutationObserver = new MutationObserver(function (mutations) {
331
- const target = mutations[0].target;
332
- if (target instanceof HTMLElement &&
333
- target.style.display === '' &&
334
- localStorage['inboxsdk__compose_groupedActionButton_state'] ===
335
- 'expanded') {
336
- groupToggleButtonViewController.activate();
337
- }
338
- });
339
- mutationObserver.observe(formattingToolbar, {
340
- attributes: true,
341
- attributeFilter: ['style'],
342
- });
343
- get(memberMap, gmailComposeView).formattingToolbarMutationObserver =
344
- mutationObserver;
345
- gmailComposeView
346
- .getStopper()
347
- .onValue(() => mutationObserver.disconnect());
348
- })
349
- .catch((err) => {
350
- if (err !== 'skip') {
351
- Logger.error(err);
352
- throw err;
353
- }
354
- });
355
- }
@@ -1,21 +0,0 @@
1
- import Kefir from 'kefir';
2
- import fromEventTargetCapture from '../../../../lib/from-event-target-capture';
3
- export default function (gmailComposeView) {
4
- Kefir.merge([
5
- fromEventTargetCapture(document.body, 'mousedown'),
6
- fromEventTargetCapture(gmailComposeView.getBodyElement(), 'keydown'),
7
- gmailComposeView
8
- .getEventStream()
9
- .filter((e) => e.eventName === 'bodyChanged'),
10
- ])
11
- .takeUntilBy(gmailComposeView.getStopper())
12
- .onValue(() => {
13
- var body = gmailComposeView.getMaybeBodyElement();
14
- var selection = document.getSelection();
15
- if (body &&
16
- selection.rangeCount > 0 &&
17
- body.contains(selection.anchorNode)) {
18
- gmailComposeView.setLastSelectionRange(selection.getRangeAt(0));
19
- }
20
- });
21
- }
@@ -1,63 +0,0 @@
1
- import censorHTMLtree from '../../../../../common/censorHTMLtree';
2
- import { simulateClick } from '../../../../lib/dom/simulate-mouse-event';
3
- let hasLoggedError = false;
4
- export default function overrideEditSubject(gmailDriver, gmailComposeView) {
5
- if (!gmailComposeView.isReply())
6
- return;
7
- const menuItem = gmailComposeView
8
- .getElement()
9
- .querySelector('div.J-M.jQjAxd.HX[role=menu] > div.SK.AX > [role=menuitem]:nth-last-child(2)');
10
- if (!menuItem) {
11
- if (!hasLoggedError) {
12
- gmailDriver
13
- .getLogger()
14
- .error(new Error('could not find edit subject item'), {
15
- composeElement: censorHTMLtree(gmailComposeView.getElement()),
16
- });
17
- hasLoggedError = true;
18
- }
19
- return;
20
- }
21
- menuItem.addEventListener('click', (e) => {
22
- e.stopPropagation();
23
- }, true);
24
- menuItem.addEventListener('mouseup', (e) => {
25
- e.stopPropagation();
26
- _cloneContentToNewCompose(gmailDriver, gmailComposeView);
27
- }, true);
28
- }
29
- function _cloneContentToNewCompose(gmailDriver, gmailComposeView) {
30
- const toRecipients = gmailComposeView.getToRecipients();
31
- const ccRecipients = gmailComposeView.getCcRecipients();
32
- const bccRecipients = gmailComposeView.getBccRecipients();
33
- const fromAddress = gmailComposeView.getFromContact();
34
- const subject = gmailComposeView.getSubject();
35
- _ensureExtraContentIsVisible(gmailComposeView);
36
- const body = gmailComposeView.getHTMLContent();
37
- gmailComposeView.discard();
38
- gmailDriver
39
- .openNewComposeViewDriver()
40
- .then((newComposeView) => {
41
- if (toRecipients.length > 0)
42
- newComposeView.setToRecipients(toRecipients.map((c) => c.emailAddress));
43
- if (ccRecipients.length > 0)
44
- newComposeView.setCcRecipients(ccRecipients.map((c) => c.emailAddress));
45
- if (bccRecipients.length > 0)
46
- newComposeView.setBccRecipients(bccRecipients.map((c) => c.emailAddress));
47
- newComposeView.setFromEmail(fromAddress.emailAddress);
48
- newComposeView.setSubject(subject);
49
- newComposeView.setBodyHTML(body);
50
- setTimeout(function () {
51
- newComposeView.getSubjectInput().select();
52
- }, 1);
53
- });
54
- }
55
- function _ensureExtraContentIsVisible(gmailComposeView) {
56
- if (gmailComposeView.getBodyElement().querySelector('.gmail_extra'))
57
- return;
58
- const quoteDotsElement = gmailComposeView
59
- .getElement()
60
- .querySelector('.ajR');
61
- if (quoteDotsElement)
62
- simulateClick(quoteDotsElement);
63
- }
@@ -1,223 +0,0 @@
1
- import closest from 'closest-ng';
2
- import PageParserTree from 'page-parser-tree';
3
- import censorHTMLtree from '../../../../../common/censorHTMLtree';
4
- export function makePageParser(element, logger) {
5
- return new PageParserTree(element, {
6
- logError(err, el) {
7
- const details = {
8
- el,
9
- html: el ? censorHTMLtree(el) : null,
10
- };
11
- logger.errorSite(err, details);
12
- },
13
- tags: {},
14
- watchers: [
15
- {
16
- // For regular composes
17
- sources: [null],
18
- tag: 'recipientsCommon',
19
- selectors: [
20
- 'div',
21
- 'div',
22
- 'div[jsaction]',
23
- 'div[role=region]',
24
- 'table',
25
- 'tbody',
26
- 'tr',
27
- 'td',
28
- 'form',
29
- 'div',
30
- 'table.GS',
31
- 'tbody',
32
- 'tr.bzf',
33
- 'td.eV',
34
- 'div',
35
- 'div',
36
- ],
37
- },
38
- {
39
- // For inline composes
40
- sources: [null],
41
- tag: 'recipientsCommon',
42
- selectors: [
43
- 'div[role=region]',
44
- 'table',
45
- 'tbody',
46
- 'tr',
47
- 'td',
48
- 'form',
49
- 'div',
50
- 'table[role=presentation]',
51
- 'tbody',
52
- 'tr',
53
- 'td.Iy',
54
- 'div.fX',
55
- 'table.GS',
56
- 'tbody',
57
- 'tr.bzf',
58
- 'td.eV',
59
- 'div',
60
- 'div',
61
- ],
62
- },
63
- {
64
- sources: ['recipientsCommon'],
65
- tag: 'toRecipient',
66
- selectors: [
67
- {
68
- $or: [
69
- [
70
- 'div.anm[name="to"]',
71
- {
72
- $or: [
73
- [],
74
- // Inline reply compose
75
- ['div.aUy'],
76
- ],
77
- },
78
- 'div',
79
- 'div',
80
- 'div',
81
- 'div',
82
- '[role=listbox]',
83
- 'div',
84
- 'div',
85
- 'div[role=option][data-name]',
86
- ],
87
- [
88
- {
89
- $map: (el) => el.querySelector('textarea.vO[name=to], input[name=to]'),
90
- },
91
- { $map: (el) => el.closest('tr') },
92
- 'td.eV',
93
- 'div',
94
- 'div',
95
- '.vR',
96
- 'input[type=hidden]',
97
- { $map: (el) => el.parentElement },
98
- ],
99
- ],
100
- },
101
- ],
102
- },
103
- {
104
- sources: ['recipientsCommon'],
105
- tag: 'ccRecipient',
106
- selectors: [
107
- {
108
- $or: [
109
- [
110
- 'div.anm[name="cc"]',
111
- {
112
- $or: [
113
- [],
114
- // Inline reply compose
115
- ['div.aUy'],
116
- ],
117
- },
118
- 'div',
119
- 'div',
120
- 'div',
121
- 'div',
122
- '[role=listbox]',
123
- 'div',
124
- 'div',
125
- 'div[role=option][data-name]',
126
- ],
127
- [
128
- {
129
- $map: (el) => el.querySelector('textarea.vO[name=cc], input[name=cc]'),
130
- },
131
- { $map: (el) => el.closest('tr') },
132
- 'td.eV',
133
- 'div',
134
- 'div',
135
- '.vR',
136
- 'input[type=hidden]',
137
- { $map: (el) => el.parentElement },
138
- ],
139
- ],
140
- },
141
- ],
142
- },
143
- {
144
- sources: ['recipientsCommon'],
145
- tag: 'bccRecipient',
146
- selectors: [
147
- {
148
- $or: [
149
- [
150
- 'div.anm[name="bcc"]',
151
- {
152
- $or: [
153
- [],
154
- // Inline reply compose
155
- ['div.aUy'],
156
- ],
157
- },
158
- 'div',
159
- 'div',
160
- 'div',
161
- 'div',
162
- '[role=listbox]',
163
- 'div',
164
- 'div',
165
- 'div[role=option][data-name]',
166
- ],
167
- [
168
- {
169
- $map: (el) => el.querySelector('textarea.vO[name=bcc], input[name=bcc]'),
170
- },
171
- { $map: (el) => el.closest('tr') },
172
- 'td.eV',
173
- 'div',
174
- 'div',
175
- '.vR',
176
- 'input[type=hidden]',
177
- { $map: (el) => el.parentElement },
178
- ],
179
- ],
180
- },
181
- ],
182
- },
183
- ],
184
- finders: {
185
- toRecipient: {
186
- fn: (root) => getRecipientChips(root, 'to'),
187
- },
188
- ccRecipient: {
189
- fn: (root) => getRecipientChips(root, 'cc'),
190
- },
191
- bccRecipient: {
192
- fn: (root) => getRecipientChips(root, 'bcc'),
193
- },
194
- },
195
- });
196
- }
197
- export function getRecipientChips(element, addressType) {
198
- const oldRow = getOldRecipientRowForType(element, addressType);
199
- if (oldRow) {
200
- return Array.from(oldRow.querySelectorAll('.vR > input[type=hidden]')).map((el) => el.parentElement);
201
- }
202
- else {
203
- return element.querySelectorAll(`.GS .anm[name="${addressType}"] [role=listbox] [role=option][data-name]`);
204
- }
205
- }
206
- // getRecipientRowForType is recommended over this
207
- export function getRecipientRowElements(element) {
208
- return Array.prototype.filter.call(element.querySelectorAll('.GS tr, .GS .anm[name] [role=listbox]'), (tr) => !tr.classList.contains('inboxsdk__recipient_row'));
209
- }
210
- export function getRecipientRowForType(element, addressType) {
211
- // handling new recipients
212
- // https://workspaceupdates.googleblog.com/2021/10/visual-updates-for-composing-email-in-gmail.html
213
- return element.querySelector(`.GS .anm[name="${addressType}"] [role=listbox]`);
214
- }
215
- export function getOldRecipientRowForType(element, addressType) {
216
- const input = element.querySelector(`.GS tr textarea.vO[name="${addressType}"], .GS tr input[name="${addressType}"]`);
217
- if (input) {
218
- return closest(input, 'tr');
219
- }
220
- else {
221
- return null;
222
- }
223
- }
@@ -1,19 +0,0 @@
1
- export default function positionFormattingToolbar(gmailComposeView) {
2
- const formattingToolbar = gmailComposeView.getFormattingToolbar();
3
- if (formattingToolbar && formattingToolbar.style.display === '') {
4
- const arrowElement = gmailComposeView.getFormattingToolbarArrow();
5
- const buttonElement = gmailComposeView.getFormattingToolbarToggleButton();
6
- const left = buttonElement.offsetLeft +
7
- buttonElement.clientWidth / 2 -
8
- arrowElement.offsetWidth / 2;
9
- arrowElement.style.left = left + 'px';
10
- const statusBarPrependContainer = gmailComposeView.getStatusBarPrependContainer();
11
- if (statusBarPrependContainer) {
12
- formattingToolbar.style.bottom =
13
- -1 * statusBarPrependContainer.offsetHeight + 'px';
14
- }
15
- else {
16
- formattingToolbar.style.bottom = '';
17
- }
18
- }
19
- }