@porsche-design-system/components-react 3.9.0 → 3.10.0-rc.1

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 (143) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/cjs/lib/components/flyout-navigation-item.wrapper.cjs +25 -0
  3. package/cjs/lib/components/flyout-navigation.wrapper.cjs +27 -0
  4. package/cjs/lib/components/link-tile-product.wrapper.cjs +26 -0
  5. package/cjs/lib/components/pagination.wrapper.cjs +1 -1
  6. package/cjs/lib/components/text-field-wrapper.wrapper.cjs +3 -3
  7. package/cjs/public-api.cjs +6 -0
  8. package/esm/lib/components/flyout-navigation-item.wrapper.d.ts +11 -0
  9. package/esm/lib/components/flyout-navigation-item.wrapper.mjs +23 -0
  10. package/esm/lib/components/flyout-navigation.wrapper.d.ts +56 -0
  11. package/esm/lib/components/flyout-navigation.wrapper.mjs +25 -0
  12. package/esm/lib/components/index.d.ts +3 -0
  13. package/esm/lib/components/link-tile-product.wrapper.d.ts +96 -0
  14. package/esm/lib/components/link-tile-product.wrapper.mjs +24 -0
  15. package/esm/lib/components/pagination.wrapper.d.ts +4 -2
  16. package/esm/lib/components/pagination.wrapper.mjs +1 -1
  17. package/esm/lib/components/text-field-wrapper.wrapper.d.ts +8 -0
  18. package/esm/lib/components/text-field-wrapper.wrapper.mjs +3 -3
  19. package/esm/lib/types.d.ts +18 -0
  20. package/esm/public-api.mjs +3 -0
  21. package/package.json +2 -2
  22. package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +1056 -425
  23. package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +84 -69
  24. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation-item.wrapper.cjs +39 -0
  25. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation.wrapper.cjs +41 -0
  26. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-product.wrapper.cjs +40 -0
  27. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.cjs +1 -1
  28. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.cjs +4 -4
  29. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.cjs +3 -0
  30. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.cjs +3 -0
  31. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.cjs +3 -0
  32. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.cjs +3 -0
  33. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.cjs +3 -0
  34. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.cjs +4 -1
  35. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.cjs +3 -0
  36. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation-item.cjs +95 -0
  37. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation.cjs +94 -0
  38. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.cjs +3 -0
  39. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.cjs +3 -0
  40. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.cjs +3 -0
  41. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.cjs +3 -0
  42. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.cjs +3 -0
  43. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-product.cjs +92 -0
  44. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.cjs +3 -0
  45. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.cjs +3 -0
  46. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.cjs +3 -0
  47. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.cjs +3 -0
  48. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +3 -0
  49. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.cjs +17 -11
  50. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.cjs +3 -0
  51. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.cjs +3 -0
  52. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.cjs +3 -0
  53. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.cjs +3 -0
  54. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.cjs +3 -0
  55. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.cjs +7 -1
  56. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.cjs +3 -0
  57. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.cjs +3 -0
  58. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.cjs +3 -0
  59. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.cjs +3 -0
  60. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.cjs +3 -0
  61. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.cjs +3 -0
  62. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.cjs +3 -0
  63. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.cjs +3 -0
  64. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.cjs +3 -0
  65. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.cjs +3 -0
  66. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.cjs +3 -0
  67. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.cjs +5 -2
  68. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/minifyCss.cjs +7 -1
  69. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/public-api.cjs +6 -0
  70. package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +1027 -399
  71. package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +82 -69
  72. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation-item.wrapper.mjs +37 -0
  73. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation.wrapper.mjs +39 -0
  74. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-product.wrapper.mjs +38 -0
  75. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.mjs +1 -1
  76. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.mjs +4 -4
  77. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.mjs +5 -2
  78. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.mjs +5 -2
  79. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.mjs +2 -2
  80. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.mjs +5 -2
  81. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.mjs +5 -2
  82. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.mjs +5 -2
  83. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.mjs +6 -3
  84. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.mjs +5 -2
  85. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.mjs +2 -2
  86. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/crest.mjs +2 -2
  87. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.mjs +2 -2
  88. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.mjs +2 -2
  89. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.mjs +2 -2
  90. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.mjs +2 -2
  91. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.mjs +2 -2
  92. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.mjs +2 -2
  93. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation-item.mjs +93 -0
  94. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation.mjs +92 -0
  95. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.mjs +5 -2
  96. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.mjs +2 -2
  97. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.mjs +2 -2
  98. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.mjs +2 -2
  99. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.mjs +2 -2
  100. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.mjs +2 -2
  101. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.mjs +5 -2
  102. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.mjs +5 -2
  103. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.mjs +5 -2
  104. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.mjs +5 -2
  105. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-product.mjs +90 -0
  106. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.mjs +3 -0
  107. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.mjs +5 -2
  108. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.mjs +3 -0
  109. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.mjs +3 -0
  110. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +3 -0
  111. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.mjs +18 -12
  112. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.mjs +3 -0
  113. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.mjs +3 -0
  114. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.mjs +3 -0
  115. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.mjs +3 -0
  116. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.mjs +3 -0
  117. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.mjs +7 -1
  118. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.mjs +3 -0
  119. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.mjs +3 -0
  120. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.mjs +3 -0
  121. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.mjs +3 -0
  122. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.mjs +3 -0
  123. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.mjs +3 -0
  124. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.mjs +3 -0
  125. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.mjs +3 -0
  126. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.mjs +3 -0
  127. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.mjs +3 -0
  128. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.mjs +3 -0
  129. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.mjs +5 -2
  130. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/minifyCss.mjs +7 -1
  131. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.mjs +3 -0
  132. package/ssr/esm/lib/components/flyout-navigation-item.wrapper.d.ts +11 -0
  133. package/ssr/esm/lib/components/flyout-navigation.wrapper.d.ts +56 -0
  134. package/ssr/esm/lib/components/index.d.ts +3 -0
  135. package/ssr/esm/lib/components/link-tile-product.wrapper.d.ts +96 -0
  136. package/ssr/esm/lib/components/pagination.wrapper.d.ts +4 -2
  137. package/ssr/esm/lib/components/text-field-wrapper.wrapper.d.ts +8 -0
  138. package/ssr/esm/lib/dsr-components/flyout-navigation-item.d.ts +8 -0
  139. package/ssr/esm/lib/dsr-components/flyout-navigation.d.ts +8 -0
  140. package/ssr/esm/lib/dsr-components/link-tile-product.d.ts +6 -0
  141. package/ssr/esm/lib/dsr-components/pagination.d.ts +0 -2
  142. package/ssr/esm/lib/dsr-components/select-wrapper-dropdown.d.ts +3 -0
  143. package/ssr/esm/lib/types.d.ts +18 -0
