@porsche-design-system/components-react 3.0.0-alpha.3 → 3.0.0-alpha.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 (185) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/esm/lib/components/button-tile.wrapper.js +22 -0
  3. package/esm/lib/components/carousel.wrapper.js +3 -3
  4. package/esm/lib/components/fieldset-wrapper.wrapper.js +1 -0
  5. package/esm/lib/components/fieldset.wrapper.js +22 -0
  6. package/esm/lib/components/link-tile-model-signature.wrapper.js +22 -0
  7. package/esm/lib/components/scroller.wrapper.js +3 -3
  8. package/esm/lib/components/table.wrapper.js +5 -3
  9. package/esm/public-api.js +3 -0
  10. package/lib/components/banner.wrapper.d.ts +4 -2
  11. package/lib/components/button-tile.wrapper.d.ts +120 -0
  12. package/lib/components/button-tile.wrapper.js +24 -0
  13. package/lib/components/carousel.wrapper.d.ts +12 -4
  14. package/lib/components/carousel.wrapper.js +3 -3
  15. package/lib/components/fieldset-wrapper.wrapper.d.ts +1 -0
  16. package/lib/components/fieldset-wrapper.wrapper.js +1 -0
  17. package/lib/components/fieldset.wrapper.d.ts +56 -0
  18. package/lib/components/fieldset.wrapper.js +24 -0
  19. package/lib/components/index.d.ts +3 -0
  20. package/lib/components/link-tile-model-signature.wrapper.d.ts +64 -0
  21. package/lib/components/link-tile-model-signature.wrapper.js +24 -0
  22. package/lib/components/link-tile.wrapper.d.ts +2 -2
  23. package/lib/components/scroller.wrapper.d.ts +8 -0
  24. package/lib/components/scroller.wrapper.js +3 -3
  25. package/lib/components/table.wrapper.d.ts +9 -1
  26. package/lib/components/table.wrapper.js +5 -3
  27. package/lib/types.d.ts +74 -43
  28. package/package.json +2 -2
  29. package/public-api.js +6 -0
  30. package/ssr/components/dist/styles/esm/styles-entry.js +426 -354
  31. package/ssr/components/dist/utils/esm/utils-entry.js +8 -8
  32. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/button-tile.wrapper.js +38 -0
  33. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/carousel.wrapper.js +4 -4
  34. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset-wrapper.wrapper.js +1 -0
  35. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset.wrapper.js +38 -0
  36. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-model-signature.wrapper.js +38 -0
  37. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/scroller.wrapper.js +4 -4
  38. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/table.wrapper.js +6 -4
  39. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.js +4 -1
  40. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.js +5 -2
  41. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.js +1 -1
  42. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.js +4 -1
  43. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.js +88 -0
  44. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.js +4 -1
  45. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.js +5 -1
  46. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.js +1 -1
  47. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.js +1 -1
  48. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.js +1 -1
  49. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.js +1 -1
  50. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.js +2 -1
  51. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.js +22 -0
  52. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.js +1 -1
  53. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.js +1 -1
  54. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.js +1 -1
  55. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.js +1 -1
  56. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.js +1 -1
  57. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.js +1 -1
  58. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.js +1 -1
  59. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.js +4 -1
  60. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.js +4 -1
  61. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.js +4 -1
  62. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.js +95 -0
  63. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.js +7 -3
  64. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.js +4 -1
  65. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/marque.js +1 -1
  66. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.js +4 -1
  67. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.js +1 -1
  68. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.js +4 -1
  69. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.js +4 -1
  70. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.js +1 -1
  71. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.js +5 -2
  72. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.js +4 -1
  73. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.js +1 -1
  74. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.js +4 -1
  75. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/spinner.js +1 -1
  76. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.js +3 -0
  77. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.js +4 -1
  78. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.js +4 -1
  79. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.js +4 -1
  80. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-body.js +1 -1
  81. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-cell.js +1 -1
  82. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.js +4 -1
  83. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-row.js +1 -1
  84. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head.js +1 -1
  85. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-row.js +1 -1
  86. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.js +7 -10
  87. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.js +4 -1
  88. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-item.js +1 -1
  89. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.js +4 -1
  90. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.js +4 -1
  91. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.js +4 -1
  92. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.js +4 -1
  93. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list-item.js +1 -1
  94. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list.js +1 -1
  95. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text.js +1 -1
  96. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.js +1 -1
  97. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/toast.js +1 -1
  98. package/ssr/components-react/projects/react-ssr-wrapper/src/public-api.js +6 -0
  99. package/ssr/esm/components/dist/styles/esm/styles-entry.js +397 -328
  100. package/ssr/esm/components/dist/utils/esm/utils-entry.js +8 -8
  101. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/button-tile.wrapper.js +36 -0
  102. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/carousel.wrapper.js +4 -4
  103. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset-wrapper.wrapper.js +1 -0
  104. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset.wrapper.js +36 -0
  105. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-model-signature.wrapper.js +36 -0
  106. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/scroller.wrapper.js +4 -4
  107. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/table.wrapper.js +6 -4
  108. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.js +6 -3
  109. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.js +6 -3
  110. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.js +3 -3
  111. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.js +6 -3
  112. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.js +86 -0
  113. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.js +6 -3
  114. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.js +7 -3
  115. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.js +3 -3
  116. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.js +3 -3
  117. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.js +3 -3
  118. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.js +3 -3
  119. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.js +4 -3
  120. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.js +20 -0
  121. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.js +3 -3
  122. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.js +3 -3
  123. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.js +3 -3
  124. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.js +3 -3
  125. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.js +3 -3
  126. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.js +3 -3
  127. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.js +3 -3
  128. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.js +6 -3
  129. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.js +6 -3
  130. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.js +6 -3
  131. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.js +93 -0
  132. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.js +7 -3
  133. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.js +6 -3
  134. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/marque.js +1 -1
  135. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.js +4 -1
  136. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.js +1 -1
  137. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.js +4 -1
  138. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.js +4 -1
  139. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.js +1 -1
  140. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.js +5 -2
  141. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.js +4 -1
  142. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.js +1 -1
  143. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.js +4 -1
  144. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/spinner.js +1 -1
  145. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.js +3 -0
  146. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.js +4 -1
  147. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.js +4 -1
  148. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.js +4 -1
  149. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-body.js +1 -1
  150. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-cell.js +1 -1
  151. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.js +6 -3
  152. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-row.js +3 -3
  153. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head.js +3 -3
  154. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-row.js +3 -3
  155. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.js +8 -11
  156. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.js +4 -1
  157. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-item.js +1 -1
  158. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.js +4 -1
  159. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.js +4 -1
  160. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.js +4 -1
  161. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.js +4 -1
  162. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list-item.js +1 -1
  163. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list.js +1 -1
  164. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text.js +1 -1
  165. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.js +1 -1
  166. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/toast.js +1 -1
  167. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.js +3 -0
  168. package/ssr/lib/components/banner.wrapper.d.ts +4 -2
  169. package/ssr/lib/components/button-tile.wrapper.d.ts +120 -0
  170. package/ssr/lib/components/carousel.wrapper.d.ts +12 -4
  171. package/ssr/lib/components/fieldset-wrapper.wrapper.d.ts +1 -0
  172. package/ssr/lib/components/fieldset.wrapper.d.ts +56 -0
  173. package/ssr/lib/components/index.d.ts +3 -0
  174. package/ssr/lib/components/link-tile-model-signature.wrapper.d.ts +64 -0
  175. package/ssr/lib/components/link-tile.wrapper.d.ts +2 -2
  176. package/ssr/lib/components/scroller.wrapper.d.ts +8 -0
  177. package/ssr/lib/components/table.wrapper.d.ts +9 -1
  178. package/ssr/lib/dsr-components/button-tile.d.ts +5 -0
  179. package/ssr/lib/dsr-components/fieldset-wrapper.d.ts +1 -0
  180. package/ssr/lib/dsr-components/fieldset.d.ts +5 -0
  181. package/ssr/lib/dsr-components/link-tile-model-signature.d.ts +5 -0
  182. package/ssr/lib/dsr-components/table.d.ts +0 -6
  183. package/ssr/lib/types.d.ts +74 -43
  184. package/styles/_index.scss +1 -0
  185. package/styles/scss.scss +0 -1
