@inboxsdk/core 1.2.5 → 1.2.8-0

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 (334) hide show
  1. package/inboxsdk.js +4462 -456
  2. package/inboxsdk.js.map +1 -1
  3. package/package.json +3 -2
  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-compose-view/get-address-changes-stream.d.ts +15 -1
  18. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.d.ts.map +1 -1
  19. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts +1 -1
  20. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts.map +1 -1
  21. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.d.ts +9 -0
  22. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.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/compose-view.d.ts +8 -2
  28. package/src/platform-implementation-js/views/compose-view.d.ts.map +1 -1
  29. package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts +12 -5
  30. package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts.map +1 -1
  31. package/src/platform-implementation-js/views/native-nav-item-view.d.ts +2 -1
  32. package/src/platform-implementation-js/views/native-nav-item-view.d.ts.map +1 -1
  33. package/src/build/exec.js +0 -26
  34. package/src/build/spawn.js +0 -17
  35. package/src/common/ajax.js +0 -90
  36. package/src/common/cachebust-url.js +0 -10
  37. package/src/common/censorHTMLstring.js +0 -37
  38. package/src/common/censorHTMLtree.js +0 -28
  39. package/src/common/censorJSONTree.js +0 -15
  40. package/src/common/connectivity-test.js +0 -21
  41. package/src/common/defer.js +0 -11
  42. package/src/common/find-parent.js +0 -10
  43. package/src/common/get-extension-id.js +0 -7
  44. package/src/common/get-or-fail.js +0 -8
  45. package/src/common/get-session-id.js +0 -14
  46. package/src/common/get-stack-trace.js +0 -6
  47. package/src/common/html-to-text.js +0 -7
  48. package/src/common/isElementVisible.js +0 -6
  49. package/src/common/load-script.js +0 -126
  50. package/src/common/log-error.js +0 -185
  51. package/src/common/quoted-split.js +0 -18
  52. package/src/common/rate-limit-queuer.js +0 -57
  53. package/src/common/rate-limit.js +0 -14
  54. package/src/common/version.js +0 -8
  55. package/src/inboxsdk-js/header.js +0 -19
  56. package/src/inboxsdk-js/inboxsdk-NONREMOTE-INTEGRATED-PAGEWORLD.js +0 -4
  57. package/src/inboxsdk-js/inboxsdk-NONREMOTE.js +0 -4
  58. package/src/inboxsdk-js/inboxsdk-REMOTE.js +0 -2
  59. package/src/inboxsdk-js/inboxsdk-TEST.js +0 -5
  60. package/src/inboxsdk-js/inboxsdk.js +0 -23
  61. package/src/inboxsdk-js/loading/load-platform-implementation-DEV.js +0 -14
  62. package/src/inboxsdk-js/loading/platform-implementation-loader.js +0 -28
  63. package/src/injected-js/gmail/constants.js +0 -2
  64. package/src/injected-js/gmail/modify-suggestions.js +0 -106
  65. package/src/injected-js/gmail/setup-gmail-interceptor.js +0 -936
  66. package/src/injected-js/gmail/setup-gmonkey-handler.js +0 -49
  67. package/src/injected-js/gmail/sync-compose-processor-20220909.js +0 -298
  68. package/src/injected-js/gmail/sync-compose-processor.js +0 -55
  69. package/src/injected-js/gmail/sync-compose-request-processor.js +0 -109
  70. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +0 -71
  71. package/src/injected-js/gmail/thread-identifier/index.js +0 -133
  72. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +0 -61
  73. package/src/injected-js/injected-logger.js +0 -50
  74. package/src/injected-js/main.js +0 -49
  75. package/src/injected-js/message-metadata-holder.js +0 -103
  76. package/src/injected-js/setup-data-exposer.js +0 -135
  77. package/src/injected-js/setup-error-silencer.js +0 -15
  78. package/src/injected-js/setup-event-reemitter.js +0 -47
  79. package/src/injected-js/setupCustomViewEventAssassin.js +0 -90
  80. package/src/injected-js/setupInboxCustomViewLinkFixer.js +0 -24
  81. package/src/injected-js/setupPushStateListener.js +0 -14
  82. package/src/injected-js/xhr-helper.js +0 -43
  83. package/src/injected-js/xhr-proxy-factory.js +0 -537
  84. package/src/platform-implementation-js/constants/nav-item-types.js +0 -19
  85. package/src/platform-implementation-js/constants/router.js +0 -60
  86. package/src/platform-implementation-js/constants/toolbars.js +0 -5
  87. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +0 -158
  88. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.js +0 -20
  89. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.js +0 -38
  90. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-nav-item.js +0 -98
  91. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-support-item.js +0 -4
  92. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +0 -14
  93. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +0 -60
  94. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/encodeDraftUrlId.js +0 -8
  95. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +0 -47
  96. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +0 -31
  97. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-rfc-message-id-for-gmail-message-id.js +0 -12
  98. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-rfc-message-id-for-gmail-thread-id.js +0 -33
  99. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +0 -22
  100. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +0 -18
  101. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +0 -57
  102. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +0 -40
  103. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +0 -55
  104. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.js +0 -14
  105. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +0 -177
  106. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +0 -17
  107. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.js +0 -44
  108. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +0 -49
  109. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +0 -18
  110. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +0 -138
  111. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +0 -112
  112. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +0 -152
  113. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +0 -21
  114. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +0 -48
  115. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +0 -357
  116. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +0 -19
  117. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +0 -36
  118. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +0 -36
  119. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +0 -85
  120. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +0 -142
  121. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.js +0 -115
  122. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +0 -50
  123. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +0 -723
  124. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter/get-main-content-element-changed-stream.js +0 -38
  125. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter/wait-for-gmail-mode-to-settle.js +0 -12
  126. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.js +0 -264
  127. package/src/platform-implementation-js/dom-driver/gmail/gmail-page-communicator.js +0 -201
  128. package/src/platform-implementation-js/dom-driver/gmail/gmail-response-processor.js +0 -532
  129. package/src/platform-implementation-js/dom-driver/gmail/gmail-sync-response-processor.js +0 -300
  130. package/src/platform-implementation-js/dom-driver/gmail/is-compose-titlebar-light-color.js +0 -21
  131. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +0 -92
  132. package/src/platform-implementation-js/dom-driver/gmail/makePageParserTree.js +0 -28
  133. package/src/platform-implementation-js/dom-driver/gmail/pageParserOptions.js +0 -19
  134. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.js +0 -129
  135. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +0 -80
  136. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +0 -23
  137. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +0 -26
  138. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +0 -16
  139. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +0 -723
  140. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +0 -24
  141. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +0 -172
  142. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +0 -106
  143. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +0 -338
  144. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +0 -22
  145. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +0 -720
  146. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +0 -135
  147. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +0 -50
  148. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +0 -65
  149. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-status-bar.js +0 -101
  150. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +0 -66
  151. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/detectClassicRecipientsArea.js +0 -38
  152. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +0 -10
  153. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +0 -14
  154. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +0 -13
  155. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +0 -60
  156. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +0 -54
  157. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +0 -98
  158. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-information-extractor.js +0 -28
  159. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +0 -13
  160. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +0 -18
  161. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +0 -16
  162. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-recipients.js +0 -22
  163. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +0 -23
  164. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/gmail-compose-button-view.js +0 -233
  165. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +0 -19
  166. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +0 -355
  167. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +0 -21
  168. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +0 -63
  169. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/page-parser.js +0 -223
  170. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +0 -19
  171. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/set-recipients.js +0 -157
  172. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/setupLinkPopovers.js +0 -109
  173. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +0 -123
  174. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +0 -16
  175. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +0 -1542
  176. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/attachment-icon.js +0 -4
  177. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +0 -75
  178. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +0 -737
  179. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.js +0 -763
  180. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +0 -103
  181. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +0 -508
  182. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +0 -236
  183. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-support-item-view.js +0 -84
  184. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +0 -986
  185. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +0 -26
  186. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +0 -658
  187. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +0 -459
  188. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +0 -265
  189. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-color-classes.js +0 -33
  190. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-view.js +0 -325
  191. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.js +0 -61
  192. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.js +0 -58
  193. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +0 -23
  194. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.js +0 -101
  195. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/more-dropdown-button-view.js +0 -30
  196. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/more-parent-accessory-button-view.js +0 -10
  197. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +0 -42
  198. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-dropdown-view.js +0 -22
  199. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +0 -112
  200. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +0 -122
  201. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +0 -194
  202. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +0 -352
  203. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +0 -76
  204. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +0 -57
  205. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +0 -291
  206. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +0 -28
  207. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +0 -46
  208. package/src/platform-implementation-js/driver-common/getAccountUrlPart.js +0 -17
  209. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +0 -17
  210. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +0 -44
  211. package/src/platform-implementation-js/driver-common/getOriginalMessagePage.js +0 -33
  212. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +0 -18
  213. package/src/platform-implementation-js/driver-common/getSyncThreadsForSearch.js +0 -49
  214. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +0 -13
  215. package/src/platform-implementation-js/driver-common/gmailAjax.js +0 -65
  216. package/src/platform-implementation-js/driver-common/inboxAjax.js +0 -5
  217. package/src/platform-implementation-js/driver-common/render-custom-icon.js +0 -16
  218. package/src/platform-implementation-js/driver-common/requestGmailThread.js +0 -24
  219. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +0 -245
  220. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +0 -144
  221. package/src/platform-implementation-js/driver-common/sidebar/constants.js +0 -26
  222. package/src/platform-implementation-js/driver-common/update-icon.js +0 -90
  223. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +0 -1
  224. package/src/platform-implementation-js/driver-interfaces/driver.js +0 -1
  225. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +0 -1
  226. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +0 -1
  227. package/src/platform-implementation-js/lib/ErrorCollector.js +0 -47
  228. package/src/platform-implementation-js/lib/Membrane.js +0 -22
  229. package/src/platform-implementation-js/lib/ScrollableContainByScreen.js +0 -30
  230. package/src/platform-implementation-js/lib/attemptWithRetries.js +0 -16
  231. package/src/platform-implementation-js/lib/common-page-communicator.js +0 -137
  232. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +0 -35
  233. package/src/platform-implementation-js/lib/css-selector-escape.js +0 -6
  234. package/src/platform-implementation-js/lib/delay-asap.js +0 -10
  235. package/src/platform-implementation-js/lib/delay-idle.js +0 -16
  236. package/src/platform-implementation-js/lib/dom/block-and-reemit-keyboard-events.js +0 -36
  237. package/src/platform-implementation-js/lib/dom/custom-events.js +0 -5
  238. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +0 -9
  239. package/src/platform-implementation-js/lib/dom/generic-button-view.js +0 -39
  240. package/src/platform-implementation-js/lib/dom/get-insert-before-element.js +0 -39
  241. package/src/platform-implementation-js/lib/dom/get-selection.js +0 -30
  242. package/src/platform-implementation-js/lib/dom/insert-element-in-order.js +0 -38
  243. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +0 -83
  244. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +0 -12
  245. package/src/platform-implementation-js/lib/dom/keyboard-shortcut-stream.js +0 -12
  246. package/src/platform-implementation-js/lib/dom/make-element-child-stream.js +0 -79
  247. package/src/platform-implementation-js/lib/dom/make-element-stream-merger.js +0 -27
  248. package/src/platform-implementation-js/lib/dom/make-element-view-stream.js +0 -15
  249. package/src/platform-implementation-js/lib/dom/make-mutation-observer-chunked-stream.js +0 -15
  250. package/src/platform-implementation-js/lib/dom/make-mutation-observer-stream.js +0 -5
  251. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +0 -8
  252. package/src/platform-implementation-js/lib/dom/outsideClicksAndEscape.js +0 -38
  253. package/src/platform-implementation-js/lib/dom/parentNodes.js +0 -8
  254. package/src/platform-implementation-js/lib/dom/querySelectorOrFail.js +0 -6
  255. package/src/platform-implementation-js/lib/dom/reemitClickEventForReact.js +0 -22
  256. package/src/platform-implementation-js/lib/dom/set-css.js +0 -20
  257. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +0 -88
  258. package/src/platform-implementation-js/lib/dom/simulate-key.js +0 -46
  259. package/src/platform-implementation-js/lib/dom/simulate-mouse-event.js +0 -16
  260. package/src/platform-implementation-js/lib/dom/trigger-relay-event.js +0 -7
  261. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.js +0 -25
  262. package/src/platform-implementation-js/lib/fake-window-resize.js +0 -5
  263. package/src/platform-implementation-js/lib/from-event-target-capture.js +0 -12
  264. package/src/platform-implementation-js/lib/fromEventsWithOptions.js +0 -10
  265. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +0 -124
  266. package/src/platform-implementation-js/lib/handler-registry.js +0 -67
  267. package/src/platform-implementation-js/lib/idMap.js +0 -40
  268. package/src/platform-implementation-js/lib/imageRequest.js +0 -8
  269. package/src/platform-implementation-js/lib/incrementName.js +0 -7
  270. package/src/platform-implementation-js/lib/inject-script-EMBEDDED.js +0 -13
  271. package/src/platform-implementation-js/lib/inject-script.js +0 -33
  272. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +0 -44
  273. package/src/platform-implementation-js/lib/is-valid-app-id.js +0 -27
  274. package/src/platform-implementation-js/lib/is-valid-email.js +0 -14
  275. package/src/platform-implementation-js/lib/isNotNil.js +0 -5
  276. package/src/platform-implementation-js/lib/isStreakAppId.js +0 -11
  277. package/src/platform-implementation-js/lib/logger.js +0 -439
  278. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +0 -10
  279. package/src/platform-implementation-js/lib/persistent-queue.js +0 -107
  280. package/src/platform-implementation-js/lib/populateRouteID.js +0 -17
  281. package/src/platform-implementation-js/lib/react/ElementContainer.js +0 -26
  282. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +0 -8
  283. package/src/platform-implementation-js/lib/safe-event-emitter.js +0 -16
  284. package/src/platform-implementation-js/lib/stopper-pool.js +0 -41
  285. package/src/platform-implementation-js/lib/stream-wait-for.js +0 -30
  286. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +0 -12
  287. package/src/platform-implementation-js/lib/toLiveSet.js +0 -22
  288. package/src/platform-implementation-js/lib/wait-for.js +0 -38
  289. package/src/platform-implementation-js/lib/waitForAsync.js +0 -18
  290. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +0 -5
  291. package/src/platform-implementation-js/main.js +0 -42
  292. package/src/platform-implementation-js/namespaces/app-menu.js +0 -81
  293. package/src/platform-implementation-js/namespaces/butter-bar.js +0 -163
  294. package/src/platform-implementation-js/namespaces/compose.js +0 -59
  295. package/src/platform-implementation-js/namespaces/conversations.js +0 -83
  296. package/src/platform-implementation-js/namespaces/global.js +0 -30
  297. package/src/platform-implementation-js/namespaces/keyboard.js +0 -30
  298. package/src/platform-implementation-js/namespaces/lists.js +0 -40
  299. package/src/platform-implementation-js/namespaces/modal.js +0 -43
  300. package/src/platform-implementation-js/namespaces/nav-menu.js +0 -33
  301. package/src/platform-implementation-js/namespaces/router.js +0 -139
  302. package/src/platform-implementation-js/namespaces/search.js +0 -29
  303. package/src/platform-implementation-js/namespaces/toolbars.js +0 -147
  304. package/src/platform-implementation-js/namespaces/user.js +0 -57
  305. package/src/platform-implementation-js/namespaces/widgets.js +0 -73
  306. package/src/platform-implementation-js/platform-implementation.js +0 -178
  307. package/src/platform-implementation-js/views/SimpleElementView.js +0 -16
  308. package/src/platform-implementation-js/views/app-menu-item-view.js +0 -442
  309. package/src/platform-implementation-js/views/app-toolbar-button-view.js +0 -43
  310. package/src/platform-implementation-js/views/collapsible-panel-view.js +0 -256
  311. package/src/platform-implementation-js/views/collapsible-section-view.js +0 -63
  312. package/src/platform-implementation-js/views/compose-button-view.js +0 -45
  313. package/src/platform-implementation-js/views/compose-view.js +0 -310
  314. package/src/platform-implementation-js/views/content-panel-view.js +0 -36
  315. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +0 -41
  316. package/src/platform-implementation-js/views/conversations/custom-message-view.js +0 -117
  317. package/src/platform-implementation-js/views/conversations/message-view.js +0 -203
  318. package/src/platform-implementation-js/views/conversations/thread-view.js +0 -97
  319. package/src/platform-implementation-js/views/keyboard-shortcut-handle.js +0 -14
  320. package/src/platform-implementation-js/views/native-nav-item-view.js +0 -60
  321. package/src/platform-implementation-js/views/nav-item-view.js +0 -130
  322. package/src/platform-implementation-js/views/route-view/custom-route-view.js +0 -25
  323. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +0 -29
  324. package/src/platform-implementation-js/views/route-view/list-route-view.js +0 -46
  325. package/src/platform-implementation-js/views/route-view/route-view.js +0 -47
  326. package/src/platform-implementation-js/views/section-view.js +0 -60
  327. package/src/platform-implementation-js/views/thread-row-view.js +0 -90
  328. package/src/platform-implementation-js/widgets/buttons/basic-button-view-controller.js +0 -39
  329. package/src/platform-implementation-js/widgets/buttons/dropdown-button-view-controller.js +0 -98
  330. package/src/platform-implementation-js/widgets/buttons/dropdown-view.js +0 -121
  331. package/src/platform-implementation-js/widgets/drawer-view.js +0 -46
  332. package/src/platform-implementation-js/widgets/modal-view.js +0 -108
  333. package/src/platform-implementation-js/widgets/mole-view.js +0 -38
  334. package/src/platform-implementation-js/widgets/top-message-bar-view.js +0 -15
