carbon-react 116.2.0 → 116.2.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/action-popover/action-popover.component.js +5 -1
- package/esm/components/modal/__internal__/modal-manager.d.ts +1 -1
- package/esm/components/modal/__internal__/modal-manager.js +2 -2
- package/esm/components/modal/modal.component.js +6 -1
- package/esm/components/progress-tracker/index.d.ts +2 -1
- package/esm/components/progress-tracker/progress-tracker.component.d.ts +46 -0
- package/esm/components/progress-tracker/progress-tracker.component.js +175 -59
- package/esm/components/progress-tracker/progress-tracker.style.d.ts +8 -0
- package/esm/components/progress-tracker/progress-tracker.style.js +47 -60
- package/esm/components/select/select-list/select-list.component.js +6 -1
- package/esm/components/toast/toast.component.js +5 -1
- package/esm/hooks/__internal__/useMenuKeyboardNavigation/useMenuKeyboardNavigation.js +5 -1
- package/esm/hooks/__internal__/useModalManager/useModalManager.d.ts +8 -1
- package/esm/hooks/__internal__/useModalManager/useModalManager.js +9 -3
- package/lib/components/action-popover/action-popover.component.js +5 -1
- package/lib/components/modal/__internal__/modal-manager.d.ts +1 -1
- package/lib/components/modal/__internal__/modal-manager.js +2 -2
- package/lib/components/modal/modal.component.js +6 -1
- package/lib/components/progress-tracker/index.d.ts +2 -1
- package/lib/components/progress-tracker/progress-tracker.component.d.ts +46 -0
- package/lib/components/progress-tracker/progress-tracker.component.js +175 -62
- package/lib/components/progress-tracker/progress-tracker.style.d.ts +8 -0
- package/lib/components/progress-tracker/progress-tracker.style.js +46 -62
- package/lib/components/select/select-list/select-list.component.js +6 -1
- package/lib/components/toast/toast.component.js +5 -1
- package/lib/hooks/__internal__/useMenuKeyboardNavigation/useMenuKeyboardNavigation.js +5 -1
- package/lib/hooks/__internal__/useModalManager/useModalManager.d.ts +8 -1
- package/lib/hooks/__internal__/useModalManager/useModalManager.js +9 -3
- package/package.json +2 -2
- package/scripts/check_rfcs/check_rfcs.js +27 -12
- package/esm/components/progress-tracker/progress-tracker.d.ts +0 -40
- package/lib/components/progress-tracker/progress-tracker.d.ts +0 -40
|
@@ -73,7 +73,7 @@ let ModalManagerInstance = /*#__PURE__*/function () {
|
|
|
73
73
|
}
|
|
74
74
|
}, {
|
|
75
75
|
key: "removeModal",
|
|
76
|
-
value: function removeModal(modal) {
|
|
76
|
+
value: function removeModal(modal, triggerRefocusOnClose = true) {
|
|
77
77
|
const modalIndex = this.modalList.findIndex(({
|
|
78
78
|
modal: m
|
|
79
79
|
}) => m === modal);
|
|
@@ -93,7 +93,7 @@ let ModalManagerInstance = /*#__PURE__*/function () {
|
|
|
93
93
|
setTriggerRefocusFlag
|
|
94
94
|
} = this.getTopModal();
|
|
95
95
|
|
|
96
|
-
if (setTriggerRefocusFlag) {
|
|
96
|
+
if (setTriggerRefocusFlag && triggerRefocusOnClose) {
|
|
97
97
|
setTriggerRefocusFlag(true);
|
|
98
98
|
}
|
|
99
99
|
}
|
|
@@ -76,7 +76,12 @@ const Modal = ({
|
|
|
76
76
|
onCancel(ev);
|
|
77
77
|
}
|
|
78
78
|
}, [disableClose, disableEscKey, onCancel]);
|
|
79
|
-
(0, _useModalManager.default)(
|
|
79
|
+
(0, _useModalManager.default)({
|
|
80
|
+
open,
|
|
81
|
+
closeModal,
|
|
82
|
+
modalRef: ref,
|
|
83
|
+
setTriggerRefocusFlag
|
|
84
|
+
});
|
|
80
85
|
let background;
|
|
81
86
|
let content;
|
|
82
87
|
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export { default } from "./progress-tracker";
|
|
1
|
+
export { default } from "./progress-tracker.component";
|
|
2
|
+
export type { ProgressTrackerProps } from "./progress-tracker.component";
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { MarginProps } from "styled-system";
|
|
3
|
+
export interface ProgressTrackerProps extends MarginProps {
|
|
4
|
+
/** Specifies an aria label to the component */
|
|
5
|
+
"aria-label"?: string;
|
|
6
|
+
/** Specifies the aria describedby for the component */
|
|
7
|
+
"aria-describedby"?: string;
|
|
8
|
+
/** The value of progress to be read out to the user. */
|
|
9
|
+
"aria-valuenow"?: number;
|
|
10
|
+
/** The minimum value of the progress tracker */
|
|
11
|
+
"aria-valuemin"?: number;
|
|
12
|
+
/** The maximum value of the progress tracker */
|
|
13
|
+
"aria-valuemax"?: number;
|
|
14
|
+
/** Prop to define the human readable text alternative of aria-valuenow
|
|
15
|
+
* if aria-valuenow is not a number
|
|
16
|
+
*/
|
|
17
|
+
"aria-valuetext"?: string;
|
|
18
|
+
/** Size of the progress bar. */
|
|
19
|
+
size?: "small" | "medium" | "large";
|
|
20
|
+
/** Length of the progress bar, any valid css string. */
|
|
21
|
+
length?: string;
|
|
22
|
+
/** Current progress (percentage). */
|
|
23
|
+
progress?: number;
|
|
24
|
+
/** If error occurs. */
|
|
25
|
+
error?: boolean;
|
|
26
|
+
/** Flag to control whether the default value labels (as percentages) should be rendered. */
|
|
27
|
+
description?: string;
|
|
28
|
+
/** Value to add a description to the label */
|
|
29
|
+
showDefaultLabels?: boolean;
|
|
30
|
+
/** Value to display as current progress. */
|
|
31
|
+
currentProgressLabel?: string;
|
|
32
|
+
/** Value to display as the maximum progress limit. */
|
|
33
|
+
maxProgressLabel?: string;
|
|
34
|
+
/** Value of the preposition defined between Value1 and Value2 on the label. */
|
|
35
|
+
customValuePreposition?: string;
|
|
36
|
+
/**
|
|
37
|
+
* The position the value label are rendered in.
|
|
38
|
+
* Top/bottom apply to horizontal and left/right to vertical orientation.
|
|
39
|
+
*/
|
|
40
|
+
labelsPosition?: "top" | "bottom";
|
|
41
|
+
}
|
|
42
|
+
declare const ProgressTracker: {
|
|
43
|
+
({ "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, "aria-valuenow": ariaValueNow, "aria-valuemin": ariaValueMin, "aria-valuemax": ariaValueMax, "aria-valuetext": ariaValueText, size, length, error, progress, description, showDefaultLabels, currentProgressLabel, customValuePreposition, maxProgressLabel, labelsPosition, ...rest }: ProgressTrackerProps): JSX.Element;
|
|
44
|
+
displayName: string;
|
|
45
|
+
};
|
|
46
|
+
export default ProgressTracker;
|
|
@@ -9,14 +9,10 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
|
|
12
|
-
var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
|
|
13
|
-
|
|
14
12
|
var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
|
|
15
13
|
|
|
16
14
|
var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags"));
|
|
17
15
|
|
|
18
|
-
var _utils = require("../../style/utils");
|
|
19
|
-
|
|
20
16
|
var _progressTracker = require("./progress-tracker.style");
|
|
21
17
|
|
|
22
18
|
var _useResizeObserver = _interopRequireDefault(require("../../hooks/__internal__/useResizeObserver"));
|
|
@@ -29,8 +25,6 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
|
|
|
29
25
|
|
|
30
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); }
|
|
31
27
|
|
|
32
|
-
const marginPropTypes = (0, _utils.filterStyledSystemMarginProps)(_propTypes2.default.space);
|
|
33
|
-
|
|
34
28
|
const ProgressTracker = ({
|
|
35
29
|
"aria-label": ariaLabel = "progress tracker",
|
|
36
30
|
"aria-describedby": ariaDescribedBy,
|
|
@@ -51,11 +45,13 @@ const ProgressTracker = ({
|
|
|
51
45
|
...rest
|
|
52
46
|
}) => {
|
|
53
47
|
const l = (0, _useLocale.default)();
|
|
54
|
-
const barRef = (0, _react.useRef)();
|
|
55
|
-
const [barLength, setBarLength] = (0, _react.useState)(
|
|
48
|
+
const barRef = (0, _react.useRef)(null);
|
|
49
|
+
const [barLength, setBarLength] = (0, _react.useState)("0px");
|
|
56
50
|
const prefixLabels = labelsPosition !== "bottom";
|
|
57
51
|
const updateBarLength = (0, _react.useCallback)(() => {
|
|
58
|
-
|
|
52
|
+
var _barRef$current;
|
|
53
|
+
|
|
54
|
+
setBarLength(`${(_barRef$current = barRef.current) === null || _barRef$current === void 0 ? void 0 : _barRef$current.offsetWidth}px`);
|
|
59
55
|
}, []);
|
|
60
56
|
(0, _react.useLayoutEffect)(() => {
|
|
61
57
|
updateBarLength();
|
|
@@ -80,14 +76,13 @@ const ProgressTracker = ({
|
|
|
80
76
|
const displayedCurrentProgressLabel = label(currentProgressLabel, `${progress}%`);
|
|
81
77
|
const displayedMaxProgressLabel = label(maxProgressLabel, "100%");
|
|
82
78
|
return /*#__PURE__*/_react.default.createElement(_progressTracker.StyledValuesLabel, {
|
|
83
|
-
|
|
79
|
+
labelsPosition: labelsPosition,
|
|
84
80
|
size: size
|
|
85
81
|
}, displayedCurrentProgressLabel && /*#__PURE__*/_react.default.createElement(_progressTracker.StyledValue, null, displayedCurrentProgressLabel), displayedMaxProgressLabel && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", null, customValuePreposition || l.progressTracker.of()), /*#__PURE__*/_react.default.createElement(_progressTracker.StyledValue, null, displayedMaxProgressLabel)), description && /*#__PURE__*/_react.default.createElement(_progressTracker.StyledDescription, null, description));
|
|
86
82
|
};
|
|
87
83
|
|
|
88
84
|
const defaultValueNow = ariaValueMin + (ariaValueMax - ariaValueMin) * progress / 100;
|
|
89
85
|
return /*#__PURE__*/_react.default.createElement(_progressTracker.StyledProgressTracker, _extends({
|
|
90
|
-
size: size,
|
|
91
86
|
length: length
|
|
92
87
|
}, rest, (0, _tags.default)("progress-bar", rest), {
|
|
93
88
|
role: "progressbar",
|
|
@@ -110,60 +105,178 @@ const ProgressTracker = ({
|
|
|
110
105
|
})), !prefixLabels && renderValueLabels());
|
|
111
106
|
};
|
|
112
107
|
|
|
113
|
-
ProgressTracker.propTypes = {
|
|
114
|
-
|
|
115
|
-
/** Specifies an aria label to the component */
|
|
116
|
-
"aria-label": _propTypes.default.string,
|
|
117
|
-
|
|
118
|
-
/** Specifies the aria describedby for the component */
|
|
108
|
+
ProgressTracker.propTypes = {
|
|
119
109
|
"aria-describedby": _propTypes.default.string,
|
|
120
|
-
|
|
121
|
-
/** The value of progress to be read out to the user. */
|
|
122
|
-
"aria-valuenow": _propTypes.default.number,
|
|
123
|
-
|
|
124
|
-
/** The minimum value of the progress tracker */
|
|
125
|
-
"aria-valuemin": _propTypes.default.number,
|
|
126
|
-
|
|
127
|
-
/** The maximum value of the progress tracker */
|
|
110
|
+
"aria-label": _propTypes.default.string,
|
|
128
111
|
"aria-valuemax": _propTypes.default.number,
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
* if aria-valuenow is not a number
|
|
132
|
-
*/
|
|
112
|
+
"aria-valuemin": _propTypes.default.number,
|
|
113
|
+
"aria-valuenow": _propTypes.default.number,
|
|
133
114
|
"aria-valuetext": _propTypes.default.string,
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
length: _propTypes.default.string,
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
115
|
+
"currentProgressLabel": _propTypes.default.string,
|
|
116
|
+
"customValuePreposition": _propTypes.default.string,
|
|
117
|
+
"description": _propTypes.default.string,
|
|
118
|
+
"error": _propTypes.default.bool,
|
|
119
|
+
"labelsPosition": _propTypes.default.oneOf(["bottom", "top"]),
|
|
120
|
+
"length": _propTypes.default.string,
|
|
121
|
+
"m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
122
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
123
|
+
"description": _propTypes.default.string,
|
|
124
|
+
"toString": _propTypes.default.func.isRequired,
|
|
125
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
126
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
127
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
128
|
+
"description": _propTypes.default.string,
|
|
129
|
+
"toString": _propTypes.default.func.isRequired,
|
|
130
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
131
|
+
}), _propTypes.default.string]),
|
|
132
|
+
"margin": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
133
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
134
|
+
"description": _propTypes.default.string,
|
|
135
|
+
"toString": _propTypes.default.func.isRequired,
|
|
136
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
137
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
138
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
139
|
+
"description": _propTypes.default.string,
|
|
140
|
+
"toString": _propTypes.default.func.isRequired,
|
|
141
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
142
|
+
}), _propTypes.default.string]),
|
|
143
|
+
"marginBottom": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
144
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
145
|
+
"description": _propTypes.default.string,
|
|
146
|
+
"toString": _propTypes.default.func.isRequired,
|
|
147
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
148
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
149
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
150
|
+
"description": _propTypes.default.string,
|
|
151
|
+
"toString": _propTypes.default.func.isRequired,
|
|
152
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
153
|
+
}), _propTypes.default.string]),
|
|
154
|
+
"marginLeft": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
155
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
156
|
+
"description": _propTypes.default.string,
|
|
157
|
+
"toString": _propTypes.default.func.isRequired,
|
|
158
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
159
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
160
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
161
|
+
"description": _propTypes.default.string,
|
|
162
|
+
"toString": _propTypes.default.func.isRequired,
|
|
163
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
164
|
+
}), _propTypes.default.string]),
|
|
165
|
+
"marginRight": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
166
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
167
|
+
"description": _propTypes.default.string,
|
|
168
|
+
"toString": _propTypes.default.func.isRequired,
|
|
169
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
170
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
171
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
172
|
+
"description": _propTypes.default.string,
|
|
173
|
+
"toString": _propTypes.default.func.isRequired,
|
|
174
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
175
|
+
}), _propTypes.default.string]),
|
|
176
|
+
"marginTop": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
177
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
178
|
+
"description": _propTypes.default.string,
|
|
179
|
+
"toString": _propTypes.default.func.isRequired,
|
|
180
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
181
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
182
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
183
|
+
"description": _propTypes.default.string,
|
|
184
|
+
"toString": _propTypes.default.func.isRequired,
|
|
185
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
186
|
+
}), _propTypes.default.string]),
|
|
187
|
+
"marginX": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
188
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
189
|
+
"description": _propTypes.default.string,
|
|
190
|
+
"toString": _propTypes.default.func.isRequired,
|
|
191
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
192
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
193
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
194
|
+
"description": _propTypes.default.string,
|
|
195
|
+
"toString": _propTypes.default.func.isRequired,
|
|
196
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
197
|
+
}), _propTypes.default.string]),
|
|
198
|
+
"marginY": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
199
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
200
|
+
"description": _propTypes.default.string,
|
|
201
|
+
"toString": _propTypes.default.func.isRequired,
|
|
202
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
203
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
204
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
205
|
+
"description": _propTypes.default.string,
|
|
206
|
+
"toString": _propTypes.default.func.isRequired,
|
|
207
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
208
|
+
}), _propTypes.default.string]),
|
|
209
|
+
"maxProgressLabel": _propTypes.default.string,
|
|
210
|
+
"mb": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
211
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
212
|
+
"description": _propTypes.default.string,
|
|
213
|
+
"toString": _propTypes.default.func.isRequired,
|
|
214
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
215
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
216
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
217
|
+
"description": _propTypes.default.string,
|
|
218
|
+
"toString": _propTypes.default.func.isRequired,
|
|
219
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
220
|
+
}), _propTypes.default.string]),
|
|
221
|
+
"ml": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
222
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
223
|
+
"description": _propTypes.default.string,
|
|
224
|
+
"toString": _propTypes.default.func.isRequired,
|
|
225
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
226
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
227
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
228
|
+
"description": _propTypes.default.string,
|
|
229
|
+
"toString": _propTypes.default.func.isRequired,
|
|
230
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
231
|
+
}), _propTypes.default.string]),
|
|
232
|
+
"mr": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
233
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
234
|
+
"description": _propTypes.default.string,
|
|
235
|
+
"toString": _propTypes.default.func.isRequired,
|
|
236
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
237
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
238
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
239
|
+
"description": _propTypes.default.string,
|
|
240
|
+
"toString": _propTypes.default.func.isRequired,
|
|
241
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
242
|
+
}), _propTypes.default.string]),
|
|
243
|
+
"mt": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
244
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
245
|
+
"description": _propTypes.default.string,
|
|
246
|
+
"toString": _propTypes.default.func.isRequired,
|
|
247
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
248
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
249
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
250
|
+
"description": _propTypes.default.string,
|
|
251
|
+
"toString": _propTypes.default.func.isRequired,
|
|
252
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
253
|
+
}), _propTypes.default.string]),
|
|
254
|
+
"mx": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
255
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
256
|
+
"description": _propTypes.default.string,
|
|
257
|
+
"toString": _propTypes.default.func.isRequired,
|
|
258
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
259
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
260
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
261
|
+
"description": _propTypes.default.string,
|
|
262
|
+
"toString": _propTypes.default.func.isRequired,
|
|
263
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
264
|
+
}), _propTypes.default.string]),
|
|
265
|
+
"my": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
|
|
266
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
267
|
+
"description": _propTypes.default.string,
|
|
268
|
+
"toString": _propTypes.default.func.isRequired,
|
|
269
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
270
|
+
}), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
|
|
271
|
+
"__@toStringTag": _propTypes.default.string.isRequired,
|
|
272
|
+
"description": _propTypes.default.string,
|
|
273
|
+
"toString": _propTypes.default.func.isRequired,
|
|
274
|
+
"valueOf": _propTypes.default.func.isRequired
|
|
275
|
+
}), _propTypes.default.string]),
|
|
276
|
+
"progress": _propTypes.default.number,
|
|
277
|
+
"showDefaultLabels": _propTypes.default.bool,
|
|
278
|
+
"size": _propTypes.default.oneOf(["large", "medium", "small"])
|
|
167
279
|
};
|
|
280
|
+
ProgressTracker.displayName = "ProgressTracker";
|
|
168
281
|
var _default = ProgressTracker;
|
|
169
282
|
exports.default = _default;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ProgressTrackerProps } from "./progress-tracker.component";
|
|
2
|
+
declare const StyledProgressTracker: import("styled-components").StyledComponent<"div", any, Pick<ProgressTrackerProps, "length" | "margin">, never>;
|
|
3
|
+
declare const StyledProgressBar: import("styled-components").StyledComponent<"span", any, Pick<ProgressTrackerProps, "error" | "progress" | "size">, never>;
|
|
4
|
+
declare const StyledValue: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
5
|
+
declare const StyledDescription: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
6
|
+
declare const StyledValuesLabel: import("styled-components").StyledComponent<"span", any, Pick<ProgressTrackerProps, "size" | "labelsPosition">, never>;
|
|
7
|
+
declare const InnerBar: import("styled-components").StyledComponent<"span", any, Pick<ProgressTrackerProps, "error" | "progress" | "length" | "size">, never>;
|
|
8
|
+
export { StyledProgressBar, InnerBar, StyledProgressTracker, StyledValuesLabel, StyledValue, StyledDescription, };
|
|
@@ -7,20 +7,47 @@ exports.StyledDescription = exports.StyledValue = exports.StyledValuesLabel = ex
|
|
|
7
7
|
|
|
8
8
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
9
9
|
|
|
10
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
10
|
var _styledSystem = require("styled-system");
|
|
13
11
|
|
|
14
12
|
var _base = _interopRequireDefault(require("../../style/themes/base"));
|
|
15
13
|
|
|
16
|
-
var _progressTracker = require("./progress-tracker.config");
|
|
17
|
-
|
|
18
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
15
|
|
|
20
16
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
21
17
|
|
|
22
18
|
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; }
|
|
23
19
|
|
|
20
|
+
function getHeight(size) {
|
|
21
|
+
switch (size) {
|
|
22
|
+
case "small":
|
|
23
|
+
return "var(--sizing050)";
|
|
24
|
+
|
|
25
|
+
case "large":
|
|
26
|
+
return "var(--sizing200)";
|
|
27
|
+
|
|
28
|
+
default:
|
|
29
|
+
return "var(--sizing100)";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function getBackgroundColour({
|
|
34
|
+
progress,
|
|
35
|
+
error
|
|
36
|
+
}) {
|
|
37
|
+
if (error) return "var(--colorsSemanticNegative500)";
|
|
38
|
+
if (progress && progress >= 100) return "var(--colorsSemanticPositive500)";
|
|
39
|
+
return "var(--colorsSemanticNeutral500)";
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function getBorderColour({
|
|
43
|
+
progress,
|
|
44
|
+
error
|
|
45
|
+
}) {
|
|
46
|
+
if (error) return "var(--colorsSemanticNegative500)";
|
|
47
|
+
if (progress === 100) return "var(--colorsSemanticPositive500)";
|
|
48
|
+
return "var(--colorsSemanticNeutral500)";
|
|
49
|
+
}
|
|
50
|
+
|
|
24
51
|
const StyledProgressTracker = _styledComponents.default.div`
|
|
25
52
|
${_styledSystem.margin}
|
|
26
53
|
text-align: center;
|
|
@@ -42,7 +69,10 @@ const StyledProgressBar = _styledComponents.default.span`
|
|
|
42
69
|
display: flex;
|
|
43
70
|
position: relative;
|
|
44
71
|
background-color: var(--colorsSemanticNeutral200);
|
|
45
|
-
border: 1px solid ${getBorderColour(
|
|
72
|
+
border: 1px solid ${getBorderColour({
|
|
73
|
+
progress,
|
|
74
|
+
error
|
|
75
|
+
})};
|
|
46
76
|
border-radius: 25px;
|
|
47
77
|
overflow-x: hidden;
|
|
48
78
|
height: ${getHeight(size)};
|
|
@@ -72,81 +102,35 @@ const StyledValuesLabel = _styledComponents.default.span`
|
|
|
72
102
|
gap: 4px;
|
|
73
103
|
font-size: ${({
|
|
74
104
|
size
|
|
75
|
-
}) => fontSizes[size]};
|
|
105
|
+
}) => size && fontSizes[size]};
|
|
76
106
|
${({
|
|
77
|
-
|
|
78
|
-
}) =>
|
|
107
|
+
labelsPosition
|
|
108
|
+
}) => labelsPosition === "bottom" && "margin-top: 8px"};
|
|
79
109
|
${({
|
|
80
|
-
|
|
81
|
-
}) =>
|
|
110
|
+
labelsPosition
|
|
111
|
+
}) => labelsPosition !== "bottom" && "margin-bottom: 8px"};
|
|
82
112
|
`;
|
|
83
113
|
exports.StyledValuesLabel = StyledValuesLabel;
|
|
84
114
|
const InnerBar = _styledComponents.default.span`
|
|
85
115
|
${({
|
|
86
116
|
progress,
|
|
87
|
-
size,
|
|
117
|
+
size = "medium",
|
|
88
118
|
length,
|
|
89
119
|
error
|
|
90
120
|
}) => (0, _styledComponents.css)`
|
|
91
121
|
position: relative;
|
|
92
122
|
left: 0;
|
|
93
|
-
background-color: ${getBackgroundColour(
|
|
123
|
+
background-color: ${getBackgroundColour({
|
|
124
|
+
progress,
|
|
125
|
+
error
|
|
126
|
+
})};
|
|
94
127
|
border-radius: 25px;
|
|
95
|
-
width: calc(${length} * ${progress / 100});
|
|
128
|
+
width: calc(${length} * ${progress && progress / 100});
|
|
96
129
|
min-width: 2px;
|
|
97
130
|
height: ${getHeight(size)};
|
|
98
131
|
`}
|
|
99
132
|
`;
|
|
100
133
|
exports.InnerBar = InnerBar;
|
|
101
|
-
|
|
102
|
-
function getHeight(size) {
|
|
103
|
-
switch (size) {
|
|
104
|
-
case "small":
|
|
105
|
-
return "var(--sizing050)";
|
|
106
|
-
|
|
107
|
-
case "large":
|
|
108
|
-
return "var(--sizing200)";
|
|
109
|
-
|
|
110
|
-
default:
|
|
111
|
-
return "var(--sizing100)";
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
function getBackgroundColour(progress, error) {
|
|
116
|
-
if (error) return "var(--colorsSemanticNegative500)";
|
|
117
|
-
if (progress >= 100) return "var(--colorsSemanticPositive500)";
|
|
118
|
-
return "var(--colorsSemanticNeutral500)";
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
function getBorderColour(progress, error) {
|
|
122
|
-
if (error) return "var(--colorsSemanticNegative500)";
|
|
123
|
-
if (progress === 100) return "var(--colorsSemanticPositive500)";
|
|
124
|
-
return "var(--colorsSemanticNeutral500)";
|
|
125
|
-
}
|
|
126
|
-
|
|
127
134
|
StyledProgressTracker.defaultProps = {
|
|
128
135
|
theme: _base.default
|
|
129
|
-
};
|
|
130
|
-
StyledProgressBar.defaultProps = {
|
|
131
|
-
size: "medium"
|
|
132
|
-
};
|
|
133
|
-
InnerBar.defaultProps = {
|
|
134
|
-
progress: 0,
|
|
135
|
-
size: "medium"
|
|
136
|
-
};
|
|
137
|
-
InnerBar.propTypes = {
|
|
138
|
-
size: _propTypes.default.oneOf(_progressTracker.PROGRESS_TRACKER_SIZES),
|
|
139
|
-
progress: _propTypes.default.number
|
|
140
|
-
};
|
|
141
|
-
StyledProgressTracker.propTypes = {
|
|
142
|
-
theme: _propTypes.default.object
|
|
143
|
-
};
|
|
144
|
-
StyledValuesLabel.propTypes = {
|
|
145
|
-
position: _propTypes.default.oneOf(["top", "bottom", "left", "right"])
|
|
146
|
-
};
|
|
147
|
-
StyledValue.propTypes = {
|
|
148
|
-
isMaxValue: _propTypes.default.bool
|
|
149
|
-
};
|
|
150
|
-
StyledProgressBar.propTypes = {
|
|
151
|
-
size: _propTypes.default.oneOf(_progressTracker.PROGRESS_TRACKER_SIZES)
|
|
152
136
|
};
|
|
@@ -285,7 +285,12 @@ const SelectList = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
285
285
|
onSelectListClose();
|
|
286
286
|
}
|
|
287
287
|
}, [onSelectListClose]);
|
|
288
|
-
(0, _useModalManager.default)(
|
|
288
|
+
(0, _useModalManager.default)({
|
|
289
|
+
open: isOpen,
|
|
290
|
+
closeModal: handleEscapeKey,
|
|
291
|
+
modalRef: listRef,
|
|
292
|
+
triggerRefocusOnClose: false
|
|
293
|
+
});
|
|
289
294
|
const handleListScroll = (0, _react.useCallback)(event => {
|
|
290
295
|
const element = event.target;
|
|
291
296
|
/* istanbul ignore else */
|
|
@@ -67,7 +67,11 @@ const Toast = /*#__PURE__*/_react.default.forwardRef(({
|
|
|
67
67
|
onDismiss(ev);
|
|
68
68
|
}
|
|
69
69
|
}, [onDismiss]);
|
|
70
|
-
(0, _useModalManager.default)(
|
|
70
|
+
(0, _useModalManager.default)({
|
|
71
|
+
open,
|
|
72
|
+
closeModal: dismissToast,
|
|
73
|
+
modalRef: refToPass
|
|
74
|
+
});
|
|
71
75
|
(0, _react.useEffect)(() => {
|
|
72
76
|
/* istanbul ignore next */
|
|
73
77
|
if (timer.current) clearTimeout(timer.current);
|
|
@@ -31,7 +31,11 @@ var _default = (mainControlRef, childrenRefs, hide, isOpen) => {
|
|
|
31
31
|
}, [refocusMainControl]); // useModalmanager is used here to handle the escape key
|
|
32
32
|
// and to ensure that closing the menu does not close the modal
|
|
33
33
|
|
|
34
|
-
(0, _useModalManager.default)(
|
|
34
|
+
(0, _useModalManager.default)({
|
|
35
|
+
open: isOpen,
|
|
36
|
+
closeModal: handleEscapeKey,
|
|
37
|
+
modalRef: mainControlRef
|
|
38
|
+
});
|
|
35
39
|
const handleKeyDown = (0, _react.useCallback)(ev => {
|
|
36
40
|
if (!(_events.default.isEnterKey(ev) || _events.default.isSpaceKey(ev))) {
|
|
37
41
|
ev.preventDefault();
|
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
declare
|
|
2
|
+
declare type UseModalManagerArgs = {
|
|
3
|
+
open: boolean;
|
|
4
|
+
closeModal: (e: KeyboardEvent) => void;
|
|
5
|
+
modalRef: React.RefObject<HTMLElement>;
|
|
6
|
+
setTriggerRefocusFlag?: (flag: boolean) => void;
|
|
7
|
+
triggerRefocusOnClose?: boolean;
|
|
8
|
+
};
|
|
9
|
+
declare const useModalManager: ({ open, closeModal, modalRef, setTriggerRefocusFlag, triggerRefocusOnClose, }: UseModalManagerArgs) => void;
|
|
3
10
|
export default useModalManager;
|
|
@@ -11,7 +11,13 @@ var _modalManager = _interopRequireDefault(require("../../../components/modal/__
|
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
|
-
const useModalManager = (
|
|
14
|
+
const useModalManager = ({
|
|
15
|
+
open,
|
|
16
|
+
closeModal,
|
|
17
|
+
modalRef,
|
|
18
|
+
setTriggerRefocusFlag,
|
|
19
|
+
triggerRefocusOnClose = true
|
|
20
|
+
}) => {
|
|
15
21
|
const listenerAdded = (0, _react.useRef)(false);
|
|
16
22
|
const modalRegistered = (0, _react.useRef)(false);
|
|
17
23
|
const handleClose = (0, _react.useCallback)(ev => {
|
|
@@ -56,11 +62,11 @@ const useModalManager = (open, closeModal, modalRef, setTriggerRefocusFlag) => {
|
|
|
56
62
|
}, [setTriggerRefocusFlag]);
|
|
57
63
|
const unregisterModal = (0, _react.useCallback)(ref => {
|
|
58
64
|
if (modalRegistered.current) {
|
|
59
|
-
_modalManager.default.removeModal(ref);
|
|
65
|
+
_modalManager.default.removeModal(ref, triggerRefocusOnClose);
|
|
60
66
|
|
|
61
67
|
modalRegistered.current = false;
|
|
62
68
|
}
|
|
63
|
-
}, []);
|
|
69
|
+
}, [triggerRefocusOnClose]);
|
|
64
70
|
(0, _react.useEffect)(() => {
|
|
65
71
|
const ref = modalRef.current;
|
|
66
72
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "carbon-react",
|
|
3
|
-
"version": "116.2.
|
|
3
|
+
"version": "116.2.1",
|
|
4
4
|
"description": "A library of reusable React components for easily building user interfaces.",
|
|
5
5
|
"files": [
|
|
6
6
|
"lib",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"copy-files": "node ./scripts/copy-files.js",
|
|
21
21
|
"precompile": "npm run type-check && npm run clean-lib && npm run build && npm run build:types && npm run copy-files",
|
|
22
22
|
"prepublishOnly": "npm run precompile",
|
|
23
|
-
"postinstall": "node ./scripts/check_rfcs/
|
|
23
|
+
"postinstall": "node ./scripts/check_rfcs/index.js",
|
|
24
24
|
"watch": "npm run clean-lib && npm run copy-files -- --watch & npm run babel -- --watch",
|
|
25
25
|
"build-storybook": "cross-env STORYBOOK_BUILD=true NODE_OPTIONS=--openssl-legacy-provider build-storybook -c .storybook",
|
|
26
26
|
"start-storybook": "cross-env STORYBOOK_BUILD=true NODE_OPTIONS=--openssl-legacy-provider start-storybook -c .storybook",
|