@sapudex/web-components 2.1.1 → 2.3.0

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 (384) hide show
  1. package/bundle.esm.js +1 -0
  2. package/cypress/fixtures/event-ribbon-links.ts +5 -0
  3. package/cypress/specs/Accordion.cy.tsx +1 -2
  4. package/cypress/specs/AccordionItem.cy.tsx +1 -1
  5. package/cypress/specs/Avatar.cy.tsx +1 -1
  6. package/cypress/specs/AvatarGroup.cy.tsx +1 -2
  7. package/cypress/specs/Badge.cy.tsx +1 -1
  8. package/cypress/specs/CountrySelector.cy.tsx +10 -4
  9. package/cypress/specs/EventRibbon.cy.tsx +110 -0
  10. package/cypress/specs/Footer.cy.tsx +1 -1
  11. package/cypress/specs/ListItem.cy.tsx +5 -5
  12. package/cypress/specs/PhoneNumberField.cy.tsx +4 -2
  13. package/cypress/specs/Review.cy.tsx +1 -3
  14. package/cypress/specs/ReviewItem.cy.tsx +1 -1
  15. package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +129 -131
  16. package/cypress/specs/SecondaryNavigationMobile.cy.tsx +27 -38
  17. package/cypress/specs/SelectBox.cy.tsx +93 -88
  18. package/cypress/specs/Slider.cy.tsx +5 -4
  19. package/cypress/specs/StatusBadge.cy.tsx +1 -1
  20. package/cypress/specs/StatusMessage.cy.tsx +1 -1
  21. package/cypress/specs/Switch.cy.tsx +1 -2
  22. package/cypress/specs/Table.cy.tsx +1 -9
  23. package/cypress/specs/Tag.cy.tsx +1 -1
  24. package/cypress/specs/TagGroup.cy.tsx +1 -2
  25. package/cypress/specs/TextField.cy.tsx +1 -1
  26. package/cypress/specs/Textarea.cy.tsx +1 -1
  27. package/cypress/specs/Toast.cy.tsx +1 -1
  28. package/cypress/specs/Tooltip.cy.tsx +1 -2
  29. package/cypress/specs/TruncatedText.cy.tsx +2 -1
  30. package/cypress/specs/Upload.cy.tsx +1 -2
  31. package/cypress/specs/UploadItem.cy.tsx +1 -1
  32. package/cypress/specs/Wizard.cy.tsx +7 -4
  33. package/cypress/support/component-imports.instrumented.ts +91 -0
  34. package/cypress/support/component-imports.src.ts +91 -0
  35. package/cypress/support/component.ts +1 -1
  36. package/cypress.config.ts +6 -0
  37. package/dist/AssetsVariables.js +4 -0
  38. package/dist/AssetsVariables.js.map +1 -1
  39. package/dist/Badge.d.ts +2 -2
  40. package/dist/Badge.js +4 -4
  41. package/dist/Badge.js.map +1 -1
  42. package/dist/Breadcrumbs.d.ts +1 -0
  43. package/dist/Breadcrumbs.js +11 -1
  44. package/dist/Breadcrumbs.js.map +1 -1
  45. package/dist/Button.d.ts +19 -1
  46. package/dist/Button.js +15 -1
  47. package/dist/Button.js.map +1 -1
  48. package/dist/Checkbox.d.ts +1 -0
  49. package/dist/Checkbox.js +3 -0
  50. package/dist/Checkbox.js.map +1 -1
  51. package/dist/ControlButton.d.ts +2 -1
  52. package/dist/ControlButton.js +2 -1
  53. package/dist/ControlButton.js.map +1 -1
  54. package/dist/CountrySelector.d.ts +2 -2
  55. package/dist/CountrySelector.js +3 -1
  56. package/dist/CountrySelector.js.map +1 -1
  57. package/dist/DatePicker.d.ts +2 -2
  58. package/dist/DatePicker.js +2 -1
  59. package/dist/DatePicker.js.map +1 -1
  60. package/dist/EventRibbon.d.ts +80 -0
  61. package/dist/EventRibbon.js +111 -0
  62. package/dist/EventRibbon.js.map +1 -0
  63. package/dist/EventRibbonTemplate.d.ts +2 -0
  64. package/dist/EventRibbonTemplate.js +7 -0
  65. package/dist/EventRibbonTemplate.js.map +1 -0
  66. package/dist/HeroBanner.d.ts +1 -1
  67. package/dist/InputGroup.d.ts +5 -2
  68. package/dist/InputGroup.js +6 -0
  69. package/dist/InputGroup.js.map +1 -1
  70. package/dist/ListItem.d.ts +3 -2
  71. package/dist/ListItem.js +2 -2
  72. package/dist/ListItem.js.map +1 -1
  73. package/dist/MastheadItem.js +1 -1
  74. package/dist/MastheadItem.js.map +1 -1
  75. package/dist/MastheadShell.d.ts +4 -1
  76. package/dist/MastheadShell.js +21 -5
  77. package/dist/MastheadShell.js.map +1 -1
  78. package/dist/MediaPlayer.d.ts +2 -1
  79. package/dist/MediaPlayer.js.map +1 -1
  80. package/dist/MediaPlayerYoutube.d.ts +2 -1
  81. package/dist/MediaPlayerYoutube.js.map +1 -1
  82. package/dist/Pagination.d.ts +18 -4
  83. package/dist/Pagination.js +33 -31
  84. package/dist/Pagination.js.map +1 -1
  85. package/dist/PhoneNumberField.d.ts +10 -7
  86. package/dist/PhoneNumberField.js +8 -2
  87. package/dist/PhoneNumberField.js.map +1 -1
  88. package/dist/ProgressBar.d.ts +2 -2
  89. package/dist/ProgressBar.js +6 -6
  90. package/dist/ProgressBar.js.map +1 -1
  91. package/dist/RadioButton.d.ts +2 -2
  92. package/dist/RadioButton.js +6 -6
  93. package/dist/RadioButton.js.map +1 -1
  94. package/dist/Search.d.ts +0 -1
  95. package/dist/Search.js +1 -3
  96. package/dist/Search.js.map +1 -1
  97. package/dist/SearchableListBase.d.ts +9 -0
  98. package/dist/SearchableListBase.js +10 -2
  99. package/dist/SearchableListBase.js.map +1 -1
  100. package/dist/SecondaryNavigation.d.ts +4 -1
  101. package/dist/SecondaryNavigation.js +38 -10
  102. package/dist/SecondaryNavigation.js.map +1 -1
  103. package/dist/SecondaryNavigationItem.d.ts +10 -0
  104. package/dist/SecondaryNavigationItem.js +19 -0
  105. package/dist/SecondaryNavigationItem.js.map +1 -1
  106. package/dist/SecondaryNavigationItemBase.d.ts +1 -0
  107. package/dist/SecondaryNavigationItemBase.js +4 -0
  108. package/dist/SecondaryNavigationItemBase.js.map +1 -1
  109. package/dist/SecondaryNavigationSubItem.d.ts +0 -1
  110. package/dist/SecondaryNavigationSubItem.js +0 -4
  111. package/dist/SecondaryNavigationSubItem.js.map +1 -1
  112. package/dist/SegmentedButton.d.ts +1 -1
  113. package/dist/SegmentedButton.js +1 -1
  114. package/dist/SegmentedButton.js.map +1 -1
  115. package/dist/SegmentedButtonItem.d.ts +1 -1
  116. package/dist/SegmentedButtonItem.js +2 -2
  117. package/dist/SegmentedButtonItem.js.map +1 -1
  118. package/dist/StatusBadge.d.ts +8 -3
  119. package/dist/StatusBadge.js +9 -1
  120. package/dist/StatusBadge.js.map +1 -1
  121. package/dist/StepInput.d.ts +3 -3
  122. package/dist/StepInput.js.map +1 -1
  123. package/dist/TableCellBase.d.ts +2 -2
  124. package/dist/TableCellBase.js.map +1 -1
  125. package/dist/Tag.d.ts +2 -2
  126. package/dist/Tag.js +4 -4
  127. package/dist/Tag.js.map +1 -1
  128. package/dist/TextArea.d.ts +2 -2
  129. package/dist/TextArea.js +9 -9
  130. package/dist/TextArea.js.map +1 -1
  131. package/dist/TextField.d.ts +9 -2
  132. package/dist/TextField.js +8 -5
  133. package/dist/TextField.js.map +1 -1
  134. package/dist/Toast.js +1 -1
  135. package/dist/Toast.js.map +1 -1
  136. package/dist/Upload.d.ts +1 -1
  137. package/dist/Upload.js +1 -1
  138. package/dist/Upload.js.map +1 -1
  139. package/dist/UploadItem.d.ts +3 -3
  140. package/dist/UploadItem.js +9 -9
  141. package/dist/UploadItem.js.map +1 -1
  142. package/dist/Wizard.d.ts +20 -1
  143. package/dist/Wizard.js +22 -9
  144. package/dist/Wizard.js.map +1 -1
  145. package/dist/WizardTemplate.js +1 -1
  146. package/dist/WizardTemplate.js.map +1 -1
  147. package/dist/assets/InputSuggestions-BgbbJ4tc.js +2 -0
  148. package/dist/assets/{ListItemStandardExpandableTextTemplate-CLBtdbBK.js → ListItemStandardExpandableTextTemplate-onAnn1Tj.js} +2 -2
  149. package/dist/assets/bundle.esm-CwUfibNQ.js +389 -0
  150. package/dist/assets/parameters-bundle.css-1GGBOW8m.js +2 -0
  151. package/dist/assets/parameters-bundle.css-A9eeRg2R.js +2 -0
  152. package/dist/assets/parameters-bundle.css-COBI_9-U.js +2 -0
  153. package/dist/assets/parameters-bundle.css-CgAoZ-Ir.js +2 -0
  154. package/dist/assets/parameters-bundle.css-DuFHHRNK.js +2 -0
  155. package/dist/assets/parameters-bundle.css-Pf68NO0T.js +2 -0
  156. package/dist/assets/parameters-bundle.css-aX_t_-9o.js +2 -0
  157. package/dist/assets/parameters-bundle.css-rNSryFKH.js +2 -0
  158. package/dist/css/themes/Breadcrumbs.css +1 -1
  159. package/dist/css/themes/Button.css +1 -1
  160. package/dist/css/themes/DatePickerPopover.css +1 -1
  161. package/dist/css/themes/EventRibbon.css +1 -0
  162. package/dist/css/themes/ListItem.css +1 -1
  163. package/dist/css/themes/MastheadCountrySelector.css +1 -1
  164. package/dist/css/themes/MastheadItem.css +1 -1
  165. package/dist/css/themes/MastheadShell.css +1 -1
  166. package/dist/css/themes/Modal.css +1 -1
  167. package/dist/css/themes/Pagination.css +1 -1
  168. package/dist/css/themes/RatingIndicator.css +1 -1
  169. package/dist/css/themes/Search.css +1 -1
  170. package/dist/css/themes/SideNavigationItem.css +1 -1
  171. package/dist/css/themes/SideNavigationSubItem.css +1 -1
  172. package/dist/css/themes/Slider.css +1 -1
  173. package/dist/css/themes/TextField.css +1 -1
  174. package/dist/custom-elements-internal.json +471 -37
  175. package/dist/custom-elements.json +442 -35
  176. package/dist/data/CountryListISO3166.d.ts +13 -4
  177. package/dist/data/CountryListISO3166.js +8 -0
  178. package/dist/data/CountryListISO3166.js.map +1 -1
  179. package/dist/generated/json-imports/Themes-node.d.ts +1 -0
  180. package/dist/generated/json-imports/Themes-node.js +19 -0
  181. package/dist/generated/json-imports/Themes-node.js.map +1 -0
  182. package/dist/generated/json-imports/i18n-node.d.ts +1 -0
  183. package/dist/generated/json-imports/i18n-node.js +82 -0
  184. package/dist/generated/json-imports/i18n-node.js.map +1 -0
  185. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
  186. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
  187. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  188. package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
  189. package/dist/generated/templates/PaginationTemplate.lit.js +1 -1
  190. package/dist/generated/templates/PaginationTemplate.lit.js.map +1 -1
  191. package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js +2 -2
  192. package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +1 -1
  193. package/dist/generated/templates/SearchTemplate.lit.js +3 -3
  194. package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
  195. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +2 -2
  196. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -1
  197. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +1 -1
  198. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
  199. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  200. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  201. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  202. package/dist/generated/themes/Button.css.d.ts +1 -1
  203. package/dist/generated/themes/Button.css.js +1 -1
  204. package/dist/generated/themes/Button.css.js.map +1 -1
  205. package/dist/generated/themes/DatePickerPopover.css.d.ts +1 -1
  206. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  207. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  208. package/dist/generated/themes/EventRibbon.css.d.ts +2 -0
  209. package/dist/generated/themes/EventRibbon.css.js +8 -0
  210. package/dist/generated/themes/EventRibbon.css.js.map +1 -0
  211. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  212. package/dist/generated/themes/ListItem.css.js +1 -1
  213. package/dist/generated/themes/ListItem.css.js.map +1 -1
  214. package/dist/generated/themes/MastheadCountrySelector.css.d.ts +1 -1
  215. package/dist/generated/themes/MastheadCountrySelector.css.js +1 -1
  216. package/dist/generated/themes/MastheadCountrySelector.css.js.map +1 -1
  217. package/dist/generated/themes/MastheadItem.css.d.ts +1 -1
  218. package/dist/generated/themes/MastheadItem.css.js +1 -1
  219. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  220. package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
  221. package/dist/generated/themes/MastheadShell.css.js +1 -1
  222. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  223. package/dist/generated/themes/Modal.css.d.ts +1 -1
  224. package/dist/generated/themes/Modal.css.js +1 -1
  225. package/dist/generated/themes/Modal.css.js.map +1 -1
  226. package/dist/generated/themes/Pagination.css.d.ts +1 -1
  227. package/dist/generated/themes/Pagination.css.js +1 -1
  228. package/dist/generated/themes/Pagination.css.js.map +1 -1
  229. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  230. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  231. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  232. package/dist/generated/themes/Search.css.d.ts +1 -1
  233. package/dist/generated/themes/Search.css.js +1 -1
  234. package/dist/generated/themes/Search.css.js.map +1 -1
  235. package/dist/generated/themes/SideNavigationItem.css.d.ts +1 -1
  236. package/dist/generated/themes/SideNavigationItem.css.js +1 -1
  237. package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
  238. package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
  239. package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
  240. package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
  241. package/dist/generated/themes/Slider.css.d.ts +1 -1
  242. package/dist/generated/themes/Slider.css.js +1 -1
  243. package/dist/generated/themes/Slider.css.js.map +1 -1
  244. package/dist/generated/themes/TextField.css.d.ts +1 -1
  245. package/dist/generated/themes/TextField.css.js +1 -1
  246. package/dist/generated/themes/TextField.css.js.map +1 -1
  247. package/dist/types/ButtonAccessibleRole.d.ts +8 -0
  248. package/dist/types/ButtonAccessibleRole.js +10 -0
  249. package/dist/types/ButtonAccessibleRole.js.map +1 -0
  250. package/dist/types/{Button.d.ts → ButtonDesign.d.ts} +1 -15
  251. package/dist/types/ButtonDesign.js +16 -0
  252. package/dist/types/ButtonDesign.js.map +1 -0
  253. package/dist/types/ButtonSize.d.ts +6 -0
  254. package/dist/types/ButtonSize.js +8 -0
  255. package/dist/types/ButtonSize.js.map +1 -0
  256. package/dist/types/ControlButtonDesign.d.ts +10 -0
  257. package/dist/types/ControlButtonDesign.js +12 -0
  258. package/dist/types/ControlButtonDesign.js.map +1 -0
  259. package/dist/types/EventRibbon.d.ts +37 -0
  260. package/dist/types/EventRibbon.js +43 -0
  261. package/dist/types/EventRibbon.js.map +1 -0
  262. package/dist/types/ProgressBar.d.ts +1 -1
  263. package/dist/types/ProgressBar.js +1 -1
  264. package/dist/types/ProgressBar.js.map +1 -1
  265. package/dist/types/common.d.ts +1 -1
  266. package/dist/types/common.js +1 -1
  267. package/dist/types/common.js.map +1 -1
  268. package/dist/vscode.html-custom-data.json +110 -10
  269. package/dist/web-types.json +159 -13
  270. package/filter-coverage.js +58 -0
  271. package/package.json +14 -9
  272. package/src/AssetsVariables.ts +4 -0
  273. package/src/Badge.ts +4 -4
  274. package/src/Breadcrumbs.hbs +7 -10
  275. package/src/Breadcrumbs.ts +14 -1
  276. package/src/BreadcrumbsPopover.hbs +3 -1
  277. package/src/Button.ts +21 -1
  278. package/src/Checkbox.ts +4 -0
  279. package/src/ControlButton.ts +2 -1
  280. package/src/CountrySelector.ts +5 -3
  281. package/src/DatePicker.ts +4 -3
  282. package/src/EventRibbon.ts +143 -0
  283. package/src/EventRibbonTemplate.tsx +18 -0
  284. package/src/InputGroup.ts +5 -2
  285. package/src/ListItem.ts +4 -4
  286. package/src/MastheadItem.ts +1 -1
  287. package/src/MastheadShell.ts +25 -5
  288. package/src/MediaPlayer.ts +3 -1
  289. package/src/MediaPlayerYoutube.ts +4 -2
  290. package/src/Pagination.hbs +7 -3
  291. package/src/Pagination.ts +49 -32
  292. package/src/PhoneNumberField.hbs +1 -1
  293. package/src/PhoneNumberField.ts +13 -5
  294. package/src/ProgressBar.ts +6 -6
  295. package/src/RadioButton.ts +6 -6
  296. package/src/Search.hbs +3 -2
  297. package/src/Search.ts +1 -3
  298. package/src/SearchableListBase.ts +18 -2
  299. package/src/SecondaryNavigation.hbs +1 -0
  300. package/src/SecondaryNavigation.ts +41 -12
  301. package/src/SecondaryNavigationItem.hbs +2 -1
  302. package/src/SecondaryNavigationItem.ts +31 -0
  303. package/src/SecondaryNavigationItemBase.ts +3 -0
  304. package/src/SecondaryNavigationSubItem.ts +0 -3
  305. package/src/SegmentedButton.ts +1 -1
  306. package/src/SegmentedButtonItem.ts +2 -2
  307. package/src/StatusBadge.ts +8 -3
  308. package/src/StepInput.ts +3 -3
  309. package/src/TableCellBase.ts +2 -2
  310. package/src/Tag.ts +4 -4
  311. package/src/TextArea.ts +9 -9
  312. package/src/TextField.ts +14 -5
  313. package/src/Toast.ts +1 -1
  314. package/src/Upload.ts +1 -1
  315. package/src/UploadItem.ts +9 -9
  316. package/src/Wizard.ts +39 -11
  317. package/src/WizardTemplate.tsx +5 -1
  318. package/src/data/CountryListISO3166.ts +10 -2
  319. package/src/generated/json-imports/Themes-node.ts +21 -0
  320. package/src/generated/json-imports/i18n-node.ts +85 -0
  321. package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +1 -1
  322. package/src/generated/templates/BreadcrumbsTemplate.lit.ts +1 -1
  323. package/src/generated/templates/PaginationTemplate.lit.ts +1 -1
  324. package/src/generated/templates/PhoneNumberFieldTemplate.lit.ts +1 -1
  325. package/src/generated/templates/SearchTemplate.lit.ts +3 -3
  326. package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +2 -2
  327. package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
  328. package/src/generated/themes/Breadcrumbs.css.ts +1 -1
  329. package/src/generated/themes/Button.css.ts +1 -1
  330. package/src/generated/themes/DatePickerPopover.css.ts +1 -1
  331. package/src/generated/themes/EventRibbon.css.ts +9 -0
  332. package/src/generated/themes/ListItem.css.ts +1 -1
  333. package/src/generated/themes/MastheadCountrySelector.css.ts +1 -1
  334. package/src/generated/themes/MastheadItem.css.ts +1 -1
  335. package/src/generated/themes/MastheadShell.css.ts +1 -1
  336. package/src/generated/themes/Modal.css.ts +1 -1
  337. package/src/generated/themes/Pagination.css.ts +1 -1
  338. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  339. package/src/generated/themes/Search.css.ts +1 -1
  340. package/src/generated/themes/SideNavigationItem.css.ts +1 -1
  341. package/src/generated/themes/SideNavigationSubItem.css.ts +1 -1
  342. package/src/generated/themes/Slider.css.ts +1 -1
  343. package/src/generated/themes/TextField.css.ts +1 -1
  344. package/src/themes/Breadcrumbs.css +3 -0
  345. package/src/themes/Button.css +71 -29
  346. package/src/themes/DatePickerPopover.css +64 -6
  347. package/src/themes/EventRibbon.css +411 -0
  348. package/src/themes/ListItem.css +4 -0
  349. package/src/themes/MastheadCountrySelector.css +8 -5
  350. package/src/themes/MastheadItem.css +12 -4
  351. package/src/themes/MastheadShell.css +5 -2
  352. package/src/themes/Modal.css +6 -1
  353. package/src/themes/Pagination.css +19 -0
  354. package/src/themes/Search.css +8 -1
  355. package/src/themes/SideNavigationItem.css +9 -1
  356. package/src/themes/SideNavigationSubItem.css +7 -0
  357. package/src/themes/TextField.css +2 -13
  358. package/src/types/ButtonAccessibleRole.ts +9 -0
  359. package/src/types/{Button.ts → ButtonDesign.ts} +1 -17
  360. package/src/types/ButtonSize.ts +7 -0
  361. package/src/types/ControlButtonDesign.ts +11 -0
  362. package/src/types/EventRibbon.ts +51 -0
  363. package/src/types/ProgressBar.ts +1 -1
  364. package/src/types/common.ts +1 -1
  365. package/swap-component-imports.js +18 -0
  366. package/dist/assets/InputSuggestions-CP3cBQsh.js +0 -2
  367. package/dist/assets/bundle.esm-jHcdiVfj.js +0 -380
  368. package/dist/assets/parameters-bundle.css-BU4Bi-ho.js +0 -2
  369. package/dist/assets/parameters-bundle.css-Beilb2gS.js +0 -2
  370. package/dist/assets/parameters-bundle.css-BzQMaZUt.js +0 -2
  371. package/dist/assets/parameters-bundle.css-Bzfv_Fox.js +0 -2
  372. package/dist/assets/parameters-bundle.css-CLwmjytB.js +0 -2
  373. package/dist/assets/parameters-bundle.css-CU3plTdF.js +0 -2
  374. package/dist/assets/parameters-bundle.css-DRX-o-Cb.js +0 -2
  375. package/dist/assets/parameters-bundle.css-DhFMZJhW.js +0 -2
  376. package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -1
  377. package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +0 -1
  378. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.d.ts +0 -2
  379. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +0 -3
  380. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +0 -1
  381. package/dist/types/Button.js +0 -33
  382. package/dist/types/Button.js.map +0 -1
  383. package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +0 -2
  384. package/src/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -195
