dimsum-e2e-tests 3.70.0-alpha.12 → 3.70.0-alpha.14

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 (35) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/ds-accordion/DSAccordionCO.js +5 -5
  3. package/ds-breadcrumb/DSBreadcrumbCO.js +1 -1
  4. package/ds-chip/Basic/DSChip.basic.visual.spec.js +74 -0
  5. package/ds-chip/Shape/DSChip.shape.visual.spec.js +66 -0
  6. package/ds-chip/inside-popper/DSChip.inside-popper.visual.spec.js +69 -0
  7. package/ds-controlled-form/ds-controlled-radio/DSControlledRadioCO.js +1 -1
  8. package/ds-dialog/DSDialogCO.js +1 -1
  9. package/ds-form-combobox-multi/virtualization/{DSComboboxMulti.virtualization.func.spec .js → DSComboboxMulti.virtualization.func.spec.js} +12 -7
  10. package/ds-form-date-range-picker/DateRangePicker.visual.spec.js +9 -0
  11. package/ds-form-layout-blocks/form-layout-block-item/DSFormLayoutBlockItemCO.js +1 -1
  12. package/ds-global-header/GlobalHeaderCO.js +28 -2
  13. package/ds-global-header/app-picker-element-ids/GlobalHeader.app-picker-element-ids.func.spec.js +84 -0
  14. package/ds-global-header/search-toggle-slots/GlobalHeader.search-toggle-slots.func.spec.js +10 -8
  15. package/ds-global-header/slots/GlobalHeader.slots.visual.spec.js +1 -1
  16. package/ds-grid/DSGridCO.js +1 -1
  17. package/ds-image/DSImageCO.js +4 -4
  18. package/ds-indeterminate-progress-indicator/DSIndeterminateProgressIndicatorCO.js +1 -1
  19. package/ds-menu-button/DSMenuButtonCO.js +4 -4
  20. package/ds-query-builder/DSQueryBuilderCO.js +0 -2
  21. package/ds-svg/DSSvgCO.js +5 -5
  22. package/ds-tabs/DSTabsCO.js +4 -0
  23. package/ds-tabs/notification-badge/DSTabs.notification-badge.axe-core.func.spec.js +28 -0
  24. package/ds-tabs/notification-badge/DSTabs.notification-badge.func.spec.js +51 -0
  25. package/ds-toast/DSToast.visual.spec.js +7 -3
  26. package/ds-toast/DSToastCO.js +1 -1
  27. package/ds-treeview/DSTreeViewCO.js +1 -1
  28. package/ds-typography/DSTypographyCO.js +4 -4
  29. package/helpers.js +35 -47
  30. package/package.json +149 -149
  31. package/paths.js +4 -0
  32. package/z-index/ZindexCO.js +4 -0
  33. package/z-index/dialog-side-panel/ZIndex.dialog-sidepanel.visual.spec.js +7 -1
  34. package/ds-dialog/axe-core/DSDialog.warning.axe-core.spec.func.js +0 -24
  35. /package/ds-indeterminate-progress-indicator/{DSIndetermintateProgressIndicator.func.spec copy.js → DSIndetermintateProgressIndicator.func.spec.js} +0 -0
