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

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 (129) hide show
  1. package/CHANGELOG.md +24 -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/pagination.wrapper.cjs +1 -1
  5. package/cjs/lib/components/text-field-wrapper.wrapper.cjs +3 -3
  6. package/cjs/public-api.cjs +4 -0
  7. package/esm/lib/components/flyout-navigation-item.wrapper.d.ts +11 -0
  8. package/esm/lib/components/flyout-navigation-item.wrapper.mjs +23 -0
  9. package/esm/lib/components/flyout-navigation.wrapper.d.ts +56 -0
  10. package/esm/lib/components/flyout-navigation.wrapper.mjs +25 -0
  11. package/esm/lib/components/index.d.ts +2 -0
  12. package/esm/lib/components/pagination.wrapper.d.ts +4 -2
  13. package/esm/lib/components/pagination.wrapper.mjs +1 -1
  14. package/esm/lib/components/text-field-wrapper.wrapper.d.ts +8 -0
  15. package/esm/lib/components/text-field-wrapper.wrapper.mjs +3 -3
  16. package/esm/lib/types.d.ts +9 -0
  17. package/esm/public-api.mjs +2 -0
  18. package/package.json +2 -2
  19. package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +712 -253
  20. package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +80 -69
  21. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation-item.wrapper.cjs +39 -0
  22. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation.wrapper.cjs +41 -0
  23. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.cjs +1 -1
  24. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.cjs +4 -4
  25. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.cjs +2 -0
  26. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.cjs +2 -0
  27. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.cjs +2 -0
  28. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.cjs +2 -0
  29. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.cjs +2 -0
  30. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.cjs +3 -1
  31. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.cjs +2 -0
  32. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation-item.cjs +94 -0
  33. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation.cjs +92 -0
  34. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.cjs +2 -0
  35. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.cjs +2 -0
  36. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.cjs +2 -0
  37. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.cjs +2 -0
  38. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.cjs +2 -0
  39. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.cjs +2 -0
  40. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.cjs +2 -0
  41. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.cjs +2 -0
  42. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.cjs +2 -0
  43. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +2 -0
  44. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.cjs +16 -11
  45. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.cjs +2 -0
  46. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.cjs +2 -0
  47. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.cjs +2 -0
  48. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.cjs +2 -0
  49. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.cjs +2 -0
  50. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.cjs +6 -1
  51. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.cjs +2 -0
  52. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.cjs +2 -0
  53. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.cjs +2 -0
  54. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.cjs +2 -0
  55. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.cjs +2 -0
  56. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.cjs +2 -0
  57. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.cjs +2 -0
  58. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.cjs +2 -0
  59. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.cjs +2 -0
  60. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.cjs +2 -0
  61. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.cjs +2 -0
  62. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.cjs +4 -2
  63. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/minifyCss.cjs +7 -1
  64. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/public-api.cjs +4 -0
  65. package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +695 -238
  66. package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +80 -69
  67. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation-item.wrapper.mjs +37 -0
  68. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation.wrapper.mjs +39 -0
  69. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.mjs +1 -1
  70. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.mjs +4 -4
  71. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.mjs +4 -2
  72. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.mjs +4 -2
  73. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.mjs +2 -2
  74. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.mjs +4 -2
  75. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.mjs +4 -2
  76. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.mjs +4 -2
  77. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.mjs +5 -3
  78. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.mjs +4 -2
  79. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.mjs +2 -2
  80. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/crest.mjs +2 -2
  81. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.mjs +2 -2
  82. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.mjs +2 -2
  83. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.mjs +2 -2
  84. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.mjs +2 -2
  85. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.mjs +2 -2
  86. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.mjs +2 -2
  87. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation-item.mjs +92 -0
  88. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation.mjs +90 -0
  89. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.mjs +2 -0
  90. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.mjs +2 -0
  91. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.mjs +2 -0
  92. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.mjs +2 -0
  93. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.mjs +2 -0
  94. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.mjs +2 -0
  95. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.mjs +2 -0
  96. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.mjs +2 -0
  97. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.mjs +2 -0
  98. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +2 -0
  99. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.mjs +17 -12
  100. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.mjs +2 -0
  101. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.mjs +2 -0
  102. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.mjs +2 -0
  103. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.mjs +2 -0
  104. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.mjs +2 -0
  105. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.mjs +6 -1
  106. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.mjs +2 -0
  107. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.mjs +2 -0
  108. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.mjs +2 -0
  109. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.mjs +2 -0
  110. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.mjs +2 -0
  111. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.mjs +2 -0
  112. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.mjs +2 -0
  113. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.mjs +2 -0
  114. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.mjs +2 -0
  115. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.mjs +2 -0
  116. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.mjs +2 -0
  117. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.mjs +4 -2
  118. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/minifyCss.mjs +7 -1
  119. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.mjs +2 -0
  120. package/ssr/esm/lib/components/flyout-navigation-item.wrapper.d.ts +11 -0
  121. package/ssr/esm/lib/components/flyout-navigation.wrapper.d.ts +56 -0
  122. package/ssr/esm/lib/components/index.d.ts +2 -0
  123. package/ssr/esm/lib/components/pagination.wrapper.d.ts +4 -2
  124. package/ssr/esm/lib/components/text-field-wrapper.wrapper.d.ts +8 -0
  125. package/ssr/esm/lib/dsr-components/flyout-navigation-item.d.ts +8 -0
  126. package/ssr/esm/lib/dsr-components/flyout-navigation.d.ts +7 -0
  127. package/ssr/esm/lib/dsr-components/pagination.d.ts +0 -2
  128. package/ssr/esm/lib/dsr-components/select-wrapper-dropdown.d.ts +3 -0
  129. package/ssr/esm/lib/types.d.ts +9 -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
  };
