@patternfly/elements 3.0.2 → 4.0.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 (371) hide show
  1. package/custom-elements.json +8857 -8783
  2. package/form-control.css +127 -0
  3. package/package.json +12 -25
  4. package/pf-accordion/pf-accordion-header.css +23 -0
  5. package/pf-accordion/pf-accordion-header.d.ts +52 -43
  6. package/pf-accordion/pf-accordion-header.js +130 -87
  7. package/pf-accordion/pf-accordion-header.js.map +1 -1
  8. package/pf-accordion/pf-accordion-panel.css +15 -0
  9. package/pf-accordion/pf-accordion-panel.d.ts +27 -25
  10. package/pf-accordion/pf-accordion-panel.js +29 -43
  11. package/pf-accordion/pf-accordion-panel.js.map +1 -1
  12. package/pf-accordion/pf-accordion.d.ts +122 -65
  13. package/pf-accordion/pf-accordion.js +283 -94
  14. package/pf-accordion/pf-accordion.js.map +1 -1
  15. package/pf-accordion/test/pf-accordion.e2e.js +12 -0
  16. package/pf-accordion/test/pf-accordion.e2e.js.map +1 -1
  17. package/pf-accordion/test/pf-accordion.spec.js +366 -350
  18. package/pf-accordion/test/pf-accordion.spec.js.map +1 -1
  19. package/pf-avatar/pf-avatar.css +50 -24
  20. package/pf-avatar/pf-avatar.d.ts +29 -3
  21. package/pf-avatar/pf-avatar.js +51 -9
  22. package/pf-avatar/pf-avatar.js.map +1 -1
  23. package/pf-avatar/test/pf-avatar.e2e.js +12 -0
  24. package/pf-avatar/test/pf-avatar.e2e.js.map +1 -1
  25. package/pf-avatar/test/pf-avatar.spec.js +2 -3
  26. package/pf-avatar/test/pf-avatar.spec.js.map +1 -1
  27. package/pf-back-to-top/pf-back-to-top.css +10 -0
  28. package/pf-back-to-top/pf-back-to-top.d.ts +14 -18
  29. package/pf-back-to-top/pf-back-to-top.js +9 -30
  30. package/pf-back-to-top/pf-back-to-top.js.map +1 -1
  31. package/pf-back-to-top/test/pf-back-to-top.e2e.js +12 -0
  32. package/pf-back-to-top/test/pf-back-to-top.e2e.js.map +1 -1
  33. package/pf-background-image/pf-background-image.d.ts +4 -4
  34. package/pf-background-image/pf-background-image.js +1 -12
  35. package/pf-background-image/pf-background-image.js.map +1 -1
  36. package/pf-background-image/test/pf-background-image.e2e.js +12 -0
  37. package/pf-background-image/test/pf-background-image.e2e.js.map +1 -1
  38. package/pf-badge/pf-badge.css +4 -0
  39. package/pf-badge/pf-badge.d.ts +26 -22
  40. package/pf-badge/pf-badge.js +14 -27
  41. package/pf-badge/pf-badge.js.map +1 -1
  42. package/pf-badge/test/pf-badge.e2e.js +12 -0
  43. package/pf-badge/test/pf-badge.e2e.js.map +1 -1
  44. package/pf-banner/pf-banner.d.ts +16 -16
  45. package/pf-banner/pf-banner.js +1 -24
  46. package/pf-banner/pf-banner.js.map +1 -1
  47. package/pf-banner/test/pf-banner.e2e.js +12 -0
  48. package/pf-banner/test/pf-banner.e2e.js.map +1 -1
  49. package/pf-button/pf-button.css +22 -12
  50. package/pf-button/pf-button.d.ts +128 -122
  51. package/pf-button/pf-button.js +95 -172
  52. package/pf-button/pf-button.js.map +1 -1
  53. package/pf-button/test/pf-button.e2e.js +12 -0
  54. package/pf-button/test/pf-button.e2e.js.map +1 -1
  55. package/pf-card/pf-card.css +172 -43
  56. package/pf-card/pf-card.d.ts +41 -38
  57. package/pf-card/pf-card.js +37 -54
  58. package/pf-card/pf-card.js.map +1 -1
  59. package/pf-card/test/pf-card.e2e.js +12 -0
  60. package/pf-card/test/pf-card.e2e.js.map +1 -1
  61. package/pf-chip/pf-chip-group.css +9 -6
  62. package/pf-chip/pf-chip-group.d.ts +27 -14
  63. package/pf-chip/pf-chip-group.js +65 -94
  64. package/pf-chip/pf-chip-group.js.map +1 -1
  65. package/pf-chip/pf-chip.d.ts +20 -9
  66. package/pf-chip/pf-chip.js +1 -8
  67. package/pf-chip/pf-chip.js.map +1 -1
  68. package/pf-chip/test/pf-chip-group.spec.js +42 -22
  69. package/pf-chip/test/pf-chip-group.spec.js.map +1 -1
  70. package/pf-chip/test/pf-chip.e2e.js +12 -0
  71. package/pf-chip/test/pf-chip.e2e.js.map +1 -1
  72. package/pf-clipboard-copy/pf-clipboard-copy.css +83 -89
  73. package/pf-clipboard-copy/pf-clipboard-copy.d.ts +53 -18
  74. package/pf-clipboard-copy/pf-clipboard-copy.js +55 -44
  75. package/pf-clipboard-copy/pf-clipboard-copy.js.map +1 -1
  76. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js +12 -0
  77. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js.map +1 -1
  78. package/pf-code-block/pf-code-block.css +7 -4
  79. package/pf-code-block/pf-code-block.d.ts +4 -25
  80. package/pf-code-block/pf-code-block.js +44 -23
  81. package/pf-code-block/pf-code-block.js.map +1 -1
  82. package/pf-code-block/test/pf-code-block.e2e.js +12 -0
  83. package/pf-code-block/test/pf-code-block.e2e.js.map +1 -1
  84. package/pf-dropdown/context.d.ts +2 -3
  85. package/pf-dropdown/context.js.map +1 -1
  86. package/pf-dropdown/pf-dropdown-group.d.ts +3 -9
  87. package/pf-dropdown/pf-dropdown-group.js +1 -5
  88. package/pf-dropdown/pf-dropdown-group.js.map +1 -1
  89. package/pf-dropdown/pf-dropdown-item.d.ts +21 -27
  90. package/pf-dropdown/pf-dropdown-item.js +1 -37
  91. package/pf-dropdown/pf-dropdown-item.js.map +1 -1
  92. package/pf-dropdown/pf-dropdown-menu.d.ts +4 -10
  93. package/pf-dropdown/pf-dropdown-menu.js +23 -23
  94. package/pf-dropdown/pf-dropdown-menu.js.map +1 -1
  95. package/pf-dropdown/pf-dropdown.d.ts +8 -24
  96. package/pf-dropdown/pf-dropdown.js +1 -26
  97. package/pf-dropdown/pf-dropdown.js.map +1 -1
  98. package/pf-dropdown/test/pf-dropdown.e2e.js +12 -0
  99. package/pf-dropdown/test/pf-dropdown.e2e.js.map +1 -1
  100. package/pf-icon/pf-icon.css +22 -0
  101. package/pf-icon/pf-icon.d.ts +93 -4
  102. package/pf-icon/pf-icon.js +191 -13
  103. package/pf-icon/pf-icon.js.map +1 -1
  104. package/pf-icon/test/pf-icon.e2e.js +12 -0
  105. package/pf-icon/test/pf-icon.e2e.js.map +1 -1
  106. package/pf-icon/test/pf-icon.spec.js +102 -88
  107. package/pf-icon/test/pf-icon.spec.js.map +1 -1
  108. package/pf-jump-links/pf-jump-links-item.d.ts +4 -11
  109. package/pf-jump-links/pf-jump-links-item.js +8 -15
  110. package/pf-jump-links/pf-jump-links-item.js.map +1 -1
  111. package/pf-jump-links/pf-jump-links-list.d.ts +2 -2
  112. package/pf-jump-links/pf-jump-links-list.js +1 -5
  113. package/pf-jump-links/pf-jump-links-list.js.map +1 -1
  114. package/pf-jump-links/pf-jump-links.d.ts +2 -2
  115. package/pf-jump-links/pf-jump-links.js +23 -62
  116. package/pf-jump-links/pf-jump-links.js.map +1 -1
  117. package/pf-jump-links/test/pf-jump-links.e2e.js +12 -0
  118. package/pf-jump-links/test/pf-jump-links.e2e.js.map +1 -1
  119. package/pf-label/pf-label.css +38 -5
  120. package/pf-label/pf-label.d.ts +65 -69
  121. package/pf-label/pf-label.js +49 -90
  122. package/pf-label/pf-label.js.map +1 -1
  123. package/pf-label/test/pf-label.e2e.js +12 -0
  124. package/pf-label/test/pf-label.e2e.js.map +1 -1
  125. package/pf-label/test/pf-label.spec.js +26 -16
  126. package/pf-label/test/pf-label.spec.js.map +1 -1
  127. package/pf-modal/pf-modal.d.ts +17 -22
  128. package/pf-modal/pf-modal.js +13 -39
  129. package/pf-modal/pf-modal.js.map +1 -1
  130. package/pf-modal/test/pf-modal.e2e.js +12 -0
  131. package/pf-modal/test/pf-modal.e2e.js.map +1 -1
  132. package/pf-panel/pf-panel.d.ts +31 -3
  133. package/pf-panel/pf-panel.js +1 -10
  134. package/pf-panel/pf-panel.js.map +1 -1
  135. package/pf-panel/test/pf-panel.e2e.js +12 -0
  136. package/pf-panel/test/pf-panel.e2e.js.map +1 -1
  137. package/pf-popover/pf-popover.d.ts +66 -84
  138. package/pf-popover/pf-popover.js +33 -150
  139. package/pf-popover/pf-popover.js.map +1 -1
  140. package/pf-popover/test/pf-popover.e2e.js +12 -0
  141. package/pf-popover/test/pf-popover.e2e.js.map +1 -1
  142. package/pf-popover/test/pf-popover.spec.js +0 -11
  143. package/pf-popover/test/pf-popover.spec.js.map +1 -1
  144. package/pf-progress/pf-progress.d.ts +40 -40
  145. package/pf-progress/pf-progress.js +1 -61
  146. package/pf-progress/pf-progress.js.map +1 -1
  147. package/pf-progress/test/pf-progress.e2e.js +12 -0
  148. package/pf-progress/test/pf-progress.e2e.js.map +1 -1
  149. package/pf-progress-stepper/pf-progress-step.d.ts +2 -3
  150. package/pf-progress-stepper/pf-progress-step.js +4 -14
  151. package/pf-progress-stepper/pf-progress-step.js.map +1 -1
  152. package/pf-progress-stepper/pf-progress-stepper.d.ts +118 -2
  153. package/pf-progress-stepper/pf-progress-stepper.js +10 -12
  154. package/pf-progress-stepper/pf-progress-stepper.js.map +1 -1
  155. package/pf-progress-stepper/test/pf-progress-stepper.e2e.js +12 -0
  156. package/pf-progress-stepper/test/pf-progress-stepper.e2e.js.map +1 -1
  157. package/pf-select/pf-option-group.d.ts +2 -2
  158. package/pf-select/pf-option-group.js +1 -5
  159. package/pf-select/pf-option-group.js.map +1 -1
  160. package/pf-select/pf-option.css +1 -1
  161. package/pf-select/pf-option.d.ts +4 -4
  162. package/pf-select/pf-option.js +20 -30
  163. package/pf-select/pf-option.js.map +1 -1
  164. package/pf-select/pf-select.css +14 -6
  165. package/pf-select/pf-select.d.ts +183 -40
  166. package/pf-select/pf-select.js +185 -260
  167. package/pf-select/pf-select.js.map +1 -1
  168. package/pf-select/test/pf-select.e2e.js +12 -0
  169. package/pf-select/test/pf-select.e2e.js.map +1 -1
  170. package/pf-select/test/pf-select.spec.js +1292 -613
  171. package/pf-select/test/pf-select.spec.js.map +1 -1
  172. package/pf-spinner/pf-spinner.css +27 -17
  173. package/pf-spinner/pf-spinner.d.ts +21 -17
  174. package/pf-spinner/pf-spinner.js +20 -24
  175. package/pf-spinner/pf-spinner.js.map +1 -1
  176. package/pf-spinner/test/pf-spinner.e2e.js +12 -0
  177. package/pf-spinner/test/pf-spinner.e2e.js.map +1 -1
  178. package/pf-switch/pf-switch.css +39 -13
  179. package/pf-switch/pf-switch.d.ts +48 -34
  180. package/pf-switch/pf-switch.js +114 -43
  181. package/pf-switch/pf-switch.js.map +1 -1
  182. package/pf-switch/test/pf-switch.e2e.js +12 -0
  183. package/pf-switch/test/pf-switch.e2e.js.map +1 -1
  184. package/pf-table/pf-caption.d.ts +2 -2
  185. package/pf-table/pf-caption.js +1 -4
  186. package/pf-table/pf-caption.js.map +1 -1
  187. package/pf-table/pf-table.d.ts +424 -424
  188. package/pf-table/pf-table.js +7 -645
  189. package/pf-table/pf-table.js.map +1 -1
  190. package/pf-table/pf-tbody.d.ts +2 -2
  191. package/pf-table/pf-tbody.js +1 -4
  192. package/pf-table/pf-tbody.js.map +1 -1
  193. package/pf-table/pf-td.d.ts +2 -2
  194. package/pf-table/pf-td.js +1 -4
  195. package/pf-table/pf-td.js.map +1 -1
  196. package/pf-table/pf-th.d.ts +2 -2
  197. package/pf-table/pf-th.js +1 -4
  198. package/pf-table/pf-th.js.map +1 -1
  199. package/pf-table/pf-thead.d.ts +2 -2
  200. package/pf-table/pf-thead.js +1 -4
  201. package/pf-table/pf-thead.js.map +1 -1
  202. package/pf-table/pf-tr.d.ts +1 -1
  203. package/pf-table/pf-tr.js +1 -4
  204. package/pf-table/pf-tr.js.map +1 -1
  205. package/pf-table/test/pf-table.e2e.js +12 -0
  206. package/pf-table/test/pf-table.e2e.js.map +1 -1
  207. package/pf-tabs/context.d.ts +2 -3
  208. package/pf-tabs/context.js.map +1 -1
  209. package/pf-tabs/pf-tab-panel.d.ts +3 -5
  210. package/pf-tabs/pf-tab-panel.js +1 -7
  211. package/pf-tabs/pf-tab-panel.js.map +1 -1
  212. package/pf-tabs/pf-tab.d.ts +37 -37
  213. package/pf-tabs/pf-tab.js +16 -54
  214. package/pf-tabs/pf-tab.js.map +1 -1
  215. package/pf-tabs/pf-tabs.d.ts +36 -37
  216. package/pf-tabs/pf-tabs.js +40 -78
  217. package/pf-tabs/pf-tabs.js.map +1 -1
  218. package/pf-tabs/test/pf-tabs.e2e.js +12 -0
  219. package/pf-tabs/test/pf-tabs.e2e.js.map +1 -1
  220. package/pf-tabs/test/pf-tabs.spec.js +11 -12
  221. package/pf-tabs/test/pf-tabs.spec.js.map +1 -1
  222. package/pf-text-area/pf-text-area.d.ts +128 -134
  223. package/pf-text-area/pf-text-area.js +7 -131
  224. package/pf-text-area/pf-text-area.js.map +1 -1
  225. package/pf-text-area/test/pf-text-area.e2e.js +12 -0
  226. package/pf-text-area/test/pf-text-area.e2e.js.map +1 -1
  227. package/pf-text-input/pf-text-input.d.ts +129 -135
  228. package/pf-text-input/pf-text-input.js +7 -132
  229. package/pf-text-input/pf-text-input.js.map +1 -1
  230. package/pf-text-input/test/pf-text-input.e2e.js +12 -0
  231. package/pf-text-input/test/pf-text-input.e2e.js.map +1 -1
  232. package/pf-tile/pf-tile.d.ts +21 -20
  233. package/pf-tile/pf-tile.js +18 -35
  234. package/pf-tile/pf-tile.js.map +1 -1
  235. package/pf-tile/test/pf-tile.e2e.js +12 -0
  236. package/pf-tile/test/pf-tile.e2e.js.map +1 -1
  237. package/pf-timestamp/pf-timestamp.d.ts +2 -2
  238. package/pf-timestamp/pf-timestamp.js +1 -3
  239. package/pf-timestamp/pf-timestamp.js.map +1 -1
  240. package/pf-timestamp/test/pf-timestamp.e2e.js +12 -0
  241. package/pf-timestamp/test/pf-timestamp.e2e.js.map +1 -1
  242. package/pf-tooltip/pf-tooltip.d.ts +51 -50
  243. package/pf-tooltip/pf-tooltip.js +26 -106
  244. package/pf-tooltip/pf-tooltip.js.map +1 -1
  245. package/pf-tooltip/test/pf-tooltip.e2e.js +12 -0
  246. package/pf-tooltip/test/pf-tooltip.e2e.js.map +1 -1
  247. package/pfe.min.js +1194 -1006
  248. package/pfe.min.js.map +4 -4
  249. package/react/pf-accordion/pf-accordion-header.js +2 -2
  250. package/react/pf-accordion/pf-accordion-panel.js +2 -2
  251. package/react/pf-accordion/pf-accordion.js +2 -2
  252. package/react/pf-avatar/pf-avatar.d.ts +1 -1
  253. package/react/pf-avatar/pf-avatar.js +5 -3
  254. package/react/pf-back-to-top/pf-back-to-top.js +2 -2
  255. package/react/pf-background-image/pf-background-image.js +2 -2
  256. package/react/pf-badge/pf-badge.js +2 -2
  257. package/react/pf-banner/pf-banner.js +2 -2
  258. package/react/pf-button/pf-button.js +2 -2
  259. package/react/pf-card/pf-card.js +2 -2
  260. package/react/pf-chip/pf-chip-group.js +2 -2
  261. package/react/pf-chip/pf-chip.js +2 -2
  262. package/react/pf-clipboard-copy/pf-clipboard-copy.d.ts +1 -1
  263. package/react/pf-clipboard-copy/pf-clipboard-copy.js +5 -3
  264. package/react/pf-code-block/pf-code-block.js +2 -2
  265. package/react/pf-dropdown/pf-dropdown-group.js +2 -2
  266. package/react/pf-dropdown/pf-dropdown-item.js +2 -2
  267. package/react/pf-dropdown/pf-dropdown-menu.js +2 -2
  268. package/react/pf-dropdown/pf-dropdown.js +2 -2
  269. package/react/pf-icon/pf-icon.js +2 -2
  270. package/react/pf-jump-links/pf-jump-links-item.js +2 -2
  271. package/react/pf-jump-links/pf-jump-links-list.js +2 -2
  272. package/react/pf-jump-links/pf-jump-links.js +2 -2
  273. package/react/pf-label/pf-label.js +2 -2
  274. package/react/pf-modal/pf-modal.js +2 -2
  275. package/react/pf-panel/pf-panel.js +2 -2
  276. package/react/pf-popover/pf-popover.js +2 -2
  277. package/react/pf-progress/pf-progress.js +2 -2
  278. package/react/pf-progress-stepper/pf-progress-step.js +2 -2
  279. package/react/pf-progress-stepper/pf-progress-stepper.js +2 -2
  280. package/react/pf-select/pf-option-group.js +2 -2
  281. package/react/pf-select/pf-option.js +2 -2
  282. package/react/pf-select/pf-select.d.ts +1 -1
  283. package/react/pf-select/pf-select.js +2 -3
  284. package/react/pf-spinner/pf-spinner.js +2 -2
  285. package/react/pf-switch/pf-switch.js +2 -2
  286. package/react/pf-table/pf-caption.js +2 -2
  287. package/react/pf-table/pf-table.js +2 -2
  288. package/react/pf-table/pf-tbody.js +2 -2
  289. package/react/pf-table/pf-td.js +2 -2
  290. package/react/pf-table/pf-th.js +2 -2
  291. package/react/pf-table/pf-thead.js +2 -2
  292. package/react/pf-table/pf-tr.js +2 -2
  293. package/react/pf-tabs/pf-tab-panel.js +2 -2
  294. package/react/pf-tabs/pf-tab.js +2 -2
  295. package/react/pf-tabs/pf-tabs.js +2 -2
  296. package/react/pf-text-area/pf-text-area.js +2 -2
  297. package/react/pf-text-input/pf-text-input.js +2 -2
  298. package/react/pf-tile/pf-tile.js +2 -2
  299. package/react/pf-timestamp/pf-timestamp.js +2 -2
  300. package/react/pf-tooltip/pf-tooltip.js +2 -2
  301. package/pf-accordion/BaseAccordion.d.ts +0 -61
  302. package/pf-accordion/BaseAccordion.js +0 -269
  303. package/pf-accordion/BaseAccordion.js.map +0 -1
  304. package/pf-accordion/BaseAccordionHeader.css +0 -39
  305. package/pf-accordion/BaseAccordionHeader.d.ts +0 -29
  306. package/pf-accordion/BaseAccordionHeader.js +0 -128
  307. package/pf-accordion/BaseAccordionHeader.js.map +0 -1
  308. package/pf-accordion/BaseAccordionPanel.css +0 -27
  309. package/pf-accordion/BaseAccordionPanel.d.ts +0 -7
  310. package/pf-accordion/BaseAccordionPanel.js +0 -33
  311. package/pf-accordion/BaseAccordionPanel.js.map +0 -1
  312. package/pf-avatar/BaseAvatar.css +0 -13
  313. package/pf-avatar/BaseAvatar.d.ts +0 -23
  314. package/pf-avatar/BaseAvatar.js +0 -62
  315. package/pf-avatar/BaseAvatar.js.map +0 -1
  316. package/pf-back-to-top/demo/demo.css +0 -25
  317. package/pf-badge/BaseBadge.css +0 -6
  318. package/pf-badge/BaseBadge.d.ts +0 -18
  319. package/pf-badge/BaseBadge.js +0 -16
  320. package/pf-badge/BaseBadge.js.map +0 -1
  321. package/pf-button/BaseButton.css +0 -68
  322. package/pf-button/BaseButton.d.ts +0 -51
  323. package/pf-button/BaseButton.js +0 -84
  324. package/pf-button/BaseButton.js.map +0 -1
  325. package/pf-card/BaseCard.css +0 -36
  326. package/pf-card/BaseCard.d.ts +0 -24
  327. package/pf-card/BaseCard.js +0 -51
  328. package/pf-card/BaseCard.js.map +0 -1
  329. package/pf-clipboard-copy/BaseClipboardCopy.css +0 -6
  330. package/pf-clipboard-copy/BaseClipboardCopy.d.ts +0 -18
  331. package/pf-clipboard-copy/BaseClipboardCopy.js +0 -25
  332. package/pf-clipboard-copy/BaseClipboardCopy.js.map +0 -1
  333. package/pf-code-block/BaseCodeBlock.css +0 -7
  334. package/pf-code-block/BaseCodeBlock.d.ts +0 -8
  335. package/pf-code-block/BaseCodeBlock.js +0 -22
  336. package/pf-code-block/BaseCodeBlock.js.map +0 -1
  337. package/pf-icon/BaseIcon.css +0 -22
  338. package/pf-icon/BaseIcon.d.ts +0 -41
  339. package/pf-icon/BaseIcon.js +0 -144
  340. package/pf-icon/BaseIcon.js.map +0 -1
  341. package/pf-label/BaseLabel.css +0 -44
  342. package/pf-label/BaseLabel.d.ts +0 -30
  343. package/pf-label/BaseLabel.js +0 -29
  344. package/pf-label/BaseLabel.js.map +0 -1
  345. package/pf-spinner/BaseSpinner.css +0 -20
  346. package/pf-spinner/BaseSpinner.d.ts +0 -27
  347. package/pf-spinner/BaseSpinner.js +0 -45
  348. package/pf-spinner/BaseSpinner.js.map +0 -1
  349. package/pf-switch/BaseSwitch.css +0 -36
  350. package/pf-switch/BaseSwitch.d.ts +0 -19
  351. package/pf-switch/BaseSwitch.js +0 -109
  352. package/pf-switch/BaseSwitch.js.map +0 -1
  353. package/pf-tabs/BaseTab.css +0 -60
  354. package/pf-tabs/BaseTab.d.ts +0 -32
  355. package/pf-tabs/BaseTab.js +0 -83
  356. package/pf-tabs/BaseTab.js.map +0 -1
  357. package/pf-tabs/BaseTabPanel.css +0 -7
  358. package/pf-tabs/BaseTabPanel.d.ts +0 -7
  359. package/pf-tabs/BaseTabPanel.js +0 -36
  360. package/pf-tabs/BaseTabPanel.js.map +0 -1
  361. package/pf-tabs/BaseTabs.css +0 -86
  362. package/pf-tabs/BaseTabs.d.ts +0 -38
  363. package/pf-tabs/BaseTabs.js +0 -221
  364. package/pf-tabs/BaseTabs.js.map +0 -1
  365. package/pf-tile/BaseTile.d.ts +0 -13
  366. package/pf-tile/BaseTile.js +0 -28
  367. package/pf-tile/BaseTile.js.map +0 -1
  368. package/pf-tooltip/BaseTooltip.css +0 -70
  369. package/pf-tooltip/BaseTooltip.d.ts +0 -16
  370. package/pf-tooltip/BaseTooltip.js +0 -54
  371. package/pf-tooltip/BaseTooltip.js.map +0 -1