@@ -60,6 +60,8 @@ export default class DSTabsCO extends PageObject {
60
60
 
61
61
  static allTabsDisabled = new Urlbuilder(PATH_E2E_TABS, 'all-tabs-disabled');
62
62
 
63
+ static withNotificationBadge = new Urlbuilder(PATH_E2E_TABS, 'with-notification-badge-test');
64
+
63
65
  static getUrl(component = 'basic') {
64
66
  return PageObject.getUrl(PATH_E2E_TABS, component);
65
67
  }
@@ -102,6 +104,8 @@ export default class DSTabsCO extends PageObject {
102
104
 
103
105
  static getTabByName = async (name) => $(`button*=${name}`);
104
106
 
107
+ static getTabBadges = async () => (await this.getTabsList()).$$('[data-testid="ds-notification-badge"]');
108
+
105
109
  // Snapshots
106
110
  static snapshotPath(example = 'basic') {
107
111
  return PageObject.getSnapshotPathBuilder('Tabs', example);
@@ -0,0 +1,28 @@
1
+ import DSTabsCO from '../DSTabsCO';
2
+ import { axeCoreCheck } from '../../helpers';
3
+
4
+ if (
5
+ (!browser.capabilities['ice:options'].isPhone &&
6
+ !browser.capabilities['ice:options'].isTablet &&
7
+ browser.capabilities.browserName === 'chrome') ||
8
+ browser.capabilities.browserName === 'Chrome'
9
+ ) {
10
+ describe('PUI-18932 - DSTabs:: notification badge tab list a11y scan - Axe-Core', () => {
11
+ before('loading page', async () => {
12
+ const errorOnGo = await DSTabsCO.withNotificationBadge.go();
13
+ if (errorOnGo) throw errorOnGo;
14
+ });
15
+
16
+ it('01: should have no violations with the badged tab selected', async () => {
17
+ await (await DSTabsCO.getTabsList()).waitForDisplayed();
18
+ const result = await axeCoreCheck();
19
+ await expect(result).toHaveLength(0);
20
+ });
21
+
22
+ it('02: should have no violations after switching to a tab without a badge', async () => {
23
+ await (await DSTabsCO.getTabsByIndex(1)).click();
24
+ const result = await axeCoreCheck();
25
+ await expect(result).toHaveLength(0);
26
+ });
27
+ });
28
+ }
@@ -0,0 +1,51 @@
1
+ import DSTabsCO from '../DSTabsCO';
2
+ import DSNotificationBadgeCO from '../../ds-notification-badge/DSNotificationBadgeCO';
3
+
4
+ if (
5
+ (!browser.capabilities['ice:options'].isPhone &&
6
+ !browser.capabilities['ice:options'].isTablet &&
7
+ browser.capabilities.browserName === 'chrome') ||
8
+ browser.capabilities.browserName === 'Chrome'
9
+ ) {
10
+ describe('PUI-18931 - DSTabs:: notification badge in the tab accessible name - Func', () => {
11
+ before('loading page', async () => {
12
+ const errorOnGo = await DSTabsCO.withNotificationBadge.go();
13
+ if (errorOnGo) throw errorOnGo;
14
+ });
15
+
16
+ it('01: should expose a named badge into the tab name', async () => {
17
+ const badgedTab = await DSTabsCO.getTabsByIndex(0);
18
+ await badgedTab.waitForDisplayed();
19
+
20
+ const badge = await DSNotificationBadgeCO.getNotificationBadgeByIndex(0);
21
+ await expect(badge).toBeExisting();
22
+ await expect(badge).toHaveText('3');
23
+
24
+ const wrapper = await badge.parentElement();
25
+ await expect(wrapper).toHaveAttribute('role', 'img');
26
+ await expect(wrapper).toHaveAttribute('aria-label', '3 new notifications');
27
+
28
+ const computedName = await badgedTab.getComputedLabel();
29
+ expect(computedName).toMatch(/Fields Sent\s*3 new notifications/i);
30
+ expect(await badgedTab.getComputedRole()).toBe('tab');
31
+ });
32
+
33
+ it('02: should announce tabs without a badge by their title only', async () => {
34
+ const plainTab = await DSTabsCO.getTabsByIndex(1);
35
+ const plainName = await plainTab.getComputedLabel();
36
+ expect(plainName.trim()).toMatch(/^Fields Received$/i);
37
+ expect(plainName).not.toContain('3');
38
+
39
+ const badges = await DSTabsCO.getTabBadges();
40
+ await expect(badges).toHaveLength(1);
41
+ });
42
+
43
+ it('03: should keep the required tab announcing its Required indicator', async () => {
44
+ const requiredTab = await DSTabsCO.getTabsByIndex(3);
45
+ await expect(requiredTab).toHaveAttribute('data-required', 'true');
46
+
47
+ const requiredName = await requiredTab.getComputedLabel();
48
+ expect(requiredName).toMatch(/Required docs\s*Required/i);
49
+ });
50
+ });
51
+ }
@@ -153,12 +153,16 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
153
153
  const bottomLeftBtn = await DSToastCO.openToastPositionBtn('bottom-left');
154
154
  const bottomCenterBtn = await DSToastCO.openToastPositionBtn('bottom-center');
155
155
  const bottomRightBtn = await DSToastCO.openToastPositionBtn('bottom-right');
156
- await topLeftBtn.click();
157
- await topCenterBtn.click();
158
- await topRigthBtn.click();
156
+ // Click order matters: all six triggers sit within y 0-88, and the top-* toast containers
157
+ // render over y 13-97 with autoClose disabled. Clicking the top row first covers the bottom
158
+ // row and WebDriver rejects the click as intercepted. Bottom row first keeps every trigger
159
+ // clickable (bottom containers sit at y 983-1067) and yields the same final state.
159
160
  await bottomLeftBtn.click();
160
161
  await bottomCenterBtn.click();
161
162
  await bottomRightBtn.click();
163
+ await topLeftBtn.click();
164
+ await topCenterBtn.click();
165
+ await topRigthBtn.click();
162
166
  await browser.pause(2000);
163
167
  const topLeftToast = await DSToastCO.getToastByPosition('top-left');
164
168
  const topCenterToast = await DSToastCO.getToastByPosition('top-center');
@@ -13,7 +13,7 @@ export default class DSToastCO extends PageObject {
13
13
 
14
14
  static longTextURL = new Urlbuilder(PATH_E2E_TOAST, 'long-text-test');
15
15
 
16
- static longTextWithLinkURL = new Urlbuilder(PATH_E2E_TOAST, 'long-text-with-link');
16
+ static longTextWithLinkURL = new Urlbuilder(PATH_E2E_TOAST, 'long-text-with-link-test');
17
17
 
18
18
  static multipleToastURL = new Urlbuilder(PATH_E2E_TOAST, 'multiple-toast-test');
19
19
 
@@ -17,7 +17,7 @@ export const knobs = {
17
17
  export default class DSTreeViewCO extends PageObject {
18
18
  static basicUrl = new Urlbuilder(PATH_TREEVIEW, 'basic');
19
19
 
20
- static compactURL = new Urlbuilder(PATH_TREEVIEW, 'compact');
20
+ static compactURL = new Urlbuilder(PATH_TREEVIEW, 'compact-view');
21
21
 
22
22
  static fluidHeightURL = new Urlbuilder(PATH_TREEVIEW, 'fluid-height');
23
23
 
@@ -3,13 +3,13 @@ import { PageObject, Urlbuilder, getElementByIndex } from '../helpers';
3
3
 
4
4
  export default class DSTypographyCO extends PageObject {
5
5
  // Desktop
6
- static cardURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'card');
6
+ static cardURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'card-read-more');
7
7
 
8
- static formURl = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'form');
8
+ static formURl = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'form-test');
9
9
 
10
- static dialogURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'dialog');
10
+ static dialogURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'dialog-test');
11
11
 
12
- static showcaseURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'show-case');
12
+ static showcaseURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'show-case-test');
13
13
 
