@porsche-design-system/components-vue 3.29.0-rc.2 → 3.29.0-rc.4

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 (56) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/cjs/lib/components/FieldsetWrapper.vue.cjs +1 -1
  3. package/cjs/lib/components/FlagWrapper.vue.cjs +1 -0
  4. package/cjs/lib/components/FlagWrapper.vue2.cjs +1 -0
  5. package/cjs/lib/components/InputDateWrapper.vue.cjs +1 -0
  6. package/cjs/lib/components/InputDateWrapper.vue2.cjs +1 -0
  7. package/cjs/lib/components/InputEmailWrapper.vue.cjs +1 -0
  8. package/cjs/lib/components/InputEmailWrapper.vue2.cjs +1 -0
  9. package/cjs/lib/components/InputTelWrapper.vue.cjs +1 -0
  10. package/cjs/lib/components/InputTelWrapper.vue2.cjs +1 -0
  11. package/cjs/lib/components/InputTimeWrapper.vue.cjs +1 -0
  12. package/cjs/lib/components/InputTimeWrapper.vue2.cjs +1 -0
  13. package/cjs/lib/components/InputUrlWrapper.vue.cjs +1 -0
  14. package/cjs/lib/components/InputUrlWrapper.vue2.cjs +1 -0
  15. package/cjs/lib/components/MultiSelectWrapper.vue.cjs +1 -1
  16. package/cjs/lib/components/ScrollerWrapper.vue.cjs +1 -1
  17. package/cjs/lib/components/TabsBarWrapper.vue.cjs +1 -1
  18. package/cjs/lib/components/TabsWrapper.vue.cjs +1 -1
  19. package/cjs/public-api.cjs +1 -1
  20. package/esm/lib/components/FieldsetWrapper.vue.d.ts +5 -1
  21. package/esm/lib/components/FieldsetWrapper.vue.mjs +5 -4
  22. package/esm/lib/components/FlagWrapper.vue.d.ts +20 -0
  23. package/esm/lib/components/FlagWrapper.vue.mjs +20 -0
  24. package/esm/lib/components/FlagWrapper.vue2.mjs +4 -0
  25. package/esm/lib/components/InputDateWrapper.vue.d.ts +108 -0
  26. package/esm/lib/components/InputDateWrapper.vue.mjs +45 -0
  27. package/esm/lib/components/InputDateWrapper.vue2.mjs +4 -0
  28. package/esm/lib/components/InputEmailWrapper.vue.d.ts +122 -0
  29. package/esm/lib/components/InputEmailWrapper.vue.mjs +48 -0
  30. package/esm/lib/components/InputEmailWrapper.vue2.mjs +4 -0
  31. package/esm/lib/components/InputNumberWrapper.vue.d.ts +18 -18
  32. package/esm/lib/components/InputPasswordWrapper.vue.d.ts +19 -19
  33. package/esm/lib/components/InputSearchWrapper.vue.d.ts +18 -18
  34. package/esm/lib/components/InputTelWrapper.vue.d.ts +117 -0
  35. package/esm/lib/components/InputTelWrapper.vue.mjs +47 -0
  36. package/esm/lib/components/InputTelWrapper.vue2.mjs +4 -0
  37. package/esm/lib/components/InputTextWrapper.vue.d.ts +19 -19
  38. package/esm/lib/components/InputTimeWrapper.vue.d.ts +108 -0
  39. package/esm/lib/components/InputTimeWrapper.vue.mjs +45 -0
  40. package/esm/lib/components/InputTimeWrapper.vue2.mjs +4 -0
  41. package/esm/lib/components/InputUrlWrapper.vue.d.ts +117 -0
  42. package/esm/lib/components/InputUrlWrapper.vue.mjs +47 -0
  43. package/esm/lib/components/InputUrlWrapper.vue2.mjs +4 -0
  44. package/esm/lib/components/MultiSelectWrapper.vue.d.ts +5 -0
  45. package/esm/lib/components/MultiSelectWrapper.vue.mjs +7 -6
  46. package/esm/lib/components/ScrollerWrapper.vue.d.ts +2 -3
  47. package/esm/lib/components/ScrollerWrapper.vue.mjs +10 -10
  48. package/esm/lib/components/TabsBarWrapper.vue.d.ts +2 -3
  49. package/esm/lib/components/TabsBarWrapper.vue.mjs +10 -10
  50. package/esm/lib/components/TabsWrapper.vue.d.ts +1 -2
  51. package/esm/lib/components/TabsWrapper.vue.mjs +7 -7
  52. package/esm/lib/components/TextareaWrapper.vue.d.ts +20 -20
  53. package/esm/lib/components/index.d.ts +6 -0
  54. package/esm/lib/types.d.ts +153 -41
  55. package/esm/public-api.mjs +148 -136
  56. package/package.json +2 -2