@@ -1,40 +1,3 @@
1
- /* eslint-disable prefer-arrow/prefer-arrow-functions */
2
- function getClosestHTMLElement(element, selector) {
3
- return element?.closest(selector);
4
- }
5
-
6
- function getHTMLElement(element, selector) {
7
- return element?.querySelector(selector);
8
- }
9
-
10
- const transformSelectorToDirectChildSelector = (selector) => selector
11
- .split(',')
12
- .map((part) => ':scope>' + part)
13
- .join();
14
-
15
- /* eslint-disable prefer-arrow/prefer-arrow-functions */
16
- function getDirectChildHTMLElement(element, selector) {
17
- // querySelector(All) doesn't work with :scope pseudo class and comma separator in jsdom, yet
18
- // https://github.com/jsdom/jsdom/issues/3141
19
- // therefore we got a workaround so it works nicely when consumed from jsdom-polyfill package
20
- return (transformSelectorToDirectChildSelector(selector)
21
- .split(',')
22
- .map((sel) => getHTMLElement(element, sel))
23
- .filter((x) => x)[0] || null // comma separated selector might return null, so we have to filter
24
- );
25
- }
26
-
27
- // TODO: unit test is missing
28
- const hasSpecificSlottedTag = (host, tags) => {
29
- // TODO: needs to be direct and only child
30
- const el = getHTMLElement(host, ':first-child');
31
- return el?.matches(tags);
32
- };
33
-
34
- const isDisabledOrLoading = (disabled, loading) => {
35
- return disabled || loading;
36
- };
37
-
38
1
  function _extends() {
39
2
  _extends = Object.assign ? Object.assign.bind() : function (target) {
40
3
  for (var i = 1; i < arguments.length; i++) {
@@ -2387,18 +2350,18 @@ function getDynamicStyles(styles) {
2387
2350
  var index = createJss();
2388
2351
 
2389
2352
  var jss_esm = /*#__PURE__*/Object.freeze({
2390
- __proto__: null,
2391
- RuleList: RuleList,
2392
- SheetsManager: SheetsManager,
2393
- SheetsRegistry: SheetsRegistry,
2394
- create: createJss,
2395
- createGenerateId: createGenerateId,
2396
- createRule: createRule,
2397
- default: index,
2398
- getDynamicStyles: getDynamicStyles,
2399
- hasCSSTOMSupport: hasCSSTOMSupport,
2400
- sheets: sheets,
2401
- toCssValue: toCssValue
2353
+ __proto__: null,
2354
+ RuleList: RuleList,
2355
+ SheetsManager: SheetsManager,
2356
+ SheetsRegistry: SheetsRegistry,
2357
+ create: createJss,
2358
+ createGenerateId: createGenerateId,
2359
+ createRule: createRule,
2360
+ default: index,
2361
+ getDynamicStyles: getDynamicStyles,
2362
+ hasCSSTOMSupport: hasCSSTOMSupport,
2363
+ sheets: sheets,
2364
+ toCssValue: toCssValue
2402
2365
  });
2403
2366
 
2404
2367
  var at = '@global';
@@ -3188,6 +3151,46 @@ var dist = jssCombineAndSortMQ;
3188
3151
 
3189
3152
  var jssPluginSortMediaQueries = /*@__PURE__*/getDefaultExportFromCjs(dist);
3190
3153
 
3154
+ // This class is shared since the popover needs to register a scroll listener to this node in order to hide the popover when the table is scrolled
3155
+ const scrollAreaClass = 'scroll-area';
3156
+
3157
+ /* eslint-disable prefer-arrow/prefer-arrow-functions */
3158
+ function getClosestHTMLElement(element, selector) {
3159
+ return element?.closest(selector);
3160
+ }
3161
+
3162
+ function getHTMLElement(element, selector) {
3163
+ return element?.querySelector(selector);
3164
+ }
3165
+
3166
+ const transformSelectorToDirectChildSelector = (selector) => selector
3167
+ .split(',')
3168
+ .map((part) => ':scope>' + part)
3169
+ .join();
3170
+
3171
+ /* eslint-disable prefer-arrow/prefer-arrow-functions */
3172
+ function getDirectChildHTMLElement(element, selector) {
3173
+ // querySelector(All) doesn't work with :scope pseudo class and comma separator in jsdom, yet
3174
+ // https://github.com/jsdom/jsdom/issues/3141
3175
+ // therefore we got a workaround so it works nicely when consumed from jsdom-polyfill package
3176
+ return (transformSelectorToDirectChildSelector(selector)
3177
+ .split(',')
3178
+ .map((sel) => getHTMLElement(element, sel))
3179
+ .filter((x) => x)[0] || null // comma separated selector might return null, so we have to filter
3180
+ );
3181
+ }
3182
+
3183
+ // TODO: unit test is missing
3184
+ const hasSpecificSlottedTag = (host, tags) => {
3185
+ // TODO: needs to be direct and only child
3186
+ const el = getHTMLElement(host, ':first-child');
3187
+ return el?.matches(tags);
3188
+ };
3189
+
3190
+ const isDisabledOrLoading = (disabled, loading) => {
3191
+ return disabled || loading;
3192
+ };
3193
+
3191
3194
  const parseJSONAttribute = (attribute) => {
3192
3195
  return typeof attribute === 'string'
3193
3196
  ? // input is potentially JSON parsable string, e.g. "{ aria-label: 'Some label' }"
@@ -3538,9 +3541,6 @@ const supportsConstructableStylesheets = () => {
3538
3541
  };
3539
3542
  // determine it once
3540
3543
  supportsConstructableStylesheets();
3541
-
3542
- // This class is shared since the popover needs to register a scroll listener to this node in order to hide the popover when the table is scrolled
3543
- const scrollAreaClass = 'scroll-area';
3544
3544
  const isScrollable = (isPrevHidden, isNextHidden) => {
3545
3545
  return !(isPrevHidden && isNextHidden);
3546
3546
  };
@@ -3564,6 +3564,8 @@ const hasDocument = typeof document !== 'undefined';
3564
3564
  const isThemeDark = (theme) => {
3565
3565
  return theme === 'dark';
3566
3566
  };
3567
+ const headerSlot = 'header';
3568
+ const anchorSlot = 'anchor';
3567
3569
 
3568
3570
  const formatObjectOutput = (value) => {
3569
3571
  return JSON.stringify(value)
@@ -3739,51 +3741,62 @@ const createNextPageLink = (options) => {
3739
3741
  isActive: activePage < pageTotal,
3740
3742
  };
3741
3743
  };
3742
- const createPageFunctionFactory = (options) => {
3744
+ const createPageFunctionFactory = ({ activePage }) => {
3743
3745
  return (pageNumber) => ({
3744
3746
  type: ItemType.PAGE,
3745
3747
  value: pageNumber,
3746
- isActive: pageNumber === options.activePage,
3748
+ isActive: pageNumber === activePage,
3749
+ isBeforeCurrent: pageNumber === activePage - 1,
3750
+ isBeforeBeforeCurrent: pageNumber === activePage - 2,
3751
+ isAfterCurrent: pageNumber === activePage + 1,
3752
+ isAfterAfterCurrent: pageNumber === activePage + 2,
3747
3753
  });
3748
3754
  };
3749
3755
  const createRange = (start, end) => Array.from(Array(end - start + 1), (_, i) => i + start);
3750
- const createPaginationModel = (options) => {
3751
- const { pageTotal, activePage, pageRange, showLastPage } = options;
3756
+ const createPaginationItems = (options) => {
3757
+ const { pageTotal, activePage, showLastPage } = options;
3758
+ const pageRange = 1;
3752
3759
  const boundaryPagesRange = 1;
3753
3760
  const ellipsisSize = 1;
3754
- const paginationModel = [createPreviousPageLink(options)];
3761
+ const paginationItems = [createPreviousPageLink(options)];
3755
3762
  const createPage = createPageFunctionFactory(options);
3756
3763
  // Simplify generation of pages if number of available items is equal or greater than total pages to show
3757
- if (1 + 2 * ellipsisSize + 2 * pageRange + 2 * boundaryPagesRange >= pageTotal) {
3764
+ if (1 + 2 * ellipsisSize + 2 * boundaryPagesRange >= pageTotal) {
3758
3765
  const allPages = createRange(1, pageTotal).map(createPage);
3759
- paginationModel.push(...allPages);
3766
+ paginationItems.push(...allPages);
3760
3767
  }
3761
3768
  else {
3762
3769
  // Add first page
3763
- paginationModel.push(createPage(1));
3770
+ paginationItems.push(createPage(1));
3764
3771
  // Calculate group of middle pages
3765
- const middlePagesStart = Math.min(Math.max(activePage - pageRange, 2 + ellipsisSize), pageTotal - ellipsisSize - 2 * pageRange - (showLastPage ? 1 : 0));
3766
- const middlePagesEnd = middlePagesStart + 2 * pageRange;
3772
+ const middlePagesStart = Math.min(Math.max(activePage - pageRange, 2 + ellipsisSize), pageTotal - ellipsisSize - 2 - (showLastPage ? 1 : 0));
3773
+ const middlePagesEnd = middlePagesStart + 2;
3767
3774
  const middlePages = createRange(middlePagesStart, middlePagesEnd).map(createPage);
3768
3775
  // Calculate and add ellipsis before group of middle pages
3769
3776
  const firstEllipsisPageNumber = middlePagesStart - 1;
3770
3777
  const showPageInsteadOfFirstEllipsis = firstEllipsisPageNumber === 2;
3771
3778
  const firstEllipsisOrPage = showPageInsteadOfFirstEllipsis ? createPage(firstEllipsisPageNumber) : ellipsisItem;
3772
- paginationModel.push(firstEllipsisOrPage);
3779
+ if (showPageInsteadOfFirstEllipsis && pageTotal > 5) {
3780
+ paginationItems.push(ellipsisItem);
3781
+ }
3782
+ paginationItems.push(firstEllipsisOrPage);
3773
3783
  // Add group of middle pages
3774
- paginationModel.push(...middlePages);
3784
+ paginationItems.push(...middlePages);
3775
3785
  // Calculate and add ellipsis after group of middle pages
3776
3786
  const lastEllipsisPageNumber = middlePagesEnd + 1;
3777
3787
  const showPageInsteadOfLastEllipsis = lastEllipsisPageNumber === pageTotal - (showLastPage ? 1 : 0);
3778
3788
  const lastEllipsisOrPage = showPageInsteadOfLastEllipsis ? createPage(lastEllipsisPageNumber) : ellipsisItem;
3779
- paginationModel.push(lastEllipsisOrPage);
3789
+ paginationItems.push(lastEllipsisOrPage);
3790
+ if (showPageInsteadOfLastEllipsis && pageTotal > 5) {
3791
+ paginationItems.push(ellipsisItem);
3792
+ }
3780
3793
  // Add last page
3781
3794
  if (showLastPage) {
3782
- paginationModel.push(createPage(pageTotal));
3795
+ paginationItems.push(createPage(pageTotal));
3783
3796
  }
3784
3797
  }
3785
- paginationModel.push(createNextPageLink(options));
3786
- return paginationModel;
3798
+ paginationItems.push(createNextPageLink(options));
3799
+ return paginationItems;
3787
3800
  };
3788
3801
  const getCurrentActivePage = (activePage, totalPages) => {
3789
3802
  // Obviously we can't be on a negative or 0 page.
@@ -3900,4 +3913,4 @@ const getTextTagType = (host, tag) => {
3900
3913
  }
3901
3914
  };
3902
3915
 
3903
- export { DISPLAY_TAGS, HEADING_TAGS, HEADLINE_TAGS, ItemType, TEXT_TAGS, _hasShowPickerSupport, attributeMutationMap, buildCrestImgSrc, buildCrestSrcSet, buildIconUrl, buildImgSrc, buildSrcSet, createPaginationModel, createRange, crestSize, displaySizeToTagMap, getButtonAriaAttributes, getButtonAttributes, getButtonBaseAriaAttributes, getButtonPureAriaAttributes, getCDNBaseURL, getClosestHTMLElement, getContentAriaAttributes, getCurrentActivePage, getDirectChildHTMLElement, getDisplayTagType, getHTMLElement, getHeadingTagType, getHeadlineTagType, getIconColor, getInlineNotificationIconName, getInnerManifest, getRole, getSelectedOptionMap, getSelectedOptionValues, getSelectedOptions, getStepperHorizontalIconName, getSvgUrl, getSwitchButtonAriaAttributes, getTextTagType, getThemeForIcon, getTotalPages, hasDocument, hasLocateAction, hasSpecificSlottedTag, hasVisibleIcon, hasWindow, isCustomDropdown, isDisabledOrLoading, isInfinitePagination, isListTypeOrdered, isScrollable, isSortable, isStateCompleteOrWarning, isThemeDark, isTouchDevice, isType, isUrl, isWithinForm, modelSignatureHeight, observedNodesMap, parseAndGetAriaAttributes, parseJSONAttribute, scrollAreaClass, showCustomCalendarOrTimeIndicator, supportsConstructableStylesheets, supportsNativePopover, tempDiv, tempIcon, tempLabel };
3916
+ export { DISPLAY_TAGS, HEADING_TAGS, HEADLINE_TAGS, ItemType, TEXT_TAGS, _hasShowPickerSupport, anchorSlot, attributeMutationMap, buildCrestImgSrc, buildCrestSrcSet, buildIconUrl, buildImgSrc, buildSrcSet, createPaginationItems, createRange, crestSize, displaySizeToTagMap, getButtonAriaAttributes, getButtonAttributes, getButtonBaseAriaAttributes, getButtonPureAriaAttributes, getCDNBaseURL, getClosestHTMLElement, getContentAriaAttributes, getCurrentActivePage, getDirectChildHTMLElement, getDisplayTagType, getHTMLElement, getHeadingTagType, getHeadlineTagType, getIconColor, getInlineNotificationIconName, getInnerManifest, getRole, getSelectedOptionMap, getSelectedOptionValues, getSelectedOptions, getStepperHorizontalIconName, getSvgUrl, getSwitchButtonAriaAttributes, getTextTagType, getThemeForIcon, getTotalPages, hasDocument, hasLocateAction, hasSpecificSlottedTag, hasVisibleIcon, hasWindow, headerSlot, isCustomDropdown, isDisabledOrLoading, isInfinitePagination, isListTypeOrdered, isScrollable, isSortable, isStateCompleteOrWarning, isThemeDark, isTouchDevice, isType, isUrl, isWithinForm, modelSignatureHeight, observedNodesMap, parseAndGetAriaAttributes, parseJSONAttribute, scrollAreaClass, showCustomCalendarOrTimeIndicator, supportsConstructableStylesheets, supportsNativePopover, tempDiv, tempIcon, tempLabel };
@@ -0,0 +1,37 @@
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 { DSRFlyoutNavigationItem } from '../dsr-components/flyout-navigation-item.mjs';
7
+
8
+ const PFlyoutNavigationItem = forwardRef(({ identifier, label, className, children, ...rest }, ref) => {
9
+ const elementRef = useRef();
10
+ const WebComponentTag = usePrefix('p-flyout-navigation-item');
11
+ const propsToSync = [identifier, label];
12
+ useBrowserLayoutEffect(() => {
13
+ const { current } = elementRef;
14
+ ['identifier', 'label'].forEach((propName, i) => (current[propName] = propsToSync[i]));
15
+ }, propsToSync);
16
+ // @ts-ignore
17
+ if (!process.browser) {
18
+ className = className ? `${className} ssr` : 'ssr';
19
+ }
20
+ const props = {
21
+ ...rest,
22
+ // @ts-ignore
23
+ ...(!process.browser
24
+ ? {
25
+ children: (jsx(DSRFlyoutNavigationItem, { identifier, label, children })),
26
+ }
27
+ : {
28
+ children,
29
+ suppressHydrationWarning: true,
30
+ }),
31
+ class: useMergedClass(elementRef, className),
32
+ ref: syncRef(elementRef, ref)
33
+ };
34
+ return jsx(WebComponentTag, { ...props });
35
+ });
36
+
37
+ export { PFlyoutNavigationItem };
@@ -0,0 +1,39 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, useRef } from 'react';
4
+ import { useEventCallback, usePrefix, useTheme, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
5
+ import { syncRef } from '../../utils.mjs';
6
+ import { DSRFlyoutNavigation } from '../dsr-components/flyout-navigation.mjs';
7
+
8
+ const PFlyoutNavigation = forwardRef(({ activeIdentifier, aria, onDismiss, onUpdate, open = false, theme, className, children, ...rest }, ref) => {
9
+ const elementRef = useRef();
10
+ useEventCallback(elementRef, 'dismiss', onDismiss);
11
+ useEventCallback(elementRef, 'update', onUpdate);
12
+ const WebComponentTag = usePrefix('p-flyout-navigation');
13
+ const propsToSync = [activeIdentifier, aria, open, theme || useTheme()];
14
+ useBrowserLayoutEffect(() => {
15
+ const { current } = elementRef;
16
+ ['activeIdentifier', 'aria', 'open', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
17
+ }, propsToSync);
18
+ // @ts-ignore
19
+ if (!process.browser) {
20
+ className = className ? `${className} ssr` : 'ssr';
21
+ }
22
+ const props = {
23
+ ...rest,
24
+ // @ts-ignore
25
+ ...(!process.browser
26
+ ? {
27
+ children: (jsx(DSRFlyoutNavigation, { activeIdentifier, aria, open, theme: theme || useTheme(), children })),
28
+ }
29
+ : {
30
+ children,
31
+ suppressHydrationWarning: true,
32
+ }),
33
+ class: useMergedClass(elementRef, className),
34
+ ref: syncRef(elementRef, ref)
35
+ };
36
+ return jsx(WebComponentTag, { ...props });
37
+ });
38
+
39
+ export { PFlyoutNavigation };
@@ -0,0 +1,38 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, useRef } from 'react';
4
+ import { useEventCallback, usePrefix, useTheme, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
5
+ import { syncRef } from '../../utils.mjs';
6
+ import { DSRLinkTileProduct } from '../dsr-components/link-tile-product.mjs';
7
+
8
+ const PLinkTileProduct = forwardRef(({ aspectRatio = '3:4', description, heading, href, likeButton = true, liked = false, onLike, price, rel, target = '_self', theme, className, children, ...rest }, ref) => {
9
+ const elementRef = useRef();
10
+ useEventCallback(elementRef, 'like', onLike);
11
+ const WebComponentTag = usePrefix('p-link-tile-product');
12
+ const propsToSync = [aspectRatio, description, heading, href, likeButton, liked, price, rel, target, theme || useTheme()];
13
+ useBrowserLayoutEffect(() => {
14
+ const { current } = elementRef;
15
+ ['aspectRatio', 'description', 'heading', 'href', 'likeButton', 'liked', 'price', 'rel', 'target', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
16
+ }, propsToSync);
17
+ // @ts-ignore
18
+ if (!process.browser) {
19
+ className = className ? `${className} ssr` : 'ssr';
20
+ }
21
+ const props = {
22
+ ...rest,
23
+ // @ts-ignore
24
+ ...(!process.browser
25
+ ? {
26
+ children: (jsx(DSRLinkTileProduct, { aspectRatio, description, heading, href, likeButton, liked, price, rel, target, theme: theme || useTheme(), children })),
27
+ }
28
+ : {
29
+ children,
30
+ suppressHydrationWarning: true,
31
+ }),
32
+ class: useMergedClass(elementRef, className),
33
+ ref: syncRef(elementRef, ref)
34
+ };
35
+ return jsx(WebComponentTag, { ...props });
36
+ });
37
+
38
+ export { PLinkTileProduct };
@@ -5,7 +5,7 @@ import { useEventCallback, usePrefix, useTheme, useBrowserLayoutEffect, useMerge
5
5
  import { syncRef } from '../../utils.mjs';
6
6
  import { DSRPagination } from '../dsr-components/pagination.mjs';
7
7
 
8
- const PPagination = forwardRef(({ activePage = 1, allyLabel, allyLabelNext, allyLabelPage, allyLabelPrev, intl = { root: 'Pagination', prev: 'Previous page', next: 'Next page', page: 'Page', }, itemsPerPage = 1, maxNumberOfPageLinks = { base: 5, xs: 7, }, onPageChange, onUpdate, showLastPage = true, theme, totalItemsCount = 1, className, ...rest }, ref) => {
8
+ const PPagination = forwardRef(({ activePage = 1, allyLabel, allyLabelNext, allyLabelPage, allyLabelPrev, intl = { root: 'Pagination', prev: 'Previous page', next: 'Next page', page: 'Page', }, itemsPerPage = 1, maxNumberOfPageLinks, onPageChange, onUpdate, showLastPage = true, theme, totalItemsCount = 1, className, ...rest }, ref) => {
9
9
  const elementRef = useRef();
10
10
  useEventCallback(elementRef, 'pageChange', onPageChange);
11
11
  useEventCallback(elementRef, 'update', onUpdate);
@@ -5,14 +5,14 @@ import { useEventCallback, usePrefix, useTheme, useBrowserLayoutEffect, useMerge
5
5
  import { syncRef } from '../../utils.mjs';
6
6
  import { DSRTextFieldWrapper } from '../dsr-components/text-field-wrapper.mjs';
7
7
 
8
- const PTextFieldWrapper = forwardRef(({ actionIcon, actionLoading = false, description = '', hideLabel = false, label = '', message = '', onAction, showCharacterCount, showCounter = true, showPasswordToggle = true, state = 'none', theme, unit = '', unitPosition = 'prefix', className, children, ...rest }, ref) => {
8
+ const PTextFieldWrapper = forwardRef(({ actionIcon, actionLoading = false, description = '', hideLabel = false, label = '', message = '', onAction, showCharacterCount, showCounter = true, showPasswordToggle = true, state = 'none', submitButton = true, theme, unit = '', unitPosition = 'prefix', className, children, ...rest }, ref) => {
9
9
  const elementRef = useRef();
10
10
  useEventCallback(elementRef, 'action', onAction);
11
11
  const WebComponentTag = usePrefix('p-text-field-wrapper');
12
- const propsToSync = [actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, theme || useTheme(), unit, unitPosition];
12
+ const propsToSync = [actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, submitButton, theme || useTheme(), unit, unitPosition];
13
13
  useBrowserLayoutEffect(() => {
14
14
  const { current } = elementRef;
15
- ['actionIcon', 'actionLoading', 'description', 'hideLabel', 'label', 'message', 'showCharacterCount', 'showCounter', 'showPasswordToggle', 'state', 'theme', 'unit', 'unitPosition'].forEach((propName, i) => (current[propName] = propsToSync[i]));
15
+ ['actionIcon', 'actionLoading', 'description', 'hideLabel', 'label', 'message', 'showCharacterCount', 'showCounter', 'showPasswordToggle', 'state', 'submitButton', 'theme', 'unit', 'unitPosition'].forEach((propName, i) => (current[propName] = propsToSync[i]));
16
16
  }, propsToSync);
17
17
  // @ts-ignore
18
18
  if (!process.browser) {
@@ -23,7 +23,7 @@ const PTextFieldWrapper = forwardRef(({ actionIcon, actionLoading = false, descr
23
23
  // @ts-ignore
24
24
  ...(!process.browser
25
25
  ? {
26
- children: (jsx(DSRTextFieldWrapper, { actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, theme: theme || useTheme(), unit, unitPosition, children })),
26
+ children: (jsx(DSRTextFieldWrapper, { actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, submitButton, theme: theme || useTheme(), unit, unitPosition, children })),
27
27
  }
28
28
  : {
29
29
  children,
@@ -16,6 +16,8 @@ import '../components/fieldset-wrapper.wrapper.mjs';
16
16
  import '../components/flex.wrapper.mjs';
17
17
  import '../components/flex-item.wrapper.mjs';
18
18
  import '../components/flyout.wrapper.mjs';
19
+ import '../components/flyout-navigation.wrapper.mjs';
20
+ import '../components/flyout-navigation-item.wrapper.mjs';
19
21
  import '../components/grid.wrapper.mjs';
20
22
  import '../components/grid-item.wrapper.mjs';
21
23
  import '../components/heading.wrapper.mjs';
@@ -27,6 +29,7 @@ import '../components/link-pure.wrapper.mjs';
27
29
  import '../components/link-social.wrapper.mjs';
28
30
  import '../components/link-tile.wrapper.mjs';
29
31
  import '../components/link-tile-model-signature.wrapper.mjs';
32
+ import '../components/link-tile-product.wrapper.mjs';
30
33
  import '../components/marque.wrapper.mjs';
31
34
  import '../components/modal.wrapper.mjs';
32
35
  import '../components/model-signature.wrapper.mjs';
@@ -67,7 +70,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
70
  import { Component } from 'react';
68
71
  import { minifyCss } from '../../minifyCss.mjs';
69
72
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getAccordionCss as getComponentCss$10 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
73
+ import { getAccordionCss as getComponentCss$13 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
74
 
72
75
  class DSRAccordion extends Component {
73
76
  host;
@@ -76,7 +79,7 @@ class DSRAccordion extends Component {
76
79
  const buttonId = 'accordion-control';
77
80
  const contentId = 'accordion-panel';
78
81
  const Heading = this.props.tag;
79
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$10(this.props.size, this.props.compact, this.props.open, this.props.theme)));
82
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$13(this.props.size, this.props.compact, this.props.open, this.props.theme)));
80
83
  return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs(Fragment, { 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("span", { className: "icon-container", children: jsx(PIcon, { className: "icon", name: this.props.open ? 'minus' : 'plus', theme: this.props.theme, size: "xx-small", "aria-hidden": "true" }) })] }) }), jsx("div", { id: contentId, className: "collapsible", role: "region", "aria-labelledby": buttonId, children: jsx("div", { children: jsx("slot", {}) }) })] })] }), this.props.children] }));
81
84
  }
82
85
  }
@@ -16,6 +16,8 @@ import '../components/fieldset-wrapper.wrapper.mjs';
16
16
  import '../components/flex.wrapper.mjs';
17
17
  import '../components/flex-item.wrapper.mjs';
18
18
  import '../components/flyout.wrapper.mjs';
19
+ import '../components/flyout-navigation.wrapper.mjs';
20
+ import '../components/flyout-navigation-item.wrapper.mjs';
19
21
  import '../components/grid.wrapper.mjs';
20
22
  import '../components/grid-item.wrapper.mjs';
21
23
  import '../components/heading.wrapper.mjs';
@@ -27,6 +29,7 @@ import '../components/link-pure.wrapper.mjs';
27
29
  import '../components/link-social.wrapper.mjs';
28
30
  import '../components/link-tile.wrapper.mjs';
29
31
  import '../components/link-tile-model-signature.wrapper.mjs';
32
+ import '../components/link-tile-product.wrapper.mjs';
30
33
  import '../components/marque.wrapper.mjs';
31
34
  import '../components/modal.wrapper.mjs';
32
35
  import '../components/model-signature.wrapper.mjs';
@@ -67,7 +70,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
70
  import { Component } from 'react';
68
71
  import { minifyCss } from '../../minifyCss.mjs';
69
72
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getBannerCss as getComponentCss$$ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
73
+ import { getBannerCss as getComponentCss$12 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
74
 
72
75
  class DSRBanner extends Component {
73
76
  host;
@@ -79,7 +82,7 @@ class DSRBanner extends Component {
79
82
  render() {
80
83
  const { children, namedSlotChildren, otherChildren } = splitChildren(this.props.children);
81
84
  const hasTitleSlot = namedSlotChildren.filter(({ props: { slot } }) => slot === 'title').length > 0;
82
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$$(this.props.open)));
85
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$12(this.props.open)));
83
86
  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, dismissButton: this.hasDismissButton, theme: this.props.theme, "aria-hidden": !this.props.open ? 'true' : 'false', 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] }));
84
87
  }
85
88
  }
@@ -3,13 +3,13 @@ import { splitChildren } from '../../splitChildren.mjs';
3
3
  import { Component } from 'react';
4
4
  import { minifyCss } from '../../minifyCss.mjs';
5
5
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
6
- import { getButtonGroupCss as getComponentCss$_ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
6
+ import { getButtonGroupCss as getComponentCss$11 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
7
7
 
8
8
  class DSRButtonGroup extends Component {
9
9
  host;
10
10
  render() {
11
11
  splitChildren(this.props.children);
12
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$_(this.props.direction)));
12
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$11(this.props.direction)));
13
13
  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] }));