@@ -2793,7 +2793,7 @@ function convertCase(style) {
2793
2793
  */
2794
2794
 
2795
2795
 
2796
- function camelCase() {
2796
+ function camelCase$1() {
2797
2797
  function onProcessStyle(style) {
2798
2798
  if (Array.isArray(style)) {
2799
2799
  // Handle rules like @font-face, which can have multiple styles in an array
@@ -3630,7 +3630,7 @@ createJss({
3630
3630
  plugins: [
3631
3631
  jssGlobal(),
3632
3632
  jssNested(),
3633
- camelCase(),
3633
+ camelCase$1(),
3634
3634
  dist({ combineMediaQueries: true }),
3635
3635
  ],
3636
3636
  });
@@ -3644,6 +3644,12 @@ const supportsConstructableStylesheets = () => {
3644
3644
  };
3645
3645
  // determine it once
3646
3646
  supportsConstructableStylesheets();
3647
+
3648
+ const isThemeDark = (theme) => {
3649
+ return theme === 'dark';
3650
+ };
3651
+
3652
+ const getLinkButtonThemeForIcon = (variant, theme) => variant === 'primary' ? (isThemeDark(theme) ? 'light' : 'dark') : theme;
3647
3653
  const isScrollable = (isPrevHidden, isNextHidden) => {
3648
3654
  return !(isPrevHidden && isNextHidden);
3649
3655
  };
@@ -3656,10 +3662,6 @@ win.document || { head: {} };
3656
3662
  (win.HTMLElement || class {
3657
3663
  });
3658
3664
 
3659
- const isThemeDark = (theme) => {
3660
- return theme === 'dark';
3661
- };
3662
-
3663
3665
  const formatObjectOutput = (value) => {
3664
3666
  return JSON.stringify(value)
3665
3667
  .replace(/"([a-zA-Z?]+)":/g, '$1:') // remove double quotes from keys
@@ -3671,8 +3673,6 @@ const formatObjectOutput = (value) => {
3671
3673
  formatObjectOutput(BREAKPOINTS.reduce((prev, key) => (Object.assign(Object.assign({}, prev), { [key + (key !== 'base' ? '?' : '')]: 'value' })), {})).replace(/"/g, '');
3672
3674
 
3673
3675
  const HEADING_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
3674
-
3675
- const getLinkButtonThemeForIcon = (variant, theme) => variant === 'primary' ? (isThemeDark(theme) ? 'light' : 'dark') : theme;
3676
3676
  const resizeMap = new Map();
3677
3677
  const isResizeObserverDefined = () => hasWindow && 'ResizeObserver' in window;
3678
3678
  isResizeObserverDefined() &&
@@ -0,0 +1,36 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { forwardRef, useRef } from 'react';
3
+ import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.js';
4
+ import { syncRef } from '../../utils.js';
5
+ import { DSRButtonTile } from '../dsr-components/button-tile.js';
6
+
7
+ const PButtonTile = forwardRef(({ align = 'bottom', aria, aspectRatio = '4:3', compact = false, description, disabled = false, gradient = true, icon = 'none', iconSource, label, loading = false, size = 'default', type = 'submit', weight = 'semi-bold', className, children, ...rest }, ref) => {
8
+ const elementRef = useRef();
9
+ const WebComponentTag = usePrefix('p-button-tile');
10
+ const propsToSync = [align, aria, aspectRatio, compact, description, disabled, gradient, icon, iconSource, label, loading, size, type, weight];
11
+ useBrowserLayoutEffect(() => {
12
+ const { current } = elementRef;
13
+ ['align', 'aria', 'aspectRatio', 'compact', 'description', 'disabled', 'gradient', 'icon', 'iconSource', 'label', 'loading', 'size', 'type', 'weight'].forEach((propName, i) => (current[propName] = propsToSync[i]));
14
+ }, propsToSync);
15
+ // @ts-ignore
16
+ if (!process.browser) {
17
+ className = className ? `${className} ssr` : 'ssr';
18
+ }
19
+ const props = {
20
+ ...rest,
21
+ // @ts-ignore
22
+ ...(!process.browser
23
+ ? {
24
+ children: (jsx(DSRButtonTile, { ...{ align, aria, aspectRatio, compact, description, disabled, gradient, icon, iconSource, label, loading, size, type, weight, children } })),
25
+ }
26
+ : {
27
+ children,
28
+ suppressHydrationWarning: true,
29
+ }),
30
+ class: useMergedClass(elementRef, className),
31
+ ref: syncRef(elementRef, ref)
32
+ };
33
+ return jsx(WebComponentTag, { ...props });
34
+ });
35
+
36
+ export { PButtonTile };
@@ -4,15 +4,15 @@ import { useEventCallback, usePrefix, useBrowserLayoutEffect, useMergedClass } f
4
4
  import { syncRef } from '../../utils.js';
5
5
  import { DSRCarousel } from '../dsr-components/carousel.js';
6
6
 
7
- const PCarousel = forwardRef(({ alignHeader = 'left', description, disablePagination, heading, intl = {}, onCarouselChange, onChange, pagination = true, rewind = true, slidesPerPage = 1, theme = 'light', width = 'basic', wrapContent, className, children, ...rest }, ref) => {
7
+ const PCarousel = forwardRef(({ activeSlideIndex = 0, alignHeader = 'left', description, disablePagination, heading, intl, onCarouselChange, onChange, pagination = true, rewind = true, slidesPerPage = 1, theme = 'light', width = 'basic', wrapContent, className, children, ...rest }, ref) => {
8
8
  const elementRef = useRef();
9
9
  useEventCallback(elementRef, 'carouselChange', onCarouselChange);
10
10
  useEventCallback(elementRef, 'change', onChange);
11
11
  const WebComponentTag = usePrefix('p-carousel');
12
- const propsToSync = [alignHeader, description, disablePagination, heading, intl, pagination, rewind, slidesPerPage, theme, width, wrapContent];
12
+ const propsToSync = [activeSlideIndex, alignHeader, description, disablePagination, heading, intl, pagination, rewind, slidesPerPage, theme, width, wrapContent];
13
13
  useBrowserLayoutEffect(() => {
14
14
  const { current } = elementRef;
15
- ['alignHeader', 'description', 'disablePagination', 'heading', 'intl', 'pagination', 'rewind', 'slidesPerPage', 'theme', 'width', 'wrapContent'].forEach((propName, i) => (current[propName] = propsToSync[i]));
15
+ ['activeSlideIndex', 'alignHeader', 'description', 'disablePagination', 'heading', 'intl', 'pagination', 'rewind', 'slidesPerPage', 'theme', 'width', 'wrapContent'].forEach((propName, i) => (current[propName] = propsToSync[i]));
16
16
  }, propsToSync);
17
17
  // @ts-ignore
18
18
  if (!process.browser) {
@@ -23,7 +23,7 @@ const PCarousel = forwardRef(({ alignHeader = 'left', description, disablePagina
23
23
  // @ts-ignore
24
24
  ...(!process.browser
25
25
  ? {
26
- children: (jsx(DSRCarousel, { ...{ alignHeader, description, disablePagination, heading, intl, pagination, rewind, slidesPerPage, theme, width, wrapContent, children } })),
26
+ children: (jsx(DSRCarousel, { ...{ activeSlideIndex, alignHeader, description, disablePagination, heading, intl, pagination, rewind, slidesPerPage, theme, width, wrapContent, children } })),
27
27
  }
28
28
  : {
29
29
  children,
@@ -4,6 +4,7 @@ import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.j
4
4
  import { syncRef } from '../../utils.js';
5
5
  import { DSRFieldsetWrapper } from '../dsr-components/fieldset-wrapper.js';
6
6
 
7
+ /** @deprecated since v3.0.0, will be removed with next major release. Please use "p-fieldset" instead. */
7
8
  const PFieldsetWrapper = forwardRef(({ label = '', labelSize = 'medium', message = '', required = false, state = 'none', theme = 'light', className, children, ...rest }, ref) => {
8
9
  const elementRef = useRef();
9
10
  const WebComponentTag = usePrefix('p-fieldset-wrapper');
@@ -0,0 +1,36 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { forwardRef, useRef } from 'react';
3
+ import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.js';
4
+ import { syncRef } from '../../utils.js';
5
+ import { DSRFieldset } from '../dsr-components/fieldset.js';
6
+
7
+ const PFieldset = forwardRef(({ label = '', labelSize = 'medium', message = '', required = false, state = 'none', theme = 'light', className, children, ...rest }, ref) => {
8
+ const elementRef = useRef();
9
+ const WebComponentTag = usePrefix('p-fieldset');
10
+ const propsToSync = [label, labelSize, message, required, state, theme];
11
+ useBrowserLayoutEffect(() => {
12
+ const { current } = elementRef;
13
+ ['label', 'labelSize', 'message', 'required', 'state', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
14
+ }, propsToSync);
15
+ // @ts-ignore
16
+ if (!process.browser) {
17
+ className = className ? `${className} ssr` : 'ssr';
18
+ }
19
+ const props = {
20
+ ...rest,
21
+ // @ts-ignore
22
+ ...(!process.browser
23
+ ? {
24
+ children: (jsx(DSRFieldset, { ...{ label, labelSize, message, required, state, theme, children } })),
25
+ }
26
+ : {
27
+ children,
28
+ suppressHydrationWarning: true,
29
+ }),
30
+ class: useMergedClass(elementRef, className),
31
+ ref: syncRef(elementRef, ref)
32
+ };
33
+ return jsx(WebComponentTag, { ...props });
34
+ });
35
+
36
+ export { PFieldset };
@@ -0,0 +1,36 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { forwardRef, useRef } from 'react';
3
+ import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.js';
4
+ import { syncRef } from '../../utils.js';
5
+ import { DSRLinkTileModelSignature } from '../dsr-components/link-tile-model-signature.js';
6
+
7
+ const PLinkTileModelSignature = forwardRef(({ aspectRatio = '3:4', description, heading, headingTag = 'h2', linkDirection = { base: 'column', xs: 'row' }, model = '911', weight = 'semi-bold', className, children, ...rest }, ref) => {
8
+ const elementRef = useRef();
9
+ const WebComponentTag = usePrefix('p-link-tile-model-signature');
10
+ const propsToSync = [aspectRatio, description, heading, headingTag, linkDirection, model, weight];
11
+ useBrowserLayoutEffect(() => {
12
+ const { current } = elementRef;
13
+ ['aspectRatio', 'description', 'heading', 'headingTag', 'linkDirection', 'model', 'weight'].forEach((propName, i) => (current[propName] = propsToSync[i]));
14
+ }, propsToSync);
15
+ // @ts-ignore
16
+ if (!process.browser) {
17
+ className = className ? `${className} ssr` : 'ssr';
18
+ }
19
+ const props = {
20
+ ...rest,
21
+ // @ts-ignore
22
+ ...(!process.browser
23
+ ? {
24
+ children: (jsx(DSRLinkTileModelSignature, { ...{ aspectRatio, description, heading, headingTag, linkDirection, model, weight, children } })),
25
+ }
26
+ : {
27
+ children,
28
+ suppressHydrationWarning: true,
29
+ }),
30
+ class: useMergedClass(elementRef, className),
31
+ ref: syncRef(elementRef, ref)
32
+ };
33
+ return jsx(WebComponentTag, { ...props });
34
+ });
35
+
36
+ export { PLinkTileModelSignature };
@@ -4,13 +4,13 @@ import { usePrefix, useBrowserLayoutEffect, useMergedClass } from '../../hooks.j
4
4
  import { syncRef } from '../../utils.js';
5
5
  import { DSRScroller } from '../dsr-components/scroller.js';
6
6
 
7
- const PScroller = forwardRef(({ alignScrollIndicator = 'center', gradientColor = 'background-base', gradientColorScheme, scrollIndicatorPosition, scrollToPosition, theme = 'light', className, children, ...rest }, ref) => {
7
+ const PScroller = forwardRef(({ alignScrollIndicator = 'center', gradientColor = 'background-base', gradientColorScheme, scrollIndicatorPosition, scrollToPosition, scrollbar = false, theme = 'light', className, children, ...rest }, ref) => {
8
8
  const elementRef = useRef();
9
9
  const WebComponentTag = usePrefix('p-scroller');
10
- const propsToSync = [alignScrollIndicator, gradientColor, gradientColorScheme, scrollIndicatorPosition, scrollToPosition, theme];
10
+ const propsToSync = [alignScrollIndicator, gradientColor, gradientColorScheme, scrollIndicatorPosition, scrollToPosition, scrollbar, theme];
11
11
  useBrowserLayoutEffect(() => {
12
12
  const { current } = elementRef;
13
- ['alignScrollIndicator', 'gradientColor', 'gradientColorScheme', 'scrollIndicatorPosition', 'scrollToPosition', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
13
+ ['alignScrollIndicator', 'gradientColor', 'gradientColorScheme', 'scrollIndicatorPosition', 'scrollToPosition', 'scrollbar', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
14
14
  }, propsToSync);
15
15
  // @ts-ignore
16
16
  if (!process.browser) {
@@ -21,7 +21,7 @@ const PScroller = forwardRef(({ alignScrollIndicator = 'center', gradientColor =
21
21
  // @ts-ignore
22
22
  ...(!process.browser
23
23
  ? {
24
- children: (jsx(DSRScroller, { ...{ alignScrollIndicator, gradientColor, gradientColorScheme, scrollIndicatorPosition, scrollToPosition, theme, children } })),
24
+ children: (jsx(DSRScroller, { ...{ alignScrollIndicator, gradientColor, gradientColorScheme, scrollIndicatorPosition, scrollToPosition, scrollbar, theme, children } })),
25
25
  }
26
26
  : {
27
27
  children,
@@ -4,14 +4,16 @@ import { useEventCallback, usePrefix, useBrowserLayoutEffect, useMergedClass } f
4
4
  import { syncRef } from '../../utils.js';
5
5
  import { DSRTable } from '../dsr-components/table.js';
6
6
 
7
- const PTable = forwardRef(({ caption, onChange, onSortingChange, className, children, ...rest }, ref) => {
7
+ const PTable = forwardRef(({ caption, onChange, onSortingChange, theme = 'light', className, children, ...rest }, ref) => {
8
8
  const elementRef = useRef();
9
9
  useEventCallback(elementRef, 'change', onChange);
10
10
  useEventCallback(elementRef, 'sortingChange', onSortingChange);
11
11
  const WebComponentTag = usePrefix('p-table');
12
+ const propsToSync = [caption, theme];
12
13
  useBrowserLayoutEffect(() => {
13
- elementRef.current.caption = caption;
14
- }, [caption]);
14
+ const { current } = elementRef;
15
+ ['caption', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
16
+ }, propsToSync);
15
17
  // @ts-ignore
16
18
  if (!process.browser) {
17
19
  className = className ? `${className} ssr` : 'ssr';
@@ -21,7 +23,7 @@ const PTable = forwardRef(({ caption, onChange, onSortingChange, className, chil
21
23
  // @ts-ignore
22
24
  ...(!process.browser
23
25
  ? {
24
- children: (jsx(DSRTable, { ...{ caption, children } })),
26
+ children: (jsx(DSRTable, { ...{ caption, theme, children } })),
25
27
  }
26
28
  : {
27
29
  children,
@@ -4,11 +4,13 @@ import '../components/banner.wrapper.js';
4
4
  import '../components/button.wrapper.js';
5
5
  import '../components/button-group.wrapper.js';
6
6
  import '../components/button-pure.wrapper.js';
7
+ import '../components/button-tile.wrapper.js';
7
8
  import '../components/carousel.wrapper.js';
8
9
  import '../components/checkbox-wrapper.wrapper.js';
9
10
  import '../components/content-wrapper.wrapper.js';
10
11
  import '../components/display.wrapper.js';
11
12
  import '../components/divider.wrapper.js';
13
+ import '../components/fieldset.wrapper.js';
12
14
  import '../components/fieldset-wrapper.wrapper.js';
13
15
  import '../components/flex.wrapper.js';
14
16
  import '../components/flex-item.wrapper.js';
@@ -22,6 +24,7 @@ import '../components/link.wrapper.js';
22
24
  import '../components/link-pure.wrapper.js';
23
25
  import '../components/link-social.wrapper.js';
24
26
  import '../components/link-tile.wrapper.js';
27
+ import '../components/link-tile-model-signature.wrapper.js';
25
28
  import '../components/marque.wrapper.js';
26
29
  import '../components/modal.wrapper.js';
27
30
  import '../components/model-signature.wrapper.js';
@@ -58,7 +61,7 @@ import { splitChildren } from '../../splitChildren.js';
58
61
  import { Component } from 'react';
59
62
  import { minifyCss } from '../../minifyCss.js';
60
63
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
61
- import { getAccordionCss as getComponentCss$T } from '../../../../../../components/dist/styles/esm/styles-entry.js';
64
+ import { getAccordionCss as getComponentCss$W } from '../../../../../../components/dist/styles/esm/styles-entry.js';
62
65
 
63
66
  class DSRAccordion extends Component {
64
67
  render() {
@@ -67,8 +70,8 @@ class DSRAccordion extends Component {
67
70
  const contentId = 'accordion-panel';
68
71
  const Heading = this.props.tag;
69
72
  // TODO: why .root div for a condition border-bottom style? could be applied on :host directly
70
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$T(this.props.size, this.props.compact, this.props.open, this.props.theme)));
71
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("div", { className: "root", children: [jsx(Heading, { className: "heading", children: jsxs("button", { id: buttonId, type: "button", "aria-expanded": this.props.open ? 'true' : 'false', "aria-controls": contentId, children: [this.props.heading || jsx("slot", { name: "heading" }), jsx(PIcon, { className: "icon", name: this.props.open ? 'minus' : 'plus', theme: this.props.theme, size: "inherit", "aria-hidden": "true" })] }) }), jsx("div", { id: contentId, className: "collapsible", role: "region", "aria-labelledby": buttonId, children: jsx("div", { children: jsx("slot", {}) }) })] })] }), this.props.children] }));
73
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$W(this.props.size, this.props.compact, this.props.open, this.props.theme)));
74
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("div", { className: "root", children: [jsx(Heading, { className: "heading", children: jsxs("button", { id: buttonId, type: "button", "aria-expanded": this.props.open ? 'true' : 'false', "aria-controls": contentId, children: [this.props.heading || jsx("slot", { name: "heading" }), jsx(PIcon, { className: "icon", name: this.props.open ? 'minus' : 'plus', theme: this.props.theme, size: "inherit", "aria-hidden": "true" })] }) }), jsx("div", { id: contentId, className: "collapsible", role: "region", "aria-labelledby": buttonId, children: jsx("div", { children: jsx("slot", {}) }) })] })] }), this.props.children] }));
72
75
  }
73
76
  }
74
77
 
@@ -4,11 +4,13 @@ import '../components/banner.wrapper.js';
4
4
  import '../components/button.wrapper.js';
5
5
  import '../components/button-group.wrapper.js';
6
6
  import '../components/button-pure.wrapper.js';
7
+ import '../components/button-tile.wrapper.js';
7
8
  import '../components/carousel.wrapper.js';
8
9
  import '../components/checkbox-wrapper.wrapper.js';
9
10
  import '../components/content-wrapper.wrapper.js';
10
11
  import '../components/display.wrapper.js';
11
12
  import '../components/divider.wrapper.js';
13
+ import '../components/fieldset.wrapper.js';
12
14
  import '../components/fieldset-wrapper.wrapper.js';
13
15
  import '../components/flex.wrapper.js';
14
16
  import '../components/flex-item.wrapper.js';
@@ -22,6 +24,7 @@ import '../components/link.wrapper.js';
22
24
  import '../components/link-pure.wrapper.js';
23
25
  import '../components/link-social.wrapper.js';
24
26
  import '../components/link-tile.wrapper.js';
27
+ import '../components/link-tile-model-signature.wrapper.js';
25
28
  import '../components/marque.wrapper.js';
26
29
  import '../components/modal.wrapper.js';
27
30
  import '../components/model-signature.wrapper.js';
@@ -58,14 +61,14 @@ import { splitChildren } from '../../splitChildren.js';
58
61
  import { Component } from 'react';
59
62
  import { minifyCss } from '../../minifyCss.js';
60
63
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
61
- import { getBannerCss as getComponentCss$S } from '../../../../../../components/dist/styles/esm/styles-entry.js';
64
+ import { getBannerCss as getComponentCss$V } from '../../../../../../components/dist/styles/esm/styles-entry.js';
62
65
 
63
66
  class DSRBanner extends Component {
64
67
  render() {
65
68
  const { children, namedSlotChildren, otherChildren } = splitChildren(this.props.children);
66
69
  const hasTitleSlot = namedSlotChildren.filter(({ props: { slot } }) => slot === 'title').length > 0;
67
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$S(this.props.width)));
68
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(PInlineNotification, { className: "root", heading: this.props.heading, description: this.props.description, state: this.props.state, persistent: this.props.persistent, theme: this.props.theme, children: [namedSlotChildren.filter(({ props: { slot } }) => slot === 'heading').length > 0 ? (jsx("slot", { name: "heading", slot: "heading" })) : (hasTitleSlot && jsx("slot", { name: "title", slot: "heading" })), namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0 && jsx("slot", { name: "description" })] })] }), this.props.children] }));
70
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$V()));
71
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(PInlineNotification, { heading: this.props.heading, description: this.props.description, state: this.props.state, persistent: this.props.persistent, theme: this.props.theme, children: [namedSlotChildren.filter(({ props: { slot } }) => slot === 'heading').length > 0 ? (jsx("slot", { name: "heading", slot: "heading" })) : (hasTitleSlot && jsx("slot", { name: "title", slot: "heading" })), namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0 && jsx("slot", { name: "description" })] })] }), this.props.children] }));
69
72
  }
70
73
  }
71
74
 
@@ -3,13 +3,13 @@ import { splitChildren } from '../../splitChildren.js';
3
3
  import { Component } from 'react';
4
4
  import { minifyCss } from '../../minifyCss.js';
5
5
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
6
- import { getButtonGroupCss as getComponentCss$R } from '../../../../../../components/dist/styles/esm/styles-entry.js';
6
+ import { getButtonGroupCss as getComponentCss$U } from '../../../../../../components/dist/styles/esm/styles-entry.js';
7
7
 
8
8
  class DSRButtonGroup extends Component {
9
9
  render() {
10
10
  splitChildren(this.props.children);
11
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$R(this.props.direction)));
12
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx("div", { role: "group", children: jsx("slot", {}) })] }), this.props.children] }));
11
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$U(this.props.direction)));
12
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx("div", { role: "group", children: jsx("slot", {}) })] }), this.props.children] }));
13
13
  }