@@ -3739,51 +3739,62 @@ const createNextPageLink = (options) => {
3739
3739
  isActive: activePage < pageTotal,
3740
3740
  };
3741
3741
  };
3742
- const createPageFunctionFactory = (options) => {
3742
+ const createPageFunctionFactory = ({ activePage }) => {
3743
3743
  return (pageNumber) => ({
3744
3744
  type: ItemType.PAGE,
3745
3745
  value: pageNumber,
3746
- isActive: pageNumber === options.activePage,
3746
+ isActive: pageNumber === activePage,
3747
+ isBeforeCurrent: pageNumber === activePage - 1,
3748
+ isBeforeBeforeCurrent: pageNumber === activePage - 2,
3749
+ isAfterCurrent: pageNumber === activePage + 1,
3750
+ isAfterAfterCurrent: pageNumber === activePage + 2,
3747
3751
  });
3748
3752
  };
3749
3753
  const createRange = (start, end) => Array.from(Array(end - start + 1), (_, i) => i + start);
3750
- const createPaginationModel = (options) => {
3751
- const { pageTotal, activePage, pageRange, showLastPage } = options;
3754
+ const createPaginationItems = (options) => {
3755
+ const { pageTotal, activePage, showLastPage } = options;
3756
+ const pageRange = 1;
3752
3757
  const boundaryPagesRange = 1;
3753
3758
  const ellipsisSize = 1;
3754
- const paginationModel = [createPreviousPageLink(options)];
3759
+ const paginationItems = [createPreviousPageLink(options)];
3755
3760
  const createPage = createPageFunctionFactory(options);
3756
3761
  // 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) {
3762
+ if (1 + 2 * ellipsisSize + 2 * boundaryPagesRange >= pageTotal) {
3758
3763
  const allPages = createRange(1, pageTotal).map(createPage);
3759
- paginationModel.push(...allPages);
3764
+ paginationItems.push(...allPages);
3760
3765
  }
3761
3766
  else {
3762
3767
  // Add first page
3763
- paginationModel.push(createPage(1));
3768
+ paginationItems.push(createPage(1));
3764
3769
  // 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;
3770
+ const middlePagesStart = Math.min(Math.max(activePage - pageRange, 2 + ellipsisSize), pageTotal - ellipsisSize - 2 - (showLastPage ? 1 : 0));
3771
+ const middlePagesEnd = middlePagesStart + 2;
3767
3772
  const middlePages = createRange(middlePagesStart, middlePagesEnd).map(createPage);
3768
3773
  // Calculate and add ellipsis before group of middle pages
3769
3774
  const firstEllipsisPageNumber = middlePagesStart - 1;
3770
3775
  const showPageInsteadOfFirstEllipsis = firstEllipsisPageNumber === 2;
3771
3776
  const firstEllipsisOrPage = showPageInsteadOfFirstEllipsis ? createPage(firstEllipsisPageNumber) : ellipsisItem;
3772
- paginationModel.push(firstEllipsisOrPage);
3777
+ if (showPageInsteadOfFirstEllipsis && pageTotal > 5) {
3778
+ paginationItems.push(ellipsisItem);
3779
+ }
3780
+ paginationItems.push(firstEllipsisOrPage);
3773
3781
  // Add group of middle pages
3774
- paginationModel.push(...middlePages);
3782
+ paginationItems.push(...middlePages);
3775
3783
  // Calculate and add ellipsis after group of middle pages
3776
3784
  const lastEllipsisPageNumber = middlePagesEnd + 1;
3777
3785
  const showPageInsteadOfLastEllipsis = lastEllipsisPageNumber === pageTotal - (showLastPage ? 1 : 0);
3778
3786
  const lastEllipsisOrPage = showPageInsteadOfLastEllipsis ? createPage(lastEllipsisPageNumber) : ellipsisItem;
3779
- paginationModel.push(lastEllipsisOrPage);
3787
+ paginationItems.push(lastEllipsisOrPage);
3788
+ if (showPageInsteadOfLastEllipsis && pageTotal > 5) {
3789
+ paginationItems.push(ellipsisItem);
3790
+ }
3780
3791
  // Add last page
3781
3792
  if (showLastPage) {
3782
- paginationModel.push(createPage(pageTotal));
3793
+ paginationItems.push(createPage(pageTotal));
3783
3794
  }
3784
3795
  }
3785
- paginationModel.push(createNextPageLink(options));
3786
- return paginationModel;
3796
+ paginationItems.push(createNextPageLink(options));
3797
+ return paginationItems;
3787
3798
  };
3788
3799
  const getCurrentActivePage = (activePage, totalPages) => {
3789
3800
  // Obviously we can't be on a negative or 0 page.
@@ -3900,4 +3911,4 @@ const getTextTagType = (host, tag) => {
3900
3911
  }
3901
3912
  };
3902
3913
 
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 };
3914
+ export { DISPLAY_TAGS, HEADING_TAGS, HEADLINE_TAGS, ItemType, TEXT_TAGS, _hasShowPickerSupport, 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, 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 };
@@ -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';
@@ -67,7 +69,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
69
  import { Component } from 'react';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getAccordionCss as getComponentCss$10 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getAccordionCss as getComponentCss$12 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
 
72
74
  class DSRAccordion extends Component {
73
75
  host;
@@ -76,7 +78,7 @@ class DSRAccordion extends Component {
76
78
  const buttonId = 'accordion-control';
77
79
  const contentId = 'accordion-panel';
78
80
  const Heading = this.props.tag;
79
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$10(this.props.size, this.props.compact, this.props.open, this.props.theme)));
81
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$12(this.props.size, this.props.compact, this.props.open, this.props.theme)));
80
82
  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