14
14
  }
15
15
  }
@@ -16,6 +16,8 @@ import '../components/fieldset-wrapper.wrapper.mjs';
16
16
  import '../components/flex.wrapper.mjs';
17
17
  import '../components/flex-item.wrapper.mjs';
18
18
  import '../components/flyout.wrapper.mjs';
19
+ import '../components/flyout-navigation.wrapper.mjs';
20
+ import '../components/flyout-navigation-item.wrapper.mjs';
19
21
  import '../components/grid.wrapper.mjs';
20
22
  import '../components/grid-item.wrapper.mjs';
21
23
  import '../components/heading.wrapper.mjs';
@@ -27,6 +29,7 @@ import '../components/link-pure.wrapper.mjs';
27
29
  import '../components/link-social.wrapper.mjs';
28
30
  import '../components/link-tile.wrapper.mjs';
29
31
  import '../components/link-tile-model-signature.wrapper.mjs';
32
+ import '../components/link-tile-product.wrapper.mjs';
30
33
  import '../components/marque.wrapper.mjs';
31
34
  import '../components/modal.wrapper.mjs';
32
35
  import '../components/model-signature.wrapper.mjs';
@@ -67,7 +70,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
70
  import { Component } from 'react';
68
71
  import { minifyCss } from '../../minifyCss.mjs';
