@porsche-design-system/components-react 4.2.0-rc.0 → 4.2.0-rc.2

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 (240) hide show
  1. package/CHANGELOG.md +104 -0
  2. package/cjs/lib/components/accordion.wrapper.cjs +3 -3
  3. package/cjs/lib/components/ai-tag.wrapper.cjs +26 -0
  4. package/cjs/public-api.cjs +2 -0
  5. package/esm/BaseProps.d.ts +1 -1
  6. package/esm/lib/components/accordion.wrapper.d.ts +12 -2
  7. package/esm/lib/components/accordion.wrapper.mjs +3 -3
  8. package/esm/lib/components/ai-tag.wrapper.d.ts +26 -0
  9. package/esm/lib/components/ai-tag.wrapper.mjs +24 -0
  10. package/esm/lib/components/banner.wrapper.d.ts +1 -1
  11. package/esm/lib/components/button-pure.wrapper.d.ts +1 -1
  12. package/esm/lib/components/button-tile.wrapper.d.ts +1 -1
  13. package/esm/lib/components/button.wrapper.d.ts +1 -1
  14. package/esm/lib/components/canvas.wrapper.d.ts +1 -1
  15. package/esm/lib/components/carousel.wrapper.d.ts +1 -1
  16. package/esm/lib/components/checkbox.wrapper.d.ts +1 -1
  17. package/esm/lib/components/crest.wrapper.d.ts +1 -1
  18. package/esm/lib/components/display.wrapper.d.ts +1 -1
  19. package/esm/lib/components/divider.wrapper.d.ts +1 -1
  20. package/esm/lib/components/drilldown-item.wrapper.d.ts +1 -1
  21. package/esm/lib/components/drilldown-link.wrapper.d.ts +1 -1
  22. package/esm/lib/components/drilldown.wrapper.d.ts +1 -1
  23. package/esm/lib/components/fieldset.wrapper.d.ts +1 -1
  24. package/esm/lib/components/flag.wrapper.d.ts +1 -1
  25. package/esm/lib/components/flyout.wrapper.d.ts +1 -1
  26. package/esm/lib/components/heading.wrapper.d.ts +1 -1
  27. package/esm/lib/components/icon.wrapper.d.ts +1 -1
  28. package/esm/lib/components/index.d.ts +1 -0
  29. package/esm/lib/components/inline-notification.wrapper.d.ts +1 -1
  30. package/esm/lib/components/input-date.wrapper.d.ts +3 -3
  31. package/esm/lib/components/input-email.wrapper.d.ts +3 -3
  32. package/esm/lib/components/input-month.wrapper.d.ts +3 -3
  33. package/esm/lib/components/input-number.wrapper.d.ts +3 -3
  34. package/esm/lib/components/input-password.wrapper.d.ts +3 -3
  35. package/esm/lib/components/input-search.wrapper.d.ts +3 -3
  36. package/esm/lib/components/input-tel.wrapper.d.ts +3 -3
  37. package/esm/lib/components/input-text.wrapper.d.ts +3 -3
  38. package/esm/lib/components/input-time.wrapper.d.ts +3 -3
  39. package/esm/lib/components/input-url.wrapper.d.ts +3 -3
  40. package/esm/lib/components/input-week.wrapper.d.ts +3 -3
  41. package/esm/lib/components/link-pure.wrapper.d.ts +1 -1
  42. package/esm/lib/components/link-tile-product.wrapper.d.ts +1 -1
  43. package/esm/lib/components/link-tile.wrapper.d.ts +1 -1
  44. package/esm/lib/components/link.wrapper.d.ts +1 -1
  45. package/esm/lib/components/modal.wrapper.d.ts +1 -1
  46. package/esm/lib/components/model-signature.wrapper.d.ts +1 -1
  47. package/esm/lib/components/multi-select-option.wrapper.d.ts +3 -3
  48. package/esm/lib/components/multi-select.wrapper.d.ts +5 -5
  49. package/esm/lib/components/optgroup.wrapper.d.ts +1 -1
  50. package/esm/lib/components/pagination.wrapper.d.ts +1 -1
  51. package/esm/lib/components/pin-code.wrapper.d.ts +1 -1
  52. package/esm/lib/components/popover.wrapper.d.ts +1 -1
  53. package/esm/lib/components/radio-group-option.wrapper.d.ts +1 -1
  54. package/esm/lib/components/radio-group.wrapper.d.ts +1 -1
  55. package/esm/lib/components/scroller.wrapper.d.ts +1 -1
  56. package/esm/lib/components/segmented-control-item.wrapper.d.ts +1 -1
  57. package/esm/lib/components/segmented-control.wrapper.d.ts +1 -1
  58. package/esm/lib/components/select-option.wrapper.d.ts +5 -5
  59. package/esm/lib/components/select.wrapper.d.ts +5 -5
  60. package/esm/lib/components/sheet.wrapper.d.ts +1 -1
  61. package/esm/lib/components/spinner.wrapper.d.ts +1 -1
  62. package/esm/lib/components/stepper-horizontal-item.wrapper.d.ts +1 -1
  63. package/esm/lib/components/stepper-horizontal.wrapper.d.ts +1 -1
  64. package/esm/lib/components/switch.wrapper.d.ts +1 -1
  65. package/esm/lib/components/table-body.wrapper.d.ts +1 -1
  66. package/esm/lib/components/table-cell.wrapper.d.ts +1 -1
  67. package/esm/lib/components/table-head-cell.wrapper.d.ts +1 -1
  68. package/esm/lib/components/table-head-row.wrapper.d.ts +1 -1
  69. package/esm/lib/components/table-head.wrapper.d.ts +1 -1
  70. package/esm/lib/components/table-row.wrapper.d.ts +1 -1
  71. package/esm/lib/components/table.wrapper.d.ts +1 -1
  72. package/esm/lib/components/tabs-bar.wrapper.d.ts +1 -1
  73. package/esm/lib/components/tabs-item.wrapper.d.ts +1 -1
  74. package/esm/lib/components/tabs.wrapper.d.ts +1 -1
  75. package/esm/lib/components/tag-dismissible.wrapper.d.ts +1 -1
  76. package/esm/lib/components/tag.wrapper.d.ts +1 -1
  77. package/esm/lib/components/text-list-item.wrapper.d.ts +1 -1
  78. package/esm/lib/components/text-list.wrapper.d.ts +1 -1
  79. package/esm/lib/components/text.wrapper.d.ts +1 -1
  80. package/esm/lib/components/textarea.wrapper.d.ts +3 -3
  81. package/esm/lib/components/toast.wrapper.d.ts +1 -1
  82. package/esm/lib/components/wordmark.wrapper.d.ts +1 -1
  83. package/esm/lib/types.d.ts +221 -2
  84. package/esm/public-api.mjs +1 -0
  85. package/meta/cjs/index.cjs +12 -0
  86. package/meta/esm/index.d.ts +1 -0
  87. package/meta/esm/index.mjs +1 -0
  88. package/meta/package.json +6 -0
  89. package/package.json +24 -21
  90. package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +1382 -1214
  91. package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +176 -3
  92. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/accordion.wrapper.cjs +4 -4
  93. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/ai-tag.wrapper.cjs +36 -0
  94. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.cjs +1 -1
  95. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/ai-tag.cjs +18 -0
  96. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox.cjs +0 -1
  97. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/dialog-base.cjs +1 -1
  98. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-base.cjs +2 -2
  99. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-date.cjs +5 -1
  100. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-email.cjs +5 -1
  101. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-month.cjs +5 -1
  102. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-number.cjs +5 -1
  103. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-password.cjs +5 -1
  104. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-search.cjs +5 -1
  105. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-tel.cjs +5 -1
  106. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-text.cjs +7 -3
  107. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-time.cjs +5 -1
  108. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-url.cjs +5 -1
  109. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-week.cjs +5 -1
  110. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +10 -5
  111. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select.cjs +5 -1
  112. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea.cjs +8 -4
  113. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/public-api.cjs +2 -0
  114. package/ssr/esm/BaseProps.d.ts +1 -1
  115. package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +1381 -1214
  116. package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +175 -4
  117. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/accordion.wrapper.mjs +4 -4
  118. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/ai-tag.wrapper.mjs +34 -0
  119. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.mjs +2 -2
  120. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/ai-tag.mjs +16 -0
  121. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox.mjs +0 -1
  122. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/dialog-base.mjs +1 -1
  123. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-base.mjs +2 -2
  124. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-date.mjs +5 -1
  125. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-email.mjs +5 -1
  126. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-month.mjs +5 -1
  127. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-number.mjs +5 -1
  128. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-password.mjs +5 -1
  129. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-search.mjs +5 -1
  130. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-tel.mjs +5 -1
  131. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-text.mjs +7 -3
  132. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-time.mjs +5 -1
  133. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-url.mjs +5 -1
  134. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/input-week.mjs +5 -1
  135. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +10 -5
  136. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select.mjs +5 -1
  137. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea.mjs +8 -4
  138. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.mjs +1 -0
  139. package/ssr/esm/lib/components/accordion.wrapper.d.ts +12 -2
  140. package/ssr/esm/lib/components/ai-tag.wrapper.d.ts +26 -0
  141. package/ssr/esm/lib/components/banner.wrapper.d.ts +1 -1
  142. package/ssr/esm/lib/components/button-pure.wrapper.d.ts +1 -1
  143. package/ssr/esm/lib/components/button-tile.wrapper.d.ts +1 -1
  144. package/ssr/esm/lib/components/button.wrapper.d.ts +1 -1
  145. package/ssr/esm/lib/components/canvas.wrapper.d.ts +1 -1
  146. package/ssr/esm/lib/components/carousel.wrapper.d.ts +1 -1
  147. package/ssr/esm/lib/components/checkbox.wrapper.d.ts +1 -1
  148. package/ssr/esm/lib/components/crest.wrapper.d.ts +1 -1
  149. package/ssr/esm/lib/components/display.wrapper.d.ts +1 -1
  150. package/ssr/esm/lib/components/divider.wrapper.d.ts +1 -1
  151. package/ssr/esm/lib/components/drilldown-item.wrapper.d.ts +1 -1
  152. package/ssr/esm/lib/components/drilldown-link.wrapper.d.ts +1 -1
  153. package/ssr/esm/lib/components/drilldown.wrapper.d.ts +1 -1
  154. package/ssr/esm/lib/components/fieldset.wrapper.d.ts +1 -1
  155. package/ssr/esm/lib/components/flag.wrapper.d.ts +1 -1
  156. package/ssr/esm/lib/components/flyout.wrapper.d.ts +1 -1
  157. package/ssr/esm/lib/components/heading.wrapper.d.ts +1 -1
  158. package/ssr/esm/lib/components/icon.wrapper.d.ts +1 -1
  159. package/ssr/esm/lib/components/index.d.ts +1 -0
  160. package/ssr/esm/lib/components/inline-notification.wrapper.d.ts +1 -1
  161. package/ssr/esm/lib/components/input-date.wrapper.d.ts +3 -3
  162. package/ssr/esm/lib/components/input-email.wrapper.d.ts +3 -3
  163. package/ssr/esm/lib/components/input-month.wrapper.d.ts +3 -3
  164. package/ssr/esm/lib/components/input-number.wrapper.d.ts +3 -3
  165. package/ssr/esm/lib/components/input-password.wrapper.d.ts +3 -3
  166. package/ssr/esm/lib/components/input-search.wrapper.d.ts +3 -3
  167. package/ssr/esm/lib/components/input-tel.wrapper.d.ts +3 -3
  168. package/ssr/esm/lib/components/input-text.wrapper.d.ts +3 -3
  169. package/ssr/esm/lib/components/input-time.wrapper.d.ts +3 -3
  170. package/ssr/esm/lib/components/input-url.wrapper.d.ts +3 -3
  171. package/ssr/esm/lib/components/input-week.wrapper.d.ts +3 -3
  172. package/ssr/esm/lib/components/link-pure.wrapper.d.ts +1 -1
  173. package/ssr/esm/lib/components/link-tile-product.wrapper.d.ts +1 -1
  174. package/ssr/esm/lib/components/link-tile.wrapper.d.ts +1 -1
  175. package/ssr/esm/lib/components/link.wrapper.d.ts +1 -1
  176. package/ssr/esm/lib/components/modal.wrapper.d.ts +1 -1
  177. package/ssr/esm/lib/components/model-signature.wrapper.d.ts +1 -1
  178. package/ssr/esm/lib/components/multi-select-option.wrapper.d.ts +3 -3
  179. package/ssr/esm/lib/components/multi-select.wrapper.d.ts +5 -5
  180. package/ssr/esm/lib/components/optgroup.wrapper.d.ts +1 -1
  181. package/ssr/esm/lib/components/pagination.wrapper.d.ts +1 -1
  182. package/ssr/esm/lib/components/pin-code.wrapper.d.ts +1 -1
  183. package/ssr/esm/lib/components/popover.wrapper.d.ts +1 -1
  184. package/ssr/esm/lib/components/radio-group-option.wrapper.d.ts +1 -1
  185. package/ssr/esm/lib/components/radio-group.wrapper.d.ts +1 -1
  186. package/ssr/esm/lib/components/scroller.wrapper.d.ts +1 -1
  187. package/ssr/esm/lib/components/segmented-control-item.wrapper.d.ts +1 -1
  188. package/ssr/esm/lib/components/segmented-control.wrapper.d.ts +1 -1
  189. package/ssr/esm/lib/components/select-option.wrapper.d.ts +5 -5
  190. package/ssr/esm/lib/components/select.wrapper.d.ts +5 -5
  191. package/ssr/esm/lib/components/sheet.wrapper.d.ts +1 -1
  192. package/ssr/esm/lib/components/spinner.wrapper.d.ts +1 -1
  193. package/ssr/esm/lib/components/stepper-horizontal-item.wrapper.d.ts +1 -1
  194. package/ssr/esm/lib/components/stepper-horizontal.wrapper.d.ts +1 -1
  195. package/ssr/esm/lib/components/switch.wrapper.d.ts +1 -1
  196. package/ssr/esm/lib/components/table-body.wrapper.d.ts +1 -1
  197. package/ssr/esm/lib/components/table-cell.wrapper.d.ts +1 -1
  198. package/ssr/esm/lib/components/table-head-cell.wrapper.d.ts +1 -1
  199. package/ssr/esm/lib/components/table-head-row.wrapper.d.ts +1 -1
  200. package/ssr/esm/lib/components/table-head.wrapper.d.ts +1 -1
  201. package/ssr/esm/lib/components/table-row.wrapper.d.ts +1 -1
  202. package/ssr/esm/lib/components/table.wrapper.d.ts +1 -1
  203. package/ssr/esm/lib/components/tabs-bar.wrapper.d.ts +1 -1
  204. package/ssr/esm/lib/components/tabs-item.wrapper.d.ts +1 -1
  205. package/ssr/esm/lib/components/tabs.wrapper.d.ts +1 -1
  206. package/ssr/esm/lib/components/tag-dismissible.wrapper.d.ts +1 -1
  207. package/ssr/esm/lib/components/tag.wrapper.d.ts +1 -1
  208. package/ssr/esm/lib/components/text-list-item.wrapper.d.ts +1 -1
  209. package/ssr/esm/lib/components/text-list.wrapper.d.ts +1 -1
  210. package/ssr/esm/lib/components/text.wrapper.d.ts +1 -1
  211. package/ssr/esm/lib/components/textarea.wrapper.d.ts +3 -3
  212. package/ssr/esm/lib/components/toast.wrapper.d.ts +1 -1
  213. package/ssr/esm/lib/components/wordmark.wrapper.d.ts +1 -1
  214. package/ssr/esm/lib/dsr-components/ai-tag.d.ts +6 -0
  215. package/ssr/esm/lib/dsr-components/input-base.d.ts +1 -0
  216. package/ssr/esm/lib/dsr-components/input-date.d.ts +1 -0
  217. package/ssr/esm/lib/dsr-components/input-email.d.ts +1 -0
  218. package/ssr/esm/lib/dsr-components/input-month.d.ts +1 -0
  219. package/ssr/esm/lib/dsr-components/input-number.d.ts +1 -0
  220. package/ssr/esm/lib/dsr-components/input-password.d.ts +1 -0
  221. package/ssr/esm/lib/dsr-components/input-search.d.ts +1 -0
  222. package/ssr/esm/lib/dsr-components/input-tel.d.ts +1 -0
  223. package/ssr/esm/lib/dsr-components/input-text.d.ts +1 -0
  224. package/ssr/esm/lib/dsr-components/input-time.d.ts +1 -0
  225. package/ssr/esm/lib/dsr-components/input-url.d.ts +1 -0
  226. package/ssr/esm/lib/dsr-components/input-week.d.ts +1 -0
  227. package/ssr/esm/lib/dsr-components/multi-select.d.ts +1 -1
  228. package/ssr/esm/lib/dsr-components/select.d.ts +1 -0
  229. package/ssr/esm/lib/dsr-components/textarea.d.ts +1 -0
  230. package/ssr/esm/lib/types.d.ts +221 -2
  231. package/{global-styles → stylesheets}/cn/font-face.css +1 -1
  232. package/{global-styles → stylesheets}/cn/index.css +138 -106
  233. package/{global-styles → stylesheets}/color-scheme.css +47 -44
  234. package/{global-styles → stylesheets}/font-face.css +1 -1
  235. package/{global-styles → stylesheets}/index.css +138 -106
  236. package/stylesheets/normalize.css +18 -0
  237. package/{global-styles → stylesheets}/variables.css +80 -58
  238. package/tailwindcss/index.css +569 -301
  239. package/global-styles/legacy-radius.css +0 -5
  240. package/global-styles/normalize.css +0 -11