@@ -1,135 +0,0 @@
1
- import GmailComposeButtonView from './gmail-compose-button-view';
2
- import BasicButtonViewController from '../../../../widgets/buttons/basic-button-view-controller';
3
- import DropdownButtonViewController from '../../../../widgets/buttons/dropdown-button-view-controller';
4
- import GmailDropdownView from '../../widgets/gmail-dropdown-view';
5
- import insertElementInOrder from '../../../../lib/dom/insert-element-in-order';
6
- export default function addButton(gmailComposeView, buttonDescriptorStream, groupOrderHint, extraOnClickOptions) {
7
- return new Promise((resolve) => {
8
- let buttonViewController;
9
- buttonDescriptorStream
10
- .takeUntilBy(gmailComposeView.getStopper())
11
- .onValue((buttonDescriptor) => {
12
- const buttonOptions = _processButtonDescriptor(buttonDescriptor, extraOnClickOptions, gmailComposeView.getGmailDriver());
13
- if (!buttonViewController) {
14
- if (buttonOptions) {
15
- buttonViewController = _addButton(gmailComposeView, buttonOptions, groupOrderHint);
16
- resolve({
17
- buttonViewController: buttonViewController,
18
- buttonDescriptor: buttonDescriptor,
19
- });
20
- }
21
- }
22
- else {
23
- buttonViewController.update(buttonOptions);
24
- }
25
- })
26
- .onEnd(() => {
27
- // Just in case things end without ever resolving above.
28
- resolve(null);
29
- });
30
- });
31
- }
32
- function _addButton(gmailComposeView, buttonOptions, groupOrderHint) {
33
- if (!gmailComposeView.getElement() ||
34
- !gmailComposeView.getFormattingToolbar()) {
35
- return;
36
- }
37
- let buttonViewController;
38
- if (buttonOptions.type === 'MODIFIER') {
39
- buttonViewController = _addButtonToModifierArea(gmailComposeView, buttonOptions, groupOrderHint);
40
- }
41
- else if (buttonOptions.type === 'SEND_ACTION') {
42
- buttonViewController = _addButtonToSendActionArea(gmailComposeView, buttonOptions);
43
- }
44
- gmailComposeView.getElement().dispatchEvent(new CustomEvent('buttonAdded', {
45
- bubbles: false,
46
- cancelable: false,
47
- detail: null,
48
- }));
49
- return buttonViewController;
50
- }
51
- function _addButtonToModifierArea(gmailComposeView, buttonDescriptor, groupOrderHint) {
52
- var buttonViewController = _getButtonViewController(buttonDescriptor);
53
- buttonViewController.getView().getElement().setAttribute('tabindex', '1');
54
- buttonViewController
55
- .getView()
56
- .getElement()
57
- .setAttribute('data-order-hint', String(buttonDescriptor.orderHint || 0));
58
- buttonViewController
59
- .getView()
60
- .getElement()
61
- .setAttribute('data-group-order-hint', groupOrderHint);
62
- var formattingAreaOffsetLeft = gmailComposeView._getFormattingAreaOffsetLeft();
63
- var element = buttonViewController.getView().getElement();
64
- var actionToolbar = gmailComposeView.getAdditionalActionToolbar();
65
- insertElementInOrder(actionToolbar, element);
66
- gmailComposeView.updateInsertMoreAreaLeft(formattingAreaOffsetLeft);
67
- gmailComposeView.addManagedViewController(buttonViewController);
68
- return buttonViewController;
69
- }
70
- function _addButtonToSendActionArea(gmailComposeView, buttonDescriptor) {
71
- const buttonViewController = _getButtonViewController(buttonDescriptor);
72
- buttonViewController.getView().removeClass('inboxsdk__composeButton');
73
- buttonViewController.getView().addClass('inboxsdk__compose_sendButton');
74
- buttonViewController.getView().getElement().setAttribute('tabindex', '1');
75
- const sendButtonGroupElement = gmailComposeView.getSendButtonGroup();
76
- const buttonElement = buttonViewController
77
- .getView()
78
- .getElement();
79
- const parent = sendButtonGroupElement.parentElement;
80
- parent.insertBefore(buttonElement, sendButtonGroupElement.nextSibling);
81
- gmailComposeView.addManagedViewController(buttonViewController);
82
- return buttonViewController;
83
- }
84
- function _getButtonViewController(buttonDescriptor) {
85
- const buttonView = new GmailComposeButtonView(buttonDescriptor);
86
- const options = {
87
- buttonView,
88
- ...buttonDescriptor,
89
- };
90
- let buttonViewController;
91
- if (buttonDescriptor.hasDropdown) {
92
- Object.assign(options, {
93
- dropdownViewDriverClass: GmailDropdownView,
94
- dropdownPositionOptions: {
95
- vAlign: 'top',
96
- },
97
- });
98
- buttonViewController = new DropdownButtonViewController(options);
99
- }
100
- else {
101
- buttonViewController = new BasicButtonViewController(options);
102
- }
103
- return buttonViewController;
104
- }
105
- function _processButtonDescriptor(buttonDescriptor, extraOnClickOptions, driver) {
106
- // clone the descriptor and set defaults.
107
- if (!buttonDescriptor) {
108
- return null;
109
- }
110
- const buttonOptions = {
111
- type: 'MODIFIER',
112
- ...buttonDescriptor,
113
- };
114
- const oldOnClick = buttonOptions.onClick;
115
- buttonOptions.onClick = function (event) {
116
- driver.getLogger().eventSdkActive('composeView.addedButton.click');
117
- oldOnClick({ ...extraOnClickOptions, ...event });
118
- };
119
- if (buttonOptions.hasDropdown) {
120
- buttonOptions.dropdownShowFunction = buttonOptions.onClick;
121
- }
122
- else {
123
- buttonOptions.activateFunction = buttonOptions.onClick;
124
- }
125
- buttonOptions.noArrow = true;
126
- buttonOptions.tooltip = buttonOptions.tooltip || buttonOptions.title;
127
- delete buttonOptions.title;
128
- if (buttonOptions.type === 'MODIFIER') {
129
- buttonOptions.buttonColor = 'flatIcon';
130
- }
131
- else if (buttonOptions.type === 'SEND_ACTION') {
132
- buttonOptions.buttonColor = 'blue';
133
- }
134
- return buttonOptions;
135
- }
@@ -1,50 +0,0 @@
1
- import Kefir from 'kefir';
2
- import kefirStopper from 'kefir-stopper';
3
- import insertElementInOrder from '../../../../lib/dom/insert-element-in-order';
4
- import Logger from '../../../../lib/logger';
5
- import querySelector from '../../../../lib/dom/querySelectorOrFail';
6
- import SimpleElementView from '../../../../views/SimpleElementView';
7
- export default function addComposeNotice(gmailComposeView, options) {
8
- const { orderHint } = {
9
- orderHint: 0,
10
- ...options,
11
- };
12
- const composeNotice = new ComposeNotice(gmailComposeView, orderHint);
13
- gmailComposeView
14
- .getStopper()
15
- .takeUntilBy(Kefir.fromEvents(composeNotice, 'destroy'))
16
- .onValue(() => composeNotice.destroy());
17
- return composeNotice;
18
- }
19
- class ComposeNotice extends SimpleElementView {
20
- _gmailComposeView;
21
- _orderHint;
22
- _stopper = kefirStopper();
23
- constructor(gmailComposeView, orderHint) {
24
- const el = document.createElement('div');
25
- el.style.fontFamily = 'Roboto,RobotoDraft,Helvetica,Arial,sans-serif';
26
- el.style.fontSize = '14px';
27
- super(el);
28
- this._gmailComposeView = gmailComposeView;
29
- this._orderHint = orderHint;
30
- el.className = 'inboxsdk__compose_notice';
31
- el.setAttribute('data-order-hint', String(orderHint));
32
- this._setComposeNotice();
33
- }
34
- destroy() {
35
- if (this.destroyed) {
36
- return;
37
- }
38
- super.destroy();
39
- this._stopper.destroy();
40
- }
41
- _setComposeNotice() {
42
- try {
43
- const composeTable = querySelector(this._gmailComposeView.getElement(), '.iN');
44
- insertElementInOrder(composeTable, this.el, ['data-order-hint'], true);
45
- }
46
- catch (err) {
47
- Logger.error(err);
48
- }
49
- }
50
- }
@@ -1,65 +0,0 @@
1
- import blockAndReemiteKeyboardEvents from '../../../../lib/dom/block-and-reemit-keyboard-events';
2
- import { getRecipientRowElements } from './page-parser';
3
- export default function addRecipientRow(gmailComposeView, recipientRowOptionStream) {
4
- let row;
5
- recipientRowOptionStream
6
- .takeUntilBy(gmailComposeView.getStopper())
7
- .onValue((options) => {
8
- if (row) {
9
- row.remove();
10
- row = null;
11
- }
12
- if (options) {
13
- row = _createRecipientRowElement(gmailComposeView, options);
14
- blockAndReemiteKeyboardEvents(row);
15
- }
16
- gmailComposeView.getElement().dispatchEvent(new CustomEvent('resize', {
17
- bubbles: false,
18
- cancelable: false,
19
- detail: null,
20
- }));
21
- });
22
- return () => {
23
- if (row) {
24
- row.remove();
25
- row = null;
26
- gmailComposeView.getElement().dispatchEvent(new CustomEvent('resize', {
27
- bubbles: false,
28
- cancelable: false,
29
- detail: null,
30
- }));
31
- }
32
- };
33
- }
34
- function _createRecipientRowElement(gmailComposeView, options) {
35
- var row = document.createElement('tr');
36
- var labelTD = document.createElement('td');
37
- var contentTD = document.createElement('td');
38
- row.appendChild(labelTD);
39
- row.appendChild(contentTD);
40
- row.setAttribute('class', 'inboxsdk__recipient_row');
41
- if (options.labelText) {
42
- labelTD.setAttribute('class', 'ok');
43
- var span = document.createElement('span');
44
- span.setAttribute('class', 'gO');
45
- labelTD.appendChild(span);
46
- span.textContent = options.labelText;
47
- if (options.labelClass) {
48
- labelTD.classList.add(options.labelClass);
49
- }
50
- if (options.labelTextClass) {
51
- span.classList.add(options.labelTextClass);
52
- }
53
- }
54
- if (options.el) {
55
- contentTD.setAttribute('class', 'az3');
56
- contentTD.appendChild(options.el);
57
- }
58
- var firstRowElement = getRecipientRowElements(gmailComposeView.getElement())[0];
59
- var parent = firstRowElement.parentElement;
60
- parent.insertBefore(row, firstRowElement.nextSibling);
61
- const addressBarContainer = parent.closest('.fX');
62
- addressBarContainer &&
63
- addressBarContainer.classList.add('inboxsdk__compose_addressList');
64
- return row;
65
- }
@@ -1,101 +0,0 @@
1
- import { defn } from 'ud';
2
- import Kefir from 'kefir';
3
- import kefirStopper from 'kefir-stopper';
4
- import cx from 'classnames';
5
- import insertElementInOrder from '../../../../lib/dom/insert-element-in-order';
6
- import Logger from '../../../../lib/logger';
7
- import querySelector from '../../../../lib/dom/querySelectorOrFail';
8
- import SimpleElementView from '../../../../views/SimpleElementView';
9
- export default defn(module, addStatusBar);
10
- function addStatusBar(gmailComposeView, options) {
11
- const { height, orderHint, addAboveNativeStatusBar } = {
12
- height: 40,
13
- orderHint: 0,
14
- addAboveNativeStatusBar: false,
15
- ...options,
16
- };
17
- const statusbar = new StatusBar(gmailComposeView, height, orderHint, addAboveNativeStatusBar);
18
- gmailComposeView
19
- .getStopper()
20
- .takeUntilBy(Kefir.fromEvents(statusbar, 'destroy'))
21
- .onValue(() => statusbar.destroy());
22
- return statusbar;
23
- }
24
- function createElement(orderHint, addAboveNativeStatusBar) {
25
- const el = document.createElement('div');
26
- el.className = cx('aDh', 'inboxsdk__compose_statusbar', {
27
- inboxsdk__addAboveNative: addAboveNativeStatusBar,
28
- });
29
- el.style.fontFamily = 'Roboto,RobotoDraft,Helvetica,Arial,sans-serif';
30
- el.style.fontSize = '15.6px';
31
- el.setAttribute('data-order-hint', String(orderHint));
32
- return el;
33
- }
34
- class StatusBar extends SimpleElementView {
35
- _addAboveNativeStatusBar;
36
- _gmailComposeView;
37
- _nativeStatusContainer;
38
- _prependContainer = null;
39
- _stopper = kefirStopper();
40
- constructor(gmailComposeView, height, orderHint, addAboveNativeStatusBar) {
41
- super(createElement(orderHint, addAboveNativeStatusBar));
42
- this._addAboveNativeStatusBar = addAboveNativeStatusBar;
43
- this._gmailComposeView = gmailComposeView;
44
- this._nativeStatusContainer = querySelector(gmailComposeView.getElement(), '.iN > tbody .aDj');
45
- this._setStatusBar();
46
- this.setHeight(height);
47
- }
48
- destroy() {
49
- if (this.destroyed) {
50
- return;
51
- }
52
- super.destroy();
53
- this._stopper.destroy();
54
- if (this._prependContainer &&
55
- this._prependContainer.children.length === 0) {
56
- this._prependContainer.remove();
57
- }
58
- this._updateTotalHeight();
59
- }
60
- setHeight(newHeight) {
61
- this.el.style.height = newHeight + 'px';
62
- this._updateTotalHeight();
63
- }
64
- _updateTotalHeight() {
65
- const totalAddedStatusBarHeight = Array.from(this._gmailComposeView
66
- .getElement()
67
- .querySelectorAll('.inboxsdk__compose_statusbar'))
68
- .map((el) => el.getBoundingClientRect().height)
69
- .reduce((a, b) => a + b, 0);
70
- this._gmailComposeView
71
- .getElement()
72
- .style.setProperty('--inboxsdk-total-added-statusbar-height', totalAddedStatusBarHeight + 'px');
73
- }
74
- _setStatusBar() {
75
- try {
76
- const statusArea = this._gmailComposeView.getStatusArea();
77
- this._gmailComposeView
78
- .getElement()
79
- .classList.add('inboxsdk__compose_statusbarActive');
80
- if (this._addAboveNativeStatusBar) {
81
- const prependContainer = (this._prependContainer =
82
- statusArea.querySelector('.inboxsdk__compose_statusBarPrependContainer') || document.createElement('div'));
83
- prependContainer.classList.add('inboxsdk__compose_statusBarPrependContainer');
84
- statusArea.insertAdjacentElement('afterbegin', prependContainer);
85
- insertElementInOrder(prependContainer, this.el);
86
- }
87
- else {
88
- if (this._gmailComposeView.isInlineReplyForm()) {
89
- const nativeStatusBar = querySelector(this._gmailComposeView.getElement(), '.iN > tbody .aDj .aDh .IZ');
90
- insertElementInOrder(nativeStatusBar, this.el);
91
- }
92
- else {
93
- insertElementInOrder(statusArea, this.el);
94
- }
95
- }
96
- }
97
- catch (err) {
98
- Logger.error(err);
99
- }
100
- }
101
- }
@@ -1,66 +0,0 @@
1
- import * as Kefir from 'kefir';
2
- import Logger from '../../../../lib/logger';
3
- import GmailTooltipView from '../../widgets/gmail-tooltip-view';
4
- export default function addTooltipToButton(gmailComposeView, buttonViewController, buttonDescriptor, tooltipDescriptor) {
5
- var gmailTooltipView = new GmailTooltipView(tooltipDescriptor);
6
- var tooltipStopperStream = gmailTooltipView
7
- .getStopper()
8
- .merge(gmailComposeView.getStopper());
9
- gmailComposeView
10
- .getStopper()
11
- .takeUntilBy(gmailTooltipView.getStopper())
12
- .onValue(() => gmailTooltipView.destroy());
13
- document.body.appendChild(gmailTooltipView.getElement());
14
- _anchorTooltip(gmailTooltipView, gmailComposeView, buttonViewController, buttonDescriptor);
15
- gmailComposeView
16
- .getEventStream()
17
- .filter((event) => event.eventName === 'buttonAdded' ||
18
- event.eventName === 'fullscreenChanged')
19
- .merge(gmailTooltipView
20
- .getEventStream()
21
- .filter(({ eventName }) => eventName === 'imageLoaded'))
22
- .debounce(10)
23
- .takeUntilBy(tooltipStopperStream)
24
- .onValue(_anchorTooltip.bind(null, gmailTooltipView, gmailComposeView, buttonViewController, buttonDescriptor));
25
- buttonViewController
26
- .getView()
27
- .getEventStream()
28
- .takeUntilBy(tooltipStopperStream)
29
- .filter(function (event) {
30
- return event.eventName === 'click';
31
- })
32
- .onValue(gmailTooltipView.destroy.bind(gmailTooltipView));
33
- var stoppedIntervalStream = Kefir.interval(50, undefined).takeUntilBy(tooltipStopperStream);
34
- var left = 0;
35
- var top = 0;
36
- stoppedIntervalStream
37
- .takeWhile(() => !!buttonViewController.getView() && !!gmailTooltipView.getElement())
38
- .map(() => buttonViewController.getView().getElement().getBoundingClientRect())
39
- .filter((rect) => rect.left !== left || rect.top !== top)
40
- .map((rect) => {
41
- left = rect.left;
42
- top = rect.top;
43
- return rect;
44
- })
45
- .onValue(gmailTooltipView.anchor.bind(gmailTooltipView, buttonViewController.getView().getElement(), {
46
- position: 'top',
47
- }));
48
- stoppedIntervalStream
49
- .filter(() => !buttonViewController.getView() ||
50
- !buttonViewController.getView().getElement().offsetParent)
51
- .onValue(gmailTooltipView.destroy.bind(gmailTooltipView));
52
- return gmailTooltipView;
53
- }
54
- function _anchorTooltip(gmailTooltipView, gmailComposeView, buttonViewController, buttonDescriptor) {
55
- try {
56
- gmailComposeView.ensureGroupingIsOpen(buttonDescriptor.type);
57
- setTimeout(function () {
58
- gmailTooltipView.anchor(buttonViewController.getView().getElement(), {
59
- position: 'top',
60
- });
61
- }, 10);
62
- }
63
- catch (err) {
64
- Logger.error(err);
65
- }
66
- }
@@ -1,38 +0,0 @@
1
- import once from 'lodash/once';
2
- export default once(function detectClassicRecipientsArea() {
3
- const styleSheetWithComposeRules = [...document.styleSheets].find((s) => {
4
- try {
5
- if (s.cssRules) {
6
- // Both classic and new recipients Gmail should have this rule
7
- return [...s.cssRules].find((rule) => rule instanceof CSSStyleRule &&
8
- rule.selectorText === '.aoI' &&
9
- rule.style.fontSize &&
10
- rule.style.color);
11
- }
12
- }
13
- catch (e) {
14
- // Some stylesheets are crossorigin and throw if we try to access
15
- // their rules. Don't worry about them.
16
- }
17
- return false;
18
- });
19
- if (styleSheetWithComposeRules) {
20
- // Check if we don't have any of these specific rules.
21
- // If so, we're on classic recipients Gmail.
22
- const hasOverflowYVisibleRule = [
23
- ...styleSheetWithComposeRules.cssRules,
24
- ].some((rule) => rule instanceof CSSStyleRule &&
25
- rule.selectorText === '.aoI' &&
26
- rule.style.overflowY === 'visible');
27
- if (hasOverflowYVisibleRule) {
28
- return;
29
- }
30
- const hasOverflowYAutoRule = [...styleSheetWithComposeRules.cssRules].some((rule) => rule instanceof CSSStyleRule &&
31
- rule.selectorText === '.aaZ > .M9 > .aoI' &&
32
- rule.style.overflowY === 'auto');
33
- if (hasOverflowYAutoRule) {
34
- return;
35
- }
36
- document.body.classList.add('inboxsdk__classic_gmail_recipients_area');
37
- }
38
- });
@@ -1,10 +0,0 @@
1
- import { simulateClick } from '../../../../lib/dom/simulate-mouse-event';
2
- export default function ensureAppButtonToolbarsAreClosed(gmailComposeViewElement) {
3
- var groupedButton = gmailComposeViewElement.querySelector('.inboxsdk__compose_groupedActionButton');
4
- if (!groupedButton) {
5
- return; //no group button so we're good
6
- }
7
- if (gmailComposeViewElement.classList.contains('inboxsdk__compose_groupedActionToolbar_visible')) {
8
- simulateClick(groupedButton);
9
- }
10
- }
@@ -1,14 +0,0 @@
1
- import { simulateClick } from '../../../../lib/dom/simulate-mouse-event';
2
- export default function ensureGroupingIsOpen(gmailComposeViewElement, type) {
3
- if (type === 'SEND_ACTION') {
4
- return; //we don't currently group send_actions
5
- }
6
- var groupedButton = gmailComposeViewElement.querySelector('.inboxsdk__compose_groupedActionButton');
7
- if (!groupedButton) {
8
- return; //no group button so we're good
9
- }
10
- if (gmailComposeViewElement.classList.contains('inboxsdk__compose_groupedActionToolbar_visible')) {
11
- return; //we are already visible
12
- }
13
- simulateClick(groupedButton);
14
- }
@@ -1,13 +0,0 @@
1
- export default function (gmailComposeView) {
2
- gmailComposeView.getBodyElement().focus();
3
- const lastSelectionRange = gmailComposeView.getLastSelectionRange();
4
- const selection = document.getSelection();
5
- if (!selection)
6
- throw new Error();
7
- if (lastSelectionRange &&
8
- selection.anchorNode === selection.focusNode &&
9
- selection.anchorOffset === selection.focusOffset) {
10
- selection.removeAllRanges();
11
- selection.addRange(lastSelectionRange);
12
- }
13
- }
@@ -1,60 +0,0 @@
1
- import find from 'lodash/find';
2
- import { simulateClick } from '../../../../lib/dom/simulate-mouse-event';
3
- export function getFromContact(driver, gmailComposeView) {
4
- const nameInput = gmailComposeView
5
- .getElement()
6
- .querySelector('input[name="from"]');
7
- const emailAddress = nameInput ? nameInput.value : null;
8
- if (!emailAddress) {
9
- return driver.getUserContact();
10
- }
11
- const fromContactChoices = getFromContactChoices(driver, gmailComposeView);
12
- const matchingContact = find(fromContactChoices, (contact) => contact.emailAddress === emailAddress);
13
- let name;
14
- if (!matchingContact) {
15
- name = emailAddress;
16
- driver.getLogger().error(new Error('getFromContact failed to find name'), {
17
- fromContactChoicesLength: fromContactChoices.length,
18
- });
19
- }
20
- else {
21
- name = matchingContact.name;
22
- }
23
- return {
24
- emailAddress,
25
- name,
26
- };
27
- }
28
- export function getFromContactChoices(driver, gmailComposeView) {
29
- const choiceEls = gmailComposeView
30
- .getElement()
31
- .querySelectorAll('div.J-M.jQjAxd.J-M-awS[role=menu] > div.SK.AX > div[value][role=menuitem]');
32
- if (choiceEls.length == 0) {
33
- // From field isn't present
34
- return [driver.getUserContact()];
35
- }
36
- return Array.from(choiceEls).map((item) => ({
37
- emailAddress: item.getAttribute('value') || '',
38
- name: item.textContent.replace(/<.*/, '').trim(),
39
- }));
40
- }
41
- export function setFromEmail(driver, gmailComposeView, email) {
42
- const currentFromAddress = gmailComposeView.getFromContact().emailAddress;
43
- if (currentFromAddress === email) {
44
- return;
45
- }
46
- const choiceParent = gmailComposeView
47
- .getElement()
48
- .querySelector('div.J-M.jQjAxd.J-M-awS[role=menu] > div.SK.AX');
49
- if (!choiceParent) {
50
- if (driver.getUserContact().emailAddress != email) {
51
- throw new Error('Chosen email from choice was not found');
52
- }
53
- return;
54
- }
55
- const chosenChoice = find(choiceParent.children, (item) => item.getAttribute('value') == email);
56
- if (!chosenChoice) {
57
- throw new Error('Chosen email from choice was not found');
58
- }
59
- simulateClick(chosenChoice);
60
- }
@@ -1,54 +0,0 @@
1
- const composeViewActionToolbars = new WeakMap();
2
- export default function getAdditionalActionToolbar(gmailComposeView) {
3
- var groupedActionToolbar = gmailComposeView
4
- .getElement()
5
- .querySelector('.inboxsdk__compose_groupedActionToolbar > div');
6
- if (groupedActionToolbar) {
7
- return groupedActionToolbar;
8
- }
9
- let actionToolbar = gmailComposeView
10
- .getElement()
11
- .querySelector('.inboxsdk__compose_actionToolbar > div');
12
- if (actionToolbar) {
13
- return actionToolbar;
14
- }
15
- actionToolbar = composeViewActionToolbars.get(gmailComposeView);
16
- if (!actionToolbar) {
17
- const _actionToolbar = (actionToolbar =
18
- _addActionToolbar(gmailComposeView));
19
- gmailComposeView.getStopper().onValue(() => {
20
- _actionToolbar.remove();
21
- });
22
- composeViewActionToolbars.set(gmailComposeView, actionToolbar);
23
- }
24
- return actionToolbar;
25
- }
26
- function _addActionToolbar(gmailComposeView) {
27
- const td = document.createElement('td');
28
- td.setAttribute('class', 'inboxsdk__compose_actionToolbar gU');
29
- const formattingArea = gmailComposeView.getFormattingArea();
30
- if (!formattingArea)
31
- throw new Error('formatting area missing');
32
- formattingArea.insertAdjacentElement('beforebegin', td);
33
- let parent = td.parentElement;
34
- while (parent) {
35
- if (parent.tagName === 'TABLE')
36
- break;
37
- parent = parent.parentElement;
38
- }
39
- if (parent) {
40
- const col = parent.querySelector('colgroup col');
41
- if (col) {
42
- const newCol1 = document.createElement('col');
43
- newCol1.setAttribute('class', 'inboxsdk__compose_actionToolbarColumn');
44
- const newCol2 = document.createElement('col');
45
- newCol2.setAttribute('class', 'inboxsdk__compose_separatorColumn');
46
- // want to make it <col><newCol1><newCol2> so insert in reverse order
47
- col.insertAdjacentElement('afterend', newCol2);
48
- col.insertAdjacentElement('afterend', newCol1);
49
- }
50
- }
51
- var toolbarDiv = document.createElement('div');
52
- td.appendChild(toolbarDiv);
53
- return toolbarDiv;
54
- }