@patternfly/elements 2.0.0-rc.3 → 2.0.0-rc.5

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 (233) hide show
  1. package/custom-elements.json +36 -0
  2. package/package.json +2 -1
  3. package/pf-accordion/BaseAccordion.js +1 -1
  4. package/pf-accordion/BaseAccordionHeader.js +1 -1
  5. package/pf-accordion/BaseAccordionPanel.js +1 -1
  6. package/pf-accordion/README.md +44 -0
  7. package/pf-accordion/pf-accordion-header.js +1 -1
  8. package/pf-accordion/pf-accordion-panel.js +1 -1
  9. package/pf-accordion/pf-accordion.js +1 -1
  10. package/pf-avatar/BaseAvatar.js +1 -1
  11. package/pf-avatar/README.md +31 -0
  12. package/pf-avatar/pf-avatar.js +1 -1
  13. package/pf-badge/BaseBadge.js +1 -1
  14. package/pf-badge/README.md +57 -0
  15. package/pf-badge/pf-badge.js +1 -1
  16. package/pf-button/BaseButton.js +1 -1
  17. package/pf-button/README.md +61 -0
  18. package/pf-button/pf-button.js +1 -1
  19. package/pf-card/BaseCard.js +1 -1
  20. package/pf-card/README.md +34 -0
  21. package/pf-card/pf-card.js +1 -1
  22. package/pf-clipboard-copy/BaseClipboardCopy.js +1 -1
  23. package/pf-clipboard-copy/README.md +8 -0
  24. package/pf-clipboard-copy/pf-clipboard-copy.js +1 -1
  25. package/pf-code-block/BaseCodeBlock.js +1 -1
  26. package/pf-code-block/README.md +77 -0
  27. package/pf-code-block/pf-code-block.js +1 -1
  28. package/pf-icon/BaseIcon.js +1 -1
  29. package/pf-icon/README.md +86 -0
  30. package/pf-icon/pf-icon.js +1 -1
  31. package/pf-jump-links/README.md +27 -0
  32. package/pf-jump-links/pf-jump-links-item.js +1 -1
  33. package/pf-jump-links/pf-jump-links-list.js +1 -1
  34. package/pf-jump-links/pf-jump-links.js +1 -1
  35. package/pf-label/BaseLabel.js +1 -1
  36. package/pf-label/README.md +61 -0
  37. package/pf-label/pf-label.js +1 -1
  38. package/pf-modal/README.md +63 -0
  39. package/pf-modal/pf-modal.js +1 -1
  40. package/pf-panel/README.md +10 -0
  41. package/pf-panel/pf-panel.js +1 -1
  42. package/pf-progress-stepper/README.md +41 -0
  43. package/pf-progress-stepper/pf-progress-step.js +1 -1
  44. package/pf-progress-stepper/pf-progress-stepper.js +1 -1
  45. package/pf-spinner/BaseSpinner.js +1 -1
  46. package/pf-spinner/README.md +46 -0
  47. package/pf-spinner/pf-spinner.js +1 -1
  48. package/pf-switch/BaseSwitch.js +1 -1
  49. package/pf-switch/README.md +91 -0
  50. package/pf-switch/pf-switch.js +1 -1
  51. package/pf-tabs/BaseTab.d.ts +1 -0
  52. package/pf-tabs/BaseTab.js +9 -6
  53. package/pf-tabs/BaseTab.js.map +1 -1
  54. package/pf-tabs/BaseTabPanel.js +1 -1
  55. package/pf-tabs/BaseTabs.d.ts +6 -0
  56. package/pf-tabs/BaseTabs.js +40 -73
  57. package/pf-tabs/BaseTabs.js.map +1 -1
  58. package/pf-tabs/README.md +40 -0
  59. package/pf-tabs/pf-tab-panel.js +1 -1
  60. package/pf-tabs/pf-tab.css +1 -0
  61. package/pf-tabs/pf-tab.js +1 -1
  62. package/pf-tabs/pf-tabs.js +1 -1
  63. package/pf-tile/README.md +12 -0
  64. package/pf-tile/pf-tile.js +1 -1
  65. package/pf-timestamp/README.md +64 -0
  66. package/pf-timestamp/pf-timestamp.js +1 -1
  67. package/pf-tooltip/BaseTooltip.js +1 -1
  68. package/pf-tooltip/README.md +64 -0
  69. package/pf-tooltip/pf-tooltip.js +1 -1
  70. package/pfe.min.js +129 -129
  71. package/pfe.min.js.map +4 -4
  72. package/pf-accordion/demo/demo.css +0 -9
  73. package/pf-accordion/demo/pf-accordion.js +0 -10
  74. package/pf-accordion/test/pf-accordion.e2e.d.ts +0 -1
  75. package/pf-accordion/test/pf-accordion.e2e.js +0 -11
  76. package/pf-accordion/test/pf-accordion.e2e.js.map +0 -1
  77. package/pf-accordion/test/pf-accordion.spec.d.ts +0 -1
  78. package/pf-accordion/test/pf-accordion.spec.js +0 -971
  79. package/pf-accordion/test/pf-accordion.spec.js.map +0 -1
  80. package/pf-avatar/demo/demo.css +0 -18
  81. package/pf-avatar/demo/pf-avatar.js +0 -1
  82. package/pf-avatar/test/pf-avatar.e2e.d.ts +0 -1
  83. package/pf-avatar/test/pf-avatar.e2e.js +0 -11
  84. package/pf-avatar/test/pf-avatar.e2e.js.map +0 -1
  85. package/pf-avatar/test/pf-avatar.spec.d.ts +0 -1
  86. package/pf-avatar/test/pf-avatar.spec.js +0 -42
  87. package/pf-avatar/test/pf-avatar.spec.js.map +0 -1
  88. package/pf-badge/demo/demo.css +0 -9
  89. package/pf-badge/demo/pf-badge.js +0 -8
  90. package/pf-badge/test/pf-badge.e2e.d.ts +0 -1
  91. package/pf-badge/test/pf-badge.e2e.js +0 -11
  92. package/pf-badge/test/pf-badge.e2e.js.map +0 -1
  93. package/pf-badge/test/pf-badge.spec.d.ts +0 -1
  94. package/pf-badge/test/pf-badge.spec.js +0 -49
  95. package/pf-badge/test/pf-badge.spec.js.map +0 -1
  96. package/pf-button/demo/demo.css +0 -11
  97. package/pf-button/demo/form-control.js +0 -15
  98. package/pf-button/demo/pf-button.js +0 -28
  99. package/pf-button/test/pf-button.e2e.d.ts +0 -1
  100. package/pf-button/test/pf-button.e2e.js +0 -11
  101. package/pf-button/test/pf-button.e2e.js.map +0 -1
  102. package/pf-button/test/pf-button.spec.d.ts +0 -1
  103. package/pf-button/test/pf-button.spec.js +0 -94
  104. package/pf-button/test/pf-button.spec.js.map +0 -1
  105. package/pf-card/demo/demo.css +0 -44
  106. package/pf-card/demo/pf-card.js +0 -23
  107. package/pf-card/test/pf-card.e2e.d.ts +0 -1
  108. package/pf-card/test/pf-card.e2e.js +0 -11
  109. package/pf-card/test/pf-card.e2e.js.map +0 -1
  110. package/pf-card/test/pf-card.spec.d.ts +0 -1
  111. package/pf-card/test/pf-card.spec.js +0 -153
  112. package/pf-card/test/pf-card.spec.js.map +0 -1
  113. package/pf-clipboard-copy/demo/demo.css +0 -12
  114. package/pf-clipboard-copy/demo/pf-clipboard-copy.js +0 -1
  115. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.d.ts +0 -1
  116. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js +0 -11
  117. package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js.map +0 -1
  118. package/pf-clipboard-copy/test/pf-clipboard-copy.spec.d.ts +0 -1
  119. package/pf-clipboard-copy/test/pf-clipboard-copy.spec.js +0 -100
  120. package/pf-clipboard-copy/test/pf-clipboard-copy.spec.js.map +0 -1
  121. package/pf-code-block/demo/demo.css +0 -4
  122. package/pf-code-block/demo/pf-code-block.js +0 -2
  123. package/pf-code-block/test/pf-code-block.e2e.d.ts +0 -1
  124. package/pf-code-block/test/pf-code-block.e2e.js +0 -11
  125. package/pf-code-block/test/pf-code-block.e2e.js.map +0 -1
  126. package/pf-code-block/test/pf-code-block.spec.d.ts +0 -1
  127. package/pf-code-block/test/pf-code-block.spec.js +0 -86
  128. package/pf-code-block/test/pf-code-block.spec.js.map +0 -1
  129. package/pf-icon/demo/custom-icon-sets.js +0 -5
  130. package/pf-icon/demo/demo.css +0 -53
  131. package/pf-icon/demo/icons/rh/boba-tea.js +0 -5
  132. package/pf-icon/demo/icons/rh/lifecycle.js +0 -3
  133. package/pf-icon/demo/pf-icon.js +0 -68
  134. package/pf-icon/test/pf-icon.e2e.d.ts +0 -1
  135. package/pf-icon/test/pf-icon.e2e.js +0 -11
  136. package/pf-icon/test/pf-icon.e2e.js.map +0 -1
  137. package/pf-icon/test/pf-icon.spec.d.ts +0 -1
  138. package/pf-icon/test/pf-icon.spec.js +0 -127
  139. package/pf-icon/test/pf-icon.spec.js.map +0 -1
  140. package/pf-icon/test/rh-icon-aed.js +0 -2
  141. package/pf-icon/test/rh-icon-api.js +0 -2
  142. package/pf-icon/test/rh-icon-atom.js +0 -2
  143. package/pf-icon/test/rh-icon-bike.js +0 -2
  144. package/pf-jump-links/demo/demo.css +0 -4
  145. package/pf-jump-links/demo/pf-jump-links.js +0 -4
  146. package/pf-jump-links/demo/scrollspy-with-subsections.css +0 -60
  147. package/pf-jump-links/demo/scrollspy-with-subsections.js +0 -34
  148. package/pf-jump-links/test/pf-jump-links.e2e.d.ts +0 -1
  149. package/pf-jump-links/test/pf-jump-links.e2e.js +0 -11
  150. package/pf-jump-links/test/pf-jump-links.e2e.js.map +0 -1
  151. package/pf-jump-links/test/pf-jump-links.spec.d.ts +0 -1
  152. package/pf-jump-links/test/pf-jump-links.spec.js +0 -88
  153. package/pf-jump-links/test/pf-jump-links.spec.js.map +0 -1
  154. package/pf-label/demo/demo.css +0 -37
  155. package/pf-label/demo/pf-label.js +0 -10
  156. package/pf-label/test/pf-label.e2e.d.ts +0 -1
  157. package/pf-label/test/pf-label.e2e.js +0 -11
  158. package/pf-label/test/pf-label.e2e.js.map +0 -1
  159. package/pf-label/test/pf-label.spec.d.ts +0 -1
  160. package/pf-label/test/pf-label.spec.js +0 -108
  161. package/pf-label/test/pf-label.spec.js.map +0 -1
  162. package/pf-modal/demo/demo.css +0 -32
  163. package/pf-modal/demo/pf-modal.js +0 -10
  164. package/pf-modal/test/pf-modal.e2e.d.ts +0 -1
  165. package/pf-modal/test/pf-modal.e2e.js +0 -13
  166. package/pf-modal/test/pf-modal.e2e.js.map +0 -1
  167. package/pf-modal/test/pf-modal.spec.d.ts +0 -1
  168. package/pf-modal/test/pf-modal.spec.js +0 -209
  169. package/pf-modal/test/pf-modal.spec.js.map +0 -1
  170. package/pf-panel/demo/demo.css +0 -7
  171. package/pf-panel/demo/pf-panel.js +0 -1
  172. package/pf-panel/test/pf-panel.e2e.d.ts +0 -1
  173. package/pf-panel/test/pf-panel.e2e.js +0 -11
  174. package/pf-panel/test/pf-panel.e2e.js.map +0 -1
  175. package/pf-panel/test/pf-panel.spec.d.ts +0 -1
  176. package/pf-panel/test/pf-panel.spec.js +0 -19
  177. package/pf-panel/test/pf-panel.spec.js.map +0 -1
  178. package/pf-progress-stepper/demo/demo.css +0 -10
  179. package/pf-progress-stepper/demo/pf-progress-stepper.js +0 -13
  180. package/pf-progress-stepper/test/pf-progress-stepper.e2e.d.ts +0 -1
  181. package/pf-progress-stepper/test/pf-progress-stepper.e2e.js +0 -11
  182. package/pf-progress-stepper/test/pf-progress-stepper.e2e.js.map +0 -1
  183. package/pf-progress-stepper/test/pf-progress-stepper.spec.d.ts +0 -1
  184. package/pf-progress-stepper/test/pf-progress-stepper.spec.js +0 -13
  185. package/pf-progress-stepper/test/pf-progress-stepper.spec.js.map +0 -1
  186. package/pf-spinner/demo/demo.css +0 -2
  187. package/pf-spinner/demo/pf-spinner.js +0 -2
  188. package/pf-spinner/test/pf-spinner.e2e.d.ts +0 -1
  189. package/pf-spinner/test/pf-spinner.e2e.js +0 -11
  190. package/pf-spinner/test/pf-spinner.e2e.js.map +0 -1
  191. package/pf-spinner/test/pf-spinner.spec.d.ts +0 -1
  192. package/pf-spinner/test/pf-spinner.spec.js +0 -52
  193. package/pf-spinner/test/pf-spinner.spec.js.map +0 -1
  194. package/pf-switch/demo/demo.css +0 -32
  195. package/pf-switch/demo/pf-switch.js +0 -13
  196. package/pf-switch/test/pf-switch.e2e.d.ts +0 -1
  197. package/pf-switch/test/pf-switch.e2e.js +0 -11
  198. package/pf-switch/test/pf-switch.e2e.js.map +0 -1
  199. package/pf-switch/test/pf-switch.spec.d.ts +0 -1
  200. package/pf-switch/test/pf-switch.spec.js +0 -164
  201. package/pf-switch/test/pf-switch.spec.js.map +0 -1
  202. package/pf-tabs/demo/demo.css +0 -62
  203. package/pf-tabs/demo/pf-tabs.js +0 -44
  204. package/pf-tabs/test/pf-tabs.e2e.d.ts +0 -1
  205. package/pf-tabs/test/pf-tabs.e2e.js +0 -13
  206. package/pf-tabs/test/pf-tabs.e2e.js.map +0 -1
  207. package/pf-tabs/test/pf-tabs.spec.d.ts +0 -1
  208. package/pf-tabs/test/pf-tabs.spec.js +0 -178
  209. package/pf-tabs/test/pf-tabs.spec.js.map +0 -1
  210. package/pf-tile/demo/demo.css +0 -59
  211. package/pf-tile/demo/pf-tile.js +0 -21
  212. package/pf-tile/test/pf-tile.e2e.d.ts +0 -1
  213. package/pf-tile/test/pf-tile.e2e.js +0 -11
  214. package/pf-tile/test/pf-tile.e2e.js.map +0 -1
  215. package/pf-tile/test/pf-tile.spec.d.ts +0 -1
  216. package/pf-tile/test/pf-tile.spec.js +0 -51
  217. package/pf-tile/test/pf-tile.spec.js.map +0 -1
  218. package/pf-timestamp/demo/pf-timestamp.js +0 -3
  219. package/pf-timestamp/test/pf-timestamp.e2e.d.ts +0 -1
  220. package/pf-timestamp/test/pf-timestamp.e2e.js +0 -12
  221. package/pf-timestamp/test/pf-timestamp.e2e.js.map +0 -1
  222. package/pf-timestamp/test/pf-timestamp.spec.d.ts +0 -1
  223. package/pf-timestamp/test/pf-timestamp.spec.js +0 -139
  224. package/pf-timestamp/test/pf-timestamp.spec.js.map +0 -1
  225. package/pf-tooltip/demo/demo.css +0 -39
  226. package/pf-tooltip/demo/performance.js +0 -45
  227. package/pf-tooltip/demo/pf-tooltip.js +0 -7
  228. package/pf-tooltip/test/pf-tooltip.e2e.d.ts +0 -1
  229. package/pf-tooltip/test/pf-tooltip.e2e.js +0 -11
  230. package/pf-tooltip/test/pf-tooltip.e2e.js.map +0 -1
  231. package/pf-tooltip/test/pf-tooltip.spec.d.ts +0 -1
  232. package/pf-tooltip/test/pf-tooltip.spec.js +0 -50
  233. package/pf-tooltip/test/pf-tooltip.spec.js.map +0 -1
