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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/inboxsdk.js +1 -1
  2. package/package.json +5 -1
  3. package/src/inboxsdk-js/check-requirements.js +7 -3
  4. package/src/inboxsdk-js/header.js +1 -0
  5. package/src/inboxsdk-js/inboxsdk-NONREMOTE-INTEGRATED-PAGEWORLD.js +5 -6
  6. package/src/inboxsdk-js/inboxsdk-NONREMOTE.js +4 -3
  7. package/src/inboxsdk-js/inboxsdk-REMOTE.js +3 -1
  8. package/src/inboxsdk-js/inboxsdk-TEST.js +4 -3
  9. package/src/inboxsdk-js/inboxsdk.js +33 -39
  10. package/src/inboxsdk-js/loading/load-platform-implementation-DEV.js +15 -18
  11. package/src/inboxsdk.d.ts +2 -0
  12. package/src/injected-js/gmail/modify-suggestions.test.js +8 -9
  13. package/src/injected-js/gmail/setup-gmail-interceptor.js +340 -579
  14. package/src/injected-js/gmail/sync-compose-request-processor.test.js +39 -49
  15. package/src/injected-js/gmail/thread-identifier/click-and-get-popup-url.js +20 -33
  16. package/src/injected-js/gmail/thread-identifier/index.js +57 -93
  17. package/src/injected-js/gmail/thread-identifier/thread-row-parser.js +22 -31
  18. package/src/injected-js/gmail/thread-identifier/thread-row-parser.test.js +12 -28
  19. package/src/injected-js/inbox/setupAjaxInterceptor.js +64 -121
  20. package/src/injected-js/inbox/setupClickAndGetNewIframeSrc.js +53 -66
  21. package/src/injected-js/inbox/setupComposeViewDraftIDFinder.js +20 -36
  22. package/src/injected-js/inbox/setupInboxFakeWindowResizeListener.js +13 -13
  23. package/src/injected-js/main.js +11 -24
  24. package/src/injected-js/message-metadata-holder.js +52 -82
  25. package/src/injected-js/setup-data-exposer.js +89 -148
  26. package/src/injected-js/setup-error-silencer.js +21 -21
  27. package/src/injected-js/setup-event-reemitter.js +30 -22
  28. package/src/injected-js/setupInboxCustomViewLinkFixer.js +24 -29
  29. package/src/injected-js/setupPushStateListener.js +18 -11
  30. package/src/injected-js/xhr-helper.js +62 -65
  31. package/src/injected-js/xhr-proxy-factory.js +195 -445
  32. package/src/injected-js/xhr-proxy-factory.test.js +824 -991
  33. package/src/platform-implementation-js/constants/router.js +14 -9
  34. package/src/platform-implementation-js/constants/toolbars.js +8 -3
  35. package/src/platform-implementation-js/dom-driver/gmail/custom-style.js +13 -13
  36. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +115 -136
  37. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +13 -14
  38. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +27 -48
  39. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +31 -42
  40. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +30 -40
  41. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +10 -18
  42. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +21 -28
  43. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.js +33 -45
  44. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +31 -49
  45. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +58 -65
  46. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +40 -124
  47. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +17 -22
  48. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-draft-by-message-id.test.js +10 -11
  49. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +44 -80
  50. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +19 -26
  51. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +71 -147
  52. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +91 -148
  53. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +150 -166
  54. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.test.js +70 -120
  55. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +15 -15
  56. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +44 -67
  57. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +230 -379
  58. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.test.js +121 -307
  59. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +17 -24
  60. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +41 -49
  61. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +30 -40
  62. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +28 -60
  63. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +61 -133
  64. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +30 -42
  65. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.test.js +52 -46
  66. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +354 -694
  67. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +77 -93
  68. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.js +35 -82
  69. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.test.js +44 -94
  70. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.js +12 -19
  71. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +17 -29
  72. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-to-icon-area.js +26 -26
  73. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.js +391 -797
  74. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view/monitor-top-banner-size-and-react.js +7 -9
  75. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.js +60 -109
  76. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +95 -135
  77. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +103 -211
  78. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.test.js +61 -61
  79. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +17 -17
  80. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +188 -541
  81. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +67 -135
  82. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-compose-notice.js +27 -49
  83. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.js +7 -13
  84. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.js +9 -22
  85. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-recipient-row.js +36 -63
  86. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.js +38 -113
  87. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-app-button-toolbars-are-closed.js +11 -16
  88. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/ensure-grouping-is-open.js +11 -17
  89. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/focus.js +8 -11
  90. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/from-manager.js +27 -47
  91. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-additional-action-toolbar.js +11 -24
  92. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +59 -111
  93. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-body-changes-stream.js +15 -14
  94. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-formatting-area-offset-left.js +11 -17
  95. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-minimized-stream.js +18 -24
  96. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-response-type-changes-stream.js +19 -23
  97. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.js +11 -19
  98. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.js +141 -376
  99. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +17 -28
  100. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/override-edit-subject.js +34 -70
  101. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/position-formatting-toolbar.js +10 -17
  102. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +83 -137
  103. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/update-insert-more-area-left.js +10 -19
  104. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +632 -1190
  105. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view/get-updated-contact.js +29 -38
  106. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +327 -617
  107. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.js +26 -49
  108. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +188 -380
  109. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +104 -194
  110. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +382 -811
  111. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.js +34 -58
  112. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.js +330 -581
  113. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.test.js +123 -277
  114. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view/width-manager.js +15 -35
  115. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +216 -571
  116. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +152 -336
  117. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +87 -211
  118. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/inbox-dropdown-button-view.js +10 -11
  119. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-action-button-view.js +20 -29
  120. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-label-view.js +41 -76
  121. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +45 -99
  122. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +76 -128
  123. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +128 -319
  124. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +45 -78
  125. package/src/platform-implementation-js/dom-driver/inbox/__mocks__/getSidebarClassnames.js +8 -4
  126. package/src/platform-implementation-js/dom-driver/inbox/addNavItem.js +36 -54
  127. package/src/platform-implementation-js/dom-driver/inbox/addRecipientRow.js +35 -53
  128. package/src/platform-implementation-js/dom-driver/inbox/createLink.js +13 -15
  129. package/src/platform-implementation-js/dom-driver/inbox/createLink.test.js +15 -18
  130. package/src/platform-implementation-js/dom-driver/inbox/custom-style.js +14 -13
  131. package/src/platform-implementation-js/dom-driver/inbox/detection/appToolbarLocation/parser.js +14 -20
  132. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentCard/parser.js +14 -13
  133. package/src/platform-implementation-js/dom-driver/inbox/detection/attachmentOverlay/parser.js +35 -67
  134. package/src/platform-implementation-js/dom-driver/inbox/detection/chatSidebar/parser.js +16 -18
  135. package/src/platform-implementation-js/dom-driver/inbox/detection/compose/parser.js +68 -185
  136. package/src/platform-implementation-js/dom-driver/inbox/detection/message/parser.js +28 -56
  137. package/src/platform-implementation-js/dom-driver/inbox/detection/nativeDrawer/parser.js +12 -10
  138. package/src/platform-implementation-js/dom-driver/inbox/detection/searchBar/parser.js +16 -16
  139. package/src/platform-implementation-js/dom-driver/inbox/detection/thread/parser.js +24 -35
  140. package/src/platform-implementation-js/dom-driver/inbox/detection/thread-row/parser.js +37 -89
  141. package/src/platform-implementation-js/dom-driver/inbox/getComposeViewDriverLiveSet.js +56 -78
  142. package/src/platform-implementation-js/dom-driver/inbox/getInboxMessageIdForInboxThreadId.js +26 -32
  143. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.js +52 -109
  144. package/src/platform-implementation-js/dom-driver/inbox/getSidebarClassnames.test.js +7 -8
  145. package/src/platform-implementation-js/dom-driver/inbox/gotoView.js +16 -20
  146. package/src/platform-implementation-js/dom-driver/inbox/gotoView.test.js +15 -16
  147. package/src/platform-implementation-js/dom-driver/inbox/inbox-butter-bar-driver.js +75 -83
  148. package/src/platform-implementation-js/dom-driver/inbox/inbox-driver.js +530 -822
  149. package/src/platform-implementation-js/dom-driver/inbox/inbox-page-communicator.js +48 -61
  150. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.js +9 -12
  151. package/src/platform-implementation-js/dom-driver/inbox/inboxResponseProcessor.test.js +12 -19
  152. package/src/platform-implementation-js/dom-driver/inbox/makePageParserTree.js +24 -33
  153. package/src/platform-implementation-js/dom-driver/inbox/pageParserOptions.js +201 -388
  154. package/src/platform-implementation-js/dom-driver/inbox/registerSearchSuggestionsProvider.js +249 -265
  155. package/src/platform-implementation-js/dom-driver/inbox/setupCustomAutocompleteSelectionHandling.js +84 -152
  156. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.js +55 -67
  157. package/src/platform-implementation-js/dom-driver/inbox/setupRouteViewDriverStream.test.js +43 -65
  158. package/src/platform-implementation-js/dom-driver/inbox/views/InboxLabelView.js +31 -56
  159. package/src/platform-implementation-js/dom-driver/inbox/views/InboxMoleViewDriver.js +191 -294
  160. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarButtonView.js +32 -45
  161. package/src/platform-implementation-js/dom-driver/inbox/views/InboxToolbarView.js +21 -39
  162. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-sidebar-view.js +153 -240
  163. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-button-view.js +75 -150
  164. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-app-toolbar-tooltip-view.js +20 -37
  165. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-card-view.js +60 -114
  166. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-attachment-overlay-view.js +47 -65
  167. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +41 -52
  168. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-chat-sidebar-view.js +27 -36
  169. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-button-view.js +52 -80
  170. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-compose-view.js +465 -649
  171. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.js +37 -58
  172. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-custom-route-view.test.js +14 -26
  173. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +118 -235
  174. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dropdown-view.js +10 -11
  175. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-dummy-route-view.js +28 -46
  176. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-message-view.js +131 -202
  177. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-modal-view.js +40 -80
  178. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-route-view.js +35 -61
  179. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-row-view.js +124 -221
  180. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.js +125 -213
  181. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-thread-view.test.js +104 -126
  182. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-tooltip-view.js +36 -51
  183. package/src/platform-implementation-js/dom-driver/inbox/views/inboxNavItemView.js +158 -297
  184. package/src/platform-implementation-js/dom-driver/inbox/waitForAnimationClickBlockerGone.js +21 -35
  185. package/src/platform-implementation-js/driver-common/compose/getDiscardStream.js +24 -43
  186. package/src/platform-implementation-js/driver-common/compose/getPresendingStream.js +39 -68
  187. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.js +14 -19
  188. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.js +27 -35
  189. package/src/platform-implementation-js/driver-common/getRfcMessageIdForSyncMessageId.js +16 -22
  190. package/src/platform-implementation-js/driver-common/getThreadIdFromMessageId.js +14 -14
  191. package/src/platform-implementation-js/driver-common/inboxAjax.js +12 -7
  192. package/src/platform-implementation-js/driver-common/requestGmailThread.js +19 -20
  193. package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +197 -306
  194. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.js +113 -161
  195. package/src/platform-implementation-js/driver-interfaces/compose-view-driver.js +1 -114
  196. package/src/platform-implementation-js/driver-interfaces/driver.js +1 -131
  197. package/src/platform-implementation-js/driver-interfaces/message-view-driver.js +4 -48
  198. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.js +1 -29
  199. package/src/platform-implementation-js/driver-interfaces/route-view-driver.js +1 -32
  200. package/src/platform-implementation-js/driver-interfaces/thread-row-view-driver.js +1 -11
  201. package/src/platform-implementation-js/lib/array-to-lifetimes.js +43 -41
  202. package/src/platform-implementation-js/lib/array-to-lifetimes.test.js +139 -155
  203. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +19 -38
  204. package/src/platform-implementation-js/lib/css-selector-escape.js +7 -3
  205. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +8 -11
  206. package/src/platform-implementation-js/lib/dom/get-selection.js +23 -52
  207. package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +69 -101
  208. package/src/platform-implementation-js/lib/dom/is-node-in-range.js +8 -10
  209. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +15 -17
  210. package/src/platform-implementation-js/lib/dom/querySelectorOne.js +8 -11
  211. package/src/platform-implementation-js/lib/dom/set-css.js +7 -3
  212. package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.js +9 -11
  213. package/src/platform-implementation-js/lib/dom/simulate-drag-and-drop.js +32 -33
  214. package/src/platform-implementation-js/lib/extract-contact-from-email-contact-string.test.js +23 -26
  215. package/src/platform-implementation-js/lib/handle-compose-link-chips.js +86 -149
  216. package/src/platform-implementation-js/lib/insert-link-chip-into-body.js +42 -57
  217. package/src/platform-implementation-js/lib/make-revocable-function.js +19 -21
  218. package/src/platform-implementation-js/lib/make-revocable-function.test.js +20 -22
  219. package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +15 -17
  220. package/src/platform-implementation-js/lib/parseParamsFromRouteID.test.js +9 -18
  221. package/src/platform-implementation-js/lib/populateRouteID.js +8 -9
  222. package/src/platform-implementation-js/lib/populateRouteID.test.js +20 -19
  223. package/src/platform-implementation-js/lib/react/ElementContainer.js +23 -20
  224. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.js +10 -9
  225. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.test.js +13 -20
  226. package/src/platform-implementation-js/lib/routeIDmatchesHash.js +13 -18
  227. package/src/platform-implementation-js/lib/routeIDmatchesHash.test.js +11 -17
  228. package/src/platform-implementation-js/lib/shared-style.js +14 -13
  229. package/src/platform-implementation-js/lib/toItemWithLifetimeStream.js +18 -17
  230. package/src/platform-implementation-js/lib/toLiveSet.js +17 -15
  231. package/src/platform-implementation-js/main-INTEGRATED-PAGEWORLD.js +6 -5
  232. package/src/platform-implementation-js/main.js +9 -24
  233. package/src/platform-implementation-js/namespaces/compose.js +37 -60
  234. package/src/platform-implementation-js/namespaces/conversations.js +52 -124
  235. package/src/platform-implementation-js/namespaces/global.js +27 -39
  236. package/src/platform-implementation-js/namespaces/keyboard.js +29 -33
  237. package/src/platform-implementation-js/namespaces/lists.js +25 -31
  238. package/src/platform-implementation-js/namespaces/modal.js +34 -28
  239. package/src/platform-implementation-js/namespaces/nav-menu.js +30 -45
  240. package/src/platform-implementation-js/namespaces/router.js +70 -137
  241. package/src/platform-implementation-js/namespaces/search.js +19 -17
  242. package/src/platform-implementation-js/namespaces/toolbars.js +71 -117
  243. package/src/platform-implementation-js/namespaces/user.js +36 -37
  244. package/src/platform-implementation-js/namespaces/widgets.js +54 -61
  245. package/src/platform-implementation-js/platform-implementation.js +98 -229
  246. package/src/platform-implementation-js/views/app-toolbar-button-view.js +26 -47
  247. package/src/platform-implementation-js/views/collapsible-section-view.js +66 -63
  248. package/src/platform-implementation-js/views/content-panel-view.js +28 -30
  249. package/src/platform-implementation-js/views/conversations/attachment-card-view.js +21 -44
  250. package/src/platform-implementation-js/views/conversations/custom-message-view.js +44 -104
  251. package/src/platform-implementation-js/views/conversations/message-view.js +131 -202
  252. package/src/platform-implementation-js/views/conversations/thread-view.js +75 -127
  253. package/src/platform-implementation-js/views/native-nav-item-view.js +32 -65
  254. package/src/platform-implementation-js/views/nav-item-view.js +51 -115
  255. package/src/platform-implementation-js/views/route-view/custom-route-view.js +25 -20
  256. package/src/platform-implementation-js/views/route-view/dummy-route-view-driver.js +18 -18
  257. package/src/platform-implementation-js/views/route-view/list-route-view.js +30 -52
  258. package/src/platform-implementation-js/views/route-view/route-view.js +24 -35
  259. package/src/platform-implementation-js/views/section-view.js +60 -52
  260. package/src/platform-implementation-js/views/thread-row-view.js +49 -74
  261. package/src/platform-implementation-js/widgets/drawer-view.js +29 -36
  262. package/src/platform-implementation-js/widgets/modal-view.js +39 -68
  263. package/src/platform-implementation-js/widgets/mole-view.js +22 -22
  264. package/src/platform-implementation-js/widgets/top-message-bar-view.js +13 -10
@@ -1,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
+ }