83
  }
82
84
  }
@@ -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';
@@ -67,7 +69,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
69
  import { Component } from 'react';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getBannerCss as getComponentCss$$ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getBannerCss as getComponentCss$11 } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
 
72
74
  class DSRBanner extends Component {
73
75
  host;
@@ -79,7 +81,7 @@ class DSRBanner extends Component {
79
81
  render() {
80
82
  const { children, namedSlotChildren, otherChildren } = splitChildren(this.props.children);
81
83
  const hasTitleSlot = namedSlotChildren.filter(({ props: { slot } }) => slot === 'title').length > 0;
82
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$$(this.props.open)));
84
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$11(this.props.open)));
83
85
  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
86
  }
85
87
  }
@@ -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$10 } 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$10(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';
@@ -67,7 +69,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
69
  import { Component } from 'react';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getButtonPureCss as getComponentCss$Z } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getButtonPureCss as getComponentCss$$ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
  import { isDisabledOrLoading, hasVisibleIcon, getButtonPureAriaAttributes } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
74
 
73
75
  class DSRButtonPure extends Component {
@@ -84,7 +86,7 @@ class DSRButtonPure extends Component {
84
86
  size: 'inherit',
85
87
  theme: this.props.theme,
86
88
  };
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)));
89
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$$(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
90
  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
91
  }
