dimsum-e2e-tests 3.60.0-next.6 → 3.60.0-next.60

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 (119) hide show
  1. package/CHANGELOG.md +308 -0
  2. package/ds-apppicker/DSAppPickerCO.js +10 -0
  3. package/ds-apppicker/basic/DSAppPicker.basic.func.spec.js +2 -2
  4. package/ds-apppicker/reflow/DSAppPicker.reflow.visual.spec.js +36 -0
  5. package/ds-apppicker/slots/DSAppPicker.slots.func.spec.js +13 -0
  6. package/ds-card/DSCard.slots.func.spec.js +95 -0
  7. package/ds-card/DSCard.slots.visual.spec.js +23 -0
  8. package/ds-card/DSCardCO.js +50 -0
  9. package/ds-chip/DSChip.visual.spec.js +18 -1
  10. package/ds-chip/DSChipCO.js +2 -0
  11. package/ds-chip/slots/DSChip.slots.func.spec.js +25 -0
  12. package/ds-controlled-form/ds-controlled-large-input-text/dialog/DSLargeInputText.dialog.visual.spec.js +1 -2
  13. package/ds-controlled-form/react-hook-form/ReactHook.func.spec.js +1 -1
  14. package/ds-data-table-async/DSDataTableCO.js +46 -2
  15. package/ds-data-table-async/components/FiltersCO.js +28 -0
  16. package/ds-data-table-async/date-filters/DSDataTable.date-range-keyboard.func.spec.js +172 -0
  17. package/ds-data-table-async/date-filters/DSDataTable.date-switcher-keyboard.func.spec.js +328 -0
  18. package/ds-data-table-async/date-filters/DSDataTable.single-date-keyboard.func.spec.js +136 -0
  19. package/ds-data-table-async/filters/DSDataTable.custom-filtered-columns-focus.func.spec.js +61 -0
  20. package/ds-data-table-async/filters/DSDataTable.filter-role-dialog.func.spec.js +75 -0
  21. package/ds-data-table-async/filters/DSDataTable.filters.keybooard-nav.func.spec.js +12 -7
  22. package/ds-data-table-async/filters/DSDataTable.free-text-search.visual.spec.js +12 -17
  23. package/ds-data-table-async/filters/DSDataTable.text-filters.func.spec.js +1 -1
  24. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-creatable.func.spec.js +97 -0
  25. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-creatablemultiselect.keyboard.func.spec.js +72 -0
  26. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-creatableselect.keyboard.func.spec.js +72 -0
  27. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-currencyrange.keyboard.func.spec.js +82 -0
  28. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-daterange.keyboard.func.spec.js +193 -0
  29. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-dateswitcher.keyboard.func.spec.js +376 -0
  30. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-freetextsearch.keyboard.func.spec.js +72 -0
  31. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-multiselect.keyboard.func.spec.js +72 -0
  32. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-numberrange.keyboard.func.spec.js +84 -0
  33. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-singledate.keyboard.func.spec.js +160 -0
  34. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2-singleselect.keyboard.func.spec.js +72 -0
  35. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2.axe-core.func.spec.js +37 -0
  36. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2.func.spec.js +314 -0
  37. package/ds-data-table-async/filtersV2/DSDataTable.filtersV2.visual.spec.js +200 -0
  38. package/ds-data-table-async/skeleton/DSDataTable.skeleton-cells.axe-core.func.spec.js +24 -0
  39. package/ds-form-combobox-multi/DSComboboxMultiCO.js +6 -0
  40. package/ds-form-combobox-multi/aria-controls/DSComboboxMulti.aria-controls.func.spec.js +23 -0
  41. package/ds-form-combobox-multi/aria-multiselectable/DSComboboxMulti.aria-multiselectable.func.spec.js +21 -0
  42. package/ds-form-combobox-multi/menu-width/DSComboboxMulti.menu-width.visual.spec.js +35 -0
  43. package/ds-form-combobox-multi/slots/DSComboboxMulti.slots.visual.spec.js +1 -4
  44. package/ds-form-combobox-single/DSComboboxSingleCO.js +4 -0
  45. package/ds-form-combobox-single/aria-controls/DSComboboxSingle.aria-controls.func.spec.js +23 -0
  46. package/ds-form-combobox-single/menu-width/DSComboboxSingle.menu-width.visual.spec.js +37 -0
  47. package/ds-form-date-range-picker/arrow-keys/DateRangePicker.arrow-keys.func.spec.js +127 -0
  48. package/ds-form-date-time-picker/date-time-full/DateTimePicker.func.spec.js +1 -1
  49. package/ds-form-date-time-picker/date-time-input/DateTimeInput.arrow-keys.func.spec.js +125 -0
  50. package/ds-global-header/GlobalHeaderCO.js +3 -3
  51. package/ds-global-header/slots/GlobalHeader.slots.func.spec.js +39 -39
  52. package/ds-leftnavigation/LeftNavigation.slots.func.spec.js +166 -109
  53. package/ds-leftnavigation/LeftNavigation.slots.visual.spec.js +4 -4
  54. package/ds-leftnavigation/LeftNavigationCO.js +20 -0
  55. package/ds-menu-button/DSMenuButtonCO.js +17 -1
  56. package/ds-menu-button/activable/DSMenuButton.activableMenuItem.visual.spec.js +27 -0
  57. package/ds-menu-button/activable/DSMenuButton.axe-core.activable.func.spec.js +26 -0
  58. package/ds-menu-button/basic/DSMenuButton.axe-core.basic.func.spec.js +26 -0
  59. package/ds-menu-button/basic/DSMenuButton.basic.visual.spec.js +27 -0
  60. package/ds-menu-button/disabled/DSMenuButton.axe-core.disabled.func.spec.js +6 -1
  61. package/ds-menu-button/disabled/DSMenuButton.disabled.visual.spec.js +27 -0
  62. package/ds-menu-button/group/DSMenuButton.axe-core.groupMenuItem.func.spec.js +26 -0
  63. package/ds-menu-button/group/DSMenuButton.groupMenuItem.func.spec.js +41 -0
  64. package/ds-menu-button/group/DSMenuButton.groupMenuItem.keyboardnav.func.spec.js +55 -0
  65. package/ds-menu-button/group/DSMenuButton.groupMenuItem.visual.spec.js +27 -0
  66. package/ds-menu-button/leftdecorations/DSMenuButton.axe-core.leftDecor.func.spec.js +6 -1
  67. package/ds-menu-button/leftdecorations/DSMenuButton.leftDecorations.func.spec.js +45 -0
  68. package/ds-menu-button/leftdecorations/DSMenuButton.leftDecorations.keyboardnav.func.spec.js +57 -0
  69. package/ds-menu-button/leftdecorations/DSMenuButton.leftDecorations.visual.spec.js +27 -0
  70. package/ds-menu-button/multiselect/DSMenuButton.axe-core.multiselect.func.spec.js +4 -2
  71. package/ds-menu-button/multiselect/DSMenuButton.multiSelectItem.visual.spec.js +36 -0
  72. package/ds-menu-button/nexttabstop/DSMenuButton.nextTabstop.keyboardnav.func.spec.js +53 -0
  73. package/ds-menu-button/singleSelect/DSMenuButton.axe-core.singleSelect.func.spec.js +6 -2
  74. package/ds-menu-button/singleSelect/DSMenuButton.singleSelectItem.visual.spec.js +34 -0
  75. package/ds-menu-button/skeleton/DSMenuButton.axe-core.skeletonMenuItem.func.spec.js +27 -0
  76. package/ds-menu-button/skeleton/DSMenuButton.skeletonMenuItem.func.spec.js +35 -0
  77. package/ds-menu-button/skeleton/DSMenuButton.skeletonMenuItem.visual.spec.js +20 -0
  78. package/ds-menu-button/submenu/DSMenuButton.subMenuItem.visual.spec.js +39 -0
  79. package/ds-menu-button/usecases/DSMenuButton.cardExample.visual.spec.js +20 -0
  80. package/ds-menu-button/usecases/DSMenuButton.pageHeaderExample.visual.spec.js +21 -0
  81. package/ds-menu-button/usecases/DSMenuButton.pageHeaderExampleWithDecos.visual.spec.js +23 -0
  82. package/ds-modal-slide/ModalSlideCO.js +6 -0
  83. package/ds-modal-slide/apply-aria-disabled/ModalSlide.applyAriaDisabled.visual.spec.js +39 -0
  84. package/ds-modal-slide/custom-header/ModalSlide.customHeader.focusRing.visual.spec.js +25 -0
  85. package/ds-notification-badge/DSNotificationBadge.axe-core.func.spec.js +1 -1
  86. package/ds-notification-badge/DSNotificationBadge.global-attributes.func.spec.js +23 -0
  87. package/ds-notification-badge/DSNotificationBadgeCO.js +10 -4
  88. package/ds-page-header/DSPageHeader.visual.spec.js +14 -25
  89. package/ds-page-header/DSPageHeaderCO.js +13 -2
  90. package/ds-page-header/semantic-configuration/DSPageHeader.semantic-configuration.func.spec.js +26 -0
  91. package/ds-ribbon/DSRibbon.global-attr.axe-core.spec.js +22 -3
  92. package/ds-ribbon/DSRibbon.role-status.axe-core.spec.js +32 -0
  93. package/ds-ribbon/DSRibbon.theming.visual.spec.js +17 -0
  94. package/ds-ribbon/DSRibbonCO.js +65 -0
  95. package/ds-ribbon/slots/DSRibbon.slots.func.spec.js +63 -0
  96. package/ds-shuttle-v2/extra/DSShuttleV2.extra.func.spec.js +15 -3
  97. package/ds-tab-button/DSTabButton.func.spec.js +24 -0
  98. package/ds-tab-button/DSTabButtonCO.js +16 -0
  99. package/ds-tabs/DSTabs.axe-core.func.spec.js +0 -54
  100. package/ds-tabs/DSTabs.func.spec.js +1 -167
  101. package/ds-tabs/DSTabs.visual.spec.js +13 -69
  102. package/ds-tabs/DSTabsCO.js +2 -36
  103. package/ds-tabs/aria-disabled/DSTabs.aria-disabled.visual.spec.js +2 -2
  104. package/ds-tabs/disabled/DSTabs.disabled.axe-core.func.spec.js +22 -0
  105. package/ds-tabs/disabled/DSTabs.disabled.func.spec.js +28 -0
  106. package/ds-tabs/disabled/DSTabs.disabled.visual.spec.js +58 -0
  107. package/ds-tabs/nested/DSTabs.nested.axe-core.func.spec.js +31 -0
  108. package/ds-tabs/nested/DSTabs.nested.func.spec.js +22 -0
  109. package/ds-tabs/nested/DSTabs.nested.visual.spec.js +30 -0
  110. package/ds-tabs/slots/DSTabs.slots.func.spec.js +47 -15
  111. package/ds-tabs/with-carousel/DSTabs.with-carousel.axe-core.func.spec.js +32 -0
  112. package/ds-tabs/with-carousel/DSTabs.with-carousel.func.spec.js +572 -0
  113. package/ds-tabs/with-carousel/DSTabs.with-carousel.visual.spec.js +169 -28
  114. package/ds-tooltip-v3/DSTooltipV3CO.js +19 -0
  115. package/ds-tooltip-v3/slots/DSTooltipV3.slots.func.spec.js +35 -0
  116. package/ds-tooltip-v3/slots/DSTooltipV3.slots.visual.spec.js +14 -0
  117. package/helpers.js +4 -1
  118. package/package.json +190 -190
  119. package/paths.js +2 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,314 @@
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.60 (2026-04-13)
7
+
8
+ **Note:** Version bump only for package dimsum-e2e-tests
9
+
10
+ ## 3.60.0-next.59 (2026-04-13)
11
+
12
+ ### Bug Fixes
13
+
14
+ - ds-card-v1-detail:: info and relationships [PUI-15891] (https://jira.elliemae.io/browse/PUI-15891) ([f6a616b](https://git.elliemae.io/platform-ui/dimsum/commit/f6a616b55f8ec8f96eb00c8f60d0f7bff7a3f97c))
15
+
16
+ ## 3.60.0-next.58 (2026-04-13)
17
+
18
+ ### Bug Fixes
19
+
20
+ - ds-icons:: a11y role img and label linked to title [PUI-17842](https://jira.elliemae.io/browse/PUI-17842) ([9d12ded](https://git.elliemae.io/platform-ui/dimsum/commit/9d12ded382b8d256ac52d4c3a11b4bf108631f69))
21
+
22
+ ## 3.60.0-next.57 (2026-04-10)
23
+
24
+ ### Features
25
+
26
+ - ds-menu-button:: floating config [PUI-17708](https://jira.elliemae.io/browse/PUI-17708) ([87cb40d](https://git.elliemae.io/platform-ui/dimsum/commit/87cb40df2257b160821370142434b1074e415bb9))
27
+
28
+ ## 3.60.0-next.56 (2026-04-09)
29
+
30
+ ### Bug Fixes
31
+
32
+ - ds-card-v1-detail:: info and relationships [PUI-15891] (https://jira.elliemae.io/browse/PUI-15891) ([75afc41](https://git.elliemae.io/platform-ui/dimsum/commit/75afc41c9177059f15c12e1a7d3acedf83e7ba62))
33
+
34
+ ## 3.60.0-next.55 (2026-04-09)
35
+
36
+ ### Bug Fixes
37
+
38
+ - ds-dialog:: prevent false onClickOutside on overlay-press-release-inside-dialog [PUI-15050](https://jira.elliemae.io/browse/PUI-15050) ([7dfda94](https://git.elliemae.io/platform-ui/dimsum/commit/7dfda94e6848e689139b542435dc985fa137b0ef))
39
+
40
+ ## 3.60.0-next.54 (2026-04-08)
41
+
42
+ ### Bug Fixes
43
+
44
+ - ds-form-date-time-picker:: meridiem timewheel a11y fix + readonly styles # [PUI-16394](https://jira.elliemae.io/browse/PUI-16394) # [PUI-18277](https://jira.elliemae.io/browse/PUI-18277) ([2838331](https://git.elliemae.io/platform-ui/dimsum/commit/283833118df804318698e353307f754f7bff70b7))
45
+
46
+ ## 3.60.0-next.53 (2026-04-08)
47
+
48
+ ### Bug Fixes
49
+
50
+ - ds-card:: added e2e test for slots [PUI-15896](https://jira.elliemae.io/browse/PUI-15896) ([733934c](https://git.elliemae.io/platform-ui/dimsum/commit/733934c41889883fc6dc54a2ef0046e89e044925))
51
+
52
+ ## 3.60.0-next.52 (2026-04-06)
53
+
54
+ ### Features
55
+
56
+ - ds-dialog:: confirmation and form example; status message as pitfall [PUI-15048](https://jira.elliemae.io/browse/PUI-15048) ([#7969](https://git.elliemae.io/platform-ui/dimsum/issues/7969)) ([85edf83](https://git.elliemae.io/platform-ui/dimsum/commit/85edf8357497a8f3684814c2c183d15de4600d0c))
57
+
58
+ ## 3.60.0-next.51 (2026-04-06)
59
+
60
+ ### Features
61
+
62
+ - ds-dialog:: basic use case [PUI-15045](https://jira.elliemae.io/browse/PUI-15045) ([#7968](https://git.elliemae.io/platform-ui/dimsum/issues/7968)) ([77143b7](https://git.elliemae.io/platform-ui/dimsum/commit/77143b7c1dafb252e4e899557306085d9e51cd0f))
63
+
64
+ ## 3.60.0-next.50 (2026-04-02)
65
+
66
+ ### Features
67
+
68
+ - ds-tooltip-v3:: added slots and tests # [PUI-16379](https://jira.elliemae.io/browse/PUI-16379) ([#7966](https://git.elliemae.io/platform-ui/dimsum/issues/7966)) ([8025999](https://git.elliemae.io/platform-ui/dimsum/commit/8025999c9a635643a424e466916c4fb3bdcd1bae))
69
+
70
+ ## 3.60.0-next.49 (2026-04-01)
71
+
72
+ **Note:** Version bump only for package dimsum-e2e-tests
73
+
74
+ ## 3.60.0-next.48 (2026-03-31)
75
+
76
+ **Note:** Version bump only for package dimsum-e2e-tests
77
+
78
+ ## 3.60.0-next.47 (2026-03-31)
79
+
80
+ ### Bug Fixes
81
+
82
+ - ds-date-time-picker:: add spinbutton semantics to numeric inputs to comply with WCAG 4.1.2 [PUI-17323](https://jira.elliemae.io/browse/PUI-17323) ([#7959](https://git.elliemae.io/platform-ui/dimsum/issues/7959)) ([94c0da0](https://git.elliemae.io/platform-ui/dimsum/commit/94c0da0b3fa800398e2e16dfef6fee2a510a33c1))
83
+
84
+ ## 3.60.0-next.46 (2026-03-30)
85
+
86
+ ### Bug Fixes
87
+
88
+ - ds-page-header-v2:: skip link example [PUI-14844](https://jira.elliemae.io/browse/PUI-14844) ([#7955](https://git.elliemae.io/platform-ui/dimsum/issues/7955)) ([b97390e](https://git.elliemae.io/platform-ui/dimsum/commit/b97390e2def656900e26df862d613686295008d2))
89
+
90
+ ## 3.60.0-next.45 (2026-03-30)
91
+
92
+ ### Bug Fixes
93
+
94
+ - ds-pills-v2:: add WCAG 2.2 SC 2.5.8 analysis for removable small pill in ComboboxMulti [PUI-18154](https://jira.elliemae.io/browse/PUI-18154)([#7956](https://git.elliemae.io/platform-ui/dimsum/issues/7956)) ([d623fda](https://git.elliemae.io/platform-ui/dimsum/commit/d623fda0d2a4dcc1814e58f19c97e185780edf79))
95
+
96
+ ## 3.60.0-next.44 (2026-03-26)
97
+
98
+ ### Features
99
+
100
+ - ds-data-table:: add keyboard nav tests for all Filters V2 types [PUI-18206](https://jira.elliemae.io/browse/PUI-18206) ([#7950](https://git.elliemae.io/platform-ui/dimsum/issues/7950)) ([e54baa1](https://git.elliemae.io/platform-ui/dimsum/commit/e54baa104db1f46a832977b7eecc6332822c855f))
101
+
102
+ ## 3.60.0-next.43 (2026-03-20)
103
+
104
+ ### Features
105
+
106
+ - ds-read-more:: aria expanded and fixes for safari [PUI-17191](https://jira.elliemae.io/browse/PUI-17191) ([#7947](https://git.elliemae.io/platform-ui/dimsum/issues/7947)) ([f07f003](https://git.elliemae.io/platform-ui/dimsum/commit/f07f003994489f3747b07311a0be004927913e42))
107
+
108
+ ## 3.60.0-next.42 (2026-03-19)
109
+
110
+ ### Bug Fixes
111
+
112
+ - dimsum:: case-sensitive rename to fix build pipeline ([#7944](https://git.elliemae.io/platform-ui/dimsum/issues/7944)) ([41886e8](https://git.elliemae.io/platform-ui/dimsum/commit/41886e866a2569997a8f1a49e106d73d179df716))
113
+
114
+ ## 3.60.0-next.41 (2026-03-18)
115
+
116
+ ### Bug Fixes
117
+
118
+ - ds-data-table:: improve filter change accessibility announcements pattern [PUI-17317](https://jira.elliemae.io/browse/PUI-17317) ([#7942](https://git.elliemae.io/platform-ui/dimsum/issues/7942)) ([065d07a](https://git.elliemae.io/platform-ui/dimsum/commit/065d07aa656694165393c662223b638dd19b7929))
119
+
120
+ ## 3.60.0-next.40 (2026-03-17)
121
+
122
+ ### Bug Fixes
123
+
124
+ - ds-data-table:: prevent focus loss on creatable add and submit on enter for FilterV2 [PUI-18111](https://jira.elliemae.io/browse/PUI-18111) ([#7939](https://git.elliemae.io/platform-ui/dimsum/issues/7939)) ([3845b06](https://git.elliemae.io/platform-ui/dimsum/commit/3845b068c97036ac8d06ae6aeda04861bfb0d112))
125
+
126
+ ## 3.60.0-next.39 (2026-03-16)
127
+
128
+ ### Bug Fixes
129
+
130
+ - ds-card-v1:: add slots showcase [PUI-15889] (https://jira.elliemae.io/browse/ PUI-15889) ([#7935](https://git.elliemae.io/platform-ui/dimsum/issues/7935)) ([fc928af](https://git.elliemae.io/platform-ui/dimsum/commit/fc928af506dac409c08bd074e9a14c6138272bf7))
131
+
132
+ ## 3.60.0-next.38 (2026-03-05)
133
+
134
+ ### Bug Fixes
135
+
136
+ - ds-card-v2:: added slot support [PUI-15890] (https://jira.elliemae.io/browse/PUI-15890) ([#7920](https://git.elliemae.io/platform-ui/dimsum/issues/7920)) ([c14f1e1](https://git.elliemae.io/platform-ui/dimsum/commit/c14f1e1345ead19e226bb34b360353221e5aa96f))
137
+
138
+ ## 3.60.0-next.37 (2026-03-05)
139
+
140
+ ### Features
141
+
142
+ - ds-data-table:: improve folder organization for filtersV2 and v1 vs v2 showcase ([#7919](https://git.elliemae.io/platform-ui/dimsum/issues/7919)) ([85e4fcb](https://git.elliemae.io/platform-ui/dimsum/commit/85e4fcbe61c1cea68baaf8205326d991f5b39476))
143
+
144
+ ## 3.60.0-next.36 (2026-03-03)
145
+
146
+ ### Bug Fixes
147
+
148
+ - dimsum:: storybook - fixed missing redux peer dep post legacy removal ([#7914](https://git.elliemae.io/platform-ui/dimsum/issues/7914)) ([473611c](https://git.elliemae.io/platform-ui/dimsum/commit/473611c112806728e0b5c0fca19743aa04abe8a9))
149
+
150
+ ## 3.60.0-next.35 (2026-03-03)
151
+
152
+ **Note:** Version bump only for package dimsum-e2e-tests
153
+
154
+ ## 3.60.0-next.34 (2026-03-02)
155
+
156
+ **Note:** Version bump only for package dimsum-e2e-tests
157
+
158
+ ## 3.60.0-next.33 (2026-02-27)
159
+
160
+ ### Features
161
+
162
+ - ds-global-header:: theming story [PUI-16360](https://jira.elliemae.io/browse/PUI-16360) ([#7901](https://git.elliemae.io/platform-ui/dimsum/issues/7901)) ([e6a3d8f](https://git.elliemae.io/platform-ui/dimsum/commit/e6a3d8f3ebfdf905e2a85e698ef35168771a7d4e))
163
+
164
+ ## 3.60.0-next.32 (2026-02-25)
165
+
166
+ ### Bug Fixes
167
+
168
+ - ds-data-table:: improve filters focus trap for consistent tab/shift+tab order [PUI-17922](https://jira.elliemae.io/browse/PUI-17922) ([#7900](https://git.elliemae.io/platform-ui/dimsum/issues/7900)) ([b9c579d](https://git.elliemae.io/platform-ui/dimsum/commit/b9c579d4ff5bf16e58aad6931e94a43bcece0a9c))
169
+
170
+ ## 3.60.0-next.31 (2026-02-25)
171
+
172
+ ### Features
173
+
174
+ - ds-menu-button:: enable playwright tests [PUI-16741](https://jira.elliemae.io/browse/PUI-16741) ([#7898](https://git.elliemae.io/platform-ui/dimsum/issues/7898)) ([580ea18](https://git.elliemae.io/platform-ui/dimsum/commit/580ea18cef699587201ced6444eee73936a85c4c))
175
+
176
+ ## 3.60.0-next.30 (2026-02-24)
177
+
178
+ ### Bug Fixes
179
+
180
+ - ds-codemods:: legacy-deprecation-26dot3 replaceAll for multi match fix ([#7897](https://git.elliemae.io/platform-ui/dimsum/issues/7897)) ([3b27f7e](https://git.elliemae.io/platform-ui/dimsum/commit/3b27f7e04a56ed2b14b12a1523748a1a4828c8a1))
181
+
182
+ ## 3.60.0-next.29 (2026-02-23)
183
+
184
+ ### Bug Fixes
185
+
186
+ - 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))
187
+
188
+ ## 3.60.0-next.28 (2026-02-20)
189
+
190
+ ### Bug Fixes
191
+
192
+ - ds-left-navigation:: add functional test for slots customization [PUI-15560](https://jira.elliemae.io/browse/PUI-15560) ([#7892](https://git.elliemae.io/platform-ui/dimsum/issues/7892)) ([6732509](https://git.elliemae.io/platform-ui/dimsum/commit/6732509aaaafeb3c3cc4f2e8e85986177b782c58))
193
+
194
+ ## 3.60.0-next.27 (2026-02-20)
195
+
196
+ ### Bug Fixes
197
+
198
+ - ds-tabs:: show outline in tabpanel ([b9db99f](https://git.elliemae.io/platform-ui/dimsum/commit/b9db99ff6878f67c06cb1abe0e813a85b3ce8dfe))
199
+
200
+ ## 3.60.0-next.26 (2026-02-19)
201
+
202
+ ### Features
203
+
204
+ - ds-global-header:: search-toggle story improved a11y + improved slots support [PUI-17852](https://jira.elliemae.io/browse/PUI-17852) ([#7891](https://git.elliemae.io/platform-ui/dimsum/issues/7891)) ([bed0e22](https://git.elliemae.io/platform-ui/dimsum/commit/bed0e22851cfa990994790f064a0bf1606928645))
205
+
206
+ ## 3.60.0-next.25 (2026-02-19)
207
+
208
+ ### Bug Fixes
209
+
210
+ - ds-global-header:: fixed unit test + slots to dimsum pattern compliancy ([#7889](https://git.elliemae.io/platform-ui/dimsum/issues/7889)) ([7198f8a](https://git.elliemae.io/platform-ui/dimsum/commit/7198f8afcdaa884886c90ac1e492ff82315837cf))
211
+
212
+ ## 3.60.0-next.24 (2026-02-17)
213
+
214
+ ### Features
215
+
216
+ - ds-ribbon:: role analysis and show example using role=status [PUI-17480](https://jira.elliemae.io/browse/PUI-17480) ([#7880](https://git.elliemae.io/platform-ui/dimsum/issues/7880)) ([034a59a](https://git.elliemae.io/platform-ui/dimsum/commit/034a59a2f1449599310d9788dfce12ba8037eb95))
217
+
218
+ ## 3.60.0-next.23 (2026-02-17)
219
+
220
+ **Note:** Version bump only for package dimsum-e2e-tests
221
+
222
+ ## 3.60.0-next.22 (2026-02-16)
223
+
224
+ ### Features
225
+
226
+ - ds-ribbon:: slots usege example and theming support story [PUI-17442](https://jira.elliemae.io/browse/PUI-17442) ([#7879](https://git.elliemae.io/platform-ui/dimsum/issues/7879)) ([a951520](https://git.elliemae.io/platform-ui/dimsum/commit/a951520b52988b331cb495260326ff5750529873))
227
+
228
+ ## 3.60.0-next.21 (2026-02-16)
229
+
230
+ ### Features
231
+
232
+ - ds-chat-bubble:: implement slots in Chat Bubble [PUI-17908](https://jira.elliemae.io/browse/PUI-17908) ([#7877](https://git.elliemae.io/platform-ui/dimsum/issues/7877)) ([9558f1d](https://git.elliemae.io/platform-ui/dimsum/commit/9558f1d0465417ddfd07500728d49b4cceb12cd8))
233
+
234
+ ## 3.60.0-next.20 (2026-02-13)
235
+
236
+ ### Bug Fixes
237
+
238
+ - ds-chip:: update E2E test selectors and chip XPath queries [PUI-17896](https://jira.elliemae.io/browse/PUI-17896) ([#7875](https://git.elliemae.io/platform-ui/dimsum/issues/7875)) ([f682a0a](https://git.elliemae.io/platform-ui/dimsum/commit/f682a0a99c8b01ed886f13d1f5835f10c9e8ae44))
239
+
240
+ ## 3.60.0-next.19 (2026-02-12)
241
+
242
+ ### Features
243
+
244
+ - ds-ribbon:: typescript fixes by dimsum alignment [PUI-17478](https://jira.elliemae.io/browse/PUI-17478)([#7870](https://git.elliemae.io/platform-ui/dimsum/issues/7870)) ([6dcb730](https://git.elliemae.io/platform-ui/dimsum/commit/6dcb730e31dcb4cfab2e863db38c01de894a7af9))
245
+
246
+ ## 3.60.0-next.18 (2026-02-09)
247
+
248
+ ### Bug Fixes
249
+
250
+ - ds-left-navigation:: e2e story for detected missing slots [PUI-15560](https://jira.elliemae.io/browse/PUI-15560) ([#7864](https://git.elliemae.io/platform-ui/dimsum/issues/7864)) ([37e630b](https://git.elliemae.io/platform-ui/dimsum/commit/37e630be9e1023dee24e17a3e49da1d53d351060))
251
+
252
+ ## 3.60.0-next.17 (2026-02-06)
253
+
254
+ ### Features
255
+
256
+ - ds-global-header:: search toggle example improve [PUI-17487](https://jira.elliemae.io/browse/PUI-17487) ([#7862](https://git.elliemae.io/platform-ui/dimsum/issues/7862)) ([8d268f8](https://git.elliemae.io/platform-ui/dimsum/commit/8d268f8fa3a8e4a065b1897128a866eb2af1c050))
257
+
258
+ ## 3.60.0-next.16 (2026-02-06)
259
+
260
+ ### Features
261
+
262
+ - ds-global-header:: search toggle tests [PUI-17487](https://jira.elliemae.io/browse/PUI-17487) ([#7861](https://git.elliemae.io/platform-ui/dimsum/issues/7861)) ([039b36d](https://git.elliemae.io/platform-ui/dimsum/commit/039b36dd5bf53053cf5d7e636ba0f7dbd17bff11))
263
+
264
+ ## 3.60.0-next.15 (2026-01-29)
265
+
266
+ ### Features
267
+
268
+ - dimsum:: upgraded third party libraries [PUI-17276](https://jira.elliemae.io/browse/PUI-17276) ([#7833](https://git.elliemae.io/platform-ui/dimsum/issues/7833)) ([361aafb](https://git.elliemae.io/platform-ui/dimsum/commit/361aafb523a55187f0951f4a2b338458f8198c97))
269
+
270
+ ## 3.60.0-next.14 (2026-01-26)
271
+
272
+ ### Features
273
+
274
+ - ds-menu-button:: slots and unit tests support [PUI-17708](https://jira.elliemae.io/browse/PUI-17708) ([#7822](https://git.elliemae.io/platform-ui/dimsum/issues/7822)) ([211afa4](https://git.elliemae.io/platform-ui/dimsum/commit/211afa4b48182892a8945e08c69d693021684986))
275
+
276
+ ## 3.60.0-next.13 (2026-01-20)
277
+
278
+ ### Bug Fixes
279
+
280
+ - ds-dialog:: raise condition caused by layout effect [PUI-17804](https://jira.elliemae.io/browse/PUI-17804)([#7826](https://git.elliemae.io/platform-ui/dimsum/issues/7826)) ([c07f693](https://git.elliemae.io/platform-ui/dimsum/commit/c07f69337344e77e0b3bfb0974b171c410972a06))
281
+
282
+ ## 3.60.0-next.12 (2026-01-16)
283
+
284
+ ### Features
285
+
286
+ - dimsum:: fixed dependencies and added knip for reports [PUI-17275](https://jira.elliemae.io/browse/PUI-17275) ([#7824](https://git.elliemae.io/platform-ui/dimsum/issues/7824)) ([65b7cf4](https://git.elliemae.io/platform-ui/dimsum/commit/65b7cf4e3558d20957adc405bd91ea9370b11589))
287
+
288
+ ## 3.60.0-next.11 (2026-01-14)
289
+
290
+ ### Features
291
+
292
+ - ds-tabs:: update carousel to horizontal scroll [PUI-17483](https://jira.elliemae.io/browse/PUI-17483) ([#7821](https://git.elliemae.io/platform-ui/dimsum/issues/7821)) ([9cfe8a5](https://git.elliemae.io/platform-ui/dimsum/commit/9cfe8a56d6277fe4fc9ffcf9c9dfb97dff7adfbf))
293
+
294
+ ## 3.60.0-next.10 (2026-01-14)
295
+
296
+ ### Bug Fixes
297
+
298
+ - ds-app-picker:: support global attributes [PUI-17246](https://jira.elliemae.io/browse/PUI-17246) ([#7820](https://git.elliemae.io/platform-ui/dimsum/issues/7820)) ([1b2a2ea](https://git.elliemae.io/platform-ui/dimsum/commit/1b2a2ea55ca4ea19386e891be939c3615a244468))
299
+
300
+ ## [3.60.0-next.9](https://git.elliemae.io/platform-ui/dimsum/compare/v3.60.0-next.8...v3.60.0-next.9) (2026-01-13)
301
+
302
+ **Note:** Version bump only for package dimsum-e2e-tests
303
+
304
+ ## 3.60.0-next.8 (2026-01-13)
305
+
306
+ **Note:** Version bump only for package dimsum-e2e-tests
307
+
308
+ ## 3.60.0-next.7 (2026-01-12)
309
+
310
+ ### Bug Fixes
311
+
312
+ - ds-chip:: custom attributes and folder organization [PUI-14876] (https://jira.elliemae.io/browse/PUI-14876) ([#7819](https://git.elliemae.io/platform-ui/dimsum/issues/7819)) ([7025b86](https://git.elliemae.io/platform-ui/dimsum/commit/7025b865a1d0ca1cdc02aa07353a79eab3910356))
313
+
6
314
  ## 3.60.0-next.6 (2026-01-12)
7
315
 
8
316
  ### Bug Fixes
@@ -16,6 +16,8 @@ export default class DSAppPickerCO extends PageObject {
16
16
 
17
17
  static applyAriaDisabledURL = new Urlbuilder(`${PATH_E2E_APP_PICKER}`, 'apply-aria-disabled-test');
18
18
 
19
+ static reflowURL = new Urlbuilder(`${PATH_E2E_APP_PICKER}`, 'reflow-test');
20
+
19
21
  // Snapshots
20
22
  static snapshotPath(example = 'basic') {
21
23
  return PageObject.getSnapshotPathBuilder('AppPicker', example);
@@ -37,6 +39,14 @@ export default class DSAppPickerCO extends PageObject {
37
39
  static getChipByLabel = async (label) =>
38
40
  $(`//button[@data-testid="app-picker__chip"]/div/span[contains(text(),"${label}")]//ancestor::button`);
39
41
 
42
+ static getChipsByLabel = async (label) =>
43
+ $$(`//button[@data-testid="app-picker__chip"]/div/span[contains(text(),"${label}")]//ancestor::button`);
44
+
45
+ static getChipByLabelAndIndex = async (label, index) => {
46
+ const chips = await DSAppPickerCO.getChipsByLabel(label);
47
+ return chips[index];
48
+ };
49
+
40
50
  static async getAppPickerRoot() {
41
51
  return $('[data-testid="ds-apppicker-root"]');
42
52
  }
@@ -34,8 +34,8 @@ if (
34
34
  const appPicker = await DSAppPickerCO.getAppPickerRoot();
35
35
  await expect(appPicker).toBeDisplayedInViewport();
36
36
  });
37
- it('05: should focus the sixth element when clicking it', async () => {
38
- const appPickerChip = await DSAppPickerCO.getChipByIndex(5);
37
+ it('05: should focus the seventh element when clicking it', async () => {
38
+ const appPickerChip = await DSAppPickerCO.getChipByIndex(6);
39
39
  await appPickerChip.click();
40
40
  await expect(appPickerChip).toBeFocused();
41
41
  });
@@ -0,0 +1,36 @@
1
+ /* eslint-disable wdio/no-pause */
2
+ import DSAppPickerCO from '../DSAppPickerCO';
3
+
4
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
5
+ describe('PUI-17867 - AppPicker:: Reflow test -visual', () => {
6
+ before('loading page', async () => {
7
+ const errorOnGo = await DSAppPickerCO.reflowURL.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ await browser.maximizeWindow();
10
+ });
11
+
12
+ it('01: should show appPicker open', async () => {
13
+ const openAppPickerBtn = await DSAppPickerCO.getOpenAppPicker();
14
+ await openAppPickerBtn.click();
15
+ const snapshot = await browser.percyCheckScreenshot(DSAppPickerCO.snapshotPath('reflow-appPicker-open'));
16
+ await expect(snapshot).toEqual(0);
17
+ });
18
+
19
+ it('02: should scroll to the 2nd Pipeline chip', async () => {
20
+ const secondPipelineChip = await DSAppPickerCO.getChipByLabelAndIndex('Pipeline', 1);
21
+ await secondPipelineChip.scrollIntoView();
22
+ await browser.pause(300);
23
+ const snapshot = await browser.percyCheckScreenshot(DSAppPickerCO.snapshotPath('reflow-appPicker-scrolled'));
24
+ await expect(snapshot).toEqual(0);
25
+ });
26
+
27
+ it('03: should select the 2nd Pipeline chip', async () => {
28
+ const secondPipelineChip = await DSAppPickerCO.getChipByLabelAndIndex('Pipeline', 1);
29
+ await secondPipelineChip.click();
30
+ const snapshot = await browser.percyCheckScreenshot(
31
+ DSAppPickerCO.snapshotPath('reflow-appPicker-pipeline-selected'),
32
+ );
33
+ await expect(snapshot).toEqual(0);
34
+ });
35
+ });
36
+ }
@@ -39,5 +39,18 @@ if (
39
39
  await expect(titleSlot).toHaveAttribute('aria-label', 'im title aria');
40
40
  await expect(separatorSlot).toHaveAttribute('aria-label', 'im separator aria');
41
41
  });
42
+ it('03: should have custom data-public for each slot', async () => {
43
+ const itemSlot = await DSAppPickerCO.getItemSlotByIndex();
44
+ const rowSlot = await DSAppPickerCO.getRowSlotByIndex();
45
+ const rootSlot = await DSAppPickerCO.getRootSlotByIndex();
46
+ const titleSlot = await DSAppPickerCO.getTitleSlotByIndex();
47
+ const separatorSlot = await DSAppPickerCO.getSeparatorSlotByIndex();
48
+ await rootSlot.waitForDisplayed();
49
+ await expect(itemSlot).toHaveAttribute('data-public', 'item-custom-attribute');
50
+ await expect(rowSlot).toHaveAttribute('data-public', 'row-custom-attribute');
51
+ await expect(rootSlot).toHaveAttribute('data-public', 'root-custom-attribute');
52
+ await expect(titleSlot).toHaveAttribute('data-public', 'title-custom-attribute');
53
+ await expect(separatorSlot).toHaveAttribute('data-public', 'separator-custom-attribute');
54
+ });
42
55
  });
43
56
  }
@@ -0,0 +1,95 @@
1
+ /* eslint-disable max-statements */
2
+ import DSCardCO from './DSCardCO';
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-18280 - Card: Slots Test -Func', () => {
11
+ before('loading page', async () => {
12
+ const errorOnGo = await DSCardCO.slotsTest.go();
13
+ if (errorOnGo) throw errorOnGo;
14
+ });
15
+ it('01: Should have a custom aria for each slot', async () => {
16
+ const actions = await DSCardCO.getCardNavigationActionsSlotByIndex();
17
+ const actionButton = await DSCardCO.getCardNavigationActionButtonSlotByIndex();
18
+ const buttonWrapper = await DSCardCO.getCardNavigationButtonWrapperSlotByIndex();
19
+ const centralContent = await DSCardCO.getCardNavigationCentralContentSlotByIndex();
20
+ const content = await DSCardCO.getCardNavigationContentSlotByIndex();
21
+ const descriptionText = await DSCardCO.getCardNavigationDescriptionTextSlotByIndex();
22
+ const interactiveElementRegion = await DSCardCO.getCardNavigationInteractiveElementRegionSlotByIndex();
23
+ const root = await DSCardCO.getCardNavigationRootSlotByIndex();
24
+ const title = await DSCardCO.getCardNavigationTitleSlotByIndex();
25
+ const titleTypography = await DSCardCO.getCardNavigationTitleTypographySlotByIndex();
26
+ const titleWrapper = await DSCardCO.getCardNavigationTitleWrapperSlotByIndex();
27
+ const type = await DSCardCO.getCardNavigationTypeSlotByIndex();
28
+ await expect(actions).toHaveAttribute('aria-label', 'actions aria');
29
+ await expect(actionButton).toHaveAttribute('aria-label', 'action button aria');
30
+ await expect(buttonWrapper).toHaveAttribute('aria-label', 'button wrapper aria');
31
+ await expect(centralContent).toHaveAttribute('aria-label', 'central content aria');
32
+ await expect(content).toHaveAttribute('aria-label', 'content aria');
33
+ await expect(descriptionText).toHaveAttribute('aria-label', 'description text aria');
34
+ await expect(interactiveElementRegion).toHaveAttribute('aria-label', 'interactive element region aria');
35
+ await expect(root).toHaveAttribute('aria-label', 'root aria');
36
+ await expect(title).toHaveAttribute('aria-label', 'title aria');
37
+ await expect(titleTypography).toHaveAttribute('aria-label', 'title typography aria');
38
+ await expect(titleWrapper).toHaveAttribute('aria-label', 'title wrapper aria');
39
+ await expect(type).toHaveAttribute('aria-label', 'type aria');
40
+ });
41
+
42
+ it('02: Should have custom data-testid for each slot', async () => {
43
+ const actions = await DSCardCO.getCardNavigationActionsSlotByIndex();
44
+ const actionButton = await DSCardCO.getCardNavigationActionButtonSlotByIndex();
45
+ const buttonWrapper = await DSCardCO.getCardNavigationButtonWrapperSlotByIndex();
46
+ const centralContent = await DSCardCO.getCardNavigationCentralContentSlotByIndex();
47
+ const content = await DSCardCO.getCardNavigationContentSlotByIndex();
48
+ const descriptionText = await DSCardCO.getCardNavigationDescriptionTextSlotByIndex();
49
+ const interactiveElementRegion = await DSCardCO.getCardNavigationInteractiveElementRegionSlotByIndex();
50
+ const root = await DSCardCO.getCardNavigationRootSlotByIndex();
51
+ const title = await DSCardCO.getCardNavigationTitleSlotByIndex();
52
+ const titleTypography = await DSCardCO.getCardNavigationTitleTypographySlotByIndex();
53
+ const titleWrapper = await DSCardCO.getCardNavigationTitleWrapperSlotByIndex();
54
+ const type = await DSCardCO.getCardNavigationTypeSlotByIndex();
55
+ await expect(actions).toHaveAttribute('data-testid', 'actions data');
56
+ await expect(actionButton).toHaveAttribute('data-testid', 'action button data');
57
+ await expect(buttonWrapper).toHaveAttribute('data-testid', 'button wrapper data');
58
+ await expect(centralContent).toHaveAttribute('data-testid', 'central content data');
59
+ await expect(content).toHaveAttribute('data-testid', 'content data');
60
+ await expect(descriptionText).toHaveAttribute('data-testid', 'description text data');
61
+ await expect(interactiveElementRegion).toHaveAttribute('data-testid', 'interactive element region data');
62
+ await expect(root).toHaveAttribute('data-testid', 'root data');
63
+ await expect(title).toHaveAttribute('data-testid', 'title data');
64
+ await expect(titleTypography).toHaveAttribute('data-testid', 'title typography data');
65
+ await expect(titleWrapper).toHaveAttribute('data-testid', 'title wrapper data');
66
+ await expect(type).toHaveAttribute('data-testid', 'type data');
67
+ });
68
+ it('03: Should have custom lang for each slot', async () => {
69
+ const actions = await DSCardCO.getCardNavigationActionsSlotByIndex();
70
+ const actionButton = await DSCardCO.getCardNavigationActionButtonSlotByIndex();
71
+ const buttonWrapper = await DSCardCO.getCardNavigationButtonWrapperSlotByIndex();
72
+ const centralContent = await DSCardCO.getCardNavigationCentralContentSlotByIndex();
73
+ const content = await DSCardCO.getCardNavigationContentSlotByIndex();
74
+ const descriptionText = await DSCardCO.getCardNavigationDescriptionTextSlotByIndex();
75
+ const interactiveElementRegion = await DSCardCO.getCardNavigationInteractiveElementRegionSlotByIndex();
76
+ const root = await DSCardCO.getCardNavigationRootSlotByIndex();
77
+ const title = await DSCardCO.getCardNavigationTitleSlotByIndex();
78
+ const titleTypography = await DSCardCO.getCardNavigationTitleTypographySlotByIndex();
79
+ const titleWrapper = await DSCardCO.getCardNavigationTitleWrapperSlotByIndex();
80
+ const type = await DSCardCO.getCardNavigationTypeSlotByIndex();
81
+ await expect(actions).toHaveAttribute('lang', 'es');
82
+ await expect(actionButton).toHaveAttribute('lang', 'fr');
83
+ await expect(buttonWrapper).toHaveAttribute('lang', 'de');
84
+ await expect(centralContent).toHaveAttribute('lang', 'it');
85
+ await expect(content).toHaveAttribute('lang', 'pt');
86
+ await expect(descriptionText).toHaveAttribute('lang', 'ja');
87
+ await expect(interactiveElementRegion).toHaveAttribute('lang', 'zh');
88
+ await expect(root).toHaveAttribute('lang', 'ru');
89
+ await expect(title).toHaveAttribute('lang', 'ko');
90
+ await expect(titleTypography).toHaveAttribute('lang', 'ar');
91
+ await expect(titleWrapper).toHaveAttribute('lang', 'hi');
92
+ await expect(type).toHaveAttribute('lang', 'nl');
93
+ });
94
+ });
95
+ }
@@ -0,0 +1,23 @@
1
+ /* eslint-disable max-statements */
2
+ import DSCardCO from './DSCardCO';
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-18281 - Card: Slots Test -Visual', () => {
11
+ before('loading page', async () => {
12
+ const errorOnGo = await DSCardCO.slotsTest.go();
13
+ if (errorOnGo) throw errorOnGo;
14
+ });
15
+ it('01: Should have a custom aria for each slot', async () => {
16
+ await browser.eyesOpen();
17
+ const root = await DSCardCO.getCardNavigationRootSlotByIndex();
18
+ await root.waitForDisplayed();
19
+ const snapshot = await browser.checkSnapshot(DSCardCO.snapshotPath('card-slots'));
20
+ await expect(snapshot).toEqual(0);
21
+ });
22
+ });
23
+ }
@@ -22,6 +22,8 @@ export default class DSCardCO extends PageObject {
22
22
 
23
23
  static ucDetailCardLongLabelURL = new Urlbuilder(PATH_E2E_CARD, 'detail-card-long-label');
24
24
 
25
+ static slotsTest = new Urlbuilder(PATH_E2E_CARD, 'slots-test');
26
+
25
27
  static ucDetailCardLongTitleURL = new Urlbuilder(PATH_E2E_CARD, 'detail-card-long-title');
26
28
 
27
29
  static detailExpandableURL = new Urlbuilder(PATH_E2E_CARD, 'detail-expandable-test');
@@ -78,4 +80,52 @@ export default class DSCardCO extends PageObject {
78
80
  static async getRightAddonButton() {
79
81
  return $('[data-testid="right-addon-button"]');
80
82
  }
83
+
84
+ static async getCardNavigationActionsSlotByIndex(index = 0) {
85
+ return $$('[data-dimsum-slot="dsCardnavigationActions"]')[index];
86
+ }
87
+
88
+ static async getCardNavigationActionButtonSlotByIndex(index = 0) {
89
+ return $$('[data-dimsum-parent-slot="dsCardnavigationActionButton"]')[index];
90
+ }
91
+
92
+ static async getCardNavigationButtonWrapperSlotByIndex(index = 0) {
93
+ return $$('[data-dimsum-slot="dsCardnavigationButtonWrapper"]')[index];
94
+ }
95
+
96
+ static async getCardNavigationCentralContentSlotByIndex(index = 0) {
97
+ return $$('[data-dimsum-slot="dsCardnavigationCentralContent"]')[index];
98
+ }
99
+
100
+ static async getCardNavigationContentSlotByIndex(index = 0) {
101
+ return $$('[data-dimsum-slot="dsCardnavigationContent"]')[index];
102
+ }
103
+
104
+ static async getCardNavigationDescriptionTextSlotByIndex(index = 0) {
105
+ return $$('[data-dimsum-parent-slot="dsCardnavigationDescriptionText"]')[index];
106
+ }
107
+
108
+ static async getCardNavigationInteractiveElementRegionSlotByIndex(index = 0) {
109
+ return $$('[data-dimsum-slot="dsCardnavigationInteractiveElementRegion"]')[index];
110
+ }
111
+
112
+ static async getCardNavigationRootSlotByIndex(index = 0) {
113
+ return $$('[data-dimsum-slot="dsCardnavigationRoot"]')[index];
114
+ }
115
+
116
+ static async getCardNavigationTitleSlotByIndex(index = 0) {
117
+ return $$('[data-dimsum-slot="dsCardnavigationTitle"]')[index];
118
+ }
119
+
120
+ static async getCardNavigationTitleTypographySlotByIndex(index = 0) {
121
+ return $$('[data-dimsum-parent-slot="dsCardnavigationTitleTypography"]')[index];
122
+ }
123
+
124
+ static async getCardNavigationTitleWrapperSlotByIndex(index = 0) {
125
+ return $$('[data-dimsum-slot="dsCardnavigationTitleWrapper"]')[index];
126
+ }
127
+
128
+ static async getCardNavigationTypeSlotByIndex(index = 0) {
129
+ return $$('[data-dimsum-slot="dsCardnavigationType"]')[index];
130
+ }
81
131
  }
@@ -33,7 +33,24 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
33
33
  });
34
34
  });
35
35
 
36
- describe('PUI-8928 - Chip, Styles -visual', () => {
36
+ describe('PUI-17879 - Chip, Basic & Labels -Visual', () => {
37
+ before('loading page', async () => {
38
+ const errorOnGo = await DSChipCO.basicURL.go();
39
+ if (errorOnGo) throw errorOnGo;
40
+ });
41
+ it('01: should show basic chips by default', async () => {
42
+ await (await DSChipCO.getChipByIndex(1)).waitForDisplayed();
43
+ const snapshot = await browser.percyCheckScreenshot(DSChipCO.snapshotPath('dschips-basic-default'));
44
+ await expect(snapshot).toEqual(0);
45
+ });
46
+ it('02: truncated chip should show text on hover', async () => {
47
+ await mouseOver(await DSChipCO.getChipByIndex(3));
48
+ const snapshot = await browser.percyCheckScreenshot(DSChipCO.snapshotPath('dschips-basic-untruncated'));
49
+ await expect(snapshot).toEqual(0);
50
+ });
51
+ });
52
+
53
+ describe('PUI-17879 - Chip, Styles -visual', () => {
37
54
  before('loading page', async () => {
38
55
  const errorOnGo = await DSChipCO.shapeURL.go();
39
56
  if (errorOnGo) throw errorOnGo;
@@ -16,6 +16,8 @@ export default class DSChipCO extends PageObject {
16
16
 
17
17
  static applyAriaDisabledURL = new Urlbuilder(PATH_E2E_CHIP, 'apply-aria-disabled-test');
18
18
 
19
+ static customAttributesUsageURL = new Urlbuilder(PATH_E2E_CHIP, 'custom-attributes-usage-test');
20
+
19
21
  // Snapshots
20
22
  static snapshotPath(example = 'basic') {
21
23
  return PageObject.getSnapshotPathBuilder('Chip', example);