@patternfly/elements 4.1.0 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +13726 -12682
- package/package.json +17 -14
- package/pf-accordion/pf-accordion-header.css +37 -0
- package/pf-accordion/pf-accordion-header.d.ts +0 -61
- package/pf-accordion/pf-accordion-header.js +180 -2
- package/pf-accordion/pf-accordion-header.js.map +1 -1
- package/pf-accordion/pf-accordion-panel.css +12 -0
- package/pf-accordion/pf-accordion-panel.d.ts +0 -34
- package/pf-accordion/pf-accordion-panel.js +87 -2
- package/pf-accordion/pf-accordion-panel.js.map +1 -1
- package/pf-accordion/pf-accordion.css +62 -0
- package/pf-accordion/pf-accordion.d.ts +1 -64
- package/pf-accordion/pf-accordion.js +156 -2
- package/pf-accordion/pf-accordion.js.map +1 -1
- package/pf-avatar/pf-avatar.css +14 -0
- package/pf-avatar/pf-avatar.d.ts +1 -14
- package/pf-avatar/pf-avatar.js +82 -2
- package/pf-avatar/pf-avatar.js.map +1 -1
- package/pf-back-to-top/pf-back-to-top.css +12 -0
- package/pf-back-to-top/pf-back-to-top.d.ts +1 -17
- package/pf-back-to-top/pf-back-to-top.js +87 -3
- package/pf-back-to-top/pf-back-to-top.js.map +1 -1
- package/pf-background-image/pf-background-image.css +7 -0
- package/pf-background-image/pf-background-image.d.ts +1 -8
- package/pf-background-image/pf-background-image.js +76 -2
- package/pf-background-image/pf-background-image.js.map +1 -1
- package/pf-badge/pf-badge.css +13 -0
- package/pf-badge/pf-badge.d.ts +1 -13
- package/pf-badge/pf-badge.js +53 -2
- package/pf-badge/pf-badge.js.map +1 -1
- package/pf-banner/pf-banner.css +21 -0
- package/pf-banner/pf-banner.d.ts +1 -19
- package/pf-banner/pf-banner.js +122 -2
- package/pf-banner/pf-banner.js.map +1 -1
- package/pf-button/pf-button-tokens.css +38 -0
- package/pf-button/pf-button.d.ts +1 -106
- package/pf-button/pf-button.js +837 -4
- package/pf-button/pf-button.js.map +1 -1
- package/pf-card/pf-card.css +24 -0
- package/pf-card/pf-card.d.ts +1 -38
- package/pf-card/pf-card.js +248 -2
- package/pf-card/pf-card.js.map +1 -1
- package/pf-chip/pf-chip-group.css +15 -0
- package/pf-chip/pf-chip-group.d.ts +0 -15
- package/pf-chip/pf-chip-group.js +111 -2
- package/pf-chip/pf-chip-group.js.map +1 -1
- package/pf-chip/pf-chip.css +30 -1
- package/pf-chip/pf-chip.d.ts +1 -20
- package/pf-chip/pf-chip.js +135 -2
- package/pf-chip/pf-chip.js.map +1 -1
- package/pf-clipboard-copy/pf-clipboard-copy.css +25 -0
- package/pf-clipboard-copy/pf-clipboard-copy.d.ts +1 -27
- package/pf-clipboard-copy/pf-clipboard-copy.js +318 -3
- package/pf-clipboard-copy/pf-clipboard-copy.js.map +1 -1
- package/pf-code-block/pf-code-block.css +11 -1
- package/pf-code-block/pf-code-block.js +70 -18
- package/pf-code-block/pf-code-block.js.map +1 -1
- package/pf-dropdown/pf-dropdown-group.js +40 -2
- package/pf-dropdown/pf-dropdown-group.js.map +1 -1
- package/pf-dropdown/pf-dropdown-item.css +10 -0
- package/pf-dropdown/pf-dropdown-item.d.ts +0 -27
- package/pf-dropdown/pf-dropdown-item.js +155 -2
- package/pf-dropdown/pf-dropdown-item.js.map +1 -1
- package/pf-dropdown/pf-dropdown-menu.js +39 -2
- package/pf-dropdown/pf-dropdown-menu.js.map +1 -1
- package/pf-dropdown/pf-dropdown.css +5 -0
- package/pf-dropdown/pf-dropdown.d.ts +1 -9
- package/pf-dropdown/pf-dropdown.js +350 -2
- package/pf-dropdown/pf-dropdown.js.map +1 -1
- package/pf-icon/pf-icon.css +1 -0
- package/pf-icon/pf-icon.d.ts +1 -3
- package/pf-icon/pf-icon.js +44 -4
- package/pf-icon/pf-icon.js.map +1 -1
- package/pf-jump-links/pf-jump-links-item.css +7 -1
- package/pf-jump-links/pf-jump-links-item.d.ts +0 -8
- package/pf-jump-links/pf-jump-links-item.js +77 -2
- package/pf-jump-links/pf-jump-links-item.js.map +1 -1
- package/pf-jump-links/pf-jump-links-list.css +3 -0
- package/pf-jump-links/pf-jump-links-list.d.ts +0 -5
- package/pf-jump-links/pf-jump-links-list.js +20 -2
- package/pf-jump-links/pf-jump-links-list.js.map +1 -1
- package/pf-jump-links/pf-jump-links.css +36 -0
- package/pf-jump-links/pf-jump-links.d.ts +1 -38
- package/pf-jump-links/pf-jump-links.js +179 -2
- package/pf-jump-links/pf-jump-links.js.map +1 -1
- package/pf-label/pf-label.css +51 -1
- package/pf-label/pf-label.d.ts +1 -58
- package/pf-label/pf-label.js +257 -2
- package/pf-label/pf-label.js.map +1 -1
- package/pf-modal/pf-modal.css +11 -0
- package/pf-modal/pf-modal.d.ts +1 -24
- package/pf-modal/pf-modal.js +215 -2
- package/pf-modal/pf-modal.js.map +1 -1
- package/pf-panel/pf-panel.css +29 -0
- package/pf-panel/pf-panel.d.ts +1 -32
- package/pf-panel/pf-panel.js +204 -2
- package/pf-panel/pf-panel.js.map +1 -1
- package/pf-popover/pf-popover.css +33 -0
- package/pf-popover/pf-popover.d.ts +1 -108
- package/pf-popover/pf-popover.js +251 -3
- package/pf-popover/pf-popover.js.map +1 -1
- package/pf-progress/pf-progress.css +19 -0
- package/pf-progress/pf-progress.d.ts +1 -57
- package/pf-progress/pf-progress.js +231 -2
- package/pf-progress/pf-progress.js.map +1 -1
- package/pf-progress-stepper/pf-progress-step.js +126 -2
- package/pf-progress-stepper/pf-progress-step.js.map +1 -1
- package/pf-progress-stepper/pf-progress-stepper.css +96 -0
- package/pf-progress-stepper/pf-progress-stepper.d.ts +1 -115
- package/pf-progress-stepper/pf-progress-stepper.js +326 -2
- package/pf-progress-stepper/pf-progress-stepper.js.map +1 -1
- package/pf-search-input/pf-search-input.css +308 -0
- package/pf-search-input/pf-search-input.d.ts +75 -0
- package/pf-search-input/pf-search-input.js +630 -0
- package/pf-search-input/pf-search-input.js.map +1 -0
- package/pf-search-input/test/pf-search-input.e2e.d.ts +1 -0
- package/pf-search-input/test/pf-search-input.e2e.js +23 -0
- package/pf-search-input/test/pf-search-input.e2e.js.map +1 -0
- package/pf-search-input/test/pf-search-input.spec.d.ts +1 -0
- package/pf-search-input/test/pf-search-input.spec.js +1021 -0
- package/pf-search-input/test/pf-search-input.spec.js.map +1 -0
- package/pf-select/pf-option-group.js +27 -2
- package/pf-select/pf-option-group.js.map +1 -1
- package/pf-select/pf-option.css +9 -1
- package/pf-select/pf-option.js +83 -2
- package/pf-select/pf-option.js.map +1 -1
- package/pf-select/pf-select.css +157 -0
- package/pf-select/pf-select.d.ts +1 -158
- package/pf-select/pf-select.js +542 -5
- package/pf-select/pf-select.js.map +1 -1
- package/pf-spinner/pf-spinner.css +13 -0
- package/pf-spinner/pf-spinner.d.ts +1 -14
- package/pf-spinner/pf-spinner.js +101 -2
- package/pf-spinner/pf-spinner.js.map +1 -1
- package/pf-switch/pf-switch.css +22 -0
- package/pf-switch/pf-switch.d.ts +1 -30
- package/pf-switch/pf-switch.js +156 -2
- package/pf-switch/pf-switch.js.map +1 -1
- package/pf-table/pf-caption.js +10 -2
- package/pf-table/pf-caption.js.map +1 -1
- package/pf-table/pf-table.css +211 -0
- package/pf-table/pf-table.d.ts +1 -635
- package/pf-table/pf-table.js +437 -2
- package/pf-table/pf-table.js.map +1 -1
- package/pf-table/pf-tbody.js +18 -2
- package/pf-table/pf-tbody.js.map +1 -1
- package/pf-table/pf-td.js +107 -2
- package/pf-table/pf-td.js.map +1 -1
- package/pf-table/pf-th.js +95 -2
- package/pf-table/pf-th.js.map +1 -1
- package/pf-table/pf-thead.js +20 -2
- package/pf-table/pf-thead.js.map +1 -1
- package/pf-table/pf-tr.js +89 -2
- package/pf-table/pf-tr.js.map +1 -1
- package/pf-tabs/pf-tab-panel.css +1 -0
- package/pf-tabs/pf-tab-panel.d.ts +0 -2
- package/pf-tabs/pf-tab-panel.js +19 -3
- package/pf-tabs/pf-tab-panel.js.map +1 -1
- package/pf-tabs/pf-tab.css +33 -0
- package/pf-tabs/pf-tab.d.ts +0 -40
- package/pf-tabs/pf-tab.js +231 -2
- package/pf-tabs/pf-tab.js.map +1 -1
- package/pf-tabs/pf-tabs.css +26 -0
- package/pf-tabs/pf-tabs.d.ts +1 -34
- package/pf-tabs/pf-tabs.js +307 -2
- package/pf-tabs/pf-tabs.js.map +1 -1
- package/pf-text-area/pf-text-area.css +125 -0
- package/pf-text-area/pf-text-area.d.ts +1 -125
- package/pf-text-area/pf-text-area.js +320 -2
- package/pf-text-area/pf-text-area.js.map +1 -1
- package/pf-text-input/pf-text-input.css +126 -0
- package/pf-text-input/pf-text-input.d.ts +1 -126
- package/pf-text-input/pf-text-input.js +395 -2
- package/pf-text-input/pf-text-input.js.map +1 -1
- package/pf-tile/pf-tile.css +28 -8
- package/pf-tile/pf-tile.d.ts +1 -24
- package/pf-tile/pf-tile.js +156 -2
- package/pf-tile/pf-tile.js.map +1 -1
- package/pf-timestamp/pf-timestamp.d.ts +1 -0
- package/pf-timestamp/pf-timestamp.js +10 -2
- package/pf-timestamp/pf-timestamp.js.map +1 -1
- package/pf-tooltip/pf-tooltip.css +10 -0
- package/pf-tooltip/pf-tooltip.d.ts +1 -79
- package/pf-tooltip/pf-tooltip.js +113 -3
- package/pf-tooltip/pf-tooltip.js.map +1 -1
- package/pfe.min.js +0 -7439
- package/pfe.min.js.LEGAL.txt +0 -57
- package/pfe.min.js.map +0 -7
- package/react/pf-accordion/pf-accordion-header.d.ts +0 -5
- package/react/pf-accordion/pf-accordion-header.js +0 -12
- package/react/pf-accordion/pf-accordion-panel.d.ts +0 -5
- package/react/pf-accordion/pf-accordion-panel.js +0 -10
- package/react/pf-accordion/pf-accordion.d.ts +0 -5
- package/react/pf-accordion/pf-accordion.js +0 -13
- package/react/pf-avatar/pf-avatar.d.ts +0 -5
- package/react/pf-avatar/pf-avatar.js +0 -12
- package/react/pf-back-to-top/pf-back-to-top.d.ts +0 -5
- package/react/pf-back-to-top/pf-back-to-top.js +0 -10
- package/react/pf-background-image/pf-background-image.d.ts +0 -5
- package/react/pf-background-image/pf-background-image.js +0 -10
- package/react/pf-badge/pf-badge.d.ts +0 -5
- package/react/pf-badge/pf-badge.js +0 -10
- package/react/pf-banner/pf-banner.d.ts +0 -5
- package/react/pf-banner/pf-banner.js +0 -10
- package/react/pf-button/pf-button.d.ts +0 -5
- package/react/pf-button/pf-button.js +0 -12
- package/react/pf-card/pf-card.d.ts +0 -5
- package/react/pf-card/pf-card.js +0 -10
- package/react/pf-chip/pf-chip-group.d.ts +0 -5
- package/react/pf-chip/pf-chip-group.js +0 -13
- package/react/pf-chip/pf-chip.d.ts +0 -5
- package/react/pf-chip/pf-chip.js +0 -13
- package/react/pf-clipboard-copy/pf-clipboard-copy.d.ts +0 -5
- package/react/pf-clipboard-copy/pf-clipboard-copy.js +0 -12
- package/react/pf-code-block/pf-code-block.d.ts +0 -5
- package/react/pf-code-block/pf-code-block.js +0 -10
- package/react/pf-dropdown/pf-dropdown-group.d.ts +0 -5
- package/react/pf-dropdown/pf-dropdown-group.js +0 -10
- package/react/pf-dropdown/pf-dropdown-item.d.ts +0 -5
- package/react/pf-dropdown/pf-dropdown-item.js +0 -10
- package/react/pf-dropdown/pf-dropdown-menu.d.ts +0 -5
- package/react/pf-dropdown/pf-dropdown-menu.js +0 -10
- package/react/pf-dropdown/pf-dropdown.d.ts +0 -5
- package/react/pf-dropdown/pf-dropdown.js +0 -14
- package/react/pf-icon/pf-icon.d.ts +0 -5
- package/react/pf-icon/pf-icon.js +0 -13
- package/react/pf-jump-links/pf-jump-links-item.d.ts +0 -5
- package/react/pf-jump-links/pf-jump-links-item.js +0 -13
- package/react/pf-jump-links/pf-jump-links-list.d.ts +0 -5
- package/react/pf-jump-links/pf-jump-links-list.js +0 -10
- package/react/pf-jump-links/pf-jump-links.d.ts +0 -5
- package/react/pf-jump-links/pf-jump-links.js +0 -12
- package/react/pf-label/pf-label.d.ts +0 -5
- package/react/pf-label/pf-label.js +0 -12
- package/react/pf-modal/pf-modal.d.ts +0 -5
- package/react/pf-modal/pf-modal.js +0 -13
- package/react/pf-panel/pf-panel.d.ts +0 -5
- package/react/pf-panel/pf-panel.js +0 -10
- package/react/pf-popover/pf-popover.d.ts +0 -5
- package/react/pf-popover/pf-popover.js +0 -10
- package/react/pf-progress/pf-progress.d.ts +0 -5
- package/react/pf-progress/pf-progress.js +0 -10
- package/react/pf-progress-stepper/pf-progress-step.d.ts +0 -5
- package/react/pf-progress-stepper/pf-progress-step.js +0 -10
- package/react/pf-progress-stepper/pf-progress-stepper.d.ts +0 -5
- package/react/pf-progress-stepper/pf-progress-stepper.js +0 -10
- package/react/pf-select/pf-option-group.d.ts +0 -5
- package/react/pf-select/pf-option-group.js +0 -10
- package/react/pf-select/pf-option.d.ts +0 -5
- package/react/pf-select/pf-option.js +0 -10
- package/react/pf-select/pf-select.d.ts +0 -5
- package/react/pf-select/pf-select.js +0 -13
- package/react/pf-spinner/pf-spinner.d.ts +0 -5
- package/react/pf-spinner/pf-spinner.js +0 -10
- package/react/pf-switch/pf-switch.d.ts +0 -5
- package/react/pf-switch/pf-switch.js +0 -12
- package/react/pf-table/pf-caption.d.ts +0 -5
- package/react/pf-table/pf-caption.js +0 -10
- package/react/pf-table/pf-table.d.ts +0 -5
- package/react/pf-table/pf-table.js +0 -10
- package/react/pf-table/pf-tbody.d.ts +0 -5
- package/react/pf-table/pf-tbody.js +0 -10
- package/react/pf-table/pf-td.d.ts +0 -5
- package/react/pf-table/pf-td.js +0 -10
- package/react/pf-table/pf-th.d.ts +0 -5
- package/react/pf-table/pf-th.js +0 -10
- package/react/pf-table/pf-thead.d.ts +0 -5
- package/react/pf-table/pf-thead.js +0 -10
- package/react/pf-table/pf-tr.d.ts +0 -5
- package/react/pf-table/pf-tr.js +0 -10
- package/react/pf-tabs/pf-tab-panel.d.ts +0 -5
- package/react/pf-tabs/pf-tab-panel.js +0 -10
- package/react/pf-tabs/pf-tab.d.ts +0 -5
- package/react/pf-tabs/pf-tab.js +0 -12
- package/react/pf-tabs/pf-tabs.d.ts +0 -5
- package/react/pf-tabs/pf-tabs.js +0 -10
- package/react/pf-text-area/pf-text-area.d.ts +0 -5
- package/react/pf-text-area/pf-text-area.js +0 -10
- package/react/pf-text-input/pf-text-input.d.ts +0 -5
- package/react/pf-text-input/pf-text-input.js +0 -10
- package/react/pf-tile/pf-tile.d.ts +0 -5
- package/react/pf-tile/pf-tile.js +0 -10
- package/react/pf-timestamp/pf-timestamp.d.ts +0 -5
- package/react/pf-timestamp/pf-timestamp.js +0 -10
- package/react/pf-tooltip/pf-tooltip.d.ts +0 -5
- package/react/pf-tooltip/pf-tooltip.js +0 -10
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/elements",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.2.0",
|
|
5
5
|
"description": "PatternFly Elements",
|
|
6
6
|
"customElements": "custom-elements.json",
|
|
7
7
|
"type": "module",
|
|
@@ -26,10 +26,11 @@
|
|
|
26
26
|
"./pf-chip/pf-chip-group.js": "./pf-chip/pf-chip-group.js",
|
|
27
27
|
"./pf-clipboard-copy/pf-clipboard-copy.js": "./pf-clipboard-copy/pf-clipboard-copy.js",
|
|
28
28
|
"./pf-code-block/pf-code-block.js": "./pf-code-block/pf-code-block.js",
|
|
29
|
+
"./pf-dropdown/context.js": "./pf-dropdown/context.js",
|
|
30
|
+
"./pf-dropdown/pf-dropdown-group.js": "./pf-dropdown/pf-dropdown-group.js",
|
|
31
|
+
"./pf-dropdown/pf-dropdown-item.js": "./pf-dropdown/pf-dropdown-item.js",
|
|
32
|
+
"./pf-dropdown/pf-dropdown-menu.js": "./pf-dropdown/pf-dropdown-menu.js",
|
|
29
33
|
"./pf-dropdown/pf-dropdown.js": "./pf-dropdown/pf-dropdown.js",
|
|
30
|
-
"./pf-dropdown/pf-dropdown-group.js": "./pf-dropdown/pf-dropdown-group.ts",
|
|
31
|
-
"./pf-dropdown/pf-dropdown-menu.js": "./pf-dropdown/pf-dropdown-menu.ts",
|
|
32
|
-
"./pf-dropdown/pf-dropdown-item.js": "./pf-dropdown/pf-dropdown-item.ts",
|
|
33
34
|
"./pf-icon/pf-icon.js": "./pf-icon/pf-icon.js",
|
|
34
35
|
"./pf-jazz-hands/pf-jazz-hands.js": "./pf-jazz-hands/pf-jazz-hands.js",
|
|
35
36
|
"./pf-jump-links/pf-jump-links-item.js": "./pf-jump-links/pf-jump-links-item.js",
|
|
@@ -45,15 +46,18 @@
|
|
|
45
46
|
"./pf-progress-stepper/pf-progress-step.js": "./pf-progress-stepper/pf-progress-step.js",
|
|
46
47
|
"./pf-progress-stepper/pf-progress-stepper.js": "./pf-progress-stepper/pf-progress-stepper.js",
|
|
47
48
|
"./pf-progress/pf-progress.js": "./pf-progress/pf-progress.js",
|
|
49
|
+
"./pf-search-input/pf-search-input.js": "./pf-search-input/pf-search-input.js",
|
|
48
50
|
"./pf-spinner/pf-spinner.js": "./pf-spinner/pf-spinner.js",
|
|
49
51
|
"./pf-switch/pf-switch.js": "./pf-switch/pf-switch.js",
|
|
52
|
+
"./pf-table/context.js": "./pf-table/context.js",
|
|
53
|
+
"./pf-table/pf-caption.js": "./pf-table/pf-caption.js",
|
|
50
54
|
"./pf-table/pf-table.js": "./pf-table/pf-table.js",
|
|
51
|
-
"./pf-table/pf-thead.js": "./pf-table/pf-thead.js",
|
|
52
55
|
"./pf-table/pf-tbody.js": "./pf-table/pf-tbody.js",
|
|
53
|
-
"./pf-table/pf-tr.js": "./pf-table/pf-tr.js",
|
|
54
|
-
"./pf-table/pf-th.js": "./pf-table/pf-th.js",
|
|
55
56
|
"./pf-table/pf-td.js": "./pf-table/pf-td.js",
|
|
56
|
-
"./pf-table/pf-
|
|
57
|
+
"./pf-table/pf-th.js": "./pf-table/pf-th.js",
|
|
58
|
+
"./pf-table/pf-thead.js": "./pf-table/pf-thead.js",
|
|
59
|
+
"./pf-table/pf-tr.js": "./pf-table/pf-tr.js",
|
|
60
|
+
"./pf-tabs/context.js": "./pf-tabs/context.js",
|
|
57
61
|
"./pf-tabs/pf-tab-panel.js": "./pf-tabs/pf-tab-panel.js",
|
|
58
62
|
"./pf-tabs/pf-tab.js": "./pf-tabs/pf-tab.js",
|
|
59
63
|
"./pf-tabs/pf-tabs.js": "./pf-tabs/pf-tabs.js",
|
|
@@ -71,7 +75,7 @@
|
|
|
71
75
|
},
|
|
72
76
|
"scripts": {
|
|
73
77
|
"prepublishOnly": "npm run build",
|
|
74
|
-
"analyze": "cem
|
|
78
|
+
"analyze": "cem generate",
|
|
75
79
|
"build": "wireit",
|
|
76
80
|
"test": "wtr --files './test/*.spec.ts' --config ../../web-test-runner.config.js"
|
|
77
81
|
},
|
|
@@ -104,7 +108,6 @@
|
|
|
104
108
|
"**/*.d.ts",
|
|
105
109
|
"**/*.js",
|
|
106
110
|
"**/*.js.map",
|
|
107
|
-
"!custom-elements-manifest.config.js",
|
|
108
111
|
"!demo/*",
|
|
109
112
|
"!docs/*",
|
|
110
113
|
"!test/*"
|
|
@@ -128,10 +131,10 @@
|
|
|
128
131
|
"Ajinyka Shinde <sajinkya359@gmail.com>"
|
|
129
132
|
],
|
|
130
133
|
"dependencies": {
|
|
131
|
-
"@lit/context": "^1.1.
|
|
134
|
+
"@lit/context": "^1.1.5",
|
|
132
135
|
"@patternfly/icons": "^1.0.3",
|
|
133
|
-
"@patternfly/pfe-core": "^5.0.
|
|
134
|
-
"lit": "^3.
|
|
135
|
-
"tslib": "^2.
|
|
136
|
+
"@patternfly/pfe-core": "^5.0.2",
|
|
137
|
+
"lit": "^3.3.0",
|
|
138
|
+
"tslib": "^2.8.1"
|
|
136
139
|
}
|
|
137
140
|
}
|
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
:host {
|
|
2
2
|
--pf-icon--size: var(--pf-c-accordion__toggle--IconSize, 10px);
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* Sets the font color for the accordion header.
|
|
6
|
+
*/
|
|
4
7
|
color: var(--pf-c-accordion__toggle--Color, var(--pf-global--Color--100, #151515));
|
|
5
8
|
background-color: var(--pf-global--BackgroundColor--100, #ffffff);
|
|
6
9
|
}
|
|
7
10
|
|
|
8
11
|
:host([large]) {
|
|
12
|
+
/** Sets the top padding for the accordion header. */
|
|
9
13
|
--pf-c-accordion__toggle--PaddingTop: var(--pf-global--spacer--md, 1rem);
|
|
14
|
+
/** Sets the right padding for the accordion header. */
|
|
10
15
|
--pf-c-accordion__toggle--PaddingRight: var(--pf-global--spacer--md, 1rem);
|
|
16
|
+
/** Sets the bottom padding for the accordion header. */
|
|
11
17
|
--pf-c-accordion__toggle--PaddingBottom: var(--pf-global--spacer--md, 1rem);
|
|
18
|
+
/** Sets the left padding for the accordion header. */
|
|
12
19
|
--pf-c-accordion__toggle--PaddingLeft: var(--pf-global--spacer--lg, 1.5rem);
|
|
20
|
+
/** Sets the font family for the accordion header. */
|
|
13
21
|
--pf-c-accordion__toggle--FontFamily:
|
|
14
22
|
var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,
|
|
15
23
|
"RedHatDisplayUpdated",
|
|
@@ -19,6 +27,7 @@
|
|
|
19
27
|
arial,
|
|
20
28
|
sans-serif
|
|
21
29
|
);
|
|
30
|
+
/** Sets the font size for the accordion header. */
|
|
22
31
|
--pf-c-accordion__toggle--FontSize: var(--pf-global--FontSize--xl, 1.25rem);
|
|
23
32
|
--pf-c-accordion__toggle--hover-text--Color: var(--pf-global--Color--100, #151515);
|
|
24
33
|
--pf-c-accordion__toggle--active-text--Color: var(--pf-global--Color--100, #151515);
|
|
@@ -47,10 +56,14 @@ a {
|
|
|
47
56
|
.toggle:after {
|
|
48
57
|
padding: 0;
|
|
49
58
|
margin: 0;
|
|
59
|
+
/** Sets the background color for the accordion header toggle element. */
|
|
50
60
|
background-color: var(--pf-c-accordion__toggle--BackgroundColor, transparent);
|
|
51
61
|
}
|
|
52
62
|
|
|
53
63
|
.icon {
|
|
64
|
+
/**
|
|
65
|
+
* Sets the transition animation for the accordion header.
|
|
66
|
+
*/
|
|
54
67
|
transition: var(--pf-c-accordion__toggle-icon--Transition, 0.2s ease-in 0s);
|
|
55
68
|
}
|
|
56
69
|
|
|
@@ -74,12 +87,18 @@ a {
|
|
|
74
87
|
arial,
|
|
75
88
|
sans-serif));
|
|
76
89
|
font-size: var(--pf-c-accordion__toggle--FontSize, var(--pf-global--FontSize--lg, 1rem));
|
|
90
|
+
/**
|
|
91
|
+
* Sets the font weight for the accordion header.
|
|
92
|
+
*/
|
|
77
93
|
font-weight: var(--pf-c-accordion__toggle--FontWeight, var(--pf-global--FontWeight--normal, 400));
|
|
78
94
|
color: var(--pf-c-accordion__toggle--Color, var(--pf-global--Color--100, #151515));
|
|
79
95
|
}
|
|
80
96
|
|
|
81
97
|
.toggle[aria-expanded="true"] {
|
|
82
98
|
--pf-c-accordion__toggle--after--BackgroundColor:
|
|
99
|
+
/**
|
|
100
|
+
* Sets the hover expanded before background color for the accordion header.
|
|
101
|
+
*/
|
|
83
102
|
var(
|
|
84
103
|
--pf-c-accordion__toggle--expanded--before--BackgroundColor,
|
|
85
104
|
var(
|
|
@@ -91,7 +110,13 @@ a {
|
|
|
91
110
|
|
|
92
111
|
.toggle:after {
|
|
93
112
|
top: var(--pf-c-accordion__toggle--before--Top, -1px);
|
|
113
|
+
/**
|
|
114
|
+
* Sets the sidebar width for the accordion header.
|
|
115
|
+
*/
|
|
94
116
|
width: var(--pf-c-accordion__toggle--before--Width, var(--pf-global--BorderWidth--lg, 3px));
|
|
117
|
+
/**
|
|
118
|
+
* Sets the background color for the after element for the accordion header toggle element.
|
|
119
|
+
*/
|
|
95
120
|
background-color: var(--pf-c-accordion__toggle--after--BackgroundColor, transparent);
|
|
96
121
|
content: "";
|
|
97
122
|
position: absolute;
|
|
@@ -103,17 +128,26 @@ span {
|
|
|
103
128
|
overflow: hidden;
|
|
104
129
|
text-overflow: ellipsis;
|
|
105
130
|
white-space: nowrap;
|
|
131
|
+
/**
|
|
132
|
+
* Sets the max width for the text inside the accordion header.
|
|
133
|
+
*/
|
|
106
134
|
max-width: var(--pf-c-accordion__toggle-text--MaxWidth,
|
|
107
135
|
calc(100% - var(--pf-global--spacer--lg, 1.5rem)));
|
|
108
136
|
}
|
|
109
137
|
|
|
110
138
|
.toggle[aria-expanded="true"] .icon {
|
|
139
|
+
/**
|
|
140
|
+
* Sets the expanded icon rotation degrees for the accordion header.
|
|
141
|
+
*/
|
|
111
142
|
rotate: var(--pf-c-accordion__toggle--expanded-icon--Rotate, 90deg);
|
|
112
143
|
}
|
|
113
144
|
|
|
114
145
|
.toggle:hover,
|
|
115
146
|
.toggle:active,
|
|
116
147
|
.toggle:focus {
|
|
148
|
+
/**
|
|
149
|
+
* Sets the active background color for the accordion header.
|
|
150
|
+
*/
|
|
117
151
|
background-color:
|
|
118
152
|
var(--pf-c-accordion__toggle--active--BackgroundColor,
|
|
119
153
|
var(--pf-global--BackgroundColor--200, #f0f0f0));
|
|
@@ -122,6 +156,9 @@ span {
|
|
|
122
156
|
.toggle:hover span,
|
|
123
157
|
.toggle:focus span,
|
|
124
158
|
.toggle:active span {
|
|
159
|
+
/**
|
|
160
|
+
* Sets the active text color for the accordion header.
|
|
161
|
+
*/
|
|
125
162
|
color: var(--pf-c-accordion__toggle--active-text--Color, var(--pf-global--link--Color, #0066cc));
|
|
126
163
|
}
|
|
127
164
|
|
|
@@ -10,68 +10,7 @@ export declare class PfAccordionHeaderChangeEvent extends Event {
|
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
12
|
* Accordion Header
|
|
13
|
-
* @csspart text - inline element containing the heading text or slotted heading content
|
|
14
|
-
* @csspart accents - container for accents within the header
|
|
15
|
-
* @csspart icon - caret icon
|
|
16
|
-
* @slot
|
|
17
|
-
* We expect the light DOM of the pf-accordion-header to be a heading level tag (h1, h2, h3, h4, h5, h6)
|
|
18
|
-
* @slot accents
|
|
19
|
-
* These elements will appear inline with the accordion header, between the header and the chevron
|
|
20
|
-
* (or after the chevron and header in disclosure mode).
|
|
21
13
|
* @fires {AccordionHeaderChangeEvent} change - when the open panels change
|
|
22
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--Color=var(--pf-global--Color--100, #151515)]
|
|
23
|
-
* Sets the font color for the accordion header.
|
|
24
|
-
*
|
|
25
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--BackgroundColor=transparent]
|
|
26
|
-
* Sets the background color for the accordion header toggle element.
|
|
27
|
-
*
|
|
28
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--after--BackgroundColor=transparent]
|
|
29
|
-
* Sets the background color for the after element for the accordion header toggle element.
|
|
30
|
-
*
|
|
31
|
-
* @cssprop {<length>} [--pf-c-accordion__toggle--PaddingTop=var(--pf-global--spacer--sm, 0.5rem)]
|
|
32
|
-
* Sets the top padding for the accordion header.
|
|
33
|
-
*
|
|
34
|
-
* @cssprop {<length>} [--pf-c-accordion__toggle--PaddingRight=var(--pf-global--spacer--md, 1rem)]
|
|
35
|
-
* Sets the right padding for the accordion header.
|
|
36
|
-
*
|
|
37
|
-
* @cssprop {<length>} [--pf-c-accordion__toggle--PaddingBottom=var(--pf-global--spacer--sm, 0.5rem)]
|
|
38
|
-
* Sets the bottom padding for the accordion header.
|
|
39
|
-
*
|
|
40
|
-
* @cssprop {<length>} [--pf-c-accordion__toggle--PaddingLeft=var(--pf-global--spacer--md, 1rem)]
|
|
41
|
-
* Sets the left padding for the accordion header.
|
|
42
|
-
*
|
|
43
|
-
* @cssprop {<length>} [--pf-c-accordion__toggle--FontSize=var(--pf-global--FontSize--lg, 1rem)]
|
|
44
|
-
* Sets the sidebar background color for the accordion header.
|
|
45
|
-
*
|
|
46
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--FontFamily=var(--pf-global--FontFamily--redhat-updated--heading--sans-serif, "RedHatDisplayUpdated", helvetica, arial, sans-serif)]
|
|
47
|
-
* Sets the font family for the accordion header.
|
|
48
|
-
*
|
|
49
|
-
* @cssprop [--pf-c-accordion__toggle--FontWeight=var(--pf-global--FontWeight--normal, 400)]
|
|
50
|
-
* Sets the font weight for the accordion header.
|
|
51
|
-
*
|
|
52
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--active--BackgroundColor=var(--pf-global--BackgroundColor--200, #f0f0f0)]
|
|
53
|
-
* Sets the active backgrdound color for the accordion header.
|
|
54
|
-
*
|
|
55
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--active-text--Color=var(--pf-global--link--Color, #0066cc)]
|
|
56
|
-
* Sets the active text color for the accordion header.
|
|
57
|
-
*
|
|
58
|
-
* @cssprop [--pf-c-accordion__toggle--active-text--FontWeight=var(--pf-global--FontWeight--semi-bold, 700)]
|
|
59
|
-
* Sets the active text font weight for the accordion header.
|
|
60
|
-
*
|
|
61
|
-
* @cssprop {<color>} [--pf-c-accordion__toggle--expanded--before--BackgroundColor=var(--pf-global--link--Color, #0066cc)]
|
|
62
|
-
* Sets the hover expanded before background color for the accordion header.
|
|
63
|
-
*
|
|
64
|
-
* @cssprop [--pf-c-accordion__toggle--expanded-icon--Rotate=90deg]
|
|
65
|
-
* Sets the expanded icon rotation degrees for the accordion header.
|
|
66
|
-
*
|
|
67
|
-
* @cssprop {<length>} [--pf-c-accordion__toggle-text--MaxWidth=calc(100 - var(--pf-global--spacer--lg, 1.5rem))]
|
|
68
|
-
* Sets the max width for the text inside the accordion header.
|
|
69
|
-
*
|
|
70
|
-
* @cssprop [--pf-c-accordion__toggle--before--Width=var(--pf-global--BorderWidth--lg, 3px)]
|
|
71
|
-
* Sets the sidebar width for the accordion header.
|
|
72
|
-
*
|
|
73
|
-
* @cssprop [--pf-c-accordion__toggle-icon--Transition=0.2s ease-in 0s]
|
|
74
|
-
* Sets the transition animation for the accordion header.
|
|
75
14
|
*
|
|
76
15
|
*/
|
|
77
16
|
export declare class PfAccordionHeader extends LitElement {
|
|
@@ -7,7 +7,176 @@ import { SlotController } from '@patternfly/pfe-core/controllers/slot-controller
|
|
|
7
7
|
import { Logger } from '@patternfly/pfe-core/controllers/logger.js';
|
|
8
8
|
import { getRandomId } from '@patternfly/pfe-core/functions/random.js';
|
|
9
9
|
import { css } from "lit";
|
|
10
|
-
const style = css `:host {
|
|
10
|
+
const style = css `:host {
|
|
11
|
+
--pf-icon--size: var(--pf-c-accordion__toggle--IconSize, 10px);
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Sets the font color for the accordion header.
|
|
15
|
+
*/
|
|
16
|
+
color: var(--pf-c-accordion__toggle--Color, var(--pf-global--Color--100, #151515));
|
|
17
|
+
background-color: var(--pf-global--BackgroundColor--100, #ffffff);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
:host([large]) {
|
|
21
|
+
/** Sets the top padding for the accordion header. */
|
|
22
|
+
--pf-c-accordion__toggle--PaddingTop: var(--pf-global--spacer--md, 1rem);
|
|
23
|
+
/** Sets the right padding for the accordion header. */
|
|
24
|
+
--pf-c-accordion__toggle--PaddingRight: var(--pf-global--spacer--md, 1rem);
|
|
25
|
+
/** Sets the bottom padding for the accordion header. */
|
|
26
|
+
--pf-c-accordion__toggle--PaddingBottom: var(--pf-global--spacer--md, 1rem);
|
|
27
|
+
/** Sets the left padding for the accordion header. */
|
|
28
|
+
--pf-c-accordion__toggle--PaddingLeft: var(--pf-global--spacer--lg, 1.5rem);
|
|
29
|
+
/** Sets the font family for the accordion header. */
|
|
30
|
+
--pf-c-accordion__toggle--FontFamily:
|
|
31
|
+
var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,
|
|
32
|
+
"RedHatDisplayUpdated",
|
|
33
|
+
"Overpass",
|
|
34
|
+
overpass,
|
|
35
|
+
helvetica,
|
|
36
|
+
arial,
|
|
37
|
+
sans-serif
|
|
38
|
+
);
|
|
39
|
+
/** Sets the font size for the accordion header. */
|
|
40
|
+
--pf-c-accordion__toggle--FontSize: var(--pf-global--FontSize--xl, 1.25rem);
|
|
41
|
+
--pf-c-accordion__toggle--hover-text--Color: var(--pf-global--Color--100, #151515);
|
|
42
|
+
--pf-c-accordion__toggle--active-text--Color: var(--pf-global--Color--100, #151515);
|
|
43
|
+
--pf-c-accordion__toggle--active-text--FontWeight: var(--pf-global--FontWeight--normal, 400);
|
|
44
|
+
--pf-c-accordion__toggle--focus-text--Color: var(--pf-global--Color--100, #151515);
|
|
45
|
+
--pf-c-accordion__toggle--focus-text--FontWeight: var(--pf-global--FontWeight--normal, 400);
|
|
46
|
+
--pf-c-accordion__toggle--expanded-text--Color: var(--pf-global--Color--100, #151515);
|
|
47
|
+
--pf-c-accordion__toggle--expanded-text--FontWeight: var(--pf-global--FontWeight--normal, 400);
|
|
48
|
+
--pf-icon--size: var(--pf-c-accordion__toggle--IconSize, 12px);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
#heading {
|
|
52
|
+
font-weight: var(--pf-c-accordion__toggle--FontWeight, var(--pf-global--FontWeight--normal, 400));
|
|
53
|
+
font-size: 100%;
|
|
54
|
+
padding: 0;
|
|
55
|
+
margin: 0;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
button,
|
|
59
|
+
a {
|
|
60
|
+
cursor: pointer;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.toggle,
|
|
64
|
+
.toggle:before,
|
|
65
|
+
.toggle:after {
|
|
66
|
+
padding: 0;
|
|
67
|
+
margin: 0;
|
|
68
|
+
/** Sets the background color for the accordion header toggle element. */
|
|
69
|
+
background-color: var(--pf-c-accordion__toggle--BackgroundColor, transparent);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.icon {
|
|
73
|
+
/**
|
|
74
|
+
* Sets the transition animation for the accordion header.
|
|
75
|
+
*/
|
|
76
|
+
transition: var(--pf-c-accordion__toggle-icon--Transition, 0.2s ease-in 0s);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.toggle {
|
|
80
|
+
position: relative;
|
|
81
|
+
display: flex;
|
|
82
|
+
align-items: center;
|
|
83
|
+
justify-content: space-between;
|
|
84
|
+
width: 100%;
|
|
85
|
+
border: 0;
|
|
86
|
+
padding:
|
|
87
|
+
var(--pf-c-accordion__toggle--PaddingTop, var(--pf-global--spacer--md, 0.5rem))
|
|
88
|
+
var(--pf-c-accordion__toggle--PaddingRight, var(--pf-global--spacer--md, 1rem))
|
|
89
|
+
var(--pf-c-accordion__toggle--PaddingBottom, var(--pf-global--spacer--sm, 0.5rem))
|
|
90
|
+
var(--pf-c-accordion__toggle--PaddingLeft, var(--pf-global--spacer--md, 1rem));
|
|
91
|
+
font-family:
|
|
92
|
+
var(--pf-c-accordion__toggle--FontFamily,
|
|
93
|
+
var(--pf-global--FontFamily--redhat-updated--heading--sans-serif,
|
|
94
|
+
"RedHatTextUpdated",
|
|
95
|
+
helvetica,
|
|
96
|
+
arial,
|
|
97
|
+
sans-serif));
|
|
98
|
+
font-size: var(--pf-c-accordion__toggle--FontSize, var(--pf-global--FontSize--lg, 1rem));
|
|
99
|
+
/**
|
|
100
|
+
* Sets the font weight for the accordion header.
|
|
101
|
+
*/
|
|
102
|
+
font-weight: var(--pf-c-accordion__toggle--FontWeight, var(--pf-global--FontWeight--normal, 400));
|
|
103
|
+
color: var(--pf-c-accordion__toggle--Color, var(--pf-global--Color--100, #151515));
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.toggle[aria-expanded="true"] {
|
|
107
|
+
--pf-c-accordion__toggle--after--BackgroundColor:
|
|
108
|
+
/**
|
|
109
|
+
* Sets the hover expanded before background color for the accordion header.
|
|
110
|
+
*/
|
|
111
|
+
var(
|
|
112
|
+
--pf-c-accordion__toggle--expanded--before--BackgroundColor,
|
|
113
|
+
var(
|
|
114
|
+
--pf-global--primary-color--100,
|
|
115
|
+
#0066cc
|
|
116
|
+
)
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.toggle:after {
|
|
121
|
+
top: var(--pf-c-accordion__toggle--before--Top, -1px);
|
|
122
|
+
/**
|
|
123
|
+
* Sets the sidebar width for the accordion header.
|
|
124
|
+
*/
|
|
125
|
+
width: var(--pf-c-accordion__toggle--before--Width, var(--pf-global--BorderWidth--lg, 3px));
|
|
126
|
+
/**
|
|
127
|
+
* Sets the background color for the after element for the accordion header toggle element.
|
|
128
|
+
*/
|
|
129
|
+
background-color: var(--pf-c-accordion__toggle--after--BackgroundColor, transparent);
|
|
130
|
+
content: "";
|
|
131
|
+
position: absolute;
|
|
132
|
+
bottom: 0;
|
|
133
|
+
left: 0;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
span {
|
|
137
|
+
overflow: hidden;
|
|
138
|
+
text-overflow: ellipsis;
|
|
139
|
+
white-space: nowrap;
|
|
140
|
+
/**
|
|
141
|
+
* Sets the max width for the text inside the accordion header.
|
|
142
|
+
*/
|
|
143
|
+
max-width: var(--pf-c-accordion__toggle-text--MaxWidth,
|
|
144
|
+
calc(100% - var(--pf-global--spacer--lg, 1.5rem)));
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.toggle[aria-expanded="true"] .icon {
|
|
148
|
+
/**
|
|
149
|
+
* Sets the expanded icon rotation degrees for the accordion header.
|
|
150
|
+
*/
|
|
151
|
+
rotate: var(--pf-c-accordion__toggle--expanded-icon--Rotate, 90deg);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.toggle:hover,
|
|
155
|
+
.toggle:active,
|
|
156
|
+
.toggle:focus {
|
|
157
|
+
/**
|
|
158
|
+
* Sets the active background color for the accordion header.
|
|
159
|
+
*/
|
|
160
|
+
background-color:
|
|
161
|
+
var(--pf-c-accordion__toggle--active--BackgroundColor,
|
|
162
|
+
var(--pf-global--BackgroundColor--200, #f0f0f0));
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.toggle:hover span,
|
|
166
|
+
.toggle:focus span,
|
|
167
|
+
.toggle:active span {
|
|
168
|
+
/**
|
|
169
|
+
* Sets the active text color for the accordion header.
|
|
170
|
+
*/
|
|
171
|
+
color: var(--pf-c-accordion__toggle--active-text--Color, var(--pf-global--link--Color, #0066cc));
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.toggle:focus span,
|
|
175
|
+
.toggle:active span {
|
|
176
|
+
font-weight: var(--pf-c-accordion__toggle--active-text--FontWeight,
|
|
177
|
+
var(--pf-global--FontWeight--semi-bold, 700));
|
|
178
|
+
}
|
|
179
|
+
`;
|
|
11
180
|
import '@patternfly/elements/pf-icon/pf-icon.js';
|
|
12
181
|
const isPorHeader = (el) => el instanceof HTMLElement && !!el.tagName.match(/P|^H[1-6]/);
|
|
13
182
|
export class PfAccordionHeaderChangeEvent extends Event {
|
|
@@ -40,12 +209,21 @@ let PfAccordionHeader = class PfAccordionHeader extends LitElement {
|
|
|
40
209
|
class="toggle"
|
|
41
210
|
@click="${__classPrivateFieldGet(this, _PfAccordionHeader_instances, "m", _PfAccordionHeader_onClick)}"
|
|
42
211
|
aria-expanded="${String(!!this.expanded)}">
|
|
212
|
+
<!-- summary: inline element containing the heading text or slotted heading content -->
|
|
43
213
|
<span part="text">${headingText ?? html `
|
|
214
|
+
<!-- summary: A heading level tag (h1, h2, h3, h4, h5, h6) -->
|
|
44
215
|
<slot></slot>`}
|
|
45
216
|
</span>
|
|
217
|
+
<!-- summary: container for accents within the header -->
|
|
46
218
|
<span part="accents" ?hidden="${__classPrivateFieldGet(this, _PfAccordionHeader_slots, "f").isEmpty('accents')}">
|
|
219
|
+
<!-- summary: Header accent elements like tag or icon
|
|
220
|
+
description: |
|
|
221
|
+
These elements will appear inline with the accordion header,
|
|
222
|
+
between the header and the chevron
|
|
223
|
+
(or after the chevron and header in disclosure mode). -->
|
|
47
224
|
<slot name="accents"></slot>
|
|
48
225
|
</span>
|
|
226
|
+
<!-- summary: caret icon -->
|
|
49
227
|
<pf-icon part="icon"
|
|
50
228
|
class="icon"
|
|
51
229
|
size="lg"
|
|
@@ -131,7 +309,7 @@ PfAccordionHeader.shadowRootOptions = {
|
|
|
131
309
|
...LitElement.shadowRootOptions,
|
|
132
310
|
delegatesFocus: true,
|
|
133
311
|
};
|
|
134
|
-
PfAccordionHeader.version = "4.
|
|
312
|
+
PfAccordionHeader.version = "4.2.0";
|
|
135
313
|
__decorate([
|
|
136
314
|
property({ reflect: true })
|
|
137
315
|
], PfAccordionHeader.prototype, "bordered", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pf-accordion-header.js","sourceRoot":"","sources":["pf-accordion-header.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PfAccordion } from './pf-accordion.js';\n\nimport { LitElement, html, type TemplateResult } from 'lit';\nimport { customElement } from 'lit/decorators/custom-element.js';\nimport { property } from 'lit/decorators/property.js';\n\nimport { SlotController } from '@patternfly/pfe-core/controllers/slot-controller.js';\nimport { Logger } from '@patternfly/pfe-core/controllers/logger.js';\n\nimport { getRandomId } from '@patternfly/pfe-core/functions/random.js';\n\nimport style from './pf-accordion-header.css';\n\nimport '@patternfly/elements/pf-icon/pf-icon.js';\n\nconst isPorHeader =\n (el: Node): el is HTMLElement =>\n el instanceof HTMLElement && !!el.tagName.match(/P|^H[1-6]/);\n\nexport class PfAccordionHeaderChangeEvent extends Event {\n declare target: PfAccordionHeader;\n constructor(\n public expanded: boolean,\n public toggle: PfAccordionHeader,\n public accordion: PfAccordion\n ) {\n super('change', { bubbles: true });\n }\n}\n\n/**\n * Accordion Header\n * @csspart text - inline element containing the heading text or slotted heading content\n * @csspart accents - container for accents within the header\n * @csspart icon - caret icon\n * @slot\n * We expect the light DOM of the pf-accordion-header to be a heading level tag (h1, h2, h3, h4, h5, h6)\n * @slot accents\n * These elements will appear inline with the accordion header, between the header and the chevron\n * (or after the chevron and header in disclosure mode).\n * @fires {AccordionHeaderChangeEvent} change - when the open panels change\n * @cssprop {<color>} [--pf-c-accordion__toggle--Color=var(--pf-global--Color--100, #151515)]\n * Sets the font color for the accordion header.\n *\n * @cssprop {<color>} [--pf-c-accordion__toggle--BackgroundColor=transparent]\n * Sets the background color for the accordion header toggle element.\n *\n * @cssprop {<color>} [--pf-c-accordion__toggle--after--BackgroundColor=transparent]\n * Sets the background color for the after element for the accordion header toggle element.\n *\n * @cssprop {<length>} [--pf-c-accordion__toggle--PaddingTop=var(--pf-global--spacer--sm, 0.5rem)]\n * Sets the top padding for the accordion header.\n *\n * @cssprop {<length>} [--pf-c-accordion__toggle--PaddingRight=var(--pf-global--spacer--md, 1rem)]\n * Sets the right padding for the accordion header.\n *\n * @cssprop {<length>} [--pf-c-accordion__toggle--PaddingBottom=var(--pf-global--spacer--sm, 0.5rem)]\n * Sets the bottom padding for the accordion header.\n *\n * @cssprop {<length>} [--pf-c-accordion__toggle--PaddingLeft=var(--pf-global--spacer--md, 1rem)]\n * Sets the left padding for the accordion header.\n *\n * @cssprop {<length>} [--pf-c-accordion__toggle--FontSize=var(--pf-global--FontSize--lg, 1rem)]\n * Sets the sidebar background color for the accordion header.\n *\n * @cssprop {<color>} [--pf-c-accordion__toggle--FontFamily=var(--pf-global--FontFamily--redhat-updated--heading--sans-serif, \"RedHatDisplayUpdated\", helvetica, arial, sans-serif)]\n * Sets the font family for the accordion header.\n *\n * @cssprop [--pf-c-accordion__toggle--FontWeight=var(--pf-global--FontWeight--normal, 400)]\n * Sets the font weight for the accordion header.\n *\n * @cssprop {<color>} [--pf-c-accordion__toggle--active--BackgroundColor=var(--pf-global--BackgroundColor--200, #f0f0f0)]\n * Sets the active backgrdound color for the accordion header.\n *\n * @cssprop {<color>} [--pf-c-accordion__toggle--active-text--Color=var(--pf-global--link--Color, #0066cc)]\n * Sets the active text color for the accordion header.\n *\n * @cssprop [--pf-c-accordion__toggle--active-text--FontWeight=var(--pf-global--FontWeight--semi-bold, 700)]\n * Sets the active text font weight for the accordion header.\n *\n * @cssprop {<color>} [--pf-c-accordion__toggle--expanded--before--BackgroundColor=var(--pf-global--link--Color, #0066cc)]\n * Sets the hover expanded before background color for the accordion header.\n *\n * @cssprop [--pf-c-accordion__toggle--expanded-icon--Rotate=90deg]\n * Sets the expanded icon rotation degrees for the accordion header.\n *\n * @cssprop {<length>} [--pf-c-accordion__toggle-text--MaxWidth=calc(100 - var(--pf-global--spacer--lg, 1.5rem))]\n * Sets the max width for the text inside the accordion header.\n *\n * @cssprop [--pf-c-accordion__toggle--before--Width=var(--pf-global--BorderWidth--lg, 3px)]\n * Sets the sidebar width for the accordion header.\n *\n * @cssprop [--pf-c-accordion__toggle-icon--Transition=0.2s ease-in 0s]\n * Sets the transition animation for the accordion header.\n *\n */\n@customElement('pf-accordion-header')\nexport class PfAccordionHeader extends LitElement {\n static readonly styles: CSSStyleSheet[] = [style];\n\n static override readonly shadowRootOptions: ShadowRootInit = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n @property({ reflect: true }) bordered?: 'true' | 'false';\n\n @property({ reflect: true }) icon?: string;\n\n @property({ reflect: true, attribute: 'icon-set' }) iconSet?: string;\n\n @property({ type: Boolean, reflect: true }) expanded = false;\n\n @property({ reflect: true, attribute: 'heading-text' }) headingText?: string;\n\n @property({ reflect: true, attribute: 'heading-tag' }) headingTag?: string;\n\n #generatedHtag?: HTMLHeadingElement;\n\n #logger = new Logger(this);\n\n #header?: HTMLElement;\n\n #slots = new SlotController(this, 'accents', null);\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.id ||= getRandomId(this.localName);\n this.#initHeader();\n }\n\n override render(): TemplateResult<1> {\n const headingText = this.headingText?.trim() ?? this.#header?.textContent?.trim();\n const content = html`\n <button id=\"button\"\n class=\"toggle\"\n @click=\"${this.#onClick}\"\n aria-expanded=\"${String(!!this.expanded) as 'true' | 'false'}\">\n <span part=\"text\">${headingText ?? html`\n <slot></slot>`}\n </span>\n <span part=\"accents\" ?hidden=\"${this.#slots.isEmpty('accents')}\">\n <slot name=\"accents\"></slot>\n </span>\n <pf-icon part=\"icon\"\n class=\"icon\"\n size=\"lg\"\n set=\"${this.iconSet ?? 'fas'}\"\n icon=\"${this.icon ?? 'angle-right'}\"\n ></pf-icon>\n </button>\n `;\n switch (this.headingTag) {\n case 'h1': return html`<h1 id=\"heading\">${content}</h1>`;\n case 'h2': return html`<h2 id=\"heading\">${content}</h2>`;\n case 'h3': return html`<h3 id=\"heading\">${content}</h3>`;\n case 'h4': return html`<h4 id=\"heading\">${content}</h4>`;\n case 'h5': return html`<h5 id=\"heading\">${content}</h5>`;\n case 'h6': return html`<h6 id=\"heading\">${content}</h6>`;\n default: return content;\n }\n }\n\n async #initHeader() {\n if (this.headingText) {\n this.headingTag ||= 'h3';\n }\n this.#header = this.#getOrCreateHeader();\n\n // prevent double-logging\n if (this.#header !== this.#generatedHtag) {\n this.#generatedHtag = undefined;\n }\n\n do {\n await this.updateComplete;\n } while (!await this.updateComplete);\n\n // Remove the hidden attribute after upgrade\n this.hidden = false;\n }\n\n #getOrCreateHeader(): HTMLElement | undefined {\n // Check if there is no nested element or nested textNodes\n if (!this.firstElementChild && !this.firstChild) {\n return void this.#logger.warn('No header content provided');\n } else if (this.firstElementChild) {\n const [heading, ...otherContent] = Array.from(this.children)\n .filter((x): x is HTMLElement => !x.hasAttribute('slot') && isPorHeader(x));\n\n // If there is no content inside the slot, return empty with a warning\n // else, if there is more than 1 element in the slot, capture the first h-tag\n if (!heading) {\n return void this.#logger.warn('No heading information was provided.');\n } else if (otherContent.length) {\n this.#logger.warn('Heading currently only supports 1 tag; extra tags will be ignored.');\n }\n return heading;\n } else {\n if (!this.#generatedHtag) {\n this.#logger.warn('Header should contain at least 1 heading tag for correct semantics.');\n }\n this.#generatedHtag = document.createElement('h3');\n\n // If a text node was provided but no semantics, default to an h3\n // otherwise, incorrect semantics were used, create an H3 and try to capture the content\n if (this.firstChild?.nodeType === Node.TEXT_NODE) {\n this.#generatedHtag.textContent = this.firstChild.textContent;\n } else {\n this.#generatedHtag.textContent = this.textContent;\n }\n\n return this.#generatedHtag;\n }\n }\n\n #onClick() {\n const expanded = !this.expanded;\n const acc = this.closest('pf-accordion');\n if (acc) {\n this.dispatchEvent(new PfAccordionHeaderChangeEvent(expanded, this, acc));\n }\n }\n}\n\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-accordion-header': PfAccordionHeader;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"pf-accordion-header.js","sourceRoot":"","sources":["pf-accordion-header.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAuB,MAAM,KAAK,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIvE,OAAO,yCAAyC,CAAC;AAEjD,MAAM,WAAW,GACf,CAAC,EAAQ,EAAqB,EAAE,CAC9B,EAAE,YAAY,WAAW,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAEjE,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IAErD,YACS,QAAiB,EACjB,MAAyB,EACzB,SAAsB;QAE7B,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAJ5B,aAAQ,GAAR,QAAQ,CAAS;QACjB,WAAM,GAAN,MAAM,CAAmB;QACzB,cAAS,GAAT,SAAS,CAAa;IAG/B,CAAC;CACF;AAQM,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,UAAU;IAA1C;;;QAcuC,aAAQ,GAAG,KAAK,CAAC;QAM7D,mDAAoC;QAEpC,oCAAU,IAAI,MAAM,CAAC,IAAI,CAAC,EAAC;QAE3B,4CAAsB;QAEtB,mCAAS,IAAI,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAC;;IAE1C,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,EAAE,KAAP,IAAI,CAAC,EAAE,GAAK,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC;QACxC,uBAAA,IAAI,mEAAY,MAAhB,IAAI,CAAc,CAAC;IACrB,CAAC;IAEQ,MAAM;QACb,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,uBAAA,IAAI,iCAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAClF,MAAM,OAAO,GAAG,IAAI,CAAA;;;wBAGA,uBAAA,IAAI,gEAAS;+BACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAqB;;4BAE9C,WAAW,IAAI,IAAI,CAAA;;wBAEvB;;;wCAGgB,uBAAA,IAAI,gCAAO,CAAC,OAAO,CAAC,SAAS,CAAC;;;;;;;;;;;;wBAY9C,IAAI,CAAC,OAAO,IAAI,KAAK;yBACpB,IAAI,CAAC,IAAI,IAAI,aAAa;;;KAG9C,CAAC;QACF,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;YACxB,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAA,oBAAoB,OAAO,OAAO,CAAC;YACzD,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAA,oBAAoB,OAAO,OAAO,CAAC;YACzD,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAA,oBAAoB,OAAO,OAAO,CAAC;YACzD,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAA,oBAAoB,OAAO,OAAO,CAAC;YACzD,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAA,oBAAoB,OAAO,OAAO,CAAC;YACzD,KAAK,IAAI,CAAC,CAAC,OAAO,IAAI,CAAA,oBAAoB,OAAO,OAAO,CAAC;YACzD,OAAO,CAAC,CAAC,OAAO,OAAO,CAAC;QAC1B,CAAC;IACH,CAAC;;;;;;;gCAED,KAAK;IACH,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,IAAI,CAAC,UAAU,KAAf,IAAI,CAAC,UAAU,GAAK,IAAI,EAAC;IAC3B,CAAC;IACD,uBAAA,IAAI,6BAAW,uBAAA,IAAI,0EAAmB,MAAvB,IAAI,CAAqB,MAAA,CAAC;IAEzC,yBAAyB;IACzB,IAAI,uBAAA,IAAI,iCAAQ,KAAK,uBAAA,IAAI,wCAAe,EAAE,CAAC;QACzC,uBAAA,IAAI,oCAAkB,SAAS,MAAA,CAAC;IAClC,CAAC;IAED,GAAG,CAAC;QACF,MAAM,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE;IAErC,4CAA4C;IAC5C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACtB,CAAC;;IAGC,0DAA0D;IAC1D,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChD,OAAO,KAAK,uBAAA,IAAI,iCAAQ,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC9D,CAAC;SAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClC,MAAM,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;aACvD,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhF,sEAAsE;QACtE,6EAA6E;QAC7E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,KAAK,uBAAA,IAAI,iCAAQ,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACxE,CAAC;aAAM,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YAC/B,uBAAA,IAAI,iCAAQ,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,uBAAA,IAAI,wCAAe,EAAE,CAAC;YACzB,uBAAA,IAAI,iCAAQ,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;QAC3F,CAAC;QACD,uBAAA,IAAI,oCAAkB,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,MAAA,CAAC;QAEnD,iEAAiE;QACjE,wFAAwF;QACxF,IAAI,IAAI,CAAC,UAAU,EAAE,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACjD,uBAAA,IAAI,wCAAe,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,uBAAA,IAAI,wCAAe,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrD,CAAC;QAED,OAAO,uBAAA,IAAI,wCAAe,CAAC;IAC7B,CAAC;AACH,CAAC;;IAGC,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACzC,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,CAAC,IAAI,4BAA4B,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC;AArIe,wBAAM,GAAoB,CAAC,KAAK,CAAC,AAA3B,CAA4B;AAEzB,mCAAiB,GAAmB;IAC3D,GAAG,UAAU,CAAC,iBAAiB;IAC/B,cAAc,EAAE,IAAI;CACrB,AAHyC,CAGxC;;AAE2B;IAA5B,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;mDAA6B;AAE5B;IAA5B,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;+CAAe;AAES;IAAnD,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;kDAAkB;AAEzB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;mDAAkB;AAEL;IAAvD,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;sDAAsB;AAEtB;IAAtD,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;qDAAqB;AAlBhE,iBAAiB;IAD7B,aAAa,CAAC,qBAAqB,CAAC;GACxB,iBAAiB","sourcesContent":["import type { PfAccordion } from './pf-accordion.js';\n\nimport { LitElement, html, type TemplateResult } from 'lit';\nimport { customElement } from 'lit/decorators/custom-element.js';\nimport { property } from 'lit/decorators/property.js';\n\nimport { SlotController } from '@patternfly/pfe-core/controllers/slot-controller.js';\nimport { Logger } from '@patternfly/pfe-core/controllers/logger.js';\n\nimport { getRandomId } from '@patternfly/pfe-core/functions/random.js';\n\nimport style from './pf-accordion-header.css';\n\nimport '@patternfly/elements/pf-icon/pf-icon.js';\n\nconst isPorHeader =\n (el: Node): el is HTMLElement =>\n el instanceof HTMLElement && !!el.tagName.match(/P|^H[1-6]/);\n\nexport class PfAccordionHeaderChangeEvent extends Event {\n declare target: PfAccordionHeader;\n constructor(\n public expanded: boolean,\n public toggle: PfAccordionHeader,\n public accordion: PfAccordion\n ) {\n super('change', { bubbles: true });\n }\n}\n\n/**\n * Accordion Header\n * @fires {AccordionHeaderChangeEvent} change - when the open panels change\n *\n */\n@customElement('pf-accordion-header')\nexport class PfAccordionHeader extends LitElement {\n static readonly styles: CSSStyleSheet[] = [style];\n\n static override readonly shadowRootOptions: ShadowRootInit = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n @property({ reflect: true }) bordered?: 'true' | 'false';\n\n @property({ reflect: true }) icon?: string;\n\n @property({ reflect: true, attribute: 'icon-set' }) iconSet?: string;\n\n @property({ type: Boolean, reflect: true }) expanded = false;\n\n @property({ reflect: true, attribute: 'heading-text' }) headingText?: string;\n\n @property({ reflect: true, attribute: 'heading-tag' }) headingTag?: string;\n\n #generatedHtag?: HTMLHeadingElement;\n\n #logger = new Logger(this);\n\n #header?: HTMLElement;\n\n #slots = new SlotController(this, 'accents', null);\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.id ||= getRandomId(this.localName);\n this.#initHeader();\n }\n\n override render(): TemplateResult<1> {\n const headingText = this.headingText?.trim() ?? this.#header?.textContent?.trim();\n const content = html`\n <button id=\"button\"\n class=\"toggle\"\n @click=\"${this.#onClick}\"\n aria-expanded=\"${String(!!this.expanded) as 'true' | 'false'}\">\n <!-- summary: inline element containing the heading text or slotted heading content -->\n <span part=\"text\">${headingText ?? html`\n <!-- summary: A heading level tag (h1, h2, h3, h4, h5, h6) -->\n <slot></slot>`}\n </span>\n <!-- summary: container for accents within the header -->\n <span part=\"accents\" ?hidden=\"${this.#slots.isEmpty('accents')}\">\n <!-- summary: Header accent elements like tag or icon\n description: |\n These elements will appear inline with the accordion header,\n between the header and the chevron\n (or after the chevron and header in disclosure mode). -->\n <slot name=\"accents\"></slot>\n </span>\n <!-- summary: caret icon -->\n <pf-icon part=\"icon\"\n class=\"icon\"\n size=\"lg\"\n set=\"${this.iconSet ?? 'fas'}\"\n icon=\"${this.icon ?? 'angle-right'}\"\n ></pf-icon>\n </button>\n `;\n switch (this.headingTag) {\n case 'h1': return html`<h1 id=\"heading\">${content}</h1>`;\n case 'h2': return html`<h2 id=\"heading\">${content}</h2>`;\n case 'h3': return html`<h3 id=\"heading\">${content}</h3>`;\n case 'h4': return html`<h4 id=\"heading\">${content}</h4>`;\n case 'h5': return html`<h5 id=\"heading\">${content}</h5>`;\n case 'h6': return html`<h6 id=\"heading\">${content}</h6>`;\n default: return content;\n }\n }\n\n async #initHeader() {\n if (this.headingText) {\n this.headingTag ||= 'h3';\n }\n this.#header = this.#getOrCreateHeader();\n\n // prevent double-logging\n if (this.#header !== this.#generatedHtag) {\n this.#generatedHtag = undefined;\n }\n\n do {\n await this.updateComplete;\n } while (!await this.updateComplete);\n\n // Remove the hidden attribute after upgrade\n this.hidden = false;\n }\n\n #getOrCreateHeader(): HTMLElement | undefined {\n // Check if there is no nested element or nested textNodes\n if (!this.firstElementChild && !this.firstChild) {\n return void this.#logger.warn('No header content provided');\n } else if (this.firstElementChild) {\n const [heading, ...otherContent] = Array.from(this.children)\n .filter((x): x is HTMLElement => !x.hasAttribute('slot') && isPorHeader(x));\n\n // If there is no content inside the slot, return empty with a warning\n // else, if there is more than 1 element in the slot, capture the first h-tag\n if (!heading) {\n return void this.#logger.warn('No heading information was provided.');\n } else if (otherContent.length) {\n this.#logger.warn('Heading currently only supports 1 tag; extra tags will be ignored.');\n }\n return heading;\n } else {\n if (!this.#generatedHtag) {\n this.#logger.warn('Header should contain at least 1 heading tag for correct semantics.');\n }\n this.#generatedHtag = document.createElement('h3');\n\n // If a text node was provided but no semantics, default to an h3\n // otherwise, incorrect semantics were used, create an H3 and try to capture the content\n if (this.firstChild?.nodeType === Node.TEXT_NODE) {\n this.#generatedHtag.textContent = this.firstChild.textContent;\n } else {\n this.#generatedHtag.textContent = this.textContent;\n }\n\n return this.#generatedHtag;\n }\n }\n\n #onClick() {\n const expanded = !this.expanded;\n const acc = this.closest('pf-accordion');\n if (acc) {\n this.dispatchEvent(new PfAccordionHeaderChangeEvent(expanded, this, acc));\n }\n }\n}\n\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'pf-accordion-header': PfAccordionHeader;\n }\n}\n"]}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
overflow: hidden;
|
|
5
5
|
will-change: height;
|
|
6
6
|
color: var(--pf-global--Color--100, #151515);
|
|
7
|
+
/** Background color for accordion panel */
|
|
7
8
|
background-color:
|
|
8
9
|
var(
|
|
9
10
|
--pf-c-accordion--BackgroundColor,
|
|
@@ -12,10 +13,15 @@
|
|
|
12
13
|
}
|
|
13
14
|
|
|
14
15
|
.body {
|
|
16
|
+
/** Padding for accordion panel body */
|
|
15
17
|
padding:
|
|
18
|
+
/** Top padding for panel content */
|
|
16
19
|
var(--pf-c-accordion__panel-body--PaddingTop, var(--pf-global--spacer--sm, 0.5rem))
|
|
20
|
+
/** Right padding for panel content */
|
|
17
21
|
var(--pf-c-accordion__panel-body--PaddingRight, var(--pf-global--spacer--md, 1rem))
|
|
22
|
+
/** Bottom padding for panel content */
|
|
18
23
|
var(--pf-c-accordion__panel-body--PaddingBottom, var(--pf-global--spacer--sm, 0.5rem))
|
|
24
|
+
/** Left padding for panel content */
|
|
19
25
|
var(--pf-c-accordion__panel-body--PaddingLeft, var(--pf-global--spacer--md, 1rem));
|
|
20
26
|
}
|
|
21
27
|
|
|
@@ -25,7 +31,9 @@
|
|
|
25
31
|
top: 0;
|
|
26
32
|
bottom: 0;
|
|
27
33
|
left: 0;
|
|
34
|
+
/** Before width for panel content */
|
|
28
35
|
width: var(--pf-c-accordion__panel-body--before--Width, var(--pf-global--BorderWidth--lg, 3px));
|
|
36
|
+
/** Background color for panel content before element */
|
|
29
37
|
background-color: var(--pf-c-accordion__panel-body--before--BackgroundColor, transparent);
|
|
30
38
|
}
|
|
31
39
|
|
|
@@ -50,12 +58,15 @@
|
|
|
50
58
|
}
|
|
51
59
|
|
|
52
60
|
.content {
|
|
61
|
+
/** Font color for panel content */
|
|
53
62
|
color: var(--pf-c-accordion__panel--Color, var(--pf-global--Color--dark-200, #6a6e73));
|
|
63
|
+
/** Font size for panel content */
|
|
54
64
|
font-size: var(--pf-c-accordion__panel--FontSize, var(--pf-global--FontSize--sm, 0.875rem));
|
|
55
65
|
}
|
|
56
66
|
|
|
57
67
|
:host([fixed]) {
|
|
58
68
|
overflow-y: auto;
|
|
69
|
+
/** Maximum height for panel content when fixed */
|
|
59
70
|
max-height: var(--pf-c-accordion__panel--m-fixed--MaxHeight, 9.375rem);
|
|
60
71
|
}
|
|
61
72
|
|
|
@@ -66,6 +77,7 @@
|
|
|
66
77
|
|
|
67
78
|
.content[expanded],
|
|
68
79
|
:host([expanded]) .content {
|
|
80
|
+
/** Sidebar color for panel when expanded */
|
|
69
81
|
--pf-c-accordion__panel-body--before--BackgroundColor:
|
|
70
82
|
var(
|
|
71
83
|
--pf-c-accordion__panel--content-body--before--BackgroundColor,
|
|
@@ -2,40 +2,6 @@ import { LitElement, type TemplateResult } from 'lit';
|
|
|
2
2
|
/**
|
|
3
3
|
* Accordion Panel
|
|
4
4
|
* @slot - Panel content
|
|
5
|
-
* @cssprop {<color>} [--pf-c-accordion--BackgroundColor=var(--pf-global--BackgroundColor--light-100, #ffffff)]
|
|
6
|
-
* Sets the background color for the panel content.
|
|
7
|
-
*
|
|
8
|
-
* @cssprop {<color>} [--pf-c-accordion__panel--Color=var(--pf-global--Color--dark-200, #6a6e73)]
|
|
9
|
-
* Sets the font color for the panel content.
|
|
10
|
-
*
|
|
11
|
-
* @cssprop {<length>} [--pf-c-accordion__panel--FontSize=var(--pf-global--FontSize--sm, 0.875rem)]
|
|
12
|
-
* Sets the font size for the panel content.
|
|
13
|
-
*
|
|
14
|
-
* @cssprop {<color>} [--pf-c-accordion__panel--content-body--before--BackgroundColor=var(--pf-global--primary-color--100, #0066cc)]
|
|
15
|
-
* Sets the sidebar color for the panel when the context is expanded.
|
|
16
|
-
*
|
|
17
|
-
* @cssprop {<length>} [--pf-c-accordion__panel--m-fixed--MaxHeight=9.375rem]
|
|
18
|
-
* Sets the maximum height for the panel content.
|
|
19
|
-
* Will only be used if the `fixed` attribute is used.
|
|
20
|
-
*
|
|
21
|
-
* @cssprop {<length>} [--pf-c-accordion__panel-body--PaddingTop=var(--pf-global--spacer--sm, 0.5rem)]
|
|
22
|
-
* Sets the padding top for the panel content.
|
|
23
|
-
*
|
|
24
|
-
* @cssprop {<length>} [--pf-c-accordion__panel-body--PaddingRight=var(--pf-global--spacer--md, 1rem)]
|
|
25
|
-
* Sets the padding right for the panel content.
|
|
26
|
-
*
|
|
27
|
-
* @cssprop {<length>} [--pf-c-accordion__panel-body--PaddingBottom=var(--pf-global--spacer--sm, 0.5rem)]
|
|
28
|
-
* Sets the padding bottom for the panel content.
|
|
29
|
-
*
|
|
30
|
-
* @cssprop {<length>} [--pf-c-accordion__panel-body--PaddingLeft=var(--pf-global--spacer--md, 1rem)]
|
|
31
|
-
* Sets the padding left for the panel content.
|
|
32
|
-
*
|
|
33
|
-
* @cssprop {<color>} [--pf-c-accordion__panel-body--before--BackgroundColor=transparent]
|
|
34
|
-
* Sets the background color for the panel content.
|
|
35
|
-
*
|
|
36
|
-
* @cssprop [--pf-c-accordion__panel-body--before--Width=var(--pf-global--BorderWidth--lg, 3px)]
|
|
37
|
-
* Sets the before width for the panel content.
|
|
38
|
-
*
|
|
39
5
|
*/
|
|
40
6
|
export declare class PfAccordionPanel extends LitElement {
|
|
41
7
|
static readonly styles: CSSStyleSheet[];
|