@patternfly/elements 3.0.0 → 3.0.2

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 (365) hide show
  1. package/custom-elements.json +490 -484
  2. package/package.json +1 -1
  3. package/pf-accordion/BaseAccordion.js +2 -1
  4. package/pf-accordion/BaseAccordion.js.map +1 -1
  5. package/pf-accordion/BaseAccordionHeader.js +4 -1
  6. package/pf-accordion/BaseAccordionHeader.js.map +1 -1
  7. package/pf-accordion/BaseAccordionPanel.d.ts +1 -1
  8. package/pf-accordion/pf-accordion-header.d.ts +1 -1
  9. package/pf-accordion/pf-accordion.d.ts +0 -5
  10. package/pf-accordion/pf-accordion.js +0 -5
  11. package/pf-accordion/pf-accordion.js.map +1 -1
  12. package/pf-accordion/test/pf-accordion.e2e.d.ts +1 -0
  13. package/pf-accordion/test/pf-accordion.e2e.js +11 -0
  14. package/pf-accordion/test/pf-accordion.e2e.js.map +1 -0
  15. package/pf-accordion/test/pf-accordion.spec.d.ts +1 -0
  16. package/pf-accordion/test/pf-accordion.spec.js +1222 -0
  17. package/pf-accordion/test/pf-accordion.spec.js.map +1 -0
  18. package/pf-avatar/BaseAvatar.d.ts +1 -1
  19. package/pf-avatar/test/pf-avatar.e2e.d.ts +1 -0
  20. package/pf-avatar/test/pf-avatar.e2e.js +11 -0
  21. package/pf-avatar/test/pf-avatar.e2e.js.map +1 -0
  22. package/pf-avatar/test/pf-avatar.spec.d.ts +1 -0
  23. package/pf-avatar/test/pf-avatar.spec.js +45 -0
  24. package/pf-avatar/test/pf-avatar.spec.js.map +1 -0
  25. package/pf-back-to-top/demo/demo.css +25 -0
  26. package/pf-back-to-top/pf-back-to-top.d.ts +1 -1
  27. package/pf-back-to-top/test/pf-back-to-top.e2e.d.ts +1 -0
  28. package/pf-back-to-top/test/pf-back-to-top.e2e.js +11 -0
  29. package/pf-back-to-top/test/pf-back-to-top.e2e.js.map +1 -0
  30. package/pf-back-to-top/test/pf-back-to-top.spec.d.ts +1 -0
  31. package/pf-back-to-top/test/pf-back-to-top.spec.js +267 -0
  32. package/pf-back-to-top/test/pf-back-to-top.spec.js.map +1 -0
  33. package/pf-background-image/pf-background-image.d.ts +1 -4
  34. package/pf-background-image/pf-background-image.js +1 -4
  35. package/pf-background-image/pf-background-image.js.map +1 -1
  36. package/pf-background-image/test/pf-background-image.e2e.d.ts +1 -0
  37. package/pf-background-image/test/pf-background-image.e2e.js +11 -0
  38. package/pf-background-image/test/pf-background-image.e2e.js.map +1 -0
  39. package/pf-background-image/test/pf-background-image.spec.d.ts +1 -0
  40. package/pf-background-image/test/pf-background-image.spec.js +89 -0
  41. package/pf-background-image/test/pf-background-image.spec.js.map +1 -0
  42. package/pf-badge/BaseBadge.d.ts +1 -1
  43. package/pf-badge/test/pf-badge.e2e.d.ts +1 -0
  44. package/pf-badge/test/pf-badge.e2e.js +11 -0
  45. package/pf-badge/test/pf-badge.e2e.js.map +1 -0
  46. package/pf-badge/test/pf-badge.spec.d.ts +1 -0
  47. package/pf-badge/test/pf-badge.spec.js +52 -0
  48. package/pf-badge/test/pf-badge.spec.js.map +1 -0
  49. package/pf-banner/pf-banner.d.ts +1 -10
  50. package/pf-banner/pf-banner.js +0 -9
  51. package/pf-banner/pf-banner.js.map +1 -1
  52. package/pf-banner/test/pf-banner.e2e.d.ts +1 -0
  53. package/pf-banner/test/pf-banner.e2e.js +11 -0
  54. package/pf-banner/test/pf-banner.e2e.js.map +1 -0
  55. package/pf-banner/test/pf-banner.spec.d.ts +1 -0
  56. package/pf-banner/test/pf-banner.spec.js +81 -0
  57. package/pf-banner/test/pf-banner.spec.js.map +1 -0
  58. package/pf-button/BaseButton.d.ts +7 -2
  59. package/pf-button/BaseButton.js +4 -1
  60. package/pf-button/BaseButton.js.map +1 -1
  61. package/pf-button/pf-button.d.ts +1 -17
  62. package/pf-button/pf-button.js +10 -18
  63. package/pf-button/pf-button.js.map +1 -1
  64. package/pf-button/test/pf-button.e2e.d.ts +1 -0
  65. package/pf-button/test/pf-button.e2e.js +11 -0
  66. package/pf-button/test/pf-button.e2e.js.map +1 -0
  67. package/pf-button/test/pf-button.spec.d.ts +1 -0
  68. package/pf-button/test/pf-button.spec.js +124 -0
  69. package/pf-button/test/pf-button.spec.js.map +1 -0
  70. package/pf-card/BaseCard.d.ts +1 -1
  71. package/pf-card/test/pf-card.e2e.d.ts +1 -0
  72. package/pf-card/test/pf-card.e2e.js +11 -0
  73. package/pf-card/test/pf-card.e2e.js.map +1 -0
  74. package/pf-card/test/pf-card.spec.d.ts +1 -0
  75. package/pf-card/test/pf-card.spec.js +160 -0
  76. package/pf-card/test/pf-card.spec.js.map +1 -0
  77. package/pf-chip/pf-chip-group.d.ts +8 -5
  78. package/pf-chip/pf-chip-group.js +10 -10
  79. package/pf-chip/pf-chip-group.js.map +1 -1
  80. package/pf-chip/pf-chip.d.ts +8 -5
  81. package/pf-chip/pf-chip.js +4 -4
  82. package/pf-chip/pf-chip.js.map +1 -1
  83. package/pf-chip/test/pf-chip-group.spec.d.ts +1 -0
  84. package/pf-chip/test/pf-chip-group.spec.js +189 -0
  85. package/pf-chip/test/pf-chip-group.spec.js.map +1 -0
  86. package/pf-chip/test/pf-chip.e2e.d.ts +1 -0
  87. package/pf-chip/test/pf-chip.e2e.js +11 -0
  88. package/pf-chip/test/pf-chip.e2e.js.map +1 -0
  89. package/pf-chip/test/pf-chip.spec.d.ts +1 -0
  90. package/pf-chip/test/pf-chip.spec.js +116 -0
  91. package/pf-chip/test/pf-chip.spec.js.map +1 -0
  92. package/pf-clipboard-copy/pf-clipboard-copy.css +4 -0
  93. package/pf-clipboard-copy/pf-clipboard-copy.d.ts +8 -3
  94. package/pf-clipboard-copy/pf-clipboard-copy.js +6 -4
  95. package/pf-clipboard-copy/pf-clipboard-copy.js.map +1 -1
  96. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.d.ts +1 -0
  97. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js +11 -0
  98. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js.map +1 -0
  99. package/pf-clipboard-copy/test/pf-clipboard-copy.spec.d.ts +1 -0
  100. package/pf-clipboard-copy/test/pf-clipboard-copy.spec.js +103 -0
  101. package/pf-clipboard-copy/test/pf-clipboard-copy.spec.js.map +1 -0
  102. package/pf-code-block/BaseCodeBlock.js +2 -2
  103. package/pf-code-block/BaseCodeBlock.js.map +1 -1
  104. package/pf-code-block/pf-code-block.d.ts +1 -1
  105. package/pf-code-block/test/pf-code-block.e2e.d.ts +1 -0
  106. package/pf-code-block/test/pf-code-block.e2e.js +11 -0
  107. package/pf-code-block/test/pf-code-block.e2e.js.map +1 -0
  108. package/pf-code-block/test/pf-code-block.spec.d.ts +1 -0
  109. package/pf-code-block/test/pf-code-block.spec.js +89 -0
  110. package/pf-code-block/test/pf-code-block.spec.js.map +1 -0
  111. package/pf-dropdown/pf-dropdown-group.d.ts +1 -1
  112. package/pf-dropdown/pf-dropdown-group.js +4 -1
  113. package/pf-dropdown/pf-dropdown-group.js.map +1 -1
  114. package/pf-dropdown/pf-dropdown-item.d.ts +1 -2
  115. package/pf-dropdown/pf-dropdown-item.js +4 -2
  116. package/pf-dropdown/pf-dropdown-item.js.map +1 -1
  117. package/pf-dropdown/pf-dropdown-menu.d.ts +1 -2
  118. package/pf-dropdown/pf-dropdown-menu.js +8 -6
  119. package/pf-dropdown/pf-dropdown-menu.js.map +1 -1
  120. package/pf-dropdown/pf-dropdown.d.ts +8 -6
  121. package/pf-dropdown/pf-dropdown.js +11 -11
  122. package/pf-dropdown/pf-dropdown.js.map +1 -1
  123. package/pf-dropdown/test/pf-dropdown.e2e.d.ts +1 -0
  124. package/pf-dropdown/test/pf-dropdown.e2e.js +11 -0
  125. package/pf-dropdown/test/pf-dropdown.e2e.js.map +1 -0
  126. package/pf-dropdown/test/pf-dropdown.spec.d.ts +1 -0
  127. package/pf-dropdown/test/pf-dropdown.spec.js +129 -0
  128. package/pf-dropdown/test/pf-dropdown.spec.js.map +1 -0
  129. package/pf-icon/BaseIcon.d.ts +1 -2
  130. package/pf-icon/BaseIcon.js +3 -4
  131. package/pf-icon/BaseIcon.js.map +1 -1
  132. package/pf-icon/demo/icons/rh/boba-tea.js +5 -0
  133. package/pf-icon/demo/icons/rh/lifecycle.js +3 -0
  134. package/pf-icon/test/pf-icon.e2e.d.ts +1 -0
  135. package/pf-icon/test/pf-icon.e2e.js +11 -0
  136. package/pf-icon/test/pf-icon.e2e.js.map +1 -0
  137. package/pf-icon/test/pf-icon.spec.d.ts +1 -0
  138. package/pf-icon/test/pf-icon.spec.js +130 -0
  139. package/pf-icon/test/pf-icon.spec.js.map +1 -0
  140. package/pf-icon/test/rh-icon-aed.js +2 -0
  141. package/pf-icon/test/rh-icon-api.js +2 -0
  142. package/pf-icon/test/rh-icon-atom.js +2 -0
  143. package/pf-icon/test/rh-icon-bike.js +2 -0
  144. package/pf-jump-links/pf-jump-links-item.d.ts +8 -2
  145. package/pf-jump-links/pf-jump-links-item.js +4 -1
  146. package/pf-jump-links/pf-jump-links-item.js.map +1 -1
  147. package/pf-jump-links/pf-jump-links-list.d.ts +1 -1
  148. package/pf-jump-links/pf-jump-links.d.ts +1 -7
  149. package/pf-jump-links/pf-jump-links.js +1 -7
  150. package/pf-jump-links/pf-jump-links.js.map +1 -1
  151. package/pf-jump-links/test/pf-jump-links.e2e.d.ts +1 -0
  152. package/pf-jump-links/test/pf-jump-links.e2e.js +11 -0
  153. package/pf-jump-links/test/pf-jump-links.e2e.js.map +1 -0
  154. package/pf-jump-links/test/pf-jump-links.spec.d.ts +1 -0
  155. package/pf-jump-links/test/pf-jump-links.spec.js +85 -0
  156. package/pf-jump-links/test/pf-jump-links.spec.js.map +1 -0
  157. package/pf-label/BaseLabel.d.ts +1 -1
  158. package/pf-label/pf-label.d.ts +10 -24
  159. package/pf-label/pf-label.js +4 -21
  160. package/pf-label/pf-label.js.map +1 -1
  161. package/pf-label/test/pf-label.e2e.d.ts +1 -0
  162. package/pf-label/test/pf-label.e2e.js +11 -0
  163. package/pf-label/test/pf-label.e2e.js.map +1 -0
  164. package/pf-label/test/pf-label.spec.d.ts +1 -0
  165. package/pf-label/test/pf-label.spec.js +111 -0
  166. package/pf-label/test/pf-label.spec.js.map +1 -0
  167. package/pf-modal/pf-modal.d.ts +1 -6
  168. package/pf-modal/pf-modal.js +6 -8
  169. package/pf-modal/pf-modal.js.map +1 -1
  170. package/pf-modal/test/pf-modal.e2e.d.ts +1 -0
  171. package/pf-modal/test/pf-modal.e2e.js +13 -0
  172. package/pf-modal/test/pf-modal.e2e.js.map +1 -0
  173. package/pf-modal/test/pf-modal.spec.d.ts +1 -0
  174. package/pf-modal/test/pf-modal.spec.js +197 -0
  175. package/pf-modal/test/pf-modal.spec.js.map +1 -0
  176. package/pf-panel/pf-panel.d.ts +1 -1
  177. package/pf-panel/test/pf-panel.e2e.d.ts +1 -0
  178. package/pf-panel/test/pf-panel.e2e.js +11 -0
  179. package/pf-panel/test/pf-panel.e2e.js.map +1 -0
  180. package/pf-panel/test/pf-panel.spec.d.ts +1 -0
  181. package/pf-panel/test/pf-panel.spec.js +22 -0
  182. package/pf-panel/test/pf-panel.spec.js.map +1 -0
  183. package/pf-popover/pf-popover.d.ts +1 -5
  184. package/pf-popover/pf-popover.js +12 -7
  185. package/pf-popover/pf-popover.js.map +1 -1
  186. package/pf-popover/test/pf-popover.e2e.d.ts +1 -0
  187. package/pf-popover/test/pf-popover.e2e.js +11 -0
  188. package/pf-popover/test/pf-popover.e2e.js.map +1 -0
  189. package/pf-popover/test/pf-popover.spec.d.ts +1 -0
  190. package/pf-popover/test/pf-popover.spec.js +233 -0
  191. package/pf-popover/test/pf-popover.spec.js.map +1 -0
  192. package/pf-progress/demo/kitchen-sink.css +4 -0
  193. package/pf-progress/pf-progress.d.ts +1 -22
  194. package/pf-progress/pf-progress.js +1 -22
  195. package/pf-progress/pf-progress.js.map +1 -1
  196. package/pf-progress/test/pf-progress.e2e.d.ts +1 -0
  197. package/pf-progress/test/pf-progress.e2e.js +11 -0
  198. package/pf-progress/test/pf-progress.e2e.js.map +1 -0
  199. package/pf-progress/test/pf-progress.spec.d.ts +1 -0
  200. package/pf-progress/test/pf-progress.spec.js +45 -0
  201. package/pf-progress/test/pf-progress.spec.js.map +1 -0
  202. package/pf-progress-stepper/pf-progress-step.d.ts +1 -1
  203. package/pf-progress-stepper/pf-progress-stepper.d.ts +1 -1
  204. package/pf-progress-stepper/test/pf-progress-stepper.e2e.d.ts +1 -0
  205. package/pf-progress-stepper/test/pf-progress-stepper.e2e.js +11 -0
  206. package/pf-progress-stepper/test/pf-progress-stepper.e2e.js.map +1 -0
  207. package/pf-progress-stepper/test/pf-progress-stepper.spec.d.ts +1 -0
  208. package/pf-progress-stepper/test/pf-progress-stepper.spec.js +18 -0
  209. package/pf-progress-stepper/test/pf-progress-stepper.spec.js.map +1 -0
  210. package/pf-select/pf-option-group.d.ts +1 -1
  211. package/pf-select/pf-option-group.js +2 -0
  212. package/pf-select/pf-option-group.js.map +1 -1
  213. package/pf-select/pf-option.d.ts +1 -2
  214. package/pf-select/pf-option.js +3 -4
  215. package/pf-select/pf-option.js.map +1 -1
  216. package/pf-select/pf-select.d.ts +8 -3
  217. package/pf-select/pf-select.js +51 -21
  218. package/pf-select/pf-select.js.map +1 -1
  219. package/pf-select/test/pf-select.e2e.d.ts +1 -0
  220. package/pf-select/test/pf-select.e2e.js +11 -0
  221. package/pf-select/test/pf-select.e2e.js.map +1 -0
  222. package/pf-select/test/pf-select.spec.d.ts +1 -0
  223. package/pf-select/test/pf-select.spec.js +866 -0
  224. package/pf-select/test/pf-select.spec.js.map +1 -0
  225. package/pf-spinner/BaseSpinner.d.ts +1 -2
  226. package/pf-spinner/BaseSpinner.js +2 -4
  227. package/pf-spinner/BaseSpinner.js.map +1 -1
  228. package/pf-spinner/pf-spinner.d.ts +2 -2
  229. package/pf-spinner/pf-spinner.js +8 -1
  230. package/pf-spinner/pf-spinner.js.map +1 -1
  231. package/pf-spinner/test/pf-spinner.e2e.d.ts +1 -0
  232. package/pf-spinner/test/pf-spinner.e2e.js +11 -0
  233. package/pf-spinner/test/pf-spinner.e2e.js.map +1 -0
  234. package/pf-spinner/test/pf-spinner.spec.d.ts +1 -0
  235. package/pf-spinner/test/pf-spinner.spec.js +64 -0
  236. package/pf-spinner/test/pf-spinner.spec.js.map +1 -0
  237. package/pf-switch/BaseSwitch.d.ts +1 -1
  238. package/pf-switch/BaseSwitch.js +3 -3
  239. package/pf-switch/BaseSwitch.js.map +1 -1
  240. package/pf-switch/test/pf-switch.e2e.d.ts +1 -0
  241. package/pf-switch/test/pf-switch.e2e.js +11 -0
  242. package/pf-switch/test/pf-switch.e2e.js.map +1 -0
  243. package/pf-switch/test/pf-switch.spec.d.ts +1 -0
  244. package/pf-switch/test/pf-switch.spec.js +191 -0
  245. package/pf-switch/test/pf-switch.spec.js.map +1 -0
  246. package/pf-table/pf-caption.d.ts +1 -1
  247. package/pf-table/pf-table.d.ts +1 -3
  248. package/pf-table/pf-table.js +2 -4
  249. package/pf-table/pf-table.js.map +1 -1
  250. package/pf-table/pf-tbody.d.ts +1 -1
  251. package/pf-table/pf-td.d.ts +1 -1
  252. package/pf-table/pf-th.d.ts +1 -1
  253. package/pf-table/pf-th.js +3 -3
  254. package/pf-table/pf-th.js.map +1 -1
  255. package/pf-table/pf-thead.d.ts +1 -1
  256. package/pf-table/pf-tr.d.ts +1 -1
  257. package/pf-table/pf-tr.js +4 -4
  258. package/pf-table/pf-tr.js.map +1 -1
  259. package/pf-table/test/pf-table.e2e.d.ts +1 -0
  260. package/pf-table/test/pf-table.e2e.js +11 -0
  261. package/pf-table/test/pf-table.e2e.js.map +1 -0
  262. package/pf-table/test/pf-table.spec.d.ts +1 -0
  263. package/pf-table/test/pf-table.spec.js +17 -0
  264. package/pf-table/test/pf-table.spec.js.map +1 -0
  265. package/pf-tabs/BaseTab.d.ts +2 -2
  266. package/pf-tabs/BaseTab.js +4 -1
  267. package/pf-tabs/BaseTab.js.map +1 -1
  268. package/pf-tabs/BaseTabPanel.d.ts +1 -1
  269. package/pf-tabs/BaseTabs.d.ts +1 -3
  270. package/pf-tabs/BaseTabs.js +11 -12
  271. package/pf-tabs/BaseTabs.js.map +1 -1
  272. package/pf-tabs/pf-tab-panel.d.ts +1 -1
  273. package/pf-tabs/pf-tab.d.ts +1 -17
  274. package/pf-tabs/pf-tab.js +0 -16
  275. package/pf-tabs/pf-tab.js.map +1 -1
  276. package/pf-tabs/pf-tabs.d.ts +1 -12
  277. package/pf-tabs/pf-tabs.js +2 -13
  278. package/pf-tabs/pf-tabs.js.map +1 -1
  279. package/pf-tabs/test/pf-tabs.e2e.d.ts +1 -0
  280. package/pf-tabs/test/pf-tabs.e2e.js +13 -0
  281. package/pf-tabs/test/pf-tabs.e2e.js.map +1 -0
  282. package/pf-tabs/test/pf-tabs.spec.d.ts +1 -0
  283. package/pf-tabs/test/pf-tabs.spec.js +285 -0
  284. package/pf-tabs/test/pf-tabs.spec.js.map +1 -0
  285. package/pf-text-area/pf-text-area.d.ts +1 -2
  286. package/pf-text-area/pf-text-area.js +5 -5
  287. package/pf-text-area/pf-text-area.js.map +1 -1
  288. package/pf-text-area/test/pf-text-area.e2e.d.ts +1 -0
  289. package/pf-text-area/test/pf-text-area.e2e.js +11 -0
  290. package/pf-text-area/test/pf-text-area.e2e.js.map +1 -0
  291. package/pf-text-area/test/pf-text-area.spec.d.ts +1 -0
  292. package/pf-text-area/test/pf-text-area.spec.js +89 -0
  293. package/pf-text-area/test/pf-text-area.spec.js.map +1 -0
  294. package/pf-text-input/demo/demo.css +6 -0
  295. package/pf-text-input/pf-text-input.d.ts +8 -3
  296. package/pf-text-input/pf-text-input.js +4 -2
  297. package/pf-text-input/pf-text-input.js.map +1 -1
  298. package/pf-text-input/test/pf-text-input.e2e.d.ts +1 -0
  299. package/pf-text-input/test/pf-text-input.e2e.js +11 -0
  300. package/pf-text-input/test/pf-text-input.e2e.js.map +1 -0
  301. package/pf-text-input/test/pf-text-input.spec.d.ts +1 -0
  302. package/pf-text-input/test/pf-text-input.spec.js +20 -0
  303. package/pf-text-input/test/pf-text-input.spec.js.map +1 -0
  304. package/pf-tile/BaseTile.d.ts +1 -1
  305. package/pf-tile/pf-tile.d.ts +0 -12
  306. package/pf-tile/pf-tile.js +0 -12
  307. package/pf-tile/pf-tile.js.map +1 -1
  308. package/pf-tile/test/pf-tile.e2e.d.ts +1 -0
  309. package/pf-tile/test/pf-tile.e2e.js +11 -0
  310. package/pf-tile/test/pf-tile.e2e.js.map +1 -0
  311. package/pf-tile/test/pf-tile.spec.d.ts +1 -0
  312. package/pf-tile/test/pf-tile.spec.js +54 -0
  313. package/pf-tile/test/pf-tile.spec.js.map +1 -0
  314. package/pf-timestamp/pf-timestamp.d.ts +1 -1
  315. package/pf-timestamp/pf-timestamp.js +5 -1
  316. package/pf-timestamp/pf-timestamp.js.map +1 -1
  317. package/pf-timestamp/test/pf-timestamp.e2e.d.ts +1 -0
  318. package/pf-timestamp/test/pf-timestamp.e2e.js +12 -0
  319. package/pf-timestamp/test/pf-timestamp.e2e.js.map +1 -0
  320. package/pf-timestamp/test/pf-timestamp.spec.d.ts +1 -0
  321. package/pf-timestamp/test/pf-timestamp.spec.js +156 -0
  322. package/pf-timestamp/test/pf-timestamp.spec.js.map +1 -0
  323. package/pf-tooltip/BaseTooltip.d.ts +1 -1
  324. package/pf-tooltip/pf-tooltip.d.ts +1 -4
  325. package/pf-tooltip/pf-tooltip.js +6 -7
  326. package/pf-tooltip/pf-tooltip.js.map +1 -1
  327. package/pf-tooltip/test/pf-tooltip.e2e.d.ts +1 -0
  328. package/pf-tooltip/test/pf-tooltip.e2e.js +11 -0
  329. package/pf-tooltip/test/pf-tooltip.e2e.js.map +1 -0
  330. package/pf-tooltip/test/pf-tooltip.spec.d.ts +1 -0
  331. package/pf-tooltip/test/pf-tooltip.spec.js +53 -0
  332. package/pf-tooltip/test/pf-tooltip.spec.js.map +1 -0
  333. package/pfe.min.js +273 -266
  334. package/pfe.min.js.map +3 -3
  335. package/pf-accordion/README.md +0 -44
  336. package/pf-avatar/README.md +0 -31
  337. package/pf-back-to-top/README.md +0 -32
  338. package/pf-background-image/README.md +0 -37
  339. package/pf-badge/README.md +0 -57
  340. package/pf-banner/README.md +0 -60
  341. package/pf-button/README.md +0 -61
  342. package/pf-card/README.md +0 -34
  343. package/pf-chip/README.md +0 -20
  344. package/pf-clipboard-copy/README.md +0 -8
  345. package/pf-code-block/README.md +0 -77
  346. package/pf-dropdown/README.md +0 -46
  347. package/pf-icon/README.md +0 -86
  348. package/pf-icon/icons/fab/readme.svg +0 -1
  349. package/pf-jump-links/README.md +0 -27
  350. package/pf-label/README.md +0 -61
  351. package/pf-modal/README.md +0 -63
  352. package/pf-panel/README.md +0 -10
  353. package/pf-popover/README.md +0 -48
  354. package/pf-progress/README.md +0 -33
  355. package/pf-progress-stepper/README.md +0 -41
  356. package/pf-select/README.md +0 -21
  357. package/pf-spinner/README.md +0 -46
  358. package/pf-switch/README.md +0 -91
  359. package/pf-table/README.md +0 -43
  360. package/pf-tabs/README.md +0 -40
  361. package/pf-text-area/README.md +0 -11
  362. package/pf-text-input/README.md +0 -9
  363. package/pf-tile/README.md +0 -12
  364. package/pf-timestamp/README.md +0 -64
  365. package/pf-tooltip/README.md +0 -64
