@inboxsdk/core 0.2.29-aplha.3 → 1.0.1

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 (61) hide show
  1. package/inboxsdk.js +41 -55
  2. package/inboxsdk.js.map +1 -1
  3. package/package.json +2 -1
  4. package/src/inboxsdk-js/inboxsdk.js +0 -2
  5. package/src/inboxsdk.d.ts +3 -0
  6. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.d.ts.map +1 -1
  7. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.js +3 -4
  8. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.d.ts +1 -1
  9. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.d.ts.map +1 -1
  10. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.js +13 -2
  11. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.d.ts +3 -0
  12. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.d.ts.map +1 -0
  13. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.js +42 -43
  14. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.d.ts +5 -0
  15. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.d.ts.map +1 -1
  16. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.js +10 -0
  17. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.d.ts +6 -1
  18. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.d.ts.map +1 -1
  19. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.js +33 -21
  20. package/src/platform-implementation-js/dom-driver/gmail/gmail-driver.d.ts +56 -56
  21. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.d.ts.map +1 -1
  22. package/src/platform-implementation-js/dom-driver/gmail/gmail-element-getter.js +4 -1
  23. package/src/platform-implementation-js/dom-driver/gmail/gmail-page-communicator.d.ts.map +1 -1
  24. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.d.ts +5 -12
  25. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.d.ts.map +1 -1
  26. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.js +29 -18
  27. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/add-status-bar.d.ts.map +1 -1
  28. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view/gmail-compose-button-view.d.ts.map +1 -1
  29. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-compose-view.d.ts +69 -69
  30. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts +1 -0
  31. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.d.ts.map +1 -1
  32. package/src/platform-implementation-js/dom-driver/gmail/views/gmail-nav-item-view.js +5 -0
  33. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/button-view.d.ts.map +1 -1
  34. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-accessory-button-view.d.ts.map +1 -1
  35. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/create-parent-accessory-button-view.d.ts.map +1 -1
  36. package/src/platform-implementation-js/dom-driver/gmail/widgets/buttons/modal-button-view.d.ts.map +1 -1
  37. package/src/platform-implementation-js/dom-driver/gmail/widgets/gmail-dropdown-view.d.ts.map +1 -1
  38. package/src/platform-implementation-js/lib/ErrorCollector.d.ts.map +1 -1
  39. package/src/platform-implementation-js/lib/Membrane.d.ts.map +1 -1
  40. package/src/platform-implementation-js/lib/ScrollableContainByScreen.d.ts.map +1 -1
  41. package/src/platform-implementation-js/lib/common-page-communicator.d.ts.map +1 -1
  42. package/src/platform-implementation-js/lib/handler-registry.d.ts.map +1 -1
  43. package/src/platform-implementation-js/lib/logger.d.ts.map +1 -1
  44. package/src/platform-implementation-js/lib/persistent-queue.d.ts.map +1 -1
  45. package/src/platform-implementation-js/lib/safe-event-emitter.d.ts.map +1 -1
  46. package/src/platform-implementation-js/lib/stopper-pool.d.ts.map +1 -1
  47. package/src/platform-implementation-js/namespaces/app-menu.d.ts +14 -5
  48. package/src/platform-implementation-js/namespaces/app-menu.d.ts.map +1 -1
  49. package/src/platform-implementation-js/namespaces/butter-bar.d.ts.map +1 -1
  50. package/src/platform-implementation-js/platform-implementation.js +2 -9
  51. package/src/platform-implementation-js/views/SimpleElementView.d.ts.map +1 -1
  52. package/src/platform-implementation-js/views/app-menu-item-view.d.ts.map +1 -1
  53. package/src/platform-implementation-js/views/app-menu-item-view.js +53 -6
  54. package/src/platform-implementation-js/views/collapsible-panel-view.d.ts.map +1 -1
  55. package/src/platform-implementation-js/views/collapsible-panel-view.js +70 -23
  56. package/src/platform-implementation-js/views/compose-button-view.d.ts.map +1 -1
  57. package/src/platform-implementation-js/views/compose-view.d.ts.map +1 -1
  58. package/src/platform-implementation-js/views/keyboard-shortcut-handle.d.ts.map +1 -1
  59. package/src/platform-implementation-js/widgets/buttons/basic-button-view-controller.d.ts.map +1 -1
  60. package/src/platform-implementation-js/widgets/buttons/dropdown-view.d.ts.map +1 -1
  61. package/src/inboxsdk-js/check-requirements.js +0 -11
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inboxsdk/core",
3
- "version": "0.2.29-aplha.3",
3
+ "version": "1.0.1",
4
4
  "description": "Library for building browser extensions for Gmail",
5
5
  "main": "inboxsdk.js",
6
6
  "author": "Streak",
@@ -31,6 +31,7 @@
31
31
  "@types/kefir": "^3.8.6",
32
32
  "@types/node": "*",
33
33
  "asap": "^2.0.3",
34
+ "fast-deep-equal": "^3.1.3",
34
35
  "kefir-cast": "^3.3.0",