69
72
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getButtonPureCss as getComponentCss$Z } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
73
+ import { getButtonPureCss as getComponentCss$10 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
74
  import { isDisabledOrLoading, hasVisibleIcon, getButtonPureAriaAttributes } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
75
 
73
76
  class DSRButtonPure extends Component {
@@ -84,7 +87,7 @@ class DSRButtonPure extends Component {
84
87
  size: 'inherit',
85
88
  theme: this.props.theme,
86
89
  };
87
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Z(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)));
90
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$10(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)));
88
91
  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, name: this.props.name, value: this.props.value, 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] }));
89
92
  }
90
93
  }
@@ -17,6 +17,8 @@ import '../components/fieldset-wrapper.wrapper.mjs';
17
17
  import '../components/flex.wrapper.mjs';
18
18
  import '../components/flex-item.wrapper.mjs';
19
19
  import '../components/flyout.wrapper.mjs';
20
+ import '../components/flyout-navigation.wrapper.mjs';
21
+ import '../components/flyout-navigation-item.wrapper.mjs';
20
22
  import '../components/grid.wrapper.mjs';
21
23
  import '../components/grid-item.wrapper.mjs';
22
24
  import '../components/heading.wrapper.mjs';
@@ -28,6 +30,7 @@ import '../components/link-pure.wrapper.mjs';
28
30
  import '../components/link-social.wrapper.mjs';
