@inboxsdk/core 0.2.28-alpha.4 → 0.2.28-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/inboxsdk.js +1 -1
  2. package/package.json +5 -1
  3. package/src/inboxsdk-js/check-requirements.js +7 -3
  4. package/src/inboxsdk-js/header.js +1 -0
  5. package/src/inboxsdk-js/inboxsdk-NONREMOTE-INTEGRATED-PAGEWORLD.js +5 -6
  6. package/src/inboxsdk-js/inboxsdk-NONREMOTE.js +4 -3
  7. package/src/inboxsdk-js/inboxsdk-REMOTE.js +3 -1
  8. package/src/inboxsdk-js/inboxsdk-TEST.js +4 -3
  9. package/src/inboxsdk-js/inboxsdk.js +33 -39
  10. package/src/inboxsdk-js/loading/load-platform-implementation-DEV.js +15 -18
  11. package/src/injected-js/gmail/modify-suggestions.test.js +8 -9
  12. package/src/injected-js/gmail/setup-gmail-interceptor.js +340 -579
  13. package/src/injected-js/gmail/sync-compose-request-processor.test.js +39 -49
  14. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +20 -33
  15. package/src/injected-js/gmail/thread-identifier/index.js +57 -93
  16. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +22 -31
  17. package/src/injected-js/gmail/thread-identifier/thread-row-parser.test.js +12 -28
  18. package/src/injected-js/inbox/setupAjaxInterceptor.js +64 -121
  19. package/src/injected-js/inbox/setupClickAndGetNewIframeSrc.js +53 -66
  20. package/src/injected-js/inbox/setupComposeViewDraftIDFinder.js +20 -36
  21. package/src/injected-js/inbox/setupInboxFakeWindowResizeListener.js +13 -13
  22. package/src/injected-js/main.js +11 -24
  23. package/src/injected-js/message-metadata-holder.js +52 -82
  24. package/src/injected-js/setup-data-exposer.js +89 -148
  25. package/src/injected-js/setup-error-silencer.js +21 -21
  26. package/src/injected-js/setup-event-reemitter.js +30 -22
  27. package/src/injected-js/setupInboxCustomViewLinkFixer.js +24 -29
  28. package/src/injected-js/setupPushStateListener.js +18 -11
  29. package/src/injected-js/xhr-helper.js +62 -65
  30. package/src/injected-js/xhr-proxy-factory.js +195 -445
  31. package/src/injected-js/xhr-proxy-factory.test.js +824 -991
  32. package/src/platform-implementation-js/constants/router.js +14 -9
  33. package/src/platform-implementation-js/constants/toolbars.js +8 -3
  34. package/src/platform-implementation-js/dom-driver/gmail/custom-style.js +13 -13
  35. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +115 -136
  36. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +13 -14
  37. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +27 -48
  38. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +31 -42
  39. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +30 -40
  40. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +10 -18
  41. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +21 -28
  42. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +33 -45
  43. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +31 -49
  44. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +58 -65
  45. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +40 -124
  46. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +17 -22
  47. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.test.js +10 -11
  48. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +44 -80
  49. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +19 -26
  50. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +71 -147
  51. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +91 -148
  52. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +150 -166
  53. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.test.js +70 -120
  54. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +15 -15
  55. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +44 -67
  56. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +230 -379
  57. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.test.js +121 -307
  58. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +17 -24
  59. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +41 -49
  60. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +30 -40
  61. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +28 -60
  62. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +61 -133
  63. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +30 -42
  64. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.test.js +52 -46
  65. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +354 -694
  66. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +77 -93
  67. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +35 -82
  68. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.test.js +44 -94
  69. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +12 -19
  70. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +17 -29
  71. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +26 -26
  72. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +391 -797
  73. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +7 -9
  74. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +60 -109
  75. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +95 -135
  76. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +103 -211
  77. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.test.js +61 -61
  78. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +17 -17
  79. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +188 -541
  80. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +67 -135
  81. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +27 -49
  82. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.js +7 -13
  83. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.js +9 -22
  84. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +36 -63
  85. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +38 -113
  86. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +11 -16
  87. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +11 -17
  88. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +8 -11
  89. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +27 -47
  90. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +11 -24
  91. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +59 -111
  92. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +15 -14
  93. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +11 -17
  94. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +18 -24
  95. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +19 -23
  96. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +11 -19
  97. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +141 -376
  98. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +17 -28
  99. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +34 -70
  100. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +10 -17
  101. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +83 -137
  102. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +10 -19
  103. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +632 -1190
  104. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +29 -38
  105. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +327 -617
  106. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +26 -49
  107. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +188 -380
  108. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +104 -194
  109. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +382 -811
  110. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.js +34 -58
  111. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.js +330 -581
  112. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.test.js +123 -277
  113. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +15 -35
  114. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +216 -571
  115. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +152 -336
  116. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +87 -211
  117. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +10 -11
  118. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +20 -29
  119. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +41 -76
  120. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +45 -99
  121. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +76 -128
  122. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +128 -319
  123. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +45 -78
  124. package/src/platform-implementation-js/dom-driver/inbox/__mocks__/getSidebarClassnames.js +8 -4
  125. package/src/platform-implementation-js/dom-driver/inbox/addNavItem.js +36 -54
  126. package/src/platform-implementation-js/dom-driver/inbox/addRecipientRow.js +35 -53
  127. package/src/platform-implementation-js/dom-driver/inbox/createLink.js +13 -15
  128. package/src/platform-implementation-js/dom-driver/inbox/createLink.test.js +15 -18
  129. package/src/platform-implementation-js/dom-driver/inbox/custom-style.js +14 -13
  130. package/src/platform-implementation-js/dom-driver/inbox/detection/appToolbarLocation/parser.js +14 -20
  131. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentCard/parser.js +14 -13
  132. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentOverlay/parser.js +35 -67
  133. package/src/platform-implementation-js/dom-driver/inbox/detection/chatSidebar/parser.js +16 -18
  134. package/src/platform-implementation-js/dom-driver/inbox/detection/compose/parser.js +68 -185
  135. package/src/platform-implementation-js/dom-driver/inbox/detection/message/parser.js +28 -56
  136. package/src/platform-implementation-js/dom-driver/inbox/detection/nativeDrawer/parser.js +12 -10
  137. package/src/platform-implementation-js/dom-driver/inbox/detection/searchBar/parser.js +16 -16
  138. package/src/platform-implementation-js/dom-driver/inbox/detection/thread/parser.js +24 -35
  139. package/src/platform-implementation-js/dom-driver/inbox/detection/thread-row/parser.js +37 -89
  140. package/src/platform-implementation-js/dom-driver/inbox/getComposeViewDriverLiveSet.js +56 -78
  141. package/src/platform-implementation-js/dom-driver/inbox/getInboxMessageIdForInboxThreadId.js +26 -32
  142. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.js +52 -109
  143. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.test.js +7 -8
  144. package/src/platform-implementation-js/dom-driver/inbox/gotoView.js +16 -20
  145. package/src/platform-implementation-js/dom-driver/inbox/gotoView.test.js +15 -16
  146. package/src/platform-implementation-js/dom-driver/inbox/inbox-butter-bar-driver.js +75 -83
  147. package/src/platform-implementation-js/dom-driver/inbox/inbox-driver.js +530 -822
  148. package/src/platform-implementation-js/dom-driver/inbox/inbox-page-communicator.js +48 -61
  149. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.js +9 -12
  150. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.test.js +12 -19
  151. package/src/platform-implementation-js/dom-driver/inbox/makePageParserTree.js +24 -33
  152. package/src/platform-implementation-js/dom-driver/inbox/pageParserOptions.js +201 -388
  153. package/src/platform-implementation-js/dom-driver/inbox/registerSearchSuggestionsProvider.js +249 -265
  154. package/src/platform-implementation-js/dom-driver/inbox/setupCustomAutocompleteSelectionHandling.js +84 -152
  155. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.js +55 -67
  156. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.test.js +43 -65
  157. package/src/platform-implementation-js/dom-driver/inbox/views/InboxLabelView.js +31 -56
  158. package/src/platform-implementation-js/dom-driver/inbox/views/InboxMoleViewDriver.js +191 -294
  159. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarButtonView.js +32 -45
  160. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarView.js +21 -39
  161. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-sidebar-view.js +153 -240
  162. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-button-view.js +75 -150
  163. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-tooltip-view.js +20 -37
  164. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-card-view.js +60 -114
  165. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-overlay-view.js +47 -65
  166. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +41 -52
  167. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-chat-sidebar-view.js +27 -36
  168. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-button-view.js +52 -80
  169. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-view.js +465 -649
  170. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.js +37 -58
  171. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.test.js +14 -26
  172. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +118 -235
  173. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dropdown-view.js +10 -11
  174. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dummy-route-view.js +28 -46
  175. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-message-view.js +131 -202
  176. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-modal-view.js +40 -80
  177. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-route-view.js +35 -61
  178. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-row-view.js +124 -221
  179. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.js +125 -213
  180. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.test.js +104 -126
  181. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-tooltip-view.js +36 -51
  182. package/src/platform-implementation-js/dom-driver/inbox/views/inboxNavItemView.js +158 -297
  183. package/src/platform-implementation-js/dom-driver/inbox/waitForAnimationClickBlockerGone.js +21 -35
  184. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +24 -43
  185. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +39 -68
  186. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +14 -19
  187. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +27 -35
  188. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +16 -22
  189. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +14 -14
  190. package/src/platform-implementation-js/driver-common/inboxAjax.js +12 -7
  191. package/src/platform-implementation-js/driver-common/requestGmailThread.js +19 -20
  192. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +197 -306
  193. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +113 -161
  194. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +1 -114
  195. package/src/platform-implementation-js/driver-interfaces/driver.js +1 -131
  196. package/src/platform-implementation-js/driver-interfaces/message-view-driver.js +4 -48
  197. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +1 -29
  198. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +1 -32
  199. package/src/platform-implementation-js/driver-interfaces/thread-row-view-driver.js +1 -11
  200. package/src/platform-implementation-js/lib/array-to-lifetimes.js +43 -41
  201. package/src/platform-implementation-js/lib/array-to-lifetimes.test.js +139 -155
  202. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +19 -38
  203. package/src/platform-implementation-js/lib/css-selector-escape.js +7 -3
  204. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +8 -11
  205. package/src/platform-implementation-js/lib/dom/get-selection.js +23 -52
  206. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +69 -101
  207. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +8 -10
  208. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +15 -17
  209. package/src/platform-implementation-js/lib/dom/querySelectorOne.js +8 -11
  210. package/src/platform-implementation-js/lib/dom/set-css.js +7 -3
  211. package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.js +9 -11
  212. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +32 -33
  213. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.test.js +23 -26
  214. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +86 -149
  215. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +42 -57
  216. package/src/platform-implementation-js/lib/make-revocable-function.js +19 -21
  217. package/src/platform-implementation-js/lib/make-revocable-function.test.js +20 -22
  218. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +15 -17
  219. package/src/platform-implementation-js/lib/parseParamsFromRouteID.test.js +9 -18
  220. package/src/platform-implementation-js/lib/populateRouteID.js +8 -9
  221. package/src/platform-implementation-js/lib/populateRouteID.test.js +20 -19
  222. package/src/platform-implementation-js/lib/react/ElementContainer.js +23 -20
  223. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.js +10 -9
  224. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.test.js +13 -20
  225. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +13 -18
  226. package/src/platform-implementation-js/lib/routeIDmatchesHash.test.js +11 -17
  227. package/src/platform-implementation-js/lib/shared-style.js +14 -13
  228. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +18 -17
  229. package/src/platform-implementation-js/lib/toLiveSet.js +17 -15
  230. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +6 -5
  231. package/src/platform-implementation-js/main.js +9 -24
  232. package/src/platform-implementation-js/namespaces/compose.js +37 -60
  233. package/src/platform-implementation-js/namespaces/conversations.js +52 -124
  234. package/src/platform-implementation-js/namespaces/global.js +27 -39
  235. package/src/platform-implementation-js/namespaces/keyboard.js +29 -33
  236. package/src/platform-implementation-js/namespaces/lists.js +25 -31
  237. package/src/platform-implementation-js/namespaces/modal.js +34 -28
  238. package/src/platform-implementation-js/namespaces/nav-menu.js +30 -45
  239. package/src/platform-implementation-js/namespaces/router.js +70 -137
  240. package/src/platform-implementation-js/namespaces/search.js +19 -17
  241. package/src/platform-implementation-js/namespaces/toolbars.js +71 -117
  242. package/src/platform-implementation-js/namespaces/user.js +36 -37
  243. package/src/platform-implementation-js/namespaces/widgets.js +54 -61
  244. package/src/platform-implementation-js/platform-implementation.js +98 -229
  245. package/src/platform-implementation-js/views/app-toolbar-button-view.js +26 -47
  246. package/src/platform-implementation-js/views/collapsible-section-view.js +66 -63
  247. package/src/platform-implementation-js/views/content-panel-view.js +28 -30
  248. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +21 -44
  249. package/src/platform-implementation-js/views/conversations/custom-message-view.js +44 -104
  250. package/src/platform-implementation-js/views/conversations/message-view.js +131 -202
  251. package/src/platform-implementation-js/views/conversations/thread-view.js +75 -127
  252. package/src/platform-implementation-js/views/native-nav-item-view.js +32 -65
  253. package/src/platform-implementation-js/views/nav-item-view.js +51 -115
  254. package/src/platform-implementation-js/views/route-view/custom-route-view.js +25 -20
  255. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +18 -18
  256. package/src/platform-implementation-js/views/route-view/list-route-view.js +30 -52
  257. package/src/platform-implementation-js/views/route-view/route-view.js +24 -35
  258. package/src/platform-implementation-js/views/section-view.js +60 -52
  259. package/src/platform-implementation-js/views/thread-row-view.js +49 -74
  260. package/src/platform-implementation-js/widgets/drawer-view.js +29 -36
  261. package/src/platform-implementation-js/widgets/modal-view.js +39 -68
  262. package/src/platform-implementation-js/widgets/mole-view.js +22 -22
  263. package/src/platform-implementation-js/widgets/top-message-bar-view.js +13 -10