35
36
  "sha.js": "^2.4.0",
36
37
  "tag-tree": "^1.0.0",
@@ -9,7 +9,6 @@ exports.load = load;
9
9
  exports.loadScript = void 0;
10
10
  var _logError = _interopRequireDefault(require("../common/log-error"));
11
11
  var _platformImplementationLoader = _interopRequireDefault(require("./loading/platform-implementation-loader"));
12
- var _checkRequirements = _interopRequireDefault(require("./check-requirements"));
13
12
  var _version = require("../common/version");
14
13
  var _loadScript2 = _interopRequireDefault(require("../common/load-script"));
15
14
  const LOADER_VERSION = _version.BUILD_VERSION;
@@ -26,7 +25,6 @@ function load(version, appId, opts) {
26
25
  VERSION: LOADER_VERSION,
27
26
  REQUESTED_API_VERSION: version
28
27
  });
29
- (0, _checkRequirements.default)(opts);
30
28
  return _platformImplementationLoader.default.load(appId, opts);
31
29
  }
32
30
  const pageOrigin = process.env.NODE_ENV === 'test' && global.__test_origin || document.location.origin;
package/src/inboxsdk.d.ts CHANGED
@@ -106,6 +106,9 @@ export interface ButterBar {
106
106
  // export interface DropdownButtonAccessoryDescriptor {}
107
107
 
108
108
  export { AppMenu };
109
+ export type { AppMenuItemView } from './platform-implementation-js/views/app-menu-item-view';
110
+ export type { AppMenuItemPanelDescriptor } from './platform-implementation-js/namespaces/app-menu';
111
+ export type { CollapsiblePanelView } from './platform-implementation-js/views/collapsible-panel-view';
109
112
 
110
113
  export interface NativeNavItemView extends EventEmitter {
111
114
  addNavItem(descriptor: NavItemDescriptor): NavItemView;
@@ -1 +1 @@
1
- {"version":3,"file":"add-app-menu-item.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAI1C,wBAAsB,cAAc,CAClC,MAAM,EAAE,WAAW,EACnB,kBAAkB,EAAE,qBAAqB,6CAuB1C"}
1
+ {"version":3,"file":"add-app-menu-item.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-app-menu-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAI1C,wBAAsB,cAAc,CAClC,MAAM,EAAE,WAAW,EACnB,kBAAkB,EAAE,qBAAqB,6CAyB1C"}
@@ -3,12 +3,11 @@ import GmailElementGetter from '../gmail-element-getter';
3
3
  import Logger from '../../../lib/logger';
4
4
  export async function addAppMenuItem(driver, menuItemDescriptor) {
5
5
  const appMenuInjectionContainer = await GmailElementGetter.getAppMenuAsync();
6
- const gmailAppMenuItemView = new GmailAppMenuItemView(driver);
7
- gmailAppMenuItemView.setMenuItemDescriptor(menuItemDescriptor);
6
+ const gmailAppMenuItemView = new GmailAppMenuItemView(driver, menuItemDescriptor);
8
7
  try {
9
- if (!appMenuInjectionContainer || !gmailAppMenuItemView.element)
8
+ if (!appMenuInjectionContainer)
10
9
  return;
11
- const siblingElement = menuItemDescriptor.insertIndex
10
+ const siblingElement = Number.isInteger(menuItemDescriptor.insertIndex)
12
11
  ? appMenuInjectionContainer.childNodes[menuItemDescriptor.insertIndex] ??
13
12
  null
14
13
  : null;
@@ -1,5 +1,5 @@
1
1
  import { AppMenuItemPanelDescriptor } from '../../../namespaces/app-menu';
2
2
  import { CollapsiblePanelView } from '../../../views/collapsible-panel-view';
3
3
  import GmailDriver from '../gmail-driver';
4
- export declare function addCollapsiblePanel(driver: GmailDriver, panelDescriptor: AppMenuItemPanelDescriptor): Promise<CollapsiblePanelView | undefined>;
4
+ export declare function addCollapsiblePanel(driver: GmailDriver, panelDescriptor: AppMenuItemPanelDescriptor, insertIndex?: number): Promise<CollapsiblePanelView | undefined>;
5
5
  //# sourceMappingURL=add-collapsible-panel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-collapsible-panel.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAI1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAE1C,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,WAAW,EACnB,eAAe,EAAE,0BAA0B,6CAkB5C"}
1
+ {"version":3,"file":"add-collapsible-panel.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/add-collapsible-panel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAI1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAE1C,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,WAAW,EACnB,eAAe,EAAE,0BAA0B,EAC3C,WAAW,CAAC,EAAE,MAAM,6CAmCrB"}
@@ -3,7 +3,7 @@ import GmailElementGetter from '../gmail-element-getter';
3
3
  import waitFor from '../../../lib/wait-for';
4
4
  import Logger from '../../../lib/logger';
5
5
  import { CollapsiblePanelView } from '../../../views/collapsible-panel-view';
6
- export async function addCollapsiblePanel(driver, panelDescriptor) {
6
+ export async function addCollapsiblePanel(driver, panelDescriptor, insertIndex) {
7
7
  const injectionContainer = await waitForAppMenuParentReady();
8
8
  const collapsiblePanelView = new CollapsiblePanelView(driver, panelDescriptor);
9
9
  if (!injectionContainer || !collapsiblePanelView.element)
@@ -11,7 +11,18 @@ export async function addCollapsiblePanel(driver, panelDescriptor) {
11
11
  const appMenu = await GmailElementGetter.getAppMenuAsync();
12
12
  if (!appMenu)
13
13
  return;
14
- appMenu.insertAdjacentElement('afterend', collapsiblePanelView.element);
14
+ const panelNodes = injectionContainer.querySelectorAll(CollapsiblePanelView.elementSelectors.NATIVE) ?? [];
15
+ const siblingElement = Number.isInteger(insertIndex)
16
+ ? panelNodes[insertIndex] ?? null
17
+ : null;
18
+ if (siblingElement) {
19
+ siblingElement.insertAdjacentElement('beforebegin', collapsiblePanelView.element);
20
+ }
21
+ else {
22
+ [...panelNodes]
23
+ .at(-1)
24
+ ?.insertAdjacentElement('afterend', collapsiblePanelView.element);
25
+ }
15
26
  return collapsiblePanelView;
16
27
  }
17
28
  const waitForAppMenuParentReady = once(async () => {
@@ -0,0 +1,3 @@
1
+ import type GmailDriver from '../gmail-driver';
2
+ export default function gmailLoadEvent(driver: GmailDriver): Promise<void>;
3
+ //# sourceMappingURL=gmail-load-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gmail-load-event.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/gmail-load-event.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAO/C,wBAA8B,cAAc,CAAC,MAAM,EAAE,WAAW,iBA2C/D"}
@@ -1,43 +1,42 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = gmailLoadEvent;
8
- var _gmailElementGetter = _interopRequireDefault(require("../gmail-element-getter"));
9
- var _isIntegratedViewGmail = _interopRequireDefault(require("./isIntegratedViewGmail"));
10
- var _addNavItem = require("./add-nav-item");
11
- async function gmailLoadEvent(driver) {
12
- const pageCommunicator = driver.getPageCommunicator();
13
- const isConversationViewDisabled = await pageCommunicator.isConversationViewDisabled();
14
- await (0, _addNavItem.waitForMenuReady)();
15
- driver.getLogger().eventSite('gmailSettings', {
16
- isGmailIntegratedView: (0, _isIntegratedViewGmail.default)(),
17
- screenWidth: window.screen && window.screen.width,
18
- screenHeight: window.screen && window.screen.height,
19
- windowWidth: window.innerWidth,
20
- windowHeight: window.innerHeight,
21
- language: pageCommunicator.getUserLanguage(),
22
- isUsingSyncAPI: pageCommunicator.isUsingSyncAPI(),
23
- previewPane: pageCommunicator.getUserOriginalPreviewPaneMode(),
24
- isConversationViewDisabled,
25
- wasAccountSwitcherReadyAtStart: driver.getEnvData().wasAccountSwitcherReadyAtStart,
26
- timings: Object.assign({
27
- responseStart: global.performance && global.performance.timing.responseStart,
28
- responseEnd: global.performance && global.performance.timing.responseEnd,
29
- domLoading: global.performance && global.performance.timing.domLoading,
30
- domInteractive: global.performance && global.performance.timing.domInteractive,
31
- domComplete: global.performance && global.performance.timing.domComplete,
32
- domContentLoadedEventStart: global.performance && global.performance.timing.domContentLoadedEventStart,
33
- domContentLoadedEventEnd: global.performance && global.performance.timing.domContentLoadedEventEnd,
34
- domainLookupEnd: global.performance && global.performance.timing.domainLookupEnd,
35
- domainLookupStart: global.performance && global.performance.timing.domainLookupStart,
36
- fetchStart: global.performance && global.performance.timing.fetchStart,
37
- loadEventStart: global.performance && global.performance.timing.loadEventStart,
38
- loadEventEnd: global.performance && global.performance.timing.loadEventEnd,
39
- navigationStart: global.performance && global.performance.timing.navigationStart,
40
- requestStart: global.performance && global.performance.timing.requestStart
41
- }, driver.getTimings())
42
- });
43
- }
1
+ /* @flow */
2
+ import isIntegratedViewGmail, { isCollapsiblePanelHidden, } from './isIntegratedViewGmail';
3
+ import { waitForMenuReady } from './add-nav-item';
4
+ import { isDarkTheme } from './track-gmail-styles';
5
+ export default async function gmailLoadEvent(driver) {
6
+ const pageCommunicator = driver.getPageCommunicator();
7
+ const isConversationViewDisabled = await pageCommunicator.isConversationViewDisabled();
8
+ await waitForMenuReady();
9
+ driver.getLogger().eventSite('gmailSettings', {
10
+ isGmailIntegratedView: isIntegratedViewGmail(),
11
+ isCollapsiblePanelHidden: isCollapsiblePanelHidden(),
12
+ isDarkTheme: isDarkTheme(),
13
+ screenWidth: window.screen?.width,
14
+ screenHeight: window.screen?.height,
15
+ windowWidth: window.innerWidth,
16
+ windowHeight: window.innerHeight,
17
+ language: pageCommunicator.getUserLanguage(),
18
+ isUsingSyncAPI: pageCommunicator.isUsingSyncAPI(),
19
+ previewPane: pageCommunicator.getUserOriginalPreviewPaneMode(),
20
+ isConversationViewDisabled,
21
+ wasAccountSwitcherReadyAtStart: driver.getEnvData().wasAccountSwitcherReadyAtStart,
22
+ timings: {
23
+ ...{
24
+ responseStart: global.performance?.timing.responseStart,
25
+ responseEnd: global.performance?.timing.responseEnd,
26
+ domLoading: global.performance?.timing.domLoading,
27
+ domInteractive: global.performance?.timing.domInteractive,
28
+ domComplete: global.performance?.timing.domComplete,
29
+ domContentLoadedEventStart: global.performance?.timing.domContentLoadedEventStart,
30
+ domContentLoadedEventEnd: global.performance?.timing.domContentLoadedEventEnd,
31
+ domainLookupEnd: global.performance?.timing.domainLookupEnd,
32
+ domainLookupStart: global.performance?.timing.domainLookupStart,
33
+ fetchStart: global.performance?.timing.fetchStart,
34
+ loadEventStart: global.performance?.timing.loadEventStart,
35
+ loadEventEnd: global.performance?.timing.loadEventEnd,
36
+ navigationStart: global.performance?.timing.navigationStart,
37
+ requestStart: global.performance?.timing.requestStart,
38
+ },
39
+ ...driver.getTimings(),
40
+ },
41
+ });
42
+ }
@@ -1,2 +1,7 @@
1
+ /**
2
+ * https://support.google.com/mail/answer/11555490
3
+ */
1
4
  export default function isIntegratedViewGmail(): boolean;
5
+ /** @returns null if the app menu is configured off */
6
+ export declare function isCollapsiblePanelHidden(): boolean | null;
2
7
  //# sourceMappingURL=isIntegratedViewGmail.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isIntegratedViewGmail.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,qBAAqB,IAAI,OAAO,CAGvD"}
1
+ {"version":3,"file":"isIntegratedViewGmail.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/isIntegratedViewGmail.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,IAAI,OAAO,CAGvD;AAED,sDAAsD;AACtD,wBAAgB,wBAAwB,IAAI,OAAO,GAAG,IAAI,CAMzD"}
@@ -1,4 +1,14 @@
1
+ /**
2
+ * https://support.google.com/mail/answer/11555490
3
+ */
1
4
  export default function isIntegratedViewGmail() {
2
5
  const nav = document.querySelector('div[role=navigation]');
3
6
  return Boolean(nav?.firstElementChild?.classList.contains('Xa'));
4
7
  }
8
+ /** @returns null if the app menu is configured off */
9
+ export function isCollapsiblePanelHidden() {
10
+ if (!isIntegratedViewGmail()) {
11
+ return null;
12
+ }
13
+ return document.querySelector('div[role=navigation].aBA') != null;
14
+ }
@@ -1,2 +1,7 @@
1
- export default function trackGmailStyles(): void;
1
+ export declare function isDarkTheme(): boolean;
2
+ export declare const stylesStream: import("kefir-bus").Bus<{
3
+ type: 'theme';
4
+ isDarkMode: boolean;
5
+ }, unknown>;
6
+ export default function trackGmailStyles(): Promise<void>;
2
7
  //# sourceMappingURL=track-gmail-styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"track-gmail-styles.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.ts"],"names":[],"mappings":"AAsDA,MAAM,CAAC,OAAO,UAAU,gBAAgB,SAwDvC"}
1
+ {"version":3,"file":"track-gmail-styles.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-driver/track-gmail-styles.ts"],"names":[],"mappings":"AA8BA,wBAAgB,WAAW,IAAI,OAAO,CAyBrC;AAED,eAAO,MAAM,YAAY;UACf,OAAO;gBAAc,OAAO;WAEnC,CAAC;AAEJ,wBAA8B,gBAAgB,kBAmE7C"}
@@ -1,3 +1,4 @@
1
+ import kefirBus from 'kefir-bus';
1
2
  import Logger from '../../../lib/logger';
2
3
  import waitFor from '../../../lib/wait-for';
3
4
  import GmailElementGetter from '../gmail-element-getter';
@@ -21,10 +22,11 @@ function getDensity() {
21
22
  return 'compact';
22
23
  }
23
24
  }
24
- function isDarkTheme() {
25
+ const navItemSelector = '.aio';
26
+ export function isDarkTheme() {
25
27
  // get the color of the left-nav-menu entries to determine whether Gmail is
26
28
  // in dark theme mode.
27
- const navItem = document.querySelector('.aio');
29
+ const navItem = document.querySelector(navItemSelector);
28
30
  if (!navItem) {
29
31
  Logger.error(new Error('Failed to find nav item'));
30
32
  return false;
@@ -45,7 +47,8 @@ function isDarkTheme() {
45
47
  }
46
48
  return r > 128;
47
49
  }
48
- export default function trackGmailStyles() {
50
+ export const stylesStream = kefirBus();
51
+ export default async function trackGmailStyles() {
49
52
  if (document.head.hasAttribute('data-inboxsdk-gmail-style-tracker') ||
50
53
  GmailElementGetter.isStandalone()) {
51
54
  return;
@@ -71,25 +74,34 @@ export default function trackGmailStyles() {
71
74
  else {
72
75
  document.body.classList.remove('inboxsdk__gmail_dark_theme');
73
76
  }
77
+ stylesStream.emit({
78
+ type: 'theme',
79
+ isDarkMode: newDarkTheme,
80
+ });
74
81
  }
75
82
  }
76
- waitFor(() => document.querySelector('.TO .TN') && document.querySelector('.aio'))
77
- .then(() => {
78
- // Gmail changes an inline <style> sheet when the display density changes.
79
- // Watch for changes to all <style> elements.
80
- const observer = new MutationObserver(checkStyles);
81
- const options = {
82
- characterData: true,
83
- childList: true,
84
- };
85
- Array.from(document.styleSheets).forEach((sheet) => {
86
- if (sheet.ownerNode.tagName == 'STYLE') {
87
- observer.observe(sheet.ownerNode, options);
88
- }
89
- });
90
- checkStyles();
91
- })
92
- .catch((err) => {
83
+ try {
84
+ await waitFor(() => document.querySelector('.TO .TN') &&
85
+ document.querySelector(navItemSelector));
86
+ }
87
+ catch (err) {
93
88
  Logger.error(err);
94
- });
89
+ return;
90
+ }
91
+ // Gmail changes an inline <style> sheet when the display density changes.
92
+ // Watch for changes to all <style> elements.
93
+ const observer = new MutationObserver(checkStyles);
94
+ const options = {
95
+ characterData: true,
96
+ childList: true,
97
+ };
98
+ for (const sheet of document.styleSheets) {
99
+ if (!(sheet.ownerNode instanceof Element)) {
100
+ continue;
101
+ }
102
+ if (sheet.ownerNode.tagName == 'STYLE') {
103
+ observer.observe(sheet.ownerNode, options);
104
+ }
105
+ }
106
+ checkStyles();
95
107
  }
@@ -18,6 +18,7 @@ import GmailSupportItemView, {
18
18
  import { AppMenuItemDescriptor } from '../../namespaces/app-menu';
19
19
  import { GmailAppMenuItemView } from './views/gmail-app-menu-item-view';
20
20
  import { RouteView } from '../../../inboxsdk';
21
+ import { EnvData } from '../../platform-implementation';
21
22
 
22
23
  type GmailThreadView = any;
23
24
  type GmailMessageView = any;
@@ -28,42 +29,41 @@ type GmailMoleViewDriver = any;
28
29
  type GmailBackdrop = any;
29
30
 
30
31
  export default class GmailDriver implements Driver {
31
- public onready: Promise<void>;
32
- public isUsingSyncAPI(): boolean;
33
- public getLogger(): Logger;
34
- public getAppId(): string;
35
- public getOpts(): PiOpts;
36
- public getRouteViewDriverStream(): Kefir.Observable<RouteView, any>; // should be a property
37
- public getRowListViewDriverStream(): Kefir.Observable<any, any>;
38
- public openNewComposeViewDriver(): Promise<GmailComposeView>;
39
- public getNextComposeViewDriver(): Promise<GmailComposeView>;
40
- public getComposeViewDriverStream(): Kefir.Observable<GmailComposeView, any>;
41
- public openDraftByMessageID(messageID: string): Promise<void>;
42
- public getThreadViewDriverStream(): Kefir.Observable<GmailThreadView, any>;
43
- public getMessageViewDriverStream(): Kefir.Observable<GmailMessageView, any>;
44
- public getAttachmentCardViewDriverStream(): Kefir.Observable<
32
+ getEnvData(): EnvData;
33
+ getTimings(): { [ix: string]: number | undefined | null };
34
+ onready: Promise<void>;
35
+ isUsingSyncAPI(): boolean;
36
+ getLogger(): Logger;
37
+ getAppId(): string;
38
+ getOpts(): PiOpts;
39
+ getRouteViewDriverStream(): Kefir.Observable<RouteView, any>; // should be a property
40
+ getRowListViewDriverStream(): Kefir.Observable<any, any>;
41
+ openNewComposeViewDriver(): Promise<GmailComposeView>;
42
+ getNextComposeViewDriver(): Promise<GmailComposeView>;
43
+ getComposeViewDriverStream(): Kefir.Observable<GmailComposeView, any>;
44
+ openDraftByMessageID(messageID: string): Promise<void>;
45
+ getThreadViewDriverStream(): Kefir.Observable<GmailThreadView, any>;
46
+ getMessageViewDriverStream(): Kefir.Observable<GmailMessageView, any>;
47
+ getAttachmentCardViewDriverStream(): Kefir.Observable<
45
48
  GmailAttachmentCardView,
46
49
  any
47
50
  >;
48
- public activateShortcut(
51
+ activateShortcut(
49
52
  keyboardShortcutHandle: KeyboardShortcutHandle,
50
53
  appName?: string,
51
54
  appIconUrl?: string
52
55
  ): void;
53
- public getTagTree(): TagTree<HTMLElement>;
54
- public getPageCommunicator(): GmailPageCommunicator;
55
- public getGmailActionToken(): Promise<string>;
56
- public getUserEmailAddress(): string;
57
- public isConversationViewDisabled(): Promise<boolean>;
58
- public getUserLanguage(): string;
59
- public getUserContact(): Contact;
60
- public getAccountSwitcherContactList(): Contact[];
61
- public getThreadRowViewDriverStream(): Kefir.Observable<
62
- GmailThreadRowView,
63
- any
64
- >;
65
- public registerThreadButton(options: any): () => void;
66
- public addNavItem(
56
+ getTagTree(): TagTree<HTMLElement>;
57
+ getPageCommunicator(): GmailPageCommunicator;
58
+ getGmailActionToken(): Promise<string>;
59
+ getUserEmailAddress(): string;
60
+ isConversationViewDisabled(): Promise<boolean>;
61
+ getUserLanguage(): string;
62
+ getUserContact(): Contact;
63
+ getAccountSwitcherContactList(): Contact[];
64
+ getThreadRowViewDriverStream(): Kefir.Observable<GmailThreadRowView, any>;
65
+ registerThreadButton(options: any): () => void;
66
+ addNavItem(
67
67
  appId: string,
68
68
  navItemDescriptor: any,
69
69
  navMenuInjectionContainer?: HTMLElement
@@ -71,38 +71,38 @@ export default class GmailDriver implements Driver {
71
71
  addAppMenuItem(
72
72
  menuItemDescriptor: AppMenuItemDescriptor
73
73
  ): Promise<GmailAppMenuItemView>;
74
- public addSupportItem(
74
+ addSupportItem(
75
75
  supportItemDescriptor: SupportItemDescriptor
76
76
  ): GmailSupportItemView;
77
- public getSentMailNativeNavItem(): Promise<any>;
78
- public createLink(a: any, b: any): any;
79
- public goto(routeID: string, params: any): Promise<void>;
80
- public addCustomRouteID(routeID: string): () => void;
81
- public addCustomListRouteID(routeID: string, handler: Function): () => void;
82
- public showCustomRouteView(el: HTMLElement): void;
83
- public setShowNativeNavMarker(isNative: boolean): any;
84
- public setShowNativeAddonSidebar(isNative: boolean): any;
85
- public registerSearchSuggestionsProvider(handler: Function): void;
86
- public registerSearchQueryRewriter(obj: any): void;
87
- public addToolbarButtonForApp(
77
+ getSentMailNativeNavItem(): Promise<any>;
78
+ createLink(a: any, b: any): any;
79
+ goto(routeID: string, params: any): Promise<void>;
80
+ addCustomRouteID(routeID: string): () => void;
81
+ addCustomListRouteID(routeID: string, handler: Function): () => void;
82
+ showCustomRouteView(el: HTMLElement): void;
83
+ setShowNativeNavMarker(isNative: boolean): any;
84
+ setShowNativeAddonSidebar(isNative: boolean): any;
85
+ registerSearchSuggestionsProvider(handler: Function): void;
86
+ registerSearchQueryRewriter(obj: any): void;
87
+ addToolbarButtonForApp(
88
88
  buttonDescriptor: Kefir.Observable<any, any>
89
89
  ): Promise<any>;
90
- public addGlobalSidebarContentPanel(
90
+ addGlobalSidebarContentPanel(
91
91
  buttonDescriptor: Kefir.Observable<any, any>
92
92
  ): Promise<ContentPanelViewDriver | null | undefined>;
93
- public getButterBarDriver(): GmailButterBarDriver;
94
- public setButterBar(butterBar: any): void;
95
- public isRunningInPageContext(): boolean;
96
- public showAppIdWarning(): void;
97
- public createModalViewDriver(options: any): any;
98
- public createMoleViewDriver(options: any): GmailMoleViewDriver;
99
- public createTopMessageBarDriver(options: any): any;
100
- public createDrawerViewDriver(options: DrawerViewOptions): DrawerViewDriver;
101
- public createBackdrop(zIndex?: number, target?: HTMLElement): GmailBackdrop;
102
- public getStopper(): Kefir.Observable<null, never>;
103
- public destroy(): void;
93
+ getButterBarDriver(): GmailButterBarDriver;
94
+ setButterBar(butterBar: any): void;
95
+ isRunningInPageContext(): boolean;
96
+ showAppIdWarning(): void;
97
+ createModalViewDriver(options: any): any;
98
+ createMoleViewDriver(options: any): GmailMoleViewDriver;
99
+ createTopMessageBarDriver(options: any): any;
100
+ createDrawerViewDriver(options: DrawerViewOptions): DrawerViewDriver;
101
+ createBackdrop(zIndex?: number, target?: HTMLElement): GmailBackdrop;
102
+ getStopper(): Kefir.Observable<null, never>;
103
+ destroy(): void;
104
104
 
105
- public getSelectedThreadRowViewDrivers(): ReadonlyArray<GmailThreadRowView>;
106
- public registerThreadRowViewSelectionHandler(handler: () => any): () => void;
107
- public getLoadEventDetails(): any;
105
+ getSelectedThreadRowViewDrivers(): ReadonlyArray<GmailThreadRowView>;
106
+ registerThreadRowViewSelectionHandler(handler: () => any): () => void;
107
+ getLoadEventDetails(): any;
108
108
  }
@@ -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;+BAOrB,WAAW,GAAG,IAAI;0CAIP,WAAW,GAAG,IAAI;+BAI7B,WAAW,GAAG,IAAI;+CAQrC,GAAG,KACR,MAAM,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;qBAItB,WAAW,GAAG,IAAI;+BAOR,OAAO;;;;;;uDAgFiB,WAAW,GAAG,IAAI;mDAItB,WAAW,GAAG,IAAI;0BAQ3C,WAAW,EAAE;0BAIb,WAAW,GAAG,IAAI;sBAItB,gBAAgB,GAAG,IAAI;qCAMR,WAAW,GAAG,IAAI;kCAIrB,WAAW,GAAG,IAAI;2BAIzB,WAAW,GAAG,IAAI;iCAWZ,WAAW,GAAG,IAAI;yBAI1B,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
+ {"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;qBAItB,WAAW,GAAG,IAAI;+BAOR,OAAO;;;;;;uDAkFiB,WAAW,GAAG,IAAI;mDAItB,WAAW,GAAG,IAAI;0BAQ3C,WAAW,EAAE;0BAIb,WAAW,GAAG,IAAI;sBAItB,gBAAgB,GAAG,IAAI;qCAMR,WAAW,GAAG,IAAI;kCAIrB,WAAW,GAAG,IAAI;2BAIzB,WAAW,GAAG,IAAI;iCAWZ,WAAW,GAAG,IAAI;yBAI1B,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"}
@@ -89,6 +89,9 @@ const GmailElementGetter = {
89
89
  return document.querySelector('.aeN .aj5.J-KU-Jg');
90
90
  },
91
91
  getLeftNavContainerElement() {
92
+ if (this.getAppMenu()) {
93
+ return this.getAppMenuContainer()?.querySelector('.aqn.aIH') ?? null;
94
+ }
92
95
  if (isIntegratedViewGmail()) {
93
96
  return document.querySelector('div[role=navigation] + div.aqn');
94
97
  }
@@ -166,7 +169,7 @@ const GmailElementGetter = {
166
169
  }),
167
170
  isAppBurgerMenuOpen() {
168
171
  return (document
169
- .querySelector('.gb_Hc[aria-expanded]')
172
+ .querySelector('header[role="banner"] > div > div > div[aria-expanded]')
170
173
  ?.getAttribute('aria-expanded') === 'true' ?? false);
171
174
  },
172
175
  getAppMenuContainer() {
@@ -1 +1 @@
1
- {"version":3,"file":"gmail-page-communicator.d.ts","sourceRoot":"","sources":["../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-page-communicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,sBAAsB,MAAM,oCAAoC,CAAC;AASxE,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,sBAAsB;IAC1D,cAAc,CACzB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IASZ,oBAAoB,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,KAAK,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;KACjC,CAAC,GAAG,IAAI,CAAC;YASI,eAAe;IAwCtB,iCAAiC,CACtC,SAAS,EAAE,WAAW,GACrB,MAAM,GAAG,IAAI;IAeT,8BAA8B,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAerE,kBAAkB,CACvB,sBAAsB,EAAE,WAAW,EACnC,iBAAiB,GAAE,OAAe,GACjC,MAAM;IAgBF,8BAA8B,IAAI,MAAM,GAAG,IAAI;IAI/C,mBAAmB,IAAI,MAAM;IAM7B,cAAc,IAAI,OAAO;IAMzB,0BAA0B,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB9C,2BAA2B,CAAC,UAAU,EAAE,MAAM;IAU9C,8BAA8B,CACnC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,8BAA8B,EAAE;IAgBxC,2BAA2B,CAAC,KAAK,EAAE,MAAM;IAUzC,qBAAqB,CAAC,MAAM,EAAE;QACnC,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB;IAUM,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAU7D,sBAAsB,CAAC,IAAI,EAAE,MAAM;IAUnC,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAUzD,8BAA8B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAqBpE,gCAAgC,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAUlE,oBAAoB,CACzB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,GAAG;CAcrB"}
1
+ {"version":3,"file":"gmail-page-communicator.d.ts","sourceRoot":"","sources":["../../../../../../src/platform-implementation-js/dom-driver/gmail/gmail-page-communicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,sBAAsB,MAAM,oCAAoC,CAAC;AASxE,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,sBAAsB;IACjE,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IASnB,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,KAAK,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;KACjC,CAAC,GAAG,IAAI,CAAC;YASI,eAAe;IAwC7B,iCAAiC,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAexE,8BAA8B,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAerE,kBAAkB,CAChB,sBAAsB,EAAE,WAAW,EACnC,iBAAiB,GAAE,OAAe,GACjC,MAAM;IAgBT,8BAA8B,IAAI,MAAM,GAAG,IAAI;IAI/C,mBAAmB,IAAI,MAAM;IAM7B,cAAc,IAAI,OAAO;IAMzB,0BAA0B,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB9C,2BAA2B,CAAC,UAAU,EAAE,MAAM;IAU9C,8BAA8B,CAC5B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,8BAA8B,EAAE;IAgB/C,2BAA2B,CAAC,KAAK,EAAE,MAAM;IAUzC,qBAAqB,CAAC,MAAM,EAAE;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB;IAUD,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAU7D,sBAAsB,CAAC,IAAI,EAAE,MAAM;IAUnC,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAUzD,8BAA8B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAqBpE,gCAAgC,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAUlE,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG;CAa3E"}
@@ -10,6 +10,7 @@ export type MessageEvents = {
10
10
  export declare const NATIVE_CLASS: "Xa";
11
11
  export declare const INBOXSDK_CLASS: "inboxsdk__appMenuItem";
12
12
  export declare const ELEMENT_CLASS: "Xa inboxsdk__appMenuItem";
13
+ export declare const ICON_ELEMENT_SELECTOR: ".V6.CL";
13
14
  declare const GmailAppMenuItemView_base: new () => TypedEventEmitter<MessageEvents>;
14
15
  export declare class GmailAppMenuItemView extends GmailAppMenuItemView_base {
15
16
  #private;
@@ -17,19 +18,11 @@ export declare class GmailAppMenuItemView extends GmailAppMenuItemView_base {
17
18
  readonly HOVER: "aIk";
18
19
  readonly ACTIVE: "apV";
19
20
  };
20
- get element(): HTMLElement | undefined;
21
- setMenuItemDescriptor(newMenuItemDescriptor: AppMenuItemDescriptor): void;
22
- get menuItemDescriptor(): AppMenuItemDescriptor | undefined;
23
- constructor(driver: GmailDriver);
21
+ get element(): HTMLElement;
22
+ set menuItemDescriptor(newMenuItemDescriptor: AppMenuItemDescriptor);
23
+ get menuItemDescriptor(): AppMenuItemDescriptor;
24
+ constructor(driver: GmailDriver, menuItemDescriptor: AppMenuItemDescriptor);
24
25
  remove(): void;
25
- /**
26
- * @internal
27
- */
28
- blur(): void;
29
- /**
30
- * @internal
31
- */
32
- hover(): void;
33
26
  }
34
27
  export {};
35
28
  //# sourceMappingURL=gmail-app-menu-item-view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gmail-app-menu-item-view.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAE1C,OAAO,iBAAiB,MAAM,eAAe,CAAC;AAK9C,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9B,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,YAAY,MAAgB,CAAC;AAC1C,eAAO,MAAM,cAAc,yBAAmC,CAAC;AAC/D,eAAO,MAAM,aAAa,4BAA+C,CAAC;mDAOL,kBAAkB,aAAa,CAAC;AAArG,qBAAa,oBAAqB,SAAQ,yBAA4D;;IACpG,MAAM,CAAC,UAAU;;;MAGN;IAOX,IAAI,OAAO,4BAEV;IAED,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB;IAKlE,IAAI,kBAAkB,sCAErB;gBAEW,MAAM,EAAE,WAAW;IAc/B,MAAM;IAON;;OAEG;IACH,IAAI;IAIJ;;OAEG;IACH,KAAK;CA4FN"}
1
+ {"version":3,"file":"gmail-app-menu-item-view.d.ts","sourceRoot":"","sources":["../../../../../../../src/platform-implementation-js/dom-driver/gmail/views/gmail-app-menu-item-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAE1C,OAAO,iBAAiB,MAAM,eAAe,CAAC;AAO9C,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9B,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,YAAY,MAAgB,CAAC;AAC1C,eAAO,MAAM,cAAc,yBAAmC,CAAC;AAC/D,eAAO,MAAM,aAAa,4BAA+C,CAAC;AAI1E,eAAO,MAAM,qBAAqB,UAAoB,CAAC;mDAGc,kBAAkB,aAAa,CAAC;AAArG,qBAAa,oBAAqB,SAAQ,yBAA4D;;IACpG,MAAM,CAAC,UAAU;;;MAGN;IAOX,IAAI,OAAO,gBAEV;IAED,IAAI,kBAAkB,CAAC,qBAAqB,uBAAA,EAG3C;IAED,IAAI,kBAAkB,0BAErB;gBAEW,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,qBAAqB;IAwB1E,MAAM;CA6GP"}