14
14
  }
15
15
 
@@ -4,11 +4,13 @@ import '../components/banner.wrapper.js';
4
4
  import '../components/button.wrapper.js';
5
5
  import '../components/button-group.wrapper.js';
6
6
  import '../components/button-pure.wrapper.js';
7
+ import '../components/button-tile.wrapper.js';
7
8
  import '../components/carousel.wrapper.js';
8
9
  import '../components/checkbox-wrapper.wrapper.js';
9
10
  import '../components/content-wrapper.wrapper.js';
10
11
  import '../components/display.wrapper.js';
11
12
  import '../components/divider.wrapper.js';
13
+ import '../components/fieldset.wrapper.js';
12
14
  import '../components/fieldset-wrapper.wrapper.js';
13
15
  import '../components/flex.wrapper.js';
14
16
  import '../components/flex-item.wrapper.js';
@@ -22,6 +24,7 @@ import '../components/link.wrapper.js';
22
24
  import '../components/link-pure.wrapper.js';
23
25
  import '../components/link-social.wrapper.js';
24
26
  import '../components/link-tile.wrapper.js';
27
+ import '../components/link-tile-model-signature.wrapper.js';
25
28
  import '../components/marque.wrapper.js';
26
29
  import '../components/modal.wrapper.js';
27
30
  import '../components/model-signature.wrapper.js';