@@ -3285,21 +3285,25 @@ const getListboxAriaAttributes = (isRequired, labelId, messageId, descriptionId,
3285
3285
  };
3286
3286
  };
3287
3287
 
3288
+ /** Holds the **Porsche Next** font family along with fallback fonts. */
3288
3289
  const fontPorscheNext = "'Porsche Next','Arial Narrow',Arial,'Heiti SC',SimHei,sans-serif";
3289
3290
 
3290
3291
  /** @deprecated since v4.0.0, will be removed with next major release. Use fontPorscheNext instead. */
3291
3292
  const fontFamily = fontPorscheNext;
3292
3293
 
3294
+ /** Holds a dynamic default line height specifically optimized for the Porsche Next typeface. */
3293
3295
  const leadingNormal$1 = 'calc(6px + 2.125ex)';
3294
3296
 
3295
3297
  /** @deprecated since v4.0.0, will be removed with next major release. Use leadingNormal instead */
3296
3298
  const fontLineHeight = leadingNormal$1;
3297
3299
 
3300
+ /** Holds the **small** font size optimized for the Porsche Next typeface. */
3298
3301
  const typescaleSm = '1rem';
3299
3302
 
3300
3303
  /** @deprecated since v4.0.0, will be removed with next major release. Use typescaleSm instead. */
3301
3304
  const fontSizeTextSmall = typescaleSm;
3302
3305
 
3306
+ /** Holds the **x-small** font size optimized for the Porsche Next typeface. */
3303
3307
  const typescaleXs = '.875rem';
3304
3308
 
3305
3309
  /** @deprecated since v4.0.0, will be removed with next major release. Use typescaleXs instead. */
@@ -3311,6 +3315,7 @@ const fontStyleNormal = 'normal';
3311
3315
  /** @deprecated since v4.0.0, will be removed with next major release. Use 'normal' instead. */
3312
3316
  const fontVariant = 'normal';
3313
3317
 
3318
+ /** Holds the **normal** font weight optimized for the Porsche Next typeface. */
3314
3319
  const fontWeightNormal = 400;
3315
3320
 
3316
3321
  /** @deprecated since v4.0.0, will be removed with next major release. Use fontWeightNormal instead. */
@@ -3318,26 +3323,32 @@ const fontWeightRegular = fontWeightNormal;
3318
3323
 
3319
3324
  const breakpointBase = 0;
3320
3325
 
3326
+ /** Holds the `lg` breakpoint value, usable with `px`. */
3321
3327
  const breakpointLg = 1300;
3322
3328
 
3323
3329
  const breakpointL = breakpointLg;
3324
3330
 
3331
+ /** Holds the `md` breakpoint value, usable with `px`. */
3325
3332
  const breakpointMd = 1000;