@@ -1,7 +1,4 @@
1
- import UDExBreadcrumbs from "../../src/Breadcrumbs.js";
2
- import UDExBreadcrumbsItem from "../../src/BreadcrumbsItem.js";
3
- import UDExButton from "../../src/Button.js";
4
- import UDExSecondaryNavigation from "../../src/SecondaryNavigation.js";
1
+ import { UDExBreadcrumbs, UDExBreadcrumbsItem, UDExButton, UDExSecondaryNavigation } from "../support/component-imports.js";
5
2
  import navItems, { additionalNavItems } from "../fixtures/secondary-navigation-items.js";
6
3
 
7
4
  const defaultSecondaryNavigation = <UDExSecondaryNavigation
@@ -29,60 +26,49 @@ const secondaryNavigationWithoutBreadcrumbs = <UDExSecondaryNavigation
29
26
  </UDExSecondaryNavigation>
30
27
 
31
28
  describe("Desktop", () => {
32
- let itemClickHandler;
33
- let navigation: Cypress.Chainable<JQuery<HTMLElement>>
34
- let navigationItems: Cypress.Chainable<JQuery<HTMLElement>>;
35
- let firstNavItem: Cypress.Chainable<JQuery<HTMLElement>>
36
-
37
29
  beforeEach( () => {
38
- cy.mount(defaultSecondaryNavigation)
39
30
  cy.viewport(1920, 1080)
40
- navigation = cy.get("#secondary-nav")
41
- navigationItems = navigation.shadow().find("udex-secondary-navigation-item");
42
- firstNavItem = navigationItems.first();
43
- itemClickHandler = cy.stub().as("itemClickHandler");
44
- document.addEventListener("item-click", itemClickHandler);
45
- });
46
-
47
- afterEach( () => {
48
- navigation = null;
49
- navigationItems = null;
50
- firstNavItem = null;
51
- document.removeEventListener("item-click", itemClickHandler);
52
- itemClickHandler = null;
31
+ cy.mount(defaultSecondaryNavigation)
32
+ const itemClickHandler = cy.stub().as("itemClickHandler");
33
+ cy.get("#secondary-nav").then($navigation => {
34
+ $navigation[0].addEventListener("item-click", itemClickHandler)
35
+ })
53
36
  });
54
37
 
55
38
  it("correctly renders", () => {
56
- navigation.shadow().find(".udex-secondary-navigation__root").should("exist")
39
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__root").should("exist")
57
40
  });
58
41
 
59
42
  it("renders breadcrumbs slot", () => {
60
- navigation.shadow().find("slot[slot='breadcrumbs'][name='breadcrumbs']").should("exist")
43
+ cy.get("#secondary-nav").shadow().find("slot[name='breadcrumbs']").should("exist")
61
44
  });
62
45
 
63
46
  it("renders buttons slot", () => {
64
- navigation.shadow().find("slot[slot='buttons'][name='buttons']").should("exist")
47
+ cy.get("#secondary-nav").shadow().find("slot[name='buttons']").should("exist")
65
48
  });
66
49
 
67
50
  it("renders heading", () => {
68
- navigation.shadow().find(".udex-secondary-navigation__title").should("have.text", "Secondary title")
51
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__title").should("have.text", "Secondary title")
69
52
  });
70
53
 
71
54
  it("tests if component renders heading as a link", () => {
72
- navigation.shadow().find(".udex-secondary-navigation__title").click()
55
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__title").then($headingLink => {
56
+ $headingLink[0].removeAttribute("href")
57
+ }).click()
73
58
  });
