dimsum-e2e-tests 3.60.0-next.28 → 3.60.0-next.29

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/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 3.60.0-next.29 (2026-02-23)
7
+
8
+ ### Bug Fixes
9
+
10
+ - ds-tabs:: add functional test for tabs with scrollbar - keyboard nav [PUI-17883](https://jira.elliemae.io/browse/PUI-17883) ([#7895](https://git.elliemae.io/platform-ui/dimsum/issues/7895)) ([bbd1058](https://git.elliemae.io/platform-ui/dimsum/commit/bbd1058f2f1dac1e3f942bca697b304d28996986))
11
+
6
12
  ## 3.60.0-next.28 (2026-02-20)
7
13
 
8
14
  ### Bug Fixes
@@ -2,6 +2,7 @@
2
2
  import { Key } from 'webdriverio';
3
3
  import DSTabsCO from '../DSTabsCO';
4
4
  import LeftNavCO from '../../ds-leftnavigation/LeftNavigationCO';
5
+ import { HeaderCO } from '../../ds-data-table-async/components';
5
6
 
6
7
  if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
7
8
  describe('PUI-17823 - Tabs carousel with horizontal scrollbar - Mouse navigation', () => {
@@ -303,4 +304,257 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
303
304
  // });
304
305
  // });
305
306
  // }
307
+
308
+ describe('PUI-17925 - Tabs to TabPanel focus navigation - Mouse', () => {
309
+ before('loading page', async () => {
310
+ const errorOnGo = await DSTabsCO.integratedCarouselFull.go();
311
+ if (errorOnGo) throw errorOnGo;
312
+ });
313
+
314
+ it('01: should display the tab list and first tab selected by default', async () => {
315
+ // Step 1: Verify the tab list is displayed
316
+ const tabList = await DSTabsCO.getTabsList();
317
+ await tabList.waitForDisplayed();
318
+ await expect(tabList).toBeDisplayed();
319
+
320
+ // Step 2: Verify the first tab is selected initially
321
+ const firstTab = await DSTabsCO.getTab(1);
322
+ const ariaSelected = await firstTab.getAttribute('aria-selected');
323
+ await expect(ariaSelected).toBe('true');
324
+ });
325
+
326
+ it('02: should click on first tab and verify DataTable header ID is focusable', async () => {
327
+ // Step 3: Click the first tab to ensure it is selected
328
+ const firstTab = await DSTabsCO.getTab(1);
329
+ await firstTab.click();
330
+
331
+ // Step 4: Verify the first tab panel is displayed
332
+ const tabPanel = await DSTabsCO.getTabPanel(1);
333
+ await expect(tabPanel).toBeDisplayed();
334
+
335
+ // Step 5: Get the DataTable header (ID column) and verify it exists
336
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
337
+ await expect(headerCell).toBeDisplayed();
338
+ });
339
+
340
+ it('03: should click on DataTable header ID column', async () => {
341
+ // Step 6: Click on the ID header column
342
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
343
+ await headerCell.click();
344
+
345
+ // Step 7: Verify the header is interactable (sort button or header itself)
346
+ await expect(headerCell).toBeDisplayed();
347
+ });
348
+
349
+ it('04: should navigate to Tab 3 (Lender initiated) with secondary tabs', async () => {
350
+ // Step 8: Click on the third tab (Lender initiated)
351
+ const thirdTab = await DSTabsCO.getTab(3);
352
+ await thirdTab.click();
353
+
354
+ // Step 9: Verify the third tab is selected
355
+ const ariaSelected = await thirdTab.getAttribute('aria-selected');
356
+ await expect(ariaSelected).toBe('true');
357
+
358
+ // Step 10: Verify the third tab panel with secondary tabs is displayed
359
+ const tabPanel = await DSTabsCO.getTabPanel(3);
360
+ await expect(tabPanel).toBeDisplayed();
361
+ });
362
+
363
+ it('05: should display secondary tabs within Tab 3', async () => {
364
+ // Step 11: Verify the subtabs list is displayed
365
+ const subTabsList = await DSTabsCO.getSubTabsList();
366
+ await expect(subTabsList).toBeDisplayed();
367
+
368
+ // Step 12: Verify the first subtab is selected by default
369
+ const firstSubtab = await DSTabsCO.getSubtab(1);
370
+ const ariaSelected = await firstSubtab.getAttribute('aria-selected');
371
+ await expect(ariaSelected).toBe('true');
372
+ });
373
+
374
+ it('06: should click on 4th secondary tab which contains DataTable', async () => {
375
+ // Step 13: Click on the 4th subtab
376
+ const fourthSubtab = await DSTabsCO.getSubtab(4);
377
+ await fourthSubtab.click();
378
+
379
+ // Step 14: Verify the 4th subtab is selected
380
+ const ariaSelected = await fourthSubtab.getAttribute('aria-selected');
381
+ await expect(ariaSelected).toBe('true');
382
+ });
383
+
384
+ it('07: should verify DataTable in secondary tab 4 has ID header column', async () => {
385
+ // Step 15: Get the DataTable header (ID column) in the secondary tab
386
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
387
+ await expect(headerCell).toBeDisplayed();
388
+ });
389
+
390
+ it('08: should click on DataTable header ID column in secondary tab', async () => {
391
+ // Step 16: Click on the ID header column
392
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
393
+ await headerCell.click();
394
+
395
+ // Step 17: Verify the header is displayed
396
+ await expect(headerCell).toBeDisplayed();
397
+ });
398
+
399
+ it('09: should navigate back to first tab and verify focus flow', async () => {
400
+ // Step 18: Click on the first tab
401
+ const firstTab = await DSTabsCO.getTab(1);
402
+ await firstTab.click();
403
+
404
+ // Step 19: Verify the first tab is selected
405
+ const ariaSelected = await firstTab.getAttribute('aria-selected');
406
+ await expect(ariaSelected).toBe('true');
407
+
408
+ // Step 20: Verify the first tab panel is displayed
409
+ const tabPanel = await DSTabsCO.getTabPanel(1);
410
+ await expect(tabPanel).toBeDisplayed();
411
+ });
412
+ });
413
+
414
+ describe('PUI-17926 - Tabs to TabPanel focus navigation - Keyboard (Tab/Shift+Tab)', () => {
415
+ before('loading page', async () => {
416
+ const errorOnGo = await DSTabsCO.integratedCarouselFull.go();
417
+ if (errorOnGo) throw errorOnGo;
418
+ });
419
+
420
+ it('01: should display the tab list container', async () => {
421
+ // Step 1: Verify the tab list is displayed
422
+ const tabList = await DSTabsCO.getTabsList();
423
+ await tabList.waitForDisplayed();
424
+ await expect(tabList).toBeDisplayed();
425
+ });
426
+
427
+ it('02: should focus the first tab using Tab key', async () => {
428
+ // Step 2: Click on footer button and press Tab to focus on the tab list
429
+ const footerBtn = await LeftNavCO.footerBtn();
430
+ const firstTab = await DSTabsCO.getTab(1);
431
+ await footerBtn.click();
432
+ await browser.keys(Key.Tab);
433
+
434
+ // Step 3: Verify the first tab is focused
435
+ await expect(firstTab).toBeFocused();
436
+ });
437
+
438
+ it('03: should press Tab to move focus from Tab to TabPanel content (DataTable header ID)', async () => {
439
+ // Step 4: Press Tab to move focus to the TabPanel content
440
+ await browser.keys(Key.Tab);
441
+
442
+ // Step 5: Verify focus moved to the DataTable header (ID column)
443
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
444
+ await expect(headerCell).toBeFocused();
445
+ });
446
+
447
+ it('04: should press Shift+Tab to move focus back to Tab from TabPanel', async () => {
448
+ // Step 6: Press Shift+Tab to move focus back to the tab
449
+ await browser.keys([Key.Shift, Key.Tab]);
450
+
451
+ // Step 7: Verify focus is back on the first tab
452
+ const firstTab = await DSTabsCO.getTab(1);
453
+ await expect(firstTab).toBeFocused();
454
+ });
455
+
456
+ it('05: should navigate to Tab 3 (Lender initiated) using ArrowRight', async () => {
457
+ // Step 8: Press ArrowRight twice to navigate to the third tab
458
+ await browser.keys(Key.ArrowRight);
459
+ await browser.keys(Key.ArrowRight);
460
+
461
+ // Step 9: Verify the third tab is focused
462
+ const thirdTab = await DSTabsCO.getTab(3);
463
+ await expect(thirdTab).toBeFocused();
464
+
465
+ // Step 10: Press Enter to select the third tab
466
+ await browser.keys(Key.Enter);
467
+
468
+ // Step 11: Verify the third tab is selected
469
+ const ariaSelected = await thirdTab.getAttribute('aria-selected');
470
+ await expect(ariaSelected).toBe('true');
471
+ });
472
+
473
+ it('06: should press Tab to move focus to secondary tabs', async () => {
474
+ // Step 12: Press Tab to move focus to the subtabs list
475
+ await browser.keys(Key.Tab);
476
+
477
+ // Step 13: Verify focus is on the first subtab
478
+ const firstSubtab = await DSTabsCO.getSubtab(1);
479
+ await expect(firstSubtab).toBeFocused();
480
+ });
481
+
482
+ it('07: should navigate to 4th secondary tab using ArrowRight', async () => {
483
+ // Step 14: Press ArrowRight three times to navigate to the 4th subtab
484
+ await browser.keys(Key.ArrowRight);
485
+ await browser.keys(Key.ArrowRight);
486
+ await browser.keys(Key.ArrowRight);
487
+
488
+ // Step 15: Verify the 4th subtab is focused
489
+ const fourthSubtab = await DSTabsCO.getSubtab(4);
490
+ await expect(fourthSubtab).toBeFocused();
491
+
492
+ // Step 16: Press Enter to select the 4th subtab
493
+ await browser.keys(Key.Enter);
494
+
495
+ // Step 17: Verify the 4th subtab is selected
496
+ const ariaSelected = await fourthSubtab.getAttribute('aria-selected');
497
+ await expect(ariaSelected).toBe('true');
498
+ });
499
+
500
+ it('08: should press Tab to move focus to DataTable in secondary tab 4', async () => {
501
+ // Step 18: Press Tab to move focus to the DataTable
502
+ await browser.keys(Key.Tab);
503
+
504
+ // Step 19: Verify focus moved to the DataTable header (ID column)
505
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
506
+ await expect(headerCell).toBeFocused();
507
+ });
508
+
509
+ it('09: should press Shift+Tab to move focus back to secondary tab', async () => {
510
+ // Step 20: Press Shift+Tab to move focus back to the subtab
511
+ await browser.keys([Key.Shift, Key.Tab]);
512
+
513
+ // Step 21: Verify focus is back on the 4th subtab
514
+ const fourthSubtab = await DSTabsCO.getSubtab(4);
515
+ await expect(fourthSubtab).toBeFocused();
516
+ });
517
+
518
+ it('10: should press Shift+Tab to move focus back to primary tab', async () => {
519
+ // Step 22: Press Shift+Tab to move focus back to the primary tab
520
+ await browser.keys([Key.Shift, Key.Tab]);
521
+
522
+ // Step 23: Verify focus is back on the third tab
523
+ const thirdTab = await DSTabsCO.getTab(3);
524
+ await expect(thirdTab).toBeFocused();
525
+ });
526
+
527
+ it('11: should navigate back to first tab and Tab to DataTable', async () => {
528
+ // Step 24: Press ArrowLeft twice to navigate back to the first tab
529
+ await browser.keys(Key.ArrowLeft);
530
+ await browser.keys(Key.ArrowLeft);
531
+
532
+ // Step 25: Verify the first tab is focused
533
+ const firstTab = await DSTabsCO.getTab(1);
534
+ await expect(firstTab).toBeFocused();
535
+
536
+ // Step 26: Press Enter to select the first tab
537
+ await browser.keys(Key.Enter);
538
+
539
+ // Step 27: Press Tab to move focus to the DataTable
540
+ await browser.keys(Key.Tab);
541
+
542
+ // Step 28: Verify focus is on the DataTable header (ID column)
543
+ const headerCell = await HeaderCO.getHeaderCellByText('id');
544
+ await expect(headerCell).toBeFocused();
545
+ });
546
+
547
+ it('12: should verify full Tab/Shift+Tab cycle from DataTable back to Tab', async () => {
548
+ // Step 29: Press Shift+Tab to move focus back to the tab
549
+ await browser.keys([Key.Shift, Key.Tab]);
550
+
551
+ // Step 30: Verify focus is back on the first tab
552
+ const firstTab = await DSTabsCO.getTab(1);
553
+ await expect(firstTab).toBeFocused();
554
+
555
+ // Step 31: Verify the first tab is still selected
556
+ const ariaSelected = await firstTab.getAttribute('aria-selected');
557
+ await expect(ariaSelected).toBe('true');
558
+ });
559
+ });
306
560
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "dimsum-e2e-tests",
4
- "version": "3.60.0-next.28",
4
+ "version": "3.60.0-next.29",
5
5
  "description": "End-to-end tests for dimsum library",
6
6
  "dependencies": {
7
7
  "@elliemae/ds-legacy-button": "1.0.16",
@@ -41,155 +41,155 @@
41
41
  "@elliemae/ds-legacy-wysiwygeditor": "1.0.16",
42
42
  "@elliemae/ds-legacy-zipcode-search": "1.0.16",
43
43
  "@elliemae/ds-legacy-zoom": "1.0.16",
44
- "@elliemae/ds-accessibility": "3.60.0-next.28",
45
- "@elliemae/ds-accordion": "3.60.0-next.28",
46
- "@elliemae/ds-app-picker": "3.60.0-next.28",
47
- "@elliemae/ds-banner": "3.60.0-next.28",
48
- "@elliemae/ds-basic": "3.60.0-next.28",
49
- "@elliemae/ds-backdrop": "3.60.0-next.28",
50
- "@elliemae/ds-breadcrumb": "3.60.0-next.28",
51
- "@elliemae/ds-button-v2": "3.60.0-next.28",
52
- "@elliemae/ds-card-navigation": "3.60.0-next.28",
53
- "@elliemae/ds-card": "3.60.0-next.28",
54
- "@elliemae/ds-card-v1": "3.60.0-next.28",
55
- "@elliemae/ds-card-v1-detail": "3.60.0-next.28",
56
- "@elliemae/ds-card-v2": "3.60.0-next.28",
57
- "@elliemae/ds-card-v2-action-addon": "3.60.0-next.28",
58
- "@elliemae/ds-card-v3-poc": "3.60.0-next.28",
59
- "@elliemae/ds-chat": "3.60.0-next.28",
60
- "@elliemae/ds-card-v3": "3.60.0-next.28",
61
- "@elliemae/ds-card-v2-group": "3.60.0-next.28",
62
- "@elliemae/ds-chat-bubble": "3.60.0-next.28",
63
- "@elliemae/ds-chat-card": "3.60.0-next.28",
64
- "@elliemae/ds-chat-container": "3.60.0-next.28",
65
- "@elliemae/ds-chat-container-header": "3.60.0-next.28",
66
- "@elliemae/ds-chat-floating-button": "3.60.0-next.28",
67
- "@elliemae/ds-chat-empty-state": "3.60.0-next.28",
68
- "@elliemae/ds-chat-sidebar": "3.60.0-next.28",
69
- "@elliemae/ds-chat-system-message": "3.60.0-next.28",
70
- "@elliemae/ds-chat-tile": "3.60.0-next.28",
71
- "@elliemae/ds-circular-progress-indicator": "3.60.0-next.28",
72
- "@elliemae/ds-chat-message-delimeter": "3.60.0-next.28",
73
- "@elliemae/ds-codeeditor": "3.60.0-next.28",
74
- "@elliemae/ds-classnames": "3.60.0-next.28",
75
- "@elliemae/ds-chip": "3.60.0-next.28",
76
- "@elliemae/ds-comments": "3.60.0-next.28",
77
- "@elliemae/ds-controlled-form": "3.60.0-next.28",
78
- "@elliemae/ds-csv-converter": "3.60.0-next.28",
79
- "@elliemae/ds-data-table-cell": "3.60.0-next.28",
80
- "@elliemae/ds-data-table": "3.60.0-next.28",
81
- "@elliemae/ds-data-table-action-cell": "3.60.0-next.28",
82
- "@elliemae/ds-data-table-drag-and-drop-cell": "3.60.0-next.28",
83
- "@elliemae/ds-data-table-cell-header": "3.60.0-next.28",
84
- "@elliemae/ds-data-table-expand-cell": "3.60.0-next.28",
85
- "@elliemae/ds-data-table-filters": "3.60.0-next.28",
86
- "@elliemae/ds-data-table-multi-select-cell": "3.60.0-next.28",
87
- "@elliemae/ds-dataviz": "3.60.0-next.28",
88
- "@elliemae/ds-dataviz-pie": "3.60.0-next.28",
89
- "@elliemae/ds-date-time-picker": "3.60.0-next.28",
90
- "@elliemae/ds-decision-graph": "3.60.0-next.28",
91
- "@elliemae/ds-data-table-single-select-cell": "3.60.0-next.28",
92
- "@elliemae/ds-dialog": "3.60.0-next.28",
93
- "@elliemae/ds-drag-and-drop": "3.60.0-next.28",
94
- "@elliemae/ds-dropdownmenu-v2": "3.60.0-next.28",
95
- "@elliemae/ds-dropzone": "3.60.0-next.28",
96
- "@elliemae/ds-fast-list": "3.60.0-next.28",
97
- "@elliemae/ds-floating-context": "3.60.0-next.28",
98
- "@elliemae/ds-form-checkbox": "3.60.0-next.28",
99
- "@elliemae/ds-form-combobox": "3.60.0-next.28",
100
- "@elliemae/ds-form-date-range-picker": "3.60.0-next.28",
101
- "@elliemae/ds-form-date-time-picker": "3.60.0-next.28",
102
- "@elliemae/ds-form-helpers-mask-hooks": "3.60.0-next.28",
103
- "@elliemae/ds-form-input-text": "3.60.0-next.28",
104
- "@elliemae/ds-form-input-textarea": "3.60.0-next.28",
105
- "@elliemae/ds-form-layout-autocomplete": "3.60.0-next.28",
106
- "@elliemae/ds-form-layout-blocks": "3.60.0-next.28",
107
- "@elliemae/ds-form-layout-input-group": "3.60.0-next.28",
108
- "@elliemae/ds-form-layout-label": "3.60.0-next.28",
109
- "@elliemae/ds-form-multi-combobox": "3.60.0-next.28",
110
- "@elliemae/ds-form-native-select": "3.60.0-next.28",
111
- "@elliemae/ds-form-radio": "3.60.0-next.28",
112
- "@elliemae/ds-form-select": "3.60.0-next.28",
113
- "@elliemae/ds-form-single-combobox": "3.60.0-next.28",
114
- "@elliemae/ds-form-toggle": "3.60.0-next.28",
115
- "@elliemae/ds-global-header": "3.60.0-next.28",
116
- "@elliemae/ds-grid": "3.60.0-next.28",
117
- "@elliemae/ds-hooks-focus-trap": "3.60.0-next.28",
118
- "@elliemae/ds-hooks-focus-stack": "3.60.0-next.28",
119
- "@elliemae/ds-hooks-fontsize-detector": "3.60.0-next.28",
120
- "@elliemae/ds-hooks-fontsize-media": "3.60.0-next.28",
121
- "@elliemae/ds-hooks-headless-tooltip": "3.60.0-next.28",
122
- "@elliemae/ds-hooks-is-mobile": "3.60.0-next.28",
123
- "@elliemae/ds-hooks-is-showing-ellipsis": "3.60.0-next.28",
124
- "@elliemae/ds-hooks-keyboard-navigation": "3.60.0-next.28",
125
- "@elliemae/ds-hooks-on-blur-out": "3.60.0-next.28",
126
- "@elliemae/ds-hooks-on-first-focus-in": "3.60.0-next.28",
127
- "@elliemae/ds-indeterminate-progress-indicator": "3.60.0-next.28",
128
- "@elliemae/ds-icons": "3.60.0-next.28",
129
- "@elliemae/ds-image": "3.60.0-next.28",
130
- "@elliemae/ds-icon": "3.60.0-next.28",
131
- "@elliemae/ds-layout-provider": "3.60.0-next.28",
132
- "@elliemae/ds-menu-button": "3.60.0-next.28",
133
- "@elliemae/ds-imagelibrarymodal": "3.60.0-next.28",
134
- "@elliemae/ds-loading-indicator": "3.60.0-next.28",
135
- "@elliemae/ds-menu-items": "3.60.0-next.28",
136
- "@elliemae/ds-left-navigation": "3.60.0-next.28",
137
- "@elliemae/ds-menu-items-action": "3.60.0-next.28",
138
- "@elliemae/ds-menu-items-commons": "3.60.0-next.28",
139
- "@elliemae/ds-menu-items-multi": "3.60.0-next.28",
140
- "@elliemae/ds-menu-items-section": "3.60.0-next.28",
141
- "@elliemae/ds-menu-items-separator": "3.60.0-next.28",
142
- "@elliemae/ds-menu-items-single": "3.60.0-next.28",
143
- "@elliemae/ds-menu-items-single-with-submenu": "3.60.0-next.28",
144
- "@elliemae/ds-menu-items-submenu": "3.60.0-next.28",
145
- "@elliemae/ds-menu-tree-item": "3.60.0-next.28",
146
- "@elliemae/ds-menu-items-skeleton": "3.60.0-next.28",
147
- "@elliemae/ds-mobile": "3.60.0-next.28",
148
- "@elliemae/ds-modal-slide": "3.60.0-next.28",
149
- "@elliemae/ds-notification-badge": "3.60.0-next.28",
150
- "@elliemae/ds-overlay": "3.60.0-next.28",
151
- "@elliemae/ds-page-header": "3.60.0-next.28",
152
- "@elliemae/ds-page-header-v1": "3.60.0-next.28",
153
- "@elliemae/ds-page-header-v2": "3.60.0-next.28",
154
- "@elliemae/ds-page-layout": "3.60.0-next.28",
155
- "@elliemae/ds-pills-v2": "3.60.0-next.28",
156
- "@elliemae/ds-portal": "3.60.0-next.28",
157
- "@elliemae/ds-progress-indicator": "3.60.0-next.28",
158
- "@elliemae/ds-popperjs": "3.60.0-next.28",
159
- "@elliemae/ds-props-helpers": "3.60.0-next.28",
160
- "@elliemae/ds-read-more": "3.60.0-next.28",
161
- "@elliemae/ds-pagination": "3.60.0-next.28",
162
- "@elliemae/ds-query-builder": "3.60.0-next.28",
163
- "@elliemae/ds-resizeable-container": "3.60.0-next.28",
164
- "@elliemae/ds-ribbon": "3.60.0-next.28",
165
- "@elliemae/ds-separator": "3.60.0-next.28",
166
- "@elliemae/ds-side-panel": "3.60.0-next.28",
167
- "@elliemae/ds-scrollable-container": "3.60.0-next.28",
168
- "@elliemae/ds-shared": "3.60.0-next.28",
169
- "@elliemae/ds-shuttle-v2": "3.60.0-next.28",
170
- "@elliemae/ds-side-panel-header": "3.60.0-next.28",
171
- "@elliemae/ds-skeleton": "3.60.0-next.28",
172
- "@elliemae/ds-svg": "3.60.0-next.28",
173
- "@elliemae/ds-square-indicator": "3.60.0-next.28",
174
- "@elliemae/ds-stepper": "3.60.0-next.28",
175
- "@elliemae/ds-slider-v2": "3.60.0-next.28",
176
- "@elliemae/ds-tabs": "3.60.0-next.28",
177
- "@elliemae/ds-system": "3.60.0-next.28",
178
- "@elliemae/ds-toast": "3.60.0-next.28",
179
- "@elliemae/ds-toolbar-v1": "3.60.0-next.28",
180
- "@elliemae/ds-tooltip-v3": "3.60.0-next.28",
181
- "@elliemae/ds-toolbar-v2": "3.60.0-next.28",
182
- "@elliemae/ds-treeview": "3.60.0-next.28",
183
- "@elliemae/ds-tree-model": "3.60.0-next.28",
184
- "@elliemae/ds-transition": "3.60.0-next.28",
185
- "@elliemae/ds-truncated-expandable-text": "3.60.0-next.28",
186
- "@elliemae/ds-test-utils": "3.60.0-next.28",
187
- "@elliemae/ds-truncated-tooltip-text": "3.60.0-next.28",
188
- "@elliemae/ds-typescript-helpers": "3.60.0-next.28",
189
- "@elliemae/ds-typography": "3.60.0-next.28",
190
- "@elliemae/ds-virtual-list": "3.60.0-next.28",
191
- "@elliemae/ds-wizard": "3.60.0-next.28",
192
- "@elliemae/ds-zustand-helpers": "3.60.0-next.28"
44
+ "@elliemae/ds-accessibility": "3.60.0-next.29",
45
+ "@elliemae/ds-app-picker": "3.60.0-next.29",
46
+ "@elliemae/ds-accordion": "3.60.0-next.29",
47
+ "@elliemae/ds-backdrop": "3.60.0-next.29",
48
+ "@elliemae/ds-banner": "3.60.0-next.29",
49
+ "@elliemae/ds-button-v2": "3.60.0-next.29",
50
+ "@elliemae/ds-breadcrumb": "3.60.0-next.29",
51
+ "@elliemae/ds-basic": "3.60.0-next.29",
52
+ "@elliemae/ds-card": "3.60.0-next.29",
53
+ "@elliemae/ds-card-navigation": "3.60.0-next.29",
54
+ "@elliemae/ds-card-v1-detail": "3.60.0-next.29",
55
+ "@elliemae/ds-card-v2": "3.60.0-next.29",
56
+ "@elliemae/ds-card-v2-action-addon": "3.60.0-next.29",
57
+ "@elliemae/ds-card-v1": "3.60.0-next.29",
58
+ "@elliemae/ds-card-v3": "3.60.0-next.29",
59
+ "@elliemae/ds-card-v2-group": "3.60.0-next.29",
60
+ "@elliemae/ds-card-v3-poc": "3.60.0-next.29",
61
+ "@elliemae/ds-chat-bubble": "3.60.0-next.29",
62
+ "@elliemae/ds-chat": "3.60.0-next.29",
63
+ "@elliemae/ds-chat-card": "3.60.0-next.29",
64
+ "@elliemae/ds-chat-container-header": "3.60.0-next.29",
65
+ "@elliemae/ds-chat-container": "3.60.0-next.29",
66
+ "@elliemae/ds-chat-empty-state": "3.60.0-next.29",
67
+ "@elliemae/ds-chat-floating-button": "3.60.0-next.29",
68
+ "@elliemae/ds-chat-message-delimeter": "3.60.0-next.29",
69
+ "@elliemae/ds-chat-sidebar": "3.60.0-next.29",
70
+ "@elliemae/ds-chat-system-message": "3.60.0-next.29",
71
+ "@elliemae/ds-chat-tile": "3.60.0-next.29",
72
+ "@elliemae/ds-chip": "3.60.0-next.29",
73
+ "@elliemae/ds-circular-progress-indicator": "3.60.0-next.29",
74
+ "@elliemae/ds-classnames": "3.60.0-next.29",
75
+ "@elliemae/ds-codeeditor": "3.60.0-next.29",
76
+ "@elliemae/ds-controlled-form": "3.60.0-next.29",
77
+ "@elliemae/ds-csv-converter": "3.60.0-next.29",
78
+ "@elliemae/ds-data-table": "3.60.0-next.29",
79
+ "@elliemae/ds-data-table-action-cell": "3.60.0-next.29",
80
+ "@elliemae/ds-comments": "3.60.0-next.29",
81
+ "@elliemae/ds-data-table-cell-header": "3.60.0-next.29",
82
+ "@elliemae/ds-data-table-cell": "3.60.0-next.29",
83
+ "@elliemae/ds-data-table-drag-and-drop-cell": "3.60.0-next.29",
84
+ "@elliemae/ds-data-table-expand-cell": "3.60.0-next.29",
85
+ "@elliemae/ds-data-table-filters": "3.60.0-next.29",
86
+ "@elliemae/ds-data-table-single-select-cell": "3.60.0-next.29",
87
+ "@elliemae/ds-dataviz": "3.60.0-next.29",
88
+ "@elliemae/ds-data-table-multi-select-cell": "3.60.0-next.29",
89
+ "@elliemae/ds-dataviz-pie": "3.60.0-next.29",
90
+ "@elliemae/ds-decision-graph": "3.60.0-next.29",
91
+ "@elliemae/ds-date-time-picker": "3.60.0-next.29",
92
+ "@elliemae/ds-drag-and-drop": "3.60.0-next.29",
93
+ "@elliemae/ds-dropdownmenu-v2": "3.60.0-next.29",
94
+ "@elliemae/ds-dropzone": "3.60.0-next.29",
95
+ "@elliemae/ds-fast-list": "3.60.0-next.29",
96
+ "@elliemae/ds-dialog": "3.60.0-next.29",
97
+ "@elliemae/ds-floating-context": "3.60.0-next.29",
98
+ "@elliemae/ds-form-checkbox": "3.60.0-next.29",
99
+ "@elliemae/ds-form-combobox": "3.60.0-next.29",
100
+ "@elliemae/ds-form-date-range-picker": "3.60.0-next.29",
101
+ "@elliemae/ds-form-date-time-picker": "3.60.0-next.29",
102
+ "@elliemae/ds-form-helpers-mask-hooks": "3.60.0-next.29",
103
+ "@elliemae/ds-form-input-textarea": "3.60.0-next.29",
104
+ "@elliemae/ds-form-input-text": "3.60.0-next.29",
105
+ "@elliemae/ds-form-layout-autocomplete": "3.60.0-next.29",
106
+ "@elliemae/ds-form-layout-blocks": "3.60.0-next.29",
107
+ "@elliemae/ds-form-layout-input-group": "3.60.0-next.29",
108
+ "@elliemae/ds-form-layout-label": "3.60.0-next.29",
109
+ "@elliemae/ds-form-multi-combobox": "3.60.0-next.29",
110
+ "@elliemae/ds-form-native-select": "3.60.0-next.29",
111
+ "@elliemae/ds-form-radio": "3.60.0-next.29",
112
+ "@elliemae/ds-form-select": "3.60.0-next.29",
113
+ "@elliemae/ds-form-single-combobox": "3.60.0-next.29",
114
+ "@elliemae/ds-form-toggle": "3.60.0-next.29",
115
+ "@elliemae/ds-global-header": "3.60.0-next.29",
116
+ "@elliemae/ds-hooks-focus-stack": "3.60.0-next.29",
117
+ "@elliemae/ds-grid": "3.60.0-next.29",
118
+ "@elliemae/ds-hooks-focus-trap": "3.60.0-next.29",
119
+ "@elliemae/ds-hooks-fontsize-media": "3.60.0-next.29",
120
+ "@elliemae/ds-hooks-is-mobile": "3.60.0-next.29",
121
+ "@elliemae/ds-hooks-is-showing-ellipsis": "3.60.0-next.29",
122
+ "@elliemae/ds-hooks-keyboard-navigation": "3.60.0-next.29",
123
+ "@elliemae/ds-hooks-on-blur-out": "3.60.0-next.29",
124
+ "@elliemae/ds-hooks-on-first-focus-in": "3.60.0-next.29",
125
+ "@elliemae/ds-hooks-fontsize-detector": "3.60.0-next.29",
126
+ "@elliemae/ds-icon": "3.60.0-next.29",
127
+ "@elliemae/ds-image": "3.60.0-next.29",
128
+ "@elliemae/ds-icons": "3.60.0-next.29",
129
+ "@elliemae/ds-imagelibrarymodal": "3.60.0-next.29",
130
+ "@elliemae/ds-indeterminate-progress-indicator": "3.60.0-next.29",
131
+ "@elliemae/ds-layout-provider": "3.60.0-next.29",
132
+ "@elliemae/ds-left-navigation": "3.60.0-next.29",
133
+ "@elliemae/ds-menu-items": "3.60.0-next.29",
134
+ "@elliemae/ds-menu-button": "3.60.0-next.29",
135
+ "@elliemae/ds-menu-items-action": "3.60.0-next.29",
136
+ "@elliemae/ds-loading-indicator": "3.60.0-next.29",
137
+ "@elliemae/ds-hooks-headless-tooltip": "3.60.0-next.29",
138
+ "@elliemae/ds-menu-items-commons": "3.60.0-next.29",
139
+ "@elliemae/ds-menu-items-multi": "3.60.0-next.29",
140
+ "@elliemae/ds-menu-items-separator": "3.60.0-next.29",
141
+ "@elliemae/ds-menu-items-single": "3.60.0-next.29",
142
+ "@elliemae/ds-menu-items-single-with-submenu": "3.60.0-next.29",
143
+ "@elliemae/ds-menu-items-skeleton": "3.60.0-next.29",
144
+ "@elliemae/ds-menu-items-section": "3.60.0-next.29",
145
+ "@elliemae/ds-menu-tree-item": "3.60.0-next.29",
146
+ "@elliemae/ds-mobile": "3.60.0-next.29",
147
+ "@elliemae/ds-modal-slide": "3.60.0-next.29",
148
+ "@elliemae/ds-menu-items-submenu": "3.60.0-next.29",
149
+ "@elliemae/ds-notification-badge": "3.60.0-next.29",
150
+ "@elliemae/ds-overlay": "3.60.0-next.29",
151
+ "@elliemae/ds-page-header": "3.60.0-next.29",
152
+ "@elliemae/ds-page-header-v1": "3.60.0-next.29",
153
+ "@elliemae/ds-page-header-v2": "3.60.0-next.29",
154
+ "@elliemae/ds-page-layout": "3.60.0-next.29",
155
+ "@elliemae/ds-pagination": "3.60.0-next.29",
156
+ "@elliemae/ds-pills-v2": "3.60.0-next.29",
157
+ "@elliemae/ds-popperjs": "3.60.0-next.29",
158
+ "@elliemae/ds-portal": "3.60.0-next.29",
159
+ "@elliemae/ds-progress-indicator": "3.60.0-next.29",
160
+ "@elliemae/ds-query-builder": "3.60.0-next.29",
161
+ "@elliemae/ds-props-helpers": "3.60.0-next.29",
162
+ "@elliemae/ds-resizeable-container": "3.60.0-next.29",
163
+ "@elliemae/ds-ribbon": "3.60.0-next.29",
164
+ "@elliemae/ds-read-more": "3.60.0-next.29",
165
+ "@elliemae/ds-scrollable-container": "3.60.0-next.29",
166
+ "@elliemae/ds-separator": "3.60.0-next.29",
167
+ "@elliemae/ds-shared": "3.60.0-next.29",
168
+ "@elliemae/ds-shuttle-v2": "3.60.0-next.29",
169
+ "@elliemae/ds-side-panel": "3.60.0-next.29",
170
+ "@elliemae/ds-side-panel-header": "3.60.0-next.29",
171
+ "@elliemae/ds-skeleton": "3.60.0-next.29",
172
+ "@elliemae/ds-square-indicator": "3.60.0-next.29",
173
+ "@elliemae/ds-slider-v2": "3.60.0-next.29",
174
+ "@elliemae/ds-svg": "3.60.0-next.29",
175
+ "@elliemae/ds-stepper": "3.60.0-next.29",
176
+ "@elliemae/ds-tabs": "3.60.0-next.29",
177
+ "@elliemae/ds-test-utils": "3.60.0-next.29",
178
+ "@elliemae/ds-system": "3.60.0-next.29",
179
+ "@elliemae/ds-toast": "3.60.0-next.29",
180
+ "@elliemae/ds-toolbar-v1": "3.60.0-next.29",
181
+ "@elliemae/ds-tooltip-v3": "3.60.0-next.29",
182
+ "@elliemae/ds-transition": "3.60.0-next.29",
183
+ "@elliemae/ds-toolbar-v2": "3.60.0-next.29",
184
+ "@elliemae/ds-treeview": "3.60.0-next.29",
185
+ "@elliemae/ds-tree-model": "3.60.0-next.29",
186
+ "@elliemae/ds-truncated-expandable-text": "3.60.0-next.29",
187
+ "@elliemae/ds-truncated-tooltip-text": "3.60.0-next.29",
188
+ "@elliemae/ds-typescript-helpers": "3.60.0-next.29",
189
+ "@elliemae/ds-typography": "3.60.0-next.29",
190
+ "@elliemae/ds-zustand-helpers": "3.60.0-next.29",
191
+ "@elliemae/ds-wizard": "3.60.0-next.29",
192
+ "@elliemae/ds-virtual-list": "3.60.0-next.29"
193
193
  },
194
194
  "publishConfig": {
195
195
  "access": "public"