@@ -1,59 +1,59 @@
1
- import type { TextareaAutoComplete, BreakpointCustomizable, TextareaResize, TextareaState, Theme, TextareaWrap } from '../types';
1
+ import type { BreakpointCustomizable, TextareaResize, TextareaState, Theme, TextareaWrap } from '../types';
2
2
  type PTextareaProps = {
3
3
  /**
4
- * Specifies whether the input can be autofilled by the browser
4
+ * Provides a hint to the browser about what type of data the field expects, which can assist with autofill features (e.g., autocomplete='on').
5
5
  */
6
- autoComplete?: TextareaAutoComplete;
6
+ autoComplete?: string;
7
7
  /**
8
8
  * Show or hide the character counter.
9
9
  */
10
10
  counter?: boolean;
11
11
  /**
12
- * The description text.
12
+ * Supplementary text providing more context or explanation for the textarea.
13
13
  */
14
14
  description?: string;
15
15
  /**
16
- * Marks the textarea as disabled.
16
+ * A boolean value that, if present, makes the textarea unusable and unclickable. The value will not be submitted with the form.
17
17
  */
18
18
  disabled?: boolean;
19
19
  /**
20
- * The id of a form element the textarea should be associated with.
20
+ * Specifies the id of the <form> element that the textarea belongs to (useful if the textarea is not a direct descendant of the form).
21
21
  */
22
22
  form?: string;
23
23
  /**
24
- * Show or hide label. For better accessibility, it is recommended to show the label.
24
+ * Controls the visibility of the label.
25
25
  */
26
26
  hideLabel?: BreakpointCustomizable<boolean>;
27
27
  /**
28
- * The label text.
28
+ * Text content for a user-facing label.
29
29
  */
30
30
  label?: string;
31
31
  /**
32
- * The max length of the textarea.
32
+ * A non-negative integer specifying the maximum number of characters the user can enter into the textarea.
33
33
  */
34
34
  maxLength?: number;
35
35
  /**
36
- * The message styled depending on validation state.
36
+ * Dynamic feedback text for validation or status.
37
37
  */
38
38
  message?: string;
39
39
  /**
40
- * The min length of the textarea.
40
+ * A non-negative integer specifying the minimum number of characters required for the textarea's value to be considered valid.
41
41
  */
42
42
  minLength?: number;
43
43
  /**
44
- * The name of the textarea.
44
+ * The name of the textarea, used when submitting the form data.
45
45
  */
46
46
  name: string;
47
47
  /**
48
- * The placeholder text.
48
+ * A string that provides a brief hint to the user about what kind of information is expected in the field (e.g., placeholder='Write your message here...'). This text is displayed when the textarea is empty.
49
49
  */
50
50
  placeholder?: string;
51
51
  /**
52
- * Specifies whether the textarea should be read-only.
52
+ * A boolean value that, if present, makes the textarea uneditable by the user, but its value will still be submitted with the form.
53
53
  */
54
54
  readOnly?: boolean;
55
55
  /**
56
- * Marks the textarea as required.
56
+ * A boolean value that, if present, indicates that the textarea must be filled out before the form can be submitted.
57
57
  */
58
58
  required?: boolean;
59
59
  /**
@@ -65,15 +65,15 @@ type PTextareaProps = {
65
65
  */
66
66
  rows?: number;
67
67
  /**
68
- * Specifies whether the input should have its spelling and grammar checked
68
+ * Specifies whether the textarea should have its spelling and grammar checked
69
69
  */
70
70
  spellCheck?: boolean;
71
71
  /**
72
- * The validation state.
72
+ * Indicates the validation or overall status of the textarea component.
73
73
  */
74
74
  state?: TextareaState;
75
75
  /**
76
- * Adapts the color depending on the theme.
76
+ * Controls the visual appearance of the component.
77
77
  */
78
78
  theme?: Theme;
79
79
  /**
@@ -81,7 +81,7 @@ type PTextareaProps = {
81
81
  */
82
82
  value?: string;
83
83
  /**
84
- * Handles wrapping behaviour of elements.
84
+ * Handles wrapping behavior of elements.
85
85
  */
86
86
  wrap?: TextareaWrap;
87
87
  };
@@ -108,8 +108,8 @@ declare const __VLS_component: import("vue").DefineComponent<PTextareaProps, voi
108
108
  hideLabel: BreakpointCustomizable<boolean>;