@@ -0,0 +1,233 @@
1
+ import { expect, html, fixture, fixtureCleanup, nextFrame } from '@open-wc/testing';
2
+ import { a11ySnapshot } from '@patternfly/pfe-tools/test/a11y-snapshot.js';
3
+ import { clickElementAtCenter } from '@patternfly/pfe-tools/test/utils.js';
4
+ import { sendKeys, resetMouse } from '@web/test-runner-commands';
5
+ import { PfPopover } from '@patternfly/elements/pf-popover/pf-popover.js';
6
+ import { PfButton } from '@patternfly/elements/pf-button/pf-button.js';
7
+ function press(key) {
8
+ return async function () {
9
+ await sendKeys({ press: key });
10
+ };
11
+ }
12
+ describe('<pf-popover>', function () {
13
+ let element;
14
+ /** create a simple test fixture */
15
+ async function setupSimpleInstance() {
16
+ element = await fixture(html `<pf-popover></pf-popover>`);
17
+ }
18
+ /** Wait on the element's update cycle */
19
+ async function updateComplete() {
20
+ await element.updateComplete;
21
+ }
22
+ /** Asserts that an aXe audit on the page passes */
23
+ async function expectA11yAxe() {
24
+ await expect(element).to.be.accessible();
25
+ }
26
+ /**
27
+ * Assert that the accessibility tree reports the expected snapshot
28
+ * e.g. for a closed popover, does not announce popover child content
29
+ * e.g. for an opened popover, it does announce popover child content
30
+ * If the expected children snapshot is undefined, then assistive technology
31
+ * reports nothing at all, e.g. a popover element with no attrs and no children
32
+ */
33
+ async function expectA11ySnapshot(expected = { role: 'WebArea', name: '' }) {
34
+ const snapshot = await a11ySnapshot();
35
+ expect(snapshot).to.deep.equal(expected);
36
+ }
37
+ function resetElement() {
38
+ document.querySelectorAll('pf-popover').forEach(e => e.remove());
39
+ // @ts-expect-error: resetting test state, so we don't mind the ts error.
40
+ element = undefined;
41
+ }
42
+ afterEach(resetElement);
43
+ afterEach(fixtureCleanup);
44
+ describe('simply instantiating', function () {
45
+ beforeEach(setupSimpleInstance);
46
+ it('should upgrade', async function () {
47
+ const klass = customElements.get('pf-popover');
48
+ expect(element)
49
+ .to.be.an.instanceOf(klass)
50
+ .and
51
+ .to.be.an.instanceOf(PfPopover);
52
+ });
53
+ it('should be accessible', expectA11yAxe);
54
+ it('imperatively instantiates', function () {
55
+ expect(document.createElement('pf-popover'))
56
+ .to.be.an.instanceof(PfPopover);
57
+ });
58
+ it('should not report anything to assistive technology', async function () {
59
+ const snapshot = await a11ySnapshot();
60
+ expect(snapshot.children).to.not.be.ok;
61
+ });
62
+ });
63
+ describe('with a slotted trigger; and with heading, body, and footer attributes', function () {
64
+ // these tests are flaky, soo...
65
+ beforeEach(resetElement);
66
+ beforeEach(nextFrame);
67
+ beforeEach(resetElement);
68
+ beforeEach(nextFrame);
69
+ beforeEach(resetElement);
70
+ beforeEach(nextFrame);
71
+ /** create a test fixture with slotted trigger and content attrs */
72
+ beforeEach(async function setupPopoverWithSlottedTriggerAndContentAttrs() {
73
+ element = await fixture(html `
74
+ <pf-popover heading="Popover heading"
75
+ body="Popovers are triggered by click rather than hover."
76
+ footer="Popover footer">
77
+ <pf-button>Toggle popover</pf-button>
78
+ </pf-popover>
79
+ `);
80
+ });
81
+ it('should be accessible', expectA11yAxe);
82
+ it('should hide popover content from assistive technology', async function () {
83
+ const snapshot = await a11ySnapshot();
84
+ expect(snapshot.children?.find(x => x.role === 'dialog')).to.not.be.ok;
85
+ });
86
+ describe('tabbing to the trigger', function () {
87
+ beforeEach(resetElement);
88
+ beforeEach(async function setupPopoverWithSlottedTriggerAndContentAttrs() {
89
+ element = await fixture(html `
90
+ <pf-popover heading="Popover heading"
91
+ body="Popovers are triggered by click rather than hover."
92
+ footer="Popover footer">
93
+ <pf-button>Toggle popover</pf-button>
94
+ </pf-popover>
95
+ `);
96
+ });
97
+ beforeEach(updateComplete);
98
+ beforeEach(press('Tab'));
99
+ beforeEach(updateComplete);
100
+ it('doesn\'t steal tab order', function () {
101
+ expect(document.activeElement).to.be.an.instanceof(PfButton);
102
+ });
103
+ describe('and pressing Enter', function () {
104
+ beforeEach(updateComplete);
105
+ beforeEach(press('Enter'));
106
+ beforeEach(updateComplete);
107
+ it('should show popover content to assistive technology', async function () {
108
+ const snapshot = await a11ySnapshot();
109
+ expect(snapshot.children?.find(x => x.role === 'dialog')).to.be.ok;
110
+ });
111
+ describe('then pressing Enter again', function () {
112
+ beforeEach(updateComplete);
113
+ beforeEach(press('Enter'));
114
+ beforeEach(updateComplete);
115
+ it('should hide popover content from assistive technology', async function () {
116
+ const snapshot = await a11ySnapshot();
117
+ expect(snapshot?.children?.length).to.equal(1);
118
+ const dialog = snapshot.children?.find(x => x.role === 'dialog');
119
+ expect(dialog).to.not.be.ok;
120
+ });
121
+ });
122
+ describe('then pressing Escape', function () {
123
+ beforeEach(updateComplete);
124
+ beforeEach(press('Escape'));
125
+ beforeEach(updateComplete);
126
+ it('should hide popover content from assistive technology', async function () {
127
+ const snapshot = await a11ySnapshot();
128
+ expect(snapshot?.children?.length).to.equal(1);
129
+ const dialog = snapshot.children?.find(x => x.role === 'dialog');
130
+ expect(dialog).to.not.be.ok;
131
+ });
132
+ });
133
+ });
134
+ });
135
+ });
136
+ describe('with a trigger and a sibling button', function () {
137
+ let btn1;
138
+ let btn2;
139
+ async function clickButton1() {
140
+ await clickElementAtCenter(btn1);
141
+ await resetMouse();
142
+ }
143
+ async function clickButton2() {
144
+ await clickElementAtCenter(btn2);
145
+ await resetMouse();
146
+ }
147
+ beforeEach(async function () {
148
+ const container = await fixture(html `
149
+ <div>
150
+ <pf-popover id="popover"
151
+ trigger="btn-1"
152
+ heading="Popover heading"
153
+ body="Popovers are triggered by click rather than hover."
154
+ footer="Popover footer"></pf-popover>
155
+ <button id="btn-1">Toggle popover 1</button>
156
+ <button id="btn-2">Toggle popover 2</button>
157
+ </div>
158
+ `);
159
+ element = container.querySelector('pf-popover');
160
+ btn1 = container.querySelector('#btn-1');
161
+ btn2 = container.querySelector('#btn-2');
162
+ });
163
+ it('starts closed', async function () {
164
+ const snapshot = await a11ySnapshot();
165
+ expect(snapshot.children?.find(x => x.role === 'dialog')).to.not.be.ok;
166
+ });
167
+ describe('clicking the trigger', function () {
168
+ beforeEach(updateComplete);
169
+ beforeEach(clickButton1);
170
+ beforeEach(updateComplete);
171
+ it('shows the popover', async function () {
172
+ const snapshot = await a11ySnapshot();
173
+ expect(snapshot.children?.find(x => x.role === 'dialog')).to.be.ok;
174
+ });
175
+ });
176
+ describe('setting the trigger to the sibling button', function () {
177
+ beforeEach(updateComplete);
178
+ beforeEach(function () {
179
+ element.setAttribute('trigger', 'btn-2');
180
+ });
181
+ beforeEach(updateComplete);
182
+ describe('clicking the first button', function () {
183
+ beforeEach(updateComplete);
184
+ beforeEach(clickButton1);
185
+ beforeEach(updateComplete);
186
+ it('remains closed', async function () {
187
+ const snapshot = await a11ySnapshot();
188
+ expect(snapshot).to.deep.equal({
189
+ name: '',
190
+ role: 'WebArea',
191
+ children: [
192
+ { role: 'button', name: 'Toggle popover 1', focused: true },
193
+ { role: 'button', name: 'Toggle popover 2' },
194
+ ],
195
+ });
196
+ });
197
+ });
198
+ describe('clicking the sibling button', function () {
199
+ beforeEach(updateComplete);
200
+ beforeEach(clickButton2);
201
+ beforeEach(updateComplete);
202
+ it('shows the popover', async function () {
203
+ const snapshot = await a11ySnapshot();
204
+ expect(snapshot.children?.find(x => x.role === 'dialog')).to.be.ok;
205
+ });
206
+ });
207
+ });
208
+ describe('then pressing the Enter key', function () {
209
+ beforeEach(updateComplete);
210
+ // Close the popover
211
+ beforeEach(press('Enter'));
212
+ beforeEach(updateComplete);
213
+ it('closes the popover', async function () {
214
+ const snapshot = await a11ySnapshot();
215
+ expect(snapshot).to.deep.equal({
216
+ role: 'WebArea',
217
+ name: '',
218
+ children: [
219
+ {
220
+ name: 'Toggle popover 1',
221
+ role: 'button',
222
+ },
223
+ {
224
+ name: 'Toggle popover 2',
225
+ role: 'button',
226
+ },
227
+ ],
228
+ });
229
+ });
230
+ });
231
+ });
232
+ });
233
+ //# sourceMappingURL=pf-popover.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pf-popover.spec.js","sourceRoot":"","sources":["pf-popover.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { expect, html, fixture, fixtureCleanup, nextFrame } from '@open-wc/testing';\nimport { a11ySnapshot, type A11yTreeSnapshot } from '@patternfly/pfe-tools/test/a11y-snapshot.js';\nimport { clickElementAtCenter } from '@patternfly/pfe-tools/test/utils.js';\nimport { sendKeys, resetMouse } from '@web/test-runner-commands';\nimport { PfPopover } from '@patternfly/elements/pf-popover/pf-popover.js';\nimport { PfButton } from '@patternfly/elements/pf-button/pf-button.js';\n\nfunction press(key: string) {\n return async function() {\n await sendKeys({ press: key });\n };\n}\n\ndescribe('<pf-popover>', function() {\n let element: PfPopover;\n\n /** create a simple test fixture */\n async function setupSimpleInstance() {\n element = await fixture<PfPopover>(html`<pf-popover></pf-popover>`);\n }\n\n /** Wait on the element's update cycle */\n async function updateComplete() {\n await element.updateComplete;\n }\n\n /** Asserts that an aXe audit on the page passes */\n async function expectA11yAxe() {\n await expect(element).to.be.accessible();\n }\n\n /**\n * Assert that the accessibility tree reports the expected snapshot\n * e.g. for a closed popover, does not announce popover child content\n * e.g. for an opened popover, it does announce popover child content\n * If the expected children snapshot is undefined, then assistive technology\n * reports nothing at all, e.g. a popover element with no attrs and no children\n */\n async function expectA11ySnapshot(expected: A11yTreeSnapshot = { role: 'WebArea', name: '' }) {\n const snapshot = await a11ySnapshot();\n expect(snapshot).to.deep.equal(expected);\n }\n\n function resetElement() {\n document.querySelectorAll('pf-popover').forEach(e => e.remove());\n // @ts-expect-error: resetting test state, so we don't mind the ts error.\n element = undefined;\n }\n\n afterEach(resetElement);\n afterEach(fixtureCleanup);\n\n describe('simply instantiating', function() {\n beforeEach(setupSimpleInstance);\n it('should upgrade', async function() {\n const klass = customElements.get('pf-popover');\n expect(element)\n .to.be.an.instanceOf(klass)\n .and\n .to.be.an.instanceOf(PfPopover);\n });\n it('should be accessible', expectA11yAxe);\n it('imperatively instantiates', function() {\n expect(document.createElement('pf-popover'))\n .to.be.an.instanceof(PfPopover);\n });\n it('should not report anything to assistive technology', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot.children).to.not.be.ok;\n });\n });\n\n describe('with a slotted trigger; and with heading, body, and footer attributes', function() {\n // these tests are flaky, soo...\n beforeEach(resetElement);\n beforeEach(nextFrame);\n beforeEach(resetElement);\n beforeEach(nextFrame);\n beforeEach(resetElement);\n beforeEach(nextFrame);\n\n /** create a test fixture with slotted trigger and content attrs */\n beforeEach(async function setupPopoverWithSlottedTriggerAndContentAttrs() {\n element = await fixture<PfPopover>(html`\n <pf-popover heading=\"Popover heading\"\n body=\"Popovers are triggered by click rather than hover.\"\n footer=\"Popover footer\">\n <pf-button>Toggle popover</pf-button>\n </pf-popover>\n `);\n });\n\n it('should be accessible', expectA11yAxe);\n\n it('should hide popover content from assistive technology', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot.children?.find(x => x.role === 'dialog')).to.not.be.ok;\n });\n\n describe('tabbing to the trigger', function() {\n beforeEach(resetElement);\n beforeEach(async function setupPopoverWithSlottedTriggerAndContentAttrs() {\n element = await fixture<PfPopover>(html`\n <pf-popover heading=\"Popover heading\"\n body=\"Popovers are triggered by click rather than hover.\"\n footer=\"Popover footer\">\n <pf-button>Toggle popover</pf-button>\n </pf-popover>\n `);\n });\n\n beforeEach(updateComplete);\n beforeEach(press('Tab'));\n beforeEach(updateComplete);\n\n it('doesn\\'t steal tab order', function() {\n expect(document.activeElement).to.be.an.instanceof(PfButton);\n });\n\n describe('and pressing Enter', function() {\n beforeEach(updateComplete);\n beforeEach(press('Enter'));\n beforeEach(updateComplete);\n it('should show popover content to assistive technology', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot.children?.find(x => x.role === 'dialog')).to.be.ok;\n });\n describe('then pressing Enter again', function() {\n beforeEach(updateComplete);\n beforeEach(press('Enter'));\n beforeEach(updateComplete);\n it('should hide popover content from assistive technology', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot?.children?.length).to.equal(1);\n const dialog = snapshot.children?.find(x => x.role === 'dialog');\n expect(dialog).to.not.be.ok;\n });\n });\n describe('then pressing Escape', function() {\n beforeEach(updateComplete);\n beforeEach(press('Escape'));\n beforeEach(updateComplete);\n it('should hide popover content from assistive technology', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot?.children?.length).to.equal(1);\n const dialog = snapshot.children?.find(x => x.role === 'dialog');\n expect(dialog).to.not.be.ok;\n });\n });\n });\n });\n });\n\n describe('with a trigger and a sibling button', function() {\n let btn1: HTMLButtonElement;\n let btn2: HTMLButtonElement;\n\n async function clickButton1() {\n await clickElementAtCenter(btn1);\n await resetMouse();\n }\n\n async function clickButton2() {\n await clickElementAtCenter(btn2);\n await resetMouse();\n }\n\n beforeEach(async function() {\n const container = await fixture(html`\n <div>\n <pf-popover id=\"popover\"\n trigger=\"btn-1\"\n heading=\"Popover heading\"\n body=\"Popovers are triggered by click rather than hover.\"\n footer=\"Popover footer\"></pf-popover>\n <button id=\"btn-1\">Toggle popover 1</button>\n <button id=\"btn-2\">Toggle popover 2</button>\n </div>\n `);\n element = container.querySelector('pf-popover')!;\n btn1 = container.querySelector('#btn-1')!;\n btn2 = container.querySelector('#btn-2')!;\n });\n\n it('starts closed', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot.children?.find(x => x.role === 'dialog')).to.not.be.ok;\n });\n\n describe('clicking the trigger', function() {\n beforeEach(updateComplete);\n beforeEach(clickButton1);\n beforeEach(updateComplete);\n it('shows the popover', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot.children?.find(x => x.role === 'dialog')).to.be.ok;\n });\n });\n\n describe('setting the trigger to the sibling button', function() {\n beforeEach(updateComplete);\n beforeEach(function() {\n element.setAttribute('trigger', 'btn-2');\n });\n beforeEach(updateComplete);\n describe('clicking the first button', function() {\n beforeEach(updateComplete);\n beforeEach(clickButton1);\n beforeEach(updateComplete);\n it('remains closed', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot).to.deep.equal({\n name: '',\n role: 'WebArea',\n children: [\n { role: 'button', name: 'Toggle popover 1', focused: true },\n { role: 'button', name: 'Toggle popover 2' },\n ],\n });\n });\n });\n describe('clicking the sibling button', function() {\n beforeEach(updateComplete);\n beforeEach(clickButton2);\n beforeEach(updateComplete);\n it('shows the popover', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot.children?.find(x => x.role === 'dialog')).to.be.ok;\n });\n });\n });\n describe('then pressing the Enter key', function() {\n beforeEach(updateComplete);\n // Close the popover\n beforeEach(press('Enter'));\n beforeEach(updateComplete);\n it('closes the popover', async function() {\n const snapshot = await a11ySnapshot();\n expect(snapshot).to.deep.equal({\n role: 'WebArea',\n name: '',\n children: [\n {\n name: 'Toggle popover 1',\n role: 'button',\n },\n {\n name: 'Toggle popover 2',\n role: 'button',\n },\n ],\n });\n });\n });\n });\n});\n"]}
@@ -0,0 +1,4 @@
1
+ pf-progress {
2
+ padding-bottom: 0.25rem;
3
+ display: block;
4
+ }
@@ -2,85 +2,64 @@ import type { PropertyValues } from 'lit';
2
2
  import { LitElement } from 'lit';
