@inboxsdk/core 2.1.16 → 2.1.18
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 +128 -45
- package/package.json +1 -1
- package/src/inboxsdk.d.ts +9 -49
- package/src/src/common/extractDocumentHtmlAndCss.d.ts +4 -0
- package/src/src/common/extractDocumentHtmlAndCss.d.ts.map +1 -0
- package/src/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.d.ts +2 -1
- package/src/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.d.ts.map +1 -1
- package/src/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts +2 -2
- package/src/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts.map +1 -1
- package/src/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.d.ts.map +1 -1
- package/src/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.d.ts.map +1 -1
- package/src/src/platform-implementation-js/main.d.ts.map +1 -1
- package/src/src/platform-implementation-js/namespaces/toolbars.d.ts +56 -5
- package/src/src/platform-implementation-js/namespaces/toolbars.d.ts.map +1 -1
package/inboxsdk.js
CHANGED
|
@@ -719,7 +719,7 @@ const ATTRIBUTE_WHITELIST = new Set([
|
|
|
719
719
|
// When we fail to parse data out of Gmail's HTML, we can use this function and
|
|
720
720
|
// then log the censored HTML so we know we aren't logging user data.
|
|
721
721
|
function censorHTMLstring(html) {
|
|
722
|
-
return html.replace(
|
|
722
|
+
return html.replace(/\s([^\s=]+)\s*=\s*"[^"]+"/g, (match, attr) => ATTRIBUTE_WHITELIST.has(attr) ? match : ` ${attr}="..."`).replace(/(^|>)([^<]+)/g, (match, start, text) => start + (text.trim().length ? '...' : ''));
|
|
723
723
|
}
|
|
724
724
|
|
|
725
725
|
/***/ }),
|
|
@@ -814,7 +814,7 @@ function isElementVisible(el) {
|
|
|
814
814
|
|
|
815
815
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment -- SDK_VERSION is injected by webpack
|
|
816
816
|
///@ts-ignore
|
|
817
|
-
const BUILD_VERSION = "2.1.
|
|
817
|
+
const BUILD_VERSION = "2.1.18-1700600933539-7ea8e780cf2adf2b-MODIFIED";
|
|
818
818
|
if (false) {}
|
|
819
819
|
|
|
820
820
|
/***/ }),
|
|
@@ -1706,8 +1706,13 @@ const GmailElementGetter = {
|
|
|
1706
1706
|
return toolbarElement.querySelector('.lS');
|
|
1707
1707
|
},
|
|
1708
1708
|
getThreadContainerElement() {
|
|
1709
|
-
|
|
1710
|
-
|
|
1709
|
+
const selector = '[role=main] .g.id table.Bs > tr';
|
|
1710
|
+
const selector_2023_11_16 = '[role=main] .g.id .a98.iY';
|
|
1711
|
+
const threadContainerElement = document.querySelector(selector);
|
|
1712
|
+
if (threadContainerElement) {
|
|
1713
|
+
return threadContainerElement;
|
|
1714
|
+
}
|
|
1715
|
+
return document.querySelector(selector_2023_11_16);
|
|
1711
1716
|
},
|
|
1712
1717
|
getToolbarElement() {
|
|
1713
1718
|
return (0,querySelectorOrFail/* default */.Z)(document, '[gh=tm]');
|
|
@@ -10499,7 +10504,7 @@ options.insert = htmlElement => {
|
|
|
10499
10504
|
htmlElement.setAttribute('data-inboxsdk-version',
|
|
10500
10505
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment -- this is injected by webpack
|
|
10501
10506
|
///@ts-ignore
|
|
10502
|
-
"2.1.
|
|
10507
|
+
"2.1.18-1700600933539-7ea8e780cf2adf2b-MODIFIED");
|
|
10503
10508
|
document.head.append(htmlElement);
|
|
10504
10509
|
};
|
|
10505
10510
|
options.domAPI = (styleDomAPI_default());
|
|
@@ -11612,7 +11617,7 @@ function waitFor(condition) {
|
|
|
11612
11617
|
__webpack_require__.r(__webpack_exports__);
|
|
11613
11618
|
/* harmony import */ var kefir__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6609);
|
|
11614
11619
|
|
|
11615
|
-
if (!
|
|
11620
|
+
if (!globalThis.__InboxSDKImpLoader) {
|
|
11616
11621
|
var piMainStarted = Date.now();
|
|
11617
11622
|
var wasAccountSwitcherReadyAtStart = !!document.querySelector('[role=banner] div[aria-label] div div a[href^="https://myaccount.google."], [role=banner]+div div[aria-label] div div a[href^="https://myaccount.google."]');
|
|
11618
11623
|
var onready = new Promise(resolve => {
|
|
@@ -11622,7 +11627,7 @@ if (!__webpack_require__.g.__InboxSDKImpLoader) {
|
|
|
11622
11627
|
resolve(kefir__WEBPACK_IMPORTED_MODULE_0__["default"].merge([kefir__WEBPACK_IMPORTED_MODULE_0__["default"].fromEvents(document, 'DOMContentLoaded'), kefir__WEBPACK_IMPORTED_MODULE_0__["default"].fromEvents(window, 'load')]).take(1).map(() => null).toPromise());
|
|
11623
11628
|
}
|
|
11624
11629
|
});
|
|
11625
|
-
|
|
11630
|
+
globalThis.__InboxSDKImpLoader = {
|
|
11626
11631
|
async load(version, appId, opts) {
|
|
11627
11632
|
if (version !== '0.1') {
|
|
11628
11633
|
throw new Error('Unsupported InboxSDK version');
|
|
@@ -11633,11 +11638,15 @@ if (!__webpack_require__.g.__InboxSDKImpLoader) {
|
|
|
11633
11638
|
if (appId === 'dropbox') {
|
|
11634
11639
|
throw new Error('No longer supported');
|
|
11635
11640
|
}
|
|
11641
|
+
if (location.hostname === 'mail.google.com' && location.pathname.endsWith('/popout')) {
|
|
11642
|
+
throw new URIError(`@inboxsdk/core doesn't currently support Gmail pop out windows. See
|
|
11643
|
+
https://github.com/InboxSDK/InboxSDK/issues/1062#issuecomment-1821327292 for context on why we'd be open to supporting them.`);
|
|
11644
|
+
}
|
|
11636
11645
|
var piLoadStarted = Date.now();
|
|
11637
11646
|
await onready;
|
|
11638
11647
|
const {
|
|
11639
11648
|
makePlatformImplementation
|
|
11640
|
-
} = await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__,
|
|
11649
|
+
} = await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6801));
|
|
11641
11650
|
return makePlatformImplementation(appId, opts, {
|
|
11642
11651
|
piMainStarted,
|
|
11643
11652
|
piLoadStarted,
|
|
@@ -12325,7 +12334,7 @@ function _updateNavMenu(members, newRouteViewDriver) {
|
|
|
12325
12334
|
|
|
12326
12335
|
/***/ }),
|
|
12327
12336
|
|
|
12328
|
-
/***/
|
|
12337
|
+
/***/ 6801:
|
|
12329
12338
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
12330
12339
|
|
|
12331
12340
|
"use strict";
|
|
@@ -14503,7 +14512,7 @@ class GmailThreadView {
|
|
|
14503
14512
|
[2018]: '.if > .nH'
|
|
14504
14513
|
};
|
|
14505
14514
|
_subjectContainerSelectorsAfterNov162023 = {
|
|
14506
|
-
'2023_11_16': '> .nH'
|
|
14515
|
+
'2023_11_16': '* > .nH'
|
|
14507
14516
|
};
|
|
14508
14517
|
addNoticeBar() {
|
|
14509
14518
|
const el = document.createElement('div');
|
|
@@ -15771,6 +15780,47 @@ function makePageParser(element, logger) {
|
|
|
15771
15780
|
}
|
|
15772
15781
|
// EXTERNAL MODULE: ./src/platform-implementation-js/lib/toItemWithLifetimeStream.ts
|
|
15773
15782
|
var toItemWithLifetimeStream = __webpack_require__(462);
|
|
15783
|
+
;// CONCATENATED MODULE: ./src/common/extractDocumentHtmlAndCss.ts
|
|
15784
|
+
|
|
15785
|
+
function extractDocumentHtmlAndCss() {
|
|
15786
|
+
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
|
|
15787
|
+
censor: true
|
|
15788
|
+
};
|
|
15789
|
+
try {
|
|
15790
|
+
const css = Array.from(document.styleSheets).flatMap(sheet => {
|
|
15791
|
+
try {
|
|
15792
|
+
const name = `\n/* Stylesheet : ${sheet.href || '[inline styles]'} */`;
|
|
15793
|
+
const rules = Array.from(sheet.cssRules).map(cssRule => cssRule.cssText);
|
|
15794
|
+
rules.splice(0, 0, name);
|
|
15795
|
+
return rules;
|
|
15796
|
+
} catch (e) {
|
|
15797
|
+
return [];
|
|
15798
|
+
}
|
|
15799
|
+
}).join('\n').replaceAll(`url("//`, `url("https://`);
|
|
15800
|
+
const links = Array.from(document.querySelectorAll('link')).filter(link => link.href?.includes('fonts') || link.as === 'image').map(link => link.outerHTML).join('\n');
|
|
15801
|
+
let body = document.body.innerHTML;
|
|
15802
|
+
body = body.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, '');
|
|
15803
|
+
if (options.censor) {
|
|
15804
|
+
body = (0,censorHTMLstring/* default */.Z)(body);
|
|
15805
|
+
}
|
|
15806
|
+
return `
|
|
15807
|
+
<!DOCTYPE html>
|
|
15808
|
+
<html>
|
|
15809
|
+
<head>
|
|
15810
|
+
${links}
|
|
15811
|
+
<style>
|
|
15812
|
+
${css}
|
|
15813
|
+
</style>
|
|
15814
|
+
</head>
|
|
15815
|
+
<body>
|
|
15816
|
+
${body}
|
|
15817
|
+
</body>
|
|
15818
|
+
</html>
|
|
15819
|
+
`;
|
|
15820
|
+
} catch (err) {
|
|
15821
|
+
return `couldn't extract document html and css: ${err}`;
|
|
15822
|
+
}
|
|
15823
|
+
}
|
|
15774
15824
|
;// CONCATENATED MODULE: ./src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.ts
|
|
15775
15825
|
|
|
15776
15826
|
|
|
@@ -15830,7 +15880,8 @@ class GmailRouteView {
|
|
|
15830
15880
|
this._setupSubViews();
|
|
15831
15881
|
}
|
|
15832
15882
|
if (this._type === 'CUSTOM_LIST') {
|
|
15833
|
-
kefir_esm.later(500, undefined).takeUntilBy(this._stopper).onValue(() => {
|
|
15883
|
+
kefir_esm.later(500, undefined).takeUntilBy(this._stopper).onValue(async () => {
|
|
15884
|
+
await this.#waitForMainElementSafe();
|
|
15834
15885
|
var last = driver.getLastCustomThreadListActivity();
|
|
15835
15886
|
if (!last || last.customRouteID !== this._customRouteID || Date.now() - last.timestamp > 5000) {
|
|
15836
15887
|
this.refresh();
|
|
@@ -15955,13 +16006,25 @@ class GmailRouteView {
|
|
|
15955
16006
|
customViewEl.style.height = `${parseInt(leftNav.style.height, 10) + (gtalkButtons ? gtalkButtons.offsetHeight : 0) - contentSectionElementBottomMargin}px`;
|
|
15956
16007
|
}
|
|
15957
16008
|
_setupSubViews() {
|
|
15958
|
-
browser_asap_default()(() => {
|
|
16009
|
+
browser_asap_default()(async () => {
|
|
15959
16010
|
if (!this._eventStream) return;
|
|
16011
|
+
await this.#waitForMainElementSafe();
|
|
15960
16012
|
this.#monitorRowListElements();
|
|
15961
16013
|
this._setupContentAndSidebarView();
|
|
15962
16014
|
this._setupScrollStream();
|
|
15963
16015
|
});
|
|
15964
16016
|
}
|
|
16017
|
+
async #waitForMainElementSafe() {
|
|
16018
|
+
const selector = '[role=main] .aia';
|
|
16019
|
+
try {
|
|
16020
|
+
// role=main attribute is not set while page in a loading state
|
|
16021
|
+
await (0,wait_for/* default */.Z)(() => document.querySelector(selector), 15_000);
|
|
16022
|
+
} catch {
|
|
16023
|
+
this._driver.getLogger().error(new querySelectorOrFail/* SelectorError */.u(selector), {
|
|
16024
|
+
html: extractDocumentHtmlAndCss()
|
|
16025
|
+
});
|
|
16026
|
+
}
|
|
16027
|
+
}
|
|
15965
16028
|
#monitorRowListElements() {
|
|
15966
16029
|
(0,toItemWithLifetimeStream/* default */.Z)(this.#page.tree.getAllByTag('rowListElement')).takeUntilBy(this._stopper).onValue(_ref3 => {
|
|
15967
16030
|
let {
|
|
@@ -16016,18 +16079,23 @@ class GmailRouteView {
|
|
|
16016
16079
|
}
|
|
16017
16080
|
async _startMonitoringPreviewPaneForThread(previewPaneContainer) {
|
|
16018
16081
|
let threadContainerElement;
|
|
16019
|
-
const
|
|
16082
|
+
const selector = 'table.Bs > tr';
|
|
16083
|
+
const selector_2023_11_16 = '.ao8:has(.a98.iY)';
|
|
16020
16084
|
try {
|
|
16021
16085
|
threadContainerElement = await (0,wait_for/* default */.Z)(() => {
|
|
16086
|
+
const threadContainerElement = previewPaneContainer.querySelector(selector);
|
|
16087
|
+
if (threadContainerElement) {
|
|
16088
|
+
return threadContainerElement;
|
|
16089
|
+
}
|
|
16022
16090
|
return previewPaneContainer.querySelector(selector_2023_11_16);
|
|
16023
16091
|
}, 15_000);
|
|
16024
16092
|
} catch {
|
|
16025
|
-
const selectorError = new querySelectorOrFail/* SelectorError */.u(
|
|
16093
|
+
const selectorError = new querySelectorOrFail/* SelectorError */.u(`${selector}, ${selector_2023_11_16}`, {
|
|
16026
16094
|
cause: new Error("Thread container for preview pane wasn't found")
|
|
16027
16095
|
});
|
|
16028
16096
|
if ((0,isStreakAppId/* default */.Z)(this._driver.getAppId())) {
|
|
16029
16097
|
this._driver.getLogger().error(selectorError, {
|
|
16030
|
-
html: (
|
|
16098
|
+
html: extractDocumentHtmlAndCss()
|
|
16031
16099
|
});
|
|
16032
16100
|
}
|
|
16033
16101
|
throw selectorError;
|
|
@@ -18034,24 +18102,26 @@ class AppToolbarButtonView extends safe_event_emitter/* default */.Z {
|
|
|
18034
18102
|
|
|
18035
18103
|
|
|
18036
18104
|
|
|
18037
|
-
|
|
18038
|
-
const toolbars_memberMap = new WeakMap();
|
|
18039
18105
|
class Toolbars extends safe_event_emitter/* default */.Z {
|
|
18106
|
+
#driver;
|
|
18107
|
+
#membrane;
|
|
18108
|
+
#piOpts;
|
|
18040
18109
|
SectionNames = SECTION_NAMES;
|
|
18041
18110
|
constructor(appId, driver, membrane, piOpts) {
|
|
18042
18111
|
super();
|
|
18043
|
-
|
|
18044
|
-
|
|
18045
|
-
|
|
18046
|
-
membrane,
|
|
18047
|
-
piOpts
|
|
18048
|
-
};
|
|
18049
|
-
toolbars_memberMap.set(this, members);
|
|
18112
|
+
this.#driver = driver;
|
|
18113
|
+
this.#membrane = membrane;
|
|
18114
|
+
this.#piOpts = piOpts;
|
|
18050
18115
|
}
|
|
18116
|
+
|
|
18117
|
+
/**
|
|
18118
|
+
* Registers a toolbar button to appear on thread rows, above the thread list when some rows are checked, and above threads.
|
|
18119
|
+
*
|
|
18120
|
+
* @returns a function which removes the button registration.
|
|
18121
|
+
*/
|
|
18051
18122
|
registerThreadButton(buttonDescriptor) {
|
|
18052
|
-
const members = (0,get_or_fail/* default */.Z)(toolbars_memberMap, this);
|
|
18053
18123
|
if ((buttonDescriptor.listSection === 'OTHER' || buttonDescriptor.threadSection === 'OTHER') && buttonDescriptor.hasDropdown) {
|
|
18054
|
-
|
|
18124
|
+
this.#driver.getLogger().errorApp(new Error('registerThreadButton does not support listSection=OTHER or threadSection=OTHER and hasDropdown=true together'));
|
|
18055
18125
|
buttonDescriptor = {
|
|
18056
18126
|
...buttonDescriptor,
|
|
18057
18127
|
hasDropdown: false
|
|
@@ -18062,7 +18132,7 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18062
18132
|
..._buttonDescriptor
|
|
18063
18133
|
} = buttonDescriptor;
|
|
18064
18134
|
const registerThreadButton = () => {
|
|
18065
|
-
return
|
|
18135
|
+
return this.#driver.registerThreadButton({
|
|
18066
18136
|
..._buttonDescriptor,
|
|
18067
18137
|
onClick: event => {
|
|
18068
18138
|
if (!_buttonDescriptor.onClick) return;
|
|
@@ -18070,8 +18140,8 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18070
18140
|
// Is this shape correct, or do we want positions here instead?
|
|
18071
18141
|
position: event.position,
|
|
18072
18142
|
dropdown: event.dropdown,
|
|
18073
|
-
selectedThreadViews: event.selectedThreadViewDrivers.map(x =>
|
|
18074
|
-
selectedThreadRowViews: event.selectedThreadRowViewDrivers.map(x =>
|
|
18143
|
+
selectedThreadViews: event.selectedThreadViewDrivers.map(x => this.#membrane.get(x)),
|
|
18144
|
+
selectedThreadRowViews: event.selectedThreadRowViewDrivers.map(x => this.#membrane.get(x))
|
|
18075
18145
|
});
|
|
18076
18146
|
}
|
|
18077
18147
|
});
|
|
@@ -18081,8 +18151,8 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18081
18151
|
} else {
|
|
18082
18152
|
const stopper = js_default()();
|
|
18083
18153
|
let currentRemover = null;
|
|
18084
|
-
|
|
18085
|
-
const routeView =
|
|
18154
|
+
this.#driver.getRouteViewDriverStream().takeUntilBy(stopper).onValue(routeViewDriver => {
|
|
18155
|
+
const routeView = this.#membrane.get(routeViewDriver);
|
|
18086
18156
|
if (hideFor(routeView)) {
|
|
18087
18157
|
if (currentRemover) {
|
|
18088
18158
|
currentRemover();
|
|
@@ -18103,8 +18173,13 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18103
18173
|
};
|
|
18104
18174
|
}
|
|
18105
18175
|
}
|
|
18176
|
+
|
|
18177
|
+
/**
|
|
18178
|
+
* @deprecated This method is deprecated in favor of {@link Toolbars.registerThreadButton}.
|
|
18179
|
+
*
|
|
18180
|
+
* Registers a toolbar button to appear above any list page such as the Inbox or Sent Mail.
|
|
18181
|
+
*/
|
|
18106
18182
|
registerToolbarButtonForList(buttonDescriptor) {
|
|
18107
|
-
const members = (0,get_or_fail/* default */.Z)(toolbars_memberMap, this);
|
|
18108
18183
|
return this.registerThreadButton({
|
|
18109
18184
|
positions: ['LIST'],
|
|
18110
18185
|
listSection: buttonDescriptor.section,
|
|
@@ -18117,7 +18192,7 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18117
18192
|
dropdown: event.dropdown,
|
|
18118
18193
|
selectedThreadRowViews: event.selectedThreadRowViews,
|
|
18119
18194
|
get threadRowViews() {
|
|
18120
|
-
|
|
18195
|
+
this.#driver.getLogger().deprecationWarning('Toolbars.registerToolbarButtonForList onClick event.threadRowViews');
|
|
18121
18196
|
return event.selectedThreadRowViews;
|
|
18122
18197
|
}
|
|
18123
18198
|
});
|
|
@@ -18128,6 +18203,12 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18128
18203
|
keyboardShortcutHandle: buttonDescriptor.keyboardShortcutHandle
|
|
18129
18204
|
});
|
|
18130
18205
|
}
|
|
18206
|
+
|
|
18207
|
+
/**
|
|
18208
|
+
* @deprecated This function is deprecated in favor of {@link Toolbars#registerThreadButton}.
|
|
18209
|
+
*
|
|
18210
|
+
* Registers a toolbar button to appear when viewing a thread.
|
|
18211
|
+
*/
|
|
18131
18212
|
registerToolbarButtonForThreadView(buttonDescriptor) {
|
|
18132
18213
|
return this.registerThreadButton({
|
|
18133
18214
|
positions: ['THREAD'],
|
|
@@ -18149,21 +18230,23 @@ class Toolbars extends safe_event_emitter/* default */.Z {
|
|
|
18149
18230
|
keyboardShortcutHandle: buttonDescriptor.keyboardShortcutHandle
|
|
18150
18231
|
});
|
|
18151
18232
|
}
|
|
18233
|
+
|
|
18234
|
+
/** @deprecated */
|
|
18152
18235
|
setAppToolbarButton(appToolbarButtonDescriptor) {
|
|
18153
|
-
|
|
18154
|
-
|
|
18155
|
-
piOpts
|
|
18156
|
-
} = (0,get_or_fail/* default */.Z)(toolbars_memberMap, this);
|
|
18157
|
-
driver.getLogger().deprecationWarning('Toolbars.setAppToolbarButton', 'Toolbars.addToolbarButtonForApp');
|
|
18158
|
-
if (piOpts.REQUESTED_API_VERSION !== 1) {
|
|
18236
|
+
this.#driver.getLogger().deprecationWarning('Toolbars.setAppToolbarButton', 'Toolbars.addToolbarButtonForApp');
|
|
18237
|
+
if (this.#piOpts.REQUESTED_API_VERSION !== 1) {
|
|
18159
18238
|
throw new Error('This method was discontinued after API version 1');
|
|
18160
18239
|
}
|
|
18161
18240
|
return this.addToolbarButtonForApp(appToolbarButtonDescriptor);
|
|
18162
18241
|
}
|
|
18242
|
+
|
|
18243
|
+
/**
|
|
18244
|
+
* Adds a button and dropdown to the "Global Toolbar". This is typically used to show a dropdown with general information about your application. In Gmail, this refers to the navigation area at the top right of the window.
|
|
18245
|
+
*/
|
|
18163
18246
|
addToolbarButtonForApp(buttonDescriptor) {
|
|
18164
18247
|
const buttonDescriptorStream = kefir_cast_default()(kefir_esm["default"], buttonDescriptor);
|
|
18165
|
-
const appToolbarButtonViewDriverPromise =
|
|
18166
|
-
const appToolbarButtonView = new AppToolbarButtonView(
|
|
18248
|
+
const appToolbarButtonViewDriverPromise = this.#driver.addToolbarButtonForApp(buttonDescriptorStream);
|
|
18249
|
+
const appToolbarButtonView = new AppToolbarButtonView(this.#driver, appToolbarButtonViewDriverPromise);
|
|
18167
18250
|
return appToolbarButtonView;
|
|
18168
18251
|
}
|
|
18169
18252
|
}
|
|
@@ -19076,7 +19159,7 @@ options.insert = htmlElement => {
|
|
|
19076
19159
|
htmlElement.setAttribute('data-inboxsdk-version',
|
|
19077
19160
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment -- this is injected by webpack
|
|
19078
19161
|
///@ts-ignore
|
|
19079
|
-
"2.1.
|
|
19162
|
+
"2.1.18-1700600933539-7ea8e780cf2adf2b-MODIFIED");
|
|
19080
19163
|
document.head.append(htmlElement);
|
|
19081
19164
|
};
|
|
19082
19165
|
options.domAPI = (styleDomAPI_default());
|
|
@@ -59731,13 +59814,13 @@ class PlatformImplementationLoader {
|
|
|
59731
59814
|
throw new Error('Unexpected error: This function must be overridden');
|
|
59732
59815
|
};
|
|
59733
59816
|
static async load(appId, opts) {
|
|
59734
|
-
if (!
|
|
59817
|
+
if (!globalThis.__InboxSDKImpLoader) {
|
|
59735
59818
|
await this.loadScript();
|
|
59736
|
-
if (!
|
|
59819
|
+
if (!globalThis.__InboxSDKImpLoader) {
|
|
59737
59820
|
throw new Error('Implementation file did not load correctly');
|
|
59738
59821
|
}
|
|
59739
59822
|
}
|
|
59740
|
-
return
|
|
59823
|
+
return globalThis.__InboxSDKImpLoader.load('0.1', appId, opts);
|
|
59741
59824
|
}
|
|
59742
59825
|
static async preload() {
|
|
59743
59826
|
// Prime the load by calling it and letting the promise be memoized.
|
package/package.json
CHANGED
package/src/inboxsdk.d.ts
CHANGED
|
@@ -29,6 +29,10 @@ import type { MoleOptions } from './platform-implementation-js/dom-driver/gmail/
|
|
|
29
29
|
import type { ComposeButtonDescriptor } from './platform-implementation-js/driver-interfaces/compose-view-driver';
|
|
30
30
|
import type ComposeView from './platform-implementation-js/views/compose-view';
|
|
31
31
|
import type Search from './platform-implementation-js/namespaces/search';
|
|
32
|
+
import type {
|
|
33
|
+
default as Toolbars,
|
|
34
|
+
LegacyToolbarButtonDescriptor,
|
|
35
|
+
} from './platform-implementation-js/namespaces/toolbars';
|
|
32
36
|
|
|
33
37
|
export type { User };
|
|
34
38
|
|
|
@@ -199,22 +203,11 @@ export interface Widgets {
|
|
|
199
203
|
showTopMessageBarView(opts: { el: Element }): TopMessageBarView;
|
|
200
204
|
}
|
|
201
205
|
|
|
202
|
-
export
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
): AppToolbarButtonView;
|
|
208
|
-
registerThreadButton(descriptor: ToolbarButtonDescriptor): () => void;
|
|
209
|
-
registerToolbarButtonForThreadView(
|
|
210
|
-
descriptor: LegacyToolbarButtonDescriptor,
|
|
211
|
-
): () => void;
|
|
212
|
-
SectionNames: {
|
|
213
|
-
INBOX_STATE: 'INBOX_STATE';
|
|
214
|
-
METADATA_STATE: 'METADATA_STATE';
|
|
215
|
-
OTHER: 'OTHER';
|
|
216
|
-
};
|
|
217
|
-
}
|
|
206
|
+
export { Toolbars, LegacyToolbarButtonDescriptor };
|
|
207
|
+
export {
|
|
208
|
+
ToolbarButtonDescriptor,
|
|
209
|
+
ToolbarButtonOnClickEvent,
|
|
210
|
+
} from './platform-implementation-js/namespaces/toolbars';
|
|
218
211
|
|
|
219
212
|
export interface AppToolbarButtonDescriptor {
|
|
220
213
|
title: string;
|
|
@@ -525,39 +518,6 @@ export interface MessageViewLinkDescriptor {
|
|
|
525
518
|
isInQuotedArea: boolean;
|
|
526
519
|
}
|
|
527
520
|
|
|
528
|
-
export interface ToolbarButtonDescriptor {
|
|
529
|
-
title: string;
|
|
530
|
-
iconUrl?: string;
|
|
531
|
-
iconClass?: string;
|
|
532
|
-
positions?: Array<'THREAD' | 'ROW' | 'LIST'> | null;
|
|
533
|
-
threadSection?: string;
|
|
534
|
-
listSection?: string;
|
|
535
|
-
onClick(event: ToolbarButtonOnClickEvent): void;
|
|
536
|
-
hasDropdown: boolean;
|
|
537
|
-
hideFor?: (routeView: RouteView) => boolean;
|
|
538
|
-
keyboardShortcutHandle?: KeyboardShortcutHandle;
|
|
539
|
-
orderHint?: number;
|
|
540
|
-
}
|
|
541
|
-
|
|
542
|
-
export interface LegacyToolbarButtonDescriptor {
|
|
543
|
-
title: string;
|
|
544
|
-
iconUrl?: string;
|
|
545
|
-
iconClass?: string;
|
|
546
|
-
section: 'INBOX_STATE' | 'METADATA_STATE' | 'OTHER';
|
|
547
|
-
onClick(event: ToolbarButtonOnClickEvent): void;
|
|
548
|
-
hasDropdown?: boolean;
|
|
549
|
-
hideFor?: (routeView: RouteView) => boolean;
|
|
550
|
-
keyboardShortcutHandle?: KeyboardShortcutHandle;
|
|
551
|
-
orderHint?: number;
|
|
552
|
-
}
|
|
553
|
-
|
|
554
|
-
export interface ToolbarButtonOnClickEvent {
|
|
555
|
-
selectedThreadViews: Array<ThreadView>;
|
|
556
|
-
selectedThreadRowViews: Array<ThreadRowView>;
|
|
557
|
-
dropdown?: DropdownView;
|
|
558
|
-
threadView?: ThreadView;
|
|
559
|
-
}
|
|
560
|
-
|
|
561
521
|
export interface KeyboardShortcutDescriptor {
|
|
562
522
|
chord: string;
|
|
563
523
|
description: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractDocumentHtmlAndCss.d.ts","sourceRoot":"","sources":["../../../../../src/common/extractDocumentHtmlAndCss.ts"],"names":[],"mappings":"AAEA,wBAAgB,yBAAyB,CACvC,OAAO,GAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAqB,UAoDhD"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type * as Kefir from 'kefir';
|
|
2
2
|
import GmailAppToolbarButtonView from '../views/gmail-app-toolbar-button-view';
|
|
3
3
|
import type GmailDriver from '../gmail-driver';
|
|
4
|
-
|
|
4
|
+
import { AppToolbarButtonDescriptor } from '../../../../inboxsdk';
|
|
5
|
+
export default function addToolbarButtonForApp(gmailDriver: GmailDriver, buttonDescriptor: Kefir.Stream<AppToolbarButtonDescriptor, any>): Promise<GmailAppToolbarButtonView>;
|
|
5
6
|
//# sourceMappingURL=add-toolbar-button-for-app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-toolbar-button-for-app.d.ts","sourceRoot":"","sources":["../../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,yBAAyB,MAAM,wCAAwC,CAAC;AAC/E,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"add-toolbar-button-for-app.d.ts","sourceRoot":"","sources":["../../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,yBAAyB,MAAM,wCAAwC,CAAC;AAC/E,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,0BAA0B,EAAE,GAAG,CAAC,GAC9D,OAAO,CAAC,yBAAyB,CAAC,CAUpC"}
|
|
@@ -29,7 +29,7 @@ import type NativeGmailNavItemView from './views/native-gmail-nav-item-view';
|
|
|
29
29
|
import type { AppMenuItemDescriptor } from '../../namespaces/app-menu';
|
|
30
30
|
import type ContentPanelViewDriver from '../../driver-common/sidebar/ContentPanelViewDriver';
|
|
31
31
|
import GmailNavItemView, { type NavItemDescriptor } from './views/gmail-nav-item-view';
|
|
32
|
-
import { Contact } from '../../../inboxsdk';
|
|
32
|
+
import { AppToolbarButtonDescriptor, Contact } from '../../../inboxsdk';
|
|
33
33
|
import GmailAttachmentCardView from './views/gmail-attachment-card-view';
|
|
34
34
|
import type { PersonDetails } from '../../namespaces/user';
|
|
35
35
|
import { type ContentPanelDescriptor } from '../../driver-common/sidebar/ContentPanelViewDriver';
|
|
@@ -101,7 +101,7 @@ declare class GmailDriver {
|
|
|
101
101
|
resolveUrlRedirects(url: string): Promise<string>;
|
|
102
102
|
registerSearchSuggestionsProvider(handler: SearchSuggestionsProvider): void;
|
|
103
103
|
registerSearchQueryRewriter(obj: SearchQueryRewriter): void;
|
|
104
|
-
addToolbarButtonForApp(buttonDescriptor: any): Promise<GmailAppToolbarButtonView>;
|
|
104
|
+
addToolbarButtonForApp(buttonDescriptor: Kefir.Stream<AppToolbarButtonDescriptor, any>): Promise<GmailAppToolbarButtonView>;
|
|
105
105
|
openNewComposeViewDriver(): Promise<GmailComposeView>;
|
|
106
106
|
getNextComposeViewDriver(timeout?: number): Promise<GmailComposeView>;
|
|
107
107
|
openDraftByMessageID(messageID: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gmail-driver.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAUxC,OAAO,aAAa,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,kBAAkB,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,yBAAyB,MAAM,uCAAuC,CAAC;AAInF,OAAO,wBAAwB,MAAM,wCAAwC,CAAC;AAC9E,OAAO,oBAAoB,MAAM,mCAAmC,CAAC;AACrE,OAAO,mBAAmB,EAAE,EAC1B,KAAK,WAAW,EACjB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,eAAe,MAAM,kCAAkC,CAAC;AAE/D,OAAO,4BAA4B,MAAM,gDAAgD,CAAC;AAG1F,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAO7D,OAAO,KAAK,sBAAsB,MAAM,sCAAsC,CAAC;AAE/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAYnF,OAAO,mBAAmB,MAAM,sCAAsC,CAAC;AAQvE,OAAO,mBAAmB,MAAM,gCAAgC,CAAC;AAWjE,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,gBAAgB,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,SAAS,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,eAAe,MAAM,2BAA2B,CAAC;AAG7D,OAAO,KAAK,cAAc,MAAM,2CAA2C,CAAC;AAC5E,OAAO,KAAK,oBAAoB,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,sBAAsB,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEvE,OAAO,KAAK,sBAAsB,MAAM,oDAAoD,CAAC;AAC7F,OAAO,gBAAgB,EAAE,EACvB,KAAK,iBAAiB,EACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"gmail-driver.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gmail-element-getter.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAA+B,EAC7B,mBAAmB,EACpB,MAAM,yCAAyC,CAAC;AAmBjD,QAAA,MAAM,kBAAkB;yBACD,WAAW,GAAG,IAAI;uCAcJ,WAAW,GAAG,IAAI;kDAKP,WAAW,GAAG,IAAI;+CAKrB,WAAW,GAAG,IAAI;wBAIzC,WAAW,GAAG,IAAI;iCAOT,WAAW,GAAG,IAAI;gCAInB,WAAW,GAAG,SAAS,GAAG,IAAI;2CA8BnB,WAAW,GAAG,IAAI;iDAIZ,MAAM,UAAU,CAC3D,mBAAmB,EACnB,KAAK,CACN;uBAgBkB,WAAW,GAAG,IAAI;kCAIP,WAAW,GAAG,IAAI;+BAUrB,WAAW,GAAG,IAAI;0CAIP,WAAW,GAAG,IAAI;+BAI7B,WAAW,GAAG,IAAI;+CAQrC,GAAG,KACR,MAAM,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IAIvC;;;;OAIG;+BACwB,OAAO;;;;;;;uDAuEiB,WAAW,GAAG,IAAI;mDAItB,WAAW,GAAG,IAAI;mCAQlC,WAAW,GAAG,IAAI;0BAM3B,WAAW,EAAE,GAAG,IAAI;0BAQpB,WAAW,GAAG,IAAI;sBAItB,gBAAgB,GAAG,IAAI;qCAMR,WAAW,GAAG,IAAI;kCAIrB,WAAW,GAAG,IAAI;2BAIzB,WAAW,GAAG,IAAI;iCAWZ,WAAW,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"gmail-element-getter.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAA+B,EAC7B,mBAAmB,EACpB,MAAM,yCAAyC,CAAC;AAmBjD,QAAA,MAAM,kBAAkB;yBACD,WAAW,GAAG,IAAI;uCAcJ,WAAW,GAAG,IAAI;kDAKP,WAAW,GAAG,IAAI;+CAKrB,WAAW,GAAG,IAAI;wBAIzC,WAAW,GAAG,IAAI;iCAOT,WAAW,GAAG,IAAI;gCAInB,WAAW,GAAG,SAAS,GAAG,IAAI;2CA8BnB,WAAW,GAAG,IAAI;iDAIZ,MAAM,UAAU,CAC3D,mBAAmB,EACnB,KAAK,CACN;uBAgBkB,WAAW,GAAG,IAAI;kCAIP,WAAW,GAAG,IAAI;+BAUrB,WAAW,GAAG,IAAI;0CAIP,WAAW,GAAG,IAAI;+BAI7B,WAAW,GAAG,IAAI;+CAQrC,GAAG,KACR,MAAM,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IAIvC;;;;OAIG;+BACwB,OAAO;;;;;;;uDAuEiB,WAAW,GAAG,IAAI;mDAItB,WAAW,GAAG,IAAI;mCAQlC,WAAW,GAAG,IAAI;0BAM3B,WAAW,EAAE,GAAG,IAAI;0BAQpB,WAAW,GAAG,IAAI;sBAItB,gBAAgB,GAAG,IAAI;qCAMR,WAAW,GAAG,IAAI;kCAIrB,WAAW,GAAG,IAAI;2BAIzB,WAAW,GAAG,IAAI;iCAWZ,WAAW,GAAG,IAAI;yBAc1B,WAAW;8BAIN,WAAW,GAAG,IAAI;sBAM1B,OAAO;mBAaV,OAAO;qBAIL,OAAO;oBAIR,OAAO;iCAIM,OAAO;gCAOR,OAAO;;qCASJ,WAAW,GAAG,IAAI;;gCAKrB,QAAQ,IAAI,CAAC;CAG1C,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gmail-route-view.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAQrC,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AACtD,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,2BAA2B,MAAM,mCAAmC,CAAC;AAG5E,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,mBAAmB,MAAM,2CAA2C,CAAC;AASjF,cAAM,cAAc;;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,QAAQ,kCAAkB;IAC1B,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,oBAAoB,EAAE,mBAAmB,CAAC;IAC1C,OAAO,EAAE,WAAW,CAAC;IACrB,YAAY,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAChC,kBAAkB,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,WAAW,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAAC;IAChD,2BAA2B,EAAE,OAAO,CAAC;IACrC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAIpC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAClE,mBAAmB,EAAE,mBAAmB,EACxC,MAAM,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"gmail-route-view.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../../../src/platform-implementation-js/main.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExE,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,mBAAmB,EAAE;QACvB,IAAI,EAAE,CACJ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,GAAG,KACN,OAAO,CAAC,sBAAsB,CAAC,CAAC;KACtC,CAAC;CACH;
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../../../src/platform-implementation-js/main.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExE,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,mBAAmB,EAAE;QACvB,IAAI,EAAE,CACJ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,GAAG,KACN,OAAO,CAAC,sBAAsB,CAAC,CAAC;KACtC,CAAC;CACH;AAgED,OAAO,EAAE,CAAC"}
|
|
@@ -1,20 +1,71 @@
|
|
|
1
|
+
import { type Stream } from 'kefir';
|
|
1
2
|
import EventEmitter from '../lib/safe-event-emitter';
|
|
2
3
|
import type { Driver } from '../driver-interfaces/driver';
|
|
3
4
|
import type { PiOpts } from '../platform-implementation';
|
|
4
5
|
import type Membrane from '../lib/Membrane';
|
|
5
6
|
import AppToolbarButtonView from '../views/app-toolbar-button-view';
|
|
6
|
-
import type {
|
|
7
|
-
export
|
|
7
|
+
import type { AppToolbarButtonDescriptor, DropdownView, KeyboardShortcutHandle, RouteView, ThreadRowView, ThreadView } from '../../inboxsdk';
|
|
8
|
+
export interface ToolbarButtonOnClickEvent {
|
|
9
|
+
selectedThreadViews: Array<ThreadView>;
|
|
10
|
+
selectedThreadRowViews: Array<ThreadRowView>;
|
|
11
|
+
dropdown?: DropdownView;
|
|
12
|
+
threadView?: ThreadView;
|
|
13
|
+
}
|
|
14
|
+
export interface LegacyToolbarButtonDescriptor {
|
|
15
|
+
title: string;
|
|
16
|
+
iconUrl?: string;
|
|
17
|
+
iconClass?: string;
|
|
18
|
+
section: 'INBOX_STATE' | 'METADATA_STATE' | 'OTHER';
|
|
19
|
+
onClick(event: ToolbarButtonOnClickEvent): void;
|
|
20
|
+
hasDropdown?: boolean;
|
|
21
|
+
hideFor?: (routeView: RouteView) => boolean;
|
|
22
|
+
keyboardShortcutHandle?: KeyboardShortcutHandle;
|
|
23
|
+
orderHint?: number;
|
|
24
|
+
}
|
|
25
|
+
export interface ToolbarButtonDescriptor {
|
|
26
|
+
title: string;
|
|
27
|
+
iconUrl?: string;
|
|
28
|
+
iconClass?: string;
|
|
29
|
+
positions?: Array<'THREAD' | 'ROW' | 'LIST'> | null;
|
|
30
|
+
threadSection?: string;
|
|
31
|
+
listSection?: string;
|
|
32
|
+
onClick(event: ToolbarButtonOnClickEvent): void;
|
|
33
|
+
hasDropdown: boolean;
|
|
34
|
+
hideFor?: (routeView: RouteView) => boolean;
|
|
35
|
+
keyboardShortcutHandle?: KeyboardShortcutHandle;
|
|
36
|
+
orderHint?: number;
|
|
37
|
+
}
|
|
38
|
+
export default class Toolbars extends EventEmitter {
|
|
39
|
+
#private;
|
|
8
40
|
SectionNames: Readonly<{
|
|
9
41
|
readonly INBOX_STATE: "INBOX_STATE";
|
|
10
42
|
readonly METADATA_STATE: "METADATA_STATE";
|
|
11
43
|
readonly OTHER: "OTHER";
|
|
12
44
|
}>;
|
|
13
45
|
constructor(appId: string, driver: Driver, membrane: Membrane, piOpts: PiOpts);
|
|
46
|
+
/**
|
|
47
|
+
* Registers a toolbar button to appear on thread rows, above the thread list when some rows are checked, and above threads.
|
|
48
|
+
*
|
|
49
|
+
* @returns a function which removes the button registration.
|
|
50
|
+
*/
|
|
14
51
|
registerThreadButton(buttonDescriptor: ToolbarButtonDescriptor): () => void;
|
|
52
|
+
/**
|
|
53
|
+
* @deprecated This method is deprecated in favor of {@link Toolbars.registerThreadButton}.
|
|
54
|
+
*
|
|
55
|
+
* Registers a toolbar button to appear above any list page such as the Inbox or Sent Mail.
|
|
56
|
+
*/
|
|
15
57
|
registerToolbarButtonForList(buttonDescriptor: Record<string, any>): () => void;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated This function is deprecated in favor of {@link Toolbars#registerThreadButton}.
|
|
60
|
+
*
|
|
61
|
+
* Registers a toolbar button to appear when viewing a thread.
|
|
62
|
+
*/
|
|
63
|
+
registerToolbarButtonForThreadView(buttonDescriptor: LegacyToolbarButtonDescriptor): () => void;
|
|
64
|
+
/** @deprecated */
|
|
65
|
+
setAppToolbarButton(appToolbarButtonDescriptor: AppToolbarButtonDescriptor | Stream<AppToolbarButtonDescriptor, any>): AppToolbarButtonView;
|
|
66
|
+
/**
|
|
67
|
+
* Adds a button and dropdown to the "Global Toolbar". This is typically used to show a dropdown with general information about your application. In Gmail, this refers to the navigation area at the top right of the window.
|
|
68
|
+
*/
|
|
69
|
+
addToolbarButtonForApp(buttonDescriptor: AppToolbarButtonDescriptor | Stream<AppToolbarButtonDescriptor, any>): AppToolbarButtonView;
|
|
19
70
|
}
|
|
20
71
|
//# sourceMappingURL=toolbars.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolbars.d.ts","sourceRoot":"","sources":["../../../../../../src/platform-implementation-js/namespaces/toolbars.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toolbars.d.ts","sourceRoot":"","sources":["../../../../../../src/platform-implementation-js/namespaces/toolbars.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,MAAM,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oBAAoB,MAAM,kCAAkC,CAAC;AAEpE,OAAO,KAAK,EACV,0BAA0B,EAC1B,YAAY,EACZ,sBAAsB,EACtB,SAAS,EACT,aAAa,EACb,UAAU,EACX,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,yBAAyB;IACxC,mBAAmB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,sBAAsB,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,aAAa,GAAG,gBAAgB,GAAG,OAAO,CAAC;IACpD,OAAO,CAAC,KAAK,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;IAC5C,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,KAAK,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAChD,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;IAC5C,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,YAAY;;IAKhD,YAAY;;;;OAAiB;gBAG3B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM;IAQhB;;;;OAIG;IACH,oBAAoB,CAAC,gBAAgB,EAAE,uBAAuB;IAwE9D;;;;OAIG;IACH,4BAA4B,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IA8BlE;;;;OAIG;IACH,kCAAkC,CAChC,gBAAgB,EAAE,6BAA6B;IAwBjD,kBAAkB;IAClB,mBAAmB,CACjB,0BAA0B,EACtB,0BAA0B,GAC1B,MAAM,CAAC,0BAA0B,EAAE,GAAG,CAAC;IAgB7C;;OAEG;IACH,sBAAsB,CACpB,gBAAgB,EACZ,0BAA0B,GAC1B,MAAM,CAAC,0BAA0B,EAAE,GAAG,CAAC;CAY9C"}
|