@inboxsdk/core 1.1.7 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/inboxsdk.js +8 -8
- package/inboxsdk.js.map +1 -1
- package/package.json +1 -1
- package/pageWorld.js +1 -1
- package/pageWorld.js.map +1 -1
- package/src/inboxsdk.d.ts +3 -3
- package/src/injected-js/gmail/setup-gmail-interceptor.d.ts.map +1 -1
- package/src/injected-js/gmail/setup-gmail-interceptor.js +2 -5
- package/src/injected-js/gmail/thread-identifier/index.d.ts.map +1 -1
- package/src/injected-js/gmail/thread-identifier/index.js +1 -2
- package/src/injected-js/message-metadata-holder.d.ts.map +1 -1
- package/src/injected-js/setup-data-exposer.d.ts.map +1 -1
- package/src/injected-js/setup-data-exposer.js +0 -1
- package/src/injected-js/setup-error-silencer.d.ts.map +1 -1
- package/src/injected-js/setup-error-silencer.js +2 -3
- package/src/injected-js/xhr-helper.d.ts.map +1 -1
- package/src/injected-js/xhr-helper.js +27 -57
- package/src/injected-js/xhr-proxy-factory.d.ts.map +1 -1
- package/src/injected-js/xhr-proxy-factory.js +1 -2
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +1 -2
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-global-icon-area.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/add-companion-thread-icon-area.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/primary/index.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-area-view.js +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-attachment-card-view.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.d.ts +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-collapsible-section-view.js +4 -5
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-button.js +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-tooltip-to-button.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/get-address-changes-stream.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/insert-link-into-body.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/manage-button-grouping.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/monitor-selection-range.js +1 -2
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/size-fixer.js +1 -2
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.js +1 -3
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.js +3 -4
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.d.ts +2 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +2 -2
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.d.ts +0 -2
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.js +0 -3
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.js +3 -4
- package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.js +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.d.ts +2 -2
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.js +2 -3
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.d.ts +2 -2
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.js +2 -3
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.d.ts +2 -2
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.js +2 -3
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +2 -4
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-tooltip-view.js +7 -14
- package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/inbox/views/inbox-backdrop.js +1 -2
- package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.js +1 -2
- package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.d.ts.map +1 -1
- package/src/platform-implementation-js/driver-common/sidebar/AppSidebar.js +0 -1
- package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.d.ts.map +1 -1
- package/src/platform-implementation-js/driver-interfaces/compose-view-driver.d.ts +2 -1
- package/src/platform-implementation-js/driver-interfaces/compose-view-driver.d.ts.map +1 -1
- package/src/platform-implementation-js/driver-interfaces/driver.d.ts +2 -1
- package/src/platform-implementation-js/driver-interfaces/driver.d.ts.map +1 -1
- package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.d.ts.map +1 -1
- package/src/platform-implementation-js/lib/dom/insert-html-at-cursor.js +1 -2
- package/src/platform-implementation-js/lib/handle-compose-link-chips.d.ts.map +1 -1
- package/src/platform-implementation-js/lib/handle-compose-link-chips.js +1 -2
- package/src/platform-implementation-js/lib/parseParamsFromRouteID.d.ts.map +1 -1
- package/src/platform-implementation-js/lib/parseParamsFromRouteID.js +1 -3
- package/src/platform-implementation-js/lib/safe-event-emitter.d.ts +1 -1
- package/src/platform-implementation-js/lib/safe-event-emitter.d.ts.map +1 -1
- package/src/platform-implementation-js/lib/safe-event-emitter.js +1 -2
- package/src/platform-implementation-js/namespaces/app-menu.d.ts +49 -3
- package/src/platform-implementation-js/namespaces/app-menu.d.ts.map +1 -1
- package/src/platform-implementation-js/namespaces/app-menu.js +16 -2
- package/src/platform-implementation-js/namespaces/compose.d.ts.map +1 -1
- package/src/platform-implementation-js/namespaces/compose.js +0 -1
- package/src/platform-implementation-js/namespaces/conversations.d.ts.map +1 -1
- package/src/platform-implementation-js/namespaces/conversations.js +4 -6
- package/src/platform-implementation-js/namespaces/global.d.ts.map +1 -1
- package/src/platform-implementation-js/namespaces/global.js +0 -1
- package/src/platform-implementation-js/namespaces/toolbars.d.ts.map +1 -1
- package/src/platform-implementation-js/namespaces/toolbars.js +1 -2
- package/src/platform-implementation-js/platform-implementation.d.ts.map +1 -1
- package/src/platform-implementation-js/platform-implementation.js +1 -12
- package/src/platform-implementation-js/views/app-menu-item-view.d.ts +27 -1
- package/src/platform-implementation-js/views/app-menu-item-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/app-menu-item-view.js +18 -1
- package/src/platform-implementation-js/views/collapsible-panel-view.d.ts +20 -0
- package/src/platform-implementation-js/views/collapsible-panel-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/collapsible-panel-view.js +14 -0
- package/src/platform-implementation-js/views/compose-view.d.ts +4 -4
- package/src/platform-implementation-js/views/compose-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/content-panel-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/conversations/attachment-card-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/conversations/custom-message-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/conversations/message-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/conversations/message-view.js +2 -4
- package/src/platform-implementation-js/views/native-nav-item-view.d.ts.map +1 -1
- package/src/platform-implementation-js/views/nav-item-view.d.ts.map +1 -1
- package/src/platform-implementation-js/widgets/drawer-view.d.ts.map +1 -1
- package/src/platform-implementation-js/widgets/drawer-view.js +0 -1
- package/src/platform-implementation-js/widgets/modal-view.d.ts +1 -1
- package/src/platform-implementation-js/widgets/modal-view.d.ts.map +1 -1
- package/src/platform-implementation-js/widgets/modal-view.js +1 -2
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.d.ts +0 -8
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.d.ts.map +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.js +0 -20
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.d.ts +0 -8
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.d.ts.map +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.js +0 -25
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.d.ts +0 -5
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.d.ts.map +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.js +0 -108
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.d.ts +0 -18
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.d.ts.map +0 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.js +0 -555
- package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.d.ts +0 -2
- package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.d.ts.map +0 -1
- package/src/platform-implementation-js/lib/dom/set-value-and-dispatch-event.js +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal-view.d.ts","sourceRoot":"","sources":["../../../../../src/platform-implementation-js/widgets/modal-view.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAY,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,eAAe,MAAM,qDAAqD,CAAC;AAEvF,cAAM,SAAU,SAAQ,YAAY;IAClC,SAAS,EAAE,OAAO,CAAS;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAAC;gBAEzC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,eAAe,CAAA;KAAE;IAoBzE,IAAI;
|
|
1
|
+
{"version":3,"file":"modal-view.d.ts","sourceRoot":"","sources":["../../../../../src/platform-implementation-js/widgets/modal-view.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAY,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,eAAe,MAAM,qDAAqD,CAAC;AAEvF,cAAM,SAAU,SAAQ,YAAY;IAClC,SAAS,EAAE,OAAO,CAAS;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAAC;gBAEzC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,eAAe,CAAA;KAAE;IAoBzE,IAAI;IA0BJ,QAAQ,CAAC,KAAK,EAAE,MAAM;IAQtB,KAAK;IAML,SAAS,IAAI,IAAI;CAGlB;AA4DD,eAAe,SAAS,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type GmailComposeView from '../gmail-compose-view';
|
|
2
|
-
type Options = {
|
|
3
|
-
title: string;
|
|
4
|
-
el: HTMLElement;
|
|
5
|
-
};
|
|
6
|
-
export default function addInnerSidebar(gmailComposeView: GmailComposeView, options: Options): void;
|
|
7
|
-
export {};
|
|
8
|
-
//# sourceMappingURL=add-inner-sidebar.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-inner-sidebar.d.ts","sourceRoot":"","sources":["../../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-inner-sidebar.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,WAAW,CAAC;CACjB,CAAC;AACF,MAAM,CAAC,OAAO,UAAU,eAAe,CACrC,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,OAAO,QAOjB"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export default function addInnerSidebar(gmailComposeView, options) {
|
|
2
|
-
// if(!gmailComposeView.getAdditionalAreas().innerSidebar){
|
|
3
|
-
// _createInnerSidebar(gmailComposeView);
|
|
4
|
-
// }
|
|
5
|
-
//
|
|
6
|
-
// gmailComposeView.getAdditionalAreas().innerSidebar.appendChild(options.el);
|
|
7
|
-
} // function _createInnerSidebar(gmailComposeView){
|
|
8
|
-
// var sidebar = document.createElement('div');
|
|
9
|
-
// sidebar.classList.add('inboxsdk__compose_innerSidebar');
|
|
10
|
-
//
|
|
11
|
-
// var borderColor = gmailComposeView.getElement().querySelector('.aoD').getComputedStyle().getPropertyValue('border-bottom-color');
|
|
12
|
-
//
|
|
13
|
-
// sidebar.style.borderLeft = '1px solid ' + borderColor;
|
|
14
|
-
// sidebar.style.borderBottom = '1px solid ' + borderColor;
|
|
15
|
-
//
|
|
16
|
-
// gmailComposeView.getElement().querySelector('.I5').appendChild(sidebar);
|
|
17
|
-
// gmailComposeView.getElement().classList.add('inboxsdk__compose_innerSidebarActive');
|
|
18
|
-
//
|
|
19
|
-
// gmailComposeView.getAdditionalAreas().innerSidebar = sidebar;
|
|
20
|
-
// }
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type GmailComposeView from '../gmail-compose-view';
|
|
2
|
-
type Options = {
|
|
3
|
-
title: string;
|
|
4
|
-
el: HTMLElement;
|
|
5
|
-
};
|
|
6
|
-
export default function addOuterSidebar(gmailComposeView: GmailComposeView, options: Options): void;
|
|
7
|
-
export {};
|
|
8
|
-
//# sourceMappingURL=add-outer-sidebar.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-outer-sidebar.d.ts","sourceRoot":"","sources":["../../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-outer-sidebar.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,WAAW,CAAC;CACjB,CAAC;AACF,MAAM,CAAC,OAAO,UAAU,eAAe,CACrC,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,OAAO,QAQjB"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export default function addOuterSidebar(gmailComposeView, options) {
|
|
2
|
-
// if(!gmailComposeView.getAdditionalAreas().outerSidebar){
|
|
3
|
-
// _createOuterSidebar(gmailComposeView);
|
|
4
|
-
// }
|
|
5
|
-
//
|
|
6
|
-
// gmailComposeView.getAdditionalAreas().outerSidebar.querySelector('.inboxsdk__compose_outerSidebar_header').innerHTML = escape(options.title);
|
|
7
|
-
// gmailComposeView.getAdditionalAreas().outerSidebar.querySelector('.inboxsdk__compose_outerSidebar_footer').appendChild(options.el);
|
|
8
|
-
}
|
|
9
|
-
function _createOuterSidebar(gmailComposeView) {
|
|
10
|
-
const outerSidebar = document.createElement('div');
|
|
11
|
-
outerSidebar.classList.add('inboxsdk__compose_outerSidebar_wrapper');
|
|
12
|
-
const header = document.createElement('div');
|
|
13
|
-
header.classList.add('inboxsdk__compose_outerSidebar_header');
|
|
14
|
-
outerSidebar.appendChild(header);
|
|
15
|
-
const body = document.createElement('div');
|
|
16
|
-
body.classList.add('inboxsdk__compose_outerSidebar_body');
|
|
17
|
-
outerSidebar.appendChild(body);
|
|
18
|
-
const footer = document.createElement('div');
|
|
19
|
-
footer.classList.add('inboxsdk__compose_outerSidebar_footer');
|
|
20
|
-
footer.classList.add('aDh');
|
|
21
|
-
outerSidebar.append(footer);
|
|
22
|
-
gmailComposeView.getElement().appendChild(outerSidebar);
|
|
23
|
-
// gmailComposeView.getAdditionalAreas().outerSidebar = outerSidebar;
|
|
24
|
-
document.body.classList.add('inboxsdk__outerSidebarActive'); // gmailComposeView.getElement().addClass('inboxsdk__compose_outerSidebarActive');
|
|
25
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as Kefir from 'kefir';
|
|
2
|
-
declare function addIconArea(iconArea: HTMLElement, addonSidebarContainerEl: HTMLElement, stopper: Kefir.Observable<any, any>): void;
|
|
3
|
-
declare const _default: typeof addIconArea;
|
|
4
|
-
export default _default;
|
|
5
|
-
//# sourceMappingURL=add-icon-area.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-icon-area.d.ts","sourceRoot":"","sources":["../../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view/add-icon-area.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAwC/B,iBAAS,WAAW,CAClB,QAAQ,EAAE,WAAW,EACrB,uBAAuB,EAAE,WAAW,EACpC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,QA8DpC;;AAmBD,wBAAyC"}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
2
|
-
import { defn } from 'ud';
|
|
3
|
-
import * as Kefir from 'kefir';
|
|
4
|
-
import makeMutationObserverChunkedStream from '../../../../lib/dom/make-mutation-observer-chunked-stream';
|
|
5
|
-
/*
|
|
6
|
-
As of Dec 2nd, 2017.
|
|
7
|
-
div.bvq - the container for both native icons and loading area
|
|
8
|
-
div:first-child - the loading visualization div
|
|
9
|
-
div.J-KU-Jg[role=tablist] - where the native icons show up
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
div.bvq can be display none sometimes, we don't ever want that to happen
|
|
13
|
-
so in css we force div.bvq to be visible (search for "div.bvq" in gmail.css)
|
|
14
|
-
|
|
15
|
-
There are 3 states that the native icon area can be in:
|
|
16
|
-
1. first time you go to a thread in that session, or the user has no add-ons
|
|
17
|
-
div.bvq is style display none
|
|
18
|
-
loading visualization div is display none
|
|
19
|
-
tablist div does not have [role=tablist]
|
|
20
|
-
|
|
21
|
-
put our icon area between the loading visualization and the native tablist.
|
|
22
|
-
If the tablist ever gets shown, then we put our sdk icons area in the tablist
|
|
23
|
-
|
|
24
|
-
2. subsequent times you go to a thread and the addons are loading
|
|
25
|
-
div.bvq is visible
|
|
26
|
-
loading visualization is visible
|
|
27
|
-
tablist div has [role=tablist] but is display none
|
|
28
|
-
|
|
29
|
-
In this case we want to put our icon area between loading visualization and
|
|
30
|
-
native tablist. We then clone the loading html and put it in our area. Once everything is
|
|
31
|
-
loaded we go to 3rd state.
|
|
32
|
-
|
|
33
|
-
3. Addons are done loading
|
|
34
|
-
div.bvq is visible
|
|
35
|
-
loading visualization display none
|
|
36
|
-
tablist displayed
|
|
37
|
-
*/
|
|
38
|
-
const TAB_LIST_SELECTOR = '[role=tablist],.J-KU-Jg';
|
|
39
|
-
function addIconArea(iconArea, addonSidebarContainerEl, stopper) {
|
|
40
|
-
const nativeIconArea = addonSidebarContainerEl.firstElementChild;
|
|
41
|
-
if (!nativeIconArea)
|
|
42
|
-
return;
|
|
43
|
-
const loadingHolderAsAny = nativeIconArea.firstElementChild;
|
|
44
|
-
const loadingHolder = loadingHolderAsAny;
|
|
45
|
-
if (!loadingHolder)
|
|
46
|
-
return;
|
|
47
|
-
const tabList = addonSidebarContainerEl.querySelector(TAB_LIST_SELECTOR);
|
|
48
|
-
if (!tabList)
|
|
49
|
-
return;
|
|
50
|
-
// emits when the loading div display style changes
|
|
51
|
-
const loadingDivIsDisplayedStream = makeMutationObserverChunkedStream(loadingHolder, {
|
|
52
|
-
attributes: true,
|
|
53
|
-
attributeFilter: ['style'],
|
|
54
|
-
})
|
|
55
|
-
.toProperty(() => null)
|
|
56
|
-
.map(() => loadingHolder.style.display !== 'none')
|
|
57
|
-
.takeUntilBy(stopper);
|
|
58
|
-
// emits when the tablist div gets role=tablist
|
|
59
|
-
const tabListRoleStream = makeMutationObserverChunkedStream(tabList, {
|
|
60
|
-
attributes: true,
|
|
61
|
-
attributeFilter: ['role'],
|
|
62
|
-
})
|
|
63
|
-
.toProperty(() => null)
|
|
64
|
-
.filter(() => tabList.getAttribute('role') === 'tablist')
|
|
65
|
-
.takeUntilBy(stopper);
|
|
66
|
-
// first we add sdk icon container as previous sibling to native tablist
|
|
67
|
-
tabList.insertAdjacentElement('beforebegin', iconArea);
|
|
68
|
-
// now we wait for loading to be hidden and tablist to be formed, and then we
|
|
69
|
-
// add sdk icon container to tablist
|
|
70
|
-
Kefir.combine([
|
|
71
|
-
loadingDivIsDisplayedStream.filter((value) => !value),
|
|
72
|
-
tabListRoleStream,
|
|
73
|
-
]).onValue(() => {
|
|
74
|
-
tabList.insertAdjacentElement('afterbegin', iconArea);
|
|
75
|
-
maintainIconArea(iconArea, tabList, Kefir.merge([loadingDivIsDisplayedStream.filter(Boolean), stopper]));
|
|
76
|
-
});
|
|
77
|
-
// if the addon loading div becomes visible then we create a clone of it and put the clone in a
|
|
78
|
-
// better place that works with our icons better. the native addon loading div is hidden with css
|
|
79
|
-
// but the style attribute still gets modified by gmail so we know when the loading should go away
|
|
80
|
-
loadingDivIsDisplayedStream.filter(Boolean).onValue(() => {
|
|
81
|
-
const loadingClone = document.createElement('div');
|
|
82
|
-
loadingClone.innerHTML = loadingHolder.innerHTML;
|
|
83
|
-
loadingClone.classList.add('inboxsdk__addon_icon_loading');
|
|
84
|
-
tabList.insertAdjacentElement('beforebegin', iconArea);
|
|
85
|
-
iconArea.insertAdjacentElement('afterend', loadingClone);
|
|
86
|
-
Kefir.merge([
|
|
87
|
-
loadingDivIsDisplayedStream.filter((value) => !value),
|
|
88
|
-
stopper,
|
|
89
|
-
])
|
|
90
|
-
.take(1)
|
|
91
|
-
.onValue(() => {
|
|
92
|
-
loadingClone.remove();
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
// Gmail periodically clears the children of this element before it's
|
|
97
|
-
// visible, so we fight back.
|
|
98
|
-
function maintainIconArea(iconArea, tabList, stopper) {
|
|
99
|
-
makeMutationObserverChunkedStream(tabList, {
|
|
100
|
-
childList: true,
|
|
101
|
-
})
|
|
102
|
-
.filter(() => iconArea.parentElement !== tabList)
|
|
103
|
-
.takeUntilBy(stopper)
|
|
104
|
-
.onValue(() => {
|
|
105
|
-
tabList.insertAdjacentElement('afterbegin', iconArea);
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
export default defn(module, addIconArea);
|
package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import * as Kefir from 'kefir';
|
|
2
|
-
import type GmailDriver from '../gmail-driver';
|
|
3
|
-
import ContentPanelViewDriver from '../../../driver-common/sidebar/ContentPanelViewDriver';
|
|
4
|
-
import type WidthManager from './gmail-thread-view/width-manager';
|
|
5
|
-
declare class GmailAppSidebarView {
|
|
6
|
-
_stopper: import("kefir-stopper").Stopper;
|
|
7
|
-
_driver: GmailDriver;
|
|
8
|
-
_instanceId: string;
|
|
9
|
-
constructor(driver: GmailDriver, sidebarContainerEl?: HTMLElement | null | undefined, addonSidebarElement?: HTMLElement | null | undefined, widthManager?: WidthManager | null | undefined);
|
|
10
|
-
destroy(): void;
|
|
11
|
-
getStopper(): import("kefir-stopper").Stopper;
|
|
12
|
-
_getShouldAppSidebarOpen(): boolean;
|
|
13
|
-
_setShouldAppSidebarOpen(open: boolean): void;
|
|
14
|
-
_createElement(_sidebarContainerEl: HTMLElement | null | undefined, _addonSidebarContainerEl: HTMLElement | null | undefined, widthManager: WidthManager | null | undefined): void;
|
|
15
|
-
addSidebarContentPanel(descriptor: Kefir.Observable<Record<string, any>, unknown>): ContentPanelViewDriver;
|
|
16
|
-
}
|
|
17
|
-
export default GmailAppSidebarView;
|
|
18
|
-
//# sourceMappingURL=gmail-thread-sidebar-view.d.ts.map
|
package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gmail-thread-sidebar-view.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-sidebar-view.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAE/C,OAAO,sBAAsB,MAAM,uDAAuD,CAAC;AAO3F,OAAO,KAAK,YAAY,MAAM,mCAAmC,CAAC;AAMlE,cAAM,mBAAmB;IACvB,QAAQ,kCAAkB;IAC1B,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAG,MAAM,CAAC;gBAGnB,MAAM,EAAE,WAAW,EACnB,kBAAkB,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACnD,mBAAmB,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACpD,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS;IAyBhD,OAAO;IAIP,UAAU;IAOV,wBAAwB,IAAI,OAAO;IAOnC,wBAAwB,CAAC,IAAI,EAAE,OAAO;IAWtC,cAAc,CACZ,mBAAmB,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACnD,wBAAwB,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACxD,YAAY,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS;IAqnB/C,sBAAsB,CACpB,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC;CAc7D;AAED,eAAe,mBAAmB,CAAC"}
|