@porsche-design-system/components-angular 4.5.0 → 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.
Files changed (283) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/bin/pds-skill.js +259 -0
  3. package/fesm2022/porsche-design-system-components-angular.mjs.map +1 -1
  4. package/package.json +5 -2
  5. package/skill/SKILL.md +124 -0
  6. package/skill/references/components/p-accordion/examples/Default.ts +26 -0
  7. package/skill/references/components/p-accordion/examples/InteractiveElementsInSummary.ts +30 -0
  8. package/skill/references/components/p-accordion/examples/StickySummary.ts +26 -0
  9. package/skill/references/components/p-accordion/p-accordion.md +95 -0
  10. package/skill/references/components/p-ai-tag/examples/Default.ts +13 -0
  11. package/skill/references/components/p-ai-tag/examples/WithinCheckbox.ts +33 -0
  12. package/skill/references/components/p-ai-tag/examples/WithinFormLabel.ts +40 -0
  13. package/skill/references/components/p-ai-tag/examples/WithinImage.ts +16 -0
  14. package/skill/references/components/p-ai-tag/examples/WithinInputSearch.ts +15 -0
  15. package/skill/references/components/p-ai-tag/examples/WithinRadioGroup.ts +32 -0
  16. package/skill/references/components/p-ai-tag/examples/WithinTable.ts +94 -0
  17. package/skill/references/components/p-ai-tag/examples/WithinText.ts +17 -0
  18. package/skill/references/components/p-ai-tag/p-ai-tag.md +47 -0
  19. package/skill/references/components/p-banner/examples/Customization.ts +37 -0
  20. package/skill/references/components/p-banner/examples/Default.ts +26 -0
  21. package/skill/references/components/p-banner/p-banner.md +92 -0
  22. package/skill/references/components/p-button/examples/Default.ts +15 -0
  23. package/skill/references/components/p-button/examples/Form.ts +26 -0
  24. package/skill/references/components/p-button/examples/FormAttribute.ts +30 -0
  25. package/skill/references/components/p-button/p-button.md +118 -0
  26. package/skill/references/components/p-button-pure/examples/CustomClickableArea.ts +15 -0
  27. package/skill/references/components/p-button-pure/examples/Default.ts +15 -0
  28. package/skill/references/components/p-button-pure/examples/Form.ts +26 -0
  29. package/skill/references/components/p-button-pure/examples/FormAttribute.ts +30 -0
  30. package/skill/references/components/p-button-pure/p-button-pure.md +118 -0
  31. package/skill/references/components/p-button-tile/examples/ColorScheme.ts +18 -0
  32. package/skill/references/components/p-button-tile/examples/Default.ts +21 -0
  33. package/skill/references/components/p-button-tile/examples/FooterSlot.ts +32 -0
  34. package/skill/references/components/p-button-tile/examples/Hyphens.ts +38 -0
  35. package/skill/references/components/p-button-tile/examples/UiBehaviour.ts +44 -0
  36. package/skill/references/components/p-button-tile/p-button-tile.md +115 -0
  37. package/skill/references/components/p-canvas/examples/Default.ts +13 -0
  38. package/skill/references/components/p-canvas/p-canvas.md +91 -0
  39. package/skill/references/components/p-carousel/examples/Default.ts +26 -0
  40. package/skill/references/components/p-carousel/examples/DynamicSlides.ts +37 -0
  41. package/skill/references/components/p-carousel/examples/FlexibleWidths.ts +32 -0
  42. package/skill/references/components/p-carousel/examples/FocusOnCenterSlide.ts +65 -0
  43. package/skill/references/components/p-carousel/examples/Intl.ts +23 -0
  44. package/skill/references/components/p-carousel/examples/JumpToSlide.ts +50 -0
  45. package/skill/references/components/p-carousel/p-carousel.md +142 -0
  46. package/skill/references/components/p-checkbox/examples/Default.ts +13 -0
  47. package/skill/references/components/p-checkbox/examples/Form.ts +31 -0
  48. package/skill/references/components/p-checkbox/examples/Indeterminate.ts +16 -0
  49. package/skill/references/components/p-checkbox/examples/Slots.ts +57 -0
  50. package/skill/references/components/p-checkbox/examples/WrappedLabel.ts +27 -0
  51. package/skill/references/components/p-checkbox/p-checkbox.md +122 -0
  52. package/skill/references/components/p-crest/examples/CustomClickableArea.ts +13 -0
  53. package/skill/references/components/p-crest/examples/Default.ts +13 -0
  54. package/skill/references/components/p-crest/examples/Link.ts +13 -0
  55. package/skill/references/components/p-crest/p-crest.md +65 -0
  56. package/skill/references/components/p-display/examples/Color.ts +15 -0
  57. package/skill/references/components/p-display/examples/Default.ts +15 -0
  58. package/skill/references/components/p-display/examples/Semantics.ts +21 -0
  59. package/skill/references/components/p-display/examples/Size.ts +15 -0
  60. package/skill/references/components/p-display/examples/SizeResponsive.ts +15 -0
  61. package/skill/references/components/p-display/p-display.md +78 -0
  62. package/skill/references/components/p-divider/examples/Default.ts +13 -0
  63. package/skill/references/components/p-divider/examples/Responsive.ts +15 -0
  64. package/skill/references/components/p-divider/examples/Vertical.ts +15 -0
  65. package/skill/references/components/p-divider/p-divider.md +49 -0
  66. package/skill/references/components/p-drilldown/examples/CustomContent.ts +166 -0
  67. package/skill/references/components/p-drilldown/examples/Default.ts +119 -0
  68. package/skill/references/components/p-drilldown/p-drilldown.md +168 -0
  69. package/skill/references/components/p-fieldset/examples/Default.ts +15 -0
  70. package/skill/references/components/p-fieldset/examples/Required.ts +16 -0
  71. package/skill/references/components/p-fieldset/examples/SlottedLabel.ts +18 -0
  72. package/skill/references/components/p-fieldset/examples/SlottedMessage.ts +18 -0
  73. package/skill/references/components/p-fieldset/p-fieldset.md +88 -0
  74. package/skill/references/components/p-flag/examples/Default.ts +13 -0
  75. package/skill/references/components/p-flag/examples/ResponsiveSize.ts +13 -0
  76. package/skill/references/components/p-flag/examples/Size.ts +16 -0
  77. package/skill/references/components/p-flag/examples/SizeCssVar.ts +13 -0
  78. package/skill/references/components/p-flag/p-flag.md +68 -0
  79. package/skill/references/components/p-flyout/examples/CustomStyling.ts +47 -0
  80. package/skill/references/components/p-flyout/examples/Default.ts +44 -0
  81. package/skill/references/components/p-flyout/examples/Form.ts +47 -0
  82. package/skill/references/components/p-flyout/examples/StickyTop.ts +44 -0
  83. package/skill/references/components/p-flyout/p-flyout.md +128 -0
  84. package/skill/references/components/p-heading/examples/Color.ts +15 -0
  85. package/skill/references/components/p-heading/examples/Default.ts +15 -0
  86. package/skill/references/components/p-heading/examples/Semantics.ts +21 -0
  87. package/skill/references/components/p-heading/p-heading.md +78 -0
  88. package/skill/references/components/p-icon/examples/Color.ts +16 -0
  89. package/skill/references/components/p-icon/examples/ColorCssVar.ts +13 -0
  90. package/skill/references/components/p-icon/examples/Custom.ts +13 -0
  91. package/skill/references/components/p-icon/examples/Default.ts +13 -0
  92. package/skill/references/components/p-icon/examples/Overview.ts +591 -0
  93. package/skill/references/components/p-icon/examples/ResponsiveSize.ts +13 -0
  94. package/skill/references/components/p-icon/examples/Size.ts +16 -0
  95. package/skill/references/components/p-icon/examples/SizeCssVar.ts +13 -0
  96. package/skill/references/components/p-icon/p-icon.md +88 -0
  97. package/skill/references/components/p-inline-notification/examples/ActionButton.ts +29 -0
  98. package/skill/references/components/p-inline-notification/examples/Default.ts +13 -0
  99. package/skill/references/components/p-inline-notification/examples/EventHandling.ts +31 -0
  100. package/skill/references/components/p-inline-notification/p-inline-notification.md +74 -0
  101. package/skill/references/components/p-input-date/examples/Default.ts +13 -0
  102. package/skill/references/components/p-input-date/examples/Form.ts +31 -0
  103. package/skill/references/components/p-input-date/examples/Slots.ts +44 -0
  104. package/skill/references/components/p-input-date/p-input-date.md +138 -0
  105. package/skill/references/components/p-input-email/examples/Default.ts +13 -0
  106. package/skill/references/components/p-input-email/examples/Form.ts +31 -0
  107. package/skill/references/components/p-input-email/examples/Slots.ts +44 -0
  108. package/skill/references/components/p-input-email/p-input-email.md +142 -0
  109. package/skill/references/components/p-input-month/examples/Default.ts +13 -0
  110. package/skill/references/components/p-input-month/examples/Form.ts +31 -0
  111. package/skill/references/components/p-input-month/examples/Slots.ts +44 -0
  112. package/skill/references/components/p-input-month/p-input-month.md +138 -0
  113. package/skill/references/components/p-input-number/examples/Default.ts +13 -0
  114. package/skill/references/components/p-input-number/examples/Form.ts +31 -0
  115. package/skill/references/components/p-input-number/examples/Slots.ts +44 -0
  116. package/skill/references/components/p-input-number/p-input-number.md +146 -0
  117. package/skill/references/components/p-input-password/examples/Default.ts +13 -0
  118. package/skill/references/components/p-input-password/examples/Form.ts +31 -0
  119. package/skill/references/components/p-input-password/examples/Slots.ts +42 -0
  120. package/skill/references/components/p-input-password/examples/Toggle.ts +13 -0
  121. package/skill/references/components/p-input-password/p-input-password.md +141 -0
  122. package/skill/references/components/p-input-search/examples/AriaCombobox.ts +38 -0
  123. package/skill/references/components/p-input-search/examples/Default.ts +13 -0
  124. package/skill/references/components/p-input-search/examples/Form.ts +31 -0
  125. package/skill/references/components/p-input-search/examples/Slots.ts +44 -0
  126. package/skill/references/components/p-input-search/p-input-search.md +178 -0
  127. package/skill/references/components/p-input-tel/examples/Default.ts +13 -0
  128. package/skill/references/components/p-input-tel/examples/Form.ts +31 -0
  129. package/skill/references/components/p-input-tel/examples/Slots.ts +44 -0
  130. package/skill/references/components/p-input-tel/p-input-tel.md +141 -0
  131. package/skill/references/components/p-input-text/examples/Controlled.ts +36 -0
  132. package/skill/references/components/p-input-text/examples/Default.ts +13 -0
  133. package/skill/references/components/p-input-text/examples/Form.ts +31 -0
  134. package/skill/references/components/p-input-text/examples/Slots.ts +44 -0
  135. package/skill/references/components/p-input-text/p-input-text.md +146 -0
  136. package/skill/references/components/p-input-time/examples/Default.ts +13 -0
  137. package/skill/references/components/p-input-time/examples/Form.ts +31 -0
  138. package/skill/references/components/p-input-time/examples/Slots.ts +44 -0
  139. package/skill/references/components/p-input-time/p-input-time.md +140 -0
  140. package/skill/references/components/p-input-url/examples/Default.ts +13 -0
  141. package/skill/references/components/p-input-url/examples/Form.ts +31 -0
  142. package/skill/references/components/p-input-url/examples/Slots.ts +44 -0
  143. package/skill/references/components/p-input-url/p-input-url.md +141 -0
  144. package/skill/references/components/p-input-week/examples/Default.ts +13 -0
  145. package/skill/references/components/p-input-week/examples/Form.ts +31 -0
  146. package/skill/references/components/p-input-week/examples/Slots.ts +44 -0
  147. package/skill/references/components/p-input-week/p-input-week.md +138 -0
  148. package/skill/references/components/p-link/examples/Default.ts +15 -0
  149. package/skill/references/components/p-link/examples/FrameworkRouting.ts +17 -0
  150. package/skill/references/components/p-link/examples/Icon.ts +20 -0
  151. package/skill/references/components/p-link/p-link.md +101 -0
  152. package/skill/references/components/p-link-pure/examples/CustomClickableArea.ts +15 -0
  153. package/skill/references/components/p-link-pure/examples/Default.ts +15 -0
  154. package/skill/references/components/p-link-pure/examples/FrameworkRouting.ts +17 -0
  155. package/skill/references/components/p-link-pure/examples/Icon.ts +20 -0
  156. package/skill/references/components/p-link-pure/p-link-pure.md +110 -0
  157. package/skill/references/components/p-link-tile/examples/ColorScheme.ts +18 -0
  158. package/skill/references/components/p-link-tile/examples/Default.ts +21 -0
  159. package/skill/references/components/p-link-tile/examples/FooterSlot.ts +32 -0
  160. package/skill/references/components/p-link-tile/examples/Hyphens.ts +39 -0
  161. package/skill/references/components/p-link-tile/examples/UiBehaviour.ts +44 -0
  162. package/skill/references/components/p-link-tile/examples/WithVideo.ts +18 -0
  163. package/skill/references/components/p-link-tile/p-link-tile.md +105 -0
  164. package/skill/references/components/p-link-tile-product/examples/Default.ts +24 -0
  165. package/skill/references/components/p-link-tile-product/examples/FrameworkRouting.ts +27 -0
  166. package/skill/references/components/p-link-tile-product/p-link-tile-product.md +93 -0
  167. package/skill/references/components/p-modal/examples/AlertDialog.ts +41 -0
  168. package/skill/references/components/p-modal/examples/CustomStyling.ts +28 -0
  169. package/skill/references/components/p-modal/examples/Default.ts +41 -0
  170. package/skill/references/components/p-modal/examples/Scrollable.ts +45 -0
  171. package/skill/references/components/p-modal/p-modal.md +135 -0
  172. package/skill/references/components/p-model-signature/examples/CustomStyling.ts +17 -0
  173. package/skill/references/components/p-model-signature/examples/Default.ts +13 -0
  174. package/skill/references/components/p-model-signature/examples/MaskBlendMode.ts +35 -0
  175. package/skill/references/components/p-model-signature/examples/MaskImage.ts +15 -0
  176. package/skill/references/components/p-model-signature/examples/MaskVideo.ts +15 -0
  177. package/skill/references/components/p-model-signature/examples/SafeZone.ts +63 -0
  178. package/skill/references/components/p-model-signature/p-model-signature.md +62 -0
  179. package/skill/references/components/p-multi-select/examples/AsyncFilter.ts +149 -0
  180. package/skill/references/components/p-multi-select/examples/Default.ts +32 -0
  181. package/skill/references/components/p-multi-select/examples/Form.ts +38 -0
  182. package/skill/references/components/p-multi-select/examples/Optgroups.ts +45 -0
  183. package/skill/references/components/p-multi-select/examples/SelectedSlot.ts +103 -0
  184. package/skill/references/components/p-multi-select/examples/SetValue.ts +76 -0
  185. package/skill/references/components/p-multi-select/examples/Slots.ts +51 -0
  186. package/skill/references/components/p-multi-select/p-multi-select.md +197 -0
  187. package/skill/references/components/p-pagination/examples/Default.ts +13 -0
  188. package/skill/references/components/p-pagination/p-pagination.md +83 -0
  189. package/skill/references/components/p-pin-code/examples/CopyPaste.ts +13 -0
  190. package/skill/references/components/p-pin-code/examples/Default.ts +13 -0
  191. package/skill/references/components/p-pin-code/examples/Form.ts +31 -0
  192. package/skill/references/components/p-pin-code/examples/Slots.ts +42 -0
  193. package/skill/references/components/p-pin-code/p-pin-code.md +109 -0
  194. package/skill/references/components/p-popover/examples/Default.ts +17 -0
  195. package/skill/references/components/p-popover/examples/SlottedButton.ts +18 -0
  196. package/skill/references/components/p-popover/p-popover.md +116 -0
  197. package/skill/references/components/p-radio-group/examples/Default.ts +20 -0
  198. package/skill/references/components/p-radio-group/examples/Form.ts +38 -0
  199. package/skill/references/components/p-radio-group/examples/Slots.ts +72 -0
  200. package/skill/references/components/p-radio-group/p-radio-group.md +157 -0
  201. package/skill/references/components/p-scroller/examples/Default.ts +54 -0
  202. package/skill/references/components/p-scroller/examples/Height.ts +29 -0
  203. package/skill/references/components/p-scroller/examples/ScrollToPosition.ts +43 -0
  204. package/skill/references/components/p-scroller/p-scroller.md +93 -0
  205. package/skill/references/components/p-segmented-control/examples/Default.ts +29 -0
  206. package/skill/references/components/p-segmented-control/examples/Form.ts +37 -0
  207. package/skill/references/components/p-segmented-control/examples/Slots.ts +57 -0
  208. package/skill/references/components/p-segmented-control/examples/WithLabels.ts +29 -0
  209. package/skill/references/components/p-segmented-control/p-segmented-control.md +162 -0
  210. package/skill/references/components/p-select/examples/AsyncFilter.ts +149 -0
  211. package/skill/references/components/p-select/examples/Default.ts +32 -0
  212. package/skill/references/components/p-select/examples/Form.ts +38 -0
  213. package/skill/references/components/p-select/examples/Optgroups.ts +45 -0
  214. package/skill/references/components/p-select/examples/Required.ts +48 -0
  215. package/skill/references/components/p-select/examples/SelectedSlot.ts +130 -0
  216. package/skill/references/components/p-select/examples/SetValue.ts +71 -0
  217. package/skill/references/components/p-select/examples/Slots.ts +51 -0
  218. package/skill/references/components/p-select/examples/SlottedImages.ts +38 -0
  219. package/skill/references/components/p-select/p-select.md +194 -0
  220. package/skill/references/components/p-sheet/examples/Default.ts +33 -0
  221. package/skill/references/components/p-sheet/p-sheet.md +121 -0
  222. package/skill/references/components/p-spinner/examples/Color.ts +16 -0
  223. package/skill/references/components/p-spinner/examples/ColorCssVar.ts +13 -0
  224. package/skill/references/components/p-spinner/examples/Default.ts +13 -0
  225. package/skill/references/components/p-spinner/examples/ResponsiveSize.ts +13 -0
  226. package/skill/references/components/p-spinner/examples/Size.ts +16 -0
  227. package/skill/references/components/p-spinner/examples/SizeCssVar.ts +13 -0
  228. package/skill/references/components/p-spinner/p-spinner.md +96 -0
  229. package/skill/references/components/p-stepper-horizontal/examples/Default.ts +26 -0
  230. package/skill/references/components/p-stepper-horizontal/examples/FrameworkImplementation.ts +107 -0
  231. package/skill/references/components/p-stepper-horizontal/p-stepper-horizontal.md +109 -0
  232. package/skill/references/components/p-switch/examples/Default.ts +21 -0
  233. package/skill/references/components/p-switch/p-switch.md +103 -0
  234. package/skill/references/components/p-table/examples/Advanced.ts +162 -0
  235. package/skill/references/components/p-table/examples/CaptionProperty.ts +40 -0
  236. package/skill/references/components/p-table/examples/CaptionSlot.ts +43 -0
  237. package/skill/references/components/p-table/examples/Default.ts +120 -0
  238. package/skill/references/components/p-table/examples/HideLabel.ts +40 -0
  239. package/skill/references/components/p-table/examples/LayoutFixed.ts +53 -0
  240. package/skill/references/components/p-table/examples/Sorting.ts +79 -0
  241. package/skill/references/components/p-table/p-table.md +189 -0
  242. package/skill/references/components/p-tabs/examples/ActiveTab.ts +29 -0
  243. package/skill/references/components/p-tabs/examples/Default.ts +29 -0
  244. package/skill/references/components/p-tabs/examples/Gradient.ts +114 -0
  245. package/skill/references/components/p-tabs/examples/Labelling.ts +29 -0
  246. package/skill/references/components/p-tabs/p-tabs.md +136 -0
  247. package/skill/references/components/p-tabs-bar/examples/Default.ts +29 -0
  248. package/skill/references/components/p-tabs-bar/examples/Gradient.ts +80 -0
  249. package/skill/references/components/p-tabs-bar/examples/Labelling.ts +29 -0
  250. package/skill/references/components/p-tabs-bar/examples/Links.ts +23 -0
  251. package/skill/references/components/p-tabs-bar/p-tabs-bar.md +181 -0
  252. package/skill/references/components/p-tag/examples/Default.ts +15 -0
  253. package/skill/references/components/p-tag/examples/Multiline.ts +17 -0
  254. package/skill/references/components/p-tag/examples/SlottedButton.ts +44 -0
  255. package/skill/references/components/p-tag/examples/SlottedLink.ts +44 -0
  256. package/skill/references/components/p-tag/p-tag.md +66 -0
  257. package/skill/references/components/p-tag-dismissible/examples/Default.ts +15 -0
  258. package/skill/references/components/p-tag-dismissible/p-tag-dismissible.md +75 -0
  259. package/skill/references/components/p-text/examples/Default.ts +15 -0
  260. package/skill/references/components/p-text/examples/Semantics.ts +21 -0
  261. package/skill/references/components/p-text/examples/Size.ts +15 -0
  262. package/skill/references/components/p-text/examples/SizeResponsive.ts +15 -0
  263. package/skill/references/components/p-text/p-text.md +68 -0
  264. package/skill/references/components/p-text-list/examples/Default.ts +31 -0
  265. package/skill/references/components/p-text-list/p-text-list.md +68 -0
  266. package/skill/references/components/p-textarea/examples/Default.ts +13 -0
  267. package/skill/references/components/p-textarea/examples/Form.ts +31 -0
  268. package/skill/references/components/p-textarea/examples/Slots.ts +42 -0
  269. package/skill/references/components/p-textarea/p-textarea.md +122 -0
  270. package/skill/references/components/p-toast/examples/Default.ts +23 -0
  271. package/skill/references/components/p-toast/p-toast.md +61 -0
  272. package/skill/references/components/p-wordmark/examples/CustomClickableArea.ts +13 -0
  273. package/skill/references/components/p-wordmark/examples/Default.ts +13 -0
  274. package/skill/references/components/p-wordmark/examples/Size.ts +13 -0
  275. package/skill/references/components/p-wordmark/p-wordmark.md +66 -0
  276. package/skill/references/icons.md +5 -0
  277. package/skill/references/styles/emotion.md +439 -0
  278. package/skill/references/styles/scss.md +402 -0
  279. package/skill/references/styles/tailwindcss.md +356 -0
  280. package/skill/references/styles/vanilla-extract.md +444 -0
  281. package/skill/references/stylesheets.md +331 -0
  282. package/skill/references/tokens.md +323 -0
  283. package/types/porsche-design-system-components-angular.d.ts +2 -2