@@ -58,7 +61,7 @@ import { splitChildren } from '../../splitChildren.js';
58
61
  import { Component } from 'react';
59
62
  import { minifyCss } from '../../minifyCss.js';
60
63
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
61
- import { getButtonPureCss as getComponentCss$Q } from '../../../../../../components/dist/styles/esm/styles-entry.js';
64
+ import { getButtonPureCss as getComponentCss$T } from '../../../../../../components/dist/styles/esm/styles-entry.js';
62
65
  import { isDisabledOrLoading, hasVisibleIcon, getButtonPureAriaAttributes } from '../../../../../../components/dist/utils/esm/utils-entry.js';
63
66
 
64
67
  class DSRButtonPure extends Component {
@@ -74,8 +77,8 @@ class DSRButtonPure extends Component {
74
77
  size: 'inherit',
75
78
  theme: this.props.theme,
76
79
  };
77
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Q(this.props.icon, this.props.iconSource, this.props.active, this.props.loading, this.isDisabledOrLoading, this.props.stretch, this.props.size, this.props.hideLabel, this.props.alignLabel, this.props.theme)));
78
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("button", { ...getButtonPureAriaAttributes(this.props.disabled, this.props.loading, this.props.aria), className: "root", type: this.props.type, children: [this.props.loading ? (jsx(PSpinner, { aria: { 'aria-label': 'Loading state' }, ...iconProps })) : (hasIcon && (jsx(PIcon, { ...iconProps, name: this.props.icon, source: this.props.iconSource, color: this.isDisabledOrLoading ? 'state-disabled' : 'primary', theme: this.props.theme, "aria-hidden": "true" }))), jsx("span", { className: "label", children: jsx("slot", {}) })] })] }), this.props.children] }));
80
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$T(this.props.icon, this.props.iconSource, this.props.active, this.props.loading, this.isDisabledOrLoading, this.props.stretch, this.props.size, this.props.hideLabel, this.props.alignLabel, this.props.theme)));
81
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("button", { ...getButtonPureAriaAttributes(this.props.disabled, this.props.loading, this.props.aria), className: "root", type: this.props.type, children: [this.props.loading ? (jsx(PSpinner, { aria: { 'aria-label': 'Loading state' }, ...iconProps })) : (hasIcon && (jsx(PIcon, { ...iconProps, name: this.props.icon, source: this.props.iconSource, color: this.isDisabledOrLoading ? 'state-disabled' : 'primary', theme: this.props.theme, "aria-hidden": "true" }))), jsx("span", { className: "label", children: jsx("slot", {}) })] })] }), this.props.children] }));
79
82
  }
