@patternfly/elements 3.0.2 → 4.0.1

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,10 +1,10 @@
1
1
  // pf-tabs/pf-tabs.js
2
2
  import { createComponent } from '@lit/react';
3
3
  import react from 'react';
4
- import { PfTabs as elementClass } from '@patternfly/elements/pf-tabs/pf-tabs.js';
4
+ import { PfTabs } from '@patternfly/elements/pf-tabs/pf-tabs.js';
5
5
  export const Tabs = createComponent({
6
6
  tagName: 'pf-tabs',
7
- elementClass,
7
+ elementClass: PfTabs,
8
8
  react,
9
9
  events: {},
10
10
  });
@@ -1,10 +1,10 @@
1
1
  // pf-text-area/pf-text-area.js
2
2
  import { createComponent } from '@lit/react';
3
3
  import react from 'react';
4
- import { PfTextArea as elementClass } from '@patternfly/elements/pf-text-area/pf-text-area.js';
4
+ import { PfTextArea } from '@patternfly/elements/pf-text-area/pf-text-area.js';
5
5
  export const TextArea = createComponent({
6
6
  tagName: 'pf-text-area',
7
- elementClass,
7
+ elementClass: PfTextArea,
8
8
  react,
9
9
  events: {},
10
10
  });
@@ -1,10 +1,10 @@
1
1
  // pf-text-input/pf-text-input.js
2
2
  import { createComponent } from '@lit/react';
3
3
  import react from 'react';
4
- import { PfTextInput as elementClass } from '@patternfly/elements/pf-text-input/pf-text-input.js';
4
+ import { PfTextInput } from '@patternfly/elements/pf-text-input/pf-text-input.js';
5
5
  export const TextInput = createComponent({
6
6
  tagName: 'pf-text-input',
7
- elementClass,
7
+ elementClass: PfTextInput,
8
8
  react,
9
9
  events: {},
10
10
  });
@@ -1,10 +1,10 @@
1
1
  // pf-tile/pf-tile.js
2
2
  import { createComponent } from '@lit/react';
3
3
  import react from 'react';
4
- import { PfTile as elementClass } from '@patternfly/elements/pf-tile/pf-tile.js';
4
+ import { PfTile } from '@patternfly/elements/pf-tile/pf-tile.js';
5
5
  export const Tile = createComponent({
6
6
  tagName: 'pf-tile',
7
- elementClass,
7
+ elementClass: PfTile,
8
8
  react,
9
9
  events: {},
10
10
  });
@@ -1,10 +1,10 @@
1
1
  // pf-timestamp/pf-timestamp.js
2
2
  import { createComponent } from '@lit/react';
3
3
  import react from 'react';
4
- import { PfTimestamp as elementClass } from '@patternfly/elements/pf-timestamp/pf-timestamp.js';
4
+ import { PfTimestamp } from '@patternfly/elements/pf-timestamp/pf-timestamp.js';
5
5
  export const Timestamp = createComponent({
6
6
  tagName: 'pf-timestamp',
7
- elementClass,
7
+ elementClass: PfTimestamp,
8
8
  react,
9
9
  events: {},
10
10
  });
@@ -1,10 +1,10 @@
1
1
  // pf-tooltip/pf-tooltip.js
2
2
  import { createComponent } from '@lit/react';
3
3
  import react from 'react';
4
- import { PfTooltip as elementClass } from '@patternfly/elements/pf-tooltip/pf-tooltip.js';
4
+ import { PfTooltip } from '@patternfly/elements/pf-tooltip/pf-tooltip.js';
5
5
  export const Tooltip = createComponent({
6
6
  tagName: 'pf-tooltip',
7
- elementClass,
7
+ elementClass: PfTooltip,
8
8
  react,
9
9
  events: {},
10
10
  });