@@ -0,0 +1,120 @@
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-table caption="Some caption">
8
+ <p-table-head>
9
+ <p-table-head-row>
10
+ <p-table-head-cell>
11
+ Model
12
+ </p-table-head-cell>
13
+ <p-table-head-cell>
14
+ Date
15
+ </p-table-head-cell>
16
+ <p-table-head-cell>
17
+ Purchase Intention
18
+ </p-table-head-cell>
19
+ <p-table-head-cell>
20
+ Status
21
+ </p-table-head-cell>
22
+ <p-table-head-cell>
23
+ Lead ID
24
+ </p-table-head-cell>
25
+ </p-table-head-row>
26
+ </p-table-head>
27
+ <p-table-body>
28
+ <p-table-row>
29
+ <p-table-cell>
30
+ 718 Cayman
31
+ </p-table-cell>
32
+ <p-table-cell>
33
+ 23.06.2021
34
+ </p-table-cell>
35
+ <p-table-cell>
36
+ New Car
37
+ </p-table-cell>
38
+ <p-table-cell>
39
+ Won
40
+ </p-table-cell>
41
+ <p-table-cell>
42
+ 0000824402
43
+ </p-table-cell>
44
+ </p-table-row>
45
+ <p-table-row>
46
+ <p-table-cell>
47
+ Panamera 4S
48
+ </p-table-cell>
49
+ <p-table-cell>
50
+ 19.06.2021
51
+ </p-table-cell>
52
+ <p-table-cell>
53
+ New Car
54
+ </p-table-cell>
55
+ <p-table-cell>
56
+ Lost
57
+ </p-table-cell>
58
+ <p-table-cell>
59
+ 0000824409
60
+ </p-table-cell>
61
+ </p-table-row>
62
+ <p-table-row>
63
+ <p-table-cell>
64
+ 911 Carrera S
65
+ </p-table-cell>
66
+ <p-table-cell>
67
+ 19.05.2021
68
+ </p-table-cell>
69
+ <p-table-cell>
70
+ Used Car
71
+ </p-table-cell>
72
+ <p-table-cell>
73
+ Won
74
+ </p-table-cell>
75
+ <p-table-cell>
76
+ 0000824408
77
+ </p-table-cell>
78
+ </p-table-row>
79
+ <p-table-row>
80
+ <p-table-cell>
81
+ Macan Turbo
82
+ </p-table-cell>
83
+ <p-table-cell>
84
+ 10.05.2021
85
+ </p-table-cell>
86
+ <p-table-cell>
87
+ Used Car
88
+ </p-table-cell>
89
+ <p-table-cell>
90
+ Lost
91
+ </p-table-cell>
92
+ <p-table-cell>
93
+ 0000824407
94
+ </p-table-cell>
95
+ </p-table-row>
96
+ <p-table-row>
97
+ <p-table-cell>
98
+ Taycan
99
+ </p-table-cell>
100
+ <p-table-cell>
101
+ 03.05.2021
102
+ </p-table-cell>
103
+ <p-table-cell>
104
+ New Car
105
+ </p-table-cell>
106
+ <p-table-cell>
107
+ Won
108
+ </p-table-cell>
109
+ <p-table-cell>
110
+ 0000824406
111
+ </p-table-cell>
112
+ </p-table-row>
113
+ </p-table-body>
114
+ </p-table>
115
+ `,
116
+ changeDetection: ChangeDetectionStrategy.OnPush,
117
+ standalone: true,
118
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
119
+ })
120
+ export class ExampleComponent {}
@@ -0,0 +1,40 @@
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-table caption="Some caption">
8
+ <p-table-head>
9
+ <p-table-head-row>
10
+ <p-table-head-cell>
11
+ Column 1
12
+ </p-table-head-cell>
13
+ <p-table-head-cell>
14
+ Column 2
15
+ </p-table-head-cell>
16
+ <p-table-head-cell [hideLabel]="true">
17
+ Column 3
18
+ </p-table-head-cell>
19
+ </p-table-head-row>
20
+ </p-table-head>
21
+ <p-table-body>
22
+ <p-table-row>
23
+ <p-table-cell>
24
+ Cell 1
25
+ </p-table-cell>
26
+ <p-table-cell>
27
+ Cell 2
28
+ </p-table-cell>
29
+ <p-table-cell>
30
+ Cell 3
31
+ </p-table-cell>
32
+ </p-table-row>
33
+ </p-table-body>
34
+ </p-table>
35
+ `,
36
+ changeDetection: ChangeDetectionStrategy.OnPush,
37
+ standalone: true,
38
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
39
+ })
40
+ export class ExampleComponent {}
@@ -0,0 +1,53 @@
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-table caption="Some caption" layout="fixed">
8
+ <p-table-head>
9
+ <p-table-head-row>
10
+ <p-table-head-cell class="w-[50%] max-w-[50%]">
11
+ Column 1 (50%)
12
+ </p-table-head-cell>
13
+ <p-table-head-cell class="w-[150px] max-w-[150px]">
14
+ Column 2 (150px)
15
+ </p-table-head-cell>
16
+ <p-table-head-cell>
17
+ Column 3 (auto)
18
+ </p-table-head-cell>
19
+ </p-table-head-row>
20
+ </p-table-head>
21
+ <p-table-body>
22
+ <p-table-row>
23
+ <p-table-cell class="w-[50%] max-w-[50%]">
24
+ Cell 1
25
+ </p-table-cell>
26
+ <p-table-cell class="w-[150px] max-w-[150px]">
27
+ Cell 2
28
+ </p-table-cell>
29
+ <p-table-cell>
30
+ Cell 3
31
+ </p-table-cell>
32
+ </p-table-row>
33
+ <p-table-row>
34
+ <p-table-cell class="w-[50%] max-w-[50%]">
35
+ Cell 1
36
+ </p-table-cell>
37
+ <p-table-cell class="w-[150px] max-w-[150px]">
38
+ <p-text [ellipsis]="true" title="Cell 2 with more content">
39
+ Cell 2 with more content
40
+ </p-text>
41
+ </p-table-cell>
42
+ <p-table-cell>
43
+ Cell 3
44
+ </p-table-cell>
45
+ </p-table-row>
46
+ </p-table-body>
47
+ </p-table>
48
+ `,
49
+ changeDetection: ChangeDetectionStrategy.OnPush,
50
+ standalone: true,
51
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
52
+ })
53
+ export class ExampleComponent {}
@@ -0,0 +1,79 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { PorscheDesignSystemModule, TableUpdateEventDetail } from '@porsche-design-system/components-angular';
3
+
4
+ type HeadSorting = {
5
+ id: string;
6
+ name: string;
7
+ active?: boolean;
8
+ direction?: 'asc' | 'desc';
9
+ };
10
+
11
+ const headSorting: HeadSorting[] = [
12
+ { name: 'Column 1', id: 'col1' } as HeadSorting,
13
+ { name: 'Column 2', id: 'col2' } as HeadSorting,
14
+ { name: 'Column 3', id: 'col3' } as HeadSorting,
15
+ ].map((item, i) => ({
16
+ ...item,
17
+ active: i === 1,
18
+ direction: 'asc',
19
+ }));
20
+
21
+ type DataSorting = {
22
+ col1: string;
23
+ col2: string;
24
+ col3: string;
25
+ };
26
+
27
+ const dataSorting: DataSorting[] = [
28
+ {
29
+ col1: 'Name A',
30
+ col2: '9',
31
+ col3: '01.06.2021',
32
+ },
33
+ {
34
+ col1: 'Name Z',
35
+ col2: '1',
36
+ col3: '24.06.2021',
37
+ },
38
+ ];
39
+
40
+ @Component({
41
+ selector: 'porsche-design-system-app',
42
+ template: `
43
+ <p-table caption="Some caption" (update)="onUpdate($event)">
44
+ <p-table-head>
45
+ <p-table-head-row>
46
+ @for (item of head; track item) {
47
+ <p-table-head-cell [sort]="item">
48
+ {{ item.name }}
49
+ </p-table-head-cell>
50
+ }
51
+ </p-table-head-row>
52
+ </p-table-head>
53
+ <p-table-body>
54
+ @for (item of data; track item) {
55
+ <p-table-row>
56
+ <p-table-cell>{{ item.col1 }}</p-table-cell>
57
+ <p-table-cell>{{ item.col2 }}</p-table-cell>
58
+ <p-table-cell>{{ item.col3 }}</p-table-cell>
59
+ </p-table-row>
60
+ }
61
+ </p-table-body>
62
+ </p-table>
63
+ `,
64
+ changeDetection: ChangeDetectionStrategy.OnPush,
65
+ standalone: true,
66
+ imports: [PorscheDesignSystemModule],
67
+ })
68
+ export class ExampleComponent {
69
+ public head = headSorting;
70
+ public data = dataSorting;
71
+
72
+ onUpdate(e: CustomEvent<TableUpdateEventDetail>): void {
73
+ const { id, direction } = e.detail as TableUpdateEventDetail & { id: keyof DataSorting };
74
+ this.head = this.head.map((item) => ({ ...item, active: false, ...(item.id === id && e.detail) }));
75
+ this.data = [...this.data].sort((a, b) =>
76
+ direction === 'asc' ? a[id].localeCompare(b[id]) : b[id].localeCompare(a[id])
77
+ );
78
+ }
79
+ }
@@ -0,0 +1,189 @@
1
+ # p-table
2
+
3
+ The `p-table` component displays tabular data and offers column-wise sorting options. It combines a consistent appearance together with great accessibility while not having restrictions regarding its content. Therefore, it can be used for plain text but also rich content like images, form elements and buttons.
4
+
5
+ It is a controlled component. This means it does not contain any internal state, and you got full control over its behavior.
6
+
7
+ ## Usage
8
+
9
+ ### Do:
10
+
11
+ - Use to display and compare structured data in rows and columns.
12
+ - Use as a tool to query consume and navigate to specific data.
13
+ - Use if there are at least two or more columns of data parameters.
14
+ - Ensure that the column headers are relevant to the data it represents and are succinct.
15
+ - Include rich content in the cell data to support the specific requirements of the application use cases.
16
+ - Enable sorting of columns in ascending or descending order with an arrow icon to indicate the order direction.
17
+ - Ensure that the table is responsive and stretches to the full available width.
18
+ - Include a table caption describing the contents of the table for accessibility
19
+ - Use the built-in scroller for horizontal scrolling on mobile viewports.
20
+
21
+ ### Don't:
22
+
23
+ - Don't use for non-structured data or data that can be presented in a simpler format.
24
+ - Don't overuse or clutter cell data with unnecessary content.
25
+ - Don't neglect to include a table caption for accessibility purposes.
26
+
27
+ ## Accessibility support
28
+
29
+ ### Keyboard
30
+
31
+ | Key / state | Function |
32
+ | --- | --- |
33
+ | `Tab`, `Shift-Tab` | Moves focus to the next (or previous) sort button. |
34
+ | `Enter`, `Space` | Changes sorting direction. |
35
+
36
+ ### ARIA enhancements
37
+
38
+ #### Internal **ARIA** that is managed by the component:
39
+
40
+ | ARIA | Usage |
41
+ | --- | --- |
42
+ | `aria-label="STRING"`, `aria-labelledby="IDREF"` | Captions are provided by aria labels. |
43
+ | `aria-sort="VALUE"` | Provides the sorting direction of the column header. |
44
+
45
+ ## Development considerations
46
+
47
+ ### Common do's and don'ts
48
+
49
+ - **Do** provide a `caption` or `slot="caption"` that describes the table purpose.
50
+ - **Do** keep visible header text for sortable columns.
51
+ - **Don't** use `hide-label` on a sortable column without an alternative accessible name.
52
+
53
+ ## Tests
54
+
55
+ ### Automated
56
+
57
+ | Technology | Support |
58
+ | --- | --- |
59
+ | AXE-Core (WCAG 2.2 AA, Best-Practice) | ✅ |
60
+ | High-Contrast Mode (light/dark) | ✅ |
61
+ | Text-Zoom (200%) | ✅ |
62
+
63
+ ### Manual
64
+
65
+ | Technology | Support |
66
+ | --- | --- |
67
+ | Keyboard | ✅ |
68
+ | Screen reader (VoiceOver, NVDA) | 🟠 (Partially supported, [Safari issues 1](https://adrianroselli.com/2022/07/its-mid-2022-and-browsers-mostly-safari-still-break-accessibility-via-display-properties.html), [Safari issues 2](https://adrianroselli.com/2018/02/tables-css-display-properties-and-aria.html)) |
69
+
70
+ ## API
71
+
72
+ ### Properties
73
+
74
+ | Property | Type | Default | Description |
75
+ | --- | --- | --- | --- |
76
+ | `caption` | `string` | `undefined` | Sets a screen-reader-only accessible caption that describes the table's content; it is not visible in the browser. Use an element with `slot="caption"` for a visible caption instead. |
77
+ | `compact` | `boolean` | `false` | Reduces the cell padding and spacing for a more condensed table layout in data-dense UIs. |
78
+ | `layout` | `'auto'` `'fixed'` | `'auto'` | Controls the CSS `table-layout` algorithm: `auto` sizes columns to fit their content, `fixed` distributes width equally. |
79
+ | `sticky` _(experimental)_ | `boolean` | `false` | @experimental Makes the scroll position indicator sticky at the viewport edge while scrolling, indicating overflow in the table. |
80
+
81
+ ### Events
82
+
83
+ | Event | Type | Description |
84
+ | --- | --- | --- |
85
+ | `update` | `CustomEvent<TableUpdateEventDetail>`<br>`{ id: string; active?: boolean; direction?: Direction }` | Emitted when the user clicks a sortable column header, carrying the new sort configuration in the event detail. |
86
+
87
+ ### Slots
88
+
89
+ | Slot | Required | Allowed tag names | Description |
90
+ | --- | --- | --- | --- |
91
+ | `caption` | no | — | Shows a caption that describes the content of the table. |
92
+ | _(default)_ | no | — | Default slot for the table content. |
93
+
94
+ ### CSS Variables
95
+
96
+ | CSS Variable | Default | Description |
97
+ | --- | --- | --- |
98
+ | `--p-table-scroll-indicator-top` | `0px` | Defines the distance from the top of the viewport at which the scroll indicator sticks when scrolling down and `sticky` is enabled. |
99
+ | `--p-table-scroll-indicator-bottom` | `0px` | Defines the distance from the bottom of the viewport at which the scroll indicator sticks when scrolling up and `sticky` is enabled. |
100
+
101
+ ## Sub-components
102
+
103
+ These tags are only valid inside the parent(s) listed under each one — often this component, but some are shared and list a different parent (e.g. a tag documented here via a common ancestor). Their APIs come from the same authoritative `component-meta` as the parent above.
104
+
105
+ ### `p-table-body`
106
+
107
+ Allowed parent: `p-table`.
108
+
109
+ #### Slots
110
+
111
+ | Slot | Required | Allowed tag names | Description |
112
+ | --- | --- | --- | --- |
113
+ | _(default)_ | no | — | Default slot for the table body content. |
114
+
115
+ ### `p-table-cell`
116
+
117
+ Allowed parent: `p-table-row`.
118
+
119
+ #### Properties
120
+
121
+ | Property | Type | Default | Description |
122
+ | --- | --- | --- | --- |
123
+ | `multiline` | `boolean` | `false` | Allows slotted text to wrap onto multiple lines instead of being forced onto a single line. |
124
+
125
+ #### Slots
126
+
127
+ | Slot | Required | Allowed tag names | Description |
128
+ | --- | --- | --- | --- |
129
+ | _(default)_ | no | — | Default slot for the table cell content. |
130
+
131
+ ### `p-table-head`
132
+
133
+ Allowed parent: `p-table`.
134
+
135
+ #### Slots
136
+
137
+ | Slot | Required | Allowed tag names | Description |
138
+ | --- | --- | --- | --- |
139
+ | _(default)_ | no | — | Default slot for the table head content. |
140
+
141
+ ### `p-table-head-cell`
142
+
143
+ Allowed parents: `p-table-head-row`, `p-table-row`.
144
+
145
+ #### Properties
146
+
147
+ | Property | Type | Default | Description |
148
+ | --- | --- | --- | --- |
149
+ | `hideLabel` | `boolean` | `false` | Hides the visible column label while keeping it accessible to screen readers. Only applies when `sort` is not set. |
150
+ | `multiline` | `boolean` | `false` | Allows the column header text to wrap onto multiple lines instead of being truncated to a single line. |
151
+ | `sort` | `TableHeadCellSort` | `undefined` | Configures sorting behavior for this column by providing an `id`, `active` state, and current `direction` (`asc` or `desc`). |
152
+
153
+ #### Slots
154
+
155
+ | Slot | Required | Allowed tag names | Description |
156
+ | --- | --- | --- | --- |
157
+ | _(default)_ | no | — | Default slot for the table head cell content. |
158
+
159
+ ### `p-table-head-row`
160
+
161
+ Allowed parent: `p-table-head`.
162
+
163
+ #### Slots
164
+
165
+ | Slot | Required | Allowed tag names | Description |
166
+ | --- | --- | --- | --- |
167
+ | _(default)_ | no | — | Default slot for the table head row content. |
168
+
169
+ ### `p-table-row`
170
+
171
+ Allowed parents: `p-table-body`, `p-table-head`.
172
+
173
+ #### Slots
174
+
175
+ | Slot | Required | Allowed tag names | Description |
176
+ | --- | --- | --- | --- |
177
+ | _(default)_ | no | — | Default slot for the table row content. |
178
+
179
+ ## Examples
180
+
181
+ | Example | When to use | File |
182
+ | --- | --- | --- |
183
+ | Default | Minimal default configuration. | [./examples/Default.ts](./examples/Default.ts) |
184
+ | Caption via Property | A caption that describes the content of the table is mandatory to fulfill accessibility criteria. | [./examples/CaptionProperty.ts](./examples/CaptionProperty.ts) |
185
+ | Caption via Slot | Instead of using the the property, the table's caption can be provided via the `caption` slot. | [./examples/CaptionSlot.ts](./examples/CaptionSlot.ts) |
186
+ | Layout: fixed | By setting `layout` to `fixed`, you can take full control over each column width, which would otherwise be controlled by its content. | [./examples/LayoutFixed.ts](./examples/LayoutFixed.ts) |
187
+ | Sortable Columns | The `p-table`'s column headers can be configured by setting properties on each `p-table-head-cell`. | [./examples/Sorting.ts](./examples/Sorting.ts) |
188
+ | Hide Column Label | Sometimes you want to hide the visible label of a `p-table-head-cell`, for example when the column's content is self-explanatory. | [./examples/HideLabel.ts](./examples/HideLabel.ts) |
189
+ | Advanced Table | The appearance of a table's contents can be customized as illustrated in the following example. | [./examples/Advanced.ts](./examples/Advanced.ts) |
@@ -0,0 +1,29 @@
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-tabs [activeTabIndex]="1" [aria]="{'aria-label': 'Some label for the tablist', 'aria-description': 'Some description for the tablist'}">
8
+ <p-tabs-item label="Tab One">
9
+ <p-text>
10
+ Tab Content One
11
+ </p-text>
12
+ </p-tabs-item>
13
+ <p-tabs-item label="Tab Two">
14
+ <p-text>
15
+ Tab Content Two
16
+ </p-text>
17
+ </p-tabs-item>
18
+ <p-tabs-item label="Tab Three">
19
+ <p-text>
20
+ Tab Content Three
21
+ </p-text>
22
+ </p-tabs-item>
23
+ </p-tabs>
24
+ `,
25
+ changeDetection: ChangeDetectionStrategy.OnPush,
26
+ standalone: true,
27
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
28
+ })
29
+ export class ExampleComponent {}
@@ -0,0 +1,29 @@
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-tabs [aria]="{'aria-label': 'Some label for the tablist', 'aria-description': 'Some description for the tablist'}">
8
+ <p-tabs-item label="Tab One">
9
+ <p-text>
10
+ Tab Content One
11
+ </p-text>
12
+ </p-tabs-item>
13
+ <p-tabs-item label="Tab Two">
14
+ <p-text>
15
+ Tab Content Two
16
+ </p-text>
17
+ </p-tabs-item>
18
+ <p-tabs-item label="Tab Three">
19
+ <p-text>
20
+ Tab Content Three
21
+ </p-text>
22
+ </p-tabs-item>
23
+ </p-tabs>
24
+ `,
25
+ changeDetection: ChangeDetectionStrategy.OnPush,
26
+ standalone: true,
27
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
28
+ })
29
+ export class ExampleComponent {}
@@ -0,0 +1,114 @@
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-tabs [aria]="{'aria-label': 'Some label for the tablist', 'aria-description': 'Some description for the tablist'}">
8
+ <p-tabs-item label="Tab 1">
9
+ <p-text>
10
+ Tab Content 1
11
+ </p-text>
12
+ </p-tabs-item>
13
+ <p-tabs-item label="Tab 2">
14
+ <p-text>
15
+ Tab Content 2
16
+ </p-text>
17
+ </p-tabs-item>
18
+ <p-tabs-item label="Tab 3">
19
+ <p-text>
20
+ Tab Content 3
21
+ </p-text>
22
+ </p-tabs-item>
23
+ <p-tabs-item label="Tab 4">
24
+ <p-text>
25
+ Tab Content 4
26
+ </p-text>
27
+ </p-tabs-item>
28
+ <p-tabs-item label="Tab 5">
29
+ <p-text>
30
+ Tab Content 5
31
+ </p-text>
32
+ </p-tabs-item>
33
+ <p-tabs-item label="Tab 6">
34
+ <p-text>
35
+ Tab Content 6
36
+ </p-text>
37
+ </p-tabs-item>
38
+ <p-tabs-item label="Tab 7">
39
+ <p-text>
40
+ Tab Content 7
41
+ </p-text>
42
+ </p-tabs-item>
43
+ <p-tabs-item label="Tab 8">
44
+ <p-text>
45
+ Tab Content 8
46
+ </p-text>
47
+ </p-tabs-item>
48
+ <p-tabs-item label="Tab 9">
49
+ <p-text>
50
+ Tab Content 9
51
+ </p-text>
52
+ </p-tabs-item>
53
+ <p-tabs-item label="Tab 10">
54
+ <p-text>
55
+ Tab Content 10
56
+ </p-text>
57
+ </p-tabs-item>
58
+ <p-tabs-item label="Tab 11">
59
+ <p-text>
60
+ Tab Content 11
61
+ </p-text>
62
+ </p-tabs-item>
63
+ <p-tabs-item label="Tab 12">
64
+ <p-text>
65
+ Tab Content 12
66
+ </p-text>
67
+ </p-tabs-item>
68
+ <p-tabs-item label="Tab 13">
69
+ <p-text>
70
+ Tab Content 13
71
+ </p-text>
72
+ </p-tabs-item>
73
+ <p-tabs-item label="Tab 14">
74
+ <p-text>
75
+ Tab Content 14
76
+ </p-text>
77
+ </p-tabs-item>
78
+ <p-tabs-item label="Tab 15">
79
+ <p-text>
80
+ Tab Content 15
81
+ </p-text>
82
+ </p-tabs-item>
83
+ <p-tabs-item label="Tab 16">
84
+ <p-text>
85
+ Tab Content 16
86
+ </p-text>
87
+ </p-tabs-item>
88
+ <p-tabs-item label="Tab 17">
89
+ <p-text>
90
+ Tab Content 17
91
+ </p-text>
92
+ </p-tabs-item>
93
+ <p-tabs-item label="Tab 18">
94
+ <p-text>
95
+ Tab Content 18
96
+ </p-text>
97
+ </p-tabs-item>
98
+ <p-tabs-item label="Tab 19">
99
+ <p-text>
100
+ Tab Content 19
101
+ </p-text>
102
+ </p-tabs-item>
103
+ <p-tabs-item label="Tab 20">
104
+ <p-text>
105
+ Tab Content 20
106
+ </p-text>
107
+ </p-tabs-item>
108
+ </p-tabs>
109
+ `,
110
+ changeDetection: ChangeDetectionStrategy.OnPush,
111
+ standalone: true,
112
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
113
+ })
114
+ export class ExampleComponent {}
@@ -0,0 +1,29 @@
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-tabs [aria]="{'aria-label': 'Some label for the tablist', 'aria-description': 'Some description for the tablist'}">
8
+ <p-tabs-item label="Tab One">
9
+ <p-text>
10
+ Tab Content One
11
+ </p-text>
12
+ </p-tabs-item>
13
+ <p-tabs-item label="Tab Two">
14
+ <p-text>
15
+ Tab Content Two
16
+ </p-text>
17
+ </p-tabs-item>
18
+ <p-tabs-item label="Tab Three">
19
+ <p-text>
20
+ Tab Content Three
21
+ </p-text>
22
+ </p-tabs-item>
23
+ </p-tabs>
24
+ `,
25
+ changeDetection: ChangeDetectionStrategy.OnPush,
26
+ standalone: true,
27
+ imports: [PorscheDesignSystemModule], // <-- PDS module is imported here
28
+ })
29
+ export class ExampleComponent {}