80
83
  }
81
84
 
@@ -0,0 +1,86 @@
1
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
+ import { Component, createElement } from 'react';
3
+ import '../components/accordion.wrapper.js';
4
+ import '../components/banner.wrapper.js';
5
+ import { PButton } from '../components/button.wrapper.js';
6
+ import '../components/button-group.wrapper.js';
7
+ import { PButtonPure } from '../components/button-pure.wrapper.js';
8
+ import '../components/button-tile.wrapper.js';
9
+ import '../components/carousel.wrapper.js';
10
+ import '../components/checkbox-wrapper.wrapper.js';
11
+ import '../components/content-wrapper.wrapper.js';
12
+ import '../components/display.wrapper.js';
13
+ import '../components/divider.wrapper.js';
14
+ import '../components/fieldset.wrapper.js';
15
+ import '../components/fieldset-wrapper.wrapper.js';
16
+ import '../components/flex.wrapper.js';
17
+ import '../components/flex-item.wrapper.js';
18
+ import '../components/grid.wrapper.js';
19
+ import '../components/grid-item.wrapper.js';
20
+ import '../components/heading.wrapper.js';
21
+ import '../components/headline.wrapper.js';
22
+ import '../components/icon.wrapper.js';
23
+ import '../components/inline-notification.wrapper.js';
24
+ import '../components/link.wrapper.js';
25
+ import '../components/link-pure.wrapper.js';
26
+ import '../components/link-social.wrapper.js';
27
+ import '../components/link-tile.wrapper.js';
28
+ import '../components/link-tile-model-signature.wrapper.js';
29
+ import '../components/marque.wrapper.js';
30
+ import '../components/modal.wrapper.js';
31
+ import '../components/model-signature.wrapper.js';
32
+ import '../components/pagination.wrapper.js';
33
+ import '../components/popover.wrapper.js';
34
+ import '../components/radio-button-wrapper.wrapper.js';
35
+ import '../components/scroller.wrapper.js';
36
+ import '../components/segmented-control.wrapper.js';
37
+ import '../components/segmented-control-item.wrapper.js';
38
+ import '../components/select-wrapper.wrapper.js';
39
+ import '../components/spinner.wrapper.js';
40
+ import '../components/stepper-horizontal.wrapper.js';
41
+ import '../components/stepper-horizontal-item.wrapper.js';
42
+ import '../components/switch.wrapper.js';
43
+ import '../components/table.wrapper.js';
44
+ import '../components/table-body.wrapper.js';
45
+ import '../components/table-cell.wrapper.js';
46
+ import '../components/table-head.wrapper.js';
47
+ import '../components/table-head-cell.wrapper.js';
48
+ import '../components/table-head-row.wrapper.js';
49
+ import '../components/table-row.wrapper.js';
50
+ import '../components/tabs.wrapper.js';
51
+ import '../components/tabs-bar.wrapper.js';
52
+ import '../components/tabs-item.wrapper.js';
53
+ import '../components/tag.wrapper.js';
54
+ import '../components/tag-dismissible.wrapper.js';
55
+ import '../components/text.wrapper.js';
56
+ import '../components/text-field-wrapper.wrapper.js';
57
+ import '../components/text-list.wrapper.js';
58
+ import '../components/text-list-item.wrapper.js';
59
+ import '../components/textarea-wrapper.wrapper.js';
60
+ import '../components/toast.wrapper.js';
61
+ import { splitChildren } from '../../splitChildren.js';
62
+ import { minifyCss } from '../../minifyCss.js';
63
+ import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
64
+ import { getButtonTileCss as getComponentCss$S } from '../../../../../../components/dist/styles/esm/styles-entry.js';
65
+ import { isDisabledOrLoading } from '../../../../../../components/dist/utils/esm/utils-entry.js';
66
+
67
+ class DSRButtonTile extends Component {
68
+ render() {
69
+ splitChildren(this.props.children);
70
+ const buttonProps = {
71
+ theme: 'dark',
72
+ variant: 'secondary',
73
+ iconSource: this.props.iconSource,
74
+ type: this.props.type,
75
+ disabled: this.props.disabled,
76
+ loading: this.props.loading,
77
+ aria: this.props.aria,
78
+ };
79
+ const button = (createElement(PButton, { ...buttonProps, icon: this.props.icon, key: "link-or-button", className: "link-or-button" }, this.props.label));
80
+ const buttonPure = (createElement(PButtonPure, { ...buttonProps, key: "link-or-button-pure", className: "link-or-button-pure", hideLabel: true, icon: this.props.icon === 'none' ? 'arrow-right' : this.props.icon }, this.props.label));
81
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$S(isDisabledOrLoading(this.props.disabled, this.props.loading), this.props.aspectRatio, this.props.size, this.props.weight, this.props.align, this.props.compact, this.props.gradient, this.props.disabled)));
82
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("div", { className: "root", children: [jsx("div", { className: "image-container", children: jsx("slot", {}) }), jsxs("div", { className: "content", children: [jsx("p", { children: this.props.description }), typeof this.props.compact === 'boolean' ? (this.props.compact ? buttonPure : button) : [buttonPure, button]] })] })] }), this.props.children] }));
83
+ }
84
+ }
85
+
86
+ export { DSRButtonTile };
@@ -4,11 +4,13 @@ import '../components/banner.wrapper.js';
4
4
  import '../components/button.wrapper.js';