74
59
 
75
60
  it("tests if component renders visible items", () => {
76
- navigation.shadow().find(".udex-secondary-navigation__list-item").should("have.length", 7)
61
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__list-item").should("have.length", 7)
77
62
  });
78
63
 
79
64
  it("item component renders label", () => {
80
- firstNavItem.should("have.text", "Secondary Navigation 1");
65
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
66
+ .should("have.attr", "label", "Secondary Navigation 1");
81
67
  });
82
68
 
83
69
  it("item component renders dropdown after clicking", () => {
84
- firstNavItem.click();
85
- firstNavItem.shadow().find(".udex-secondary-navigation__dropdown").should("be.visible")
70
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
71
+ .shadow().find(".udex-secondary-navigation__dropdown").should("be.visible")
86
72
  });
87
73
 
88
74
  it("emits 'item-click' event and displays item info", () => {
@@ -91,126 +77,137 @@ describe("Desktop", () => {
91
77
  target: "_self",
92
78
  }
93
79
 
94
- navigationItems.first().click()
95
- cy.get("@itemClickHandler").should("have.been.called").its("firstCall.args.0.detail.clickedItem").should("include", expectedDetails)
80
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
81
+ cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include", expectedDetails)
96
82
  });
97
83
 
98
84
  it("closes dropdown after clicking outside", () => {
99
- firstNavItem.click();
85
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click();
100
86
  cy.get("html").click()
101
87
 
102
- firstNavItem.should("not.have.attr", "is-open")
88
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().should("not.have.attr", "is-open")
103
89
  });
104
90
 
105
91
  it("closes dropdown after clicking on another item", () => {
106
- firstNavItem.click();
107
- navigationItems.eq(1).click();
92
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click();
93
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(1).click();
108
94
 
109
- firstNavItem.shadow().get(".udex-secondary-navigation__dropdown").should("not.exist")
95
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow().get(".udex-secondary-navigation__dropdown").should("not.exist")
110
96
  });
111
97
 
112
- it("dropdown renders items", () => {
113
- firstNavItem.click();
114
-
115
- const firstLevelItems = firstNavItem.shadow().find("udex-secondary-navigation-sub-item");
116
- firstLevelItems.eq(0).should("have.text", "secondary nested 1")
117
- firstLevelItems.eq(1).should("have.text", "secondary nested 2")
118
- firstLevelItems.eq(2).should("have.text", "secondary nested 3")
98
+ it("dropdown renders items", () => {
99
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
100
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow().find("udex-secondary-navigation-sub-item").eq(0).should("have.attr", "label", "secondary nested 1")
101
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow().find("udex-secondary-navigation-sub-item").eq(1).should("have.attr", "label", "secondary nested 2")
102
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow().find("udex-secondary-navigation-sub-item").eq(2).should("have.attr", "label", "secondary nested 3")
119
103
  });
120
104
 
121
- it("dropdown renders nested items after clicking on the nested item", () => {
122
- firstNavItem.click();
105
+ it("dropdown renders nested items after clicking on the nested item", () => {
106
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
107
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
108
+ .shadow().find("udex-secondary-navigation-sub-item").first().click()
123
109
 
124
- const firstLevelItem = firstNavItem.shadow().find("udex-secondary-navigation-sub-item").first()
125
- firstLevelItem.click();
110
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
111
+ .shadow().find("udex-secondary-navigation-sub-item").eq(0).should("have.attr", "label", "secondary nested 1")
112
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
113
+ .shadow().find("udex-secondary-navigation-sub-item").eq(1).should("have.attr", "label", "tertiary nested 1")
114
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
115
+ .shadow().find("udex-secondary-navigation-sub-item").eq(2).should("have.attr", "label", "tertiary nested 2")
126
116
 
127
- const secondLevelItems = firstNavItem.shadow().find("udex-secondary-navigation-sub-item");
128
- secondLevelItems.eq(0).should("have.text", "secondary nested 1")
129
- secondLevelItems.eq(1).should("have.text", "tertiary nested 1")
130
- secondLevelItems.eq(2).should("have.text", "tertiary nested 2")
117
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
118
+ .shadow().find("udex-secondary-navigation-sub-item").eq(2).click();
131
119
 
132
- secondLevelItems.eq(2).click();
133
-
134
- const thirdLevelItems = firstNavItem.shadow().find("udex-secondary-navigation-sub-item");
135
- thirdLevelItems.eq(0).should("have.text", "tertiary nested 2");
136
- thirdLevelItems.eq(1).should("have.text", "quatenary nested 1");
137
- thirdLevelItems.eq(2).should("have.text", "quatenary nested 2");
120
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
121
+ .shadow().find("udex-secondary-navigation-sub-item").eq(0).should("have.attr", "label", "tertiary nested 2");
122
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
123
+ .shadow().find("udex-secondary-navigation-sub-item").eq(1).should("have.attr", "label", "quaternary nested 1");
124
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
125
+ .shadow().find("udex-secondary-navigation-sub-item").eq(2).should("have.attr", "label", "quaternary nested 2");
138
126
  });
139
127
 
140
- it("tests if the dropdown renders previous nested items after clicking back on the nested item", () => {
141
- firstNavItem.click();
128
+ it("dropdown renders previous nested items after clicking back on the nested item", () => {
129
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click();
142
130
 
143
- const firstLevelItem = firstNavItem.shadow().find("udex-secondary-navigation-sub-item").first();
144
- firstLevelItem.click();
131
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow().find("udex-secondary-navigation-sub-item").first()
132
+ .click();
145
133
 
146
- const secondLevelBackItem = firstNavItem.shadow().find("udex-secondary-navigation-sub-item").first();
147
- secondLevelBackItem.click();
134
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
135
+ .shadow().find("udex-secondary-navigation-sub-item").first().click()
148
136
 
149
- const items = firstNavItem.shadow().find("udex-secondary-navigation-sub-item");
150
- items.eq(0).should("have.text", "secondary nested 1")
151
- items.eq(1).should("have.text", "secondary nested 2")
152
- items.eq(2).should("have.text", "secondary nested 3")
137
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
138
+ .shadow().find("udex-secondary-navigation-sub-item").eq(0).should("have.attr", "label", "secondary nested 1")
139
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
140
+ .shadow().find("udex-secondary-navigation-sub-item").eq(1).should("have.attr", "label", "secondary nested 2")
141
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
142
+ .shadow().find("udex-secondary-navigation-sub-item").eq(2).should("have.attr", "label", "secondary nested 3")
153
143
  });
154
144
 
155
145
  it("opens dropdown on Enter key press", () => {
156
- navigation.shadow()
157
- .find(".udex-secondary-navigation__title")
146
+ cy.get("#secondary-nav").shadow()
147
+ .find(".udex-secondary-navigation__title").then($headingLink => {
148
+ $headingLink[0].removeAttribute("href")
149
+ })
158
150
  .click()
159
151
  .realPress("Tab").realPress("Enter");
160
152
 
161
- firstNavItem.shadow()
153
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow()
162
154
  .find(".udex-secondary-navigation__dropdown")
163
155
  .should("be.visible");
164
156
  });
165
157
 
166
158
  it("closes dropdown on Esc key press", () => {
167
- navigation.shadow()
168
- .find(".udex-secondary-navigation__title")
159
+ cy.get("#secondary-nav").shadow()
160
+ .find(".udex-secondary-navigation__title").then($headingLink => {
161
+ $headingLink[0].removeAttribute("href")
162
+ })
169
163
  .click()
170
164
  .realPress("Tab").realPress("Escape");
171
165
 
172
- firstNavItem.shadow()
166
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow()
173
167
  .find(".udex-secondary-navigation__dropdown")
174
- .should("not.be.visible");
168
+ .should("not.exist");
175
169
  });
176
170
 
177
171
  it("moves focus to next item with ArrowRight", () => {
178
- const secondNavItem = cy.get("#secondary-nav").shadow().find("li").eq(1).find("udex-secondary-navigation-item")
179
- secondNavItem.click().realPress("{rightarrow}").realPress("Enter");
172
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(1)
173
+ .click().realPress("{rightarrow}").realPress("Enter");
180
174
 
181
175
  cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include", {title: "Secondary Navigation 3"})
182
176
  cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", {clickedIndex: 2})
183
177
  });
184
178
 
185
179
  it("moves focus to previous item with ArrowLeft", () => {
186
- const secondNavItem = cy.get("#secondary-nav").shadow().find("li").eq(1).find("udex-secondary-navigation-item")
187
- secondNavItem.click().realPress("{leftarrow}").realPress("Enter");
180
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(1)
181
+ .click().realPress("{leftarrow}").realPress("Enter");
188
182
 
189
183
  cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "Secondary Navigation 1"})
190
184
  cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", {clickedIndex: 0})
191
185
  });
192
186
 
193
187
  it("navigates right into nested item", () => {
194
- firstNavItem.click().realPress("{rightarrow}").shadow()
195
- .find("udex-secondary-navigation-sub-item")
196
- .first()
197
- .should("have.attr", "is-back");
188
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
189
+ .click()
190
+ .realPress("{downarrow}").realPress("Enter")
191
+
192
+ cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "secondary nested 2"})
198
193
  });
199
194
 
200
195
  it("navigates left back from nested item", () => {
201
- firstNavItem.click().realPress("{downarrow}").realPress("{rightarrow}").realPress("{leftarrow}").shadow()
202
- .find("udex-secondary-navigation-sub-item")
203
- .first()
204
- .should("have.text", "secondary nested 1");
196
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first()
197
+ .click().shadow().find(".udex-secondary-navigation__dropdown")
198
+ .should("be.visible")
199
+ .realPress("{downarrow}").realPress("{rightarrow}").realPress("{leftarrow}").realPress("Enter")
200
+
201
+ cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "secondary nested 2"})
205
202
  });
206
203
 
207
204
  it("renders button when path is missing", () => {
208
- firstNavItem.shadow().find(".udex-secondary-navigation__item")
205
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().shadow().find(".udex-secondary-navigation__item")
209
206
  .should("have.prop", "tagName").and("eq", "BUTTON");
210
207
  });
211
208
 
212
209
  it("renders anchor when path is present", () => {
213
- navigationItems.eq(2)
210
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(2)
214
211
  .shadow()
215
212
  .find(".udex-secondary-navigation__item")
216
213
  .should("have.prop", "tagName")
@@ -218,42 +215,39 @@ describe("Desktop", () => {
218
215
  });
219
216
 
220
217
  it("button has 'active' attribute after click", () => {
221
- firstNavItem.click()
222
- .should("have.attr", "active");
218
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(1).click()
219
+ .should("have.attr", "active")
223
220
  });
224
221
 
225
222
  it("link has 'active' attribute after click", () => {
226
- navigationItems.eq(2).click()
227
- .should("have.attr", "active");
223
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(2).click()
224
+ .should("have.attr", "active")
228
225
  });
229
226
 
230
- it("closes navigation and focuses previous item", () => {
227
+ it("closes navigation and focuses Secondary title on Shift+Tab", () => {
231
228
  cy.get("udex-secondary-navigation").shadow().find("udex-secondary-navigation-item").eq(5)
232
- .click().realPress("{downarrow}").realPress("{downarrow}").realPress(["Shift", "Tab"]).realPress("Enter");
229
+ .click().realPress("{downarrow}").realPress("{downarrow}").realPress(["Shift", "Tab"]);
233
230
 
234
- cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "Secondary Navigation 5" })
231
+ cy.get("udex-secondary-navigation").shadow().find(".udex-secondary-navigation__title").should("be.focused");
235
232
  });
236
233
 
237
- it("moves focus to next item on Tab", () => {
238
- cy.get("udex-secondary-navigation").shadow().find("udex-secondary-navigation-item").eq(3).click().realPress("Tab").realPress("Enter");
239
-
240
- cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "Secondary Navigation 5" })
241
- });
242
-
243
- it("moves focus to previous item on Shift+Tab", () => {
244
- cy.get("udex-secondary-navigation").shadow().find("udex-secondary-navigation-item").eq(1).click().realPress(["Shift", "Tab"]).realPress("Enter");
245
-
246
- cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "Secondary Navigation 1" })
234
+ it("moves focus to Buy now button on Tab", () => {
235
+ cy.get("udex-secondary-navigation").shadow().find("udex-secondary-navigation-item").eq(5).click().realPress("Tab");
236
+ cy.get("#buy-now").should("be.focused");
247
237
  });
248
238
 
249
239
  it("moves focus to next item on `More option`", () => {
250
- navigationItems.eq(6).click().realPress("{downarrow}").realPress("Tab").realPress("Enter").should("have.focus")
240
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").eq(6).click().realPress("{downarrow}").realPress("Tab").realPress("Enter")
241
+ cy.get("#secondary-nav").find("udex-button").then($button => {
242
+ const { borderColor: buttonBorder } = window.getComputedStyle($button[0], "::after")
243
+ expect(buttonBorder).to.eq('rgb(0, 100, 217)');
244
+ })
251
245
  });
252
246
 
253
247
  it("dynamically changed nav-items attribute is applied", () => {
254
- navigation.invoke("attr", "nav-items", JSON.stringify(additionalNavItems));
248
+ cy.get("#secondary-nav").invoke("attr", "nav-items", JSON.stringify(additionalNavItems));
255
249
 
256
- navigation.shadow().find(".udex-secondary-navigation__list-item").should("have.length", 3)
250
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__list-item").should("have.length", 3)
257
251
  });
258
252
 
259
253
  it("dynamically changes navigation visible items", () => {
@@ -273,7 +267,7 @@ describe("Desktop", () => {
273
267
  cy.mount(secondaryNavigationWithoutBreadcrumbs)
274
268
  cy.viewport(1080, 640);
275
269
  })
276
-
270
+
277
271
  it("has the attr \"data-horizontal-align=`right`\" when doesn't fit", () => {
278
272
  const moreNavItem = cy.get("#secondary-nav-without-breadcrumbs").shadow().find("[udex-secondary-navigation-item]").eq(5);
279
273
  moreNavItem.click();
@@ -292,19 +286,19 @@ describe("Desktop", () => {
292
286
  });
293
287
  })
294
288
 
295
- it("closes dropdown and focuses next item", () => {
296
- navigationItems.first().click()
297
- firstNavItem.shadow()
289
+ it("closes dropdown and focuses buy now button", () => {
290
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
291
+ .shadow()
298
292
  .find(".udex-secondary-navigation__dropdown")
299
293
  .should("be.visible")
300
- .realPress("Tab").realPress("{enter}")
294
+ .realPress("Tab")
301
295
 
302
- cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "Secondary Navigation 2" })
296
+ cy.get("#buy-now").should("be.focused");
303
297
  });
304
298
 
305
- it("navigates deep dropdown and focuses next item", () => {
306
- navigationItems.first().click()
307
- firstNavItem.shadow()
299
+ it("navigates deep dropdown and focuses buy now button", () => {
300
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
301
+ .shadow()
308
302
  .find(".udex-secondary-navigation__dropdown")
309
303
  .should("be.visible")
310
304
  .realPress("{downarrow}")
@@ -314,16 +308,14 @@ describe("Desktop", () => {
314
308
  .realPress("{rightarrow}")
315
309
  .realPress("{downarrow}")
316
310
  .realPress("{downarrow}")
317
- .realPress("Tab")
318
- .realPress("Tab")
319
- .realPress("{enter}");
311
+ .realPress("Tab");
320
312
 
321
- cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "Secondary Navigation 3" })
313
+ cy.get("#buy-now").should("be.focused");
322
314
  });
323
315
 
324
316
  it("focuses last dropdown item with End key", () => {
325
- navigationItems.first().click()
326
- firstNavItem.shadow()
317
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
318
+ .shadow()
327
319
  .find(".udex-secondary-navigation__dropdown")
328
320
  .should("be.visible")
329
321
  .realPress("{downarrow}")
@@ -334,8 +326,8 @@ describe("Desktop", () => {
334
326
  });
335
327
 
336
328
  it("focuses first dropdown item on Home key", () => {
337
- navigationItems.first().click()
338
- firstNavItem.shadow()
329
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
330
+ .shadow()
339
331
  .find(".udex-secondary-navigation__dropdown")
340
332
  .should("be.visible")
341
333
  .realPress("{downarrow}")
@@ -347,7 +339,10 @@ describe("Desktop", () => {
347
339
  });
348
340
 
349
341
  it("moves focus down in dropdown with ArrowDown", () => {
350
- navigationItems.first().click()
342
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
343
+ .shadow()
344
+ .find(".udex-secondary-navigation__dropdown")
345
+ .should("be.visible")
351
346
  .realPress("{downarrow}")
352
347
  .realPress("{downarrow}")
353
348
  .realPress("{enter}");
@@ -356,7 +351,10 @@ describe("Desktop", () => {
356
351
  });
357
352
 
358
353
  it("moves focus up in dropdown with ArrowUp", () => {
359
- navigationItems.first().click()
354
+ cy.get("#secondary-nav").shadow().find("udex-secondary-navigation-item").first().click()
355
+ .shadow()
356
+ .find(".udex-secondary-navigation__dropdown")
357
+ .should("be.visible")
360
358
  .realPress("{downarrow}")
361
359
  .realPress("{downarrow}")
362
360
  .realPress("{uparrow}")
@@ -364,4 +362,4 @@ describe("Desktop", () => {
364
362
 
365
363
  cy.get("@itemClickHandler").should("have.been.called").its("lastCall.args.0.detail.clickedItem").should("include",{ title: "secondary nested 2", path: "#secondary_nested_2"})
366
364
  });
367
- });
365
+ });
@@ -1,7 +1,4 @@
1
- import UDExBreadcrumbs from "../../src/Breadcrumbs.js";
2
- import UDExBreadcrumbsItem from "../../src/BreadcrumbsItem.js";
3
- import UDExButton from "../../src/Button.js";
4
- import UDExSecondaryNavigation from "../../src/SecondaryNavigation.js";
1
+ import { UDExBreadcrumbs, UDExBreadcrumbsItem, UDExButton, UDExSecondaryNavigation } from "../support/component-imports.js";
5
2
  import navItems from "../fixtures/secondary-navigation-items.js";
6
3
 
7
4
  const defaultSecondaryNavigation = <UDExSecondaryNavigation
@@ -23,70 +20,62 @@ const defaultSecondaryNavigation = <UDExSecondaryNavigation
23
20
 
24
21
  describe("SecondaryNavigation", () => {
25
22
  describe("Mobile", () => {
26
- let mobileNavOpener: Cypress.Chainable<JQuery<HTMLElement>>;
27
23
 
28
24
  beforeEach(() => {
29
- cy.mount(defaultSecondaryNavigation)
30
25
  cy.viewport(979, 1080)
31
- mobileNavOpener = cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav");
32
- });
33
-
34
- afterEach( () => {
35
- mobileNavOpener = null;
26
+ cy.mount(defaultSecondaryNavigation)
36
27
  });
37
28
 
38
29
  it("mobile opener visible", () => {
39
- mobileNavOpener.should("be.visible")
30
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").should("be.visible")
40
31
  });
41
32
 
42
33
  it("mobile dropdown hidden", () => {
43
- mobileNavOpener.shadow().find(".udex-secondary-navigation__dropdown").should("not.exist")
34
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find(".udex-secondary-navigation__dropdown").should("not.exist")
44
35
  });
45
36
 
46
37
  it("renders \"mobileLinkTitle\" for the item", () => {
47
- mobileNavOpener.click();
48
- const mobileDropdown = mobileNavOpener.shadow().find(".udex-secondary-navigation__dropdown");
49
- const mobileItems = mobileDropdown.shadow().find("udex-secondary-navigation-sub-item");
50
- mobileItems.first().should("have.text", "Secondary Navigation 1 mobile")
38
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").click()
39
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav")
40
+ .shadow().find("udex-secondary-navigation-sub-item").first()
41
+ .should("have.attr", "mobile-link-title", "Secondary Navigation 1 mobile")
51
42
  });
52
43
 
53
44
  it("renders \"title\" for the item when no \"mobileLinkTitle\"", () => {
54
- mobileNavOpener.click();
55
- const mobileDropdown = mobileNavOpener.shadow().find(".udex-secondary-navigation__dropdown");
56
- const mobileItems = mobileDropdown.shadow().find("udex-secondary-navigation-sub-item");
57
- mobileItems.eq(1).should("have.text", "Secondary Navigation 2")
45
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").click()
46
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav")
47
+ .shadow().find("udex-secondary-navigation-sub-item").eq(1)
48
+ .should("have.attr", "label", "Secondary Navigation 2")
58
49
  });
59
50
 
60
51
  it("opens/closes by pressing the mobile button", () => {
61
- mobileNavOpener.click();
52
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").click();
62
53
 
63
- const mobileDropdown = mobileNavOpener.shadow().find(".udex-secondary-navigation__dropdown");
64
- mobileDropdown.should("be.visible")
54
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find(".udex-secondary-navigation__dropdown")
55
+ .should("be.visible")
65
56
 
66
- mobileNavOpener.click();
67
- mobileDropdown.should("not.be.visible")
57
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").click();
58
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find(".udex-secondary-navigation__dropdown")
59
+ .should("not.exist")
68
60
  });
69
61
 
70
62
  it("closes after pressing the mobile navigation item", () => {
71
- mobileNavOpener.click();
72
-
73
- const mobileDropdown = mobileNavOpener.shadow().find(".udex-secondary-navigation__dropdown");
74
- const mobileItems = mobileDropdown.shadow().find("udex-secondary-navigation-sub-item");
63
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").click();
75
64
 
76
- mobileItems.eq(2).click();
65
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find(".udex-secondary-navigation__dropdown")
66
+ .should("be.visible")
77
67
 
78
- mobileDropdown.should("not.be.visible")
68
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find("udex-secondary-navigation-sub-item").eq(2).click();
69
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find(".udex-secondary-navigation__dropdown")
70
+ .should("not.exist")
79
71
  });
80
72
 
81
73
  it("active title changes when pressing navigation item", () => {
82
- mobileNavOpener.click();
83
-
84
- const mobileDropdown = mobileNavOpener.shadow().find(".udex-secondary-navigation__dropdown");
85
- const mobileItems = mobileDropdown.shadow().find("udex-secondary-navigation-sub-item");
74
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").click();
86
75
 
87
- mobileItems.eq(2).click();
76
+ cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find("udex-secondary-navigation-sub-item").eq(2).click();
88
77
 
89
- const subTitle = mobileNavOpener.find(".udex-secondary-navigation__item-sub-title");
78
+ const subTitle = cy.get("#secondary-nav").shadow().find(".udex-secondary-navigation__mobile-nav").shadow().find(".udex-secondary-navigation__item-sub-title");
90
79
  subTitle.should("have.text", "Secondary Navigation 3 mobile");
91
80
  });
92
81
  });