@@ -1,61 +0,0 @@
1
- import type { TemplateResult } from 'lit';
2
- import { LitElement } from 'lit';
3
- import { ComposedEvent } from '@patternfly/pfe-core';
4
- import { BaseAccordionHeader } from './BaseAccordionHeader.js';
5
- import { BaseAccordionPanel } from './BaseAccordionPanel.js';
6
- export declare class AccordionExpandEvent extends ComposedEvent {
7
- toggle: BaseAccordionHeader;
8
- panel: BaseAccordionPanel;
9
- constructor(toggle: BaseAccordionHeader, panel: BaseAccordionPanel);
10
- }
11
- export declare class AccordionCollapseEvent extends ComposedEvent {
12
- toggle: BaseAccordionHeader;
13
- panel: BaseAccordionPanel;
14
- constructor(toggle: BaseAccordionHeader, panel: BaseAccordionPanel);
15
- }
16
- export declare abstract class BaseAccordion extends LitElement {
17
- #private;
18
- static isAccordion(target: EventTarget | null): target is BaseAccordion;
19
- static isHeader(target: EventTarget | null): target is BaseAccordionHeader;
20
- static isPanel(target: EventTarget | null): target is BaseAccordionPanel;
21
- /**
22
- * Sets and reflects the currently expanded accordion 0-based indexes.
23
- * Use commas to separate multiple indexes.
24
- * ```html
25
- * <pf-accordion expanded-index="1,2">
26
- * ...
27
- * </pf-accordion>
28
- * ```
29
- */
30
- get expandedIndex(): number[];
31
- set expandedIndex(value: number[]);
32
- get headers(): BaseAccordionHeader[];
33
- get panels(): BaseAccordionPanel[];
34
- protected expandedSets: Set<number>;
35
- protected getUpdateComplete(): Promise<boolean>;
36
- connectedCallback(): void;
37
- render(): TemplateResult;
38
- firstUpdated(): Promise<void>;
39
- updateAccessibility(): void;
40
- /**
41
- * Accepts a 0-based index value (integer) for the set of accordion items to expand or collapse.
42
- */
43
- toggle(index: number): Promise<void>;
44
- /**
45
- * Accepts a 0-based index value (integer) for the set of accordion items to expand.
46
- * Accepts an optional parent accordion to search for headers and panels.
47
- */
48
- expand(index: number, parentAccordion?: BaseAccordion): Promise<void>;
49
- /**
50
- * Expands all accordion items.
51
- */
52
- expandAll(): Promise<void>;
53
- /**
54
- * Accepts a 0-based index value (integer) for the set of accordion items to collapse.
55
- */
56
- collapse(index: number): Promise<void>;
57
- /**
58
- * Collapses all accordion items.
59
- */
60
- collapseAll(): Promise<void>;
61
- }
@@ -1,269 +0,0 @@
1
- var _BaseAccordion_instances, _a, _BaseAccordion_isAccordionChangeEvent, _BaseAccordion_headerIndex, _BaseAccordion_expandedIndex, _BaseAccordion_activeHeader_get, _BaseAccordion_logger, _BaseAccordion_initialized, _BaseAccordion_mo, _BaseAccordion_init, _BaseAccordion_updateActiveHeader, _BaseAccordion_panelForHeader, _BaseAccordion_expandHeader, _BaseAccordion_expandPanel, _BaseAccordion_collapseHeader, _BaseAccordion_collapsePanel, _BaseAccordion_onChange, _BaseAccordion_allHeaders, _BaseAccordion_allPanels, _BaseAccordion_getIndex;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet, __decorate } from "tslib";
3
- import { LitElement, html } from 'lit';
4
- import { property } from 'lit/decorators/property.js';
5
- import { NumberListConverter, ComposedEvent } from '@patternfly/pfe-core';
6
- import { Logger } from '@patternfly/pfe-core/controllers/logger.js';
7
- import { AccordionHeaderChangeEvent, BaseAccordionHeader } from './BaseAccordionHeader.js';
8
- import { BaseAccordionPanel } from './BaseAccordionPanel.js';
9
- import { RovingTabindexController } from '@patternfly/pfe-core/controllers/roving-tabindex-controller.js';
10
- export class AccordionExpandEvent extends ComposedEvent {
11
- constructor(toggle, panel) {
12
- super('expand');
13
- this.toggle = toggle;
14
- this.panel = panel;
15
- }
16
- }
17
- export class AccordionCollapseEvent extends ComposedEvent {
18
- constructor(toggle, panel) {
19
- super('collapse');
20
- this.toggle = toggle;
21
- this.panel = panel;
22
- }
23
- }
24
- export class BaseAccordion extends LitElement {
25
- constructor() {
26
- super(...arguments);
27
- _BaseAccordion_instances.add(this);
28
- _BaseAccordion_headerIndex.set(this, new RovingTabindexController(this, {
29
- getItems: () => this.headers,
30
- }));
31
- _BaseAccordion_expandedIndex.set(this, []);
32
- this.expandedSets = new Set();
33
- _BaseAccordion_logger.set(this, new Logger(this));
34
- // actually is read in #init, by the `||=` operator
35
- // eslint-disable-next-line no-unused-private-class-members
36
- _BaseAccordion_initialized.set(this, false);
37
- _BaseAccordion_mo.set(this, new MutationObserver(() => __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_init).call(this)));
38
- }
39
- static isAccordion(target) {
40
- return target instanceof _a;
41
- }
42
- static isHeader(target) {
43
- return target instanceof BaseAccordionHeader;
44
- }
45
- static isPanel(target) {
46
- return target instanceof BaseAccordionPanel;
47
- }
48
- /**
49
- * Sets and reflects the currently expanded accordion 0-based indexes.
50
- * Use commas to separate multiple indexes.
51
- * ```html
52
- * <pf-accordion expanded-index="1,2">
53
- * ...
54
- * </pf-accordion>
55
- * ```
56
- */
57
- get expandedIndex() {
58
- return __classPrivateFieldGet(this, _BaseAccordion_expandedIndex, "f");
59
- }
60
- set expandedIndex(value) {
61
- const old = __classPrivateFieldGet(this, _BaseAccordion_expandedIndex, "f");
62
- __classPrivateFieldSet(this, _BaseAccordion_expandedIndex, value, "f");
63
- if (JSON.stringify(old) !== JSON.stringify(value)) {
64
- this.requestUpdate('expandedIndex', old);
65
- this.collapseAll().then(async () => {
66
- for (const i of this.expandedIndex) {
67
- await this.expand(i, this);
68
- }
69
- });
70
- }
71
- }
72
- get headers() {
73
- return __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_allHeaders).call(this);
74
- }
75
- get panels() {
76
- return __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_allPanels).call(this);
77
- }
78
- async getUpdateComplete() {
79
- const c = await super.getUpdateComplete();
80
- const results = await Promise.all([
81
- ...__classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_allHeaders).call(this).map(x => x.updateComplete),
82
- ...__classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_allPanels).call(this).map(x => x.updateComplete),
83
- ]);
84
- return c && results.every(Boolean);
85
- }
86
- connectedCallback() {
87
- super.connectedCallback();
88
- this.addEventListener('change', __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_onChange));
89
- __classPrivateFieldGet(this, _BaseAccordion_mo, "f").observe(this, { childList: true });
90
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_init).call(this);
91
- }
92
- render() {
93
- return html `
94
- <slot></slot>
95
- `;
96
- }
97
- async firstUpdated() {
98
- const { headers } = this;
99
- headers.forEach((header, index) => {
100
- if (header.expanded) {
101
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_expandHeader).call(this, header, index);
102
- const panel = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_panelForHeader).call(this, header);
103
- if (panel) {
104
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_expandPanel).call(this, panel);
105
- }
106
- }
107
- });
108
- }
109
- updateAccessibility() {
110
- __classPrivateFieldGet(this, _BaseAccordion_headerIndex, "f").updateItems();
111
- const { headers } = this;
112
- // For each header in the accordion, attach the aria connections
113
- headers.forEach(header => {
114
- const panel = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_panelForHeader).call(this, header);
115
- if (panel) {
116
- header.setAttribute('aria-controls', panel.id);
117
- panel.setAttribute('aria-labelledby', header.id);
118
- panel.hidden = !panel.expanded;
119
- }
120
- });
121
- }
122
- /**
123
- * Accepts a 0-based index value (integer) for the set of accordion items to expand or collapse.
124
- */
125
- async toggle(index) {
126
- const { headers } = this;
127
- const header = headers[index];
128
- if (!header.expanded) {
129
- await this.expand(index);
130
- }
131
- else {
132
- await this.collapse(index);
133
- }
134
- }
135
- /**
136
- * Accepts a 0-based index value (integer) for the set of accordion items to expand.
137
- * Accepts an optional parent accordion to search for headers and panels.
138
- */
139
- async expand(index, parentAccordion) {
140
- const allHeaders = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_allHeaders).call(this, parentAccordion);
141
- const header = allHeaders[index];
142
- if (!header) {
143
- return;
144
- }
145
- const panel = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_panelForHeader).call(this, header);
146
- if (!panel) {
147
- return;
148
- }
149
- // If the header and panel exist, open both
150
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_expandHeader).call(this, header, index),
151
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_expandPanel).call(this, panel),
152
- header.focus();
153
- this.dispatchEvent(new AccordionExpandEvent(header, panel));
154
- await this.updateComplete;
155
- }
156
- /**
157
- * Expands all accordion items.
158
- */
159
- async expandAll() {
160
- this.headers.forEach(header => __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_expandHeader).call(this, header));
161
- this.panels.forEach(panel => __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_expandPanel).call(this, panel));
162
- await this.updateComplete;
163
- }
164
- /**
165
- * Accepts a 0-based index value (integer) for the set of accordion items to collapse.
166
- */
167
- async collapse(index) {
168
- const header = this.headers.at(index);
169
- const panel = this.panels.at(index);
170
- if (!header || !panel) {
171
- return;
172
- }
173
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_collapseHeader).call(this, header);
174
- __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_collapsePanel).call(this, panel);
175
- this.dispatchEvent(new AccordionCollapseEvent(header, panel));
176
- await this.updateComplete;
177
- }
178
- /**
179
- * Collapses all accordion items.
180
- */
181
- async collapseAll() {
182
- this.headers.forEach(header => __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_collapseHeader).call(this, header));
183
- this.panels.forEach(panel => __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_collapsePanel).call(this, panel));
184
- await this.updateComplete;
185
- }
186
- }
187
- _a = BaseAccordion, _BaseAccordion_headerIndex = new WeakMap(), _BaseAccordion_expandedIndex = new WeakMap(), _BaseAccordion_logger = new WeakMap(), _BaseAccordion_initialized = new WeakMap(), _BaseAccordion_mo = new WeakMap(), _BaseAccordion_instances = new WeakSet(), _BaseAccordion_isAccordionChangeEvent = function _BaseAccordion_isAccordionChangeEvent(event) {
188
- return event instanceof AccordionHeaderChangeEvent;
189
- }, _BaseAccordion_activeHeader_get = function _BaseAccordion_activeHeader_get() {
190
- const { headers } = this;
191
- const index = headers.findIndex(header => header.matches(':focus,:focus-within'));
192
- return index > -1 ? headers.at(index) : undefined;
193
- }, _BaseAccordion_init =
194
- /**
195
- * Initialize the accordion by connecting headers and panels
196
- * with aria controls and labels; set up the default disclosure
197
- * state if not set by the author; and check the URL for default
198
- * open
199
- */
200
- async function _BaseAccordion_init() {
201
- __classPrivateFieldSet(this, _BaseAccordion_initialized, __classPrivateFieldGet(this, _BaseAccordion_initialized, "f") || !!await this.updateComplete, "f");
202
- // Event listener to the accordion header after the accordion has been initialized to add the roving tabindex
203
- this.addEventListener('focusin', __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_updateActiveHeader));
204
- this.updateAccessibility();
205
- }, _BaseAccordion_updateActiveHeader = function _BaseAccordion_updateActiveHeader() {
206
- if (__classPrivateFieldGet(this, _BaseAccordion_instances, "a", _BaseAccordion_activeHeader_get) !== __classPrivateFieldGet(this, _BaseAccordion_headerIndex, "f").activeItem) {
207
- __classPrivateFieldGet(this, _BaseAccordion_headerIndex, "f").setActiveItem(__classPrivateFieldGet(this, _BaseAccordion_instances, "a", _BaseAccordion_activeHeader_get));
208
- }
209
- }, _BaseAccordion_panelForHeader = function _BaseAccordion_panelForHeader(header) {
210
- const next = header.nextElementSibling;
211
- if (!_a.isPanel(next)) {
212
- return void __classPrivateFieldGet(this, _BaseAccordion_logger, "f").error('Sibling element to a header needs to be a panel');
213
- }
214
- else {
215
- return next;
216
- }
217
- }, _BaseAccordion_expandHeader = function _BaseAccordion_expandHeader(header, index = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_getIndex).call(this, header)) {
218
- // If this index is not already listed in the expandedSets array, add it
219
- this.expandedSets.add(index);
220
- __classPrivateFieldSet(this, _BaseAccordion_expandedIndex, [...this.expandedSets], "f");
221
- header.expanded = true;
222
- }, _BaseAccordion_expandPanel = function _BaseAccordion_expandPanel(panel) {
223
- panel.expanded = true;
224
- panel.hidden = false;
225
- }, _BaseAccordion_collapseHeader = async function _BaseAccordion_collapseHeader(header, index = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_getIndex).call(this, header)) {
226
- if (!this.expandedSets) {
227
- await this.updateComplete;
228
- }
229
- this.expandedSets.delete(index);
230
- header.expanded = false;
231
- await header.updateComplete;
232
- }, _BaseAccordion_collapsePanel = async function _BaseAccordion_collapsePanel(panel) {
233
- await panel.updateComplete;
234
- if (!panel.expanded) {
235
- return;
236
- }
237
- panel.expanded = false;
238
- panel.hidden = true;
239
- }, _BaseAccordion_onChange = function _BaseAccordion_onChange(event) {
240
- if (__classPrivateFieldGet(_a, _a, "m", _BaseAccordion_isAccordionChangeEvent).call(_a, event)) {
241
- const index = __classPrivateFieldGet(this, _BaseAccordion_instances, "m", _BaseAccordion_getIndex).call(this, event.target);
242
- if (event.expanded) {
243
- this.expand(index, event.accordion);
244
- }
245
- else {
246
- this.collapse(index);
247
- }
248
- }
249
- }, _BaseAccordion_allHeaders = function _BaseAccordion_allHeaders(accordion = this) {
250
- return Array.from(accordion.children).filter(_a.isHeader);
251
- }, _BaseAccordion_allPanels = function _BaseAccordion_allPanels(accordion = this) {
252
- return Array.from(accordion.children).filter(_a.isPanel);
253
- }, _BaseAccordion_getIndex = function _BaseAccordion_getIndex(el) {
254
- if (_a.isHeader(el)) {
255
- return this.headers.findIndex(header => header.id === el.id);
256
- }
257
- if (_a.isPanel(el)) {
258
- return this.panels.findIndex(panel => panel.id === el.id);
259
- }
260
- __classPrivateFieldGet(this, _BaseAccordion_logger, "f").warn('The #getIndex method expects to receive a header or panel element.');
261
- return -1;
262
- };
263
- __decorate([
264
- property({
265
- attribute: 'expanded-index',
266
- converter: NumberListConverter,
267
- })
268
- ], BaseAccordion.prototype, "expandedIndex", null);
269
- //# sourceMappingURL=BaseAccordion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseAccordion.js","sourceRoot":"","sources":["BaseAccordion.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TemplateResult } from 'lit';\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators/property.js';\n\nimport { NumberListConverter, ComposedEvent } from '@patternfly/pfe-core';\nimport { Logger } from '@patternfly/pfe-core/controllers/logger.js';\n\nimport { AccordionHeaderChangeEvent, BaseAccordionHeader } from './BaseAccordionHeader.js';\nimport { BaseAccordionPanel } from './BaseAccordionPanel.js';\n\nimport { RovingTabindexController } from '@patternfly/pfe-core/controllers/roving-tabindex-controller.js';\n\nexport class AccordionExpandEvent extends ComposedEvent {\n constructor(\n public toggle: BaseAccordionHeader,\n public panel: BaseAccordionPanel,\n ) {\n super('expand');\n }\n}\n\nexport class AccordionCollapseEvent extends ComposedEvent {\n constructor(\n public toggle: BaseAccordionHeader,\n public panel: BaseAccordionPanel,\n ) {\n super('collapse');\n }\n}\n\nexport abstract class BaseAccordion extends LitElement {\n static isAccordion(target: EventTarget | null): target is BaseAccordion {\n return target instanceof BaseAccordion;\n }\n\n static isHeader(target: EventTarget | null): target is BaseAccordionHeader {\n return target instanceof BaseAccordionHeader;\n }\n\n static isPanel(target: EventTarget | null): target is BaseAccordionPanel {\n return target instanceof BaseAccordionPanel;\n }\n\n static #isAccordionChangeEvent(event: Event): event is AccordionHeaderChangeEvent {\n return event instanceof AccordionHeaderChangeEvent;\n }\n\n #headerIndex = new RovingTabindexController<BaseAccordionHeader>(this, {\n getItems: () => this.headers,\n });\n\n #expandedIndex: number[] = [];\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({\n attribute: 'expanded-index',\n converter: NumberListConverter,\n })\n get expandedIndex() {\n return this.#expandedIndex;\n }\n\n set expandedIndex(value) {\n const old = this.#expandedIndex;\n this.#expandedIndex = value;\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, this);\n }\n });\n }\n }\n\n get headers() {\n return this.#allHeaders();\n }\n\n get panels() {\n return this.#allPanels();\n }\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 protected expandedSets = new Set<number>();\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 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 #mo = new MutationObserver(() => this.#init());\n\n connectedCallback() {\n super.connectedCallback();\n this.addEventListener('change', this.#onChange as EventListener);\n this.#mo.observe(this, { childList: true });\n this.#init();\n }\n\n render(): TemplateResult {\n return html`\n <slot></slot>\n `;\n }\n\n async firstUpdated() {\n const { headers } = this;\n headers.forEach((header, index) => {\n if (header.expanded) {\n this.#expandHeader(header, index);\n const panel = this.#panelForHeader(header);\n if (panel) {\n this.#expandPanel(panel);\n }\n }\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 // Event listener to the accordion header after the accordion has been initialized to add the roving tabindex\n this.addEventListener('focusin', this.#updateActiveHeader);\n this.updateAccessibility();\n }\n\n #updateActiveHeader() {\n if (this.#activeHeader !== this.#headerIndex.activeItem) {\n this.#headerIndex.setActiveItem(this.#activeHeader);\n }\n }\n\n #panelForHeader(header: BaseAccordionHeader) {\n const next = header.nextElementSibling;\n if (!BaseAccordion.isPanel(next)) {\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: BaseAccordionHeader, 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: BaseAccordionPanel) {\n panel.expanded = true;\n panel.hidden = false;\n }\n\n async #collapseHeader(header: BaseAccordionHeader, 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: BaseAccordionPanel) {\n await panel.updateComplete;\n if (!panel.expanded) {\n return;\n }\n\n panel.expanded = false;\n panel.hidden = true;\n }\n\n #onChange(event: AccordionHeaderChangeEvent) {\n if (BaseAccordion.#isAccordionChangeEvent(event)) {\n const index = this.#getIndex(event.target);\n if (event.expanded) {\n this.expand(index, event.accordion);\n } else {\n this.collapse(index);\n }\n }\n }\n\n #allHeaders(accordion: BaseAccordion = this): BaseAccordionHeader[] {\n return Array.from(accordion.children).filter(BaseAccordion.isHeader);\n }\n\n #allPanels(accordion: BaseAccordion = this): BaseAccordionPanel[] {\n return Array.from(accordion.children).filter(BaseAccordion.isPanel);\n }\n\n #getIndex(el: Element | null) {\n if (BaseAccordion.isHeader(el)) {\n return this.headers.findIndex(header => header.id === el.id);\n }\n\n if (BaseAccordion.isPanel(el)) {\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() {\n this.#headerIndex.updateItems();\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 or collapse.\n */\n public async toggle(index: number) {\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 * 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 */\n public async expand(index: number, parentAccordion?: BaseAccordion) {\n const allHeaders: BaseAccordionHeader[] = this.#allHeaders(parentAccordion);\n\n const header = allHeaders[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 header.focus();\n\n this.dispatchEvent(new AccordionExpandEvent(header, panel));\n\n await this.updateComplete;\n }\n\n /**\n * Expands all accordion items.\n */\n public async expandAll() {\n this.headers.forEach(header => this.#expandHeader(header));\n this.panels.forEach(panel => this.#expandPanel(panel));\n await this.updateComplete;\n }\n\n /**\n * Accepts a 0-based index value (integer) for the set of accordion items to collapse.\n */\n public async collapse(index: number) {\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 AccordionCollapseEvent(header, panel));\n await this.updateComplete;\n }\n\n /**\n * Collapses all accordion items.\n */\n public async collapseAll() {\n this.headers.forEach(header => this.#collapseHeader(header));\n this.panels.forEach(panel => this.#collapsePanel(panel));\n await this.updateComplete;\n }\n}\n"]}
@@ -1,39 +0,0 @@
1
- #heading {
2
- font-size: 100%;
3
- padding: 0;
4
- margin: 0;
5
- }
6
-
7
- button,
8
- a {
9
- cursor: pointer;
10
- }
11
-
12
- .toggle,
13
- .toggle:before,
14
- .toggle:after {
15
- padding: 0;
16
- margin: 0;
17
- }
18
-
19
- .toggle {
20
- position: relative;
21
- display: flex;
22
- align-items: center;
23
- justify-content: space-between;
24
- width: 100%;
25
- border: 0;
26
- }
27
-
28
- .toggle:after {
29
- content: "";
30
- position: absolute;
31
- bottom: 0;
32
- left: 0;
33
- }
34
-
35
- span {
36
- overflow: hidden;
37
- text-overflow: ellipsis;
38
- white-space: nowrap;
39
- }
@@ -1,29 +0,0 @@
1
- import type { TemplateResult } from 'lit';
2
- import { LitElement } from 'lit';
3
- import { BaseAccordion } from './BaseAccordion.js';
4
- import { ComposedEvent } from '@patternfly/pfe-core';
5
- export declare class AccordionHeaderChangeEvent extends ComposedEvent {
6
- expanded: boolean;
7
- toggle: BaseAccordionHeader;
8
- accordion: BaseAccordion;
9
- target: BaseAccordionHeader;
10
- constructor(expanded: boolean, toggle: BaseAccordionHeader, accordion: BaseAccordion);
11
- }
12
- export declare abstract class BaseAccordionHeader extends LitElement {
13
- #private;
14
- static readonly styles: CSSStyleSheet[];
15
- static readonly shadowRootOptions: {
16
- delegatesFocus: boolean;
17
- mode: ShadowRootMode;
18
- slotAssignment?: SlotAssignmentMode | undefined;
19
- customElements?: CustomElementRegistry | undefined;
20
- registry?: CustomElementRegistry | undefined;
21
- };
22
- expanded: boolean;
23
- headingText?: string;
24
- headingTag?: string;
25
- connectedCallback(): void;
26
- /** Template hook: before </button> */
27
- renderAfterButton?(): TemplateResult;
28
- render(): TemplateResult;
29
- }
@@ -1,128 +0,0 @@
1
- var _BaseAccordionHeader_instances, _BaseAccordionHeader_generatedHtag, _BaseAccordionHeader_logger, _BaseAccordionHeader_header, _BaseAccordionHeader_initHeader, _BaseAccordionHeader_renderHeaderContent, _BaseAccordionHeader_getOrCreateHeader, _BaseAccordionHeader_onClick;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet, __decorate } from "tslib";
3
- import { LitElement, html } from 'lit';
4
- import { property } from 'lit/decorators/property.js';
5
- import { BaseAccordion } from './BaseAccordion.js';
6
- import { ComposedEvent } from '@patternfly/pfe-core';
7
- import { getRandomId } from '@patternfly/pfe-core/functions/random.js';
8
- import { Logger } from '@patternfly/pfe-core/controllers/logger.js';
9
- import { css } from "lit";
10
- const style = css `#heading {\n font-size: 100%;\n padding: 0;\n margin: 0;\n}\n\nbutton,\na {\n cursor: pointer;\n}\n\n.toggle,\n.toggle:before,\n.toggle:after {\n padding: 0;\n margin: 0;\n}\n\n.toggle {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n border: 0;\n}\n\n.toggle:after {\n content: "";\n position: absolute;\n bottom: 0;\n left: 0;\n}\n\nspan {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n`;
11
- const isPorHeader = (el) => el instanceof HTMLElement && !!el.tagName.match(/P|^H[1-6]/);
12
- export class AccordionHeaderChangeEvent extends ComposedEvent {
13
- constructor(expanded, toggle, accordion) {
14
- super('change');
15
- this.expanded = expanded;
16
- this.toggle = toggle;
17
- this.accordion = accordion;
18
- }
19
- }
20
- export class BaseAccordionHeader extends LitElement {
21
- constructor() {
22
- super(...arguments);
23
- _BaseAccordionHeader_instances.add(this);
24
- this.expanded = false;
25
- _BaseAccordionHeader_generatedHtag.set(this, void 0);
26
- _BaseAccordionHeader_logger.set(this, new Logger(this));
27
- _BaseAccordionHeader_header.set(this, void 0);
28
- }
29
- connectedCallback() {
30
- super.connectedCallback();
31
- this.addEventListener('click', __classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_onClick));
32
- this.hidden = true;
33
- this.id || (this.id = getRandomId(this.localName));
34
- __classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_initHeader).call(this);
35
- }
36
- render() {
37
- switch (this.headingTag) {
38
- case 'h1': return html `<h1 id="heading">${__classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this)}</h1>`;
39
- case 'h2': return html `<h2 id="heading">${__classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this)}</h2>`;
40
- case 'h3': return html `<h3 id="heading">${__classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this)}</h3>`;
41
- case 'h4': return html `<h4 id="heading">${__classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this)}</h4>`;
42
- case 'h5': return html `<h5 id="heading">${__classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this)}</h5>`;
43
- case 'h6': return html `<h6 id="heading">${__classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this)}</h6>`;
44
- default: return __classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_renderHeaderContent).call(this);
45
- }
46
- }
47
- }
48
- _BaseAccordionHeader_generatedHtag = new WeakMap(), _BaseAccordionHeader_logger = new WeakMap(), _BaseAccordionHeader_header = new WeakMap(), _BaseAccordionHeader_instances = new WeakSet(), _BaseAccordionHeader_initHeader = async function _BaseAccordionHeader_initHeader() {
49
- if (this.headingText && !this.headingTag) {
50
- this.headingTag = 'h3';
51
- }
52
- __classPrivateFieldSet(this, _BaseAccordionHeader_header, __classPrivateFieldGet(this, _BaseAccordionHeader_instances, "m", _BaseAccordionHeader_getOrCreateHeader).call(this), "f");
53
- // prevent double-logging
54
- if (__classPrivateFieldGet(this, _BaseAccordionHeader_header, "f") !== __classPrivateFieldGet(this, _BaseAccordionHeader_generatedHtag, "f")) {
55
- __classPrivateFieldSet(this, _BaseAccordionHeader_generatedHtag, undefined, "f");
56
- }
57
- do {
58
- await this.updateComplete;
59
- } while (!await this.updateComplete);
60
- // Remove the hidden attribute after upgrade
61
- this.hidden = false;
62
- }, _BaseAccordionHeader_renderHeaderContent = function _BaseAccordionHeader_renderHeaderContent() {
63
- const headingText = this.headingText?.trim() ?? __classPrivateFieldGet(this, _BaseAccordionHeader_header, "f")?.textContent?.trim();
64
- return html `
65
- <button id="button"
66
- class="toggle"
67
- aria-expanded="${String(!!this.expanded)}">
68
- <span part="text">${headingText ?? html `
69
- <slot></slot>`}
70
- </span>
71
- ${this.renderAfterButton?.()}
72
- </button>
73
- `;
74
- }, _BaseAccordionHeader_getOrCreateHeader = function _BaseAccordionHeader_getOrCreateHeader() {
75
- // Check if there is no nested element or nested textNodes
76
- if (!this.firstElementChild && !this.firstChild) {
77
- return void __classPrivateFieldGet(this, _BaseAccordionHeader_logger, "f").warn('No header content provided');
78
- }
79
- else if (this.firstElementChild) {
80
- const [heading, ...otherContent] = Array.from(this.children)
81
- .filter((x) => !x.hasAttribute('slot') && isPorHeader(x));
82
- // If there is no content inside the slot, return empty with a warning
83
- // else, if there is more than 1 element in the slot, capture the first h-tag
84
- if (!heading) {
85
- return void __classPrivateFieldGet(this, _BaseAccordionHeader_logger, "f").warn('No heading information was provided.');
86
- }
87
- else if (otherContent.length) {
88
- __classPrivateFieldGet(this, _BaseAccordionHeader_logger, "f").warn('Heading currently only supports 1 tag; extra tags will be ignored.');
89
- }
90
- return heading;
91
- }
92
- else {
93
- if (!__classPrivateFieldGet(this, _BaseAccordionHeader_generatedHtag, "f")) {
94
- __classPrivateFieldGet(this, _BaseAccordionHeader_logger, "f").warn('Header should contain at least 1 heading tag for correct semantics.');
95
- }
96
- __classPrivateFieldSet(this, _BaseAccordionHeader_generatedHtag, document.createElement('h3'), "f");
97
- // If a text node was provided but no semantics, default to an h3
98
- // otherwise, incorrect semantics were used, create an H3 and try to capture the content
99
- if (this.firstChild?.nodeType === Node.TEXT_NODE) {
100
- __classPrivateFieldGet(this, _BaseAccordionHeader_generatedHtag, "f").textContent = this.firstChild.textContent;
101
- }
102
- else {
103
- __classPrivateFieldGet(this, _BaseAccordionHeader_generatedHtag, "f").textContent = this.textContent;
104
- }
105
- return __classPrivateFieldGet(this, _BaseAccordionHeader_generatedHtag, "f");
106
- }
107
- }, _BaseAccordionHeader_onClick = function _BaseAccordionHeader_onClick(event) {
108
- const expanded = !this.expanded;
109
- const acc = event.composedPath().find(BaseAccordion.isAccordion);
110
- if (acc) {
111
- this.dispatchEvent(new AccordionHeaderChangeEvent(expanded, this, acc));
112
- }
113
- };
114
- BaseAccordionHeader.styles = [style];
115
- BaseAccordionHeader.shadowRootOptions = {
116
- ...LitElement.shadowRootOptions,
117
- delegatesFocus: true,
118
- };
119
- __decorate([
120
- property({ type: Boolean, reflect: true })
121
- ], BaseAccordionHeader.prototype, "expanded", void 0);
122
- __decorate([
123
- property({ reflect: true, attribute: 'heading-text' })
124
- ], BaseAccordionHeader.prototype, "headingText", void 0);
125
- __decorate([
126
- property({ reflect: true, attribute: 'heading-tag' })
127
- ], BaseAccordionHeader.prototype, "headingTag", void 0);
128
- //# sourceMappingURL=BaseAccordionHeader.js.map