@@ -7052,6 +7052,18 @@
7052
7052
  "module": "pf-tabs/BaseTab.js"
7053
7053
  }
7054
7054
  },
7055
+ {
7056
+ "kind": "field",
7057
+ "name": "button",
7058
+ "type": {
7059
+ "text": "HTMLButtonElement"
7060
+ },
7061
+ "privacy": "private",
7062
+ "inheritedFrom": {
7063
+ "name": "BaseTab",
7064
+ "module": "pf-tabs/BaseTab.js"
7065
+ }
7066
+ },
7055
7067
  {
7056
7068
  "kind": "field",
7057
7069
  "name": "#internals",
@@ -7507,6 +7519,16 @@
7507
7519
  "module": "pf-tabs/BaseTabs.js"
7508
7520
  }
7509
7521
  },
7522
+ {
7523
+ "kind": "field",
7524
+ "name": "#rovingTabindexController",
7525
+ "privacy": "private",
7526
+ "default": "new RovingTabindexController(this)",
7527
+ "inheritedFrom": {
7528
+ "name": "BaseTabs",
7529
+ "module": "pf-tabs/BaseTabs.js"
7530
+ }
7531
+ },
7510
7532
  {
7511
7533
  "kind": "field",
7512
7534
  "name": "#instances",
@@ -10344,6 +10366,14 @@
10344
10366
  },
10345
10367
  "privacy": "private"
10346
10368
  },
10369
+ {
10370
+ "kind": "field",
10371
+ "name": "button",
10372
+ "type": {
10373
+ "text": "HTMLButtonElement"
10374
+ },
10375
+ "privacy": "private"
10376
+ },
10347
10377
  {
10348
10378
  "kind": "field",
10349
10379
  "name": "active",
@@ -10542,6 +10572,12 @@
10542
10572
  "description": "Icon set to use for the scroll buttons",
10543
10573
  "readonly": true
10544
10574
  },