@@ -1,86 +1,37 @@
1
- import { __decorate } from "tslib";
2
- import { observed } from '@patternfly/pfe-core/decorators.js';
1
+ var _PfAccordion_instances, _PfAccordion_logger, _PfAccordion_initialized, _PfAccordion_mo, _PfAccordion_tabindex, _PfAccordion_expandedIndex, _PfAccordion_activeHeader_get, _PfAccordion_init, _PfAccordion_panelForHeader, _PfAccordion_expandHeader, _PfAccordion_expandPanel, _PfAccordion_collapseHeader, _PfAccordion_collapsePanel, _PfAccordion_allHeaders, _PfAccordion_allPanels, _PfAccordion_getIndex;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet, __decorate } from "tslib";
3
+ import { LitElement, html } from 'lit';
4
+ import { observes } from '@patternfly/pfe-core/decorators/observes.js';
5
+ import { listen } from '@patternfly/pfe-core/decorators/listen.js';
3
6
  import { property } from 'lit/decorators/property.js';
4
7
  import { customElement } from 'lit/decorators/custom-element.js';
5
- import { BaseAccordion } from './BaseAccordion.js';
6
- import { BaseAccordionHeader } from './BaseAccordionHeader.js';
8
+ import { RovingTabindexController } from '@patternfly/pfe-core/controllers/roving-tabindex-controller.js';
9
+ import { NumberListConverter } from '@patternfly/pfe-core';
10
+ import { Logger } from '@patternfly/pfe-core/controllers/logger.js';
11
+ import { PfAccordionHeader, PfAccordionHeaderChangeEvent } from './pf-accordion-header.js';
12
+ import { PfAccordionPanel } from './pf-accordion-panel.js';
7
13
  export * from './pf-accordion-header.js';