109
109
  value: string;
110
110
  message: string;
111
- placeholder: string;
112
111
  readOnly: boolean;
112
+ placeholder: string;
113
113
  counter: boolean;
114
114
  rows: number;
115
115
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -17,6 +17,7 @@ export { default as PDrilldownItem } from './DrilldownItemWrapper.vue';
17
17
  export { default as PDrilldownLink } from './DrilldownLinkWrapper.vue';
18
18
  export { default as PFieldset } from './FieldsetWrapper.vue';
19
19
  export { default as PFieldsetWrapper } from './FieldsetWrapperWrapper.vue';
20
+ export { default as PFlag } from './FlagWrapper.vue';
20
21
  export { default as PFlex } from './FlexWrapper.vue';
21
22
  export { default as PFlexItem } from './FlexItemWrapper.vue';
22
23
  export { default as PFlyout } from './FlyoutWrapper.vue';
@@ -26,10 +27,15 @@ export { default as PHeading } from './HeadingWrapper.vue';
26
27
  export { default as PHeadline } from './HeadlineWrapper.vue';
27
28
  export { default as PIcon } from './IconWrapper.vue';
28
29
  export { default as PInlineNotification } from './InlineNotificationWrapper.vue';
30
+ export { default as PInputDate } from './InputDateWrapper.vue';
31
+ export { default as PInputEmail } from './InputEmailWrapper.vue';
29
32
  export { default as PInputNumber } from './InputNumberWrapper.vue';
30
33
  export { default as PInputPassword } from './InputPasswordWrapper.vue';
31
34
  export { default as PInputSearch } from './InputSearchWrapper.vue';
35
+ export { default as PInputTel } from './InputTelWrapper.vue';
32
36
  export { default as PInputText } from './InputTextWrapper.vue';
37
+ export { default as PInputTime } from './InputTimeWrapper.vue';
38
+ export { default as PInputUrl } from './InputUrlWrapper.vue';
33
39
  export { default as PLink } from './LinkWrapper.vue';
34
40
  export { default as PLinkPure } from './LinkPureWrapper.vue';
35
41
  export { default as PLinkSocial } from './LinkSocialWrapper.vue';
@@ -493,6 +493,116 @@ declare const ICON_NAMES: readonly [
493
493
  "zoom-out"
494
494
  ];
495
495
  export type IconName = typeof ICON_NAMES[number];