10575
+ {
10576
+ "kind": "field",
10577
+ "name": "#rovingTabindexController",
10578
+ "privacy": "private",
10579
+ "default": "new RovingTabindexController(this)"
10580
+ },
10545
10581
  {
10546
10582
  "kind": "field",
10547
10583
  "name": "#instances",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@patternfly/elements",
3
3
  "license": "MIT",
4
- "version": "2.0.0-rc.3",
4
+ "version": "2.0.0-rc.5",
5
5
  "description": "PatternFly Elements",
6
6
  "customElements": "custom-elements.json",
7
7
  "type": "module",
@@ -30,6 +30,7 @@
30
30
  "./pf-code-block/pf-code-block.js": "./pf-code-block/pf-code-block.js",
31
31
  "./pf-icon/BaseIcon.js": "./pf-icon/BaseIcon.js",
32
32
  "./pf-icon/pf-icon.js": "./pf-icon/pf-icon.js",
33
+ "./pf-icon/icons/*": "./pf-icon/icons/*",
33
34
  "./pf-jump-links/pf-jump-links-item.js": "./pf-jump-links/pf-jump-links-item.js",
34
35
  "./pf-jump-links/pf-jump-links-list.js": "./pf-jump-links/pf-jump-links-list.js",
35
36
  "./pf-jump-links/pf-jump-links.js": "./pf-jump-links/pf-jump-links.js",
@@ -8,7 +8,7 @@ import { Logger } from '@patternfly/pfe-core/controllers/logger.js';
8
8
  import { AccordionHeaderChangeEvent, BaseAccordionHeader } from './BaseAccordionHeader.js';
9
9
  import { BaseAccordionPanel } from './BaseAccordionPanel.js';
10
10
  import { css } from "lit";
11
- const style = css `:host {\n transition-property: box-shadow, border;\n transition-timing-function: ease-out;\n transition-duration: 1ms;\n}\n`;
11
+ const style = css `:host{transition-property:box-shadow,border;transition-timing-function:ease-out;transition-duration:1ms}`;
12
12
  const CSS_TIMING_UNITS_RE = /^[0-9.]+(?<unit>[a-zA-Z]+)/g;
13
13
  export class AccordionExpandEvent extends ComposedEvent {
14
14
  constructor(toggle, panel) {
@@ -8,7 +8,7 @@ import { ComposedEvent } from '@patternfly/pfe-core';
8
8
  import { getRandomId } from '@patternfly/pfe-core/functions/random.js';
9
9
  import { Logger } from '@patternfly/pfe-core/controllers/logger.js';
10
10
  import { css } from "lit";
11
- 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 style = css `#heading{font-size:100%;padding:0;margin:0}a,button{cursor:pointer}.toggle,.toggle:after,.toggle:before{padding:0;margin:0}.toggle{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;border:0}.toggle:after{content:"";position:absolute;bottom:0;left:0}span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`;
12
12
  const isPorHeader = (el) => el instanceof HTMLElement && !!el.tagName.match(/P|^H[1-6]/);
13
13
  export class AccordionHeaderChangeEvent extends ComposedEvent {
14
14
  constructor(expanded, toggle, accordion) {
@@ -3,7 +3,7 @@ import { LitElement, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { getRandomId } from '@patternfly/pfe-core/functions/random.js';
5
5
  import { css } from "lit";
6
- const style = css `:host {\n display: none;\n overflow: hidden;\n will-change: height;\n}\n\n:host([expanded]) {\n display: block;\n position: relative;\n}\n\n:host(.animating) {\n display: block;\n transition: height 0.3s ease-in-out;\n}\n\n:host([fixed]) {\n overflow-y: auto;\n}\n\n.body {\n position: relative;\n}\n\n.body:after {\n content: "";\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n}\n`;
6
+ const style = css `:host{display:none;overflow:hidden;will-change:height}:host([expanded]){display:block;position:relative}:host(.animating){display:block;transition:height .3s ease-in-out}:host([fixed]){overflow-y:auto}.body{position:relative}.body:after{content:"";position:absolute;top:0;bottom:0;left:0}`;
7
7
  export class BaseAccordionPanel extends LitElement {
8
8
  constructor() {
9
9
  super(...arguments);
@@ -0,0 +1,44 @@
1
+ # PatternFly Elements Accordion
2
+
3
+ `<pf-accordion>` is a web component that provides a collapsible accordion interface for sectioned content.
4
+
5
+ Read more about Accordion in the [PatternFly Elements Accordion documentation](https://patternflyelements.org/components/accordion)
6
+
7
+ ## Installation
8
+
9
+ Load `<pf-accordion>` via CDN:
10
+
11
+ ```html
12
+ <script src="https://jspm.dev/@patternfly/elements/pf-accordion/pf-accordion.js"></script>
13
+ ```
14
+
15
+ Or, if you are using [NPM](https://npm.im), install it
16
+
17
+ ```bash
18
+ npm install @patternfly/elements
19
+ ```
20
+
21
+ Then once installed, import it to your application:
22
+
23
+ ```js
24
+ import '@patternfly/elements/pf-accordion/pf-accordion.js';
25
+ ```
26
+ ## Usage
27
+
28
+ ```html
29
+ <pf-accordion>
30
+ <pf-accordion-header>
31
+ <h3>Consetetur sadipscing elitr?</h3>
32
+ </pf-accordion-header>
33
+ <pf-accordion-panel>
34
+ <p><a href="#">Lorem ipsum dolor sit amet</a>, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.</p>
35
+ </pf-accordion-panel>
36
+ <pf-accordion-header>
37
+ <h3>Labore et dolore magna aliquyam erat?</h3>
38
+ </pf-accordion-header>
39
+ <pf-accordion-panel>
40
+ <p><a href="#">Lorem ipsum dolor sit amet</a>, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.</p>
41
+ </pf-accordion-panel>
42
+ </pf-accordion>
43
+ ```
44
+
@@ -5,7 +5,7 @@ import { customElement, property } from 'lit/decorators.js';
5
5
  import { SlotController } from '@patternfly/pfe-core/controllers/slot-controller.js';
6
6
  import { BaseAccordionHeader } from './BaseAccordionHeader.js';
7
7
  import { css } from "lit";
8
- const style = css `:host {\n --pf-icon--size: var(--pf-c-accordion__toggle--IconSize, 10px);\n\n color: var(--pf-c-accordion__toggle--Color, var(--pf-global--Color--100, #151515));\n background-color: var(--pf-global--BackgroundColor--100, #ffffff);\n}\n\n:host([large]) {\n --pf-c-accordion__toggle--PaddingTop: var(--pf-global--spacer--md, 1rem);\n --pf-c-accordion__toggle--PaddingRight: var(--pf-global--spacer--md, 1rem);\n --pf-c-accordion__toggle--PaddingBottom: var(--pf-global--spacer--md, 1rem);\n --pf-c-accordion__toggle--PaddingLeft: var(--pf-global--spacer--lg, 1.5rem);\n --pf-c-accordion__toggle--FontFamily:\n var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,\n "RedHatDisplayUpdated",\n "Overpass",\n overpass,\n helvetica,\n arial,\n sans-serif\n );\n --pf-c-accordion__toggle--FontSize: var(--pf-global--FontSize--xl, 1.25rem);\n --pf-c-accordion__toggle--hover-text--Color: var(--pf-global--Color--100, #151515);\n --pf-c-accordion__toggle--active-text--Color: var(--pf-global--Color--100, #151515);\n --pf-c-accordion__toggle--active-text--FontWeight: var(--pf-global--FontWeight--normal, 400);\n --pf-c-accordion__toggle--focus-text--Color: var(--pf-global--Color--100, #151515);\n --pf-c-accordion__toggle--focus-text--FontWeight: var(--pf-global--FontWeight--normal, 400);\n --pf-c-accordion__toggle--expanded-text--Color: var(--pf-global--Color--100, #151515);\n --pf-c-accordion__toggle--expanded-text--FontWeight: var(--pf-global--FontWeight--normal, 400);\n --pf-icon--size: var(--pf-c-accordion__toggle--IconSize, 12px);\n}\n\n#heading {\n font-weight: var(--pf-c-accordion__toggle--FontWeight, var(--pf-global--FontWeight--normal, 400));\n}\n\n.toggle,\n.toggle:before,\n.toggle:after {\n background-color: var(--pf-c-accordion__toggle--BackgroundColor, transparent);\n}\n\n.icon {\n transition: var(--pf-c-accordion__toggle-icon--Transition, 0.2s ease-in 0s);\n}\n\n.toggle {\n padding:\n var(--pf-c-accordion__toggle--PaddingTop, var(--pf-global--spacer--md, 0.5rem))\n var(--pf-c-accordion__toggle--PaddingRight, var(--pf-global--spacer--md, 1rem))\n var(--pf-c-accordion__toggle--PaddingBottom, var(--pf-global--spacer--sm, 0.5rem))\n var(--pf-c-accordion__toggle--PaddingLeft, var(--pf-global--spacer--md, 1rem));\n font-family:\n var(--pf-c-accordion__toggle--FontFamily,\n var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,\n "RedHatTextUpdated",\n helvetica,\n arial,\n sans-serif));\n font-size: var(--pf-c-accordion__toggle--FontSize, var(--pf-global--FontSize--lg, 1rem));\n font-weight: var(--pf-c-accordion__toggle--FontWeight, var(--pf-global--FontWeight--normal, 400));\n color: var(--pf-c-accordion__toggle--Color, var(--pf-global--Color--100, #151515));\n}\n\n.toggle[aria-expanded="true"] {\n --pf-c-accordion__toggle--after--BackgroundColor:\n var(\n --pf-c-accordion__toggle--expanded--before--BackgroundColor,\n var(\n --pf-global--primary-color--100,\n #0066cc\n )\n );\n}\n\n.toggle:after {\n top: var(--pf-c-accordion__toggle--before--Top, -1px);\n width: var(--pf-c-accordion__toggle--before--Width, var(--pf-global--BorderWidth--lg, 3px));\n background-color: var(--pf-c-accordion__toggle--after--BackgroundColor, transparent);\n}\n\nspan {\n max-width: var(--pf-c-accordion__toggle-text--MaxWidth,\n calc(100% - var(--pf-global--spacer--lg, 1.5rem)));\n}\n\n.toggle[aria-expanded="true"] .icon {\n rotate: var(--pf-c-accordion__toggle--expanded-icon--Rotate, 90deg);\n}\n\n.toggle:hover,\n.toggle:active,\n.toggle:focus {\n background-color:\n var(--pf-c-accordion__toggle--active--BackgroundColor,\n var(--pf-global--BackgroundColor--200, #f0f0f0));\n}\n\n.toggle:hover span,\n.toggle:focus span,\n.toggle:active span {\n color: var(--pf-c-accordion__toggle--active-text--Color, var(--pf-global--link--Color, #0066cc));\n}\n\n.toggle:focus span,\n.toggle:active span {\n font-weight: var(--pf-c-accordion__toggle--active-text--FontWeight,\n var(--pf-global--FontWeight--semi-bold, 700));\n}\n`;
8
+ const style = css `:host{--pf-icon--size:var(--pf-c-accordion__toggle--IconSize, 10px);color:var(--pf-c-accordion__toggle--Color,var(--pf-global--Color--100,#151515));background-color:var(--pf-global--BackgroundColor--100,#fff)}:host([large]){--pf-c-accordion__toggle--PaddingTop:var(--pf-global--spacer--md, 1rem);--pf-c-accordion__toggle--PaddingRight:var(--pf-global--spacer--md, 1rem);--pf-c-accordion__toggle--PaddingBottom:var(--pf-global--spacer--md, 1rem);--pf-c-accordion__toggle--PaddingLeft:var(--pf-global--spacer--lg, 1.5rem);--pf-c-accordion__toggle--FontFamily:var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,\n "RedHatDisplayUpdated",\n "Overpass",\n overpass,\n helvetica,\n arial,\n sans-serif\n );--pf-c-accordion__toggle--FontSize:var(--pf-global--FontSize--xl, 1.25rem);--pf-c-accordion__toggle--hover-text--Color:var(--pf-global--Color--100, #151515);--pf-c-accordion__toggle--active-text--Color:var(--pf-global--Color--100, #151515);--pf-c-accordion__toggle--active-text--FontWeight:var(--pf-global--FontWeight--normal, 400);--pf-c-accordion__toggle--focus-text--Color:var(--pf-global--Color--100, #151515);--pf-c-accordion__toggle--focus-text--FontWeight:var(--pf-global--FontWeight--normal, 400);--pf-c-accordion__toggle--expanded-text--Color:var(--pf-global--Color--100, #151515);--pf-c-accordion__toggle--expanded-text--FontWeight:var(--pf-global--FontWeight--normal, 400);--pf-icon--size:var(--pf-c-accordion__toggle--IconSize, 12px)}#heading{font-weight:var(--pf-c-accordion__toggle--FontWeight,var(--pf-global--FontWeight--normal,400))}.toggle,.toggle:after,.toggle:before{background-color:var(--pf-c-accordion__toggle--BackgroundColor,transparent)}.icon{transition:var(--pf-c-accordion__toggle-icon--Transition, .2s ease-in 0s)}.toggle{padding:var(--pf-c-accordion__toggle--PaddingTop,var(--pf-global--spacer--md,.5rem)) var(--pf-c-accordion__toggle--PaddingRight,var(--pf-global--spacer--md,1rem)) var(--pf-c-accordion__toggle--PaddingBottom,var(--pf-global--spacer--sm,.5rem)) var(--pf-c-accordion__toggle--PaddingLeft,var(--pf-global--spacer--md,1rem));font-family:var(--pf-c-accordion__toggle--FontFamily,\n var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,\n "RedHatTextUpdated",\n helvetica,\n arial,\n sans-serif));font-size:var(--pf-c-accordion__toggle--FontSize, var(--pf-global--FontSize--lg, 1rem));font-weight:var(--pf-c-accordion__toggle--FontWeight,var(--pf-global--FontWeight--normal,400));color:var(--pf-c-accordion__toggle--Color,var(--pf-global--Color--100,#151515))}.toggle[aria-expanded=true]{--pf-c-accordion__toggle--after--BackgroundColor:var(\n --pf-c-accordion__toggle--expanded--before--BackgroundColor,\n var(\n --pf-global--primary-color--100,\n #0066cc\n )\n )}.toggle:after{top:var(--pf-c-accordion__toggle--before--Top,-1px);width:var(--pf-c-accordion__toggle--before--Width,var(--pf-global--BorderWidth--lg,3px));background-color:var(--pf-c-accordion__toggle--after--BackgroundColor,transparent)}span{max-width:var(--pf-c-accordion__toggle-text--MaxWidth,calc(100% - var(--pf-global--spacer--lg,1.5rem)))}.toggle[aria-expanded=true] .icon{rotate:var(--pf-c-accordion__toggle--expanded-icon--Rotate,90deg)}.toggle:active,.toggle:focus,.toggle:hover{background-color:var(--pf-c-accordion__toggle--active--BackgroundColor,var(--pf-global--BackgroundColor--200,#f0f0f0))}.toggle:active span,.toggle:focus span,.toggle:hover span{color:var(--pf-c-accordion__toggle--active-text--Color,var(--pf-global--link--Color,#06c))}.toggle:active span,.toggle:focus span{font-weight:var(--pf-c-accordion__toggle--active-text--FontWeight,var(--pf-global--FontWeight--semi-bold,700))}`;
9
9
  import '@patternfly/elements/pf-icon/pf-icon.js';
10
10
  /**
11
11
  * Accordion Header
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { customElement, property } from 'lit/decorators.js';
3
3
  import { BaseAccordionPanel } from './BaseAccordionPanel.js';
4
4
  import { css } from "lit";
5
- const style = css `:host {\n color: var(--pf-global--Color--100, #151515);\n background-color:\n var(\n --pf-c-accordion--BackgroundColor,\n var(--pf-global--BackgroundColor--light-100, #ffffff)\n );\n}\n\n.body {\n padding:\n var(--pf-c-accordion__panel-body--PaddingTop, var(--pf-global--spacer--sm, 0.5rem))\n var(--pf-c-accordion__panel-body--PaddingRight, var(--pf-global--spacer--md, 1rem))\n var(--pf-c-accordion__panel-body--PaddingBottom, var(--pf-global--spacer--sm, 0.5rem))\n var(--pf-c-accordion__panel-body--PaddingLeft, var(--pf-global--spacer--md, 1rem));\n}\n\n.body:after {\n width: var(--pf-c-accordion__panel-body--before--Width, var(--pf-global--BorderWidth--lg, 3px));\n background-color: var(--pf-c-accordion__panel-body--before--BackgroundColor, transparent);\n}\n\n:host([large]) {\n --pf-c-accordion__panel-body--PaddingTop:\n var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingTop, 0);\n --pf-c-accordion__panel-body--PaddingRight:\n var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingRight, 1rem);\n --pf-c-accordion__panel-body--PaddingBottom:\n var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingBottom, 1.5rem);\n --pf-c-accordion__panel-body--PaddingLeft:\n var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingLeft, 1.5rem);\n --pf-c-accordion__panel--FontSize:\n var(--pf-c-accordion--m-display-lg__expanded-content--FontSize, 1rem);\n --pf-c-accordion__panel--Color:\n var(--pf-c-accordion--m-display-lg__expanded-content--Color, #151515);\n}\n\n:host([large]) .body:last-child {\n --pf-c-accordion__panel-body--PaddingBottom:\n var(--pf-c-accordion--m-display-lg__expanded-content-body--last-child--PaddingBottom, 1.5rem);\n}\n\n.content {\n color: var(--pf-c-accordion__panel--Color, var(--pf-global--Color--dark-200, #6a6e73));\n font-size: var(--pf-c-accordion__panel--FontSize, var(--pf-global--FontSize--sm, 0.875rem));\n}\n\n:host([fixed]) {\n max-height: var(--pf-c-accordion__panel--m-fixed--MaxHeight, 9.375rem);\n}\n\n.content[expanded],\n:host([expanded]) .content {\n --pf-c-accordion__panel-body--before--BackgroundColor:\n var(\n --pf-c-accordion__panel--content-body--before--BackgroundColor,\n var(--pf-global--primary-color--100, #0066cc));\n}\n`;
5
+ const style = css `:host{color:var(--pf-global--Color--100,#151515);background-color:var(--pf-c-accordion--BackgroundColor,var(--pf-global--BackgroundColor--light-100,#fff))}.body{padding:var(--pf-c-accordion__panel-body--PaddingTop,var(--pf-global--spacer--sm,.5rem)) var(--pf-c-accordion__panel-body--PaddingRight,var(--pf-global--spacer--md,1rem)) var(--pf-c-accordion__panel-body--PaddingBottom,var(--pf-global--spacer--sm,.5rem)) var(--pf-c-accordion__panel-body--PaddingLeft,var(--pf-global--spacer--md,1rem))}.body:after{width:var(--pf-c-accordion__panel-body--before--Width,var(--pf-global--BorderWidth--lg,3px));background-color:var(--pf-c-accordion__panel-body--before--BackgroundColor,transparent)}:host([large]){--pf-c-accordion__panel-body--PaddingTop:var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingTop, 0);--pf-c-accordion__panel-body--PaddingRight:var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingRight, 1rem);--pf-c-accordion__panel-body--PaddingBottom:var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingBottom, 1.5rem);--pf-c-accordion__panel-body--PaddingLeft:var(--pf-c-accordion--m-display-lg__expanded-content-body--PaddingLeft, 1.5rem);--pf-c-accordion__panel--FontSize:var(--pf-c-accordion--m-display-lg__expanded-content--FontSize, 1rem);--pf-c-accordion__panel--Color:var(--pf-c-accordion--m-display-lg__expanded-content--Color, #151515)}:host([large]) .body:last-child{--pf-c-accordion__panel-body--PaddingBottom:var(--pf-c-accordion--m-display-lg__expanded-content-body--last-child--PaddingBottom, 1.5rem)}.content{color:var(--pf-c-accordion__panel--Color,var(--pf-global--Color--dark-200,#6a6e73));font-size:var(--pf-c-accordion__panel--FontSize, var(--pf-global--FontSize--sm, .875rem))}:host([fixed]){max-height:var(--pf-c-accordion__panel--m-fixed--MaxHeight,9.375rem)}.content[expanded],:host([expanded]) .content{--pf-c-accordion__panel-body--before--BackgroundColor:var(\n --pf-c-accordion__panel--content-body--before--BackgroundColor,\n var(--pf-global--primary-color--100, #0066cc))}`;
6
6
  /**
7
7
  * Accordion Panel
8
8
  *
@@ -7,7 +7,7 @@ import { BaseAccordionHeader } from './BaseAccordionHeader.js';
7
7
  export * from './pf-accordion-header.js';
8
8
  export * from './pf-accordion-panel.js';
9
9
  import { css } from "lit";
10
- const style = css `:host {\n --accordion__bordered--Color: var(--rh-color-black-300, #d2d2d2);\n\n color: var(--pf-global--Color--100, #151515);\n background-color: var(--pf-global--BackgroundColor--100, #ffffff);\n}\n\n:host([bordered]) ::slotted(pf-accordion-header:first-child),\n:host([large]) ::slotted(pf-accordion-header:first-child) {\n display: block;\n border-top: 1px solid var(--accordion__bordered--Color);\n border-bottom: 1px solid var(--accordion__bordered--Color);\n}\n\n:host([bordered]) ::slotted(pf-accordion-header:not(:first-child)),\n:host([large]) ::slotted(pf-accordion-header:not(:first-child)) {\n display: block;\n border-bottom: 1px solid var(--accordion__bordered--Color);\n}\n\n:host([bordered]) ::slotted(pf-accordion-header:is([expanded])),\n:host([large]) ::slotted(pf-accordion-header:is([expanded])) {\n display: block;\n border-bottom: 0;\n}\n\n:host([bordered]) ::slotted(pf-accordion-panel:is([expanded])),\n:host([large]) ::slotted(pf-accordion-panel:is([expanded])) {\n display: block;\n border-bottom: 1px solid var(--accordion__bordered--Color);\n}\n`;
10
+ const style = css `:host{--accordion__bordered--Color:var(--rh-color-black-300, #d2d2d2);color:var(--pf-global--Color--100,#151515);background-color:var(--pf-global--BackgroundColor--100,#fff)}:host([bordered]) ::slotted(pf-accordion-header:first-child),:host([large]) ::slotted(pf-accordion-header:first-child){display:block;border-top:1px solid var(--accordion__bordered--Color);border-bottom:1px solid var(--accordion__bordered--Color)}:host([bordered]) ::slotted(pf-accordion-header:not(:first-child)),:host([large]) ::slotted(pf-accordion-header:not(:first-child)){display:block;border-bottom:1px solid var(--accordion__bordered--Color)}:host([bordered]) ::slotted(pf-accordion-header:is([expanded])),:host([large]) ::slotted(pf-accordion-header:is([expanded])){display:block;border-bottom:0}:host([bordered]) ::slotted(pf-accordion-panel:is([expanded])),:host([large]) ::slotted(pf-accordion-panel:is([expanded])){display:block;border-bottom:1px solid var(--accordion__bordered--Color)}`;
11
11
  /**
12
12
  * Accordions toggle the visibility of sections of content.
13
13
  * They feature panels that consist of a section text label and a caret icon that collapses or expands to reveal more information.
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { LitElement, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { css } from "lit";
5
- const style = css `:host {\n display: contents;\n}\n\nsvg,\n:host([src]) img {\n display: inline;\n object-fit: cover;\n}\n\n:host([hidden]) {\n display: none;\n}\n`;
5
+ const style = css `:host{display:contents}:host([src]) img,svg{display:inline;object-fit:cover}:host([hidden]){display:none}`;
6
6
  export class AvatarLoadEvent extends Event {
7
7
  constructor(originalEvent) {
8
8
  super('load', { bubbles: true, composed: true });
@@ -0,0 +1,31 @@
1
+ # PatternFly Elements Avatar
2
+
3
+ `<pf-avatar>` is an element for displaying a user's avatar image. If the user in
4
+ question has provided a custom avatar, provide it and it will be displayed.
5
+
6
+ Read more about Avatar in the [PatternFly Elements Avatar documentation](https://patternflyelements.org/components/avatar)
7
+
8
+ ## Installation
9
+
10
+ Load `<pf-avatar>` via CDN:
11
+
12
+ ```html
13
+ <script src="https://jspm.dev/@patternfly/elements/pf-avatar/pf-avatar.js"></script>
14
+ ```
15
+
16
+ Or, if you are using [NPM](https://npm.im), install it
17
+
18
+ ```bash
19
+ npm install @patternfly/elements
20
+ ```
21
+
22
+ Then once installed, import it to your application:
23
+
24
+ ```js
25
+ import '@patternfly/elements/pf-avatar/pf-avatar.js';
26
+ ```
27
+ ## Usage
28
+
29
+ ```html
30
+ <pf-avatar alt="Michael Clayton" src="https://clayto.com/2014/03/rgb-webgl-color-cube/colorcube.jpg"></pf-avatar>
31
+ ```
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { property, customElement } from 'lit/decorators.js';
3
3
  import { BaseAvatar } from './BaseAvatar.js';
4
4
  import { css } from "lit";
5
- const style = css `svg,\nimg {\n width: var(--pf-c-avatar--Width, 24px);\n height: var(--pf-c-avatar--Height, 24px);\n border-radius: var(--pf-c-avatar--BorderRadius, var(--pf-global--BorderRadius--lg, 128px));\n border:\n var(--pf-c-avatar--BorderWidth, 0)\n solid\n var(--pf-c-avatar--BorderColor,\n var(--pf-global--BorderColor--dark-100, #d2d2d2));\n}\n\n:host([border]) :is(img, svg) {\n --pf-c-avatar--BorderWidth: var(--pf-global--BorderWidth--sm, 1px);\n}\n\n:host([border="dark"]) :is(img, svg) {\n --pf-c-avatar--BorderColor: var(--pf-c-avatar--m-dark--BorderColor,\n var(--pf-global--palette--black-700, #4f5255));\n}\n\n:host([size='sm']) {\n --pf-c-avatar--Width: var(--pf-c-avatar--m-sm--Width, 24px);\n --pf-c-avatar--Height: var(--pf-c-avatar--m-sm--Height, 24px);\n}\n\n:host([size='md']) {\n --pf-c-avatar--Width: var(--pf-c-avatar--m-md--Width, 36px);\n --pf-c-avatar--Height: var(--pf-c-avatar--m-md--Height, 36px);\n}\n\n:host([size='lg']) {\n --pf-c-avatar--Width: var(--pf-c-avatar--m-lg--Width, 72px);\n --pf-c-avatar--Height: var(--pf-c-avatar--m-lg--Height, 72px);\n}\n\n:host([size='xl']) {\n --pf-c-avatar--Width: var(--pf-c-avatar--m-xl--Width, 128px);\n --pf-c-avatar--Height: var(--pf-c-avatar--m-xl--Height, 128px);\n}\n`;
5
+ const style = css `img,svg{width:var(--pf-c-avatar--Width,24px);height:var(--pf-c-avatar--Height,24px);border-radius:var(--pf-c-avatar--BorderRadius,var(--pf-global--BorderRadius--lg,128px));border:var(--pf-c-avatar--BorderWidth,0) solid var(--pf-c-avatar--BorderColor,var(--pf-global--BorderColor--dark-100,#d2d2d2))}:host([border]) :is(img,svg){--pf-c-avatar--BorderWidth:var(--pf-global--BorderWidth--sm, 1px)}:host([border=dark]) :is(img,svg){--pf-c-avatar--BorderColor:var(--pf-c-avatar--m-dark--BorderColor,\n var(--pf-global--palette--black-700, #4f5255))}:host([size=sm]){--pf-c-avatar--Width:var(--pf-c-avatar--m-sm--Width, 24px);--pf-c-avatar--Height:var(--pf-c-avatar--m-sm--Height, 24px)}:host([size=md]){--pf-c-avatar--Width:var(--pf-c-avatar--m-md--Width, 36px);--pf-c-avatar--Height:var(--pf-c-avatar--m-md--Height, 36px)}:host([size=lg]){--pf-c-avatar--Width:var(--pf-c-avatar--m-lg--Width, 72px);--pf-c-avatar--Height:var(--pf-c-avatar--m-lg--Height, 72px)}:host([size=xl]){--pf-c-avatar--Width:var(--pf-c-avatar--m-xl--Width, 128px);--pf-c-avatar--Height:var(--pf-c-avatar--m-xl--Height, 128px)}`;
6
6
  /**
7
7
  * Avatar is an element for displaying a user's avatar image.
8
8
  *
@@ -1,6 +1,6 @@
1
1
  import { LitElement, html } from 'lit';
2
2
  import { css } from "lit";
3
- const style = css `:host {\n position: relative;\n white-space: nowrap;\n text-align: center;\n display: inline-block;\n}`;
3
+ const style = css `:host{position:relative;white-space:nowrap;text-align:center;display:inline-block}`;
4
4
  export class BaseBadge extends LitElement {
5
5
  render() {
6
6
  const { threshold, number, textContent } = this;
@@ -0,0 +1,57 @@
1
+ # PatternFly Elements Badge
2
+
3
+ The `<pf-badge>` component provides a way to have small numerical descriptors for
4
+ for for for UI elements. To provide context to your badge, it is highly
5
+ encouraged that you also include an `aria-label` attribute in your markup.
6
+
7
+ Read more about Badge in the [PatternFly Elements Badge documentation](https://patternflyelements.org/components/badge)
8
+
9
+ ## Installation
10
+
11
+ Load `<pf-badge>` via CDN:
12
+
13
+ ```html
14
+ <script src="https://jspm.dev/@patternfly/elements/pf-badge/pf-badge.js"></script>
15
+ ```
16
+
17
+ Or, if you are using [NPM](https://npm.im), install it
18
+
19
+ ```bash
20
+ npm install @patternfly/elements
21
+ ```
22
+
23
+ Then once installed, import it to your application:
24
+
25
+ ```js
26
+ import '@patternfly/elements/pf-badge/pf-badge.js';
27
+ ```
28
+
29
+ ## Usage
30
+
31
+ ```html
32
+ <section>
33
+ <pf-badge aria-label="2 unread messages" number="2" threshold="10">2</pf-badge>
34
+ </section>
35
+ ```
36
+
37
+ Please refer to the [specification](https://www.w3.org/TR/wai-aria/#aria-label) for additional details.
38
+
39
+ With the `threshold` attribute:
40
+
41
+ ```html
42
+ <section>
43
+ <pf-badge number="1" threshold="10">1</pf-badge>
44
+ <pf-badge number="17" threshold="20">17</pf-badge>
45
+ <pf-badge number="900" threshold="100">900</pf-badge>
46
+ </section>
47
+ ```
48
+
49
+ With two state options for the `state` attribute:
50
+
51
+ ```html
52
+ <section>
53
+ <pf-badge state="read" number="10">10</pf-badge>
54
+ <pf-badge state="unread" number="20">20</pf-badge>
55
+ </section>
56
+ ```
57
+
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { customElement, property } from 'lit/decorators.js';
3
3
  import { BaseBadge } from './BaseBadge.js';
4
4
  import { css } from "lit";
5
- const styles = css `:host {\n border-radius: var(--pf-c-badge--BorderRadius,\n var(--pf-global--BorderRadius--lg, 180em));\n min-width: var(--pf-c-badge--MinWidth,\n var(--pf-global--spacer--xl, 2rem));\n padding-left: var(--pf-c-badge--PaddingLeft,\n var(--pf-global--spacer--sm, 0.5rem));\n padding-right: var(--pf-c-badge--PaddingRight,\n var(--pf-global--spacer--sm, 0.5rem));\n font-size: var(--pf-c-badge--FontSize,\n var(--pf-theme--font-size, 0.75em));\n font-weight: var(--pf-c-badge--FontWeight,\n var(--pf-theme--font-weight--bold, 700));\n line-height: var(--pf-c-badge--LineHeight,\n var(--pf-global--LineHeight--md, 1.5));\n color: var(--pf-c-badge--Color,\n var(--pf-global--palette--black-900, #151515));\n background-color: var(--pf-c-badge--BackgroundColor,\n var(--pf-global--palette--black-200, #f0f0f0));\n}\n\n:host([state="read"]) {\n --pf-c-badge--Color: var(--pf-c-badge--m-read--Color,\n var(--pf-global--palette--black-900, #151515));\n --pf-c-badge--BackgroundColor: var(--pf-c-badge--m-read--BackgroundColor,\n var(--pf-global--palette--black-200, #f0f0f0));\n}\n\n:host([state="unread"]) {\n --pf-c-badge--Color: var(--pf-c-badge--m-unread--Color,\n var(--pf-global--palette--white, #fff));\n --pf-c-badge--BackgroundColor: var(--pf-c-badge--m-unread--BackgroundColor,\n var(--pf-global--palette--blue-400, #06c));\n}\n`;
5
+ const styles = css `:host{border-radius:var(--pf-c-badge--BorderRadius,var(--pf-global--BorderRadius--lg,180em));min-width:var(--pf-c-badge--MinWidth,var(--pf-global--spacer--xl,2rem));padding-left:var(--pf-c-badge--PaddingLeft,var(--pf-global--spacer--sm,.5rem));padding-right:var(--pf-c-badge--PaddingRight,var(--pf-global--spacer--sm,.5rem));font-size:var(--pf-c-badge--FontSize,\n var(--pf-theme--font-size, .75em));font-weight:var(--pf-c-badge--FontWeight,var(--pf-theme--font-weight--bold,700));line-height:var(--pf-c-badge--LineHeight,\n var(--pf-global--LineHeight--md, 1.5));color:var(--pf-c-badge--Color,var(--pf-global--palette--black-900,#151515));background-color:var(--pf-c-badge--BackgroundColor,var(--pf-global--palette--black-200,#f0f0f0))}:host([state=read]){--pf-c-badge--Color:var(--pf-c-badge--m-read--Color,\n var(--pf-global--palette--black-900, #151515));--pf-c-badge--BackgroundColor:var(--pf-c-badge--m-read--BackgroundColor,\n var(--pf-global--palette--black-200, #f0f0f0))}:host([state=unread]){--pf-c-badge--Color:var(--pf-c-badge--m-unread--Color,\n var(--pf-global--palette--white, #fff));--pf-c-badge--BackgroundColor:var(--pf-c-badge--m-unread--BackgroundColor,\n var(--pf-global--palette--blue-400, #06c))}`;
6
6
  /**
7
7
  * A badge is used to annotate other information like a label or an object name.
8
8
  *
@@ -6,7 +6,7 @@ import { classMap } from 'lit/directives/class-map.js';
6
6
  import { ifDefined } from 'lit/directives/if-defined.js';
7
7
  import { InternalsController } from '@patternfly/pfe-core/controllers/internals-controller.js';
8
8
  import { css } from "lit";
9
- const styles = css `:host {\n display: inline-block;\n height: max-content;\n}\n\n:host([hidden]) {\n display: none !important;\n}\n\n[hidden] {\n display: none !important;\n}\n\nbutton {\n cursor: pointer;\n position: relative;\n font-family: inherit;\n}\n\nbutton {\n border-width: 0;\n border-style: solid;\n}\n\nbutton::after {\n position: absolute;\n inset: 0 0 0 0;\n content: "";\n border-style: solid;\n}\n\n:host(:is(:disabled, [aria-disabled=true])),\n:host(:is(:disabled, [aria-disabled=true])) #container,\n:host(:is(:disabled, [aria-disabled=true])) button,\n:host(:is(:disabled, [aria-disabled=true])[danger]) button,\n:host(:is(:disabled, [aria-disabled=true])[variant=link]) button {\n pointer-events: none;\n cursor: default;\n}\n\n[part=icon] {\n display: none;\n pointer-events: none;\n}\n\n.hasIcon {\n position: relative;\n display: flex;\n align-items: center;\n}\n\n.hasIcon [part=icon] {\n display: inline-flex;\n align-items: center;\n position: absolute;\n width: 16px;\n}\n\n:host(:not([disabled])) .hasIcon [part=icon] {\n cursor: pointer;\n}\n\n[part=icon] ::slotted(*) {\n width: 16px;\n max-width: 16px;\n height: 16px;\n max-height: 16px;\n}\n\n.hasIcon button {\n position: absolute;\n inset: 0;\n}\n`;
9
+ const styles = css `:host{display:inline-block;height:max-content}:host([hidden]){display:none!important}[hidden]{display:none!important}button{cursor:pointer;position:relative;font-family:inherit}button{border-width:0;border-style:solid}button::after{position:absolute;inset:0 0 0 0;content:"";border-style:solid}:host(:is(:disabled,[aria-disabled=true])),:host(:is(:disabled,[aria-disabled=true])) #container,:host(:is(:disabled,[aria-disabled=true])) button,:host(:is(:disabled,[aria-disabled=true])[danger]) button,:host(:is(:disabled,[aria-disabled=true])[variant=link]) button{pointer-events:none;cursor:default}[part=icon]{display:none;pointer-events:none}.hasIcon{position:relative;display:flex;align-items:center}.hasIcon [part=icon]{display:inline-flex;align-items:center;position:absolute;width:16px}:host(:not([disabled])) .hasIcon [part=icon]{cursor:pointer}[part=icon] ::slotted(*){width:16px;max-width:16px;height:16px;max-height:16px}.hasIcon button{position:absolute;inset:0}`;
10
10
  /**
11
11
  * Base button class
12
12
  *
@@ -0,0 +1,61 @@
1
+ # PatternFly Elements Button
2
+
3
+ `<pf-button>` is a web component wrapper around a standard HTML `<button>` element.
4
+ `<pf-button>` is heavily influenced by the findings in this post: [Custom
5
+ elements, shadow DOM and implicit form submission](https://www.hjorthhansen.dev/shadow-dom-and-forms/). You can expect `<pf-button>` to work like a normal `HTMLButtonElement`.
6
+
7
+ Read more about Button in the [PatternFly Elements Button documentation](https://patternflyelements.org/components/button)
8
+
9
+ ## Installation
10
+
11
+ Load `<pf-button>` via CDN:
12
+
13
+ ```html
14
+ <script src="https://jspm.dev/@patternfly/elements/pf-button/pf-button.js"></script>
15
+ ```
16
+
17
+ Or, if you are using [NPM](https://npm.im), install it
18
+
19
+ ```bash
20
+ npm install @patternfly/elements
21
+ ```
22
+
23
+ Then once installed, import it to your application:
24
+
25
+ ```js
26
+ import '@patternfly/elements/pf-button/pf-button.js';
27
+ ```
28
+
29
+ ## Usage
30
+
31
+ When using this component, you must provide a standard HTML Button Elements as
32
+ the only light DOM child of `pf-button`.
33
+
34
+ ```html
35
+ <pf-button>My Button</pf-button>
36
+ ```
37
+
38
+ ### Accessibility
39
+ `<pf-button>` addresses the issues associated with typical implementations of
40
+ web component buttons. When using a `<pf-button>` in a `<form>` element, the
41
+ `<pf-button>` will function as a standard button in a `<form>`. You can expect
42
+ the button to submit the form.
43
+
44
+ #### Disabled Attribute
45
+ Adding the `disabled` attribute to either the `<pf-button>` wrapper or the
46
+ `<button>` element in the light DOM will disable the button.
47
+
48
+ ```html
49
+ <pf-button disabled>Submit</pf-button>
50
+ ```
51
+
52
+ #### Type Attribute
53
+ Using the `type` attribute works in the same fashion as the `disabled`
54
+ attribute. You can add a `type` attribute to the `<pf-button>` element.
55
+
56
+ ```html
57
+ <pf-button type="button">Submit</pf-button>
58
+ <pf-button type="submit">Submit</pf-button>
59
+ <pf-button type="reset">Reset</pf-button>
60
+ ```
61
+
@@ -6,7 +6,7 @@ import { BaseButton } from './BaseButton.js';
6
6
  import '@patternfly/elements/pf-icon/pf-icon.js';
7
7
  import '@patternfly/elements/pf-spinner/pf-spinner.js';
8
8
  import { css } from "lit";
9
- const styles = css `/* hi */\nbutton {\n color: var(--pf-c-button--m-primary--Color,\n var(--pf-global--Color--light-100, #fff));\n background-color: var(--pf-c-button--m-primary--BackgroundColor,\n var(--pf-global--primary-color--100, #06c));\n font-size: var(--pf-c-button--FontSize,\n var(--pf-global--FontSize--md, 1rem));\n font-weight: var(--pf-c-button--FontWeight,\n var(--pf-global--FontWeight--normal, 400));\n line-height: var(--pf-c-button--LineHeight,\n var(--pf-global--LineHeight--md, 1.5));\n padding:\n var(--pf-c-button--PaddingTop,\n var(--pf-global--spacer--form-element, 0.375rem))\n var(--pf-c-button--PaddingRight,\n var(--pf-global--spacer--md, 1rem))\n var(--pf-c-button--PaddingBottom,\n var(--pf-global--spacer--form-element, 0.375rem))\n var(--pf-c-button--PaddingLeft,\n var(--pf-global--spacer--md, 1rem));\n}\n\n:host, button {\n border-radius: var(--pf-c-button--BorderRadius,\n var(--pf-global--BorderRadius--sm, 3px));\n}\n\npf-icon, ::slotted(pf-icon) {\n color: currentColor;\n}\n\nbutton::after {\n border-color: var(--pf-c-button--after--BorderColor, transparent);\n border-width: var(--pf-c-button--after--BorderWidth,\n var(--pf-global--BorderWidth--sm, 1px));\n border-radius: var(--pf-c-button--after--BorderRadius,\n var(--pf-global--BorderRadius--sm, 3px));\n}\n\nbutton:active {\n --pf-c-button--m-primary--Color: var(--pf-c-button--m-primary--active--Color,\n var(--pf-global--Color--light-100, #fff));\n --pf-c-button--m-primary--BackgroundColor: var(--pf-c-button--m-primary--active--BackgroundColor,\n var(--pf-global--primary-color--200, #004080));\n --pf-c-button--after--BorderWidth: var(--pf-c-button--active--after--BorderWidth,\n var(--pf-global--BorderWidth--md, 2px));\n /* DANGER */\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-danger--active--Color,\n var(--pf-global--Color--light-100, #fff));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-danger--active--BackgroundColor,\n var(--pf-global--danger-color--200, #a30000));\n}\n\nbutton:focus {\n --pf-c-button--m-primary--Color: var(--pf-c-button--m-primary--focus--Color,\n var(--pf-global--Color--light-100, #fff));\n --pf-c-button--m-primary--BackgroundColor: var(--pf-c-button--m-primary--focus--BackgroundColor,\n var(--pf-global--primary-color--200, #004080));\n --pf-c-button--after--BorderWidth: var(--pf-c-button--focus--after--BorderWidth,\n var(--pf-global--BorderWidth--md, 2px));\n /* DANGER */\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-danger--focus--Color,\n var(--pf-global--Color--light-100, #fff));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-danger--focus--BackgroundColor,\n var(--pf-global--danger-color--200, #a30000));\n}\n\nbutton:hover {\n --pf-c-button--m-primary--Color: var(--pf-c-button--m-primary--hover--Color,\n var(--pf-global--Color--light-100, #fff));\n --pf-c-button--m-primary--BackgroundColor: var(--pf-c-button--m-primary--hover--BackgroundColor,\n var(--pf-global--primary-color--200, #004080));\n --pf-c-button--after--BorderWidth: var(--pf-c-button--hover--after--BorderWidth,\n var(--pf-global--BorderWidth--md, 2px));\n /* DANGER */\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-danger--hover--Color,\n var(--pf-global--Color--light-100, #fff));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-danger--hover--BackgroundColor,\n var(--pf-global--danger-color--200, #a30000));\n}\n\n/******************************\n * *\n * WARNING *\n * *\n ******************************/\n\n:host([warning]) button {\n color: var(--pf-c-button--m-warning--Color,\n var(--pf-global--Color--dark-100, #151515));\n background-color: var(--pf-c-button--m-warning--BackgroundColor,\n var(--pf-global--warning-color--100, #f0ab00));\n}\n\n:host([warning]) button:active {\n --pf-c-button--m-warning--Color: var(--pf-c-button--m-warning--active--Color,\n var(--pf-global--Color--dark-100, #151515));\n --pf-c-button--m-warning--BackgroundColor: var(--pf-c-button--m-warning--active--BackgroundColor,\n var(--pf-global--palette--gold-500, #c58c00));\n}\n\n:host([warning]) button:focus {\n --pf-c-button--m-warning--Color: var(--pf-c-button--m-warning--focus--Color,\n var(--pf-global--Color--dark-100, #151515));\n --pf-c-button--m-warning--BackgroundColor: var(--pf-c-button--m-warning--focus--BackgroundColor,\n var(--pf-global--palette--gold-500, #c58c00));\n}\n\n:host([warning]) button:hover {\n --pf-c-button--m-warning--Color: var(--pf-c-button--m-warning--hover--Color,\n var(--pf-global--Color--dark-100, #151515));\n --pf-c-button--m-warning--BackgroundColor: var(--pf-c-button--m-warning--hover--BackgroundColor,\n var(--pf-global--palette--gold-500, #c58c00));\n}\n\n:host([disabled][warning]) button {\n pointer-events: none;\n cursor: default;\n color: var(--pf-c-button--disabled--Color,\n var(--pf-global--disabled-color--100, #6a6e73));\n background-color: var(--pf-c-button--disabled--BackgroundColor,\n var(--pf-global--disabled-color--200, #d2d2d2));\n}\n\n/******************************\n * *\n * PLAIN *\n * *\n ******************************/\n\n:host([plain]) {\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-plain--disabled--BackgroundColor, transparent);\n}\n\n:host([plain]) button {\n --pf-c-button--after--BorderWidth: 0;\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--disabled--Color: var(--pf-c-button--m-plain--disabled--Color,\n var(--pf-global--disabled-color--200, #d2d2d2));\n color: var(--pf-c-button--m-plain--Color,\n var(--pf-global--Color--200, #6a6e73));\n background-color: var(--pf-c-button--m-plain--BackgroundColor,\n transparent);\n}\n\n:host([plain]) button:active {\n --pf-c-button--m-plain--Color: var(--pf-c-button--m-plain--active--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-plain--BackgroundColor: var(--pf-c-button--m-plain--active--BackgroundColor,\n tranparent);\n}\n\n:host([plain]) button:focus {\n --pf-c-button--m-plain--Color: var(--pf-c-button--m-plain--focus--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-plain--BackgroundColor: var(--pf-c-button--m-plain--focus--BackgroundColor,\n transparent);\n}\n\n:host([plain]) button:hover {\n --pf-c-button--m-plain--Color: var(--pf-c-button--m-plain--hover--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-plain--BackgroundColor: var(--pf-c-button--m-plain--hover--BackgroundColor,\n transparent);\n}\n\n:host([plain]) .hasIcon [part=icon],\n:host([loading][plain]) [part=icon] {\n left: 16px;\n}\n\n:host([plain][disabled]),\n:host([plain][disabled][variant=link]) button,\n:host([plain][disabled]) button,\n:host([plain]) button[aria-disabled=true],\n:host([plain]) button:disabled {\n color: var(--pf-c-button--disabled--Color,\n var(--pf-c-button--m-plain--disabled--Color,\n var(--pf-global--disabled--color--200, #d2d2d2)));\n}\n\n/******************************\n * *\n * ICON *\n * *\n ******************************/\n\n.hasIcon {\n gap: calc(2 * var(--pf-c-button__icon--m-start--MarginLeft,\n var(--pf-global--spacer--xs, 0.25rem)));\n}\n\n.hasIcon [part=icon] {\n --pf-icon--size: 16px;\n position: relative;\n}\n\n/******************************\n * *\n * ICON POSITION RIGHT *\n * *\n ******************************/\n\n:host([icon-position=right]) .hasIcon [part=icon],\n:host([icon-position=right][loading]) [part=icon] {\n order: 1;\n}\n\n:host([icon-position=right]) .hasIcon button {\n padding-left: var(--pf-c-button--PaddingLeft, var(--pf-global--spacer--md, 1rem));\n padding-right: calc(16px + 8px + var(--pf-c-button--PaddingRight, var(--pf-global--spacer--md, 1rem)));\n}\n\n/******************************\n * *\n * LOADING *\n * *\n ******************************/\n\n:host([loading]) button {\n position: relative;\n display: flex;\n align-items: center;\n}\n\n:host([loading]) button [part=icon] {\n display: inline-block;\n z-index: 1;\n position: absolute;\n cursor: pointer;\n top: var(--pf-c-button__progress--Top, 50%);\n left: var(--pf-c-button__progress--Left,\n var(--pf-global--spacer--md, 1rem));\n line-height: 1;\n transform: translate(\n var(--pf-c-button__progress--TranslateX, 0),\n var(--pf-c-button__progress--TranslateY, -50%));\n margin-inline-end: var(--pf-c-button__icon--m-start--MarginRight,\n var(--pf-global--spacer--xs, 0.25rem));\n}\n\n:host([loading][variant=primary]:not([plain])),\n:host([loading][danger]) {\n --pf-c-spinner--Color: white;\n}\n\n:host([loading]:not([plain])) {\n --pf-c-button--PaddingRight: var(--pf-c-button--m-in-progress--PaddingRight,\n var(--pf-global--spacer--md, 1rem));\n --pf-c-button--PaddingLeft: var(--pf-c-button--m-in-progress--PaddingLeft,\n calc(\n var(--pf-global--spacer--md, 1rem) + var(--pf-c-button__progress--width,\n calc(var(--pf-global--icon--FontSize--md, 1.125rem) + var(--pf-global--spacer--sm, 0.5rem))) / 2));\n}\n\n:host([loading]:not([plain])) button {\n padding-left: calc(12px + var(--pf-c-button--PaddingLeft, var(--pf-global--spacer--md, 1rem)));\n}\n\n/******************************\n * *\n * SECONDARY *\n * *\n ******************************/\n\n:host([variant=secondary]) {\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-secondary--m-danger--Color,\n var(--pf-global--danger-color--100, #c9190b));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-secondary--m-danger--BackgroundColor, transparent);\n}\n\n:host([variant=secondary]) button {\n color: var(--pf-c-button--m-secondary--Color,\n var(--pf-global--primary-color--100, #06c));\n background-color: var(--pf-c-button--m-secondary--BackgroundColor, transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));\n}\n\n:host([variant=secondary]) button:active {\n --pf-c-button--m-secondary--Color: var(--pf-c-button--m-secondary--active--Color,\n var(--pf-global--primary-color--100, #06c));\n --pf-c-button--m-secondary--BackgroundColor: var(--pf-c-button--m-secondary--active--BackgroundColor, transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--active--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));\n /* DANGER */\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-secondary--m-danger--active--Color,\n var(--pf-global--danger--color--200, #a30000));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-secondary--m-danger--active--BackgroundColor, transparent);\n}\n\n:host([variant=secondary]) button:focus {\n --pf-c-button--m-secondary--Color: var(--pf-c-button--m-secondary--focus--Color,\n var(--pf-global--primary-color--100, #06c));\n --pf-c-button--m-secondary--BackgroundColor: var(--pf-c-button--m-secondary--focus--BackgroundColor, transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--focus--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));\n /* DANGER */\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-secondary--m-danger--focus--Color,\n var(--pf-global--danger--color--200, #a30000));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-secondary--m-danger--focus--BackgroundColor, transparent);\n}\n\n:host([variant=secondary]) button:hover {\n --pf-c-button--m-secondary--Color: var(--pf-c-button--m-secondary--hover--Color,\n var(--pf-global--primary-color--100, #06c));\n --pf-c-button--m-secondary--BackgroundColor: var(--pf-c-button--m-secondary--hover--BackgroundColor,\n transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--hover--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));\n /* DANGER */\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-secondary--m-danger--hover--Color,\n var(--pf-global--danger--color--200, #a30000));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-secondary--m-danger--hover--BackgroundColor, transparent);\n}\n\n:host([variant=secondary][danger]) button {\n color: var(--pf-c-button--m-secondary--m-danger--Color,\n var(--pf-global--danger--color--100, #c9190b));\n background-color: var(--pf-c-button--m-secondary--m-danger--BackgroundColor, transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--m-danger--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b));\n}\n\n:host([variant=secondary][danger]) button:active {\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--m-danger--active--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b));\n}\n\n:host([variant=secondary][danger]) button:focus {\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--m-danger--focus--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b));\n}\n\n:host([variant=secondary][danger]) button:hover {\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-secondary--m-danger--hover--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b));\n}\n\n/******************************\n * *\n * TERTIARY *\n * *\n ******************************/\n\n:host([variant=tertiary]) button {\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n color: var(--pf-c-button--m-tertiary--Color,\n var(--pf-global--Color--100, #151515));\n background-color: var(--pf-c-button--m-tertiary--BackgroundColor, transparent);\n}\n\n:host([variant=tertiary]) button:active {\n --pf-c-button--m-tertiary--Color: var(--pf-c-button--m-tertiary--active--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-tertiary--BackgroundColor: var(--pf-c-button--m-tertiary--active--BackgroundColor, transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--active--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n}\n\n:host([variant=tertiary]) button:focus {\n --pf-c-button--m-tertiary--Color: var(--pf-c-button--m-tertiary--focus--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-tertiary--BackgroundColor: var(--pf-c-button--m-tertiary--focus--BackgroundColor,\n transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--focus--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n}\n\n:host([variant=tertiary]) button:hover {\n --pf-c-button--m-tertiary--Color: var(--pf-c-button--m-tertiary--hover--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-tertiary--BackgroundColor: var(--pf-c-button--m-tertiary--hover--BackgroundColor, transparent);\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--hover--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n}\n\n/******************************\n * *\n * CONTROL *\n * *\n ******************************/\n\n:host([variant=control]) button {\n --pf-c-button--BorderRadius: var(--pf-c-button--m-control--BorderRadius, 0);\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-control--disabled--BackgroundColor,\n var(--pf-global--disabled-color--300, #f0f0f0));\n --pf-c-button--after--BorderRadius: 0;\n --pf-c-button--after--BorderWidth: var(--pf-c-button--m-control--after--BorderWidth,\n var(--pf-global--BorderWidth--sm, 1px));\n --pf-c-button--after--BorderColor:\n var(--pf-c-button--m-control--after--BorderTopColor,\n var(--pf-global--BorderColor--300, #f0f0f0))\n var(--pf-c-button--m-control--after--BorderRightColor,\n var(--pf-global--BorderColor--300, #f0f0f0))\n var(--pf-c-button--m-control--after--BorderBottomColor,\n var(--pf-global--BorderColor--200, #8a8d90))\n var(--pf-c-button--m-control--after--BorderLeftColor,\n var(--pf-global--BorderColor--300, #f0f0f0));\n color: var(--pf-c-button--m-control--Color,\n var(--pf-global--Color--100, #151515));\n background-color: var(--pf-c-button--m-control--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));\n}\n\n:host([variant=control]) button:active {\n --pf-c-button--m-control--Color: var(--pf-c-button--m-control--active--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-control--BackgroundColor: var(--pf-c-button--m-control--active--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));\n --pf-c-button--m-control--after--BorderBottomColor: var(--pf-c-button--m-control--active--after--BorderBottomColor,\n var(--pf-global--active-color--100, #06c));\n}\n\n:host([variant=control]) button:focus {\n --pf-c-button--m-control--Color: var(--pf-c-button--m-control--focus--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-control--BackgroundColor: var(--pf-c-button--m-control--focus--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));\n --pf-c-button--m-control--after--BorderBottomColor: var(--pf-c-button--m-control--focus--after--BorderBottomColor,\n var(--pf-global--active-color--100, #06c));\n}\n\n:host([variant=control]) button:hover {\n --pf-c-button--m-control--Color: var(--pf-c-button--m-control--hover--Color,\n var(--pf-global--Color--100, #151515));\n --pf-c-button--m-control--BackgroundColor: var(--pf-c-button--m-control--hover--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));\n --pf-c-button--m-control--after--BorderBottomColor: var(--pf-c-button--m-control--hover--after--BorderBottomColor,\n var(--pf-global--active-color--100, #06c));\n}\n\n:host([variant=control]) button:active::after {\n border-block-end-width: var(--pf-c-button--m-control--active--after--BorderBottomWidth,\n var(--pf-global--BorderWidth--md, 2px));\n}\n\n:host([variant=control]) button:focus::after {\n border-block-end-width: var(--pf-c-button--m-control--focus--after--BorderBottomWidth,\n var(--pf-global--BorderWidth--md, 2px));\n}\n\n:host([variant=control]) button:hover::after {\n border-block-end-width: var(--pf-c-button--m-control--hover--after--BorderBottomWidth,\n var(--pf-global--BorderWidth--md, 2px));\n}\n\n/******************************\n * *\n * LINK *\n * *\n ******************************/\n\n:host([variant=link]) button {\n color: var(--pf-c-button--m-link--Color,\n var(--pf-global--link--Color, #06c));\n}\n\n:host([variant=link]) button {\n background-color: var(--pf-c-button--m-link--BackgroundColor,\n var(--pf-c-button--m-link--hover--BackgroundColor, transparent));\n}\n\n:host([variant=link][inline]),\n:host([variant=link][inline]) button {\n display: inline;\n}\n\n:host([variant=link][inline]) {\n --pf-c-button--PaddingTop: 0;\n --pf-c-button--PaddingLeft: 0;\n --pf-c-button--PaddingBottom: 0;\n --pf-c-button--PaddingRight: 0;\n}\n\n:host([variant=link][inline]) button:hover {\n text-decoration: var(--pf-c-button--m-link--m-inline--hover--TextDecoration,\n var(--pf-global--link--TextDecoration--hover, underline));\n}\n\n:host([variant=link]) {\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-link--disabled--BackgroundColor, transparent);\n}\n\n:host(:hover) {\n --pf-c-button--m-link--Color: var(--pf-c-button--m-link--hover--Color,\n var(--pf-global--link--Color--hover, #004080));\n --pf-c-button--m-link--BackgroundColor: var(--pf-c-button--m-link--hover--BackgroundColor, transparent);\n}\n\n:host(:focus),\n:host(:focus-within) {\n --pf-c-button--m-link--Color: var(--pf-c-button--m-link--focus--Color,\n var(--pf-global--link--Color--hover, #004080));\n --pf-c-button--m-link--BackgroundColor: var(--pf-c-button--m-link--hover--BackgroundColor, transparent);\n}\n\n:host(:not([inline])) button:active {\n --pf-c-button--m-link--Color: var(--pf-c-button--m-link--active--Color,\n var(--pf-global--link--Color--hover, #004080));\n --pf-c-button--m-link--BackgroundColor: var(--pf-c-button--m-link--active--BackgroundColor, transparent);\n}\n\n:host(:not([inline]):has(button:active)) {\n --pf-c-button--m-link--Color: var(--pf-c-button--m-link--active--Color,\n var(--pf-global--link--Color--hover, #004080));\n --pf-c-button--m-link--BackgroundColor: var(--pf-c-button--m-link--active--BackgroundColor, transparent);\n}\n\n:host([variant=link][danger]) button {\n --pf-c-button--m-danger--Color: var(--pf-c-button--m-link--m-danger--Color,\n var(--pf-global--danger-color--100, #c9190b));\n --pf-c-button--m-danger--BackgroundColor: var(--pf-c-button--m-link--m-danger--BackgroundColor, transparent);\n}\n\n:host([variant=link][danger]) button:hover {\n --pf-c-button--m-link--m-danger--Color: var(--pf-c-button--m-link--m-danger--hover--Color,\n var(--pf-global--danger-color--200, #a30000));\n --pf-c-button--m-link--m-danger--BackgroundColor: var(--pf-c-button--m-link--m-danger--hover--BackgroundColor, transparent);\n}\n\n:host([variant=link][danger]) button:active {\n --pf-c-button--m-link--m-danger--Color: var(--pf-c-button--m-link--m-danger--active--Color,\n var(--pf-global--danger-color--200, #a30000));\n --pf-c-button--m-link--m-danger--BackgroundColor: var(--pf-c-button--m-link--m-danger--active--BackgroundColor, transparent);\n}\n\n:host([variant=link][danger]:has(button:active)) {\n --pf-c-button--m-link--m-danger--Color: var(--pf-c-button--m-link--m-danger--active--Color,\n var(--pf-global--danger-color--200, #a30000));\n --pf-c-button--m-link--m-danger--BackgroundColor: var(--pf-c-button--m-link--m-danger--active--BackgroundColor, transparent);\n}\n\n:host([variant=link][danger]:is(:focus, :focus-within)) {\n --pf-c-button--m-link--m-danger--Color: var(--pf-c-button--m-link--m-danger--focus--Color,\n var(--pf-global--danger-color--200, #a30000));\n --pf-c-button--m-link--m-danger--BackgroundColor: var(--pf-c-button--m-link--m-danger--focus--BackgroundColor, transparent);\n}\n\n/******************************\n * *\n * DISABLED *\n * *\n ******************************/\n\n:host(:is(:disabled, [aria-disabled=true])),\n:host(:is(:disabled, [aria-disabled=true])) button,\n:host(:is(:disabled, [aria-disabled=true])[danger]) button,\n:host(:is(:disabled, [aria-disabled=true])[variant=link]) button {\n color: var(--pf-c-button--disabled--Color,\n var(--pf-global--disabled-color--100, #6a6e73));\n background-color: var(--pf-c-button--disabled--BackgroundColor,\n var(--pf-global--disabled-color--200, #d2d2d2));\n}\n\n:host(:is(:disabled, [aria-disabled=true])) button::after {\n border-color: var(--pf-c-button--disabled--after--BorderColor, transparent);\n}\n\n/******************************\n * *\n * BLOCK *\n * *\n ******************************/\n\n:host([block]),\n:host([block]) button {\n display: flex;\n width: 100%;\n justify-content: center;\n}\n\n/******************************\n * *\n * LARGE *\n * *\n ******************************/\n\n:host([size=large]) button {\n --pf-c-button--PaddingTop: var(--pf-c-button--m-display-lg--PaddingTop,\n var(--pf-global--spacer--md, 1rem));\n --pf-c-button--PaddingRight: var(--pf-c-button--m-display-lg--PaddingRight,\n var(--pf-global--spacer--xl, 2rem));\n --pf-c-button--PaddingBottom: var(--pf-c-button--m-display-lg--PaddingBottom,\n var(--pf-global--spacer--md, 1rem));\n --pf-c-button--PaddingLeft: var(--pf-c-button--m-display-lg--PaddingLeft,\n var(--pf-global--spacer--xl, 2rem));\n --pf-c-button--FontWeight: var(--pf-c-button--m-display-lg--FontWeight,\n var(--pf-global--FontWeight--bold, 700));\n}\n\n/******************************\n * *\n * SMALL *\n * *\n ******************************/\n\n:host([size=small]) button {\n --pf-c-button--FontSize: var(--pf-c-button--m-small--FontSize,\n var(--pf-global--FontSize--md, 1rem));\n}\n\n/******************************\n * *\n * DANGER *\n * *\n ******************************/\n\n:host([danger]) button {\n color: var(--pf-c-button--m-danger--Color,\n var(--pf-global--Color--light-100, #fff));\n background-color: var(--pf-c-button--m-danger--BackgroundColor,\n var(--pf-global--danger-color--100, #c9190b));\n}\n\n`;
9
+ const styles = css `button{color:var(--pf-c-button--m-primary--Color,var(--pf-global--Color--light-100,#fff));background-color:var(--pf-c-button--m-primary--BackgroundColor,var(--pf-global--primary-color--100,#06c));font-size:var(--pf-c-button--FontSize,\n var(--pf-global--FontSize--md, 1rem));font-weight:var(--pf-c-button--FontWeight,var(--pf-global--FontWeight--normal,400));line-height:var(--pf-c-button--LineHeight,\n var(--pf-global--LineHeight--md, 1.5));padding:var(--pf-c-button--PaddingTop,var(--pf-global--spacer--form-element,.375rem)) var(--pf-c-button--PaddingRight,var(--pf-global--spacer--md,1rem)) var(--pf-c-button--PaddingBottom,var(--pf-global--spacer--form-element,.375rem)) var(--pf-c-button--PaddingLeft,var(--pf-global--spacer--md,1rem))}:host,button{border-radius:var(--pf-c-button--BorderRadius,var(--pf-global--BorderRadius--sm,3px))}::slotted(pf-icon),pf-icon{color:currentColor}button::after{border-color:var(--pf-c-button--after--BorderColor,transparent);border-width:var(--pf-c-button--after--BorderWidth,var(--pf-global--BorderWidth--sm,1px));border-radius:var(--pf-c-button--after--BorderRadius,var(--pf-global--BorderRadius--sm,3px))}button:active{--pf-c-button--m-primary--Color:var(--pf-c-button--m-primary--active--Color,\n var(--pf-global--Color--light-100, #fff));--pf-c-button--m-primary--BackgroundColor:var(--pf-c-button--m-primary--active--BackgroundColor,\n var(--pf-global--primary-color--200, #004080));--pf-c-button--after--BorderWidth:var(--pf-c-button--active--after--BorderWidth,\n var(--pf-global--BorderWidth--md, 2px));--pf-c-button--m-danger--Color:var(--pf-c-button--m-danger--active--Color,\n var(--pf-global--Color--light-100, #fff));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-danger--active--BackgroundColor,\n var(--pf-global--danger-color--200, #a30000))}button:focus{--pf-c-button--m-primary--Color:var(--pf-c-button--m-primary--focus--Color,\n var(--pf-global--Color--light-100, #fff));--pf-c-button--m-primary--BackgroundColor:var(--pf-c-button--m-primary--focus--BackgroundColor,\n var(--pf-global--primary-color--200, #004080));--pf-c-button--after--BorderWidth:var(--pf-c-button--focus--after--BorderWidth,\n var(--pf-global--BorderWidth--md, 2px));--pf-c-button--m-danger--Color:var(--pf-c-button--m-danger--focus--Color,\n var(--pf-global--Color--light-100, #fff));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-danger--focus--BackgroundColor,\n var(--pf-global--danger-color--200, #a30000))}button:hover{--pf-c-button--m-primary--Color:var(--pf-c-button--m-primary--hover--Color,\n var(--pf-global--Color--light-100, #fff));--pf-c-button--m-primary--BackgroundColor:var(--pf-c-button--m-primary--hover--BackgroundColor,\n var(--pf-global--primary-color--200, #004080));--pf-c-button--after--BorderWidth:var(--pf-c-button--hover--after--BorderWidth,\n var(--pf-global--BorderWidth--md, 2px));--pf-c-button--m-danger--Color:var(--pf-c-button--m-danger--hover--Color,\n var(--pf-global--Color--light-100, #fff));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-danger--hover--BackgroundColor,\n var(--pf-global--danger-color--200, #a30000))}:host([warning]) button{color:var(--pf-c-button--m-warning--Color,var(--pf-global--Color--dark-100,#151515));background-color:var(--pf-c-button--m-warning--BackgroundColor,var(--pf-global--warning-color--100,#f0ab00))}:host([warning]) button:active{--pf-c-button--m-warning--Color:var(--pf-c-button--m-warning--active--Color,\n var(--pf-global--Color--dark-100, #151515));--pf-c-button--m-warning--BackgroundColor:var(--pf-c-button--m-warning--active--BackgroundColor,\n var(--pf-global--palette--gold-500, #c58c00))}:host([warning]) button:focus{--pf-c-button--m-warning--Color:var(--pf-c-button--m-warning--focus--Color,\n var(--pf-global--Color--dark-100, #151515));--pf-c-button--m-warning--BackgroundColor:var(--pf-c-button--m-warning--focus--BackgroundColor,\n var(--pf-global--palette--gold-500, #c58c00))}:host([warning]) button:hover{--pf-c-button--m-warning--Color:var(--pf-c-button--m-warning--hover--Color,\n var(--pf-global--Color--dark-100, #151515));--pf-c-button--m-warning--BackgroundColor:var(--pf-c-button--m-warning--hover--BackgroundColor,\n var(--pf-global--palette--gold-500, #c58c00))}:host([disabled][warning]) button{pointer-events:none;cursor:default;color:var(--pf-c-button--disabled--Color,var(--pf-global--disabled-color--100,#6a6e73));background-color:var(--pf-c-button--disabled--BackgroundColor,var(--pf-global--disabled-color--200,#d2d2d2))}:host([plain]){--pf-c-button--disabled--BackgroundColor:var(--pf-c-button--m-plain--disabled--BackgroundColor, transparent)}:host([plain]) button{--pf-c-button--after--BorderWidth:0;--pf-c-button--after--BorderColor:var(--pf-c-button--m-tertiary--after--BorderColor,\n var(--pf-global--Color--100, #151515));--pf-c-button--disabled--Color:var(--pf-c-button--m-plain--disabled--Color,\n var(--pf-global--disabled-color--200, #d2d2d2));color:var(--pf-c-button--m-plain--Color,var(--pf-global--Color--200,#6a6e73));background-color:var(--pf-c-button--m-plain--BackgroundColor,transparent)}:host([plain]) button:active{--pf-c-button--m-plain--Color:var(--pf-c-button--m-plain--active--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-plain--BackgroundColor:var(--pf-c-button--m-plain--active--BackgroundColor,\n tranparent)}:host([plain]) button:focus{--pf-c-button--m-plain--Color:var(--pf-c-button--m-plain--focus--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-plain--BackgroundColor:var(--pf-c-button--m-plain--focus--BackgroundColor,\n transparent)}:host([plain]) button:hover{--pf-c-button--m-plain--Color:var(--pf-c-button--m-plain--hover--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-plain--BackgroundColor:var(--pf-c-button--m-plain--hover--BackgroundColor,\n transparent)}:host([loading][plain]) [part=icon],:host([plain]) .hasIcon [part=icon]{left:16px}:host([plain]) button:disabled,:host([plain]) button[aria-disabled=true],:host([plain][disabled]),:host([plain][disabled]) button,:host([plain][disabled][variant=link]) button{color:var(--pf-c-button--disabled--Color,var(--pf-c-button--m-plain--disabled--Color,var(--pf-global--disabled--color--200,#d2d2d2)))}.hasIcon{gap:calc(2 * var(--pf-c-button__icon--m-start--MarginLeft,var(--pf-global--spacer--xs,.25rem)))}.hasIcon [part=icon]{--pf-icon--size:16px;position:relative}:host([icon-position=right]) .hasIcon [part=icon],:host([icon-position=right][loading]) [part=icon]{order:1}:host([icon-position=right]) .hasIcon button{padding-left:var(--pf-c-button--PaddingLeft,var(--pf-global--spacer--md,1rem));padding-right:calc(16px + 8px + var(--pf-c-button--PaddingRight,var(--pf-global--spacer--md,1rem)))}:host([loading]) button{position:relative;display:flex;align-items:center}:host([loading]) button [part=icon]{display:inline-block;z-index:1;position:absolute;cursor:pointer;top:var(--pf-c-button__progress--Top,50%);left:var(--pf-c-button__progress--Left,var(--pf-global--spacer--md,1rem));line-height:1;transform:translate(var(--pf-c-button__progress--TranslateX,0),var(--pf-c-button__progress--TranslateY,-50%));margin-inline-end:var(--pf-c-button__icon--m-start--MarginRight,var(--pf-global--spacer--xs,.25rem))}:host([loading][danger]),:host([loading][variant=primary]:not([plain])){--pf-c-spinner--Color:white}:host([loading]:not([plain])){--pf-c-button--PaddingRight:var(--pf-c-button--m-in-progress--PaddingRight,\n var(--pf-global--spacer--md, 1rem));--pf-c-button--PaddingLeft:var(--pf-c-button--m-in-progress--PaddingLeft,\n calc(\n var(--pf-global--spacer--md, 1rem) + var(--pf-c-button__progress--width,\n calc(var(--pf-global--icon--FontSize--md, 1.125rem) + var(--pf-global--spacer--sm, 0.5rem))) / 2))}:host([loading]:not([plain])) button{padding-left:calc(12px + var(--pf-c-button--PaddingLeft,var(--pf-global--spacer--md,1rem)))}:host([variant=secondary]){--pf-c-button--m-danger--Color:var(--pf-c-button--m-secondary--m-danger--Color,\n var(--pf-global--danger-color--100, #c9190b));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-secondary--m-danger--BackgroundColor, transparent)}:host([variant=secondary]) button{color:var(--pf-c-button--m-secondary--Color,var(--pf-global--primary-color--100,#06c));background-color:var(--pf-c-button--m-secondary--BackgroundColor,transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--after--BorderColor,\n var(--pf-global--primary-color--100, #06c))}:host([variant=secondary]) button:active{--pf-c-button--m-secondary--Color:var(--pf-c-button--m-secondary--active--Color,\n var(--pf-global--primary-color--100, #06c));--pf-c-button--m-secondary--BackgroundColor:var(--pf-c-button--m-secondary--active--BackgroundColor, transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--active--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));--pf-c-button--m-danger--Color:var(--pf-c-button--m-secondary--m-danger--active--Color,\n var(--pf-global--danger--color--200, #a30000));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-secondary--m-danger--active--BackgroundColor, transparent)}:host([variant=secondary]) button:focus{--pf-c-button--m-secondary--Color:var(--pf-c-button--m-secondary--focus--Color,\n var(--pf-global--primary-color--100, #06c));--pf-c-button--m-secondary--BackgroundColor:var(--pf-c-button--m-secondary--focus--BackgroundColor, transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--focus--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));--pf-c-button--m-danger--Color:var(--pf-c-button--m-secondary--m-danger--focus--Color,\n var(--pf-global--danger--color--200, #a30000));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-secondary--m-danger--focus--BackgroundColor, transparent)}:host([variant=secondary]) button:hover{--pf-c-button--m-secondary--Color:var(--pf-c-button--m-secondary--hover--Color,\n var(--pf-global--primary-color--100, #06c));--pf-c-button--m-secondary--BackgroundColor:var(--pf-c-button--m-secondary--hover--BackgroundColor,\n transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--hover--after--BorderColor,\n var(--pf-global--primary-color--100, #06c));--pf-c-button--m-danger--Color:var(--pf-c-button--m-secondary--m-danger--hover--Color,\n var(--pf-global--danger--color--200, #a30000));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-secondary--m-danger--hover--BackgroundColor, transparent)}:host([variant=secondary][danger]) button{color:var(--pf-c-button--m-secondary--m-danger--Color,var(--pf-global--danger--color--100,#c9190b));background-color:var(--pf-c-button--m-secondary--m-danger--BackgroundColor,transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--m-danger--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b))}:host([variant=secondary][danger]) button:active{--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--m-danger--active--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b))}:host([variant=secondary][danger]) button:focus{--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--m-danger--focus--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b))}:host([variant=secondary][danger]) button:hover{--pf-c-button--after--BorderColor:var(--pf-c-button--m-secondary--m-danger--hover--after--BorderColor,\n var(--pf-global--danger--color--100, #c9190b))}:host([variant=tertiary]) button{--pf-c-button--after--BorderColor:var(--pf-c-button--m-tertiary--after--BorderColor,\n var(--pf-global--Color--100, #151515));color:var(--pf-c-button--m-tertiary--Color,var(--pf-global--Color--100,#151515));background-color:var(--pf-c-button--m-tertiary--BackgroundColor,transparent)}:host([variant=tertiary]) button:active{--pf-c-button--m-tertiary--Color:var(--pf-c-button--m-tertiary--active--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-tertiary--BackgroundColor:var(--pf-c-button--m-tertiary--active--BackgroundColor, transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-tertiary--active--after--BorderColor,\n var(--pf-global--Color--100, #151515))}:host([variant=tertiary]) button:focus{--pf-c-button--m-tertiary--Color:var(--pf-c-button--m-tertiary--focus--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-tertiary--BackgroundColor:var(--pf-c-button--m-tertiary--focus--BackgroundColor,\n transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-tertiary--focus--after--BorderColor,\n var(--pf-global--Color--100, #151515))}:host([variant=tertiary]) button:hover{--pf-c-button--m-tertiary--Color:var(--pf-c-button--m-tertiary--hover--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-tertiary--BackgroundColor:var(--pf-c-button--m-tertiary--hover--BackgroundColor, transparent);--pf-c-button--after--BorderColor:var(--pf-c-button--m-tertiary--hover--after--BorderColor,\n var(--pf-global--Color--100, #151515))}:host([variant=control]) button{--pf-c-button--BorderRadius:var(--pf-c-button--m-control--BorderRadius, 0);--pf-c-button--disabled--BackgroundColor:var(--pf-c-button--m-control--disabled--BackgroundColor,\n var(--pf-global--disabled-color--300, #f0f0f0));--pf-c-button--after--BorderRadius:0;--pf-c-button--after--BorderWidth:var(--pf-c-button--m-control--after--BorderWidth,\n var(--pf-global--BorderWidth--sm, 1px));--pf-c-button--after--BorderColor:var(--pf-c-button--m-control--after--BorderTopColor,\n var(--pf-global--BorderColor--300, #f0f0f0)) var(--pf-c-button--m-control--after--BorderRightColor,\n var(--pf-global--BorderColor--300, #f0f0f0)) var(--pf-c-button--m-control--after--BorderBottomColor,\n var(--pf-global--BorderColor--200, #8a8d90)) var(--pf-c-button--m-control--after--BorderLeftColor,\n var(--pf-global--BorderColor--300, #f0f0f0));color:var(--pf-c-button--m-control--Color,var(--pf-global--Color--100,#151515));background-color:var(--pf-c-button--m-control--BackgroundColor,var(--pf-global--BackgroundColor--100,#fff))}:host([variant=control]) button:active{--pf-c-button--m-control--Color:var(--pf-c-button--m-control--active--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-control--BackgroundColor:var(--pf-c-button--m-control--active--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));--pf-c-button--m-control--after--BorderBottomColor:var(--pf-c-button--m-control--active--after--BorderBottomColor,\n var(--pf-global--active-color--100, #06c))}:host([variant=control]) button:focus{--pf-c-button--m-control--Color:var(--pf-c-button--m-control--focus--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-control--BackgroundColor:var(--pf-c-button--m-control--focus--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));--pf-c-button--m-control--after--BorderBottomColor:var(--pf-c-button--m-control--focus--after--BorderBottomColor,\n var(--pf-global--active-color--100, #06c))}:host([variant=control]) button:hover{--pf-c-button--m-control--Color:var(--pf-c-button--m-control--hover--Color,\n var(--pf-global--Color--100, #151515));--pf-c-button--m-control--BackgroundColor:var(--pf-c-button--m-control--hover--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));--pf-c-button--m-control--after--BorderBottomColor:var(--pf-c-button--m-control--hover--after--BorderBottomColor,\n var(--pf-global--active-color--100, #06c))}:host([variant=control]) button:active::after{border-block-end-width:var(--pf-c-button--m-control--active--after--BorderBottomWidth,var(--pf-global--BorderWidth--md,2px))}:host([variant=control]) button:focus::after{border-block-end-width:var(--pf-c-button--m-control--focus--after--BorderBottomWidth,var(--pf-global--BorderWidth--md,2px))}:host([variant=control]) button:hover::after{border-block-end-width:var(--pf-c-button--m-control--hover--after--BorderBottomWidth,var(--pf-global--BorderWidth--md,2px))}:host([variant=link]) button{color:var(--pf-c-button--m-link--Color,var(--pf-global--link--Color,#06c))}:host([variant=link]) button{background-color:var(--pf-c-button--m-link--BackgroundColor,var(--pf-c-button--m-link--hover--BackgroundColor,transparent))}:host([variant=link][inline]),:host([variant=link][inline]) button{display:inline}:host([variant=link][inline]){--pf-c-button--PaddingTop:0;--pf-c-button--PaddingLeft:0;--pf-c-button--PaddingBottom:0;--pf-c-button--PaddingRight:0}:host([variant=link][inline]) button:hover{text-decoration:var(--pf-c-button--m-link--m-inline--hover--TextDecoration,var(--pf-global--link--TextDecoration--hover,underline))}:host([variant=link]){--pf-c-button--disabled--BackgroundColor:var(--pf-c-button--m-link--disabled--BackgroundColor, transparent)}:host(:hover){--pf-c-button--m-link--Color:var(--pf-c-button--m-link--hover--Color,\n var(--pf-global--link--Color--hover, #004080));--pf-c-button--m-link--BackgroundColor:var(--pf-c-button--m-link--hover--BackgroundColor, transparent)}:host(:focus),:host(:focus-within){--pf-c-button--m-link--Color:var(--pf-c-button--m-link--focus--Color,\n var(--pf-global--link--Color--hover, #004080));--pf-c-button--m-link--BackgroundColor:var(--pf-c-button--m-link--hover--BackgroundColor, transparent)}:host(:not([inline])) button:active{--pf-c-button--m-link--Color:var(--pf-c-button--m-link--active--Color,\n var(--pf-global--link--Color--hover, #004080));--pf-c-button--m-link--BackgroundColor:var(--pf-c-button--m-link--active--BackgroundColor, transparent)}:host(:not([inline]):has(button:active)){--pf-c-button--m-link--Color:var(--pf-c-button--m-link--active--Color,\n var(--pf-global--link--Color--hover, #004080));--pf-c-button--m-link--BackgroundColor:var(--pf-c-button--m-link--active--BackgroundColor, transparent)}:host([variant=link][danger]) button{--pf-c-button--m-danger--Color:var(--pf-c-button--m-link--m-danger--Color,\n var(--pf-global--danger-color--100, #c9190b));--pf-c-button--m-danger--BackgroundColor:var(--pf-c-button--m-link--m-danger--BackgroundColor, transparent)}:host([variant=link][danger]) button:hover{--pf-c-button--m-link--m-danger--Color:var(--pf-c-button--m-link--m-danger--hover--Color,\n var(--pf-global--danger-color--200, #a30000));--pf-c-button--m-link--m-danger--BackgroundColor:var(--pf-c-button--m-link--m-danger--hover--BackgroundColor, transparent)}:host([variant=link][danger]) button:active{--pf-c-button--m-link--m-danger--Color:var(--pf-c-button--m-link--m-danger--active--Color,\n var(--pf-global--danger-color--200, #a30000));--pf-c-button--m-link--m-danger--BackgroundColor:var(--pf-c-button--m-link--m-danger--active--BackgroundColor, transparent)}:host([variant=link][danger]:has(button:active)){--pf-c-button--m-link--m-danger--Color:var(--pf-c-button--m-link--m-danger--active--Color,\n var(--pf-global--danger-color--200, #a30000));--pf-c-button--m-link--m-danger--BackgroundColor:var(--pf-c-button--m-link--m-danger--active--BackgroundColor, transparent)}:host([variant=link][danger]:is(:focus,:focus-within)){--pf-c-button--m-link--m-danger--Color:var(--pf-c-button--m-link--m-danger--focus--Color,\n var(--pf-global--danger-color--200, #a30000));--pf-c-button--m-link--m-danger--BackgroundColor:var(--pf-c-button--m-link--m-danger--focus--BackgroundColor, transparent)}:host(:is(:disabled,[aria-disabled=true])),:host(:is(:disabled,[aria-disabled=true])) button,:host(:is(:disabled,[aria-disabled=true])[danger]) button,:host(:is(:disabled,[aria-disabled=true])[variant=link]) button{color:var(--pf-c-button--disabled--Color,var(--pf-global--disabled-color--100,#6a6e73));background-color:var(--pf-c-button--disabled--BackgroundColor,var(--pf-global--disabled-color--200,#d2d2d2))}:host(:is(:disabled,[aria-disabled=true])) button::after{border-color:var(--pf-c-button--disabled--after--BorderColor,transparent)}:host([block]),:host([block]) button{display:flex;width:100%;justify-content:center}:host([size=large]) button{--pf-c-button--PaddingTop:var(--pf-c-button--m-display-lg--PaddingTop,\n var(--pf-global--spacer--md, 1rem));--pf-c-button--PaddingRight:var(--pf-c-button--m-display-lg--PaddingRight,\n var(--pf-global--spacer--xl, 2rem));--pf-c-button--PaddingBottom:var(--pf-c-button--m-display-lg--PaddingBottom,\n var(--pf-global--spacer--md, 1rem));--pf-c-button--PaddingLeft:var(--pf-c-button--m-display-lg--PaddingLeft,\n var(--pf-global--spacer--xl, 2rem));--pf-c-button--FontWeight:var(--pf-c-button--m-display-lg--FontWeight,\n var(--pf-global--FontWeight--bold, 700))}:host([size=small]) button{--pf-c-button--FontSize:var(--pf-c-button--m-small--FontSize,\n var(--pf-global--FontSize--md, 1rem))}:host([danger]) button{color:var(--pf-c-button--m-danger--Color,var(--pf-global--Color--light-100,#fff));background-color:var(--pf-c-button--m-danger--BackgroundColor,var(--pf-global--danger-color--100,#c9190b))}`;
10
10
  /**
11
11
  * Buttons allow users to perform an action when triggered. They feature a text
12
12
  * label, a background or a border, and icons.
@@ -2,7 +2,7 @@ import { LitElement, html } from 'lit';
2
2
  import { SlotController } from '@patternfly/pfe-core/controllers/slot-controller.js';
3
3
  import { classMap } from 'lit/directives/class-map.js';
4
4
  import { css } from "lit";
5
- const style = css `:host {\n display: flex;\n flex-direction: column;\n}\n\narticle {\n position: relative;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n[part=header] {\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n\n[part=body] ::slotted(:not([slot]):first-of-type) {\n margin-block-start: 0;\n}\n\n[part=body] ::slotted(:not([slot]):last-of-type) {\n margin-block-end: 0;\n}\n\n[part=footer] {\n display: flex;\n gap: 0.5em;\n inset-block-end: 0;\n}\n\n.empty {\n display: none;\n}\n\n`;
5
+ const style = css `:host{display:flex;flex-direction:column}article{position:relative;height:100%;display:flex;flex-direction:column}[part=header]{display:flex;flex-direction:row;align-items:center}[part=body] ::slotted(:not([slot]):first-of-type){margin-block-start:0}[part=body] ::slotted(:not([slot]):last-of-type){margin-block-end:0}[part=footer]{display:flex;gap:.5em;inset-block-end:0}.empty{display:none}`;
6
6
  /**
7
7
  * This element creates a header, body, and footer region in which to place
8
8
  * content or other components.
@@ -0,0 +1,34 @@
1
+ # PatternFly Elements Card
2
+
3
+ Read more about Card in the [PatternFly Elements Card documentation](https://patternflyelements.org/components/card)
4
+
5
+ ## Installation
6
+
7
+ Load `<pf-card>` via CDN:
8
+
9
+ ```html
10
+ <script src="https://jspm.dev/@patternfly/elements/pf-card/pf-card.js"></script>
11
+ ```
12
+
13
+ Or, if you are using [NPM](https://npm.im), install it
14
+
15
+ ```bash
16
+ npm install @patternfly/elements
17
+ ```
18
+
19
+ Then once installed, import it to your application:
20
+
21
+ ```js
22
+ import '@patternfly/elements/pf-card/pf-card.js';
23
+ ```
24
+
25
+ ## Usage
26
+
27
+ ```html
28
+ <pf-card>
29
+ <h2 slot="header">Card header</h2>
30
+ <p>This is the pf-card body.</p>
31
+ <a href="#" slot="footer">Footer link</a>
32
+ </pf-card>
33
+ ```
34
+