14
14
  static truncationURL = new Urlbuilder(PATH_E2E_TYPOGRAPHY, 'truncation-test');
15
15
 
package/helpers.js CHANGED
@@ -402,66 +402,54 @@ export async function getLocationByDataTestId(dataTest, index) {
402
402
  return result;
403
403
  }
404
404
 
405
+ // Inset from the element's top/bottom edge for the scrollbar click. Classic Windows scrollbars
406
+ // render an arrow button (~17px) at each end: clicking it scrolls a single line, while clicking the
407
+ // track scrolls a full page. Clearing the arrow is what makes a click page instead of nudge.
408
+ const SCROLLBAR_ARROW_INSET = 30;
409
+
405
410
  /**
406
- * Simulates clicks on the scrollbar of an element to scroll its content.
411
+ * Simulates clicks on the scrollbar track of an element to page its content.
407
412
  *
408
- * For "down" direction, it clicks near the bottom of the element; for "up",
409
- * it clicks near the top. A pause is added between pointerDown and pointerUp
410
- * to simulate a more realistic click.
413
+ * For "down" direction it clicks the track near the bottom of the element; for "up", near the top.
414
+ * Both are inset far enough to clear the scrollbar's arrow buttons. A pause is added between
415
+ * pointerDown and pointerUp to simulate a more realistic click.
411
416
  *
412
- * @param {string|object} element - Element or selector for the element containing the scrollbar.
417
+ * @param {string|object} element - Element or selector for the element that scrolls (the one with
418
+ * overflow-y: auto/scroll, not an inner content wrapper).
413
419
  * @param {string} direction - Scroll direction: 'up' or 'down' (default: 'down').
414
420
  * @param {number} clicks - Number of clicks to simulate (default: 1).
415
421
  */
