@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.
- package/CHANGELOG.md +24 -0
- package/cjs/lib/components/flyout-navigation-item.wrapper.cjs +25 -0
- package/cjs/lib/components/flyout-navigation.wrapper.cjs +27 -0
- package/cjs/lib/components/pagination.wrapper.cjs +1 -1
- package/cjs/lib/components/text-field-wrapper.wrapper.cjs +3 -3
- package/cjs/public-api.cjs +4 -0
- package/esm/lib/components/flyout-navigation-item.wrapper.d.ts +11 -0
- package/esm/lib/components/flyout-navigation-item.wrapper.mjs +23 -0
- package/esm/lib/components/flyout-navigation.wrapper.d.ts +56 -0
- package/esm/lib/components/flyout-navigation.wrapper.mjs +25 -0
- package/esm/lib/components/index.d.ts +2 -0
- package/esm/lib/components/pagination.wrapper.d.ts +4 -2
- package/esm/lib/components/pagination.wrapper.mjs +1 -1
- package/esm/lib/components/text-field-wrapper.wrapper.d.ts +8 -0
- package/esm/lib/components/text-field-wrapper.wrapper.mjs +3 -3
- package/esm/lib/types.d.ts +9 -0
- package/esm/public-api.mjs +2 -0
- package/package.json +2 -2
- package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +712 -253
- package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +80 -69
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation-item.wrapper.cjs +39 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation.wrapper.cjs +41 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.cjs +1 -1
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.cjs +4 -4
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.cjs +3 -1
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation-item.cjs +94 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation.cjs +92 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.cjs +16 -11
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.cjs +6 -1
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.cjs +2 -0
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.cjs +4 -2
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/minifyCss.cjs +7 -1
- package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/public-api.cjs +4 -0
- package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +695 -238
- package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +80 -69
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation-item.wrapper.mjs +37 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout-navigation.wrapper.mjs +39 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.mjs +1 -1
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.mjs +4 -4
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.mjs +5 -3
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/crest.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.mjs +2 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation-item.mjs +92 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-navigation.mjs +90 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.mjs +17 -12
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.mjs +6 -1
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.mjs +2 -0
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.mjs +4 -2
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/minifyCss.mjs +7 -1
- package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.mjs +2 -0
- package/ssr/esm/lib/components/flyout-navigation-item.wrapper.d.ts +11 -0
- package/ssr/esm/lib/components/flyout-navigation.wrapper.d.ts +56 -0
- package/ssr/esm/lib/components/index.d.ts +2 -0
- package/ssr/esm/lib/components/pagination.wrapper.d.ts +4 -2
- package/ssr/esm/lib/components/text-field-wrapper.wrapper.d.ts +8 -0
- package/ssr/esm/lib/dsr-components/flyout-navigation-item.d.ts +8 -0
- package/ssr/esm/lib/dsr-components/flyout-navigation.d.ts +7 -0
- package/ssr/esm/lib/dsr-components/pagination.d.ts +0 -2
- package/ssr/esm/lib/dsr-components/select-wrapper-dropdown.d.ts +3 -0
- package/ssr/esm/lib/types.d.ts +9 -0
package/CHANGELOG.md
CHANGED
|
@@ -14,6 +14,28 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
14
14
|
|
|
15
15
|
### [Unreleased]
|
|
16
16
|
|
|
17
|
+
### [3.10.0-rc.0] - 2023-12-07
|
|
18
|
+
|
|
19
|
+
#### Added
|
|
20
|
+
|
|
21
|
+
- **[EXPERIMENTAL]** `Flyout Navigation`
|
|
22
|
+
([#2906](https://github.com/porsche-design-system/porsche-design-system/pull/2906))
|
|
23
|
+
- Prop `submit-button` to show/hide a submit button for `Text Field Wrapper` `type="search"` if wrapped inside a form
|
|
24
|
+
([#2908](https://github.com/porsche-design-system/porsche-design-system/pull/2908))
|
|
25
|
+
|
|
26
|
+
#### Changed
|
|
27
|
+
|
|
28
|
+
- `Accordion`: removed `border-bottom` if used standalone
|
|
29
|
+
([#2911](https://github.com/porsche-design-system/porsche-design-system/pull/2911))
|
|
30
|
+
- `display` css property can be overridden on all components, e.g. to make use of `display: none;` within media
|
|
31
|
+
queries
|
|
32
|
+
([#2913](https://github.com/porsche-design-system/porsche-design-system/pull/2913))
|
|
33
|
+
- `Pagination`: Prop `maxNumberOfPageLinks` is deprecated and has no effect anymore, instead there is responsive
|
|
34
|
+
behavior out of the box with full SSR support
|
|
35
|
+
([#2898](https://github.com/porsche-design-system/porsche-design-system/pull/2898))
|
|
36
|
+
|
|
37
|
+
### [3.9.0] - 2023-11-24
|
|
38
|
+
|
|
17
39
|
### [3.9.0-rc.0] - 2023-11-23
|
|
18
40
|
|
|
19
41
|
#### Added
|
|
@@ -45,6 +67,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
45
67
|
|
|
46
68
|
#### Fixed
|
|
47
69
|
|
|
70
|
+
- `Select Wrapper`: Select dropdown is now visible if it overflows the `Table` component
|
|
71
|
+
([#2885](https://github.com/porsche-design-system/porsche-design-system/pull/2885))
|
|
48
72
|
- `Select Wrapper` keyboard and scroll behavior
|
|
49
73
|
([#2864](https://github.com/porsche-design-system/porsche-design-system/pull/2864))
|
|
50
74
|
- Safari 15 default margin of button elements in several components
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var hooks = require('../../hooks.cjs');
|
|
7
|
+
var utils = require('../../utils.cjs');
|
|
8
|
+
|
|
9
|
+
const PFlyoutNavigationItem = react.forwardRef(({ identifier, label, className, ...rest }, ref) => {
|
|
10
|
+
const elementRef = react.useRef();
|
|
11
|
+
const WebComponentTag = hooks.usePrefix('p-flyout-navigation-item');
|
|
12
|
+
const propsToSync = [identifier, label];
|
|
13
|
+
hooks.useBrowserLayoutEffect(() => {
|
|
14
|
+
const { current } = elementRef;
|
|
15
|
+
['identifier', 'label'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
16
|
+
}, propsToSync);
|
|
17
|
+
const props = {
|
|
18
|
+
...rest,
|
|
19
|
+
class: hooks.useMergedClass(elementRef, className),
|
|
20
|
+
ref: utils.syncRef(elementRef, ref)
|
|
21
|
+
};
|
|
22
|
+
return jsxRuntime.jsx(WebComponentTag, { ...props });
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
exports.PFlyoutNavigationItem = PFlyoutNavigationItem;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var hooks = require('../../hooks.cjs');
|
|
7
|
+
var utils = require('../../utils.cjs');
|
|
8
|
+
|
|
9
|
+
const PFlyoutNavigation = react.forwardRef(({ activeIdentifier, aria, onDismiss, onUpdate, open = false, theme, className, ...rest }, ref) => {
|
|
10
|
+
const elementRef = react.useRef();
|
|
11
|
+
hooks.useEventCallback(elementRef, 'dismiss', onDismiss);
|
|
12
|
+
hooks.useEventCallback(elementRef, 'update', onUpdate);
|
|
13
|
+
const WebComponentTag = hooks.usePrefix('p-flyout-navigation');
|
|
14
|
+
const propsToSync = [activeIdentifier, aria, open, theme || hooks.useTheme()];
|
|
15
|
+
hooks.useBrowserLayoutEffect(() => {
|
|
16
|
+
const { current } = elementRef;
|
|
17
|
+
['activeIdentifier', 'aria', 'open', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
18
|
+
}, propsToSync);
|
|
19
|
+
const props = {
|
|
20
|
+
...rest,
|
|
21
|
+
class: hooks.useMergedClass(elementRef, className),
|
|
22
|
+
ref: utils.syncRef(elementRef, ref)
|
|
23
|
+
};
|
|
24
|
+
return jsxRuntime.jsx(WebComponentTag, { ...props });
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
exports.PFlyoutNavigation = PFlyoutNavigation;
|
|
@@ -6,7 +6,7 @@ var react = require('react');
|
|
|
6
6
|
var hooks = require('../../hooks.cjs');
|
|
7
7
|
var utils = require('../../utils.cjs');
|
|
8
8
|
|
|
9
|
-
const PPagination = react.forwardRef(({ activePage = 1, allyLabel, allyLabelNext, allyLabelPage, allyLabelPrev, intl = { root: 'Pagination', prev: 'Previous page', next: 'Next page', page: 'Page', }, itemsPerPage = 1, maxNumberOfPageLinks
|
|
9
|
+
const PPagination = react.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) => {
|
|
10
10
|
const elementRef = react.useRef();
|
|
11
11
|
hooks.useEventCallback(elementRef, 'pageChange', onPageChange);
|
|
12
12
|
hooks.useEventCallback(elementRef, 'update', onUpdate);
|
|
@@ -6,14 +6,14 @@ var react = require('react');
|
|
|
6
6
|
var hooks = require('../../hooks.cjs');
|
|
7
7
|
var utils = require('../../utils.cjs');
|
|
8
8
|
|
|
9
|
-
const PTextFieldWrapper = react.forwardRef(({ actionIcon, actionLoading = false, description = '', hideLabel = false, label = '', message = '', onAction, showCharacterCount, showCounter = true, showPasswordToggle = true, state = 'none', theme, unit = '', unitPosition = 'prefix', className, ...rest }, ref) => {
|
|
9
|
+
const PTextFieldWrapper = react.forwardRef(({ actionIcon, actionLoading = false, description = '', hideLabel = false, label = '', message = '', onAction, showCharacterCount, showCounter = true, showPasswordToggle = true, state = 'none', submitButton = true, theme, unit = '', unitPosition = 'prefix', className, ...rest }, ref) => {
|
|
10
10
|
const elementRef = react.useRef();
|
|
11
11
|
hooks.useEventCallback(elementRef, 'action', onAction);
|
|
12
12
|
const WebComponentTag = hooks.usePrefix('p-text-field-wrapper');
|
|
13
|
-
const propsToSync = [actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, theme || hooks.useTheme(), unit, unitPosition];
|
|
13
|
+
const propsToSync = [actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, submitButton, theme || hooks.useTheme(), unit, unitPosition];
|
|
14
14
|
hooks.useBrowserLayoutEffect(() => {
|
|
15
15
|
const { current } = elementRef;
|
|
16
|
-
['actionIcon', 'actionLoading', 'description', 'hideLabel', 'label', 'message', 'showCharacterCount', 'showCounter', 'showPasswordToggle', 'state', 'theme', 'unit', 'unitPosition'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
16
|
+
['actionIcon', 'actionLoading', 'description', 'hideLabel', 'label', 'message', 'showCharacterCount', 'showCounter', 'showPasswordToggle', 'state', 'submitButton', 'theme', 'unit', 'unitPosition'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
17
17
|
}, propsToSync);
|
|
18
18
|
const props = {
|
|
19
19
|
...rest,
|
package/cjs/public-api.cjs
CHANGED
|
@@ -18,6 +18,8 @@ var fieldsetWrapper_wrapper = require('./lib/components/fieldset-wrapper.wrapper
|
|
|
18
18
|
var flex_wrapper = require('./lib/components/flex.wrapper.cjs');
|
|
19
19
|
var flexItem_wrapper = require('./lib/components/flex-item.wrapper.cjs');
|
|
20
20
|
var flyout_wrapper = require('./lib/components/flyout.wrapper.cjs');
|
|
21
|
+
var flyoutNavigation_wrapper = require('./lib/components/flyout-navigation.wrapper.cjs');
|
|
22
|
+
var flyoutNavigationItem_wrapper = require('./lib/components/flyout-navigation-item.wrapper.cjs');
|
|
21
23
|
var grid_wrapper = require('./lib/components/grid.wrapper.cjs');
|
|
22
24
|
var gridItem_wrapper = require('./lib/components/grid-item.wrapper.cjs');
|
|
23
25
|
var heading_wrapper = require('./lib/components/heading.wrapper.cjs');
|
|
@@ -92,6 +94,8 @@ exports.PFieldsetWrapper = fieldsetWrapper_wrapper.PFieldsetWrapper;
|
|
|
92
94
|
exports.PFlex = flex_wrapper.PFlex;
|
|
93
95
|
exports.PFlexItem = flexItem_wrapper.PFlexItem;
|
|
94
96
|
exports.PFlyout = flyout_wrapper.PFlyout;
|
|
97
|
+
exports.PFlyoutNavigation = flyoutNavigation_wrapper.PFlyoutNavigation;
|
|
98
|
+
exports.PFlyoutNavigationItem = flyoutNavigationItem_wrapper.PFlyoutNavigationItem;
|
|
95
99
|
exports.PGrid = grid_wrapper.PGrid;
|
|
96
100
|
exports.PGridItem = gridItem_wrapper.PGridItem;
|
|
97
101
|
exports.PHeading = heading_wrapper.PHeading;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
export type PFlyoutNavigationItemProps = Omit<HTMLAttributes<{}>, 'color'> & {
|
|
3
|
+
identifier: string;
|
|
4
|
+
label?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const PFlyoutNavigationItem: import("react").ForwardRefExoticComponent<Omit<HTMLAttributes<{}>, "color"> & {
|
|
7
|
+
identifier: string;
|
|
8
|
+
label?: string | undefined;
|
|
9
|
+
} & {
|
|
10
|
+
children?: import("react").ReactNode;
|
|
11
|
+
} & import("react").RefAttributes<HTMLElement>>;
|
|
@@ -0,0 +1,23 @@
|
|
|
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
|
+
|
|
7
|
+
const PFlyoutNavigationItem = forwardRef(({ identifier, label, className, ...rest }, ref) => {
|
|
8
|
+
const elementRef = useRef();
|
|
9
|
+
const WebComponentTag = usePrefix('p-flyout-navigation-item');
|
|
10
|
+
const propsToSync = [identifier, label];
|
|
11
|
+
useBrowserLayoutEffect(() => {
|
|
12
|
+
const { current } = elementRef;
|
|
13
|
+
['identifier', 'label'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
14
|
+
}, propsToSync);
|
|
15
|
+
const props = {
|
|
16
|
+
...rest,
|
|
17
|
+
class: useMergedClass(elementRef, className),
|
|
18
|
+
ref: syncRef(elementRef, ref)
|
|
19
|
+
};
|
|
20
|
+
return jsx(WebComponentTag, { ...props });
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
export { PFlyoutNavigationItem };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
import type { SelectedAriaAttributes, FlyoutNavigationAriaAttribute, FlyoutNavigationUpdateEvent, Theme } from '../types';
|
|
3
|
+
export type PFlyoutNavigationProps = Omit<HTMLAttributes<{}>, 'color'> & {
|
|
4
|
+
/**
|
|
5
|
+
* Defines which flyout-navigation-item to be visualized as opened.
|
|
6
|
+
*/
|
|
7
|
+
activeIdentifier?: string | undefined;
|
|
8
|
+
/**
|
|
9
|
+
* Add ARIA attributes.
|
|
10
|
+
*/
|
|
11
|
+
aria?: SelectedAriaAttributes<FlyoutNavigationAriaAttribute>;
|
|
12
|
+
/**
|
|
13
|
+
* Emitted when the component requests to be dismissed.
|
|
14
|
+
*/
|
|
15
|
+
onDismiss?: (event: CustomEvent<void>) => void;
|
|
16
|
+
/**
|
|
17
|
+
* Emitted when activeIdentifier is changed.
|
|
18
|
+
*/
|
|
19
|
+
onUpdate?: (event: CustomEvent<FlyoutNavigationUpdateEvent>) => void;
|
|
20
|
+
/**
|
|
21
|
+
* If true, the flyout-navigation is visualized as opened.
|
|
22
|
+
*/
|
|
23
|
+
open?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Adapts the flyout-navigation color depending on the theme.
|
|
26
|
+
*/
|
|
27
|
+
theme?: Theme;
|
|
28
|
+
};
|
|
29
|
+
export declare const PFlyoutNavigation: import("react").ForwardRefExoticComponent<Omit<HTMLAttributes<{}>, "color"> & {
|
|
30
|
+
/**
|
|
31
|
+
* Defines which flyout-navigation-item to be visualized as opened.
|
|
32
|
+
*/
|
|
33
|
+
activeIdentifier?: string | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Add ARIA attributes.
|
|
36
|
+
*/
|
|
37
|
+
aria?: SelectedAriaAttributes<"aria-label"> | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Emitted when the component requests to be dismissed.
|
|
40
|
+
*/
|
|
41
|
+
onDismiss?: ((event: CustomEvent<void>) => void) | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Emitted when activeIdentifier is changed.
|
|
44
|
+
*/
|
|
45
|
+
onUpdate?: ((event: CustomEvent<FlyoutNavigationUpdateEvent>) => void) | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* If true, the flyout-navigation is visualized as opened.
|
|
48
|
+
*/
|
|
49
|
+
open?: boolean | undefined;
|
|
50
|
+
/**
|
|
51
|
+
* Adapts the flyout-navigation color depending on the theme.
|
|
52
|
+
*/
|
|
53
|
+
theme?: "light" | "dark" | "auto" | undefined;
|
|
54
|
+
} & {
|
|
55
|
+
children?: import("react").ReactNode;
|
|
56
|
+
} & import("react").RefAttributes<HTMLElement>>;
|
|
@@ -0,0 +1,25 @@
|
|
|
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
|
+
|
|
7
|
+
const PFlyoutNavigation = forwardRef(({ activeIdentifier, aria, onDismiss, onUpdate, open = false, theme, className, ...rest }, ref) => {
|
|
8
|
+
const elementRef = useRef();
|
|
9
|
+
useEventCallback(elementRef, 'dismiss', onDismiss);
|
|
10
|
+
useEventCallback(elementRef, 'update', onUpdate);
|
|
11
|
+
const WebComponentTag = usePrefix('p-flyout-navigation');
|
|
12
|
+
const propsToSync = [activeIdentifier, aria, open, theme || useTheme()];
|
|
13
|
+
useBrowserLayoutEffect(() => {
|
|
14
|
+
const { current } = elementRef;
|
|
15
|
+
['activeIdentifier', 'aria', 'open', 'theme'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
16
|
+
}, propsToSync);
|
|
17
|
+
const props = {
|
|
18
|
+
...rest,
|
|
19
|
+
class: useMergedClass(elementRef, className),
|
|
20
|
+
ref: syncRef(elementRef, ref)
|
|
21
|
+
};
|
|
22
|
+
return jsx(WebComponentTag, { ...props });
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
export { PFlyoutNavigation };
|
|
@@ -15,6 +15,8 @@ export * from './fieldset-wrapper.wrapper';
|
|
|
15
15
|
export * from './flex.wrapper';
|
|
16
16
|
export * from './flex-item.wrapper';
|
|
17
17
|
export * from './flyout.wrapper';
|
|
18
|
+
export * from './flyout-navigation.wrapper';
|
|
19
|
+
export * from './flyout-navigation-item.wrapper';
|
|
18
20
|
export * from './grid.wrapper';
|
|
19
21
|
export * from './grid-item.wrapper';
|
|
20
22
|
export * from './heading.wrapper';
|
|
@@ -30,7 +30,8 @@ export type PPaginationProps = Omit<HTMLAttributes<{}>, 'color'> & {
|
|
|
30
30
|
*/
|
|
31
31
|
itemsPerPage?: number;
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
33
|
+
* Has no effect anymore
|
|
34
|
+
* @deprecated since v3.10.0, will be removed with next major release
|
|
34
35
|
*/
|
|
35
36
|
maxNumberOfPageLinks?: BreakpointCustomizable<PaginationMaxNumberOfPageLinks>;
|
|
36
37
|
/**
|
|
@@ -84,7 +85,8 @@ export declare const PPagination: import("react").ForwardRefExoticComponent<Omit
|
|
|
84
85
|
*/
|
|
85
86
|
itemsPerPage?: number | undefined;
|
|
86
87
|
/**
|
|
87
|
-
*
|
|
88
|
+
* Has no effect anymore
|
|
89
|
+
* @deprecated since v3.10.0, will be removed with next major release
|
|
88
90
|
*/
|
|
89
91
|
maxNumberOfPageLinks?: BreakpointCustomizable<7 | 5> | undefined;
|
|
90
92
|
/**
|
|
@@ -4,7 +4,7 @@ import { forwardRef, useRef } from 'react';
|
|
|
4
4
|
import { useEventCallback, usePrefix, useTheme, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
|
|
5
5
|
import { syncRef } from '../../utils.mjs';
|
|
6
6
|
|
|
7
|
-
const PPagination = forwardRef(({ activePage = 1, allyLabel, allyLabelNext, allyLabelPage, allyLabelPrev, intl = { root: 'Pagination', prev: 'Previous page', next: 'Next page', page: 'Page', }, itemsPerPage = 1, maxNumberOfPageLinks
|
|
7
|
+
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) => {
|
|
8
8
|
const elementRef = useRef();
|
|
9
9
|
useEventCallback(elementRef, 'pageChange', onPageChange);
|
|
10
10
|
useEventCallback(elementRef, 'update', onUpdate);
|
|
@@ -45,6 +45,10 @@ export type PTextFieldWrapperProps = Omit<HTMLAttributes<{}>, 'color'> & {
|
|
|
45
45
|
* The validation state.
|
|
46
46
|
*/
|
|
47
47
|
state?: TextFieldWrapperState;
|
|
48
|
+
/**
|
|
49
|
+
* Show search button if wrapped inside a form.
|
|
50
|
+
*/
|
|
51
|
+
submitButton?: boolean;
|
|
48
52
|
/**
|
|
49
53
|
* Adapts the color depending on the theme.
|
|
50
54
|
*/
|
|
@@ -103,6 +107,10 @@ export declare const PTextFieldWrapper: import("react").ForwardRefExoticComponen
|
|
|
103
107
|
* The validation state.
|
|
104
108
|
*/
|
|
105
109
|
state?: "none" | "success" | "error" | undefined;
|
|
110
|
+
/**
|
|
111
|
+
* Show search button if wrapped inside a form.
|
|
112
|
+
*/
|
|
113
|
+
submitButton?: boolean | undefined;
|
|
106
114
|
/**
|
|
107
115
|
* Adapts the color depending on the theme.
|
|
108
116
|
*/
|
|
@@ -4,14 +4,14 @@ import { forwardRef, useRef } from 'react';
|
|
|
4
4
|
import { useEventCallback, usePrefix, useTheme, useBrowserLayoutEffect, useMergedClass } from '../../hooks.mjs';
|
|
5
5
|
import { syncRef } from '../../utils.mjs';
|
|
6
6
|
|
|
7
|
-
const PTextFieldWrapper = forwardRef(({ actionIcon, actionLoading = false, description = '', hideLabel = false, label = '', message = '', onAction, showCharacterCount, showCounter = true, showPasswordToggle = true, state = 'none', theme, unit = '', unitPosition = 'prefix', className, ...rest }, ref) => {
|
|
7
|
+
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, ...rest }, ref) => {
|
|
8
8
|
const elementRef = useRef();
|
|
9
9
|
useEventCallback(elementRef, 'action', onAction);
|
|
10
10
|
const WebComponentTag = usePrefix('p-text-field-wrapper');
|
|
11
|
-
const propsToSync = [actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, theme || useTheme(), unit, unitPosition];
|
|
11
|
+
const propsToSync = [actionIcon, actionLoading, description, hideLabel, label, message, showCharacterCount, showCounter, showPasswordToggle, state, submitButton, theme || useTheme(), unit, unitPosition];
|
|
12
12
|
useBrowserLayoutEffect(() => {
|
|
13
13
|
const { current } = elementRef;
|
|
14
|
-
['actionIcon', 'actionLoading', 'description', 'hideLabel', 'label', 'message', 'showCharacterCount', 'showCounter', 'showPasswordToggle', 'state', 'theme', 'unit', 'unitPosition'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
14
|
+
['actionIcon', 'actionLoading', 'description', 'hideLabel', 'label', 'message', 'showCharacterCount', 'showCounter', 'showPasswordToggle', 'state', 'submitButton', 'theme', 'unit', 'unitPosition'].forEach((propName, i) => (current[propName] = propsToSync[i]));
|
|
15
15
|
}, propsToSync);
|
|
16
16
|
const props = {
|
|
17
17
|
...rest,
|
package/esm/lib/types.d.ts
CHANGED
|
@@ -820,6 +820,14 @@ declare const FLYOUT_ARIA_ATTRIBUTES: readonly [
|
|
|
820
820
|
"aria-label"
|
|
821
821
|
];
|
|
822
822
|
export type FlyoutAriaAttribute = (typeof FLYOUT_ARIA_ATTRIBUTES)[number];
|
|
823
|
+
declare const FLYOUT_NAVIGATION_ARIA_ATTRIBUTES: readonly [
|
|
824
|
+
"aria-label"
|
|
825
|
+
];
|
|
826
|
+
export type FlyoutNavigationAriaAttribute = (typeof FLYOUT_NAVIGATION_ARIA_ATTRIBUTES)[number];
|
|
827
|
+
export type FlyoutNavigationUpdate = {
|
|
828
|
+
activeIdentifier: string;
|
|
829
|
+
};
|
|
830
|
+
export type FlyoutNavigationUpdateEvent = FlyoutNavigationUpdate;
|
|
823
831
|
declare const GRID_DIRECTIONS: readonly [
|
|
824
832
|
"row",
|
|
825
833
|
"row-reverse",
|
|
@@ -1041,6 +1049,7 @@ declare const PAGINATION_NUMBER_OF_PAGE_LINKS: readonly [
|
|
|
1041
1049
|
5,
|
|
1042
1050
|
7
|
|
1043
1051
|
];
|
|
1052
|
+
/** @deprecated */
|
|
1044
1053
|
export type PaginationMaxNumberOfPageLinks = (typeof PAGINATION_NUMBER_OF_PAGE_LINKS)[number];
|
|
1045
1054
|
export type PaginationUpdateEvent = {
|
|
1046
1055
|
page: number;
|
package/esm/public-api.mjs
CHANGED
|
@@ -16,6 +16,8 @@ export { PFieldsetWrapper } from './lib/components/fieldset-wrapper.wrapper.mjs'
|
|
|
16
16
|
export { PFlex } from './lib/components/flex.wrapper.mjs';
|
|
17
17
|
export { PFlexItem } from './lib/components/flex-item.wrapper.mjs';
|
|
18
18
|
export { PFlyout } from './lib/components/flyout.wrapper.mjs';
|
|
19
|
+
export { PFlyoutNavigation } from './lib/components/flyout-navigation.wrapper.mjs';
|
|
20
|
+
export { PFlyoutNavigationItem } from './lib/components/flyout-navigation-item.wrapper.mjs';
|
|
19
21
|
export { PGrid } from './lib/components/grid.wrapper.mjs';
|
|
20
22
|
export { PGridItem } from './lib/components/grid-item.wrapper.mjs';
|
|
21
23
|
export { PHeading } from './lib/components/heading.wrapper.mjs';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@porsche-design-system/components-react",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.0-rc.0",
|
|
4
4
|
"description": "Porsche Design System is a component library designed to help developers create the best experience for software or services distributed by Dr. Ing. h.c. F. Porsche AG.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"porsche",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"license": "SEE LICENSE IN LICENSE",
|
|
18
18
|
"homepage": "https://designsystem.porsche.com",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@porsche-design-system/components-js": "3.
|
|
20
|
+
"@porsche-design-system/components-js": "3.10.0-rc.0"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
23
|
"react": ">=17.0.0 <19.0.0",
|