dimsum-e2e-tests 3.70.0-next.4 → 3.70.0-next.41

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 (126) hide show
  1. package/CHANGELOG.md +210 -0
  2. package/ds-accordion/DSAccordion.visual.spec.js +6 -0
  3. package/ds-accordion/DSAccordionCO.js +11 -3
  4. package/ds-accordion/controlled/DSAccordion.controlled.func.spec.js +23 -0
  5. package/ds-accordion/header-structure/DSAccordion.header-structure.func.spec.js +49 -0
  6. package/ds-accordion/input-inside/DSAccordion.input-inside.func.spec.js +17 -0
  7. package/ds-accordion-native/DSAccordionNative.axe-core.func.spec.js +135 -0
  8. package/ds-accordion-native/DSAccordionNative.func.spec.js +200 -0
  9. package/ds-accordion-native/DSAccordionNative.visual.spec.js +158 -0
  10. package/ds-accordion-native/DSAccordionNativeCO.js +161 -0
  11. package/ds-accordion-native/QA_NOTES.md +88 -0
  12. package/ds-accordion-native/aria-disabled/DSAccordionNative.aria-disabled.axe-core.func.spec.js +25 -0
  13. package/ds-accordion-native/aria-disabled/DSAccordionNative.aria-disabled.visual.spec.js +28 -0
  14. package/ds-accordion-native/controlled/DSAccordionNative.controlled.func.spec.js +22 -0
  15. package/ds-accordion-native/header-structure/DSAccordionNative.header-structure.func.spec.js +53 -0
  16. package/ds-accordion-native/input-inside/DSAccordionNative.input-inside.func.spec.js +16 -0
  17. package/ds-accordion-native/role/DSAccordionNative.role-heading.func.spec.js +27 -0
  18. package/ds-accordion-native/scrollable-content/DSAccordionNative.scrollable-content.visual.spec.js +49 -0
  19. package/ds-accordion-native/slots/DSAccordionNative.slots.axe-core.func.spec.js +25 -0
  20. package/ds-accordion-native/slots/DSAccordionNative.slots.func.spec.js +73 -0
  21. package/ds-accordion-native/slots/DSAccordionNative.slots.visual.spec.js +21 -0
  22. package/ds-accordion-native/wrapLabel/DSAccordionNative.wrap-label.visual.spec.js +21 -0
  23. package/ds-apppicker/DSAppPickerCO.js +1 -1
  24. package/ds-autocomplete/DSAutocomplete.visual.spec.js +34 -0
  25. package/ds-autocomplete/DSAutocompleteCO.js +2 -0
  26. package/ds-card-v3/DSCardV3CO.js +14 -0
  27. package/ds-card-v3/accordion/DSCardV3.accordion-aria-structure.func.spec.js +41 -0
  28. package/ds-card-v3/disabled/DSCardV3.disabled-non-interactive.func.spec.js +25 -0
  29. package/ds-card-v3/multi-select/DSCardV3.multi-select.aria-grouping.func.spec.js +24 -0
  30. package/ds-card-v3/single-select/DSCardV3.single-select.aria-grouping.func.spec.js +24 -0
  31. package/ds-chat/DSChat.axe-core.func.spec.js +2 -2
  32. package/ds-chat/DSChat.visual.spec.js +3 -3
  33. package/ds-chat/DSChatCO.js +17 -23
  34. package/ds-chat/bubbles/slots/DSChatBubble.slots.axe-core.func.spec.js +24 -0
  35. package/ds-chat/bubbles/slots/DSChatBubble.slots.func.spec.js +49 -0
  36. package/ds-chat/bubbles/slots/DSChatBubble.slots.visual.spec.js +25 -0
  37. package/ds-chat/card/slots/DSChatCard.slots.axe-core.func.spec.js +24 -0
  38. package/ds-chat/card/slots/DSChatCard.slots.func.spec.js +47 -0
  39. package/ds-chat/card/slots/DSChatCard.slots.visual.spec.js +18 -0
  40. package/ds-chat/card/truncated-text/DSChatCard.truncated-text.func.spec.js +32 -0
  41. package/ds-chat/card/truncated-text/DSChatCard.truncated-text.visual.spec.js +26 -0
  42. package/ds-chat/card/with-notification-badges/DSChatCard.with-notification-badges.axe-core.func.spec.js +23 -0
  43. package/ds-chat/card/with-notification-badges/DSChatCard.with-notification-badges.visual.spec.js +17 -0
  44. package/ds-chat/components/BubbleCO.js +46 -3
  45. package/ds-chat/components/CardCO.js +77 -0
  46. package/ds-chat/components/ComposerCO.js +6 -6
  47. package/ds-chat/components/FloatingButtonCO.js +2 -2
  48. package/ds-chat/components/HeaderCO.js +2 -2
  49. package/ds-chat/components/TileCO.js +82 -0
  50. package/ds-chat/components/index.js +3 -2
  51. package/ds-chat/loadmore/DSChat-loadmore.func.spec.js +1 -1
  52. package/{ds-chat-tile → ds-chat/tile}/DSChat-tile.axe-core.func.spec.js +2 -2
  53. package/{ds-chat-tile → ds-chat/tile}/DSChat-tile.func.spec.js +1 -1
  54. package/{ds-chat-tile → ds-chat/tile}/DSChat-tile.visual.spec.js +2 -2
  55. package/{ds-chat-tile → ds-chat/tile}/aria-disabled/DSChat-tile.aria-disabled.axe-core.func.spec.js +2 -2
  56. package/{ds-chat-tile → ds-chat/tile}/aria-disabled/DSChat-tile.aria-disabled.visual.spec.js +1 -1
  57. package/ds-chat/tile/slots/DSChatTile.slots.func.spec.js +53 -0
  58. package/ds-chat/tile/slots/DSChatTile.slots.visual.spec.js +18 -0
  59. package/ds-controlled-form/ds-combobox/DSComboboxCO.js +2 -2
  60. package/ds-controlled-form/ds-controlled-checkbox/DSControlledCheckboxCO.js +1 -1
  61. package/ds-controlled-form/ds-controlled-inputgroup/DSControlledInputGroupCO.js +1 -1
  62. package/ds-data-table-async/DSDataTableCO.js +18 -12
  63. package/ds-data-table-async/basic/DSDataTable.basic.visual.spec.js +1 -1
  64. package/ds-data-table-async/components/FiltersCO.js +1 -1
  65. package/ds-data-table-async/menubutton/DSDataTable.MenuButton.keyboard.func.spec.js +8 -7
  66. package/ds-data-table-async/menubutton/DSDataTable.MenuButton.mouse.func.spec.js +6 -7
  67. package/ds-data-table-async/textwrapping/DSDataTable.header-wrap-alignment.axe-core.func.spec.js +23 -0
  68. package/ds-data-table-async/textwrapping/DSDataTable.header-wrap-alignment.visual.spec.js +106 -0
  69. package/ds-data-table-async/textwrapping/DSDataTable.text-wrap-toolbar.visual.spec.js +27 -0
  70. package/ds-floating-context/DSFloatingContextCO.js +10 -0
  71. package/ds-floating-context/placement/DSFloatingContext.placement.visual.spec.js +48 -0
  72. package/ds-form-combobox-multi/DSComboboxMultiCO.js +11 -3
  73. package/ds-form-combobox-multi/aria-busy-loading/DSComboboxMulti.aria-busy-loading.axe-core.func.spec.js +55 -0
  74. package/ds-form-combobox-multi/aria-busy-loading/DSComboboxMulti.aria-busy-loading.func.spec.js +57 -0
  75. package/ds-form-combobox-multi/aria-disabled/DSComboboxMulti.aria-disabled.visual.spec.js +15 -0
  76. package/ds-form-combobox-multi/disabled/DSComboboxMulti.disabled.axe-core.func.spec.js +24 -0
  77. package/ds-form-combobox-multi/disabled/DSComboboxMulti.disabled.visual.spec.js +22 -0
  78. package/ds-form-combobox-multi/grouped/DSComboboxMulti.grouped.visual.spec.js +42 -0
  79. package/ds-form-combobox-multi/inline/DSComboboxMulti.inline.visual.spec.js +21 -0
  80. package/ds-form-combobox-multi/skeleton/DSComboboxMulti.skeleton.visual.spec.js +25 -0
  81. package/ds-form-combobox-single/DSComboboxSingleCO.js +11 -3
  82. package/ds-form-combobox-single/aria-busy-loading/DSComboboxSingle.aria-busy-loading.axe-core.func.spec.js +49 -0
  83. package/ds-form-combobox-single/aria-busy-loading/DSComboboxSingle.aria-busy-loading.func.spec.js +54 -0
  84. package/ds-form-combobox-single/aria-disabled/DSComboboxSingle.aria-disabled.visual.spec.js +18 -0
  85. package/ds-form-combobox-single/disabled/DSComboboxSingle.disabled.axe-core.func.spec.js +24 -0
  86. package/ds-form-combobox-single/disabled/DSComboboxSingle.disabled.visual.spec.js +22 -0
  87. package/ds-form-combobox-single/grouped/DSComboboxSingle.grouped.visual.spec.js +45 -0
  88. package/ds-form-combobox-single/inline/DSComboboxSingle.inline.visual.spec.js +23 -0
  89. package/ds-form-combobox-single/skeleton/DSComboboxSingle.skeleton.visual.spec.js +25 -0
  90. package/ds-form-date-range-picker/date-segment-aria-labels/DateRangePicker.date-segment-aria-labels.func.spec.js +64 -0
  91. package/ds-form-native-select/NativeSelect.axe-core.func.spec.js +39 -0
  92. package/ds-form-native-select/NativeSelect.visual.spec.js +33 -0
  93. package/ds-form-native-select/NativeSelectCO.js +6 -0
  94. package/ds-form-native-select/option-selection/NativeSelect.option-selection.func.spec.js +25 -0
  95. package/ds-leftnavigation/LeftNavigationCO.js +2 -2
  96. package/ds-menu-button/DSMenuButtonCO.js +23 -0
  97. package/ds-menu-button/slots/DSMenuButton.slots.func.spec.js +40 -0
  98. package/ds-menu-button/slots/DSMenuButton.slots.visual.spec.js +26 -0
  99. package/ds-modal-slide/ModalSlideCO.js +39 -0
  100. package/ds-modal-slide/custom-header/ModalSlide.customHeader.focusRing.visual.spec.js +2 -1
  101. package/ds-modal-slide/slots/ModalSlide.slots.func.spec.js +74 -0
  102. package/ds-modal-slide/slots/ModalSlide.slots.visual.spec.js +27 -0
  103. package/ds-notification-badge/DSNotificationBadge.visual.spec.js +17 -20
  104. package/ds-page-layout/PageLayoutCO.js +4 -4
  105. package/ds-progress-indicator/DSProgressIndicator.axe-core.func.spec.js +2 -0
  106. package/ds-progress-indicator/DSProgressIndicatorCO.js +1 -1
  107. package/ds-shuttle-v2/DSShuttleV2CO.js +11 -1
  108. package/ds-shuttle-v2/explicit-selection-ui/DSShuttleV2.explicit-selection-ui.func.spec.js +37 -0
  109. package/ds-shuttle-v2/explicit-selection-ui/DSShuttleV2.explicit-selection-ui.visual.spec.js +27 -0
  110. package/ds-shuttle-v2/skipped/DSShuttleV2.extra.axe-core.skipped.js +1 -1
  111. package/ds-shuttle-v2/skipped/DSShuttleV2.filter.axe-core.skipped.js +1 -1
  112. package/ds-shuttle-v2/skipped/DSShuttleV2.globalcheckbox.axe-core.skipped.js +1 -1
  113. package/ds-shuttle-v2/skipped/DSShuttleV2.items.axe-core.skipped.js +3 -3
  114. package/ds-shuttle-v2/skipped/DSShuttleV2.skipped.js +5 -5
  115. package/ds-tab-button/DSTabButton.func.spec.js +1 -1
  116. package/ds-tooltip-v3/DSTooltipV3CO.js +21 -0
  117. package/ds-tooltip-v3/aria-tooltip-pattern/DSTooltipV3.aria-tooltip-pattern.axe-core.func.spec.js +23 -0
  118. package/ds-tooltip-v3/aria-tooltip-pattern/DSTooltipV3.aria-tooltip-pattern.func.spec.js +29 -0
  119. package/ds-tooltip-v3/dialog/DSTooltipV3.dialog.func.spec.js +45 -0
  120. package/ds-tooltip-v3/dialog/DSTooltipV3.dialog.visual.spec.js +29 -0
  121. package/ds-treeview/DSTreeViewCO.js +25 -2
  122. package/ds-treeview/dragAndDrop/TreeView-dnd_keyboard.func.spec.js +96 -0
  123. package/package.json +150 -153
  124. package/paths.js +9 -1
  125. package/ds-chat-tile/TileCO.js +0 -35
  126. package/ds-treeview/dragAndDrop/TreeView-dnd_mouse.func.spec.js +0 -61
