@inboxsdk/core 1.0.1 → 1.0.3
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 +5 -5
- package/inboxsdk.js.map +1 -1
- package/package.json +1 -1
- package/pageWorld.js.map +1 -1
- package/src/inboxsdk.d.ts +16 -1
- package/src/injected-js/gmail/modify-suggestions.d.ts +2 -0
- package/src/injected-js/gmail/modify-suggestions.d.ts.map +1 -1
- package/src/platform-implementation-js/constants/router.d.ts +5 -0
- package/src/platform-implementation-js/dom-driver/gmail/custom-style.d.ts +2 -0
- package/src/platform-implementation-js/dom-driver/gmail/custom-style.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/custom-style.js +16 -21
- package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.d.ts +12 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +152 -187
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.d.ts +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.js +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.d.ts +5 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +15 -20
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.d.ts +4 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +59 -56
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.d.ts +9 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +42 -54
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.d.ts +4 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +31 -33
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.d.ts +8 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +21 -23
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.d.ts +4 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +19 -31
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.d.ts +7 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.d.ts +5 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +51 -60
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.d.ts +20 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +166 -130
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +17 -22
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.d.ts +4 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +44 -51
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +17 -22
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +136 -129
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.d.ts +6 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +102 -95
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.d.ts +6 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +144 -169
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +14 -23
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +41 -49
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.d.ts +5 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +286 -294
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +19 -26
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +36 -42
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +34 -33
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.d.ts +13 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +80 -81
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +124 -81
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.d.ts +10 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +47 -54
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts +183 -106
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +712 -647
- package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.d.ts +7 -0
- package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +93 -82
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.d.ts +7 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.d.ts +5 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.d.ts +11 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +20 -32
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.d.ts +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.d.ts +8 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts +2 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts.map +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.js +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.d.ts +8 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.d.ts +3 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +3 -1
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.d.ts +10 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.d.ts +5 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.d.ts +9 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.d.ts +12 -0
- package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.d.ts +9 -0
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.d.ts +20 -0
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +107 -108
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.d.ts +16 -0
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +1 -1
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.d.ts +13 -0
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.d.ts.map +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +66 -66
- package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.d.ts +5 -0
- package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.d.ts +6 -0
- package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.d.ts +6 -0
- package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.d.ts +1 -0
- package/src/platform-implementation-js/driver-interfaces/driver.d.ts +3 -6
- package/src/platform-implementation-js/driver-interfaces/mole-view-driver.d.ts +27 -0
- package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.d.ts +4 -0
- package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.d.ts.map +1 -0
- package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +34 -34
- package/src/platform-implementation-js/lib/dom/element-view-mapper.d.ts +10 -0
- package/src/platform-implementation-js/lib/dom/element-view-mapper.d.ts.map +1 -0
- package/src/platform-implementation-js/lib/dom/element-view-mapper.js +9 -17
- package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.d.ts +4 -0
- package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.d.ts.map +1 -0
- package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +7 -16
- package/src/platform-implementation-js/lib/populateRouteID.d.ts +6 -0
- package/src/platform-implementation-js/lib/rewriteCssWithIdMap.d.ts +2 -0
- package/src/platform-implementation-js/lib/rewriteCssWithIdMap.d.ts.map +1 -0
- package/src/platform-implementation-js/lib/rewriteCssWithIdMap.js +4 -11
- package/src/platform-implementation-js/lib/routeIDmatchesHash.d.ts +4 -0
- package/src/platform-implementation-js/lib/toLiveSet.d.ts +5 -0
- package/src/platform-implementation-js/lib/toLiveSet.d.ts.map +1 -0
- package/src/platform-implementation-js/lib/toLiveSet.js +22 -33
- package/src/platform-implementation-js/namespaces/router.d.ts +1 -0
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.test.js +0 -183
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.test.js +0 -218
- package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.test.js +0 -85
- package/src/platform-implementation-js/lib/rewriteCssWithIdMap.test.js +0 -43
|
@@ -1,142 +1,178 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
this._appName = null;
|
|
20
|
-
this._appIconUrl = null;
|
|
21
|
-
this._stopper = (0, _kefirStopper.default)();
|
|
22
|
-
this._shortcuts = new Set();
|
|
23
|
-
this._monitorKeyboardHelp();
|
|
24
|
-
}
|
|
25
|
-
destroy() {
|
|
26
|
-
this._stopper.destroy();
|
|
27
|
-
this._shortcuts.clear();
|
|
28
|
-
}
|
|
29
|
-
set(keyboardShortcutHandle, appId, appName, appIconUrl) {
|
|
30
|
-
this._initializeAppValues(appId, appName, appIconUrl);
|
|
31
|
-
this._shortcuts.add(keyboardShortcutHandle);
|
|
32
|
-
}
|
|
33
|
-
delete(keyboardShortcutHandle) {
|
|
34
|
-
this._shortcuts.delete(keyboardShortcutHandle);
|
|
35
|
-
}
|
|
36
|
-
_initializeAppValues(appId, appName, appIconUrl) {
|
|
37
|
-
if (!this._appId) {
|
|
38
|
-
this._appId = appId;
|
|
1
|
+
import escape from 'lodash/escape';
|
|
2
|
+
import kefirStopper from 'kefir-stopper';
|
|
3
|
+
import makeElementChildStream from '../../../lib/dom/make-element-child-stream';
|
|
4
|
+
import querySelector from '../../../lib/dom/querySelectorOrFail';
|
|
5
|
+
import makeMutationObserverChunkedStream from '../../../lib/dom/make-mutation-observer-chunked-stream';
|
|
6
|
+
export default class KeyboardShortcutHelpModifier {
|
|
7
|
+
_appId;
|
|
8
|
+
_appName;
|
|
9
|
+
_appIconUrl;
|
|
10
|
+
_stopper;
|
|
11
|
+
_shortcuts;
|
|
12
|
+
constructor() {
|
|
13
|
+
this._appId = null; // TODO have these passed to the constructor
|
|
14
|
+
this._appName = null;
|
|
15
|
+
this._appIconUrl = null;
|
|
16
|
+
this._stopper = kefirStopper();
|
|
17
|
+
this._shortcuts = new Set();
|
|
18
|
+
this._monitorKeyboardHelp();
|
|
39
19
|
}
|
|
40
|
-
|
|
41
|
-
|
|
20
|
+
destroy() {
|
|
21
|
+
this._stopper.destroy();
|
|
22
|
+
this._shortcuts.clear();
|
|
42
23
|
}
|
|
43
|
-
|
|
44
|
-
|
|
24
|
+
set(keyboardShortcutHandle, appId, appName, appIconUrl) {
|
|
25
|
+
this._initializeAppValues(appId, appName, appIconUrl);
|
|
26
|
+
this._shortcuts.add(keyboardShortcutHandle);
|
|
45
27
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
(0, _makeElementChildStream.default)(document.body).map(event => event.el).filter(node => node && node.classList && node.classList.contains('wa')).flatMap(node => (0, _makeMutationObserverChunkedStream.default)(node, {
|
|
49
|
-
attributes: true,
|
|
50
|
-
attributeFilter: ['class']
|
|
51
|
-
}).filter(() => !node.classList.contains('aou')).toProperty(() => null).map(() => node)).takeUntilBy(this._stopper).onValue(node => this._renderHelp(node));
|
|
52
|
-
}
|
|
53
|
-
_renderHelp(node) {
|
|
54
|
-
if (this._shortcuts.size === 0) {
|
|
55
|
-
return;
|
|
28
|
+
delete(keyboardShortcutHandle) {
|
|
29
|
+
this._shortcuts.delete(keyboardShortcutHandle);
|
|
56
30
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
31
|
+
_initializeAppValues(appId, appName, appIconUrl) {
|
|
32
|
+
if (!this._appId) {
|
|
33
|
+
this._appId = appId;
|
|
34
|
+
}
|
|
35
|
+
if (!this._appName) {
|
|
36
|
+
this._appName = appName;
|
|
37
|
+
}
|
|
38
|
+
if (!this._appIconUrl) {
|
|
39
|
+
this._appIconUrl = appIconUrl;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
_monitorKeyboardHelp() {
|
|
43
|
+
makeElementChildStream(document.body)
|
|
44
|
+
.map((event) => event.el)
|
|
45
|
+
.filter((node) => node && node.classList && node.classList.contains('wa'))
|
|
46
|
+
.flatMap((node) => makeMutationObserverChunkedStream(node, {
|
|
47
|
+
attributes: true,
|
|
48
|
+
attributeFilter: ['class'],
|
|
49
|
+
})
|
|
50
|
+
.filter(() => !node.classList.contains('aou'))
|
|
51
|
+
.toProperty(() => null)
|
|
52
|
+
.map(() => node))
|
|
53
|
+
.takeUntilBy(this._stopper)
|
|
54
|
+
.onValue((node) => this._renderHelp(node));
|
|
55
|
+
}
|
|
56
|
+
_renderHelp(node) {
|
|
57
|
+
if (this._shortcuts.size === 0) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
61
|
+
var keys = this._shortcuts.keys();
|
|
62
|
+
var header = this._renderHeader();
|
|
63
|
+
var table = this._renderTable();
|
|
64
|
+
var bodies = table.querySelectorAll('tbody tbody');
|
|
65
|
+
var index = 0;
|
|
66
|
+
this._shortcuts.forEach((keyboardShortcutHandle) => {
|
|
67
|
+
this._renderShortcut(bodies[index % 2], keyboardShortcutHandle);
|
|
68
|
+
index++;
|
|
69
|
+
});
|
|
70
|
+
const firstHeader = querySelector(node, '.aov');
|
|
71
|
+
const parent = firstHeader.parentElement;
|
|
72
|
+
if (!parent)
|
|
73
|
+
throw new Error('Could not find parent');
|
|
74
|
+
parent.insertBefore(header, firstHeader);
|
|
75
|
+
parent.insertBefore(table, firstHeader);
|
|
76
|
+
}
|
|
77
|
+
_renderHeader() {
|
|
78
|
+
const header = document.createElement('div');
|
|
79
|
+
header.setAttribute('class', 'aov aox');
|
|
80
|
+
header.innerHTML = [
|
|
81
|
+
'<div class="aow">',
|
|
82
|
+
'<span class="inboxsdk__shortcutHelp_title">',
|
|
83
|
+
escape(this._appName || this._appId) + ' keyboard shortcuts',
|
|
84
|
+
'</span>',
|
|
85
|
+
'</div>',
|
|
86
|
+
].join('');
|
|
87
|
+
if (this._appIconUrl) {
|
|
88
|
+
const img = document.createElement('img');
|
|
89
|
+
if (this._appIconUrl) {
|
|
90
|
+
img.src = this._appIconUrl;
|
|
91
|
+
}
|
|
92
|
+
img.setAttribute('class', 'inboxsdk__icon');
|
|
93
|
+
const title = querySelector(header, '.inboxsdk__shortcutHelp_title');
|
|
94
|
+
title.insertBefore(img, title.firstChild);
|
|
95
|
+
}
|
|
96
|
+
return header;
|
|
97
|
+
}
|
|
98
|
+
_renderTable() {
|
|
99
|
+
var table = document.createElement('table');
|
|
100
|
+
table.setAttribute('cellpadding', '0');
|
|
101
|
+
table.setAttribute('class', 'cf wd inboxsdk__shortcutHelp_table');
|
|
102
|
+
table.innerHTML = [
|
|
103
|
+
'<tbody>',
|
|
104
|
+
'<tr>',
|
|
105
|
+
'<td class="Dn">',
|
|
106
|
+
'<table cellpadding="0" class="cf">',
|
|
107
|
+
'<tbody>',
|
|
108
|
+
'<tr><th> </th><th> </th></tr>',
|
|
109
|
+
'</tbody>',
|
|
110
|
+
'</table>',
|
|
111
|
+
'</td>',
|
|
112
|
+
'<td class="Dn">',
|
|
113
|
+
'<table cellpadding="0" class="cf">',
|
|
114
|
+
'<tbody>',
|
|
115
|
+
'<tr><th> </th><th> </th></tr>',
|
|
116
|
+
'</tbody>',
|
|
117
|
+
'</table>',
|
|
118
|
+
'</td>',
|
|
119
|
+
'</tr',
|
|
120
|
+
'</tbody>',
|
|
121
|
+
].join('');
|
|
122
|
+
return table;
|
|
123
|
+
}
|
|
124
|
+
_renderShortcut(tableBody, keyboardShortcutHandle) {
|
|
125
|
+
var shortcutRow = document.createElement('tr');
|
|
126
|
+
shortcutRow.innerHTML = [
|
|
127
|
+
'<td class="wg Dn"> ',
|
|
128
|
+
_getShortcutHTML(keyboardShortcutHandle.chord),
|
|
129
|
+
'</td>',
|
|
130
|
+
'<td class="we Dn"> ',
|
|
131
|
+
escape(keyboardShortcutHandle.description || ''),
|
|
132
|
+
'</td>',
|
|
133
|
+
].join('');
|
|
134
|
+
tableBody.appendChild(shortcutRow);
|
|
84
135
|
}
|
|
85
|
-
return header;
|
|
86
|
-
}
|
|
87
|
-
_renderTable() {
|
|
88
|
-
var table = document.createElement('table');
|
|
89
|
-
table.setAttribute('cellpadding', '0');
|
|
90
|
-
table.setAttribute('class', 'cf wd inboxsdk__shortcutHelp_table');
|
|
91
|
-
table.innerHTML = ['<tbody>', '<tr>', '<td class="Dn">', '<table cellpadding="0" class="cf">', '<tbody>', '<tr><th> </th><th> </th></tr>', '</tbody>', '</table>', '</td>', '<td class="Dn">', '<table cellpadding="0" class="cf">', '<tbody>', '<tr><th> </th><th> </th></tr>', '</tbody>', '</table>', '</td>', '</tr', '</tbody>'].join('');
|
|
92
|
-
return table;
|
|
93
|
-
}
|
|
94
|
-
_renderShortcut(tableBody, keyboardShortcutHandle) {
|
|
95
|
-
var shortcutRow = document.createElement('tr');
|
|
96
|
-
shortcutRow.innerHTML = ['<td class="wg Dn"> ', _getShortcutHTML(keyboardShortcutHandle.chord), '</td>', '<td class="we Dn"> ', (0, _escape.default)(keyboardShortcutHandle.description || ''), '</td>'].join('');
|
|
97
|
-
tableBody.appendChild(shortcutRow);
|
|
98
|
-
}
|
|
99
136
|
}
|
|
100
|
-
exports.default = KeyboardShortcutHelpModifier;
|
|
101
137
|
function _getShortcutHTML(chord) {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
138
|
+
const retArray = [];
|
|
139
|
+
const parts = chord.split(/[\s+]/g);
|
|
140
|
+
const separators = chord.match(/[\s+]/g);
|
|
141
|
+
for (var ii = 0; ii < parts.length; ii++) {
|
|
142
|
+
retArray.push('<span class="wh">' + escape(_getAngledBracket(parts[ii])) + '</span>');
|
|
143
|
+
if (separators && separators[ii]) {
|
|
144
|
+
retArray.push(_getSeparatorHTML(separators[ii]));
|
|
145
|
+
}
|
|
109
146
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
return retArray.join('');
|
|
147
|
+
retArray.push(' :');
|
|
148
|
+
return retArray.join('');
|
|
113
149
|
}
|
|
114
150
|
function _getAngledBracket(chordChar) {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
151
|
+
switch (chordChar.toLowerCase()) {
|
|
152
|
+
case 'shift':
|
|
153
|
+
return '<Shift>';
|
|
154
|
+
case 'ctrl':
|
|
155
|
+
return '<Ctrl>';
|
|
156
|
+
case 'alt':
|
|
157
|
+
return '<Alt>';
|
|
158
|
+
case 'meta':
|
|
159
|
+
case 'command':
|
|
160
|
+
return '<⌘>';
|
|
161
|
+
case 'mod':
|
|
162
|
+
// Operating system check copied from Combokeys.
|
|
163
|
+
// https://github.com/avocode/combokeys/blob/0b80e13cf7e5217c5b4fbd393289a87b1f48f7cc/helpers/special-aliases.js#L14
|
|
164
|
+
return /Mac|iPod|iPhone|iPad/.test(navigator.platform) ? '<⌘>' : '<Ctrl>';
|
|
165
|
+
default:
|
|
166
|
+
return chordChar;
|
|
167
|
+
}
|
|
132
168
|
}
|
|
133
169
|
function _getSeparatorHTML(separator) {
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
}
|
|
170
|
+
switch (separator) {
|
|
171
|
+
case ' ':
|
|
172
|
+
return '<span class="wb">then</span> ';
|
|
173
|
+
case '+':
|
|
174
|
+
return ' <span class="wb">+</span> ';
|
|
175
|
+
default:
|
|
176
|
+
return '';
|
|
177
|
+
}
|
|
178
|
+
}
|
package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-compose-window.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAE/C,wBAA8B,iBAAiB,CAAC,YAAY,EAAE,WAAW,iBAiBxE"}
|
|
@@ -1,22 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
const composeButton = _gmailElementGetter.default.getComposeButton();
|
|
20
|
-
if (!composeButton) throw new Error('Could not find compose button');
|
|
21
|
-
(0, _simulateMouseEvent.simulateClick)(composeButton);
|
|
22
|
-
}
|
|
1
|
+
import { simulateClick } from '../../../lib/dom/simulate-mouse-event';
|
|
2
|
+
import GmailElementGetter from '../gmail-element-getter';
|
|
3
|
+
import waitFor from '../../../lib/wait-for';
|
|
4
|
+
export default async function openComposeWindow(_gmailDriver) {
|
|
5
|
+
await GmailElementGetter.waitForGmailModeToSettle();
|
|
6
|
+
if (GmailElementGetter.isStandaloneComposeWindow() ||
|
|
7
|
+
GmailElementGetter.isStandaloneThreadWindow()) {
|
|
8
|
+
throw new Error('Can not open new compose while in standalone window');
|
|
9
|
+
}
|
|
10
|
+
if (!GmailElementGetter.getComposeButton()) {
|
|
11
|
+
await waitFor(() => !!GmailElementGetter.getComposeButton());
|
|
12
|
+
}
|
|
13
|
+
const composeButton = GmailElementGetter.getComposeButton();
|
|
14
|
+
if (!composeButton)
|
|
15
|
+
throw new Error('Could not find compose button');
|
|
16
|
+
simulateClick(composeButton);
|
|
17
|
+
}
|
package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type GmailDriver from '../gmail-driver';
|
|
2
|
+
import type GmailRouteProcessor from '../views/gmail-route-view/gmail-route-processor';
|
|
3
|
+
export default function overrideGmailBackButton(gmailDriver: GmailDriver, gmailRouteProcessor: GmailRouteProcessor): void;
|
|
4
|
+
//# sourceMappingURL=override-gmail-back-button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"override-gmail-back-button.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,mBAAmB,MAAM,iDAAiD,CAAC;AAEvF,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAC7C,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,mBAAmB,QAQzC"}
|
package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js
CHANGED
|
@@ -1,56 +1,49 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
var _onMouseDownAndUp = _interopRequireDefault(require("../../../lib/dom/on-mouse-down-and-up"));
|
|
12
|
-
function overrideGmailBackButton(gmailDriver, gmailRouteProcessor) {
|
|
13
|
-
_gmailElementGetter.default.waitForGmailModeToSettle().then(function () {
|
|
14
|
-
if (_gmailElementGetter.default.isStandalone()) {
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
_setupManagement(gmailDriver, gmailRouteProcessor);
|
|
18
|
-
});
|
|
1
|
+
import { defn } from 'ud';
|
|
2
|
+
import GmailElementGetter from '../gmail-element-getter';
|
|
3
|
+
import onMouseDownAndUp from '../../../lib/dom/on-mouse-down-and-up';
|
|
4
|
+
export default function overrideGmailBackButton(gmailDriver, gmailRouteProcessor) {
|
|
5
|
+
GmailElementGetter.waitForGmailModeToSettle().then(function () {
|
|
6
|
+
if (GmailElementGetter.isStandalone()) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
_setupManagement(gmailDriver, gmailRouteProcessor);
|
|
10
|
+
});
|
|
19
11
|
}
|
|
20
12
|
function _setupManagement(gmailDriver, gmailRouteProcessor) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
} = _ref;
|
|
38
|
-
handleGmailRouteView(gmailRouteView, lastCustomRouteID, lastCustomRouteParams, gmailDriver, gmailRouteProcessor);
|
|
39
|
-
});
|
|
13
|
+
gmailDriver
|
|
14
|
+
.getRouteViewDriverStream()
|
|
15
|
+
.scan((prev, gmailRouteView) => {
|
|
16
|
+
let lastCustomRouteID, lastCustomRouteParams;
|
|
17
|
+
if (prev &&
|
|
18
|
+
prev.gmailRouteView &&
|
|
19
|
+
prev.gmailRouteView.isCustomRouteBelongingToApp()) {
|
|
20
|
+
lastCustomRouteID = prev.gmailRouteView.getRouteID();
|
|
21
|
+
lastCustomRouteParams = prev.gmailRouteView.getParams();
|
|
22
|
+
}
|
|
23
|
+
return { gmailRouteView, lastCustomRouteID, lastCustomRouteParams };
|
|
24
|
+
}, undefined)
|
|
25
|
+
.changes()
|
|
26
|
+
.onValue(({ gmailRouteView, lastCustomRouteID, lastCustomRouteParams }) => {
|
|
27
|
+
handleGmailRouteView(gmailRouteView, lastCustomRouteID, lastCustomRouteParams, gmailDriver, gmailRouteProcessor);
|
|
28
|
+
});
|
|
40
29
|
}
|
|
41
|
-
const handleGmailRouteView =
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
30
|
+
const handleGmailRouteView = defn(module, function handleGmailRouteView(gmailRouteView, lastCustomRouteID, lastCustomRouteParams, gmailDriver, gmailRouteProcessor) {
|
|
31
|
+
if (lastCustomRouteID &&
|
|
32
|
+
gmailRouteView.getRouteType() === gmailRouteProcessor.RouteTypes.THREAD) {
|
|
33
|
+
_bindToBackButton(gmailDriver, gmailRouteView);
|
|
34
|
+
}
|
|
45
35
|
});
|
|
46
36
|
function _bindToBackButton(gmailDriver, gmailRouteView) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
37
|
+
const backButton = GmailElementGetter.getThreadBackButton();
|
|
38
|
+
if (!backButton) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
onMouseDownAndUp(backButton)
|
|
42
|
+
.takeUntilBy(gmailRouteView.getStopper())
|
|
43
|
+
.filter((e) => !e.defaultPrevented)
|
|
44
|
+
.onValue((e) => {
|
|
45
|
+
window.history.back();
|
|
46
|
+
e.preventDefault();
|
|
47
|
+
e.stopImmediatePropagation();
|
|
48
|
+
});
|
|
49
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register-search-query-rewriter.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAC;AAE/D,MAAM,CAAC,OAAO,UAAU,2BAA2B,CACjD,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,EAAE,GAAG,QAuBT"}
|
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const newQuery = event.query.replace(obj.term, () => newTerm // Callback used so $ escapes aren't interpreted
|
|
18
|
-
);
|
|
19
|
-
|
|
20
|
-
pageCommunicator.setSearchQueryReplacement(event.query, newQuery);
|
|
1
|
+
export default function registerSearchQueryRewriter(pageCommunicator, obj) {
|
|
2
|
+
pageCommunicator.createCustomSearchTerm(obj.term);
|
|
3
|
+
pageCommunicator.ajaxInterceptStream
|
|
4
|
+
.filter((event) => {
|
|
5
|
+
return (event.type === 'searchQueryForReplacement' && event.term === obj.term);
|
|
6
|
+
})
|
|
7
|
+
.onValue((event) => {
|
|
8
|
+
Promise.resolve(obj.termReplacer({})).then((result) => {
|
|
9
|
+
if (typeof result != 'string') {
|
|
10
|
+
throw new Error('termReplacer response must be a string');
|
|
11
|
+
}
|
|
12
|
+
const newTerm = '(' + result + ')';
|
|
13
|
+
const newQuery = event.query.replace(obj.term, () => newTerm // Callback used so $ escapes aren't interpreted
|
|
14
|
+
);
|
|
15
|
+
pageCommunicator.setSearchQueryReplacement(event.query, newQuery);
|
|
16
|
+
});
|
|
21
17
|
});
|
|
22
|
-
|
|
23
|
-
}
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register-search-suggestions-provider.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAM/C,MAAM,CAAC,OAAO,UAAU,iCAAiC,CACvD,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,QAAQ,QA8LlB"}
|