3326
3333
 
3327
3334
  const breakpointM = breakpointMd;
3328
3335
 
3336
+ /** Holds the `sm` breakpoint value, usable with `px`. */
3329
3337
  const breakpointSm = 760;
3330
3338
 
3331
3339
  const breakpointS = breakpointSm;
3332
3340
 
3341
+ /** Holds the `xl` breakpoint value, usable with `px`. */
3333
3342
  const breakpointXl = 1760;
3334
3343
 
3335
3344
  const breakpointXL = breakpointXl;
3336
3345
 
3346
+ /** Holds the `xs` breakpoint value, usable with `px`. */
3337
3347
  const breakpointXs = 480;
3338
3348
 
3339
3349
  const breakpointXS = breakpointXs;
3340
3350
 
3351
+ /** Holds the `2xl` breakpoint value, usable with `px`. */
3341
3352
  const breakpoint2Xl = 1920;
3342
3353
 
3343
3354
  const breakpointXXL = breakpoint2Xl;
@@ -3452,7 +3463,7 @@ const hasShowPickerSupport = () => (hasDocument &&
3452
3463
  'showPicker' in HTMLInputElement.prototype &&
3453
3464
  CSS.supports('selector(::-webkit-calendar-picker-indicator)'));
3454
3465
 
3455
- const prefix = `[Porsche Design System v${"4.2.0-rc.0"}]` // this part isn't covered by unit tests
3466
+ const prefix = `[Porsche Design System v${"4.2.0-rc.2"}]` // this part isn't covered by unit tests
3456
3467
  ;
