carbon-react 104.7.2 → 104.10.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/lib/components/advanced-color-picker/advanced-color-picker.style.d.ts +7 -1
- package/lib/components/anchor-navigation/anchor-navigation-item/anchor-navigation-item.style.js +14 -32
- package/lib/components/anchor-navigation/anchor-navigation.style.js +1 -15
- package/lib/components/anchor-navigation/anchor-section-divider/anchor-section-divider.style.js +1 -8
- package/lib/components/app-wrapper/app-wrapper.component.js +11 -0
- package/lib/components/dialog/dialog.component.d.ts +9 -2
- package/lib/components/dialog/dialog.component.js +16 -5
- package/lib/components/dialog/dialog.config.d.ts +3 -0
- package/lib/components/dialog/dialog.config.js +8 -2
- package/lib/components/dialog/dialog.d.ts +11 -1
- package/lib/components/dialog/dialog.style.d.ts +4 -1
- package/lib/components/dialog/dialog.style.js +66 -19
- package/lib/components/dialog-full-screen/dialog-full-screen.component.js +4 -1
- package/lib/components/menu/__internal__/submenu/submenu.style.js +11 -7
- package/lib/components/menu/menu-full-screen/menu-full-screen.component.js +3 -3
- package/lib/components/menu/menu-full-screen/menu-full-screen.style.js +48 -1
- package/lib/components/menu/menu-item/menu-item.style.js +0 -9
- package/lib/components/menu/menu-test.stories.js +132 -0
- package/lib/components/menu/menu.style.js +13 -6
- package/lib/components/sidebar/sidebar.component.js +4 -1
- package/lib/components/toast/toast.component.js +4 -0
- package/lib/locales/en-gb.js +20 -0
- package/lib/locales/locale.d.ts +23 -0
- package/lib/locales/pl-pl.js +20 -0
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ export const StyledAdvancedColorPickerWrapper: import("styled-components").Style
|
|
|
2
2
|
import StyledAdvancedColorPickerCell from "./advanced-color-picker-cell.style";
|
|
3
3
|
export const StyledAdvancedColorPickerPreview: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
4
|
export const DialogStyle: import("styled-components").StyledComponent<{
|
|
5
|
-
({ className, children, open, height, size, title, disableEscKey, subtitle, disableAutoFocus, focusFirstElement, onCancel, showCloseIcon, bespokeFocusTrap, disableClose, help, role, ...rest }: {
|
|
5
|
+
({ className, children, open, height, size, title, disableEscKey, subtitle, disableAutoFocus, focusFirstElement, onCancel, showCloseIcon, bespokeFocusTrap, disableClose, help, role, contentPadding, ...rest }: {
|
|
6
6
|
[x: string]: any;
|
|
7
7
|
className: any;
|
|
8
8
|
children: any;
|
|
@@ -20,6 +20,7 @@ export const DialogStyle: import("styled-components").StyledComponent<{
|
|
|
20
20
|
disableClose: any;
|
|
21
21
|
help: any;
|
|
22
22
|
role?: string | undefined;
|
|
23
|
+
contentPadding?: {} | undefined;
|
|
23
24
|
}): JSX.Element;
|
|
24
25
|
propTypes: {
|
|
25
26
|
"aria-describedby": import("prop-types").Requireable<string>;
|
|
@@ -43,6 +44,11 @@ export const DialogStyle: import("styled-components").StyledComponent<{
|
|
|
43
44
|
disableAutoFocus: import("prop-types").Requireable<boolean>;
|
|
44
45
|
bespokeFocusTrap: import("prop-types").Requireable<(...args: any[]) => any>;
|
|
45
46
|
role: import("prop-types").Requireable<string>;
|
|
47
|
+
contentPadding: import("prop-types").Requireable<import("prop-types").InferProps<{
|
|
48
|
+
p: import("prop-types").Requireable<number>;
|
|
49
|
+
px: import("prop-types").Requireable<number>;
|
|
50
|
+
py: import("prop-types").Requireable<number>;
|
|
51
|
+
}>>;
|
|
46
52
|
};
|
|
47
53
|
defaultProps: {
|
|
48
54
|
size: string;
|
package/lib/components/anchor-navigation/anchor-navigation-item/anchor-navigation-item.style.js
CHANGED
|
@@ -5,14 +5,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
11
11
|
|
|
12
12
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
13
13
|
|
|
14
14
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
15
|
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
16
18
|
const StyledNavigationItem = _styledComponents.default.li`
|
|
17
19
|
width: 100%;
|
|
18
20
|
|
|
@@ -20,52 +22,32 @@ const StyledNavigationItem = _styledComponents.default.li`
|
|
|
20
22
|
cursor: pointer;
|
|
21
23
|
display: block;
|
|
22
24
|
text-decoration: none;
|
|
23
|
-
color:
|
|
24
|
-
theme
|
|
25
|
-
}) => theme.text.color};
|
|
25
|
+
color: var(--colorsUtilityYin090);
|
|
26
26
|
background-color: transparent;
|
|
27
|
-
border-left:
|
|
28
|
-
theme
|
|
29
|
-
}) => theme.disabled.background};
|
|
27
|
+
border-left: var(--sizing050) solid var(--colorsActionMinor100);
|
|
30
28
|
font-weight: 700;
|
|
31
29
|
padding: 12px 24px;
|
|
32
30
|
|
|
33
31
|
&:focus {
|
|
34
|
-
outline:
|
|
35
|
-
position: relative;
|
|
36
|
-
|
|
37
|
-
&:before {
|
|
38
|
-
content: "";
|
|
39
|
-
position: absolute;
|
|
40
|
-
top: 0;
|
|
41
|
-
bottom: 0;
|
|
42
|
-
left: -3px;
|
|
43
|
-
right: 0;
|
|
44
|
-
z-index: 1;
|
|
45
|
-
box-shadow: 0 0 6px ${({
|
|
46
|
-
theme
|
|
47
|
-
}) => theme.colors.focus};
|
|
48
|
-
}
|
|
32
|
+
outline: var(--borderWidth300) solid var(--colorsSemanticFocus500);
|
|
49
33
|
}
|
|
50
34
|
|
|
51
35
|
&:hover {
|
|
52
36
|
background-color: ${({
|
|
53
|
-
isSelected
|
|
54
|
-
|
|
55
|
-
}) => !isSelected && theme.anchorNavigation.navItemHoverBackground};
|
|
37
|
+
isSelected
|
|
38
|
+
}) => !isSelected && "var(--colorsActionMinor100)"};
|
|
56
39
|
}
|
|
57
40
|
|
|
58
41
|
${({
|
|
59
|
-
isSelected
|
|
60
|
-
theme
|
|
42
|
+
isSelected
|
|
61
43
|
}) => isSelected && (0, _styledComponents.css)`
|
|
62
|
-
background-color:
|
|
63
|
-
border-left-color:
|
|
44
|
+
background-color: var(--colorsActionMinorYang100);
|
|
45
|
+
border-left-color: var(--colorsActionMajor500);
|
|
64
46
|
`}
|
|
65
47
|
}
|
|
66
48
|
`;
|
|
67
|
-
StyledNavigationItem.
|
|
68
|
-
|
|
49
|
+
StyledNavigationItem.propTypes = {
|
|
50
|
+
isSelected: _propTypes.default.bool
|
|
69
51
|
};
|
|
70
52
|
var _default = StyledNavigationItem;
|
|
71
53
|
exports.default = _default;
|
|
@@ -7,8 +7,6 @@ exports.StyledContent = exports.StyledNavigation = exports.StyledAnchorNavigatio
|
|
|
7
7
|
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
|
|
10
|
-
var _themes = require("../../style/themes");
|
|
11
|
-
|
|
12
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
11
|
|
|
14
12
|
const StyledAnchorNavigation = _styledComponents.default.div`
|
|
@@ -20,9 +18,6 @@ exports.StyledAnchorNavigation = StyledAnchorNavigation;
|
|
|
20
18
|
const StyledNavigation = _styledComponents.default.ul`
|
|
21
19
|
position: sticky;
|
|
22
20
|
top: 32px;
|
|
23
|
-
box-shadow: inset 3px 0px 0px 0px ${({
|
|
24
|
-
theme
|
|
25
|
-
}) => theme.disabled.background};
|
|
26
21
|
list-style: none;
|
|
27
22
|
margin: 0;
|
|
28
23
|
padding: 0;
|
|
@@ -33,13 +28,4 @@ const StyledContent = _styledComponents.default.div`
|
|
|
33
28
|
flex: 1;
|
|
34
29
|
margin-left: 32px;
|
|
35
30
|
`;
|
|
36
|
-
exports.StyledContent = StyledContent;
|
|
37
|
-
StyledAnchorNavigation.defaultProps = {
|
|
38
|
-
theme: _themes.baseTheme
|
|
39
|
-
};
|
|
40
|
-
StyledNavigation.defaultProps = {
|
|
41
|
-
theme: _themes.baseTheme
|
|
42
|
-
};
|
|
43
|
-
StyledContent.defaultProps = {
|
|
44
|
-
theme: _themes.baseTheme
|
|
45
|
-
};
|
|
31
|
+
exports.StyledContent = StyledContent;
|
package/lib/components/anchor-navigation/anchor-section-divider/anchor-section-divider.style.js
CHANGED
|
@@ -7,20 +7,13 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
|
|
10
|
-
var _themes = require("../../../style/themes");
|
|
11
|
-
|
|
12
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
11
|
|
|
14
12
|
const StyledAnchorDivider = _styledComponents.default.div.attrs({
|
|
15
13
|
"data-element": "anchor-navigation-divider"
|
|
16
14
|
})`
|
|
17
|
-
background-color:
|
|
18
|
-
theme
|
|
19
|
-
}) => theme.anchorNavigation.divider};
|
|
15
|
+
background-color: var(--colorsActionMinor200);
|
|
20
16
|
height: 1px;
|
|
21
17
|
`;
|
|
22
|
-
StyledAnchorDivider.defaultProps = {
|
|
23
|
-
theme: _themes.baseTheme
|
|
24
|
-
};
|
|
25
18
|
var _default = StyledAnchorDivider;
|
|
26
19
|
exports.default = _default;
|
|
@@ -17,6 +17,8 @@ var _ether = require("../../__internal__/utils/ether");
|
|
|
17
17
|
|
|
18
18
|
var _appWrapper = _interopRequireDefault(require("./app-wrapper.style"));
|
|
19
19
|
|
|
20
|
+
var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
|
|
21
|
+
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
23
|
|
|
22
24
|
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
@@ -41,9 +43,11 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
41
43
|
|
|
42
44
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
43
45
|
|
|
46
|
+
let deprecatedWarnTriggered = false;
|
|
44
47
|
/**
|
|
45
48
|
* Manages the width and containment of your application.
|
|
46
49
|
*/
|
|
50
|
+
|
|
47
51
|
let AppWrapper = /*#__PURE__*/function (_React$Component) {
|
|
48
52
|
_inherits(AppWrapper, _React$Component);
|
|
49
53
|
|
|
@@ -56,6 +60,13 @@ let AppWrapper = /*#__PURE__*/function (_React$Component) {
|
|
|
56
60
|
|
|
57
61
|
_this = _super.call(this, ...args);
|
|
58
62
|
_this.classes = _this.classes.bind(_assertThisInitialized(_this));
|
|
63
|
+
|
|
64
|
+
if (!deprecatedWarnTriggered) {
|
|
65
|
+
deprecatedWarnTriggered = true; // eslint-disable-next-line max-len
|
|
66
|
+
|
|
67
|
+
_logger.default.deprecate("`AppWrapper` component is now deprecated and will soon be removed. Please use the `Box` component instead.");
|
|
68
|
+
}
|
|
69
|
+
|
|
59
70
|
return _this;
|
|
60
71
|
}
|
|
61
72
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export default Dialog;
|
|
2
|
-
declare function Dialog({ className, children, open, height, size, title, disableEscKey, subtitle, disableAutoFocus, focusFirstElement, onCancel, showCloseIcon, bespokeFocusTrap, disableClose, help, role, ...rest }: {
|
|
2
|
+
declare function Dialog({ className, children, open, height, size, title, disableEscKey, subtitle, disableAutoFocus, focusFirstElement, onCancel, showCloseIcon, bespokeFocusTrap, disableClose, help, role, contentPadding, ...rest }: {
|
|
3
3
|
[x: string]: any;
|
|
4
4
|
className: any;
|
|
5
5
|
children: any;
|
|
@@ -17,6 +17,7 @@ declare function Dialog({ className, children, open, height, size, title, disabl
|
|
|
17
17
|
disableClose: any;
|
|
18
18
|
help: any;
|
|
19
19
|
role?: string | undefined;
|
|
20
|
+
contentPadding?: {} | undefined;
|
|
20
21
|
}): JSX.Element;
|
|
21
22
|
declare namespace Dialog {
|
|
22
23
|
const propTypes: {
|
|
@@ -28,7 +29,7 @@ declare namespace Dialog {
|
|
|
28
29
|
*/
|
|
29
30
|
"aria-label": PropTypes.Requireable<string>;
|
|
30
31
|
/**
|
|
31
|
-
* Prop to specify the aria-
|
|
32
|
+
* Prop to specify the aria-labelledby property of the Dialog component
|
|
32
33
|
* To be used when the title prop is a custom React Node,
|
|
33
34
|
* or the component is labelled by an internal element other than the title.
|
|
34
35
|
*/
|
|
@@ -71,6 +72,12 @@ declare namespace Dialog {
|
|
|
71
72
|
bespokeFocusTrap: PropTypes.Requireable<(...args: any[]) => any>;
|
|
72
73
|
/** The ARIA role to be applied to the Dialog container */
|
|
73
74
|
role: PropTypes.Requireable<string>;
|
|
75
|
+
/** Padding to be set on the Dialog content */
|
|
76
|
+
contentPadding: PropTypes.Requireable<PropTypes.InferProps<{
|
|
77
|
+
p: PropTypes.Requireable<number>;
|
|
78
|
+
px: PropTypes.Requireable<number>;
|
|
79
|
+
py: PropTypes.Requireable<number>;
|
|
80
|
+
}>>;
|
|
74
81
|
};
|
|
75
82
|
namespace defaultProps {
|
|
76
83
|
const size: string;
|
|
@@ -29,6 +29,8 @@ var _form = _interopRequireDefault(require("../form"));
|
|
|
29
29
|
|
|
30
30
|
var _dialog2 = require("./dialog.config");
|
|
31
31
|
|
|
32
|
+
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
33
|
+
|
|
32
34
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
35
|
|
|
34
36
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -54,8 +56,10 @@ const Dialog = ({
|
|
|
54
56
|
disableClose,
|
|
55
57
|
help,
|
|
56
58
|
role = "dialog",
|
|
59
|
+
contentPadding = {},
|
|
57
60
|
...rest
|
|
58
61
|
}) => {
|
|
62
|
+
const locale = (0, _useLocale.default)();
|
|
59
63
|
const dialogRef = (0, _react.useRef)();
|
|
60
64
|
const innerContentRef = (0, _react.useRef)();
|
|
61
65
|
const titleRef = (0, _react.useRef)();
|
|
@@ -124,7 +128,7 @@ const Dialog = ({
|
|
|
124
128
|
if (!showCloseIcon || !onCancel) return null;
|
|
125
129
|
return /*#__PURE__*/_react.default.createElement(_iconButton.default, {
|
|
126
130
|
"data-element": "close",
|
|
127
|
-
"aria-label":
|
|
131
|
+
"aria-label": locale.dialog.ariaLabels.close(),
|
|
128
132
|
onAction: onCancel,
|
|
129
133
|
disabled: disableClose
|
|
130
134
|
}, /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
@@ -187,9 +191,9 @@ const Dialog = ({
|
|
|
187
191
|
"data-element": "dialog",
|
|
188
192
|
"data-role": rest["data-role"],
|
|
189
193
|
role: role
|
|
190
|
-
}), dialogTitle(), /*#__PURE__*/_react.default.createElement(_dialog.DialogContentStyle,
|
|
194
|
+
}, contentPadding), dialogTitle(), /*#__PURE__*/_react.default.createElement(_dialog.DialogContentStyle, contentPadding, /*#__PURE__*/_react.default.createElement(_dialog.DialogInnerContentStyle, _extends({
|
|
191
195
|
ref: innerContentRef
|
|
192
|
-
}, _react.default.Children.map(children, child => {
|
|
196
|
+
}, contentPadding), _react.default.Children.map(children, child => {
|
|
193
197
|
if ((child === null || child === void 0 ? void 0 : child.type) === _form.default) {
|
|
194
198
|
return /*#__PURE__*/_react.default.cloneElement(child, {
|
|
195
199
|
dialogRef
|
|
@@ -211,7 +215,7 @@ Dialog.propTypes = {
|
|
|
211
215
|
"aria-label": _propTypes.default.string,
|
|
212
216
|
|
|
213
217
|
/**
|
|
214
|
-
* Prop to specify the aria-
|
|
218
|
+
* Prop to specify the aria-labelledby property of the Dialog component
|
|
215
219
|
* To be used when the title prop is a custom React Node,
|
|
216
220
|
* or the component is labelled by an internal element other than the title.
|
|
217
221
|
*/
|
|
@@ -269,7 +273,14 @@ Dialog.propTypes = {
|
|
|
269
273
|
bespokeFocusTrap: _propTypes.default.func,
|
|
270
274
|
|
|
271
275
|
/** The ARIA role to be applied to the Dialog container */
|
|
272
|
-
role: _propTypes.default.string
|
|
276
|
+
role: _propTypes.default.string,
|
|
277
|
+
|
|
278
|
+
/** Padding to be set on the Dialog content */
|
|
279
|
+
contentPadding: _propTypes.default.shape({
|
|
280
|
+
p: _propTypes.default.oneOf([0, 1, 2, 3, 4, 5, 6, 7, 8]),
|
|
281
|
+
px: _propTypes.default.oneOf([0, 1, 2, 3, 4, 5, 6, 7, 8]),
|
|
282
|
+
py: _propTypes.default.oneOf([0, 1, 2, 3, 4, 5, 6, 7, 8])
|
|
283
|
+
})
|
|
273
284
|
};
|
|
274
285
|
Dialog.defaultProps = {
|
|
275
286
|
size: "medium",
|
|
@@ -3,8 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.TOP_MARGIN = exports.DIALOG_SIZES = void 0;
|
|
6
|
+
exports.CONTENT_BOTTOM_PADDING = exports.HORIZONTAL_PADDING = exports.CONTENT_TOP_PADDING = exports.TOP_MARGIN = exports.DIALOG_SIZES = void 0;
|
|
7
7
|
const DIALOG_SIZES = ["extra-small", "small", "medium-small", "medium", "medium-large", "large", "extra-large"];
|
|
8
8
|
exports.DIALOG_SIZES = DIALOG_SIZES;
|
|
9
9
|
const TOP_MARGIN = 20;
|
|
10
|
-
exports.TOP_MARGIN = TOP_MARGIN;
|
|
10
|
+
exports.TOP_MARGIN = TOP_MARGIN;
|
|
11
|
+
const CONTENT_TOP_PADDING = 24;
|
|
12
|
+
exports.CONTENT_TOP_PADDING = CONTENT_TOP_PADDING;
|
|
13
|
+
const HORIZONTAL_PADDING = 32;
|
|
14
|
+
exports.HORIZONTAL_PADDING = HORIZONTAL_PADDING;
|
|
15
|
+
const CONTENT_BOTTOM_PADDING = 30;
|
|
16
|
+
exports.CONTENT_BOTTOM_PADDING = CONTENT_BOTTOM_PADDING;
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { ModalProps } from "../modal/modal";
|
|
3
3
|
|
|
4
|
+
type PaddingValues = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
5
|
+
|
|
6
|
+
interface ContentPaddingInterface {
|
|
7
|
+
p?: PaddingValues;
|
|
8
|
+
py?: PaddingValues;
|
|
9
|
+
px?: PaddingValues;
|
|
10
|
+
}
|
|
11
|
+
|
|
4
12
|
export type DialogSizes =
|
|
5
13
|
| "auto"
|
|
6
14
|
| "extra-small"
|
|
@@ -20,7 +28,7 @@ export interface DialogProps extends ModalProps {
|
|
|
20
28
|
*/
|
|
21
29
|
"aria-label"?: string;
|
|
22
30
|
/**
|
|
23
|
-
* Prop to specify the aria-
|
|
31
|
+
* Prop to specify the aria-labelledby property of the Dialog component
|
|
24
32
|
* To be used when the title prop is a custom React Node,
|
|
25
33
|
* or the component is labelled by an internal element other than the title.
|
|
26
34
|
*/
|
|
@@ -49,6 +57,8 @@ export interface DialogProps extends ModalProps {
|
|
|
49
57
|
title?: React.ReactNode;
|
|
50
58
|
/** The ARIA role to be applied to the Dialog container */
|
|
51
59
|
role?: string;
|
|
60
|
+
/** Padding to be set on the Dialog content */
|
|
61
|
+
contentPadding?: ContentPaddingInterface;
|
|
52
62
|
}
|
|
53
63
|
|
|
54
64
|
declare function Dialog(props: DialogProps): JSX.Element;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export const DialogStyle: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
2
|
export const DialogTitleStyle: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
3
|
export const DialogContentStyle: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
-
export const DialogInnerContentStyle: import("styled-components").StyledComponent<"div", any, {
|
|
4
|
+
export const DialogInnerContentStyle: import("styled-components").StyledComponent<"div", any, {
|
|
5
|
+
py: any;
|
|
6
|
+
p: any;
|
|
7
|
+
}, never>;
|
|
@@ -7,12 +7,18 @@ exports.DialogInnerContentStyle = exports.DialogContentStyle = exports.DialogTit
|
|
|
7
7
|
|
|
8
8
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
9
9
|
|
|
10
|
+
var _styledSystem = require("styled-system");
|
|
11
|
+
|
|
12
|
+
var _base = _interopRequireDefault(require("../../style/themes/base"));
|
|
13
|
+
|
|
10
14
|
var _form = require("../form/form.style");
|
|
11
15
|
|
|
12
16
|
var _heading = require("../heading/heading.style");
|
|
13
17
|
|
|
14
18
|
var _iconButton = _interopRequireDefault(require("../icon-button/icon-button.style"));
|
|
15
19
|
|
|
20
|
+
var _dialog = require("./dialog.config");
|
|
21
|
+
|
|
16
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
23
|
|
|
18
24
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -29,8 +35,51 @@ const dialogSizes = {
|
|
|
29
35
|
large: "960px",
|
|
30
36
|
"extra-large": "1080px"
|
|
31
37
|
};
|
|
32
|
-
|
|
33
|
-
const
|
|
38
|
+
|
|
39
|
+
const calculateWidthValue = props => {
|
|
40
|
+
const {
|
|
41
|
+
paddingLeft,
|
|
42
|
+
paddingRight,
|
|
43
|
+
padding
|
|
44
|
+
} = (0, _styledSystem.padding)(props);
|
|
45
|
+
const paddingValue = paddingLeft ?? paddingRight ?? padding;
|
|
46
|
+
return paddingValue === undefined ? _dialog.HORIZONTAL_PADDING * 2 : paddingValue * 2;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const calculateFormSpacingValues = (props, isFormContent) => {
|
|
50
|
+
const {
|
|
51
|
+
paddingTop,
|
|
52
|
+
paddingBottom,
|
|
53
|
+
paddingLeft,
|
|
54
|
+
paddingRight,
|
|
55
|
+
padding
|
|
56
|
+
} = (0, _styledSystem.padding)(props);
|
|
57
|
+
const spacingTopValue = paddingTop ?? padding ?? _dialog.CONTENT_TOP_PADDING;
|
|
58
|
+
const spacingRightValue = paddingRight ?? padding ?? _dialog.HORIZONTAL_PADDING;
|
|
59
|
+
const spacingBottomValue = paddingBottom ?? padding ?? _dialog.CONTENT_BOTTOM_PADDING;
|
|
60
|
+
const spacingLeftValue = paddingLeft ?? padding ?? _dialog.HORIZONTAL_PADDING;
|
|
61
|
+
return {
|
|
62
|
+
"margin-left": spacingLeftValue ? `-${spacingLeftValue}px` : spacingLeftValue,
|
|
63
|
+
"margin-right": spacingRightValue ? `-${spacingRightValue}px` : spacingRightValue,
|
|
64
|
+
...(isFormContent && {
|
|
65
|
+
"margin-top": spacingTopValue ? `-${spacingTopValue}px` : spacingTopValue,
|
|
66
|
+
"padding-top": spacingTopValue,
|
|
67
|
+
"padding-bottom": spacingBottomValue,
|
|
68
|
+
"padding-left": spacingLeftValue,
|
|
69
|
+
"padding-right": spacingRightValue
|
|
70
|
+
}),
|
|
71
|
+
...(!isFormContent && {
|
|
72
|
+
"margin-bottom": spacingBottomValue ? `-${spacingBottomValue}px` : spacingBottomValue,
|
|
73
|
+
bottom: spacingBottomValue ? `-${spacingBottomValue}px` : spacingBottomValue
|
|
74
|
+
})
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
const calculatePaddingTopInnerContent = ({
|
|
79
|
+
py,
|
|
80
|
+
p
|
|
81
|
+
}) => [py, p].some(padding => padding !== undefined) ? 0 : `${_dialog.CONTENT_TOP_PADDING}px`;
|
|
82
|
+
|
|
34
83
|
const DialogStyle = _styledComponents.default.div`
|
|
35
84
|
background-color: var(--colorsUtilityMajor025);
|
|
36
85
|
box-shadow: var(--boxShadow300);
|
|
@@ -62,7 +111,7 @@ const DialogStyle = _styledComponents.default.div`
|
|
|
62
111
|
dialogHeight
|
|
63
112
|
}) => dialogHeight && (0, _styledComponents.css)`
|
|
64
113
|
height: ${dialogHeight}px;
|
|
65
|
-
`}
|
|
114
|
+
`}
|
|
66
115
|
|
|
67
116
|
${_form.StyledForm} {
|
|
68
117
|
padding-bottom: 0px;
|
|
@@ -70,21 +119,12 @@ const DialogStyle = _styledComponents.default.div`
|
|
|
70
119
|
}
|
|
71
120
|
|
|
72
121
|
${_form.StyledFormContent}.sticky {
|
|
73
|
-
|
|
74
|
-
padding-left: ${HORIZONTAL_PADDING}px;
|
|
75
|
-
padding-top: 20px;
|
|
76
|
-
margin-right: -${HORIZONTAL_PADDING}px;
|
|
77
|
-
margin-left: -${HORIZONTAL_PADDING}px;
|
|
78
|
-
margin-top: -20px;
|
|
122
|
+
${props => calculateFormSpacingValues(props, true)}
|
|
79
123
|
}
|
|
80
124
|
|
|
81
125
|
${_form.StyledFormFooter}.sticky {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
margin-bottom: -${CONTENT_BOTTOM_PADDING}px;
|
|
85
|
-
width: calc(100% + ${2 * HORIZONTAL_PADDING}px);
|
|
86
|
-
padding-left: ${HORIZONTAL_PADDING}px;
|
|
87
|
-
padding-right: ${HORIZONTAL_PADDING}px;
|
|
126
|
+
width: calc(100% + ${calculateWidthValue}px);
|
|
127
|
+
${props => calculateFormSpacingValues(props, false)}
|
|
88
128
|
}
|
|
89
129
|
|
|
90
130
|
> ${_iconButton.default} {
|
|
@@ -101,7 +141,7 @@ const DialogStyle = _styledComponents.default.div`
|
|
|
101
141
|
`;
|
|
102
142
|
exports.DialogStyle = DialogStyle;
|
|
103
143
|
const DialogTitleStyle = _styledComponents.default.div`
|
|
104
|
-
padding: 23px ${HORIZONTAL_PADDING}px 0;
|
|
144
|
+
padding: 23px ${_dialog.HORIZONTAL_PADDING}px 0;
|
|
105
145
|
border-bottom: 1px solid #ccd6db;
|
|
106
146
|
${({
|
|
107
147
|
showCloseIcon
|
|
@@ -133,12 +173,19 @@ const DialogContentStyle = _styledComponents.default.div`
|
|
|
133
173
|
overflow-y: auto;
|
|
134
174
|
width: 100%;
|
|
135
175
|
flex: 1;
|
|
136
|
-
padding: 0px ${HORIZONTAL_PADDING}px ${CONTENT_BOTTOM_PADDING}px;
|
|
176
|
+
padding: 0px ${_dialog.HORIZONTAL_PADDING}px ${_dialog.CONTENT_BOTTOM_PADDING}px;
|
|
177
|
+
${_styledSystem.padding}
|
|
137
178
|
`;
|
|
138
179
|
exports.DialogContentStyle = DialogContentStyle;
|
|
139
180
|
const DialogInnerContentStyle = _styledComponents.default.div`
|
|
140
|
-
padding-top: 20px;
|
|
141
181
|
position: relative;
|
|
142
182
|
flex: 1;
|
|
183
|
+
padding-top: ${calculatePaddingTopInnerContent};
|
|
143
184
|
`;
|
|
144
|
-
exports.DialogInnerContentStyle = DialogInnerContentStyle;
|
|
185
|
+
exports.DialogInnerContentStyle = DialogInnerContentStyle;
|
|
186
|
+
DialogStyle.defaultProps = {
|
|
187
|
+
theme: _base.default
|
|
188
|
+
};
|
|
189
|
+
DialogContentStyle.defaultProps = {
|
|
190
|
+
theme: _base.default
|
|
191
|
+
};
|
|
@@ -27,6 +27,8 @@ var _iconButton = _interopRequireDefault(require("../icon-button"));
|
|
|
27
27
|
|
|
28
28
|
var _icon = _interopRequireDefault(require("../icon"));
|
|
29
29
|
|
|
30
|
+
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
31
|
+
|
|
30
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
33
|
|
|
32
34
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -56,6 +58,7 @@ const DialogFullScreen = ({
|
|
|
56
58
|
role = "dialog",
|
|
57
59
|
...rest
|
|
58
60
|
}) => {
|
|
61
|
+
const locale = (0, _useLocale.default)();
|
|
59
62
|
const dialogRef = (0, _react.useRef)();
|
|
60
63
|
const headingRef = (0, _react.useRef)();
|
|
61
64
|
const {
|
|
@@ -69,7 +72,7 @@ const DialogFullScreen = ({
|
|
|
69
72
|
if (!showCloseIcon || !onCancel) return null;
|
|
70
73
|
return /*#__PURE__*/_react.default.createElement(_iconButton.default, {
|
|
71
74
|
"data-element": "close",
|
|
72
|
-
"aria-label":
|
|
75
|
+
"aria-label": locale.dialogFullScreen.ariaLabels.close(),
|
|
73
76
|
onAction: onCancel
|
|
74
77
|
}, /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
75
78
|
type: "close"
|
|
@@ -44,11 +44,15 @@ const StyledSubmenuWrapper = _styledComponents.default.div`
|
|
|
44
44
|
menuType,
|
|
45
45
|
asPassiveItem,
|
|
46
46
|
theme
|
|
47
|
-
}) => inFullscreenView &&
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
47
|
+
}) => inFullscreenView && (0, _styledComponents.css)`
|
|
48
|
+
width: 100%;
|
|
49
|
+
|
|
50
|
+
${asPassiveItem && (0, _styledComponents.css)`
|
|
51
|
+
${_menuItem.default} {
|
|
52
|
+
outline: none;
|
|
53
|
+
color: ${theme.menu[menuType].title};
|
|
54
|
+
}
|
|
55
|
+
`}
|
|
52
56
|
`}
|
|
53
57
|
`;
|
|
54
58
|
exports.StyledSubmenuWrapper = StyledSubmenuWrapper;
|
|
@@ -75,7 +79,7 @@ const StyledSubmenu = _styledComponents.default.ul`
|
|
|
75
79
|
|
|
76
80
|
${inFullscreenView && (0, _styledComponents.css)`
|
|
77
81
|
${_menu.StyledMenuItem} {
|
|
78
|
-
width:
|
|
82
|
+
width: 100%;
|
|
79
83
|
}
|
|
80
84
|
`}
|
|
81
85
|
|
|
@@ -126,7 +130,7 @@ const StyledSubmenu = _styledComponents.default.ul`
|
|
|
126
130
|
margin-right: 5px;
|
|
127
131
|
}
|
|
128
132
|
|
|
129
|
-
${_search.default} [data-component="icon"] {
|
|
133
|
+
${_search.default} span > [data-component="icon"] {
|
|
130
134
|
color: ${theme.menu[menuType].searchIcon};
|
|
131
135
|
|
|
132
136
|
&:hover {
|
|
@@ -106,10 +106,10 @@ const MenuFullscreen = ({
|
|
|
106
106
|
type: "close",
|
|
107
107
|
color: iconColors[menuType]
|
|
108
108
|
}))), /*#__PURE__*/_react.default.createElement(_box.default, {
|
|
109
|
-
|
|
109
|
+
overflowY: "auto",
|
|
110
110
|
scrollVariant: scrollVariants[menuType],
|
|
111
|
-
width: "
|
|
112
|
-
height: "
|
|
111
|
+
width: "100%",
|
|
112
|
+
height: "calc(100% - 40px)"
|
|
113
113
|
}, /*#__PURE__*/_react.default.createElement(_menu.StyledMenuWrapper, {
|
|
114
114
|
"data-component": "menu",
|
|
115
115
|
menuType: menuType,
|
|
@@ -13,6 +13,12 @@ var _iconButton = _interopRequireDefault(require("../../icon-button/icon-button.
|
|
|
13
13
|
|
|
14
14
|
var _box = _interopRequireDefault(require("../../box"));
|
|
15
15
|
|
|
16
|
+
var _search = _interopRequireDefault(require("../../search/search.style"));
|
|
17
|
+
|
|
18
|
+
var _icon = _interopRequireDefault(require("../../icon/icon.style"));
|
|
19
|
+
|
|
20
|
+
var _button = _interopRequireDefault(require("../../button/button.style"));
|
|
21
|
+
|
|
16
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
23
|
|
|
18
24
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -23,6 +29,8 @@ const StyledMenuFullscreen = _styledComponents.default.div`
|
|
|
23
29
|
position: fixed;
|
|
24
30
|
top: 0;
|
|
25
31
|
bottom: 0;
|
|
32
|
+
height: 100vh;
|
|
33
|
+
width: 100%;
|
|
26
34
|
|
|
27
35
|
a,
|
|
28
36
|
button,
|
|
@@ -39,6 +47,45 @@ const StyledMenuFullscreen = _styledComponents.default.div`
|
|
|
39
47
|
background-color: ${theme.menu[menuType].background};
|
|
40
48
|
z-index: ${theme.zIndex.fullScreenModal};
|
|
41
49
|
|
|
50
|
+
${menuType === "dark" && (0, _styledComponents.css)`
|
|
51
|
+
${_search.default} span > [data-component="icon"] {
|
|
52
|
+
color: ${theme.menu.dark.searchIcon};
|
|
53
|
+
|
|
54
|
+
&:hover {
|
|
55
|
+
color: ${theme.menu.dark.searchIconHover};
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
`}
|
|
59
|
+
|
|
60
|
+
${menuType === "light" && (0, _styledComponents.css)`
|
|
61
|
+
${_search.default} span > [data-component="icon"] {
|
|
62
|
+
color: ${theme.search.icon};
|
|
63
|
+
|
|
64
|
+
&:hover {
|
|
65
|
+
color: ${theme.search.iconHover};
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
`}
|
|
69
|
+
|
|
70
|
+
${_search.default} {
|
|
71
|
+
${_icon.default} {
|
|
72
|
+
display: inline-flex;
|
|
73
|
+
margin-right: 0;
|
|
74
|
+
bottom: auto;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
${_button.default} {
|
|
78
|
+
display: flex;
|
|
79
|
+
line-height: normal;
|
|
80
|
+
padding-bottom: 0;
|
|
81
|
+
|
|
82
|
+
&:focus {
|
|
83
|
+
outline: solid 3px var(--colorsSemanticFocus500);
|
|
84
|
+
box-shadow: none;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
42
89
|
${isOpen && (0, _styledComponents.css)`
|
|
43
90
|
visibility: visible;
|
|
44
91
|
${startPosition}: 0;
|
|
@@ -47,7 +94,7 @@ const StyledMenuFullscreen = _styledComponents.default.div`
|
|
|
47
94
|
|
|
48
95
|
${!isOpen && (0, _styledComponents.css)`
|
|
49
96
|
visibility: hidden;
|
|
50
|
-
${startPosition}: -
|
|
97
|
+
${startPosition}: -100%;
|
|
51
98
|
transition: all 0.3s ease;
|
|
52
99
|
`}
|
|
53
100
|
`}
|
|
@@ -218,7 +218,6 @@ const StyledMenuItemWrapper = _styledComponents.default.a`
|
|
|
218
218
|
|
|
219
219
|
${inFullscreenView && (0, _styledComponents.css)`
|
|
220
220
|
${as === "div" && (0, _styledComponents.css)`
|
|
221
|
-
width: 100vw;
|
|
222
221
|
cursor: default;
|
|
223
222
|
padding: 0 16px;
|
|
224
223
|
|
|
@@ -226,14 +225,6 @@ const StyledMenuItemWrapper = _styledComponents.default.a`
|
|
|
226
225
|
background: transparent;
|
|
227
226
|
}
|
|
228
227
|
`}
|
|
229
|
-
|
|
230
|
-
a,
|
|
231
|
-
${_link.StyledLink} a,
|
|
232
|
-
button,
|
|
233
|
-
${_link.StyledLink} button {
|
|
234
|
-
width: 100vw;
|
|
235
|
-
box-sizing: border-box;
|
|
236
|
-
}
|
|
237
228
|
`}
|
|
238
229
|
`}
|
|
239
230
|
`;
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.MenuFullScreenStory = exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _addonActions = require("@storybook/addon-actions");
|
|
11
|
+
|
|
12
|
+
var _ = require(".");
|
|
13
|
+
|
|
14
|
+
var _menuItem = _interopRequireDefault(require("./menu-item"));
|
|
15
|
+
|
|
16
|
+
var _menuFullScreen = _interopRequireDefault(require("./menu-full-screen"));
|
|
17
|
+
|
|
18
|
+
var _search = _interopRequireDefault(require("../search"));
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
23
|
+
|
|
24
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
|
+
|
|
26
|
+
/* eslint-disable react/prop-types */
|
|
27
|
+
var _default = {
|
|
28
|
+
title: "Menu/Test",
|
|
29
|
+
parameters: {
|
|
30
|
+
info: {
|
|
31
|
+
disable: true
|
|
32
|
+
},
|
|
33
|
+
chromatic: {
|
|
34
|
+
disable: false
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
argTypes: {
|
|
38
|
+
menuType: {
|
|
39
|
+
options: ["light", "dark"],
|
|
40
|
+
control: {
|
|
41
|
+
type: "select"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
startPosition: {
|
|
45
|
+
options: ["left", "right"],
|
|
46
|
+
control: {
|
|
47
|
+
type: "select"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
searchVariant: {
|
|
51
|
+
options: ["default", "dark"],
|
|
52
|
+
control: {
|
|
53
|
+
type: "select"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
searchButton: {
|
|
57
|
+
options: [true, false],
|
|
58
|
+
control: {
|
|
59
|
+
type: "boolean"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
exports.default = _default;
|
|
65
|
+
|
|
66
|
+
const MenuFullScreenStory = ({
|
|
67
|
+
menuType,
|
|
68
|
+
startPosition,
|
|
69
|
+
searchVariant,
|
|
70
|
+
searchButton
|
|
71
|
+
}) => {
|
|
72
|
+
const [isOpen, setIsOpen] = (0, _react.useState)(true);
|
|
73
|
+
|
|
74
|
+
const onClose = evt => {
|
|
75
|
+
setIsOpen(false);
|
|
76
|
+
(0, _addonActions.action)("close icon clicked")(evt);
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
const handleOpen = () => {
|
|
80
|
+
setIsOpen(true);
|
|
81
|
+
(0, _addonActions.action)("open")();
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
return /*#__PURE__*/_react.default.createElement(_.Menu, {
|
|
85
|
+
menuType: menuType
|
|
86
|
+
}, /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
87
|
+
onClick: handleOpen
|
|
88
|
+
}, "Menu"), /*#__PURE__*/_react.default.createElement(_menuFullScreen.default, {
|
|
89
|
+
startPosition: startPosition,
|
|
90
|
+
isOpen: isOpen,
|
|
91
|
+
onClose: onClose
|
|
92
|
+
}, /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
93
|
+
href: "#"
|
|
94
|
+
}, "Menu Item One"), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
95
|
+
onClick: evt => (0, _addonActions.action)("submenu item clicked")(evt),
|
|
96
|
+
submenu: "Menu Item Two"
|
|
97
|
+
}, /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
98
|
+
href: "#"
|
|
99
|
+
}, "Submenu Item One"), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
100
|
+
href: "#"
|
|
101
|
+
}, "Submenu Item Two")), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
102
|
+
variant: "alternate"
|
|
103
|
+
}, /*#__PURE__*/_react.default.createElement(_search.default, {
|
|
104
|
+
placeholder: "Search...",
|
|
105
|
+
variant: searchVariant,
|
|
106
|
+
defaultValue: "",
|
|
107
|
+
searchButton: searchButton
|
|
108
|
+
})), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
109
|
+
href: "#"
|
|
110
|
+
}, "Menu Item Three"), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
111
|
+
href: "#"
|
|
112
|
+
}, "Menu Item Four"), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
113
|
+
submenu: "Menu Item Five"
|
|
114
|
+
}, /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
115
|
+
href: "#"
|
|
116
|
+
}, "Submenu Item One"), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
117
|
+
href: "#"
|
|
118
|
+
}, "Submenu Item Two")), /*#__PURE__*/_react.default.createElement(_menuItem.default, {
|
|
119
|
+
href: "#"
|
|
120
|
+
}, "Menu Item Six")));
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
exports.MenuFullScreenStory = MenuFullScreenStory;
|
|
124
|
+
MenuFullScreenStory.story = {
|
|
125
|
+
name: "fullscreen menu",
|
|
126
|
+
args: {
|
|
127
|
+
menuType: "light",
|
|
128
|
+
startPosition: "left",
|
|
129
|
+
searchVariant: "default",
|
|
130
|
+
searchButton: true
|
|
131
|
+
}
|
|
132
|
+
};
|
|
@@ -13,6 +13,8 @@ var _verticalDivider = require("../vertical-divider/vertical-divider.style");
|
|
|
13
13
|
|
|
14
14
|
var _themes = require("../../style/themes");
|
|
15
15
|
|
|
16
|
+
var _link = require("../link/link.style");
|
|
17
|
+
|
|
16
18
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
17
19
|
|
|
18
20
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -46,12 +48,6 @@ const StyledMenuWrapper = _styledComponents.default.ul`
|
|
|
46
48
|
top: -1px;
|
|
47
49
|
}
|
|
48
50
|
}
|
|
49
|
-
|
|
50
|
-
${({
|
|
51
|
-
inFullscreenView
|
|
52
|
-
}) => inFullscreenView && (0, _styledComponents.css)`
|
|
53
|
-
padding-bottom: 24px;
|
|
54
|
-
`}
|
|
55
51
|
`;
|
|
56
52
|
exports.StyledMenuWrapper = StyledMenuWrapper;
|
|
57
53
|
const StyledMenuItem = _styledComponents.default.li`
|
|
@@ -71,6 +67,17 @@ const StyledMenuItem = _styledComponents.default.li`
|
|
|
71
67
|
}) => inFullscreenView && (0, _styledComponents.css)`
|
|
72
68
|
padding-top: 16px;
|
|
73
69
|
padding-bottom: 16px;
|
|
70
|
+
|
|
71
|
+
a,
|
|
72
|
+
${_link.StyledLink} a,
|
|
73
|
+
button,
|
|
74
|
+
${_link.StyledLink} button,
|
|
75
|
+
> span,
|
|
76
|
+
> div,
|
|
77
|
+
[data-component="submenu-wrapper"] > ${_link.StyledLink} {
|
|
78
|
+
width: 100%;
|
|
79
|
+
box-sizing: border-box;
|
|
80
|
+
}
|
|
74
81
|
`}
|
|
75
82
|
`;
|
|
76
83
|
exports.StyledMenuItem = StyledMenuItem;
|
|
@@ -25,6 +25,8 @@ var _box = _interopRequireDefault(require("../box"));
|
|
|
25
25
|
|
|
26
26
|
var _sidebar2 = require("./sidebar.config");
|
|
27
27
|
|
|
28
|
+
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
29
|
+
|
|
28
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
31
|
|
|
30
32
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -52,13 +54,14 @@ const Sidebar = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
52
54
|
role = "dialog",
|
|
53
55
|
...rest
|
|
54
56
|
}, ref) => {
|
|
57
|
+
const locale = (0, _useLocale.default)();
|
|
55
58
|
let sidebarRef = (0, _react.useRef)();
|
|
56
59
|
if (ref) sidebarRef = ref;
|
|
57
60
|
|
|
58
61
|
const closeIcon = () => {
|
|
59
62
|
if (!onCancel) return null;
|
|
60
63
|
return /*#__PURE__*/_react.default.createElement(_iconButton.default, {
|
|
61
|
-
"aria-label":
|
|
64
|
+
"aria-label": locale.sidebar.ariaLabels.close(),
|
|
62
65
|
onAction: onCancel,
|
|
63
66
|
"data-element": "close"
|
|
64
67
|
}, /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
@@ -25,6 +25,8 @@ var _modalManager = _interopRequireDefault(require("../modal/__internal__/modal-
|
|
|
25
25
|
|
|
26
26
|
var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
|
|
27
27
|
|
|
28
|
+
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
29
|
+
|
|
28
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
31
|
|
|
30
32
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -47,6 +49,7 @@ const Toast = ({
|
|
|
47
49
|
variant,
|
|
48
50
|
...restProps
|
|
49
51
|
}) => {
|
|
52
|
+
const locale = (0, _useLocale.default)();
|
|
50
53
|
const toastRef = (0, _react.useRef)();
|
|
51
54
|
const timer = (0, _react.useRef)();
|
|
52
55
|
const componentClasses = (0, _react.useMemo)(() => {
|
|
@@ -85,6 +88,7 @@ const Toast = ({
|
|
|
85
88
|
function renderCloseIcon() {
|
|
86
89
|
if (!onDismiss) return null;
|
|
87
90
|
return /*#__PURE__*/_react.default.createElement(_iconButton.default, {
|
|
91
|
+
"aria-label": locale.toast.ariaLabels.close(),
|
|
88
92
|
"data-element": "close",
|
|
89
93
|
onAction: onDismiss
|
|
90
94
|
}, /*#__PURE__*/_react.default.createElement(_icon.default, {
|
package/lib/locales/en-gb.js
CHANGED
|
@@ -28,6 +28,16 @@ var _default = {
|
|
|
28
28
|
date: {
|
|
29
29
|
dateFnsLocale: () => _dateFnsLocales.enGB
|
|
30
30
|
},
|
|
31
|
+
dialog: {
|
|
32
|
+
ariaLabels: {
|
|
33
|
+
close: () => "Close"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
dialogFullScreen: {
|
|
37
|
+
ariaLabels: {
|
|
38
|
+
close: () => "Close"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
31
41
|
errors: {
|
|
32
42
|
messages: {
|
|
33
43
|
formSummary:
|
|
@@ -85,6 +95,11 @@ var _default = {
|
|
|
85
95
|
link: {
|
|
86
96
|
skipLinkLabel: () => "Skip to main content"
|
|
87
97
|
},
|
|
98
|
+
sidebar: {
|
|
99
|
+
ariaLabels: {
|
|
100
|
+
close: () => "Close"
|
|
101
|
+
}
|
|
102
|
+
},
|
|
88
103
|
switch: {
|
|
89
104
|
on: () => "ON",
|
|
90
105
|
off: () => "OFF"
|
|
@@ -106,6 +121,11 @@ var _default = {
|
|
|
106
121
|
tileSelect: {
|
|
107
122
|
deselect: () => "Deselect"
|
|
108
123
|
},
|
|
124
|
+
toast: {
|
|
125
|
+
ariaLabels: {
|
|
126
|
+
close: () => "Close"
|
|
127
|
+
}
|
|
128
|
+
},
|
|
109
129
|
wizards: {
|
|
110
130
|
multiStep: {
|
|
111
131
|
buttons: {
|
package/lib/locales/locale.d.ts
CHANGED
|
@@ -19,6 +19,16 @@ interface Locale {
|
|
|
19
19
|
date: {
|
|
20
20
|
dateFnsLocale: () => DateFnsLocale;
|
|
21
21
|
};
|
|
22
|
+
dialog: {
|
|
23
|
+
ariaLabels: {
|
|
24
|
+
close: () => string;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
dialogFullScreen: {
|
|
28
|
+
ariaLabels: {
|
|
29
|
+
close: () => string;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
22
32
|
errors: {
|
|
23
33
|
messages: {
|
|
24
34
|
formSummary: (
|
|
@@ -53,6 +63,14 @@ interface Locale {
|
|
|
53
63
|
placeholder: () => string;
|
|
54
64
|
noResultsForTerm: (term: string) => string;
|
|
55
65
|
};
|
|
66
|
+
link: {
|
|
67
|
+
skipLinkLabel: () => string;
|
|
68
|
+
};
|
|
69
|
+
sidebar: {
|
|
70
|
+
ariaLabels: {
|
|
71
|
+
close: () => string;
|
|
72
|
+
};
|
|
73
|
+
};
|
|
56
74
|
switch: {
|
|
57
75
|
on: () => string;
|
|
58
76
|
off: () => string;
|
|
@@ -74,6 +92,11 @@ interface Locale {
|
|
|
74
92
|
tileSelect: {
|
|
75
93
|
deselect: () => string;
|
|
76
94
|
};
|
|
95
|
+
toast: {
|
|
96
|
+
ariaLabels: {
|
|
97
|
+
close: () => string;
|
|
98
|
+
};
|
|
99
|
+
};
|
|
77
100
|
wizards: {
|
|
78
101
|
multiStep: {
|
|
79
102
|
buttons: {
|
package/lib/locales/pl-pl.js
CHANGED
|
@@ -28,6 +28,16 @@ var _default = {
|
|
|
28
28
|
date: {
|
|
29
29
|
dateFnsLocale: () => _dateFnsLocales.pl
|
|
30
30
|
},
|
|
31
|
+
dialog: {
|
|
32
|
+
ariaLabels: {
|
|
33
|
+
close: () => "Zamknij"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
dialogFullScreen: {
|
|
37
|
+
ariaLabels: {
|
|
38
|
+
close: () => "Zamknij"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
31
41
|
errors: {
|
|
32
42
|
messages: {
|
|
33
43
|
formSummary:
|
|
@@ -83,6 +93,11 @@ var _default = {
|
|
|
83
93
|
link: {
|
|
84
94
|
skipLinkLabel: () => "Przejdź do treści"
|
|
85
95
|
},
|
|
96
|
+
sidebar: {
|
|
97
|
+
ariaLabels: {
|
|
98
|
+
close: () => "Zamknij"
|
|
99
|
+
}
|
|
100
|
+
},
|
|
86
101
|
switch: {
|
|
87
102
|
on: () => "WŁ",
|
|
88
103
|
off: () => "WYŁ"
|
|
@@ -104,6 +119,11 @@ var _default = {
|
|
|
104
119
|
tileSelect: {
|
|
105
120
|
deselect: () => "Odznacz"
|
|
106
121
|
},
|
|
122
|
+
toast: {
|
|
123
|
+
ariaLabels: {
|
|
124
|
+
close: () => "Zamknij"
|
|
125
|
+
}
|
|
126
|
+
},
|
|
107
127
|
wizards: {
|
|
108
128
|
multiStep: {
|
|
109
129
|
buttons: {
|