29
31
  import '../components/link-tile.wrapper.mjs';
30
32
  import '../components/link-tile-model-signature.wrapper.mjs';
33
+ import '../components/link-tile-product.wrapper.mjs';
31
34
  import '../components/marque.wrapper.mjs';
32
35
  import '../components/modal.wrapper.mjs';
33
36
  import '../components/model-signature.wrapper.mjs';
@@ -67,7 +70,7 @@ import '../components/wordmark.wrapper.mjs';
67
70
  import { splitChildren } from '../../splitChildren.mjs';
68
71
  import { minifyCss } from '../../minifyCss.mjs';
69
72
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getButtonTileCss as getComponentCss$Y } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
73
+ import { getButtonTileCss as getComponentCss$$ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
74
  import { isDisabledOrLoading } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
75
 
73
76
  class DSRButtonTile extends Component {
@@ -85,7 +88,7 @@ class DSRButtonTile extends Component {
85
88
  };
86
89
  const button = (createElement(PButton, { ...buttonProps, icon: this.props.icon, key: "link-or-button", className: "link-or-button" }, this.props.label));
87
90
  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));
88
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Y(isDisabledOrLoading(this.props.disabled, this.props.loading), this.props.aspectRatio, this.props.size, this.props.weight, this.props.background, this.props.align, this.props.compact, this.props.gradient, this.props.disabled)));
91
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$$(isDisabledOrLoading(this.props.disabled, this.props.loading), this.props.aspectRatio, this.props.size, this.props.weight, this.props.background, this.props.align, this.props.compact, this.props.gradient, this.props.disabled)));
89
92
  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] }));