package/CHANGELOG.md CHANGED
@@ -3,6 +3,216 @@
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.70.0-next.41 (2026-07-02)
7
+
8
+ ### Features
9
+
10
+ - dimsum:: add component-vpat skill for WCAG 2.5 conformance reports [PUI-14236](https://jira.elliemae.io/browse/PUI-14236) ([#8146](https://git.elliemae.io/platform-ui/dimsum/issues/8146)) ([dfe5ca6](https://git.elliemae.io/platform-ui/dimsum/commit/dfe5ca657cd3895c8c98262286cd4cca2238d41e))
11
+
12
+ ## 3.70.0-next.40 (2026-06-29)
13
+
14
+ ### Features
15
+
16
+ - ds-card-v3:: add theming example story in slots [PUI-17890](https://jira.elliemae.io/browse/PUI-17890) ([#8137](https://git.elliemae.io/platform-ui/dimsum/issues/8137)) ([322a618](https://git.elliemae.io/platform-ui/dimsum/commit/322a618b813f5f5261b423f556baadd60844d945))
17
+
18
+ ## 3.70.0-next.39 (2026-06-25)
19
+
20
+ ### Features
21
+
22
+ - dimsum:: added internal diagnostic via fallow and dashboard ([#8075](https://git.elliemae.io/platform-ui/dimsum/issues/8075)) ([ee77882](https://git.elliemae.io/platform-ui/dimsum/commit/ee77882bb5276c0299bd2f3cee59d8e71d462c0a))
23
+
24
+ ## 3.70.0-next.38 (2026-06-24)
25
+
26
+ ### Bug Fixes
27
+
28
+ - ds-shuttle-v2:: re-point skipped axe-core gate comments to [PUI-18632](https://jira.elliemae.io/browse/PUI-18632) ([#8126](https://git.elliemae.io/platform-ui/dimsum/issues/8126)) ([bec49f6](https://git.elliemae.io/platform-ui/dimsum/commit/bec49f6365074807eebbfe4492d4127fb09e3874))
29
+
30
+ ## 3.70.0-next.37 (2026-06-22)
31
+
32
+ ### Features
33
+
34
+ - ds-icons:: new audio fill play/pause [PUI-18631](https://jira.elliemae.io/browse/PUI-18631) ([#8125](https://git.elliemae.io/platform-ui/dimsum/issues/8125)) ([218062c](https://git.elliemae.io/platform-ui/dimsum/commit/218062c219405e757f9cdac622ce2398a519535d))
35
+
36
+ ## 3.70.0-next.36 (2026-06-22)
37
+
38
+ **Note:** Version bump only for package dimsum-e2e-tests
39
+
40
+ ## 3.70.0-next.35 (2026-06-19)
41
+
42
+ ### Bug Fixes
43
+
44
+ - ds-data-table:: header wrap layout — word-break, vertical alignment and reactive paddingStart [PUI-17819](https://jira.elliemae.io/browse/PUI-17819) ([#8119](https://git.elliemae.io/platform-ui/dimsum/issues/8119)) ([af25ca5](https://git.elliemae.io/platform-ui/dimsum/commit/af25ca52f48b68819ff89efb74fa11739dc69d51))
45
+
46
+ ## 3.70.0-next.34 (2026-06-17)
47
+
48
+ ### Features
49
+
50
+ - dimsum:: theme comparasion typography and button [PUI-18210](https://jira.elliemae.io/browse/PUI-18210) ([#8116](https://git.elliemae.io/platform-ui/dimsum/issues/8116)) ([a206f08](https://git.elliemae.io/platform-ui/dimsum/commit/a206f08628b4277771f6a9c7df6e586a0b3437e3))
51
+
52
+ ## 3.70.0-next.33 (2026-06-16)
53
+
54
+ ### Bug Fixes
55
+
56
+ - ds-shuttle-v2:: fixed typescript and exposed a11y examples [PUI-12852](https://jira.elliemae.io/browse/PUI-12852) ([#8111](https://git.elliemae.io/platform-ui/dimsum/issues/8111)) ([a8707eb](https://git.elliemae.io/platform-ui/dimsum/commit/a8707eb9ef9c24c94b373b195f39eea8c0b2d9b3))
57
+
58
+ ## 3.70.0-next.32 (2026-06-16)
59
+
60
+ ### Features
61
+
62
+ - dimsum:: portal layout improvements [PUI-18441](https://jira.elliemae.io/browse/PUI-18441) ([#8110](https://git.elliemae.io/platform-ui/dimsum/issues/8110)) ([43e1a36](https://git.elliemae.io/platform-ui/dimsum/commit/43e1a36fa6c9582b2dcd4f6f5f0e64a645584132))
63
+
64
+ ## 3.70.0-next.31 (2026-06-12)
65
+
66
+ ### Features
67
+
68
+ - storybook:: improve start logging exp ([#8102](https://git.elliemae.io/platform-ui/dimsum/issues/8102)) ([da22cef](https://git.elliemae.io/platform-ui/dimsum/commit/da22cef0401496b9d1d5432703fea28235e7ab6d))
69
+
70
+ ## 3.70.0-next.30 (2026-06-12)
71
+
72
+ ### Features
73
+
74
+ - ds-accordion:: pitfalls updated [PUI-17911](https://jira.elliemae.io/browse/PUI-17911) ([#8100](https://git.elliemae.io/platform-ui/dimsum/issues/8100)) ([f745362](https://git.elliemae.io/platform-ui/dimsum/commit/f74536235b9eedc75113bf39b127ddf3ecd30c51))
75
+
76
+ ## 3.70.0-next.29 (2026-06-11)
77
+
78
+ **Note:** Version bump only for package dimsum-e2e-tests
79
+
80
+ ## 3.70.0-next.28 (2026-06-10)
81
+
82
+ ### Bug Fixes
83
+
84
+ - ds-form-combobox:: style group label per b3-strong spec and add grouped feature stories [PUI-15487](https://jira.elliemae.io/browse/PUI-15487) ([#8083](https://git.elliemae.io/platform-ui/dimsum/issues/8083)) ([a4713b7](https://git.elliemae.io/platform-ui/dimsum/commit/a4713b79b26ed2102a878ce7418031b77fca7746))
85
+
86
+ ## 3.70.0-next.27 (2026-06-08)
87
+
88
+ **Note:** Version bump only for package dimsum-e2e-tests
89
+
90
+ ## 3.70.0-next.26 (2026-06-04)
91
+
92
+ ### Features
93
+
94
+ - ds-card-v3:: dimsum compliance [PUI-17888] (https://jira.elliemae.io/browse/PUI-17888) ([#8079](https://git.elliemae.io/platform-ui/dimsum/issues/8079)) ([4a2695f](https://git.elliemae.io/platform-ui/dimsum/commit/4a2695f012d92e25cfd779c90fc32303c5bc0c7f))
95
+
96
+ ## 3.70.0-next.25 (2026-06-02)
97
+
98
+ **Note:** Version bump only for package dimsum-e2e-tests
99
+
100
+ ## 3.70.0-next.24 (2026-06-02)
101
+
102
+ ### Bug Fixes
103
+
104
+ - ds-form-native-select:: fix disabled color contrast [PUI-14617](https://jira.elliemae.io/browse/PUI-14617) ([#8070](https://git.elliemae.io/platform-ui/dimsum/issues/8070)) ([fcbf80e](https://git.elliemae.io/platform-ui/dimsum/commit/fcbf80efbd12904a003cdc3c69ff4be40d3777c8))
105
+
106
+ ## 3.70.0-next.23 (2026-06-02)
107
+
108
+ ### Bug Fixes
109
+
110
+ - ds-shuttle-v2:: Missing current selection announcement [PUI-15537](https://jira.elliemae.io/browse/PUI-15537) ([#8067](https://git.elliemae.io/platform-ui/dimsum/issues/8067)) ([614de10](https://git.elliemae.io/platform-ui/dimsum/commit/614de10c3c8ddf1c4f708b5195df6e025dc40c06))
111
+
112
+ ## 3.70.0-next.22 (2026-06-01)
113
+
114
+ ### Features
115
+
116
+ - dimsum:: portal final touches to search algorithm and load times [PUI-18454](https://jira.elliemae.io/browse/PUI-18454) ([#8065](https://git.elliemae.io/platform-ui/dimsum/issues/8065)) ([4f70bfd](https://git.elliemae.io/platform-ui/dimsum/commit/4f70bfd3a300de1baa3e0761e5b99c7ff88d968f))
117
+
118
+ ## 3.70.0-next.21 (2026-06-01)
119
+
120
+ **Note:** Version bump only for package dimsum-e2e-tests
121
+
122
+ ## 3.70.0-next.20 (2026-06-01)
123
+
124
+ ### Bug Fixes
125
+
126
+ - environment:: fix CO URL routing for ds-chat [PUI-18039](https://jira.elliemae.io/browse/PUI-18039) ([#8064](https://git.elliemae.io/platform-ui/dimsum/issues/8064)) ([ad7ba54](https://git.elliemae.io/platform-ui/dimsum/commit/ad7ba54dc4aafdcff00aeb17b20a39f3cd9b458b))
127
+
128
+ ## 3.70.0-next.19 (2026-05-28)
129
+
130
+ ### Features
131
+
132
+ - ds-chat-empty-state:: slot system constants module, test pillars, deviations register, promote storybook to Chat section [PUI-17908](https://jira.elliemae.io/browse/PUI-17908) ([#8062](https://git.elliemae.io/platform-ui/dimsum/issues/8062)) ([08ed09e](https://git.elliemae.io/platform-ui/dimsum/commit/08ed09e95484763ec0fdddc81d1a8124a3918333))
133
+
134
+ ## 3.70.0-next.18 (2026-05-27)
135
+
136
+ ### Features
137
+
138
+ - ds-chat-message-delimeter:: bring package to full Dimsum compliance — slot system, constants module, test pillars, deviations register, promote storybook to Chat section [PUI-17908](https://jira.elliemae.io/browse/PUI-17908) ([#8061](https://git.elliemae.io/platform-ui/dimsum/issues/8061)) ([d6cd0f9](https://git.elliemae.io/platform-ui/dimsum/commit/d6cd0f93543645f14d0792f78cf4ecfccf1b9bef))
139
+
140
+ ## 3.70.0-next.17 (2026-05-27)
141
+
142
+ ### Features
143
+
144
+ - dimsum:: new portal now has support for searching content [PUI-18454](https://jira.elliemae.io/browse/PUI-18454) ([#8059](https://git.elliemae.io/platform-ui/dimsum/issues/8059)) ([405dbe5](https://git.elliemae.io/platform-ui/dimsum/commit/405dbe5203782b4019c3d31777ca9a525f54518d))
145
+
146
+ ## 3.70.0-next.16 (2026-05-25)
147
+
148
+ **Note:** Version bump only for package dimsum-e2e-tests
149
+
150
+ ## 3.70.0-next.15 (2026-05-22)
151
+
152
+ ### Features
153
+
154
+ - dimsum:: created open-spec dimsum wrapper for monorepo operation [PUI-18489](https://jira.elliemae.io/browse/PUI-18489) ([#8045](https://git.elliemae.io/platform-ui/dimsum/issues/8045)) ([0c8e422](https://git.elliemae.io/platform-ui/dimsum/commit/0c8e422cb87de489439faa38eab4129a6ebf8299))
155
+
156
+ ## 3.70.0-next.14 (2026-05-21)
157
+
158
+ ### Features
159
+
160
+ - ds-chat:: add visual and functional tests for slot support [PUI-17908](https://jira.elliemae.io/browse/PUI-17908) ([#8042](https://git.elliemae.io/platform-ui/dimsum/issues/8042)) ([e1fe993](https://git.elliemae.io/platform-ui/dimsum/commit/e1fe993dca1b73f003daa87558fd75097d2bb79a))
161
+
162
+ ## 3.70.0-next.13 (2026-05-19)
163
+
164
+ ### Bug Fixes
165
+
166
+ - ds-data-table:: clickout side filters improve [PUI-18469](https://jira.elliemae.io/browse/PUI-18469) ([#8035](https://git.elliemae.io/platform-ui/dimsum/issues/8035)) ([b6d1549](https://git.elliemae.io/platform-ui/dimsum/commit/b6d1549b9b369692ab93487ba24a37216f4738de))
167
+
168
+ ## 3.70.0-next.12 (2026-05-15)
169
+
170
+ ### Features
171
+
172
+ - ds-chat-floating-button:: dimsum compliance and slots support [PUI-17908](https://jira.elliemae.io/browse/PUI-17908) ([#8032](https://git.elliemae.io/platform-ui/dimsum/issues/8032)) ([9bc4ae8](https://git.elliemae.io/platform-ui/dimsum/commit/9bc4ae814b9276d369688d4ab4e0150b3e7cc09a))
173
+
174
+ ## 3.70.0-next.11 (2026-05-14)
175
+
176
+ ### Bug Fixes
177
+
178
+ - ds-combobox-multi:: combobox aria busy e2e [PUI-18445](https://jira.elliemae.io/browse/PUI-18445) ([#8027](https://git.elliemae.io/platform-ui/dimsum/issues/8027)) ([cdbff4e](https://git.elliemae.io/platform-ui/dimsum/commit/cdbff4eb2a09af6de888dc8a13af5027836bd0a4))
179
+
180
+ ## 3.70.0-next.10 (2026-05-14)
181
+
182
+ ### Features
183
+
184
+ - ds-chat-sidebar:: dimsum compliance and slots support [PUI-17908](https://jira.elliemae.io/browse/PUI-17908) ([#8030](https://git.elliemae.io/platform-ui/dimsum/issues/8030)) ([0377613](https://git.elliemae.io/platform-ui/dimsum/commit/0377613123d62602a8128d754f201f45a4c3f396))
185
+
186
+ ## 3.70.0-next.9 (2026-05-12)
187
+
188
+ ### Features
189
+
190
+ - ds-floating-context:: external ref feature [PUI-18440](https://jira.elliemae.io/browse/PUI-18440) ([#8023](https://git.elliemae.io/platform-ui/dimsum/issues/8023)) ([ee46ed5](https://git.elliemae.io/platform-ui/dimsum/commit/ee46ed5163f1771ff6dee22ad0654131fd13ff56))
191
+
192
+ ## 3.70.0-next.8 (2026-05-12)
193
+
194
+ ### Bug Fixes
195
+
196
+ - ds-chat-bubble:: add missing export in test ([57d294a](https://git.elliemae.io/platform-ui/dimsum/commit/57d294aef0b2739cb2ac0afe673d9c4ccfe0e718))
197
+
198
+ ## 3.70.0-next.7 (2026-05-11)
199
+
200
+ ### Bug Fixes
201
+
202
+ - ds-modal-slide:: added e2e test for slots [PUI-18428](https://jira.elliemae.io/browse/PUI-18428) ([#8016](https://git.elliemae.io/platform-ui/dimsum/issues/8016)) ([8fa99f8](https://git.elliemae.io/platform-ui/dimsum/commit/8fa99f8e14fe7d8b1fedd916e392761f2188904e))
203
+
204
+ ## 3.70.0-next.6 (2026-05-11)
205
+
206
+ ### Bug Fixes
207
+
208
+ - ds-form-combobox:: replace racing assertive live region with aria-busy + polite count [PUI-18034](https://jira.elliemae.io/browse/PUI-18034) ([#8018](https://git.elliemae.io/platform-ui/dimsum/issues/8018)) ([6e02644](https://git.elliemae.io/platform-ui/dimsum/commit/6e02644e2c17a53c6ca87737a6e10b59adce57fb))
209
+
210
+ ## 3.70.0-next.5 (2026-05-08)
211
+
212
+ ### Features
213
+
214
+ - ds-popperjs:: deprecated & migration to fc [PUI-18079](https://jira.elliemae.io/browse/PUI-18079) ([#8000](https://git.elliemae.io/platform-ui/dimsum/issues/8000)) ([c5f1d5c](https://git.elliemae.io/platform-ui/dimsum/commit/c5f1d5c0163f831b33327e5783d26380a9f2798a))
215
+
6
216
  ## 3.70.0-next.4 (2026-05-06)
7
217
 
8
218
  ### Bug Fixes
@@ -81,6 +81,12 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
81
81
  if (errorOnGo) throw errorOnGo;
82
82
  });
83
83
  it('01: should display accordion with global height, not trimmed', async () => {
84
+ const addRow = await $('[data-testid="add-row"]');
85
+ await addRow.click();
86
+ await addRow.click();
87
+ await addRow.click();
88
+ const content = await DSAccordionCO.getContents(0);
89
+ await content.waitForDisplayed();
84
90
  const snapshot = await browser.checkSnapshot(DSAccordionCO.snapshotPath('accordion-globalheight'));
85
91
  await expect(snapshot).toEqual(0);
86
92
  });
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable import/no-relative-packages */
2
- import { PATH_E2E_ACCORDION } from '../paths';
2
+ import { PATH_E2E_ACCORDION, PATH_E2E_ACCORDION_PITFALLS } from '../paths';
3
3
  import { PageObject, Urlbuilder, getElementByIndex } from '../helpers';
4
4
 
5
5
  export default class DSAccordionCO extends PageObject {
@@ -20,7 +20,9 @@ export default class DSAccordionCO extends PageObject {
20
20
 
21
21
  static tooltip = new Urlbuilder(PATH_E2E_ACCORDION, 'tooltip');
22
22
 
23
- static inputInside = new Urlbuilder(PATH_E2E_ACCORDION, 'PUI-9261-input-inside');
23
+ static inputInside = new Urlbuilder(PATH_E2E_ACCORDION, 'pui-9261-input-inside');
24
+
25
+ static controlled = new Urlbuilder(PATH_E2E_ACCORDION, 'controlled-test');
24
26
 
25
27
  static datepickerInside = new Urlbuilder(PATH_E2E_ACCORDION, 'actionable-within');
26
28
 
@@ -34,7 +36,7 @@ export default class DSAccordionCO extends PageObject {
34
36
 
35
37
  static keepContentURL = new Urlbuilder(PATH_E2E_ACCORDION, 'keep-content-mounted');
36
38
 
37
- static focusOnItemURL = new Urlbuilder(PATH_E2E_ACCORDION, 'focus-on-item');
39
+ static focusOnItemURL = new Urlbuilder(PATH_E2E_ACCORDION_PITFALLS, 'focus-on-item-test');
38
40
 
39
41
  static applyAriaDisabled = new Urlbuilder(PATH_E2E_ACCORDION, 'apply-aria-disabled-test');
40
42
 
@@ -105,6 +107,12 @@ export default class DSAccordionCO extends PageObject {
105
107
  static getAccordionItemHeaderContainerByIndex = async (index) =>
106
108
  getElementByIndex(this.getAccordionItemHeaderContainers, index);
107
109
 
110
+ static getAccordionItemHeaderCustomActionsContainers = async () =>
111
+ $$('[data-testid="ds-accordion-item-header-custom-actions-container"]');
112
+
113
+ static getAccordionItemHeaderCustomActionsContainerByIndex = async (index) =>
114
+ getElementByIndex(this.getAccordionItemHeaderCustomActionsContainers, index);
115
+
108
116
  // slots
109
117
 
110
118
  static async getAccordionContainerSlotByIndex(index = 0) {
@@ -0,0 +1,23 @@
1
+ import DSAccordionCO from '../DSAccordionCO';
2
+
3
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
4
+ // New coverage for the ControlledTest story (previously untested).
5
+ describe('PUI-18650 - Accordion, controlled -func', () => {
6
+ before('loading page', async () => {
7
+ const errorOnGo = await DSAccordionCO.controlled.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ });
10
+ it('01: single-open: opening another item collapses the previously open one', async () => {
11
+ await expect(await DSAccordionCO.getAccordionHeader(0)).toHaveAttribute('aria-expanded', 'true');
12
+ await (await DSAccordionCO.getAccordionHeader(1)).click();
13
+ await expect(await DSAccordionCO.getAccordionHeader(1)).toHaveAttribute('aria-expanded', 'true');
14
+ await expect(await DSAccordionCO.getAccordionHeader(0)).toHaveAttribute('aria-expanded', 'false');
15
+ });
16
+ it('02: multiple-open: opening two items keeps both expanded', async () => {
17
+ await (await DSAccordionCO.getAccordionHeader(3)).click();
18
+ await (await DSAccordionCO.getAccordionHeader(4)).click();
19
+ await expect(await DSAccordionCO.getAccordionHeader(3)).toHaveAttribute('aria-expanded', 'true');
20
+ await expect(await DSAccordionCO.getAccordionHeader(4)).toHaveAttribute('aria-expanded', 'true');
21
+ });
22
+ });
23
+ }
@@ -0,0 +1,49 @@
1
+ import DSAccordionCO from '../DSAccordionCO';
2
+
3
+ if (
4
+ (!browser.capabilities['ice:options'].isPhone &&
5
+ !browser.capabilities['ice:options'].isTablet &&
6
+ browser.capabilities.browserName === 'chrome') ||
7
+ browser.capabilities.browserName === 'Chrome'
8
+ ) {
9
+ // Tests for the DOM structural fix introduced in PUI-17912
10
+ // (custom action buttons moved out of role="heading" container into a sibling)
11
+ describe('PUI-18621 - DSAccordion:: heading container structure after renderCustomActions fix - func', () => {
12
+ before('loading page', async () => {
13
+ const errorOnGo = await DSAccordionCO.headerControls.go();
14
+ if (errorOnGo) throw errorOnGo;
15
+ });
16
+
17
+ it('01: heading container should contain only the toggle button and no other interactive elements', async () => {
18
+ const headingContainer = await DSAccordionCO.getAccordionItemHeaderContainerByIndex(0);
19
+ await expect(headingContainer).toHaveAttribute('role', 'heading');
20
+ const buttonsInsideHeading = await headingContainer.$$('button');
21
+ await expect(buttonsInsideHeading.length).toBe(1);
22
+ });
23
+
24
+ it('02: custom actions container should exist outside the heading container', async () => {
25
+ const customActionsContainer = await DSAccordionCO.getAccordionItemHeaderCustomActionsContainerByIndex(0);
26
+ await expect(customActionsContainer).toExist();
27
+ });
28
+
29
+ it('03: action buttons in custom actions container should reflect correct enabled/disabled state', async () => {
30
+ const enabledContainer = await DSAccordionCO.getAccordionItemHeaderCustomActionsContainerByIndex(0);
31
+ const enabledButton = await enabledContainer.$('[data-testid="ds-button"]');
32
+ await expect(enabledButton).toBeDisplayed();
33
+ await expect(enabledButton).toBeEnabled();
34
+
35
+ const disabledContainer = await DSAccordionCO.getAccordionItemHeaderCustomActionsContainerByIndex(2);
36
+ const disabledButton = await disabledContainer.$('[data-testid="ds-button"]');
37
+ await expect(disabledButton).toBeDisplayed();
38
+ await expect(disabledButton).not.toBeEnabled();
39
+ });
40
+
41
+ it('04: toolbar trigger in custom actions should open dropdown menu on click', async () => {
42
+ const toolbar = await DSAccordionCO.getToolbarByIndex(0);
43
+ await toolbar.click();
44
+ const firstMenuOption = await $('*=Login');
45
+ await firstMenuOption.waitForDisplayed();
46
+ await expect(firstMenuOption).toBeDisplayed();
47
+ });
48
+ });
49
+ }
@@ -0,0 +1,17 @@
1
+ import DSAccordionCO from '../DSAccordionCO';
2
+
3
+ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
4
+ // New coverage for the PUI9261InputInside story (previously untested).
5
+ describe('PUI-18651 - Accordion, input inside content -func', () => {
6
+ before('loading page', async () => {
7
+ const errorOnGo = await DSAccordionCO.inputInside.go();
8
+ if (errorOnGo) throw errorOnGo;
9
+ });
10
+ it('01: should type into an input rendered inside the open accordion item', async () => {
11
+ const input = await $('[data-testid="task-name"] input');
12
+ await input.waitForDisplayed();
13
+ await input.setValue('Test task');
14
+ await expect(input).toHaveValue('Test task');
15
+ });
16
+ });
17
+ }
@@ -0,0 +1,135 @@
1
+ /* eslint-disable max-lines */
2
+ import { Key } from 'webdriverio';
3
+ import DSAccordionNativeCO from './DSAccordionNativeCO';
4
+ import { axeCoreCheck } from '../helpers';
5
+
6
+ if (
7
+ (!browser.capabilities['ice:options'].isPhone &&
8
+ !browser.capabilities['ice:options'].isTablet &&
9
+ browser.capabilities.browserName === 'chrome') ||
10
+ browser.capabilities.browserName === 'Chrome'
11
+ ) {
12
+ describe('PUI-18083 - AccordionNative, header controls & subtitle -AxeCore', () => {
13
+ before('loading page', async () => {
14
+ const errorOnGo = await DSAccordionNativeCO.headerControls.go();
15
+ if (errorOnGo) throw errorOnGo;
16
+ });
17
+ it('01: should display accordion expanded with header props (and subtitle) and pass axecore scan', async () => {
18
+ await (await DSAccordionNativeCO.getAccordionHeader(1)).waitForDisplayed();
19
+ await (await DSAccordionNativeCO.getAccordionHeader(1)).click();
20
+ const content = await DSAccordionNativeCO.getContents(1);
21
+ await content.waitForDisplayed();
22
+ const result = await axeCoreCheck();
23
+ expect(result.length).toBe(0);
24
+ });
25
+ it('02: should display accordion with open toolbar and pass axecore scan', async () => {
26
+ await (await DSAccordionNativeCO.getToolbarByIndex(1)).click();
27
+ const result = await axeCoreCheck();
28
+ expect(result.length).toBe(0);
29
+ });
30
+ });
31
+
32
+ describe('PUI-18083 - AccordionNative, basic -AxeCore', () => {
33
+ before('loading page', async () => {
34
+ const errorOnGo = await DSAccordionNativeCO.basicURL.go();
35
+ if (errorOnGo) throw errorOnGo;
36
+ });
37
+ it('01: should display the accordion closed and pass axecore test', async () => {
38
+ await (await DSAccordionNativeCO.getAccordionHeader(1)).waitForDisplayed();
39
+ const result = await axeCoreCheck();
40
+ expect(result.length).toBe(0);
41
+ });
42
+ it('02: should open the accordion and pass axecore test', async () => {
43
+ await (await DSAccordionNativeCO.getAccordionHeader(1)).click();
44
+ const content = await DSAccordionNativeCO.getContents(1);
45
+ await content.waitForDisplayed();
46
+ const result = await axeCoreCheck();
47
+ expect(result.length).toBe(0);
48
+ });
49
+ });
50
+
51
+ describe('PUI-18083 - AccordionNative, Disabled -AxeCore', () => {
52
+ before('loading page', async () => {
53
+ const errorOnGo = await DSAccordionNativeCO.disabled.go();
54
+ if (errorOnGo) throw errorOnGo;
55
+ });
56
+ it('01: should display the disabled accordion and pass axecore test', async () => {
57
+ await (await DSAccordionNativeCO.getAccordionHeader(1)).waitForDisplayed();
58
+ const result = await axeCoreCheck();
59
+ expect(result.length).toBe(0);
60
+ });
61
+ });
62
+
63
+ describe('PUI-18083 - AccordionNative, multiple -AxeCore', () => {
64
+ before('loading page', async () => {
65
+ const errorOnGo = await DSAccordionNativeCO.multipleURL.go();
66
+ if (errorOnGo) throw errorOnGo;
67
+ });
68
+ it('01: should open the second accordion without closing the first and pass axecore test', async () => {
69
+ await (await DSAccordionNativeCO.getAccordionHeader(1)).click();
70
+ await (await DSAccordionNativeCO.getAccordionHeader(0)).click();
71
+ const firstContent = await DSAccordionNativeCO.getContents(0);
72
+ const secondContent = await DSAccordionNativeCO.getContents(1);
73
+ await firstContent.waitForDisplayed();
74
+ await secondContent.waitForDisplayed();
75
+ const result = await axeCoreCheck();
76
+ expect(result.length).toBe(0);
77
+ });
78
+ });
79
+
80
+ describe('PUI-18083 - AccordionNative, Custom actions with hooks -AxeCore', () => {
81
+ before('loading page', async () => {
82
+ const errorOnGo = await DSAccordionNativeCO.customActionHooks.go();
83
+ if (errorOnGo) throw errorOnGo;
84
+ });
85
+ it('01: should have custom actions rendered and pass axecore scan', async () => {
86
+ const customAction1text = await DSAccordionNativeCO.getButtonsByIndex(0);
87
+ const customAction2text = await DSAccordionNativeCO.getButtonsByIndex(1);
88
+ const customAction3text = await DSAccordionNativeCO.getButtonsByIndex(2);
89
+ await customAction1text.waitForDisplayed();
90
+ await customAction2text.waitForDisplayed();
91
+ await customAction3text.waitForDisplayed();
92
+ const result = await axeCoreCheck();
93
+ expect(result.length).toBe(0);
94
+ });
95
+ });
96
+
97
+ describe('PUI-18083 - AccordionNative, Actionable within -AxeCore', () => {
98
+ before('loading page', async () => {
99
+ const errorOnGo = await DSAccordionNativeCO.datepickerInside.go();
100
+ if (errorOnGo) throw errorOnGo;
101
+ });
102
+ it('01: should input focused within accordion and pass axecore scan', async () => {
103
+ await browser.keys(Key.Tab);
104
+ await browser.keys(Key.Tab);
105
+ const result = await axeCoreCheck();
106
+ expect(result.length).toBe(0);
107
+ });
108
+ });
109
+
110
+ describe('PUI-18083 - AccordionNative, keep content mounted -a11y', () => {
111
+ before('loading page', async () => {
112
+ const errorOnGo = await DSAccordionNativeCO.keepContentURL.go();
113
+ if (errorOnGo) throw errorOnGo;
114
+ });
115
+ it('01: should be a11y compliant with hidden accordion content', async () => {
116
+ const accordionContent = await $('[data-testid="accordion-native-keep-content"]');
117
+ await accordionContent.waitForExist();
118
+ const result = await axeCoreCheck();
119
+ expect(result.length).toBe(0);
120
+ });
121
+ });
122
+
123
+ describe('PUI-18083 - AccordionNative, Focus with useRef -a11y', () => {
124
+ before('loading page', async () => {
125
+ const errorOnGo = await DSAccordionNativeCO.focusOnItemURL.go();
126
+ if (errorOnGo) throw errorOnGo;
127
+ });
128
+ it('01: should be a11y compliant with useRef', async () => {
129
+ const secondAccordion = await DSAccordionNativeCO.getAccordionHeader(1);
130
+ await secondAccordion.waitForDisplayed();
131
+ const result = await axeCoreCheck();
132
+ expect(result.length).toBe(0);
133
+ });
134
+ });
135
+ }