8
14
  export * from './pf-accordion-panel.js';
9
15
  import { css } from "lit";
10
16
  const style = css `:host {\n\t--pf-c-accordion--BackgroundColor: var(--pf-global--BackgroundColor--100, #fff);\n\t--pf-c-accordion__toggle--PaddingTop: var(--pf-global--spacer--sm, 0.5rem);\n\t--pf-c-accordion__toggle--PaddingRight: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion__toggle--PaddingBottom: var(--pf-global--spacer--sm, 0.5rem);\n\t--pf-c-accordion__toggle--PaddingLeft: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion__toggle--before--BackgroundColor: transparent;\n\t--pf-c-accordion__toggle--before--Top: 0;\n\t--pf-c-accordion__toggle--hover--BackgroundColor: var(--pf-global--BackgroundColor--200, #f0f0f0);\n\t--pf-c-accordion__toggle--focus--BackgroundColor: var(--pf-global--BackgroundColor--200, #f0f0f0);\n\t--pf-c-accordion__toggle--active--BackgroundColor: var(--pf-global--BackgroundColor--200, #f0f0f0);\n\t--pf-c-accordion__toggle--before--Width: var(--pf-global--BorderWidth--lg, 3px);\n\t--pf-c-accordion__toggle--m-expanded--before--BackgroundColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-accordion__toggle-text--MaxWidth: calc(100% - var(--pf-global--spacer--lg, 1.5rem));\n\t--pf-c-accordion__toggle--hover__toggle-text--Color: var(--pf-global--link--Color, #06c);\n\t--pf-c-accordion__toggle--active__toggle-text--Color: var(--pf-global--link--Color, #06c);\n\t--pf-c-accordion__toggle--active__toggle-text--FontWeight: var(--pf-global--FontWeight--semi-bold, 700);\n\t--pf-c-accordion__toggle--focus__toggle-text--Color: var(--pf-global--link--Color, #06c);\n\t--pf-c-accordion__toggle--focus__toggle-text--FontWeight: var(--pf-global--FontWeight--semi-bold, 700);\n\t--pf-c-accordion__toggle--m-expanded__toggle-text--Color: var(--pf-global--link--Color, #06c);\n\t--pf-c-accordion__toggle--m-expanded__toggle-text--FontWeight: var(--pf-global--FontWeight--semi-bold, 700);\n\t--pf-c-accordion__toggle-icon--Transition: .2s ease-in 0s;\n\t--pf-c-accordion__toggle--m-expanded__toggle-icon--Rotate: 90deg;\n\t--pf-c-accordion__expanded-content--Color: var(--pf-global--Color--200, #6a6e73);\n\t--pf-c-accordion__expanded-content--FontSize: var(--pf-global--FontSize--sm, 0.875rem);\n\t--pf-c-accordion__expanded-content--m-expanded__expanded-content-body--before--BackgroundColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-accordion__expanded-content--m-fixed--MaxHeight: 9.375rem;\n\t--pf-c-accordion__expanded-content-body--PaddingTop: var(--pf-global--spacer--sm, 0.5rem);\n\t--pf-c-accordion__expanded-content-body--PaddingRight: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion__expanded-content-body--PaddingBottom: var(--pf-global--spacer--sm, 0.5rem);\n\t--pf-c-accordion__expanded-content-body--PaddingLeft: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion__expanded-content-body--expanded-content-body--PaddingTop: 0;\n\t--pf-c-accordion__expanded-content-body--before--BackgroundColor: transparent;\n\t--pf-c-accordion__expanded-content-body--before--Width: var(--pf-global--BorderWidth--lg, 3px);\n\t--pf-c-accordion__expanded-content-body--before--Top: 0;\n\t--pf-c-accordion--m-display-lg__toggle--PaddingTop: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion--m-display-lg__toggle--PaddingRight: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion--m-display-lg__toggle--PaddingBottom: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion--m-display-lg__toggle--PaddingLeft: var(--pf-global--spacer--lg, 1.5rem);\n\t--pf-c-accordion--m-display-lg__toggle--FontFamily: var(--pf-global--FontFamily--heading--sans-serif, "RedHatDisplay", "Overpass", overpass, helvetica, arial, sans-serif);\n\t--pf-c-accordion--m-display-lg__toggle--FontSize: var(--pf-global--FontSize--xl, 1.25rem);\n\t--pf-c-accordion--m-display-lg__toggle--hover__toggle-text--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-accordion--m-display-lg__toggle--active__toggle-text--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-accordion--m-display-lg__toggle--active__toggle-text--FontWeight: var(--pf-global--FontWeight--normal, 400);\n\t--pf-c-accordion--m-display-lg__toggle--focus__toggle-text--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-accordion--m-display-lg__toggle--focus__toggle-text--FontWeight: var(--pf-global--FontWeight--normal, 400);\n\t--pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--FontWeight: var(--pf-global--FontWeight--normal, 400);\n\t--pf-c-accordion--m-display-lg__expanded-content--FontSize: var(--pf-global--FontSize--md, 1rem);\n\t--pf-c-accordion--m-display-lg__expanded-content--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-accordion--m-display-lg__expanded-content-body--PaddingTop: 0;\n\t--pf-c-accordion--m-display-lg__expanded-content-body--PaddingRight: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion--m-display-lg__expanded-content-body--PaddingBottom: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-accordion--m-display-lg__expanded-content-body--last-child--PaddingBottom: var(--pf-global--spacer--lg, 1.5rem);\n\t--pf-c-accordion--m-display-lg__expanded-content-body--PaddingLeft: var(--pf-global--spacer--lg, 1.5rem);\n\t--pf-c-accordion--m-bordered--BorderTopWidth: var(--pf-global--BorderWidth--sm, 1px);\n\t--pf-c-accordion--m-bordered--BorderTopColor: var(--pf-global--BorderColor--100, #d2d2d2);\n\t--pf-c-accordion--m-bordered__toggle--before--Top: calc(-1 * var(--pf-global--BorderWidth--sm, 1px));\n\t--pf-c-accordion--m-bordered__toggle--after--BorderColor: var(--pf-global--BorderColor--100, #d2d2d2);\n\t--pf-c-accordion--m-bordered__toggle--after--BorderTopWidth: 0;\n\t--pf-c-accordion--m-bordered__toggle--after--BorderBottomWidth: var(--pf-global--BorderWidth--sm, 1px);\n\t--pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomWidth: var(--pf-global--BorderWidth--sm, 1px);\n\t--pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomColor: var(--pf-global--BorderColor--100, #d2d2d2);\n\tcolor: var(--pf-global--Color--100, #151515);\n\tbackground-color: var(--pf-c-accordion--BackgroundColor);\n}\n\n:host([bordered]) ::slotted(pf-accordion-header:first-child),\n:host([large]) ::slotted(pf-accordion-header:first-child) {\n display: block;\n border-top: 1px solid var(--accordion__bordered--Color);\n border-bottom: 1px solid var(--accordion__bordered--Color);\n}\n\n:host([bordered]) ::slotted(pf-accordion-header:not(:first-child)),\n:host([large]) ::slotted(pf-accordion-header:not(:first-child)) {\n display: block;\n border-bottom: 1px solid var(--accordion__bordered--Color);\n}\n\n:host([bordered]) ::slotted(pf-accordion-header:is([expanded])),\n:host([large]) ::slotted(pf-accordion-header:is([expanded])) {\n display: block;\n border-bottom: 0;\n}\n\n:host([bordered]) ::slotted(pf-accordion-panel:is([expanded])),\n:host([large]) ::slotted(pf-accordion-panel:is([expanded])) {\n display: block;\n border-bottom: 1px solid var(--accordion__bordered--Color);\n}\n`;