3
3
  /**
4
4
  * A progress bar gives the user a visual representation of their completion status of an ongoing process or task.
5
- *
6
5
  * @summary Display completion status of ongoing process or task.
7
- *
8
6
  * @cssprop {<length>} --pf-c-progress--GridGap
9
7
  * Gap between the sections of the progress bar.
10
8
  * {@default `1rem`}
11
- *
12
9
  * @cssprop {<color>} --pf-c-progress__bar--before--BackgroundColor
13
10
  * Color of the progress bar.
14
11
  * {@default `#06c`}
15
- *
16
12
  * @cssprop {<length>} --pf-c-progress__bar--Height
17
13
  * Height of the progress bar.
18
14
  * {@default `1rem`}
19
- *
20
15
  * @cssprop {<color>} --pf-c-progress__bar--BackgroundColor
21
16
  * Background color of the progress bar.
22
17
  * {@default `#ffffff`}
23
- *
24
18
  * @cssprop {<color>} --pf-c-progress__status-icon--Color
25
19
  * Color of the status icon.
26
20
  * {@default `#151515`}
27
- *
28
21
  * @cssprop {<length>} --pf-c-progress__status-icon--MarginLeft
29
22
  * Margin left of the status icon.
30
23
  * {@default `0.5rem`}
31
- *
32
24
  * @cssprop {<length>} --pf-c-progress__indicator--Height
33
25
  * Height of the progress bar indicator.
34
26
  * {@default `1rem`}
35
- *
36
27
  * @cssprop {<color>} --pf-c-progress__indicator--BackgroundColor
37
28
  * Background color of the progress bar indicator.
38
29
  * {@default `#ffffff`}
39
- *
40
30
  * @cssprop {<color>} --pf-c-progress--m-success__bar--BackgroundColor
41
31
  * Background color of the progress bar when variant is success.
42
32
  * {@default `#3e8635`}
43
- *
44
33
  * @cssprop {<color>} --pf-c-progress--m-warning__bar--BackgroundColor
45
34
  * Background color of the progress bar when variant is warning.
46
35
  * {@default `#f0ab00`}
47
- *
48
36
  * @cssprop {<color>} --pf-c-progress--m-danger__bar--BackgroundColor
49
37
  * Background color of the progress bar when variant is danger.
50
38
  * {@default `#c9190b`}
51
- *
52
39
  * @cssprop {<color>} --pf-c-progress--m-success__status-icon--Color
53
40
  * Color of the status icon when variant is success.
54
41
  * {@default `#3e8635`}
55
- *
56
42
  * @cssprop {<color>} --pf-c-progress--m-warning__status-icon--Color
57
43
  * Color of the status icon when variant is warning.
58
44
  * {@default `#f0ab00`}
59
- *
60
45
  * @cssprop {<color>} --pf-c-progress--m-danger__status-icon--Color
61
46
  * Color of the status icon when variant is danger.
62
47
  * {@default `#c9190b`}
63
- *
64
48
  * @cssprop {<color>} --pf-c-progress--m-success--m-inside__measure--Color
65
49
  * Color of the progress bar measure when variant is success and measure location is inside.
66
50
  * {@default `#ffffff`}
67
- *
68
51
  * @cssprop {<length>} --pf-c-progress--m-outside__measure--FontSize
69
52
  * Font size of the progress bar measure when measure location is outside.
70
53
  * {@default `0.875rem`}
71
- *
72
54
  * @cssprop {<length>} --pf-c-progress--m-sm__bar--Height
73
55
  * Height of the progress bar when the size is small.
74
56
  * {@default `0.5rem`}
75
- *
76
57
  * @cssprop {<length>} --pf-c-progress--m-sm__description--FontSize
77
58
  * Font size of the progress bar description when the size is small.
78
59
  * {@default `0.875rem`}
79
- *
80
60
  * @cssprop {<length>} --pf-c-progress--m-lg__bar--Height
81
61
  * Height of the progress bar when the size is large.
82
62
  * {@default `1.5rem`}
83
- *
84
63
  */