90
92
  }
@@ -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';
@@ -67,7 +69,7 @@ import '../components/wordmark.wrapper.mjs';
67
69
  import { splitChildren } from '../../splitChildren.mjs';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getButtonTileCss as getComponentCss$Y } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getButtonTileCss as getComponentCss$_ } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
  import { isDisabledOrLoading } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
74
 
73
75
  class DSRButtonTile extends Component {
@@ -85,7 +87,7 @@ class DSRButtonTile extends Component {
85
87
  };
86
88
  const button = (createElement(PButton, { ...buttonProps, icon: this.props.icon, key: "link-or-button", className: "link-or-button" }, this.props.label));
87
89
  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)));
90
+ 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
91
  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
92
  }
91
93
  }
@@ -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';
@@ -67,14 +69,14 @@ import { splitChildren } from '../../splitChildren.mjs';
67
69
  import { Component } from 'react';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getButtonCss as getComponentCss$X } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getButtonCss as getComponentCss$Z } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
  import { getButtonAriaAttributes, hasVisibleIcon } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
74
 
73
75
  class DSRButton extends Component {
74
76
  host;
75
77
  render() {
76
78
  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)));
79
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Z(this.props.icon, this.props.iconSource, this.props.variant, this.props.hideLabel, this.props.disabled, this.props.loading, this.props.theme)));
78
80
  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
81
  }
80
82
  }
@@ -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';
@@ -67,7 +69,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
69
  import { Component } from 'react';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getCarouselCss as getComponentCss$W } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getCarouselCss as getComponentCss$Y } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
  import { isInfinitePagination } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
72
74
 
73
75
  class DSRCarousel extends Component {
@@ -94,7 +96,7 @@ class DSRCarousel extends Component {
94
96
  theme: this.props.theme,
95
97
  // 'aria-controls': 'splide-track', // TODO: cross shadow dom? use native button tag instead of p-button-pure?
96
98
  };
97
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$W(this.props.width,
99
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$Y(this.props.width,
98
100
  // flip boolean values of disablePagination since it is the inverse of pagination
99
101
  this.props.disablePagination
100
102
  ? typeof this.props.disablePagination === 'object'
@@ -102,7 +104,7 @@ class DSRCarousel extends Component {
102
104
  : !this.props.disablePagination
103
105
  : this.props.pagination, isInfinitePagination(this.props.amountOfPages), (alignHeaderDeprecationMap[this.props.alignHeader] || this.props.alignHeader), this.props.theme)));
104
106
  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) && [
107
+ ((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
108
  jsx(PButtonPure, { ...btnProps, icon: "arrow-left" }),
107
109
  jsx(PButtonPure, { ...btnProps, icon: "arrow-right" }),
108
110
  ]] })] }), 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] }));
@@ -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';
@@ -67,7 +69,7 @@ import { splitChildren } from '../../splitChildren.mjs';
67
69
  import { Component } from 'react';
68
70
  import { minifyCss } from '../../minifyCss.mjs';
69
71
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
70
- import { getCheckboxWrapperCss as getComponentCss$V } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
72
+ import { getCheckboxWrapperCss as getComponentCss$X } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
71
73
  import { StateMessage } from './state-message.mjs';
72
74
  import { Label } from './label.mjs';
73
75
 
@@ -77,7 +79,7 @@ class DSRCheckboxWrapper extends Component {
77
79
  render() {
78
80
  const { children, namedSlotChildren, otherChildren } = splitChildren(this.props.children);
79
81
  const { disabled } = typeof otherChildren[0] === 'object' && 'props' in otherChildren[0] && otherChildren[0]?.props || {};
80
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$V(this.props.hideLabel, this.props.state, disabled, this.props.loading, this.props.theme)));
82
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$X(this.props.hideLabel, this.props.state, disabled, this.props.loading, this.props.theme)));
81
83
  return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsxs("div", { className: "root", children: [jsx(Label, { hasLabel: this.props.label || namedSlotChildren.filter(({ props: { slot } }) => slot === 'label').length > 0, hasDescription: this.props.description || namedSlotChildren.filter(({ props: { slot } }) => slot === 'description').length > 0, host: null, label: this.props.label, isLoading: this.props.loading, isDisabled: disabled, formElement: typeof otherChildren[0] === 'object' && 'props' in otherChildren[0] && otherChildren[0]?.props }), jsxs("div", { className: "wrapper", children: [jsx("slot", {}), this.props.loading && (jsx(PSpinner, { className: "spinner", size: "inherit", theme: this.props.theme, aria: { 'aria-label': `Loading state of ${this.props.label}` } }))] }), jsx(StateMessage, { hasMessage: (this.props.message || namedSlotChildren.filter(({ props: { slot } }) => slot === 'message').length > 0) && ['success', 'error'].includes(this.props.state), state: this.props.state, message: this.props.message, theme: this.props.theme, host: null })] })] }), this.props.children] }));