11
- /**
12
- * An **accordion** is an interactive container that expands and collapses to hide or reveal nested content. It takes advantage of progressive disclosure to help reduce page scrolling, by allowing users to choose whether they want to show or hide more detailed information as needed.
13
- * @summary Toggle the visibility of sections of content
14
- * @fires {AccordionExpandEvent} expand - when a panel expands
15
- * @fires {AccordionCollapseEvent} collapse - when a panel collapses
16
- * @slot
17
- * Place the `pf-accordion-header` and `pf-accordion-panel` elements here.
18
- * @cssprop --pf-c-accordion--BackgroundColor {@default var(--pf-global--BackgroundColor--100, #fff)}
19
- * @cssprop --pf-c-accordion__toggle--PaddingTop {@default var(--pf-global--spacer--sm, 0.5rem)}
20
- * @cssprop --pf-c-accordion__toggle--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}
21
- * @cssprop --pf-c-accordion__toggle--PaddingBottom {@default var(--pf-global--spacer--sm, 0.5rem)}
22
- * @cssprop --pf-c-accordion__toggle--PaddingLeft {@default var(--pf-global--spacer--md, 1rem)}
23
- * @cssprop --pf-c-accordion__toggle--before--BackgroundColor {@default transparent}
24
- * @cssprop --pf-c-accordion__toggle--before--Top {@default 0}
25
- * @cssprop --pf-c-accordion__toggle--hover--BackgroundColor {@default var(--pf-global--BackgroundColor--200, #f0f0f0)}
26
- * @cssprop --pf-c-accordion__toggle--focus--BackgroundColor {@default var(--pf-global--BackgroundColor--200, #f0f0f0)}
27
- * @cssprop --pf-c-accordion__toggle--active--BackgroundColor {@default var(--pf-global--BackgroundColor--200, #f0f0f0)}
28
- * @cssprop --pf-c-accordion__toggle--before--Width {@default var(--pf-global--BorderWidth--lg, 3px)}
29
- * @cssprop --pf-c-accordion__toggle--m-expanded--before--BackgroundColor {@default var(--pf-global--primary-color--100, #06c)}
30
- * @cssprop --pf-c-accordion__toggle-text--MaxWidth {@default calc(100% - var(--pf-global--spacer--lg, 1.5rem))}
31
- * @cssprop --pf-c-accordion__toggle--hover__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}
32
- * @cssprop --pf-c-accordion__toggle--active__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}
33
- * @cssprop --pf-c-accordion__toggle--active__toggle-text--FontWeight {@default var(--pf-global--FontWeight--semi-bold, 700)}
34
- * @cssprop --pf-c-accordion__toggle--focus__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}
35
- * @cssprop --pf-c-accordion__toggle--focus__toggle-text--FontWeight {@default var(--pf-global--FontWeight--semi-bold, 700)}
36
- * @cssprop --pf-c-accordion__toggle--m-expanded__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}
37
- * @cssprop --pf-c-accordion__toggle--m-expanded__toggle-text--FontWeight {@default var(--pf-global--FontWeight--semi-bold, 700)}
38
- * @cssprop --pf-c-accordion__toggle-icon--Transition {@default .2s ease-in 0s}
39
- * @cssprop --pf-c-accordion__toggle--m-expanded__toggle-icon--Rotate {@default 90deg}
40
- * @cssprop --pf-c-accordion__expanded-content--Color {@default var(--pf-global--Color--200, #6a6e73)}
41
- * @cssprop --pf-c-accordion__expanded-content--FontSize {@default var(--pf-global--FontSize--sm, 0.875rem)}
42
- * @cssprop --pf-c-accordion__expanded-content--m-expanded__expanded-content-body--before--BackgroundColor {@default var(--pf-global--primary-color--100, #06c)}
43
- * @cssprop --pf-c-accordion__expanded-content--m-fixed--MaxHeight {@default 9.375rem}
44
- * @cssprop --pf-c-accordion__expanded-content-body--PaddingTop {@default var(--pf-global--spacer--sm, 0.5rem)}
45
- * @cssprop --pf-c-accordion__expanded-content-body--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}
46
- * @cssprop --pf-c-accordion__expanded-content-body--PaddingBottom {@default var(--pf-global--spacer--sm, 0.5rem)}
47
- * @cssprop --pf-c-accordion__expanded-content-body--PaddingLeft {@default var(--pf-global--spacer--md, 1rem)}
48
- * @cssprop --pf-c-accordion__expanded-content-body--expanded-content-body--PaddingTop {@default 0}
49
- * @cssprop --pf-c-accordion__expanded-content-body--before--BackgroundColor {@default transparent}
50
- * @cssprop --pf-c-accordion__expanded-content-body--before--Width {@default var(--pf-global--BorderWidth--lg, 3px)}
51
- * @cssprop --pf-c-accordion__expanded-content-body--before--Top {@default 0}
52
- * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingTop {@default var(--pf-global--spacer--md, 1rem)}
53
- * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}
54
- * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingBottom {@default var(--pf-global--spacer--md, 1rem)}
55
- * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingLeft {@default var(--pf-global--spacer--lg, 1.5rem)}
56
- * @cssprop --pf-c-accordion--m-display-lg__toggle--FontFamily {@default var(--pf-global--FontFamily--heading--sans-serif, "RedHatDisplay", "Overpass", overpass, helvetica, arial, sans-serif)}
57
- * @cssprop --pf-c-accordion--m-display-lg__toggle--FontSize {@default var(--pf-global--FontSize--xl, 1.25rem)}
58
- * @cssprop --pf-c-accordion--m-display-lg__toggle--hover__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}
59
- * @cssprop --pf-c-accordion--m-display-lg__toggle--active__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}
60
- * @cssprop --pf-c-accordion--m-display-lg__toggle--active__toggle-text--FontWeight {@default var(--pf-global--FontWeight--normal, 400)}
61
- * @cssprop --pf-c-accordion--m-display-lg__toggle--focus__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}
62
- * @cssprop --pf-c-accordion--m-display-lg__toggle--focus__toggle-text--FontWeight {@default var(--pf-global--FontWeight--normal, 400)}
63
- * @cssprop --pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}
64
- * @cssprop --pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--FontWeight {@default var(--pf-global--FontWeight--normal, 400)}
65
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content--FontSize {@default var(--pf-global--FontSize--md, 1rem)}
66
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content--Color {@default var(--pf-global--Color--100, #151515)}
67
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingTop {@default 0}
68
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}
69
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingBottom {@default var(--pf-global--spacer--md, 1rem)}
70
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--last-child--PaddingBottom {@default var(--pf-global--spacer--lg, 1.5rem)}
71
- * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingLeft {@default var(--pf-global--spacer--lg, 1.5rem)}
72
- * @cssprop --pf-c-accordion--m-bordered--BorderTopWidth {@default var(--pf-global--BorderWidth--sm, 1px)}
73
- * @cssprop --pf-c-accordion--m-bordered--BorderTopColor {@default var(--pf-global--BorderColor--100, #d2d2d2)}
74
- * @cssprop --pf-c-accordion--m-bordered__toggle--before--Top {@default calc(-1 * var(--pf-global--BorderWidth--sm, 1px))}
75
- * @cssprop --pf-c-accordion--m-bordered__toggle--after--BorderColor {@default var(--pf-global--BorderColor--100, #d2d2d2)}
76
- * @cssprop --pf-c-accordion--m-bordered__toggle--after--BorderTopWidth {@default 0}
77
- * @cssprop --pf-c-accordion--m-bordered__toggle--after--BorderBottomWidth {@default var(--pf-global--BorderWidth--sm, 1px)}
78
- * @cssprop --pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomWidth {@default var(--pf-global--BorderWidth--sm, 1px)}
79
- * @cssprop --pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomColor {@default var(--pf-global--BorderColor--100, #d2d2d2)}
80
- */
81
- let PfAccordion = class PfAccordion extends BaseAccordion {
17
+ export class PfAccordionExpandEvent extends Event {
18
+ constructor(toggle, panel) {
19
+ super('expand', { bubbles: true, cancelable: true });
20
+ this.toggle = toggle;
21
+ this.panel = panel;
22
+ }
23
+ }
24
+ export class PfAccordionCollapseEvent extends Event {
25
+ constructor(toggle, panel) {
26
+ super('collapse', { bubbles: true, cancelable: true });
27
+ this.toggle = toggle;
28
+ this.panel = panel;
29
+ }
30
+ }
31
+ let PfAccordion = class PfAccordion extends LitElement {
82
32
  constructor() {
83
33
  super(...arguments);
34
+ _PfAccordion_instances.add(this);
84
35
  /** When true, only one accordion panel may be expanded at a time */
85
36
  this.single = false;
86
37
  /** Whether to apply the `bordered` style variant */
@@ -88,39 +39,268 @@ let PfAccordion = class PfAccordion extends BaseAccordion {
88
39
  /** Whether to apply the `large` style variant */
89
40
  this.large = false;
90
41
  this.fixed = false;
42
+ _PfAccordion_logger.set(this, new Logger(this));
43
+ // actually is read in #init, by the `||=` operator
44
+ // eslint-disable-next-line no-unused-private-class-members
45
+ _PfAccordion_initialized.set(this, false);
46
+ _PfAccordion_mo.set(this, new MutationObserver(() => __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_init).call(this)));
47
+ _PfAccordion_tabindex.set(this, RovingTabindexController.of(this, {
48
+ getItems: () => this.headers,
49
+ }));
50
+ _PfAccordion_expandedIndex.set(this, []);
51
+ this.expandedSets = new Set();
52
+ }
53
+ /**
54
+ * Sets and reflects the currently expanded accordion 0-based indexes.
55
+ * Use commas to separate multiple indexes.
56
+ * ```html
57
+ * <pf-accordion expanded-index="1,2">
58
+ * ...
59
+ * </pf-accordion>
60
+ * ```
61
+ */
62
+ get expandedIndex() {
63
+ return __classPrivateFieldGet(this, _PfAccordion_expandedIndex, "f");
64
+ }
65
+ set expandedIndex(value) {
66
+ const old = __classPrivateFieldGet(this, _PfAccordion_expandedIndex, "f");
67
+ __classPrivateFieldSet(this, _PfAccordion_expandedIndex, value, "f");
68
+ __classPrivateFieldGet(this, _PfAccordion_tabindex, "f").atFocusedItemIndex = value.at(-1) ?? -1;
69
+ if (JSON.stringify(old) !== JSON.stringify(value)) {
70
+ this.requestUpdate('expandedIndex', old);
71
+ this.collapseAll().then(async () => {
72
+ for (const i of this.expandedIndex) {
73
+ await this.expand(i);
74
+ }
75
+ });
76
+ }
77
+ }
78
+ get headers() {
79
+ return __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_allHeaders).call(this);
80
+ }
81
+ get panels() {
82
+ return __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_allPanels).call(this);
83
+ }
84
+ connectedCallback() {
85
+ super.connectedCallback();
86
+ __classPrivateFieldGet(this, _PfAccordion_mo, "f").observe(this, { childList: true });
87
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_init).call(this);
88
+ }
89
+ render() {
90
+ return html `
91
+ <slot></slot>
92
+ `;
91
93
  }