85
64
  export declare class PfProgress extends LitElement {
86
65
  #private;
@@ -102,7 +81,7 @@ export declare class PfProgress extends LitElement {
102
81
  /** Variant of the progress bar */
103
82
  variant?: 'success' | 'danger' | 'warning';
104
83
  willUpdate(changed: PropertyValues<this>): void;
105
- render(): import("lit").TemplateResult<1>;
84
+ render(): import("lit-html").TemplateResult<1>;
106
85
  }
107
86
  declare global {
108
87
  interface HTMLElementTagNameMap {
@@ -11,89 +11,68 @@ const styles = css `* {\n box-sizing: border-box;\n}\n\n#container {\n --_pf-c
11
11
  const ICONS = new Map(Object.entries({
12
12
  success: { icon: 'circle-check' },
13
13
  danger: { icon: 'circle-xmark' },
14
- warning: { icon: 'triangle-exclamation' }
14
+ warning: { icon: 'triangle-exclamation' },
15
15
  }));
16
16
  /**
17
17
  * A progress bar gives the user a visual representation of their completion status of an ongoing process or task.
18
- *
19
18
  * @summary Display completion status of ongoing process or task.
20
- *
21
19
  * @cssprop {<length>} --pf-c-progress--GridGap
22
20
  * Gap between the sections of the progress bar.
23
21
  * {@default `1rem`}
24
- *
25
22
  * @cssprop {<color>} --pf-c-progress__bar--before--BackgroundColor
26
23
  * Color of the progress bar.
27
24
  * {@default `#06c`}
28
- *
29
25
  * @cssprop {<length>} --pf-c-progress__bar--Height
30
26
  * Height of the progress bar.
31
27
  * {@default `1rem`}
32
- *
33
28
  * @cssprop {<color>} --pf-c-progress__bar--BackgroundColor
34
29
  * Background color of the progress bar.
35
30
  * {@default `#ffffff`}
36
- *
37
31
  * @cssprop {<color>} --pf-c-progress__status-icon--Color
38
32
  * Color of the status icon.
39
33
  * {@default `#151515`}
40
- *
41
34
  * @cssprop {<length>} --pf-c-progress__status-icon--MarginLeft
42
35
  * Margin left of the status icon.
43
36
  * {@default `0.5rem`}
44
- *
45
37
  * @cssprop {<length>} --pf-c-progress__indicator--Height
46
38
  * Height of the progress bar indicator.
47
39
  * {@default `1rem`}
48
- *
49
40
  * @cssprop {<color>} --pf-c-progress__indicator--BackgroundColor
50
41
  * Background color of the progress bar indicator.
51
42
  * {@default `#ffffff`}
52
- *
53
43
  * @cssprop {<color>} --pf-c-progress--m-success__bar--BackgroundColor
54
44
  * Background color of the progress bar when variant is success.
55
45
  * {@default `#3e8635`}
56
- *
57
46
  * @cssprop {<color>} --pf-c-progress--m-warning__bar--BackgroundColor
58
47
  * Background color of the progress bar when variant is warning.
59
48
  * {@default `#f0ab00`}
60
- *
61
49
  * @cssprop {<color>} --pf-c-progress--m-danger__bar--BackgroundColor
62
50
  * Background color of the progress bar when variant is danger.
63
51
  * {@default `#c9190b`}
64
- *
65
52
  * @cssprop {<color>} --pf-c-progress--m-success__status-icon--Color
66
53
  * Color of the status icon when variant is success.
67
54
  * {@default `#3e8635`}
68
- *
69
55
  * @cssprop {<color>} --pf-c-progress--m-warning__status-icon--Color
70
56
  * Color of the status icon when variant is warning.
71
57
  * {@default `#f0ab00`}
72
- *
73
58
  * @cssprop {<color>} --pf-c-progress--m-danger__status-icon--Color
74
59
  * Color of the status icon when variant is danger.
75
60
  * {@default `#c9190b`}
76
- *
77
61
  * @cssprop {<color>} --pf-c-progress--m-success--m-inside__measure--Color
78
62
  * Color of the progress bar measure when variant is success and measure location is inside.
79
63
  * {@default `#ffffff`}
80
- *
81
64
  * @cssprop {<length>} --pf-c-progress--m-outside__measure--FontSize
82
65
  * Font size of the progress bar measure when measure location is outside.
83
66
  * {@default `0.875rem`}
84
- *
85
67
  * @cssprop {<length>} --pf-c-progress--m-sm__bar--Height
86
68
  * Height of the progress bar when the size is small.
87
69
  * {@default `0.5rem`}
88
- *
89
70
  * @cssprop {<length>} --pf-c-progress--m-sm__description--FontSize
90
71
  * Font size of the progress bar description when the size is small.
91
72
  * {@default `0.875rem`}
92
- *
93
73
  * @cssprop {<length>} --pf-c-progress--m-lg__bar--Height
94
74
  * Height of the progress bar when the size is large.
95
75
  * {@default `1.5rem`}
96
- *
97
76
  */
98
77
  let PfProgress = class PfProgress extends LitElement {
99
78
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"pf-progress.js","sourceRoot":"","sources":["pf-progress.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyValues } from 'lit';\nimport { LitElement, html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement } from 'lit/decorators/custom-element.js';\nimport { property } from 'lit/decorators/property.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\n\nimport styles from './pf-progress.css';\n\nconst ICONS = new Map(Object.entries({\n success: { icon: 'circle-check' },\n danger: { icon: 'circle-xmark' },\n warning: { icon: 'triangle-exclamation' }\n}));\n\n/**\n * A progress bar gives the user a visual representation of their completion status of an ongoing process or task.\n *\n * @summary Display completion status of ongoing process or task.\n *\n * @cssprop {<length>} --pf-c-progress--GridGap\n * Gap between the sections of the progress bar.\n * {@default `1rem`}\n *\n * @cssprop {<color>} --pf-c-progress__bar--before--BackgroundColor\n * Color of the progress bar.\n * {@default `#06c`}\n *\n * @cssprop {<length>} --pf-c-progress__bar--Height\n * Height of the progress bar.\n * {@default `1rem`}\n *\n * @cssprop {<color>} --pf-c-progress__bar--BackgroundColor\n * Background color of the progress bar.\n * {@default `#ffffff`}\n *\n * @cssprop {<color>} --pf-c-progress__status-icon--Color\n * Color of the status icon.\n * {@default `#151515`}\n *\n * @cssprop {<length>} --pf-c-progress__status-icon--MarginLeft\n * Margin left of the status icon.\n * {@default `0.5rem`}\n *\n * @cssprop {<length>} --pf-c-progress__indicator--Height\n * Height of the progress bar indicator.\n * {@default `1rem`}\n *\n * @cssprop {<color>} --pf-c-progress__indicator--BackgroundColor\n * Background color of the progress bar indicator.\n * {@default `#ffffff`}\n *\n * @cssprop {<color>} --pf-c-progress--m-success__bar--BackgroundColor\n * Background color of the progress bar when variant is success.\n * {@default `#3e8635`}\n *\n * @cssprop {<color>} --pf-c-progress--m-warning__bar--BackgroundColor\n * Background color of the progress bar when variant is warning.\n * {@default `#f0ab00`}\n *\n * @cssprop {<color>} --pf-c-progress--m-danger__bar--BackgroundColor\n * Background color of the progress bar when variant is danger.\n * {@default `#c9190b`}\n *\n * @cssprop {<color>} --pf-c-progress--m-success__status-icon--Color\n * Color of the status icon when variant is success.\n * {@default `#3e8635`}\n *\n * @cssprop {<color>} --pf-c-progress--m-warning__status-icon--Color\n * Color of the status icon when variant is warning.\n * {@default `#f0ab00`}\n *\n * @cssprop {<color>} --pf-c-progress--m-danger__status-icon--Color\n * Color of the status icon when variant is danger.\n * {@default `#c9190b`}\n *\n * @cssprop {<color>} --pf-c-progress--m-success--m-inside__measure--Color\n * Color of the progress bar measure when variant is success and measure location is inside.\n * {@default `#ffffff`}\n *\n * @cssprop {<length>} --pf-c-progress--m-outside__measure--FontSize\n * Font size of the progress bar measure when measure location is outside.\n * {@default `0.875rem`}\n *\n * @cssprop {<length>} --pf-c-progress--m-sm__bar--Height\n * Height of the progress bar when the size is small.\n * {@default `0.5rem`}\n *\n * @cssprop {<length>} --pf-c-progress--m-sm__description--FontSize\n * Font size of the progress bar description when the size is small.\n * {@default `0.875rem`}\n *\n * @cssprop {<length>} --pf-c-progress--m-lg__bar--Height\n * Height of the progress bar when the size is large.\n * {@default `1.5rem`}\n *\n */\n@customElement('pf-progress')\nexport class PfProgress extends LitElement {\n static readonly styles = [styles];\n\n #internals = this.attachInternals();\n\n /** Represents the value of the progress bar */\n @property({ reflect: true, type: Number }) value = 0;\n\n /** Description (title) above the progress bar */\n @property() description?: string;\n\n /** Indicate whether to truncate the string description (title) */\n @property({\n type: Boolean,\n reflect: true,\n attribute: 'description-truncated',\n }) descriptionTruncated = false;\n\n /** Maximum value for the progress bar */\n @property({ type: Number, reflect: true }) max = 100;\n\n /** Minimum value for the progress bar */\n @property({ type: Number, reflect: true }) min = 0;\n\n /** Size of the progress bar (height) */\n @property() size?: 'sm' | 'lg';\n\n /** Where the percentage will be displayed with the progress element */\n @property({ attribute: 'measure-location' }) measureLocation?: 'outside' | 'inside' | 'none';\n\n /** Variant of the progress bar */\n @property() variant?: 'success' | 'danger' | 'warning';\n\n get #calculatedPercentage(): number {\n const { value, min, max } = this;\n const percentage = Math.round((value - min) / (max - min) * 100);\n if (Number.isNaN(percentage) || percentage < 0) {\n return 0;\n }\n return Math.min(percentage, 100);\n }\n\n get #icon() {\n return ICONS.get(this.variant ?? '')?.icon;\n }\n\n override willUpdate(changed: PropertyValues<this>) {\n if (changed.has('value') || changed.has('min') || changed.has('max')) {\n this.#internals.ariaValueNow = this.#calculatedPercentage.toString();\n }\n if (this.#icon) {\n import('@patternfly/elements/pf-icon/pf-icon.js');\n }\n if (this.descriptionTruncated) {\n import('@patternfly/elements/pf-tooltip/pf-tooltip.js');\n }\n }\n\n render() {\n const { size, measureLocation, variant, description, descriptionTruncated } = this;\n const icon = this.#icon;\n const singleLine = description?.length === 0;\n const pct = this.#calculatedPercentage;\n const width = `${pct}%`;\n\n return html`\n <div id=\"container\" class=\"${classMap({\n [size ?? '']: !!size,\n [measureLocation ?? '']: !!measureLocation,\n [variant ?? '']: !!variant,\n singleLine,\n descriptionTruncated,\n })}\">\n\n <div id=\"description\" aria-hidden=\"true\">${description ?? ''}</div>\n\n ${!descriptionTruncated ? '' : html`\n <pf-tooltip content=\"${this.description ?? ''}\"\n trigger=\"description\"></pf-tooltip>\n `}\n\n ${measureLocation === 'none' ? '' : html`\n <div id=\"status\" aria-hidden=\"true\">\n ${measureLocation !== 'inside' ? '' : width}\n <pf-icon set=\"fas\"\n icon=\"${ifDefined(icon)}\"\n size=\"md\"\n ?hidden=\"${!icon}\"\n ></pf-icon>\n </div>\n `}\n\n <progress id=\"progress\"\n max=\"100\"\n value=\"${pct}\"\n aria-valuemin=\"0\"\n aria-valuenow=\"${pct}\"\n aria-valuemax=\"100\"\n ></progress>\n\n ${measureLocation !== 'inside' ? '' : html`\n <span id=\"progress-span\"\n style=\"${styleMap({ width })}\"\n data-value=\"${width}\"></span>\n `}\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-progress': PfProgress;\n }\n}\n"]}
1
+ {"version":3,"file":"pf-progress.js","sourceRoot":"","sources":["pf-progress.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyValues } from 'lit';\nimport { LitElement, html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement } from 'lit/decorators/custom-element.js';\nimport { property } from 'lit/decorators/property.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\n\nimport styles from './pf-progress.css';\n\nconst ICONS = new Map(Object.entries({\n success: { icon: 'circle-check' },\n danger: { icon: 'circle-xmark' },\n warning: { icon: 'triangle-exclamation' },\n}));\n\n/**\n * A progress bar gives the user a visual representation of their completion status of an ongoing process or task.\n * @summary Display completion status of ongoing process or task.\n * @cssprop {<length>} --pf-c-progress--GridGap\n * Gap between the sections of the progress bar.\n * {@default `1rem`}\n * @cssprop {<color>} --pf-c-progress__bar--before--BackgroundColor\n * Color of the progress bar.\n * {@default `#06c`}\n * @cssprop {<length>} --pf-c-progress__bar--Height\n * Height of the progress bar.\n * {@default `1rem`}\n * @cssprop {<color>} --pf-c-progress__bar--BackgroundColor\n * Background color of the progress bar.\n * {@default `#ffffff`}\n * @cssprop {<color>} --pf-c-progress__status-icon--Color\n * Color of the status icon.\n * {@default `#151515`}\n * @cssprop {<length>} --pf-c-progress__status-icon--MarginLeft\n * Margin left of the status icon.\n * {@default `0.5rem`}\n * @cssprop {<length>} --pf-c-progress__indicator--Height\n * Height of the progress bar indicator.\n * {@default `1rem`}\n * @cssprop {<color>} --pf-c-progress__indicator--BackgroundColor\n * Background color of the progress bar indicator.\n * {@default `#ffffff`}\n * @cssprop {<color>} --pf-c-progress--m-success__bar--BackgroundColor\n * Background color of the progress bar when variant is success.\n * {@default `#3e8635`}\n * @cssprop {<color>} --pf-c-progress--m-warning__bar--BackgroundColor\n * Background color of the progress bar when variant is warning.\n * {@default `#f0ab00`}\n * @cssprop {<color>} --pf-c-progress--m-danger__bar--BackgroundColor\n * Background color of the progress bar when variant is danger.\n * {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-progress--m-success__status-icon--Color\n * Color of the status icon when variant is success.\n * {@default `#3e8635`}\n * @cssprop {<color>} --pf-c-progress--m-warning__status-icon--Color\n * Color of the status icon when variant is warning.\n * {@default `#f0ab00`}\n * @cssprop {<color>} --pf-c-progress--m-danger__status-icon--Color\n * Color of the status icon when variant is danger.\n * {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-progress--m-success--m-inside__measure--Color\n * Color of the progress bar measure when variant is success and measure location is inside.\n * {@default `#ffffff`}\n * @cssprop {<length>} --pf-c-progress--m-outside__measure--FontSize\n * Font size of the progress bar measure when measure location is outside.\n * {@default `0.875rem`}\n * @cssprop {<length>} --pf-c-progress--m-sm__bar--Height\n * Height of the progress bar when the size is small.\n * {@default `0.5rem`}\n * @cssprop {<length>} --pf-c-progress--m-sm__description--FontSize\n * Font size of the progress bar description when the size is small.\n * {@default `0.875rem`}\n * @cssprop {<length>} --pf-c-progress--m-lg__bar--Height\n * Height of the progress bar when the size is large.\n * {@default `1.5rem`}\n */\n@customElement('pf-progress')\nexport class PfProgress extends LitElement {\n static readonly styles = [styles];\n\n #internals = this.attachInternals();\n\n /** Represents the value of the progress bar */\n @property({ reflect: true, type: Number }) value = 0;\n\n /** Description (title) above the progress bar */\n @property() description?: string;\n\n /** Indicate whether to truncate the string description (title) */\n @property({\n type: Boolean,\n reflect: true,\n attribute: 'description-truncated',\n }) descriptionTruncated = false;\n\n /** Maximum value for the progress bar */\n @property({ type: Number, reflect: true }) max = 100;\n\n /** Minimum value for the progress bar */\n @property({ type: Number, reflect: true }) min = 0;\n\n /** Size of the progress bar (height) */\n @property() size?: 'sm' | 'lg';\n\n /** Where the percentage will be displayed with the progress element */\n @property({ attribute: 'measure-location' }) measureLocation?: 'outside' | 'inside' | 'none';\n\n /** Variant of the progress bar */\n @property() variant?: 'success' | 'danger' | 'warning';\n\n get #calculatedPercentage(): number {\n const { value, min, max } = this;\n const percentage = Math.round((value - min) / (max - min) * 100);\n if (Number.isNaN(percentage) || percentage < 0) {\n return 0;\n }\n return Math.min(percentage, 100);\n }\n\n get #icon() {\n return ICONS.get(this.variant ?? '')?.icon;\n }\n\n override willUpdate(changed: PropertyValues<this>) {\n if (changed.has('value') || changed.has('min') || changed.has('max')) {\n this.#internals.ariaValueNow = this.#calculatedPercentage.toString();\n }\n if (this.#icon) {\n import('@patternfly/elements/pf-icon/pf-icon.js');\n }\n if (this.descriptionTruncated) {\n import('@patternfly/elements/pf-tooltip/pf-tooltip.js');\n }\n }\n\n render() {\n const { size, measureLocation, variant, description, descriptionTruncated } = this;\n const icon = this.#icon;\n const singleLine = description?.length === 0;\n const pct = this.#calculatedPercentage;\n const width = `${pct}%`;\n\n return html`\n <div id=\"container\" class=\"${classMap({\n [size ?? '']: !!size,\n [measureLocation ?? '']: !!measureLocation,\n [variant ?? '']: !!variant,\n singleLine,\n descriptionTruncated,\n })}\">\n\n <div id=\"description\" aria-hidden=\"true\">${description ?? ''}</div>\n\n ${!descriptionTruncated ? '' : html`\n <pf-tooltip content=\"${this.description ?? ''}\"\n trigger=\"description\"></pf-tooltip>\n `}\n\n ${measureLocation === 'none' ? '' : html`\n <div id=\"status\" aria-hidden=\"true\">\n ${measureLocation !== 'inside' ? '' : width}\n <pf-icon set=\"fas\"\n icon=\"${ifDefined(icon)}\"\n size=\"md\"\n ?hidden=\"${!icon}\"\n ></pf-icon>\n </div>\n `}\n\n <progress id=\"progress\"\n max=\"100\"\n value=\"${pct}\"\n aria-valuemin=\"0\"\n aria-valuenow=\"${pct}\"\n aria-valuemax=\"100\"\n ></progress>\n\n ${measureLocation !== 'inside' ? '' : html`\n <span id=\"progress-span\"\n style=\"${styleMap({ width })}\"\n data-value=\"${width}\"></span>\n `}\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-progress': PfProgress;\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import { test } from '@playwright/test';
2
+ import { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';
3
+ const tagName = 'pf-progress';
4
+ test.describe(tagName, () => {
5
+ test('snapshot', async ({ page }) => {
6
+ const componentPage = new PfeDemoPage(page, tagName);
7
+ await componentPage.navigate();
8
+ await componentPage.snapshot();
9
+ });
10
+ });
11
+ //# sourceMappingURL=pf-progress.e2e.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pf-progress.e2e.js","sourceRoot":"","sources":["pf-progress.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AAEnF,MAAM,OAAO,GAAG,aAAa,CAAC;AAE9B,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-progress';\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"]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,45 @@
1
+ import { expect, html, fixture } from '@open-wc/testing';
2
+ import { PfProgress } from '@patternfly/elements/pf-progress/pf-progress.js';
3
+ describe('<pf-progress>', function () {
4
+ let element;
5
+ beforeEach(async function () {
6
+ element = await fixture(html `
7
+ <pf-progress value="33"
8
+ title="Progress title"
9
+ label="Progress label">
10
+ </pf-progress>
11
+ `);
12
+ });
13
+ it('should upgrade', async function () {
14
+ const klass = customElements.get('pf-progress');
15
+ expect(element).to.be.an.instanceOf(klass).and.to.be.an.instanceOf(PfProgress);
16
+ });
17
+ it('should be accessible', async function () {
18
+ await expect(element).shadowDom.to.be.accessible();
19
+ });
20
+ it('should set the correct value on the progress bar', async function () {
21
+ const element = await fixture(html `
22
+ <pf-progress value="33">
23
+ </pf-progress>
24
+ `);
25
+ expect(element.value).to.equal(33);
26
+ });
27
+ it('should set the correct title on the progress bar', async function () {
28
+ const element = await fixture(html `
29
+ <pf-progress title="Progress title">
30
+ </pf-progress>
31
+ `);
32
+ expect(element.title).to.equal('Progress title');
33
+ });
34
+ it('should have the correct value with the max value set', async function () {
35
+ const max = Math.floor(Math.random() * 100);
36
+ const value = Math.floor(Math.random() * (max));
37
+ const element = await fixture(html `
38
+ <pf-progress value="${value}" max="${max}">
39
+ </pf-progress>
40
+ `);
41
+ expect(element.value).to.equal(value);
42
+ expect(element.max).to.equal(max);
43
+ });
44
+ });
45
+ //# sourceMappingURL=pf-progress.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pf-progress.spec.js","sourceRoot":"","sources":["pf-progress.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,iDAAiD,CAAC;AAE7E,QAAQ,CAAC,eAAe,EAAE;IACxB,IAAI,OAAmB,CAAC;IAExB,UAAU,CAAC,KAAK;QACd,OAAO,GAAG,MAAM,OAAO,CAAa,IAAI,CAAA;;;;;KAKvC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gBAAgB,EAAE,KAAK;QACxB,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,KAAK;QAC9B,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK;QAC1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAa,IAAI,CAAA;;;KAG7C,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK;QAC1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAa,IAAI,CAAA;;;KAG7C,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK;QAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAEhD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAa,IAAI,CAAA;4BACtB,KAAK,UAAU,GAAG;;KAEzC,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { expect, html, fixture } from '@open-wc/testing';\nimport { PfProgress } from '@patternfly/elements/pf-progress/pf-progress.js';\n\ndescribe('<pf-progress>', function() {\n let element: PfProgress;\n\n beforeEach(async function() {\n element = await fixture<PfProgress>(html`\n <pf-progress value=\"33\"\n title=\"Progress title\"\n label=\"Progress label\">\n </pf-progress>\n `);\n });\n\n it('should upgrade', async function() {\n const klass = customElements.get('pf-progress');\n expect(element).to.be.an.instanceOf(klass).and.to.be.an.instanceOf(PfProgress);\n });\n\n it('should be accessible', async function() {\n await expect(element).shadowDom.to.be.accessible();\n });\n\n it('should set the correct value on the progress bar', async function() {\n const element = await fixture<PfProgress>(html`\n <pf-progress value=\"33\">\n </pf-progress>\n `);\n expect(element.value).to.equal(33);\n });\n\n it('should set the correct title on the progress bar', async function() {\n const element = await fixture<PfProgress>(html`\n <pf-progress title=\"Progress title\">\n </pf-progress>\n `);\n expect(element.title).to.equal('Progress title');\n });\n\n it('should have the correct value with the max value set', async function() {\n const max = Math.floor(Math.random() * 100);\n const value = Math.floor(Math.random() * (max));\n\n const element = await fixture<PfProgress>(html`\n <pf-progress value=\"${value}\" max=\"${max}\">\n </pf-progress>\n `);\n expect(element.value).to.equal(value);\n expect(element.max).to.equal(max);\n });\n});\n"]}
@@ -23,7 +23,7 @@ export declare class PfProgressStep extends LitElement {
23
23
  variant?: 'pending' | 'info' | 'success' | 'warning' | 'danger';
24
24
  /** Indicates if this item is the current active item. */
25
25
  current: boolean;
26
- render(): import("lit").TemplateResult<1>;
26
+ render(): import("lit-html").TemplateResult<1>;
27
27
  updated(changed: PropertyValues<this>): void;
28
28
  }
29
29
  declare global {
@@ -16,7 +16,7 @@ export declare class PfProgressStepper extends LitElement {
16
16
  compact: boolean;
17
17
  get value(): number;
18
18
  constructor();
19
- render(): import("lit").TemplateResult<1>;
19
+ render(): import("lit-html").TemplateResult<1>;
20
20
  }
21
21
  declare global {
22
22
  interface HTMLElementTagNameMap {
@@ -0,0 +1,11 @@
1
+ import { test } from '@playwright/test';
2
+ import { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';
3
+ const tagName = 'pf-progress-stepper';
4
+ test.describe(tagName, () => {
5
+ test('snapshot', async ({ page }) => {
6
+ const componentPage = new PfeDemoPage(page, tagName);
7
+ await componentPage.navigate();
8
+ await componentPage.snapshot();
9
+ });
10
+ });
11
+ //# sourceMappingURL=pf-progress-stepper.e2e.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pf-progress-stepper.e2e.js","sourceRoot":"","sources":["pf-progress-stepper.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AAEnF,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAEtC,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-progress-stepper';\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"]}