@patternfly/elements 3.0.2 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +8857 -8783
- package/form-control.css +127 -0
- package/package.json +12 -25
- package/pf-accordion/pf-accordion-header.css +23 -0
- package/pf-accordion/pf-accordion-header.d.ts +52 -43
- package/pf-accordion/pf-accordion-header.js +130 -87
- package/pf-accordion/pf-accordion-header.js.map +1 -1
- package/pf-accordion/pf-accordion-panel.css +15 -0
- package/pf-accordion/pf-accordion-panel.d.ts +27 -25
- package/pf-accordion/pf-accordion-panel.js +29 -43
- package/pf-accordion/pf-accordion-panel.js.map +1 -1
- package/pf-accordion/pf-accordion.d.ts +122 -65
- package/pf-accordion/pf-accordion.js +283 -94
- package/pf-accordion/pf-accordion.js.map +1 -1
- package/pf-accordion/test/pf-accordion.e2e.js +12 -0
- package/pf-accordion/test/pf-accordion.e2e.js.map +1 -1
- package/pf-accordion/test/pf-accordion.spec.js +366 -350
- package/pf-accordion/test/pf-accordion.spec.js.map +1 -1
- package/pf-avatar/pf-avatar.css +50 -24
- package/pf-avatar/pf-avatar.d.ts +29 -3
- package/pf-avatar/pf-avatar.js +51 -9
- package/pf-avatar/pf-avatar.js.map +1 -1
- package/pf-avatar/test/pf-avatar.e2e.js +12 -0
- package/pf-avatar/test/pf-avatar.e2e.js.map +1 -1
- package/pf-avatar/test/pf-avatar.spec.js +2 -3
- package/pf-avatar/test/pf-avatar.spec.js.map +1 -1
- package/pf-back-to-top/pf-back-to-top.css +10 -0
- package/pf-back-to-top/pf-back-to-top.d.ts +14 -18
- package/pf-back-to-top/pf-back-to-top.js +9 -30
- package/pf-back-to-top/pf-back-to-top.js.map +1 -1
- package/pf-back-to-top/test/pf-back-to-top.e2e.js +12 -0
- package/pf-back-to-top/test/pf-back-to-top.e2e.js.map +1 -1
- package/pf-background-image/pf-background-image.d.ts +4 -4
- package/pf-background-image/pf-background-image.js +1 -12
- package/pf-background-image/pf-background-image.js.map +1 -1
- package/pf-background-image/test/pf-background-image.e2e.js +12 -0
- package/pf-background-image/test/pf-background-image.e2e.js.map +1 -1
- package/pf-badge/pf-badge.css +4 -0
- package/pf-badge/pf-badge.d.ts +26 -22
- package/pf-badge/pf-badge.js +14 -27
- package/pf-badge/pf-badge.js.map +1 -1
- package/pf-badge/test/pf-badge.e2e.js +12 -0
- package/pf-badge/test/pf-badge.e2e.js.map +1 -1
- package/pf-banner/pf-banner.d.ts +16 -16
- package/pf-banner/pf-banner.js +1 -24
- package/pf-banner/pf-banner.js.map +1 -1
- package/pf-banner/test/pf-banner.e2e.js +12 -0
- package/pf-banner/test/pf-banner.e2e.js.map +1 -1
- package/pf-button/pf-button.css +22 -12
- package/pf-button/pf-button.d.ts +128 -122
- package/pf-button/pf-button.js +95 -172
- package/pf-button/pf-button.js.map +1 -1
- package/pf-button/test/pf-button.e2e.js +12 -0
- package/pf-button/test/pf-button.e2e.js.map +1 -1
- package/pf-card/pf-card.css +172 -43
- package/pf-card/pf-card.d.ts +41 -38
- package/pf-card/pf-card.js +37 -54
- package/pf-card/pf-card.js.map +1 -1
- package/pf-card/test/pf-card.e2e.js +12 -0
- package/pf-card/test/pf-card.e2e.js.map +1 -1
- package/pf-chip/pf-chip-group.css +9 -6
- package/pf-chip/pf-chip-group.d.ts +27 -14
- package/pf-chip/pf-chip-group.js +65 -94
- package/pf-chip/pf-chip-group.js.map +1 -1
- package/pf-chip/pf-chip.d.ts +20 -9
- package/pf-chip/pf-chip.js +1 -8
- package/pf-chip/pf-chip.js.map +1 -1
- package/pf-chip/test/pf-chip-group.spec.js +42 -22
- package/pf-chip/test/pf-chip-group.spec.js.map +1 -1
- package/pf-chip/test/pf-chip.e2e.js +12 -0
- package/pf-chip/test/pf-chip.e2e.js.map +1 -1
- package/pf-clipboard-copy/pf-clipboard-copy.css +83 -89
- package/pf-clipboard-copy/pf-clipboard-copy.d.ts +53 -18
- package/pf-clipboard-copy/pf-clipboard-copy.js +55 -44
- package/pf-clipboard-copy/pf-clipboard-copy.js.map +1 -1
- package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js +12 -0
- package/pf-clipboard-copy/test/pf-clipboard-copy.e2e.js.map +1 -1
- package/pf-code-block/pf-code-block.css +7 -4
- package/pf-code-block/pf-code-block.d.ts +4 -25
- package/pf-code-block/pf-code-block.js +44 -23
- package/pf-code-block/pf-code-block.js.map +1 -1
- package/pf-code-block/test/pf-code-block.e2e.js +12 -0
- package/pf-code-block/test/pf-code-block.e2e.js.map +1 -1
- package/pf-dropdown/context.d.ts +2 -3
- package/pf-dropdown/context.js.map +1 -1
- package/pf-dropdown/pf-dropdown-group.d.ts +3 -9
- package/pf-dropdown/pf-dropdown-group.js +1 -5
- package/pf-dropdown/pf-dropdown-group.js.map +1 -1
- package/pf-dropdown/pf-dropdown-item.d.ts +21 -27
- package/pf-dropdown/pf-dropdown-item.js +1 -37
- package/pf-dropdown/pf-dropdown-item.js.map +1 -1
- package/pf-dropdown/pf-dropdown-menu.d.ts +4 -10
- package/pf-dropdown/pf-dropdown-menu.js +23 -23
- package/pf-dropdown/pf-dropdown-menu.js.map +1 -1
- package/pf-dropdown/pf-dropdown.d.ts +8 -24
- package/pf-dropdown/pf-dropdown.js +1 -26
- package/pf-dropdown/pf-dropdown.js.map +1 -1
- package/pf-dropdown/test/pf-dropdown.e2e.js +12 -0
- package/pf-dropdown/test/pf-dropdown.e2e.js.map +1 -1
- package/pf-icon/pf-icon.css +22 -0
- package/pf-icon/pf-icon.d.ts +93 -4
- package/pf-icon/pf-icon.js +191 -13
- package/pf-icon/pf-icon.js.map +1 -1
- package/pf-icon/test/pf-icon.e2e.js +12 -0
- package/pf-icon/test/pf-icon.e2e.js.map +1 -1
- package/pf-icon/test/pf-icon.spec.js +102 -88
- package/pf-icon/test/pf-icon.spec.js.map +1 -1
- package/pf-jump-links/pf-jump-links-item.d.ts +4 -11
- package/pf-jump-links/pf-jump-links-item.js +8 -15
- package/pf-jump-links/pf-jump-links-item.js.map +1 -1
- package/pf-jump-links/pf-jump-links-list.d.ts +2 -2
- package/pf-jump-links/pf-jump-links-list.js +1 -5
- package/pf-jump-links/pf-jump-links-list.js.map +1 -1
- package/pf-jump-links/pf-jump-links.d.ts +2 -2
- package/pf-jump-links/pf-jump-links.js +23 -62
- package/pf-jump-links/pf-jump-links.js.map +1 -1
- package/pf-jump-links/test/pf-jump-links.e2e.js +12 -0
- package/pf-jump-links/test/pf-jump-links.e2e.js.map +1 -1
- package/pf-label/pf-label.css +38 -5
- package/pf-label/pf-label.d.ts +65 -69
- package/pf-label/pf-label.js +49 -90
- package/pf-label/pf-label.js.map +1 -1
- package/pf-label/test/pf-label.e2e.js +12 -0
- package/pf-label/test/pf-label.e2e.js.map +1 -1
- package/pf-label/test/pf-label.spec.js +26 -16
- package/pf-label/test/pf-label.spec.js.map +1 -1
- package/pf-modal/pf-modal.d.ts +17 -22
- package/pf-modal/pf-modal.js +13 -39
- package/pf-modal/pf-modal.js.map +1 -1
- package/pf-modal/test/pf-modal.e2e.js +12 -0
- package/pf-modal/test/pf-modal.e2e.js.map +1 -1
- package/pf-panel/pf-panel.d.ts +31 -3
- package/pf-panel/pf-panel.js +1 -10
- package/pf-panel/pf-panel.js.map +1 -1
- package/pf-panel/test/pf-panel.e2e.js +12 -0
- package/pf-panel/test/pf-panel.e2e.js.map +1 -1
- package/pf-popover/pf-popover.d.ts +66 -84
- package/pf-popover/pf-popover.js +33 -150
- package/pf-popover/pf-popover.js.map +1 -1
- package/pf-popover/test/pf-popover.e2e.js +12 -0
- package/pf-popover/test/pf-popover.e2e.js.map +1 -1
- package/pf-popover/test/pf-popover.spec.js +0 -11
- package/pf-popover/test/pf-popover.spec.js.map +1 -1
- package/pf-progress/pf-progress.d.ts +40 -40
- package/pf-progress/pf-progress.js +1 -61
- package/pf-progress/pf-progress.js.map +1 -1
- package/pf-progress/test/pf-progress.e2e.js +12 -0
- package/pf-progress/test/pf-progress.e2e.js.map +1 -1
- package/pf-progress-stepper/pf-progress-step.d.ts +2 -3
- package/pf-progress-stepper/pf-progress-step.js +4 -14
- package/pf-progress-stepper/pf-progress-step.js.map +1 -1
- package/pf-progress-stepper/pf-progress-stepper.d.ts +118 -2
- package/pf-progress-stepper/pf-progress-stepper.js +10 -12
- package/pf-progress-stepper/pf-progress-stepper.js.map +1 -1
- package/pf-progress-stepper/test/pf-progress-stepper.e2e.js +12 -0
- package/pf-progress-stepper/test/pf-progress-stepper.e2e.js.map +1 -1
- package/pf-select/pf-option-group.d.ts +2 -2
- package/pf-select/pf-option-group.js +1 -5
- package/pf-select/pf-option-group.js.map +1 -1
- package/pf-select/pf-option.css +1 -1
- package/pf-select/pf-option.d.ts +4 -4
- package/pf-select/pf-option.js +20 -30
- package/pf-select/pf-option.js.map +1 -1
- package/pf-select/pf-select.css +14 -6
- package/pf-select/pf-select.d.ts +183 -40
- package/pf-select/pf-select.js +185 -260
- package/pf-select/pf-select.js.map +1 -1
- package/pf-select/test/pf-select.e2e.js +12 -0
- package/pf-select/test/pf-select.e2e.js.map +1 -1
- package/pf-select/test/pf-select.spec.js +1292 -613
- package/pf-select/test/pf-select.spec.js.map +1 -1
- package/pf-spinner/pf-spinner.css +27 -17
- package/pf-spinner/pf-spinner.d.ts +21 -17
- package/pf-spinner/pf-spinner.js +20 -24
- package/pf-spinner/pf-spinner.js.map +1 -1
- package/pf-spinner/test/pf-spinner.e2e.js +12 -0
- package/pf-spinner/test/pf-spinner.e2e.js.map +1 -1
- package/pf-switch/pf-switch.css +39 -13
- package/pf-switch/pf-switch.d.ts +48 -34
- package/pf-switch/pf-switch.js +114 -43
- package/pf-switch/pf-switch.js.map +1 -1
- package/pf-switch/test/pf-switch.e2e.js +12 -0
- package/pf-switch/test/pf-switch.e2e.js.map +1 -1
- package/pf-table/pf-caption.d.ts +2 -2
- package/pf-table/pf-caption.js +1 -4
- package/pf-table/pf-caption.js.map +1 -1
- package/pf-table/pf-table.d.ts +424 -424
- package/pf-table/pf-table.js +7 -645
- package/pf-table/pf-table.js.map +1 -1
- package/pf-table/pf-tbody.d.ts +2 -2
- package/pf-table/pf-tbody.js +1 -4
- package/pf-table/pf-tbody.js.map +1 -1
- package/pf-table/pf-td.d.ts +2 -2
- package/pf-table/pf-td.js +1 -4
- package/pf-table/pf-td.js.map +1 -1
- package/pf-table/pf-th.d.ts +2 -2
- package/pf-table/pf-th.js +1 -4
- package/pf-table/pf-th.js.map +1 -1
- package/pf-table/pf-thead.d.ts +2 -2
- package/pf-table/pf-thead.js +1 -4
- package/pf-table/pf-thead.js.map +1 -1
- package/pf-table/pf-tr.d.ts +1 -1
- package/pf-table/pf-tr.js +1 -4
- package/pf-table/pf-tr.js.map +1 -1
- package/pf-table/test/pf-table.e2e.js +12 -0
- package/pf-table/test/pf-table.e2e.js.map +1 -1
- package/pf-tabs/context.d.ts +2 -3
- package/pf-tabs/context.js.map +1 -1
- package/pf-tabs/pf-tab-panel.d.ts +3 -5
- package/pf-tabs/pf-tab-panel.js +1 -7
- package/pf-tabs/pf-tab-panel.js.map +1 -1
- package/pf-tabs/pf-tab.d.ts +37 -37
- package/pf-tabs/pf-tab.js +16 -54
- package/pf-tabs/pf-tab.js.map +1 -1
- package/pf-tabs/pf-tabs.d.ts +36 -37
- package/pf-tabs/pf-tabs.js +40 -78
- package/pf-tabs/pf-tabs.js.map +1 -1
- package/pf-tabs/test/pf-tabs.e2e.js +12 -0
- package/pf-tabs/test/pf-tabs.e2e.js.map +1 -1
- package/pf-tabs/test/pf-tabs.spec.js +11 -12
- package/pf-tabs/test/pf-tabs.spec.js.map +1 -1
- package/pf-text-area/pf-text-area.d.ts +128 -134
- package/pf-text-area/pf-text-area.js +7 -131
- package/pf-text-area/pf-text-area.js.map +1 -1
- package/pf-text-area/test/pf-text-area.e2e.js +12 -0
- package/pf-text-area/test/pf-text-area.e2e.js.map +1 -1
- package/pf-text-input/pf-text-input.d.ts +129 -135
- package/pf-text-input/pf-text-input.js +7 -132
- package/pf-text-input/pf-text-input.js.map +1 -1
- package/pf-text-input/test/pf-text-input.e2e.js +12 -0
- package/pf-text-input/test/pf-text-input.e2e.js.map +1 -1
- package/pf-tile/pf-tile.d.ts +21 -20
- package/pf-tile/pf-tile.js +18 -35
- package/pf-tile/pf-tile.js.map +1 -1
- package/pf-tile/test/pf-tile.e2e.js +12 -0
- package/pf-tile/test/pf-tile.e2e.js.map +1 -1
- package/pf-timestamp/pf-timestamp.d.ts +2 -2
- package/pf-timestamp/pf-timestamp.js +1 -3
- package/pf-timestamp/pf-timestamp.js.map +1 -1
- package/pf-timestamp/test/pf-timestamp.e2e.js +12 -0
- package/pf-timestamp/test/pf-timestamp.e2e.js.map +1 -1
- package/pf-tooltip/pf-tooltip.d.ts +51 -50
- package/pf-tooltip/pf-tooltip.js +26 -106
- package/pf-tooltip/pf-tooltip.js.map +1 -1
- package/pf-tooltip/test/pf-tooltip.e2e.js +12 -0
- package/pf-tooltip/test/pf-tooltip.e2e.js.map +1 -1
- package/pfe.min.js +1194 -1006
- package/pfe.min.js.map +4 -4
- package/react/pf-accordion/pf-accordion-header.js +2 -2
- package/react/pf-accordion/pf-accordion-panel.js +2 -2
- package/react/pf-accordion/pf-accordion.js +2 -2
- package/react/pf-avatar/pf-avatar.d.ts +1 -1
- package/react/pf-avatar/pf-avatar.js +5 -3
- package/react/pf-back-to-top/pf-back-to-top.js +2 -2
- package/react/pf-background-image/pf-background-image.js +2 -2
- package/react/pf-badge/pf-badge.js +2 -2
- package/react/pf-banner/pf-banner.js +2 -2
- package/react/pf-button/pf-button.js +2 -2
- package/react/pf-card/pf-card.js +2 -2
- package/react/pf-chip/pf-chip-group.js +2 -2
- package/react/pf-chip/pf-chip.js +2 -2
- package/react/pf-clipboard-copy/pf-clipboard-copy.d.ts +1 -1
- package/react/pf-clipboard-copy/pf-clipboard-copy.js +5 -3
- package/react/pf-code-block/pf-code-block.js +2 -2
- package/react/pf-dropdown/pf-dropdown-group.js +2 -2
- package/react/pf-dropdown/pf-dropdown-item.js +2 -2
- package/react/pf-dropdown/pf-dropdown-menu.js +2 -2
- package/react/pf-dropdown/pf-dropdown.js +2 -2
- package/react/pf-icon/pf-icon.js +2 -2
- package/react/pf-jump-links/pf-jump-links-item.js +2 -2
- package/react/pf-jump-links/pf-jump-links-list.js +2 -2
- package/react/pf-jump-links/pf-jump-links.js +2 -2
- package/react/pf-label/pf-label.js +2 -2
- package/react/pf-modal/pf-modal.js +2 -2
- package/react/pf-panel/pf-panel.js +2 -2
- package/react/pf-popover/pf-popover.js +2 -2
- package/react/pf-progress/pf-progress.js +2 -2
- package/react/pf-progress-stepper/pf-progress-step.js +2 -2
- package/react/pf-progress-stepper/pf-progress-stepper.js +2 -2
- package/react/pf-select/pf-option-group.js +2 -2
- package/react/pf-select/pf-option.js +2 -2
- package/react/pf-select/pf-select.d.ts +1 -1
- package/react/pf-select/pf-select.js +2 -3
- package/react/pf-spinner/pf-spinner.js +2 -2
- package/react/pf-switch/pf-switch.js +2 -2
- package/react/pf-table/pf-caption.js +2 -2
- package/react/pf-table/pf-table.js +2 -2
- package/react/pf-table/pf-tbody.js +2 -2
- package/react/pf-table/pf-td.js +2 -2
- package/react/pf-table/pf-th.js +2 -2
- package/react/pf-table/pf-thead.js +2 -2
- package/react/pf-table/pf-tr.js +2 -2
- package/react/pf-tabs/pf-tab-panel.js +2 -2
- package/react/pf-tabs/pf-tab.js +2 -2
- package/react/pf-tabs/pf-tabs.js +2 -2
- package/react/pf-text-area/pf-text-area.js +2 -2
- package/react/pf-text-input/pf-text-input.js +2 -2
- package/react/pf-tile/pf-tile.js +2 -2
- package/react/pf-timestamp/pf-timestamp.js +2 -2
- package/react/pf-tooltip/pf-tooltip.js +2 -2
- package/pf-accordion/BaseAccordion.d.ts +0 -61
- package/pf-accordion/BaseAccordion.js +0 -269
- package/pf-accordion/BaseAccordion.js.map +0 -1
- package/pf-accordion/BaseAccordionHeader.css +0 -39
- package/pf-accordion/BaseAccordionHeader.d.ts +0 -29
- package/pf-accordion/BaseAccordionHeader.js +0 -128
- package/pf-accordion/BaseAccordionHeader.js.map +0 -1
- package/pf-accordion/BaseAccordionPanel.css +0 -27
- package/pf-accordion/BaseAccordionPanel.d.ts +0 -7
- package/pf-accordion/BaseAccordionPanel.js +0 -33
- package/pf-accordion/BaseAccordionPanel.js.map +0 -1
- package/pf-avatar/BaseAvatar.css +0 -13
- package/pf-avatar/BaseAvatar.d.ts +0 -23
- package/pf-avatar/BaseAvatar.js +0 -62
- package/pf-avatar/BaseAvatar.js.map +0 -1
- package/pf-back-to-top/demo/demo.css +0 -25
- package/pf-badge/BaseBadge.css +0 -6
- package/pf-badge/BaseBadge.d.ts +0 -18
- package/pf-badge/BaseBadge.js +0 -16
- package/pf-badge/BaseBadge.js.map +0 -1
- package/pf-button/BaseButton.css +0 -68
- package/pf-button/BaseButton.d.ts +0 -51
- package/pf-button/BaseButton.js +0 -84
- package/pf-button/BaseButton.js.map +0 -1
- package/pf-card/BaseCard.css +0 -36
- package/pf-card/BaseCard.d.ts +0 -24
- package/pf-card/BaseCard.js +0 -51
- package/pf-card/BaseCard.js.map +0 -1
- package/pf-clipboard-copy/BaseClipboardCopy.css +0 -6
- package/pf-clipboard-copy/BaseClipboardCopy.d.ts +0 -18
- package/pf-clipboard-copy/BaseClipboardCopy.js +0 -25
- package/pf-clipboard-copy/BaseClipboardCopy.js.map +0 -1
- package/pf-code-block/BaseCodeBlock.css +0 -7
- package/pf-code-block/BaseCodeBlock.d.ts +0 -8
- package/pf-code-block/BaseCodeBlock.js +0 -22
- package/pf-code-block/BaseCodeBlock.js.map +0 -1
- package/pf-icon/BaseIcon.css +0 -22
- package/pf-icon/BaseIcon.d.ts +0 -41
- package/pf-icon/BaseIcon.js +0 -144
- package/pf-icon/BaseIcon.js.map +0 -1
- package/pf-label/BaseLabel.css +0 -44
- package/pf-label/BaseLabel.d.ts +0 -30
- package/pf-label/BaseLabel.js +0 -29
- package/pf-label/BaseLabel.js.map +0 -1
- package/pf-spinner/BaseSpinner.css +0 -20
- package/pf-spinner/BaseSpinner.d.ts +0 -27
- package/pf-spinner/BaseSpinner.js +0 -45
- package/pf-spinner/BaseSpinner.js.map +0 -1
- package/pf-switch/BaseSwitch.css +0 -36
- package/pf-switch/BaseSwitch.d.ts +0 -19
- package/pf-switch/BaseSwitch.js +0 -109
- package/pf-switch/BaseSwitch.js.map +0 -1
- package/pf-tabs/BaseTab.css +0 -60
- package/pf-tabs/BaseTab.d.ts +0 -32
- package/pf-tabs/BaseTab.js +0 -83
- package/pf-tabs/BaseTab.js.map +0 -1
- package/pf-tabs/BaseTabPanel.css +0 -7
- package/pf-tabs/BaseTabPanel.d.ts +0 -7
- package/pf-tabs/BaseTabPanel.js +0 -36
- package/pf-tabs/BaseTabPanel.js.map +0 -1
- package/pf-tabs/BaseTabs.css +0 -86
- package/pf-tabs/BaseTabs.d.ts +0 -38
- package/pf-tabs/BaseTabs.js +0 -221
- package/pf-tabs/BaseTabs.js.map +0 -1
- package/pf-tile/BaseTile.d.ts +0 -13
- package/pf-tile/BaseTile.js +0 -28
- package/pf-tile/BaseTile.js.map +0 -1
- package/pf-tooltip/BaseTooltip.css +0 -70
- package/pf-tooltip/BaseTooltip.d.ts +0 -16
- package/pf-tooltip/BaseTooltip.js +0 -54
- package/pf-tooltip/BaseTooltip.js.map +0 -1
package/pf-button/pf-button.js
CHANGED
|
@@ -12,131 +12,15 @@ import '@patternfly/elements/pf-spinner/pf-spinner.js';
|
|
|
12
12
|
import { css } from "lit";
|
|
13
13
|
const tokensStyles = css `:host {\n\t--pf-c-button--PaddingTop: var(--pf-global--spacer--form-element, 0.375rem);\n\t--pf-c-button--PaddingRight: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-button--PaddingBottom: var(--pf-global--spacer--form-element, 0.375rem);\n\t--pf-c-button--PaddingLeft: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-button--LineHeight: var(--pf-global--LineHeight--md, 1.5);\n\t--pf-c-button--FontWeight: var(--pf-global--FontWeight--normal, 400);\n\t--pf-c-button--FontSize: var(--pf-global--FontSize--md, 1rem);\n\t--pf-c-button--BackgroundColor: transparent;\n\t--pf-c-button--BorderRadius: var(--pf-global--BorderRadius--sm, 3px);\n\t--pf-c-button--after--BorderRadius: var(--pf-global--BorderRadius--sm, 3px);\n\t--pf-c-button--after--BorderColor: transparent;\n\t--pf-c-button--after--BorderWidth: var(--pf-global--BorderWidth--sm, 1px);\n\t--pf-c-button--hover--after--BorderWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--focus--after--BorderWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--active--after--BorderWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--disabled--Color: var(--pf-global--disabled-color--100, #6a6e73);\n\t--pf-c-button--disabled--BackgroundColor: var(--pf-global--disabled-color--200, #d2d2d2);\n\t--pf-c-button--disabled--after--BorderColor: transparent;\n\t--pf-c-button--m-primary--BackgroundColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-primary--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-primary--hover--BackgroundColor: var(--pf-global--primary-color--200, #004080);\n\t--pf-c-button--m-primary--hover--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-primary--focus--BackgroundColor: var(--pf-global--primary-color--200, #004080);\n\t--pf-c-button--m-primary--focus--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-primary--active--BackgroundColor: var(--pf-global--primary-color--200, #004080);\n\t--pf-c-button--m-primary--active--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-secondary--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--after--BorderColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--Color: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--hover--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--hover--after--BorderColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--hover--Color: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--focus--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--focus--after--BorderColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--focus--Color: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--active--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--active--after--BorderColor: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--active--Color: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-secondary--m-danger--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--m-danger--Color: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-secondary--m-danger--after--BorderColor: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-secondary--m-danger--hover--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--m-danger--hover--Color: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-secondary--m-danger--hover--after--BorderColor: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-secondary--m-danger--focus--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--m-danger--focus--Color: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-secondary--m-danger--focus--after--BorderColor: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-secondary--m-danger--active--BackgroundColor: transparent;\n\t--pf-c-button--m-secondary--m-danger--active--Color: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-secondary--m-danger--active--after--BorderColor: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-tertiary--BackgroundColor: transparent;\n\t--pf-c-button--m-tertiary--after--BorderColor: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--hover--BackgroundColor: transparent;\n\t--pf-c-button--m-tertiary--hover--after--BorderColor: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--hover--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--focus--BackgroundColor: transparent;\n\t--pf-c-button--m-tertiary--focus--after--BorderColor: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--focus--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--active--BackgroundColor: transparent;\n\t--pf-c-button--m-tertiary--active--after--BorderColor: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-tertiary--active--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-warning--BackgroundColor: var(--pf-global--warning-color--100, #f0ab00);\n\t--pf-c-button--m-warning--Color: var(--pf-global--Color--dark-100, #151515);\n\t--pf-c-button--m-warning--hover--BackgroundColor: var(--pf-global--palette--gold-500, #c58c00);\n\t--pf-c-button--m-warning--hover--Color: var(--pf-global--Color--dark-100, #151515);\n\t--pf-c-button--m-warning--focus--BackgroundColor: var(--pf-global--palette--gold-500, #c58c00);\n\t--pf-c-button--m-warning--focus--Color: var(--pf-global--Color--dark-100, #151515);\n\t--pf-c-button--m-warning--active--BackgroundColor: var(--pf-global--palette--gold-500, #c58c00);\n\t--pf-c-button--m-warning--active--Color: var(--pf-global--Color--dark-100, #151515);\n\t--pf-c-button--m-danger--BackgroundColor: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-danger--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-danger--hover--BackgroundColor: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-danger--hover--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-danger--focus--BackgroundColor: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-danger--focus--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-danger--active--BackgroundColor: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-danger--active--Color: var(--pf-global--Color--light-100, #fff);\n\t--pf-c-button--m-link--BackgroundColor: transparent;\n\t--pf-c-button--m-link--Color: var(--pf-global--link--Color, #06c);\n\t--pf-c-button--m-link--hover--BackgroundColor: transparent;\n\t--pf-c-button--m-link--hover--Color: var(--pf-global--link--Color--hover, #004080);\n\t--pf-c-button--m-link--focus--BackgroundColor: transparent;\n\t--pf-c-button--m-link--focus--Color: var(--pf-global--link--Color--hover, #004080);\n\t--pf-c-button--m-link--active--BackgroundColor: transparent;\n\t--pf-c-button--m-link--active--Color: var(--pf-global--link--Color--hover, #004080);\n\t--pf-c-button--m-link--disabled--BackgroundColor: transparent;\n\t--pf-c-button--m-link--m-inline--FontSize: inherit;\n\t--pf-c-button--m-link--m-inline--hover--TextDecoration: var(--pf-global--link--TextDecoration--hover, underline);\n\t--pf-c-button--m-link--m-inline--hover--Color: var(--pf-global--link--Color--hover, #004080);\n\t--pf-c-button--m-link--m-inline--PaddingTop: 0;\n\t--pf-c-button--m-link--m-inline--PaddingRight: 0;\n\t--pf-c-button--m-link--m-inline--PaddingBottom: 0;\n\t--pf-c-button--m-link--m-inline--PaddingLeft: 0;\n\t--pf-c-button--m-link--m-inline__progress--Left: var(--pf-global--spacer--xs, 0.25rem);\n\t--pf-c-button--m-link--m-inline--m-in-progress--PaddingLeft: calc(var(--pf-c-button--m-link--m-inline__progress--Left) + 1rem + var(--pf-global--spacer--sm, 0.5rem));\n\t--pf-c-button--m-link--m-danger--BackgroundColor: transparent;\n\t--pf-c-button--m-link--m-danger--Color: var(--pf-global--danger-color--100, #c9190b);\n\t--pf-c-button--m-link--m-danger--hover--BackgroundColor: transparent;\n\t--pf-c-button--m-link--m-danger--hover--Color: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-link--m-danger--focus--BackgroundColor: transparent;\n\t--pf-c-button--m-link--m-danger--focus--Color: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-link--m-danger--active--BackgroundColor: transparent;\n\t--pf-c-button--m-link--m-danger--active--Color: var(--pf-global--danger-color--200, #a30000);\n\t--pf-c-button--m-plain--BackgroundColor: transparent;\n\t--pf-c-button--m-plain--Color: var(--pf-global--Color--200, #6a6e73);\n\t--pf-c-button--m-plain--hover--BackgroundColor: transparent;\n\t--pf-c-button--m-plain--hover--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-plain--focus--BackgroundColor: transparent;\n\t--pf-c-button--m-plain--focus--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-plain--active--BackgroundColor: transparent;\n\t--pf-c-button--m-plain--active--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-plain--disabled--Color: var(--pf-global--disabled-color--200, #d2d2d2);\n\t--pf-c-button--m-plain--disabled--BackgroundColor: transparent;\n\t--pf-c-button--m-control--BackgroundColor: var(--pf-global--BackgroundColor--100, #fff);\n\t--pf-c-button--m-control--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-control--BorderRadius: 0;\n\t--pf-c-button--m-control--after--BorderWidth: var(--pf-global--BorderWidth--sm, 1px);\n\t--pf-c-button--m-control--after--BorderTopColor: var(--pf-global--BorderColor--300, #f0f0f0);\n\t--pf-c-button--m-control--after--BorderRightColor: var(--pf-global--BorderColor--300, #f0f0f0);\n\t--pf-c-button--m-control--after--BorderBottomColor: var(--pf-global--BorderColor--200, #8a8d90);\n\t--pf-c-button--m-control--after--BorderLeftColor: var(--pf-global--BorderColor--300, #f0f0f0);\n\t--pf-c-button--m-control--disabled--BackgroundColor: var(--pf-global--disabled-color--300, #f0f0f0);\n\t--pf-c-button--m-control--hover--BackgroundColor: var(--pf-global--BackgroundColor--100, #fff);\n\t--pf-c-button--m-control--hover--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-control--hover--after--BorderBottomWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--m-control--hover--after--BorderBottomColor: var(--pf-global--active-color--100, #06c);\n\t--pf-c-button--m-control--active--BackgroundColor: var(--pf-global--BackgroundColor--100, #fff);\n\t--pf-c-button--m-control--active--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-control--active--after--BorderBottomWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--m-control--active--after--BorderBottomColor: var(--pf-global--active-color--100, #06c);\n\t--pf-c-button--m-control--focus--BackgroundColor: var(--pf-global--BackgroundColor--100, #fff);\n\t--pf-c-button--m-control--focus--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-control--focus--after--BorderBottomWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--m-control--focus--after--BorderBottomColor: var(--pf-global--active-color--100, #06c);\n\t--pf-c-button--m-control--m-expanded--BackgroundColor: var(--pf-global--BackgroundColor--100, #fff);\n\t--pf-c-button--m-control--m-expanded--Color: var(--pf-global--Color--100, #151515);\n\t--pf-c-button--m-control--m-expanded--after--BorderBottomWidth: var(--pf-global--BorderWidth--md, 2px);\n\t--pf-c-button--m-control--m-expanded--after--BorderBottomColor: var(--pf-global--active-color--100, #06c);\n\t--pf-c-button--m-small--FontSize: var(--pf-global--FontSize--sm, 0.875rem);\n\t--pf-c-button--m-display-lg--PaddingTop: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-button--m-display-lg--PaddingRight: var(--pf-global--spacer--xl, 2rem);\n\t--pf-c-button--m-display-lg--PaddingBottom: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-button--m-display-lg--PaddingLeft: var(--pf-global--spacer--xl, 2rem);\n\t--pf-c-button--m-display-lg--FontWeight: var(--pf-global--FontWeight--bold, 700);\n\t--pf-c-button--m-link--m-display-lg--FontSize: var(--pf-global--FontSize--lg, 1.125rem);\n\t--pf-c-button__icon--m-start--MarginRight: var(--pf-global--spacer--xs, 0.25rem);\n\t--pf-c-button__icon--m-end--MarginLeft: var(--pf-global--spacer--xs, 0.25rem);\n\t--pf-c-button__progress--width: calc(var(--pf-global--icon--FontSize--md, 1.125rem) + var(--pf-global--spacer--sm, 0.5rem));\n\t--pf-c-button__progress--Opacity: 0;\n\t--pf-c-button__progress--TranslateY: -50%;\n\t--pf-c-button__progress--TranslateX: 0;\n\t--pf-c-button__progress--Top: 50%;\n\t--pf-c-button__progress--Left: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-button--m-progress--TransitionProperty: padding;\n\t--pf-c-button--m-progress--TransitionDuration: var(--pf-global--TransitionDuration, 250ms);\n\t--pf-c-button--m-progress--PaddingRight: calc(var(--pf-global--spacer--md, 1rem) + var(--pf-c-button__progress--width) / 2);\n\t--pf-c-button--m-progress--PaddingLeft: calc(var(--pf-global--spacer--md, 1rem) + var(--pf-c-button__progress--width) / 2);\n\t--pf-c-button--m-in-progress--PaddingRight: var(--pf-global--spacer--md, 1rem);\n\t--pf-c-button--m-in-progress--PaddingLeft: calc(var(--pf-global--spacer--md, 1rem) + var(--pf-c-button__progress--width));\n\t--pf-c-button--m-in-progress--m-plain--Color: var(--pf-global--primary-color--100, #06c);\n\t--pf-c-button--m-in-progress--m-plain__progress--Left: 50%;\n\t--pf-c-button--m-in-progress--m-plain__progress--TranslateX: -50%;\n\t--pf-c-button__count--MarginLeft: var(--pf-global--spacer--sm, 0.5rem);\n\t--pf-c-button--disabled__c-badge--Color: var(--pf-global--Color--dark-100, #151515);\n\t--pf-c-button--disabled__c-badge--BackgroundColor: var(--pf-global--BackgroundColor--200, #f0f0f0);\n\t--pf-c-button--m-primary__c-badge--BorderColor: var(--pf-global--BorderColor--300, #f0f0f0);\n\t--pf-c-button--m-primary__c-badge--BorderWidth: var(--pf-global--BorderWidth--sm, 1px);\n\n --_button-color: var(--pf-c-button--m-primary--Color);\n --_button-background-color: var(--pf-c-button--m-primary--BackgroundColor);\n}\n`;
|
|
14
14
|
const iconStyles = css `/******************************\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`;
|
|
15
|
-
const styles = css `:host {\n position: relative;\n\tfont-size: var(--pf-c-button--FontSize);\n\tfont-weight: var(--pf-c-button--FontWeight);\n\tline-height: var(--pf-c-button--LineHeight);\n\ttext-align: center;\n\twhite-space: nowrap;\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 display: inline-block;\n height: max-content;\n cursor: pointer;\n position: relative;\n font-family: inherit;\n border-width: 0;\n border-style: solid;\n border-radius: var(--pf-c-button--BorderRadius,\n var(--pf-global--BorderRadius--sm, 3px));\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n\n:host([inline]) {\n display: 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\npf-icon,\n::slotted(pf-icon) {\n color: currentcolor;\n padding-inline-start: var(--_button-icon-padding-inline-start);\n padding-inline-end: var(--_button-icon-padding-inline-end);\n vertical-align: var(--_button-icon-vertical-align);\n}\n\n#button {\n display: contents;\n color: var(--_button-color);\n &::before,\n &::after {\n position: absolute;\n inset: 0;\n content: "";\n }\n &::before {\n background-color: var(--_button-background-color);\n border-radius: var(--pf-c-button--BorderRadius,\n var(--pf-global--BorderRadius--sm, 3px));\n }\n &::after {\n pointer-events: none;\n border-style: solid;\n border-width: var(--pf-c-button--after--BorderWidth);\n border-color: var(--pf-c-button--after--BorderColor);\n border-radius: var(--pf-c-button--after--BorderRadius);\n }\n}\n\n#text {\n display: inline;\n position: relative;\n}\n\n:host(: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 /* LINK */\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 /* PLAIN */\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(: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 /* LINK */\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 /* PLAIN */\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(: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 /* LINK */\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.disabled,\n:host(:disabled),\n:host([danger]:disabled),\n:host([link]:disabled) .link {\n pointer-events: none;\n cursor: default;\n}\n\n[part=icon] {\n --pf-icon--size: 16px;\n display: inline-flex;\n align-items: center;\n position: absolute;\n & ::slotted(*) {\n width: 16px;\n max-width: 16px;\n height: 16px;\n max-height: 16px;\n }\n}\n\n.hasIcon [part=icon] {\n cursor: pointer;\n}\n\n.hasIcon #button {\n position: absolute;\n inset: 0;\n}\n\n/******************************\n * *\n * PLAIN *\n * *\n ******************************/\n\n#button.plain {\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-plain--disabled--BackgroundColor, transparent);\n --pf-c-button--after--BorderWidth: 0 !important;\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 --_button-color: var(--pf-c-button--m-plain--Color,\n var(--pf-global--Color--200, #6a6e73));\n --_button-background-color: var(--pf-c-button--m-plain--BackgroundColor,\n transparent);\n :host(: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 &:not(.hasIcon) [part=icon],\n &.loading [part=icon] {\n left: 16px;\n }\n & [part=icon] {\n display: contents;\n }\n &.disabled,\n &.link.disabled {\n --_button-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.hasIcon:not(.plain) [part=icon] {\n position: relative;\n}\n\n/******************************\n * *\n * ICON POSITION RIGHT *\n * *\n ******************************/\n\n:host([icon-position=right]) .loading [part=icon] {\n order: 1;\n}\n\n:host([icon-position=right]) #button.hasIcon {\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 * WARNING *\n * *\n ******************************/\n\n#button.warning {\n --_button-color: var(--pf-c-button--m-warning--Color,\n var(--pf-global--Color--dark-100, #151515));\n --_button-background-color: var(--pf-c-button--m-warning--BackgroundColor,\n var(--pf-global--warning-color--100, #f0ab00));\n :host(: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 :host(: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 :host(: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 &.disabled {\n --_button-color: var(--pf-c-button--disabled--Color,\n var(--pf-global--disabled-color--100, #6a6e73));\n --_button-background-color: var(--pf-c-button--disabled--BackgroundColor,\n var(--pf-global--disabled-color--200, #d2d2d2));\n }\n}\n\n/******************************\n * *\n * LOADING *\n * *\n ******************************/\n\n:host([loading]) {\n position: relative;\n display: flex;\n align-items: center;\n}\n\n#button.loading {\n & [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 &.primary:not(.plain),\n &.danger {\n --pf-c-spinner--Color: white;\n }\n &:not(.plain) {\n padding-left: calc(12px + var(--pf-c-button--PaddingLeft, var(--pf-global--spacer--md, 1rem)));\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}\n\n/******************************\n * *\n * SECONDARY *\n * *\n ******************************/\n\n#button.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 --_button-color: var(--pf-c-button--m-secondary--Color,\n var(--pf-global--primary-color--100, #06c));\n --_button-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 :host(: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 :host(: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 :host(: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 &.danger {\n --_button-color: var(--pf-c-button--m-secondary--m-danger--Color,\n var(--pf-global--danger--color--100, #c9190b));\n --_button-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 :host(: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 :host(: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 :host(: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}\n\n/******************************\n * *\n * TERTIARY *\n * *\n ******************************/\n\n#button.tertiary {\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n --_button-color: var(--pf-c-button--m-tertiary--Color,\n var(--pf-global--Color--100, #151515));\n --_button-background-color: var(--pf-c-button--m-tertiary--BackgroundColor, transparent);\n :host(: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 :host(: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 :host(: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\n/******************************\n * *\n * CONTROL *\n * *\n ******************************/\n\n#button.control {\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 --_button-color: var(--pf-c-button--m-control--Color,\n var(--pf-global--Color--100, #151515));\n --_button-background-color: var(--pf-c-button--m-control--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));\n :host(: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 &::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(: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 &::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 :host(: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 &::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}\n\n/******************************\n * *\n * LINK *\n * *\n ******************************/\n\n#button.link {\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-link--disabled--BackgroundColor, transparent);\n --_button-color: var(--pf-c-button--m-link--Color, var(--pf-global--link--Color, #06c));\n --_button-background-color: var(--pf-c-button--m-link--BackgroundColor,\n var(--pf-c-button--m-link--BackgroundColor, transparent));\n &.inline {\n :host(: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 &.danger {\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 :host(: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 :host(:focus) & {\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 :host(: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}\n\n/******************************\n * *\n * DISABLED *\n * *\n ******************************/\n\n:host(:is(:disabled,[disabled])) {\n pointer-events: none;\n cursor: default;\n}\n\n#button.disabled {\n &:not(.plain) {\n --_button-color: var(--pf-c-button--disabled--Color,\n var(--pf-global--disabled-color--100, #6a6e73));\n --_button-background-color: var(--pf-c-button--disabled--BackgroundColor,\n var(--pf-global--disabled-color--200, #d2d2d2));\n }\n &::after {\n border-color: var(--pf-c-button--disabled--after--BorderColor, transparent);\n }\n}\n\n/******************************\n * *\n * BLOCK *\n * *\n ******************************/\n\n:host([block]) {\n display: flex;\n width: 100%;\n justify-content: center;\n}\n\n/******************************\n * *\n * LARGE *\n * *\n ******************************/\n\n:host([size="large"]) {\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"]) {\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#button.danger {\n --_button-color: var(--pf-c-button--m-danger--Color,\n var(--pf-global--Color--light-100, #fff));\n --_button-background-color: var(--pf-c-button--m-danger--BackgroundColor,\n var(--pf-global--danger-color--100, #c9190b));\n}\n\n`;
|
|
16
|
-
/**
|
|
17
|
-
* A **button** is a box area or text that communicates and triggers user actions when
|
|
18
|
-
* clicked or selected. Buttons can be used to communicate and immediately trigger
|
|
19
|
-
* actions a user can take in an application, like submitting a form, canceling a
|
|
20
|
-
* process, or creating a new object. Buttons can also be used to take a user to a
|
|
21
|
-
* new location, like another page inside of a web application, or an external site
|
|
22
|
-
* such as help or documentation..
|
|
23
|
-
* @summary Allows users to perform an action when triggered
|
|
24
|
-
* @cssprop {<length>} --pf-c-button--FontSize {@default `1rem`}
|
|
25
|
-
* @cssprop --pf-c-button--FontWeight {@default `400`}
|
|
26
|
-
* @cssprop {<number>} --pf-c-button--LineHeight {@default `1.5`}
|
|
27
|
-
* @cssprop {<length>} --pf-c-button--PaddingTop {@default `0.375rem`}
|
|
28
|
-
* @cssprop {<length>} --pf-c-button--PaddingLeft {@default `1rem`}
|
|
29
|
-
* @cssprop {<length>} --pf-c-button--PaddingBottom {@default `0.375rem`}
|
|
30
|
-
* @cssprop {<length>} --pf-c-button--PaddingRight {@default `1rem`}
|
|
31
|
-
* @cssprop {<length>|<percentage>} --pf-c-button--BorderRadius {@default `3px`}
|
|
32
|
-
* @cssprop {<color>} --pf-c-button--after--BorderColor {@default `transparent`}
|
|
33
|
-
* @cssprop {<length>} --pf-c-button--after--BorderRadius {@default `3px`}
|
|
34
|
-
* @cssprop {<length>} --pf-c-button--after--BorderWidth {@default `1px`}
|
|
35
|
-
* @cssprop {<length>} --pf-c-button--active--after--BorderWidth {@default `2px`}
|
|
36
|
-
* @cssprop {<length>} --pf-c-button--hover--after--BorderWidth {@default `2px`}
|
|
37
|
-
* @cssprop {<length>} --pf-c-button--focus--after--BorderWidth {@default `2px`}
|
|
38
|
-
* @cssprop {<color>} --pf-c-button--m-primary--Color {@default `#fff`}
|
|
39
|
-
* @cssprop {<color>} --pf-c-button--m-primary--BackgroundColor {@default `#06c`}
|
|
40
|
-
* @cssprop {<color>} --pf-c-button--m-primary--active--Color {@default `#fff`}
|
|
41
|
-
* @cssprop {<color>} --pf-c-button--m-primary--active--BackgroundColor {@default `#004080`}
|
|
42
|
-
* @cssprop {<color>} --pf-c-button--m-primary--focus--Color {@default `#fff`}
|
|
43
|
-
* @cssprop {<color>} --pf-c-button--m-primary--focus--BackgroundColor {@default `#004080`}
|
|
44
|
-
* @cssprop {<color>} --pf-c-button--m-primary--hover--Color {@default `#fff`}
|
|
45
|
-
* @cssprop {<color>} --pf-c-button--m-primary--hover--BackgroundColor {@default `#004080`}
|
|
46
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--Color {@default `#06c`}
|
|
47
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--BackgroundColor {@default `transparent`}
|
|
48
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--active--Color {@default `#06c`}
|
|
49
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--active--BackgroundColor {@default `transparent`}
|
|
50
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--active--BorderColor {@default `#06c`}
|
|
51
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--focus--Color {@default `#06c`}
|
|
52
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--focus--BackgroundColor {@default `transparent`}
|
|
53
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--focus--BorderColor {@default `#06c`}
|
|
54
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--hover--Color {@default `#06c`}
|
|
55
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--hover--BackgroundColor {@default `transparent`}
|
|
56
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--hover--BorderColor {@default `#06c`}
|
|
57
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--Color {@default `#151515`}
|
|
58
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--BackgroundColor {@default `transparent`}
|
|
59
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--active--Color {@default `#151515`}
|
|
60
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--active--BackgroundColor {@default `transparent`}
|
|
61
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--active--BorderColor {@default `#151515`}
|
|
62
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--focus--Color {@default `#151515`}
|
|
63
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--focus--BackgroundColor {@default `transparent`}
|
|
64
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--focus--BorderColor {@default `#151515`}
|
|
65
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--hover--Color {@default `#151515`}
|
|
66
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--hover--BackgroundColor {@default `transparent`}
|
|
67
|
-
* @cssprop {<color>} --pf-c-button--m-tertiary--hover--BorderColor {@default `#151515`}
|
|
68
|
-
* @cssprop {<color>} --pf-c-button--m-danger--Color {@default `#fff`}
|
|
69
|
-
* @cssprop {<color>} --pf-c-button--m-danger--BackgroundColor {@default `#c9190b`}
|
|
70
|
-
* @cssprop {<color>} --pf-c-button--m-danger--active--Color {@default `#fff`}
|
|
71
|
-
* @cssprop {<color>} --pf-c-button--m-danger--active--BackgroundColor {@default `#a30000`}
|
|
72
|
-
* @cssprop {<color>} --pf-c-button--m-danger--focus--Color {@default `#fff`}
|
|
73
|
-
* @cssprop {<color>} --pf-c-button--m-danger--focus--BackgroundColor {@default `#a30000`}
|
|
74
|
-
* @cssprop {<color>} --pf-c-button--m-danger--hover--Color {@default `#fff`}
|
|
75
|
-
* @cssprop {<color>} --pf-c-button--m-danger--hover--BackgroundColor {@default `#a30000`}
|
|
76
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--Color {@default `#c9190b`}
|
|
77
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--BackgroundColor {@default `transparent`}
|
|
78
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--BorderColor {@default `#c9190b`}
|
|
79
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--active--Color {@default `#a30000`}
|
|
80
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--active--BackgroundColor {@default `transparent`}
|
|
81
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--active--BorderColor {@default `#c9190b`}
|
|
82
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--focus--Color {@default `#a30000`}
|
|
83
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--focus--BackgroundColor {@default `transparent`}
|
|
84
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--focus--BorderColor {@default `#c9190b`}
|
|
85
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--hover--Color {@default `#a30000`}
|
|
86
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--hover--BackgroundColor {@default `transparent`}
|
|
87
|
-
* @cssprop {<color>} --pf-c-button--m-secondary--m-danger--hover--BorderColor {@default `#c9190b`}
|
|
88
|
-
* @cssprop {<color>} --pf-c-button--m-control--disabled--BackgroundColor {@default `#f0f0f0`}
|
|
89
|
-
* @cssprop {<length>} --pf-c-button--m-control--BorderRadius {@default `0`}
|
|
90
|
-
* @cssprop {<length>} --pf-c-button--m-control--after--BorderWidth {@default `1px`}
|
|
91
|
-
* @cssprop {<color>} --pf-c-button--m-control--after--BorderTopColor {@default `#f0f0f0`}
|
|
92
|
-
* @cssprop {<color>} --pf-c-button--m-control--after--BorderRightColor {@default `#f0f0f0`}
|
|
93
|
-
* @cssprop {<color>} --pf-c-button--m-control--after--BorderBottomColor {@default `#8a8d90`}
|
|
94
|
-
* @cssprop {<color>} --pf-c-button--m-control--after--BorderLeftColor {@default `#f0f0f0`}
|
|
95
|
-
* @cssprop {<color>} --pf-c-button--m-control--Color {@default `#151515`}
|
|
96
|
-
* @cssprop {<color>} --pf-c-button--m-control--BackgroundColor {@default `#fff`}
|
|
97
|
-
* @cssprop {<color>} --pf-c-button--m-control--active--Color {@default `#151515`}
|
|
98
|
-
* @cssprop {<color>} --pf-c-button--m-control--active--BackgroundColor {@default `#fff`}
|
|
99
|
-
* @cssprop {<color>} --pf-c-button--m-control--active--BorderBottomColor {@default `#06c`}
|
|
100
|
-
* @cssprop {<length>} --pf-c-button--m-control--active--after--BorderBottomWidth {@default `2px`}
|
|
101
|
-
* @cssprop {<color>} --pf-c-button--m-control--focus--Color {@default `#151515`}
|
|
102
|
-
* @cssprop {<color>} --pf-c-button--m-control--focus--BackgroundColor {@default `#fff`}
|
|
103
|
-
* @cssprop {<color>} --pf-c-button--m-control--focus--BorderBottomColor {@default `#06c`}
|
|
104
|
-
* @cssprop {<length>} --pf-c-button--m-control--focus--after--BorderBottomWidth {@default `2px`}
|
|
105
|
-
* @cssprop {<color>} --pf-c-button--m-control--hover--Color {@default `#151515`}
|
|
106
|
-
* @cssprop {<color>} --pf-c-button--m-control--hover--BackgroundColor {@default `#fff`}
|
|
107
|
-
* @cssprop {<color>} --pf-c-button--m-control--hover--BorderBottomColor {@default `#06c`}
|
|
108
|
-
* @cssprop {<length>} --pf-c-button--m-control--hover--after--BorderBottomWidth {@default `2px`}
|
|
109
|
-
* @cssprop {<color>} --pf-c-button--disabled--Color {@default `#6a6e73`}
|
|
110
|
-
* @cssprop {<color>} --pf-c-button--disabled--BackgroundColor {@default `#d2d2d2`}
|
|
111
|
-
* @cssprop {<color>} --pf-c-button--disabled--after--BorderColor {@default `transparent`}
|
|
112
|
-
* @cssprop {<color>} --pf-c-button--m-warning--Color {@default `#151515`}
|
|
113
|
-
* @cssprop {<color>} --pf-c-button--m-warning--BackgroundColor {@default `#f0ab00`}
|
|
114
|
-
* @cssprop {<color>} --pf-c-button--m-warning--active--Color {@default `#151515`}
|
|
115
|
-
* @cssprop {<color>} --pf-c-button--m-warning--active--BackgroundColor {@default `#c58c00`}
|
|
116
|
-
* @cssprop {<color>} --pf-c-button--m-warning--focus--Color {@default `#151515`}
|
|
117
|
-
* @cssprop {<color>} --pf-c-button--m-warning--focus--BackgroundColor {@default `#c58c00`}
|
|
118
|
-
* @cssprop {<color>} --pf-c-button--m-warning--hover--Color {@default `#151515`}
|
|
119
|
-
* @cssprop {<color>} --pf-c-button--m-warning--hover--BackgroundColor {@default `#c58c00`}
|
|
120
|
-
* @cssprop {<color>} --pf-c-button--m-plain--BackgroundColor {@default `transparent`}
|
|
121
|
-
* @cssprop {<color>} --pf-c-button--m-plain--Color {@default `#6a6e73`}
|
|
122
|
-
* @cssprop {<color>} --pf-c-button--m-plain--hover--BackgroundColor {@default `transparent`}
|
|
123
|
-
* @cssprop {<color>} --pf-c-button--m-plain--hover--Color {@default `#151515`}
|
|
124
|
-
* @cssprop {<color>} --pf-c-button--m-plain--focus--BackgroundColor {@default `transparent`}
|
|
125
|
-
* @cssprop {<color>} --pf-c-button--m-plain--focus--Color {@default `#151515`}
|
|
126
|
-
* @cssprop {<color>} --pf-c-button--m-plain--active--BackgroundColor {@default `transparent`}
|
|
127
|
-
* @cssprop {<color>} --pf-c-button--m-plain--active--Color {@default `#151515`}
|
|
128
|
-
* @cssprop {<color>} --pf-c-button--m-plain--disabled--Color {@default `#d2d2d2`}
|
|
129
|
-
* @cssprop {<color>} --pf-c-button--m-plain--disabled--BackgroundColor {@default `transparent`}
|
|
130
|
-
* @attr {string} loading-label - ARIA label for the loading indicator {@default `'loading'`}
|
|
131
|
-
*/
|
|
15
|
+
const styles = css `:host {\n\tfont-size: var(--pf-c-button--FontSize);\n\tfont-weight: var(--pf-c-button--FontWeight);\n\tline-height: var(--pf-c-button--LineHeight);\n\ttext-align: center;\n\twhite-space: nowrap;\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 display: inline-block;\n height: max-content;\n cursor: pointer;\n position: relative;\n font-family: inherit;\n border-width: 0;\n border-style: solid;\n border-radius: var(--pf-c-button--BorderRadius,\n var(--pf-global--BorderRadius--sm, 3px));\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n\n:host([inline]) {\n display: 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\npf-icon,\n::slotted(pf-icon) {\n color: currentcolor;\n padding-inline-start: var(--_button-icon-padding-inline-start);\n padding-inline-end: var(--_button-icon-padding-inline-end);\n vertical-align: var(--_button-icon-vertical-align);\n}\n\n#icon {\n margin-inline-end: var(--pf-c-button__icon--m-start--MarginRight,\n var(--pf-global--spacer--xs, 0.25rem));\n}\n\n#button {\n display: inline-block;\n color: var(--_button-color);\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 &::before,\n &::after {\n position: absolute;\n inset: 0;\n content: "";\n }\n &::before {\n background-color: var(--_button-background-color);\n border-radius: var(--pf-c-button--BorderRadius,\n var(--pf-global--BorderRadius--sm, 3px));\n }\n &::after {\n pointer-events: none;\n border-style: solid;\n border-width: var(--pf-c-button--after--BorderWidth);\n border-color: var(--pf-c-button--after--BorderColor);\n border-radius: var(--pf-c-button--after--BorderRadius);\n }\n &.anchor {\n text-decoration: none;\n &::after {\n pointer-events: all;\n }\n }\n}\n\n#text {\n display: inline;\n position: relative;\n}\n\n:host(: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 /* LINK */\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 /* PLAIN */\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(: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 /* LINK */\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 /* PLAIN */\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(: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 /* LINK */\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.disabled,\n:host(:disabled),\n:host([danger]:disabled),\n:host([link]:disabled) .link {\n pointer-events: none;\n cursor: default;\n}\n\n[part=icon] {\n --pf-icon--size: 16px;\n display: inline-flex;\n align-items: center;\n position: absolute;\n & ::slotted(*) {\n width: 16px;\n max-width: 16px;\n height: 16px;\n max-height: 16px;\n }\n}\n\n.hasIcon [part=icon] {\n cursor: pointer;\n}\n\n.hasIcon #button {\n position: absolute;\n inset: 0;\n}\n\n/******************************\n * *\n * PLAIN *\n * *\n ******************************/\n\n#button.plain {\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-plain--disabled--BackgroundColor, transparent);\n --pf-c-button--after--BorderWidth: 0 !important;\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 --_button-color: var(--pf-c-button--m-plain--Color,\n var(--pf-global--Color--200, #6a6e73));\n --_button-background-color: var(--pf-c-button--m-plain--BackgroundColor,\n transparent);\n :host(: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 &:not(.hasIcon) [part=icon],\n &.loading [part=icon] {\n left: 16px;\n }\n & [part=icon] {\n display: contents;\n }\n &.disabled,\n &.link.disabled {\n --_button-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.hasIcon:not(.plain) [part=icon] {\n position: relative;\n}\n\n/******************************\n * *\n * ICON POSITION RIGHT *\n * *\n ******************************/\n\n:host([icon-position=right]) .loading [part=icon] {\n order: 1;\n}\n\n:host([icon-position=right]) #button.hasIcon {\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 * WARNING *\n * *\n ******************************/\n\n#button.warning {\n --_button-color: var(--pf-c-button--m-warning--Color,\n var(--pf-global--Color--dark-100, #151515));\n --_button-background-color: var(--pf-c-button--m-warning--BackgroundColor,\n var(--pf-global--warning-color--100, #f0ab00));\n :host(: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 :host(: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 :host(: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 &.disabled {\n --_button-color: var(--pf-c-button--disabled--Color,\n var(--pf-global--disabled-color--100, #6a6e73));\n --_button-background-color: var(--pf-c-button--disabled--BackgroundColor,\n var(--pf-global--disabled-color--200, #d2d2d2));\n }\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#button.loading {\n & [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 &.primary:not(.plain),\n &.danger {\n --pf-c-spinner--Color: white;\n }\n &:not(.plain) {\n padding-left: calc(12px + var(--pf-c-button--PaddingLeft, var(--pf-global--spacer--md, 1rem)));\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}\n\n/******************************\n * *\n * SECONDARY *\n * *\n ******************************/\n\n#button.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 --_button-color: var(--pf-c-button--m-secondary--Color,\n var(--pf-global--primary-color--100, #06c));\n --_button-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 :host(: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 :host(: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 :host(: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 &.danger {\n --_button-color: var(--pf-c-button--m-secondary--m-danger--Color,\n var(--pf-global--danger--color--100, #c9190b));\n --_button-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 :host(: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 :host(: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 :host(: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}\n\n/******************************\n * *\n * TERTIARY *\n * *\n ******************************/\n\n#button.tertiary {\n --pf-c-button--after--BorderColor: var(--pf-c-button--m-tertiary--after--BorderColor,\n var(--pf-global--Color--100, #151515));\n --_button-color: var(--pf-c-button--m-tertiary--Color,\n var(--pf-global--Color--100, #151515));\n --_button-background-color: var(--pf-c-button--m-tertiary--BackgroundColor, transparent);\n :host(: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 :host(: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 :host(: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\n/******************************\n * *\n * CONTROL *\n * *\n ******************************/\n\n#button.control {\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 --_button-color: var(--pf-c-button--m-control--Color,\n var(--pf-global--Color--100, #151515));\n --_button-background-color: var(--pf-c-button--m-control--BackgroundColor,\n var(--pf-global--BackgroundColor--100, #fff));\n :host(: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 &::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(: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 &::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 :host(: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 &::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}\n\n/******************************\n * *\n * LINK *\n * *\n ******************************/\n\n#button.link {\n --pf-c-button--disabled--BackgroundColor: var(--pf-c-button--m-link--disabled--BackgroundColor, transparent);\n --_button-color: var(--pf-c-button--m-link--Color, var(--pf-global--link--Color, #06c));\n --_button-background-color: var(--pf-c-button--m-link--BackgroundColor,\n var(--pf-c-button--m-link--BackgroundColor, transparent));\n &.inline {\n :host(: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 &.danger {\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 :host(: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 :host(:focus) & {\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 :host(: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}\n\n/******************************\n * *\n * DISABLED *\n * *\n ******************************/\n\n:host(:is(:disabled,[disabled])) {\n pointer-events: none;\n cursor: default;\n}\n\n#button.disabled {\n &:not(.plain) {\n --_button-color: var(--pf-c-button--disabled--Color,\n var(--pf-global--disabled-color--100, #6a6e73));\n --_button-background-color: var(--pf-c-button--disabled--BackgroundColor,\n var(--pf-global--disabled-color--200, #d2d2d2));\n }\n &::after {\n border-color: var(--pf-c-button--disabled--after--BorderColor, transparent);\n }\n}\n\n/******************************\n * *\n * BLOCK *\n * *\n ******************************/\n\n:host([block]) {\n display: flex;\n width: 100%;\n justify-content: center;\n}\n\n/******************************\n * *\n * LARGE *\n * *\n ******************************/\n\n:host([size="large"]) {\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"]) {\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#button.danger {\n --_button-color: var(--pf-c-button--m-danger--Color,\n var(--pf-global--Color--light-100, #fff));\n --_button-background-color: var(--pf-c-button--m-danger--BackgroundColor,\n var(--pf-global--danger-color--100, #c9190b));\n}\n\n`;
|
|
132
16
|
let PfButton = class PfButton extends LitElement {
|
|
133
17
|
constructor() {
|
|
134
18
|
super(...arguments);
|
|
135
19
|
_PfButton_instances.add(this);
|
|
20
|
+
/** Disables the button */
|
|
21
|
+
this.disabled = false;
|
|
136
22
|
/** Represents the state of a stateful button */
|
|
137
23
|
this.loading = false;
|
|
138
|
-
/** Applies plain styles */
|
|
139
|
-
this.plain = false;
|
|
140
24
|
/** Not as urgent as danger */
|
|
141
25
|
this.warning = false;
|
|
142
26
|
/**
|
|
@@ -145,6 +29,8 @@ let PfButton = class PfButton extends LitElement {
|
|
|
145
29
|
* user data.
|
|
146
30
|
*/
|
|
147
31
|
this.danger = false;
|
|
32
|
+
/** Applies plain styles */
|
|
33
|
+
this.plain = false;
|
|
148
34
|
/**
|
|
149
35
|
* Changes the style of the button.
|
|
150
36
|
* - Primary: Used for the most important call to action on a page. Try to
|
|
@@ -158,55 +44,85 @@ let PfButton = class PfButton extends LitElement {
|
|
|
158
44
|
this.variant = 'primary';
|
|
159
45
|
this.inline = false;
|
|
160
46
|
this.block = false;
|
|
161
|
-
|
|
162
|
-
this.disabled = false;
|
|
163
|
-
_PfButton_internals.set(this, InternalsController.of(this, { role: 'button' }));
|
|
47
|
+
_PfButton_internals.set(this, InternalsController.of(this, { role: this.variant === 'link' ? 'none' : 'button' }));
|
|
164
48
|
_PfButton_slots.set(this, new SlotController(this, 'icon', null));
|
|
165
49
|
}
|
|
166
50
|
connectedCallback() {
|
|
167
51
|
super.connectedCallback();
|
|
168
52
|
this.addEventListener('click', __classPrivateFieldGet(this, _PfButton_instances, "m", _PfButton_onClick));
|
|
169
53
|
this.addEventListener('keydown', __classPrivateFieldGet(this, _PfButton_instances, "m", _PfButton_onKeydown));
|
|
170
|
-
this.tabIndex = 0;
|
|
171
54
|
}
|
|
172
55
|
willUpdate() {
|
|
173
56
|
__classPrivateFieldGet(this, _PfButton_internals, "f").ariaLabel = this.label || null;
|
|
174
57
|
__classPrivateFieldGet(this, _PfButton_internals, "f").ariaDisabled = String(!!this.disabled);
|
|
58
|
+
const isLink = this.variant === 'link' && this.href;
|
|
59
|
+
if (isLink) {
|
|
60
|
+
this.removeAttribute('tabindex');
|
|
61
|
+
__classPrivateFieldGet(this, _PfButton_internals, "f").role = 'none';
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
this.tabIndex = 0;
|
|
65
|
+
__classPrivateFieldGet(this, _PfButton_internals, "f").role = 'button';
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async formDisabledCallback() {
|
|
69
|
+
await this.updateComplete;
|
|
70
|
+
this.requestUpdate();
|
|
175
71
|
}
|
|
176
72
|
render() {
|
|
177
73
|
const hasIcon = !!this.icon || !!this.loading || __classPrivateFieldGet(this, _PfButton_slots, "f").hasSlotted('icon');
|
|
178
|
-
const { warning, variant, danger, loading, plain, inline, block, size } = this;
|
|
74
|
+
const { warning, variant, danger, loading, plain, inline, block, size, href, target } = this;
|
|
179
75
|
const disabled = __classPrivateFieldGet(this, _PfButton_instances, "a", _PfButton_disabled_get);
|
|
180
|
-
|
|
76
|
+
const content = html `
|
|
77
|
+
<slot id="icon"
|
|
78
|
+
part="icon"
|
|
79
|
+
name="icon"
|
|
80
|
+
?hidden="${!hasIcon}">
|
|
81
|
+
<pf-icon role="presentation"
|
|
82
|
+
icon="${ifDefined(this.icon)}"
|
|
83
|
+
set="${ifDefined(this.iconSet)}"
|
|
84
|
+
?hidden="${!this.icon || this.loading}"></pf-icon>
|
|
85
|
+
<pf-spinner size="md"
|
|
86
|
+
?hidden="${!this.loading}"
|
|
87
|
+
aria-label="${this.getAttribute('loading-label') ?? 'loading'}"></pf-spinner>
|
|
88
|
+
</slot>
|
|
89
|
+
<slot id="text"></slot>
|
|
90
|
+
`;
|
|
91
|
+
if (variant === 'link' && href) {
|
|
92
|
+
return html `
|
|
93
|
+
<a id="button"
|
|
94
|
+
href="${href}"
|
|
95
|
+
target="${ifDefined(target)}"
|
|
96
|
+
class="${classMap({
|
|
97
|
+
[variant]: true,
|
|
98
|
+
[size ?? '']: !!size,
|
|
99
|
+
anchor: true,
|
|
100
|
+
inline,
|
|
101
|
+
block,
|
|
102
|
+
danger,
|
|
103
|
+
disabled,
|
|
104
|
+
hasIcon,
|
|
105
|
+
loading,
|
|
106
|
+
plain,
|
|
107
|
+
warning,
|
|
108
|
+
})}">${content}</a>`;
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
return html `
|
|
181
112
|
<div id="button"
|
|
182
113
|
class="${classMap({
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
<pf-icon role="presentation"
|
|
196
|
-
icon="${ifDefined(this.icon)}"
|
|
197
|
-
set="${ifDefined(this.iconSet)}"
|
|
198
|
-
?hidden="${!this.icon}"></pf-icon>
|
|
199
|
-
<pf-spinner size="md"
|
|
200
|
-
?hidden="${!this.loading}"
|
|
201
|
-
aria-label="${this.getAttribute('loading-label') ?? 'loading'}"></pf-spinner>
|
|
202
|
-
</slot>
|
|
203
|
-
<slot id="text"></slot>
|
|
204
|
-
</div>
|
|
205
|
-
`;
|
|
206
|
-
}
|
|
207
|
-
async formDisabledCallback() {
|
|
208
|
-
await this.updateComplete;
|
|
209
|
-
this.requestUpdate();
|
|
114
|
+
[variant]: true,
|
|
115
|
+
[size ?? '']: !!size,
|
|
116
|
+
inline,
|
|
117
|
+
block,
|
|
118
|
+
danger,
|
|
119
|
+
disabled,
|
|
120
|
+
hasIcon,
|
|
121
|
+
loading,
|
|
122
|
+
plain,
|
|
123
|
+
warning,
|
|
124
|
+
})}">${content}</div>`;
|
|
125
|
+
}
|
|
210
126
|
}
|
|
211
127
|
};
|
|
212
128
|
_PfButton_internals = new WeakMap();
|
|
@@ -254,24 +170,37 @@ PfButton.styles = [
|
|
|
254
170
|
iconStyles,
|
|
255
171
|
styles,
|
|
256
172
|
];
|
|
173
|
+
PfButton.version = "4.0.1";
|
|
257
174
|
__decorate([
|
|
258
|
-
property({
|
|
259
|
-
], PfButton.prototype, "
|
|
175
|
+
property({ reflect: true })
|
|
176
|
+
], PfButton.prototype, "type", void 0);
|
|
260
177
|
__decorate([
|
|
261
|
-
property(
|
|
262
|
-
], PfButton.prototype, "
|
|
178
|
+
property()
|
|
179
|
+
], PfButton.prototype, "label", void 0);
|
|
180
|
+
__decorate([
|
|
181
|
+
property()
|
|
182
|
+
], PfButton.prototype, "value", void 0);
|
|
183
|
+
__decorate([
|
|
184
|
+
property()
|
|
185
|
+
], PfButton.prototype, "name", void 0);
|
|
186
|
+
__decorate([
|
|
187
|
+
property({ reflect: true, type: Boolean })
|
|
188
|
+
], PfButton.prototype, "disabled", void 0);
|
|
263
189
|
__decorate([
|
|
264
190
|
property({ type: Boolean, reflect: true })
|
|
265
|
-
], PfButton.prototype, "
|
|
191
|
+
], PfButton.prototype, "loading", void 0);
|
|
266
192
|
__decorate([
|
|
267
193
|
property({ reflect: true })
|
|
268
194
|
], PfButton.prototype, "size", void 0);
|
|
269
195
|
__decorate([
|
|
270
|
-
property({
|
|
271
|
-
], PfButton.prototype, "
|
|
196
|
+
property({ type: Boolean, reflect: true })
|
|
197
|
+
], PfButton.prototype, "warning", void 0);
|
|
272
198
|
__decorate([
|
|
273
199
|
property({ type: Boolean, reflect: true })
|
|
274
200
|
], PfButton.prototype, "danger", void 0);
|
|
201
|
+
__decorate([
|
|
202
|
+
property({ type: Boolean, reflect: true })
|
|
203
|
+
], PfButton.prototype, "plain", void 0);
|
|
275
204
|
__decorate([
|
|
276
205
|
property({ reflect: true })
|
|
277
206
|
], PfButton.prototype, "variant", void 0);
|
|
@@ -281,24 +210,18 @@ __decorate([
|
|
|
281
210
|
__decorate([
|
|
282
211
|
property({ reflect: true, type: Boolean })
|
|
283
212
|
], PfButton.prototype, "block", void 0);
|
|
284
|
-
__decorate([
|
|
285
|
-
property({ reflect: true, type: Boolean })
|
|
286
|
-
], PfButton.prototype, "disabled", void 0);
|
|
287
|
-
__decorate([
|
|
288
|
-
property({ reflect: true })
|
|
289
|
-
], PfButton.prototype, "type", void 0);
|
|
290
213
|
__decorate([
|
|
291
214
|
property()
|
|
292
|
-
], PfButton.prototype, "
|
|
215
|
+
], PfButton.prototype, "icon", void 0);
|
|
293
216
|
__decorate([
|
|
294
|
-
property()
|
|
295
|
-
], PfButton.prototype, "
|
|
217
|
+
property({ attribute: 'icon-set' })
|
|
218
|
+
], PfButton.prototype, "iconSet", void 0);
|
|
296
219
|
__decorate([
|
|
297
|
-
property()
|
|
298
|
-
], PfButton.prototype, "
|
|
220
|
+
property({ reflect: true })
|
|
221
|
+
], PfButton.prototype, "href", void 0);
|
|
299
222
|
__decorate([
|
|
300
|
-
property()
|
|
301
|
-
], PfButton.prototype, "
|
|
223
|
+
property({ reflect: true })
|
|
224
|
+
], PfButton.prototype, "target", void 0);
|
|
302
225
|
PfButton = __decorate([
|
|
303
226
|
customElement('pf-button')
|
|
304
227
|
], PfButton);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pf-button.js","sourceRoot":"","sources":["pf-button.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport { customElement } from 'lit/decorators/custom-element.js';\nimport { property } from 'lit/decorators/property.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport { InternalsController } from '@patternfly/pfe-core/controllers/internals-controller.js';\nimport { SlotController } from '@patternfly/pfe-core/controllers/slot-controller.js';\n\nimport '@patternfly/elements/pf-icon/pf-icon.js';\nimport '@patternfly/elements/pf-spinner/pf-spinner.js';\n\nimport tokensStyles from './pf-button-tokens.css';\nimport iconStyles from './pf-button-icon.css';\n\nimport styles from './pf-button.css';\n\nexport type ButtonVariant = (\n | 'primary'\n | 'secondary'\n | 'tertiary'\n | 'control'\n | 'link'\n);\n\n/**\n * A **button** is a box area or text that communicates and triggers user actions when\n * clicked or selected. Buttons can be used to communicate and immediately trigger\n * actions a user can take in an application, like submitting a form, canceling a\n * process, or creating a new object. Buttons can also be used to take a user to a\n * new location, like another page inside of a web application, or an external site\n * such as help or documentation..\n * @summary Allows users to perform an action when triggered\n * @cssprop {<length>} --pf-c-button--FontSize {@default `1rem`}\n * @cssprop --pf-c-button--FontWeight {@default `400`}\n * @cssprop {<number>} --pf-c-button--LineHeight {@default `1.5`}\n * @cssprop {<length>} --pf-c-button--PaddingTop {@default `0.375rem`}\n * @cssprop {<length>} --pf-c-button--PaddingLeft {@default `1rem`}\n * @cssprop {<length>} --pf-c-button--PaddingBottom {@default `0.375rem`}\n * @cssprop {<length>} --pf-c-button--PaddingRight {@default `1rem`}\n * @cssprop {<length>|<percentage>} --pf-c-button--BorderRadius {@default `3px`}\n * @cssprop {<color>} --pf-c-button--after--BorderColor {@default `transparent`}\n * @cssprop {<length>} --pf-c-button--after--BorderRadius {@default `3px`}\n * @cssprop {<length>} --pf-c-button--after--BorderWidth {@default `1px`}\n * @cssprop {<length>} --pf-c-button--active--after--BorderWidth {@default `2px`}\n * @cssprop {<length>} --pf-c-button--hover--after--BorderWidth {@default `2px`}\n * @cssprop {<length>} --pf-c-button--focus--after--BorderWidth {@default `2px`}\n * @cssprop {<color>} --pf-c-button--m-primary--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-primary--BackgroundColor {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-primary--active--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-primary--active--BackgroundColor {@default `#004080`}\n * @cssprop {<color>} --pf-c-button--m-primary--focus--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-primary--focus--BackgroundColor {@default `#004080`}\n * @cssprop {<color>} --pf-c-button--m-primary--hover--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-primary--hover--BackgroundColor {@default `#004080`}\n * @cssprop {<color>} --pf-c-button--m-secondary--Color {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-secondary--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--active--Color {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-secondary--active--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--active--BorderColor {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-secondary--focus--Color {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-secondary--focus--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--focus--BorderColor {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-secondary--hover--Color {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-secondary--hover--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--hover--BorderColor {@default `#06c`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--active--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--active--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--active--BorderColor {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--focus--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--focus--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--focus--BorderColor {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--hover--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--hover--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-tertiary--hover--BorderColor {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-danger--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-danger--BackgroundColor {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-button--m-danger--active--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-danger--active--BackgroundColor {@default `#a30000`}\n * @cssprop {<color>} --pf-c-button--m-danger--focus--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-danger--focus--BackgroundColor {@default `#a30000`}\n * @cssprop {<color>} --pf-c-button--m-danger--hover--Color {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-danger--hover--BackgroundColor {@default `#a30000`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--Color {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--BorderColor {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--active--Color {@default `#a30000`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--active--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--active--BorderColor {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--focus--Color {@default `#a30000`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--focus--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--focus--BorderColor {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--hover--Color {@default `#a30000`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--hover--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-secondary--m-danger--hover--BorderColor {@default `#c9190b`}\n * @cssprop {<color>} --pf-c-button--m-control--disabled--BackgroundColor {@default `#f0f0f0`}\n * @cssprop {<length>} --pf-c-button--m-control--BorderRadius {@default `0`}\n * @cssprop {<length>} --pf-c-button--m-control--after--BorderWidth {@default `1px`}\n * @cssprop {<color>} --pf-c-button--m-control--after--BorderTopColor {@default `#f0f0f0`}\n * @cssprop {<color>} --pf-c-button--m-control--after--BorderRightColor {@default `#f0f0f0`}\n * @cssprop {<color>} --pf-c-button--m-control--after--BorderBottomColor {@default `#8a8d90`}\n * @cssprop {<color>} --pf-c-button--m-control--after--BorderLeftColor {@default `#f0f0f0`}\n * @cssprop {<color>} --pf-c-button--m-control--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-control--BackgroundColor {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-control--active--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-control--active--BackgroundColor {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-control--active--BorderBottomColor {@default `#06c`}\n * @cssprop {<length>} --pf-c-button--m-control--active--after--BorderBottomWidth {@default `2px`}\n * @cssprop {<color>} --pf-c-button--m-control--focus--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-control--focus--BackgroundColor {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-control--focus--BorderBottomColor {@default `#06c`}\n * @cssprop {<length>} --pf-c-button--m-control--focus--after--BorderBottomWidth {@default `2px`}\n * @cssprop {<color>} --pf-c-button--m-control--hover--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-control--hover--BackgroundColor {@default `#fff`}\n * @cssprop {<color>} --pf-c-button--m-control--hover--BorderBottomColor {@default `#06c`}\n * @cssprop {<length>} --pf-c-button--m-control--hover--after--BorderBottomWidth {@default `2px`}\n * @cssprop {<color>} --pf-c-button--disabled--Color {@default `#6a6e73`}\n * @cssprop {<color>} --pf-c-button--disabled--BackgroundColor {@default `#d2d2d2`}\n * @cssprop {<color>} --pf-c-button--disabled--after--BorderColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-warning--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-warning--BackgroundColor {@default `#f0ab00`}\n * @cssprop {<color>} --pf-c-button--m-warning--active--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-warning--active--BackgroundColor {@default `#c58c00`}\n * @cssprop {<color>} --pf-c-button--m-warning--focus--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-warning--focus--BackgroundColor {@default `#c58c00`}\n * @cssprop {<color>} --pf-c-button--m-warning--hover--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-warning--hover--BackgroundColor {@default `#c58c00`}\n * @cssprop {<color>} --pf-c-button--m-plain--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-plain--Color {@default `#6a6e73`}\n * @cssprop {<color>} --pf-c-button--m-plain--hover--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-plain--hover--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-plain--focus--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-plain--focus--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-plain--active--BackgroundColor {@default `transparent`}\n * @cssprop {<color>} --pf-c-button--m-plain--active--Color {@default `#151515`}\n * @cssprop {<color>} --pf-c-button--m-plain--disabled--Color {@default `#d2d2d2`}\n * @cssprop {<color>} --pf-c-button--m-plain--disabled--BackgroundColor {@default `transparent`}\n * @attr {string} loading-label - ARIA label for the loading indicator {@default `'loading'`}\n */\n@customElement('pf-button')\nexport class PfButton extends LitElement {\n static readonly formAssociated = true;\n\n static readonly styles = [\n tokensStyles,\n iconStyles,\n styles,\n ];\n\n /** Represents the state of a stateful button */\n @property({ type: Boolean, reflect: true }) loading = false;\n\n /** Applies plain styles */\n @property({ type: Boolean, reflect: true }) plain = false;\n\n /** Not as urgent as danger */\n @property({ type: Boolean, reflect: true }) warning = false;\n\n /** Changes the size of the button. */\n @property({ reflect: true }) size?: 'small' | 'large';\n\n /** Icon set for the `icon` property */\n @property({ attribute: 'icon-set' }) iconSet?: string;\n\n /**\n * Use danger buttons for actions a user can take that are potentially\n * destructive or difficult/impossible to undo, like deleting or removing\n * user data.\n */\n @property({ type: Boolean, reflect: true }) danger = false;\n\n /**\n * Changes the style of the button.\n * - Primary: Used for the most important call to action on a page. Try to\n * limit primary buttons to one per page.\n * - Secondary: Use secondary buttons for general actions on a page, that\n * don’t require as much emphasis as primary button actions. For example,\n * you can use secondary buttons where there are multiple actions, like in\n * toolbars or data lists.\n * - Tertiary: Tertiary buttons are flexible and can be used as needed.\n */\n @property({ reflect: true }) variant: ButtonVariant = 'primary';\n\n @property({ reflect: true, type: Boolean }) inline = false;\n\n @property({ reflect: true, type: Boolean }) block = false;\n\n /** Disables the button */\n @property({ reflect: true, type: Boolean }) disabled = false;\n\n @property({ reflect: true }) type?: 'button' | 'submit' | 'reset';\n\n /** Accessible name for the button, use when the button does not have slotted text */\n @property() label?: string;\n\n @property() value?: string;\n\n @property() name?: string;\n\n /** Shorthand for the `icon` slot, the value is icon name */\n @property() icon?: string;\n\n #internals = InternalsController.of(this, { role: 'button' });\n\n #slots = new SlotController(this, 'icon', null);\n\n get #disabled() {\n return this.disabled || this.#internals.formDisabled;\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.addEventListener('click', this.#onClick);\n this.addEventListener('keydown', this.#onKeydown);\n this.tabIndex = 0;\n }\n\n protected override willUpdate(): void {\n this.#internals.ariaLabel = this.label || null;\n this.#internals.ariaDisabled = String(!!this.disabled);\n }\n\n protected override render() {\n const hasIcon = !!this.icon || !!this.loading || this.#slots.hasSlotted('icon');\n const { warning, variant, danger, loading, plain, inline, block, size } = this;\n const disabled = this.#disabled;\n return html`\n <div id=\"button\"\n class=\"${classMap({\n [variant]: true,\n [size ?? '']: !!size,\n inline,\n block,\n danger,\n disabled,\n hasIcon,\n loading,\n plain,\n warning,\n })}\">\n <slot id=\"icon\" part=\"icon\" name=\"icon\" ?hidden=\"${!hasIcon}\">\n <pf-icon role=\"presentation\"\n icon=\"${ifDefined(this.icon)}\"\n set=\"${ifDefined(this.iconSet)}\"\n ?hidden=\"${!this.icon}\"></pf-icon>\n <pf-spinner size=\"md\"\n ?hidden=\"${!this.loading}\"\n aria-label=\"${this.getAttribute('loading-label') ?? 'loading'}\"></pf-spinner>\n </slot>\n <slot id=\"text\"></slot>\n </div>\n `;\n }\n\n async formDisabledCallback() {\n await this.updateComplete;\n this.requestUpdate();\n }\n\n #onClick() {\n if (!this.#disabled) {\n switch (this.type) {\n case 'reset':\n return this.#internals.reset();\n default:\n return this.#internals.submit();\n }\n }\n }\n\n #onKeydown(event: KeyboardEvent) {\n switch (event.key) {\n case ' ':\n event.preventDefault();\n event.stopPropagation();\n if (this.dispatchEvent(new MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n view: window,\n }))) {\n this.#onClick();\n }\n break;\n case 'Enter':\n if (this.dispatchEvent(new MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n view: window,\n }))) {\n this.#onClick();\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-button': PfButton;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"pf-button.js","sourceRoot":"","sources":["pf-button.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html, type TemplateResult } from 'lit';\nimport { customElement } from 'lit/decorators/custom-element.js';\nimport { property } from 'lit/decorators/property.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport { InternalsController } from '@patternfly/pfe-core/controllers/internals-controller.js';\nimport { SlotController } from '@patternfly/pfe-core/controllers/slot-controller.js';\n\nimport '@patternfly/elements/pf-icon/pf-icon.js';\nimport '@patternfly/elements/pf-spinner/pf-spinner.js';\n\nimport tokensStyles from './pf-button-tokens.css';\nimport iconStyles from './pf-button-icon.css';\n\nimport styles from './pf-button.css';\n\nexport type ButtonVariant = (\n | 'primary'\n | 'secondary'\n | 'tertiary'\n | 'control'\n | 'link'\n);\n\n/**\n * A **button** is a box area or text that communicates and triggers user actions when\n * clicked or selected. Buttons can be used to communicate and immediately trigger\n * actions a user can take in an application, like submitting a form, canceling a\n * process, or creating a new object. Buttons can also be used to take a user to a\n * new location, like another page inside of a web application, or an external site\n * such as help or documentation..\n * @summary Allows users to perform an action when triggered\n * @cssprop {<length>} [--pf-c-button--FontSize=1rem]\n * @cssprop [--pf-c-button--FontWeight=400]\n * @cssprop {<number>} [--pf-c-button--LineHeight=1.5]\n * @cssprop {<length>} [--pf-c-button--PaddingTop=0.375rem]\n * @cssprop {<length>} [--pf-c-button--PaddingLeft=1rem]\n * @cssprop {<length>} [--pf-c-button--PaddingBottom=0.375rem]\n * @cssprop {<length>} [--pf-c-button--PaddingRight=1rem]\n * @cssprop {<length>|<percentage>} [--pf-c-button--BorderRadius=3px]\n * @cssprop {<color>} [--pf-c-button--after--BorderColor=transparent]\n * @cssprop {<length>} [--pf-c-button--after--BorderRadius=3px]\n * @cssprop {<length>} [--pf-c-button--after--BorderWidth=1px]\n * @cssprop {<length>} [--pf-c-button--active--after--BorderWidth=2px]\n * @cssprop {<length>} [--pf-c-button--hover--after--BorderWidth=2px]\n * @cssprop {<length>} [--pf-c-button--focus--after--BorderWidth=2px]\n * @cssprop {<color>} [--pf-c-button--m-primary--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-primary--BackgroundColor=#06c]\n * @cssprop {<color>} [--pf-c-button--m-primary--active--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-primary--active--BackgroundColor=#004080]\n * @cssprop {<color>} [--pf-c-button--m-primary--focus--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-primary--focus--BackgroundColor=#004080]\n * @cssprop {<color>} [--pf-c-button--m-primary--hover--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-primary--hover--BackgroundColor=#004080]\n * @cssprop {<color>} [--pf-c-button--m-secondary--Color=#06c]\n * @cssprop {<color>} [--pf-c-button--m-secondary--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--active--Color=#06c]\n * @cssprop {<color>} [--pf-c-button--m-secondary--active--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--active--BorderColor=#06c]\n * @cssprop {<color>} [--pf-c-button--m-secondary--focus--Color=#06c]\n * @cssprop {<color>} [--pf-c-button--m-secondary--focus--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--focus--BorderColor=#06c]\n * @cssprop {<color>} [--pf-c-button--m-secondary--hover--Color=#06c]\n * @cssprop {<color>} [--pf-c-button--m-secondary--hover--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--hover--BorderColor=#06c]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--active--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--active--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--active--BorderColor=#151515]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--focus--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--focus--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--focus--BorderColor=#151515]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--hover--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--hover--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-tertiary--hover--BorderColor=#151515]\n * @cssprop {<color>} [--pf-c-button--m-danger--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-danger--BackgroundColor=#c9190b]\n * @cssprop {<color>} [--pf-c-button--m-danger--active--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-danger--active--BackgroundColor=#a30000]\n * @cssprop {<color>} [--pf-c-button--m-danger--focus--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-danger--focus--BackgroundColor=#a30000]\n * @cssprop {<color>} [--pf-c-button--m-danger--hover--Color=#fff]\n * @cssprop {<color>} [--pf-c-button--m-danger--hover--BackgroundColor=#a30000]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--Color=#c9190b]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--BorderColor=#c9190b]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--active--Color=#a30000]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--active--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--active--BorderColor=#c9190b]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--focus--Color=#a30000]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--focus--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--focus--BorderColor=#c9190b]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--hover--Color=#a30000]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--hover--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-secondary--m-danger--hover--BorderColor=#c9190b]\n * @cssprop {<color>} [--pf-c-button--m-control--disabled--BackgroundColor=#f0f0f0]\n * @cssprop {<length>} [--pf-c-button--m-control--BorderRadius=0]\n * @cssprop {<length>} [--pf-c-button--m-control--after--BorderWidth=1px]\n * @cssprop {<color>} [--pf-c-button--m-control--after--BorderTopColor=#f0f0f0]\n * @cssprop {<color>} [--pf-c-button--m-control--after--BorderRightColor=#f0f0f0]\n * @cssprop {<color>} [--pf-c-button--m-control--after--BorderBottomColor=#8a8d90]\n * @cssprop {<color>} [--pf-c-button--m-control--after--BorderLeftColor=#f0f0f0]\n * @cssprop {<color>} [--pf-c-button--m-control--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-control--BackgroundColor=#fff]\n * @cssprop {<color>} [--pf-c-button--m-control--active--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-control--active--BackgroundColor=#fff]\n * @cssprop {<color>} [--pf-c-button--m-control--active--BorderBottomColor=#06c]\n * @cssprop {<length>} [--pf-c-button--m-control--active--after--BorderBottomWidth=2px]\n * @cssprop {<color>} [--pf-c-button--m-control--focus--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-control--focus--BackgroundColor=#fff]\n * @cssprop {<color>} [--pf-c-button--m-control--focus--BorderBottomColor=#06c]\n * @cssprop {<length>} [--pf-c-button--m-control--focus--after--BorderBottomWidth=2px]\n * @cssprop {<color>} [--pf-c-button--m-control--hover--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-control--hover--BackgroundColor=#fff]\n * @cssprop {<color>} [--pf-c-button--m-control--hover--BorderBottomColor=#06c]\n * @cssprop {<length>} [--pf-c-button--m-control--hover--after--BorderBottomWidth=2px]\n * @cssprop {<color>} [--pf-c-button--disabled--Color=#6a6e73]\n * @cssprop {<color>} [--pf-c-button--disabled--BackgroundColor=#d2d2d2]\n * @cssprop {<color>} [--pf-c-button--disabled--after--BorderColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-warning--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-warning--BackgroundColor=#f0ab00]\n * @cssprop {<color>} [--pf-c-button--m-warning--active--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-warning--active--BackgroundColor=#c58c00]\n * @cssprop {<color>} [--pf-c-button--m-warning--focus--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-warning--focus--BackgroundColor=#c58c00]\n * @cssprop {<color>} [--pf-c-button--m-warning--hover--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-warning--hover--BackgroundColor=#c58c00]\n * @cssprop {<color>} [--pf-c-button--m-plain--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-plain--Color=#6a6e73]\n * @cssprop {<color>} [--pf-c-button--m-plain--hover--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-plain--hover--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-plain--focus--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-plain--focus--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-plain--active--BackgroundColor=transparent]\n * @cssprop {<color>} [--pf-c-button--m-plain--active--Color=#151515]\n * @cssprop {<color>} [--pf-c-button--m-plain--disabled--Color=#d2d2d2]\n * @cssprop {<color>} [--pf-c-button--m-plain--disabled--BackgroundColor=transparent]\n * @attr {string} [loading-label='loading'] - ARIA label for the loading indicator\n */\n@customElement('pf-button')\nexport class PfButton extends LitElement {\n static readonly formAssociated = true;\n\n static readonly styles: CSSStyleSheet[] = [\n tokensStyles,\n iconStyles,\n styles,\n ];\n\n @property({ reflect: true }) type?: 'button' | 'submit' | 'reset';\n\n /** Accessible name for the button, use when the button does not have slotted text */\n @property() label?: string;\n\n /** Form value for the button */\n @property() value?: string;\n\n /** Form element name for the button */\n @property() name?: string;\n\n /** Disables the button */\n @property({ reflect: true, type: Boolean }) disabled = false;\n\n /** Represents the state of a stateful button */\n @property({ type: Boolean, reflect: true }) loading = false;\n\n /** Changes the size of the button. */\n @property({ reflect: true }) size?: 'small' | 'large';\n\n /** Not as urgent as danger */\n @property({ type: Boolean, reflect: true }) warning = false;\n\n /**\n * Use danger buttons for actions a user can take that are potentially\n * destructive or difficult/impossible to undo, like deleting or removing\n * user data.\n */\n @property({ type: Boolean, reflect: true }) danger = false;\n\n /** Applies plain styles */\n @property({ type: Boolean, reflect: true }) plain = false;\n\n /**\n * Changes the style of the button.\n * - Primary: Used for the most important call to action on a page. Try to\n * limit primary buttons to one per page.\n * - Secondary: Use secondary buttons for general actions on a page, that\n * don’t require as much emphasis as primary button actions. For example,\n * you can use secondary buttons where there are multiple actions, like in\n * toolbars or data lists.\n * - Tertiary: Tertiary buttons are flexible and can be used as needed.\n */\n @property({ reflect: true }) variant: ButtonVariant = 'primary';\n\n @property({ reflect: true, type: Boolean }) inline = false;\n\n @property({ reflect: true, type: Boolean }) block = false;\n\n /** Shorthand for the `icon` slot, the value is icon name */\n @property() icon?: string;\n\n /** Icon set for the `icon` property */\n @property({ attribute: 'icon-set' }) iconSet?: string;\n\n /** Store the URL Link */\n @property({ reflect: true }) href?: string;\n\n /** Redirecting the URL Link to new Tab */\n @property({ reflect: true }) target?: string;\n\n #internals = InternalsController.of(this, { role: this.variant === 'link' ? 'none' : 'button' });\n\n #slots = new SlotController(this, 'icon', null);\n\n get #disabled() {\n return this.disabled || this.#internals.formDisabled;\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.addEventListener('click', this.#onClick);\n this.addEventListener('keydown', this.#onKeydown);\n }\n\n protected override willUpdate(): void {\n this.#internals.ariaLabel = this.label || null;\n this.#internals.ariaDisabled = String(!!this.disabled);\n const isLink = this.variant === 'link' && this.href;\n if (isLink) {\n this.removeAttribute('tabindex');\n this.#internals.role = 'none';\n } else {\n this.tabIndex = 0;\n this.#internals.role = 'button';\n }\n }\n\n async formDisabledCallback(): Promise<void> {\n await this.updateComplete;\n this.requestUpdate();\n }\n\n override render(): TemplateResult<1> {\n const hasIcon = !!this.icon || !!this.loading || this.#slots.hasSlotted('icon');\n const { warning, variant, danger, loading, plain, inline, block, size, href, target } = this;\n\n const disabled = this.#disabled;\n\n const content = html`\n <slot id=\"icon\"\n part=\"icon\"\n name=\"icon\"\n ?hidden=\"${!hasIcon}\">\n <pf-icon role=\"presentation\"\n icon=\"${ifDefined(this.icon)}\"\n set=\"${ifDefined(this.iconSet)}\"\n ?hidden=\"${!this.icon || this.loading}\"></pf-icon>\n <pf-spinner size=\"md\"\n ?hidden=\"${!this.loading}\"\n aria-label=\"${this.getAttribute('loading-label') ?? 'loading'}\"></pf-spinner>\n </slot>\n <slot id=\"text\"></slot>\n `;\n\n if (variant === 'link' && href) {\n return html`\n <a id=\"button\"\n href=\"${href}\"\n target=\"${ifDefined(target)}\"\n class=\"${classMap({\n [variant]: true,\n [size ?? '']: !!size,\n anchor: true,\n inline,\n block,\n danger,\n disabled,\n hasIcon,\n loading,\n plain,\n warning,\n })}\">${content}</a>`;\n } else {\n return html`\n <div id=\"button\"\n class=\"${classMap({\n [variant]: true,\n [size ?? '']: !!size,\n inline,\n block,\n danger,\n disabled,\n hasIcon,\n loading,\n plain,\n warning,\n })}\">${content}</div>`;\n }\n }\n\n #onClick() {\n if (!this.#disabled) {\n switch (this.type) {\n case 'reset':\n return this.#internals.reset();\n default:\n return this.#internals.submit();\n }\n }\n }\n\n #onKeydown(event: KeyboardEvent) {\n switch (event.key) {\n case ' ':\n event.preventDefault();\n event.stopPropagation();\n if (this.dispatchEvent(new MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n view: window,\n }))) {\n this.#onClick();\n }\n break;\n case 'Enter':\n if (this.dispatchEvent(new MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n view: window,\n }))) {\n this.#onClick();\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-button': PfButton;\n }\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { test } from '@playwright/test';
|
|
2
2
|
import { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';
|
|
3
|
+
import { SSRPage } from '@patternfly/pfe-tools/test/playwright/SSRPage.js';
|
|
3
4
|
const tagName = 'pf-button';
|
|
4
5
|
test.describe(tagName, () => {
|
|
5
6
|
test('snapshot', async ({ page }) => {
|
|
@@ -7,5 +8,16 @@ test.describe(tagName, () => {
|
|
|
7
8
|
await componentPage.navigate();
|
|
8
9
|
await componentPage.snapshot();
|
|
9
10
|
});
|
|
11
|
+
test('ssr', async ({ browser }) => {
|
|
12
|
+
const fixture = new SSRPage({
|
|
13
|
+
tagName,
|
|
14
|
+
browser,
|
|
15
|
+
demoDir: new URL('../demo/', import.meta.url),
|
|
16
|
+
importSpecifiers: [
|
|
17
|
+
`@patternfly/elements/${tagName}/${tagName}.js`,
|
|
18
|
+
],
|
|
19
|
+
});
|
|
20
|
+
await fixture.snapshots();
|
|
21
|
+
});
|
|
10
22
|
});
|
|
11
23
|
//# sourceMappingURL=pf-button.e2e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pf-button.e2e.js","sourceRoot":"","sources":["pf-button.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;
|
|
1
|
+
{"version":3,"file":"pf-button.e2e.js","sourceRoot":"","sources":["pf-button.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,MAAM,kDAAkD,CAAC;AAE3E,MAAM,OAAO,GAAG,WAAW,CAAC;AAE5B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IAC1B,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAClC,MAAM,aAAa,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC/B,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAChC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC1B,OAAO;YACP,OAAO;YACP,OAAO,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7C,gBAAgB,EAAE;gBAChB,wBAAwB,OAAO,IAAI,OAAO,KAAK;aAChD;SACF,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { test } from '@playwright/test';\nimport { PfeDemoPage } from '@patternfly/pfe-tools/test/playwright/PfeDemoPage.js';\nimport { SSRPage } from '@patternfly/pfe-tools/test/playwright/SSRPage.js';\n\nconst tagName = 'pf-button';\n\ntest.describe(tagName, () => {\n test('snapshot', async ({ page }) => {\n const componentPage = new PfeDemoPage(page, tagName);\n await componentPage.navigate();\n await componentPage.snapshot();\n });\n\n test('ssr', async ({ browser }) => {\n const fixture = new SSRPage({\n tagName,\n browser,\n demoDir: new URL('../demo/', import.meta.url),\n importSpecifiers: [\n `@patternfly/elements/${tagName}/${tagName}.js`,\n ],\n });\n await fixture.snapshots();\n });\n});\n"]}
|