92
94
  async firstUpdated() {
93
- let index = null;
94
- if (this.single) {
95
- const allHeaders = [...this.querySelectorAll('pf-accordion-header')];
96
- const lastExpanded = allHeaders.filter(x => x.hasAttribute('expanded')).pop();
97
- if (lastExpanded) {
98
- index = allHeaders.indexOf(lastExpanded);
95
+ let lastExpandedIndex;
96
+ const { headers, single } = this;
97
+ const lastExpanded = headers.filter(x => x.hasAttribute('expanded')).pop();
98
+ if (lastExpanded) {
99
+ lastExpandedIndex = headers.indexOf(lastExpanded);
100
+ }
101
+ headers.forEach((header, index) => {
102
+ if (header.expanded && (!single || index === lastExpandedIndex)) {
103
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_expandHeader).call(this, header, index);
104
+ const panel = __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_panelForHeader).call(this, header);
105
+ if (panel) {
106
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_expandPanel).call(this, panel);
107
+ }
99
108
  }
109
+ });
110
+ }
111
+ async getUpdateComplete() {
112
+ const c = await super.getUpdateComplete();
113
+ const results = await Promise.all([
114
+ ...__classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_allHeaders).call(this).map(x => x.updateComplete),
115
+ ...__classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_allPanels).call(this).map(x => x.updateComplete),
116
+ ]);
117
+ return c && results.every(Boolean);
118
+ }
119
+ largeChanged() {
120
+ for (const el of [...this.headers, ...this.panels]) {
121
+ el.toggleAttribute('large', this.large);
100
122
  }
101
- await super.firstUpdated();
102
- if (index !== null) {
103
- this.headers.forEach((_, i) => {
104
- this.headers.at(i)?.toggleAttribute('expanded', i === index);
105
- this.panels.at(i)?.toggleAttribute('expanded', i === index);
106
- });
123
+ }
124
+ updateActiveHeader() {
125
+ if (__classPrivateFieldGet(this, _PfAccordion_instances, "a", _PfAccordion_activeHeader_get)
126
+ && __classPrivateFieldGet(this, _PfAccordion_instances, "a", _PfAccordion_activeHeader_get) !== this.headers.at(__classPrivateFieldGet(this, _PfAccordion_tabindex, "f").atFocusedItemIndex)) {
127
+ __classPrivateFieldGet(this, _PfAccordion_tabindex, "f").atFocusedItemIndex = this.headers.indexOf(__classPrivateFieldGet(this, _PfAccordion_instances, "a", _PfAccordion_activeHeader_get));
128
+ }
129
+ }
130
+ onChange(event) {
131
+ if (event instanceof PfAccordionHeaderChangeEvent && event.accordion === this) {
132
+ const index = __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_getIndex).call(this, event.target);
133
+ if (event.expanded) {
134
+ this.expand(index);
135
+ }
136
+ else {
137
+ this.collapse(index);
138
+ }
139
+ event.stopPropagation();
107
140
  }
108
141
  }
109
- async expand(index, parentAccordion) {
142
+ updateAccessibility() {
143
+ const { headers } = this;
144
+ // For each header in the accordion, attach the aria connections
145
+ headers.forEach(header => {
146
+ const panel = __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_panelForHeader).call(this, header);
147
+ if (panel) {
148
+ header.setAttribute('aria-controls', panel.id);
149
+ panel.setAttribute('aria-labelledby', header.id);
150
+ panel.hidden = !panel.expanded;
151
+ }
152
+ });
153
+ }
154
+ /**
155
+ * Accepts a 0-based index value (integer) for the set of accordion items to expand.
156
+ * Accepts an optional parent accordion to search for headers and panels.
157
+ * @param index index (0-based) of the panel to expand
158
+ */
159
+ async expand(index) {
110
160
  if (index === -1) {
111
161
  return;
112
162
  }
113
- const allHeaders = this.headers;
114
163
  // Get all the headers and capture the item by index value
115
164
  if (this.single) {
116
165
  await Promise.all([
117
- ...allHeaders.map((header, index) => header.expanded && this.collapse(index)),
166
+ ...this.headers.map((header, index) => header.expanded && this.collapse(index)),
118
167
  ]);
119
168
  }
120
- await super.expand(index, parentAccordion);
169
+ const header = this.headers[index];
170
+ if (!header) {
171
+ return;
172
+ }
173
+ const panel = __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_panelForHeader).call(this, header);
174
+ if (!panel) {
175
+ return;
176
+ }
177
+ // If the header and panel exist, open both
178
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_expandHeader).call(this, header, index);
179
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_expandPanel).call(this, panel);
180
+ this.dispatchEvent(new PfAccordionExpandEvent(header, panel));
181
+ await this.updateComplete;
182
+ }
183
+ /**
184
+ * Accepts a 0-based index value (integer) for the set of accordion items to collapse.
185
+ * @param index index (0-based) of the panel to collapse
186
+ */
187
+ async collapse(index) {
188
+ const header = this.headers.at(index);
189
+ const panel = this.panels.at(index);
190
+ if (!header || !panel) {
191
+ return;
192
+ }
193
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_collapseHeader).call(this, header);
194
+ __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_collapsePanel).call(this, panel);
195
+ this.dispatchEvent(new PfAccordionCollapseEvent(header, panel));
196
+ await this.updateComplete;
197
+ }
198
+ /**
199
+ * Accepts a 0-based index value (integer) for the set of accordion items to expand or collapse.
200
+ * @param index index (0-based) of the panel to toggle
201
+ */
202
+ async toggle(index) {
203
+ const { headers } = this;
204
+ const header = headers[index];
205
+ if (!header.expanded) {
206
+ await this.expand(index);
207
+ }
208
+ else {
209
+ await this.collapse(index);
210
+ }
211
+ }
212
+ /**
213
+ * Expands all accordion items.
214
+ */
215
+ async expandAll() {
216
+ this.headers.forEach(header => __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_expandHeader).call(this, header));
217
+ this.panels.forEach(panel => __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_expandPanel).call(this, panel));
218
+ await this.updateComplete;
121
219
  }
220
+ /**
221
+ * Collapses all accordion items.
222
+ */
223
+ async collapseAll() {
224
+ this.headers.forEach(header => __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_collapseHeader).call(this, header));
225
+ this.panels.forEach(panel => __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_collapsePanel).call(this, panel));
226
+ await this.updateComplete;
227
+ }
228
+ };
229
+ _PfAccordion_logger = new WeakMap();
230
+ _PfAccordion_initialized = new WeakMap();
231
+ _PfAccordion_mo = new WeakMap();
232
+ _PfAccordion_tabindex = new WeakMap();
233
+ _PfAccordion_expandedIndex = new WeakMap();
234
+ _PfAccordion_instances = new WeakSet();
235
+ _PfAccordion_activeHeader_get = function _PfAccordion_activeHeader_get() {
236
+ const { headers } = this;
237
+ const index = headers.findIndex(header => header.matches(':focus,:focus-within'));
238
+ return index > -1 ? headers.at(index) : undefined;
239
+ };
240
+ _PfAccordion_init =
241
+ /**
242
+ * Initialize the accordion by connecting headers and panels
243
+ * with aria controls and labels; set up the default disclosure
244
+ * state if not set by the author; and check the URL for default
245
+ * open
246
+ */
247
+ async function _PfAccordion_init() {
248
+ __classPrivateFieldSet(this, _PfAccordion_initialized, __classPrivateFieldGet(this, _PfAccordion_initialized, "f") || !!await this.updateComplete, "f");
249
+ this.updateAccessibility();
250
+ };
251
+ _PfAccordion_panelForHeader = function _PfAccordion_panelForHeader(header) {
252
+ const next = header.nextElementSibling;
253
+ if (!(next instanceof PfAccordionPanel)) {
254
+ return void __classPrivateFieldGet(this, _PfAccordion_logger, "f").error('Sibling element to a header needs to be a panel');
255
+ }
256
+ else {
257
+ return next;
258
+ }
259
+ };
260
+ _PfAccordion_expandHeader = function _PfAccordion_expandHeader(header, index = __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_getIndex).call(this, header)) {
261
+ // If this index is not already listed in the expandedSets array, add it
262
+ this.expandedSets.add(index);
263
+ __classPrivateFieldSet(this, _PfAccordion_expandedIndex, [...this.expandedSets], "f");
264
+ header.expanded = true;
265
+ };
266
+ _PfAccordion_expandPanel = function _PfAccordion_expandPanel(panel) {
267
+ panel.expanded = true;
268
+ panel.hidden = false;
269
+ };
270
+ _PfAccordion_collapseHeader = async function _PfAccordion_collapseHeader(header, index = __classPrivateFieldGet(this, _PfAccordion_instances, "m", _PfAccordion_getIndex).call(this, header)) {
271
+ if (!this.expandedSets) {
272
+ await this.updateComplete;
273
+ }
274
+ this.expandedSets.delete(index);
275
+ header.expanded = false;
276
+ await header.updateComplete;
277
+ };
278
+ _PfAccordion_collapsePanel = async function _PfAccordion_collapsePanel(panel) {
279
+ await panel.updateComplete;
280
+ if (!panel.expanded) {
281
+ return;
282
+ }
283
+ panel.expanded = false;
284
+ panel.hidden = true;
285
+ };
286
+ _PfAccordion_allHeaders = function _PfAccordion_allHeaders(accordion = this) {
287
+ return Array.from(accordion.children ?? []).filter((x) => x instanceof PfAccordionHeader);
288
+ };
289
+ _PfAccordion_allPanels = function _PfAccordion_allPanels(accordion = this) {
290
+ return Array.from(accordion.children ?? []).filter((x) => x instanceof PfAccordionPanel);
291
+ };
292
+ _PfAccordion_getIndex = function _PfAccordion_getIndex(el) {
293
+ if (el instanceof PfAccordionHeader) {
294
+ return this.headers.findIndex(header => header.id === el.id);
295
+ }
296
+ if (el instanceof PfAccordionPanel) {
297
+ return this.panels.findIndex(panel => panel.id === el.id);
298
+ }
299
+ __classPrivateFieldGet(this, _PfAccordion_logger, "f").warn('The #getIndex method expects to receive a header or panel element.');
300
+ return -1;
122
301
  };
