@porsche-design-system/components-react 4.5.0 → 4.6.0-rc.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/CHANGELOG.md +32 -0
- package/bin/pds-skill.js +346 -0
- package/esm/lib/components/button.wrapper.d.ts +2 -2
- package/esm/lib/components/link.wrapper.d.ts +2 -2
- package/package.json +4 -3
- package/skills/pds-knowledge-react/SKILL.md +136 -0
- package/skills/pds-knowledge-react/references/components/p-accordion/accessibility.md +63 -0
- package/skills/pds-knowledge-react/references/components/p-accordion/examples/Default.tsx +24 -0
- package/skills/pds-knowledge-react/references/components/p-accordion/examples/InteractiveElementsInSummary.tsx +28 -0
- package/skills/pds-knowledge-react/references/components/p-accordion/examples/StickySummary.tsx +24 -0
- package/skills/pds-knowledge-react/references/components/p-accordion/p-accordion.md +99 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinCheckbox.tsx +30 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinFormLabel.tsx +37 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinImage.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinInputSearch.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinRadioGroup.tsx +29 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinTable.tsx +91 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/examples/WithinText.tsx +14 -0
- package/skills/pds-knowledge-react/references/components/p-ai-tag/p-ai-tag.md +47 -0
- package/skills/pds-knowledge-react/references/components/p-banner/accessibility.md +37 -0
- package/skills/pds-knowledge-react/references/components/p-banner/examples/Customization.tsx +35 -0
- package/skills/pds-knowledge-react/references/components/p-banner/examples/Default.tsx +24 -0
- package/skills/pds-knowledge-react/references/components/p-banner/p-banner.md +96 -0
- package/skills/pds-knowledge-react/references/components/p-button/accessibility.md +61 -0
- package/skills/pds-knowledge-react/references/components/p-button/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-button/examples/Form.tsx +28 -0
- package/skills/pds-knowledge-react/references/components/p-button/examples/FormAttribute.tsx +31 -0
- package/skills/pds-knowledge-react/references/components/p-button/p-button.md +122 -0
- package/skills/pds-knowledge-react/references/components/p-button-pure/accessibility.md +61 -0
- package/skills/pds-knowledge-react/references/components/p-button-pure/examples/CustomClickableArea.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-button-pure/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-button-pure/examples/Form.tsx +28 -0
- package/skills/pds-knowledge-react/references/components/p-button-pure/examples/FormAttribute.tsx +32 -0
- package/skills/pds-knowledge-react/references/components/p-button-pure/p-button-pure.md +122 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/examples/ColorScheme.tsx +15 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/examples/Default.tsx +18 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/examples/FooterSlot.tsx +29 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/examples/Hyphens.tsx +33 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/examples/UiBehaviour.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-button-tile/p-button-tile.md +119 -0
- package/skills/pds-knowledge-react/references/components/p-canvas/examples/Default.tsx +111 -0
- package/skills/pds-knowledge-react/references/components/p-canvas/p-canvas.md +95 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/accessibility.md +61 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/examples/Default.tsx +23 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/examples/DynamicSlides.tsx +32 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/examples/FlexibleWidths.tsx +29 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/examples/FocusOnCenterSlide.tsx +56 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/examples/Intl.tsx +20 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/examples/JumpToSlide.tsx +42 -0
- package/skills/pds-knowledge-react/references/components/p-carousel/p-carousel.md +146 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/examples/Indeterminate.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/examples/Slots.tsx +54 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/examples/WrappedLabel.tsx +24 -0
- package/skills/pds-knowledge-react/references/components/p-checkbox/p-checkbox.md +126 -0
- package/skills/pds-knowledge-react/references/components/p-crest/accessibility.md +17 -0
- package/skills/pds-knowledge-react/references/components/p-crest/examples/CustomClickableArea.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-crest/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-crest/examples/Link.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-crest/p-crest.md +69 -0
- package/skills/pds-knowledge-react/references/components/p-display/examples/Color.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-display/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-display/examples/Semantics.tsx +18 -0
- package/skills/pds-knowledge-react/references/components/p-display/examples/Size.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-display/examples/SizeResponsive.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-display/p-display.md +78 -0
- package/skills/pds-knowledge-react/references/components/p-divider/accessibility.md +41 -0
- package/skills/pds-knowledge-react/references/components/p-divider/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-divider/examples/Responsive.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-divider/examples/Vertical.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-divider/p-divider.md +53 -0
- package/skills/pds-knowledge-react/references/components/p-drilldown/accessibility.md +65 -0
- package/skills/pds-knowledge-react/references/components/p-drilldown/examples/CustomContent.tsx +164 -0
- package/skills/pds-knowledge-react/references/components/p-drilldown/examples/Default.tsx +117 -0
- package/skills/pds-knowledge-react/references/components/p-drilldown/p-drilldown.md +172 -0
- package/skills/pds-knowledge-react/references/components/p-fieldset/accessibility.md +37 -0
- package/skills/pds-knowledge-react/references/components/p-fieldset/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-fieldset/examples/Required.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-fieldset/examples/SlottedLabel.tsx +15 -0
- package/skills/pds-knowledge-react/references/components/p-fieldset/examples/SlottedMessage.tsx +15 -0
- package/skills/pds-knowledge-react/references/components/p-fieldset/p-fieldset.md +92 -0
- package/skills/pds-knowledge-react/references/components/p-flag/accessibility.md +39 -0
- package/skills/pds-knowledge-react/references/components/p-flag/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-flag/examples/ResponsiveSize.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-flag/examples/Size.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-flag/examples/SizeCssVar.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-flag/p-flag.md +72 -0
- package/skills/pds-knowledge-react/references/components/p-flyout/accessibility.md +80 -0
- package/skills/pds-knowledge-react/references/components/p-flyout/examples/CustomStyling.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-flyout/examples/Default.tsx +42 -0
- package/skills/pds-knowledge-react/references/components/p-flyout/examples/Form.tsx +54 -0
- package/skills/pds-knowledge-react/references/components/p-flyout/examples/StickyTop.tsx +42 -0
- package/skills/pds-knowledge-react/references/components/p-flyout/p-flyout.md +132 -0
- package/skills/pds-knowledge-react/references/components/p-heading/accessibility.md +29 -0
- package/skills/pds-knowledge-react/references/components/p-heading/examples/Color.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-heading/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-heading/examples/Semantics.tsx +18 -0
- package/skills/pds-knowledge-react/references/components/p-heading/p-heading.md +82 -0
- package/skills/pds-knowledge-react/references/components/p-icon/accessibility.md +39 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/Color.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/ColorCssVar.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/Custom.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/Overview.tsx +588 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/ResponsiveSize.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/Size.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-icon/examples/SizeCssVar.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-icon/p-icon.md +92 -0
- package/skills/pds-knowledge-react/references/components/p-inline-notification/accessibility.md +36 -0
- package/skills/pds-knowledge-react/references/components/p-inline-notification/examples/ActionButton.tsx +25 -0
- package/skills/pds-knowledge-react/references/components/p-inline-notification/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-inline-notification/examples/EventHandling.tsx +25 -0
- package/skills/pds-knowledge-react/references/components/p-inline-notification/p-inline-notification.md +78 -0
- package/skills/pds-knowledge-react/references/components/p-input-date/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-date/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-date/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-date/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-date/p-input-date.md +146 -0
- package/skills/pds-knowledge-react/references/components/p-input-email/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-email/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-email/examples/Form.tsx +51 -0
- package/skills/pds-knowledge-react/references/components/p-input-email/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-email/p-input-email.md +150 -0
- package/skills/pds-knowledge-react/references/components/p-input-month/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-month/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-month/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-month/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-month/p-input-month.md +146 -0
- package/skills/pds-knowledge-react/references/components/p-input-number/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-number/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-number/examples/Form.tsx +51 -0
- package/skills/pds-knowledge-react/references/components/p-input-number/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-number/p-input-number.md +154 -0
- package/skills/pds-knowledge-react/references/components/p-input-password/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-password/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-password/examples/Form.tsx +51 -0
- package/skills/pds-knowledge-react/references/components/p-input-password/examples/Slots.tsx +39 -0
- package/skills/pds-knowledge-react/references/components/p-input-password/examples/Toggle.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-password/p-input-password.md +149 -0
- package/skills/pds-knowledge-react/references/components/p-input-search/accessibility.md +59 -0
- package/skills/pds-knowledge-react/references/components/p-input-search/examples/AriaCombobox.tsx +35 -0
- package/skills/pds-knowledge-react/references/components/p-input-search/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-search/examples/Form.tsx +52 -0
- package/skills/pds-knowledge-react/references/components/p-input-search/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-search/p-input-search.md +186 -0
- package/skills/pds-knowledge-react/references/components/p-input-tel/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-tel/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-tel/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-tel/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-tel/p-input-tel.md +149 -0
- package/skills/pds-knowledge-react/references/components/p-input-text/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-text/examples/Controlled.tsx +36 -0
- package/skills/pds-knowledge-react/references/components/p-input-text/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-text/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-text/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-text/p-input-text.md +154 -0
- package/skills/pds-knowledge-react/references/components/p-input-time/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-time/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-time/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-time/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-time/p-input-time.md +148 -0
- package/skills/pds-knowledge-react/references/components/p-input-url/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-url/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-url/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-url/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-url/p-input-url.md +149 -0
- package/skills/pds-knowledge-react/references/components/p-input-week/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-week/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-input-week/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-input-week/examples/Slots.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-input-week/p-input-week.md +146 -0
- package/skills/pds-knowledge-react/references/components/p-link/accessibility.md +73 -0
- package/skills/pds-knowledge-react/references/components/p-link/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-link/examples/FrameworkRouting.tsx +14 -0
- package/skills/pds-knowledge-react/references/components/p-link/examples/Icon.tsx +17 -0
- package/skills/pds-knowledge-react/references/components/p-link/p-link.md +105 -0
- package/skills/pds-knowledge-react/references/components/p-link-pure/accessibility.md +73 -0
- package/skills/pds-knowledge-react/references/components/p-link-pure/examples/CustomClickableArea.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-link-pure/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-link-pure/examples/FrameworkRouting.tsx +14 -0
- package/skills/pds-knowledge-react/references/components/p-link-pure/examples/Icon.tsx +17 -0
- package/skills/pds-knowledge-react/references/components/p-link-pure/p-link-pure.md +114 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/examples/ColorScheme.tsx +15 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/examples/Default.tsx +18 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/examples/FooterSlot.tsx +29 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/examples/Hyphens.tsx +34 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/examples/UiBehaviour.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/examples/WithVideo.tsx +15 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile/p-link-tile.md +109 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile-product/examples/Default.tsx +22 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile-product/examples/FrameworkRouting.tsx +25 -0
- package/skills/pds-knowledge-react/references/components/p-link-tile-product/p-link-tile-product.md +93 -0
- package/skills/pds-knowledge-react/references/components/p-modal/accessibility.md +80 -0
- package/skills/pds-knowledge-react/references/components/p-modal/examples/AlertDialog.tsx +39 -0
- package/skills/pds-knowledge-react/references/components/p-modal/examples/CustomStyling.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-modal/examples/Default.tsx +39 -0
- package/skills/pds-knowledge-react/references/components/p-modal/examples/Scrollable.tsx +43 -0
- package/skills/pds-knowledge-react/references/components/p-modal/p-modal.md +139 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/examples/CustomStyling.tsx +14 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/examples/MaskBlendMode.tsx +32 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/examples/MaskImage.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/examples/MaskVideo.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/examples/SafeZone.tsx +60 -0
- package/skills/pds-knowledge-react/references/components/p-model-signature/p-model-signature.md +62 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/accessibility.md +78 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/AsyncFilter.tsx +136 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/Default.tsx +29 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/Form.tsx +53 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/Optgroups.tsx +42 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/SelectedSlot.tsx +94 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/SetValue.tsx +80 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/examples/Slots.tsx +48 -0
- package/skills/pds-knowledge-react/references/components/p-multi-select/p-multi-select.md +201 -0
- package/skills/pds-knowledge-react/references/components/p-pagination/accessibility.md +23 -0
- package/skills/pds-knowledge-react/references/components/p-pagination/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-pagination/p-pagination.md +87 -0
- package/skills/pds-knowledge-react/references/components/p-pin-code/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-pin-code/examples/CopyPaste.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-pin-code/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-pin-code/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-pin-code/examples/Slots.tsx +39 -0
- package/skills/pds-knowledge-react/references/components/p-pin-code/p-pin-code.md +113 -0
- package/skills/pds-knowledge-react/references/components/p-popover/accessibility.md +61 -0
- package/skills/pds-knowledge-react/references/components/p-popover/examples/Default.tsx +14 -0
- package/skills/pds-knowledge-react/references/components/p-popover/examples/SlottedButton.tsx +15 -0
- package/skills/pds-knowledge-react/references/components/p-popover/p-popover.md +120 -0
- package/skills/pds-knowledge-react/references/components/p-radio-group/accessibility.md +63 -0
- package/skills/pds-knowledge-react/references/components/p-radio-group/examples/Default.tsx +17 -0
- package/skills/pds-knowledge-react/references/components/p-radio-group/examples/Form.tsx +53 -0
- package/skills/pds-knowledge-react/references/components/p-radio-group/examples/Slots.tsx +69 -0
- package/skills/pds-knowledge-react/references/components/p-radio-group/p-radio-group.md +161 -0
- package/skills/pds-knowledge-react/references/components/p-scroller/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-scroller/examples/Default.tsx +51 -0
- package/skills/pds-knowledge-react/references/components/p-scroller/examples/Height.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-scroller/examples/ScrollToPosition.tsx +58 -0
- package/skills/pds-knowledge-react/references/components/p-scroller/p-scroller.md +97 -0
- package/skills/pds-knowledge-react/references/components/p-segmented-control/accessibility.md +67 -0
- package/skills/pds-knowledge-react/references/components/p-segmented-control/examples/Default.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-segmented-control/examples/Form.tsx +52 -0
- package/skills/pds-knowledge-react/references/components/p-segmented-control/examples/Slots.tsx +54 -0
- package/skills/pds-knowledge-react/references/components/p-segmented-control/examples/WithLabels.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-segmented-control/p-segmented-control.md +166 -0
- package/skills/pds-knowledge-react/references/components/p-select/accessibility.md +140 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/AsyncFilter.tsx +136 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/Default.tsx +29 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/Form.tsx +53 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/Optgroups.tsx +42 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/Required.tsx +48 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/SelectedSlot.tsx +124 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/SetValue.tsx +80 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/Slots.tsx +48 -0
- package/skills/pds-knowledge-react/references/components/p-select/examples/SlottedImages.tsx +35 -0
- package/skills/pds-knowledge-react/references/components/p-select/p-select.md +198 -0
- package/skills/pds-knowledge-react/references/components/p-sheet/accessibility.md +80 -0
- package/skills/pds-knowledge-react/references/components/p-sheet/examples/Default.tsx +31 -0
- package/skills/pds-knowledge-react/references/components/p-sheet/p-sheet.md +125 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/examples/Color.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/examples/ColorCssVar.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/examples/ResponsiveSize.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/examples/Size.tsx +13 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/examples/SizeCssVar.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-spinner/p-spinner.md +100 -0
- package/skills/pds-knowledge-react/references/components/p-stepper-horizontal/accessibility.md +34 -0
- package/skills/pds-knowledge-react/references/components/p-stepper-horizontal/examples/Default.tsx +23 -0
- package/skills/pds-knowledge-react/references/components/p-stepper-horizontal/examples/FrameworkImplementation.tsx +100 -0
- package/skills/pds-knowledge-react/references/components/p-stepper-horizontal/p-stepper-horizontal.md +113 -0
- package/skills/pds-knowledge-react/references/components/p-switch/accessibility.md +35 -0
- package/skills/pds-knowledge-react/references/components/p-switch/examples/Default.tsx +19 -0
- package/skills/pds-knowledge-react/references/components/p-switch/p-switch.md +107 -0
- package/skills/pds-knowledge-react/references/components/p-table/accessibility.md +47 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/Advanced.tsx +186 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/CaptionProperty.tsx +37 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/CaptionSlot.tsx +40 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/Default.tsx +117 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/HideLabel.tsx +37 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/LayoutFixed.tsx +50 -0
- package/skills/pds-knowledge-react/references/components/p-table/examples/Sorting.tsx +87 -0
- package/skills/pds-knowledge-react/references/components/p-table/p-table.md +193 -0
- package/skills/pds-knowledge-react/references/components/p-tabs/accessibility.md +56 -0
- package/skills/pds-knowledge-react/references/components/p-tabs/examples/ActiveTab.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-tabs/examples/Default.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-tabs/examples/Gradient.tsx +111 -0
- package/skills/pds-knowledge-react/references/components/p-tabs/examples/Labelling.tsx +26 -0
- package/skills/pds-knowledge-react/references/components/p-tabs/p-tabs.md +140 -0
- package/skills/pds-knowledge-react/references/components/p-tabs-bar/accessibility.md +61 -0
- package/skills/pds-knowledge-react/references/components/p-tabs-bar/examples/Default.tsx +27 -0
- package/skills/pds-knowledge-react/references/components/p-tabs-bar/examples/Gradient.tsx +78 -0
- package/skills/pds-knowledge-react/references/components/p-tabs-bar/examples/Labelling.tsx +27 -0
- package/skills/pds-knowledge-react/references/components/p-tabs-bar/examples/Links.tsx +20 -0
- package/skills/pds-knowledge-react/references/components/p-tabs-bar/p-tabs-bar.md +185 -0
- package/skills/pds-knowledge-react/references/components/p-tag/accessibility.md +19 -0
- package/skills/pds-knowledge-react/references/components/p-tag/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-tag/examples/Multiline.tsx +14 -0
- package/skills/pds-knowledge-react/references/components/p-tag/examples/SlottedButton.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-tag/examples/SlottedLink.tsx +41 -0
- package/skills/pds-knowledge-react/references/components/p-tag/p-tag.md +70 -0
- package/skills/pds-knowledge-react/references/components/p-tag-dismissible/accessibility.md +35 -0
- package/skills/pds-knowledge-react/references/components/p-tag-dismissible/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-tag-dismissible/p-tag-dismissible.md +79 -0
- package/skills/pds-knowledge-react/references/components/p-text/accessibility.md +21 -0
- package/skills/pds-knowledge-react/references/components/p-text/examples/Default.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-text/examples/Semantics.tsx +18 -0
- package/skills/pds-knowledge-react/references/components/p-text/examples/Size.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-text/examples/SizeResponsive.tsx +12 -0
- package/skills/pds-knowledge-react/references/components/p-text/p-text.md +72 -0
- package/skills/pds-knowledge-react/references/components/p-text-list/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-text-list/examples/Default.tsx +28 -0
- package/skills/pds-knowledge-react/references/components/p-text-list/p-text-list.md +72 -0
- package/skills/pds-knowledge-react/references/components/p-textarea/accessibility.md +45 -0
- package/skills/pds-knowledge-react/references/components/p-textarea/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-textarea/examples/Form.tsx +45 -0
- package/skills/pds-knowledge-react/references/components/p-textarea/examples/Slots.tsx +39 -0
- package/skills/pds-knowledge-react/references/components/p-textarea/p-textarea.md +126 -0
- package/skills/pds-knowledge-react/references/components/p-toast/examples/Default.tsx +22 -0
- package/skills/pds-knowledge-react/references/components/p-toast/p-toast.md +61 -0
- package/skills/pds-knowledge-react/references/components/p-wordmark/accessibility.md +31 -0
- package/skills/pds-knowledge-react/references/components/p-wordmark/examples/CustomClickableArea.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-wordmark/examples/Default.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-wordmark/examples/Size.tsx +10 -0
- package/skills/pds-knowledge-react/references/components/p-wordmark/p-wordmark.md +70 -0
- package/skills/pds-knowledge-react/references/icons.md +5 -0
- package/skills/pds-knowledge-react/references/styles/emotion.md +439 -0
- package/skills/pds-knowledge-react/references/styles/scss.md +402 -0
- package/skills/pds-knowledge-react/references/styles/tailwindcss.md +356 -0
- package/skills/pds-knowledge-react/references/styles/vanilla-extract.md +444 -0
- package/skills/pds-knowledge-react/references/stylesheets.md +331 -0
- package/skills/pds-knowledge-react/references/tokens.md +323 -0
- package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +5 -5
- package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +1 -1
- package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +5 -5
- package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +1 -1
- package/ssr/esm/lib/components/button.wrapper.d.ts +2 -2
- package/ssr/esm/lib/components/link.wrapper.d.ts +2 -2
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# p-crest
|
|
2
|
+
|
|
3
|
+
The `p-crest` gives the Porsche brand a distinctive look, sets it apart from others within the overall external image and represents the quality of the product.
|
|
4
|
+
|
|
5
|
+
> **Usage hint**
|
|
6
|
+
>
|
|
7
|
+
> This component shall only be used on viewports below 480px (breakpoint "S"). Otherwise, [p-wordmark](../p-wordmark/p-wordmark.md) has to be used.
|
|
8
|
+
|
|
9
|
+
You can use native `click`, `focus`, `focusin`, `blur` and `focusout` events on the `p-crest`.
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
### Do:
|
|
14
|
+
|
|
15
|
+
- Use the [Wordmark](../p-wordmark/p-wordmark.md) as the main brand identifier.
|
|
16
|
+
- Use the crest only as an additional small brand identifier (e.g., within contact cards).
|
|
17
|
+
- Switch from the wordmark to the crest on small viewports below 480px (automatically implemented in global navigation and footer).
|
|
18
|
+
|
|
19
|
+
### Don't:
|
|
20
|
+
|
|
21
|
+
- Use the crest as the primary brand identifier by default.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Related Components
|
|
26
|
+
|
|
27
|
+
- [Wordmark](../p-wordmark/p-wordmark.md)
|
|
28
|
+
|
|
29
|
+
## Accessibility support
|
|
30
|
+
|
|
31
|
+
### ARIA enhancements
|
|
32
|
+
|
|
33
|
+
#### External **ARIA** provided by the `aria` property:
|
|
34
|
+
|
|
35
|
+
| ARIA | Usage |
|
|
36
|
+
| --- | --- |
|
|
37
|
+
| `aria-label` | Defines a string value that labels the interactive element. |
|
|
38
|
+
| `aria-current` | Exposes the current state of the link. |
|
|
39
|
+
| `aria-haspopup` | Defines that the link opens a popup (e.g. `dialog`). |
|
|
40
|
+
|
|
41
|
+
## Development considerations
|
|
42
|
+
|
|
43
|
+
### Common do's and don'ts
|
|
44
|
+
|
|
45
|
+
- **Do** pass ARIA attributes through the `aria` prop when the crest is linked.
|
|
46
|
+
- **Do** provide a descriptive `aria-label` for linked crests, for example "Porsche home".
|
|
47
|
+
- **Don't** add native `aria-*` attributes directly on the component host.
|
|
48
|
+
|
|
49
|
+
## Integration examples
|
|
50
|
+
|
|
51
|
+
See [accessibility integration examples](./accessibility.md) for paired anti-pattern and recommended implementations.
|
|
52
|
+
|
|
53
|
+
## API
|
|
54
|
+
|
|
55
|
+
### Properties
|
|
56
|
+
|
|
57
|
+
| Property | Type | Default | Description |
|
|
58
|
+
| --- | --- | --- | --- |
|
|
59
|
+
| `aria` | `CrestAriaAttribute` | `undefined` | Sets ARIA attributes on the anchor element to improve accessibility when the crest is used as a link. |
|
|
60
|
+
| `href` | `string` | `undefined` | When set, renders the crest as an anchor element navigating to this URL when clicked. |
|
|
61
|
+
| `target` | `'_self'` `'_blank'` `'_parent'` `'_top'` `'string'` | `'_self'` | Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set. |
|
|
62
|
+
|
|
63
|
+
## Examples
|
|
64
|
+
|
|
65
|
+
| Example | When to use | File |
|
|
66
|
+
| --- | --- | --- |
|
|
67
|
+
| Default | Minimal default configuration. | [./examples/Default.tsx](./examples/Default.tsx) |
|
|
68
|
+
| Link | The Porsche Crest will be rendered as `<a>`-tag as soon as an `href` is provided. | [./examples/Link.tsx](./examples/Link.tsx) |
|
|
69
|
+
| Custom clickable/focusable area | Sometimes it may be useful to enlarge the clickable/focusable area of the Porsche Crest. | [./examples/CustomClickableArea.tsx](./examples/CustomClickableArea.tsx) |
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PDisplay } from '@porsche-design-system/components-react';
|
|
3
|
+
|
|
4
|
+
export const Example = () => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
<PDisplay tag="h3" color="inherit" className="text-[deeppink]">
|
|
8
|
+
The quick brown fox jumps over the lazy dog
|
|
9
|
+
</PDisplay>
|
|
10
|
+
</>
|
|
11
|
+
)
|
|
12
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PDisplay } from '@porsche-design-system/components-react';
|
|
3
|
+
|
|
4
|
+
export const Example = () => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
<PDisplay tag="h3">
|
|
8
|
+
The quick brown fox jumps over the lazy dog
|
|
9
|
+
</PDisplay>
|
|
10
|
+
|
|
11
|
+
<PDisplay>
|
|
12
|
+
<h3>
|
|
13
|
+
The quick brown fox jumps over the lazy dog
|
|
14
|
+
</h3>
|
|
15
|
+
</PDisplay>
|
|
16
|
+
</>
|
|
17
|
+
)
|
|
18
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PDisplay } from '@porsche-design-system/components-react';
|
|
3
|
+
|
|
4
|
+
export const Example = () => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
<PDisplay tag="h3" size="inherit" className="text-[5rem]">
|
|
8
|
+
The quick brown fox jumps over the lazy dog
|
|
9
|
+
</PDisplay>
|
|
10
|
+
</>
|
|
11
|
+
)
|
|
12
|
+
}
|
package/skills/pds-knowledge-react/references/components/p-display/examples/SizeResponsive.tsx
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PDisplay } from '@porsche-design-system/components-react';
|
|
3
|
+
|
|
4
|
+
export const Example = () => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
<PDisplay tag="h3" size={{'base': 'medium', 'l': 'large'}}>
|
|
8
|
+
The quick brown fox jumps over the lazy dog
|
|
9
|
+
</PDisplay>
|
|
10
|
+
</>
|
|
11
|
+
)
|
|
12
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# p-display
|
|
2
|
+
|
|
3
|
+
> **Deprecated:** since v4.0.0, will be removed with next major release. Please use `p-heading` instead.
|
|
4
|
+
|
|
5
|
+
`p-display` is used to highlight and specify heading styling and hierarchy in documents.
|
|
6
|
+
|
|
7
|
+
> **Recommendation**
|
|
8
|
+
>
|
|
9
|
+
> Although the component is very sophisticated, it's recommended (if possible) to use the corresponding utility classes of the "@porsche-design-system/components-{js | angular | react | vue}/tailwindcss" sub-package or any of the other styling solutions for best performance since way less DOM nodes are required to render. Further information can be found [here](../../styles/tailwindcss.md).
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
p-display is used to highlight and specify heading styling and hierarchy.
|
|
14
|
+
|
|
15
|
+
### Do's:
|
|
16
|
+
|
|
17
|
+
- Use p-display for standout moments like hero intros, emotional statements, or key statistics.
|
|
18
|
+
- Choose from display-small, display-medium, or display-large depending on the visual weight required.
|
|
19
|
+
- Center-align p-display styles for marketing, landing, or intro sections to enhance visual impact.
|
|
20
|
+
- Ensure generous spacing around p-display elements to give them room to breathe.
|
|
21
|
+
|
|
22
|
+
### Don't:
|
|
23
|
+
|
|
24
|
+
- Don’t use p-display styles for standard section headings or body text—use p-heading or p-text instead.
|
|
25
|
+
- Don’t mix multiple p-display sizes on the same screen unless clearly structured (e.g. in a visual hierarchy).
|
|
26
|
+
|
|
27
|
+
## Accessibility support
|
|
28
|
+
|
|
29
|
+
This component does not include any special accessibility features.
|
|
30
|
+
|
|
31
|
+
## Development considerations
|
|
32
|
+
|
|
33
|
+
### Heading hierarchy
|
|
34
|
+
|
|
35
|
+
While using the `Display` component, take care of the correct heading hierarchy which can be adjusted through the `tag` property. Keep in mind that the visual appearance must not always be identical with the semantic hierarchy.
|
|
36
|
+
|
|
37
|
+
#### Best practices
|
|
38
|
+
|
|
39
|
+
- Use one unique `h1` per page that describes what that page is about.
|
|
40
|
+
- Use headings to describe the content below. Do not use an HTML heading just to make the text appear bigger or stand out.
|
|
41
|
+
- Use heading levels like the index of a book: hierarchical.
|
|
42
|
+
- Do not choose a heading by its size, but by its level in the context of the content.
|
|
43
|
+
- Heading hierarchy should not increase by more than one level at a time.
|
|
44
|
+
- Do not skip a heading level from the top down.
|
|
45
|
+
|
|
46
|
+
### Common do's and don'ts
|
|
47
|
+
|
|
48
|
+
- **Do** use the `tag` prop to reflect semantic hierarchy, not just visual `size`.
|
|
49
|
+
- **Do** keep one unique `h1` per page for the primary page topic.
|
|
50
|
+
- **Don't** use `tag="h1"` on display text that is not the main page title.
|
|
51
|
+
|
|
52
|
+
## API
|
|
53
|
+
|
|
54
|
+
### Properties
|
|
55
|
+
|
|
56
|
+
| Property | Type | Default | Description |
|
|
57
|
+
| --- | --- | --- | --- |
|
|
58
|
+
| `align` | `'start'` `'center'` `'end'` `'inherit'` | `'start'` | Sets the horizontal text alignment (`start`, `center`, `end`, or `inherit`). |
|
|
59
|
+
| `color` | `'primary'` `'inherit'` | `'primary'` | Sets the text color using PDS color tokens. |
|
|
60
|
+
| `ellipsis` | `boolean` | `false` | Truncates the text with an ellipsis when it overflows the container on a single line. |
|
|
61
|
+
| `size` | `'small'` `'medium'` `'large'` `'inherit'`<br>`BreakpointCustomizable<DisplaySize>` | `'large'` | Sets the visual text size. Supports responsive breakpoint values. |
|
|
62
|
+
| `tag` | `undefined` `'h1'` `'h2'` `'h3'` `'h4'` `'h5'` `'h6'` | `undefined` | Sets the HTML heading tag (h1–h6) for correct document outline placement. When omitted, the tag is inferred from `size`. |
|
|
63
|
+
|
|
64
|
+
### Slots
|
|
65
|
+
|
|
66
|
+
| Slot | Required | Allowed tag names | Description |
|
|
67
|
+
| --- | --- | --- | --- |
|
|
68
|
+
| _(default)_ | no | — | Default slot for the display text. |
|
|
69
|
+
|
|
70
|
+
## Examples
|
|
71
|
+
|
|
72
|
+
| Example | When to use | File |
|
|
73
|
+
| --- | --- | --- |
|
|
74
|
+
| Default | Minimal default configuration. | [./examples/Default.tsx](./examples/Default.tsx) |
|
|
75
|
+
| Size | There are predefined fluid text sizes for the component which should cover most use cases. | [./examples/Size.tsx](./examples/Size.tsx) |
|
|
76
|
+
| Responsive | Responsive | [./examples/SizeResponsive.tsx](./examples/SizeResponsive.tsx) |
|
|
77
|
+
| Semantics | To provide more contextual HTML semantics you can either pass them with the `tag` property or directly inside a slot. | [./examples/Semantics.tsx](./examples/Semantics.tsx) |
|
|
78
|
+
| Color | Predefined theme-based colors are available, but `inherit` can also be used to define a custom color. | [./examples/Color.tsx](./examples/Color.tsx) |
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# p-divider accessibility integration examples
|
|
2
|
+
|
|
3
|
+
## Integration examples
|
|
4
|
+
|
|
5
|
+
### Divider as the only section separator
|
|
6
|
+
|
|
7
|
+
#### ❌ Anti-pattern
|
|
8
|
+
|
|
9
|
+
```tsx
|
|
10
|
+
<PText>
|
|
11
|
+
Delivery details
|
|
12
|
+
</PText>
|
|
13
|
+
|
|
14
|
+
<PDivider></PDivider>
|
|
15
|
+
|
|
16
|
+
<PText>
|
|
17
|
+
Payment details
|
|
18
|
+
</PText>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
#### ✅ Recommended
|
|
22
|
+
|
|
23
|
+
```tsx
|
|
24
|
+
<PHeading tag="h2" size="md">
|
|
25
|
+
Delivery details
|
|
26
|
+
</PHeading>
|
|
27
|
+
|
|
28
|
+
<PText>
|
|
29
|
+
...
|
|
30
|
+
</PText>
|
|
31
|
+
|
|
32
|
+
<PDivider></PDivider>
|
|
33
|
+
|
|
34
|
+
<PHeading tag="h2" size="md">
|
|
35
|
+
Payment details
|
|
36
|
+
</PHeading>
|
|
37
|
+
|
|
38
|
+
<PText>
|
|
39
|
+
...
|
|
40
|
+
</PText>
|
|
41
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PDivider } from '@porsche-design-system/components-react';
|
|
3
|
+
|
|
4
|
+
export const Example = () => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
<div className="lg:flex lg:h-[150px]">
|
|
8
|
+
<PDivider direction={{'base': 'horizontal', 'l': 'vertical'}}></PDivider>
|
|
9
|
+
</div>
|
|
10
|
+
</>
|
|
11
|
+
)
|
|
12
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# p-divider
|
|
2
|
+
|
|
3
|
+
The `p-divider` is used as 'horizontal or vertical rule' and displays a dividing line. The component is self-closing. Slotted content between the component tags won't be displayed.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
### Do:
|
|
8
|
+
|
|
9
|
+
- Use to create a visual separation between related sections of content.
|
|
10
|
+
- Use to separate content into clear groups.
|
|
11
|
+
- Use when other options for structuring content are not sufficient.
|
|
12
|
+
|
|
13
|
+
### Don't:
|
|
14
|
+
|
|
15
|
+
- Don't use dividers to structure content, rather work with more space for clustering
|
|
16
|
+
- Don't use it for decorative purposes unless it's necessary.
|
|
17
|
+
- Avoid full-bleed dividers to separate page sections.
|
|
18
|
+
|
|
19
|
+
## Accessibility support
|
|
20
|
+
|
|
21
|
+
This component does not include any special accessibility features.
|
|
22
|
+
|
|
23
|
+
## Development considerations
|
|
24
|
+
|
|
25
|
+
### Structure
|
|
26
|
+
|
|
27
|
+
A divider is visual separation only. Use headings, landmarks, or section structure to communicate content groups.
|
|
28
|
+
|
|
29
|
+
### Common do's and don'ts
|
|
30
|
+
|
|
31
|
+
- **Do** pair dividers with headings or landmarks that describe the sections they separate.
|
|
32
|
+
- **Don't** rely on a divider alone to communicate a new major section.
|
|
33
|
+
|
|
34
|
+
## Integration examples
|
|
35
|
+
|
|
36
|
+
See [accessibility integration examples](./accessibility.md) for paired anti-pattern and recommended implementations.
|
|
37
|
+
|
|
38
|
+
## API
|
|
39
|
+
|
|
40
|
+
### Properties
|
|
41
|
+
|
|
42
|
+
| Property | Type | Default | Description |
|
|
43
|
+
| --- | --- | --- | --- |
|
|
44
|
+
| `color` | `'contrast-lower'` `'contrast-low'` `'contrast-medium'` `'contrast-high'` | `'contrast-lower'` | Sets the color of the divider line using PDS contrast tokens. |
|
|
45
|
+
| `direction` | `'vertical'` `'horizontal'`<br>`BreakpointCustomizable<DividerDirection>` | `'horizontal'` | Sets the orientation of the divider to `horizontal` or `vertical`. Supports responsive breakpoint values. |
|
|
46
|
+
|
|
47
|
+
## Examples
|
|
48
|
+
|
|
49
|
+
| Example | When to use | File |
|
|
50
|
+
| --- | --- | --- |
|
|
51
|
+
| Default | Minimal default configuration. | [./examples/Default.tsx](./examples/Default.tsx) |
|
|
52
|
+
| Vertical | **Hint:** The component has not an implicit vertical height unless we set a container which provides it or define the height on the component itself. | [./examples/Vertical.tsx](./examples/Vertical.tsx) |
|
|
53
|
+
| Responsive | You can change the divider's direction by using different major breakpoints `xs`, `s`, `m`, `l`, `xl`. | [./examples/Responsive.tsx](./examples/Responsive.tsx) |
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# p-drilldown accessibility integration examples
|
|
2
|
+
|
|
3
|
+
## Integration examples
|
|
4
|
+
|
|
5
|
+
### ARIA on trigger button host vs aria prop
|
|
6
|
+
|
|
7
|
+
#### ❌ Anti-pattern
|
|
8
|
+
|
|
9
|
+
```tsx
|
|
10
|
+
<PButton aria-haspopup="dialog">
|
|
11
|
+
Menu
|
|
12
|
+
</PButton>
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
#### ✅ Recommended
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
<PButton aria={{'aria-haspopup': 'dialog'}}>
|
|
19
|
+
Vehicle menu
|
|
20
|
+
</PButton>
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Drilldown label on component host vs aria prop
|
|
24
|
+
|
|
25
|
+
#### ❌ Anti-pattern
|
|
26
|
+
|
|
27
|
+
```tsx
|
|
28
|
+
<PDrilldown open={true} aria-label="Navigation">
|
|
29
|
+
...
|
|
30
|
+
</PDrilldown>
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
#### ✅ Recommended
|
|
34
|
+
|
|
35
|
+
```tsx
|
|
36
|
+
<PDrilldown open={true} aria={{'aria-label': 'Vehicle navigation'}}>
|
|
37
|
+
...
|
|
38
|
+
</PDrilldown>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Trigger without popup semantics or context
|
|
42
|
+
|
|
43
|
+
#### ❌ Anti-pattern
|
|
44
|
+
|
|
45
|
+
```tsx
|
|
46
|
+
<PButton>
|
|
47
|
+
Menu
|
|
48
|
+
</PButton>
|
|
49
|
+
|
|
50
|
+
<PDrilldown>
|
|
51
|
+
...
|
|
52
|
+
</PDrilldown>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
#### ✅ Recommended
|
|
56
|
+
|
|
57
|
+
```tsx
|
|
58
|
+
<PButton aria={{'aria-haspopup': 'dialog'}}>
|
|
59
|
+
Vehicle menu
|
|
60
|
+
</PButton>
|
|
61
|
+
|
|
62
|
+
<PDrilldown aria={{'aria-label': 'Vehicle navigation'}}>
|
|
63
|
+
...
|
|
64
|
+
</PDrilldown>
|
|
65
|
+
```
|
package/skills/pds-knowledge-react/references/components/p-drilldown/examples/CustomContent.tsx
ADDED
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { PButton, PButtonTile, PDrilldown, PDrilldownItem, PDrilldownLink, PLink, PModelSignature, type DrilldownUpdateEventDetail } from '@porsche-design-system/components-react';
|
|
4
|
+
|
|
5
|
+
export const Example = () => {
|
|
6
|
+
const [activeIdentifier, setActiveIdentifier] = useState("id-1");
|
|
7
|
+
const [open, setOpen] = useState(false);
|
|
8
|
+
|
|
9
|
+
const onClick = () => {
|
|
10
|
+
setOpen(true);
|
|
11
|
+
}
|
|
12
|
+
const onUpdate = (e: CustomEvent<DrilldownUpdateEventDetail>) => {
|
|
13
|
+
setActiveIdentifier(e.detail.activeIdentifier);
|
|
14
|
+
}
|
|
15
|
+
const onDismiss = () => {
|
|
16
|
+
setOpen(false);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return (
|
|
20
|
+
<>
|
|
21
|
+
<nav aria-label="Main">
|
|
22
|
+
<PButton type="button" aria={{'aria-haspopup': 'dialog'}} onClick={onClick}>
|
|
23
|
+
Open Drilldown
|
|
24
|
+
</PButton>
|
|
25
|
+
<PDrilldown open={open} activeIdentifier={activeIdentifier} className="[--p-drilldown-grid-template:repeat(5,auto)_minmax(0,1fr)/auto]" onUpdate={onUpdate} onDismiss={onDismiss}>
|
|
26
|
+
<PDrilldownItem identifier="id-1" label="Motorsport" className="[--p-drilldown-grid-template:auto/repeat(2,minmax(0,1fr))] [--p-drilldown-gap:0px_16px]">
|
|
27
|
+
<PDrilldownItem identifier="id-1-1" label="718">
|
|
28
|
+
<PModelSignature slot="header" model="718"></PModelSignature>
|
|
29
|
+
<PButtonTile slot="button" label="Some label" description="718" weight="semi-bold" compact={true} aspectRatio={{'base': '1/1', 's': '9/16'}} className="mb-fluid-sm">
|
|
30
|
+
<img srcSet="assets/porsche-963@2x.webp 2x" src="assets/porsche-963.webp" width={636} height={847} alt="Porsche 963" />
|
|
31
|
+
</PButtonTile>
|
|
32
|
+
<PDrilldownLink href="#">
|
|
33
|
+
Some anchor
|
|
34
|
+
</PDrilldownLink>
|
|
35
|
+
<PDrilldownLink href="#">
|
|
36
|
+
Some anchor
|
|
37
|
+
</PDrilldownLink>
|
|
38
|
+
<PDrilldownLink href="#">
|
|
39
|
+
Some anchor
|
|
40
|
+
</PDrilldownLink>
|
|
41
|
+
<PDrilldownLink href="#">
|
|
42
|
+
Some anchor
|
|
43
|
+
</PDrilldownLink>
|
|
44
|
+
</PDrilldownItem>
|
|
45
|
+
<PDrilldownItem identifier="id-1-2" label="911">
|
|
46
|
+
<PModelSignature slot="header" model="911"></PModelSignature>
|
|
47
|
+
<PButtonTile slot="button" label="Some label" description="911" weight="semi-bold" compact={true} aspectRatio={{'base': '1/1', 's': '9/16'}} className="mb-fluid-sm">
|
|
48
|
+
<img srcSet="assets/porsche-963@2x.webp 2x" src="assets/porsche-963.webp" width={636} height={847} alt="Porsche 963" />
|
|
49
|
+
</PButtonTile>
|
|
50
|
+
<PDrilldownLink href="#">
|
|
51
|
+
Some anchor
|
|
52
|
+
</PDrilldownLink>
|
|
53
|
+
<PDrilldownLink href="#">
|
|
54
|
+
Some anchor
|
|
55
|
+
</PDrilldownLink>
|
|
56
|
+
</PDrilldownItem>
|
|
57
|
+
<PDrilldownLink href="#">
|
|
58
|
+
Some anchor
|
|
59
|
+
</PDrilldownLink>
|
|
60
|
+
<PDrilldownLink href="#" aria-current="page">
|
|
61
|
+
Some anchor
|
|
62
|
+
</PDrilldownLink>
|
|
63
|
+
<PDrilldownLink href="#">
|
|
64
|
+
Some anchor
|
|
65
|
+
</PDrilldownLink>
|
|
66
|
+
<PDrilldownLink href="#">
|
|
67
|
+
Some anchor
|
|
68
|
+
</PDrilldownLink>
|
|
69
|
+
<PDrilldownLink href="#">
|
|
70
|
+
Some anchor
|
|
71
|
+
</PDrilldownLink>
|
|
72
|
+
<PDrilldownLink href="#">
|
|
73
|
+
Some anchor
|
|
74
|
+
</PDrilldownLink>
|
|
75
|
+
<PDrilldownLink href="#">
|
|
76
|
+
Some anchor
|
|
77
|
+
</PDrilldownLink>
|
|
78
|
+
<PDrilldownLink href="#">
|
|
79
|
+
Some anchor
|
|
80
|
+
</PDrilldownLink>
|
|
81
|
+
<PDrilldownLink href="#">
|
|
82
|
+
Some anchor
|
|
83
|
+
</PDrilldownLink>
|
|
84
|
+
</PDrilldownItem>
|
|
85
|
+
<PDrilldownItem identifier="id-2" label="Some label">
|
|
86
|
+
<PDrilldownItem identifier="id-2-1" label="Some label">
|
|
87
|
+
<PDrilldownLink href="#">
|
|
88
|
+
Some anchor
|
|
89
|
+
</PDrilldownLink>
|
|
90
|
+
<PDrilldownLink href="#">
|
|
91
|
+
Some anchor
|
|
92
|
+
</PDrilldownLink>
|
|
93
|
+
<PDrilldownLink href="#">
|
|
94
|
+
Some anchor
|
|
95
|
+
</PDrilldownLink>
|
|
96
|
+
<PDrilldownLink href="#">
|
|
97
|
+
Some anchor
|
|
98
|
+
</PDrilldownLink>
|
|
99
|
+
</PDrilldownItem>
|
|
100
|
+
<PDrilldownItem identifier="id-2-2" label="Some label">
|
|
101
|
+
<PDrilldownLink href="#">
|
|
102
|
+
Some anchor
|
|
103
|
+
</PDrilldownLink>
|
|
104
|
+
<PDrilldownLink href="#">
|
|
105
|
+
Some anchor
|
|
106
|
+
</PDrilldownLink>
|
|
107
|
+
<PDrilldownLink href="#">
|
|
108
|
+
Some anchor
|
|
109
|
+
</PDrilldownLink>
|
|
110
|
+
</PDrilldownItem>
|
|
111
|
+
<PDrilldownLink href="#">
|
|
112
|
+
Some anchor
|
|
113
|
+
</PDrilldownLink>
|
|
114
|
+
<PDrilldownLink href="#">
|
|
115
|
+
Some anchor
|
|
116
|
+
</PDrilldownLink>
|
|
117
|
+
<PDrilldownLink href="#">
|
|
118
|
+
Some anchor
|
|
119
|
+
</PDrilldownLink>
|
|
120
|
+
<PDrilldownLink href="#">
|
|
121
|
+
Some anchor
|
|
122
|
+
</PDrilldownLink>
|
|
123
|
+
</PDrilldownItem>
|
|
124
|
+
<PDrilldownItem identifier="id-3" label="Some label">
|
|
125
|
+
<PDrilldownLink href="#">
|
|
126
|
+
Some anchor
|
|
127
|
+
</PDrilldownLink>
|
|
128
|
+
<PDrilldownLink href="#">
|
|
129
|
+
Some anchor
|
|
130
|
+
</PDrilldownLink>
|
|
131
|
+
<PDrilldownLink href="#">
|
|
132
|
+
Some anchor
|
|
133
|
+
</PDrilldownLink>
|
|
134
|
+
<PDrilldownLink href="#">
|
|
135
|
+
Some anchor
|
|
136
|
+
</PDrilldownLink>
|
|
137
|
+
</PDrilldownItem>
|
|
138
|
+
<PDrilldownItem identifier="id-4" label="Some label">
|
|
139
|
+
<PDrilldownLink href="#">
|
|
140
|
+
Some anchor
|
|
141
|
+
</PDrilldownLink>
|
|
142
|
+
<PDrilldownLink href="#">
|
|
143
|
+
Some anchor
|
|
144
|
+
</PDrilldownLink>
|
|
145
|
+
<PDrilldownLink href="#">
|
|
146
|
+
Some anchor
|
|
147
|
+
</PDrilldownLink>
|
|
148
|
+
</PDrilldownItem>
|
|
149
|
+
<PDrilldownItem identifier="id-5" label="Some label">
|
|
150
|
+
<PDrilldownLink href="#">
|
|
151
|
+
Some anchor
|
|
152
|
+
</PDrilldownLink>
|
|
153
|
+
<PDrilldownLink href="#">
|
|
154
|
+
Some anchor
|
|
155
|
+
</PDrilldownLink>
|
|
156
|
+
</PDrilldownItem>
|
|
157
|
+
<PLink href="#" variant="secondary" icon="external" className="self-end">
|
|
158
|
+
Some external anchor
|
|
159
|
+
</PLink>
|
|
160
|
+
</PDrilldown>
|
|
161
|
+
</nav>
|
|
162
|
+
</>
|
|
163
|
+
)
|
|
164
|
+
}
|