5
5
  import '../components/button-group.wrapper.js';
6
6
  import '../components/button-pure.wrapper.js';
7
+ import '../components/button-tile.wrapper.js';
7
8
  import '../components/carousel.wrapper.js';
8
9
  import '../components/checkbox-wrapper.wrapper.js';
9
10
  import '../components/content-wrapper.wrapper.js';
10
11
  import '../components/display.wrapper.js';
11
12
  import '../components/divider.wrapper.js';
13
+ import '../components/fieldset.wrapper.js';
12
14
  import '../components/fieldset-wrapper.wrapper.js';
13
15
  import '../components/flex.wrapper.js';
14
16
  import '../components/flex-item.wrapper.js';
@@ -22,6 +24,7 @@ import '../components/link.wrapper.js';
22
24
  import '../components/link-pure.wrapper.js';
23
25
  import '../components/link-social.wrapper.js';
24
26
  import '../components/link-tile.wrapper.js';
27
+ import '../components/link-tile-model-signature.wrapper.js';
25
28
  import '../components/marque.wrapper.js';
26
29
  import '../components/modal.wrapper.js';
27
30
  import '../components/model-signature.wrapper.js';
@@ -58,14 +61,14 @@ import { splitChildren } from '../../splitChildren.js';
58
61
  import { Component } from 'react';
