@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.
Files changed (147) hide show
  1. package/inboxsdk.js +5 -5
  2. package/inboxsdk.js.map +1 -1
  3. package/package.json +1 -1
  4. package/pageWorld.js.map +1 -1
  5. package/src/inboxsdk.d.ts +16 -1
  6. package/src/injected-js/gmail/modify-suggestions.d.ts +2 -0
  7. package/src/injected-js/gmail/modify-suggestions.d.ts.map +1 -1
  8. package/src/platform-implementation-js/constants/router.d.ts +5 -0
  9. package/src/platform-implementation-js/dom-driver/gmail/custom-style.d.ts +2 -0
  10. package/src/platform-implementation-js/dom-driver/gmail/custom-style.d.ts.map +1 -0
  11. package/src/platform-implementation-js/dom-driver/gmail/custom-style.js +16 -21
  12. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.d.ts +12 -0
  13. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.d.ts.map +1 -0
  14. package/src/platform-implementation-js/dom-driver/gmail/gmail-butter-bar-driver.js +152 -187
  15. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.d.ts +1 -1
  16. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.d.ts.map +1 -1
  17. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.js +1 -1
  18. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.d.ts +5 -0
  19. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.d.ts.map +1 -0
  20. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-toolbar-button-for-app.js +15 -20
  21. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.d.ts +4 -0
  22. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.d.ts.map +1 -0
  23. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/create-link.js +59 -56
  24. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.d.ts +9 -0
  25. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.d.ts.map +1 -0
  26. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-draft-id-for-message-id.js +42 -54
  27. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.d.ts +4 -0
  28. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.d.ts.map +1 -0
  29. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-native-nav-item.js +31 -33
  30. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.d.ts +8 -0
  31. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.d.ts.map +1 -0
  32. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/get-url-object.js +21 -23
  33. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.d.ts +4 -0
  34. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.d.ts.map +1 -0
  35. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadForOldGmailThreadId.js +19 -31
  36. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/getSyncThreadFromSyncThreadId.d.ts +7 -0
  37. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.d.ts +5 -0
  38. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.d.ts.map +1 -0
  39. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/goto-view.js +51 -60
  40. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.d.ts +20 -0
  41. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.d.ts.map +1 -0
  42. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/keyboard-shortcut-help-modifier.js +166 -130
  43. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.d.ts +3 -0
  44. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.d.ts.map +1 -0
  45. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/open-compose-window.js +17 -22
  46. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.d.ts +4 -0
  47. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.d.ts.map +1 -0
  48. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/override-gmail-back-button.js +44 -51
  49. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.d.ts +3 -0
  50. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.d.ts.map +1 -0
  51. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-query-rewriter.js +17 -22
  52. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.d.ts +3 -0
  53. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.d.ts.map +1 -0
  54. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/register-search-suggestions-provider.js +136 -129
  55. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.d.ts +6 -0
  56. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.d.ts.map +1 -0
  57. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-compose-view-driver-stream.js +102 -95
  58. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.d.ts +6 -0
  59. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.d.ts.map +1 -0
  60. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.js +144 -169
  61. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.d.ts +3 -0
  62. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.d.ts.map +1 -0
  63. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-app-id-warning.js +14 -23
  64. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.d.ts +3 -0
  65. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.d.ts.map +1 -0
  66. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-route-view.js +41 -49
  67. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.d.ts +5 -0
  68. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.d.ts.map +1 -0
  69. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.js +286 -294
  70. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.d.ts +3 -0
  71. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.d.ts.map +1 -0
  72. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-native-route-view.js +19 -26
  73. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.d.ts +3 -0
  74. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.d.ts.map +1 -0
  75. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/suppressAddon.js +36 -42
  76. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.d.ts +3 -0
  77. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.d.ts.map +1 -0
  78. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/temporary-track-download-url-validity.js +34 -33
  79. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.d.ts +13 -0
  80. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.d.ts.map +1 -0
  81. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/thread-row-identifier.js +80 -81
  82. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.d.ts +3 -0
  83. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.d.ts.map +1 -0
  84. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-events.js +124 -81
  85. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.d.ts +10 -0
  86. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.d.ts.map +1 -0
  87. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.js +47 -54
  88. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts +183 -106
  89. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts.map +1 -0
  90. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.js +712 -647
  91. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.d.ts +7 -0
  92. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.d.ts.map +1 -0
  93. package/src/platform-implementation-js/dom-driver/gmail/make-xhr-interceptor.js +93 -82
  94. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-sidebar-view/index.d.ts +7 -0
  95. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-toolbar-button-view.d.ts +5 -0
  96. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.d.ts +11 -0
  97. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.d.ts.map +1 -0
  98. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-backdrop.js +20 -32
  99. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.d.ts +1 -0
  100. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-message-view.d.ts +8 -0
  101. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts +2 -0
  102. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts.map +1 -1
  103. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.js +1 -1
  104. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-processor.d.ts +8 -0
  105. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.d.ts +3 -0
  106. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-route-view/gmail-route-view.js +3 -1
  107. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-row-list-view.d.ts +10 -0
  108. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-row-view.d.ts +5 -0
  109. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-thread-view.d.ts +9 -0
  110. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-toolbar-view.d.ts +12 -0
  111. package/src/platform-implementation-js/dom-driver/gmail/views/native-gmail-nav-item-view.d.ts +9 -0
  112. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.d.ts +20 -0
  113. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.d.ts.map +1 -0
  114. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-modal-view-driver.js +107 -108
  115. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.d.ts +16 -0
  116. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-mole-view-driver.js +1 -1
  117. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.d.ts +13 -0
  118. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.d.ts.map +1 -0
  119. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-top-message-bar-driver.js +66 -66
  120. package/src/platform-implementation-js/dom-driver/inbox/views/inbox-drawer-view.d.ts +5 -0
  121. package/src/platform-implementation-js/driver-common/getGmailMessageIdForSyncMessageId.d.ts +6 -0
  122. package/src/platform-implementation-js/driver-common/getGmailThreadIdForRfcMessageId.d.ts +6 -0
  123. package/src/platform-implementation-js/driver-common/sidebar/ContentPanelViewDriver.d.ts +1 -0
  124. package/src/platform-implementation-js/driver-interfaces/driver.d.ts +3 -6
  125. package/src/platform-implementation-js/driver-interfaces/mole-view-driver.d.ts +27 -0
  126. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.d.ts +4 -0
  127. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.d.ts.map +1 -0
  128. package/src/platform-implementation-js/lib/copyAndValidateAutocompleteResults.js +34 -34
  129. package/src/platform-implementation-js/lib/dom/element-view-mapper.d.ts +10 -0
  130. package/src/platform-implementation-js/lib/dom/element-view-mapper.d.ts.map +1 -0
  131. package/src/platform-implementation-js/lib/dom/element-view-mapper.js +9 -17
  132. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.d.ts +4 -0
  133. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.d.ts.map +1 -0
  134. package/src/platform-implementation-js/lib/dom/on-mouse-down-and-up.js +7 -16
  135. package/src/platform-implementation-js/lib/populateRouteID.d.ts +6 -0
  136. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.d.ts +2 -0
  137. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.d.ts.map +1 -0
  138. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.js +4 -11
  139. package/src/platform-implementation-js/lib/routeIDmatchesHash.d.ts +4 -0
  140. package/src/platform-implementation-js/lib/toLiveSet.d.ts +5 -0
  141. package/src/platform-implementation-js/lib/toLiveSet.d.ts.map +1 -0
  142. package/src/platform-implementation-js/lib/toLiveSet.js +22 -33
  143. package/src/platform-implementation-js/namespaces/router.d.ts +1 -0
  144. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/setup-route-view-driver-stream.test.js +0 -183
  145. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/show-custom-thread-list.test.js +0 -218
  146. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/user-info.test.js +0 -85
  147. package/src/platform-implementation-js/lib/rewriteCssWithIdMap.test.js +0 -43