496
+ declare const FLAG_NAMES: readonly [
497
+ "ae",
498
+ "am",
499
+ "ar",
500
+ "at",
501
+ "au",
502
+ "az",
503
+ "ba",
504
+ "be",
505
+ "bg",
506
+ "bh",
507
+ "bn",
508
+ "bo",
509
+ "br",
510
+ "by",
511
+ "ca",
512
+ "ch",
513
+ "cl",
514
+ "cn",
515
+ "co",
516
+ "cr",
517
+ "cw",
518
+ "cy",
519
+ "cz",
520
+ "de",
521
+ "dk",
522
+ "do",
523
+ "dz",
524
+ "ec",
525
+ "ee",
526
+ "eg",
527
+ "es",
528
+ "fi",
529
+ "fr",
530
+ "gb",
531
+ "ge",
532
+ "gh",
533
+ "gr",
534
+ "gt",
535
+ "hk",
536
+ "hn",
537
+ "hr",
538
+ "ht",
539
+ "hu",
540
+ "id",
541
+ "ie",
542
+ "il",
543
+ "in",
544
+ "is",
545
+ "it",
546
+ "jm",
547
+ "jo",
548
+ "jp",
549
+ "ke",
550
+ "kh",
551
+ "kr",
552
+ "kw",
553
+ "kz",
554
+ "lb",
555
+ "lk",
556
+ "lt",
557
+ "lu",
558
+ "lv",
559
+ "ma",
560
+ "md",
561
+ "mk",
562
+ "mn",
563
+ "mo",
564
+ "mq",
565
+ "mt",
566
+ "mu",
567
+ "mx",
568
+ "my",
569
+ "ng",
570
+ "nl",
571
+ "no",
572
+ "nz",
573
+ "om",
574
+ "pa",
575
+ "pe",
576
+ "pf",
577
+ "ph",
578
+ "pk",
579
+ "pl",
580
+ "pr",
581
+ "pt",
582
+ "py",
583
+ "qa",
584
+ "ro",
585
+ "rs",
586
+ "ru",
587
+ "sa",
588
+ "se",
589
+ "sg",
590
+ "si",
591
+ "sk",
592
+ "sv",
593
+ "th",
594
+ "tn",
595
+ "tr",
596
+ "tt",
597
+ "ua",
598
+ "us",
599
+ "uy",
600
+ "uz",
601
+ "ve",
602
+ "vn",
603
+ "za"
604
+ ];
605
+ export type FlagName = typeof FLAG_NAMES[number];
496
606
  declare const FORM_STATES: readonly [
497
607
  "none",
498
608
  "error",
@@ -586,6 +696,7 @@ declare const GRADIENT_COLORS: readonly [
586
696
  "background-base",
587
697
  "background-surface"
588
698
  ];
699
+ /** @deprecated */
589
700
  export type ScrollerGradientColor = (typeof GRADIENT_COLORS)[number];
590
701
  export type ScrollerScrollToPosition = {
591
702
  scrollPosition: number;
@@ -598,6 +709,20 @@ declare const SCROLL_INDICATOR_POSITIONS: readonly [
598
709
  /** @deprecated */
599
710
  export type ScrollerScrollIndicatorPosition = (typeof SCROLL_INDICATOR_POSITIONS)[number];
600
711
  export type ScrollerAlignScrollIndicator = ScrollerScrollIndicatorPosition;
712
+ export type MultiSelectState = FormState;
713
+ export type MultiSelectDropdownDirection = SelectComponentsDropdownDirection;
714
+ /** @deprecated */
715
+ export type MultiSelectUpdateEvent = {
716
+ name: string;
717
+ value: string[];
718
+ };
719
+ export type MultiSelectUpdateEventDetail = MultiSelectUpdateEvent;
720
+ export type SelectState = FormState;
721
+ export type SelectDropdownDirection = SelectComponentsDropdownDirection;
722
+ export type SelectUpdateEventDetail = {
723
+ name: string;
724
+ value: string;
725
+ };
601
726
  declare const SELECT_DROPDOWN_DIRECTIONS: readonly [
602
727
  "down",
603
728
  "up",
@@ -702,6 +827,9 @@ export type PorscheDesignSystem = {
702
827
  };
703
828
  };
704
829
  export type SelectedAriaAttributes<T extends keyof AriaAttributes> = Pick<AriaAttributes, T>;
830
+ export type SelectedAriaRole<T> = {
831
+ role: Extract<AriaRole, T>;
832
+ };
705
833
  declare const ACCORDION_SIZES: readonly [
706
834
  "small",
707
835
  "medium"
@@ -881,6 +1009,11 @@ export type FieldsetLabelSize = (typeof FIELDSET_LABEL_SIZES)[number];
881
1009
  export type FieldsetState = FormState;
882
1010
  export type FieldsetWrapperLabelSize = FieldsetLabelSize;
883
1011
  export type FieldsetWrapperState = FieldsetState;
1012
+ declare const FLAG_ARIA_ATTRIBUTES: readonly [
1013
+ "aria-label"
1014
+ ];
1015
+ export type FlagAriaAttribute = (typeof FLAG_ARIA_ATTRIBUTES)[number];
1016
+ export type FlagSize = TextSize;
884
1017
  export type FlexInline = boolean;
885
1018
  declare const FLEX_WRAPS: readonly [
886
1019
  "nowrap",
@@ -1090,44 +1223,42 @@ declare const ICON_COLORS: readonly [
1090
1223
  "state-disabled"
1091
1224
  ];
1092
1225
  export type IconColor = (typeof ICON_COLORS)[number];
1226
+ export type InputDateState = FormState;
1227
+ export type InputDateChangeEventDetail = Event;
1228
+ export type InputDateBlurEventDetail = Event;
1229
+ export type InputDateInputEventDetail = InputEvent;
1230
+ export type InputEmailState = FormState;
1231
+ export type InputEmailChangeEventDetail = Event;
1232
+ export type InputEmailBlurEventDetail = Event;
1233
+ export type InputEmailInputEventDetail = InputEvent;
1093
1234
  export type InputNumberState = FormState;
1094
- declare const INPUT_NUMBER_AUTO_COMPLETE: readonly [
1095
- "off",
1096
- "on"
1097
- ];
1098
- export type InputNumberAutoComplete = (typeof INPUT_NUMBER_AUTO_COMPLETE)[number];
1099
1235
  export type InputNumberChangeEventDetail = Event;
1100
1236
  export type InputNumberBlurEventDetail = Event;
1101
1237
  export type InputNumberInputEventDetail = InputEvent;
1102
1238
  export type InputPasswordState = FormState;
1103
- declare const INPUT_PASSWORD_AUTO_COMPLETE: readonly [
1104
- "off",
1105
- "on",
1106
- "current-password",
1107
- "new-password"
1108
- ];
1109
- export type InputPasswordAutoComplete = (typeof INPUT_PASSWORD_AUTO_COMPLETE)[number];
1110
1239
  export type InputPasswordChangeEventDetail = Event;
1111
1240
  export type InputPasswordBlurEventDetail = Event;
1112
1241
  export type InputPasswordInputEventDetail = InputEvent;
1113
1242
  export type InputSearchState = FormState;
1114
- declare const INPUT_SEARCH_AUTO_COMPLETE: readonly [
1115
- "off",
1116
- "on"
1117
- ];
1118
- export type InputSearchAutoComplete = (typeof INPUT_SEARCH_AUTO_COMPLETE)[number];
1119
1243
  export type InputSearchChangeEventDetail = Event;
1120
1244
  export type InputSearchBlurEventDetail = Event;
1121
1245
  export type InputSearchInputEventDetail = InputEvent;
1246
+ export type InputTelState = FormState;
1247
+ export type InputTelChangeEventDetail = Event;
1248
+ export type InputTelBlurEventDetail = Event;
1249
+ export type InputTelInputEventDetail = InputEvent;
1122
1250
  export type InputTextState = FormState;
1123
- declare const INPUT_TEXT_AUTO_COMPLETE: readonly [
1124
- "off",
1125
- "on"
1126
- ];
1127
- export type InputTextAutoComplete = (typeof INPUT_TEXT_AUTO_COMPLETE)[number];
1128
1251
  export type InputTextChangeEventDetail = Event;
1129
1252
  export type InputTextBlurEventDetail = Event;
1130
1253
  export type InputTextInputEventDetail = InputEvent;
1254
+ export type InputTimeState = FormState;
1255
+ export type InputTimeChangeEventDetail = Event;
1256
+ export type InputTimeBlurEventDetail = Event;
1257
+ export type InputTimeInputEventDetail = InputEvent;
1258
+ export type InputUrlState = FormState;
1259
+ export type InputUrlChangeEventDetail = Event;
1260
+ export type InputUrlBlurEventDetail = Event;
1261
+ export type InputUrlInputEventDetail = InputEvent;
1131
1262
  export type LinkIcon = LinkButtonIconName;
1132
1263
  export type LinkPureIcon = LinkButtonIconName;
1133
1264
  export type LinkPureAriaAttribute = LinkAriaAttribute;
@@ -1282,14 +1413,6 @@ declare const MODEL_SIGNATURE_COLORS: readonly [
1282
1413
  "inherit"
1283
1414
  ];
1284
1415
  export type ModelSignatureColor = (typeof MODEL_SIGNATURE_COLORS)[number];
1285
- export type MultiSelectState = FormState;
1286
- export type MultiSelectDropdownDirection = SelectComponentsDropdownDirection;
1287
- /** @deprecated */
1288
- export type MultiSelectUpdateEvent = {
1289
- name: string;
1290
- value: string[];
1291
- };
1292
- export type MultiSelectUpdateEventDetail = MultiSelectUpdateEvent;
1293
1416
  declare const PAGINATION_NUMBER_OF_PAGE_LINKS: readonly [
1294
1417
  5,
1295
1418
  7
@@ -1353,12 +1476,6 @@ declare const SEGMENTED_CONTROL_ITEM_ARIA_ATTRIBUTES: readonly [
1353
1476
  "aria-label"
1354
1477
  ];
1355
1478
  export type SegmentedControlItemAriaAttribute = (typeof SEGMENTED_CONTROL_ITEM_ARIA_ATTRIBUTES)[number];
1356
- export type SelectState = FormState;
1357
- export type SelectDropdownDirection = SelectComponentsDropdownDirection;
1358
- export type SelectUpdateEventDetail = {
1359
- name: string;
1360
- value: string;
1361
- };
1362
1479
  declare const DROPDOWN_DIRECTIONS: readonly [
1363
1480
  "down",
1364
1481
  "up",
@@ -1516,11 +1633,6 @@ declare const TEXT_LIST_TYPES: readonly [
1516
1633
  ];
1517
1634
  export type TextListType = (typeof TEXT_LIST_TYPES)[number];
1518
1635
  export type TextareaState = FormState;
1519
- declare const AUTO_COMPLETE: readonly [
1520
- "off",
1521
- "on"
1522
- ];
1523
- export type TextareaAutoComplete = (typeof AUTO_COMPLETE)[number];
1524
1636
  declare const TEXTAREA_WRAPS: readonly [
1525
1637
  "hard",
1526
1638
  "soft",