59
62
  import { minifyCss } from '../../minifyCss.js';
60
63
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
61
- import { getButtonCss as getComponentCss$P } from '../../../../../../components/dist/styles/esm/styles-entry.js';
64
+ import { getButtonCss as getComponentCss$R } from '../../../../../../components/dist/styles/esm/styles-entry.js';
62
65
  import { getButtonAriaAttributes, getLinkButtonThemeForIcon, hasVisibleIcon, isDisabledOrLoading } from '../../../../../../components/dist/utils/esm/utils-entry.js';
63
66
 
64
67
  class DSRButton extends Component {
65
68
  render() {
66
69
  splitChildren(this.props.children);
67
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$P(this.props.icon, this.props.iconSource, this.props.variant, this.props.hideLabel, this.props.disabled, this.props.loading, this.props.theme)));
68
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("button", { ...getButtonAriaAttributes(this.props.disabled, this.props.loading, this.props.aria), className: "root", type: this.props.type, children: [this.props.loading && (jsx(PSpinner, { className: "spinner", size: "inherit", theme: getLinkButtonThemeForIcon(this.props.variant, this.props.theme), aria: { 'aria-label': 'Loading state:' } })), hasVisibleIcon(this.props.icon, this.props.iconSource) && (jsx(PIcon, { className: "icon", size: "inherit", name: this.props.iconSource ? undefined : this.props.icon, source: this.props.iconSource, color: isDisabledOrLoading(this.props.disabled, this.props.loading) ? 'state-disabled' : 'primary', theme: getLinkButtonThemeForIcon(this.props.variant, this.props.theme), "aria-hidden": "true" })), jsx("span", { className: "label", children: jsx("slot", {}) })] })] }), this.props.children] }));
70
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$R(this.props.icon, this.props.iconSource, this.props.variant, this.props.hideLabel, this.props.disabled, this.props.loading, this.props.theme)));
71
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("button", { ...getButtonAriaAttributes(this.props.disabled, this.props.loading, this.props.aria), className: "root", type: this.props.type, children: [this.props.loading && (jsx(PSpinner, { className: "spinner", size: "inherit", theme: getLinkButtonThemeForIcon(this.props.variant, this.props.theme), aria: { 'aria-label': 'Loading state:' } })), hasVisibleIcon(this.props.icon, this.props.iconSource) && (jsx(PIcon, { className: "icon", size: "inherit", name: this.props.iconSource ? undefined : this.props.icon, source: this.props.iconSource, color: isDisabledOrLoading(this.props.disabled, this.props.loading) ? 'state-disabled' : 'primary', theme: getLinkButtonThemeForIcon(this.props.variant, this.props.theme), "aria-hidden": "true" })), jsx("span", { className: "label", children: jsx("slot", {}) })] })] }), this.props.children] }));
69
72
  }
70
73
  }
71
74
 
@@ -4,11 +4,13 @@ import '../components/banner.wrapper.js';
4
4
  import '../components/button.wrapper.js';
5
5
  import '../components/button-group.wrapper.js';
6
6
  import { PButtonPure } from '../components/button-pure.wrapper.js';
7
+ import '../components/button-tile.wrapper.js';
7
8
  import '../components/carousel.wrapper.js';
8
9
  import '../components/checkbox-wrapper.wrapper.js';