@@ -1,74 +1,58 @@
1
- /* @flow */
2
-
3
- import asap from 'asap';
4
- import { defn } from 'ud';
5
- import find from 'lodash/find';
6
- import React from 'react';
7
- import ReactDOM from 'react-dom';
8
- import Kefir from 'kefir';
9
- import kefirStopper from 'kefir-stopper';
10
- import makeMutationObserverChunkedStream from '../../../lib/dom/make-mutation-observer-chunked-stream';
11
- import querySelector from '../../../lib/dom/querySelectorOrFail';
12
- import fromEventTargetCapture from '../../../lib/from-event-target-capture';
13
- import ElementContainer from '../../../lib/react/ElementContainer';
14
- import type {
15
- MoleViewDriver,
16
- MoleOptions,
17
- MoleButtonDescriptor,
18
- } from '../../../driver-interfaces/mole-view-driver';
19
- import reemitClickEvent from '../../../lib/dom/reemitClickEventForReact';
20
- import type InboxDriver from '../inbox-driver';
21
- import kefirBus from 'kefir-bus';
1
+ "use strict";
22
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _asap = _interopRequireDefault(require("asap"));
10
+ var _ud = require("ud");
11
+ var _find = _interopRequireDefault(require("lodash/find"));
12
+ var _react = _interopRequireDefault(require("react"));
13
+ var _reactDom = _interopRequireDefault(require("react-dom"));
14
+ var _kefir = _interopRequireDefault(require("kefir"));
15
+ var _kefirStopper = _interopRequireDefault(require("kefir-stopper"));
16
+ var _makeMutationObserverChunkedStream = _interopRequireDefault(require("../../../lib/dom/make-mutation-observer-chunked-stream"));
17
+ var _querySelectorOrFail = _interopRequireDefault(require("../../../lib/dom/querySelectorOrFail"));
18
+ var _fromEventTargetCapture = _interopRequireDefault(require("../../../lib/from-event-target-capture"));
19
+ var _ElementContainer = _interopRequireDefault(require("../../../lib/react/ElementContainer"));
20
+ var _reemitClickEventForReact = _interopRequireDefault(require("../../../lib/dom/reemitClickEventForReact"));
21
+ var _kefirBus = _interopRequireDefault(require("kefir-bus"));
23
22
  class InboxMoleViewDriver {
24
- _driver: InboxDriver;
25
- _options: MoleOptions;
26
- _stopper = kefirStopper();
27
- _eventStream = kefirBus();
28
- _element: HTMLElement;
29
- _title: string;
30
-
31
- constructor(options: MoleOptions, driver: InboxDriver) {
32
- (this: MoleViewDriver);
23
+ constructor(options, driver) {
24
+ (0, _defineProperty2.default)(this, "_stopper", (0, _kefirStopper.default)());
25
+ (0, _defineProperty2.default)(this, "_eventStream", (0, _kefirBus.default)());
26
+ this;
33
27
  this._options = options;
34
28
  this._driver = driver;
35
29
  this._element = document.createElement('div');
36
- this._element.className =
37
- 'inboxsdk__mole_view ' + (options.className || '');
30
+ this._element.className = 'inboxsdk__mole_view ' + (options.className || '');
38
31
  this._element.setAttribute('jsaction', 'global.none');
39
-
40
32
  this._title = String(this._options.title || '');
41
-
42
33
  this._render();
43
- (this._element.firstElementChild: any).style.zIndex = '1';
44
-
45
- Kefir.fromEvents(this._element, 'click')
46
- .takeUntilBy(this._stopper)
47
- .onValue((event) => {
48
- reemitClickEvent(event);
49
- });
34
+ this._element.firstElementChild.style.zIndex = '1';
35
+ _kefir.default.fromEvents(this._element, 'click').takeUntilBy(this._stopper).onValue(event => {
36
+ (0, _reemitClickEventForReact.default)(event);
37
+ });
50
38
  }
51
-
52
39
  _render() {
53
- ReactDOM.render(
54
- <MoleViewContents
55
- title={this._title}
56
- titleEl={this._options.titleEl}
57
- el={this._options.el}
58
- chrome={this._options.chrome}
59
- titleButtons={this._options.titleButtons}
60
- minimized={this.getMinimized()}
61
- onClose={() => {
62
- // React doesn't like it when you unmount a component within a React
63
- // event handler, so we do it async.
64
- asap(() => {
65
- this.destroy();
66
- });
67
- }}
68
- onSetMinimize={(minimized) => this.setMinimized(minimized)}
69
- />,
70
- this._element
71
- );
40
+ _reactDom.default.render( /*#__PURE__*/_react.default.createElement(MoleViewContents, {
41
+ title: this._title,
42
+ titleEl: this._options.titleEl,
43
+ el: this._options.el,
44
+ chrome: this._options.chrome,
45
+ titleButtons: this._options.titleButtons,
46
+ minimized: this.getMinimized(),
47
+ onClose: () => {
48
+ // React doesn't like it when you unmount a component within a React
49
+ // event handler, so we do it async.
50
+ (0, _asap.default)(() => {
51
+ this.destroy();
52
+ });
53
+ },
54
+ onSetMinimize: minimized => this.setMinimized(minimized)
55
+ }), this._element);
72
56
  }
73
57
  show() {
74
58
  if (this._element.parentElement) {
@@ -84,62 +68,42 @@ class InboxMoleViewDriver {
84
68
 
85
69
  // The extension might not populate the element until after creating the
86
70
  // mole, so calculate the width after that.
87
- asap(() => {
71
+ (0, _asap.default)(() => {
88
72
  this._setupWidth();
89
73
  });
90
74
 
91
75
  // Keep the mole as the first item in the list
92
- makeMutationObserverChunkedStream(container, { childList: true })
93
- .takeUntilBy(this._stopper)
94
- .onValue((muts) => {
95
- const composeWasAdded = muts.some((mutation) =>
96
- Array.prototype.some.call(
97
- mutation.addedNodes,
98
- (node) =>
99
- node.nodeType === 1 &&
100
- !node.classList.contains('inboxsdk__mole_view')
101
- )
102
- );
103
-
104
- if (composeWasAdded) {
105
- container.insertBefore(this._element, container.firstElementChild);
106
- }
107
- this._setupWidth();
108
- });
109
- makeMutationObserverChunkedStream(this._options.el, {
76
+ (0, _makeMutationObserverChunkedStream.default)(container, {
77
+ childList: true
78
+ }).takeUntilBy(this._stopper).onValue(muts => {
79
+ const composeWasAdded = muts.some(mutation => Array.prototype.some.call(mutation.addedNodes, node => node.nodeType === 1 && !node.classList.contains('inboxsdk__mole_view')));
80
+ if (composeWasAdded) {
81
+ container.insertBefore(this._element, container.firstElementChild);
82
+ }
83
+ this._setupWidth();
84
+ });
85
+ (0, _makeMutationObserverChunkedStream.default)(this._options.el, {
110
86
  attributes: true,
111
- attributeFilter: ['class', 'style'],
112
- })
113
- .takeUntilBy(this._stopper)
114
- .onValue(() => {
115
- this._setupWidth();
116
- });
117
- Kefir.fromEvents(this._element, 'click')
118
- .merge(fromEventTargetCapture(this._element, 'focus'))
119
- .takeUntilBy(this._stopper)
120
- .onValue(() => {
121
- this._bringToFront();
122
- });
87
+ attributeFilter: ['class', 'style']
88
+ }).takeUntilBy(this._stopper).onValue(() => {
89
+ this._setupWidth();
90
+ });
91
+ _kefir.default.fromEvents(this._element, 'click').merge((0, _fromEventTargetCapture.default)(this._element, 'focus')).takeUntilBy(this._stopper).onValue(() => {
92
+ this._bringToFront();
93
+ });
123
94
  }
124
95
  _setupWidth() {
125
- const naturalWidth = querySelector(
126
- this._element,
127
- '.inboxsdk__mole_view_inner'
128
- ).getBoundingClientRect().width;
96
+ const naturalWidth = (0, _querySelectorOrFail.default)(this._element, '.inboxsdk__mole_view_inner').getBoundingClientRect().width;
129
97
 
130
98
  // Actually set the width asynchronously in order to reduce thrashing when multiple moles are present
131
99
  // and having _setupWidth called on all together.
132
- asap(() => {
100
+ (0, _asap.default)(() => {
133
101
  this._element.style.width = naturalWidth + 'px';
134
102
 
135
103
  // If this mole is the leftmost mole/compose element in the mole-container, give it some padding-left
136
104
  // so it can't go off the screen's edge. Inbox does the same for its composeviews.
137
105
  const parent = this._element.parentElement;
138
- if (
139
- parent &&
140
- Array.prototype.indexOf.call(parent.children, this._element) ===
141
- parent.children.length - 2
142
- ) {
106
+ if (parent && Array.prototype.indexOf.call(parent.children, this._element) === parent.children.length - 2) {
143
107
  this._element.style.paddingLeft = naturalWidth + 'px';
144
108
  } else {
145
109
  this._element.style.paddingLeft = '';
@@ -149,18 +113,12 @@ class InboxMoleViewDriver {
149
113
  _bringToFront() {
150
114
  if (this._element.classList.contains('inboxsdk__mole_at_front')) return;
151
115
  this._element.classList.add('inboxsdk__mole_at_front');
152
-
153
116
  const container = this._element.parentElement;
154
- if (!(container instanceof HTMLElement))
155
- throw new Error('mole not in document');
156
- const selfIndex = Array.prototype.indexOf.call(
157
- container.children,
158
- this._element
159
- );
117
+ if (!(container instanceof HTMLElement)) throw new Error('mole not in document');
118
+ const selfIndex = Array.prototype.indexOf.call(container.children, this._element);
160
119
  if (selfIndex < 0) throw new Error('should not happen');
161
120
  const count = container.children.length;
162
-
163
- const firstComposeParent = find(container.children, isComposeParentElement);
121
+ const firstComposeParent = (0, _find.default)(container.children, isComposeParentElement);
164
122
  if (firstComposeParent) {
165
123
  // emit a fake focus event so Inbox puts this (the right-most) composeview on top
166
124
  firstComposeParent.dispatchEvent(new FocusEvent('focus'));
@@ -172,11 +130,9 @@ class InboxMoleViewDriver {
172
130
  if (child !== this._element) {
173
131
  child.classList.remove('inboxsdk__mole_at_front');
174
132
  }
175
- const zIndexedChild = find(child.children, (child) => child.style.zIndex);
133
+ const zIndexedChild = (0, _find.default)(child.children, child => child.style.zIndex);
176
134
  if (!zIndexedChild) return;
177
- zIndexedChild.style.zIndex = String(
178
- i > selfIndex ? count - (i - selfIndex) : count
179
- );
135
+ zIndexedChild.style.zIndex = String(i > selfIndex ? count - (i - selfIndex) : count);
180
136
  });
181
137
 
182
138
  // Wait until the next time either a compose is brought to the front or a
@@ -184,217 +140,158 @@ class InboxMoleViewDriver {
184
140
  // we need to put all the moles to the back. If a mole was brought to the
185
141
  // front, then do nothing because that mole's _bringToFront function will
186
142
  // handle the composes and the moles.
187
- Kefir.merge(
188
- [
189
- // The user tried to focus the compose that Inbox still thinks is at the
190
- // front.
191
- !firstComposeParent
192
- ? null
193
- : fromEventTargetCapture(firstComposeParent, 'focus'),
194
-
195
- // A new compose was added.
196
- makeMutationObserverChunkedStream(container, {
197
- childList: true,
198
- }).filter((mutations) =>
199
- mutations.some((mutation) => mutation.addedNodes.length > 0)
200
- ),
201
- ]
202
- .concat(
203
- Array.prototype.map.call(container.children, (el) => {
204
- const zIndexedChild = find(
205
- el.children,
206
- (child) => child.style.zIndex
207
- );
208
- if (!zIndexedChild) return null;
209
- const currentZindex = zIndexedChild.style.zIndex;
210
- return makeMutationObserverChunkedStream(zIndexedChild, {
211
- attributes: true,
212
- attributeFilter: ['style'],
213
- }).filter(() => zIndexedChild.style.zIndex !== currentZindex);
214
- })
215
- )
216
- .filter(Boolean)
217
- )
218
- .takeUntilBy(this._stopper)
219
- .take(1)
220
- .onValue(() => {
221
- if (this._element.classList.contains('inboxsdk__mole_at_front')) {
222
- this._element.classList.remove('inboxsdk__mole_at_front');
223
- Array.prototype.forEach.call(container.children, (child) => {
224
- if (isComposeParentElement(child)) return;
225
- const zIndexedChild = find(
226
- child.children,
227
- (child) => child.style.zIndex
228
- );
229
- if (!zIndexedChild) return;
230
- zIndexedChild.style.zIndex = '1';
231
- });
232
- }
233
- });
143
+ _kefir.default.merge([
144
+ // The user tried to focus the compose that Inbox still thinks is at the
145
+ // front.
146
+ !firstComposeParent ? null : (0, _fromEventTargetCapture.default)(firstComposeParent, 'focus'),
147
+ // A new compose was added.
148
+ (0, _makeMutationObserverChunkedStream.default)(container, {
149
+ childList: true
150
+ }).filter(mutations => mutations.some(mutation => mutation.addedNodes.length > 0))].concat(Array.prototype.map.call(container.children, el => {
151
+ const zIndexedChild = (0, _find.default)(el.children, child => child.style.zIndex);
152
+ if (!zIndexedChild) return null;
153
+ const currentZindex = zIndexedChild.style.zIndex;
154
+ return (0, _makeMutationObserverChunkedStream.default)(zIndexedChild, {
155
+ attributes: true,
156
+ attributeFilter: ['style']
157
+ }).filter(() => zIndexedChild.style.zIndex !== currentZindex);
158
+ })).filter(Boolean)).takeUntilBy(this._stopper).take(1).onValue(() => {
159
+ if (this._element.classList.contains('inboxsdk__mole_at_front')) {
160
+ this._element.classList.remove('inboxsdk__mole_at_front');
161
+ Array.prototype.forEach.call(container.children, child => {
162
+ if (isComposeParentElement(child)) return;
163
+ const zIndexedChild = (0, _find.default)(child.children, child => child.style.zIndex);
164
+ if (!zIndexedChild) return;
165
+ zIndexedChild.style.zIndex = '1';
166
+ });
167
+ }
168
+ });
234
169
  }
235
- setTitle(title: string) {
170
+ setTitle(title) {
236
171
  this._title = String(title);
237
172
  this._render();
238
173
  }
239
- setMinimized(minimized: boolean) {
174
+ setMinimized(minimized) {
240
175
  if (minimized) {
241
176
  this._element.classList.add('inboxsdk__minimized');
242
177
  this._render();
243
- this._eventStream.emit({ eventName: 'minimize' });
178
+ this._eventStream.emit({
179
+ eventName: 'minimize'
180
+ });
244
181
  } else {
245
182
  this._element.classList.remove('inboxsdk__minimized');
246
183
  this._render();
247
- this._eventStream.emit({ eventName: 'restore' });
184
+ this._eventStream.emit({
185
+ eventName: 'restore'
186
+ });
248
187
  }
249
188
  }
250
189
  getMinimized() {
251
190
  return this._element.classList.contains('inboxsdk__minimized');
252
191
  }
253
- getEventStream(): Kefir.Observable<Object> {
192
+ getEventStream() {
254
193
  return this._eventStream;
255
194
  }
256
195
  destroy() {
257
- ReactDOM.unmountComponentAtNode(this._element);
196
+ _reactDom.default.unmountComponentAtNode(this._element);
258
197
  this._stopper.destroy();
259
198
  this._eventStream.end();
260
199
  this._element.remove();
261
200
  }
262
201
  }
263
-
264
- function isComposeParentElement(el: Element): boolean {
265
- return (
266
- !el.classList.contains('inboxsdk__mole_view') && el.hasAttribute('jsaction')
267
- );
202
+ function isComposeParentElement(el) {
203
+ return !el.classList.contains('inboxsdk__mole_view') && el.hasAttribute('jsaction');
268
204
  }
269
-
270
- export default defn(module, InboxMoleViewDriver);
271
-
272
- type MoleViewContentsProps = {
273
- title: string,
274
- titleEl?: ?HTMLElement,
275
- minimizedTitleEl?: ?HTMLElement,
276
- el: HTMLElement,
277
- chrome?: ?boolean,
278
- titleButtons?: ?Array<MoleButtonDescriptor>,
279
- minimized: boolean,
280
- onClose: () => void,
281
- onSetMinimize: (minimized: boolean) => void,
282
- };
283
-
284
- class MoleViewContents extends React.Component<MoleViewContentsProps> {
205
+ var _default = (0, _ud.defn)(module, InboxMoleViewDriver);
206
+ exports.default = _default;
207
+ class MoleViewContents extends _react.default.Component {
285
208
  render() {
286
209
  let titlebar = null;
287
210
  if (this.props.chrome !== false) {
288
211
  let title;
289
212
  if (this.props.minimized && this.props.minimizedTitleEl) {
290
- title = (
291
- <ElementContainer
292
- className="inboxsdk__mole_view_title"
293
- el={this.props.minimizedTitleEl}
294
- />
295
- );
213
+ title = /*#__PURE__*/_react.default.createElement(_ElementContainer.default, {
214
+ className: "inboxsdk__mole_view_title",
215
+ el: this.props.minimizedTitleEl
216
+ });
296
217
  } else if (this.props.titleEl) {
297
- title = (
298
- <ElementContainer
299
- className="inboxsdk__mole_view_title"
300
- el={this.props.titleEl}
301
- />
302
- );
218
+ title = /*#__PURE__*/_react.default.createElement(_ElementContainer.default, {
219
+ className: "inboxsdk__mole_view_title",
220
+ el: this.props.titleEl
221
+ });
303
222
  } else {
304
- title = (
305
- <div className="inboxsdk__mole_view_title">{this.props.title}</div>
306
- );
223
+ title = /*#__PURE__*/_react.default.createElement("div", {
224
+ className: "inboxsdk__mole_view_title"
225
+ }, this.props.title);
307
226
  }
308
-
309
- const titleButtons = (this.props.titleButtons || []).map(
310
- (descriptor, i) => {
311
- return (
312
- <button
313
- type="button"
314
- key={i}
315
- title={descriptor.title}
316
- className="inboxsdk__mole_custom_title_button"
317
- onClick={(event) => {
318
- event.stopPropagation();
319
- descriptor.onClick();
320
- }}
321
- >
322
- <img
323
- className={descriptor.iconClass}
324
- src={descriptor.iconUrl}
325
- alt=""
326
- aria-hidden="true"
327
- />
328
- </button>
329
- );
227
+ const titleButtons = (this.props.titleButtons || []).map((descriptor, i) => {
228
+ return /*#__PURE__*/_react.default.createElement("button", {
229
+ type: "button",
230
+ key: i,
231
+ title: descriptor.title,
232
+ className: "inboxsdk__mole_custom_title_button",
233
+ onClick: event => {
234
+ event.stopPropagation();
235
+ descriptor.onClick();
236
+ }
237
+ }, /*#__PURE__*/_react.default.createElement("img", {
238
+ className: descriptor.iconClass,
239
+ src: descriptor.iconUrl,
240
+ alt: "",
241
+ "aria-hidden": "true"
242
+ }));
243
+ });
244
+ titlebar = /*#__PURE__*/_react.default.createElement("div", {
245
+ className: "inboxsdk__mole_view_titlebar",
246
+ onClick: () => {
247
+ if (this.props.minimized) {
248
+ this.props.onSetMinimize(false);
249
+ }
330
250
  }
331
- );
332
-
333
- titlebar = (
334
- <div
335
- className="inboxsdk__mole_view_titlebar"
336
- onClick={() => {
337
- if (this.props.minimized) {
338
- this.props.onSetMinimize(false);
339
- }
340
- }}
341
- >
342
- {title}
343
- <div className="inboxsdk__mole_title_buttons">
344
- <button
345
- type="button"
346
- style={{ display: this.props.minimized ? 'none' : '' }}
347
- title="Minimize"
348
- onClick={() => this.props.onSetMinimize(true)}
349
- >
350
- <img
351
- srcSet="//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/btw_ic_minimize_white_18dp_2x.png 2x"
352
- alt=""
353
- aria-hidden="true"
354
- src="//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/1x/btw_ic_minimize_white_18dp.png"
355
- />
356
- </button>
357
- <button
358
- type="button"
359
- style={{ display: this.props.minimized ? '' : 'none' }}
360
- title="Expand"
361
- onClick={() => this.props.onSetMinimize(false)}
362
- >
363
- <img
364
- srcSet="//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/btw_ic_maximize_white_18dp_2x.png 2x"
365
- alt=""
366
- aria-hidden="true"
367
- src="//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/1x/btw_ic_maximize_white_18dp.png"
368
- />
369
- </button>
370
- {titleButtons}
371
- <button
372
- type="button"
373
- title="Close"
374
- onClick={() => this.props.onClose()}
375
- >
376
- <img
377
- srcSet="//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/btw_ic_close_white_12dp_2x.png 2x"
378
- alt=""
379
- aria-hidden="true"
380
- src="//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/1x/btw_ic_close_white_12dp.png"
381
- />
382
- </button>
383
- </div>
384
- </div>
385
- );
251
+ }, title, /*#__PURE__*/_react.default.createElement("div", {
252
+ className: "inboxsdk__mole_title_buttons"
253
+ }, /*#__PURE__*/_react.default.createElement("button", {
254
+ type: "button",
255
+ style: {
256
+ display: this.props.minimized ? 'none' : ''
257
+ },
258
+ title: "Minimize",
259
+ onClick: () => this.props.onSetMinimize(true)
260
+ }, /*#__PURE__*/_react.default.createElement("img", {
261
+ srcSet: "//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/btw_ic_minimize_white_18dp_2x.png 2x",
262
+ alt: "",
263
+ "aria-hidden": "true",
264
+ src: "//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/1x/btw_ic_minimize_white_18dp.png"
265
+ })), /*#__PURE__*/_react.default.createElement("button", {
266
+ type: "button",
267
+ style: {
268
+ display: this.props.minimized ? '' : 'none'
269
+ },
270
+ title: "Expand",
271
+ onClick: () => this.props.onSetMinimize(false)
272
+ }, /*#__PURE__*/_react.default.createElement("img", {
273
+ srcSet: "//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/btw_ic_maximize_white_18dp_2x.png 2x",
274
+ alt: "",
275
+ "aria-hidden": "true",
276
+ src: "//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/1x/btw_ic_maximize_white_18dp.png"
277
+ })), titleButtons, /*#__PURE__*/_react.default.createElement("button", {
278
+ type: "button",
279
+ title: "Close",
280
+ onClick: () => this.props.onClose()
281
+ }, /*#__PURE__*/_react.default.createElement("img", {
282
+ srcSet: "//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/btw_ic_close_white_12dp_2x.png 2x",
283
+ alt: "",
284
+ "aria-hidden": "true",
285
+ src: "//ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/1x/btw_ic_close_white_12dp.png"
286
+ }))));
386
287
  }
387
-
388
- return (
389
- <div className="inboxsdk__mole_view_mid">
390
- <div className="inboxsdk__mole_view_inner">
391
- {titlebar}
392
- <ElementContainer
393
- className="inboxsdk__mole_view_content"
394
- el={this.props.el}
395
- />
396
- </div>
397
- </div>
398
- );
288
+ return /*#__PURE__*/_react.default.createElement("div", {
289
+ className: "inboxsdk__mole_view_mid"
290
+ }, /*#__PURE__*/_react.default.createElement("div", {
291
+ className: "inboxsdk__mole_view_inner"
292
+ }, titlebar, /*#__PURE__*/_react.default.createElement(_ElementContainer.default, {
293
+ className: "inboxsdk__mole_view_content",
294
+ el: this.props.el
295
+ })));
399
296
  }
400
- }
297
+ }