123
302
  PfAccordion.styles = [style];
303
+ PfAccordion.version = "4.0.0";
124
304
  __decorate([
125
305
  property({ reflect: true, type: Boolean })
126
306
  ], PfAccordion.prototype, "single", void 0);
@@ -128,14 +308,23 @@ __decorate([
128
308
  property({ type: Boolean, reflect: true })
129
309
  ], PfAccordion.prototype, "bordered", void 0);
130
310
  __decorate([
131
- observed(function largeChanged() {
132
- [...this.headers, ...this.panels].forEach(el => el.toggleAttribute('large', this.large));
133
- }),
134
311
  property({ type: Boolean, reflect: true })
135
312
  ], PfAccordion.prototype, "large", void 0);
136
313
  __decorate([
137
314
  property({ type: Boolean, reflect: true })
138
315
  ], PfAccordion.prototype, "fixed", void 0);
316
+ __decorate([
317
+ property({ attribute: 'expanded-index', converter: NumberListConverter })
318
+ ], PfAccordion.prototype, "expandedIndex", null);
319
+ __decorate([
320
+ observes('large')
321
+ ], PfAccordion.prototype, "largeChanged", null);
322
+ __decorate([
323
+ listen('focusin')
324
+ ], PfAccordion.prototype, "updateActiveHeader", null);
325
+ __decorate([
326
+ listen('change')
327
+ ], PfAccordion.prototype, "onChange", null);
139
328
  PfAccordion = __decorate([
140
329
  customElement('pf-accordion')
141
330
  ], PfAccordion);