9
10
  import '../components/content-wrapper.wrapper.js';
10
11
  import '../components/display.wrapper.js';
11
12
  import '../components/divider.wrapper.js';
13
+ import '../components/fieldset.wrapper.js';
12
14
  import '../components/fieldset-wrapper.wrapper.js';
13
15
  import '../components/flex.wrapper.js';
14
16
  import '../components/flex-item.wrapper.js';
@@ -22,6 +24,7 @@ import '../components/link.wrapper.js';
22
24
  import '../components/link-pure.wrapper.js';
23
25
  import '../components/link-social.wrapper.js';
24
26
  import '../components/link-tile.wrapper.js';
27
+ import '../components/link-tile-model-signature.wrapper.js';
25
28
  import '../components/marque.wrapper.js';
26
29
  import '../components/modal.wrapper.js';
27
30
  import '../components/model-signature.wrapper.js';
@@ -58,13 +61,14 @@ import { splitChildren } from '../../splitChildren.js';
58
61
  import { Component } from 'react';
59
62
  import { minifyCss } from '../../minifyCss.js';
60
63
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
61
- import { getCarouselCss as getComponentCss$O } from '../../../../../../components/dist/styles/esm/styles-entry.js';
64
+ import { getCarouselCss as getComponentCss$Q } from '../../../../../../components/dist/styles/esm/styles-entry.js';
62
65
 
63
66
  class DSRCarousel extends Component {
64
67
  constructor() {
65
68
  super(...arguments);
66
69
  this.slides = [];
67
70
  }
71
+ // we need to prevent splide reinitialization via splide.refresh() when activeSlideIndex is changed from outside
68
72
  render() {
69
73
  var _a;
70
74
  const { children, namedSlotChildren, otherChildren } = splitChildren(this.props.children);
@@ -75,14 +79,14 @@ class DSRCarousel extends Component {
75
79
  theme: this.props.theme,
76
80
  // 'aria-controls': 'splide-track', // TODO: cross shadow dom? use native button tag instead of p-button-pure?
77
81
  };
78
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$O(this.props.width,
82
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Q(this.props.width,
79
83
  // flip boolean values of disablePagination since it is the inverse of pagination
80
84
  this.props.disablePagination
81
85
  ? typeof this.props.disablePagination === 'object'
82
86
  ? Object.fromEntries(Object.entries(this.props.disablePagination).map(([key, value]) => [key, !value]))
83
87
  : !this.props.disablePagination
84
88
  : this.props.pagination, this.props.alignHeader, this.props.theme)));
85
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(Fragment, { children: [jsxs("div", { className: "header", children: [this.props.heading ? jsx("h2", { children: this.props.heading }) : jsx("slot", { name: "heading" }), (this.props.description || namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0) &&
89
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(Fragment, { children: [jsxs("div", { className: "header", children: [this.props.heading ? jsx("h2", { children: this.props.heading }) : jsx("slot", { name: "heading" }), (this.props.description || namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0) &&
86
90
  ((this.props.description && jsx("p", { children: this.props.description })) || jsx("slot", { name: "description" })), jsxs("div", { className: "nav", children: [jsx(PButtonPure, { ...btnProps, icon: "arrow-left" }), jsx(PButtonPure, { ...btnProps, icon: "arrow-right" })] })] }), jsx("div", { id: "splide", className: "splide", "aria-label": this.props.heading || ((_a = namedSlotChildren.find(({ props: { slot } }) => slot === 'heading')) === null || _a === void 0 ? void 0 : _a.props.children), children: jsx("div", { className: "splide__track", children: jsx("div", { className: "splide__list", children: otherChildren.map((_, i) => (jsx("div", { className: "splide__slide", children: jsx("slot", { name: `slide-${i}` }) }, i))) }) }) }), (this.props.disablePagination ? this.props.disablePagination !== true : this.props.pagination) && (jsx("div", { className: "pagination" }))] })] }), this.props.children] }));
87
91
  }
88
92
  }
@@ -3,15 +3,15 @@ import { splitChildren } from '../../splitChildren.js';
3
3
  import { Component } from 'react';
4
4
  import { minifyCss } from '../../minifyCss.js';
5
5
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.js';
6
- import { getCheckboxWrapperCss as getComponentCss$N } from '../../../../../../components/dist/styles/esm/styles-entry.js';
6
+ import { getCheckboxWrapperCss as getComponentCss$P } from '../../../../../../components/dist/styles/esm/styles-entry.js';
7
7
  import { StateMessage } from './state-message.js';
8
8
 
9
9
  class DSRCheckboxWrapper extends Component {
10
10
  render() {
11
11
  var _a;
12
12
  const { children, namedSlotChildren, otherChildren } = splitChildren(this.props.children);
13
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$N(this.props.hideLabel, this.props.state, typeof otherChildren[0] === 'object' && 'props' in otherChildren[0] && ((_a = otherChildren[0]) === null || _a === void 0 ? void 0 : _a.props.disabled), this.props.theme)));
14
- return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(Fragment, { children: [jsxs("label", { children: [(this.props.label || namedSlotChildren.filter(({ props: { slot } }) => slot === 'label').length > 0) && (jsx("span", { className: "text", children: this.props.label || jsx("slot", { name: "label" }) })), jsx("slot", {})] }), (this.props.message || namedSlotChildren.filter(({ props: { slot } }) => slot === 'message').length > 0) && ['success', 'error'].includes(this.props.state) && (jsx(StateMessage, { state: this.props.state, message: this.props.message, theme: this.props.theme, host: null }))] })] }), this.props.children] }));
13
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$P(this.props.hideLabel, this.props.state, typeof otherChildren[0] === 'object' && 'props' in otherChildren[0] && ((_a = otherChildren[0]) === null || _a === void 0 ? void 0 : _a.props.disabled), this.props.theme)));
14
+ return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(Fragment, { children: [jsxs("label", { children: [(this.props.label || namedSlotChildren.filter(({ props: { slot } }) => slot === 'label').length > 0) && (jsx("span", { className: "text", children: this.props.label || jsx("slot", { name: "label" }) })), jsx("slot", {})] }), (this.props.message || namedSlotChildren.filter(({ props: { slot } }) => slot === 'message').length > 0) && ['success', 'error'].includes(this.props.state) && (jsx(StateMessage, { state: this.props.state, message: this.props.message, theme: this.props.theme, host: null }))] })] }), this.props.children] }));
15
15
  }
16
16
  }
17
17