416
422
  export async function clickScrollBar(element, direction = 'down', clicks = 1) {
417
- // If 'element' is a string, treat it as a selector.
418
- let elem = typeof element === 'string' ? await $(element) : element;
419
- if (!elem) {
420
- throw new Error('Element not found.');
423
+ if (direction !== 'up' && direction !== 'down') {
424
+ throw new Error("Invalid direction: choose 'up' or 'down'");
421
425
  }
422
426
 
423
- // Get viewport dimensions to clamp coordinates.
424
- const viewport = await browser.getWindowSize();
427
+ // Page viewport, not browser.getWindowSize(): the latter reports the outer window, which includes
428
+ // the titlebar and toolbar, so clamping against it can yield a y below the page and make
429
+ // performActions fail with "move target out of bounds".
430
+ const viewport = await browser.execute(() => ({ width: window.innerWidth, height: window.innerHeight }));
425
431
 
426
- // Loop to simulate each click.
427
432
  for (let i = 0; i < clicks; i++) {
428
- // Re-fetch the element's current bounding rect.
429
- let rect;
430
- if (typeof elem.getRect === 'function') {
431
- rect = await elem.getRect();
432
- } else {
433
- rect = await browser.execute((el) => {
434
- const r = el.getBoundingClientRect();
435
- return { x: r.x, y: r.y, width: r.width, height: r.height };
436
- }, elem);
433
+ // Re-resolve on every iteration. Virtualized and portalled scrollers re-render between clicks,
434
+ // and a cached element reference would raise "stale element reference".
435
+ const elem = typeof element === 'string' ? await $(element) : element;
436
+ if (!(await elem.isExisting())) {
437
+ throw new Error(`clickScrollBar: element no longer exists on click ${i + 1} of ${clicks}.`);
437
438
  }
438
439
 
439
- // Define element's vertical limits (with a margin of 5px).
440
- const topLimit = Math.round(rect.y + 5);
441
- const bottomLimit = Math.round(rect.y + rect.height - 5);
442
- // Calculate x-coordinate: 5px from the right edge.
443
- let xCoord = Math.round(rect.x + rect.width - 5);
444
- xCoord = Math.max(0, Math.min(xCoord, viewport.width - 1));
445
-
446
- let yCoord;
447
- if (direction === 'down') {
448
- // Para scroll down: queremos hacer click en el área inferior.
449
- // Se puede calcular un offset en función del número de click.
450
- yCoord = bottomLimit - i * 5; // Ajusta el valor (por ejemplo, 5px) según sea necesario.
451
- } else if (direction === 'up') {
452
- // Para scroll up: click en el área superior.
453
- yCoord = topLimit + i * 5; // Ajusta el valor (por ejemplo, 5px) según sea necesario.
454
- } else {
455
- throw new Error("Invalid direction: choose 'up' or 'down'");
456
- }
457
- // Asegurarse de que yCoord esté dentro de los límites del elemento.
458
- if (direction === 'down') {
459
- yCoord = Math.min(yCoord, bottomLimit);
460
- } else {
461
- yCoord = Math.max(yCoord, topLimit);
462
- }
463
- // Clamp yCoord within viewport.
464
- yCoord = Math.max(0, Math.min(yCoord, viewport.height - 1));
440
+ const rect = await browser.execute((el) => {
441
+ const r = el.getBoundingClientRect();
442
+ return { x: r.x, y: r.y, width: r.width, height: r.height };
443
+ }, elem);
444
+
445
+ // x: inside the scrollbar band, 5px from the right edge.
446
+ const xCoord = Math.max(0, Math.min(Math.round(rect.x + rect.width - 5), viewport.width - 1));
447
+
448
+ const inset = Math.min(SCROLLBAR_ARROW_INSET, Math.max(1, Math.round(rect.height / 2) - 1));
449
+ const rawY = direction === 'down' ? rect.y + rect.height - inset : rect.y + inset;
450
+ // Keep the point inside the element, then inside the viewport.
451
+ const boundedY = Math.min(Math.max(Math.round(rawY), Math.round(rect.y) + 1), Math.round(rect.y + rect.height) - 1);
452
+ const yCoord = Math.max(0, Math.min(boundedY, viewport.height - 1));
465
453
 
466
454
  // Perform the click action with a pause to simulate a more realistic manual click.
467
455
  await browser.performActions([
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "dimsum-e2e-tests",
4
- "version": "3.70.0-alpha.12",
4
+ "version": "3.70.0-alpha.14",
5
5
  "description": "End-to-end tests for dimsum library",
6
6
  "dependencies": {
7
7
  "@elliemae/ds-legacy-button": "1.0.16",
@@ -38,154 +38,154 @@
38
38
  "@elliemae/ds-legacy-wysiwygeditor": "1.0.16",
39
39
  "@elliemae/ds-legacy-zipcode-search": "1.0.16",
40
40
  "@elliemae/ds-legacy-zoom": "1.0.16",
41
- "@elliemae/ds-accessibility": "3.70.0-alpha.12",
42
- "@elliemae/ds-accordion": "3.70.0-alpha.12",
43
- "@elliemae/ds-app-picker": "3.70.0-alpha.12",
44
- "@elliemae/ds-banner": "3.70.0-alpha.12",
45
- "@elliemae/ds-backdrop": "3.70.0-alpha.12",
46
- "@elliemae/ds-basic": "3.70.0-alpha.12",
47
- "@elliemae/ds-breadcrumb": "3.70.0-alpha.12",
48
- "@elliemae/ds-card": "3.70.0-alpha.12",
49
- "@elliemae/ds-button-v2": "3.70.0-alpha.12",
50
- "@elliemae/ds-card-navigation": "3.70.0-alpha.12",
51
- "@elliemae/ds-card-v1": "3.70.0-alpha.12",
52
- "@elliemae/ds-card-v1-detail": "3.70.0-alpha.12",
53
- "@elliemae/ds-card-v2": "3.70.0-alpha.12",
54
- "@elliemae/ds-card-v2-action-addon": "3.70.0-alpha.12",
55
- "@elliemae/ds-card-v2-group": "3.70.0-alpha.12",
56
- "@elliemae/ds-card-v3": "3.70.0-alpha.12",
57
- "@elliemae/ds-chat-bubble": "3.70.0-alpha.12",
58
- "@elliemae/ds-chat": "3.70.0-alpha.12",
59
- "@elliemae/ds-card-v3-poc": "3.70.0-alpha.12",
60
- "@elliemae/ds-chat-card": "3.70.0-alpha.12",
61
- "@elliemae/ds-chat-container": "3.70.0-alpha.12",
62
- "@elliemae/ds-chat-container-header": "3.70.0-alpha.12",
63
- "@elliemae/ds-chat-empty-state": "3.70.0-alpha.12",
64
- "@elliemae/ds-chat-floating-button": "3.70.0-alpha.12",
65
- "@elliemae/ds-chat-message-delimeter": "3.70.0-alpha.12",
66
- "@elliemae/ds-chat-sidebar": "3.70.0-alpha.12",
67
- "@elliemae/ds-chat-system-message": "3.70.0-alpha.12",
68
- "@elliemae/ds-chat-tile": "3.70.0-alpha.12",
69
- "@elliemae/ds-chip": "3.70.0-alpha.12",
70
- "@elliemae/ds-circular-progress-indicator": "3.70.0-alpha.12",
71
- "@elliemae/ds-classnames": "3.70.0-alpha.12",
72
- "@elliemae/ds-codeeditor": "3.70.0-alpha.12",
73
- "@elliemae/ds-comments": "3.70.0-alpha.12",
74
- "@elliemae/ds-controlled-form": "3.70.0-alpha.12",
75
- "@elliemae/ds-csv-converter": "3.70.0-alpha.12",
76
- "@elliemae/ds-data-table": "3.70.0-alpha.12",
77
- "@elliemae/ds-data-table-cell": "3.70.0-alpha.12",
78
- "@elliemae/ds-data-table-action-cell": "3.70.0-alpha.12",
79
- "@elliemae/ds-data-table-drag-and-drop-cell": "3.70.0-alpha.12",
80
- "@elliemae/ds-data-table-filters": "3.70.0-alpha.12",
81
- "@elliemae/ds-data-table-expand-cell": "3.70.0-alpha.12",
82
- "@elliemae/ds-data-table-multi-select-cell": "3.70.0-alpha.12",
83
- "@elliemae/ds-data-table-cell-header": "3.70.0-alpha.12",
84
- "@elliemae/ds-data-table-single-select-cell": "3.70.0-alpha.12",
85
- "@elliemae/ds-dataviz": "3.70.0-alpha.12",
86
- "@elliemae/ds-dataviz-pie": "3.70.0-alpha.12",
87
- "@elliemae/ds-date-time-picker": "3.70.0-alpha.12",
88
- "@elliemae/ds-dropdownmenu-v2": "3.70.0-alpha.12",
89
- "@elliemae/ds-decision-graph": "3.70.0-alpha.12",
90
- "@elliemae/ds-dropzone": "3.70.0-alpha.12",
91
- "@elliemae/ds-dialog": "3.70.0-alpha.12",
92
- "@elliemae/ds-fast-list": "3.70.0-alpha.12",
93
- "@elliemae/ds-filter-bar": "3.70.0-alpha.12",
94
- "@elliemae/ds-floating-context": "3.70.0-alpha.12",
95
- "@elliemae/ds-form-checkbox": "3.70.0-alpha.12",
96
- "@elliemae/ds-form-combobox": "3.70.0-alpha.12",
97
- "@elliemae/ds-form-date-range-picker": "3.70.0-alpha.12",
98
- "@elliemae/ds-form-date-time-picker": "3.70.0-alpha.12",
99
- "@elliemae/ds-form-helpers-mask-hooks": "3.70.0-alpha.12",
100
- "@elliemae/ds-form-input-textarea": "3.70.0-alpha.12",
101
- "@elliemae/ds-form-layout-input-group": "3.70.0-alpha.12",
102
- "@elliemae/ds-form-input-text": "3.70.0-alpha.12",
103
- "@elliemae/ds-form-layout-blocks": "3.70.0-alpha.12",
104
- "@elliemae/ds-form-layout-autocomplete": "3.70.0-alpha.12",
105
- "@elliemae/ds-form-layout-label": "3.70.0-alpha.12",
106
- "@elliemae/ds-form-multi-combobox": "3.70.0-alpha.12",
107
- "@elliemae/ds-form-native-select": "3.70.0-alpha.12",
108
- "@elliemae/ds-form-radio": "3.70.0-alpha.12",
109
- "@elliemae/ds-form-single-combobox": "3.70.0-alpha.12",
110
- "@elliemae/ds-form-select": "3.70.0-alpha.12",
111
- "@elliemae/ds-grid": "3.70.0-alpha.12",
112
- "@elliemae/ds-form-toggle": "3.70.0-alpha.12",
113
- "@elliemae/ds-global-header": "3.70.0-alpha.12",
114
- "@elliemae/ds-hooks-focus-stack": "3.70.0-alpha.12",
115
- "@elliemae/ds-hooks-fontsize-detector": "3.70.0-alpha.12",
116
- "@elliemae/ds-hooks-fontsize-media": "3.70.0-alpha.12",
117
- "@elliemae/ds-hooks-focus-trap": "3.70.0-alpha.12",
118
- "@elliemae/ds-hooks-is-mobile": "3.70.0-alpha.12",
119
- "@elliemae/ds-hooks-is-showing-ellipsis": "3.70.0-alpha.12",
120
- "@elliemae/ds-hooks-keyboard-navigation": "3.70.0-alpha.12",
121
- "@elliemae/ds-hooks-headless-tooltip": "3.70.0-alpha.12",
122
- "@elliemae/ds-hooks-on-blur-out": "3.70.0-alpha.12",
123
- "@elliemae/ds-icon": "3.70.0-alpha.12",
124
- "@elliemae/ds-hooks-on-first-focus-in": "3.70.0-alpha.12",
125
- "@elliemae/ds-icons": "3.70.0-alpha.12",
126
- "@elliemae/ds-image": "3.70.0-alpha.12",
127
- "@elliemae/ds-imagelibrarymodal": "3.70.0-alpha.12",
128
- "@elliemae/ds-layout-provider": "3.70.0-alpha.12",
129
- "@elliemae/ds-left-navigation": "3.70.0-alpha.12",
130
- "@elliemae/ds-indeterminate-progress-indicator": "3.70.0-alpha.12",
131
- "@elliemae/ds-loading-indicator": "3.70.0-alpha.12",
132
- "@elliemae/ds-menu-items": "3.70.0-alpha.12",
133
- "@elliemae/ds-menu-button": "3.70.0-alpha.12",
134
- "@elliemae/ds-menu-items-action": "3.70.0-alpha.12",
135
- "@elliemae/ds-menu-items-multi": "3.70.0-alpha.12",
136
- "@elliemae/ds-menu-items-separator": "3.70.0-alpha.12",
137
- "@elliemae/ds-menu-items-single-with-submenu": "3.70.0-alpha.12",
138
- "@elliemae/ds-menu-items-commons": "3.70.0-alpha.12",
139
- "@elliemae/ds-menu-items-single": "3.70.0-alpha.12",
140
- "@elliemae/ds-menu-items-skeleton": "3.70.0-alpha.12",
141
- "@elliemae/ds-menu-tree-item": "3.70.0-alpha.12",
142
- "@elliemae/ds-menu-items-submenu": "3.70.0-alpha.12",
143
- "@elliemae/ds-mobile": "3.70.0-alpha.12",
144
- "@elliemae/ds-modal-slide": "3.70.0-alpha.12",
145
- "@elliemae/ds-notification-badge": "3.70.0-alpha.12",
146
- "@elliemae/ds-page-header": "3.70.0-alpha.12",
147
- "@elliemae/ds-overlay": "3.70.0-alpha.12",
148
- "@elliemae/ds-menu-items-section": "3.70.0-alpha.12",
149
- "@elliemae/ds-drag-and-drop": "3.70.0-alpha.12",
150
- "@elliemae/ds-page-header-v1": "3.70.0-alpha.12",
151
- "@elliemae/ds-page-header-v2": "3.70.0-alpha.12",
152
- "@elliemae/ds-pills-v2": "3.70.0-alpha.12",
153
- "@elliemae/ds-pagination": "3.70.0-alpha.12",
154
- "@elliemae/ds-portal": "3.70.0-alpha.12",
155
- "@elliemae/ds-progress-indicator": "3.70.0-alpha.12",
156
- "@elliemae/ds-props-helpers": "3.70.0-alpha.12",
157
- "@elliemae/ds-query-builder": "3.70.0-alpha.12",
158
- "@elliemae/ds-ribbon": "3.70.0-alpha.12",
159
- "@elliemae/ds-resizeable-container": "3.70.0-alpha.12",
160
- "@elliemae/ds-scrollable-container": "3.70.0-alpha.12",
161
- "@elliemae/ds-separator": "3.70.0-alpha.12",
162
- "@elliemae/ds-read-more": "3.70.0-alpha.12",
163
- "@elliemae/ds-shared": "3.70.0-alpha.12",
164
- "@elliemae/ds-shuttle-v2": "3.70.0-alpha.12",
165
- "@elliemae/ds-side-panel": "3.70.0-alpha.12",
166
- "@elliemae/ds-side-panel-header": "3.70.0-alpha.12",
167
- "@elliemae/ds-skeleton": "3.70.0-alpha.12",
168
- "@elliemae/ds-square-indicator": "3.70.0-alpha.12",
169
- "@elliemae/ds-slider-v2": "3.70.0-alpha.12",
170
- "@elliemae/ds-svg": "3.70.0-alpha.12",
171
- "@elliemae/ds-tabs": "3.70.0-alpha.12",
172
- "@elliemae/ds-stepper": "3.70.0-alpha.12",
173
- "@elliemae/ds-system": "3.70.0-alpha.12",
174
- "@elliemae/ds-test-utils": "3.70.0-alpha.12",
175
- "@elliemae/ds-toast": "3.70.0-alpha.12",
176
- "@elliemae/ds-toolbar-v1": "3.70.0-alpha.12",
177
- "@elliemae/ds-tooltip-v3": "3.70.0-alpha.12",
178
- "@elliemae/ds-toolbar-v2": "3.70.0-alpha.12",
179
- "@elliemae/ds-transition": "3.70.0-alpha.12",
180
- "@elliemae/ds-treeview": "3.70.0-alpha.12",
181
- "@elliemae/ds-truncated-expandable-text": "3.70.0-alpha.12",
182
- "@elliemae/ds-typescript-helpers": "3.70.0-alpha.12",
183
- "@elliemae/ds-typography": "3.70.0-alpha.12",
184
- "@elliemae/ds-virtual-list": "3.70.0-alpha.12",
185
- "@elliemae/ds-tree-model": "3.70.0-alpha.12",
186
- "@elliemae/ds-wizard": "3.70.0-alpha.12",
187
- "@elliemae/ds-zustand-helpers": "3.70.0-alpha.12",
188
- "@elliemae/ds-page-layout": "3.70.0-alpha.12"
41
+ "@elliemae/ds-accessibility": "3.70.0-alpha.14",
42
+ "@elliemae/ds-accordion": "3.70.0-alpha.14",
43
+ "@elliemae/ds-backdrop": "3.70.0-alpha.14",
44
+ "@elliemae/ds-app-picker": "3.70.0-alpha.14",
45
+ "@elliemae/ds-basic": "3.70.0-alpha.14",
46
+ "@elliemae/ds-banner": "3.70.0-alpha.14",
47
+ "@elliemae/ds-breadcrumb": "3.70.0-alpha.14",
48
+ "@elliemae/ds-button-v2": "3.70.0-alpha.14",
49
+ "@elliemae/ds-card": "3.70.0-alpha.14",
50
+ "@elliemae/ds-card-navigation": "3.70.0-alpha.14",
51
+ "@elliemae/ds-card-v1": "3.70.0-alpha.14",
52
+ "@elliemae/ds-card-v1-detail": "3.70.0-alpha.14",
53
+ "@elliemae/ds-card-v2": "3.70.0-alpha.14",
54
+ "@elliemae/ds-card-v2-action-addon": "3.70.0-alpha.14",
55
+ "@elliemae/ds-card-v2-group": "3.70.0-alpha.14",
56
+ "@elliemae/ds-card-v3": "3.70.0-alpha.14",
57
+ "@elliemae/ds-card-v3-poc": "3.70.0-alpha.14",
58
+ "@elliemae/ds-chat": "3.70.0-alpha.14",
59
+ "@elliemae/ds-chat-bubble": "3.70.0-alpha.14",
60
+ "@elliemae/ds-chat-card": "3.70.0-alpha.14",
61
+ "@elliemae/ds-chat-container": "3.70.0-alpha.14",
62
+ "@elliemae/ds-chat-container-header": "3.70.0-alpha.14",
63
+ "@elliemae/ds-chat-empty-state": "3.70.0-alpha.14",
64
+ "@elliemae/ds-chat-message-delimeter": "3.70.0-alpha.14",
65
+ "@elliemae/ds-chat-floating-button": "3.70.0-alpha.14",
66
+ "@elliemae/ds-chat-sidebar": "3.70.0-alpha.14",
67
+ "@elliemae/ds-chat-system-message": "3.70.0-alpha.14",
68
+ "@elliemae/ds-chat-tile": "3.70.0-alpha.14",
69
+ "@elliemae/ds-chip": "3.70.0-alpha.14",
70
+ "@elliemae/ds-circular-progress-indicator": "3.70.0-alpha.14",
71
+ "@elliemae/ds-classnames": "3.70.0-alpha.14",
72
+ "@elliemae/ds-codeeditor": "3.70.0-alpha.14",
73
+ "@elliemae/ds-comments": "3.70.0-alpha.14",
74
+ "@elliemae/ds-controlled-form": "3.70.0-alpha.14",
75
+ "@elliemae/ds-csv-converter": "3.70.0-alpha.14",
76
+ "@elliemae/ds-data-table": "3.70.0-alpha.14",
77
+ "@elliemae/ds-data-table-action-cell": "3.70.0-alpha.14",
78
+ "@elliemae/ds-data-table-cell": "3.70.0-alpha.14",
79
+ "@elliemae/ds-data-table-cell-header": "3.70.0-alpha.14",
80
+ "@elliemae/ds-data-table-drag-and-drop-cell": "3.70.0-alpha.14",
81
+ "@elliemae/ds-data-table-expand-cell": "3.70.0-alpha.14",
82
+ "@elliemae/ds-data-table-filters": "3.70.0-alpha.14",
83
+ "@elliemae/ds-data-table-multi-select-cell": "3.70.0-alpha.14",
84
+ "@elliemae/ds-data-table-single-select-cell": "3.70.0-alpha.14",
85
+ "@elliemae/ds-dataviz-pie": "3.70.0-alpha.14",
86
+ "@elliemae/ds-date-time-picker": "3.70.0-alpha.14",
87
+ "@elliemae/ds-dataviz": "3.70.0-alpha.14",
88
+ "@elliemae/ds-dialog": "3.70.0-alpha.14",
89
+ "@elliemae/ds-dropdownmenu-v2": "3.70.0-alpha.14",
90
+ "@elliemae/ds-decision-graph": "3.70.0-alpha.14",
91
+ "@elliemae/ds-fast-list": "3.70.0-alpha.14",
92
+ "@elliemae/ds-dropzone": "3.70.0-alpha.14",
93
+ "@elliemae/ds-filter-bar": "3.70.0-alpha.14",
94
+ "@elliemae/ds-floating-context": "3.70.0-alpha.14",
95
+ "@elliemae/ds-form-checkbox": "3.70.0-alpha.14",
96
+ "@elliemae/ds-form-combobox": "3.70.0-alpha.14",
97
+ "@elliemae/ds-drag-and-drop": "3.70.0-alpha.14",
98
+ "@elliemae/ds-form-input-text": "3.70.0-alpha.14",
99
+ "@elliemae/ds-form-date-range-picker": "3.70.0-alpha.14",
100
+ "@elliemae/ds-form-layout-blocks": "3.70.0-alpha.14",
101
+ "@elliemae/ds-form-input-textarea": "3.70.0-alpha.14",
102
+ "@elliemae/ds-form-helpers-mask-hooks": "3.70.0-alpha.14",
103
+ "@elliemae/ds-form-layout-label": "3.70.0-alpha.14",
104
+ "@elliemae/ds-form-layout-autocomplete": "3.70.0-alpha.14",
105
+ "@elliemae/ds-form-multi-combobox": "3.70.0-alpha.14",
106
+ "@elliemae/ds-form-native-select": "3.70.0-alpha.14",
107
+ "@elliemae/ds-form-select": "3.70.0-alpha.14",
108
+ "@elliemae/ds-form-date-time-picker": "3.70.0-alpha.14",
109
+ "@elliemae/ds-form-radio": "3.70.0-alpha.14",
110
+ "@elliemae/ds-form-layout-input-group": "3.70.0-alpha.14",
111
+ "@elliemae/ds-form-toggle": "3.70.0-alpha.14",
112
+ "@elliemae/ds-form-single-combobox": "3.70.0-alpha.14",
113
+ "@elliemae/ds-global-header": "3.70.0-alpha.14",
114
+ "@elliemae/ds-grid": "3.70.0-alpha.14",
115
+ "@elliemae/ds-hooks-focus-stack": "3.70.0-alpha.14",
116
+ "@elliemae/ds-hooks-focus-trap": "3.70.0-alpha.14",
117
+ "@elliemae/ds-hooks-fontsize-detector": "3.70.0-alpha.14",
118
+ "@elliemae/ds-hooks-headless-tooltip": "3.70.0-alpha.14",
119
+ "@elliemae/ds-hooks-is-showing-ellipsis": "3.70.0-alpha.14",
120
+ "@elliemae/ds-hooks-fontsize-media": "3.70.0-alpha.14",
121
+ "@elliemae/ds-hooks-is-mobile": "3.70.0-alpha.14",
122
+ "@elliemae/ds-hooks-on-blur-out": "3.70.0-alpha.14",
123
+ "@elliemae/ds-hooks-keyboard-navigation": "3.70.0-alpha.14",
124
+ "@elliemae/ds-icon": "3.70.0-alpha.14",
125
+ "@elliemae/ds-hooks-on-first-focus-in": "3.70.0-alpha.14",
126
+ "@elliemae/ds-image": "3.70.0-alpha.14",
127
+ "@elliemae/ds-imagelibrarymodal": "3.70.0-alpha.14",
128
+ "@elliemae/ds-layout-provider": "3.70.0-alpha.14",
129
+ "@elliemae/ds-indeterminate-progress-indicator": "3.70.0-alpha.14",
130
+ "@elliemae/ds-icons": "3.70.0-alpha.14",
131
+ "@elliemae/ds-left-navigation": "3.70.0-alpha.14",
132
+ "@elliemae/ds-loading-indicator": "3.70.0-alpha.14",
133
+ "@elliemae/ds-menu-button": "3.70.0-alpha.14",
134
+ "@elliemae/ds-menu-items-action": "3.70.0-alpha.14",
135
+ "@elliemae/ds-menu-items-commons": "3.70.0-alpha.14",
136
+ "@elliemae/ds-menu-items-multi": "3.70.0-alpha.14",
137
+ "@elliemae/ds-menu-items-section": "3.70.0-alpha.14",
138
+ "@elliemae/ds-menu-items-separator": "3.70.0-alpha.14",
139
+ "@elliemae/ds-menu-items-single": "3.70.0-alpha.14",
140
+ "@elliemae/ds-menu-items-single-with-submenu": "3.70.0-alpha.14",
141
+ "@elliemae/ds-menu-items-skeleton": "3.70.0-alpha.14",
142
+ "@elliemae/ds-menu-tree-item": "3.70.0-alpha.14",
143
+ "@elliemae/ds-menu-items-submenu": "3.70.0-alpha.14",
144
+ "@elliemae/ds-menu-items": "3.70.0-alpha.14",
145
+ "@elliemae/ds-modal-slide": "3.70.0-alpha.14",
146
+ "@elliemae/ds-notification-badge": "3.70.0-alpha.14",
147
+ "@elliemae/ds-page-header": "3.70.0-alpha.14",
148
+ "@elliemae/ds-mobile": "3.70.0-alpha.14",
149
+ "@elliemae/ds-page-header-v1": "3.70.0-alpha.14",
150
+ "@elliemae/ds-page-header-v2": "3.70.0-alpha.14",
151
+ "@elliemae/ds-overlay": "3.70.0-alpha.14",
152
+ "@elliemae/ds-page-layout": "3.70.0-alpha.14",
153
+ "@elliemae/ds-pagination": "3.70.0-alpha.14",
154
+ "@elliemae/ds-progress-indicator": "3.70.0-alpha.14",
155
+ "@elliemae/ds-props-helpers": "3.70.0-alpha.14",
156
+ "@elliemae/ds-query-builder": "3.70.0-alpha.14",
157
+ "@elliemae/ds-read-more": "3.70.0-alpha.14",
158
+ "@elliemae/ds-ribbon": "3.70.0-alpha.14",
159
+ "@elliemae/ds-resizeable-container": "3.70.0-alpha.14",
160
+ "@elliemae/ds-scrollable-container": "3.70.0-alpha.14",
161
+ "@elliemae/ds-separator": "3.70.0-alpha.14",
162
+ "@elliemae/ds-shared": "3.70.0-alpha.14",
163
+ "@elliemae/ds-shuttle-v2": "3.70.0-alpha.14",
164
+ "@elliemae/ds-side-panel": "3.70.0-alpha.14",
165
+ "@elliemae/ds-side-panel-header": "3.70.0-alpha.14",
166
+ "@elliemae/ds-skeleton": "3.70.0-alpha.14",
167
+ "@elliemae/ds-slider-v2": "3.70.0-alpha.14",
168
+ "@elliemae/ds-square-indicator": "3.70.0-alpha.14",
169
+ "@elliemae/ds-stepper": "3.70.0-alpha.14",
170
+ "@elliemae/ds-svg": "3.70.0-alpha.14",
171
+ "@elliemae/ds-system": "3.70.0-alpha.14",
172
+ "@elliemae/ds-tabs": "3.70.0-alpha.14",
173
+ "@elliemae/ds-test-utils": "3.70.0-alpha.14",
174
+ "@elliemae/ds-toast": "3.70.0-alpha.14",
175
+ "@elliemae/ds-toolbar-v1": "3.70.0-alpha.14",
176
+ "@elliemae/ds-tooltip-v3": "3.70.0-alpha.14",
177
+ "@elliemae/ds-toolbar-v2": "3.70.0-alpha.14",
178
+ "@elliemae/ds-transition": "3.70.0-alpha.14",
179
+ "@elliemae/ds-tree-model": "3.70.0-alpha.14",
180
+ "@elliemae/ds-treeview": "3.70.0-alpha.14",
181
+ "@elliemae/ds-truncated-expandable-text": "3.70.0-alpha.14",
182
+ "@elliemae/ds-typescript-helpers": "3.70.0-alpha.14",
183
+ "@elliemae/ds-typography": "3.70.0-alpha.14",
184
+ "@elliemae/ds-wizard": "3.70.0-alpha.14",
185
+ "@elliemae/ds-virtual-list": "3.70.0-alpha.14",
186
+ "@elliemae/ds-zustand-helpers": "3.70.0-alpha.14",
187
+ "@elliemae/ds-portal": "3.70.0-alpha.14",
188
+ "@elliemae/ds-pills-v2": "3.70.0-alpha.14"
189
189
  },
190
190
  "publishConfig": {
191
191
  "access": "public"
package/paths.js CHANGED
@@ -464,3 +464,7 @@ export const PATH_END_OF_LIFE_PAGE_HEADER_V1 = `${PATH_END_OF_LIFE}/PageHeaderV1
464
464
  export const PATH_END_OF_LIFE_SHUTTLE = `${PATH_END_OF_LIFE}/Shuttle`;
465
465
  export const PATH_END_OF_LIFE_FILTERBAR = `${PATH_END_OF_LIFE}/FilterBar`;
466
466
  export const PATH_SPINNER = `${PATH_END_OF_LIFE}/Spinner/Examples`;
467
+
468
+ // accessibility conformance docs pages
469
+ // The consumer view lives under Resources; the internal views share the
470
+ // `Principles/Accessibility` title with the rest of the a11y documentation.
@@ -82,6 +82,10 @@ export default class ZIndexCO extends PageObject {
82
82
 
83
83
  // Dialog from side panel
84
84
 
85
+ static getCloseDialogBtn() {
86
+ return $('[data-testid="close-dialog-button"]');
87
+ }
88
+
85
89
  static getToggleModalSlideWithinDialog() {
86
90
  return $('[data-testid="toggle-btn"]');
87
91
  }