@porsche-design-system/components-react 4.6.0-rc.1 → 4.6.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/CHANGELOG.md +84 -2
  2. package/OSS_NOTICE +5532 -2115
  3. package/cjs/lib/components/ai-tag.wrapper.cjs +1 -1
  4. package/cjs/lib/components/radio-group.wrapper.cjs +1 -1
  5. package/esm/lib/components/ai-tag.wrapper.d.ts +4 -4
  6. package/esm/lib/components/ai-tag.wrapper.mjs +1 -1
  7. package/esm/lib/components/drilldown.wrapper.d.ts +5 -5
  8. package/esm/lib/components/flyout.wrapper.d.ts +5 -5
  9. package/esm/lib/components/input-number.wrapper.d.ts +6 -6
  10. package/esm/lib/components/input-text.wrapper.d.ts +6 -6
  11. package/esm/lib/components/modal.wrapper.d.ts +5 -5
  12. package/esm/lib/components/multi-select-option.wrapper.d.ts +2 -2
  13. package/esm/lib/components/pin-code.wrapper.d.ts +6 -6
  14. package/esm/lib/components/popover.wrapper.d.ts +5 -5
  15. package/esm/lib/components/radio-group-option.wrapper.d.ts +4 -4
  16. package/esm/lib/components/radio-group.wrapper.d.ts +4 -6
  17. package/esm/lib/components/radio-group.wrapper.mjs +1 -1
  18. package/esm/lib/components/segmented-control.wrapper.d.ts +4 -4
  19. package/esm/lib/components/sheet.wrapper.d.ts +5 -5
  20. package/esm/lib/components/wordmark.wrapper.d.ts +2 -2
  21. package/esm/lib/types.d.ts +195 -213
  22. package/package.json +6 -2
  23. package/skills/pds-knowledge-react/SKILL.md +3 -3
  24. package/skills/pds-knowledge-react/references/components/p-ai-tag/p-ai-tag.md +2 -2
  25. package/skills/pds-knowledge-react/references/components/p-button/p-button.md +1 -1
  26. package/skills/pds-knowledge-react/references/components/p-button-pure/p-button-pure.md +1 -1
  27. package/skills/pds-knowledge-react/references/components/p-button-tile/p-button-tile.md +1 -1
  28. package/skills/pds-knowledge-react/references/components/p-carousel/p-carousel.md +1 -1
  29. package/skills/pds-knowledge-react/references/components/p-drilldown/p-drilldown.md +1 -1
  30. package/skills/pds-knowledge-react/references/components/p-flyout/p-flyout.md +1 -1
  31. package/skills/pds-knowledge-react/references/components/p-icon/examples/Overview.tsx +6 -0
  32. package/skills/pds-knowledge-react/references/components/p-icon/p-icon.md +1 -1
  33. package/skills/pds-knowledge-react/references/components/p-inline-notification/p-inline-notification.md +1 -1
  34. package/skills/pds-knowledge-react/references/components/p-input-number/p-input-number.md +3 -3
  35. package/skills/pds-knowledge-react/references/components/p-input-text/p-input-text.md +3 -3
  36. package/skills/pds-knowledge-react/references/components/p-link/p-link.md +1 -1
  37. package/skills/pds-knowledge-react/references/components/p-link-pure/p-link-pure.md +1 -1
  38. package/skills/pds-knowledge-react/references/components/p-modal/p-modal.md +1 -1
  39. package/skills/pds-knowledge-react/references/components/p-multi-select/examples/AsyncFilter.tsx +29 -6
  40. package/skills/pds-knowledge-react/references/components/p-multi-select/p-multi-select.md +2 -2
  41. package/skills/pds-knowledge-react/references/components/p-pin-code/p-pin-code.md +2 -2
  42. package/skills/pds-knowledge-react/references/components/p-popover/p-popover.md +1 -1
  43. package/skills/pds-knowledge-react/references/components/p-radio-group/examples/Form.tsx +2 -2
  44. package/skills/pds-knowledge-react/references/components/p-radio-group/p-radio-group.md +3 -3
  45. package/skills/pds-knowledge-react/references/components/p-segmented-control/p-segmented-control.md +2 -2
  46. package/skills/pds-knowledge-react/references/components/p-select/examples/AsyncFilter.tsx +29 -6
  47. package/skills/pds-knowledge-react/references/components/p-select/p-select.md +1 -1
  48. package/skills/pds-knowledge-react/references/components/p-sheet/p-sheet.md +1 -1
  49. package/skills/pds-knowledge-react/references/components/p-table/p-table.md +1 -1
  50. package/skills/pds-knowledge-react/references/components/p-tag/p-tag.md +1 -1
  51. package/skills/pds-knowledge-react/references/components/p-wordmark/p-wordmark.md +1 -1
  52. package/skills/pds-knowledge-react/references/icons.md +1 -1
  53. package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +203 -4
  54. package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +267 -40
  55. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/ai-tag.wrapper.cjs +1 -1
  56. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/radio-group.wrapper.cjs +1 -1
  57. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.cjs +4 -1
  58. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/drilldown.cjs +1 -0
  59. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/filter-status-announcer.cjs +7 -0
  60. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.cjs +3 -0
  61. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.cjs +3 -0
  62. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +3 -1
  63. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/no-results-option.cjs +1 -1
  64. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.cjs +7 -3
  65. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-group.cjs +4 -0
  66. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.cjs +5 -1
  67. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select.cjs +3 -4
  68. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/sheet.cjs +3 -0
  69. package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +203 -5
  70. package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +260 -41
  71. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/ai-tag.wrapper.mjs +1 -1
  72. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/radio-group.wrapper.mjs +1 -1
  73. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.mjs +4 -1
  74. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/drilldown.mjs +1 -0
  75. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/filter-status-announcer.mjs +5 -0
  76. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.mjs +4 -1
  77. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.mjs +4 -1
  78. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +3 -1
  79. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/no-results-option.mjs +1 -1
  80. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.mjs +7 -3
  81. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-group.mjs +4 -0
  82. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.mjs +5 -1
  83. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select.mjs +3 -4
  84. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/sheet.mjs +4 -1
  85. package/ssr/esm/lib/components/ai-tag.wrapper.d.ts +4 -4
  86. package/ssr/esm/lib/components/drilldown.wrapper.d.ts +5 -5
  87. package/ssr/esm/lib/components/flyout.wrapper.d.ts +5 -5
  88. package/ssr/esm/lib/components/input-number.wrapper.d.ts +6 -6
  89. package/ssr/esm/lib/components/input-text.wrapper.d.ts +6 -6
  90. package/ssr/esm/lib/components/modal.wrapper.d.ts +5 -5
  91. package/ssr/esm/lib/components/multi-select-option.wrapper.d.ts +2 -2
  92. package/ssr/esm/lib/components/pin-code.wrapper.d.ts +6 -6
  93. package/ssr/esm/lib/components/popover.wrapper.d.ts +5 -5
  94. package/ssr/esm/lib/components/radio-group-option.wrapper.d.ts +4 -4
  95. package/ssr/esm/lib/components/radio-group.wrapper.d.ts +4 -6
  96. package/ssr/esm/lib/components/segmented-control.wrapper.d.ts +4 -4
  97. package/ssr/esm/lib/components/sheet.wrapper.d.ts +5 -5
  98. package/ssr/esm/lib/components/wordmark.wrapper.d.ts +2 -2
  99. package/ssr/esm/lib/dsr-components/carousel.d.ts +3 -0
  100. package/ssr/esm/lib/dsr-components/drilldown.d.ts +1 -0
  101. package/ssr/esm/lib/dsr-components/filter-status-announcer.d.ts +6 -0
  102. package/ssr/esm/lib/dsr-components/flyout.d.ts +3 -0
  103. package/ssr/esm/lib/dsr-components/modal.d.ts +3 -0
  104. package/ssr/esm/lib/dsr-components/multi-select.d.ts +1 -0
  105. package/ssr/esm/lib/dsr-components/pin-code.d.ts +1 -0
  106. package/ssr/esm/lib/dsr-components/radio-group.d.ts +1 -0
  107. package/ssr/esm/lib/dsr-components/segmented-control.d.ts +1 -0
  108. package/ssr/esm/lib/dsr-components/select.d.ts +1 -1
  109. package/ssr/esm/lib/dsr-components/sheet.d.ts +3 -0
  110. package/ssr/esm/lib/types.d.ts +195 -213