@@ -1 +1 @@
1
- {"version":3,"file":"pf-accordion.js","sourceRoot":"","sources":["pf-accordion.ts"],"names":[],"mappings":"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","sourcesContent":["import { observed } from '@patternfly/pfe-core/decorators.js';\nimport { property } from 'lit/decorators/property.js';\nimport { customElement } from 'lit/decorators/custom-element.js';\n\nimport { BaseAccordion } from './BaseAccordion.js';\nimport { BaseAccordionHeader } from './BaseAccordionHeader.js';\n\nexport * from './pf-accordion-header.js';\nexport * from './pf-accordion-panel.js';\n\nimport style from './pf-accordion.css';\n\n/**\n * An **accordion** is an interactive container that expands and collapses to hide or reveal nested content. It takes advantage of progressive disclosure to help reduce page scrolling, by allowing users to choose whether they want to show or hide more detailed information as needed.\n * @summary Toggle the visibility of sections of content\n * @fires {AccordionExpandEvent} expand - when a panel expands\n * @fires {AccordionCollapseEvent} collapse - when a panel collapses\n * @slot\n * Place the `pf-accordion-header` and `pf-accordion-panel` elements here.\n * @cssprop --pf-c-accordion--BackgroundColor {@default var(--pf-global--BackgroundColor--100, #fff)}\n * @cssprop --pf-c-accordion__toggle--PaddingTop {@default var(--pf-global--spacer--sm, 0.5rem)}\n * @cssprop --pf-c-accordion__toggle--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion__toggle--PaddingBottom {@default var(--pf-global--spacer--sm, 0.5rem)}\n * @cssprop --pf-c-accordion__toggle--PaddingLeft {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion__toggle--before--BackgroundColor {@default transparent}\n * @cssprop --pf-c-accordion__toggle--before--Top {@default 0}\n * @cssprop --pf-c-accordion__toggle--hover--BackgroundColor {@default var(--pf-global--BackgroundColor--200, #f0f0f0)}\n * @cssprop --pf-c-accordion__toggle--focus--BackgroundColor {@default var(--pf-global--BackgroundColor--200, #f0f0f0)}\n * @cssprop --pf-c-accordion__toggle--active--BackgroundColor {@default var(--pf-global--BackgroundColor--200, #f0f0f0)}\n * @cssprop --pf-c-accordion__toggle--before--Width {@default var(--pf-global--BorderWidth--lg, 3px)}\n * @cssprop --pf-c-accordion__toggle--m-expanded--before--BackgroundColor {@default var(--pf-global--primary-color--100, #06c)}\n * @cssprop --pf-c-accordion__toggle-text--MaxWidth {@default calc(100% - var(--pf-global--spacer--lg, 1.5rem))}\n * @cssprop --pf-c-accordion__toggle--hover__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}\n * @cssprop --pf-c-accordion__toggle--active__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}\n * @cssprop --pf-c-accordion__toggle--active__toggle-text--FontWeight {@default var(--pf-global--FontWeight--semi-bold, 700)}\n * @cssprop --pf-c-accordion__toggle--focus__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}\n * @cssprop --pf-c-accordion__toggle--focus__toggle-text--FontWeight {@default var(--pf-global--FontWeight--semi-bold, 700)}\n * @cssprop --pf-c-accordion__toggle--m-expanded__toggle-text--Color {@default var(--pf-global--link--Color, #06c)}\n * @cssprop --pf-c-accordion__toggle--m-expanded__toggle-text--FontWeight {@default var(--pf-global--FontWeight--semi-bold, 700)}\n * @cssprop --pf-c-accordion__toggle-icon--Transition {@default .2s ease-in 0s}\n * @cssprop --pf-c-accordion__toggle--m-expanded__toggle-icon--Rotate {@default 90deg}\n * @cssprop --pf-c-accordion__expanded-content--Color {@default var(--pf-global--Color--200, #6a6e73)}\n * @cssprop --pf-c-accordion__expanded-content--FontSize {@default var(--pf-global--FontSize--sm, 0.875rem)}\n * @cssprop --pf-c-accordion__expanded-content--m-expanded__expanded-content-body--before--BackgroundColor {@default var(--pf-global--primary-color--100, #06c)}\n * @cssprop --pf-c-accordion__expanded-content--m-fixed--MaxHeight {@default 9.375rem}\n * @cssprop --pf-c-accordion__expanded-content-body--PaddingTop {@default var(--pf-global--spacer--sm, 0.5rem)}\n * @cssprop --pf-c-accordion__expanded-content-body--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion__expanded-content-body--PaddingBottom {@default var(--pf-global--spacer--sm, 0.5rem)}\n * @cssprop --pf-c-accordion__expanded-content-body--PaddingLeft {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion__expanded-content-body--expanded-content-body--PaddingTop {@default 0}\n * @cssprop --pf-c-accordion__expanded-content-body--before--BackgroundColor {@default transparent}\n * @cssprop --pf-c-accordion__expanded-content-body--before--Width {@default var(--pf-global--BorderWidth--lg, 3px)}\n * @cssprop --pf-c-accordion__expanded-content-body--before--Top {@default 0}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingTop {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingBottom {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--PaddingLeft {@default var(--pf-global--spacer--lg, 1.5rem)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--FontFamily {@default var(--pf-global--FontFamily--heading--sans-serif, \"RedHatDisplay\", \"Overpass\", overpass, helvetica, arial, sans-serif)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--FontSize {@default var(--pf-global--FontSize--xl, 1.25rem)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--hover__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--active__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--active__toggle-text--FontWeight {@default var(--pf-global--FontWeight--normal, 400)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--focus__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--focus__toggle-text--FontWeight {@default var(--pf-global--FontWeight--normal, 400)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--Color {@default var(--pf-global--Color--100, #151515)}\n * @cssprop --pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--FontWeight {@default var(--pf-global--FontWeight--normal, 400)}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content--FontSize {@default var(--pf-global--FontSize--md, 1rem)}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content--Color {@default var(--pf-global--Color--100, #151515)}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingTop {@default 0}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingRight {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingBottom {@default var(--pf-global--spacer--md, 1rem)}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--last-child--PaddingBottom {@default var(--pf-global--spacer--lg, 1.5rem)}\n * @cssprop --pf-c-accordion--m-display-lg__expanded-content-body--PaddingLeft {@default var(--pf-global--spacer--lg, 1.5rem)}\n * @cssprop --pf-c-accordion--m-bordered--BorderTopWidth {@default var(--pf-global--BorderWidth--sm, 1px)}\n * @cssprop --pf-c-accordion--m-bordered--BorderTopColor {@default var(--pf-global--BorderColor--100, #d2d2d2)}\n * @cssprop --pf-c-accordion--m-bordered__toggle--before--Top {@default calc(-1 * var(--pf-global--BorderWidth--sm, 1px))}\n * @cssprop --pf-c-accordion--m-bordered__toggle--after--BorderColor {@default var(--pf-global--BorderColor--100, #d2d2d2)}\n * @cssprop --pf-c-accordion--m-bordered__toggle--after--BorderTopWidth {@default 0}\n * @cssprop --pf-c-accordion--m-bordered__toggle--after--BorderBottomWidth {@default var(--pf-global--BorderWidth--sm, 1px)}\n * @cssprop --pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomWidth {@default var(--pf-global--BorderWidth--sm, 1px)}\n * @cssprop --pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomColor {@default var(--pf-global--BorderColor--100, #d2d2d2)}\n */\n@customElement('pf-accordion')\nexport class PfAccordion extends BaseAccordion {\n static readonly styles = [style];\n\n /** When true, only one accordion panel may be expanded at a time */\n @property({ reflect: true, type: Boolean }) single = false;\n\n /** Whether to apply the `bordered` style variant */\n @property({ type: Boolean, reflect: true }) bordered = false;\n\n /** Whether to apply the `large` style variant */\n @observed(function largeChanged(this: PfAccordion) {\n [...this.headers, ...this.panels].forEach(el => el.toggleAttribute('large', this.large));\n })\n @property({ type: Boolean, reflect: true }) large = false;\n\n @property({ type: Boolean, reflect: true }) fixed = false;\n\n async firstUpdated() {\n let index: number | null = null;\n if (this.single) {\n const allHeaders = [...this.querySelectorAll('pf-accordion-header')];\n const lastExpanded = allHeaders.filter(x => x.hasAttribute('expanded')).pop();\n if (lastExpanded) {\n index = allHeaders.indexOf(lastExpanded);\n }\n }\n await super.firstUpdated();\n if (index !== null) {\n this.headers.forEach((_, i) => {\n this.headers.at(i)?.toggleAttribute('expanded', i === index);\n this.panels.at(i)?.toggleAttribute('expanded', i === index);\n });\n }\n }\n\n override async expand(index: number, parentAccordion?: BaseAccordion) {\n if (index === -1) {\n return;\n }\n\n const allHeaders: BaseAccordionHeader[] = this.headers;\n\n // Get all the headers and capture the item by index value\n if (this.single) {\n await Promise.all([\n ...allHeaders.map((header, index) => header.expanded && this.collapse(index)),\n ]);\n }\n\n await super.expand(index, parentAccordion);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-accordion': PfAccordion;\n }\n}\n"]}
1
+ {"version":3,"file":"pf-accordion.js","sourceRoot":"","sources":["pf-accordion.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html, type TemplateResult } from 'lit';\nimport { observes } from '@patternfly/pfe-core/decorators/observes.js';\nimport { listen } from '@patternfly/pfe-core/decorators/listen.js';\nimport { property } from 'lit/decorators/property.js';\nimport { customElement } from 'lit/decorators/custom-element.js';\n\nimport { RovingTabindexController } from '@patternfly/pfe-core/controllers/roving-tabindex-controller.js';\nimport { NumberListConverter } from '@patternfly/pfe-core';\nimport { Logger } from '@patternfly/pfe-core/controllers/logger.js';\n\nimport { PfAccordionHeader, PfAccordionHeaderChangeEvent } from './pf-accordion-header.js';\nimport { PfAccordionPanel } from './pf-accordion-panel.js';\n\nexport * from './pf-accordion-header.js';\nexport * from './pf-accordion-panel.js';\n\nimport style from './pf-accordion.css';\n\nexport class PfAccordionExpandEvent extends Event {\n constructor(\n public toggle: PfAccordionHeader,\n public panel: PfAccordionPanel,\n ) {\n super('expand', { bubbles: true, cancelable: true });\n }\n}\n\nexport class PfAccordionCollapseEvent extends Event {\n constructor(\n public toggle: PfAccordionHeader,\n public panel: PfAccordionPanel,\n ) {\n super('collapse', { bubbles: true, cancelable: true });\n }\n}\n\n/**\n * An **accordion** is an interactive container that expands and collapses to hide or reveal nested content. It takes advantage of progressive disclosure to help reduce page scrolling, by allowing users to choose whether they want to show or hide more detailed information as needed.\n * @summary Toggle the visibility of sections of content\n * @fires {AccordionExpandEvent} expand - when a panel expands\n * @fires {AccordionCollapseEvent} collapse - when a panel collapses\n * @slot\n * Place the `pf-accordion-header` and `pf-accordion-panel` elements here.\n * @cssprop [--pf-c-accordion--BackgroundColor=var(--pf-global--BackgroundColor--100, #fff)]\n * @cssprop [--pf-c-accordion__toggle--PaddingTop=var(--pf-global--spacer--sm, 0.5rem)]\n * @cssprop [--pf-c-accordion__toggle--PaddingRight=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion__toggle--PaddingBottom=var(--pf-global--spacer--sm, 0.5rem)]\n * @cssprop [--pf-c-accordion__toggle--PaddingLeft=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion__toggle--before--BackgroundColor=transparent]\n * @cssprop [--pf-c-accordion__toggle--before--Top=0]\n * @cssprop [--pf-c-accordion__toggle--hover--BackgroundColor=var(--pf-global--BackgroundColor--200, #f0f0f0)]\n * @cssprop [--pf-c-accordion__toggle--focus--BackgroundColor=var(--pf-global--BackgroundColor--200, #f0f0f0)]\n * @cssprop [--pf-c-accordion__toggle--active--BackgroundColor=var(--pf-global--BackgroundColor--200, #f0f0f0)]\n * @cssprop [--pf-c-accordion__toggle--before--Width=var(--pf-global--BorderWidth--lg, 3px)]\n * @cssprop [--pf-c-accordion__toggle--m-expanded--before--BackgroundColor=var(--pf-global--primary-color--100, #06c)]\n * @cssprop [--pf-c-accordion__toggle-text--MaxWidth=calc(100 - var(--pf-global--spacer--lg, 1.5rem))]\n * @cssprop [--pf-c-accordion__toggle--hover__toggle-text--Color=var(--pf-global--link--Color, #06c)]\n * @cssprop [--pf-c-accordion__toggle--active__toggle-text--Color=var(--pf-global--link--Color, #06c)]\n * @cssprop [--pf-c-accordion__toggle--active__toggle-text--FontWeight=var(--pf-global--FontWeight--semi-bold, 700)]\n * @cssprop [--pf-c-accordion__toggle--focus__toggle-text--Color=var(--pf-global--link--Color, #06c)]\n * @cssprop [--pf-c-accordion__toggle--focus__toggle-text--FontWeight=var(--pf-global--FontWeight--semi-bold, 700)]\n * @cssprop [--pf-c-accordion__toggle--m-expanded__toggle-text--Color=var(--pf-global--link--Color, #06c)]\n * @cssprop [--pf-c-accordion__toggle--m-expanded__toggle-text--FontWeight=var(--pf-global--FontWeight--semi-bold, 700)]\n * @cssprop [--pf-c-accordion__toggle-icon--Transition=.2s ease-in 0s]\n * @cssprop [--pf-c-accordion__toggle--m-expanded__toggle-icon--Rotate=90deg]\n * @cssprop [--pf-c-accordion__expanded-content--Color=var(--pf-global--Color--200, #6a6e73)]\n * @cssprop [--pf-c-accordion__expanded-content--FontSize=var(--pf-global--FontSize--sm, 0.875rem)]\n * @cssprop [--pf-c-accordion__expanded-content--m-expanded__expanded-content-body--before--BackgroundColor=var(--pf-global--primary-color--100, #06c)]\n * @cssprop [--pf-c-accordion__expanded-content--m-fixed--MaxHeight=9.375rem]\n * @cssprop [--pf-c-accordion__expanded-content-body--PaddingTop=var(--pf-global--spacer--sm, 0.5rem)]\n * @cssprop [--pf-c-accordion__expanded-content-body--PaddingRight=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion__expanded-content-body--PaddingBottom=var(--pf-global--spacer--sm, 0.5rem)]\n * @cssprop [--pf-c-accordion__expanded-content-body--PaddingLeft=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion__expanded-content-body--expanded-content-body--PaddingTop=0]\n * @cssprop [--pf-c-accordion__expanded-content-body--before--BackgroundColor=transparent]\n * @cssprop [--pf-c-accordion__expanded-content-body--before--Width=var(--pf-global--BorderWidth--lg, 3px)]\n * @cssprop [--pf-c-accordion__expanded-content-body--before--Top=0]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--PaddingTop=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--PaddingRight=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--PaddingBottom=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--PaddingLeft=var(--pf-global--spacer--lg, 1.5rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--FontFamily=var(--pf-global--FontFamily--heading--sans-serif, \"RedHatDisplay\", \"Overpass\", overpass, helvetica, arial, sans-serif)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--FontSize=var(--pf-global--FontSize--xl, 1.25rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--hover__toggle-text--Color=var(--pf-global--Color--100, #151515)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--active__toggle-text--Color=var(--pf-global--Color--100, #151515)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--active__toggle-text--FontWeight=var(--pf-global--FontWeight--normal, 400)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--focus__toggle-text--Color=var(--pf-global--Color--100, #151515)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--focus__toggle-text--FontWeight=var(--pf-global--FontWeight--normal, 400)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--Color=var(--pf-global--Color--100, #151515)]\n * @cssprop [--pf-c-accordion--m-display-lg__toggle--m-expanded__toggle-text--FontWeight=var(--pf-global--FontWeight--normal, 400)]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content--FontSize=var(--pf-global--FontSize--md, 1rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content--Color=var(--pf-global--Color--100, #151515)]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content-body--PaddingTop=0]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content-body--PaddingRight=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content-body--PaddingBottom=var(--pf-global--spacer--md, 1rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content-body--last-child--PaddingBottom=var(--pf-global--spacer--lg, 1.5rem)]\n * @cssprop [--pf-c-accordion--m-display-lg__expanded-content-body--PaddingLeft=var(--pf-global--spacer--lg, 1.5rem)]\n * @cssprop [--pf-c-accordion--m-bordered--BorderTopWidth=var(--pf-global--BorderWidth--sm, 1px)]\n * @cssprop [--pf-c-accordion--m-bordered--BorderTopColor=var(--pf-global--BorderColor--100, #d2d2d2)]\n * @cssprop [--pf-c-accordion--m-bordered__toggle--before--Top=calc(-1 * var(--pf-global--BorderWidth--sm, 1px))]\n * @cssprop [--pf-c-accordion--m-bordered__toggle--after--BorderColor=var(--pf-global--BorderColor--100, #d2d2d2)]\n * @cssprop [--pf-c-accordion--m-bordered__toggle--after--BorderTopWidth=0]\n * @cssprop [--pf-c-accordion--m-bordered__toggle--after--BorderBottomWidth=var(--pf-global--BorderWidth--sm, 1px)]\n * @cssprop [--pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomWidth=var(--pf-global--BorderWidth--sm, 1px)]\n * @cssprop [--pf-c-accordion--m-bordered__expanded-content--m-expanded__expanded-content-body--last-child--after--BorderBottomColor=var(--pf-global--BorderColor--100, #d2d2d2)]\n */\n@customElement('pf-accordion')\nexport class PfAccordion extends LitElement {\n static readonly styles: CSSStyleSheet[] = [style];\n\n /** When true, only one accordion panel may be expanded at a time */\n @property({ reflect: true, type: Boolean }) single = false;\n\n /** Whether to apply the `bordered` style variant */\n @property({ type: Boolean, reflect: true }) bordered = false;\n\n /** Whether to apply the `large` style variant */\n @property({ type: Boolean, reflect: true }) large = false;\n\n @property({ type: Boolean, reflect: true }) fixed = false;\n\n /**\n * Sets and reflects the currently expanded accordion 0-based indexes.\n * Use commas to separate multiple indexes.\n * ```html\n * <pf-accordion expanded-index=\"1,2\">\n * ...\n * </pf-accordion>\n * ```\n */\n @property({ attribute: 'expanded-index', converter: NumberListConverter })\n get expandedIndex(): number[] {\n return this.#expandedIndex;\n }\n\n set expandedIndex(value) {\n const old = this.#expandedIndex;\n this.#expandedIndex = value;\n this.#tabindex.atFocusedItemIndex = value.at(-1) ?? -1;\n if (JSON.stringify(old) !== JSON.stringify(value)) {\n this.requestUpdate('expandedIndex', old);\n this.collapseAll().then(async () => {\n for (const i of this.expandedIndex) {\n await this.expand(i);\n }\n });\n }\n }\n\n #logger = new Logger(this);\n\n // actually is read in #init, by the `||=` operator\n // eslint-disable-next-line no-unused-private-class-members\n #initialized = false;\n\n #mo = new MutationObserver(() => this.#init());\n\n #tabindex = RovingTabindexController.of(this, {\n getItems: () => this.headers,\n });\n\n #expandedIndex: number[] = [];\n\n protected expandedSets: Set<number> = new Set<number>();\n\n get #activeHeader() {\n const { headers } = this;\n const index = headers.findIndex(header => header.matches(':focus,:focus-within'));\n return index > -1 ? headers.at(index) : undefined;\n }\n\n get headers(): PfAccordionHeader[] {\n return this.#allHeaders();\n }\n\n get panels(): PfAccordionPanel[] {\n return this.#allPanels();\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.#mo.observe(this, { childList: true });\n this.#init();\n }\n\n render(): TemplateResult<1> {\n return html`\n <slot></slot>\n `;\n }\n\n async firstUpdated(): Promise<void> {\n let lastExpandedIndex: number;\n const { headers, single } = this;\n const lastExpanded = headers.filter(x => x.hasAttribute('expanded')).pop();\n if (lastExpanded) {\n lastExpandedIndex = headers.indexOf(lastExpanded);\n }\n headers.forEach((header, index) => {\n if (header.expanded && (!single || index === lastExpandedIndex)) {\n this.#expandHeader(header, index);\n const panel = this.#panelForHeader(header);\n if (panel) {\n this.#expandPanel(panel);\n }\n }\n });\n }\n\n protected override async getUpdateComplete(): Promise<boolean> {\n const c = await super.getUpdateComplete();\n const results = await Promise.all([\n ...this.#allHeaders().map(x => x.updateComplete),\n ...this.#allPanels().map(x => x.updateComplete),\n ]);\n return c && results.every(Boolean);\n }\n\n @observes('large')\n protected largeChanged(): void {\n for (const el of [...this.headers, ...this.panels]) {\n el.toggleAttribute('large', this.large);\n }\n }\n\n /**\n * Initialize the accordion by connecting headers and panels\n * with aria controls and labels; set up the default disclosure\n * state if not set by the author; and check the URL for default\n * open\n */\n async #init() {\n this.#initialized ||= !!await this.updateComplete;\n this.updateAccessibility();\n }\n\n @listen('focusin')\n protected updateActiveHeader(): void {\n if (this.#activeHeader\n && this.#activeHeader !== this.headers.at(this.#tabindex.atFocusedItemIndex)) {\n this.#tabindex.atFocusedItemIndex = this.headers.indexOf(this.#activeHeader);\n }\n }\n\n #panelForHeader(header: PfAccordionHeader) {\n const next = header.nextElementSibling;\n if (!(next instanceof PfAccordionPanel)) {\n return void this.#logger.error('Sibling element to a header needs to be a panel');\n } else {\n return next;\n }\n }\n\n #expandHeader(header: PfAccordionHeader, index = this.#getIndex(header)) {\n // If this index is not already listed in the expandedSets array, add it\n this.expandedSets.add(index);\n this.#expandedIndex = [...this.expandedSets as Set<number>];\n header.expanded = true;\n }\n\n #expandPanel(panel: PfAccordionPanel) {\n panel.expanded = true;\n panel.hidden = false;\n }\n\n async #collapseHeader(header: PfAccordionHeader, index = this.#getIndex(header)) {\n if (!this.expandedSets) {\n await this.updateComplete;\n }\n this.expandedSets.delete(index);\n header.expanded = false;\n await header.updateComplete;\n }\n\n async #collapsePanel(panel: PfAccordionPanel) {\n await panel.updateComplete;\n if (!panel.expanded) {\n return;\n }\n\n panel.expanded = false;\n panel.hidden = true;\n }\n\n @listen('change')\n protected onChange(event: PfAccordionHeaderChangeEvent): void {\n if (event instanceof PfAccordionHeaderChangeEvent && event.accordion === this) {\n const index = this.#getIndex(event.target);\n if (event.expanded) {\n this.expand(index);\n } else {\n this.collapse(index);\n }\n event.stopPropagation();\n }\n }\n\n #allHeaders(accordion: PfAccordion = this): PfAccordionHeader[] {\n return Array.from(accordion.children ?? []).filter((x): x is PfAccordionHeader =>\n x instanceof PfAccordionHeader);\n }\n\n #allPanels(accordion: PfAccordion = this): PfAccordionPanel[] {\n return Array.from(accordion.children ?? []).filter((x): x is PfAccordionPanel =>\n x instanceof PfAccordionPanel);\n }\n\n #getIndex(el: Element | null) {\n if (el instanceof PfAccordionHeader) {\n return this.headers.findIndex(header => header.id === el.id);\n }\n\n if (el instanceof PfAccordionPanel) {\n return this.panels.findIndex(panel => panel.id === el.id);\n }\n\n this.#logger.warn('The #getIndex method expects to receive a header or panel element.');\n return -1;\n }\n\n public updateAccessibility(): void {\n const { headers } = this;\n\n // For each header in the accordion, attach the aria connections\n headers.forEach(header => {\n const panel = this.#panelForHeader(header);\n if (panel) {\n header.setAttribute('aria-controls', panel.id);\n panel.setAttribute('aria-labelledby', header.id);\n panel.hidden = !panel.expanded;\n }\n });\n }\n\n /**\n * Accepts a 0-based index value (integer) for the set of accordion items to expand.\n * Accepts an optional parent accordion to search for headers and panels.\n * @param index index (0-based) of the panel to expand\n */\n public async expand(index: number): Promise<void> {\n if (index === -1) {\n return;\n }\n\n // Get all the headers and capture the item by index value\n if (this.single) {\n await Promise.all([\n ...this.headers.map((header, index) => header.expanded && this.collapse(index)),\n ]);\n }\n\n const header = this.headers[index];\n if (!header) {\n return;\n }\n\n const panel = this.#panelForHeader(header);\n if (!panel) {\n return;\n }\n\n // If the header and panel exist, open both\n this.#expandHeader(header, index);\n this.#expandPanel(panel);\n\n this.dispatchEvent(new PfAccordionExpandEvent(header, panel));\n\n await this.updateComplete;\n }\n\n /**\n * Accepts a 0-based index value (integer) for the set of accordion items to collapse.\n * @param index index (0-based) of the panel to collapse\n */\n public async collapse(index: number): Promise<void> {\n const header = this.headers.at(index);\n const panel = this.panels.at(index);\n\n if (!header || !panel) {\n return;\n }\n\n this.#collapseHeader(header);\n this.#collapsePanel(panel);\n\n this.dispatchEvent(new PfAccordionCollapseEvent(header, panel));\n await this.updateComplete;\n }\n\n /**\n * Accepts a 0-based index value (integer) for the set of accordion items to expand or collapse.\n * @param index index (0-based) of the panel to toggle\n */\n public async toggle(index: number): Promise<void> {\n const { headers } = this;\n const header = headers[index];\n\n if (!header.expanded) {\n await this.expand(index);\n } else {\n await this.collapse(index);\n }\n }\n\n /**\n * Expands all accordion items.\n */\n public async expandAll(): Promise<void> {\n this.headers.forEach(header => this.#expandHeader(header));\n this.panels.forEach(panel => this.#expandPanel(panel));\n await this.updateComplete;\n }\n\n\n /**\n * Collapses all accordion items.\n */\n public async collapseAll(): Promise<void> {\n this.headers.forEach(header => this.#collapseHeader(header));\n this.panels.forEach(panel => this.#collapsePanel(panel));\n await this.updateComplete;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-accordion': PfAccordion;\n }\n}\n"]}
@@ -1,5 +1,6 @@
1
1
  import { test } from '@playwright/test';
