@porsche-design-system/components-angular 4.2.0 → 4.3.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"porsche-design-system-components-angular.mjs","sources":["../../../projects/angular-wrapper/src/utils.ts","../../../projects/angular-wrapper/src/lib/components/accordion.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/ai-tag.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/banner.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/button.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/button-pure.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/button-tile.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/canvas.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/carousel.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/checkbox.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/crest.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/display.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/divider.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/drilldown.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/drilldown-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/drilldown-link.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/fieldset.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/flag.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/flyout.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/heading.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/icon.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/inline-notification.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-date.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-email.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-month.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-number.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-password.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-search.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-tel.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-text.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-time.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-url.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-week.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link-pure.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link-tile.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link-tile-product.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/modal.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/model-signature.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/multi-select.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/multi-select-option.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/optgroup.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/pagination.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/pin-code.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/popover.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/radio-group.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/radio-group-option.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/scroller.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/segmented-control.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/segmented-control-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/select.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/select-option.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/sheet.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/spinner.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/stepper-horizontal.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/stepper-horizontal-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/switch.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-body.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-cell.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-head.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-head-cell.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-head-row.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-row.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tabs.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tabs-bar.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tabs-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tag.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tag-dismissible.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/text.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/text-list.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/text-list-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/textarea.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/toast.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/wordmark.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/barrel.ts","../../../projects/angular-wrapper/src/porsche-design-system.module.ts","../../../projects/angular-wrapper/src/toast-manager.ts","../../../projects/angular-wrapper/src/porsche-design-system-components-angular.ts"],"sourcesContent":["import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, type OnChanges } from '@angular/core';\n\n@Component({\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport abstract class BaseComponent implements OnChanges {\n protected el: HTMLElement;\n\n constructor(cdr: ChangeDetectorRef, elementRef: ElementRef) {\n cdr.detach();\n this.el = elementRef.nativeElement;\n }\n\n ngOnChanges(props: Record<string, { previousValue: any; currentValue: any; firstChange: boolean }>): void {\n for (const prop in props) {\n (this.el as Record<string, any>)[prop] = props[prop].currentValue;\n }\n }\n}\n","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { AccordionAlignMarker, AccordionBackground, AccordionHeadingTag, BreakpointCustomizable, AccordionUpdateEventDetail, AccordionSize } from '../types';\n\nexport type PAccordionProps = {\n /**\n * Positions the expand/collapse marker icon at the start or end of the summary section.\n * @default 'end'\n */\n alignMarker?: AccordionAlignMarker;\n /**\n * Sets the background color of the accordion panel. Use `frosted` only when placed on images, videos, or gradients.\n * @default 'none'\n */\n background?: AccordionBackground;\n /**\n * Reduces padding and spacing for a more compact layout, useful in space-constrained interfaces.\n */\n compact?: boolean;\n /**\n * @deprecated Will be removed in the next major release. Use the `summary` slot instead. Sets the heading text within the summary section.\n */\n heading?: string;\n /**\n * @deprecated Will be removed in the next major release. Use the `summary` slot instead. Sets the heading tag for proper semantic structure within the page.\n * @default 'h2'\n */\n headingTag?: AccordionHeadingTag;\n /**\n * Indents the slotted content to be vertically aligned with the text of the summary section.\n * @default false\n */\n indent?: BreakpointCustomizable<boolean>;\n /**\n * Controls whether the accordion is open or closed.\n */\n open?: boolean;\n /**\n * @deprecated Will be removed in the next major release. Use the `summary` slot instead. Controls the heading size in the summary section (only applies when using the `heading` prop or `heading` slot).\n * @default 'small'\n */\n size?: BreakpointCustomizable<AccordionSize>;\n /**\n * @experimental Makes the summary section sticky at the top while scrolling. Only works with `background=\"canvas\"` or `background=\"surface\"`. Not compatible with `summary-before` or `summary-after` slots.\n */\n sticky?: boolean;\n};\n\n@Component({\n selector: 'p-accordion,[p-accordion]',\n template: '<ng-content />',\n inputs: ['alignMarker', 'background', 'compact', 'heading', 'headingTag', 'indent', 'open', 'size', 'sticky'],\n outputs: ['update'],\n standalone: false\n})\nexport class PAccordion extends BaseComponent {\n alignMarker?: AccordionAlignMarker;\n background?: AccordionBackground;\n compact?: boolean;\n /** @deprecated */\n heading?: string;\n /** @deprecated */\n headingTag?: AccordionHeadingTag;\n indent?: BreakpointCustomizable<boolean>;\n open?: boolean;\n /** @deprecated */\n size?: BreakpointCustomizable<AccordionSize>;\n sticky?: boolean;\n update = new EventEmitter<CustomEvent<AccordionUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { AiTagLocale, AiTagVariant } from '../types';\n\nexport type PAiTagProps = {\n /**\n * Locale for the AI text (ISO format, e.g. \"de_DE\").\n * @default 'en_US'\n */\n locale?: AiTagLocale;\n /**\n * Variant to display: 'abbreviation' (e.g. \"AI\"), 'generated' (e.g. \"AI-generated\"), or 'modified' (e.g. \"AI-modified\").\n * @default 'generated'\n */\n variant?: AiTagVariant;\n};\n\n@Component({\n selector: 'p-ai-tag,[p-ai-tag]',\n template: '<ng-content />',\n inputs: ['locale', 'variant'],\n standalone: false\n})\nexport class PAiTag extends BaseComponent {\n locale?: AiTagLocale;\n variant?: AiTagVariant;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BannerHeadingTag, BreakpointCustomizable, BannerPosition, BannerState } from '../types';\n\nexport type PBannerProps = {\n /**\n * Sets the supporting description text shown below the heading.\n * @default ''\n */\n description?: string;\n /**\n * Shows a dismiss button so the user can manually close the banner.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Sets the heading text displayed at the top of the banner.\n * @default ''\n */\n heading?: string;\n /**\n * Sets the HTML heading tag (e.g. h2, h3) to maintain correct document structure for the heading.\n * @default 'h5'\n */\n headingTag?: BannerHeadingTag;\n /**\n * Controls whether the banner is visible. Set to `true` to show it and `false` to hide it.\n * @default false\n */\n open: boolean;\n /**\n * Sets the position of the banner on screen — `top` or `bottom`. Supports responsive breakpoint values.\n * @default { base: 'bottom', s: 'top' }\n */\n position?: BreakpointCustomizable<BannerPosition>;\n /**\n * Sets the visual state of the banner — controls the icon and color scheme (`info`, `warning`, `error`, `success`).\n * @default 'info'\n */\n state?: BannerState;\n};\n\n@Component({\n selector: 'p-banner,[p-banner]',\n template: '<ng-content />',\n inputs: ['description', 'dismissButton', 'heading', 'headingTag', 'open', 'position', 'state'],\n outputs: ['dismiss'],\n standalone: false\n})\nexport class PBanner extends BaseComponent {\n description?: string;\n dismissButton?: boolean;\n heading?: string;\n headingTag?: BannerHeadingTag;\n open!: boolean;\n position?: BreakpointCustomizable<BannerPosition>;\n state?: BannerState;\n dismiss = new EventEmitter<CustomEvent<void>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, ButtonAriaAttribute, BreakpointCustomizable, ButtonIcon, ButtonType, ButtonVariant } from '../types';\n\nexport type PButtonProps = {\n /**\n * Sets ARIA attributes on the button to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<ButtonAriaAttribute>;\n /**\n * Reduces the button's height and padding for denser layouts. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Disables the button, preventing all interaction and blocking events.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the button with a form element by its ID, so it can submit or reset that form even when placed outside of it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the icon displayed inside the button. Use `none` to show no icon.\n * @default 'none'\n */\n icon?: ButtonIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Disables the button and replaces its content with a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the name submitted with the form data when this button triggers form submission.\n */\n name?: string;\n /**\n * Sets the button's HTML type — `submit` sends the form, `reset` clears it, `button` performs no default action.\n * @default 'submit'\n */\n type?: ButtonType;\n /**\n * Sets the value submitted with the form data when this button triggers form submission, paired with `name`.\n */\n value?: string;\n /**\n * Sets the visual style variant of the button (e.g. `primary`, `secondary`, `tertiary`).\n * @default 'primary'\n */\n variant?: ButtonVariant;\n};\n\n@Component({\n selector: 'p-button,[p-button]',\n template: '<ng-content />',\n inputs: ['aria', 'compact', 'disabled', 'form', 'hideLabel', 'icon', 'iconSource', 'loading', 'name', 'type', 'value', 'variant'],\n standalone: false\n})\nexport class PButton extends BaseComponent {\n aria?: SelectedAriaAttributes<ButtonAriaAttribute>;\n compact?: BreakpointCustomizable<boolean>;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n icon?: ButtonIcon;\n iconSource?: string;\n loading?: boolean;\n name?: string;\n type?: ButtonType;\n value?: string;\n variant?: ButtonVariant;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, ButtonPureAlignLabel, SelectedAriaAttributes, ButtonPureAriaAttribute, ButtonPureColor, ButtonPureIcon, ButtonPureSize, ButtonPureType } from '../types';\n\nexport type PButtonPureProps = {\n /**\n * Visually marks the button as the currently active or selected item, useful for navigation and toggle patterns.\n * @default false\n */\n active?: boolean;\n /**\n * Sets the label position relative to the icon — `start` places it before, `end` places it after. Supports responsive breakpoint values.\n * @default 'end'\n */\n alignLabel?: BreakpointCustomizable<ButtonPureAlignLabel>;\n /**\n * Sets ARIA attributes on the button to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<ButtonPureAriaAttribute>;\n /**\n * Sets the foreground color of the button's icon and label text.\n * @default 'primary'\n */\n color?: ButtonPureColor;\n /**\n * Disables the button, preventing all interaction and blocking events.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the button with a form element by its ID, so it can submit or reset that form even when placed outside of it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the icon displayed next to the label.\n * @default 'arrow-right'\n */\n icon?: ButtonPureIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Disables the button and replaces its icon with a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the name submitted with the form data when this button triggers form submission.\n */\n name?: string;\n /**\n * Sets the font size of the button label. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<ButtonPureSize>;\n /**\n * Expands the space between icon and label to fill the full container width. Supports responsive breakpoint values.\n * @default false\n */\n stretch?: BreakpointCustomizable<boolean>;\n /**\n * Sets the button's HTML type — `submit` sends the form, `reset` clears it, `button` performs no default action.\n * @default 'submit'\n */\n type?: ButtonPureType;\n /**\n * Adds a text underline to the label to reinforce the button's link-like appearance.\n * @default false\n */\n underline?: boolean;\n /**\n * Sets the value submitted with the form data when this button triggers form submission, paired with `name`.\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-button-pure,[p-button-pure]',\n template: '<ng-content />',\n inputs: ['active', 'alignLabel', 'aria', 'color', 'disabled', 'form', 'hideLabel', 'icon', 'iconSource', 'loading', 'name', 'size', 'stretch', 'type', 'underline', 'value'],\n standalone: false\n})\nexport class PButtonPure extends BaseComponent {\n active?: boolean;\n alignLabel?: BreakpointCustomizable<ButtonPureAlignLabel>;\n aria?: SelectedAriaAttributes<ButtonPureAriaAttribute>;\n color?: ButtonPureColor;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n icon?: ButtonPureIcon;\n iconSource?: string;\n loading?: boolean;\n name?: string;\n size?: BreakpointCustomizable<ButtonPureSize>;\n stretch?: BreakpointCustomizable<boolean>;\n type?: ButtonPureType;\n underline?: boolean;\n value?: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { ButtonTileAlign, SelectedAriaAttributes, ButtonTileAriaAttribute, BreakpointCustomizable, ButtonTileAspectRatio, ButtonTileIcon, ButtonTileSize, ButtonTileType, ButtonTileWeight } from '../types';\n\nexport type PButtonTileProps = {\n /**\n * Controls the vertical placement of the description and button — `top` or `bottom`.\n * @default 'bottom'\n */\n align?: ButtonTileAlign;\n /**\n * Sets ARIA attributes on the tile's action button to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<ButtonTileAriaAttribute>;\n /**\n * Sets the width-to-height ratio of the tile media area. Supports responsive breakpoint values.\n * @default '4/3'\n */\n aspectRatio?: BreakpointCustomizable<ButtonTileAspectRatio>;\n /**\n * Renders only the icon button without the full label. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Sets the description text displayed in the tile's content area.\n */\n description: string;\n /**\n * Disables the tile, preventing button interaction.\n * @default false\n */\n disabled?: boolean;\n /**\n * Shows a gradient overlay over the media slot to improve text legibility on bright images or videos.\n * @default false\n */\n gradient?: boolean;\n /**\n * Sets the icon displayed in the tile's action button. Use `none` to show no icon.\n * @default 'none'\n */\n icon?: ButtonTileIcon;\n /**\n * Sets a path to a custom SVG icon for the action button, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets the accessible label text of the action button rendered inside the tile.\n */\n label: string;\n /**\n * Disables the tile and shows a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the font size of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'medium'\n */\n size?: BreakpointCustomizable<ButtonTileSize>;\n /**\n * Sets the button's HTML type — `submit` sends the form, `reset` clears it, `button` performs no default action.\n * @default 'submit'\n */\n type?: ButtonTileType;\n /**\n * Sets the font weight of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'semi-bold'\n */\n weight?: BreakpointCustomizable<ButtonTileWeight>;\n};\n\n@Component({\n selector: 'p-button-tile,[p-button-tile]',\n template: '<ng-content />',\n inputs: ['align', 'aria', 'aspectRatio', 'compact', 'description', 'disabled', 'gradient', 'icon', 'iconSource', 'label', 'loading', 'size', 'type', 'weight'],\n standalone: false\n})\nexport class PButtonTile extends BaseComponent {\n align?: ButtonTileAlign;\n aria?: SelectedAriaAttributes<ButtonTileAriaAttribute>;\n aspectRatio?: BreakpointCustomizable<ButtonTileAspectRatio>;\n compact?: BreakpointCustomizable<boolean>;\n description!: string;\n disabled?: boolean;\n gradient?: boolean;\n icon?: ButtonTileIcon;\n iconSource?: string;\n label!: string;\n loading?: boolean;\n size?: BreakpointCustomizable<ButtonTileSize>;\n type?: ButtonTileType;\n weight?: BreakpointCustomizable<ButtonTileWeight>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { CanvasBackground, CanvasSidebarStartUpdateEventDetail } from '../types';\n\nexport type PCanvasProps = {\n /**\n * Sets the background color of the main content area and automatically applies a matching color to the sidebar.\n * @default 'canvas'\n */\n background?: CanvasBackground;\n /**\n * Controls whether the utility sidebar on the end side (right in LTR) is open or collapsed.\n * @default false\n */\n sidebarEndOpen?: boolean;\n /**\n * Controls whether the navigation sidebar on the start side (left in LTR) is open or collapsed.\n * @default false\n */\n sidebarStartOpen?: boolean;\n};\n\n@Component({\n selector: 'p-canvas,[p-canvas]',\n template: '<ng-content />',\n inputs: ['background', 'sidebarEndOpen', 'sidebarStartOpen'],\n outputs: ['sidebarEndDismiss', 'sidebarStartUpdate'],\n standalone: false\n})\nexport class PCanvas extends BaseComponent {\n background?: CanvasBackground;\n sidebarEndOpen?: boolean;\n sidebarStartOpen?: boolean;\n sidebarEndDismiss = new EventEmitter<CustomEvent<void>>();\n sidebarStartUpdate = new EventEmitter<CustomEvent<CanvasSidebarStartUpdateEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { CarouselAlignControls, CarouselAlignHeader, SelectedAriaAttributes, CarouselAriaAttribute, CarouselHeadingSize, CarouselInternationalization, CarouselUpdateEventDetail, BreakpointCustomizable, CarouselSlidesPerPage, CarouselWidth } from '../types';\n\nexport type PCarouselProps = {\n /**\n * Sets the zero-based index of the currently visible slide. Update this to navigate programmatically.\n * @default 0\n */\n activeSlideIndex?: number;\n /**\n * Controls the alignment of custom slotted controls within the header area.\n * @default 'auto'\n */\n alignControls?: CarouselAlignControls;\n /**\n * Controls the horizontal alignment of the heading and description.\n * @default 'start'\n */\n alignHeader?: CarouselAlignHeader;\n /**\n * Sets ARIA attributes on the carousel region element for improved accessibility.\n */\n aria?: SelectedAriaAttributes<CarouselAriaAttribute>;\n /**\n * Sets the description text displayed below the heading for additional context.\n */\n description?: string;\n /**\n * When enabled, each slide is individually focusable and the carousel navigates one slide at a time instead of one page.\n * @default false\n */\n focusOnCenterSlide?: boolean;\n /**\n * Shows a gradient fade at the start and end edges to visually indicate more slides beyond the viewport.\n * @default false\n */\n gradient?: boolean;\n /**\n * Sets the heading text displayed above the carousel. Also used as the accessible label when no `aria` prop is set.\n */\n heading?: string;\n /**\n * Sets the font size of the carousel heading.\n * @default 'x-large'\n */\n headingSize?: CarouselHeadingSize;\n /**\n * Overrides the default label strings used for the previous, next, and page indicators — useful for localization.\n */\n intl?: CarouselInternationalization;\n /**\n * Shows pagination dot indicators below the carousel. Supports responsive breakpoint values.\n * @default false\n */\n pagination?: BreakpointCustomizable<boolean>;\n /**\n * Enables infinite looping — navigating past the last slide wraps back to the first, and vice versa.\n * @default false\n */\n rewind?: boolean;\n /**\n * Sets the `href` of an in-page skip link that lets keyboard users jump past the carousel slides.\n */\n skipLinkTarget?: string;\n /**\n * Sets how many slides are visible at once. Use `auto` to control each slide's width via CSS. Supports responsive breakpoint values.\n * @default 1\n */\n slidesPerPage?: BreakpointCustomizable<CarouselSlidesPerPage>;\n /**\n * Removes whitespace before the first and after the last slide when `focusOnCenterSlide` is enabled.\n * @default false\n */\n trimSpace?: boolean;\n /**\n * Sets the maximum width and outer spacing of the carousel, aligned to PDS grid widths.\n * @default 'basic'\n */\n width?: CarouselWidth;\n};\n\n@Component({\n selector: 'p-carousel,[p-carousel]',\n template: '<ng-content />',\n inputs: ['activeSlideIndex', 'alignControls', 'alignHeader', 'aria', 'description', 'focusOnCenterSlide', 'gradient', 'heading', 'headingSize', 'intl', 'pagination', 'rewind', 'skipLinkTarget', 'slidesPerPage', 'trimSpace', 'width'],\n outputs: ['update'],\n standalone: false\n})\nexport class PCarousel extends BaseComponent {\n activeSlideIndex?: number;\n alignControls?: CarouselAlignControls;\n alignHeader?: CarouselAlignHeader;\n aria?: SelectedAriaAttributes<CarouselAriaAttribute>;\n description?: string;\n focusOnCenterSlide?: boolean;\n gradient?: boolean;\n heading?: string;\n headingSize?: CarouselHeadingSize;\n intl?: CarouselInternationalization;\n pagination?: BreakpointCustomizable<boolean>;\n rewind?: boolean;\n skipLinkTarget?: string;\n slidesPerPage?: BreakpointCustomizable<CarouselSlidesPerPage>;\n trimSpace?: boolean;\n width?: CarouselWidth;\n update = new EventEmitter<CustomEvent<CarouselUpdateEventDetail>>();\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, CheckboxBlurEventDetail, CheckboxChangeEventDetail, CheckboxState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PCheckboxProps = {\n /**\n * Reflects the checkbox's current checked state and allows setting the initial checked value on load.\n * @default false\n */\n checked?: boolean;\n /**\n * Reduces the checkbox size and spacing for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Disables the checkbox, preventing all interaction. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the checkbox with a form element by its ID when not directly nested inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Puts the checkbox into an indeterminate state, indicating that a group of child items is only partially selected.\n * @default false\n */\n indeterminate?: boolean;\n /**\n * Sets the visible label text displayed next to the checkbox.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the checkbox and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the validation feedback message displayed below the checkbox when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name submitted with the form data to identify this checkbox's value on the server.\n * @default ''\n */\n name?: string;\n /**\n * Marks the checkbox as required — form submission is blocked unless the checkbox is checked.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: CheckboxState;\n /**\n * Sets the value submitted with the form data when the checkbox is checked. Unchecked checkboxes are excluded from form submissions.\n * @default 'on'\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-checkbox,[p-checkbox]',\n template: '<ng-content />',\n inputs: ['checked', 'compact', 'disabled', 'form', 'hideLabel', 'indeterminate', 'label', 'loading', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PCheckbox),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.checked)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PCheckbox extends BaseComponent implements ControlValueAccessor {\n checked?: boolean;\n compact?: boolean;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indeterminate?: boolean;\n label?: string;\n loading?: boolean;\n message?: string;\n name?: string;\n required?: boolean;\n state?: CheckboxState;\n value?: string;\n blur = new EventEmitter<CustomEvent<CheckboxBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<CheckboxChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'checked', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, CrestAriaAttribute, CrestTarget } from '../types';\n\nexport type PCrestProps = {\n /**\n * Sets ARIA attributes on the anchor element to improve accessibility when the crest is used as a link.\n */\n aria?: SelectedAriaAttributes<CrestAriaAttribute>;\n /**\n * When set, renders the crest as an anchor element navigating to this URL when clicked.\n */\n href?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: CrestTarget;\n};\n\n@Component({\n selector: 'p-crest,[p-crest]',\n template: '<ng-content />',\n inputs: ['aria', 'href', 'target'],\n standalone: false\n})\nexport class PCrest extends BaseComponent {\n aria?: SelectedAriaAttributes<CrestAriaAttribute>;\n href?: string;\n target?: CrestTarget;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { DisplayAlign, DisplayColor, BreakpointCustomizable, DisplaySize, DisplayTag } from '../types';\n\nexport type PDisplayProps = {\n /**\n * Sets the horizontal text alignment (`start`, `center`, `end`, or `inherit`).\n * @default 'start'\n */\n align?: DisplayAlign;\n /**\n * Sets the text color using PDS color tokens.\n * @default 'primary'\n */\n color?: DisplayColor;\n /**\n * Truncates the text with an ellipsis when it overflows the container on a single line.\n * @default false\n */\n ellipsis?: boolean;\n /**\n * Sets the visual text size. Supports responsive breakpoint values.\n * @default 'large'\n */\n size?: BreakpointCustomizable<DisplaySize>;\n /**\n * Sets the HTML heading tag (h1–h6) for correct document outline placement. When omitted, the tag is inferred from `size`.\n */\n tag?: DisplayTag;\n};\n\n/** @deprecated since v4.0.0, will be removed with next major release. Please use `p-heading` instead. */\n@Component({\n selector: 'p-display,[p-display]',\n template: '<ng-content />',\n inputs: ['align', 'color', 'ellipsis', 'size', 'tag'],\n standalone: false\n})\nexport class PDisplay extends BaseComponent {\n align?: DisplayAlign;\n color?: DisplayColor;\n ellipsis?: boolean;\n size?: BreakpointCustomizable<DisplaySize>;\n tag?: DisplayTag;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { DividerColor, BreakpointCustomizable, DividerDirection } from '../types';\n\nexport type PDividerProps = {\n /**\n * Sets the color of the divider line using PDS contrast tokens.\n * @default 'contrast-lower'\n */\n color?: DividerColor;\n /**\n * Sets the orientation of the divider to `horizontal` or `vertical`. Supports responsive breakpoint values.\n * @default 'horizontal'\n */\n direction?: BreakpointCustomizable<DividerDirection>;\n};\n\n@Component({\n selector: 'p-divider,[p-divider]',\n template: '<ng-content />',\n inputs: ['color', 'direction'],\n standalone: false\n})\nexport class PDivider extends BaseComponent {\n color?: DividerColor;\n direction?: BreakpointCustomizable<DividerDirection>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, DrilldownAriaAttribute, DrilldownUpdateEventDetail } from '../types';\n\nexport type PDrilldownProps = {\n /**\n * Sets which `p-drilldown-item` (by `identifier`) is currently expanded to show its sub-navigation level.\n */\n activeIdentifier?: string | undefined;\n /**\n * Sets ARIA attributes on the drilldown dialog element for improved screen reader accessibility.\n */\n aria?: SelectedAriaAttributes<DrilldownAriaAttribute>;\n /**\n * Controls whether the drilldown navigation panel is visible.\n * @default false\n */\n open?: boolean;\n};\n\n@Component({\n selector: 'p-drilldown,[p-drilldown]',\n template: '<ng-content />',\n inputs: ['activeIdentifier', 'aria', 'open'],\n outputs: ['dismiss', 'update'],\n standalone: false\n})\nexport class PDrilldown extends BaseComponent {\n activeIdentifier?: string | undefined;\n aria?: SelectedAriaAttributes<DrilldownAriaAttribute>;\n open?: boolean;\n dismiss = new EventEmitter<CustomEvent<void>>();\n update = new EventEmitter<CustomEvent<DrilldownUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PDrilldownItemProps = {\n /**\n * Private property set by the component itself.\n * @default false\n */\n cascade?: boolean;\n /**\n * Sets the unique identifier matched against the drilldown's `activeIdentifier` to determine if this item is shown.\n */\n identifier: string;\n /**\n * Sets the text used for the back button, sticky header, and cascade button that navigates into this navigation level.\n */\n label?: string;\n /**\n * Private property set by the component itself.\n * @default false\n */\n primary?: boolean;\n /**\n * Private property set by the component itself.\n * @default false\n */\n secondary?: boolean;\n};\n\n@Component({\n selector: 'p-drilldown-item,[p-drilldown-item]',\n template: '<ng-content />',\n inputs: ['cascade', 'identifier', 'label', 'primary', 'secondary'],\n standalone: false\n})\nexport class PDrilldownItem extends BaseComponent {\n cascade?: boolean;\n identifier!: string;\n label?: string;\n primary?: boolean;\n secondary?: boolean;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, DrilldownLinkAriaAttribute, DrilldownLinkTarget } from '../types';\n\nexport type PDrilldownLinkProps = {\n /**\n * Visually marks the link as the currently active navigation item, e.g. the current page.\n * @default false\n */\n active?: boolean;\n /**\n * Sets ARIA attributes on the link for improved accessibility. Only applies when `href` is set.\n */\n aria?: SelectedAriaAttributes<DrilldownLinkAriaAttribute>;\n /**\n * Sets the native `download` attribute to trigger a file download. Only applies when `href` is set.\n */\n download?: string;\n /**\n * When set, the component renders as an anchor navigating to this URL. Otherwise, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Sets the `rel` attribute on the link element (e.g. `noopener`). Only applies when `href` is set.\n */\n rel?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: DrilldownLinkTarget;\n};\n\n@Component({\n selector: 'p-drilldown-link,[p-drilldown-link]',\n template: '<ng-content />',\n inputs: ['active', 'aria', 'download', 'href', 'rel', 'target'],\n standalone: false\n})\nexport class PDrilldownLink extends BaseComponent {\n active?: boolean;\n aria?: SelectedAriaAttributes<DrilldownLinkAriaAttribute>;\n download?: string;\n href?: string;\n rel?: string;\n target?: DrilldownLinkTarget;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaRole, FieldsetLabelSize, FieldsetState } from '../types';\n\nexport type PFieldsetProps = {\n /**\n * Overrides the ARIA role on the fieldset — use `radiogroup` when grouping radio buttons.\n */\n aria?: SelectedAriaRole<\"radiogroup\">;\n /**\n * Sets the visible legend text displayed above the grouped form controls.\n * @default ''\n */\n label?: string;\n /**\n * Sets the font size of the fieldset label (`small`, `medium`, or `large`).\n * @default 'medium'\n */\n labelSize?: FieldsetLabelSize;\n /**\n * Sets the validation feedback message displayed below the fieldset when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Marks all controls within the fieldset as required and adds a required indicator to the label.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the fieldset, controlling the color and style of the feedback message.\n * @default 'none'\n */\n state?: FieldsetState;\n};\n\n@Component({\n selector: 'p-fieldset,[p-fieldset]',\n template: '<ng-content />',\n inputs: ['aria', 'label', 'labelSize', 'message', 'required', 'state'],\n standalone: false\n})\nexport class PFieldset extends BaseComponent {\n aria?: SelectedAriaRole<\"radiogroup\">;\n label?: string;\n labelSize?: FieldsetLabelSize;\n message?: string;\n required?: boolean;\n state?: FieldsetState;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, FlagAriaAttribute, FlagName, BreakpointCustomizable, FlagSize } from '../types';\n\nexport type PFlagProps = {\n /**\n * A map of ARIA attributes to enhance the flag's accessibility. For example, use `{ 'aria-label': 'German flag' }` to provide a descriptive label for screen readers.\n */\n aria?: SelectedAriaAttributes<FlagAriaAttribute>;\n /**\n * Specifies the country flag to display. Use the two-letter ISO 3166-1 alpha-2 country code. For example, use `us` for the United States, `de` for Germany, `gb` for Great Britain.\n * @default 'de'\n */\n name?: FlagName;\n /**\n * Defines the size of the flag, aligned with the typographic scale used by components such as p-icon, p-spinner, p-text, and p-heading. When set to `inherit`, the size is derived from a custom font-size defined on a parent element, calculated against the global line-height (based on `ex`-unit) to remain visually consistent with other typographic-scale-based components.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<FlagSize>;\n};\n\n@Component({\n selector: 'p-flag,[p-flag]',\n template: '<ng-content />',\n inputs: ['aria', 'name', 'size'],\n standalone: false\n})\nexport class PFlag extends BaseComponent {\n aria?: SelectedAriaAttributes<FlagAriaAttribute>;\n name?: FlagName;\n size?: BreakpointCustomizable<FlagSize>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, FlyoutAriaAttribute, FlyoutBackdrop, FlyoutBackground, FlyoutFooterBehavior, BreakpointCustomizable, FlyoutMotionHiddenEndEventDetail, FlyoutMotionVisibleEndEventDetail, FlyoutPosition } from '../types';\n\nexport type PFlyoutProps = {\n /**\n * Sets ARIA attributes on the flyout dialog element for improved screen reader accessibility.\n */\n aria?: SelectedAriaAttributes<FlyoutAriaAttribute>;\n /**\n * Sets the backdrop style. Use `blur` when background content is irrelevant; use `shading` when users still need visual context.\n * @default 'blur'\n */\n backdrop?: FlyoutBackdrop;\n /**\n * Sets the background color of the flyout panel (`canvas` or `surface`).\n * @default 'canvas'\n */\n background?: FlyoutBackground;\n /**\n * When enabled, clicking the backdrop will not close the flyout.\n * @default false\n */\n disableBackdropClick?: boolean;\n /**\n * Controls footer behavior. `fixed` keeps it anchored at the bottom; `sticky` pins it only when content overflows.\n * @default 'sticky'\n */\n footerBehavior?: FlyoutFooterBehavior;\n /**\n * If true the flyout stretches to the full viewport width with squared corners. Useful for smaller viewports where the flyout would otherwise fill the screen but still show rounded corners.\n * @default false\n */\n fullscreen?: BreakpointCustomizable<boolean>;\n /**\n * Controls whether the flyout panel is visible.\n * @default false\n */\n open: boolean;\n /**\n * Sets the side the flyout slides in from — `start` for left or `end` for right in LTR layouts.\n * @default 'end'\n */\n position?: FlyoutPosition;\n};\n\n@Component({\n selector: 'p-flyout,[p-flyout]',\n template: '<ng-content />',\n inputs: ['aria', 'backdrop', 'background', 'disableBackdropClick', 'footerBehavior', 'fullscreen', 'open', 'position'],\n outputs: ['dismiss', 'motionHiddenEnd', 'motionVisibleEnd'],\n standalone: false\n})\nexport class PFlyout extends BaseComponent {\n aria?: SelectedAriaAttributes<FlyoutAriaAttribute>;\n backdrop?: FlyoutBackdrop;\n background?: FlyoutBackground;\n disableBackdropClick?: boolean;\n footerBehavior?: FlyoutFooterBehavior;\n fullscreen?: BreakpointCustomizable<boolean>;\n open!: boolean;\n position?: FlyoutPosition;\n dismiss = new EventEmitter<CustomEvent<void>>();\n motionHiddenEnd = new EventEmitter<CustomEvent<FlyoutMotionHiddenEndEventDetail>>();\n motionVisibleEnd = new EventEmitter<CustomEvent<FlyoutMotionVisibleEndEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { HeadingAlign, HeadingColor, HeadingHyphens, BreakpointCustomizable, HeadingSize, HeadingTag, HeadingWeight } from '../types';\n\nexport type PHeadingProps = {\n /**\n * Sets the horizontal text alignment (`start`, `center`, `end`, or `inherit`).\n * @default 'start'\n */\n align?: HeadingAlign;\n /**\n * Sets the text color using PDS color tokens.\n * @default 'primary'\n */\n color?: HeadingColor;\n /**\n * Truncates the text with an ellipsis when it overflows the container on a single line. Cannot be combined with multi-line content.\n * @default false\n */\n ellipsis?: boolean;\n /**\n * Controls hyphenation behavior — `auto` lets the browser decide, `manual` only breaks at `­`, `none` disables it entirely.\n * @default 'none'\n */\n hyphens?: HeadingHyphens;\n /**\n * Sets the visual size of the heading. Use `inherit` to derive size from the parent. Supports responsive breakpoint values.\n * @default '2xl'\n */\n size?: BreakpointCustomizable<HeadingSize>;\n /**\n * Sets the HTML heading tag (h1–h6) for correct document outline placement. When omitted, the tag is inferred from `size`.\n */\n tag?: HeadingTag;\n /**\n * Sets the font weight — `normal`, `semibold`, or `bold`.\n * @default 'normal'\n */\n weight?: HeadingWeight;\n};\n\n@Component({\n selector: 'p-heading,[p-heading]',\n template: '<ng-content />',\n inputs: ['align', 'color', 'ellipsis', 'hyphens', 'size', 'tag', 'weight'],\n standalone: false\n})\nexport class PHeading extends BaseComponent {\n align?: HeadingAlign;\n color?: HeadingColor;\n ellipsis?: boolean;\n hyphens?: HeadingHyphens;\n size?: BreakpointCustomizable<HeadingSize>;\n tag?: HeadingTag;\n weight?: HeadingWeight;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, IconAriaAttribute, IconColor, IconName, BreakpointCustomizable, IconSize } from '../types';\n\nexport type PIconProps = {\n /**\n * Sets ARIA attributes on the icon — use `aria-label` to make the icon meaningful to screen readers when it conveys information.\n */\n aria?: SelectedAriaAttributes<IconAriaAttribute>;\n /**\n * Sets the fill color of the icon using PDS color tokens.\n * @default 'primary'\n */\n color?: IconColor;\n /**\n * Selects an icon from the built-in PDS icon library by name (e.g. `arrow-right`, `close`).\n * @default 'arrow-right'\n */\n name?: IconName;\n /**\n * Sets the icon size using the PDS typographic scale. Use `inherit` to derive size from the parent element. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<IconSize>;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon library.\n */\n source?: string;\n};\n\n@Component({\n selector: 'p-icon,[p-icon]',\n template: '<ng-content />',\n inputs: ['aria', 'color', 'name', 'size', 'source'],\n standalone: false\n})\nexport class PIcon extends BaseComponent {\n aria?: SelectedAriaAttributes<IconAriaAttribute>;\n color?: IconColor;\n name?: IconName;\n size?: BreakpointCustomizable<IconSize>;\n source?: string;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { InlineNotificationActionIcon, InlineNotificationHeadingTag, InlineNotificationState } from '../types';\n\nexport type PInlineNotificationProps = {\n /**\n * Sets the icon displayed inside the action button using a PDS icon name.\n * @default 'arrow-right'\n */\n actionIcon?: InlineNotificationActionIcon;\n /**\n * Sets the label text of the optional action button inside the notification.\n */\n actionLabel?: string;\n /**\n * Disables the action button and shows a spinner to indicate an ongoing operation.\n * @default false\n */\n actionLoading?: boolean;\n /**\n * Sets the supporting description text shown below the heading.\n * @default ''\n */\n description?: string;\n /**\n * Shows a dismiss button so the user can manually close the notification.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Sets the heading text displayed at the top of the inline notification.\n * @default ''\n */\n heading?: string;\n /**\n * Sets the HTML heading tag (e.g. h2, h3) to maintain correct document structure.\n * @default 'h5'\n */\n headingTag?: InlineNotificationHeadingTag;\n /**\n * Sets the visual state — controls the icon and color scheme (`info`, `warning`, `error`, `success`).\n * @default 'info'\n */\n state?: InlineNotificationState;\n};\n\n@Component({\n selector: 'p-inline-notification,[p-inline-notification]',\n template: '<ng-content />',\n inputs: ['actionIcon', 'actionLabel', 'actionLoading', 'description', 'dismissButton', 'heading', 'headingTag', 'state'],\n outputs: ['action', 'dismiss'],\n standalone: false\n})\nexport class PInlineNotification extends BaseComponent {\n actionIcon?: InlineNotificationActionIcon;\n actionLabel?: string;\n actionLoading?: boolean;\n description?: string;\n dismissButton?: boolean;\n heading?: string;\n headingTag?: InlineNotificationHeadingTag;\n state?: InlineNotificationState;\n action = new EventEmitter<CustomEvent<void>>();\n dismiss = new EventEmitter<CustomEvent<void>>();\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputDateBlurEventDetail, InputDateChangeEventDetail, InputDateInputEventDetail, InputDateState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputDateProps = {\n /**\n * Provides the browser with a date autofill hint (e.g. `autocomplete='bday'` for a birthday field).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing date selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable date in YYYY-MM-DD format. Dates after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable date in YYYY-MM-DD format. Dates before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the date is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no date is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputDateState;\n /**\n * Sets the stepping interval in days. The selected date must align with the `min` date by a multiple of this value.\n * @default 1\n */\n step?: number;\n /**\n * Sets the current date value in YYYY-MM-DD format (e.g. `2025-07-02`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-date,[p-input-date]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputDate),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputDate extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputDateState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputDateBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputDateChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputDateInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputEmailBlurEventDetail, InputEmailChangeEventDetail, InputEmailInputEventDetail, InputEmailState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputEmailProps = {\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions (e.g. `autocomplete='email'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows an email icon at the start of the field as a visual indicator.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Allows entry of multiple email addresses separated by commas. The browser validates each address individually.\n * @default false\n */\n multiple?: boolean;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets a regular expression the entered value must match to be valid. Overrides the browser's default email validation.\n */\n pattern?: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, to hint at the expected format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputEmailState;\n /**\n * Sets the current email value. When `multiple` is enabled, accepts a comma-separated list of email addresses.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-email,[p-input-email]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'multiple', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputEmail),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputEmail extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n multiple?: boolean;\n name!: string;\n pattern?: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputEmailState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputEmailBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputEmailChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputEmailInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputMonthBlurEventDetail, InputMonthChangeEventDetail, InputMonthInputEventDetail, InputMonthState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputMonthProps = {\n /**\n * Provides the browser with a month/year autofill hint.\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing month selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable month in YYYY-MM format. Months after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable month in YYYY-MM format. Months before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no month is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputMonthState;\n /**\n * Sets the stepping interval in months (e.g. `1` for monthly, `12` for annual).\n * @default 1\n */\n step?: number;\n /**\n * Sets the current month value in YYYY-MM format (e.g. `2025-07`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-month,[p-input-month]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputMonth),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputMonth extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputMonthState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputMonthBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputMonthChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputMonthInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputNumberBlurEventDetail, InputNumberChangeEventDetail, InputNumberInputEventDetail, InputNumberState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputNumberProps = {\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions (e.g. `autocomplete='postal-code'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Shows increment/decrement spin buttons inside the field to adjust the numeric value by clicking.\n * @default false\n */\n controls?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum allowed numeric value. Values above this are invalid.\n */\n max?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum allowed numeric value. Values below this are invalid.\n */\n min?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, to hint at the expected format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputNumberState;\n /**\n * Sets the stepping granularity — the value must be a multiple of this number. Also controls step button increment size.\n * @default 1\n */\n step?: number;\n /**\n * Sets the current numeric value of the field.\n * @default ''\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-input-number,[p-input-number]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'controls', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'placeholder', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputNumber),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputNumber extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n controls?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: number;\n message?: string;\n min?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputNumberState;\n step?: number;\n value?: string | number | null;\n blur = new EventEmitter<CustomEvent<InputNumberBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputNumberChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputNumberInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputPasswordBlurEventDetail, InputPasswordChangeEventDetail, InputPasswordInputEventDetail, InputPasswordState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputPasswordProps = {\n /**\n * Provides the browser with a password autofill hint (e.g. `autocomplete='current-password'` or `autocomplete='new-password'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputPasswordState;\n /**\n * Shows a toggle button that switches the password between masked and plain text visibility.\n * @default false\n */\n toggle?: boolean;\n /**\n * Sets the current password value of the field.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-password,[p-input-password]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'state', 'toggle', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputPassword),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputPassword extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputPasswordState;\n toggle?: boolean;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputPasswordBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputPasswordChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputPasswordInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, InputSearchAriaAttribute, BreakpointCustomizable, InputSearchBlurEventDetail, InputSearchChangeEventDetail, InputSearchInputEventDetail, InputSearchState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputSearchProps = {\n /**\n * Sets additional ARIA attributes on the search input, useful for combobox patterns (e.g. `role=\"combobox\"`, `aria-expanded`).\n */\n aria?: SelectedAriaAttributes<InputSearchAriaAttribute>;\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions.\n */\n autoComplete?: string;\n /**\n * Shows a clear button (×) inside the field that resets the value to empty when clicked.\n * @default false\n */\n clear?: boolean;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows a magnifying glass icon inside the field as a visual affordance for search input.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputSearchState;\n /**\n * Sets the current search query value of the field.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-search,[p-input-search]',\n template: '<ng-content />',\n inputs: ['aria', 'autoComplete', 'clear', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputSearch),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputSearch extends BaseComponent implements ControlValueAccessor {\n aria?: SelectedAriaAttributes<InputSearchAriaAttribute>;\n autoComplete?: string;\n clear?: boolean;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputSearchState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputSearchBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputSearchChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputSearchInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputTelBlurEventDetail, InputTelChangeEventDetail, InputTelInputEventDetail, InputTelState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputTelProps = {\n /**\n * Provides the browser with a phone number autofill hint (e.g. `autocomplete='tel'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows a phone icon at the start of the field as a visual indicator for telephone input.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets a regular expression the entered value must match to be valid. Overrides the browser's default telephone validation.\n */\n pattern?: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, such as an example phone number format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputTelState;\n /**\n * Sets the current telephone number value of the field.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-tel,[p-input-tel]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputTel),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputTel extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n pattern?: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputTelState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputTelBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputTelChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputTelInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputTextBlurEventDetail, InputTextChangeEventDetail, InputTextInputEventDetail, InputTextState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputTextProps = {\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions (e.g. `autocomplete='name'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Shows a live character counter below the field indicating how many characters have been entered relative to `maxLength`.\n * @default false\n */\n counter?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, to hint at the expected format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited by the user. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Controls whether the browser's built-in spell-checking is enabled for this field.\n */\n spellCheck?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputTextState;\n /**\n * Sets the current text value of the input field.\n * @default ''\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-input-text,[p-input-text]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'counter', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'spellCheck', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputText),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputText extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n counter?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n spellCheck?: boolean;\n state?: InputTextState;\n value?: string | number | null;\n blur = new EventEmitter<CustomEvent<InputTextBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputTextChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputTextInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputTimeBlurEventDetail, InputTimeChangeEventDetail, InputTimeInputEventDetail, InputTimeState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputTimeProps = {\n /**\n * Provides the browser with a time autofill hint.\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing time selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable time in `hh:mm` or `hh:mm:ss` format. Times after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable time in `hh:mm` or `hh:mm:ss` format. Times before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no time is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputTimeState;\n /**\n * Sets the stepping interval in seconds. Use `60` for minute-level selection, `1` to also expose seconds.\n * @default 60\n */\n step?: number;\n /**\n * Sets the current time value in `hh:mm` or `hh:mm:ss` format (e.g. `14:00`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-time,[p-input-time]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputTime),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputTime extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputTimeState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputTimeBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputTimeChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputTimeInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputUrlBlurEventDetail, InputUrlChangeEventDetail, InputUrlInputEventDetail, InputUrlState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputUrlProps = {\n /**\n * Provides the browser with a URL autofill hint (e.g. `autocomplete='url'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows a URL/link icon at the start of the field as a visual indicator.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets a regular expression the entered value must match to be valid. Overrides the browser's default URL validation.\n */\n pattern?: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, such as an example URL.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputUrlState;\n /**\n * Sets the current URL value. Must be an absolute URL (e.g. `https://porsche.com`) to pass browser validation.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-url,[p-input-url]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputUrl),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputUrl extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n pattern?: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputUrlState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputUrlBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputUrlChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputUrlInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputWeekBlurEventDetail, InputWeekChangeEventDetail, InputWeekInputEventDetail, InputWeekState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputWeekProps = {\n /**\n * Provides the browser with a week/year autofill hint.\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing week selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable week in YYYY-Www format. Weeks after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable week in YYYY-Www format. Weeks before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no week is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputWeekState;\n /**\n * Sets the stepping interval in weeks.\n * @default 1\n */\n step?: number;\n /**\n * Sets the current ISO week value in YYYY-Www format (e.g. `2025-W27`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-week,[p-input-week]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputWeek),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputWeek extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputWeekState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputWeekBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputWeekChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputWeekInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, LinkAriaAttribute, BreakpointCustomizable, LinkIcon, LinkTarget, LinkVariant } from '../types';\n\nexport type PLinkProps = {\n /**\n * Sets ARIA attributes on the link element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<LinkAriaAttribute>;\n /**\n * Reduces the link's padding and height for denser layouts. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Sets the native `download` attribute to trigger a file download. Only applies when `href` is set.\n */\n download?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * When set, the component renders as an anchor navigating to this URL. Otherwise, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Sets the icon displayed next to the link label. Use `none` to show no icon.\n * @default 'none'\n */\n icon?: LinkIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`). Only applies when `href` is set.\n */\n rel?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: LinkTarget;\n /**\n * Sets the visual style variant of the link (e.g. `primary`, `secondary`, `tertiary`).\n * @default 'primary'\n */\n variant?: LinkVariant;\n};\n\n@Component({\n selector: 'p-link,[p-link]',\n template: '<ng-content />',\n inputs: ['aria', 'compact', 'download', 'hideLabel', 'href', 'icon', 'iconSource', 'rel', 'target', 'variant'],\n standalone: false\n})\nexport class PLink extends BaseComponent {\n aria?: SelectedAriaAttributes<LinkAriaAttribute>;\n compact?: BreakpointCustomizable<boolean>;\n download?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n href?: string;\n icon?: LinkIcon;\n iconSource?: string;\n rel?: string;\n target?: LinkTarget;\n variant?: LinkVariant;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, LinkPureAlignLabel, SelectedAriaAttributes, LinkPureAriaAttribute, LinkPureColor, LinkPureIcon, LinkPureSize, LinkPureTarget } from '../types';\n\nexport type PLinkPureProps = {\n /**\n * Visually marks the link as the currently active navigation item, e.g. the current page.\n * @default false\n */\n active?: boolean;\n /**\n * Sets the label position relative to the icon — `start` places it before, `end` places it after. Supports responsive breakpoint values.\n * @default 'end'\n */\n alignLabel?: BreakpointCustomizable<LinkPureAlignLabel>;\n /**\n * Sets ARIA attributes on the link element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<LinkPureAriaAttribute>;\n /**\n * Sets the foreground color of the link's icon and label text.\n * @default 'primary'\n */\n color?: LinkPureColor;\n /**\n * Sets the native `download` attribute to trigger a file download. Only applies when `href` is set.\n */\n download?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * When set, the component renders as an anchor navigating to this URL. Otherwise, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Sets the icon displayed next to the label.\n * @default 'arrow-right'\n */\n icon?: LinkPureIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`). Only applies when `href` is set.\n */\n rel?: string;\n /**\n * Sets the font size of the link label. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<LinkPureSize>;\n /**\n * Expands the space between icon and label to fill the full container width. Supports responsive breakpoint values.\n * @default false\n */\n stretch?: BreakpointCustomizable<boolean>;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: LinkPureTarget;\n /**\n * Adds a text underline to the label to reinforce its link-like appearance.\n * @default false\n */\n underline?: boolean;\n};\n\n@Component({\n selector: 'p-link-pure,[p-link-pure]',\n template: '<ng-content />',\n inputs: ['active', 'alignLabel', 'aria', 'color', 'download', 'hideLabel', 'href', 'icon', 'iconSource', 'rel', 'size', 'stretch', 'target', 'underline'],\n standalone: false\n})\nexport class PLinkPure extends BaseComponent {\n active?: boolean;\n alignLabel?: BreakpointCustomizable<LinkPureAlignLabel>;\n aria?: SelectedAriaAttributes<LinkPureAriaAttribute>;\n color?: LinkPureColor;\n download?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n href?: string;\n icon?: LinkPureIcon;\n iconSource?: string;\n rel?: string;\n size?: BreakpointCustomizable<LinkPureSize>;\n stretch?: BreakpointCustomizable<boolean>;\n target?: LinkPureTarget;\n underline?: boolean;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { LinkTileAlign, SelectedAriaAttributes, LinkTileAriaAttribute, BreakpointCustomizable, LinkTileAspectRatio, LinkTileSize, LinkTileTarget, LinkTileWeight } from '../types';\n\nexport type PLinkTileProps = {\n /**\n * Controls the vertical placement of the description and link — `top` or `bottom`.\n * @default 'bottom'\n */\n align?: LinkTileAlign;\n /**\n * Sets ARIA attributes on the tile's anchor element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<LinkTileAriaAttribute>;\n /**\n * Sets the width-to-height ratio of the tile media area. Supports responsive breakpoint values.\n * @default '4/3'\n */\n aspectRatio?: BreakpointCustomizable<LinkTileAspectRatio>;\n /**\n * Renders only the icon link without the full label. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Sets the description text displayed in the tile's content area.\n */\n description: string;\n /**\n * Sets the native `download` attribute to trigger a file download.\n */\n download?: string;\n /**\n * Shows a gradient overlay over the media slot to improve text legibility on bright images or videos.\n * @default false\n */\n gradient?: boolean;\n /**\n * Sets the URL the tile's anchor element navigates to when clicked.\n */\n href: string;\n /**\n * Sets the accessible label text of the link rendered inside the tile.\n */\n label: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`).\n */\n rel?: string;\n /**\n * Sets the font size of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'medium'\n */\n size?: BreakpointCustomizable<LinkTileSize>;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`).\n * @default '_self'\n */\n target?: LinkTileTarget;\n /**\n * Sets the font weight of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'semi-bold'\n */\n weight?: BreakpointCustomizable<LinkTileWeight>;\n};\n\n@Component({\n selector: 'p-link-tile,[p-link-tile]',\n template: '<ng-content />',\n inputs: ['align', 'aria', 'aspectRatio', 'compact', 'description', 'download', 'gradient', 'href', 'label', 'rel', 'size', 'target', 'weight'],\n standalone: false\n})\nexport class PLinkTile extends BaseComponent {\n align?: LinkTileAlign;\n aria?: SelectedAriaAttributes<LinkTileAriaAttribute>;\n aspectRatio?: BreakpointCustomizable<LinkTileAspectRatio>;\n compact?: BreakpointCustomizable<boolean>;\n description!: string;\n download?: string;\n gradient?: boolean;\n href!: string;\n label!: string;\n rel?: string;\n size?: BreakpointCustomizable<LinkTileSize>;\n target?: LinkTileTarget;\n weight?: BreakpointCustomizable<LinkTileWeight>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, LinkTileProductAspectRatio, LinkTileProductLikeEventDetail, LinkTileProductTarget } from '../types';\n\nexport type PLinkTileProductProps = {\n /**\n * Sets the width-to-height ratio of the tile media area. Supports responsive breakpoint values.\n * @default '3/4'\n */\n aspectRatio?: BreakpointCustomizable<LinkTileProductAspectRatio>;\n /**\n * Sets an optional short description providing additional product details below the price.\n */\n description?: string;\n /**\n * Sets the product name displayed prominently at the top of the tile.\n */\n heading: string;\n /**\n * Sets the URL the tile navigates to when clicked. Alternatively, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Shows a like/bookmark button so users can save the product.\n * @default true\n */\n likeButton?: boolean;\n /**\n * Reflects whether the product is currently liked — controls the filled state of the like button.\n * @default false\n */\n liked?: boolean;\n /**\n * Sets the current retail price of the product, displayed with or without a discount.\n */\n price: string;\n /**\n * Sets the original recommended retail price shown with a strikethrough to indicate a discount. Requires `price` to be set.\n */\n priceOriginal?: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`).\n */\n rel?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`).\n * @default '_self'\n */\n target?: LinkTileProductTarget;\n};\n\n@Component({\n selector: 'p-link-tile-product,[p-link-tile-product]',\n template: '<ng-content />',\n inputs: ['aspectRatio', 'description', 'heading', 'href', 'likeButton', 'liked', 'price', 'priceOriginal', 'rel', 'target'],\n outputs: ['like'],\n standalone: false\n})\nexport class PLinkTileProduct extends BaseComponent {\n aspectRatio?: BreakpointCustomizable<LinkTileProductAspectRatio>;\n description?: string;\n heading!: string;\n href?: string;\n likeButton?: boolean;\n liked?: boolean;\n price!: string;\n priceOriginal?: string;\n rel?: string;\n target?: LinkTileProductTarget;\n like = new EventEmitter<CustomEvent<LinkTileProductLikeEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, ModalAriaAttribute, ModalBackdrop, ModalBackground, BreakpointCustomizable, ModalMotionHiddenEndEventDetail, ModalMotionVisibleEndEventDetail } from '../types';\n\nexport type PModalProps = {\n /**\n * Sets ARIA attributes on the dialog element for improved accessibility when no visible heading is present.\n */\n aria?: SelectedAriaAttributes<ModalAriaAttribute>;\n /**\n * Sets the backdrop style. Use `blur` when the modal is opened by user interaction; use `shading` when opened automatically (e.g. Cookie Consent).\n * @default 'blur'\n */\n backdrop?: ModalBackdrop;\n /**\n * Sets the background color of the modal panel (`canvas` or `surface`).\n * @default 'canvas'\n */\n background?: ModalBackground;\n /**\n * When enabled, clicking the backdrop will not close the modal.\n * @default false\n */\n disableBackdropClick?: boolean;\n /**\n * Shows a dismiss button in the modal header so the user can manually close it.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Expands the modal to the full viewport size, intended for mobile use cases. Supports responsive breakpoint values.\n * @default false\n */\n fullscreen?: BreakpointCustomizable<boolean>;\n /**\n * Controls whether the modal dialog is visible.\n * @default false\n */\n open: boolean;\n};\n\n@Component({\n selector: 'p-modal,[p-modal]',\n template: '<ng-content />',\n inputs: ['aria', 'backdrop', 'background', 'disableBackdropClick', 'dismissButton', 'fullscreen', 'open'],\n outputs: ['dismiss', 'motionHiddenEnd', 'motionVisibleEnd'],\n standalone: false\n})\nexport class PModal extends BaseComponent {\n aria?: SelectedAriaAttributes<ModalAriaAttribute>;\n backdrop?: ModalBackdrop;\n background?: ModalBackground;\n disableBackdropClick?: boolean;\n dismissButton?: boolean;\n fullscreen?: BreakpointCustomizable<boolean>;\n open!: boolean;\n dismiss = new EventEmitter<CustomEvent<void>>();\n motionHiddenEnd = new EventEmitter<CustomEvent<ModalMotionHiddenEndEventDetail>>();\n motionVisibleEnd = new EventEmitter<CustomEvent<ModalMotionVisibleEndEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { ModelSignatureColor, ModelSignatureFetchPriority, ModelSignatureModel, ModelSignatureSize } from '../types';\n\nexport type PModelSignatureProps = {\n /**\n * Sets the fill color of the signature using PDS color tokens.\n * @default 'primary'\n */\n color?: ModelSignatureColor;\n /**\n * Sets the browser's fetch priority hint for the signature asset (`auto`, `high`, `low`).\n * @default 'auto'\n */\n fetchPriority?: ModelSignatureFetchPriority;\n /**\n * Defers loading the signature until it enters the viewport to improve initial page performance.\n * @default false\n */\n lazy?: boolean;\n /**\n * Selects the Porsche model whose typographic signature SVG is displayed.\n * @default '911'\n */\n model?: ModelSignatureModel;\n /**\n * When enabled, adds invisible padding so all model signatures visually align to a consistent baseline.\n * @default true\n */\n safeZone?: boolean;\n /**\n * Sets the display size of the signature using predefined PDS sizes. Use `inherit` with a CSS `width` or `height` on the host for custom sizing.\n * @default 'small'\n */\n size?: ModelSignatureSize;\n};\n\n@Component({\n selector: 'p-model-signature,[p-model-signature]',\n template: '<ng-content />',\n inputs: ['color', 'fetchPriority', 'lazy', 'model', 'safeZone', 'size'],\n standalone: false\n})\nexport class PModelSignature extends BaseComponent {\n color?: ModelSignatureColor;\n fetchPriority?: ModelSignatureFetchPriority;\n lazy?: boolean;\n model?: ModelSignatureModel;\n safeZone?: boolean;\n size?: ModelSignatureSize;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { MultiSelectDropdownDirection, BreakpointCustomizable, MultiSelectChangeEventDetail, MultiSelectToggleEventDetail, MultiSelectState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PMultiSelectProps = {\n /**\n * Reduces the control height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the multi-select, preventing all interaction. Selected values are not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Controls whether the dropdown opens upward (`up`) or downward (`down`), or decides automatically (`auto`).\n * @default 'auto'\n */\n dropdownDirection?: MultiSelectDropdownDirection;\n /**\n * Associates the multi-select with a form element by its ID when not directly nested inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the multi-select control.\n * @default ''\n */\n label?: string;\n /**\n * Sets the validation feedback message displayed below the control when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name submitted with the form data to identify the selected values on the server.\n */\n name: string;\n /**\n * Marks the multi-select as required — form submission is blocked unless at least one option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: MultiSelectState;\n /**\n * The selected values. Matches options strictly by type and value, meaning a string value only matches options whose value is the same string, a number value only matches options whose value is the same number. Pass null or [] to clear the selection. Please note that FormData always serializes values as strings, so when participating in a native (uncontrolled) form a number[] value is restored as string[] via formStateRestoreCallback and will no longer strictly match number-typed options. This limitation only applies to native form state restoration; in controlled forms (where the consumer manages value directly via the change event), number[] types are preserved end-to-end.\n * @default []\n */\n value?: string[] | number[] | null;\n};\n\n@Component({\n selector: 'p-multi-select,[p-multi-select]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'disabled', 'dropdownDirection', 'form', 'hideLabel', 'label', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'toggle'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PMultiSelect),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PMultiSelect extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n dropdownDirection?: MultiSelectDropdownDirection;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n message?: string;\n name!: string;\n required?: boolean;\n state?: MultiSelectState;\n value?: string[] | number[] | null;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<MultiSelectChangeEventDetail>>();\n toggle = new EventEmitter<CustomEvent<MultiSelectToggleEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PMultiSelectOptionProps = {\n /**\n * Disables the option, preventing it from being selected.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the value submitted with the form data when this option is selected in the parent multi-select.\n */\n value: string | number;\n};\n\n@Component({\n selector: 'p-multi-select-option,[p-multi-select-option]',\n template: '<ng-content />',\n inputs: ['disabled', 'value'],\n standalone: false\n})\nexport class PMultiSelectOption extends BaseComponent {\n disabled?: boolean;\n value!: string | number;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type POptgroupProps = {\n /**\n * Disables all options in the group, preventing any of them from being selected.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the visible group heading displayed above the grouped options.\n */\n label?: string;\n};\n\n@Component({\n selector: 'p-optgroup,[p-optgroup]',\n template: '<ng-content />',\n inputs: ['disabled', 'label'],\n standalone: false\n})\nexport class POptgroup extends BaseComponent {\n disabled?: boolean;\n label?: string;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { PaginationInternationalization, PaginationUpdateEventDetail } from '../types';\n\nexport type PPaginationProps = {\n /**\n * Sets the one-based index of the currently active page; update this prop to navigate programmatically.\n * @default 1\n */\n activePage: number;\n /**\n * Overrides the default ARIA label strings used for the previous, next, and page number buttons to support localisation.\n * @default { root: 'Pagination', prev: 'Previous page', next: 'Next page', page: 'Page', }\n */\n intl?: PaginationInternationalization;\n /**\n * Sets the number of items displayed per page, used together with `totalItemsCount` to compute the page count.\n * @default 1\n */\n itemsPerPage?: number;\n /**\n * Shows or hides the button that jumps directly to the last page of the pagination.\n * @default true\n */\n showLastPage?: boolean;\n /**\n * Sets the total number of items in the dataset, used to calculate the number of pages.\n * @default 1\n */\n totalItemsCount: number;\n};\n\n@Component({\n selector: 'p-pagination,[p-pagination]',\n template: '<ng-content />',\n inputs: ['activePage', 'intl', 'itemsPerPage', 'showLastPage', 'totalItemsCount'],\n outputs: ['update'],\n standalone: false\n})\nexport class PPagination extends BaseComponent {\n activePage!: number;\n intl?: PaginationInternationalization;\n itemsPerPage?: number;\n showLastPage?: boolean;\n totalItemsCount!: number;\n update = new EventEmitter<CustomEvent<PaginationUpdateEventDetail>>();\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, PinCodeLength, PinCodeChangeEventDetail, PinCodeState, PinCodeType } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PPinCodeProps = {\n /**\n * Reduces the pin code field height and spacing for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the pin code.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with all pin code fields and blocks events while the component is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the pin code with a form element by its ID when it is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label and description while keeping them accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the pin code fields to identify their purpose.\n * @default ''\n */\n label?: string;\n /**\n * Sets the number of individual input fields rendered, determining how many characters the pin code consists of.\n * @default 4\n */\n length?: PinCodeLength;\n /**\n * Disables the pin code fields and shows a loading spinner to indicate an ongoing background operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the validation feedback message displayed below the pin code when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name of the control submitted with the form data to identify the pin code value on the server.\n */\n name?: string;\n /**\n * Marks the pin code as required so the form cannot be submitted until all fields are filled.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the pin code, which controls its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: PinCodeState;\n /**\n * Controls whether the individual input fields mask their content as password dots (`password`) or show digits (`number`).\n * @default 'number'\n */\n type?: PinCodeType;\n /**\n * Sets the current concatenated value of all pin code fields and allows setting the initial value.\n * @default ''\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-pin-code,[p-pin-code]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'length', 'loading', 'message', 'name', 'required', 'state', 'type', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PPinCode),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PPinCode extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n length?: PinCodeLength;\n loading?: boolean;\n message?: string;\n name?: string;\n required?: boolean;\n state?: PinCodeState;\n type?: PinCodeType;\n value?: string;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<PinCodeChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, PopoverAriaAttribute, PopoverDirection } from '../types';\n\nexport type PPopoverProps = {\n /**\n * Sets ARIA attributes on the popover panel to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<PopoverAriaAttribute>;\n /**\n * Sets the text content displayed inside the popover panel when it is open, providing contextual help or information.\n */\n description?: string;\n /**\n * Sets the preferred direction for the popover to open relative to its trigger button. Falls back to the direction with the most available viewport space.\n * @default 'bottom'\n */\n direction?: PopoverDirection;\n};\n\n@Component({\n selector: 'p-popover,[p-popover]',\n template: '<ng-content />',\n inputs: ['aria', 'description', 'direction'],\n standalone: false\n})\nexport class PPopover extends BaseComponent {\n aria?: SelectedAriaAttributes<PopoverAriaAttribute>;\n description?: string;\n direction?: PopoverDirection;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, RadioGroupDirection, RadioGroupChangeEventDetail, RadioGroupState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PRadioGroupProps = {\n /**\n * Reduces the spacing between radio options for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the radio group.\n * @default ''\n */\n description?: string;\n /**\n * Sets the layout direction of the radio options. Use `column` to stack them vertically or `row` to arrange them horizontally. Supports responsive breakpoint values.\n * @default 'column'\n */\n direction?: BreakpointCustomizable<RadioGroupDirection>;\n /**\n * Disables all radio options in the group, preventing selection and excluding the value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the radio group with a form element by its ID when the group is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the radio group to identify the group's purpose.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables all radio options and shows a spinner to indicate a background loading operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the validation feedback message displayed below the radio group when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the shared name attribute for all radio buttons in the group, grouping them for mutually exclusive selection.\n */\n name: string;\n /**\n * Marks the radio group as required so the form cannot be submitted until one option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the radio group, controlling its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: RadioGroupState;\n /**\n * Sets the currently selected value that pre-selects the matching radio option and reflects user changes.\n * @default ''\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-radio-group,[p-radio-group]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'direction', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PRadioGroup),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PRadioGroup extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n direction?: BreakpointCustomizable<RadioGroupDirection>;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n message?: string;\n name!: string;\n required?: boolean;\n state?: RadioGroupState;\n value?: string;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<RadioGroupChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PRadioGroupOptionProps = {\n /**\n * Prevents this option from being selected and excludes its value from form submissions while it is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the visible label text displayed next to the radio button that the user reads to identify the option.\n */\n label?: string;\n /**\n * @experimental Disables this option and shows a spinner to indicate that this particular option is in a loading state.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the value submitted with the form data when this radio option is selected within its parent group.\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-radio-group-option,[p-radio-group-option]',\n template: '<ng-content />',\n inputs: ['disabled', 'label', 'loading', 'value'],\n standalone: false\n})\nexport class PRadioGroupOption extends BaseComponent {\n disabled?: boolean;\n label?: string;\n loading?: boolean;\n value?: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { ScrollerAlignScrollIndicator, SelectedAriaAttributes, ScrollerAriaAttribute, ScrollerScrollToPosition } from '../types';\n\nexport type PScrollerProps = {\n /**\n * @deprecated since v4.0.0, will be removed with next major release, has no effect anymore.\n * @default 'center'\n */\n alignScrollIndicator?: ScrollerAlignScrollIndicator;\n /**\n * Sets the ARIA `role` attribute on the scroller's scroll container, useful for list-based navigation patterns.\n */\n aria?: SelectedAriaAttributes<ScrollerAriaAttribute>;\n /**\n * Reduces the scroller's padding and the gap between slotted items for use in dense layouts.\n */\n compact?: boolean;\n /**\n * @deprecated since v4.0.0, use native `scrollIntoView()` on the slotted element itself.\n */\n scrollToPosition?: ScrollerScrollToPosition;\n /**\n * Shows the browser's native scrollbar inside the scroller, in addition to the scroll indicator arrows.\n * @default false\n */\n scrollbar?: boolean;\n /**\n * @experimental Makes the indicator sticky at the top or bottom while scrolling depending on the scroll direction.\n * @default false\n */\n sticky?: boolean;\n};\n\n@Component({\n selector: 'p-scroller,[p-scroller]',\n template: '<ng-content />',\n inputs: ['alignScrollIndicator', 'aria', 'compact', 'scrollToPosition', 'scrollbar', 'sticky'],\n standalone: false\n})\nexport class PScroller extends BaseComponent {\n /** @deprecated */\n alignScrollIndicator?: ScrollerAlignScrollIndicator;\n aria?: SelectedAriaAttributes<ScrollerAriaAttribute>;\n compact?: boolean;\n /** @deprecated */\n scrollToPosition?: ScrollerScrollToPosition;\n scrollbar?: boolean;\n sticky?: boolean;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, SegmentedControlColumns, SegmentedControlChangeEventDetail, SegmentedControlState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PSegmentedControlProps = {\n /**\n * Sets the number of equal-width columns for the item layout. Use `auto` to distribute items based on their content width. Supports responsive breakpoint values.\n * @default 'auto'\n */\n columns?: BreakpointCustomizable<SegmentedControlColumns>;\n /**\n * Reduces the item height and spacing for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional context about the segmented control.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with all items in the segmented control and excludes the value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the segmented control with a form element by its ID when it is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the segmented control to describe the group of options.\n * @default ''\n */\n label?: string;\n /**\n * Sets the validation feedback message displayed below the segmented control when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name of the control submitted with the form data to identify the selected value on the server.\n */\n name?: string;\n /**\n * Prevents items from wrapping to new rows and renders them in a single horizontally scrollable row instead.\n * @default false\n */\n noWrap?: boolean;\n /**\n * Marks the segmented control as required so the form cannot be submitted until one option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the segmented control, controlling its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: SegmentedControlState;\n /**\n * Sets the currently selected item's value and pre-selects the matching option when the component renders.\n */\n value?: string | number;\n};\n\n@Component({\n selector: 'p-segmented-control,[p-segmented-control]',\n template: '<ng-content />',\n inputs: ['columns', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'message', 'name', 'noWrap', 'required', 'state', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PSegmentedControl),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PSegmentedControl extends BaseComponent implements ControlValueAccessor {\n columns?: BreakpointCustomizable<SegmentedControlColumns>;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n message?: string;\n name?: string;\n noWrap?: boolean;\n required?: boolean;\n state?: SegmentedControlState;\n value?: string | number;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<SegmentedControlChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, SegmentedControlItemAriaAttribute, SegmentedControlItemIcon } from '../types';\n\nexport type PSegmentedControlItemProps = {\n /**\n * Sets ARIA attributes on the item's button element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<SegmentedControlItemAriaAttribute>;\n /**\n * Prevents this item from being selected and visually dims it; the parent's value will not change to this item's value.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets an icon rendered inside the item button using an icon name from the PDS icon library.\n */\n icon?: SegmentedControlItemIcon;\n /**\n * Sets a URL to a custom SVG icon for the item button, overriding the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets a visible text label rendered inside the item button, used when no slotted content is provided.\n */\n label?: string;\n /**\n * Sets the value emitted by the parent `p-segmented-control` when this item is selected. This property is **required**.\n */\n value: string | number;\n};\n\n@Component({\n selector: 'p-segmented-control-item,[p-segmented-control-item]',\n template: '<ng-content />',\n inputs: ['aria', 'disabled', 'icon', 'iconSource', 'label', 'value'],\n standalone: false\n})\nexport class PSegmentedControlItem extends BaseComponent {\n aria?: SelectedAriaAttributes<SegmentedControlItemAriaAttribute>;\n disabled?: boolean;\n icon?: SegmentedControlItemIcon;\n iconSource?: string;\n label?: string;\n value!: string | number;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectDropdownDirection, BreakpointCustomizable, SelectChangeEventDetail, SelectToggleEventDetail, SelectState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PSelectProps = {\n /**\n * Reduces the control height and padding for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the select.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with the select and excludes its value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Controls whether the dropdown list opens upward (`up`) or downward (`down`), or determines the direction automatically (`auto`).\n * @default 'auto'\n */\n dropdownDirection?: SelectDropdownDirection;\n /**\n * Shows a text input inside the dropdown that filters the visible options as the user types. Ignored when the `filter` slot is used.\n * @default false\n */\n filter?: boolean;\n /**\n * Associates the select with a form element by its ID when it is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the select control to identify its purpose.\n * @default ''\n */\n label?: string;\n /**\n * Sets the validation feedback message displayed below the select when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name of the control submitted with the form data, identifying the selected value on the server.\n */\n name: string;\n /**\n * Marks the select as required so the form cannot be submitted unless a non-empty option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the select, which controls its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: SelectState;\n /**\n * The selected value. Matches an option strictly by type and value, meaning null matches only an option with value null, undefined matches only an option with value undefined (no preselection by default), and string or number only match an option whose value has the same type and equal value. Please note that FormData always serializes values as strings, so when participating in a native (uncontrolled) form a number value is restored as string via formStateRestoreCallback and will no longer strictly match a number-typed option. This limitation only applies to native form state restoration; in controlled forms (where the consumer manages value directly via the change event), the number type is preserved end-to-end.\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-select,[p-select]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'disabled', 'dropdownDirection', 'filter', 'form', 'hideLabel', 'label', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'toggle'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PSelect),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PSelect extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n dropdownDirection?: SelectDropdownDirection;\n filter?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n message?: string;\n name!: string;\n required?: boolean;\n state?: SelectState;\n value?: string | number | null;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<SelectChangeEventDetail>>();\n toggle = new EventEmitter<CustomEvent<SelectToggleEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PSelectOptionProps = {\n /**\n * Prevents the option from being selected and visually dims it to indicate it is unavailable.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the value submitted with the form data when this option is selected in the parent select control.\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-select-option,[p-select-option]',\n template: '<ng-content />',\n inputs: ['disabled', 'value'],\n standalone: false\n})\nexport class PSelectOption extends BaseComponent {\n disabled?: boolean;\n value?: string | number | null;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, SheetAriaAttribute, SheetBackground, SheetMotionHiddenEndEventDetail, SheetMotionVisibleEndEventDetail } from '../types';\n\nexport type PSheetProps = {\n /**\n * Sets ARIA attributes on the sheet dialog element for improved accessibility when the default `aria-label` is insufficient.\n */\n aria?: SelectedAriaAttributes<SheetAriaAttribute>;\n /**\n * Sets the background color of the sheet panel (`canvas` or `surface`).\n * @default 'canvas'\n */\n background?: SheetBackground;\n /**\n * When enabled, clicking the backdrop will not close the sheet.\n * @default false\n */\n disableBackdropClick?: boolean;\n /**\n * Shows a dismiss button in the sheet header so users can manually close it.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Controls whether the sheet panel slides in from the bottom and is visible to the user.\n * @default false\n */\n open: boolean;\n};\n\n@Component({\n selector: 'p-sheet,[p-sheet]',\n template: '<ng-content />',\n inputs: ['aria', 'background', 'disableBackdropClick', 'dismissButton', 'open'],\n outputs: ['dismiss', 'motionHiddenEnd', 'motionVisibleEnd'],\n standalone: false\n})\nexport class PSheet extends BaseComponent {\n aria?: SelectedAriaAttributes<SheetAriaAttribute>;\n background?: SheetBackground;\n disableBackdropClick?: boolean;\n dismissButton?: boolean;\n open!: boolean;\n dismiss = new EventEmitter<CustomEvent<void>>();\n motionHiddenEnd = new EventEmitter<CustomEvent<SheetMotionHiddenEndEventDetail>>();\n motionVisibleEnd = new EventEmitter<CustomEvent<SheetMotionVisibleEndEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, SpinnerAriaAttribute, SpinnerColor, BreakpointCustomizable, SpinnerSize } from '../types';\n\nexport type PSpinnerProps = {\n /**\n * Sets ARIA attributes on the spinner's live region element; use `aria-label` to provide a descriptive loading message for screen readers.\n */\n aria?: SelectedAriaAttributes<SpinnerAriaAttribute>;\n /**\n * Sets the color of the spinning indicator using PDS semantic color tokens (e.g. `primary`, `contrast-high`, `inherit`).\n * @default 'primary'\n */\n color?: SpinnerColor;\n /**\n * Sets the size of the spinner using the PDS typographic scale. Use `inherit` to derive the size from the parent element's font-size. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<SpinnerSize>;\n};\n\n@Component({\n selector: 'p-spinner,[p-spinner]',\n template: '<ng-content />',\n inputs: ['aria', 'color', 'size'],\n standalone: false\n})\nexport class PSpinner extends BaseComponent {\n aria?: SelectedAriaAttributes<SpinnerAriaAttribute>;\n color?: SpinnerColor;\n size?: BreakpointCustomizable<SpinnerSize>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { StepperHorizontalUpdateEventDetail, BreakpointCustomizable, StepperHorizontalSize } from '../types';\n\nexport type PStepperHorizontalProps = { /**\n * The font size of the step labels.\n * @default 'small'\n */\n size?: BreakpointCustomizable<StepperHorizontalSize>;\n};\n\n@Component({\n selector: 'p-stepper-horizontal,[p-stepper-horizontal]',\n template: '<ng-content />',\n inputs: ['size'],\n outputs: ['update'],\n standalone: false\n})\nexport class PStepperHorizontal extends BaseComponent {\n size?: BreakpointCustomizable<StepperHorizontalSize>;\n update = new EventEmitter<CustomEvent<StepperHorizontalUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { StepperHorizontalItemState } from '../types';\n\nexport type PStepperHorizontalItemProps = {\n /**\n * Disables the stepper-horizontal-item. No events will be triggered while disabled state is active.\n * @default false\n */\n disabled?: boolean;\n /**\n * The current progression state of the step. Use `current` for the active step, `complete` for finished steps, `warning` for steps with issues. Leave unset for future steps.\n */\n state?: StepperHorizontalItemState;\n};\n\n@Component({\n selector: 'p-stepper-horizontal-item,[p-stepper-horizontal-item]',\n template: '<ng-content />',\n inputs: ['disabled', 'state'],\n standalone: false\n})\nexport class PStepperHorizontalItem extends BaseComponent {\n disabled?: boolean;\n state?: StepperHorizontalItemState;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, SwitchAlignLabel, SwitchUpdateEventDetail } from '../types';\n\nexport type PSwitchProps = {\n /**\n * Sets the position of the slotted label relative to the switch toggle, either before (`start`) or after (`end`) it. Supports responsive breakpoint values.\n * @default 'end'\n */\n alignLabel?: BreakpointCustomizable<SwitchAlignLabel>;\n /**\n * Reflects the switch's current on/off state and allows setting the initial checked value when the component first renders.\n * @default false\n */\n checked?: boolean;\n /**\n * Reduces the switch size and spacing for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Prevents user interaction with the switch and blocks all click and keyboard events while it is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Disables the switch and shows a loading spinner to indicate an ongoing asynchronous toggle operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Expands the space between the switch toggle and its label to fill the full available width of the container. Supports responsive breakpoint values.\n * @default false\n */\n stretch?: BreakpointCustomizable<boolean>;\n};\n\n@Component({\n selector: 'p-switch,[p-switch]',\n template: '<ng-content />',\n inputs: ['alignLabel', 'checked', 'compact', 'disabled', 'hideLabel', 'loading', 'stretch'],\n outputs: ['update'],\n standalone: false\n})\nexport class PSwitch extends BaseComponent {\n alignLabel?: BreakpointCustomizable<SwitchAlignLabel>;\n checked?: boolean;\n compact?: boolean;\n disabled?: boolean;\n hideLabel?: BreakpointCustomizable<boolean>;\n loading?: boolean;\n stretch?: BreakpointCustomizable<boolean>;\n update = new EventEmitter<CustomEvent<SwitchUpdateEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TableLayout, TableUpdateEventDetail } from '../types';\n\nexport type PTableProps = {\n /**\n * 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.\n */\n caption?: string;\n /**\n * Reduces the cell padding and spacing for a more condensed table layout in data-dense UIs.\n * @default false\n */\n compact?: boolean;\n /**\n * Controls the CSS `table-layout` algorithm: `auto` sizes columns to fit their content, `fixed` distributes width equally.\n * @default 'auto'\n */\n layout?: TableLayout;\n /**\n * @experimental Makes the scroll position indicator sticky at the viewport edge while scrolling, indicating overflow in the table.\n * @default false\n */\n sticky?: boolean;\n};\n\n@Component({\n selector: 'p-table,[p-table]',\n template: '<ng-content />',\n inputs: ['caption', 'compact', 'layout', 'sticky'],\n outputs: ['update'],\n standalone: false\n})\nexport class PTable extends BaseComponent {\n caption?: string;\n compact?: boolean;\n layout?: TableLayout;\n sticky?: boolean;\n update = new EventEmitter<CustomEvent<TableUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableBodyProps = {\n};\n\n@Component({\n selector: 'p-table-body,[p-table-body]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableBody extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableCellProps = {\n /**\n * Allows slotted text to wrap onto multiple lines instead of being forced onto a single line.\n * @default false\n */\n multiline?: boolean;\n};\n\n@Component({\n selector: 'p-table-cell,[p-table-cell]',\n template: '<ng-content />',\n inputs: ['multiline'],\n standalone: false\n})\nexport class PTableCell extends BaseComponent {\n multiline?: boolean;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableHeadProps = {\n};\n\n@Component({\n selector: 'p-table-head,[p-table-head]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableHead extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TableHeadCellSort } from '../types';\n\nexport type PTableHeadCellProps = {\n /**\n * Hides the visible column label while keeping it accessible to screen readers. Only applies when `sort` is not set.\n * @default false\n */\n hideLabel?: boolean;\n /**\n * Allows the column header text to wrap onto multiple lines instead of being truncated to a single line.\n * @default false\n */\n multiline?: boolean;\n /**\n * Configures sorting behavior for this column by providing an `id`, `active` state, and current `direction` (`asc` or `desc`).\n */\n sort?: TableHeadCellSort;\n};\n\n@Component({\n selector: 'p-table-head-cell,[p-table-head-cell]',\n template: '<ng-content />',\n inputs: ['hideLabel', 'multiline', 'sort'],\n standalone: false\n})\nexport class PTableHeadCell extends BaseComponent {\n hideLabel?: boolean;\n multiline?: boolean;\n sort?: TableHeadCellSort;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableHeadRowProps = {\n};\n\n@Component({\n selector: 'p-table-head-row,[p-table-head-row]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableHeadRow extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableRowProps = {\n};\n\n@Component({\n selector: 'p-table-row,[p-table-row]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableRow extends BaseComponent {\n \n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TabsBackground, TabsUpdateEventDetail, BreakpointCustomizable, TabsSize, TabsWeight } from '../types';\n\nexport type PTabsProps = {\n /**\n * Sets the zero-based index of the currently active tab; update this prop to switch tabs programmatically.\n * @default 0\n */\n activeTabIndex?: number;\n /**\n * Sets the background color of the tabs bar. Use `frosted` only when placed on top of images, videos, or gradients.\n * @default 'none'\n */\n background?: TabsBackground;\n /**\n * Reduces the tab height and padding for use in dense layouts where vertical space is limited.\n */\n compact?: boolean;\n /**\n * Sets the font size of the tab labels using the PDS typographic scale. Supports responsive breakpoint values.\n * @default 'small'\n */\n size?: BreakpointCustomizable<TabsSize>;\n /**\n * @deprecated Will be removed in the next major release. Has no effect anymore.\n * @default 'regular'\n */\n weight?: TabsWeight;\n};\n\n@Component({\n selector: 'p-tabs,[p-tabs]',\n template: '<ng-content />',\n inputs: ['activeTabIndex', 'background', 'compact', 'size', 'weight'],\n outputs: ['update'],\n standalone: false\n})\nexport class PTabs extends BaseComponent {\n activeTabIndex?: number;\n background?: TabsBackground;\n compact?: boolean;\n size?: BreakpointCustomizable<TabsSize>;\n /** @deprecated */\n weight?: TabsWeight;\n update = new EventEmitter<CustomEvent<TabsUpdateEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TabsBarBackground, TabsBarUpdateEventDetail, BreakpointCustomizable, TabsBarSize, TabsBarWeight } from '../types';\n\nexport type PTabsBarProps = {\n /**\n * Sets the zero-based index of the currently active tab. Pass `undefined` to render all tabs in an unselected state.\n */\n activeTabIndex?: number | undefined;\n /**\n * Sets the background color of the tabs bar. Use `frosted` only when placed on top of images, videos, or gradients.\n * @default 'none'\n */\n background?: TabsBarBackground;\n /**\n * Reduces the tab height and padding for use in dense layouts where vertical space is limited.\n */\n compact?: boolean;\n /**\n * Sets the font size of the tab labels using the PDS typographic scale. Supports responsive breakpoint values.\n * @default 'small'\n */\n size?: BreakpointCustomizable<TabsBarSize>;\n /**\n * @deprecated Will be removed in the next major release. Has no effect anymore.\n * @default 'regular'\n */\n weight?: TabsBarWeight;\n};\n\n@Component({\n selector: 'p-tabs-bar,[p-tabs-bar]',\n template: '<ng-content />',\n inputs: ['activeTabIndex', 'background', 'compact', 'size', 'weight'],\n outputs: ['update'],\n standalone: false\n})\nexport class PTabsBar extends BaseComponent {\n activeTabIndex?: number | undefined;\n background?: TabsBarBackground;\n compact?: boolean;\n size?: BreakpointCustomizable<TabsBarSize>;\n /** @deprecated */\n weight?: TabsBarWeight;\n update = new EventEmitter<CustomEvent<TabsBarUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTabsItemProps = {\n /**\n * Sets the label text displayed in the tab navigation button that the user clicks to activate this tab's content.\n */\n label: string;\n};\n\n@Component({\n selector: 'p-tabs-item,[p-tabs-item]',\n template: '<ng-content />',\n inputs: ['label'],\n standalone: false\n})\nexport class PTabsItem extends BaseComponent {\n label!: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TagIcon, TagVariant } from '../types';\n\nexport type PTagProps = {\n /**\n * Reduces the tag's padding and height for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets the icon displayed inside the tag alongside the label. Use `none` to render the tag without an icon.\n * @default 'none'\n */\n icon?: TagIcon;\n /**\n * Sets a URL to a custom SVG icon, overriding the built-in icon set when a brand-specific icon is needed.\n */\n iconSource?: string;\n /**\n * Sets the visual style of the tag, which controls its background and text colors (e.g. `primary`, `secondary`, `notification-info`).\n * @default 'secondary'\n */\n variant?: TagVariant;\n};\n\n@Component({\n selector: 'p-tag,[p-tag]',\n template: '<ng-content />',\n inputs: ['compact', 'icon', 'iconSource', 'variant'],\n standalone: false\n})\nexport class PTag extends BaseComponent {\n compact?: boolean;\n icon?: TagIcon;\n iconSource?: string;\n variant?: TagVariant;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, TagDismissibleAriaAttribute } from '../types';\n\nexport type PTagDismissibleProps = {\n /**\n * Sets ARIA attributes on the dismiss button element, for example use `aria-label` to provide a descriptive close action for screen readers.\n */\n aria?: SelectedAriaAttributes<TagDismissibleAriaAttribute>;\n /**\n * Reduces the tag's padding and height for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets the visible label text displayed inside the tag alongside the dismiss button.\n */\n label?: string;\n};\n\n@Component({\n selector: 'p-tag-dismissible,[p-tag-dismissible]',\n template: '<ng-content />',\n inputs: ['aria', 'compact', 'label'],\n standalone: false\n})\nexport class PTagDismissible extends BaseComponent {\n aria?: SelectedAriaAttributes<TagDismissibleAriaAttribute>;\n compact?: boolean;\n label?: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TextAlign, TextColor, TextHyphens, BreakpointCustomizable, TextSize, TextTag, TextWeight } from '../types';\n\nexport type PTextProps = {\n /**\n * Text alignment of the text. Use 'start' for left-aligned text (in LTR), 'center' for centered, 'end' for right-aligned (in LTR), or 'inherit' to adopt the parent's alignment.\n * @default 'start'\n */\n align?: TextAlign;\n /**\n * Text color of the text. Use 'primary' for default, 'contrast-higher' / 'contrast-high' / 'contrast-medium' for alternative emphasis levels, 'success' / 'warning' / 'error' / 'info' for status messages, or 'inherit' to adopt the parent's color.\n * @default 'primary'\n */\n color?: TextColor;\n /**\n * Adds an ellipsis to a single line of text if it overflows the container width. When enabled, the text is truncated to a single line with `text-overflow: ellipsis`. Cannot be combined with multi-line content.\n * @default false\n */\n ellipsis?: boolean;\n /**\n * Controls the hyphenation behavior of the text. Use 'auto' to let the browser automatically hyphenate words at appropriate points, 'manual' to only hyphenate at manually inserted hyphenation points (e.g. `­`), 'none' to disable hyphenation entirely, or 'inherit' to adopt the parent's hyphenation setting.\n * @default 'inherit'\n */\n hyphens?: TextHyphens;\n /**\n * Size of the text. Also defines the size for specific breakpoints, like {base: \"sm\", l: \"md\"}. You always need to provide a base value when doing this. Use 'inherit' to adopt the parent's font size.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<TextSize>;\n /**\n * Sets the HTML tag of the rendered element to ensure correct semantic meaning (e.g. 'p' for paragraphs, 'blockquote' for quotes, 'time' for dates).\n * @default 'p'\n */\n tag?: TextTag;\n /**\n * The font weight of the text. Use 'normal' for regular body text, 'semibold' for slightly emphasized text, or 'bold' for strong emphasis.\n * @default 'normal'\n */\n weight?: TextWeight;\n};\n\n@Component({\n selector: 'p-text,[p-text]',\n template: '<ng-content />',\n inputs: ['align', 'color', 'ellipsis', 'hyphens', 'size', 'tag', 'weight'],\n standalone: false\n})\nexport class PText extends BaseComponent {\n align?: TextAlign;\n color?: TextColor;\n ellipsis?: boolean;\n hyphens?: TextHyphens;\n size?: BreakpointCustomizable<TextSize>;\n tag?: TextTag;\n weight?: TextWeight;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TextListType } from '../types';\n\nexport type PTextListProps = {\n /**\n * Sets the list type to either `unordered` (bulleted) or `ordered` (numbered), controlling the rendered HTML element (`ul` vs `ol`).\n * @default 'unordered'\n */\n type?: TextListType;\n};\n\n@Component({\n selector: 'p-text-list,[p-text-list]',\n template: '<ng-content />',\n inputs: ['type'],\n standalone: false\n})\nexport class PTextList extends BaseComponent {\n type?: TextListType;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTextListItemProps = {\n};\n\n@Component({\n selector: 'p-text-list-item,[p-text-list-item]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTextListItem extends BaseComponent {\n \n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, TextareaBlurEventDetail, TextareaChangeEventDetail, TextareaInputEventDetail, TextareaResize, TextareaState, TextareaWrap } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PTextareaProps = {\n /**\n * Provides the browser with a hint to enable text autofill suggestions for the textarea (e.g. `autocomplete='on'`).\n */\n autoComplete?: string;\n /**\n * Reduces the textarea's initial height and padding for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Shows a live character counter below the textarea indicating how many characters the user has typed relative to `maxLength`.\n * @default false\n */\n counter?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the textarea.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with the textarea and excludes its value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the textarea with a form element by its ID when the textarea is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the textarea to identify its purpose.\n * @default ''\n */\n label?: string;\n /**\n * Sets the maximum number of characters the user is allowed to enter into the textarea.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the textarea when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the textarea's value to pass constraint validation.\n */\n minLength?: number;\n /**\n * Sets the name of the textarea submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text displayed inside the textarea when it is empty to hint at the expected content format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the textarea read-only so users cannot modify the value, while still including it in form submissions.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the textarea as required so the form cannot be submitted while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Controls whether and in which direction the user can resize the textarea (`horizontal`, `vertical`, `both`, or `none`).\n * @default 'vertical'\n */\n resize?: TextareaResize;\n /**\n * Sets the initial visible height of the textarea in lines of text. Has no effect when the `--p-textarea-field-sizing` CSS variable is set to `content`.\n * @default 7\n */\n rows?: number;\n /**\n * Controls whether the browser's built-in spell-checking and grammar checking is enabled for the textarea content.\n */\n spellCheck?: boolean;\n /**\n * Sets the validation state of the textarea, which controls its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: TextareaState;\n /**\n * Sets the current multi-line text value of the textarea and reflects any changes made by the user.\n * @default ''\n */\n value?: string | null;\n /**\n * Controls how the submitted text wraps in the form data: `soft` wraps only visually, `hard` inserts line breaks at the textarea width.\n * @default 'soft'\n */\n wrap?: TextareaWrap;\n};\n\n@Component({\n selector: 'p-textarea,[p-textarea]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'counter', 'description', 'disabled', 'form', 'hideLabel', 'label', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'resize', 'rows', 'spellCheck', 'state', 'value', 'wrap'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PTextarea),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PTextarea extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n counter?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n resize?: TextareaResize;\n rows?: number;\n spellCheck?: boolean;\n state?: TextareaState;\n value?: string | null;\n wrap?: TextareaWrap;\n blur = new EventEmitter<CustomEvent<TextareaBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<TextareaChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<TextareaInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PToastProps = {\n};\n\n@Component({\n selector: 'p-toast,[p-toast]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PToast extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, WordmarkAriaAttribute, WordmarkSize, WordmarkTarget } from '../types';\n\nexport type PWordmarkProps = {\n /**\n * Sets ARIA attributes on the anchor element to improve accessibility when the wordmark is used as a link.\n */\n aria?: SelectedAriaAttributes<WordmarkAriaAttribute>;\n /**\n * When set, wraps the wordmark in an anchor element that navigates to the given URL on click.\n */\n href?: string;\n /**\n * Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens (`small`, `medium`, `large`, `inherit`).\n * @default 'small'\n */\n size?: WordmarkSize;\n /**\n * Specifies where to open the linked URL when `href` is set (e.g. `_self`, `_blank`).\n * @default '_self'\n */\n target?: WordmarkTarget;\n};\n\n@Component({\n selector: 'p-wordmark,[p-wordmark]',\n template: '<ng-content />',\n inputs: ['aria', 'href', 'size', 'target'],\n standalone: false\n})\nexport class PWordmark extends BaseComponent {\n aria?: SelectedAriaAttributes<WordmarkAriaAttribute>;\n href?: string;\n size?: WordmarkSize;\n target?: WordmarkTarget;\n \n}","import { PAccordion } from './accordion.wrapper';\nimport { PAiTag } from './ai-tag.wrapper';\nimport { PBanner } from './banner.wrapper';\nimport { PButton } from './button.wrapper';\nimport { PButtonPure } from './button-pure.wrapper';\nimport { PButtonTile } from './button-tile.wrapper';\nimport { PCanvas } from './canvas.wrapper';\nimport { PCarousel } from './carousel.wrapper';\nimport { PCheckbox } from './checkbox.wrapper';\nimport { PCrest } from './crest.wrapper';\nimport { PDisplay } from './display.wrapper';\nimport { PDivider } from './divider.wrapper';\nimport { PDrilldown } from './drilldown.wrapper';\nimport { PDrilldownItem } from './drilldown-item.wrapper';\nimport { PDrilldownLink } from './drilldown-link.wrapper';\nimport { PFieldset } from './fieldset.wrapper';\nimport { PFlag } from './flag.wrapper';\nimport { PFlyout } from './flyout.wrapper';\nimport { PHeading } from './heading.wrapper';\nimport { PIcon } from './icon.wrapper';\nimport { PInlineNotification } from './inline-notification.wrapper';\nimport { PInputDate } from './input-date.wrapper';\nimport { PInputEmail } from './input-email.wrapper';\nimport { PInputMonth } from './input-month.wrapper';\nimport { PInputNumber } from './input-number.wrapper';\nimport { PInputPassword } from './input-password.wrapper';\nimport { PInputSearch } from './input-search.wrapper';\nimport { PInputTel } from './input-tel.wrapper';\nimport { PInputText } from './input-text.wrapper';\nimport { PInputTime } from './input-time.wrapper';\nimport { PInputUrl } from './input-url.wrapper';\nimport { PInputWeek } from './input-week.wrapper';\nimport { PLink } from './link.wrapper';\nimport { PLinkPure } from './link-pure.wrapper';\nimport { PLinkTile } from './link-tile.wrapper';\nimport { PLinkTileProduct } from './link-tile-product.wrapper';\nimport { PModal } from './modal.wrapper';\nimport { PModelSignature } from './model-signature.wrapper';\nimport { PMultiSelect } from './multi-select.wrapper';\nimport { PMultiSelectOption } from './multi-select-option.wrapper';\nimport { POptgroup } from './optgroup.wrapper';\nimport { PPagination } from './pagination.wrapper';\nimport { PPinCode } from './pin-code.wrapper';\nimport { PPopover } from './popover.wrapper';\nimport { PRadioGroup } from './radio-group.wrapper';\nimport { PRadioGroupOption } from './radio-group-option.wrapper';\nimport { PScroller } from './scroller.wrapper';\nimport { PSegmentedControl } from './segmented-control.wrapper';\nimport { PSegmentedControlItem } from './segmented-control-item.wrapper';\nimport { PSelect } from './select.wrapper';\nimport { PSelectOption } from './select-option.wrapper';\nimport { PSheet } from './sheet.wrapper';\nimport { PSpinner } from './spinner.wrapper';\nimport { PStepperHorizontal } from './stepper-horizontal.wrapper';\nimport { PStepperHorizontalItem } from './stepper-horizontal-item.wrapper';\nimport { PSwitch } from './switch.wrapper';\nimport { PTable } from './table.wrapper';\nimport { PTableBody } from './table-body.wrapper';\nimport { PTableCell } from './table-cell.wrapper';\nimport { PTableHead } from './table-head.wrapper';\nimport { PTableHeadCell } from './table-head-cell.wrapper';\nimport { PTableHeadRow } from './table-head-row.wrapper';\nimport { PTableRow } from './table-row.wrapper';\nimport { PTabs } from './tabs.wrapper';\nimport { PTabsBar } from './tabs-bar.wrapper';\nimport { PTabsItem } from './tabs-item.wrapper';\nimport { PTag } from './tag.wrapper';\nimport { PTagDismissible } from './tag-dismissible.wrapper';\nimport { PText } from './text.wrapper';\nimport { PTextList } from './text-list.wrapper';\nimport { PTextListItem } from './text-list-item.wrapper';\nimport { PTextarea } from './textarea.wrapper';\nimport { PToast } from './toast.wrapper';\nimport { PWordmark } from './wordmark.wrapper';\n\nexport const DECLARATIONS = [\n PAccordion,\n PAiTag,\n PBanner,\n PButton,\n PButtonPure,\n PButtonTile,\n PCanvas,\n PCarousel,\n PCheckbox,\n PCrest,\n PDisplay,\n PDivider,\n PDrilldown,\n PDrilldownItem,\n PDrilldownLink,\n PFieldset,\n PFlag,\n PFlyout,\n PHeading,\n PIcon,\n PInlineNotification,\n PInputDate,\n PInputEmail,\n PInputMonth,\n PInputNumber,\n PInputPassword,\n PInputSearch,\n PInputTel,\n PInputText,\n PInputTime,\n PInputUrl,\n PInputWeek,\n PLink,\n PLinkPure,\n PLinkTile,\n PLinkTileProduct,\n PModal,\n PModelSignature,\n PMultiSelect,\n PMultiSelectOption,\n POptgroup,\n PPagination,\n PPinCode,\n PPopover,\n PRadioGroup,\n PRadioGroupOption,\n PScroller,\n PSegmentedControl,\n PSegmentedControlItem,\n PSelect,\n PSelectOption,\n PSheet,\n PSpinner,\n PStepperHorizontal,\n PStepperHorizontalItem,\n PSwitch,\n PTable,\n PTableBody,\n PTableCell,\n PTableHead,\n PTableHeadCell,\n PTableHeadRow,\n PTableRow,\n PTabs,\n PTabsBar,\n PTabsItem,\n PTag,\n PTagDismissible,\n PText,\n PTextList,\n PTextListItem,\n PTextarea,\n PToast,\n PWordmark\n];\n\nexport * from './accordion.wrapper';\nexport * from './ai-tag.wrapper';\nexport * from './banner.wrapper';\nexport * from './button.wrapper';\nexport * from './button-pure.wrapper';\nexport * from './button-tile.wrapper';\nexport * from './canvas.wrapper';\nexport * from './carousel.wrapper';\nexport * from './checkbox.wrapper';\nexport * from './crest.wrapper';\nexport * from './display.wrapper';\nexport * from './divider.wrapper';\nexport * from './drilldown.wrapper';\nexport * from './drilldown-item.wrapper';\nexport * from './drilldown-link.wrapper';\nexport * from './fieldset.wrapper';\nexport * from './flag.wrapper';\nexport * from './flyout.wrapper';\nexport * from './heading.wrapper';\nexport * from './icon.wrapper';\nexport * from './inline-notification.wrapper';\nexport * from './input-date.wrapper';\nexport * from './input-email.wrapper';\nexport * from './input-month.wrapper';\nexport * from './input-number.wrapper';\nexport * from './input-password.wrapper';\nexport * from './input-search.wrapper';\nexport * from './input-tel.wrapper';\nexport * from './input-text.wrapper';\nexport * from './input-time.wrapper';\nexport * from './input-url.wrapper';\nexport * from './input-week.wrapper';\nexport * from './link.wrapper';\nexport * from './link-pure.wrapper';\nexport * from './link-tile.wrapper';\nexport * from './link-tile-product.wrapper';\nexport * from './modal.wrapper';\nexport * from './model-signature.wrapper';\nexport * from './multi-select.wrapper';\nexport * from './multi-select-option.wrapper';\nexport * from './optgroup.wrapper';\nexport * from './pagination.wrapper';\nexport * from './pin-code.wrapper';\nexport * from './popover.wrapper';\nexport * from './radio-group.wrapper';\nexport * from './radio-group-option.wrapper';\nexport * from './scroller.wrapper';\nexport * from './segmented-control.wrapper';\nexport * from './segmented-control-item.wrapper';\nexport * from './select.wrapper';\nexport * from './select-option.wrapper';\nexport * from './sheet.wrapper';\nexport * from './spinner.wrapper';\nexport * from './stepper-horizontal.wrapper';\nexport * from './stepper-horizontal-item.wrapper';\nexport * from './switch.wrapper';\nexport * from './table.wrapper';\nexport * from './table-body.wrapper';\nexport * from './table-cell.wrapper';\nexport * from './table-head.wrapper';\nexport * from './table-head-cell.wrapper';\nexport * from './table-head-row.wrapper';\nexport * from './table-row.wrapper';\nexport * from './tabs.wrapper';\nexport * from './tabs-bar.wrapper';\nexport * from './tabs-item.wrapper';\nexport * from './tag.wrapper';\nexport * from './tag-dismissible.wrapper';\nexport * from './text.wrapper';\nexport * from './text-list.wrapper';\nexport * from './text-list-item.wrapper';\nexport * from './textarea.wrapper';\nexport * from './toast.wrapper';\nexport * from './wordmark.wrapper';","import { type ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { load } from '@porsche-design-system/components-js';\nimport { DECLARATIONS } from './lib/components/barrel';\n\nexport type PorscheDesignSystemModuleConfig = {\n prefix?: string;\n cdn?: 'auto' | 'cn';\n};\n\nexport class DefaultConfig implements PorscheDesignSystemModuleConfig {\n prefix = '';\n}\n\n// TODO: unit tests are missing\n@NgModule({\n declarations: DECLARATIONS,\n exports: DECLARATIONS,\n})\nexport class PorscheDesignSystemModule {\n constructor(@Optional() configParam: DefaultConfig) {\n const configs = (configParam as unknown as DefaultConfig[]) || [new DefaultConfig()];\n configs.forEach(load);\n }\n\n static load(config: PorscheDesignSystemModuleConfig): ModuleWithProviders<PorscheDesignSystemModule> {\n return {\n ngModule: PorscheDesignSystemModule,\n providers: [\n {\n provide: DefaultConfig,\n multi: true, // to support multiple prefixes in same module\n useValue: config,\n },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport type { ToastMessage } from './public-api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ToastManager {\n public addMessage(message: ToastMessage): void {\n const toast = document.body.querySelector('p-toast,[p-toast]') as HTMLElement & {\n addMessage(message: ToastMessage): void;\n };\n customElements.whenDefined(toast.tagName.toLowerCase()).then(() => toast.addMessage(message));\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.PAccordion","i2.PAiTag","i3.PBanner","i4.PButton","i5.PButtonPure","i6.PButtonTile","i7.PCanvas","i8.PCarousel","i9.PCheckbox","i10.PCrest","i11.PDisplay","i12.PDivider","i13.PDrilldown","i14.PDrilldownItem","i15.PDrilldownLink","i16.PFieldset","i17.PFlag","i18.PFlyout","i19.PHeading","i20.PIcon","i21.PInlineNotification","i22.PInputDate","i23.PInputEmail","i24.PInputMonth","i25.PInputNumber","i26.PInputPassword","i27.PInputSearch","i28.PInputTel","i29.PInputText","i30.PInputTime","i31.PInputUrl","i32.PInputWeek","i33.PLink","i34.PLinkPure","i35.PLinkTile","i36.PLinkTileProduct","i37.PModal","i38.PModelSignature","i39.PMultiSelect","i40.PMultiSelectOption","i41.POptgroup","i42.PPagination","i43.PPinCode","i44.PPopover","i45.PRadioGroup","i46.PRadioGroupOption","i47.PScroller","i48.PSegmentedControl","i49.PSegmentedControlItem","i50.PSelect","i51.PSelectOption","i52.PSheet","i53.PSpinner","i54.PStepperHorizontal","i55.PStepperHorizontalItem","i56.PSwitch","i57.PTable","i58.PTableBody","i59.PTableCell","i60.PTableHead","i61.PTableHeadCell","i62.PTableHeadRow","i63.PTableRow","i64.PTabs","i65.PTabsBar","i66.PTabsItem","i67.PTag","i68.PTagDismissible","i69.PText","i70.PTextList","i71.PTextListItem","i72.PTextarea","i73.PToast","i74.PWordmark"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"porsche-design-system-components-angular.mjs","sources":["../../../projects/angular-wrapper/src/utils.ts","../../../projects/angular-wrapper/src/lib/components/accordion.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/ai-tag.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/banner.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/button.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/button-pure.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/button-tile.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/canvas.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/carousel.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/checkbox.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/crest.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/display.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/divider.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/drilldown.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/drilldown-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/drilldown-link.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/fieldset.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/flag.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/flyout.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/heading.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/icon.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/inline-notification.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-date.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-email.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-month.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-number.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-password.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-search.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-tel.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-text.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-time.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-url.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/input-week.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link-pure.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link-tile.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/link-tile-product.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/modal.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/model-signature.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/multi-select.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/multi-select-option.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/optgroup.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/pagination.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/pin-code.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/popover.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/radio-group.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/radio-group-option.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/scroller.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/segmented-control.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/segmented-control-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/select.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/select-option.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/sheet.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/spinner.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/stepper-horizontal.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/stepper-horizontal-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/switch.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-body.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-cell.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-head.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-head-cell.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-head-row.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/table-row.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tabs.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tabs-bar.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tabs-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tag.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/tag-dismissible.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/text.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/text-list.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/text-list-item.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/textarea.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/toast.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/wordmark.wrapper.ts","../../../projects/angular-wrapper/src/lib/components/barrel.ts","../../../projects/angular-wrapper/src/porsche-design-system.module.ts","../../../projects/angular-wrapper/src/toast-manager.ts","../../../projects/angular-wrapper/src/porsche-design-system-components-angular.ts"],"sourcesContent":["import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, type OnChanges } from '@angular/core';\n\n@Component({\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport abstract class BaseComponent implements OnChanges {\n protected el: HTMLElement;\n\n constructor(cdr: ChangeDetectorRef, elementRef: ElementRef) {\n cdr.detach();\n this.el = elementRef.nativeElement;\n }\n\n ngOnChanges(props: Record<string, { previousValue: any; currentValue: any; firstChange: boolean }>): void {\n for (const prop in props) {\n (this.el as Record<string, any>)[prop] = props[prop].currentValue;\n }\n }\n}\n","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { AccordionAlignMarker, AccordionBackground, AccordionHeadingTag, BreakpointCustomizable, AccordionUpdateEventDetail, AccordionSize } from '../types';\n\nexport type PAccordionProps = {\n /**\n * Positions the expand/collapse marker icon at the start or end of the summary section.\n * @default 'end'\n */\n alignMarker?: AccordionAlignMarker;\n /**\n * Sets the background color of the accordion panel. Use `frosted` only when placed on images, videos, or gradients.\n * @default 'none'\n */\n background?: AccordionBackground;\n /**\n * Reduces padding and spacing for a more compact layout, useful in space-constrained interfaces.\n */\n compact?: boolean;\n /**\n * @deprecated Will be removed in the next major release. Use the `summary` slot instead. Sets the heading text within the summary section.\n */\n heading?: string;\n /**\n * @deprecated Will be removed in the next major release. Use the `summary` slot instead. Sets the heading tag for proper semantic structure within the page.\n * @default 'h2'\n */\n headingTag?: AccordionHeadingTag;\n /**\n * Indents the slotted content to be vertically aligned with the text of the summary section.\n * @default false\n */\n indent?: BreakpointCustomizable<boolean>;\n /**\n * Controls whether the accordion is open or closed.\n */\n open?: boolean;\n /**\n * @deprecated Will be removed in the next major release. Use the `summary` slot instead. Controls the heading size in the summary section (only applies when using the `heading` prop or `heading` slot).\n * @default 'small'\n */\n size?: BreakpointCustomizable<AccordionSize>;\n /**\n * @experimental Makes the summary section sticky at the top while scrolling. Only works with `background=\"canvas\"` or `background=\"surface\"`. Not compatible with `summary-before` or `summary-after` slots.\n */\n sticky?: boolean;\n};\n\n@Component({\n selector: 'p-accordion,[p-accordion]',\n template: '<ng-content />',\n inputs: ['alignMarker', 'background', 'compact', 'heading', 'headingTag', 'indent', 'open', 'size', 'sticky'],\n outputs: ['update'],\n standalone: false\n})\nexport class PAccordion extends BaseComponent {\n alignMarker?: AccordionAlignMarker;\n background?: AccordionBackground;\n compact?: boolean;\n /** @deprecated */\n heading?: string;\n /** @deprecated */\n headingTag?: AccordionHeadingTag;\n indent?: BreakpointCustomizable<boolean>;\n open?: boolean;\n /** @deprecated */\n size?: BreakpointCustomizable<AccordionSize>;\n sticky?: boolean;\n update = new EventEmitter<CustomEvent<AccordionUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { AiTagLocale, AiTagVariant } from '../types';\n\nexport type PAiTagProps = {\n /**\n * Locale for the AI text (ISO format, e.g. \"de_DE\").\n * @default 'en_US'\n */\n locale?: AiTagLocale;\n /**\n * Variant to display: 'abbreviation' (e.g. \"AI\"), 'generated' (e.g. \"AI-generated\"), or 'modified' (e.g. \"AI-modified\").\n * @default 'generated'\n */\n variant?: AiTagVariant;\n};\n\n@Component({\n selector: 'p-ai-tag,[p-ai-tag]',\n template: '<ng-content />',\n inputs: ['locale', 'variant'],\n standalone: false\n})\nexport class PAiTag extends BaseComponent {\n locale?: AiTagLocale;\n variant?: AiTagVariant;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BannerHeadingTag, BreakpointCustomizable, BannerPosition, BannerState } from '../types';\n\nexport type PBannerProps = {\n /**\n * Sets the supporting description text shown below the heading.\n * @default ''\n */\n description?: string;\n /**\n * Shows a dismiss button so the user can manually close the banner.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Sets the heading text displayed at the top of the banner.\n * @default ''\n */\n heading?: string;\n /**\n * Sets the HTML heading tag (e.g. h2, h3) to maintain correct document structure for the heading.\n * @default 'h5'\n */\n headingTag?: BannerHeadingTag;\n /**\n * Controls whether the banner is visible. Set to `true` to show it and `false` to hide it.\n * @default false\n */\n open: boolean;\n /**\n * Sets the position of the banner on screen — `top` or `bottom`. Supports responsive breakpoint values.\n * @default { base: 'bottom', s: 'top' }\n */\n position?: BreakpointCustomizable<BannerPosition>;\n /**\n * Sets the visual state of the banner — controls the icon and color scheme (`info`, `warning`, `error`, `success`).\n * @default 'info'\n */\n state?: BannerState;\n};\n\n@Component({\n selector: 'p-banner,[p-banner]',\n template: '<ng-content />',\n inputs: ['description', 'dismissButton', 'heading', 'headingTag', 'open', 'position', 'state'],\n outputs: ['dismiss'],\n standalone: false\n})\nexport class PBanner extends BaseComponent {\n description?: string;\n dismissButton?: boolean;\n heading?: string;\n headingTag?: BannerHeadingTag;\n open!: boolean;\n position?: BreakpointCustomizable<BannerPosition>;\n state?: BannerState;\n dismiss = new EventEmitter<CustomEvent<void>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, ButtonAriaAttribute, BreakpointCustomizable, ButtonIcon, ButtonType, ButtonVariant } from '../types';\n\nexport type PButtonProps = {\n /**\n * Sets ARIA attributes on the button to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<ButtonAriaAttribute>;\n /**\n * Reduces the button's height and padding for denser layouts. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Disables the button, preventing all interaction and blocking events.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the button with a form element by its ID, so it can submit or reset that form even when placed outside of it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the icon displayed inside the button. Use `none` to show no icon.\n * @default 'none'\n */\n icon?: ButtonIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Disables the button and replaces its content with a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the name submitted with the form data when this button triggers form submission.\n */\n name?: string;\n /**\n * Sets the button's HTML type — `submit` sends the form, `reset` clears it, `button` performs no default action.\n * @default 'submit'\n */\n type?: ButtonType;\n /**\n * Sets the value submitted with the form data when this button triggers form submission, paired with `name`.\n */\n value?: string;\n /**\n * Sets the visual style variant of the button (e.g. `primary`, `secondary`, `tertiary`).\n * @default 'primary'\n */\n variant?: ButtonVariant;\n};\n\n@Component({\n selector: 'p-button,[p-button]',\n template: '<ng-content />',\n inputs: ['aria', 'compact', 'disabled', 'form', 'hideLabel', 'icon', 'iconSource', 'loading', 'name', 'type', 'value', 'variant'],\n standalone: false\n})\nexport class PButton extends BaseComponent {\n aria?: SelectedAriaAttributes<ButtonAriaAttribute>;\n compact?: BreakpointCustomizable<boolean>;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n icon?: ButtonIcon;\n iconSource?: string;\n loading?: boolean;\n name?: string;\n type?: ButtonType;\n value?: string;\n variant?: ButtonVariant;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, ButtonPureAlignLabel, SelectedAriaAttributes, ButtonPureAriaAttribute, ButtonPureColor, ButtonPureIcon, ButtonPureSize, ButtonPureType } from '../types';\n\nexport type PButtonPureProps = {\n /**\n * Visually marks the button as the currently active or selected item, useful for navigation and toggle patterns.\n * @default false\n */\n active?: boolean;\n /**\n * Sets the label position relative to the icon — `start` places it before, `end` places it after. Supports responsive breakpoint values.\n * @default 'end'\n */\n alignLabel?: BreakpointCustomizable<ButtonPureAlignLabel>;\n /**\n * Sets ARIA attributes on the button to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<ButtonPureAriaAttribute>;\n /**\n * Sets the foreground color of the button's icon and label text.\n * @default 'primary'\n */\n color?: ButtonPureColor;\n /**\n * Disables the button, preventing all interaction and blocking events.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the button with a form element by its ID, so it can submit or reset that form even when placed outside of it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the icon displayed next to the label.\n * @default 'arrow-right'\n */\n icon?: ButtonPureIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Disables the button and replaces its icon with a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the name submitted with the form data when this button triggers form submission.\n */\n name?: string;\n /**\n * Sets the font size of the button label. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<ButtonPureSize>;\n /**\n * Expands the space between icon and label to fill the full container width. Supports responsive breakpoint values.\n * @default false\n */\n stretch?: BreakpointCustomizable<boolean>;\n /**\n * Sets the button's HTML type — `submit` sends the form, `reset` clears it, `button` performs no default action.\n * @default 'submit'\n */\n type?: ButtonPureType;\n /**\n * Adds a text underline to the label to reinforce the button's link-like appearance.\n * @default false\n */\n underline?: boolean;\n /**\n * Sets the value submitted with the form data when this button triggers form submission, paired with `name`.\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-button-pure,[p-button-pure]',\n template: '<ng-content />',\n inputs: ['active', 'alignLabel', 'aria', 'color', 'disabled', 'form', 'hideLabel', 'icon', 'iconSource', 'loading', 'name', 'size', 'stretch', 'type', 'underline', 'value'],\n standalone: false\n})\nexport class PButtonPure extends BaseComponent {\n active?: boolean;\n alignLabel?: BreakpointCustomizable<ButtonPureAlignLabel>;\n aria?: SelectedAriaAttributes<ButtonPureAriaAttribute>;\n color?: ButtonPureColor;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n icon?: ButtonPureIcon;\n iconSource?: string;\n loading?: boolean;\n name?: string;\n size?: BreakpointCustomizable<ButtonPureSize>;\n stretch?: BreakpointCustomizable<boolean>;\n type?: ButtonPureType;\n underline?: boolean;\n value?: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { ButtonTileAlign, SelectedAriaAttributes, ButtonTileAriaAttribute, BreakpointCustomizable, ButtonTileAspectRatio, ButtonTileIcon, ButtonTileSize, ButtonTileType, ButtonTileWeight } from '../types';\n\nexport type PButtonTileProps = {\n /**\n * Controls the vertical placement of the description and button — `top` or `bottom`.\n * @default 'bottom'\n */\n align?: ButtonTileAlign;\n /**\n * Sets ARIA attributes on the tile's action button to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<ButtonTileAriaAttribute>;\n /**\n * Sets the width-to-height ratio of the tile media area. Supports responsive breakpoint values.\n * @default '4/3'\n */\n aspectRatio?: BreakpointCustomizable<ButtonTileAspectRatio>;\n /**\n * Renders only the icon button without the full label. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Sets the description text displayed in the tile's content area.\n */\n description: string;\n /**\n * Disables the tile, preventing button interaction.\n * @default false\n */\n disabled?: boolean;\n /**\n * Shows a gradient overlay over the media slot to improve text legibility on bright images or videos.\n * @default false\n */\n gradient?: boolean;\n /**\n * Sets the icon displayed in the tile's action button. Use `none` to show no icon.\n * @default 'none'\n */\n icon?: ButtonTileIcon;\n /**\n * Sets a path to a custom SVG icon for the action button, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets the accessible label text of the action button rendered inside the tile.\n */\n label: string;\n /**\n * Disables the tile and shows a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the font size of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'medium'\n */\n size?: BreakpointCustomizable<ButtonTileSize>;\n /**\n * Sets the button's HTML type — `submit` sends the form, `reset` clears it, `button` performs no default action.\n * @default 'submit'\n */\n type?: ButtonTileType;\n /**\n * Sets the font weight of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'semi-bold'\n */\n weight?: BreakpointCustomizable<ButtonTileWeight>;\n};\n\n@Component({\n selector: 'p-button-tile,[p-button-tile]',\n template: '<ng-content />',\n inputs: ['align', 'aria', 'aspectRatio', 'compact', 'description', 'disabled', 'gradient', 'icon', 'iconSource', 'label', 'loading', 'size', 'type', 'weight'],\n standalone: false\n})\nexport class PButtonTile extends BaseComponent {\n align?: ButtonTileAlign;\n aria?: SelectedAriaAttributes<ButtonTileAriaAttribute>;\n aspectRatio?: BreakpointCustomizable<ButtonTileAspectRatio>;\n compact?: BreakpointCustomizable<boolean>;\n description!: string;\n disabled?: boolean;\n gradient?: boolean;\n icon?: ButtonTileIcon;\n iconSource?: string;\n label!: string;\n loading?: boolean;\n size?: BreakpointCustomizable<ButtonTileSize>;\n type?: ButtonTileType;\n weight?: BreakpointCustomizable<ButtonTileWeight>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { CanvasBackground, CanvasSidebarStartUpdateEventDetail } from '../types';\n\nexport type PCanvasProps = {\n /**\n * Sets the background color of the main content area and automatically applies a matching color to the sidebar.\n * @default 'canvas'\n */\n background?: CanvasBackground;\n /**\n * Controls whether the utility sidebar on the end side (right in LTR) is open or collapsed.\n * @default false\n */\n sidebarEndOpen?: boolean;\n /**\n * Controls whether the navigation sidebar on the start side (left in LTR) is open or collapsed.\n * @default false\n */\n sidebarStartOpen?: boolean;\n};\n\n@Component({\n selector: 'p-canvas,[p-canvas]',\n template: '<ng-content />',\n inputs: ['background', 'sidebarEndOpen', 'sidebarStartOpen'],\n outputs: ['sidebarEndDismiss', 'sidebarStartUpdate'],\n standalone: false\n})\nexport class PCanvas extends BaseComponent {\n background?: CanvasBackground;\n sidebarEndOpen?: boolean;\n sidebarStartOpen?: boolean;\n sidebarEndDismiss = new EventEmitter<CustomEvent<void>>();\n sidebarStartUpdate = new EventEmitter<CustomEvent<CanvasSidebarStartUpdateEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { CarouselAlignControls, CarouselAlignHeader, SelectedAriaAttributes, CarouselAriaAttribute, CarouselHeadingSize, CarouselInternationalization, CarouselUpdateEventDetail, BreakpointCustomizable, CarouselSlidesPerPage, CarouselWidth } from '../types';\n\nexport type PCarouselProps = {\n /**\n * Sets the zero-based index of the currently visible slide. Update this to navigate programmatically.\n * @default 0\n */\n activeSlideIndex?: number;\n /**\n * Controls the alignment of custom slotted controls within the header area.\n * @default 'auto'\n */\n alignControls?: CarouselAlignControls;\n /**\n * Controls the horizontal alignment of the heading and description.\n * @default 'start'\n */\n alignHeader?: CarouselAlignHeader;\n /**\n * Sets ARIA attributes on the carousel region element for improved accessibility.\n */\n aria?: SelectedAriaAttributes<CarouselAriaAttribute>;\n /**\n * Sets the description text displayed below the heading for additional context.\n */\n description?: string;\n /**\n * When enabled, each slide is individually focusable and the carousel navigates one slide at a time instead of one page.\n * @default false\n */\n focusOnCenterSlide?: boolean;\n /**\n * Shows a gradient fade at the start and end edges to visually indicate more slides beyond the viewport.\n * @default false\n */\n gradient?: boolean;\n /**\n * Sets the heading text displayed above the carousel. Also used as the accessible label when no `aria` prop is set.\n */\n heading?: string;\n /**\n * Sets the font size of the carousel heading.\n * @default 'x-large'\n */\n headingSize?: CarouselHeadingSize;\n /**\n * Overrides the default label strings used for the previous, next, and page indicators — useful for localization.\n */\n intl?: CarouselInternationalization;\n /**\n * Shows pagination dot indicators below the carousel. Supports responsive breakpoint values.\n * @default false\n */\n pagination?: BreakpointCustomizable<boolean>;\n /**\n * Enables infinite looping — navigating past the last slide wraps back to the first, and vice versa.\n * @default false\n */\n rewind?: boolean;\n /**\n * Sets the `href` of an in-page skip link that lets keyboard users jump past the carousel slides.\n */\n skipLinkTarget?: string;\n /**\n * Sets how many slides are visible at once. Use `auto` to control each slide's width via CSS. Supports responsive breakpoint values.\n * @default 1\n */\n slidesPerPage?: BreakpointCustomizable<CarouselSlidesPerPage>;\n /**\n * Removes whitespace before the first and after the last slide when `focusOnCenterSlide` is enabled.\n * @default false\n */\n trimSpace?: boolean;\n /**\n * Sets the maximum width and outer spacing of the carousel, aligned to PDS grid widths.\n * @default 'basic'\n */\n width?: CarouselWidth;\n};\n\n@Component({\n selector: 'p-carousel,[p-carousel]',\n template: '<ng-content />',\n inputs: ['activeSlideIndex', 'alignControls', 'alignHeader', 'aria', 'description', 'focusOnCenterSlide', 'gradient', 'heading', 'headingSize', 'intl', 'pagination', 'rewind', 'skipLinkTarget', 'slidesPerPage', 'trimSpace', 'width'],\n outputs: ['update'],\n standalone: false\n})\nexport class PCarousel extends BaseComponent {\n activeSlideIndex?: number;\n alignControls?: CarouselAlignControls;\n alignHeader?: CarouselAlignHeader;\n aria?: SelectedAriaAttributes<CarouselAriaAttribute>;\n description?: string;\n focusOnCenterSlide?: boolean;\n gradient?: boolean;\n heading?: string;\n headingSize?: CarouselHeadingSize;\n intl?: CarouselInternationalization;\n pagination?: BreakpointCustomizable<boolean>;\n rewind?: boolean;\n skipLinkTarget?: string;\n slidesPerPage?: BreakpointCustomizable<CarouselSlidesPerPage>;\n trimSpace?: boolean;\n width?: CarouselWidth;\n update = new EventEmitter<CustomEvent<CarouselUpdateEventDetail>>();\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, CheckboxBlurEventDetail, CheckboxChangeEventDetail, CheckboxState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PCheckboxProps = {\n /**\n * Reflects the checkbox's current checked state and allows setting the initial checked value on load.\n * @default false\n */\n checked?: boolean;\n /**\n * Reduces the checkbox size and spacing for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Disables the checkbox, preventing all interaction. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the checkbox with a form element by its ID when not directly nested inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Puts the checkbox into an indeterminate state, indicating that a group of child items is only partially selected.\n * @default false\n */\n indeterminate?: boolean;\n /**\n * Sets the visible label text displayed next to the checkbox.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the checkbox and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the validation feedback message displayed below the checkbox when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name submitted with the form data to identify this checkbox's value on the server.\n * @default ''\n */\n name?: string;\n /**\n * Marks the checkbox as required — form submission is blocked unless the checkbox is checked.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: CheckboxState;\n /**\n * Sets the value submitted with the form data when the checkbox is checked. Unchecked checkboxes are excluded from form submissions.\n * @default 'on'\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-checkbox,[p-checkbox]',\n template: '<ng-content />',\n inputs: ['checked', 'compact', 'disabled', 'form', 'hideLabel', 'indeterminate', 'label', 'loading', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PCheckbox),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.checked)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PCheckbox extends BaseComponent implements ControlValueAccessor {\n checked?: boolean;\n compact?: boolean;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indeterminate?: boolean;\n label?: string;\n loading?: boolean;\n message?: string;\n name?: string;\n required?: boolean;\n state?: CheckboxState;\n value?: string;\n blur = new EventEmitter<CustomEvent<CheckboxBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<CheckboxChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'checked', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, CrestAriaAttribute, CrestTarget } from '../types';\n\nexport type PCrestProps = {\n /**\n * Sets ARIA attributes on the anchor element to improve accessibility when the crest is used as a link.\n */\n aria?: SelectedAriaAttributes<CrestAriaAttribute>;\n /**\n * When set, renders the crest as an anchor element navigating to this URL when clicked.\n */\n href?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: CrestTarget;\n};\n\n@Component({\n selector: 'p-crest,[p-crest]',\n template: '<ng-content />',\n inputs: ['aria', 'href', 'target'],\n standalone: false\n})\nexport class PCrest extends BaseComponent {\n aria?: SelectedAriaAttributes<CrestAriaAttribute>;\n href?: string;\n target?: CrestTarget;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { DisplayAlign, DisplayColor, BreakpointCustomizable, DisplaySize, DisplayTag } from '../types';\n\nexport type PDisplayProps = {\n /**\n * Sets the horizontal text alignment (`start`, `center`, `end`, or `inherit`).\n * @default 'start'\n */\n align?: DisplayAlign;\n /**\n * Sets the text color using PDS color tokens.\n * @default 'primary'\n */\n color?: DisplayColor;\n /**\n * Truncates the text with an ellipsis when it overflows the container on a single line.\n * @default false\n */\n ellipsis?: boolean;\n /**\n * Sets the visual text size. Supports responsive breakpoint values.\n * @default 'large'\n */\n size?: BreakpointCustomizable<DisplaySize>;\n /**\n * Sets the HTML heading tag (h1–h6) for correct document outline placement. When omitted, the tag is inferred from `size`.\n */\n tag?: DisplayTag;\n};\n\n/** @deprecated since v4.0.0, will be removed with next major release. Please use `p-heading` instead. */\n@Component({\n selector: 'p-display,[p-display]',\n template: '<ng-content />',\n inputs: ['align', 'color', 'ellipsis', 'size', 'tag'],\n standalone: false\n})\nexport class PDisplay extends BaseComponent {\n align?: DisplayAlign;\n color?: DisplayColor;\n ellipsis?: boolean;\n size?: BreakpointCustomizable<DisplaySize>;\n tag?: DisplayTag;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { DividerColor, BreakpointCustomizable, DividerDirection } from '../types';\n\nexport type PDividerProps = {\n /**\n * Sets the color of the divider line using PDS contrast tokens.\n * @default 'contrast-lower'\n */\n color?: DividerColor;\n /**\n * Sets the orientation of the divider to `horizontal` or `vertical`. Supports responsive breakpoint values.\n * @default 'horizontal'\n */\n direction?: BreakpointCustomizable<DividerDirection>;\n};\n\n@Component({\n selector: 'p-divider,[p-divider]',\n template: '<ng-content />',\n inputs: ['color', 'direction'],\n standalone: false\n})\nexport class PDivider extends BaseComponent {\n color?: DividerColor;\n direction?: BreakpointCustomizable<DividerDirection>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, DrilldownAriaAttribute, DrilldownUpdateEventDetail } from '../types';\n\nexport type PDrilldownProps = {\n /**\n * Sets which `p-drilldown-item` (by `identifier`) is currently expanded to show its sub-navigation level.\n */\n activeIdentifier?: string | undefined;\n /**\n * Sets ARIA attributes on the drilldown dialog element for improved screen reader accessibility.\n */\n aria?: SelectedAriaAttributes<DrilldownAriaAttribute>;\n /**\n * Controls whether the drilldown navigation panel is visible.\n * @default false\n */\n open?: boolean;\n};\n\n@Component({\n selector: 'p-drilldown,[p-drilldown]',\n template: '<ng-content />',\n inputs: ['activeIdentifier', 'aria', 'open'],\n outputs: ['dismiss', 'update'],\n standalone: false\n})\nexport class PDrilldown extends BaseComponent {\n activeIdentifier?: string | undefined;\n aria?: SelectedAriaAttributes<DrilldownAriaAttribute>;\n open?: boolean;\n dismiss = new EventEmitter<CustomEvent<void>>();\n update = new EventEmitter<CustomEvent<DrilldownUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PDrilldownItemProps = {\n /**\n * Private property set by the component itself.\n * @default false\n */\n cascade?: boolean;\n /**\n * Sets the unique identifier matched against the drilldown's `activeIdentifier` to determine if this item is shown.\n */\n identifier: string;\n /**\n * Sets the text used for the back button, sticky header, and cascade button that navigates into this navigation level.\n */\n label?: string;\n /**\n * Private property set by the component itself.\n * @default false\n */\n primary?: boolean;\n /**\n * Private property set by the component itself.\n * @default false\n */\n secondary?: boolean;\n};\n\n@Component({\n selector: 'p-drilldown-item,[p-drilldown-item]',\n template: '<ng-content />',\n inputs: ['cascade', 'identifier', 'label', 'primary', 'secondary'],\n standalone: false\n})\nexport class PDrilldownItem extends BaseComponent {\n cascade?: boolean;\n identifier!: string;\n label?: string;\n primary?: boolean;\n secondary?: boolean;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, DrilldownLinkAriaAttribute, DrilldownLinkTarget } from '../types';\n\nexport type PDrilldownLinkProps = {\n /**\n * Visually marks the link as the currently active navigation item, e.g. the current page.\n * @default false\n */\n active?: boolean;\n /**\n * Sets ARIA attributes on the link for improved accessibility. Only applies when `href` is set.\n */\n aria?: SelectedAriaAttributes<DrilldownLinkAriaAttribute>;\n /**\n * Sets the native `download` attribute to trigger a file download. Only applies when `href` is set.\n */\n download?: string;\n /**\n * When set, the component renders as an anchor navigating to this URL. Otherwise, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Sets the `rel` attribute on the link element (e.g. `noopener`). Only applies when `href` is set.\n */\n rel?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: DrilldownLinkTarget;\n};\n\n@Component({\n selector: 'p-drilldown-link,[p-drilldown-link]',\n template: '<ng-content />',\n inputs: ['active', 'aria', 'download', 'href', 'rel', 'target'],\n standalone: false\n})\nexport class PDrilldownLink extends BaseComponent {\n active?: boolean;\n aria?: SelectedAriaAttributes<DrilldownLinkAriaAttribute>;\n download?: string;\n href?: string;\n rel?: string;\n target?: DrilldownLinkTarget;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaRole, FieldsetLabelSize, FieldsetState } from '../types';\n\nexport type PFieldsetProps = {\n /**\n * Overrides the ARIA role on the fieldset — use `radiogroup` when grouping radio buttons.\n */\n aria?: SelectedAriaRole<\"radiogroup\">;\n /**\n * Sets the visible legend text displayed above the grouped form controls.\n * @default ''\n */\n label?: string;\n /**\n * Sets the font size of the fieldset label (`small`, `medium`, or `large`).\n * @default 'medium'\n */\n labelSize?: FieldsetLabelSize;\n /**\n * Sets the validation feedback message displayed below the fieldset when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Marks all controls within the fieldset as required and adds a required indicator to the label.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the fieldset, controlling the color and style of the feedback message.\n * @default 'none'\n */\n state?: FieldsetState;\n};\n\n@Component({\n selector: 'p-fieldset,[p-fieldset]',\n template: '<ng-content />',\n inputs: ['aria', 'label', 'labelSize', 'message', 'required', 'state'],\n standalone: false\n})\nexport class PFieldset extends BaseComponent {\n aria?: SelectedAriaRole<\"radiogroup\">;\n label?: string;\n labelSize?: FieldsetLabelSize;\n message?: string;\n required?: boolean;\n state?: FieldsetState;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, FlagAriaAttribute, FlagName, BreakpointCustomizable, FlagSize } from '../types';\n\nexport type PFlagProps = {\n /**\n * A map of ARIA attributes to enhance the flag's accessibility. For example, use `{ 'aria-label': 'German flag' }` to provide a descriptive label for screen readers.\n */\n aria?: SelectedAriaAttributes<FlagAriaAttribute>;\n /**\n * Specifies the country flag to display. Use the two-letter ISO 3166-1 alpha-2 country code. For example, use `us` for the United States, `de` for Germany, `gb` for Great Britain.\n * @default 'de'\n */\n name?: FlagName;\n /**\n * Defines the size of the flag, aligned with the typographic scale used by components such as p-icon, p-spinner, p-text, and p-heading. When set to `inherit`, the size is derived from a custom font-size defined on a parent element, calculated against the global line-height (based on `ex`-unit) to remain visually consistent with other typographic-scale-based components.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<FlagSize>;\n};\n\n@Component({\n selector: 'p-flag,[p-flag]',\n template: '<ng-content />',\n inputs: ['aria', 'name', 'size'],\n standalone: false\n})\nexport class PFlag extends BaseComponent {\n aria?: SelectedAriaAttributes<FlagAriaAttribute>;\n name?: FlagName;\n size?: BreakpointCustomizable<FlagSize>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, FlyoutAriaAttribute, FlyoutBackdrop, FlyoutBackground, FlyoutFooterBehavior, BreakpointCustomizable, FlyoutMotionHiddenEndEventDetail, FlyoutMotionVisibleEndEventDetail, FlyoutPosition } from '../types';\n\nexport type PFlyoutProps = {\n /**\n * Sets ARIA attributes on the flyout dialog element for improved screen reader accessibility.\n */\n aria?: SelectedAriaAttributes<FlyoutAriaAttribute>;\n /**\n * Sets the backdrop style. Use `blur` when background content is irrelevant; use `shading` when users still need visual context.\n * @default 'blur'\n */\n backdrop?: FlyoutBackdrop;\n /**\n * Sets the background color of the flyout panel (`canvas` or `surface`).\n * @default 'canvas'\n */\n background?: FlyoutBackground;\n /**\n * When enabled, clicking the backdrop will not close the flyout.\n * @default false\n */\n disableBackdropClick?: boolean;\n /**\n * Controls footer behavior. `fixed` keeps it anchored at the bottom; `sticky` pins it only when content overflows.\n * @default 'sticky'\n */\n footerBehavior?: FlyoutFooterBehavior;\n /**\n * If true the flyout stretches to the full viewport width with squared corners. Useful for smaller viewports where the flyout would otherwise fill the screen but still show rounded corners.\n * @default false\n */\n fullscreen?: BreakpointCustomizable<boolean>;\n /**\n * Controls whether the flyout panel is visible.\n * @default false\n */\n open: boolean;\n /**\n * Sets the side the flyout slides in from — `start` for left or `end` for right in LTR layouts.\n * @default 'end'\n */\n position?: FlyoutPosition;\n};\n\n@Component({\n selector: 'p-flyout,[p-flyout]',\n template: '<ng-content />',\n inputs: ['aria', 'backdrop', 'background', 'disableBackdropClick', 'footerBehavior', 'fullscreen', 'open', 'position'],\n outputs: ['dismiss', 'motionHiddenEnd', 'motionVisibleEnd'],\n standalone: false\n})\nexport class PFlyout extends BaseComponent {\n aria?: SelectedAriaAttributes<FlyoutAriaAttribute>;\n backdrop?: FlyoutBackdrop;\n background?: FlyoutBackground;\n disableBackdropClick?: boolean;\n footerBehavior?: FlyoutFooterBehavior;\n fullscreen?: BreakpointCustomizable<boolean>;\n open!: boolean;\n position?: FlyoutPosition;\n dismiss = new EventEmitter<CustomEvent<void>>();\n motionHiddenEnd = new EventEmitter<CustomEvent<FlyoutMotionHiddenEndEventDetail>>();\n motionVisibleEnd = new EventEmitter<CustomEvent<FlyoutMotionVisibleEndEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { HeadingAlign, HeadingColor, HeadingHyphens, BreakpointCustomizable, HeadingSize, HeadingTag, HeadingWeight } from '../types';\n\nexport type PHeadingProps = {\n /**\n * Sets the horizontal text alignment (`start`, `center`, `end`, or `inherit`).\n * @default 'start'\n */\n align?: HeadingAlign;\n /**\n * Sets the text color using PDS color tokens.\n * @default 'primary'\n */\n color?: HeadingColor;\n /**\n * Truncates the text with an ellipsis when it overflows the container on a single line. Cannot be combined with multi-line content.\n * @default false\n */\n ellipsis?: boolean;\n /**\n * Controls hyphenation behavior — `auto` lets the browser decide, `manual` only breaks at `­`, `none` disables it entirely.\n * @default 'none'\n */\n hyphens?: HeadingHyphens;\n /**\n * Sets the visual size of the heading. Use `inherit` to derive size from the parent. Supports responsive breakpoint values.\n * @default '2xl'\n */\n size?: BreakpointCustomizable<HeadingSize>;\n /**\n * Sets the HTML heading tag (h1–h6) for correct document outline placement. When omitted, the tag is inferred from `size`.\n */\n tag?: HeadingTag;\n /**\n * Sets the font weight — `normal`, `semibold`, or `bold`.\n * @default 'normal'\n */\n weight?: HeadingWeight;\n};\n\n@Component({\n selector: 'p-heading,[p-heading]',\n template: '<ng-content />',\n inputs: ['align', 'color', 'ellipsis', 'hyphens', 'size', 'tag', 'weight'],\n standalone: false\n})\nexport class PHeading extends BaseComponent {\n align?: HeadingAlign;\n color?: HeadingColor;\n ellipsis?: boolean;\n hyphens?: HeadingHyphens;\n size?: BreakpointCustomizable<HeadingSize>;\n tag?: HeadingTag;\n weight?: HeadingWeight;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, IconAriaAttribute, IconColor, IconName, BreakpointCustomizable, IconSize } from '../types';\n\nexport type PIconProps = {\n /**\n * Sets ARIA attributes on the icon — use `aria-label` to make the icon meaningful to screen readers when it conveys information.\n */\n aria?: SelectedAriaAttributes<IconAriaAttribute>;\n /**\n * Sets the fill color of the icon using PDS color tokens.\n * @default 'primary'\n */\n color?: IconColor;\n /**\n * Selects an icon from the built-in PDS icon library by name (e.g. `arrow-right`, `close`).\n * @default 'arrow-right'\n */\n name?: IconName;\n /**\n * Sets the icon size using the PDS typographic scale. Use `inherit` to derive size from the parent element. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<IconSize>;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon library.\n */\n source?: string;\n};\n\n@Component({\n selector: 'p-icon,[p-icon]',\n template: '<ng-content />',\n inputs: ['aria', 'color', 'name', 'size', 'source'],\n standalone: false\n})\nexport class PIcon extends BaseComponent {\n aria?: SelectedAriaAttributes<IconAriaAttribute>;\n color?: IconColor;\n name?: IconName;\n size?: BreakpointCustomizable<IconSize>;\n source?: string;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { InlineNotificationActionIcon, InlineNotificationHeadingTag, InlineNotificationState } from '../types';\n\nexport type PInlineNotificationProps = {\n /**\n * Sets the icon displayed inside the action button using a PDS icon name.\n * @default 'arrow-right'\n */\n actionIcon?: InlineNotificationActionIcon;\n /**\n * Sets the label text of the optional action button inside the notification.\n */\n actionLabel?: string;\n /**\n * Disables the action button and shows a spinner to indicate an ongoing operation.\n * @default false\n */\n actionLoading?: boolean;\n /**\n * Sets the supporting description text shown below the heading.\n * @default ''\n */\n description?: string;\n /**\n * Shows a dismiss button so the user can manually close the notification.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Sets the heading text displayed at the top of the inline notification.\n * @default ''\n */\n heading?: string;\n /**\n * Sets the HTML heading tag (e.g. h2, h3) to maintain correct document structure.\n * @default 'h5'\n */\n headingTag?: InlineNotificationHeadingTag;\n /**\n * Sets the visual state — controls the icon and color scheme (`info`, `warning`, `error`, `success`).\n * @default 'info'\n */\n state?: InlineNotificationState;\n};\n\n@Component({\n selector: 'p-inline-notification,[p-inline-notification]',\n template: '<ng-content />',\n inputs: ['actionIcon', 'actionLabel', 'actionLoading', 'description', 'dismissButton', 'heading', 'headingTag', 'state'],\n outputs: ['action', 'dismiss'],\n standalone: false\n})\nexport class PInlineNotification extends BaseComponent {\n actionIcon?: InlineNotificationActionIcon;\n actionLabel?: string;\n actionLoading?: boolean;\n description?: string;\n dismissButton?: boolean;\n heading?: string;\n headingTag?: InlineNotificationHeadingTag;\n state?: InlineNotificationState;\n action = new EventEmitter<CustomEvent<void>>();\n dismiss = new EventEmitter<CustomEvent<void>>();\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputDateBlurEventDetail, InputDateChangeEventDetail, InputDateInputEventDetail, InputDateState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputDateProps = {\n /**\n * Provides the browser with a date autofill hint (e.g. `autocomplete='bday'` for a birthday field).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing date selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable date in YYYY-MM-DD format. Dates after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable date in YYYY-MM-DD format. Dates before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the date is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no date is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputDateState;\n /**\n * Sets the stepping interval in days. The selected date must align with the `min` date by a multiple of this value.\n * @default 1\n */\n step?: number;\n /**\n * Sets the current date value in YYYY-MM-DD format (e.g. `2025-07-02`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-date,[p-input-date]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputDate),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputDate extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputDateState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputDateBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputDateChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputDateInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputEmailBlurEventDetail, InputEmailChangeEventDetail, InputEmailInputEventDetail, InputEmailState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputEmailProps = {\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions (e.g. `autocomplete='email'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows an email icon at the start of the field as a visual indicator.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Allows entry of multiple email addresses separated by commas. The browser validates each address individually.\n * @default false\n */\n multiple?: boolean;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets a regular expression the entered value must match to be valid. Overrides the browser's default email validation.\n */\n pattern?: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, to hint at the expected format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputEmailState;\n /**\n * Sets the current email value. When `multiple` is enabled, accepts a comma-separated list of email addresses.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-email,[p-input-email]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'multiple', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputEmail),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputEmail extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n multiple?: boolean;\n name!: string;\n pattern?: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputEmailState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputEmailBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputEmailChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputEmailInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputMonthBlurEventDetail, InputMonthChangeEventDetail, InputMonthInputEventDetail, InputMonthState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputMonthProps = {\n /**\n * Provides the browser with a month/year autofill hint.\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing month selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable month in YYYY-MM format. Months after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable month in YYYY-MM format. Months before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no month is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputMonthState;\n /**\n * Sets the stepping interval in months (e.g. `1` for monthly, `12` for annual).\n * @default 1\n */\n step?: number;\n /**\n * Sets the current month value in YYYY-MM format (e.g. `2025-07`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-month,[p-input-month]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputMonth),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputMonth extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputMonthState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputMonthBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputMonthChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputMonthInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputNumberBlurEventDetail, InputNumberChangeEventDetail, InputNumberInputEventDetail, InputNumberState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputNumberProps = {\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions (e.g. `autocomplete='postal-code'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Shows increment/decrement spin buttons inside the field to adjust the numeric value by clicking.\n * @default false\n */\n controls?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum allowed numeric value. Values above this are invalid.\n */\n max?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum allowed numeric value. Values below this are invalid.\n */\n min?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, to hint at the expected format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputNumberState;\n /**\n * Sets the stepping granularity — the value must be a multiple of this number. Also controls step button increment size.\n * @default 1\n */\n step?: number;\n /**\n * Sets the current numeric value of the field.\n * @default ''\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-input-number,[p-input-number]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'controls', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'placeholder', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputNumber),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputNumber extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n controls?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: number;\n message?: string;\n min?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputNumberState;\n step?: number;\n value?: string | number | null;\n blur = new EventEmitter<CustomEvent<InputNumberBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputNumberChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputNumberInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputPasswordBlurEventDetail, InputPasswordChangeEventDetail, InputPasswordInputEventDetail, InputPasswordState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputPasswordProps = {\n /**\n * Provides the browser with a password autofill hint (e.g. `autocomplete='current-password'` or `autocomplete='new-password'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputPasswordState;\n /**\n * Shows a toggle button that switches the password between masked and plain text visibility.\n * @default false\n */\n toggle?: boolean;\n /**\n * Sets the current password value of the field.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-password,[p-input-password]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'state', 'toggle', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputPassword),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputPassword extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputPasswordState;\n toggle?: boolean;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputPasswordBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputPasswordChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputPasswordInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, InputSearchAriaAttribute, BreakpointCustomizable, InputSearchBlurEventDetail, InputSearchChangeEventDetail, InputSearchInputEventDetail, InputSearchState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputSearchProps = {\n /**\n * Sets additional ARIA attributes on the search input, useful for combobox patterns (e.g. `role=\"combobox\"`, `aria-expanded`).\n */\n aria?: SelectedAriaAttributes<InputSearchAriaAttribute>;\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions.\n */\n autoComplete?: string;\n /**\n * Shows a clear button (×) inside the field that resets the value to empty when clicked.\n * @default false\n */\n clear?: boolean;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows a magnifying glass icon inside the field as a visual affordance for search input.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputSearchState;\n /**\n * Sets the current search query value of the field.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-search,[p-input-search]',\n template: '<ng-content />',\n inputs: ['aria', 'autoComplete', 'clear', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputSearch),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputSearch extends BaseComponent implements ControlValueAccessor {\n aria?: SelectedAriaAttributes<InputSearchAriaAttribute>;\n autoComplete?: string;\n clear?: boolean;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputSearchState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputSearchBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputSearchChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputSearchInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputTelBlurEventDetail, InputTelChangeEventDetail, InputTelInputEventDetail, InputTelState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputTelProps = {\n /**\n * Provides the browser with a phone number autofill hint (e.g. `autocomplete='tel'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows a phone icon at the start of the field as a visual indicator for telephone input.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets a regular expression the entered value must match to be valid. Overrides the browser's default telephone validation.\n */\n pattern?: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, such as an example phone number format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputTelState;\n /**\n * Sets the current telephone number value of the field.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-tel,[p-input-tel]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputTel),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputTel extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n pattern?: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputTelState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputTelBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputTelChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputTelInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputTextBlurEventDetail, InputTextChangeEventDetail, InputTextInputEventDetail, InputTextState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputTextProps = {\n /**\n * Provides the browser with a data type hint to enable relevant autofill suggestions (e.g. `autocomplete='name'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Shows a live character counter below the field indicating how many characters have been entered relative to `maxLength`.\n * @default false\n */\n counter?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, to hint at the expected format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited by the user. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Controls whether the browser's built-in spell-checking is enabled for this field.\n */\n spellCheck?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputTextState;\n /**\n * Sets the current text value of the input field.\n * @default ''\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-input-text,[p-input-text]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'counter', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'spellCheck', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputText),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputText extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n counter?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n spellCheck?: boolean;\n state?: InputTextState;\n value?: string | number | null;\n blur = new EventEmitter<CustomEvent<InputTextBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputTextChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputTextInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputTimeBlurEventDetail, InputTimeChangeEventDetail, InputTimeInputEventDetail, InputTimeState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputTimeProps = {\n /**\n * Provides the browser with a time autofill hint.\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing time selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable time in `hh:mm` or `hh:mm:ss` format. Times after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable time in `hh:mm` or `hh:mm:ss` format. Times before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no time is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputTimeState;\n /**\n * Sets the stepping interval in seconds. Use `60` for minute-level selection, `1` to also expose seconds.\n * @default 60\n */\n step?: number;\n /**\n * Sets the current time value in `hh:mm` or `hh:mm:ss` format (e.g. `14:00`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-time,[p-input-time]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputTime),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputTime extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputTimeState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputTimeBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputTimeChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputTimeInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputUrlBlurEventDetail, InputUrlChangeEventDetail, InputUrlInputEventDetail, InputUrlState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputUrlProps = {\n /**\n * Provides the browser with a URL autofill hint (e.g. `autocomplete='url'`).\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing all input. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Shows a URL/link icon at the start of the field as a visual indicator.\n * @default false\n */\n indicator?: boolean;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the maximum number of characters the user can enter.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the field to be considered valid.\n */\n minLength?: number;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets a regular expression the entered value must match to be valid. Overrides the browser's default URL validation.\n */\n pattern?: string;\n /**\n * Sets placeholder text shown inside the field when it is empty, such as an example URL.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be edited. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputUrlState;\n /**\n * Sets the current URL value. Must be an absolute URL (e.g. `https://porsche.com`) to pass browser validation.\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-url,[p-input-url]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'indicator', 'label', 'loading', 'maxLength', 'message', 'minLength', 'name', 'pattern', 'placeholder', 'readOnly', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputUrl),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputUrl extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n indicator?: boolean;\n label?: string;\n loading?: boolean;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n pattern?: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputUrlState;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputUrlBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputUrlChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputUrlInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, InputWeekBlurEventDetail, InputWeekChangeEventDetail, InputWeekInputEventDetail, InputWeekState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PInputWeekProps = {\n /**\n * Provides the browser with a week/year autofill hint.\n */\n autoComplete?: string;\n /**\n * Reduces the input height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the field, preventing week selection. The value is not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the field with a form element by its ID when the field is not nested directly inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the input field.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables the field and displays a loading spinner to indicate an ongoing operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the latest selectable week in YYYY-Www format. Weeks after this are disabled in the picker.\n */\n max?: string;\n /**\n * Sets the validation feedback message displayed below the field when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the earliest selectable week in YYYY-Www format. Weeks before this are disabled in the picker.\n */\n min?: string;\n /**\n * Sets the name submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Makes the field read-only — the value is displayed but cannot be changed. The value is still submitted with the form.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the field as required — form submission is blocked while no week is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: InputWeekState;\n /**\n * Sets the stepping interval in weeks.\n * @default 1\n */\n step?: number;\n /**\n * Sets the current ISO week value in YYYY-Www format (e.g. `2025-W27`).\n * @default ''\n */\n value?: string | null;\n};\n\n@Component({\n selector: 'p-input-week,[p-input-week]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'max', 'message', 'min', 'name', 'readOnly', 'required', 'state', 'step', 'value'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PInputWeek),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PInputWeek extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n max?: string;\n message?: string;\n min?: string;\n name!: string;\n readOnly?: boolean;\n required?: boolean;\n state?: InputWeekState;\n step?: number;\n value?: string | null;\n blur = new EventEmitter<CustomEvent<InputWeekBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<InputWeekChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<InputWeekInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, LinkAriaAttribute, BreakpointCustomizable, LinkIcon, LinkTarget, LinkVariant } from '../types';\n\nexport type PLinkProps = {\n /**\n * Sets ARIA attributes on the link element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<LinkAriaAttribute>;\n /**\n * Reduces the link's padding and height for denser layouts. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Sets the native `download` attribute to trigger a file download. Only applies when `href` is set.\n */\n download?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * When set, the component renders as an anchor navigating to this URL. Otherwise, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Sets the icon displayed next to the link label. Use `none` to show no icon.\n * @default 'none'\n */\n icon?: LinkIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`). Only applies when `href` is set.\n */\n rel?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: LinkTarget;\n /**\n * Sets the visual style variant of the link (e.g. `primary`, `secondary`, `tertiary`).\n * @default 'primary'\n */\n variant?: LinkVariant;\n};\n\n@Component({\n selector: 'p-link,[p-link]',\n template: '<ng-content />',\n inputs: ['aria', 'compact', 'download', 'hideLabel', 'href', 'icon', 'iconSource', 'rel', 'target', 'variant'],\n standalone: false\n})\nexport class PLink extends BaseComponent {\n aria?: SelectedAriaAttributes<LinkAriaAttribute>;\n compact?: BreakpointCustomizable<boolean>;\n download?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n href?: string;\n icon?: LinkIcon;\n iconSource?: string;\n rel?: string;\n target?: LinkTarget;\n variant?: LinkVariant;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, LinkPureAlignLabel, SelectedAriaAttributes, LinkPureAriaAttribute, LinkPureColor, LinkPureIcon, LinkPureSize, LinkPureTarget } from '../types';\n\nexport type PLinkPureProps = {\n /**\n * Visually marks the link as the currently active navigation item, e.g. the current page.\n * @default false\n */\n active?: boolean;\n /**\n * Sets the label position relative to the icon — `start` places it before, `end` places it after. Supports responsive breakpoint values.\n * @default 'end'\n */\n alignLabel?: BreakpointCustomizable<LinkPureAlignLabel>;\n /**\n * Sets ARIA attributes on the link element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<LinkPureAriaAttribute>;\n /**\n * Sets the foreground color of the link's icon and label text.\n * @default 'primary'\n */\n color?: LinkPureColor;\n /**\n * Sets the native `download` attribute to trigger a file download. Only applies when `href` is set.\n */\n download?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * When set, the component renders as an anchor navigating to this URL. Otherwise, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Sets the icon displayed next to the label.\n * @default 'arrow-right'\n */\n icon?: LinkPureIcon;\n /**\n * Sets a path to a custom SVG icon, used instead of the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`). Only applies when `href` is set.\n */\n rel?: string;\n /**\n * Sets the font size of the link label. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<LinkPureSize>;\n /**\n * Expands the space between icon and label to fill the full container width. Supports responsive breakpoint values.\n * @default false\n */\n stretch?: BreakpointCustomizable<boolean>;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`). Only applies when `href` is set.\n * @default '_self'\n */\n target?: LinkPureTarget;\n /**\n * Adds a text underline to the label to reinforce its link-like appearance.\n * @default false\n */\n underline?: boolean;\n};\n\n@Component({\n selector: 'p-link-pure,[p-link-pure]',\n template: '<ng-content />',\n inputs: ['active', 'alignLabel', 'aria', 'color', 'download', 'hideLabel', 'href', 'icon', 'iconSource', 'rel', 'size', 'stretch', 'target', 'underline'],\n standalone: false\n})\nexport class PLinkPure extends BaseComponent {\n active?: boolean;\n alignLabel?: BreakpointCustomizable<LinkPureAlignLabel>;\n aria?: SelectedAriaAttributes<LinkPureAriaAttribute>;\n color?: LinkPureColor;\n download?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n href?: string;\n icon?: LinkPureIcon;\n iconSource?: string;\n rel?: string;\n size?: BreakpointCustomizable<LinkPureSize>;\n stretch?: BreakpointCustomizable<boolean>;\n target?: LinkPureTarget;\n underline?: boolean;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { LinkTileAlign, SelectedAriaAttributes, LinkTileAriaAttribute, BreakpointCustomizable, LinkTileAspectRatio, LinkTileSize, LinkTileTarget, LinkTileWeight } from '../types';\n\nexport type PLinkTileProps = {\n /**\n * Controls the vertical placement of the description and link — `top` or `bottom`.\n * @default 'bottom'\n */\n align?: LinkTileAlign;\n /**\n * Sets ARIA attributes on the tile's anchor element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<LinkTileAriaAttribute>;\n /**\n * Sets the width-to-height ratio of the tile media area. Supports responsive breakpoint values.\n * @default '4/3'\n */\n aspectRatio?: BreakpointCustomizable<LinkTileAspectRatio>;\n /**\n * Renders only the icon link without the full label. Supports responsive breakpoint values.\n * @default false\n */\n compact?: BreakpointCustomizable<boolean>;\n /**\n * Sets the description text displayed in the tile's content area.\n */\n description: string;\n /**\n * Sets the native `download` attribute to trigger a file download.\n */\n download?: string;\n /**\n * Shows a gradient overlay over the media slot to improve text legibility on bright images or videos.\n * @default false\n */\n gradient?: boolean;\n /**\n * Sets the URL the tile's anchor element navigates to when clicked.\n */\n href: string;\n /**\n * Sets the accessible label text of the link rendered inside the tile.\n */\n label: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`).\n */\n rel?: string;\n /**\n * Sets the font size of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'medium'\n */\n size?: BreakpointCustomizable<LinkTileSize>;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`).\n * @default '_self'\n */\n target?: LinkTileTarget;\n /**\n * Sets the font weight of the description text in the tile content area. Supports responsive breakpoint values.\n * @default 'semi-bold'\n */\n weight?: BreakpointCustomizable<LinkTileWeight>;\n};\n\n@Component({\n selector: 'p-link-tile,[p-link-tile]',\n template: '<ng-content />',\n inputs: ['align', 'aria', 'aspectRatio', 'compact', 'description', 'download', 'gradient', 'href', 'label', 'rel', 'size', 'target', 'weight'],\n standalone: false\n})\nexport class PLinkTile extends BaseComponent {\n align?: LinkTileAlign;\n aria?: SelectedAriaAttributes<LinkTileAriaAttribute>;\n aspectRatio?: BreakpointCustomizable<LinkTileAspectRatio>;\n compact?: BreakpointCustomizable<boolean>;\n description!: string;\n download?: string;\n gradient?: boolean;\n href!: string;\n label!: string;\n rel?: string;\n size?: BreakpointCustomizable<LinkTileSize>;\n target?: LinkTileTarget;\n weight?: BreakpointCustomizable<LinkTileWeight>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, LinkTileProductAspectRatio, LinkTileProductLikeEventDetail, LinkTileProductTarget } from '../types';\n\nexport type PLinkTileProductProps = {\n /**\n * Sets the width-to-height ratio of the tile media area. Supports responsive breakpoint values.\n * @default '3/4'\n */\n aspectRatio?: BreakpointCustomizable<LinkTileProductAspectRatio>;\n /**\n * Sets an optional short description providing additional product details below the price.\n */\n description?: string;\n /**\n * Sets the product name displayed prominently at the top of the tile.\n */\n heading: string;\n /**\n * Sets the URL the tile navigates to when clicked. Alternatively, provide a slotted anchor element.\n */\n href?: string;\n /**\n * Shows a like/bookmark button so users can save the product.\n * @default true\n */\n likeButton?: boolean;\n /**\n * Reflects whether the product is currently liked — controls the filled state of the like button.\n * @default false\n */\n liked?: boolean;\n /**\n * Sets the current retail price of the product, displayed with or without a discount.\n */\n price: string;\n /**\n * Sets the original recommended retail price shown with a strikethrough to indicate a discount. Requires `price` to be set.\n */\n priceOriginal?: string;\n /**\n * Sets the `rel` attribute on the link (e.g. `noopener`).\n */\n rel?: string;\n /**\n * Specifies where to open the linked URL (e.g. `_self`, `_blank`).\n * @default '_self'\n */\n target?: LinkTileProductTarget;\n};\n\n@Component({\n selector: 'p-link-tile-product,[p-link-tile-product]',\n template: '<ng-content />',\n inputs: ['aspectRatio', 'description', 'heading', 'href', 'likeButton', 'liked', 'price', 'priceOriginal', 'rel', 'target'],\n outputs: ['like'],\n standalone: false\n})\nexport class PLinkTileProduct extends BaseComponent {\n aspectRatio?: BreakpointCustomizable<LinkTileProductAspectRatio>;\n description?: string;\n heading!: string;\n href?: string;\n likeButton?: boolean;\n liked?: boolean;\n price!: string;\n priceOriginal?: string;\n rel?: string;\n target?: LinkTileProductTarget;\n like = new EventEmitter<CustomEvent<LinkTileProductLikeEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, ModalAriaAttribute, ModalBackdrop, ModalBackground, BreakpointCustomizable, ModalMotionHiddenEndEventDetail, ModalMotionVisibleEndEventDetail } from '../types';\n\nexport type PModalProps = {\n /**\n * Sets ARIA attributes on the dialog element for improved accessibility when no visible heading is present.\n */\n aria?: SelectedAriaAttributes<ModalAriaAttribute>;\n /**\n * Sets the backdrop style. Use `blur` when the modal is opened by user interaction; use `shading` when opened automatically (e.g. Cookie Consent).\n * @default 'blur'\n */\n backdrop?: ModalBackdrop;\n /**\n * Sets the background color of the modal panel (`canvas` or `surface`).\n * @default 'canvas'\n */\n background?: ModalBackground;\n /**\n * When enabled, clicking the backdrop will not close the modal.\n * @default false\n */\n disableBackdropClick?: boolean;\n /**\n * Shows a dismiss button in the modal header so the user can manually close it.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Expands the modal to the full viewport size, intended for mobile use cases. Supports responsive breakpoint values.\n * @default false\n */\n fullscreen?: BreakpointCustomizable<boolean>;\n /**\n * Controls whether the modal dialog is visible.\n * @default false\n */\n open: boolean;\n};\n\n@Component({\n selector: 'p-modal,[p-modal]',\n template: '<ng-content />',\n inputs: ['aria', 'backdrop', 'background', 'disableBackdropClick', 'dismissButton', 'fullscreen', 'open'],\n outputs: ['dismiss', 'motionHiddenEnd', 'motionVisibleEnd'],\n standalone: false\n})\nexport class PModal extends BaseComponent {\n aria?: SelectedAriaAttributes<ModalAriaAttribute>;\n backdrop?: ModalBackdrop;\n background?: ModalBackground;\n disableBackdropClick?: boolean;\n dismissButton?: boolean;\n fullscreen?: BreakpointCustomizable<boolean>;\n open!: boolean;\n dismiss = new EventEmitter<CustomEvent<void>>();\n motionHiddenEnd = new EventEmitter<CustomEvent<ModalMotionHiddenEndEventDetail>>();\n motionVisibleEnd = new EventEmitter<CustomEvent<ModalMotionVisibleEndEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { ModelSignatureColor, ModelSignatureFetchPriority, ModelSignatureModel, ModelSignatureSize } from '../types';\n\nexport type PModelSignatureProps = {\n /**\n * Sets the fill color of the signature using PDS color tokens.\n * @default 'primary'\n */\n color?: ModelSignatureColor;\n /**\n * Sets the browser's fetch priority hint for the signature asset (`auto`, `high`, `low`).\n * @default 'auto'\n */\n fetchPriority?: ModelSignatureFetchPriority;\n /**\n * Defers loading the signature until it enters the viewport to improve initial page performance.\n * @default false\n */\n lazy?: boolean;\n /**\n * Selects the Porsche model whose typographic signature SVG is displayed.\n * @default '911'\n */\n model?: ModelSignatureModel;\n /**\n * When enabled, adds invisible padding so all model signatures visually align to a consistent baseline.\n * @default true\n */\n safeZone?: boolean;\n /**\n * Sets the display size of the signature using predefined PDS sizes. Use `inherit` with a CSS `width` or `height` on the host for custom sizing.\n * @default 'small'\n */\n size?: ModelSignatureSize;\n};\n\n@Component({\n selector: 'p-model-signature,[p-model-signature]',\n template: '<ng-content />',\n inputs: ['color', 'fetchPriority', 'lazy', 'model', 'safeZone', 'size'],\n standalone: false\n})\nexport class PModelSignature extends BaseComponent {\n color?: ModelSignatureColor;\n fetchPriority?: ModelSignatureFetchPriority;\n lazy?: boolean;\n model?: ModelSignatureModel;\n safeZone?: boolean;\n size?: ModelSignatureSize;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { MultiSelectDropdownDirection, BreakpointCustomizable, MultiSelectChangeEventDetail, MultiSelectToggleEventDetail, MultiSelectState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PMultiSelectProps = {\n /**\n * Reduces the control height and padding for a more compact layout.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to provide additional context.\n * @default ''\n */\n description?: string;\n /**\n * Disables the multi-select, preventing all interaction. Selected values are not submitted with the form.\n * @default false\n */\n disabled?: boolean;\n /**\n * Controls whether the dropdown opens upward (`up`) or downward (`down`), or decides automatically (`auto`).\n * @default 'auto'\n */\n dropdownDirection?: MultiSelectDropdownDirection;\n /**\n * Associates the multi-select with a form element by its ID when not directly nested inside it.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the multi-select control.\n * @default ''\n */\n label?: string;\n /**\n * Sets the validation feedback message displayed below the control when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name submitted with the form data to identify the selected values on the server.\n */\n name: string;\n /**\n * Marks the multi-select as required — form submission is blocked unless at least one option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state, controlling the visual appearance and style of the feedback message (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: MultiSelectState;\n /**\n * The selected values. Matches options strictly by type and value, meaning a string value only matches options whose value is the same string, a number value only matches options whose value is the same number. Pass null or [] to clear the selection. Please note that FormData always serializes values as strings, so when participating in a native (uncontrolled) form a number[] value is restored as string[] via formStateRestoreCallback and will no longer strictly match number-typed options. This limitation only applies to native form state restoration; in controlled forms (where the consumer manages value directly via the change event), number[] types are preserved end-to-end.\n * @default []\n */\n value?: string[] | number[] | null;\n};\n\n@Component({\n selector: 'p-multi-select,[p-multi-select]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'disabled', 'dropdownDirection', 'form', 'hideLabel', 'label', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'toggle'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PMultiSelect),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PMultiSelect extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n dropdownDirection?: MultiSelectDropdownDirection;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n message?: string;\n name!: string;\n required?: boolean;\n state?: MultiSelectState;\n value?: string[] | number[] | null;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<MultiSelectChangeEventDetail>>();\n toggle = new EventEmitter<CustomEvent<MultiSelectToggleEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PMultiSelectOptionProps = {\n /**\n * Disables the option, preventing it from being selected.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the value submitted with the form data when this option is selected in the parent multi-select.\n */\n value: string | number;\n};\n\n@Component({\n selector: 'p-multi-select-option,[p-multi-select-option]',\n template: '<ng-content />',\n inputs: ['disabled', 'value'],\n standalone: false\n})\nexport class PMultiSelectOption extends BaseComponent {\n disabled?: boolean;\n value!: string | number;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type POptgroupProps = {\n /**\n * Disables all options in the group, preventing any of them from being selected.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the visible group heading displayed above the grouped options.\n */\n label?: string;\n};\n\n@Component({\n selector: 'p-optgroup,[p-optgroup]',\n template: '<ng-content />',\n inputs: ['disabled', 'label'],\n standalone: false\n})\nexport class POptgroup extends BaseComponent {\n disabled?: boolean;\n label?: string;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { PaginationInternationalization, PaginationUpdateEventDetail } from '../types';\n\nexport type PPaginationProps = {\n /**\n * Sets the one-based index of the currently active page; update this prop to navigate programmatically.\n * @default 1\n */\n activePage: number;\n /**\n * Overrides the default ARIA label strings used for the previous, next, and page number buttons to support localisation.\n * @default { root: 'Pagination', prev: 'Previous page', next: 'Next page', page: 'Page', }\n */\n intl?: PaginationInternationalization;\n /**\n * Sets the number of items displayed per page, used together with `totalItemsCount` to compute the page count.\n * @default 1\n */\n itemsPerPage?: number;\n /**\n * Shows or hides the button that jumps directly to the last page of the pagination.\n * @default true\n */\n showLastPage?: boolean;\n /**\n * Sets the total number of items in the dataset, used to calculate the number of pages.\n * @default 1\n */\n totalItemsCount: number;\n};\n\n@Component({\n selector: 'p-pagination,[p-pagination]',\n template: '<ng-content />',\n inputs: ['activePage', 'intl', 'itemsPerPage', 'showLastPage', 'totalItemsCount'],\n outputs: ['update'],\n standalone: false\n})\nexport class PPagination extends BaseComponent {\n activePage!: number;\n intl?: PaginationInternationalization;\n itemsPerPage?: number;\n showLastPage?: boolean;\n totalItemsCount!: number;\n update = new EventEmitter<CustomEvent<PaginationUpdateEventDetail>>();\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, PinCodeLength, PinCodeChangeEventDetail, PinCodeState, PinCodeType } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PPinCodeProps = {\n /**\n * Reduces the pin code field height and spacing for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the pin code.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with all pin code fields and blocks events while the component is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the pin code with a form element by its ID when it is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label and description while keeping them accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the pin code fields to identify their purpose.\n * @default ''\n */\n label?: string;\n /**\n * Sets the number of individual input fields rendered, determining how many characters the pin code consists of.\n * @default 4\n */\n length?: PinCodeLength;\n /**\n * Disables the pin code fields and shows a loading spinner to indicate an ongoing background operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the validation feedback message displayed below the pin code when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name of the control submitted with the form data to identify the pin code value on the server.\n */\n name?: string;\n /**\n * Marks the pin code as required so the form cannot be submitted until all fields are filled.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the pin code, which controls its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: PinCodeState;\n /**\n * Controls whether the individual input fields mask their content as password dots (`password`) or show digits (`number`).\n * @default 'number'\n */\n type?: PinCodeType;\n /**\n * Sets the current concatenated value of all pin code fields and allows setting the initial value.\n * @default ''\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-pin-code,[p-pin-code]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'length', 'loading', 'message', 'name', 'required', 'state', 'type', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PPinCode),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PPinCode extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n length?: PinCodeLength;\n loading?: boolean;\n message?: string;\n name?: string;\n required?: boolean;\n state?: PinCodeState;\n type?: PinCodeType;\n value?: string;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<PinCodeChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, PopoverAriaAttribute, PopoverDirection } from '../types';\n\nexport type PPopoverProps = {\n /**\n * Sets ARIA attributes on the popover panel to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<PopoverAriaAttribute>;\n /**\n * Sets the text content displayed inside the popover panel when it is open, providing contextual help or information.\n */\n description?: string;\n /**\n * Sets the preferred direction for the popover to open relative to its trigger button. Falls back to the direction with the most available viewport space.\n * @default 'bottom'\n */\n direction?: PopoverDirection;\n};\n\n@Component({\n selector: 'p-popover,[p-popover]',\n template: '<ng-content />',\n inputs: ['aria', 'description', 'direction'],\n standalone: false\n})\nexport class PPopover extends BaseComponent {\n aria?: SelectedAriaAttributes<PopoverAriaAttribute>;\n description?: string;\n direction?: PopoverDirection;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, RadioGroupDirection, RadioGroupChangeEventDetail, RadioGroupState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PRadioGroupProps = {\n /**\n * Reduces the spacing between radio options for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the radio group.\n * @default ''\n */\n description?: string;\n /**\n * Sets the layout direction of the radio options. Use `column` to stack them vertically or `row` to arrange them horizontally. Supports responsive breakpoint values.\n * @default 'column'\n */\n direction?: BreakpointCustomizable<RadioGroupDirection>;\n /**\n * Disables all radio options in the group, preventing selection and excluding the value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the radio group with a form element by its ID when the group is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the radio group to identify the group's purpose.\n * @default ''\n */\n label?: string;\n /**\n * @experimental Disables all radio options and shows a spinner to indicate a background loading operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the validation feedback message displayed below the radio group when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the shared name attribute for all radio buttons in the group, grouping them for mutually exclusive selection.\n */\n name: string;\n /**\n * Marks the radio group as required so the form cannot be submitted until one option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the radio group, controlling its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: RadioGroupState;\n /**\n * Sets the currently selected value that pre-selects the matching radio option and reflects user changes.\n * @default ''\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-radio-group,[p-radio-group]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'direction', 'disabled', 'form', 'hideLabel', 'label', 'loading', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PRadioGroup),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PRadioGroup extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n direction?: BreakpointCustomizable<RadioGroupDirection>;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n loading?: boolean;\n message?: string;\n name!: string;\n required?: boolean;\n state?: RadioGroupState;\n value?: string;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<RadioGroupChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PRadioGroupOptionProps = {\n /**\n * Prevents this option from being selected and excludes its value from form submissions while it is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the visible label text displayed next to the radio button that the user reads to identify the option.\n */\n label?: string;\n /**\n * @experimental Disables this option and shows a spinner to indicate that this particular option is in a loading state.\n * @default false\n */\n loading?: boolean;\n /**\n * Sets the value submitted with the form data when this radio option is selected within its parent group.\n */\n value?: string;\n};\n\n@Component({\n selector: 'p-radio-group-option,[p-radio-group-option]',\n template: '<ng-content />',\n inputs: ['disabled', 'label', 'loading', 'value'],\n standalone: false\n})\nexport class PRadioGroupOption extends BaseComponent {\n disabled?: boolean;\n label?: string;\n loading?: boolean;\n value?: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { ScrollerAlignScrollIndicator, SelectedAriaAttributes, ScrollerAriaAttribute, ScrollerScrollToPosition } from '../types';\n\nexport type PScrollerProps = {\n /**\n * @deprecated since v4.0.0, will be removed with next major release, has no effect anymore.\n * @default 'center'\n */\n alignScrollIndicator?: ScrollerAlignScrollIndicator;\n /**\n * Sets ARIA role and attributes on the scroller's scroll container, useful for tablist navigation patterns and additional accessibility context.\n */\n aria?: SelectedAriaAttributes<ScrollerAriaAttribute>;\n /**\n * Reduces the scroller's padding and the gap between slotted items for use in dense layouts.\n */\n compact?: boolean;\n /**\n * @deprecated since v4.0.0, use native `scrollIntoView()` on the slotted element itself.\n */\n scrollToPosition?: ScrollerScrollToPosition;\n /**\n * Shows the browser's native scrollbar inside the scroller, in addition to the scroll indicator arrows.\n * @default false\n */\n scrollbar?: boolean;\n /**\n * @experimental Makes the indicator sticky at the top or bottom while scrolling depending on the scroll direction.\n * @default false\n */\n sticky?: boolean;\n};\n\n@Component({\n selector: 'p-scroller,[p-scroller]',\n template: '<ng-content />',\n inputs: ['alignScrollIndicator', 'aria', 'compact', 'scrollToPosition', 'scrollbar', 'sticky'],\n standalone: false\n})\nexport class PScroller extends BaseComponent {\n /** @deprecated */\n alignScrollIndicator?: ScrollerAlignScrollIndicator;\n aria?: SelectedAriaAttributes<ScrollerAriaAttribute>;\n compact?: boolean;\n /** @deprecated */\n scrollToPosition?: ScrollerScrollToPosition;\n scrollbar?: boolean;\n sticky?: boolean;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, SegmentedControlColumns, SegmentedControlChangeEventDetail, SegmentedControlState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PSegmentedControlProps = {\n /**\n * Sets the number of equal-width columns for the item layout. Use `auto` to distribute items based on their content width. Supports responsive breakpoint values.\n * @default 'auto'\n */\n columns?: BreakpointCustomizable<SegmentedControlColumns>;\n /**\n * Reduces the item height and spacing for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional context about the segmented control.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with all items in the segmented control and excludes the value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the segmented control with a form element by its ID when it is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the segmented control to describe the group of options.\n * @default ''\n */\n label?: string;\n /**\n * Sets the validation feedback message displayed below the segmented control when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name of the control submitted with the form data to identify the selected value on the server.\n */\n name?: string;\n /**\n * Prevents items from wrapping to new rows and renders them in a single horizontally scrollable row instead.\n * @default false\n */\n noWrap?: boolean;\n /**\n * Marks the segmented control as required so the form cannot be submitted until one option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the segmented control, controlling its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: SegmentedControlState;\n /**\n * Sets the currently selected item's value and pre-selects the matching option when the component renders.\n */\n value?: string | number;\n};\n\n@Component({\n selector: 'p-segmented-control,[p-segmented-control]',\n template: '<ng-content />',\n inputs: ['columns', 'compact', 'description', 'disabled', 'form', 'hideLabel', 'label', 'message', 'name', 'noWrap', 'required', 'state', 'value'],\n outputs: ['blur', 'change'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PSegmentedControl),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PSegmentedControl extends BaseComponent implements ControlValueAccessor {\n columns?: BreakpointCustomizable<SegmentedControlColumns>;\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n message?: string;\n name?: string;\n noWrap?: boolean;\n required?: boolean;\n state?: SegmentedControlState;\n value?: string | number;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<SegmentedControlChangeEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, SegmentedControlItemAriaAttribute, SegmentedControlItemIcon } from '../types';\n\nexport type PSegmentedControlItemProps = {\n /**\n * Sets ARIA attributes on the item's button element to improve accessibility for screen readers.\n */\n aria?: SelectedAriaAttributes<SegmentedControlItemAriaAttribute>;\n /**\n * Prevents this item from being selected and visually dims it; the parent's value will not change to this item's value.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets an icon rendered inside the item button using an icon name from the PDS icon library.\n */\n icon?: SegmentedControlItemIcon;\n /**\n * Sets a URL to a custom SVG icon for the item button, overriding the built-in icon set.\n */\n iconSource?: string;\n /**\n * Sets a visible text label rendered inside the item button, used when no slotted content is provided.\n */\n label?: string;\n /**\n * Sets the value emitted by the parent `p-segmented-control` when this item is selected. This property is **required**.\n */\n value: string | number;\n};\n\n@Component({\n selector: 'p-segmented-control-item,[p-segmented-control-item]',\n template: '<ng-content />',\n inputs: ['aria', 'disabled', 'icon', 'iconSource', 'label', 'value'],\n standalone: false\n})\nexport class PSegmentedControlItem extends BaseComponent {\n aria?: SelectedAriaAttributes<SegmentedControlItemAriaAttribute>;\n disabled?: boolean;\n icon?: SegmentedControlItemIcon;\n iconSource?: string;\n label?: string;\n value!: string | number;\n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectDropdownDirection, BreakpointCustomizable, SelectChangeEventDetail, SelectToggleEventDetail, SelectState } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PSelectProps = {\n /**\n * Reduces the control height and padding for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the select.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with the select and excludes its value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Controls whether the dropdown list opens upward (`up`) or downward (`down`), or determines the direction automatically (`auto`).\n * @default 'auto'\n */\n dropdownDirection?: SelectDropdownDirection;\n /**\n * Shows a text input inside the dropdown that filters the visible options as the user types. Ignored when the `filter` slot is used.\n * @default false\n */\n filter?: boolean;\n /**\n * Associates the select with a form element by its ID when it is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the select control to identify its purpose.\n * @default ''\n */\n label?: string;\n /**\n * Sets the validation feedback message displayed below the select when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the name of the control submitted with the form data, identifying the selected value on the server.\n */\n name: string;\n /**\n * Marks the select as required so the form cannot be submitted unless a non-empty option is selected.\n * @default false\n */\n required?: boolean;\n /**\n * Sets the validation state of the select, which controls its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: SelectState;\n /**\n * The selected value. Matches an option strictly by type and value, meaning null matches only an option with value null, undefined matches only an option with value undefined (no preselection by default), and string or number only match an option whose value has the same type and equal value. Please note that FormData always serializes values as strings, so when participating in a native (uncontrolled) form a number value is restored as string via formStateRestoreCallback and will no longer strictly match a number-typed option. This limitation only applies to native form state restoration; in controlled forms (where the consumer manages value directly via the change event), the number type is preserved end-to-end.\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-select,[p-select]',\n template: '<ng-content />',\n inputs: ['compact', 'description', 'disabled', 'dropdownDirection', 'filter', 'form', 'hideLabel', 'label', 'message', 'name', 'required', 'state', 'value'],\n outputs: ['blur', 'change', 'toggle'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PSelect),\n multi: true,\n },\n ],\n host: {\n '(change)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PSelect extends BaseComponent implements ControlValueAccessor {\n compact?: boolean;\n description?: string;\n disabled?: boolean;\n dropdownDirection?: SelectDropdownDirection;\n filter?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n message?: string;\n name!: string;\n required?: boolean;\n state?: SelectState;\n value?: string | number | null;\n blur = new EventEmitter<CustomEvent<void>>();\n change = new EventEmitter<CustomEvent<SelectChangeEventDetail>>();\n toggle = new EventEmitter<CustomEvent<SelectToggleEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PSelectOptionProps = {\n /**\n * Prevents the option from being selected and visually dims it to indicate it is unavailable.\n * @default false\n */\n disabled?: boolean;\n /**\n * Sets the value submitted with the form data when this option is selected in the parent select control.\n */\n value?: string | number | null;\n};\n\n@Component({\n selector: 'p-select-option,[p-select-option]',\n template: '<ng-content />',\n inputs: ['disabled', 'value'],\n standalone: false\n})\nexport class PSelectOption extends BaseComponent {\n disabled?: boolean;\n value?: string | number | null;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, SheetAriaAttribute, SheetBackground, SheetMotionHiddenEndEventDetail, SheetMotionVisibleEndEventDetail } from '../types';\n\nexport type PSheetProps = {\n /**\n * Sets ARIA attributes on the sheet dialog element for improved accessibility when the default `aria-label` is insufficient.\n */\n aria?: SelectedAriaAttributes<SheetAriaAttribute>;\n /**\n * Sets the background color of the sheet panel (`canvas` or `surface`).\n * @default 'canvas'\n */\n background?: SheetBackground;\n /**\n * When enabled, clicking the backdrop will not close the sheet.\n * @default false\n */\n disableBackdropClick?: boolean;\n /**\n * Shows a dismiss button in the sheet header so users can manually close it.\n * @default true\n */\n dismissButton?: boolean;\n /**\n * Controls whether the sheet panel slides in from the bottom and is visible to the user.\n * @default false\n */\n open: boolean;\n};\n\n@Component({\n selector: 'p-sheet,[p-sheet]',\n template: '<ng-content />',\n inputs: ['aria', 'background', 'disableBackdropClick', 'dismissButton', 'open'],\n outputs: ['dismiss', 'motionHiddenEnd', 'motionVisibleEnd'],\n standalone: false\n})\nexport class PSheet extends BaseComponent {\n aria?: SelectedAriaAttributes<SheetAriaAttribute>;\n background?: SheetBackground;\n disableBackdropClick?: boolean;\n dismissButton?: boolean;\n open!: boolean;\n dismiss = new EventEmitter<CustomEvent<void>>();\n motionHiddenEnd = new EventEmitter<CustomEvent<SheetMotionHiddenEndEventDetail>>();\n motionVisibleEnd = new EventEmitter<CustomEvent<SheetMotionVisibleEndEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, SpinnerAriaAttribute, SpinnerColor, BreakpointCustomizable, SpinnerSize } from '../types';\n\nexport type PSpinnerProps = {\n /**\n * Sets ARIA attributes on the spinner's live region element; use `aria-label` to provide a descriptive loading message for screen readers.\n */\n aria?: SelectedAriaAttributes<SpinnerAriaAttribute>;\n /**\n * Sets the color of the spinning indicator using PDS semantic color tokens (e.g. `primary`, `contrast-high`, `inherit`).\n * @default 'primary'\n */\n color?: SpinnerColor;\n /**\n * Sets the size of the spinner using the PDS typographic scale. Use `inherit` to derive the size from the parent element's font-size. Supports responsive breakpoint values.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<SpinnerSize>;\n};\n\n@Component({\n selector: 'p-spinner,[p-spinner]',\n template: '<ng-content />',\n inputs: ['aria', 'color', 'size'],\n standalone: false\n})\nexport class PSpinner extends BaseComponent {\n aria?: SelectedAriaAttributes<SpinnerAriaAttribute>;\n color?: SpinnerColor;\n size?: BreakpointCustomizable<SpinnerSize>;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { StepperHorizontalUpdateEventDetail, BreakpointCustomizable, StepperHorizontalSize } from '../types';\n\nexport type PStepperHorizontalProps = { /**\n * The font size of the step labels.\n * @default 'small'\n */\n size?: BreakpointCustomizable<StepperHorizontalSize>;\n};\n\n@Component({\n selector: 'p-stepper-horizontal,[p-stepper-horizontal]',\n template: '<ng-content />',\n inputs: ['size'],\n outputs: ['update'],\n standalone: false\n})\nexport class PStepperHorizontal extends BaseComponent {\n size?: BreakpointCustomizable<StepperHorizontalSize>;\n update = new EventEmitter<CustomEvent<StepperHorizontalUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { StepperHorizontalItemState } from '../types';\n\nexport type PStepperHorizontalItemProps = {\n /**\n * Disables the stepper-horizontal-item. No events will be triggered while disabled state is active.\n * @default false\n */\n disabled?: boolean;\n /**\n * The current progression state of the step. Use `current` for the active step, `complete` for finished steps, `warning` for steps with issues. Leave unset for future steps.\n */\n state?: StepperHorizontalItemState;\n};\n\n@Component({\n selector: 'p-stepper-horizontal-item,[p-stepper-horizontal-item]',\n template: '<ng-content />',\n inputs: ['disabled', 'state'],\n standalone: false\n})\nexport class PStepperHorizontalItem extends BaseComponent {\n disabled?: boolean;\n state?: StepperHorizontalItemState;\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, SwitchAlignLabel, SwitchUpdateEventDetail } from '../types';\n\nexport type PSwitchProps = {\n /**\n * Sets the position of the slotted label relative to the switch toggle, either before (`start`) or after (`end`) it. Supports responsive breakpoint values.\n * @default 'end'\n */\n alignLabel?: BreakpointCustomizable<SwitchAlignLabel>;\n /**\n * Reflects the switch's current on/off state and allows setting the initial checked value when the component first renders.\n * @default false\n */\n checked?: boolean;\n /**\n * Reduces the switch size and spacing for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Prevents user interaction with the switch and blocks all click and keyboard events while it is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Disables the switch and shows a loading spinner to indicate an ongoing asynchronous toggle operation.\n * @default false\n */\n loading?: boolean;\n /**\n * Expands the space between the switch toggle and its label to fill the full available width of the container. Supports responsive breakpoint values.\n * @default false\n */\n stretch?: BreakpointCustomizable<boolean>;\n};\n\n@Component({\n selector: 'p-switch,[p-switch]',\n template: '<ng-content />',\n inputs: ['alignLabel', 'checked', 'compact', 'disabled', 'hideLabel', 'loading', 'stretch'],\n outputs: ['update'],\n standalone: false\n})\nexport class PSwitch extends BaseComponent {\n alignLabel?: BreakpointCustomizable<SwitchAlignLabel>;\n checked?: boolean;\n compact?: boolean;\n disabled?: boolean;\n hideLabel?: BreakpointCustomizable<boolean>;\n loading?: boolean;\n stretch?: BreakpointCustomizable<boolean>;\n update = new EventEmitter<CustomEvent<SwitchUpdateEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TableLayout, TableUpdateEventDetail } from '../types';\n\nexport type PTableProps = {\n /**\n * 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.\n */\n caption?: string;\n /**\n * Reduces the cell padding and spacing for a more condensed table layout in data-dense UIs.\n * @default false\n */\n compact?: boolean;\n /**\n * Controls the CSS `table-layout` algorithm: `auto` sizes columns to fit their content, `fixed` distributes width equally.\n * @default 'auto'\n */\n layout?: TableLayout;\n /**\n * @experimental Makes the scroll position indicator sticky at the viewport edge while scrolling, indicating overflow in the table.\n * @default false\n */\n sticky?: boolean;\n};\n\n@Component({\n selector: 'p-table,[p-table]',\n template: '<ng-content />',\n inputs: ['caption', 'compact', 'layout', 'sticky'],\n outputs: ['update'],\n standalone: false\n})\nexport class PTable extends BaseComponent {\n caption?: string;\n compact?: boolean;\n layout?: TableLayout;\n sticky?: boolean;\n update = new EventEmitter<CustomEvent<TableUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableBodyProps = {\n};\n\n@Component({\n selector: 'p-table-body,[p-table-body]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableBody extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableCellProps = {\n /**\n * Allows slotted text to wrap onto multiple lines instead of being forced onto a single line.\n * @default false\n */\n multiline?: boolean;\n};\n\n@Component({\n selector: 'p-table-cell,[p-table-cell]',\n template: '<ng-content />',\n inputs: ['multiline'],\n standalone: false\n})\nexport class PTableCell extends BaseComponent {\n multiline?: boolean;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableHeadProps = {\n};\n\n@Component({\n selector: 'p-table-head,[p-table-head]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableHead extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TableHeadCellSort } from '../types';\n\nexport type PTableHeadCellProps = {\n /**\n * Hides the visible column label while keeping it accessible to screen readers. Only applies when `sort` is not set.\n * @default false\n */\n hideLabel?: boolean;\n /**\n * Allows the column header text to wrap onto multiple lines instead of being truncated to a single line.\n * @default false\n */\n multiline?: boolean;\n /**\n * Configures sorting behavior for this column by providing an `id`, `active` state, and current `direction` (`asc` or `desc`).\n */\n sort?: TableHeadCellSort;\n};\n\n@Component({\n selector: 'p-table-head-cell,[p-table-head-cell]',\n template: '<ng-content />',\n inputs: ['hideLabel', 'multiline', 'sort'],\n standalone: false\n})\nexport class PTableHeadCell extends BaseComponent {\n hideLabel?: boolean;\n multiline?: boolean;\n sort?: TableHeadCellSort;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableHeadRowProps = {\n};\n\n@Component({\n selector: 'p-table-head-row,[p-table-head-row]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableHeadRow extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTableRowProps = {\n};\n\n@Component({\n selector: 'p-table-row,[p-table-row]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTableRow extends BaseComponent {\n \n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, TabsAriaAttribute, TabsBackground, TabsUpdateEventDetail, BreakpointCustomizable, TabsSize, TabsWeight } from '../types';\n\nexport type PTabsProps = {\n /**\n * Sets the zero-based index of the currently active tab; update this prop to switch tabs programmatically.\n * @default 0\n */\n activeTabIndex?: number;\n /**\n * Sets ARIA attributes on the tablist, such as `aria-label` and `aria-description`.\n */\n aria?: SelectedAriaAttributes<TabsAriaAttribute>;\n /**\n * Sets the background color of the tabs bar. Use `frosted` only when placed on top of images, videos, or gradients.\n * @default 'none'\n */\n background?: TabsBackground;\n /**\n * Reduces the tab height and padding for use in dense layouts where vertical space is limited.\n */\n compact?: boolean;\n /**\n * Sets the font size of the tab labels using the PDS typographic scale. Supports responsive breakpoint values.\n * @default 'small'\n */\n size?: BreakpointCustomizable<TabsSize>;\n /**\n * @deprecated Will be removed in the next major release. Has no effect anymore.\n * @default 'regular'\n */\n weight?: TabsWeight;\n};\n\n@Component({\n selector: 'p-tabs,[p-tabs]',\n template: '<ng-content />',\n inputs: ['activeTabIndex', 'aria', 'background', 'compact', 'size', 'weight'],\n outputs: ['update'],\n standalone: false\n})\nexport class PTabs extends BaseComponent {\n activeTabIndex?: number;\n aria?: SelectedAriaAttributes<TabsAriaAttribute>;\n background?: TabsBackground;\n compact?: boolean;\n size?: BreakpointCustomizable<TabsSize>;\n /** @deprecated */\n weight?: TabsWeight;\n update = new EventEmitter<CustomEvent<TabsUpdateEventDetail>>();\n \n}","import { Component, EventEmitter } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, TabsBarAriaAttribute, TabsBarBackground, TabsBarUpdateEventDetail, BreakpointCustomizable, TabsBarSize, TabsBarWeight } from '../types';\n\nexport type PTabsBarProps = {\n /**\n * Sets the zero-based index of the currently active tab. Pass `undefined` to render all tabs in an unselected state.\n */\n activeTabIndex?: number | undefined;\n /**\n * Sets ARIA attributes on the tablist, such as `aria-label` and `aria-description`.\n */\n aria?: SelectedAriaAttributes<TabsBarAriaAttribute>;\n /**\n * Sets the background color of the tabs bar. Use `frosted` only when placed on top of images, videos, or gradients.\n * @default 'none'\n */\n background?: TabsBarBackground;\n /**\n * Reduces the tab height and padding for use in dense layouts where vertical space is limited.\n */\n compact?: boolean;\n /**\n * Sets the font size of the tab labels using the PDS typographic scale. Supports responsive breakpoint values.\n * @default 'small'\n */\n size?: BreakpointCustomizable<TabsBarSize>;\n /**\n * @deprecated Will be removed in the next major release. Has no effect anymore.\n * @default 'regular'\n */\n weight?: TabsBarWeight;\n};\n\n@Component({\n selector: 'p-tabs-bar,[p-tabs-bar]',\n template: '<ng-content />',\n inputs: ['activeTabIndex', 'aria', 'background', 'compact', 'size', 'weight'],\n outputs: ['update'],\n standalone: false\n})\nexport class PTabsBar extends BaseComponent {\n activeTabIndex?: number | undefined;\n aria?: SelectedAriaAttributes<TabsBarAriaAttribute>;\n background?: TabsBarBackground;\n compact?: boolean;\n size?: BreakpointCustomizable<TabsBarSize>;\n /** @deprecated */\n weight?: TabsBarWeight;\n update = new EventEmitter<CustomEvent<TabsBarUpdateEventDetail>>();\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTabsItemProps = {\n /**\n * Sets the label text displayed in the tab navigation button that the user clicks to activate this tab's content.\n */\n label: string;\n};\n\n@Component({\n selector: 'p-tabs-item,[p-tabs-item]',\n template: '<ng-content />',\n inputs: ['label'],\n standalone: false\n})\nexport class PTabsItem extends BaseComponent {\n label!: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TagIcon, TagVariant } from '../types';\n\nexport type PTagProps = {\n /**\n * Reduces the tag's padding and height for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets the icon displayed inside the tag alongside the label. Use `none` to render the tag without an icon.\n * @default 'none'\n */\n icon?: TagIcon;\n /**\n * Sets a URL to a custom SVG icon, overriding the built-in icon set when a brand-specific icon is needed.\n */\n iconSource?: string;\n /**\n * Sets the visual style of the tag, which controls its background and text colors (e.g. `primary`, `secondary`, `notification-info`).\n * @default 'secondary'\n */\n variant?: TagVariant;\n};\n\n@Component({\n selector: 'p-tag,[p-tag]',\n template: '<ng-content />',\n inputs: ['compact', 'icon', 'iconSource', 'variant'],\n standalone: false\n})\nexport class PTag extends BaseComponent {\n compact?: boolean;\n icon?: TagIcon;\n iconSource?: string;\n variant?: TagVariant;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, TagDismissibleAriaAttribute } from '../types';\n\nexport type PTagDismissibleProps = {\n /**\n * Sets ARIA attributes on the dismiss button element, for example use `aria-label` to provide a descriptive close action for screen readers.\n */\n aria?: SelectedAriaAttributes<TagDismissibleAriaAttribute>;\n /**\n * Reduces the tag's padding and height for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Sets the visible label text displayed inside the tag alongside the dismiss button.\n */\n label?: string;\n};\n\n@Component({\n selector: 'p-tag-dismissible,[p-tag-dismissible]',\n template: '<ng-content />',\n inputs: ['aria', 'compact', 'label'],\n standalone: false\n})\nexport class PTagDismissible extends BaseComponent {\n aria?: SelectedAriaAttributes<TagDismissibleAriaAttribute>;\n compact?: boolean;\n label?: string;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TextAlign, TextColor, TextHyphens, BreakpointCustomizable, TextSize, TextTag, TextWeight } from '../types';\n\nexport type PTextProps = {\n /**\n * Text alignment of the text. Use 'start' for left-aligned text (in LTR), 'center' for centered, 'end' for right-aligned (in LTR), or 'inherit' to adopt the parent's alignment.\n * @default 'start'\n */\n align?: TextAlign;\n /**\n * Text color of the text. Use 'primary' for default, 'contrast-higher' / 'contrast-high' / 'contrast-medium' for alternative emphasis levels, 'success' / 'warning' / 'error' / 'info' for status messages, or 'inherit' to adopt the parent's color.\n * @default 'primary'\n */\n color?: TextColor;\n /**\n * Adds an ellipsis to a single line of text if it overflows the container width. When enabled, the text is truncated to a single line with `text-overflow: ellipsis`. Cannot be combined with multi-line content.\n * @default false\n */\n ellipsis?: boolean;\n /**\n * Controls the hyphenation behavior of the text. Use 'auto' to let the browser automatically hyphenate words at appropriate points, 'manual' to only hyphenate at manually inserted hyphenation points (e.g. `­`), 'none' to disable hyphenation entirely, or 'inherit' to adopt the parent's hyphenation setting.\n * @default 'inherit'\n */\n hyphens?: TextHyphens;\n /**\n * Size of the text. Also defines the size for specific breakpoints, like {base: \"sm\", l: \"md\"}. You always need to provide a base value when doing this. Use 'inherit' to adopt the parent's font size.\n * @default 'sm'\n */\n size?: BreakpointCustomizable<TextSize>;\n /**\n * Sets the HTML tag of the rendered element to ensure correct semantic meaning (e.g. 'p' for paragraphs, 'blockquote' for quotes, 'time' for dates).\n * @default 'p'\n */\n tag?: TextTag;\n /**\n * The font weight of the text. Use 'normal' for regular body text, 'semibold' for slightly emphasized text, or 'bold' for strong emphasis.\n * @default 'normal'\n */\n weight?: TextWeight;\n};\n\n@Component({\n selector: 'p-text,[p-text]',\n template: '<ng-content />',\n inputs: ['align', 'color', 'ellipsis', 'hyphens', 'size', 'tag', 'weight'],\n standalone: false\n})\nexport class PText extends BaseComponent {\n align?: TextAlign;\n color?: TextColor;\n ellipsis?: boolean;\n hyphens?: TextHyphens;\n size?: BreakpointCustomizable<TextSize>;\n tag?: TextTag;\n weight?: TextWeight;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { TextListType } from '../types';\n\nexport type PTextListProps = {\n /**\n * Sets the list type to either `unordered` (bulleted) or `ordered` (numbered), controlling the rendered HTML element (`ul` vs `ol`).\n * @default 'unordered'\n */\n type?: TextListType;\n};\n\n@Component({\n selector: 'p-text-list,[p-text-list]',\n template: '<ng-content />',\n inputs: ['type'],\n standalone: false\n})\nexport class PTextList extends BaseComponent {\n type?: TextListType;\n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PTextListItemProps = {\n};\n\n@Component({\n selector: 'p-text-list-item,[p-text-list-item]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PTextListItem extends BaseComponent {\n \n \n}","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Renderer2, forwardRef } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { BreakpointCustomizable, TextareaBlurEventDetail, TextareaChangeEventDetail, TextareaInputEventDetail, TextareaResize, TextareaState, TextareaWrap } from '../types';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport type PTextareaProps = {\n /**\n * Provides the browser with a hint to enable text autofill suggestions for the textarea (e.g. `autocomplete='on'`).\n */\n autoComplete?: string;\n /**\n * Reduces the textarea's initial height and padding for use in dense layouts where vertical space is limited.\n * @default false\n */\n compact?: boolean;\n /**\n * Shows a live character counter below the textarea indicating how many characters the user has typed relative to `maxLength`.\n * @default false\n */\n counter?: boolean;\n /**\n * Sets a supplementary description displayed below the label to give users additional guidance about the textarea.\n * @default ''\n */\n description?: string;\n /**\n * Prevents user interaction with the textarea and excludes its value from form submissions.\n * @default false\n */\n disabled?: boolean;\n /**\n * Associates the textarea with a form element by its ID when the textarea is not a direct descendant of that form.\n */\n form?: string;\n /**\n * Hides the visible label while keeping it accessible to screen readers. Supports responsive breakpoint values.\n * @default false\n */\n hideLabel?: BreakpointCustomizable<boolean>;\n /**\n * Sets the visible label text displayed above the textarea to identify its purpose.\n * @default ''\n */\n label?: string;\n /**\n * Sets the maximum number of characters the user is allowed to enter into the textarea.\n */\n maxLength?: number;\n /**\n * Sets the validation feedback message displayed below the textarea when `state` is `success` or `error`.\n * @default ''\n */\n message?: string;\n /**\n * Sets the minimum number of characters required for the textarea's value to pass constraint validation.\n */\n minLength?: number;\n /**\n * Sets the name of the textarea submitted with the form data to identify this field's value on the server.\n */\n name: string;\n /**\n * Sets placeholder text displayed inside the textarea when it is empty to hint at the expected content format.\n * @default ''\n */\n placeholder?: string;\n /**\n * Makes the textarea read-only so users cannot modify the value, while still including it in form submissions.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Marks the textarea as required so the form cannot be submitted while this field is empty.\n * @default false\n */\n required?: boolean;\n /**\n * Controls whether and in which direction the user can resize the textarea (`horizontal`, `vertical`, `both`, or `none`).\n * @default 'vertical'\n */\n resize?: TextareaResize;\n /**\n * Sets the initial visible height of the textarea in lines of text. Has no effect when the `--p-textarea-field-sizing` CSS variable is set to `content`.\n * @default 7\n */\n rows?: number;\n /**\n * Controls whether the browser's built-in spell-checking and grammar checking is enabled for the textarea content.\n */\n spellCheck?: boolean;\n /**\n * Sets the validation state of the textarea, which controls its visual appearance and feedback message style (`none`, `success`, `error`).\n * @default 'none'\n */\n state?: TextareaState;\n /**\n * Sets the current multi-line text value of the textarea and reflects any changes made by the user.\n * @default ''\n */\n value?: string | null;\n /**\n * Controls how the submitted text wraps in the form data: `soft` wraps only visually, `hard` inserts line breaks at the textarea width.\n * @default 'soft'\n */\n wrap?: TextareaWrap;\n};\n\n@Component({\n selector: 'p-textarea,[p-textarea]',\n template: '<ng-content />',\n inputs: ['autoComplete', 'compact', 'counter', 'description', 'disabled', 'form', 'hideLabel', 'label', 'maxLength', 'message', 'minLength', 'name', 'placeholder', 'readOnly', 'required', 'resize', 'rows', 'spellCheck', 'state', 'value', 'wrap'],\n outputs: ['blur', 'change', 'input'],\n standalone: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PTextarea),\n multi: true,\n },\n ],\n host: {\n '(input)': '_onChange($event.target.value)',\n '(blur)': '_onTouched()'\n }\n})\nexport class PTextarea extends BaseComponent implements ControlValueAccessor {\n autoComplete?: string;\n compact?: boolean;\n counter?: boolean;\n description?: string;\n disabled?: boolean;\n form?: string;\n hideLabel?: BreakpointCustomizable<boolean>;\n label?: string;\n maxLength?: number;\n message?: string;\n minLength?: number;\n name!: string;\n placeholder?: string;\n readOnly?: boolean;\n required?: boolean;\n resize?: TextareaResize;\n rows?: number;\n spellCheck?: boolean;\n state?: TextareaState;\n value?: string | null;\n wrap?: TextareaWrap;\n blur = new EventEmitter<CustomEvent<TextareaBlurEventDetail>>();\n change = new EventEmitter<CustomEvent<TextareaChangeEventDetail>>();\n input = new EventEmitter<CustomEvent<TextareaInputEventDetail>>();\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {\n super(_cdr, _elementRef);\n }\n\n _onChange: (value: any) => void = () => {};\n _onTouched: () => void = () => {};\n\n writeValue(value: any): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\n\nexport type PToastProps = {\n};\n\n@Component({\n selector: 'p-toast,[p-toast]',\n template: '<ng-content />',\n standalone: false\n})\nexport class PToast extends BaseComponent {\n \n \n}","import { Component } from '@angular/core';\nimport { BaseComponent } from '../../utils';\nimport type { SelectedAriaAttributes, WordmarkAriaAttribute, WordmarkSize, WordmarkTarget } from '../types';\n\nexport type PWordmarkProps = {\n /**\n * Sets ARIA attributes on the anchor element to improve accessibility when the wordmark is used as a link.\n */\n aria?: SelectedAriaAttributes<WordmarkAriaAttribute>;\n /**\n * When set, wraps the wordmark in an anchor element that navigates to the given URL on click.\n */\n href?: string;\n /**\n * Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens (`small`, `medium`, `large`, `inherit`).\n * @default 'small'\n */\n size?: WordmarkSize;\n /**\n * Specifies where to open the linked URL when `href` is set (e.g. `_self`, `_blank`).\n * @default '_self'\n */\n target?: WordmarkTarget;\n};\n\n@Component({\n selector: 'p-wordmark,[p-wordmark]',\n template: '<ng-content />',\n inputs: ['aria', 'href', 'size', 'target'],\n standalone: false\n})\nexport class PWordmark extends BaseComponent {\n aria?: SelectedAriaAttributes<WordmarkAriaAttribute>;\n href?: string;\n size?: WordmarkSize;\n target?: WordmarkTarget;\n \n}","import { PAccordion } from './accordion.wrapper';\nimport { PAiTag } from './ai-tag.wrapper';\nimport { PBanner } from './banner.wrapper';\nimport { PButton } from './button.wrapper';\nimport { PButtonPure } from './button-pure.wrapper';\nimport { PButtonTile } from './button-tile.wrapper';\nimport { PCanvas } from './canvas.wrapper';\nimport { PCarousel } from './carousel.wrapper';\nimport { PCheckbox } from './checkbox.wrapper';\nimport { PCrest } from './crest.wrapper';\nimport { PDisplay } from './display.wrapper';\nimport { PDivider } from './divider.wrapper';\nimport { PDrilldown } from './drilldown.wrapper';\nimport { PDrilldownItem } from './drilldown-item.wrapper';\nimport { PDrilldownLink } from './drilldown-link.wrapper';\nimport { PFieldset } from './fieldset.wrapper';\nimport { PFlag } from './flag.wrapper';\nimport { PFlyout } from './flyout.wrapper';\nimport { PHeading } from './heading.wrapper';\nimport { PIcon } from './icon.wrapper';\nimport { PInlineNotification } from './inline-notification.wrapper';\nimport { PInputDate } from './input-date.wrapper';\nimport { PInputEmail } from './input-email.wrapper';\nimport { PInputMonth } from './input-month.wrapper';\nimport { PInputNumber } from './input-number.wrapper';\nimport { PInputPassword } from './input-password.wrapper';\nimport { PInputSearch } from './input-search.wrapper';\nimport { PInputTel } from './input-tel.wrapper';\nimport { PInputText } from './input-text.wrapper';\nimport { PInputTime } from './input-time.wrapper';\nimport { PInputUrl } from './input-url.wrapper';\nimport { PInputWeek } from './input-week.wrapper';\nimport { PLink } from './link.wrapper';\nimport { PLinkPure } from './link-pure.wrapper';\nimport { PLinkTile } from './link-tile.wrapper';\nimport { PLinkTileProduct } from './link-tile-product.wrapper';\nimport { PModal } from './modal.wrapper';\nimport { PModelSignature } from './model-signature.wrapper';\nimport { PMultiSelect } from './multi-select.wrapper';\nimport { PMultiSelectOption } from './multi-select-option.wrapper';\nimport { POptgroup } from './optgroup.wrapper';\nimport { PPagination } from './pagination.wrapper';\nimport { PPinCode } from './pin-code.wrapper';\nimport { PPopover } from './popover.wrapper';\nimport { PRadioGroup } from './radio-group.wrapper';\nimport { PRadioGroupOption } from './radio-group-option.wrapper';\nimport { PScroller } from './scroller.wrapper';\nimport { PSegmentedControl } from './segmented-control.wrapper';\nimport { PSegmentedControlItem } from './segmented-control-item.wrapper';\nimport { PSelect } from './select.wrapper';\nimport { PSelectOption } from './select-option.wrapper';\nimport { PSheet } from './sheet.wrapper';\nimport { PSpinner } from './spinner.wrapper';\nimport { PStepperHorizontal } from './stepper-horizontal.wrapper';\nimport { PStepperHorizontalItem } from './stepper-horizontal-item.wrapper';\nimport { PSwitch } from './switch.wrapper';\nimport { PTable } from './table.wrapper';\nimport { PTableBody } from './table-body.wrapper';\nimport { PTableCell } from './table-cell.wrapper';\nimport { PTableHead } from './table-head.wrapper';\nimport { PTableHeadCell } from './table-head-cell.wrapper';\nimport { PTableHeadRow } from './table-head-row.wrapper';\nimport { PTableRow } from './table-row.wrapper';\nimport { PTabs } from './tabs.wrapper';\nimport { PTabsBar } from './tabs-bar.wrapper';\nimport { PTabsItem } from './tabs-item.wrapper';\nimport { PTag } from './tag.wrapper';\nimport { PTagDismissible } from './tag-dismissible.wrapper';\nimport { PText } from './text.wrapper';\nimport { PTextList } from './text-list.wrapper';\nimport { PTextListItem } from './text-list-item.wrapper';\nimport { PTextarea } from './textarea.wrapper';\nimport { PToast } from './toast.wrapper';\nimport { PWordmark } from './wordmark.wrapper';\n\nexport const DECLARATIONS = [\n PAccordion,\n PAiTag,\n PBanner,\n PButton,\n PButtonPure,\n PButtonTile,\n PCanvas,\n PCarousel,\n PCheckbox,\n PCrest,\n PDisplay,\n PDivider,\n PDrilldown,\n PDrilldownItem,\n PDrilldownLink,\n PFieldset,\n PFlag,\n PFlyout,\n PHeading,\n PIcon,\n PInlineNotification,\n PInputDate,\n PInputEmail,\n PInputMonth,\n PInputNumber,\n PInputPassword,\n PInputSearch,\n PInputTel,\n PInputText,\n PInputTime,\n PInputUrl,\n PInputWeek,\n PLink,\n PLinkPure,\n PLinkTile,\n PLinkTileProduct,\n PModal,\n PModelSignature,\n PMultiSelect,\n PMultiSelectOption,\n POptgroup,\n PPagination,\n PPinCode,\n PPopover,\n PRadioGroup,\n PRadioGroupOption,\n PScroller,\n PSegmentedControl,\n PSegmentedControlItem,\n PSelect,\n PSelectOption,\n PSheet,\n PSpinner,\n PStepperHorizontal,\n PStepperHorizontalItem,\n PSwitch,\n PTable,\n PTableBody,\n PTableCell,\n PTableHead,\n PTableHeadCell,\n PTableHeadRow,\n PTableRow,\n PTabs,\n PTabsBar,\n PTabsItem,\n PTag,\n PTagDismissible,\n PText,\n PTextList,\n PTextListItem,\n PTextarea,\n PToast,\n PWordmark\n];\n\nexport * from './accordion.wrapper';\nexport * from './ai-tag.wrapper';\nexport * from './banner.wrapper';\nexport * from './button.wrapper';\nexport * from './button-pure.wrapper';\nexport * from './button-tile.wrapper';\nexport * from './canvas.wrapper';\nexport * from './carousel.wrapper';\nexport * from './checkbox.wrapper';\nexport * from './crest.wrapper';\nexport * from './display.wrapper';\nexport * from './divider.wrapper';\nexport * from './drilldown.wrapper';\nexport * from './drilldown-item.wrapper';\nexport * from './drilldown-link.wrapper';\nexport * from './fieldset.wrapper';\nexport * from './flag.wrapper';\nexport * from './flyout.wrapper';\nexport * from './heading.wrapper';\nexport * from './icon.wrapper';\nexport * from './inline-notification.wrapper';\nexport * from './input-date.wrapper';\nexport * from './input-email.wrapper';\nexport * from './input-month.wrapper';\nexport * from './input-number.wrapper';\nexport * from './input-password.wrapper';\nexport * from './input-search.wrapper';\nexport * from './input-tel.wrapper';\nexport * from './input-text.wrapper';\nexport * from './input-time.wrapper';\nexport * from './input-url.wrapper';\nexport * from './input-week.wrapper';\nexport * from './link.wrapper';\nexport * from './link-pure.wrapper';\nexport * from './link-tile.wrapper';\nexport * from './link-tile-product.wrapper';\nexport * from './modal.wrapper';\nexport * from './model-signature.wrapper';\nexport * from './multi-select.wrapper';\nexport * from './multi-select-option.wrapper';\nexport * from './optgroup.wrapper';\nexport * from './pagination.wrapper';\nexport * from './pin-code.wrapper';\nexport * from './popover.wrapper';\nexport * from './radio-group.wrapper';\nexport * from './radio-group-option.wrapper';\nexport * from './scroller.wrapper';\nexport * from './segmented-control.wrapper';\nexport * from './segmented-control-item.wrapper';\nexport * from './select.wrapper';\nexport * from './select-option.wrapper';\nexport * from './sheet.wrapper';\nexport * from './spinner.wrapper';\nexport * from './stepper-horizontal.wrapper';\nexport * from './stepper-horizontal-item.wrapper';\nexport * from './switch.wrapper';\nexport * from './table.wrapper';\nexport * from './table-body.wrapper';\nexport * from './table-cell.wrapper';\nexport * from './table-head.wrapper';\nexport * from './table-head-cell.wrapper';\nexport * from './table-head-row.wrapper';\nexport * from './table-row.wrapper';\nexport * from './tabs.wrapper';\nexport * from './tabs-bar.wrapper';\nexport * from './tabs-item.wrapper';\nexport * from './tag.wrapper';\nexport * from './tag-dismissible.wrapper';\nexport * from './text.wrapper';\nexport * from './text-list.wrapper';\nexport * from './text-list-item.wrapper';\nexport * from './textarea.wrapper';\nexport * from './toast.wrapper';\nexport * from './wordmark.wrapper';","import { type ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { load } from '@porsche-design-system/components-js';\nimport { DECLARATIONS } from './lib/components/barrel';\n\nexport type PorscheDesignSystemModuleConfig = {\n prefix?: string;\n cdn?: 'auto' | 'cn';\n};\n\nexport class DefaultConfig implements PorscheDesignSystemModuleConfig {\n prefix = '';\n}\n\n// TODO: unit tests are missing\n@NgModule({\n declarations: DECLARATIONS,\n exports: DECLARATIONS,\n})\nexport class PorscheDesignSystemModule {\n constructor(@Optional() configParam: DefaultConfig) {\n const configs = (configParam as unknown as DefaultConfig[]) || [new DefaultConfig()];\n configs.forEach(load);\n }\n\n static load(config: PorscheDesignSystemModuleConfig): ModuleWithProviders<PorscheDesignSystemModule> {\n return {\n ngModule: PorscheDesignSystemModule,\n providers: [\n {\n provide: DefaultConfig,\n multi: true, // to support multiple prefixes in same module\n useValue: config,\n },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport type { ToastMessage } from './public-api';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ToastManager {\n public addMessage(message: ToastMessage): void {\n const toast = document.body.querySelector('p-toast,[p-toast]') as HTMLElement & {\n addMessage(message: ToastMessage): void;\n };\n customElements.whenDefined(toast.tagName.toLowerCase()).then(() => toast.addMessage(message));\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.PAccordion","i2.PAiTag","i3.PBanner","i4.PButton","i5.PButtonPure","i6.PButtonTile","i7.PCanvas","i8.PCarousel","i9.PCheckbox","i10.PCrest","i11.PDisplay","i12.PDivider","i13.PDrilldown","i14.PDrilldownItem","i15.PDrilldownLink","i16.PFieldset","i17.PFlag","i18.PFlyout","i19.PHeading","i20.PIcon","i21.PInlineNotification","i22.PInputDate","i23.PInputEmail","i24.PInputMonth","i25.PInputNumber","i26.PInputPassword","i27.PInputSearch","i28.PInputTel","i29.PInputText","i30.PInputTime","i31.PInputUrl","i32.PInputWeek","i33.PLink","i34.PLinkPure","i35.PLinkTile","i36.PLinkTileProduct","i37.PModal","i38.PModelSignature","i39.PMultiSelect","i40.PMultiSelectOption","i41.POptgroup","i42.PPagination","i43.PPinCode","i44.PPopover","i45.PRadioGroup","i46.PRadioGroupOption","i47.PScroller","i48.PSegmentedControl","i49.PSegmentedControlItem","i50.PSelect","i51.PSelectOption","i52.PSheet","i53.PSpinner","i54.PStepperHorizontal","i55.PStepperHorizontalItem","i56.PSwitch","i57.PTable","i58.PTableBody","i59.PTableCell","i60.PTableHead","i61.PTableHeadCell","i62.PTableHeadRow","i63.PTableRow","i64.PTabs","i65.PTabsBar","i66.PTabsItem","i67.PTag","i68.PTagDismissible","i69.PText","i70.PTextList","i71.PTextListItem","i72.PTextarea","i73.PToast","i74.PWordmark"],"mappings":"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"}
|