carbon-react 114.6.1 → 114.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/components/button/button.component.js +21 -5
- package/esm/components/button-bar/button-bar.component.d.ts +8 -3
- package/esm/components/button-bar/button-bar.component.js +14 -35
- package/esm/components/i18n-provider/i18n-provider.component.js +3 -0
- package/esm/components/icon-button/icon-button.component.js +7 -2
- package/esm/components/loader/loader.component.d.ts +4 -3
- package/esm/components/loader/loader.component.js +13 -5
- package/esm/components/loader-bar/loader-bar.component.d.ts +2 -1
- package/esm/components/loader-bar/loader-bar.component.js +12 -1
- package/esm/components/loader-bar/loader-bar.style.d.ts +1 -1
- package/esm/components/loader-bar/loader-bar.style.js +0 -3
- package/esm/components/switch/__internal__/switch-slider.style.js +1 -0
- package/esm/components/switch/switch.component.js +2 -2
- package/esm/components/switch/switch.style.js +2 -0
- package/esm/locales/en-gb.js +6 -3
- package/esm/locales/locale.d.ts +6 -3
- package/esm/locales/pl-pl.js +6 -3
- package/lib/components/button/button.component.js +22 -4
- package/lib/components/button-bar/button-bar.component.d.ts +8 -3
- package/lib/components/button-bar/button-bar.component.js +17 -43
- package/lib/components/i18n-provider/i18n-provider.component.js +3 -0
- package/lib/components/icon-button/icon-button.component.js +7 -1
- package/lib/components/loader/loader.component.d.ts +4 -3
- package/lib/components/loader/loader.component.js +16 -5
- package/lib/components/loader-bar/loader-bar.component.d.ts +2 -1
- package/lib/components/loader-bar/loader-bar.component.js +15 -1
- package/lib/components/loader-bar/loader-bar.style.d.ts +1 -1
- package/lib/components/loader-bar/loader-bar.style.js +0 -3
- package/lib/components/switch/__internal__/switch-slider.style.js +1 -0
- package/lib/components/switch/switch.style.js +2 -0
- package/lib/locales/en-gb.js +6 -3
- package/lib/locales/locale.d.ts +6 -3
- package/lib/locales/pl-pl.js +6 -3
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
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); }
|
|
2
2
|
|
|
3
|
-
import React, { useCallback, useState } from "react";
|
|
3
|
+
import React, { useCallback, useState, useContext } from "react";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
5
|
import invariant from "invariant";
|
|
6
6
|
import Icon from "../icon";
|
|
@@ -8,6 +8,7 @@ import StyledButton, { StyledButtonSubtext } from "./button.style";
|
|
|
8
8
|
import tagComponent from "../../__internal__/utils/helpers/tags/tags";
|
|
9
9
|
import { TooltipProvider } from "../../__internal__/tooltip-provider";
|
|
10
10
|
import Logger from "../../__internal__/utils/logger";
|
|
11
|
+
import { ButtonBarContext } from "../button-bar/button-bar.component";
|
|
11
12
|
|
|
12
13
|
function renderChildren({
|
|
13
14
|
/* eslint-disable react/prop-types */
|
|
@@ -75,8 +76,9 @@ renderChildren.propTypes = {
|
|
|
75
76
|
}
|
|
76
77
|
};
|
|
77
78
|
let deprecatedForwardRefWarnTriggered = false;
|
|
79
|
+
let deprecatedDashedButtonWarnTriggered = false;
|
|
78
80
|
const Button = /*#__PURE__*/React.forwardRef(({
|
|
79
|
-
size = "medium",
|
|
81
|
+
size: sizeProp = "medium",
|
|
80
82
|
subtext = "",
|
|
81
83
|
children,
|
|
82
84
|
forwardRef,
|
|
@@ -85,7 +87,7 @@ const Button = /*#__PURE__*/React.forwardRef(({
|
|
|
85
87
|
destructive = false,
|
|
86
88
|
buttonType: buttonTypeProp = "secondary",
|
|
87
89
|
iconType,
|
|
88
|
-
iconPosition = "before",
|
|
90
|
+
iconPosition: iconPositionProp = "before",
|
|
89
91
|
href,
|
|
90
92
|
m = 0,
|
|
91
93
|
px,
|
|
@@ -94,9 +96,19 @@ const Button = /*#__PURE__*/React.forwardRef(({
|
|
|
94
96
|
rel,
|
|
95
97
|
iconTooltipMessage,
|
|
96
98
|
iconTooltipPosition,
|
|
97
|
-
fullWidth = false,
|
|
99
|
+
fullWidth: fullWidthProp = false,
|
|
98
100
|
...rest
|
|
99
101
|
}, ref) => {
|
|
102
|
+
const {
|
|
103
|
+
buttonType: buttonTypeContext,
|
|
104
|
+
size: sizeContext,
|
|
105
|
+
iconPosition: iconPositionContext,
|
|
106
|
+
fullWidth: fullWidthContext
|
|
107
|
+
} = useContext(ButtonBarContext);
|
|
108
|
+
const buttonType = buttonTypeContext || buttonTypeProp;
|
|
109
|
+
const size = sizeContext || sizeProp;
|
|
110
|
+
const iconPosition = iconPositionContext || iconPositionProp;
|
|
111
|
+
const fullWidth = fullWidthContext || fullWidthProp;
|
|
100
112
|
!!!(children || iconType) ? process.env.NODE_ENV !== "production" ? invariant(false, "Either prop `iconType` must be defined or this node must have children.") : invariant(false) : void 0;
|
|
101
113
|
|
|
102
114
|
if (subtext) {
|
|
@@ -108,8 +120,12 @@ const Button = /*#__PURE__*/React.forwardRef(({
|
|
|
108
120
|
Logger.deprecate("The `forwardRef` prop in `Button` component is deprecated and will soon be removed. Please use `ref` instead.");
|
|
109
121
|
}
|
|
110
122
|
|
|
123
|
+
if (!deprecatedDashedButtonWarnTriggered && buttonType === "dashed") {
|
|
124
|
+
deprecatedDashedButtonWarnTriggered = true;
|
|
125
|
+
Logger.deprecate("The `dashed` variant of the `buttonType` prop for `Button` component is deprecated and will soon be removed.");
|
|
126
|
+
}
|
|
127
|
+
|
|
111
128
|
const [internalRef, setInternalRef] = useState();
|
|
112
|
-
const buttonType = buttonTypeProp;
|
|
113
129
|
let paddingX;
|
|
114
130
|
|
|
115
131
|
const handleLinkKeyDown = event => {
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { SpaceProps } from "styled-system";
|
|
3
|
-
export interface
|
|
4
|
-
/** Button or IconButton Elements, to be rendered inside the component */
|
|
5
|
-
children: React.ReactNode;
|
|
3
|
+
export interface ButtonBarContextProps {
|
|
6
4
|
/** Apply fullWidth style to the button bar */
|
|
7
5
|
fullWidth?: boolean;
|
|
8
6
|
/** Defines an Icon position for buttons: "before" | "after" */
|
|
9
7
|
iconPosition?: "before" | "after";
|
|
10
8
|
/** Assigns a size to the buttons: "small" | "medium" | "large" */
|
|
11
9
|
size?: "small" | "medium" | "large";
|
|
10
|
+
/** Color variants for new business themes: "primary" | "secondary" | "tertiary" | "darkBackground" */
|
|
11
|
+
buttonType?: "primary" | "secondary" | "primary";
|
|
12
|
+
}
|
|
13
|
+
export interface ButtonBarProps extends ButtonBarContextProps, SpaceProps {
|
|
14
|
+
/** Button or IconButton Elements, to be rendered inside the component */
|
|
15
|
+
children: React.ReactNode;
|
|
12
16
|
}
|
|
17
|
+
export declare const ButtonBarContext: React.Context<ButtonBarContextProps>;
|
|
13
18
|
export declare const ButtonBar: {
|
|
14
19
|
({ children, size, iconPosition, fullWidth, ...rest }: ButtonBarProps): JSX.Element;
|
|
15
20
|
displayName: string;
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
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); }
|
|
2
2
|
|
|
3
|
-
import React
|
|
3
|
+
import React from "react";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
|
-
import invariant from "invariant";
|
|
6
5
|
import StyledButtonBar from "./button-bar.style";
|
|
7
|
-
|
|
8
|
-
import IconButton from "../icon-button";
|
|
6
|
+
export const ButtonBarContext = /*#__PURE__*/React.createContext({});
|
|
9
7
|
|
|
10
8
|
const ButtonBar = ({
|
|
11
9
|
children,
|
|
@@ -13,39 +11,20 @@ const ButtonBar = ({
|
|
|
13
11
|
iconPosition = "before",
|
|
14
12
|
fullWidth = false,
|
|
15
13
|
...rest
|
|
16
|
-
}) => {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
!hasProperChildren ? process.env.NODE_ENV !== "production" ? invariant(false, "ButtonBar accepts only `Button` or `IconButton` elements.") : invariant(false) : void 0;
|
|
28
|
-
|
|
29
|
-
const getBtnProps = child => {
|
|
30
|
-
var _child$props, _child$props2, _child$props2$childre, _child$props2$childre2;
|
|
31
|
-
|
|
32
|
-
const btnProps = { ...child.props,
|
|
33
|
-
buttonType: "secondary",
|
|
34
|
-
size,
|
|
35
|
-
iconPosition,
|
|
36
|
-
fullWidth,
|
|
37
|
-
"aria-label": child.type === IconButton ? ((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.ariaLabel) || ((_child$props2 = child.props) === null || _child$props2 === void 0 ? void 0 : (_child$props2$childre = _child$props2.children) === null || _child$props2$childre === void 0 ? void 0 : (_child$props2$childre2 = _child$props2$childre.props) === null || _child$props2$childre2 === void 0 ? void 0 : _child$props2$childre2.type) : ""
|
|
38
|
-
};
|
|
39
|
-
return btnProps;
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
return /*#__PURE__*/React.createElement(StyledButtonBar, _extends({}, rest, {
|
|
43
|
-
fullWidth: fullWidth,
|
|
44
|
-
size: size
|
|
45
|
-
}), React.Children.map(children, child => /*#__PURE__*/React.createElement(child.type, getBtnProps(child))));
|
|
46
|
-
};
|
|
14
|
+
}) => /*#__PURE__*/React.createElement(StyledButtonBar, _extends({}, rest, {
|
|
15
|
+
fullWidth: fullWidth,
|
|
16
|
+
size: size
|
|
17
|
+
}), /*#__PURE__*/React.createElement(ButtonBarContext.Provider, {
|
|
18
|
+
value: {
|
|
19
|
+
buttonType: "secondary",
|
|
20
|
+
size,
|
|
21
|
+
iconPosition,
|
|
22
|
+
fullWidth
|
|
23
|
+
}
|
|
24
|
+
}, children));
|
|
47
25
|
|
|
48
26
|
ButtonBar.propTypes = {
|
|
27
|
+
"buttonType": PropTypes.oneOf(["primary", "secondary"]),
|
|
49
28
|
"children": PropTypes.node,
|
|
50
29
|
"fullWidth": PropTypes.bool,
|
|
51
30
|
"iconPosition": PropTypes.oneOf(["after", "before"]),
|
|
@@ -52,6 +52,9 @@ I18nProvider.propTypes = {
|
|
|
52
52
|
"link": PropTypes.shape({
|
|
53
53
|
"skipLinkLabel": PropTypes.func.isRequired
|
|
54
54
|
}),
|
|
55
|
+
"loader": PropTypes.shape({
|
|
56
|
+
"loading": PropTypes.func.isRequired
|
|
57
|
+
}),
|
|
55
58
|
"locale": PropTypes.func,
|
|
56
59
|
"message": PropTypes.shape({
|
|
57
60
|
"closeButtonAriaLabel": PropTypes.func.isRequired
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
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); }
|
|
2
2
|
|
|
3
|
-
import React, { useState, useCallback } from "react";
|
|
3
|
+
import React, { useState, useCallback, useContext } from "react";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
5
|
import Events from "../../__internal__/utils/helpers/events";
|
|
6
6
|
import StyledIconButton from "./icon-button.style";
|
|
7
7
|
import { TooltipProvider } from "../../__internal__/tooltip-provider";
|
|
8
|
+
import { ButtonBarContext } from "../button-bar/button-bar.component";
|
|
8
9
|
const IconButton = /*#__PURE__*/React.forwardRef(({
|
|
9
10
|
"aria-label": ariaLabel,
|
|
10
11
|
onAction,
|
|
@@ -12,7 +13,11 @@ const IconButton = /*#__PURE__*/React.forwardRef(({
|
|
|
12
13
|
disabled,
|
|
13
14
|
...rest
|
|
14
15
|
}, ref) => {
|
|
16
|
+
var _internalRef$querySel;
|
|
17
|
+
|
|
15
18
|
const [internalRef, setInternalRef] = useState();
|
|
19
|
+
const context = useContext(ButtonBarContext);
|
|
20
|
+
const ariaLabelValue = Object.keys(context).length ? ariaLabel || (internalRef === null || internalRef === void 0 ? void 0 : (_internalRef$querySel = internalRef.querySelector("[data-component='icon']")) === null || _internalRef$querySel === void 0 ? void 0 : _internalRef$querySel.getAttribute("type")) || undefined : ariaLabel;
|
|
16
21
|
|
|
17
22
|
const handleKeyDown = e => {
|
|
18
23
|
if (Events.isEnterKey(e) || Events.isSpaceKey(e)) {
|
|
@@ -36,7 +41,7 @@ const IconButton = /*#__PURE__*/React.forwardRef(({
|
|
|
36
41
|
return /*#__PURE__*/React.createElement(StyledIconButton, _extends({
|
|
37
42
|
p: 0
|
|
38
43
|
}, rest, {
|
|
39
|
-
"aria-label":
|
|
44
|
+
"aria-label": ariaLabelValue,
|
|
40
45
|
onKeyDown: handleKeyDown,
|
|
41
46
|
onClick: handleOnClick,
|
|
42
47
|
ref: setRefs,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { MarginProps } from "styled-system";
|
|
3
|
+
import { TagProps } from "../../__internal__/utils/helpers/tags/tags";
|
|
3
4
|
import { StyledLoaderSquareProps } from "./loader-square.style";
|
|
4
|
-
export interface LoaderProps extends StyledLoaderSquareProps, MarginProps {
|
|
5
|
-
/** Specify
|
|
5
|
+
export interface LoaderProps extends StyledLoaderSquareProps, MarginProps, TagProps {
|
|
6
|
+
/** Specify a custom accessible name for the Loader component */
|
|
6
7
|
"aria-label"?: string;
|
|
7
8
|
}
|
|
8
|
-
export declare const Loader: ({ "aria-label": ariaLabel, isInsideButton, isActive,
|
|
9
|
+
export declare const Loader: ({ "aria-label": ariaLabel, size, isInsideButton, isActive, ...rest }: LoaderProps) => JSX.Element;
|
|
9
10
|
export default Loader;
|
|
@@ -2,21 +2,26 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
|
|
|
2
2
|
|
|
3
3
|
import React from "react";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
|
+
import { filterStyledSystemMarginProps } from "../../style/utils";
|
|
6
|
+
import useMediaQuery from "../../hooks/useMediaQuery";
|
|
7
|
+
import useLocale from "../../hooks/__internal__/useLocale";
|
|
5
8
|
import tagComponent from "../../__internal__/utils/helpers/tags/tags";
|
|
6
9
|
import StyledLoader from "./loader.style";
|
|
7
10
|
import StyledLoaderSquare from "./loader-square.style";
|
|
8
11
|
|
|
9
12
|
const Loader = ({
|
|
10
|
-
"aria-label": ariaLabel
|
|
13
|
+
"aria-label": ariaLabel,
|
|
14
|
+
size = "medium",
|
|
11
15
|
isInsideButton,
|
|
12
16
|
isActive = true,
|
|
13
|
-
size = "medium",
|
|
14
17
|
...rest
|
|
15
18
|
}) => {
|
|
19
|
+
const l = useLocale();
|
|
20
|
+
const reduceMotion = !useMediaQuery("screen and (prefers-reduced-motion: no-preference)");
|
|
16
21
|
return /*#__PURE__*/React.createElement(StyledLoader, _extends({
|
|
17
|
-
"aria-label": ariaLabel,
|
|
22
|
+
"aria-label": ariaLabel || l.loader.loading(),
|
|
18
23
|
role: "progressbar"
|
|
19
|
-
}, tagComponent("loader", rest), rest), /*#__PURE__*/React.createElement(StyledLoaderSquare, {
|
|
24
|
+
}, tagComponent("loader", rest), filterStyledSystemMarginProps(rest)), reduceMotion ? l.loader.loading() : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(StyledLoaderSquare, {
|
|
20
25
|
isInsideButton: isInsideButton,
|
|
21
26
|
isActive: isActive,
|
|
22
27
|
size: size
|
|
@@ -28,11 +33,14 @@ const Loader = ({
|
|
|
28
33
|
isInsideButton: isInsideButton,
|
|
29
34
|
isActive: isActive,
|
|
30
35
|
size: size
|
|
31
|
-
}));
|
|
36
|
+
})));
|
|
32
37
|
};
|
|
33
38
|
|
|
34
39
|
Loader.propTypes = {
|
|
35
40
|
"aria-label": PropTypes.string,
|
|
41
|
+
"data-component": PropTypes.string,
|
|
42
|
+
"data-element": PropTypes.string,
|
|
43
|
+
"data-role": PropTypes.string,
|
|
36
44
|
"isActive": PropTypes.bool,
|
|
37
45
|
"isInsideButton": PropTypes.bool,
|
|
38
46
|
"m": PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.oneOf([null]), PropTypes.number, PropTypes.shape({
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { MarginProps } from "styled-system";
|
|
3
|
+
import { TagProps } from "../../__internal__/utils/helpers/tags/tags";
|
|
3
4
|
import { StyledLoaderBarProps } from "./loader-bar.style";
|
|
4
|
-
export interface LoaderBarProps extends StyledLoaderBarProps, MarginProps {
|
|
5
|
+
export interface LoaderBarProps extends StyledLoaderBarProps, MarginProps, TagProps {
|
|
5
6
|
}
|
|
6
7
|
export declare const LoaderBar: {
|
|
7
8
|
({ size, ...rest }: LoaderBarProps): JSX.Element;
|
|
@@ -2,6 +2,9 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
|
|
|
2
2
|
|
|
3
3
|
import React from "react";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
|
+
import { filterStyledSystemMarginProps } from "../../style/utils";
|
|
6
|
+
import useMediaQuery from "../../hooks/useMediaQuery";
|
|
7
|
+
import useLocale from "../../hooks/__internal__/useLocale";
|
|
5
8
|
import tagComponent from "../../__internal__/utils/helpers/tags/tags";
|
|
6
9
|
import StyledLoaderBar, { InnerBar, StyledLoader } from "./loader-bar.style";
|
|
7
10
|
|
|
@@ -9,7 +12,12 @@ const LoaderBar = ({
|
|
|
9
12
|
size = "medium",
|
|
10
13
|
...rest
|
|
11
14
|
}) => {
|
|
12
|
-
|
|
15
|
+
const l = useLocale();
|
|
16
|
+
const reduceMotion = !useMediaQuery("screen and (prefers-reduced-motion: no-preference)");
|
|
17
|
+
return /*#__PURE__*/React.createElement(StyledLoader, _extends({
|
|
18
|
+
"aria-label": l.loader.loading(),
|
|
19
|
+
role: "progressbar"
|
|
20
|
+
}, tagComponent("loader-bar", rest), filterStyledSystemMarginProps(rest)), reduceMotion ? l.loader.loading() : /*#__PURE__*/React.createElement(StyledLoaderBar, {
|
|
13
21
|
size: size
|
|
14
22
|
}, /*#__PURE__*/React.createElement(InnerBar, {
|
|
15
23
|
size: size
|
|
@@ -17,6 +25,9 @@ const LoaderBar = ({
|
|
|
17
25
|
};
|
|
18
26
|
|
|
19
27
|
LoaderBar.propTypes = {
|
|
28
|
+
"data-component": PropTypes.string,
|
|
29
|
+
"data-element": PropTypes.string,
|
|
30
|
+
"data-role": PropTypes.string,
|
|
20
31
|
"m": PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.oneOf([null]), PropTypes.number, PropTypes.shape({
|
|
21
32
|
"__@toStringTag": PropTypes.string.isRequired,
|
|
22
33
|
"description": PropTypes.string,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MarginProps } from "styled-system";
|
|
2
2
|
export interface StyledLoaderBarProps {
|
|
3
|
-
/** Size of the
|
|
3
|
+
/** Size of the LoaderBar. */
|
|
4
4
|
size?: "small" | "medium" | "large";
|
|
5
5
|
}
|
|
6
6
|
declare const StyledLoader: import("styled-components").StyledComponent<"div", any, StyledLoaderBarProps & MarginProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>, never>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useState, useCallback } from "react";
|
|
2
2
|
import PropTypes from "prop-types";
|
|
3
|
-
import
|
|
3
|
+
import StyledSwitch from "./switch.style";
|
|
4
4
|
import CheckableInput from "../../__internal__/checkable-input";
|
|
5
5
|
import SwitchSlider from "./__internal__/switch-slider.component";
|
|
6
6
|
import useIsAboveBreakpoint from "../../hooks/__internal__/useIsAboveBreakpoint";
|
|
@@ -103,7 +103,7 @@ const Switch = ({
|
|
|
103
103
|
return /*#__PURE__*/React.createElement(TooltipProvider, {
|
|
104
104
|
helpAriaLabel: helpAriaLabel,
|
|
105
105
|
tooltipPosition: tooltipPosition
|
|
106
|
-
}, /*#__PURE__*/React.createElement(
|
|
106
|
+
}, /*#__PURE__*/React.createElement(StyledSwitch, switchStyleProps, /*#__PURE__*/React.createElement(CheckableInput, inputProps, /*#__PURE__*/React.createElement(SwitchSlider, switchSliderProps))));
|
|
107
107
|
};
|
|
108
108
|
|
|
109
109
|
Switch.propTypes = {
|
|
@@ -26,6 +26,7 @@ const StyledSwitch = styled.div`
|
|
|
26
26
|
box-sizing: border-box;
|
|
27
27
|
height: 24px;
|
|
28
28
|
width: 60px;
|
|
29
|
+
min-width: fit-content;
|
|
29
30
|
flex-basis: 100%;
|
|
30
31
|
margin-left: 0;
|
|
31
32
|
}
|
|
@@ -125,6 +126,7 @@ const StyledSwitch = styled.div`
|
|
|
125
126
|
${StyledCheckableInput}, ${HiddenCheckableInputStyle}, ${StyledSwitchSlider} {
|
|
126
127
|
height: 40px;
|
|
127
128
|
width: 78px;
|
|
129
|
+
min-width: fit-content;
|
|
128
130
|
}
|
|
129
131
|
|
|
130
132
|
${labelInline && !fieldHelpInline && reverse && css`
|
package/esm/locales/en-gb.js
CHANGED
|
@@ -60,6 +60,12 @@ const enGB = {
|
|
|
60
60
|
heading: {
|
|
61
61
|
backLinkAriaLabel: () => "Back"
|
|
62
62
|
},
|
|
63
|
+
link: {
|
|
64
|
+
skipLinkLabel: () => "Skip to main content"
|
|
65
|
+
},
|
|
66
|
+
loader: {
|
|
67
|
+
loading: () => "Loading"
|
|
68
|
+
},
|
|
63
69
|
message: {
|
|
64
70
|
closeButtonAriaLabel: () => "Close"
|
|
65
71
|
},
|
|
@@ -94,9 +100,6 @@ const enGB = {
|
|
|
94
100
|
placeholder: () => "Please Select...",
|
|
95
101
|
noResultsForTerm: term => `No results for "${term}"`
|
|
96
102
|
},
|
|
97
|
-
link: {
|
|
98
|
-
skipLinkLabel: () => "Skip to main content"
|
|
99
|
-
},
|
|
100
103
|
sidebar: {
|
|
101
104
|
ariaLabels: {
|
|
102
105
|
close: () => "Close"
|
package/esm/locales/locale.d.ts
CHANGED
|
@@ -36,6 +36,12 @@ interface Locale {
|
|
|
36
36
|
heading: {
|
|
37
37
|
backLinkAriaLabel: () => string;
|
|
38
38
|
};
|
|
39
|
+
link: {
|
|
40
|
+
skipLinkLabel: () => string;
|
|
41
|
+
};
|
|
42
|
+
loader: {
|
|
43
|
+
loading: () => string;
|
|
44
|
+
};
|
|
39
45
|
message: {
|
|
40
46
|
closeButtonAriaLabel: () => string;
|
|
41
47
|
};
|
|
@@ -67,9 +73,6 @@ interface Locale {
|
|
|
67
73
|
placeholder: () => string;
|
|
68
74
|
noResultsForTerm: (term: string) => string;
|
|
69
75
|
};
|
|
70
|
-
link: {
|
|
71
|
-
skipLinkLabel: () => string;
|
|
72
|
-
};
|
|
73
76
|
sidebar: {
|
|
74
77
|
ariaLabels: {
|
|
75
78
|
close: () => string;
|
package/esm/locales/pl-pl.js
CHANGED
|
@@ -58,6 +58,12 @@ const plPL = {
|
|
|
58
58
|
heading: {
|
|
59
59
|
backLinkAriaLabel: () => "Wstecz"
|
|
60
60
|
},
|
|
61
|
+
link: {
|
|
62
|
+
skipLinkLabel: () => "Przejdź do treści"
|
|
63
|
+
},
|
|
64
|
+
loader: {
|
|
65
|
+
loading: () => "Ładowanie"
|
|
66
|
+
},
|
|
61
67
|
message: {
|
|
62
68
|
closeButtonAriaLabel: () => "Zamknij"
|
|
63
69
|
},
|
|
@@ -92,9 +98,6 @@ const plPL = {
|
|
|
92
98
|
placeholder: () => "Proszę wybierz...",
|
|
93
99
|
noResultsForTerm: term => `Brak wyników dla "${term}"`
|
|
94
100
|
},
|
|
95
|
-
link: {
|
|
96
|
-
skipLinkLabel: () => "Przejdź do treści"
|
|
97
|
-
},
|
|
98
101
|
sidebar: {
|
|
99
102
|
ariaLabels: {
|
|
100
103
|
close: () => "Zamknij"
|
|
@@ -21,6 +21,8 @@ var _tooltipProvider = require("../../__internal__/tooltip-provider");
|
|
|
21
21
|
|
|
22
22
|
var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
|
|
23
23
|
|
|
24
|
+
var _buttonBar = require("../button-bar/button-bar.component");
|
|
25
|
+
|
|
24
26
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
27
|
|
|
26
28
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -95,9 +97,10 @@ renderChildren.propTypes = {
|
|
|
95
97
|
}
|
|
96
98
|
};
|
|
97
99
|
let deprecatedForwardRefWarnTriggered = false;
|
|
100
|
+
let deprecatedDashedButtonWarnTriggered = false;
|
|
98
101
|
|
|
99
102
|
const Button = /*#__PURE__*/_react.default.forwardRef(({
|
|
100
|
-
size = "medium",
|
|
103
|
+
size: sizeProp = "medium",
|
|
101
104
|
subtext = "",
|
|
102
105
|
children,
|
|
103
106
|
forwardRef,
|
|
@@ -106,7 +109,7 @@ const Button = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
106
109
|
destructive = false,
|
|
107
110
|
buttonType: buttonTypeProp = "secondary",
|
|
108
111
|
iconType,
|
|
109
|
-
iconPosition = "before",
|
|
112
|
+
iconPosition: iconPositionProp = "before",
|
|
110
113
|
href,
|
|
111
114
|
m = 0,
|
|
112
115
|
px,
|
|
@@ -115,9 +118,19 @@ const Button = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
115
118
|
rel,
|
|
116
119
|
iconTooltipMessage,
|
|
117
120
|
iconTooltipPosition,
|
|
118
|
-
fullWidth = false,
|
|
121
|
+
fullWidth: fullWidthProp = false,
|
|
119
122
|
...rest
|
|
120
123
|
}, ref) => {
|
|
124
|
+
const {
|
|
125
|
+
buttonType: buttonTypeContext,
|
|
126
|
+
size: sizeContext,
|
|
127
|
+
iconPosition: iconPositionContext,
|
|
128
|
+
fullWidth: fullWidthContext
|
|
129
|
+
} = (0, _react.useContext)(_buttonBar.ButtonBarContext);
|
|
130
|
+
const buttonType = buttonTypeContext || buttonTypeProp;
|
|
131
|
+
const size = sizeContext || sizeProp;
|
|
132
|
+
const iconPosition = iconPositionContext || iconPositionProp;
|
|
133
|
+
const fullWidth = fullWidthContext || fullWidthProp;
|
|
121
134
|
!!!(children || iconType) ? process.env.NODE_ENV !== "production" ? (0, _invariant.default)(false, "Either prop `iconType` must be defined or this node must have children.") : (0, _invariant.default)(false) : void 0;
|
|
122
135
|
|
|
123
136
|
if (subtext) {
|
|
@@ -130,8 +143,13 @@ const Button = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
130
143
|
_logger.default.deprecate("The `forwardRef` prop in `Button` component is deprecated and will soon be removed. Please use `ref` instead.");
|
|
131
144
|
}
|
|
132
145
|
|
|
146
|
+
if (!deprecatedDashedButtonWarnTriggered && buttonType === "dashed") {
|
|
147
|
+
deprecatedDashedButtonWarnTriggered = true;
|
|
148
|
+
|
|
149
|
+
_logger.default.deprecate("The `dashed` variant of the `buttonType` prop for `Button` component is deprecated and will soon be removed.");
|
|
150
|
+
}
|
|
151
|
+
|
|
133
152
|
const [internalRef, setInternalRef] = (0, _react.useState)();
|
|
134
|
-
const buttonType = buttonTypeProp;
|
|
135
153
|
let paddingX;
|
|
136
154
|
|
|
137
155
|
const handleLinkKeyDown = event => {
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { SpaceProps } from "styled-system";
|
|
3
|
-
export interface
|
|
4
|
-
/** Button or IconButton Elements, to be rendered inside the component */
|
|
5
|
-
children: React.ReactNode;
|
|
3
|
+
export interface ButtonBarContextProps {
|
|
6
4
|
/** Apply fullWidth style to the button bar */
|
|
7
5
|
fullWidth?: boolean;
|
|
8
6
|
/** Defines an Icon position for buttons: "before" | "after" */
|
|
9
7
|
iconPosition?: "before" | "after";
|
|
10
8
|
/** Assigns a size to the buttons: "small" | "medium" | "large" */
|
|
11
9
|
size?: "small" | "medium" | "large";
|
|
10
|
+
/** Color variants for new business themes: "primary" | "secondary" | "tertiary" | "darkBackground" */
|
|
11
|
+
buttonType?: "primary" | "secondary" | "primary";
|
|
12
|
+
}
|
|
13
|
+
export interface ButtonBarProps extends ButtonBarContextProps, SpaceProps {
|
|
14
|
+
/** Button or IconButton Elements, to be rendered inside the component */
|
|
15
|
+
children: React.ReactNode;
|
|
12
16
|
}
|
|
17
|
+
export declare const ButtonBarContext: React.Context<ButtonBarContextProps>;
|
|
13
18
|
export declare const ButtonBar: {
|
|
14
19
|
({ children, size, iconPosition, fullWidth, ...rest }: ButtonBarProps): JSX.Element;
|
|
15
20
|
displayName: string;
|
|
@@ -3,27 +3,21 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = exports.ButtonBar = void 0;
|
|
6
|
+
exports.default = exports.ButtonBar = exports.ButtonBarContext = void 0;
|
|
7
7
|
|
|
8
|
-
var _react =
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
|
|
12
|
-
var _invariant = _interopRequireDefault(require("invariant"));
|
|
13
|
-
|
|
14
12
|
var _buttonBar = _interopRequireDefault(require("./button-bar.style"));
|
|
15
13
|
|
|
16
|
-
var _button = _interopRequireDefault(require("../button"));
|
|
17
|
-
|
|
18
|
-
var _iconButton = _interopRequireDefault(require("../icon-button"));
|
|
19
|
-
|
|
20
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
15
|
|
|
22
|
-
function
|
|
16
|
+
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); }
|
|
23
17
|
|
|
24
|
-
|
|
18
|
+
const ButtonBarContext = /*#__PURE__*/_react.default.createContext({});
|
|
25
19
|
|
|
26
|
-
|
|
20
|
+
exports.ButtonBarContext = ButtonBarContext;
|
|
27
21
|
|
|
28
22
|
const ButtonBar = ({
|
|
29
23
|
children,
|
|
@@ -31,41 +25,21 @@ const ButtonBar = ({
|
|
|
31
25
|
iconPosition = "before",
|
|
32
26
|
fullWidth = false,
|
|
33
27
|
...rest
|
|
34
|
-
}) => {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}, [children]);
|
|
46
|
-
!hasProperChildren ? process.env.NODE_ENV !== "production" ? (0, _invariant.default)(false, "ButtonBar accepts only `Button` or `IconButton` elements.") : (0, _invariant.default)(false) : void 0;
|
|
47
|
-
|
|
48
|
-
const getBtnProps = child => {
|
|
49
|
-
var _child$props, _child$props2, _child$props2$childre, _child$props2$childre2;
|
|
50
|
-
|
|
51
|
-
const btnProps = { ...child.props,
|
|
52
|
-
buttonType: "secondary",
|
|
53
|
-
size,
|
|
54
|
-
iconPosition,
|
|
55
|
-
fullWidth,
|
|
56
|
-
"aria-label": child.type === _iconButton.default ? ((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.ariaLabel) || ((_child$props2 = child.props) === null || _child$props2 === void 0 ? void 0 : (_child$props2$childre = _child$props2.children) === null || _child$props2$childre === void 0 ? void 0 : (_child$props2$childre2 = _child$props2$childre.props) === null || _child$props2$childre2 === void 0 ? void 0 : _child$props2$childre2.type) : ""
|
|
57
|
-
};
|
|
58
|
-
return btnProps;
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
return /*#__PURE__*/_react.default.createElement(_buttonBar.default, _extends({}, rest, {
|
|
62
|
-
fullWidth: fullWidth,
|
|
63
|
-
size: size
|
|
64
|
-
}), _react.default.Children.map(children, child => /*#__PURE__*/_react.default.createElement(child.type, getBtnProps(child))));
|
|
65
|
-
};
|
|
28
|
+
}) => /*#__PURE__*/_react.default.createElement(_buttonBar.default, _extends({}, rest, {
|
|
29
|
+
fullWidth: fullWidth,
|
|
30
|
+
size: size
|
|
31
|
+
}), /*#__PURE__*/_react.default.createElement(ButtonBarContext.Provider, {
|
|
32
|
+
value: {
|
|
33
|
+
buttonType: "secondary",
|
|
34
|
+
size,
|
|
35
|
+
iconPosition,
|
|
36
|
+
fullWidth
|
|
37
|
+
}
|
|
38
|
+
}, children));
|
|
66
39
|
|
|
67
40
|
exports.ButtonBar = ButtonBar;
|
|
68
41
|
ButtonBar.propTypes = {
|
|
42
|
+
"buttonType": _propTypes.default.oneOf(["primary", "secondary"]),
|
|
69
43
|
"children": _propTypes.default.node,
|
|
70
44
|
"fullWidth": _propTypes.default.bool,
|
|
71
45
|
"iconPosition": _propTypes.default.oneOf(["after", "before"]),
|
|
@@ -66,6 +66,9 @@ I18nProvider.propTypes = {
|
|
|
66
66
|
"link": _propTypes.default.shape({
|
|
67
67
|
"skipLinkLabel": _propTypes.default.func.isRequired
|
|
68
68
|
}),
|
|
69
|
+
"loader": _propTypes.default.shape({
|
|
70
|
+
"loading": _propTypes.default.func.isRequired
|
|
71
|
+
}),
|
|
69
72
|
"locale": _propTypes.default.func,
|
|
70
73
|
"message": _propTypes.default.shape({
|
|
71
74
|
"closeButtonAriaLabel": _propTypes.default.func.isRequired
|
|
@@ -15,6 +15,8 @@ var _iconButton = _interopRequireDefault(require("./icon-button.style"));
|
|
|
15
15
|
|
|
16
16
|
var _tooltipProvider = require("../../__internal__/tooltip-provider");
|
|
17
17
|
|
|
18
|
+
var _buttonBar = require("../button-bar/button-bar.component");
|
|
19
|
+
|
|
18
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
21
|
|
|
20
22
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -30,7 +32,11 @@ const IconButton = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
30
32
|
disabled,
|
|
31
33
|
...rest
|
|
32
34
|
}, ref) => {
|
|
35
|
+
var _internalRef$querySel;
|
|
36
|
+
|
|
33
37
|
const [internalRef, setInternalRef] = (0, _react.useState)();
|
|
38
|
+
const context = (0, _react.useContext)(_buttonBar.ButtonBarContext);
|
|
39
|
+
const ariaLabelValue = Object.keys(context).length ? ariaLabel || (internalRef === null || internalRef === void 0 ? void 0 : (_internalRef$querySel = internalRef.querySelector("[data-component='icon']")) === null || _internalRef$querySel === void 0 ? void 0 : _internalRef$querySel.getAttribute("type")) || undefined : ariaLabel;
|
|
34
40
|
|
|
35
41
|
const handleKeyDown = e => {
|
|
36
42
|
if (_events.default.isEnterKey(e) || _events.default.isSpaceKey(e)) {
|
|
@@ -54,7 +60,7 @@ const IconButton = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
54
60
|
return /*#__PURE__*/_react.default.createElement(_iconButton.default, _extends({
|
|
55
61
|
p: 0
|
|
56
62
|
}, rest, {
|
|
57
|
-
"aria-label":
|
|
63
|
+
"aria-label": ariaLabelValue,
|
|
58
64
|
onKeyDown: handleKeyDown,
|
|
59
65
|
onClick: handleOnClick,
|
|
60
66
|
ref: setRefs,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { MarginProps } from "styled-system";
|
|
3
|
+
import { TagProps } from "../../__internal__/utils/helpers/tags/tags";
|
|
3
4
|
import { StyledLoaderSquareProps } from "./loader-square.style";
|
|
4
|
-
export interface LoaderProps extends StyledLoaderSquareProps, MarginProps {
|
|
5
|
-
/** Specify
|
|
5
|
+
export interface LoaderProps extends StyledLoaderSquareProps, MarginProps, TagProps {
|
|
6
|
+
/** Specify a custom accessible name for the Loader component */
|
|
6
7
|
"aria-label"?: string;
|
|
7
8
|
}
|
|
8
|
-
export declare const Loader: ({ "aria-label": ariaLabel, isInsideButton, isActive,
|
|
9
|
+
export declare const Loader: ({ "aria-label": ariaLabel, size, isInsideButton, isActive, ...rest }: LoaderProps) => JSX.Element;
|
|
9
10
|
export default Loader;
|
|
@@ -9,6 +9,12 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
|
|
12
|
+
var _utils = require("../../style/utils");
|
|
13
|
+
|
|
14
|
+
var _useMediaQuery = _interopRequireDefault(require("../../hooks/useMediaQuery"));
|
|
15
|
+
|
|
16
|
+
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
17
|
+
|
|
12
18
|
var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
|
|
13
19
|
|
|
14
20
|
var _loader = _interopRequireDefault(require("./loader.style"));
|
|
@@ -20,16 +26,18 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
20
26
|
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); }
|
|
21
27
|
|
|
22
28
|
const Loader = ({
|
|
23
|
-
"aria-label": ariaLabel
|
|
29
|
+
"aria-label": ariaLabel,
|
|
30
|
+
size = "medium",
|
|
24
31
|
isInsideButton,
|
|
25
32
|
isActive = true,
|
|
26
|
-
size = "medium",
|
|
27
33
|
...rest
|
|
28
34
|
}) => {
|
|
35
|
+
const l = (0, _useLocale.default)();
|
|
36
|
+
const reduceMotion = !(0, _useMediaQuery.default)("screen and (prefers-reduced-motion: no-preference)");
|
|
29
37
|
return /*#__PURE__*/_react.default.createElement(_loader.default, _extends({
|
|
30
|
-
"aria-label": ariaLabel,
|
|
38
|
+
"aria-label": ariaLabel || l.loader.loading(),
|
|
31
39
|
role: "progressbar"
|
|
32
|
-
}, (0, _tags.default)("loader", rest), rest), /*#__PURE__*/_react.default.createElement(_loaderSquare.default, {
|
|
40
|
+
}, (0, _tags.default)("loader", rest), (0, _utils.filterStyledSystemMarginProps)(rest)), reduceMotion ? l.loader.loading() : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_loaderSquare.default, {
|
|
33
41
|
isInsideButton: isInsideButton,
|
|
34
42
|
isActive: isActive,
|
|
35
43
|
size: size
|
|
@@ -41,12 +49,15 @@ const Loader = ({
|
|
|
41
49
|
isInsideButton: isInsideButton,
|
|
42
50
|
isActive: isActive,
|
|
43
51
|
size: size
|
|
44
|
-
}));
|
|
52
|
+
})));
|
|
45
53
|
};
|
|
46
54
|
|
|
47
55
|
exports.Loader = Loader;
|
|
48
56
|
Loader.propTypes = {
|
|
49
57
|
"aria-label": _propTypes.default.string,
|
|
58
|
+
"data-component": _propTypes.default.string,
|
|
59
|
+
"data-element": _propTypes.default.string,
|
|
60
|
+
"data-role": _propTypes.default.string,
|
|
50
61
|
"isActive": _propTypes.default.bool,
|
|
51
62
|
"isInsideButton": _propTypes.default.bool,
|
|
52
63
|
"m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { MarginProps } from "styled-system";
|
|
3
|
+
import { TagProps } from "../../__internal__/utils/helpers/tags/tags";
|
|
3
4
|
import { StyledLoaderBarProps } from "./loader-bar.style";
|
|
4
|
-
export interface LoaderBarProps extends StyledLoaderBarProps, MarginProps {
|
|
5
|
+
export interface LoaderBarProps extends StyledLoaderBarProps, MarginProps, TagProps {
|
|
5
6
|
}
|
|
6
7
|
export declare const LoaderBar: {
|
|
7
8
|
({ size, ...rest }: LoaderBarProps): JSX.Element;
|
|
@@ -9,6 +9,12 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
|
|
12
|
+
var _utils = require("../../style/utils");
|
|
13
|
+
|
|
14
|
+
var _useMediaQuery = _interopRequireDefault(require("../../hooks/useMediaQuery"));
|
|
15
|
+
|
|
16
|
+
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
17
|
+
|
|
12
18
|
var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
|
|
13
19
|
|
|
14
20
|
var _loaderBar = _interopRequireWildcard(require("./loader-bar.style"));
|
|
@@ -25,7 +31,12 @@ const LoaderBar = ({
|
|
|
25
31
|
size = "medium",
|
|
26
32
|
...rest
|
|
27
33
|
}) => {
|
|
28
|
-
|
|
34
|
+
const l = (0, _useLocale.default)();
|
|
35
|
+
const reduceMotion = !(0, _useMediaQuery.default)("screen and (prefers-reduced-motion: no-preference)");
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(_loaderBar.StyledLoader, _extends({
|
|
37
|
+
"aria-label": l.loader.loading(),
|
|
38
|
+
role: "progressbar"
|
|
39
|
+
}, (0, _tags.default)("loader-bar", rest), (0, _utils.filterStyledSystemMarginProps)(rest)), reduceMotion ? l.loader.loading() : /*#__PURE__*/_react.default.createElement(_loaderBar.default, {
|
|
29
40
|
size: size
|
|
30
41
|
}, /*#__PURE__*/_react.default.createElement(_loaderBar.InnerBar, {
|
|
31
42
|
size: size
|
|
@@ -34,6 +45,9 @@ const LoaderBar = ({
|
|
|
34
45
|
|
|
35
46
|
exports.LoaderBar = LoaderBar;
|
|
36
47
|
LoaderBar.propTypes = {
|
|
48
|
+
"data-component": _propTypes.default.string,
|
|
49
|
+
"data-element": _propTypes.default.string,
|
|
50
|
+
"data-role": _propTypes.default.string,
|
|
37
51
|
"m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
38
52
|
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
39
53
|
"description": _propTypes.default.string,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MarginProps } from "styled-system";
|
|
2
2
|
export interface StyledLoaderBarProps {
|
|
3
|
-
/** Size of the
|
|
3
|
+
/** Size of the LoaderBar. */
|
|
4
4
|
size?: "small" | "medium" | "large";
|
|
5
5
|
}
|
|
6
6
|
declare const StyledLoader: import("styled-components").StyledComponent<"div", any, StyledLoaderBarProps & MarginProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>, never>;
|
|
@@ -34,9 +34,6 @@ const INNER_BAR_LENGTH = "128px";
|
|
|
34
34
|
const StyledLoader = _styledComponents.default.div`
|
|
35
35
|
${_styledSystem.margin}
|
|
36
36
|
text-align: center;
|
|
37
|
-
white-space: nowrap;
|
|
38
|
-
line-height: 0;
|
|
39
|
-
font-size: 0;
|
|
40
37
|
`;
|
|
41
38
|
exports.StyledLoader = StyledLoader;
|
|
42
39
|
const innerBarAnimation = (0, _styledComponents.keyframes)`
|
|
@@ -49,6 +49,7 @@ const StyledSwitch = _styledComponents.default.div`
|
|
|
49
49
|
box-sizing: border-box;
|
|
50
50
|
height: 24px;
|
|
51
51
|
width: 60px;
|
|
52
|
+
min-width: fit-content;
|
|
52
53
|
flex-basis: 100%;
|
|
53
54
|
margin-left: 0;
|
|
54
55
|
}
|
|
@@ -148,6 +149,7 @@ const StyledSwitch = _styledComponents.default.div`
|
|
|
148
149
|
${_checkableInput.StyledCheckableInput}, ${_hiddenCheckableInput.default}, ${_switchSlider.default} {
|
|
149
150
|
height: 40px;
|
|
150
151
|
width: 78px;
|
|
152
|
+
min-width: fit-content;
|
|
151
153
|
}
|
|
152
154
|
|
|
153
155
|
${labelInline && !fieldHelpInline && reverse && (0, _styledComponents.css)`
|
package/lib/locales/en-gb.js
CHANGED
|
@@ -67,6 +67,12 @@ const enGB = {
|
|
|
67
67
|
heading: {
|
|
68
68
|
backLinkAriaLabel: () => "Back"
|
|
69
69
|
},
|
|
70
|
+
link: {
|
|
71
|
+
skipLinkLabel: () => "Skip to main content"
|
|
72
|
+
},
|
|
73
|
+
loader: {
|
|
74
|
+
loading: () => "Loading"
|
|
75
|
+
},
|
|
70
76
|
message: {
|
|
71
77
|
closeButtonAriaLabel: () => "Close"
|
|
72
78
|
},
|
|
@@ -101,9 +107,6 @@ const enGB = {
|
|
|
101
107
|
placeholder: () => "Please Select...",
|
|
102
108
|
noResultsForTerm: term => `No results for "${term}"`
|
|
103
109
|
},
|
|
104
|
-
link: {
|
|
105
|
-
skipLinkLabel: () => "Skip to main content"
|
|
106
|
-
},
|
|
107
110
|
sidebar: {
|
|
108
111
|
ariaLabels: {
|
|
109
112
|
close: () => "Close"
|
package/lib/locales/locale.d.ts
CHANGED
|
@@ -36,6 +36,12 @@ interface Locale {
|
|
|
36
36
|
heading: {
|
|
37
37
|
backLinkAriaLabel: () => string;
|
|
38
38
|
};
|
|
39
|
+
link: {
|
|
40
|
+
skipLinkLabel: () => string;
|
|
41
|
+
};
|
|
42
|
+
loader: {
|
|
43
|
+
loading: () => string;
|
|
44
|
+
};
|
|
39
45
|
message: {
|
|
40
46
|
closeButtonAriaLabel: () => string;
|
|
41
47
|
};
|
|
@@ -67,9 +73,6 @@ interface Locale {
|
|
|
67
73
|
placeholder: () => string;
|
|
68
74
|
noResultsForTerm: (term: string) => string;
|
|
69
75
|
};
|
|
70
|
-
link: {
|
|
71
|
-
skipLinkLabel: () => string;
|
|
72
|
-
};
|
|
73
76
|
sidebar: {
|
|
74
77
|
ariaLabels: {
|
|
75
78
|
close: () => string;
|
package/lib/locales/pl-pl.js
CHANGED
|
@@ -65,6 +65,12 @@ const plPL = {
|
|
|
65
65
|
heading: {
|
|
66
66
|
backLinkAriaLabel: () => "Wstecz"
|
|
67
67
|
},
|
|
68
|
+
link: {
|
|
69
|
+
skipLinkLabel: () => "Przejdź do treści"
|
|
70
|
+
},
|
|
71
|
+
loader: {
|
|
72
|
+
loading: () => "Ładowanie"
|
|
73
|
+
},
|
|
68
74
|
message: {
|
|
69
75
|
closeButtonAriaLabel: () => "Zamknij"
|
|
70
76
|
},
|
|
@@ -99,9 +105,6 @@ const plPL = {
|
|
|
99
105
|
placeholder: () => "Proszę wybierz...",
|
|
100
106
|
noResultsForTerm: term => `Brak wyników dla "${term}"`
|
|
101
107
|
},
|
|
102
|
-
link: {
|
|
103
|
-
skipLinkLabel: () => "Przejdź do treści"
|
|
104
|
-
},
|
|
105
108
|
sidebar: {
|
|
106
109
|
ariaLabels: {
|
|
107
110
|
close: () => "Zamknij"
|