2
2
  import { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';
3
+ import { SSRPage } from '@patternfly/pfe-tools/test/playwright/SSRPage.js';
3
4
  const tagName = 'pf-accordion';
4
5
  test.describe(tagName, () => {
5
6
  test('snapshot', async ({ page }) => {
@@ -7,5 +8,16 @@ test.describe(tagName, () => {
7
8
  await componentPage.navigate();
8
9
  await componentPage.snapshot();
9
10
  });
11
+ test('ssr', async ({ browser }) => {
12
+ const fixture = new SSRPage({
13
+ tagName,
14
+ browser,
15
+ demoDir: new URL('../demo/', import.meta.url),
16
+ importSpecifiers: [
17
+ `@patternfly/elements/${tagName}/${tagName}.js`,
18
+ ],
19
+ });
20
+ await fixture.snapshots();
21
+ });
10
22
  });
11
23
  //# sourceMappingURL=pf-accordion.e2e.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pf-accordion.e2e.js","sourceRoot":"","sources":["pf-accordion.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AAEnF,MAAM,OAAO,GAAG,cAAc,CAAC;AAE/B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IAC1B,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAClC,MAAM,aAAa,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC/B,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { test } from '@playwright/test';\nimport { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';\n\nconst tagName = 'pf-accordion';\n\ntest.describe(tagName, () => {\n test('snapshot', async ({ page }) => {\n const componentPage = new PfeDemoPage(page, tagName);\n await componentPage.navigate();\n await componentPage.snapshot();\n });\n});\n"]}
1
+ {"version":3,"file":"pf-accordion.e2e.js","sourceRoot":"","sources":["pf-accordion.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,MAAM,kDAAkD,CAAC;AAE3E,MAAM,OAAO,GAAG,cAAc,CAAC;AAE/B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IAC1B,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAClC,MAAM,aAAa,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC/B,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAChC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC1B,OAAO;YACP,OAAO;YACP,OAAO,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7C,gBAAgB,EAAE;gBAChB,wBAAwB,OAAO,IAAI,OAAO,KAAK;aAChD;SACF,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { test } from '@playwright/test';\nimport { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';\nimport { SSRPage } from '@patternfly/pfe-tools/test/playwright/SSRPage.js';\n\nconst tagName = 'pf-accordion';\n\ntest.describe(tagName, () => {\n test('snapshot', async ({ page }) => {\n const componentPage = new PfeDemoPage(page, tagName);\n await componentPage.navigate();\n await componentPage.snapshot();\n });\n\n test('ssr', async ({ browser }) => {\n const fixture = new SSRPage({\n tagName,\n browser,\n demoDir: new URL('../demo/', import.meta.url),\n importSpecifiers: [\n `@patternfly/elements/${tagName}/${tagName}.js`,\n ],\n });\n await fixture.snapshots();\n });\n});\n"]}