@inboxsdk/core 2.2.24 → 2.2.26

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 CHANGED
@@ -18054,7 +18054,7 @@ options.insert = htmlElement => {
18054
18054
  htmlElement.setAttribute('data-inboxsdk-version',
18055
18055
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- this is injected by webpack
18056
18056
  ///@ts-ignore
18057
- "2.2.24-1789167568236-ec7ea453503a0810");
18057
+ "2.2.26-1789683530517-1719c06893255687");
18058
18058
  document.head.append(htmlElement);
18059
18059
  };
18060
18060
  options.domAPI = (styleDomAPI_default());
@@ -23028,9 +23028,6 @@ class GmailComposeView {
23028
23028
  getInsertMoreArea() {
23029
23029
  return (0,querySelectorOrFail/* default */.A)(this.#element, '.eq');
23030
23030
  }
23031
- getInsertLinkButton() {
23032
- return (0,querySelectorOrFail/* default */.A)(this.#element, '.e5.aaA.aMZ');
23033
- }
23034
23031
  getSendButton() {
23035
23032
  return (0,querySelectorOrFail/* default */.A)(this.#element, '.IZ .Up div > div[role=button]:not(.Uo):not([aria-haspopup=true]):not([class^=inboxsdk_])');
23036
23033
  }
@@ -23086,9 +23083,6 @@ class GmailComposeView {
23086
23083
  getBottomBarTable() {
23087
23084
  return (0,querySelectorOrFail/* default */.A)(this.#element, '.aoP .aDh > table');
23088
23085
  }
23089
- getBottomToolbarContainer() {
23090
- return (0,querySelectorOrFail/* default */.A)(this.#element, '.aoP .aDj');
23091
- }
23092
23086
  getDiscardButton() {
23093
23087
  return (0,querySelectorOrFail/* default */.A)(this.#element, '.gU .oh');
23094
23088
  }
@@ -23226,9 +23220,7 @@ class GmailComposeView {
23226
23220
  setFullscreen(fullscreen) {
23227
23221
  if (fullscreen !== this.isFullscreen()) {
23228
23222
  if (this.#isInlineReplyForm) throw new Error('Not implemented for inline compose views');
23229
- // Prefer legacy <img>; fall back to newer <button class="Hq">.
23230
- const fullscreenButton = this.#element.querySelector('.Hm > img:nth-of-type(2)') || (0,querySelectorOrFail/* default */.A)(this.#element, '.Hm .Hq');
23231
- (0,simulate_mouse_event/* simulateClick */.jp)(fullscreenButton);
23223
+ (0,simulate_mouse_event/* simulateClick */.jp)(this.getMoleSwitchButton());
23232
23224
  }
23233
23225
  }
23234
23226
  setTitleBarColor(color) {
@@ -24191,15 +24183,6 @@ var wait_for = __webpack_require__(5156);
24191
24183
 
24192
24184
 
24193
24185
 
24194
- /**
24195
- * The selector for the new app menu https://support.google.com/mail/answer/11555490 -- FEB 2023
24196
- */
24197
- const APP_MENU = '.aeN.WR.a6o.anZ.nH.oy8Mbf[role=navigation]';
24198
- /**
24199
- * If the APP_MENU selector is not found, NAV_MENU _might_ be present.
24200
- */
24201
- const NAV_MENU = '.aeN.WR.nH.oy8Mbf[role=navigation]';
24202
-
24203
24186
  /**
24204
24187
  * The right-hand column holding the companion sidebar. Both the panel and the
24205
24188
  * icon rail live inside it.
@@ -24232,7 +24215,7 @@ const MOLE_PARENT_SELECTOR = `${MOLE_CONTAINER_SELECTOR} .nH > .nH > .no`;
24232
24215
  * registry.
24233
24216
  */
24234
24217
  class GmailElementGetter {
24235
- /** Held for the selector registry migration; see the class docs. */
24218
+ /** Supplies the selector registry the lookups resolve through. */
24236
24219
  #driver;
24237
24220
  #appMenuAsync;
24238
24221
  #mainContentElementChangedStream;
@@ -24343,7 +24326,7 @@ class GmailElementGetter {
24343
24326
  }).toProperty();
24344
24327
  }
24345
24328
  getGtalkButtons() {
24346
- return document.querySelector('.aeN .aj5.J-KU-Jg');
24329
+ return this.#driver.selectors.querySelectorByKey(document, 'leftNav.gtalkButtons');
24347
24330
  }
24348
24331
  getLeftNavContainerElement() {
24349
24332
  if (this.getAppMenu()) {
@@ -24352,10 +24335,10 @@ class GmailElementGetter {
24352
24335
  if ((0,isIntegratedViewGmail/* default */.Ay)()) {
24353
24336
  return document.querySelector('div[role=navigation] + div.aqn');
24354
24337
  }
24355
- return document.querySelector('.aeN');
24338
+ return this.#driver.selectors.querySelectorByKey(document, 'leftNav.root');
24356
24339
  }
24357
24340
  getLeftNavHeightElement() {
24358
- return document.querySelector('.aeN');
24341
+ return this.#driver.selectors.querySelectorByKey(document, 'leftNav.root');
24359
24342
  }
24360
24343
  getMainContentBodyContainerElement() {
24361
24344
  return document.querySelector('.no > .nn.bkK');
@@ -24405,8 +24388,8 @@ class GmailElementGetter {
24405
24388
  if (!this.isStandalone()) {
24406
24389
  await this.waitForGmailModeToSettle();
24407
24390
  try {
24408
- const element = await (0,wait_for/* default */.A)(() => document.querySelector(`${APP_MENU}, ${NAV_MENU}`));
24409
- if (!document.querySelector(APP_MENU)) {
24391
+ const element = await (0,wait_for/* default */.A)(() => this.#driver.selectors.querySelectorByKey(document, 'leftNav.appMenuOrNavMenuFallback'));
24392
+ if (!this.getAppMenu()) {
24410
24393
  return;
24411
24394
  }
24412
24395
  return element;
@@ -24416,22 +24399,22 @@ class GmailElementGetter {
24416
24399
  }
24417
24400
  }
24418
24401
  getAppBurgerMenu() {
24419
- return document.querySelector('header[role="banner"] > div > div > div[aria-expanded]');
24402
+ return this.#driver.selectors.querySelectorByKey(document, 'appMenu.burgerButton');
24420
24403
  }
24421
24404
  isAppBurgerMenuOpen() {
24422
24405
  return this.getAppBurgerMenu()?.getAttribute('aria-expanded') === 'true';
24423
24406
  }
24424
24407
  getAppMenuContainer() {
24425
- return document.querySelector('.aqk.aql.bkL');
24408
+ return this.#driver.selectors.querySelectorByKey(document, 'appMenu.container');
24426
24409
  }
24427
24410
  getAppMenu() {
24428
- return document.querySelector(APP_MENU);
24411
+ return this.#driver.selectors.querySelectorByKey(document, 'leftNav.appMenu');
24429
24412
  }
24430
24413
  getAppHeader() {
24431
- return document.querySelector('.oy8Mbf.qp');
24414
+ return this.#driver.selectors.querySelectorByKey(document, 'appMenu.header');
24432
24415
  }
24433
24416
  getSeparateSectionNavItemMenuInjectionContainer() {
24434
- return document.querySelector('.aeN');
24417
+ return this.#driver.selectors.querySelectorByKey(document, 'leftNav.root');
24435
24418
  }
24436
24419
  getSameSectionNavItemMenuInjectionContainer() {
24437
24420
  if ((0,isIntegratedViewGmail/* default */.Ay)()) {
@@ -24440,18 +24423,6 @@ class GmailElementGetter {
24440
24423
  return document.querySelector('.aeN .n3');
24441
24424
  }
24442
24425
  }
24443
- getRowListElementsContainer() {
24444
- // This selector can find multiple elements but they should all be siblings
24445
- // so it's fine because we get the common parent.
24446
- return document.querySelector('.bGI.nH')?.parentElement ?? null;
24447
- }
24448
- getRowListElements() {
24449
- const rowListElements = document.querySelectorAll('[gh=tl]');
24450
- if (rowListElements.length === 0) {
24451
- return null;
24452
- }
24453
- return Array.from(rowListElements);
24454
- }
24455
24426
  getScrollContainer() {
24456
24427
  return document.querySelector('div.Tm.aeJ');
24457
24428
  }
@@ -24461,9 +24432,6 @@ class GmailElementGetter {
24461
24432
  getSearchSuggestionsBoxParent() {
24462
24433
  return document.querySelector('table.gstl_50 > tbody > tr > td.gssb_e');
24463
24434
  }
24464
- getSidebarContainerElement() {
24465
- return document.querySelector('[role=main] table.Bs > tr .y3');
24466
- }
24467
24435
  getThreadBackButton() {
24468
24436
  let toolbarElement;
24469
24437
  try {
@@ -24506,9 +24474,6 @@ class GmailElementGetter {
24506
24474
  isDarkTheme() {
24507
24475
  return document.body.classList.contains('inboxsdk__gmail_dark_theme');
24508
24476
  }
24509
- isPreviewPane() {
24510
- return !!document.querySelector('.aia');
24511
- }
24512
24477
  isStandalone() {
24513
24478
  return this.isStandaloneComposeWindow() || this.isStandaloneThreadWindow();
24514
24479
  }
@@ -25814,7 +25779,7 @@ module.exports = assocIndexOf;
25814
25779
 
25815
25780
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- SDK_VERSION is injected by webpack
25816
25781
  ///@ts-ignore
25817
- const BUILD_VERSION = "2.2.24-1789167568236-ec7ea453503a0810";
25782
+ const BUILD_VERSION = "2.2.26-1789683530517-1719c06893255687";
25818
25783
  if (false) {}
25819
25784
 
25820
25785
  /***/ }),
@@ -27606,7 +27571,7 @@ options.insert = htmlElement => {
27606
27571
  htmlElement.setAttribute('data-inboxsdk-version',
27607
27572
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- this is injected by webpack
27608
27573
  ///@ts-ignore
27609
- "2.2.24-1789167568236-ec7ea453503a0810");
27574
+ "2.2.26-1789683530517-1719c06893255687");
27610
27575
  document.head.append(htmlElement);
27611
27576
  };
27612
27577
  options.domAPI = (styleDomAPI_default());
@@ -44521,7 +44486,6 @@ class StatusBar extends _views_SimpleElementView__WEBPACK_IMPORTED_MODULE_5__/*
44521
44486
  super(createElement(orderHint, addAboveNativeStatusBar));
44522
44487
  this._addAboveNativeStatusBar = addAboveNativeStatusBar;
44523
44488
  this._gmailComposeView = gmailComposeView;
44524
- this._nativeStatusContainer = (0,_lib_dom_querySelectorOrFail__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(gmailComposeView.getElement(), '.iN > tbody .aDj');
44525
44489
  this._setStatusBar();
44526
44490
  this.setHeight(height);
44527
44491
  }
@@ -44962,9 +44926,6 @@ class GmailAttachmentCardView {
44962
44926
  throw err;
44963
44927
  }
44964
44928
  }
44965
- _extractFileNameFromElement() {
44966
- return (0,querySelectorOrFail/* default */.A)(this._element, '.aQA > span').textContent;
44967
- }
44968
44929
  _createNewElement(options) {
44969
44930
  this._element = document.createElement('span');
44970
44931
  this._element.classList.add('aZo');
@@ -45114,16 +45075,6 @@ class GmailAttachmentCardView {
45114
45075
  buttonView.addClass('aQv');
45115
45076
  this._getButtonContainerElement().appendChild(buttonView.getElement());
45116
45077
  }
45117
- _getPreviewImageUrl() {
45118
- var previewImage = this._getPreviewImage();
45119
- if (!previewImage) {
45120
- return null;
45121
- }
45122
- return previewImage.src;
45123
- }
45124
- _getPreviewImage() {
45125
- return this._element.querySelector('img.aQG');
45126
- }
45127
45078
  _getButtonContainerElement() {
45128
45079
  return (0,querySelectorOrFail/* default */.A)(this._element, '.aQw');
45129
45080
  }
@@ -48323,7 +48274,7 @@ options.insert = htmlElement => {
48323
48274
  htmlElement.setAttribute('data-inboxsdk-version',
48324
48275
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- this is injected by webpack
48325
48276
  ///@ts-ignore
48326
- "2.2.24-1789167568236-ec7ea453503a0810");
48277
+ "2.2.26-1789683530517-1719c06893255687");
48327
48278
  document.head.append(htmlElement);
48328
48279
  };
48329
48280
  options.domAPI = (styleDomAPI_default());
@@ -49447,7 +49398,11 @@ class GmailRouteView {
49447
49398
  attributes: true,
49448
49399
  attributeFilter: ['style', 'class']
49449
49400
  }).filter(mutations => mutations.some(mutation => !sectionsContainer.contains(mutation.target))).takeUntilBy(this._stopper).onValue(() => {
49450
- placeSectionsContainer(main, sectionsContainer, selectors);
49401
+ // Placement reads computed style. Waiting for the next frame keeps that read
49402
+ // out of Gmail's row hover handling, where it makes the hover toolbar flicker.
49403
+ requestAnimationFrame(() => {
49404
+ placeSectionsContainer(main, sectionsContainer, selectors);
49405
+ });
49451
49406
  });
49452
49407
  }
49453
49408
  _getCustomParams() {
@@ -53158,7 +53113,7 @@ mole_view_module_options.insert = htmlElement => {
53158
53113
  htmlElement.setAttribute('data-inboxsdk-version',
53159
53114
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- this is injected by webpack
53160
53115
  ///@ts-ignore
53161
- "2.2.24-1789167568236-ec7ea453503a0810");
53116
+ "2.2.26-1789683530517-1719c06893255687");
53162
53117
  document.head.append(htmlElement);
53163
53118
  };
53164
53119
  mole_view_module_options.domAPI = (styleDomAPI_default());
@@ -57604,7 +57559,46 @@ const GMAIL_SELECTORS = {
57604
57559
  * The toolbar above the thread list.
57605
57560
  * Root: `routeView.rowListWrapper`.
57606
57561
  */
57607
- 'routeView.listToolbar': ['[gh=tm]', '.G-atb']
57562
+ 'routeView.listToolbar': ['[gh=tm]', '.G-atb'],
57563
+ /**
57564
+ * The left nav column.
57565
+ * Root: `document`.
57566
+ */
57567
+ 'leftNav.root': ['.aeN'],
57568
+ /**
57569
+ * The left nav when Gmail shows the app menu
57570
+ * https://support.google.com/mail/answer/11555490
57571
+ * Root: `document`.
57572
+ */
57573
+ 'leftNav.appMenu': ['.aeN.WR.a6o.anZ.nH.oy8Mbf[role=navigation]'],
57574
+ /**
57575
+ * The app menu container, which holds the menu items and their panels.
57576
+ * Root: `document`.
57577
+ */
57578
+ 'appMenu.container': ['.aqk.aql.bkL'],
57579
+ /**
57580
+ * The main menu button in the Gmail header; its `aria-expanded` is read.
57581
+ * Root: `document`.
57582
+ */
57583
+ 'appMenu.burgerButton': ['header[role="banner"] > div > div > div[aria-expanded]'],
57584
+ /**
57585
+ * The app header, which toggles into panel-less mode with the app menu.
57586
+ * Root: `document`.
57587
+ */
57588
+ 'appMenu.header': ['.oy8Mbf.qp'],
57589
+ /**
57590
+ * The Hangouts buttons at the bottom of the left nav.
57591
+ * Root: `document`.
57592
+ */
57593
+ 'leftNav.gtalkButtons': ['.aeN .aj5.J-KU-Jg'],
57594
+ /**
57595
+ * This selector matches the app menu if it is or will be present, otherwise if
57596
+ * we're in a mode of Gmail without the app menu, then this might match the
57597
+ * collapsible panel left nav menu instead. We wait for this selector so we can
57598
+ * know when the app menu is ready or if it will never be ready.
57599
+ * Root: `document`.
57600
+ */
57601
+ 'leftNav.appMenuOrNavMenuFallback': ['.aeN.WR.nH.oy8Mbf[role=navigation]']
57608
57602
  };
57609
57603
 
57610
57604
  /** Resolved candidates for every key. The merge builds new lists. */