90
93
  }
91
94
  }
@@ -16,6 +16,8 @@ import '../components/fieldset-wrapper.wrapper.mjs';
16
16
  import '../components/flex.wrapper.mjs';
17
17
  import '../components/flex-item.wrapper.mjs';
18
18
  import '../components/flyout.wrapper.mjs';
19
+ import '../components/flyout-navigation.wrapper.mjs';
20
+ import '../components/flyout-navigation-item.wrapper.mjs';
19
21
  import '../components/grid.wrapper.mjs';
20
22
  import '../components/grid-item.wrapper.mjs';
21
23
  import '../components/heading.wrapper.mjs';
@@ -27,6 +29,7 @@ import '../components/link-pure.wrapper.mjs';
27
29
  import '../components/link-social.wrapper.mjs';
28
30
  import '../components/link-tile.wrapper.mjs';
29
31
  import '../components/link-tile-model-signature.wrapper.mjs';
32
+ import '../components/link-tile-product.wrapper.mjs';
30
33
  import '../components/marque.wrapper.mjs';
31
34
  import '../components/modal.wrapper.mjs';
32
35
  import '../components/model-signature.wrapper.mjs';
@@ -67,14 +70,14 @@ import { splitChildren } from '../../splitChildren.mjs';
67
70
  import { Component } from 'react';
