@porsche-design-system/components-angular 4.5.0-rc.1 → 4.6.0-rc.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/CHANGELOG.md +10 -0
- package/bin/pds-skill.js +259 -0
- package/fesm2022/porsche-design-system-components-angular.mjs.map +1 -1
- package/package.json +5 -2
- package/skill/SKILL.md +124 -0
- package/skill/references/components/p-accordion/examples/Default.ts +26 -0
- package/skill/references/components/p-accordion/examples/InteractiveElementsInSummary.ts +30 -0
- package/skill/references/components/p-accordion/examples/StickySummary.ts +26 -0
- package/skill/references/components/p-accordion/p-accordion.md +95 -0
- package/skill/references/components/p-ai-tag/examples/Default.ts +13 -0
- package/skill/references/components/p-ai-tag/examples/WithinCheckbox.ts +33 -0
- package/skill/references/components/p-ai-tag/examples/WithinFormLabel.ts +40 -0
- package/skill/references/components/p-ai-tag/examples/WithinImage.ts +16 -0
- package/skill/references/components/p-ai-tag/examples/WithinInputSearch.ts +15 -0
- package/skill/references/components/p-ai-tag/examples/WithinRadioGroup.ts +32 -0
- package/skill/references/components/p-ai-tag/examples/WithinTable.ts +94 -0
- package/skill/references/components/p-ai-tag/examples/WithinText.ts +17 -0
- package/skill/references/components/p-ai-tag/p-ai-tag.md +47 -0
- package/skill/references/components/p-banner/examples/Customization.ts +37 -0
- package/skill/references/components/p-banner/examples/Default.ts +26 -0
- package/skill/references/components/p-banner/p-banner.md +92 -0
- package/skill/references/components/p-button/examples/Default.ts +15 -0
- package/skill/references/components/p-button/examples/Form.ts +26 -0
- package/skill/references/components/p-button/examples/FormAttribute.ts +30 -0
- package/skill/references/components/p-button/p-button.md +118 -0
- package/skill/references/components/p-button-pure/examples/CustomClickableArea.ts +15 -0
- package/skill/references/components/p-button-pure/examples/Default.ts +15 -0
- package/skill/references/components/p-button-pure/examples/Form.ts +26 -0
- package/skill/references/components/p-button-pure/examples/FormAttribute.ts +30 -0
- package/skill/references/components/p-button-pure/p-button-pure.md +118 -0
- package/skill/references/components/p-button-tile/examples/ColorScheme.ts +18 -0
- package/skill/references/components/p-button-tile/examples/Default.ts +21 -0
- package/skill/references/components/p-button-tile/examples/FooterSlot.ts +32 -0
- package/skill/references/components/p-button-tile/examples/Hyphens.ts +38 -0
- package/skill/references/components/p-button-tile/examples/UiBehaviour.ts +44 -0
- package/skill/references/components/p-button-tile/p-button-tile.md +115 -0
- package/skill/references/components/p-canvas/examples/Default.ts +13 -0
- package/skill/references/components/p-canvas/p-canvas.md +91 -0
- package/skill/references/components/p-carousel/examples/Default.ts +26 -0
- package/skill/references/components/p-carousel/examples/DynamicSlides.ts +37 -0
- package/skill/references/components/p-carousel/examples/FlexibleWidths.ts +32 -0
- package/skill/references/components/p-carousel/examples/FocusOnCenterSlide.ts +65 -0
- package/skill/references/components/p-carousel/examples/Intl.ts +23 -0
- package/skill/references/components/p-carousel/examples/JumpToSlide.ts +50 -0
- package/skill/references/components/p-carousel/p-carousel.md +142 -0
- package/skill/references/components/p-checkbox/examples/Default.ts +13 -0
- package/skill/references/components/p-checkbox/examples/Form.ts +31 -0
- package/skill/references/components/p-checkbox/examples/Indeterminate.ts +16 -0
- package/skill/references/components/p-checkbox/examples/Slots.ts +57 -0
- package/skill/references/components/p-checkbox/examples/WrappedLabel.ts +27 -0
- package/skill/references/components/p-checkbox/p-checkbox.md +122 -0
- package/skill/references/components/p-crest/examples/CustomClickableArea.ts +13 -0
- package/skill/references/components/p-crest/examples/Default.ts +13 -0
- package/skill/references/components/p-crest/examples/Link.ts +13 -0
- package/skill/references/components/p-crest/p-crest.md +65 -0
- package/skill/references/components/p-display/examples/Color.ts +15 -0
- package/skill/references/components/p-display/examples/Default.ts +15 -0
- package/skill/references/components/p-display/examples/Semantics.ts +21 -0
- package/skill/references/components/p-display/examples/Size.ts +15 -0
- package/skill/references/components/p-display/examples/SizeResponsive.ts +15 -0
- package/skill/references/components/p-display/p-display.md +78 -0
- package/skill/references/components/p-divider/examples/Default.ts +13 -0
- package/skill/references/components/p-divider/examples/Responsive.ts +15 -0
- package/skill/references/components/p-divider/examples/Vertical.ts +15 -0
- package/skill/references/components/p-divider/p-divider.md +49 -0
- package/skill/references/components/p-drilldown/examples/CustomContent.ts +166 -0
- package/skill/references/components/p-drilldown/examples/Default.ts +119 -0
- package/skill/references/components/p-drilldown/p-drilldown.md +168 -0
- package/skill/references/components/p-fieldset/examples/Default.ts +15 -0
- package/skill/references/components/p-fieldset/examples/Required.ts +16 -0
- package/skill/references/components/p-fieldset/examples/SlottedLabel.ts +18 -0
- package/skill/references/components/p-fieldset/examples/SlottedMessage.ts +18 -0
- package/skill/references/components/p-fieldset/p-fieldset.md +88 -0
- package/skill/references/components/p-flag/examples/Default.ts +13 -0
- package/skill/references/components/p-flag/examples/ResponsiveSize.ts +13 -0
- package/skill/references/components/p-flag/examples/Size.ts +16 -0
- package/skill/references/components/p-flag/examples/SizeCssVar.ts +13 -0
- package/skill/references/components/p-flag/p-flag.md +68 -0
- package/skill/references/components/p-flyout/examples/CustomStyling.ts +47 -0
- package/skill/references/components/p-flyout/examples/Default.ts +44 -0
- package/skill/references/components/p-flyout/examples/Form.ts +47 -0
- package/skill/references/components/p-flyout/examples/StickyTop.ts +44 -0
- package/skill/references/components/p-flyout/p-flyout.md +128 -0
- package/skill/references/components/p-heading/examples/Color.ts +15 -0
- package/skill/references/components/p-heading/examples/Default.ts +15 -0
- package/skill/references/components/p-heading/examples/Semantics.ts +21 -0
- package/skill/references/components/p-heading/p-heading.md +78 -0
- package/skill/references/components/p-icon/examples/Color.ts +16 -0
- package/skill/references/components/p-icon/examples/ColorCssVar.ts +13 -0
- package/skill/references/components/p-icon/examples/Custom.ts +13 -0
- package/skill/references/components/p-icon/examples/Default.ts +13 -0
- package/skill/references/components/p-icon/examples/Overview.ts +591 -0
- package/skill/references/components/p-icon/examples/ResponsiveSize.ts +13 -0
- package/skill/references/components/p-icon/examples/Size.ts +16 -0
- package/skill/references/components/p-icon/examples/SizeCssVar.ts +13 -0
- package/skill/references/components/p-icon/p-icon.md +88 -0
- package/skill/references/components/p-inline-notification/examples/ActionButton.ts +29 -0
- package/skill/references/components/p-inline-notification/examples/Default.ts +13 -0
- package/skill/references/components/p-inline-notification/examples/EventHandling.ts +31 -0
- package/skill/references/components/p-inline-notification/p-inline-notification.md +74 -0
- package/skill/references/components/p-input-date/examples/Default.ts +13 -0
- package/skill/references/components/p-input-date/examples/Form.ts +31 -0
- package/skill/references/components/p-input-date/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-date/p-input-date.md +138 -0
- package/skill/references/components/p-input-email/examples/Default.ts +13 -0
- package/skill/references/components/p-input-email/examples/Form.ts +31 -0
- package/skill/references/components/p-input-email/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-email/p-input-email.md +142 -0
- package/skill/references/components/p-input-month/examples/Default.ts +13 -0
- package/skill/references/components/p-input-month/examples/Form.ts +31 -0
- package/skill/references/components/p-input-month/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-month/p-input-month.md +138 -0
- package/skill/references/components/p-input-number/examples/Default.ts +13 -0
- package/skill/references/components/p-input-number/examples/Form.ts +31 -0
- package/skill/references/components/p-input-number/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-number/p-input-number.md +146 -0
- package/skill/references/components/p-input-password/examples/Default.ts +13 -0
- package/skill/references/components/p-input-password/examples/Form.ts +31 -0
- package/skill/references/components/p-input-password/examples/Slots.ts +42 -0
- package/skill/references/components/p-input-password/examples/Toggle.ts +13 -0
- package/skill/references/components/p-input-password/p-input-password.md +141 -0
- package/skill/references/components/p-input-search/examples/AriaCombobox.ts +38 -0
- package/skill/references/components/p-input-search/examples/Default.ts +13 -0
- package/skill/references/components/p-input-search/examples/Form.ts +31 -0
- package/skill/references/components/p-input-search/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-search/p-input-search.md +178 -0
- package/skill/references/components/p-input-tel/examples/Default.ts +13 -0
- package/skill/references/components/p-input-tel/examples/Form.ts +31 -0
- package/skill/references/components/p-input-tel/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-tel/p-input-tel.md +141 -0
- package/skill/references/components/p-input-text/examples/Controlled.ts +36 -0
- package/skill/references/components/p-input-text/examples/Default.ts +13 -0
- package/skill/references/components/p-input-text/examples/Form.ts +31 -0
- package/skill/references/components/p-input-text/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-text/p-input-text.md +146 -0
- package/skill/references/components/p-input-time/examples/Default.ts +13 -0
- package/skill/references/components/p-input-time/examples/Form.ts +31 -0
- package/skill/references/components/p-input-time/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-time/p-input-time.md +140 -0
- package/skill/references/components/p-input-url/examples/Default.ts +13 -0
- package/skill/references/components/p-input-url/examples/Form.ts +31 -0
- package/skill/references/components/p-input-url/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-url/p-input-url.md +141 -0
- package/skill/references/components/p-input-week/examples/Default.ts +13 -0
- package/skill/references/components/p-input-week/examples/Form.ts +31 -0
- package/skill/references/components/p-input-week/examples/Slots.ts +44 -0
- package/skill/references/components/p-input-week/p-input-week.md +138 -0
- package/skill/references/components/p-link/examples/Default.ts +15 -0
- package/skill/references/components/p-link/examples/FrameworkRouting.ts +17 -0
- package/skill/references/components/p-link/examples/Icon.ts +20 -0
- package/skill/references/components/p-link/p-link.md +101 -0
- package/skill/references/components/p-link-pure/examples/CustomClickableArea.ts +15 -0
- package/skill/references/components/p-link-pure/examples/Default.ts +15 -0
- package/skill/references/components/p-link-pure/examples/FrameworkRouting.ts +17 -0
- package/skill/references/components/p-link-pure/examples/Icon.ts +20 -0
- package/skill/references/components/p-link-pure/p-link-pure.md +110 -0
- package/skill/references/components/p-link-tile/examples/ColorScheme.ts +18 -0
- package/skill/references/components/p-link-tile/examples/Default.ts +21 -0
- package/skill/references/components/p-link-tile/examples/FooterSlot.ts +32 -0
- package/skill/references/components/p-link-tile/examples/Hyphens.ts +39 -0
- package/skill/references/components/p-link-tile/examples/UiBehaviour.ts +44 -0
- package/skill/references/components/p-link-tile/examples/WithVideo.ts +18 -0
- package/skill/references/components/p-link-tile/p-link-tile.md +105 -0
- package/skill/references/components/p-link-tile-product/examples/Default.ts +24 -0
- package/skill/references/components/p-link-tile-product/examples/FrameworkRouting.ts +27 -0
- package/skill/references/components/p-link-tile-product/p-link-tile-product.md +93 -0
- package/skill/references/components/p-modal/examples/AlertDialog.ts +41 -0
- package/skill/references/components/p-modal/examples/CustomStyling.ts +28 -0
- package/skill/references/components/p-modal/examples/Default.ts +41 -0
- package/skill/references/components/p-modal/examples/Scrollable.ts +45 -0
- package/skill/references/components/p-modal/p-modal.md +135 -0
- package/skill/references/components/p-model-signature/examples/CustomStyling.ts +17 -0
- package/skill/references/components/p-model-signature/examples/Default.ts +13 -0
- package/skill/references/components/p-model-signature/examples/MaskBlendMode.ts +35 -0
- package/skill/references/components/p-model-signature/examples/MaskImage.ts +15 -0
- package/skill/references/components/p-model-signature/examples/MaskVideo.ts +15 -0
- package/skill/references/components/p-model-signature/examples/SafeZone.ts +63 -0
- package/skill/references/components/p-model-signature/p-model-signature.md +62 -0
- package/skill/references/components/p-multi-select/examples/AsyncFilter.ts +149 -0
- package/skill/references/components/p-multi-select/examples/Default.ts +32 -0
- package/skill/references/components/p-multi-select/examples/Form.ts +38 -0
- package/skill/references/components/p-multi-select/examples/Optgroups.ts +45 -0
- package/skill/references/components/p-multi-select/examples/SelectedSlot.ts +103 -0
- package/skill/references/components/p-multi-select/examples/SetValue.ts +76 -0
- package/skill/references/components/p-multi-select/examples/Slots.ts +51 -0
- package/skill/references/components/p-multi-select/p-multi-select.md +197 -0
- package/skill/references/components/p-pagination/examples/Default.ts +13 -0
- package/skill/references/components/p-pagination/p-pagination.md +83 -0
- package/skill/references/components/p-pin-code/examples/CopyPaste.ts +13 -0
- package/skill/references/components/p-pin-code/examples/Default.ts +13 -0
- package/skill/references/components/p-pin-code/examples/Form.ts +31 -0
- package/skill/references/components/p-pin-code/examples/Slots.ts +42 -0
- package/skill/references/components/p-pin-code/p-pin-code.md +109 -0
- package/skill/references/components/p-popover/examples/Default.ts +17 -0
- package/skill/references/components/p-popover/examples/SlottedButton.ts +18 -0
- package/skill/references/components/p-popover/p-popover.md +116 -0
- package/skill/references/components/p-radio-group/examples/Default.ts +20 -0
- package/skill/references/components/p-radio-group/examples/Form.ts +38 -0
- package/skill/references/components/p-radio-group/examples/Slots.ts +72 -0
- package/skill/references/components/p-radio-group/p-radio-group.md +157 -0
- package/skill/references/components/p-scroller/examples/Default.ts +54 -0
- package/skill/references/components/p-scroller/examples/Height.ts +29 -0
- package/skill/references/components/p-scroller/examples/ScrollToPosition.ts +43 -0
- package/skill/references/components/p-scroller/p-scroller.md +93 -0
- package/skill/references/components/p-segmented-control/examples/Default.ts +29 -0
- package/skill/references/components/p-segmented-control/examples/Form.ts +37 -0
- package/skill/references/components/p-segmented-control/examples/Slots.ts +57 -0
- package/skill/references/components/p-segmented-control/examples/WithLabels.ts +29 -0
- package/skill/references/components/p-segmented-control/p-segmented-control.md +162 -0
- package/skill/references/components/p-select/examples/AsyncFilter.ts +149 -0
- package/skill/references/components/p-select/examples/Default.ts +32 -0
- package/skill/references/components/p-select/examples/Form.ts +38 -0
- package/skill/references/components/p-select/examples/Optgroups.ts +45 -0
- package/skill/references/components/p-select/examples/Required.ts +48 -0
- package/skill/references/components/p-select/examples/SelectedSlot.ts +130 -0
- package/skill/references/components/p-select/examples/SetValue.ts +71 -0
- package/skill/references/components/p-select/examples/Slots.ts +51 -0
- package/skill/references/components/p-select/examples/SlottedImages.ts +38 -0
- package/skill/references/components/p-select/p-select.md +194 -0
- package/skill/references/components/p-sheet/examples/Default.ts +33 -0
- package/skill/references/components/p-sheet/p-sheet.md +121 -0
- package/skill/references/components/p-spinner/examples/Color.ts +16 -0
- package/skill/references/components/p-spinner/examples/ColorCssVar.ts +13 -0
- package/skill/references/components/p-spinner/examples/Default.ts +13 -0
- package/skill/references/components/p-spinner/examples/ResponsiveSize.ts +13 -0
- package/skill/references/components/p-spinner/examples/Size.ts +16 -0
- package/skill/references/components/p-spinner/examples/SizeCssVar.ts +13 -0
- package/skill/references/components/p-spinner/p-spinner.md +96 -0
- package/skill/references/components/p-stepper-horizontal/examples/Default.ts +26 -0
- package/skill/references/components/p-stepper-horizontal/examples/FrameworkImplementation.ts +107 -0
- package/skill/references/components/p-stepper-horizontal/p-stepper-horizontal.md +109 -0
- package/skill/references/components/p-switch/examples/Default.ts +21 -0
- package/skill/references/components/p-switch/p-switch.md +103 -0
- package/skill/references/components/p-table/examples/Advanced.ts +162 -0
- package/skill/references/components/p-table/examples/CaptionProperty.ts +40 -0
- package/skill/references/components/p-table/examples/CaptionSlot.ts +43 -0
- package/skill/references/components/p-table/examples/Default.ts +120 -0
- package/skill/references/components/p-table/examples/HideLabel.ts +40 -0
- package/skill/references/components/p-table/examples/LayoutFixed.ts +53 -0
- package/skill/references/components/p-table/examples/Sorting.ts +79 -0
- package/skill/references/components/p-table/p-table.md +189 -0
- package/skill/references/components/p-tabs/examples/ActiveTab.ts +29 -0
- package/skill/references/components/p-tabs/examples/Default.ts +29 -0
- package/skill/references/components/p-tabs/examples/Gradient.ts +114 -0
- package/skill/references/components/p-tabs/examples/Labelling.ts +29 -0
- package/skill/references/components/p-tabs/p-tabs.md +136 -0
- package/skill/references/components/p-tabs-bar/examples/Default.ts +29 -0
- package/skill/references/components/p-tabs-bar/examples/Gradient.ts +80 -0
- package/skill/references/components/p-tabs-bar/examples/Labelling.ts +29 -0
- package/skill/references/components/p-tabs-bar/examples/Links.ts +23 -0
- package/skill/references/components/p-tabs-bar/p-tabs-bar.md +181 -0
- package/skill/references/components/p-tag/examples/Default.ts +15 -0
- package/skill/references/components/p-tag/examples/Multiline.ts +17 -0
- package/skill/references/components/p-tag/examples/SlottedButton.ts +44 -0
- package/skill/references/components/p-tag/examples/SlottedLink.ts +44 -0
- package/skill/references/components/p-tag/p-tag.md +66 -0
- package/skill/references/components/p-tag-dismissible/examples/Default.ts +15 -0
- package/skill/references/components/p-tag-dismissible/p-tag-dismissible.md +75 -0
- package/skill/references/components/p-text/examples/Default.ts +15 -0
- package/skill/references/components/p-text/examples/Semantics.ts +21 -0
- package/skill/references/components/p-text/examples/Size.ts +15 -0
- package/skill/references/components/p-text/examples/SizeResponsive.ts +15 -0
- package/skill/references/components/p-text/p-text.md +68 -0
- package/skill/references/components/p-text-list/examples/Default.ts +31 -0
- package/skill/references/components/p-text-list/p-text-list.md +68 -0
- package/skill/references/components/p-textarea/examples/Default.ts +13 -0
- package/skill/references/components/p-textarea/examples/Form.ts +31 -0
- package/skill/references/components/p-textarea/examples/Slots.ts +42 -0
- package/skill/references/components/p-textarea/p-textarea.md +122 -0
- package/skill/references/components/p-toast/examples/Default.ts +23 -0
- package/skill/references/components/p-toast/p-toast.md +61 -0
- package/skill/references/components/p-wordmark/examples/CustomClickableArea.ts +13 -0
- package/skill/references/components/p-wordmark/examples/Default.ts +13 -0
- package/skill/references/components/p-wordmark/examples/Size.ts +13 -0
- package/skill/references/components/p-wordmark/p-wordmark.md +66 -0
- package/skill/references/icons.md +5 -0
- package/skill/references/styles/emotion.md +439 -0
- package/skill/references/styles/scss.md +402 -0
- package/skill/references/styles/tailwindcss.md +356 -0
- package/skill/references/styles/vanilla-extract.md +444 -0
- package/skill/references/stylesheets.md +331 -0
- package/skill/references/tokens.md +323 -0
- package/types/porsche-design-system-components-angular.d.ts +2 -2
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# p-toast
|
|
2
|
+
|
|
3
|
+
The `p-toast` component manages both, the queue and display of toast messages. Therefore, you can only have a single instance of this component within your application. Its messages are rendered on the `#top-layer` which ensures the element to be on top of the page, independent of where `p-toast` is placed in the DOM hierarchy (z-index is not relevant anymore and won't have any effect).
|
|
4
|
+
|
|
5
|
+
Review the [notification decision tree](https://designsystem.porsche.com/patterns/notifications/decision-tree/) to determine which notification component is best for a particular scenario.
|
|
6
|
+
|
|
7
|
+
Queuing messages on `p-toast` component happens via its `addMessage()` method. For Angular users, we offer the injectable `ToastManager` service; for React and Vue, there is the `useToastManager()` hook (a composable in Vue). All expose the `addMessage()` method, which needs to be called with a parameter that has the following structure:
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
type ToastMessage = {
|
|
11
|
+
text: string;
|
|
12
|
+
state?: 'info' | 'success';
|
|
13
|
+
};
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
The bottom position of the `p-toast` can be adjusted via the `--p-toast-position-bottom` CSS variable.
|
|
17
|
+
|
|
18
|
+
For more information about the Usage of the `p-toast` checkout the [Notification](https://designsystem.porsche.com/patterns/notifications/introduction) page.
|
|
19
|
+
|
|
20
|
+
## Accessibility support
|
|
21
|
+
|
|
22
|
+
### Keyboard
|
|
23
|
+
|
|
24
|
+
| Key / state | Function |
|
|
25
|
+
| --- | --- |
|
|
26
|
+
| `Tab` | Moves focus to the close button of the `Toast` element. |
|
|
27
|
+
|
|
28
|
+
### ARIA enhancements
|
|
29
|
+
|
|
30
|
+
#### Internal **ARIA** that is managed by the component:
|
|
31
|
+
|
|
32
|
+
| ARIA | Usage |
|
|
33
|
+
| --- | --- |
|
|
34
|
+
| `role="status"` | When content is populated or changed in `state="info"`, the component announces it unobtrusively. |
|
|
35
|
+
| `aria-hidden="true"` | State `icon` is hidden from the screen reader. |
|
|
36
|
+
|
|
37
|
+
## Development considerations
|
|
38
|
+
|
|
39
|
+
### ARIA live announcements
|
|
40
|
+
|
|
41
|
+
The `Toast` component uses `role="status"` to announce **content changes** for assistive technologies. Therefore, it is **mandatory** that the component is **pre-rendered** and the content (`Toast Item`) is added dynamically.
|
|
42
|
+
|
|
43
|
+
### Common do's and don'ts
|
|
44
|
+
|
|
45
|
+
- **Do** pre-render `p-toast` and add `p-toast-item` elements dynamically.
|
|
46
|
+
- **Do** provide specific `text` that explains what happened and what to do next.
|
|
47
|
+
- **Don't** create the toast container only when a message should be announced.
|
|
48
|
+
|
|
49
|
+
## API
|
|
50
|
+
|
|
51
|
+
### CSS Variables
|
|
52
|
+
|
|
53
|
+
| CSS Variable | Default | Description |
|
|
54
|
+
| --- | --- | --- |
|
|
55
|
+
| `--p-toast-position-bottom` | `56px` | Defines the spacing between the toast and the bottom edge of its container. |
|
|
56
|
+
|
|
57
|
+
## Examples
|
|
58
|
+
|
|
59
|
+
| Example | When to use | File |
|
|
60
|
+
| --- | --- | --- |
|
|
61
|
+
| Default | Minimal default configuration. | [./examples/Default.ts](./examples/Default.ts) |
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { PorscheDesignSystemModule } from '@porsche-design-system/components-angular';
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: 'porsche-design-system-app',
|
|
6
|
+
template: `
|
|
7
|
+
<p-wordmark class="p-static-md" href="https://porsche.com" [aria]="{'aria-label': 'Porsche Homepage'}"></p-wordmark>
|
|
8
|
+
`,
|
|
9
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10
|
+
standalone: true,
|
|
11
|
+
imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
|
|
12
|
+
})
|
|
13
|
+
export class ExampleComponent {}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { PorscheDesignSystemModule } from '@porsche-design-system/components-angular';
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: 'porsche-design-system-app',
|
|
6
|
+
template: `
|
|
7
|
+
<p-wordmark></p-wordmark>
|
|
8
|
+
`,
|
|
9
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10
|
+
standalone: true,
|
|
11
|
+
imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
|
|
12
|
+
})
|
|
13
|
+
export class ExampleComponent {}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { PorscheDesignSystemModule } from '@porsche-design-system/components-angular';
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: 'porsche-design-system-app',
|
|
6
|
+
template: `
|
|
7
|
+
<p-wordmark class="h-[20px]" size="inherit"></p-wordmark>
|
|
8
|
+
`,
|
|
9
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10
|
+
standalone: true,
|
|
11
|
+
imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
|
|
12
|
+
})
|
|
13
|
+
export class ExampleComponent {}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# p-wordmark
|
|
2
|
+
|
|
3
|
+
The `p-wordmark` 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
|
+
You can use native `click`, `focus`, `focusin`, `blur` and `focusout` events on the `p-wordmark`.
|
|
6
|
+
|
|
7
|
+
## Usage
|
|
8
|
+
|
|
9
|
+
### Do
|
|
10
|
+
|
|
11
|
+
- Use the `p-wordmark` as the main brand identifier.
|
|
12
|
+
- Use the `p-wordmark` only in dedicated situations, like global navigation.
|
|
13
|
+
- Position the `p-wordmark` centered whenever possible.
|
|
14
|
+
- Use the `p-crest` only as an additional small brand identifier (e.g., within contact cards).
|
|
15
|
+
- Switch from the `p-wordmark` to the `p-crest` on small viewports below 480px (automatically implemented in global navigation and footer).
|
|
16
|
+
|
|
17
|
+
### Don't
|
|
18
|
+
|
|
19
|
+
- Use the `p-crest` as the primary brand identifier by default.
|
|
20
|
+
- Display the `p-wordmark` too often (usually once is enough).
|
|
21
|
+
|
|
22
|
+
## Accessibility support
|
|
23
|
+
|
|
24
|
+
### Keyboard
|
|
25
|
+
|
|
26
|
+
| Key / state | Function |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| `Tab`, `Shift-Tab` | If `href` prop is set, focus moves to the next (or previous) focusable element. |
|
|
29
|
+
| `Enter` | Activates the link. |
|
|
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 button 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 wordmark is linked.
|
|
46
|
+
- **Do** provide a descriptive `aria-label` for linked wordmarks, for example "Porsche home".
|
|
47
|
+
- **Don't** add native `aria-*` attributes directly on the component host.
|
|
48
|
+
|
|
49
|
+
## API
|
|
50
|
+
|
|
51
|
+
### Properties
|
|
52
|
+
|
|
53
|
+
| Property | Type | Default | Description |
|
|
54
|
+
| --- | --- | --- | --- |
|
|
55
|
+
| `aria` | `WordmarkAriaAttribute` | `undefined` | Sets ARIA attributes on the anchor element to improve accessibility when the wordmark is used as a link. |
|
|
56
|
+
| `href` | `string` | `undefined` | When set, wraps the wordmark in an anchor element that navigates to the given URL on click. |
|
|
57
|
+
| `size` | `'small'` `'inherit'` | `'small'` | Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens (`small`, `medium`, `large`, `inherit`). |
|
|
58
|
+
| `target` | `'_self'` `'_blank'` `'_parent'` `'_top'` `'string'` | `'_self'` | Specifies where to open the linked URL when `href` is set (e.g. `_self`, `_blank`). |
|
|
59
|
+
|
|
60
|
+
## Examples
|
|
61
|
+
|
|
62
|
+
| Example | When to use | File |
|
|
63
|
+
| --- | --- | --- |
|
|
64
|
+
| Default | Minimal default configuration. | [./examples/Default.ts](./examples/Default.ts) |
|
|
65
|
+
| Size | By default, the sizing is fluid, which can be changed to `inherit` a specified value. | [./examples/Size.ts](./examples/Size.ts) |
|
|
66
|
+
| Custom clickable/focusable area | Sometimes it may be useful to enlarge the clickable/focusable area of the `p-wordmark`. | [./examples/CustomClickableArea.ts](./examples/CustomClickableArea.ts) |
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Icon names
|
|
2
|
+
|
|
3
|
+
Valid values for the icon-typed props across PDS components (e.g. `p-icon` `name`, `p-button` `icon`, `p-link` `icon`, `p-inline-notification` `actionIcon`). Pass one as a string, e.g. `icon="arrow-right"`. Each component reference links here instead of repeating the full list. (`p-flag` `name` uses a separate set of flag names, not listed here.)
|
|
4
|
+
|
|
5
|
+
`360` `4-wheel-drive` `accessibility` `active-cabin-ventilation` `add` `adjust` `aggregation` `ai-3d-object` `ai-code` `ai-edit` `ai-image` `ai-scale` `ai-sound` `ai-spark` `ai-spark-filled` `ai-text` `ai-video` `arrow-compact-down` `arrow-compact-left` `arrow-compact-right` `arrow-compact-up` `arrow-double-down` `arrow-double-left` `arrow-double-right` `arrow-double-up` `arrow-down` `arrow-down-left` `arrow-down-right` `arrow-first` `arrow-head-down` `arrow-head-left` `arrow-head-right` `arrow-head-up` `arrow-last` `arrow-left` `arrow-right` `arrow-up` `arrow-up-left` `arrow-up-right` `arrows` `attachment` `augmented-reality` `battery-empty` `battery-empty-co2` `battery-empty-fuel` `battery-full` `battery-half` `battery-one-quarter` `battery-three-quarters` `bell` `bookmark` `bookmark-filled` `brain` `broadcast` `cabriolet` `calculator` `calendar` `camera` `car` `car-battery` `card` `charging-active` `charging-network` `charging-state` `charging-station` `chart` `chat` `check` `city` `climate` `climate-control` `clock` `close` `closed-caption` `cloud` `co2-class` `co2-emission` `color-picker` `compare` `compass` `configurate` `copy` `country-road` `coupe` `cubic-capacity` `cut` `delete` `disable` `dislike` `dislike-filled` `document` `door` `download` `drag` `duration` `ear` `edit` `email` `error` `error-filled` `exclamation` `exclamation-filled` `external` `fast-backward` `fast-forward` `file-csv` `file-excel` `filter` `fingerprint` `flag` `flash` `fuel-station` `garage` `genuine-parts` `geo-localization` `gift` `globe` `grid` `grip` `group` `hand` `heart` `heart-filled` `highway` `highway-filled` `history` `home` `horn` `image` `increase` `information` `information-filled` `key` `laptop` `leaf` `leather` `light` `like` `like-filled` `limousine` `linked` `list` `locate` `lock` `lock-open` `logo-apple-carplay` `logo-apple-music` `logo-apple-podcast` `logo-baidu` `logo-delicious` `logo-digg` `logo-facebook` `logo-foursquare` `logo-gmail` `logo-google` `logo-hatena` `logo-instagram` `logo-kaixin` `logo-kakaotalk` `logo-kununu` `logo-linkedin` `logo-naver` `logo-pinterest` `logo-qq` `logo-qq-share` `logo-reddit` `logo-skyrock` `logo-snapchat` `logo-sohu` `logo-spotify` `logo-tecent` `logo-telegram` `logo-tiktok` `logo-tumblr` `logo-twitter` `logo-viber` `logo-vk` `logo-wechat` `logo-weibo` `logo-whatsapp` `logo-x` `logo-xing` `logo-yahoo` `logo-youku` `logo-youtube` `logout` `map` `menu-dots-horizontal` `menu-dots-vertical` `menu-lines` `microphone` `minus` `mobile` `moon` `new-chat` `news` `north-arrow` `oil-can` `online-search` `parking-brake` `parking-light` `paste` `pause` `phone` `pin` `pin-filled` `pivot` `play` `play-filled` `plug` `plus` `preheating` `price-tag` `printer` `purchase` `push-pin` `push-pin-off` `qr` `qr-off` `question` `question-filled` `racing-flag` `radar` `radio` `refresh` `replay` `reset` `return` `road` `roof-closed` `roof-open` `route` `rss` `save` `screen` `search` `seat` `send` `service-technician` `share` `shopping-bag` `shopping-bag-filled` `shopping-cart` `shopping-cart-filled` `sidebar` `sidelights` `skip-backward` `skip-forward` `snowflake` `sort` `stack` `star` `star-filled` `steering-wheel` `stop` `stopwatch` `subtract` `success` `success-filled` `sun` `suv` `switch` `tablet` `tachometer` `theme` `tire` `trigger-finger` `truck` `turismo` `unlinked` `upload` `user` `user-filled` `user-group` `user-manual` `video` `view` `view-off` `volume-off` `volume-up` `warning` `warning-filled` `weather` `weight` `wifi` `work` `wrench` `wrenches` `zoom-in` `zoom-out`
|
|
@@ -0,0 +1,439 @@
|
|
|
1
|
+
# Porsche Design System — Emotion
|
|
2
|
+
|
|
3
|
+
The Porsche Design System ships a ready-made [Emotion](https://emotion.sh) package: a curated catalog of design tokens
|
|
4
|
+
exposed as JavaScript values (colors, typography, spacing, border radii, blur, shadow, motion and breakpoints) plus a
|
|
5
|
+
set of documented style utilities (the layout grid, focus, skeletons, media queries, typography shorthands and the
|
|
6
|
+
color-scheme styles). Every documented symbol is a named export you import and apply inside your Emotion `css`/`styled`
|
|
7
|
+
styles.
|
|
8
|
+
|
|
9
|
+
Reach for these foundational styles when you build a custom component or pattern that is not yet available in the
|
|
10
|
+
component library, or for foundational layout work such as typography, surfaces and boxes.
|
|
11
|
+
|
|
12
|
+
This document is an index of the package. Tokens resolve to native CSS
|
|
13
|
+
[`light-dark()`](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) custom
|
|
14
|
+
properties at runtime, so the exact value follows the active color scheme — import the token by name and let it resolve.
|
|
15
|
+
|
|
16
|
+
## How to use
|
|
17
|
+
|
|
18
|
+
### Import
|
|
19
|
+
|
|
20
|
+
Install Emotion (see the [official guide](https://emotion.sh/docs/install)), then import the documented
|
|
21
|
+
tokens and utilities from the Porsche Design System Emotion entry:
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
import { colorPrimary, spacingFluidMd } from '@porsche-design-system/components-angular/emotion';
|
|
25
|
+
import styled from '@emotion/styled';
|
|
26
|
+
|
|
27
|
+
const Card = styled.div({
|
|
28
|
+
color: colorPrimary,
|
|
29
|
+
padding: spacingFluidMd,
|
|
30
|
+
});
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Tokens are plain values you assign to CSS properties; utilities are style objects or functions you
|
|
34
|
+
spread/call inside your styles (e.g. `css(getFocusVisibleStyle())`, `<Global styles={colorSchemeStyles} />`).
|
|
35
|
+
|
|
36
|
+
### Color scheme (light / dark)
|
|
37
|
+
|
|
38
|
+
Colors are driven by the native CSS [`light-dark()`](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark)
|
|
39
|
+
function via the CSS [`color-scheme`](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/color-scheme)
|
|
40
|
+
property — no proprietary switching logic. Include the global `colorSchemeStyles` **once** in your
|
|
41
|
+
global styles to generate the `.scheme-*` utility classes and add a polyfill for browsers without
|
|
42
|
+
`light-dark()` support:
|
|
43
|
+
|
|
44
|
+
```tsx
|
|
45
|
+
import { colorSchemeStyles } from '@porsche-design-system/components-angular/emotion';
|
|
46
|
+
import { Global } from '@emotion/react';
|
|
47
|
+
|
|
48
|
+
// global setup
|
|
49
|
+
<Global styles={colorSchemeStyles} />;
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Then use the light-dark color tokens in your component styles; they resolve to the correct value for
|
|
53
|
+
the active theme automatically. Apply one of the `.scheme-*` classes to the document or any container
|
|
54
|
+
and the selected context cascades to all child elements:
|
|
55
|
+
|
|
56
|
+
- `.scheme-light` — forces light mode.
|
|
57
|
+
- `.scheme-dark` — forces dark mode.
|
|
58
|
+
- `.scheme-light-dark` — dynamically follows the system/OS setting.
|
|
59
|
+
|
|
60
|
+
The same class themes **both** the PDS components and your own Emotion-styled markup — one
|
|
61
|
+
`light-dark()` palette drives both layers. There is no separate component theming API and no `theme`
|
|
62
|
+
prop on `PorscheDesignSystemProvider` or on components; the `.scheme-*` class is the whole switch.
|
|
63
|
+
|
|
64
|
+
```tsx
|
|
65
|
+
<div className="scheme-dark">{/* rendered in dark mode */}</div>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Grid
|
|
69
|
+
|
|
70
|
+
For pages whose sections share one alignment system, apply `gridStyle` once to the page root. Make each full-width section
|
|
71
|
+
a subgrid, then place its content with the Porsche Grid variables. This avoids repeating `gridStyle` and keeps all
|
|
72
|
+
sections aligned. Section-level grid instances remain valid when sections need independent grids.
|
|
73
|
+
|
|
74
|
+
### Tokens and utilities
|
|
75
|
+
|
|
76
|
+
Every documented token is a named value export (e.g. `colorPrimary`, `radiusMd`); every documented
|
|
77
|
+
utility is a style object or a function returning one (e.g. `getMediaQueryMin`, `proseHeadingMdStyle`,
|
|
78
|
+
`gridNarrow`). Use the reference below to discover what is available.
|
|
79
|
+
|
|
80
|
+
### Deprecated aliases
|
|
81
|
+
|
|
82
|
+
The package still ships legacy exports as deprecated aliases so existing code keeps working. They are
|
|
83
|
+
intentionally **not** listed here — prefer the documented tokens and utilities below for new code.
|
|
84
|
+
|
|
85
|
+
## Contents
|
|
86
|
+
|
|
87
|
+
- [Tokens](#tokens) — Border, Blur, Breakpoint, Color, Font, Shadow, Spacing, Motion, Gradient, Grid
|
|
88
|
+
- [Utilities](#utilities) — Breakpoint, Color, Font, Typography (Heading / Text), Skeleton, Focus, Media query, Grid (Base / Narrow / Basic / Extended / Wide / Full)
|
|
89
|
+
|
|
90
|
+
## Tokens
|
|
91
|
+
|
|
92
|
+
### Border — Radius
|
|
93
|
+
|
|
94
|
+
| Export | Description | Value |
|
|
95
|
+
| --- | --- | --- |
|
|
96
|
+
| `radiusXs` | Holds a **x-small** `border-radius`. | `2px` |
|
|
97
|
+
| `radiusSm` | Holds a **small** `border-radius`. | `4px` |
|
|
98
|
+
| `radiusMd` | Holds a **medium** `border-radius`. Used for `p-checkbox` in **compact mode**. | `6px` |
|
|
99
|
+
| `radiusLg` | Holds a **large** `border-radius`. Used for interactive controls in **compact mode** (e.g. `p-tabs-bar`, `p-input-*`, `p-textarea`, `p-select`, `p-button`, `p-link`,…). | `8px` |
|
|
100
|
+
| `radiusXl` | Holds a **x-large** `border-radius`. Used for interactive controls (e.g. `p-tabs-bar`, `p-input-*`, `p-textarea`, `p-select`, `p-button`, `p-link`,…). Defines the primary visual appearance alongside **radius3Xl**. | `12px` |
|
|
101
|
+
| `radius2Xl` | Holds a **2x-large** `border-radius`. Used for notification components (e.g. `p-banner`, `p-inline-notification`, `p-toast`,…). | `16px` |
|
|
102
|
+
| `radius3Xl` | Holds a **3x-large** `border-radius`. Used for card-like containers or dialogs (e.g. `p-link-tile`, `p-modal`, `p-flyout`, `p-sheet`,…). Defines the primary visual appearance alongside **radiusXl**. | `24px` |
|
|
103
|
+
| `radius4Xl` | Holds a **4x-large** `border-radius`. | `32px` |
|
|
104
|
+
| `radiusFull` | Holds a **fully** rounded `border-radius`. Used for pill shapes (e.g. `p-tag`, `p-switch`,…). Recommended only for standalone indicators. | `calc(infinity * 1px)` |
|
|
105
|
+
|
|
106
|
+
### Blur
|
|
107
|
+
|
|
108
|
+
| Export | Description | Value |
|
|
109
|
+
| --- | --- | --- |
|
|
110
|
+
| `blurFrosted` | Holds a blur value for a **frosted** effect when combined with a semi-transparent color. | `blur(32px)` |
|
|
111
|
+
|
|
112
|
+
### Breakpoint
|
|
113
|
+
|
|
114
|
+
| Export | Description | Value |
|
|
115
|
+
| --- | --- | --- |
|
|
116
|
+
| `breakpointXS` | Holds the `xs` breakpoint value. | `480` |
|
|
117
|
+
| `breakpointS` | Holds the `sm` breakpoint value. | `760` |
|
|
118
|
+
| `breakpointM` | Holds the `md` breakpoint value. | `1000` |
|
|
119
|
+
| `breakpointL` | Holds the `lg` breakpoint value. | `1300` |
|
|
120
|
+
| `breakpointXL` | Holds the `xl` breakpoint value. | `1760` |
|
|
121
|
+
| `breakpointXXL` | Holds the `2xl` breakpoint value. | `1920` |
|
|
122
|
+
| `breakpointBase` | Holds the `base` breakpoint value. | `0` |
|
|
123
|
+
|
|
124
|
+
### Color — Background
|
|
125
|
+
|
|
126
|
+
| Export | Description | Value |
|
|
127
|
+
| --- | --- | --- |
|
|
128
|
+
| `colorCanvas` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **canvas** color, typically used for surfaces. | `var(--_color-canvas, light-dark(#fff,hsl(225 66.7% 1.2%)))` |
|
|
129
|
+
| `colorSurface` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **surface** color, typically used for surfaces. | `var(--_color-surface, light-dark(hsl(240 10% 95%),hsl(240 2% 10%)))` |
|
|
130
|
+
| `colorFrosted` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **frosted** color, typically used as a background in combination with `blur()`. | `var(--_color-frosted, light-dark(hsl(240 5% 70% / 0.148),hsl(240 2% 43% / 0.228)))` |
|
|
131
|
+
| `colorFrostedSoft` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **frosted-soft** color, typically used as a background `:hover`. | `var(--_color-frosted-soft, light-dark(hsl(234 9.8% 60% / 0.06),hsl(240 3.7% 26.5% / 0.154)))` |
|
|
132
|
+
| `colorFrostedStrong` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **frosted-strong** color, typically used as a background in combination with `blur()`. | `var(--_color-frosted-strong, light-dark(hsl(236 6.5% 42% / 0.236),hsl(240 1.5% 61.8% / 0.302)))` |
|
|
133
|
+
| `colorBackdrop` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **backdrop** color, typically used for backdrops. | `var(--_color-backdrop, light-dark(hsl(240 5.3% 14.9% / 0.5),hsl(240 5.3% 14.9% / 0.5)))` |
|
|
134
|
+
|
|
135
|
+
### Color — Foreground
|
|
136
|
+
|
|
137
|
+
| Export | Description | Value |
|
|
138
|
+
| --- | --- | --- |
|
|
139
|
+
| `colorPrimary` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **primary** color, typically used for text. | `var(--_color-primary, light-dark(hsl(225 66.7% 1.2%),hsl(225 100% 99%)))` |
|
|
140
|
+
| `colorContrastHigher` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **contrast-higher** color, typically used for text. | `var(--_color-contrast-higher, light-dark(hsl(240 8.7% 9% / 0.8),hsl(240 12.5% 96.9% / 0.78)))` |
|
|
141
|
+
| `colorContrastHigh` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **contrast-high** color, typically used for text. | `var(--_color-contrast-high, light-dark(hsl(240 7.1% 11% / 0.7),hsl(240 12.5% 96.9% / 0.67)))` |
|
|
142
|
+
| `colorContrastMedium` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **contrast-medium** color, typically used for text. | `var(--_color-contrast-medium, light-dark(hsl(240 6.1% 7% / 0.6),hsl(240 12.5% 96.9% / 0.56)))` |
|
|
143
|
+
| `colorContrastLow` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **contrast-low** color, intended only for decorative elements. | `var(--_color-contrast-low, light-dark(hsl(240 5.3% 14.9% / 0.5),hsl(240 12.5% 96.9% / 0.45)))` |
|
|
144
|
+
| `colorContrastLower` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **contrast-lower** color, intended only for decorative elements. | `var(--_color-contrast-lower, light-dark(hsl(234 6% 32.9% / 0.324),hsl(240 1.5% 61.8% / 0.302)))` |
|
|
145
|
+
|
|
146
|
+
### Color — Semantic
|
|
147
|
+
|
|
148
|
+
| Export | Description | Value |
|
|
149
|
+
| --- | --- | --- |
|
|
150
|
+
| `colorInfo` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **info** color, typically used for text. | `var(--_color-info, light-dark(hsl(228 83.2% 51%),hsl(210 100% 54.5%)))` |
|
|
151
|
+
| `colorInfoMedium` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **info-medium** color, typically used for text or border. | `var(--_color-info-medium, light-dark(hsl(228 83.2% 51% / 0.6),hsl(210 100% 54.5% / 0.6)))` |
|
|
152
|
+
| `colorInfoLow` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **info-low** color, typically used for text or border. | `var(--_color-info-low, light-dark(hsl(228 83.2% 51% / 0.18),hsl(210 100% 54.5% / 0.18)))` |
|
|
153
|
+
| `colorInfoFrosted` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **info-frosted** color, typically used as background with `.backdrop-blur-frosted`. | `var(--_color-info-frosted, light-dark(hsl(211 100% 90% / 0.55),hsl(210 79% 20% / 0.66)))` |
|
|
154
|
+
| `colorInfoFrostedSoft` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **info-frosted-soft** color, typically used as background `:hover`. | `var(--_color-info-frosted-soft, light-dark(hsl(211 80% 95% / 0.55),hsl(210 59% 15% / 0.66)))` |
|
|
155
|
+
| `colorSuccess` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **success** color, typically used for text. | `var(--_color-success, light-dark(hsl(115 77.5% 27.8%),hsl(157 84.9% 41.6%)))` |
|
|
156
|
+
| `colorSuccessMedium` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **success-medium** color, typically used for text or border. | `var(--_color-success-medium, light-dark(hsl(115 77.5% 27.8% / 0.6),hsl(157 84.9% 41.6% / 0.6)))` |
|
|
157
|
+
| `colorSuccessLow` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **success-low** color, typically used for text or border. | `var(--_color-success-low, light-dark(hsl(115 77.5% 27.8% / 0.18),hsl(157 84.9% 41.6% / 0.18)))` |
|
|
158
|
+
| `colorSuccessFrosted` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **success-frosted** color, typically used as background with `.backdrop-blur-frosted`. | `var(--_color-success-frosted, light-dark(hsl(109 100% 90% / 0.55),hsl(157 79% 20% / 0.66)))` |
|
|
159
|
+
| `colorSuccessFrostedSoft` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **success-frosted-soft** color, typically used as background `:hover`. | `var(--_color-success-frosted-soft, light-dark(hsl(109 80% 95% / 0.55),hsl(157 59% 15% / 0.66)))` |
|
|
160
|
+
| `colorWarning` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **warning** color, typically used for text. | `var(--_color-warning, light-dark(hsl(28 97.7% 34.1%),hsl(28 90.2% 56.1%)))` |
|
|
161
|
+
| `colorWarningMedium` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **warning-medium** color, typically used for text or border. | `var(--_color-warning-medium, light-dark(hsl(28 97.7% 34.1% / 0.6),hsl(28 90.2% 56.1% / 0.6)))` |
|
|
162
|
+
| `colorWarningLow` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **warning-low** color, typically used for text or border. | `var(--_color-warning-low, light-dark(hsl(28 97.7% 34.1% / 0.18),hsl(28 90.2% 56.1% / 0.18)))` |
|
|
163
|
+
| `colorWarningFrosted` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **warning-frosted** color, typically used as background with `.backdrop-blur-frosted`. | `var(--_color-warning-frosted, light-dark(hsl(40 100% 90% / 0.55),hsl(52 79% 20% / 0.66)))` |
|
|
164
|
+
| `colorWarningFrostedSoft` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **warning-frosted-soft** color, typically used as background `:hover`. | `var(--_color-warning-frosted-soft, light-dark(hsl(40 80% 95% / 0.55),hsl(52 59% 15% / 0.66)))` |
|
|
165
|
+
| `colorError` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **error** color, typically used for text. | `var(--_color-error, light-dark(hsl(357 78% 41%),hsl(0 96.9% 62%)))` |
|
|
166
|
+
| `colorErrorMedium` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **error-medium** color, typically used for text or border. | `var(--_color-error-medium, light-dark(hsl(357 78% 41% / 0.6),hsl(0 96.9% 62% / 0.6)))` |
|
|
167
|
+
| `colorErrorLow` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **error-low** color, typically used for text or border. | `var(--_color-error-low, light-dark(hsl(357 78% 41% / 0.18),hsl(0 96.9% 62% / 0.18)))` |
|
|
168
|
+
| `colorErrorFrosted` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **error-frosted** color, typically used as background with `.backdrop-blur-frosted`. | `var(--_color-error-frosted, light-dark(hsl(0 100% 90% / 0.55),hsl(0 79% 20% / 0.66)))` |
|
|
169
|
+
| `colorErrorFrostedSoft` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **error-frosted-soft** color, typically used as background `:hover`. | `var(--_color-error-frosted-soft, light-dark(hsl(0 80% 95% / 0.55),hsl(0 59% 15% / 0.66)))` |
|
|
170
|
+
|
|
171
|
+
### Color — A11y
|
|
172
|
+
|
|
173
|
+
| Export | Description | Value |
|
|
174
|
+
| --- | --- | --- |
|
|
175
|
+
| `colorFocus` | Holds the [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) **focus** color, typically used as the outline for `:focus-visible` states. | `var(--_color-focus, light-dark(#1A44EA,#1A44EA))` |
|
|
176
|
+
|
|
177
|
+
### Font — Family
|
|
178
|
+
|
|
179
|
+
| Export | Description | Value |
|
|
180
|
+
| --- | --- | --- |
|
|
181
|
+
| `fontPorscheNext` | Holds the **Porsche Next** font family along with fallback fonts. | `'Porsche Next','Arial Narrow',Arial,'Heiti SC',SimHei,sans-serif` |
|
|
182
|
+
| `fontPorscheNextZhHans` | Holds the **Porsche Next** font family along with fallback fonts for **Simplified Chinese**. | `'Porsche Next', 'PingFang SC', 'Microsoft YaHei', 'Noto Sans SC', 'Arial Narrow', Arial, sans-serif` |
|
|
183
|
+
| `fontPorscheNextZhHant` | Holds the **Porsche Next** font family along with fallback fonts for **Traditional Chinese**. | `'Porsche Next', 'PingFang TC', 'Microsoft JhengHei', 'Noto Sans TC', 'Arial Narrow', Arial, sans-serif` |
|
|
184
|
+
| `fontPorscheNextJa` | Holds the **Porsche Next** font family along with fallback fonts for **Japanese**. | `'Porsche Next', 'Hiragino Sans', 'Yu Gothic', 'Noto Sans JP', 'Arial Narrow', Arial, sans-serif` |
|
|
185
|
+
| `fontPorscheNextKo` | Holds the **Porsche Next** font family along with fallback fonts for **Korean**. | `'Porsche Next', 'Apple SD Gothic Neo', 'Malgun Gothic', 'Noto Sans KR', 'Arial Narrow', Arial, sans-serif` |
|
|
186
|
+
|
|
187
|
+
### Font — Weight
|
|
188
|
+
|
|
189
|
+
| Export | Description | Value |
|
|
190
|
+
| --- | --- | --- |
|
|
191
|
+
| `fontWeightNormal` | Holds the **normal** font weight optimized for the Porsche Next typeface. | `400` |
|
|
192
|
+
| `fontWeightSemibold` | Holds the **semibold** font weight optimized for the Porsche Next typeface. | `600` |
|
|
193
|
+
| `fontWeightBold` | Holds the **bold** font weight optimized for the Porsche Next typeface. | `700` |
|
|
194
|
+
|
|
195
|
+
### Font — Line height
|
|
196
|
+
|
|
197
|
+
| Export | Description | Value |
|
|
198
|
+
| --- | --- | --- |
|
|
199
|
+
| `leadingNormal` | Holds a dynamic default line height specifically optimized for the Porsche Next typeface. | `calc(6px + 2.125ex)` |
|
|
200
|
+
|
|
201
|
+
### Font — Size
|
|
202
|
+
|
|
203
|
+
| Export | Description | Value |
|
|
204
|
+
| --- | --- | --- |
|
|
205
|
+
| `typescale2Xs` | Holds the **2x-small** font size optimized for the Porsche Next typeface. | `.75rem` |
|
|
206
|
+
| `typescaleXs` | Holds the **x-small** font size optimized for the Porsche Next typeface. | `.875rem` |
|
|
207
|
+
| `typescaleSm` | Holds the **small** font size optimized for the Porsche Next typeface. | `1rem` |
|
|
208
|
+
| `typescaleMd` | Holds the **medium** font size optimized for the Porsche Next typeface. | `clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem)` |
|
|
209
|
+
| `typescaleLg` | Holds the **large** font size optimized for the Porsche Next typeface. | `clamp(1.27rem, 0.51vw + 1.16rem, 1.78rem)` |
|
|
210
|
+
| `typescaleXl` | Holds the **x-large** font size optimized for the Porsche Next typeface. | `clamp(1.42rem, 0.94vw + 1.23rem, 2.37rem)` |
|
|
211
|
+
| `typescale2Xl` | Holds the **2x-large** font size optimized for the Porsche Next typeface. | `clamp(1.6rem, 1.56vw + 1.29rem, 3.16rem)` |
|
|
212
|
+
| `typescale3Xl` | Holds the **3x-large** font size optimized for the Porsche Next typeface. | `clamp(1.8rem, 2.41vw + 1.32rem, 4.21rem)` |
|
|
213
|
+
| `typescale4Xl` | Holds the **4x-large** font size optimized for the Porsche Next typeface. | `clamp(2.03rem, 3.58vw + 1.31rem, 5.61rem)` |
|
|
214
|
+
| `typescale5Xl` | Holds the **5x-large** font size optimized for the Porsche Next typeface. | `clamp(2.28rem, 5.2vw + 1.24rem, 7.48rem)` |
|
|
215
|
+
|
|
216
|
+
### Shadow
|
|
217
|
+
|
|
218
|
+
| Export | Description | Value |
|
|
219
|
+
| --- | --- | --- |
|
|
220
|
+
| `shadowSm` | Holds a **small** `shadow`. | `0px 3px 8px rgba(0,0,0,.16)` |
|
|
221
|
+
| `shadowMd` | Holds a **medium** `shadow`. | `0px 4px 16px rgba(0,0,0,.16)` |
|
|
222
|
+
| `shadowLg` | Holds a **large** `shadow`. | `0px 8px 40px rgba(0,0,0,.16)` |
|
|
223
|
+
|
|
224
|
+
### Spacing — Fluid
|
|
225
|
+
|
|
226
|
+
| Export | Description | Value |
|
|
227
|
+
| --- | --- | --- |
|
|
228
|
+
| `spacingFluidXs` | Holds the **x-small fluid** spacing. | `clamp(4px, 0.25vw + 3px, 8px)` |
|
|
229
|
+
| `spacingFluidSm` | Holds the **small fluid** spacing. | `clamp(8px, 0.5vw + 6px, 16px)` |
|
|
230
|
+
| `spacingFluidMd` | Holds the **medium fluid** spacing. | `clamp(16px, 1.25vw + 12px, 36px)` |
|
|
231
|
+
| `spacingFluidLg` | Holds the **large fluid** spacing. | `clamp(32px, 2.75vw + 23px, 76px)` |
|
|
232
|
+
| `spacingFluidXl` | Holds the **x-large fluid** spacing. | `clamp(48px, 3vw + 38px, 96px)` |
|
|
233
|
+
| `spacingFluid2Xl` | Holds the **2x-large fluid** spacing. | `clamp(80px, 7.5vw + 56px, 200px)` |
|
|
234
|
+
|
|
235
|
+
### Spacing — Static
|
|
236
|
+
|
|
237
|
+
| Export | Description | Value |
|
|
238
|
+
| --- | --- | --- |
|
|
239
|
+
| `spacingStatic2Xs` | Holds the **2x-small static** spacing. | `1px` |
|
|
240
|
+
| `spacingStaticXs` | Holds the **x-small static** spacing. | `4px` |
|
|
241
|
+
| `spacingStaticSm` | Holds the **small static** spacing. | `8px` |
|
|
242
|
+
| `spacingStaticMd` | Holds the **medium static** spacing. | `16px` |
|
|
243
|
+
| `spacingStaticLg` | Holds the **large static** spacing. | `32px` |
|
|
244
|
+
| `spacingStaticXl` | Holds the **x-large static** spacing. | `48px` |
|
|
245
|
+
| `spacingStatic2Xl` | Holds the **2x-large static** spacing. | `80px` |
|
|
246
|
+
|
|
247
|
+
### Motion — Duration
|
|
248
|
+
|
|
249
|
+
| Export | Description | Value |
|
|
250
|
+
| --- | --- | --- |
|
|
251
|
+
| `durationSm` | Holds a **short** `transition-duration` / `animation-duration`. | `.25s` |
|
|
252
|
+
| `durationMd` | Holds a **moderate** `transition-duration` / `animation-duration`. | `.4s` |
|
|
253
|
+
| `durationLg` | Holds a **long** `transition-duration` / `animation-duration`. | `.6s` |
|
|
254
|
+
| `durationXl` | Holds a **very long** `transition-duration` / `animation-duration`. | `1.2s` |
|
|
255
|
+
|
|
256
|
+
### Motion — Ease
|
|
257
|
+
|
|
258
|
+
| Export | Description | Value |
|
|
259
|
+
| --- | --- | --- |
|
|
260
|
+
| `easeInOut` | Holds an **in-out** `transition-timing-function`. | `cubic-bezier(.25,.1,.25,1)` |
|
|
261
|
+
| `easeIn` | Holds an **in** `transition-timing-function`. | `cubic-bezier(0,0,.2,1)` |
|
|
262
|
+
| `easeOut` | Holds an **out** `transition-timing-function`. | `cubic-bezier(.4,0,.5,1)` |
|
|
263
|
+
|
|
264
|
+
### Gradient
|
|
265
|
+
|
|
266
|
+
| Export | Description | Value |
|
|
267
|
+
| --- | --- | --- |
|
|
268
|
+
| `gradientStopsFadeDark` | Holds color stops for a faded gradient, used as `background-image`. | `hsla(0,0%,0%,.8) 0%,hsla(0,0%,0%,.8) 8.1%,hsla(0,0%,0%,.8) 15.5%,hsla(0,0%,0%,.8) 22.5%,hsla(0,0%,0%,.78) 29%,hsla(0,0%,0%,.73) 35.3%,hsla(0,0%,0%,.67) 41.2%,hsla(0,0%,0%,.6) 47.1%,hsla(0,0%,0%,.52) 52.9%,hsla(0,0%,0%,.44) 58.8%,hsla(0,0%,0%,.33) 64.7%,hsla(0,0%,0%,.22) 71%,hsla(0,0%,0%,.12) 77.5%,hsla(0,0%,0%,.05) 84.5%,hsla(0,0%,0%,.011) 91.9%,hsla(0,0%,0%,0) 100%` |
|
|
269
|
+
|
|
270
|
+
### Grid — Base
|
|
271
|
+
|
|
272
|
+
| Export | Description | Value |
|
|
273
|
+
| --- | --- | --- |
|
|
274
|
+
| `gridGap` | Holds the grid **gap** of the Porsche Grid. | `clamp(16px, 1.25vw + 12px, 36px)` |
|
|
275
|
+
|
|
276
|
+
### Grid — Narrow
|
|
277
|
+
|
|
278
|
+
| Export | Description | Value |
|
|
279
|
+
| --- | --- | --- |
|
|
280
|
+
| `gridNarrowColumnStart` | Holds the **start** position of the `narrow` area within the Porsche Grid. | `narrow-start` |
|
|
281
|
+
| `gridNarrowColumnEnd` | Holds the **end** position of the `narrow` area within the Porsche Grid. | `narrow-end` |
|
|
282
|
+
| `gridNarrowSpanOneHalf` | Holds a **one half** span within the `narrow` area of the Porsche Grid. | `var(--pds-grid-narrow-span-one-half)` |
|
|
283
|
+
| `gridNarrowOffsetBase` | Holds a **base** offset within the `narrow` area of the Porsche Grid. | `max(22px, 10.625vw - 12px)` |
|
|
284
|
+
| `gridNarrowOffsetS` | Holds a **small** offset within the `narrow` area of the Porsche Grid. | `calc(calc(5vw - 16px) + (clamp(16px, 1.25vw + 12px, 36px) + calc((100vw - calc(5vw - 16px) * 2 - clamp(16px, 1.25vw + 12px, 36px) * 15) / 16)) * 4)` |
|
|
285
|
+
| `gridNarrowOffsetXXL` | Holds a **xxl** offset within the `narrow` area of the Porsche Grid. | `calc(max(0px, 50vw - 2560px / 2) + min(50vw - 880px, 400px) + (clamp(16px, 1.25vw + 12px, 36px) + calc((min(100vw, 2560px) - min(50vw - 880px, 400px) * 2 - clamp(16px, 1.25vw + 12px, 36px) * 15) / 16)) * 4)` |
|
|
286
|
+
|
|
287
|
+
### Grid — Basic
|
|
288
|
+
|
|
289
|
+
| Export | Description | Value |
|
|
290
|
+
| --- | --- | --- |
|
|
291
|
+
| `gridBasicColumnStart` | Holds the **start** position of the `basic` area within the Porsche Grid. | `basic-start` |
|
|
292
|
+
| `gridBasicColumnEnd` | Holds the **end** position of the `basic` area within the Porsche Grid. | `basic-end` |
|
|
293
|
+
| `gridBasicSpanOneHalf` | Holds a **half** span within the `basic` area of the Porsche Grid. | `var(--pds-grid-basic-span-one-half)` |
|
|
294
|
+
| `gridBasicSpanOneThird` | Holds a **one third** span within the `basic` area of the Porsche Grid. | `var(--pds-grid-basic-span-one-third)` |
|
|
295
|
+
| `gridBasicSpanTwoThirds` | Holds a **two thirds** span within the `basic` area of the Porsche Grid. | `var(--pds-grid-basic-span-two-thirds)` |
|
|
296
|
+
| `gridBasicOffsetBase` | Holds a **base** offset within the `basic` area of the Porsche Grid. | `max(22px, 10.625vw - 12px)` |
|
|
297
|
+
| `gridBasicOffsetS` | Holds a **small** offset within the `basic` area of the Porsche Grid. | `calc(calc(5vw - 16px) + (clamp(16px, 1.25vw + 12px, 36px) + calc((100vw - calc(5vw - 16px) * 2 - clamp(16px, 1.25vw + 12px, 36px) * 15) / 16)) * 2)` |
|
|
298
|
+
| `gridBasicOffsetXXL` | Holds a **xxl** offset within the `basic` area of the Porsche Grid. | `calc(max(0px, 50vw - 2560px / 2) + min(50vw - 880px, 400px) + (clamp(16px, 1.25vw + 12px, 36px) + calc((min(100vw, 2560px) - min(50vw - 880px, 400px) * 2 - clamp(16px, 1.25vw + 12px, 36px) * 15) / 16)) * 2)` |
|
|
299
|
+
|
|
300
|
+
### Grid — Extended
|
|
301
|
+
|
|
302
|
+
| Export | Description | Value |
|
|
303
|
+
| --- | --- | --- |
|
|
304
|
+
| `gridExtendedColumnStart` | Holds the **start** position of the `extended` area within the Porsche Grid. | `extended-start` |
|
|
305
|
+
| `gridExtendedColumnEnd` | Holds the **end** position of the `extended` area within the Porsche Grid. | `extended-end` |
|
|
306
|
+
| `gridExtendedSpanOneHalf` | Holds a **half** span within the `extended` area of the Porsche Grid. | `var(--pds-grid-extended-span-one-half)` |
|
|
307
|
+
| `gridExtendedOffsetBase` | Holds a **base** offset within the `extended` area of the Porsche Grid. | `max(22px, 10.625vw - 12px)` |
|
|
308
|
+
| `gridExtendedOffsetS` | Holds a **small** offset within the `extended` area of the Porsche Grid. | `calc(calc(5vw - 16px) + (clamp(16px, 1.25vw + 12px, 36px) + calc((100vw - calc(5vw - 16px) * 2 - clamp(16px, 1.25vw + 12px, 36px) * 15) / 16)) * 1)` |
|
|
309
|
+
| `gridExtendedOffsetXXL` | Holds a **xxl** offset within the `extended` area of the Porsche Grid. | `calc(max(0px, 50vw - 2560px / 2) + min(50vw - 880px, 400px) + (clamp(16px, 1.25vw + 12px, 36px) + calc((min(100vw, 2560px) - min(50vw - 880px, 400px) * 2 - clamp(16px, 1.25vw + 12px, 36px) * 15) / 16)) * 1)` |
|
|
310
|
+
|
|
311
|
+
### Grid — Wide
|
|
312
|
+
|
|
313
|
+
| Export | Description | Value |
|
|
314
|
+
| --- | --- | --- |
|
|
315
|
+
| `gridWideColumnStart` | Holds the **start** position of the `wide` area within the Porsche Grid. | `wide-start` |
|
|
316
|
+
| `gridWideColumnEnd` | Holds the **end** position of the `wide` area within the Porsche Grid. | `wide-end` |
|
|
317
|
+
| `gridWideOffsetBase` | Holds a **base** offset within the `wide` area of the Porsche Grid. | `max(22px, 10.625vw - 12px)` |
|
|
318
|
+
| `gridWideOffsetS` | Holds a **small** offset within the `wide` area of the Porsche Grid. | `calc(5vw - 16px)` |
|
|
319
|
+
| `gridWideOffsetXXL` | Holds a **xxl** offset within the `wide` area of the Porsche Grid. | `calc(max(0px, 50vw - 2560px / 2) + min(50vw - 880px, 400px))` |
|
|
320
|
+
|
|
321
|
+
### Grid — Full
|
|
322
|
+
|
|
323
|
+
| Export | Description | Value |
|
|
324
|
+
| --- | --- | --- |
|
|
325
|
+
| `gridFullColumnStart` | Holds the **start** position of the `full` area within the Porsche Grid. | `full-start` |
|
|
326
|
+
| `gridFullColumnEnd` | Holds the **end** position of the `full` area within the Porsche Grid. | `full-end` |
|
|
327
|
+
| `gridFullOffset` | Holds a **full** offset within the `full` area of the Porsche Grid. | `max(0px, 50vw - 2560px / 2)` |
|
|
328
|
+
|
|
329
|
+
## Utilities
|
|
330
|
+
|
|
331
|
+
### Breakpoint
|
|
332
|
+
|
|
333
|
+
| Export | Description |
|
|
334
|
+
| --- | --- |
|
|
335
|
+
| `breakpoint` | Object containing all breakpoint values. |
|
|
336
|
+
| `breakpoints` | Array containing all breakpoint keys. |
|
|
337
|
+
|
|
338
|
+
### Color
|
|
339
|
+
|
|
340
|
+
| Export | Description |
|
|
341
|
+
| --- | --- |
|
|
342
|
+
| `colorSchemeStyles` | Holds the global style rules for the `.scheme-*` color-scheme classes, including [light-dark()](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value/light-dark) fallback variables for browsers without support. |
|
|
343
|
+
|
|
344
|
+
### Font
|
|
345
|
+
|
|
346
|
+
| Export | Description |
|
|
347
|
+
| --- | --- |
|
|
348
|
+
| `getCJKFontFamilyStyle` | Applies locale-specific **Porsche Next** font stacks for **CJK** languages (Simplified Chinese, Traditional Chinese, Japanese, Korean) based on the element's `lang` attribute. |
|
|
349
|
+
| `fontHyphenationStyle` | Applies **hyphenation** styles (`overflow-wrap` and `hyphens`) to break and hyphenate long words. |
|
|
350
|
+
|
|
351
|
+
### Typography — Heading
|
|
352
|
+
|
|
353
|
+
| Export | Description |
|
|
354
|
+
| --- | --- |
|
|
355
|
+
| `proseHeading5XlStyle` | Applies the **5x-large** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
356
|
+
| `proseHeading4XlStyle` | Applies the **4x-large** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
357
|
+
| `proseHeading3XlStyle` | Applies the **3x-large** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
358
|
+
| `proseHeading2XlStyle` | Applies the **2x-large** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
359
|
+
| `proseHeadingXlStyle` | Applies the **x-large** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
360
|
+
| `proseHeadingLgStyle` | Applies the **large** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
361
|
+
| `proseHeadingMdStyle` | Applies the **medium** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
362
|
+
| `proseHeadingSmStyle` | Applies the **small** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
363
|
+
| `proseHeadingXsStyle` | Applies the **x-small** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
364
|
+
| `proseHeading2XsStyle` | Applies the **2x-small** heading typography variant primarily to `<h1>`, `<h2>`, `<h3>`, `<h4>`, `<h5>`, `<h6>` tags. |
|
|
365
|
+
|
|
366
|
+
### Typography — Text
|
|
367
|
+
|
|
368
|
+
| Export | Description |
|
|
369
|
+
| --- | --- |
|
|
370
|
+
| `proseText5XlStyle` | Applies the **5x-large** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
371
|
+
| `proseText4XlStyle` | Applies the **4x-large** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
372
|
+
| `proseText3XlStyle` | Applies the **3x-large** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
373
|
+
| `proseText2XlStyle` | Applies the **2x-large** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
374
|
+
| `proseTextXlStyle` | Applies the **x-large** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
375
|
+
| `proseTextLgStyle` | Applies the **large** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
376
|
+
| `proseTextMdStyle` | Applies the **medium** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
377
|
+
| `proseTextSmStyle` | Applies the **small** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
378
|
+
| `proseTextXsStyle` | Applies the **x-small** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
379
|
+
| `proseText2XsStyle` | Applies the **2x-small** text typography variant primarily to `<p>`, `<ul>`, `<ol>`, `<blockquote>` tags. |
|
|
380
|
+
|
|
381
|
+
### Skeleton
|
|
382
|
+
|
|
383
|
+
| Export | Description |
|
|
384
|
+
| --- | --- |
|
|
385
|
+
| `getSkeletonStyle` | Applies a skeleton placeholder style to indicate loading state. |
|
|
386
|
+
|
|
387
|
+
### Focus
|
|
388
|
+
|
|
389
|
+
| Export | Description |
|
|
390
|
+
| --- | --- |
|
|
391
|
+
| `getFocusVisibleStyle` | Applies a **focus-visible** style. |
|
|
392
|
+
|
|
393
|
+
### Media query
|
|
394
|
+
|
|
395
|
+
| Export | Description |
|
|
396
|
+
| --- | --- |
|
|
397
|
+
| `getMediaQueryMax` | Applies a **max** media query with the specified breakpoint. |
|
|
398
|
+
| `getMediaQueryMin` | Applies a **min** media query with the specified breakpoint. |
|
|
399
|
+
| `getMediaQueryMinMax` | Applies a **min-max** media query with the specified breakpoints. |
|
|
400
|
+
|
|
401
|
+
### Grid — Base
|
|
402
|
+
|
|
403
|
+
| Export | Description |
|
|
404
|
+
| --- | --- |
|
|
405
|
+
| `gridStyle` | Applies the **Porsche Grid** layout system (must be applied once at the top level, span the full viewport width, and cannot be nested). |
|
|
406
|
+
|
|
407
|
+
### Grid — Narrow
|
|
408
|
+
|
|
409
|
+
| Export | Description |
|
|
410
|
+
| --- | --- |
|
|
411
|
+
| `gridNarrow` | Object containing all `narrow` grid styles. |
|
|
412
|
+
| `gridNarrowOffset` | Object containing all `narrow` grid offset styles. |
|
|
413
|
+
|
|
414
|
+
### Grid — Basic
|
|
415
|
+
|
|
416
|
+
| Export | Description |
|
|
417
|
+
| --- | --- |
|
|
418
|
+
| `gridBasic` | Object containing all `basic` grid styles. |
|
|
419
|
+
| `gridBasicOffset` | Object containing all `basic` grid offset styles. |
|
|
420
|
+
|
|
421
|
+
### Grid — Extended
|
|
422
|
+
|
|
423
|
+
| Export | Description |
|
|
424
|
+
| --- | --- |
|
|
425
|
+
| `gridExtended` | Object containing all `extended` grid styles. |
|
|
426
|
+
| `gridExtendedOffset` | Object containing all `extended` grid offset styles. |
|
|
427
|
+
|
|
428
|
+
### Grid — Wide
|
|
429
|
+
|
|
430
|
+
| Export | Description |
|
|
431
|
+
| --- | --- |
|
|
432
|
+
| `gridWide` | Object containing all `wide` grid styles. |
|
|
433
|
+
| `gridWideOffset` | Object containing all `wide` grid offset styles. |
|
|
434
|
+
|
|
435
|
+
### Grid — Full
|
|
436
|
+
|
|
437
|
+
| Export | Description |
|
|
438
|
+
| --- | --- |
|
|
439
|
+
| `gridFull` | Object containing all `full` grid styles. |
|