82
84
  }
83
85
  }
@@ -3,14 +3,14 @@ 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 { getContentWrapperCss as getComponentCss$U } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
6
+ import { getContentWrapperCss as getComponentCss$W } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
7
7
 
8
8
  /** @deprecated since v3.0.0, will be removed with next major release. Use native CSS Grid instead. */
9
9
  class DSRContentWrapper extends Component {
10
10
  host;
11
11
  render() {
12
12
  splitChildren(this.props.children);
13
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$U(this.props.width)));
13
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$W(this.props.width)));
14
14
  return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx("div", { className: "root", children: jsx("slot", {}) })] }), this.props.children] }));
15
15
  }
16
16
  }
@@ -2,7 +2,7 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
2
  import { Component } from 'react';
3
3
  import { minifyCss } from '../../minifyCss.mjs';
4
4
  import { stripFocusAndHoverStyles } from '../../stripFocusAndHoverStyles.mjs';
5
- import { getCrestCss as getComponentCss$T } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
5
+ import { getCrestCss as getComponentCss$V } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
6
6
  import { buildCrestSrcSet, buildCrestImgSrc, parseAndGetAriaAttributes, crestSize } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
7
7
 
8
8
  const { width, height } = crestSize;
@@ -10,7 +10,7 @@ class DSRCrest extends Component {
10
10
  host;
11
11
  render() {
12
12
  const picture = (jsxs("picture", { children: [jsx("source", { srcSet: buildCrestSrcSet('webp'), type: "image/webp" }, "webp"), jsx("source", { srcSet: buildCrestSrcSet('png'), type: "image/png" }, "png"), jsx("img", { src: buildCrestImgSrc(), width: width, height: height, alt: "Porsche" })] }));
13
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$T()));
13
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$V()));
14
14
  return (jsx(Fragment, { children: jsxs("template", { shadowroot: "open", shadowrootmode: "open", shadowrootdelegatesfocus: "true", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(Fragment, { children: this.props.href === undefined ? (picture) : (jsx("a", { href: this.props.href, target: this.props.target, ...parseAndGetAriaAttributes(this.props.aria), children: picture })) })] }) }));
15
15
  }
16
16
  }
@@ -3,7 +3,7 @@ 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 { getDisplayCss as getComponentCss$S } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
6
+ import { getDisplayCss as getComponentCss$U } from '../../../../../../components/dist/styles/esm/styles-entry.mjs';
7
7
  import { getDisplayTagType } from '../../../../../../components/dist/utils/esm/utils-entry.mjs';
8
8
 
9
9
  class DSRDisplay extends Component {
@@ -15,7 +15,7 @@ class DSRDisplay extends Component {
15
15
  right: 'end',
16
16
  };
17
17
  const TagType = getDisplayTagType(null, this.props.size, this.props.tag);
18
- const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$S(this.props.size, (alignDeprecationMap[this.props.align] || this.props.align), this.props.color, this.props.ellipsis, this.props.theme)));
18
+ const style = minifyCss(stripFocusAndHoverStyles(getComponentCss$U(this.props.size, (alignDeprecationMap[this.props.align] || this.props.align), this.props.color, this.props.ellipsis, this.props.theme)));
19
19
  return (jsxs(Fragment, { children: [jsxs("template", { shadowroot: "open", shadowrootmode: "open", children: [jsx("style", { dangerouslySetInnerHTML: { __html: style } }), jsx(TagType, { className: "root", children: jsx("slot", {}) })] }), this.props.children] }));
20
20
  }
21
21
  }