@@ -1,142 +1,178 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _escape = _interopRequireDefault(require("lodash/escape"));
9
- var Kefir = _interopRequireWildcard(require("kefir"));
10
- var _kefirStopper = _interopRequireDefault(require("kefir-stopper"));
11
- var _makeElementChildStream = _interopRequireDefault(require("../../../lib/dom/make-element-child-stream"));
12
- var _querySelectorOrFail = _interopRequireDefault(require("../../../lib/dom/querySelectorOrFail"));
13
- var _makeMutationObserverChunkedStream = _interopRequireDefault(require("../../../lib/dom/make-mutation-observer-chunked-stream"));
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
- class KeyboardShortcutHelpModifier {
17
- constructor() {
18
- this._appId = null; // TODO have these passed to the constructor
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
- if (!this._appName) {
41
- this._appName = appName;
20
+ destroy() {
21
+ this._stopper.destroy();
22
+ this._shortcuts.clear();
42
23
  }
43
- if (!this._appIconUrl) {
44
- this._appIconUrl = appIconUrl;
24
+ set(keyboardShortcutHandle, appId, appName, appIconUrl) {
25
+ this._initializeAppValues(appId, appName, appIconUrl);
26
+ this._shortcuts.add(keyboardShortcutHandle);
45
27
  }
46
- }
47
- _monitorKeyboardHelp() {
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
- var keys = this._shortcuts.keys();
58
- var header = this._renderHeader();
59
- var table = this._renderTable();
60
- var bodies = table.querySelectorAll('tbody tbody');
61
- var index = 0;
62
- this._shortcuts.forEach(keyboardShortcutHandle => {
63
- this._renderShortcut(bodies[index % 2], keyboardShortcutHandle);
64
- index++;
65
- });
66
- const firstHeader = (0, _querySelectorOrFail.default)(node, '.aov');
67
- const parent = firstHeader.parentElement;
68
- if (!parent) throw new Error('Could not find parent');
69
- parent.insertBefore(header, firstHeader);
70
- parent.insertBefore(table, firstHeader);
71
- }
72
- _renderHeader() {
73
- const header = document.createElement('div');
74
- header.setAttribute('class', 'aov aox');
75
- header.innerHTML = ['<div class="aow">', '<span class="inboxsdk__shortcutHelp_title">', (0, _escape.default)(this._appName || this._appId) + ' keyboard shortcuts', '</span>', '</div>'].join('');
76
- if (this._appIconUrl) {
77
- const img = document.createElement('img');
78
- if (this._appIconUrl) {
79
- img.src = this._appIconUrl;
80
- }
81
- img.setAttribute('class', 'inboxsdk__icon');
82
- const title = (0, _querySelectorOrFail.default)(header, '.inboxsdk__shortcutHelp_title');
83
- title.insertBefore(img, title.firstChild);
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>&nbsp;</th><th>&nbsp;</th></tr>',
109
+ '</tbody>',
110
+ '</table>',
111
+ '</td>',
112
+ '<td class="Dn">',
113
+ '<table cellpadding="0" class="cf">',
114
+ '<tbody>',
115
+ '<tr><th>&nbsp;</th><th>&nbsp;</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>&nbsp;</th><th>&nbsp;</th></tr>', '</tbody>', '</table>', '</td>', '<td class="Dn">', '<table cellpadding="0" class="cf">', '<tbody>', '<tr><th>&nbsp;</th><th>&nbsp;</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
- const retArray = [];
103
- const parts = chord.split(/[\s+]/g);
104
- const separators = chord.match(/[\s+]/g);
105
- for (var ii = 0; ii < parts.length; ii++) {
106
- retArray.push('<span class="wh">' + (0, _escape.default)(_getAngledBracket(parts[ii])) + '</span>');
107
- if (separators && separators[ii]) {
108
- retArray.push(_getSeparatorHTML(separators[ii]));
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
- retArray.push(' :');
112
- return retArray.join('');
147
+ retArray.push(' :');
148
+ return retArray.join('');
113
149
  }
114
150
  function _getAngledBracket(chordChar) {
115
- switch (chordChar.toLowerCase()) {
116
- case 'shift':
117
- return '<Shift>';
118
- case 'ctrl':
119
- return '<Ctrl>';
120
- case 'alt':
121
- return '<Alt>';
122
- case 'meta':
123
- case 'command':
124
- return '<⌘>';
125
- case 'mod':
126
- // Operating system check copied from Combokeys.
127
- // https://github.com/avocode/combokeys/blob/0b80e13cf7e5217c5b4fbd393289a87b1f48f7cc/helpers/special-aliases.js#L14
128
- return /Mac|iPod|iPhone|iPad/.test(navigator.platform) ? '<⌘>' : '<Ctrl>';
129
- default:
130
- return chordChar;
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
- switch (separator) {
135
- case ' ':
136
- return '<span class="wb">then</span> ';
137
- case '+':
138
- return ' <span class="wb">+</span> ';
139
- default:
140
- return '';
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
+ }
@@ -0,0 +1,3 @@
1
+ import type GmailDriver from '../gmail-driver';
2
+ export default function openComposeWindow(_gmailDriver: GmailDriver): Promise<void>;
3
+ //# sourceMappingURL=open-compose-window.d.ts.map
@@ -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
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = openComposeWindow;
8
- var _simulateMouseEvent = require("../../../lib/dom/simulate-mouse-event");
9
- var _gmailElementGetter = _interopRequireDefault(require("../gmail-element-getter"));
10
- var _waitFor = _interopRequireDefault(require("../../../lib/wait-for"));
11
- async function openComposeWindow(gmailDriver) {
12
- await _gmailElementGetter.default.waitForGmailModeToSettle();
13
- if (_gmailElementGetter.default.isStandaloneComposeWindow() || _gmailElementGetter.default.isStandaloneThreadWindow()) {
14
- throw new Error('Can not open new compose while in standalone window');
15
- }
16
- if (!_gmailElementGetter.default.getComposeButton()) {
17
- await (0, _waitFor.default)(() => !!_gmailElementGetter.default.getComposeButton());
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
+ }
@@ -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"}
@@ -1,56 +1,49 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = overrideGmailBackButton;
8
- var _kefir = _interopRequireDefault(require("kefir"));
9
- var _ud = require("ud");
10
- var _gmailElementGetter = _interopRequireDefault(require("../gmail-element-getter"));
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
- gmailDriver.getRouteViewDriverStream().scan((prev, gmailRouteView) => {
22
- let lastCustomRouteID, lastCustomRouteParams;
23
- if (prev && prev.gmailRouteView && prev.gmailRouteView.isCustomRouteBelongingToApp()) {
24
- lastCustomRouteID = prev.gmailRouteView.getRouteID();
25
- lastCustomRouteParams = prev.gmailRouteView.getParams();
26
- }
27
- return {
28
- gmailRouteView,
29
- lastCustomRouteID,
30
- lastCustomRouteParams
31
- };
32
- }, undefined).changes().onValue(_ref => {
33
- let {
34
- gmailRouteView,
35
- lastCustomRouteID,
36
- lastCustomRouteParams
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 = (0, _ud.defn)(module, function handleGmailRouteView(gmailRouteView, lastCustomRouteID, lastCustomRouteParams, gmailDriver, gmailRouteProcessor) {
42
- if (lastCustomRouteID && gmailRouteView.getRouteType() === gmailRouteProcessor.RouteTypes.THREAD) {
43
- _bindToBackButton(gmailDriver, gmailRouteView);
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
- const backButton = _gmailElementGetter.default.getThreadBackButton();
48
- if (!backButton) {
49
- return;
50
- }
51
- (0, _onMouseDownAndUp.default)(backButton).takeUntilBy(gmailRouteView.getStopper()).filter(e => !e.defaultPrevented).onValue(e => {
52
- window.history.back();
53
- e.preventDefault();
54
- e.stopImmediatePropagation();
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,3 @@
1
+ import type PageCommunicator from '../gmail-page-communicator';
2
+ export default function registerSearchQueryRewriter(pageCommunicator: PageCommunicator, obj: any): void;
3
+ //# sourceMappingURL=register-search-query-rewriter.d.ts.map
@@ -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
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = registerSearchQueryRewriter;
7
- function registerSearchQueryRewriter(pageCommunicator, obj) {
8
- pageCommunicator.createCustomSearchTerm(obj.term);
9
- pageCommunicator.ajaxInterceptStream.filter(event => {
10
- return event.type === 'searchQueryForReplacement' && event.term === obj.term;
11
- }).onValue(event => {
12
- Promise.resolve(obj.termReplacer({})).then(result => {
13
- if (typeof result != 'string') {
14
- throw new Error('termReplacer response must be a string');
15
- }
16
- const newTerm = '(' + result + ')';
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,3 @@
1
+ import type GmailDriver from '../gmail-driver';
2
+ export default function registerSearchSuggestionsProvider(driver: GmailDriver, handler: Function): void;
3
+ //# sourceMappingURL=register-search-suggestions-provider.d.ts.map
@@ -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"}