3457
3468
  const consoleError$1 = (...messages) => {
3458
3469
  console.error(prefix, ...messages);
@@ -3551,7 +3562,11 @@ const isValidArray = (propName, arr, validator) => {
3551
3562
  : {
3552
3563
  propName,
3553
3564
  propValue: arr,
3554
- propType: validator(propName, null).propType, // Get propType by passing in null which will always result in error
3565
+ // Derive propType for the error message by invoking the validator with a value that is
3566
+ // guaranteed to fail. `null` works for most built-in validators (string/number/boolean),
3567
+ // but not for `AllowedTypes.null` itself, so fall back to a unique Symbol which fails
3568
+ // every typeof-based validator.
3569
+ propType: (validator(propName, null) ?? validator(propName, Symbol('invalid')))?.propType,
3555
3570
  };
3556
3571
  if (validationError) {
3557
3572
  return { ...validationError, propType: `${validationError.propType}[]` };
@@ -3573,6 +3588,162 @@ const internalValidateProps = {
3573
3588
  const breakpointCustomizableTemplate = `value, ${internalValidateProps
3574
3589
  .formatObjectOutput(breakpoints.reduce((prev, key) => ({ ...prev, [key + (key !== 'base' ? '?' : '')]: 'value' }), {}))
3575
3590
  .replace(/"/g, '')}`;
3591
+ // ISO locale code to AI text mapping
3592
+ const AI_TAG_TRANSLATIONS = {
3593
+ bg_BG: {
3594
+ short: 'ИИ',
3595
+ long: 'изкуствен интелект',
3596
+ generated: 'генериран от изкуствен интелект',
3597
+ modified: 'модифициран от изкуствен интелект',
3598
+ },
3599
+ bs_BA: { short: 'AI', long: 'vještačka inteligencija', generated: 'AI-generisano', modified: 'AI-modifikovano' },
3600
+ cs_CZ: { short: 'AI', long: 'umělá inteligence', generated: 'Vytvořeno AI', modified: 'Upraveno AI' },
3601
+ da_DK: { short: 'KI', long: 'kunstig intelligens', generated: 'AI-genereret', modified: 'AI-modificeret' },
3602
+ de_DE: {
3603
+ short: 'KI',
3604
+ long: 'künstliche Intelligenz',
3605
+ generated: 'KI-generiert',
3606
+ modified: 'KI-modifiziert',
3607
+ },
3608
+ el_GR: {
3609
+ short: 'ΤΝ',
3610
+ long: 'τεχνητή νοημοσύνη',
3611
+ generated: 'Δημιουργημένο από ΤΝ',
3612
+ modified: 'Τροποποιημένο από ΤΝ',
3613
+ },
3614
+ en_CY: { short: 'AI', long: 'artificial intelligence', generated: 'AI-generated', modified: 'AI-modified' },
3615
+ en_GB: { short: 'AI', long: 'artificial intelligence', generated: 'AI-generated', modified: 'AI-modified' },
3616
+ en_US: { short: 'AI', long: 'artificial intelligence', generated: 'AI-generated', modified: 'AI-modified' },
3617
+ es_ES: {
3618
+ short: 'IA',
3619
+ long: 'inteligencia artificial',
3620
+ generated: 'Generado por IA',
3621
+ modified: 'Modificado por IA',
3622
+ },
3623
+ et_EE: { short: 'TI', long: 'tehisintellekt', generated: 'TI abil loodud', modified: 'TI abil muudetud' },
3624
+ fi_FI: {
3625
+ short: 'AI',
3626
+ long: 'tekoäly',
3627
+ generated: 'Tekoälyn tuottama',
3628
+ modified: 'Tekoälyn muokkaama',
3629
+ },
3630
+ fr_FR: {
3631
+ short: 'IA',
3632
+ long: 'intelligence artificielle',
3633
+ generated: 'Généré par une IA',
3634
+ modified: 'Modifié par une IA',
3635
+ },
3636
+ he_IL: {
3637
+ short: 'AI',
3638
+ long: 'בינה מלאכותית',
3639
+ generated: 'נוצר על ידי בינה מלאכותית',
3640
+ modified: 'נערך באמצעות בינה מלאכותית',
3641
+ },
3642
+ hr_HR: {
3643
+ short: 'UI',
3644
+ long: 'umjetna inteligencija',
3645
+ generated: 'Generirano uz pomoć UI',
3646
+ modified: 'Izmijenjeno uz pomoć UI',
3647
+ },
3648
+ hu_HU: {
3649
+ short: 'MI',
3650
+ long: 'mesterséges intelligencia',
3651
+ generated: 'MI-generált',
3652
+ modified: 'MI-módosított',
3653
+ },
3654
+ is_IS: {
3655
+ short: 'AI',
3656
+ long: 'gervigreind',
3657
+ generated: 'Búið til af gervigreind',
3658
+ modified: 'Breytt af gervigreind',
3659
+ },
3660
+ it_IT: {
3661
+ short: 'IA',
3662
+ long: 'intelligenza artificiale',
3663
+ generated: "Generato dall'IA",
3664
+ modified: "Modificato dall'IA",
3665
+ },
3666
+ lt_LT: {
3667
+ short: 'DI',
3668
+ long: 'dirbtinis intelektas',
3669
+ generated: 'DI sugeneruotas',
3670
+ modified: 'DI modifikuotas',
3671
+ },
3672
+ lv_LV: {
3673
+ short: 'MI',
3674
+ long: 'mākslīgais intelekts',
3675
+ generated: 'MI ģenerēts',
3676
+ modified: 'MI pārveidots',
3677
+ },
3678
+ me_ME: { short: 'AI', long: 'veštačka inteligencija', generated: 'AI-generisano', modified: 'AI-modifikovano' },
3679
+ mk_MK: {
3680
+ short: 'ВИ',
3681
+ long: 'вештачка интелигенција',
3682
+ generated: 'Создадено од ВИ',
3683
+ modified: 'Изменето со ВИ',
3684
+ },
3685
+ mt_MT: { short: 'AI', long: 'artificial intelligence', generated: 'AI-generated', modified: 'AI-modified' },
3686
+ nb_NO: {
3687
+ short: 'KI',
3688
+ long: 'kunstig intelligens',
3689
+ generated: 'KI-generert',
3690
+ modified: 'KI-modifisert',
3691
+ },
3692
+ nl_NL: {
3693
+ short: 'AI',
3694
+ long: 'kunstmatige intelligentie',
3695
+ generated: 'Door AI gegenereerd',
3696
+ modified: 'Door AI gewijzigd',
3697
+ },
3698
+ pl_PL: {
3699
+ short: 'SI',
3700
+ long: 'sztuczna inteligencja',
3701
+ generated: 'Wygenerowane przez SI',
3702
+ modified: 'Zmodyfikowane przez SI',
3703
+ },
3704
+ pt_PT: {
3705
+ short: 'IA',
3706
+ long: 'inteligência artificial',
3707
+ generated: 'Gerado por IA',
3708
+ modified: 'Modificado por IA',
3709
+ },
3710
+ ro_RO: {
3711
+ short: 'IA',
3712
+ long: 'inteligență artificială',
3713
+ generated: 'Generat cu ajutorul IA',
3714
+ modified: 'Modificat cu ajutorul IA',
3715
+ },
3716
+ ru_RU: {
3717
+ short: 'ИИ',
3718
+ long: 'искусственный интеллект',
3719
+ generated: 'Сгенерировано ИИ',
3720
+ modified: 'Изменено ИИ',
3721
+ },
3722
+ sk_SK: { short: 'AI', long: 'umelá inteligencia', generated: 'Vytvorené AI', modified: 'Upravené AI' },
3723
+ sl_SI: { short: 'UI', long: 'umetna inteligenca', generated: 'Ustvarjeno z UI', modified: 'Spremenjeno z UI' },
3724
+ sr_RS: { short: 'AI', long: 'veštačka inteligencija', generated: 'AI-generisano', modified: 'AI-modifikovano' },
3725
+ sv_SE: {
3726
+ short: 'AI',
3727
+ long: 'artificiell intelligens',
3728
+ generated: 'AI-genererad',
3729
+ modified: 'AI-modifierad',
3730
+ },
3731
+ tr_TR: {
3732
+ short: 'AI',
3733
+ long: 'yapay zeka',
3734
+ generated: 'Yapay zeka tarafından üretilmiş',
3735
+ modified: 'Yapay zeka tarafından değiştirilmiş',
3736
+ },
3737
+ uk_UA: {
3738
+ short: 'ШІ',
3739
+ long: 'штучний інтелект',
3740
+ generated: 'Згенеровано ШІ',
3741
+ modified: 'Змінено ШІ',
3742
+ },
3743
+ };
3744
+ const getAiTagTranslation = (locale) => {
3745
+ return AI_TAG_TRANSLATIONS[locale] ?? AI_TAG_TRANSLATIONS['en_US'];
3746
+ };
3576
3747
  const getBannerAriaAttributes = (state, heading) => {
3577
3748
  const isAlert = state === 'warning' || state === 'error';
3578
3749
  return {
@@ -3615,7 +3786,7 @@ const descriptionId = 'description';
3615
3786
  var CRESTS_MANIFEST = { "porscheCrest": { "1x": { "png": "porsche-crest.d76137c@1x.png", "webp": "porsche-crest.0d0cc89@1x.webp" }, "2x": { "png": "porsche-crest.8a292fb@2x.png", "webp": "porsche-crest.2245c45@2x.webp" }, "3x": { "png": "porsche-crest.18d6f02@3x.png", "webp": "porsche-crest.19b4292@3x.webp" } } };
3616
3787
 
3617
3788
  // index.ts
3618
- var FLAGS_MANIFEST = { "ad": "ad.da62168.svg", "ae": "ae.070e003.svg", "al": "al.6499c8e.svg", "am": "am.b228450.svg", "ar": "ar.d3ecad6.svg", "at": "at.19b8f3c.svg", "au": "au.9ccee18.svg", "az": "az.463b388.svg", "ba": "ba.57e215c.svg", "bd": "bd.647f155.svg", "be": "be.6601715.svg", "bg": "bg.2a1ef06.svg", "bh": "bh.f6ce1b1.svg", "bn": "bn.5bb9faf.svg", "bo": "bo.2a95304.svg", "br": "br.071ef4a.svg", "by": "by.bbe68ec.svg", "ca": "ca.3524ab1.svg", "ch": "ch.1cc9a58.svg", "cl": "cl.7226017.svg", "cn": "cn.3e2e196.svg", "co": "co.40bd283.svg", "cr": "cr.d275fe4.svg", "cw": "cw.2a2e69b.svg", "cy": "cy.eecbae2.svg", "cz": "cz.84fcee1.svg", "de": "de.b575e11.svg", "dk": "dk.8faad28.svg", "do": "do.8cbff53.svg", "dz": "dz.92ac4dd.svg", "ec": "ec.8b790aa.svg", "ee": "ee.0d69319.svg", "eg": "eg.3d6e702.svg", "es": "es.8259527.svg", "fi": "fi.abcdec4.svg", "fr": "fr.e6f575e.svg", "gb": "gb.c8be57d.svg", "ge": "ge.1828ada.svg", "gh": "gh.dcc9966.svg", "gi": "gi.931c4f3.svg", "gr": "gr.8d404a0.svg", "gt": "gt.d28dda2.svg", "hk": "hk.a791020.svg", "hn": "hn.61767b1.svg", "hr": "hr.09fd51c.svg", "ht": "ht.a0f15d3.svg", "hu": "hu.1e61356.svg", "id": "id.01c0ab3.svg", "ie": "ie.cec77fa.svg", "il": "il.add57d7.svg", "in": "in.15aa313.svg", "is": "is.2d193b5.svg", "it": "it.d26868c.svg", "jm": "jm.6266f91.svg", "jo": "jo.6759235.svg", "jp": "jp.32c39a2.svg", "ke": "ke.96a51ec.svg", "kh": "kh.ac03e8a.svg", "kr": "kr.f9b3228.svg", "kw": "kw.ecb70e0.svg", "kz": "kz.5f31a4b.svg", "lb": "lb.eed52fa.svg", "li": "li.30156a7.svg", "lk": "lk.1b44ee9.svg", "lt": "lt.5448f1b.svg", "lu": "lu.11992af.svg", "lv": "lv.c45d630.svg", "ma": "ma.37960b7.svg", "mc": "mc.bc42fcb.svg", "md": "md.7ed7b6b.svg", "me": "me.73d5280.svg", "mk": "mk.08eaad6.svg", "mn": "mn.fd0cde6.svg", "mo": "mo.a7e3c7c.svg", "mq": "mq.f55f7ca.svg", "mt": "mt.1ee108a.svg", "mu": "mu.f901db6.svg", "mx": "mx.c39bf62.svg", "my": "my.b7366cd.svg", "ng": "ng.d1ac1ea.svg", "nl": "nl.0569e12.svg", "no": "no.b4f2c38.svg", "nz": "nz.a70a24d.svg", "om": "om.d63d939.svg", "pa": "pa.f33ec1a.svg", "pe": "pe.2cacc5f.svg", "pf": "pf.50807f4.svg", "ph": "ph.1df49d2.svg", "pk": "pk.86b11da.svg", "pl": "pl.e0ef0ec.svg", "pr": "pr.79d60a1.svg", "pt": "pt.c903b10.svg", "py": "py.e39a820.svg", "qa": "qa.47e5e31.svg", "re": "re.e6f575e.svg", "ro": "ro.9d14812.svg", "rs": "rs.7c7c211.svg", "ru": "ru.eb87254.svg", "sa": "sa.1a8f5b9.svg", "se": "se.f2705e2.svg", "sg": "sg.bca7a48.svg", "si": "si.c018e71.svg", "sk": "sk.d3177a9.svg", "sv": "sv.26aaba9.svg", "th": "th.1c48f08.svg", "tn": "tn.e119e22.svg", "tr": "tr.b4170f9.svg", "tt": "tt.7f3e1df.svg", "tw": "tw.df76c19.svg", "ua": "ua.73e5a3e.svg", "us": "us.10d7b02.svg", "uy": "uy.666b0bc.svg", "uz": "uz.8fa8ad3.svg", "ve": "ve.6cd1ec7.svg", "vn": "vn.3e0128f.svg", "xx": "xx.acc7ae8.svg", "za": "za.1bb0840.svg" };
3789
+ var FLAGS_MANIFEST = { "ad": "ad.da62168.svg", "ae": "ae.070e003.svg", "al": "al.6499c8e.svg", "am": "am.b228450.svg", "ar": "ar.d3ecad6.svg", "at": "at.19b8f3c.svg", "au": "au.9ccee18.svg", "az": "az.463b388.svg", "ba": "ba.57e215c.svg", "bd": "bd.647f155.svg", "be": "be.6601715.svg", "bg": "bg.2a1ef06.svg", "bh": "bh.f6ce1b1.svg", "bn": "bn.5bb9faf.svg", "bo": "bo.2a95304.svg", "br": "br.071ef4a.svg", "by": "by.bbe68ec.svg", "ca": "ca.3524ab1.svg", "ch": "ch.1cc9a58.svg", "cl": "cl.7226017.svg", "cn": "cn.3e2e196.svg", "co": "co.40bd283.svg", "cr": "cr.d275fe4.svg", "cw": "cw.2a2e69b.svg", "cy": "cy.eecbae2.svg", "cz": "cz.84fcee1.svg", "de": "de.b575e11.svg", "dk": "dk.8faad28.svg", "do": "do.8cbff53.svg", "dz": "dz.92ac4dd.svg", "ec": "ec.8b790aa.svg", "ee": "ee.0d69319.svg", "eg": "eg.3d6e702.svg", "es": "es.8259527.svg", "fi": "fi.abcdec4.svg", "fr": "fr.e6f575e.svg", "gb": "gb.c8be57d.svg", "ge": "ge.1828ada.svg", "gh": "gh.dcc9966.svg", "gi": "gi.931c4f3.svg", "gr": "gr.8d404a0.svg", "gt": "gt.d28dda2.svg", "hk": "hk.a791020.svg", "hn": "hn.61767b1.svg", "hr": "hr.09fd51c.svg", "ht": "ht.a0f15d3.svg", "hu": "hu.1e61356.svg", "id": "id.01c0ab3.svg", "ie": "ie.cec77fa.svg", "il": "il.add57d7.svg", "in": "in.15aa313.svg", "is": "is.2d193b5.svg", "it": "it.d26868c.svg", "jm": "jm.6266f91.svg", "jo": "jo.6759235.svg", "jp": "jp.32c39a2.svg", "ke": "ke.96a51ec.svg", "kh": "kh.ac03e8a.svg", "kr": "kr.f9b3228.svg", "kw": "kw.ecb70e0.svg", "kz": "kz.5f31a4b.svg", "lb": "lb.eed52fa.svg", "li": "li.30156a7.svg", "lk": "lk.1b44ee9.svg", "lt": "lt.5448f1b.svg", "lu": "lu.11992af.svg", "lv": "lv.c45d630.svg", "ma": "ma.3dd41af.svg", "mc": "mc.bc42fcb.svg", "md": "md.7ed7b6b.svg", "me": "me.73d5280.svg", "mk": "mk.08eaad6.svg", "mn": "mn.fd0cde6.svg", "mo": "mo.a7e3c7c.svg", "mq": "mq.f55f7ca.svg", "mt": "mt.1ee108a.svg", "mu": "mu.f901db6.svg", "mx": "mx.c39bf62.svg", "my": "my.b7366cd.svg", "ng": "ng.d1ac1ea.svg", "nl": "nl.0569e12.svg", "no": "no.b4f2c38.svg", "nz": "nz.a70a24d.svg", "om": "om.d63d939.svg", "pa": "pa.f33ec1a.svg", "pe": "pe.2cacc5f.svg", "pf": "pf.50807f4.svg", "ph": "ph.1df49d2.svg", "pk": "pk.86b11da.svg", "pl": "pl.e0ef0ec.svg", "pr": "pr.79d60a1.svg", "pt": "pt.c903b10.svg", "py": "py.e39a820.svg", "qa": "qa.47e5e31.svg", "re": "re.e6f575e.svg", "ro": "ro.9d14812.svg", "rs": "rs.7c7c211.svg", "ru": "ru.eb87254.svg", "sa": "sa.7fccafb.svg", "se": "se.f2705e2.svg", "sg": "sg.bca7a48.svg", "si": "si.c018e71.svg", "sk": "sk.d3177a9.svg", "sv": "sv.26aaba9.svg", "th": "th.1c48f08.svg", "tn": "tn.e119e22.svg", "tr": "tr.b4170f9.svg", "tt": "tt.7f3e1df.svg", "tw": "tw.df76c19.svg", "ua": "ua.73e5a3e.svg", "us": "us.10d7b02.svg", "uy": "uy.666b0bc.svg", "uz": "uz.8fa8ad3.svg", "ve": "ve.6cd1ec7.svg", "vn": "vn.3e0128f.svg", "xx": "xx.acc7ae8.svg", "za": "za.1bb0840.svg" };
3619
3790
 
3620
3791
  // index.ts
3621
3792
  var ICONS_MANIFEST = { "360": "360.0600731.svg", "4-wheel-drive": "4-wheel-drive.9c218bf.svg", "accessibility": "accessibility.087d747.svg", "active-cabin-ventilation": "active-cabin-ventilation.b081399.svg", "add": "add.fac861a.svg", "adjust": "adjust.ca46bd4.svg", "aggregation": "aggregation.96f06e5.svg", "ai-3d-object": "ai-3d-object.7a85dd7.svg", "ai-code": "ai-code.9afafb7.svg", "ai-edit": "ai-edit.75a4765.svg", "ai-image": "ai-image.c786d48.svg", "ai-scale": "ai-scale.846fde0.svg", "ai-sound": "ai-sound.727ea7a.svg", "ai-spark": "ai-spark.a134e18.svg", "ai-spark-filled": "ai-spark-filled.2d5d971.svg", "ai-text": "ai-text.fc84e09.svg", "ai-video": "ai-video.759a7f2.svg", "arrow-compact-down": "arrow-compact-down.9b37afe.svg", "arrow-compact-left": "arrow-compact-left.7169de6.svg", "arrow-compact-right": "arrow-compact-right.cc2d1d2.svg", "arrow-compact-up": "arrow-compact-up.36724bb.svg", "arrow-double-down": "arrow-double-down.61ae4d7.svg", "arrow-double-left": "arrow-double-left.1b576eb.svg", "arrow-double-right": "arrow-double-right.dcfabff.svg", "arrow-double-up": "arrow-double-up.fb73db5.svg", "arrow-down": "arrow-down.49c6983.svg", "arrow-down-left": "arrow-down-left.83597e3.svg", "arrow-down-right": "arrow-down-right.f6ec21e.svg", "arrow-first": "arrow-first.beb7d9f.svg", "arrow-head-down": "arrow-head-down.1e3cbb8.svg", "arrow-head-left": "arrow-head-left.cf1395d.svg", "arrow-head-right": "arrow-head-right.304b330.svg", "arrow-head-up": "arrow-head-up.6d3fd23.svg", "arrow-last": "arrow-last.cc24903.svg", "arrow-left": "arrow-left.e03c25b.svg", "arrow-right": "arrow-right.872716b.svg", "arrow-up": "arrow-up.9d294d1.svg", "arrow-up-left": "arrow-up-left.9e7da2c.svg", "arrow-up-right": "arrow-up-right.776feb2.svg", "arrows": "arrows.de040f9.svg", "attachment": "attachment.8f3dd0a.svg", "augmented-reality": "augmented-reality.8b6ce95.svg", "battery-empty": "battery-empty.38b4b15.svg", "battery-empty-co2": "battery-empty-co2.c4cabef.svg", "battery-empty-fuel": "battery-empty-fuel.e833e13.svg", "battery-full": "battery-full.03de75d.svg", "battery-half": "battery-half.11f1ef8.svg", "battery-one-quarter": "battery-one-quarter.91235a0.svg", "battery-three-quarters": "battery-three-quarters.dcf768f.svg", "bell": "bell.1eab3a2.svg", "bookmark": "bookmark.9d6982f.svg", "bookmark-filled": "bookmark-filled.327ac78.svg", "brain": "brain.838387a.svg", "broadcast": "broadcast.0ad5a15.svg", "cabriolet": "cabriolet.ab33aab.svg", "calculator": "calculator.a323a2d.svg", "calendar": "calendar.70a6a12.svg", "camera": "camera.e5e95b9.svg", "car": "car.35229c9.svg", "car-battery": "car-battery.895510f.svg", "card": "card.f284448.svg", "charging-active": "charging-active.c3aa214.svg", "charging-network": "charging-network.a40072f.svg", "charging-state": "charging-state.f56d8df.svg", "charging-station": "charging-station.5ff1ed4.svg", "chart": "chart.c8c32d2.svg", "chat": "chat.7945544.svg", "check": "check.8ba06be.svg", "city": "city.5ae672c.svg", "climate": "climate.a9d5818.svg", "climate-control": "climate-control.ce31939.svg", "clock": "clock.c88a1ef.svg", "close": "close.eec3c5d.svg", "closed-caption": "closed-caption.ceaf6cb.svg", "cloud": "cloud.2c3959e.svg", "co2-class": "co2-class.fc49211.svg", "co2-emission": "co2-emission.c42e7f8.svg", "color-picker": "color-picker.598f402.svg", "compare": "compare.6578829.svg", "compass": "compass.f90f319.svg", "configurate": "configurate.5311c8d.svg", "copy": "copy.0fcd086.svg", "country-road": "country-road.d2bbc5a.svg", "coupe": "coupe.7549e3e.svg", "cubic-capacity": "cubic-capacity.7b0b8c8.svg", "cut": "cut.851e5c2.svg", "delete": "delete.5a8c8ca.svg", "disable": "disable.5918c32.svg", "dislike": "dislike.51614b0.svg", "dislike-filled": "dislike-filled.e1a8c4d.svg", "document": "document.df36b6c.svg", "door": "door.61c32d6.svg", "download": "download.c06f455.svg", "drag": "drag.9e893fd.svg", "duration": "duration.94e5252.svg", "ear": "ear.27a802f.svg", "edit": "edit.330f321.svg", "email": "email.f2530de.svg", "error": "error.b8ae9ad.svg", "error-filled": "error-filled.a4d06ed.svg", "exclamation": "exclamation.46cd17b.svg", "exclamation-filled": "exclamation-filled.9d09ed1.svg", "external": "external.fb677b9.svg", "fast-backward": "fast-backward.aaca8b9.svg", "fast-forward": "fast-forward.4bc43ff.svg", "file-csv": "file-csv.4140e24.svg", "file-excel": "file-excel.56d577d.svg", "filter": "filter.610f808.svg", "fingerprint": "fingerprint.6a85170.svg", "flag": "flag.7af5baf.svg", "flash": "flash.88a2ada.svg", "fuel-station": "fuel-station.f7bdf51.svg", "garage": "garage.5014e8d.svg", "genuine-parts": "genuine-parts.6bfddde.svg", "geo-localization": "geo-localization.516d603.svg", "gift": "gift.7beb1eb.svg", "globe": "globe.56cc8fc.svg", "grid": "grid.06bc31a.svg", "grip": "grip.5ec4289.svg", "group": "group.051436a.svg", "hand": "hand.4e85714.svg", "heart": "heart.9a5962e.svg", "heart-filled": "heart-filled.dd7decf.svg", "highway": "highway.bf0eb24.svg", "highway-filled": "highway-filled.38e93fb.svg", "history": "history.f09645c.svg", "home": "home.7b1d1da.svg", "horn": "horn.bf47b1a.svg", "image": "image.b2614f0.svg", "increase": "increase.700012f.svg", "information": "information.da41162.svg", "information-filled": "information-filled.8f08911.svg", "key": "key.ee5d89b.svg", "laptop": "laptop.c422480.svg", "leaf": "leaf.92ca6a6.svg", "leather": "leather.1d2769a.svg", "light": "light.f0eb8e4.svg", "like": "like.a7468cd.svg", "like-filled": "like-filled.a0126c1.svg", "limousine": "limousine.87799d5.svg", "linked": "linked.8f30cb5.svg", "list": "list.411dd00.svg", "locate": "locate.6554f9e.svg", "lock": "lock.243281a.svg", "lock-open": "lock-open.95803d2.svg", "logo-apple-carplay": "logo-apple-carplay.c872af9.svg", "logo-apple-music": "logo-apple-music.1395f37.svg", "logo-apple-podcast": "logo-apple-podcast.09be038.svg", "logo-baidu": "logo-baidu.9e89c7d.svg", "logo-delicious": "logo-delicious.e83f574.svg", "logo-digg": "logo-digg.f096670.svg", "logo-facebook": "logo-facebook.74abe88.svg", "logo-foursquare": "logo-foursquare.d638fd8.svg", "logo-gmail": "logo-gmail.5f96ee2.svg", "logo-google": "logo-google.1dee423.svg", "logo-hatena": "logo-hatena.da509f0.svg", "logo-instagram": "logo-instagram.b916daa.svg", "logo-kaixin": "logo-kaixin.b1211a2.svg", "logo-kakaotalk": "logo-kakaotalk.38f5396.svg", "logo-kununu": "logo-kununu.79344ff.svg", "logo-linkedin": "logo-linkedin.b72559f.svg", "logo-naver": "logo-naver.75588fe.svg", "logo-pinterest": "logo-pinterest.e8f6963.svg", "logo-qq": "logo-qq.6d9b6d9.svg", "logo-qq-share": "logo-qq-share.ee864d9.svg", "logo-reddit": "logo-reddit.da13e44.svg", "logo-skyrock": "logo-skyrock.eb2f28d.svg", "logo-snapchat": "logo-snapchat.ef706a2.svg", "logo-sohu": "logo-sohu.a30c66b.svg", "logo-spotify": "logo-spotify.2ec4b2d.svg", "logo-tecent": "logo-tecent.d119e85.svg", "logo-telegram": "logo-telegram.d151481.svg", "logo-tiktok": "logo-tiktok.2f3a465.svg", "logo-tumblr": "logo-tumblr.c689f44.svg", "logo-twitter": "logo-twitter.5f2490a.svg", "logo-viber": "logo-viber.198bd43.svg", "logo-vk": "logo-vk.37b94e0.svg", "logo-wechat": "logo-wechat.83b2b98.svg", "logo-weibo": "logo-weibo.c8dacee.svg", "logo-whatsapp": "logo-whatsapp.add9a6d.svg", "logo-x": "logo-x.5f2490a.svg", "logo-xing": "logo-xing.3a8df0f.svg", "logo-yahoo": "logo-yahoo.8cbd0ba.svg", "logo-youku": "logo-youku.fe988d0.svg", "logo-youtube": "logo-youtube.da3798f.svg", "logout": "logout.7ec7451.svg", "map": "map.c16f618.svg", "menu-dots-horizontal": "menu-dots-horizontal.788f7fa.svg", "menu-dots-vertical": "menu-dots-vertical.4970a65.svg", "menu-lines": "menu-lines.e332216.svg", "microphone": "microphone.8ecdce6.svg", "minus": "minus.f6d964c.svg", "mobile": "mobile.7f35446.svg", "moon": "moon.5b73246.svg", "new-chat": "new-chat.6ba4fae.svg", "news": "news.5b604b0.svg", "north-arrow": "north-arrow.2da1dbe.svg", "oil-can": "oil-can.cb58fc7.svg", "online-search": "online-search.90e9ab1.svg", "parking-brake": "parking-brake.45704bd.svg", "parking-light": "parking-light.c49a231.svg", "paste": "paste.dd60261.svg", "pause": "pause.65f20ae.svg", "phone": "phone.f4f774b.svg", "pin": "pin.3417cec.svg", "pin-filled": "pin-filled.7b8e9ba.svg", "pivot": "pivot.3ae18b8.svg", "play": "play.03ae554.svg", "play-filled": "play-filled.0fb6689.svg", "plug": "plug.c159935.svg", "plus": "plus.319993e.svg", "preheating": "preheating.e2a796f.svg", "price-tag": "price-tag.f0d3917.svg", "printer": "printer.f59b0ee.svg", "purchase": "purchase.9cd6d65.svg", "push-pin": "push-pin.89e4ead.svg", "push-pin-off": "push-pin-off.ba99213.svg", "qr": "qr.87a49a3.svg", "qr-off": "qr-off.64e21b9.svg", "question": "question.3402a63.svg", "question-filled": "question-filled.cf25dd5.svg", "racing-flag": "racing-flag.b7ddcc8.svg", "radar": "radar.de5a6c1.svg", "radio": "radio.2b48e53.svg", "refresh": "refresh.41fd868.svg", "replay": "replay.55a99f2.svg", "reset": "reset.e53d52f.svg", "return": "return.46d30de.svg", "road": "road.bd3d4bc.svg", "roof-closed": "roof-closed.018d021.svg", "roof-open": "roof-open.51c8ee6.svg", "route": "route.f4fbbb4.svg", "rss": "rss.0e77baf.svg", "save": "save.6171ff5.svg", "screen": "screen.420be15.svg", "search": "search.3f0f1ce.svg", "seat": "seat.a3ebc40.svg", "send": "send.b32099c.svg", "service-technician": "service-technician.8749028.svg", "share": "share.a0b30da.svg", "shopping-bag": "shopping-bag.3f91a9b.svg", "shopping-bag-filled": "shopping-bag-filled.abf6c98.svg", "shopping-cart": "shopping-cart.370e224.svg", "shopping-cart-filled": "shopping-cart-filled.e0c3a65.svg", "sidebar": "sidebar.8e43896.svg", "sidelights": "sidelights.65c9dd9.svg", "skip-backward": "skip-backward.05fe8cd.svg", "skip-forward": "skip-forward.45a7bc0.svg", "snowflake": "snowflake.83907b3.svg", "sort": "sort.92b50bd.svg", "stack": "stack.804af93.svg", "star": "star.4c5bb15.svg", "star-filled": "star-filled.84ef2f6.svg", "steering-wheel": "steering-wheel.4dea19e.svg", "stop": "stop.173b6ac.svg", "stopwatch": "stopwatch.0e048a4.svg", "subtract": "subtract.57eed1d.svg", "success": "success.b16d4c1.svg", "success-filled": "success-filled.1832d98.svg", "sun": "sun.4301cbd.svg", "suv": "suv.33ac4aa.svg", "switch": "switch.66f74c4.svg", "tablet": "tablet.07341ac.svg", "tachometer": "tachometer.3a2fc3c.svg", "theme": "theme.08f6508.svg", "tire": "tire.e5c9372.svg", "trigger-finger": "trigger-finger.65aa6e2.svg", "truck": "truck.2c26c04.svg", "turismo": "turismo.a066b9f.svg", "unlinked": "unlinked.e9afe39.svg", "upload": "upload.d1f5a2a.svg", "user": "user.c18dabe.svg", "user-filled": "user-filled.2ea646d.svg", "user-group": "user-group.79cdf86.svg", "user-manual": "user-manual.470e243.svg", "video": "video.7590689.svg", "view": "view.5b4d7f6.svg", "view-off": "view-off.a4ede54.svg", "volume-off": "volume-off.bcd49e7.svg", "volume-up": "volume-up.2084f60.svg", "warning": "warning.59927e6.svg", "warning-filled": "warning-filled.1f6fe21.svg", "weather": "weather.9c96bd7.svg", "weight": "weight.b57a60d.svg", "wifi": "wifi.e2a8d9c.svg", "work": "work.9dd71a4.svg", "wrench": "wrench.09a2a67.svg", "wrenches": "wrenches.d2ed45d.svg", "zoom-in": "zoom-in.ff299b8.svg", "zoom-out": "zoom-out.ebb6246.svg" };
@@ -3935,4 +4106,4 @@ const getTextTagType = (host, tag) => {
3935
4106
  return tag;
3936
4107
  };
3937
4108
 
3938
- export { DISPLAY_TAGS, HEADING_TAGS, ItemType, TEXT_TAGS, anchorSlot, attributeMutationMap, buildCrestImgSrc, buildCrestSrcSet, buildFlagUrl, buildIconUrl, consoleError$1 as consoleError, createPaginationItems, createRange, crestSize, descriptionId, displaySizeToTagMap, getBannerAriaAttributes, getButtonAriaAttributes, getButtonBaseAriaAttributes, getButtonPureAriaAttributes, getCDNBaseURL, getComboboxAriaAttributes, getCurrentActivePage, getDirectChildHTMLElement, getDisplayTagType, getFieldsetAriaAttributes, getHTMLElement, getHasNativePopoverSupport, getHeadingTagType, getInlineNotificationAriaAttributes, getListboxAriaAttributes, getSanitizedActiveTabIndex, getSegmentedControlItemAriaAttributes, getStepperHorizontalIconName, getSvgUrl, getSwitchButtonAriaAttributes, getTagName, getTagNameWithoutPrefix, getTextTagType, getTotalPages, hasDocument, hasShowPickerSupport, hasSpecificDirectChildTag, hasVisibleIcon, hasWindow$1 as hasWindow, headerSlot, internalDrilldown, isCurrentInput, isDisabledOrLoading, isElementOfKind, isInfinitePagination, isListTypeOrdered, isSortable, isStateCompleteOrWarning, isUrl, labelId, mergeInputNativeAria, observedNodesMap, parseAndGetAriaAttributes, parseJSONAttribute, setAriaIDREF, supportsConstructableStylesheets, supportsNativePopover, tempDiv, tempIcon, tempLabel, traverseTreeAndUpdateState, updateDrilldownItemState };
4109
+ export { AI_TAG_TRANSLATIONS, DISPLAY_TAGS, HEADING_TAGS, ItemType, TEXT_TAGS, anchorSlot, attributeMutationMap, buildCrestImgSrc, buildCrestSrcSet, buildFlagUrl, buildIconUrl, consoleError$1 as consoleError, createPaginationItems, createRange, crestSize, descriptionId, displaySizeToTagMap, getAiTagTranslation, getBannerAriaAttributes, getButtonAriaAttributes, getButtonBaseAriaAttributes, getButtonPureAriaAttributes, getCDNBaseURL, getComboboxAriaAttributes, getCurrentActivePage, getDirectChildHTMLElement, getDisplayTagType, getFieldsetAriaAttributes, getHTMLElement, getHasNativePopoverSupport, getHeadingTagType, getInlineNotificationAriaAttributes, getListboxAriaAttributes, getSanitizedActiveTabIndex, getSegmentedControlItemAriaAttributes, getStepperHorizontalIconName, getSvgUrl, getSwitchButtonAriaAttributes, getTagName, getTagNameWithoutPrefix, getTextTagType, getTotalPages, hasDocument, hasShowPickerSupport, hasSpecificDirectChildTag, hasVisibleIcon, hasWindow$1 as hasWindow, headerSlot, internalDrilldown, isCurrentInput, isDisabledOrLoading, isElementOfKind, isInfinitePagination, isListTypeOrdered, isSortable, isStateCompleteOrWarning, isUrl, labelId, mergeInputNativeAria, observedNodesMap, parseAndGetAriaAttributes, parseJSONAttribute, setAriaIDREF, supportsConstructableStylesheets, supportsNativePopover, tempDiv, tempIcon, tempLabel, traverseTreeAndUpdateState, updateDrilldownItemState };
@@ -5,21 +5,21 @@ import { useEventCallback, usePrefix, useBrowserLayoutEffect, useMergedClass } f
5
5
  import { syncRef } from '../../utils.mjs';
6
6
  import { DSRAccordion } from '../dsr-components/accordion.mjs';
7
7
 
8
- const PAccordion = /*#__PURE__*/ forwardRef(({ alignMarker = 'end', background = 'none', compact, heading, headingTag = 'h2', onUpdate, open, size = 'small', sticky, className, children, ...rest }, ref) => {
8
+ const PAccordion = /*#__PURE__*/ forwardRef(({ alignMarker = 'end', background = 'none', compact, heading, headingTag = 'h2', indent = false, onUpdate, open, size = 'small', sticky, className, children, ...rest }, ref) => {
9
9
  const elementRef = useRef(undefined);
10
10
  useEventCallback(elementRef, 'update', onUpdate);
11
11
  const WebComponentTag = usePrefix('p-accordion');
12
- const propsToSync = [alignMarker, background, compact, heading, headingTag, open, size, sticky];
12
+ const propsToSync = [alignMarker, background, compact, heading, headingTag, indent, open, size, sticky];
13
13
  useBrowserLayoutEffect(() => {
14
14
  const { current } = elementRef;
15
- ['alignMarker', 'background', 'compact', 'heading', 'headingTag', 'open', 'size', 'sticky'].forEach((propName, i) => (current[propName] = propsToSync[i]));
15
+ ['alignMarker', 'background', 'compact', 'heading', 'headingTag', 'indent', 'open', 'size', 'sticky'].forEach((propName, i) => (current[propName] = propsToSync[i]));
16
16
  }, propsToSync);
17
17
  const props = {
18
18
  ...rest,
19
19
  // @ts-ignore
20
20
  ...(!process.browser
21
21
  ? {
22
- children: (jsx(DSRAccordion, { alignMarker, background, compact, heading, headingTag, open, size, sticky, children })),
22
+ children: (jsx(DSRAccordion, { alignMarker, background, compact, heading, headingTag, indent, open, size, sticky, children })),
23
23
  }
24
24
  : {
25
25
  children,
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, useRef } from 'react';
4
+ import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
5
+ import { syncRef } from '../../utils.mjs';
6
+ import { DSRAiTag } from '../dsr-components/ai-tag.mjs';
7
+
8
+ const PAiTag = /*#__PURE__*/ forwardRef(({ locale = 'en_US', variant = 'generated', className, ...rest }, ref) => {
9
+ const elementRef = useRef(undefined);
10
+ const WebComponentTag = usePrefix('p-ai-tag');
11
+ const propsToSync = [locale, variant];
12
+ useBrowserLayoutEffect(() => {
13
+ const { current } = elementRef;
14
+ ['locale', 'variant'].forEach((propName, i) => (current[propName] = propsToSync[i]));
15
+ }, propsToSync);
16
+ const props = {
17
+ ...rest,
18
+ // @ts-ignore
19
+ ...(!process.browser
20
+ ? {
21
+ children: (jsx(DSRAiTag, { locale, variant })),
22
+ }
23
+ : {
24
+ suppressHydrationWarning: true,
25
+ }),
26
+ 'data-ssr': '',
27
+ class: useMergedClass(elementRef, className),
28
+ ref: syncRef(elementRef, ref)
29
+ };
30
+ // @ts-ignore
31
+ return jsx(WebComponentTag, { ...props });
32
+ });
33
+
34
+ export { PAiTag };
@@ -2,7 +2,7 @@ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
2
  import { splitChildren } from '../../splitChildren.mjs';
3
3
  import { Component } from 'react';
4
4
  import { minifyCss } from '../../minifyCss.mjs';
5
- import { getAccordionCss as getComponentCss$19 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
5
+ import { getAccordionCss as getComponentCss$1a } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
6
6
 
7
7
  /**
8
8
  * @slot {"name": "summary", "description": "Content for the accordion's summary section. Clicking toggles the accordion open and closed." }
@@ -24,7 +24,7 @@ class DSRAccordion extends Component {
24
24
  const hasSummaryBefore = namedSlotChildren.filter(({ props: { slot } }) => slot === 'summary-before').length > 0;
25
25
  const hasSummaryAfter = namedSlotChildren.filter(({ props: { slot } }) => slot === 'summary-after').length > 0;
26
26
  const Heading = this.props.headingTag;
27
- const style = minifyCss(getComponentCss$19(this.props.alignMarker, this.props.background, this.props.compact, this.props.open, this.props.sticky, hasSummaryBefore, hasSummaryAfter, this.props.size));
27
+ const style = minifyCss(getComponentCss$1a(this.props.alignMarker, this.props.background, this.props.compact, this.props.indent, this.props.open, this.props.sticky, hasSummaryBefore, hasSummaryAfter, this.props.size));
28
28
  return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("details", { ...(this.props.open ? { open: true } : {}), children: [jsx("summary", { children: hasSummary ? jsx("slot", { name: "summary" }) : jsx(Heading, { children: this.props.heading || jsx("slot", { name: "heading" }) }) }), hasSummaryBefore && jsx("slot", { name: "summary-before" }), hasSummaryAfter && jsx("slot", { name: "summary-after" }), jsx("div", { children: jsx("slot", {}) })] })] }), this.props.children] }));
29
29
  }
30
30
  }
@@ -0,0 +1,16 @@
1
+ import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
2
+ import { Component } from 'react';
3
+ import { minifyCss } from '../../minifyCss.mjs';
4
+ import { getAiTagCss as getComponentCss$19 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
5
+ import { getAiTagTranslation } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
6
+
7
+ class DSRAiTag extends Component {
8
+ host;
9
+ render() {
10
+ const { short, long, generated, modified } = getAiTagTranslation(this.props.locale);
11
+ const style = minifyCss(getComponentCss$19());
12
+ return (jsx(Fragment, { children: jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx("div", { children: this.props.variant !== 'abbreviation' ? (this.props.variant === 'modified' ? (modified) : (generated)) : (jsx("abbr", { title: long, children: short })) })] }) }));
13
+ }
14
+ }
15
+
16
+ export { DSRAiTag };
@@ -25,7 +25,6 @@ class DSRCheckbox extends Component {
25
25
  checkboxInputElement;
26
26
  externalLabel = null;
27
27
  formResetCallback() {
28
- this.props.internals?.setFormValue(this.props.defaultChecked ? this.props.value : undefined);
29
28
  }
30
29
  formDisabledCallback() {
31
30
  // Called when a parent fieldset is disabled or enabled
@@ -6,7 +6,7 @@ import { PButton } from '../components/button.wrapper.mjs';
6
6
  const DialogBase = ({ children,
7
7
  // host,
8
8
  inert, containerClass, ariaAttributes, dismissable = false, header, footer, subFooter, }) => {
9
- return (jsx("dialog", { inert: inert, tabIndex: -1, ...(ariaAttributes ?? {}), children: jsx("div", { className: "scroller", children: jsxs("div", { className: containerClass, children: [dismissable && (jsx(PButton, { className: "dismiss", variant: "secondary", compact: true, type: "button", hideLabel: true, icon: "close", children: `Dismiss ${containerClass}` })), header, children, footer, subFooter] }) }) }));
9
+ return (jsx("dialog", { inert: inert, tabIndex: -1, ...(ariaAttributes ?? {}), children: jsx("div", { className: "scroller", children: jsxs("div", { className: containerClass, children: [dismissable && (jsx(PButton, { className: "dismiss", compact: true, type: "button", hideLabel: true, icon: "close", children: `Dismiss ${containerClass}` })), header, children, footer, subFooter] }) }) }));
10
10
  };
11
11
 
12
12
  export { DialogBase };
@@ -10,7 +10,7 @@ import { PSpinner } from '../components/spinner.wrapper.mjs';
10
10
 
11
11
  const InputBase = ({ children,
12
12
  // host,
13
- id, label, description, loading, initialLoading, required, disabled, state, message, readOnly, type, form, placeholder, maxLength, minLength, max, min, value, step, spellCheck, autoComplete, pattern, multiple, name,
13
+ id, label, description, loading, initialLoading, required, disabled, state, message, readOnly, type, form, placeholder, maxLength, minLength, max, min, value, step, spellCheck, autoComplete, pattern, multiple, name, inputMode,
14
14
  // onInput,
15
15
  // onWheel,
16
16
  // onChange,
@@ -27,7 +27,7 @@ start, end, aria, }) => {
27
27
  'aria-disabled': disabled || loading ? 'true' : null,
28
28
  'aria-readonly': readOnly ? 'true' : null,
29
29
  });
30
- return (jsxs("div", { className: "root", children: [jsx(Label, { hasLabel: !!label || namedSlotChildren.filter(({ props: { slot } }) => slot === 'label').length > 0, hasDescription: !!description || namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0, host: null, label: label, description: description, htmlFor: id, isRequired: required, isLoading: loading, isDisabled: disabled }), jsxs("div", { className: "wrapper", children: [jsx("slot", { name: "start" }), start, jsx("input", { ...inputAria, id: id, name: name, form: form, type: type, required: required, placeholder: placeholder || null, maxLength: maxLength, minLength: minLength, spellCheck: spellCheck, max: max, min: min, step: step, defaultValue: value, readOnly: readOnly, autoComplete: autoComplete, disabled: disabled, pattern: pattern, multiple: multiple, dir: "auto" // This overwrites the default: let the browser now decide in which direction the value should be placed.
30
+ return (jsxs("div", { className: "root", children: [jsx(Label, { hasLabel: !!label || namedSlotChildren.filter(({ props: { slot } }) => slot === 'label').length > 0, hasDescription: !!description || namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0, host: null, label: label, description: description, htmlFor: id, isRequired: required, isLoading: loading, isDisabled: disabled }), jsxs("div", { className: "wrapper", children: [jsx("slot", { name: "start" }), start, jsx("input", { ...inputAria, id: id, name: name, form: form, type: type, required: required, placeholder: placeholder || null, maxLength: maxLength, minLength: minLength, spellCheck: spellCheck, max: max, min: min, step: step, defaultValue: value, readOnly: readOnly, autoComplete: autoComplete, disabled: disabled, pattern: pattern, multiple: multiple, ...(inputMode !== undefined && { inputMode }), dir: "auto" // This overwrites the default: let the browser now decide in which direction the value should be placed.
31
31
  }), end, jsx("slot", { name: "end" }), loading && jsx(PSpinner, { "aria-hidden": "true" })] }), jsx(StateMessage, { hasMessage: (message || namedSlotChildren.filter(({ props: { slot } }) => slot === 'message').length > 0) && ['success', 'error'].includes(state), state: state, message: message, host: null }), jsx(LoadingMessage, { loading: loading, initialLoading: initialLoading })] }));
32
32
  };
33
33
 
@@ -24,6 +24,10 @@ class DSRInputDate extends Component {
24
24
  initialLoading = false;
25
25
  inputElement;
26
26
  defaultValue;
27
+ // Native input.value is always a string; coerce null/undefined to mirror native behavior.
28
+ get parsedValue() {
29
+ return String(this.props.value ?? '');
30
+ }
27
31
  formResetCallback() {
28
32
  // triggers value watcher
29
33
  }
@@ -35,7 +39,7 @@ class DSRInputDate extends Component {
35
39
  render() {
36
40
  splitChildren(this.props.children);
37
41
  const style = minifyCss(getComponentCss$R(this.props.disabled, this.props.loading, this.props.hideLabel, this.props.state, this.props.compact, this.props.readOnly));
38
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-date", name: this.props.name, form: this.props.form, type: "date", required: this.props.required, max: this.props.max, min: this.props.min, value: this.props.value, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, step: this.props.step, loading: this.props.loading, initialLoading: this.props.initialLoading, ...(hasShowPickerSupport() && {
42
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-date", name: this.props.name, form: this.props.form, type: "date", required: this.props.required, max: this.props.max, min: this.props.min, value: this.parsedValue, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, step: this.props.step, loading: this.props.loading, initialLoading: this.props.initialLoading, ...(hasShowPickerSupport() && {
39
43
  end: (jsx(PButtonPure, { tabIndex: this.props.disabled ? -1 : null, hideLabel: true, className: "button", type: "button", icon: "calendar", disabled: this.props.disabled || this.props.readOnly, children: "Open date picker" })),
40
44
  }) })] }), this.props.children] }));
41
45
  }
@@ -23,6 +23,10 @@ class DSRInputEmail extends Component {
23
23
  initialLoading = false;
24
24
  inputElement;
25
25
  defaultValue;
26
+ // Native input.value is always a string; coerce number/null/undefined to mirror native behavior.
27
+ get parsedValue() {
28
+ return String(this.props.value ?? '');
29
+ }
26
30
  formResetCallback() {
27
31
  // triggers value watcher
28
32
  }
@@ -34,7 +38,7 @@ class DSRInputEmail extends Component {
34
38
  render() {
35
39
  splitChildren(this.props.children);
36
40
  const style = minifyCss(getComponentCss$Q(this.props.disabled, this.props.loading, this.props.hideLabel, this.props.state, this.props.compact, this.props.readOnly));
37
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-email", name: this.props.name, form: this.props.form, type: "email", required: this.props.required, placeholder: this.props.placeholder, maxLength: this.props.maxLength, minLength: this.props.minLength, value: this.props.value, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, loading: this.props.loading, pattern: this.props.pattern, multiple: this.props.multiple, initialLoading: this.props.initialLoading, ...(this.props.indicator && {
41
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-email", name: this.props.name, form: this.props.form, type: "email", required: this.props.required, placeholder: this.props.placeholder, maxLength: this.props.maxLength, minLength: this.props.minLength, value: this.parsedValue, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, loading: this.props.loading, pattern: this.props.pattern, multiple: this.props.multiple, initialLoading: this.props.initialLoading, ...(this.props.indicator && {
38
42
  start: jsx(PIcon, { "aria-hidden": "true", name: "email", color: "contrast-low" }),
39
43
  }) })] }), this.props.children] }));
40
44
  }
@@ -24,6 +24,10 @@ class DSRInputMonth extends Component {
24
24
  initialLoading = false;
25
25
  inputElement;
26
26
  defaultValue;
27
+ // Native input.value is always a string; coerce null/undefined to mirror native behavior.
28
+ get parsedValue() {
29
+ return String(this.props.value ?? '');
30
+ }
27
31
  formResetCallback() {
28
32
  // triggers value watcher
29
33
  }
@@ -35,7 +39,7 @@ class DSRInputMonth extends Component {
35
39
  render() {
36
40
  splitChildren(this.props.children);
37
41
  const style = minifyCss(getComponentCss$P(this.props.disabled, this.props.loading, this.props.hideLabel, this.props.state, this.props.compact, this.props.readOnly));
38
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-month", name: this.props.name, form: this.props.form, type: "month", required: this.props.required, max: this.props.max, min: this.props.min, value: this.props.value, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, step: this.props.step, loading: this.props.loading, initialLoading: this.props.initialLoading, ...(hasShowPickerSupport() && {
42
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-month", name: this.props.name, form: this.props.form, type: "month", required: this.props.required, max: this.props.max, min: this.props.min, value: this.parsedValue, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, step: this.props.step, loading: this.props.loading, initialLoading: this.props.initialLoading, ...(hasShowPickerSupport() && {
39
43
  end: (jsx(PButtonPure, { tabIndex: this.props.disabled ? -1 : null, hideLabel: true, className: "button", type: "button", icon: "calendar", disabled: this.props.disabled || this.props.readOnly, children: "Open date picker" })),
40
44
  }) })] }), this.props.children] }));
41
45
  }
@@ -23,6 +23,10 @@ class DSRInputNumber extends Component {
23
23
  initialLoading = false;
24
24
  inputElement;
25
25
  defaultValue;
26
+ // Native input.value is always a string; coerce number/null/undefined to mirror native behavior.
27
+ get parsedValue() {
28
+ return String(this.props.value ?? '');
29
+ }
26
30
  formResetCallback() {
27
31
  // triggers value watcher
28
32
  }
@@ -35,7 +39,7 @@ class DSRInputNumber extends Component {
35
39
  splitChildren(this.props.children);
36
40
  const style = minifyCss(getComponentCss$O(this.props.disabled, this.props.loading, this.props.hideLabel, this.props.state, this.props.compact, this.props.readOnly, this.props.controls));
37
41
  return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-number" // prevent React default scroll-to-[increment|decrement] on number inputs
38
- , name: this.props.name, form: this.props.form, type: "number", required: this.props.required, placeholder: this.props.placeholder, max: this.props.max, min: this.props.min, value: this.props.value, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, step: this.props.step, loading: this.props.loading, initialLoading: this.props.initialLoading, ...(this.props.controls && {
42
+ , name: this.props.name, form: this.props.form, type: "number", required: this.props.required, placeholder: this.props.placeholder, max: this.props.max, min: this.props.min, value: this.parsedValue, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, step: this.props.step, loading: this.props.loading, initialLoading: this.props.initialLoading, ...(this.props.controls && {
39
43
  end: (jsxs(Fragment, { children: [jsxs(PButtonPure, { tabIndex: -1, hideLabel: true, className: "button", type: "button", icon: "minus", disabled: this.props.disabled || this.props.readOnly, children: ["Decrement value by ", this.props.step] }), jsxs(PButtonPure, { tabIndex: -1, hideLabel: true, className: "button", type: "button", icon: "plus", disabled: this.props.disabled || this.props.readOnly, children: ["Increment value by ", this.props.step] })] })),
40
44
  }) })] }), this.props.children] }));
41
45
  }
@@ -24,6 +24,10 @@ class DSRInputPassword extends Component {
24
24
  initialLoading = false;
25
25
  inputElement;
26
26
  defaultValue;
27
+ // Native input.value is always a string; coerce number/null/undefined to mirror native behavior.
28
+ get parsedValue() {
29
+ return String(this.props.value ?? '');
30
+ }
27
31
  formResetCallback() {
28
32
  // triggers value watcher
29
33
  }
@@ -35,7 +39,7 @@ class DSRInputPassword extends Component {
35
39
  render() {
36
40
  splitChildren(this.props.children);
37
41
  const style = minifyCss(getComponentCss$N(this.props.disabled, this.props.loading, this.props.hideLabel, this.props.state, this.props.toggle, this.props.compact, this.props.readOnly));
38
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-password", name: this.props.name, form: this.props.form, type: this.props.showPassword ? 'text' : 'password', required: this.props.required, placeholder: this.props.placeholder, maxLength: this.props.maxLength, minLength: this.props.minLength, value: this.props.value, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, loading: this.props.loading, initialLoading: this.props.initialLoading, end: this.props.toggle && (jsx(PButtonPure, { tabIndex: this.props.disabled ? -1 : null, hideLabel: true, className: "button", type: "button", icon: this.props.showPassword ? 'view-off' : 'view', disabled: this.props.disabled, aria: { 'aria-pressed': this.props.showPassword ? 'true' : 'false' }, children: "Toggle password visibility" })) })] }), this.props.children] }));
42
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-password", name: this.props.name, form: this.props.form, type: this.props.showPassword ? 'text' : 'password', required: this.props.required, placeholder: this.props.placeholder, maxLength: this.props.maxLength, minLength: this.props.minLength, value: this.parsedValue, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, loading: this.props.loading, initialLoading: this.props.initialLoading, end: this.props.toggle && (jsx(PButtonPure, { tabIndex: this.props.disabled ? -1 : null, hideLabel: true, className: "button", type: "button", icon: this.props.showPassword ? 'view-off' : 'view', disabled: this.props.disabled, aria: { 'aria-pressed': this.props.showPassword ? 'true' : 'false' }, children: "Toggle password visibility" })) })] }), this.props.children] }));
39
43
  }
40
44
  }
41
45
 
@@ -25,6 +25,10 @@ class DSRInputSearch extends Component {
25
25
  initialLoading = false;
26
26
  inputElement;
27
27
  defaultValue;
28
+ // Native input.value is always a string; coerce number/null/undefined to mirror native behavior.
29
+ get parsedValue() {
30
+ return String(this.props.value ?? '');
31
+ }
28
32
  formResetCallback() {
29
33
  // triggers value watcher
30
34
  }
@@ -36,7 +40,7 @@ class DSRInputSearch extends Component {
36
40
  render() {
37
41
  splitChildren(this.props.children);
38
42
  const style = minifyCss(getComponentCss$M(this.props.disabled, this.props.loading, this.props.hideLabel, this.props.state, this.props.compact, this.props.readOnly, this.props.clear));
39
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-search", name: this.props.name, form: this.props.form, type: "search", required: this.props.required, placeholder: this.props.placeholder, maxLength: this.props.maxLength, minLength: this.props.minLength, value: this.props.value, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, loading: this.props.loading, initialLoading: this.props.initialLoading, aria: this.props.aria, ...(this.props.indicator && {
43
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(InputBase, { children: this.props.children, host: null, label: this.props.label, description: this.props.description, id: "input-search", name: this.props.name, form: this.props.form, type: "search", required: this.props.required, placeholder: this.props.placeholder, maxLength: this.props.maxLength, minLength: this.props.minLength, value: this.parsedValue, readOnly: this.props.readOnly, autoComplete: this.props.autoComplete, disabled: this.props.disabled, state: this.props.state, message: this.props.message, loading: this.props.loading, initialLoading: this.props.initialLoading, aria: this.props.aria, ...(this.props.indicator && {
40
44
  start: jsx(PIcon, { "aria-hidden": "true", name: "search", color: "contrast-medium" }),
41
45
  }), ...(this.props.clear && {
42
46
  end: (jsx(PButtonPure, { tabIndex: -1, hideLabel: true, className: "button", type: "button", icon: "close", hidden: !this.props.isClearable, disabled: this.props.readOnly || this.props.disabled, children: "Clear field" })),