@@ -6,7 +6,7 @@ var react = require('react');
6
6
  var hooks = require('../../hooks.cjs');
7
7
  var utils = require('../../utils.cjs');
8
8
 
9
- const PAiTag = /*#__PURE__*/ react.forwardRef(({ locale = 'en_US', variant = 'generated', className, ...rest }, ref) => {
9
+ const PAiTag = /*#__PURE__*/ react.forwardRef(({ locale = 'en-US', variant = 'generated', className, ...rest }, ref) => {
10
10
  const elementRef = react.useRef(undefined);
11
11
  const WebComponentTag = hooks.usePrefix('p-ai-tag');
12
12
  const propsToSync = [locale, variant];
@@ -6,7 +6,7 @@ var react = require('react');
6
6
  var hooks = require('../../hooks.cjs');
7
7
  var utils = require('../../utils.cjs');
8
8
 
9
- const PRadioGroup = /*#__PURE__*/ react.forwardRef(({ compact = false, description = '', direction = 'column', disabled = false, form, hideLabel = false, label = '', loading = false, message = '', name, onBlur, onChange, required = false, state = 'none', value = '', className, ...rest }, ref) => {
9
+ const PRadioGroup = /*#__PURE__*/ react.forwardRef(({ compact = false, description = '', direction = 'column', disabled = false, form, hideLabel = false, label = '', loading = false, message = '', name, onBlur, onChange, required = false, state = 'none', value, className, ...rest }, ref) => {
10
10
  const elementRef = react.useRef(undefined);
11
11
  hooks.useEventCallback(elementRef, 'blur', onBlur);
12
12
  hooks.useEventCallback(elementRef, 'change', onChange);
@@ -2,8 +2,8 @@ import type { BaseProps } from '../../BaseProps';
2
2
  import type { AiTagLocale, AiTagVariant } from '../types';
3
3
  export type PAiTagProps = BaseProps & {
4
4
  /**
5
- * Locale for the AI text (ISO format, e.g. "de_DE").
6
- * @default 'en_US'
5
+ * Market locale for the AI text (BCP47, e.g. `en-US`). Language-only `en` is supported for international markets. POSIX forms (e.g. `en_US`) are deprecated but still accepted. Copy is resolved by language; unknown languages fall back to English.
6
+ * @default 'en-US'
7
7
  */
8
8
  locale?: AiTagLocale;
9
9
  /**
@@ -14,8 +14,8 @@ export type PAiTagProps = BaseProps & {
14
14
  };
15
15
  export declare const PAiTag: import("react").ForwardRefExoticComponent<Omit<import("react").DOMAttributes<{}>, "onChange" | "onInput" | "onToggle"> & Pick<import("react").HTMLAttributes<{}>, "suppressHydrationWarning" | "autoFocus" | "className" | "dir" | "hidden" | "id" | "inert" | "inputMode" | "lang" | "slot" | "style" | "tabIndex" | "title" | "translate" | "role"> & {
16
16
  /**
17
- * Locale for the AI text (ISO format, e.g. "de_DE").
18
- * @default 'en_US'
17
+ * Market locale for the AI text (BCP47, e.g. `en-US`). Language-only `en` is supported for international markets. POSIX forms (e.g. `en_US`) are deprecated but still accepted. Copy is resolved by language; unknown languages fall back to English.
18
+ * @default 'en-US'
19
19
  */
20
20
  locale?: AiTagLocale;
21
21
  /**
@@ -4,7 +4,7 @@ import { forwardRef, useRef } from 'react';
4
4
  import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
5
5
  import { syncRef } from '../../utils.mjs';
6
6
 
7
- const PAiTag = /*#__PURE__*/ forwardRef(({ locale = 'en_US', variant = 'generated', className, ...rest }, ref) => {
7
+ const PAiTag = /*#__PURE__*/ forwardRef(({ locale = 'en-US', variant = 'generated', className, ...rest }, ref) => {
8
8
  const elementRef = useRef(undefined);
9
9
  const WebComponentTag = usePrefix('p-ai-tag');
10
10
  const propsToSync = [locale, variant];
@@ -1,5 +1,5 @@
1
1
  import type { BaseProps } from '../../BaseProps';
2
- import type { SelectedAriaAttributes, DrilldownAriaAttribute, DrilldownUpdateEventDetail } from '../types';
2
+ import type { SelectedAriaAttributes, DrilldownAriaAttribute, DrilldownDismissEventDetail, DrilldownUpdateEventDetail } from '../types';
3
3
  export type PDrilldownProps = BaseProps & {
4
4
  /**
5
5
  * Sets which `p-drilldown-item` (by `identifier`) is currently expanded to show its sub-navigation level.
@@ -10,9 +10,9 @@ export type PDrilldownProps = BaseProps & {
10
10
  */
11
11
  aria?: SelectedAriaAttributes<DrilldownAriaAttribute>;
12
12
  /**
13
- * Emitted when the user closes the drilldown via the close button or Escape key.
13
+ * Emitted when the user closes the drilldown via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
14
14
  */
15
- onDismiss?: (event: CustomEvent<void>) => void;
15
+ onDismiss?: (event: CustomEvent<DrilldownDismissEventDetail>) => void;
16
16
  /**
17
17
  * Emitted when the active navigation level changes, with the new `activeIdentifier` in the event detail.
18
18
  */
@@ -33,9 +33,9 @@ export declare const PDrilldown: import("react").ForwardRefExoticComponent<Omit<
33
33
  */
34
34
  aria?: SelectedAriaAttributes<DrilldownAriaAttribute>;
35
35
  /**
36
- * Emitted when the user closes the drilldown via the close button or Escape key.
36
+ * Emitted when the user closes the drilldown via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
37
37
  */
38
- onDismiss?: (event: CustomEvent<void>) => void;
38
+ onDismiss?: (event: CustomEvent<DrilldownDismissEventDetail>) => void;
39
39
  /**
40
40
  * Emitted when the active navigation level changes, with the new `activeIdentifier` in the event detail.
41
41
  */
@@ -1,5 +1,5 @@
1
1
  import type { BaseProps } from '../../BaseProps';
2
- import type { SelectedAriaAttributes, FlyoutAriaAttribute, FlyoutBackdrop, FlyoutBackground, FlyoutFooterBehavior, BreakpointCustomizable, FlyoutMotionHiddenEndEventDetail, FlyoutMotionVisibleEndEventDetail, FlyoutPosition } from '../types';
2
+ import type { SelectedAriaAttributes, FlyoutAriaAttribute, FlyoutBackdrop, FlyoutBackground, FlyoutFooterBehavior, BreakpointCustomizable, FlyoutDismissEventDetail, FlyoutMotionHiddenEndEventDetail, FlyoutMotionVisibleEndEventDetail, FlyoutPosition } from '../types';
3
3
  export type PFlyoutProps = BaseProps & {
4
4
  /**
5
5
  * Sets ARIA attributes on the flyout dialog element for improved screen reader accessibility.
@@ -31,9 +31,9 @@ export type PFlyoutProps = BaseProps & {
31
31
  */
32
32
  fullscreen?: BreakpointCustomizable<boolean>;
33
33
  /**
34
- * Emitted when the user closes the flyout via the close button, backdrop click, or Escape key.
34
+ * Emitted when the user closes the flyout via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
35
35
  */
36
- onDismiss?: (event: CustomEvent<void>) => void;
36
+ onDismiss?: (event: CustomEvent<FlyoutDismissEventDetail>) => void;
37
37
  /**
38
38
  * Emitted after the flyout's close transition completes and the panel is fully hidden.
39
39
  */
@@ -84,9 +84,9 @@ export declare const PFlyout: import("react").ForwardRefExoticComponent<Omit<imp
84
84
  */
85
85
  fullscreen?: BreakpointCustomizable<boolean>;
86
86
  /**
87
- * Emitted when the user closes the flyout via the close button, backdrop click, or Escape key.
87
+ * Emitted when the user closes the flyout via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
88
88
  */
89
- onDismiss?: (event: CustomEvent<void>) => void;
89
+ onDismiss?: (event: CustomEvent<FlyoutDismissEventDetail>) => void;
90
90
  /**
91
91
  * Emitted after the flyout's close transition completes and the panel is fully hidden.
92
92
  */
@@ -66,11 +66,11 @@ export type PInputNumberProps = BaseProps & {
66
66
  */
67
67
  onBlur?: (event: CustomEvent<InputNumberBlurEventDetail>) => void;
68
68
  /**
69
- * Emitted when the number input loses focus after its value was changed.
69
+ * Emitted when the number input loses focus after its value was changed. The component value and native event target value are strings after user input.
70
70
  */
71
71
  onChange?: (event: CustomEvent<InputNumberChangeEventDetail>) => void;
72
72
  /**
73
- * Emitted when the value has been changed as a direct result of a user action.
73
+ * Emitted when the value has been changed as a direct result of a user action. The component value and native event target value are strings.
74
74
  */
75
75
  onInput?: (event: CustomEvent<InputNumberInputEventDetail>) => void;
76
76
  /**
@@ -99,7 +99,7 @@ export type PInputNumberProps = BaseProps & {
99
99
  */
100
100
  step?: number;
101
101
  /**
102
- * Sets the current numeric value of the field.
102
+ * Sets the current numeric value. Strings and numbers are accepted for programmatic assignment, but user input updates the value as a string to mirror native input behavior.
103
103
  * @default ''
104
104
  */
105
105
  value?: string | number | null;
@@ -170,11 +170,11 @@ export declare const PInputNumber: import("react").ForwardRefExoticComponent<Omi
170
170
  */
171
171
  onBlur?: (event: CustomEvent<InputNumberBlurEventDetail>) => void;
172
172
  /**
173
- * Emitted when the number input loses focus after its value was changed.
173
+ * Emitted when the number input loses focus after its value was changed. The component value and native event target value are strings after user input.
174
174
  */
175
175
  onChange?: (event: CustomEvent<InputNumberChangeEventDetail>) => void;
176
176
  /**
177
- * Emitted when the value has been changed as a direct result of a user action.
177
+ * Emitted when the value has been changed as a direct result of a user action. The component value and native event target value are strings.
178
178
  */
179
179
  onInput?: (event: CustomEvent<InputNumberInputEventDetail>) => void;
180
180
  /**
@@ -203,7 +203,7 @@ export declare const PInputNumber: import("react").ForwardRefExoticComponent<Omi
203
203
  */
204
204
  step?: number;
205
205
  /**
206
- * Sets the current numeric value of the field.
206
+ * Sets the current numeric value. Strings and numbers are accepted for programmatic assignment, but user input updates the value as a string to mirror native input behavior.
207
207
  * @default ''
208
208
  */
209
209
  value?: string | number | null;
@@ -66,11 +66,11 @@ export type PInputTextProps = BaseProps & {
66
66
  */
67
67
  onBlur?: (event: CustomEvent<InputTextBlurEventDetail>) => void;
68
68
  /**
69
- * Emitted when the input loses focus after its value was changed.
69
+ * Emitted when the input loses focus after its value was changed. The component value and native event target value are strings after user input.
70
70
  */
71
71
  onChange?: (event: CustomEvent<InputTextChangeEventDetail>) => void;
72
72
  /**
73
- * Emitted on every value change as the user types.
73
+ * Emitted on every value change as the user types. The component value and native event target value are strings.
74
74
  */
75
75
  onInput?: (event: CustomEvent<InputTextInputEventDetail>) => void;
76
76
  /**
@@ -98,7 +98,7 @@ export type PInputTextProps = BaseProps & {
98
98
  */
99
99
  state?: InputTextState;
100
100
  /**
101
- * Sets the current text value of the input field.
101
+ * Sets the current text value. Numbers are accepted for programmatic assignment, but user input updates the value as a string.
102
102
  * @default ''
103
103
  */
104
104
  value?: string | number | null;
@@ -169,11 +169,11 @@ export declare const PInputText: import("react").ForwardRefExoticComponent<Omit<
169
169
  */
170
170
  onBlur?: (event: CustomEvent<InputTextBlurEventDetail>) => void;
171
171
  /**
172
- * Emitted when the input loses focus after its value was changed.
172
+ * Emitted when the input loses focus after its value was changed. The component value and native event target value are strings after user input.
173
173
  */
174
174
  onChange?: (event: CustomEvent<InputTextChangeEventDetail>) => void;
175
175
  /**
176
- * Emitted on every value change as the user types.
176
+ * Emitted on every value change as the user types. The component value and native event target value are strings.
177
177
  */
178
178
  onInput?: (event: CustomEvent<InputTextInputEventDetail>) => void;
179
179
  /**
@@ -201,7 +201,7 @@ export declare const PInputText: import("react").ForwardRefExoticComponent<Omit<
201
201
  */
202
202
  state?: InputTextState;
203
203
  /**
204
- * Sets the current text value of the input field.
204
+ * Sets the current text value. Numbers are accepted for programmatic assignment, but user input updates the value as a string.
205
205
  * @default ''
206
206
  */
207
207
  value?: string | number | null;
@@ -1,5 +1,5 @@
1
1
  import type { BaseProps } from '../../BaseProps';
2
- import type { SelectedAriaAttributes, ModalAriaAttribute, ModalBackdrop, ModalBackground, BreakpointCustomizable, ModalMotionHiddenEndEventDetail, ModalMotionVisibleEndEventDetail } from '../types';
2
+ import type { SelectedAriaAttributes, ModalAriaAttribute, ModalBackdrop, ModalBackground, BreakpointCustomizable, ModalDismissEventDetail, ModalMotionHiddenEndEventDetail, ModalMotionVisibleEndEventDetail } from '../types';
3
3
  export type PModalProps = BaseProps & {
4
4
  /**
5
5
  * Sets ARIA attributes on the dialog element for improved accessibility when no visible heading is present.
@@ -31,9 +31,9 @@ export type PModalProps = BaseProps & {
31
31
  */
32
32
  fullscreen?: BreakpointCustomizable<boolean>;
33
33
  /**
34
- * Emitted when the user closes the modal via the dismiss button, backdrop click, or Escape key.
34
+ * Emitted when the user closes the modal via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
35
35
  */
36
- onDismiss?: (event: CustomEvent<void>) => void;
36
+ onDismiss?: (event: CustomEvent<ModalDismissEventDetail>) => void;
37
37
  /**
38
38
  * Emitted after the modal's close transition completes and the dialog is fully hidden.
39
39
  */
@@ -79,9 +79,9 @@ export declare const PModal: import("react").ForwardRefExoticComponent<Omit<impo
79
79
  */
80
80
  fullscreen?: BreakpointCustomizable<boolean>;
81
81
  /**
82
- * Emitted when the user closes the modal via the dismiss button, backdrop click, or Escape key.
82
+ * Emitted when the user closes the modal via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
83
83
  */
84
- onDismiss?: (event: CustomEvent<void>) => void;
84
+ onDismiss?: (event: CustomEvent<ModalDismissEventDetail>) => void;
85
85
  /**
86
86
  * Emitted after the modal's close transition completes and the dialog is fully hidden.
87
87
  */
@@ -6,7 +6,7 @@ export type PMultiSelectOptionProps = BaseProps & {
6
6
  */
7
7
  disabled?: boolean;
8
8
  /**
9
- * Sets the value submitted with the form data when this option is selected in the parent multi-select.
9
+ * Sets the required option value submitted with the form data when selected. Must be a string or number.
10
10
  */
11
11
  value: string | number;
12
12
  };
@@ -17,7 +17,7 @@ export declare const PMultiSelectOption: import("react").ForwardRefExoticCompone
17
17
  */
18
18
  disabled?: boolean;
19
19
  /**
20
- * Sets the value submitted with the form data when this option is selected in the parent multi-select.
20
+ * Sets the required option value submitted with the form data when selected. Must be a string or number.
21
21
  */
22
22
  value: string | number;
23
23
  } & {
@@ -54,7 +54,7 @@ export type PPinCodeProps = BaseProps & {
54
54
  */
55
55
  onBlur?: (event: CustomEvent<void>) => void;
56
56
  /**
57
- * Emitted when the pin code value changes as the user types, carrying the new concatenated value in the event detail.
57
+ * Emitted when the pin code value changes as the user types, carrying `{ value: string; isComplete: boolean }` in the event detail.
58
58
  */
59
59
  onChange?: (event: CustomEvent<PinCodeChangeEventDetail>) => void;
60
60
  /**
@@ -73,10 +73,10 @@ export type PPinCodeProps = BaseProps & {
73
73
  */
74
74
  type?: PinCodeType;
75
75
  /**
76
- * Sets the current concatenated value of all pin code fields and allows setting the initial value.
76
+ * Sets the current concatenated value. Numbers are accepted for programmatic assignment, but user input updates the value as a string.
77
77
  * @default ''
78
78
  */
79
- value?: string;
79
+ value?: string | number | null;
80
80
  };
81
81
  export declare const PPinCode: import("react").ForwardRefExoticComponent<Omit<import("react").DOMAttributes<{}>, "onChange" | "onInput" | "onToggle"> & Pick<import("react").HTMLAttributes<{}>, "suppressHydrationWarning" | "autoFocus" | "className" | "dir" | "hidden" | "id" | "inert" | "inputMode" | "lang" | "slot" | "style" | "tabIndex" | "title" | "translate" | "role"> & {
82
82
  /**
@@ -132,7 +132,7 @@ export declare const PPinCode: import("react").ForwardRefExoticComponent<Omit<im
132
132
  */
133
133
  onBlur?: (event: CustomEvent<void>) => void;
134
134
  /**
135
- * Emitted when the pin code value changes as the user types, carrying the new concatenated value in the event detail.
135
+ * Emitted when the pin code value changes as the user types, carrying `{ value: string; isComplete: boolean }` in the event detail.
136
136
  */
137
137
  onChange?: (event: CustomEvent<PinCodeChangeEventDetail>) => void;
138
138
  /**
@@ -151,10 +151,10 @@ export declare const PPinCode: import("react").ForwardRefExoticComponent<Omit<im
151
151
  */
152
152
  type?: PinCodeType;
153
153
  /**
154
- * Sets the current concatenated value of all pin code fields and allows setting the initial value.
154
+ * Sets the current concatenated value. Numbers are accepted for programmatic assignment, but user input updates the value as a string.
155
155
  * @default ''
156
156
  */
157
- value?: string;
157
+ value?: string | number | null;
158
158
  } & {
159
159
  children?: import("react").ReactNode | undefined;
160
160
  } & import("react").RefAttributes<HTMLElement>>;
@@ -1,5 +1,5 @@
1
1
  import type { BaseProps } from '../../BaseProps';
2
- import type { SelectedAriaAttributes, PopoverAriaAttribute, PopoverDirection } from '../types';
2
+ import type { SelectedAriaAttributes, PopoverAriaAttribute, PopoverDirection, PopoverDismissEventDetail } from '../types';
3
3
  export type PPopoverProps = BaseProps & {
4
4
  /**
5
5
  * Sets ARIA attributes on the popover panel to improve accessibility for screen readers.
@@ -19,9 +19,9 @@ export type PPopoverProps = BaseProps & {
19
19
  */
20
20
  direction?: PopoverDirection;
21
21
  /**
22
- * Emitted in controlled mode when the user requests to close the popover via the Escape key, an outside click, or when keyboard focus leaves the popover (Tab / Shift+Tab).
22
+ * Emitted in controlled mode when the user requests to close the popover via the Escape key, an outside click, or when keyboard focus leaves the popover (Tab / Shift+Tab). The event detail identifies which of the three was used.
23
23
  */
24
- onDismiss?: (event: CustomEvent<void>) => void;
24
+ onDismiss?: (event: CustomEvent<PopoverDismissEventDetail>) => void;
25
25
  /**
26
26
  * Controls whether the popover is visible. When set (controlled mode), visibility follows this prop and the consumer owns the open state via a slotted `button`. When omitted (uncontrolled mode), the component manages visibility itself.
27
27
  */
@@ -46,9 +46,9 @@ export declare const PPopover: import("react").ForwardRefExoticComponent<Omit<im
46
46
  */
47
47
  direction?: PopoverDirection;
48
48
  /**
49
- * Emitted in controlled mode when the user requests to close the popover via the Escape key, an outside click, or when keyboard focus leaves the popover (Tab / Shift+Tab).
49
+ * Emitted in controlled mode when the user requests to close the popover via the Escape key, an outside click, or when keyboard focus leaves the popover (Tab / Shift+Tab). The event detail identifies which of the three was used.
50
50
  */
51
- onDismiss?: (event: CustomEvent<void>) => void;
51
+ onDismiss?: (event: CustomEvent<PopoverDismissEventDetail>) => void;
52
52
  /**
53
53
  * Controls whether the popover is visible. When set (controlled mode), visibility follows this prop and the consumer owns the open state via a slotted `button`. When omitted (uncontrolled mode), the component manages visibility itself.
54
54
  */
@@ -15,9 +15,9 @@ export type PRadioGroupOptionProps = BaseProps & {
15
15
  */
16
16
  loading?: boolean;
17
17
  /**
18
- * Sets the value submitted with the form data when this radio option is selected within its parent group.
18
+ * Sets the required option value. Must be a string or number and is selected when it strictly matches the parent `p-radio-group` value by type and value.
19
19
  */
20
- value?: string;
20
+ value: string | number;
21
21
  };
22
22
  export declare const PRadioGroupOption: import("react").ForwardRefExoticComponent<Omit<import("react").DOMAttributes<{}>, "onChange" | "onInput" | "onToggle"> & Pick<import("react").HTMLAttributes<{}>, "suppressHydrationWarning" | "autoFocus" | "className" | "dir" | "hidden" | "id" | "inert" | "inputMode" | "lang" | "slot" | "style" | "tabIndex" | "title" | "translate" | "role"> & {
23
23
  /**
@@ -35,9 +35,9 @@ export declare const PRadioGroupOption: import("react").ForwardRefExoticComponen
35
35
  */
36
36
  loading?: boolean;
37
37
  /**
38
- * Sets the value submitted with the form data when this radio option is selected within its parent group.
38
+ * Sets the required option value. Must be a string or number and is selected when it strictly matches the parent `p-radio-group` value by type and value.
39
39
  */
40
- value?: string;
40
+ value: string | number;
41
41
  } & {
42
42
  children?: import("react").ReactNode | undefined;
43
43
  } & import("react").RefAttributes<HTMLElement>>;
@@ -68,10 +68,9 @@ export type PRadioGroupProps = BaseProps & {
68
68
  */
69
69
  state?: RadioGroupState;
70
70
  /**
71
- * Sets the currently selected value that pre-selects the matching radio option and reflects user changes.
72
- * @default ''
71
+ * Sets the currently selected value that pre-selects the matching radio option and reflects user changes. Matches an option strictly by type and value, meaning string or number only match an option whose value has the same type and equal value. Use undefined or null for no preselection; these values never match an option because every option requires a string or number 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.
73
72
  */
74
- value?: string;
73
+ value?: string | number | null;
75
74
  };
76
75
  export declare const PRadioGroup: import("react").ForwardRefExoticComponent<Omit<import("react").DOMAttributes<{}>, "onChange" | "onInput" | "onToggle"> & Pick<import("react").HTMLAttributes<{}>, "suppressHydrationWarning" | "autoFocus" | "className" | "dir" | "hidden" | "id" | "inert" | "inputMode" | "lang" | "slot" | "style" | "tabIndex" | "title" | "translate" | "role"> & {
77
76
  /**
@@ -141,10 +140,9 @@ export declare const PRadioGroup: import("react").ForwardRefExoticComponent<Omit
141
140
  */
142
141
  state?: RadioGroupState;
143
142
  /**
144
- * Sets the currently selected value that pre-selects the matching radio option and reflects user changes.
145
- * @default ''
143
+ * Sets the currently selected value that pre-selects the matching radio option and reflects user changes. Matches an option strictly by type and value, meaning string or number only match an option whose value has the same type and equal value. Use undefined or null for no preselection; these values never match an option because every option requires a string or number 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.
146
144
  */
147
- value?: string;
145
+ value?: string | number | null;
148
146
  } & {
149
147
  children?: import("react").ReactNode | undefined;
150
148
  } & import("react").RefAttributes<HTMLElement>>;
@@ -4,7 +4,7 @@ import { forwardRef, useRef } from 'react';
4
4
  import { useEventCallback, usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
5
5
  import { syncRef } from '../../utils.mjs';
6
6
 
7
- const PRadioGroup = /*#__PURE__*/ forwardRef(({ compact = false, description = '', direction = 'column', disabled = false, form, hideLabel = false, label = '', loading = false, message = '', name, onBlur, onChange, required = false, state = 'none', value = '', className, ...rest }, ref) => {
7
+ const PRadioGroup = /*#__PURE__*/ forwardRef(({ compact = false, description = '', direction = 'column', disabled = false, form, hideLabel = false, label = '', loading = false, message = '', name, onBlur, onChange, required = false, state = 'none', value, className, ...rest }, ref) => {
8
8
  const elementRef = useRef(undefined);
9
9
  useEventCallback(elementRef, 'blur', onBlur);
10
10
  useEventCallback(elementRef, 'change', onChange);
@@ -68,9 +68,9 @@ export type PSegmentedControlProps = BaseProps & {
68
68
  */
69
69
  state?: SegmentedControlState;
70
70
  /**
71
- * Sets the currently selected item's value and pre-selects the matching option when the component renders.
71
+ * Sets the currently selected item's value and pre-selects the matching option when the component renders. Matches an item strictly by type and value, meaning string or number only match an item whose value has the same type and equal value. Use undefined or null for no preselection. 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 item. 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.
72
72
  */
73
- value?: string | number;
73
+ value?: string | number | null;
74
74
  };
75
75
  export declare const PSegmentedControl: import("react").ForwardRefExoticComponent<Omit<import("react").DOMAttributes<{}>, "onChange" | "onInput" | "onToggle"> & Pick<import("react").HTMLAttributes<{}>, "suppressHydrationWarning" | "autoFocus" | "className" | "dir" | "hidden" | "id" | "inert" | "inputMode" | "lang" | "slot" | "style" | "tabIndex" | "title" | "translate" | "role"> & {
76
76
  /**
@@ -140,9 +140,9 @@ export declare const PSegmentedControl: import("react").ForwardRefExoticComponen
140
140
  */
141
141
  state?: SegmentedControlState;
142
142
  /**
143
- * Sets the currently selected item's value and pre-selects the matching option when the component renders.
143
+ * Sets the currently selected item's value and pre-selects the matching option when the component renders. Matches an item strictly by type and value, meaning string or number only match an item whose value has the same type and equal value. Use undefined or null for no preselection. 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 item. 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.
144
144
  */
145
- value?: string | number;
145
+ value?: string | number | null;
146
146
  } & {
147
147
  children?: import("react").ReactNode | undefined;
148
148
  } & import("react").RefAttributes<HTMLElement>>;
@@ -1,5 +1,5 @@
1
1
  import type { BaseProps } from '../../BaseProps';
2
- import type { SelectedAriaAttributes, SheetAriaAttribute, SheetBackground, SheetMotionHiddenEndEventDetail, SheetMotionVisibleEndEventDetail } from '../types';
2
+ import type { SelectedAriaAttributes, SheetAriaAttribute, SheetBackground, SheetDismissEventDetail, SheetMotionHiddenEndEventDetail, SheetMotionVisibleEndEventDetail } from '../types';
3
3
  export type PSheetProps = BaseProps & {
4
4
  /**
5
5
  * Sets ARIA attributes on the sheet dialog element for improved accessibility when the default `aria-label` is insufficient.
@@ -21,9 +21,9 @@ export type PSheetProps = BaseProps & {
21
21
  */
22
22
  dismissButton?: boolean;
23
23
  /**
24
- * Emitted when the user dismisses the sheet via the close button, backdrop click, or Escape key.
24
+ * Emitted when the user closes the sheet via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
25
25
  */
26
- onDismiss?: (event: CustomEvent<void>) => void;
26
+ onDismiss?: (event: CustomEvent<SheetDismissEventDetail>) => void;
27
27
  /**
28
28
  * Emitted after the sheet's close transition has fully completed and the panel is hidden.
29
29
  */
@@ -59,9 +59,9 @@ export declare const PSheet: import("react").ForwardRefExoticComponent<Omit<impo
59
59
  */
60
60
  dismissButton?: boolean;
61
61
  /**
62
- * Emitted when the user dismisses the sheet via the close button, backdrop click, or Escape key.
62
+ * Emitted when the user closes the sheet via the dismiss button, backdrop click, or Escape key. The event detail identifies which of the three was used.
63
63
  */
64
- onDismiss?: (event: CustomEvent<void>) => void;
64
+ onDismiss?: (event: CustomEvent<SheetDismissEventDetail>) => void;
65
65
  /**
66
66
  * Emitted after the sheet's close transition has fully completed and the panel is hidden.
67
67
  */
@@ -10,7 +10,7 @@ export type PWordmarkProps = BaseProps & {
10
10
  */
11
11
  href?: string;
12
12
  /**
13
- * Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens (`small`, `medium`, `large`, `inherit`).
13
+ * Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens.
14
14
  * @default 'small'
15
15
  */
16
16
  size?: WordmarkSize;
@@ -30,7 +30,7 @@ export declare const PWordmark: import("react").ForwardRefExoticComponent<Omit<i
30
30
  */
31
31
  href?: string;
32
32
  /**
33
- * Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens (`small`, `medium`, `large`, `inherit`).
33
+ * Sets the display size of the Porsche wordmark SVG using predefined PDS size tokens.
34
34
  * @default 'small'
35
35
  */
36
36
  size?: WordmarkSize;