68
71
  import { minifyCss } from '../../minifyCss.mjs';
69
72
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getButtonCss as getComponentCss$X } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
73
+ import { getButtonCss as getComponentCss$_ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
74
  import { getButtonAriaAttributes, hasVisibleIcon } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
75
 
73
76
  class DSRButton extends Component {
74
77
  host;
75
78
  render() {
76
79
  splitChildren(this.props.children);
77
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$X(this.props.icon, this.props.iconSource, this.props.variant, this.props.hideLabel, this.props.disabled, this.props.loading, this.props.theme)));
80
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$_(this.props.icon, this.props.iconSource, this.props.variant, this.props.hideLabel, this.props.disabled, this.props.loading, this.props.theme)));
78
81
  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, name: this.props.name, value: this.props.value, children: [this.props.loading && (jsx(PSpinner, { className: "spinner", size: "inherit", theme: 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: this.props.disabled ? (this.props.variant === 'primary' ? 'contrast-high' : 'state-disabled') : 'primary', theme: this.props.theme, "aria-hidden": "true" })), jsx("span", { className: "label", children: jsx("slot", {}) })] })] }), this.props.children] }));
79
82
  }
80
83
  }
@@ -16,6 +16,8 @@ import '../components/fieldset-wrapper.wrapper.mjs';
16
16
  import '../components/flex.wrapper.mjs';
17
17
  import '../components/flex-item.wrapper.mjs';
18
18
  import '../components/flyout.wrapper.mjs';
19
+ import '../components/flyout-navigation.wrapper.mjs';
20
+ import '../components/flyout-navigation-item.wrapper.mjs';
19
21
  import '../components/grid.wrapper.mjs';
20
22
  import '../components/grid-item.wrapper.mjs';
21
23
  import '../components/heading.wrapper.mjs';
@@ -27,6 +29,7 @@ import { PLinkPure } from '../components/link-pure.wrapper.mjs';
27
29
  import '../components/link-social.wrapper.mjs';
28
30
  import '../components/link-tile.wrapper.mjs';
29
31
  import '../components/link-tile-model-signature.wrapper.mjs';
32
+ import '../components/link-tile-product.wrapper.mjs';
30
33
  import '../components/marque.wrapper.mjs';
31
34
  import '../components/modal.wrapper.mjs';
32
35
  import '../components/model-signature.wrapper.mjs';
@@ -67,7 +70,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
70
  import { Component } from 'react';
68
71
  import { minifyCss } from '../../minifyCss.mjs';
69
72
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getCarouselCss as getComponentCss$W } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
73
+ import { getCarouselCss as getComponentCss$Z } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
74
  import { isInfinitePagination } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
75
 
73
76
  class DSRCarousel extends Component {
@@ -94,7 +97,7 @@ class DSRCarousel extends Component {
94
97
  theme: this.props.theme,
95
98
  // 'aria-controls': 'splide-track', // TODO: cross shadow dom? use native button tag instead of p-button-pure?
96
99
  };
97
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$W(this.props.width,
100
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Z(this.props.width,
98
101
  // flip boolean values of disablePagination since it is the inverse of pagination
99
102
  this.props.disablePagination
100
103
  ? typeof this.props.disablePagination === 'object'
@@ -102,7 +105,7 @@ class DSRCarousel extends Component {
102
105
  : !this.props.disablePagination
103
106
  : this.props.pagination, isInfinitePagination(this.props.amountOfPages), (alignHeaderDeprecationMap[this.props.alignHeader] || this.props.alignHeader), this.props.theme)));
104
107
  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", { id: "heading", children: this.props.heading }) : jsx("slot", { name: "heading" }), (this.props.description || namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0) &&
105
- ((this.props.description && jsx("p", { children: this.props.description })) || jsx("slot", { name: "description" })), jsxs("div", { className: "nav", children: [this.props.skipLinkTarget && (jsx(PLinkPure, { href: this.props.skipLinkTarget, theme: this.props.theme, icon: "arrow-last", className: "btn skip-link", alignLabel: "left", hideLabel: true, "aria-describedby": this.props.heading ? 'heading' : null, children: "Skip carousel entries" })), (this.props.slidesPerPage === 'auto' || typeof this.props.slidesPerPage === 'object' || this.props.slidesPerPage < otherChildren.length) && [
108
+ ((this.props.description && jsx("p", { children: this.props.description })) || jsx("slot", { name: "description" })), jsxs("div", { className: "nav", children: [this.props.skipLinkTarget && (jsx(PLinkPure, { href: this.props.skipLinkTarget, theme: this.props.theme, icon: "arrow-last", className: "btn skip-link", alignLabel: "start", hideLabel: true, "aria-describedby": this.props.heading ? 'heading' : null, children: "Skip carousel entries" })), (this.props.slidesPerPage === 'auto' || typeof this.props.slidesPerPage === 'object' || this.props.slidesPerPage < otherChildren.length) && [
106
109
  jsx(PButtonPure, { ...btnProps, icon: "arrow-left" }),
107
110
  jsx(PButtonPure, { ...btnProps, icon: "arrow-right" }),
108
111
  ]] })] }), jsx("div", { id: "splide", className: "splide", "aria-label": this.props.heading || namedSlotChildren.find(({ props: { slot } }) => slot === 'heading')?.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) && (this.props.slidesPerPage === 'auto' || typeof this.props.slidesPerPage === 'object' || this.props.slidesPerPage < otherChildren.length) && (jsx("div", { className: "pagination-container", children: jsx("div", { className: "pagination" }) }))] })] }), this.props.children] }));