carbon-react 125.7.0 → 125.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/esm/__internal__/fieldset/fieldset.component.d.ts +13 -1
  2. package/esm/__internal__/fieldset/fieldset.component.js +20 -4
  3. package/esm/__internal__/fieldset/fieldset.style.d.ts +6 -1
  4. package/esm/__internal__/fieldset/fieldset.style.js +27 -1
  5. package/esm/__internal__/label/label.component.d.ts +6 -2
  6. package/esm/__internal__/label/label.component.js +7 -3
  7. package/esm/components/box/box.component.d.ts +3 -1
  8. package/esm/components/box/box.component.js +4 -1
  9. package/esm/components/button-toggle/button-toggle-group/button-toggle-group.component.d.ts +6 -1
  10. package/esm/components/button-toggle/button-toggle-group/button-toggle-group.component.js +4 -1
  11. package/esm/components/button-toggle/button-toggle.style.d.ts +15 -0
  12. package/esm/components/button-toggle/button-toggle.style.js +3 -3
  13. package/esm/components/heading/heading.style.d.ts +1 -1
  14. package/esm/components/image/image.component.d.ts +1 -1
  15. package/esm/components/image/image.component.js +11 -1
  16. package/esm/components/image/image.style.d.ts +18 -2
  17. package/esm/components/image/image.style.js +26 -2
  18. package/esm/components/tile/flex-tile-cell/flex-tile-cell.component.js +1 -0
  19. package/esm/components/time/__internal__/time-toggle/index.d.ts +2 -0
  20. package/esm/components/time/__internal__/time-toggle/index.js +1 -0
  21. package/esm/components/time/__internal__/time-toggle/time-toggle.component.d.ts +20 -0
  22. package/esm/components/time/__internal__/time-toggle/time-toggle.component.js +52 -0
  23. package/esm/components/time/__internal__/time-toggle/time-toggle.style.d.ts +8 -0
  24. package/esm/components/time/__internal__/time-toggle/time-toggle.style.js +19 -0
  25. package/esm/components/time/index.d.ts +2 -0
  26. package/esm/components/time/index.js +1 -0
  27. package/esm/components/time/time.component.d.ts +73 -0
  28. package/esm/components/time/time.component.js +428 -0
  29. package/esm/components/time/time.style.d.ts +6 -0
  30. package/esm/components/time/time.style.js +19 -0
  31. package/esm/components/typography/typography.component.d.ts +7 -1
  32. package/esm/components/typography/typography.component.js +3 -1
  33. package/esm/components/typography/typography.style.js +5 -0
  34. package/esm/locales/__internal__/pl-pl.js +8 -0
  35. package/esm/locales/en-gb.js +8 -0
  36. package/esm/locales/locale.d.ts +8 -0
  37. package/lib/__internal__/fieldset/fieldset.component.d.ts +13 -1
  38. package/lib/__internal__/fieldset/fieldset.component.js +19 -3
  39. package/lib/__internal__/fieldset/fieldset.style.d.ts +6 -1
  40. package/lib/__internal__/fieldset/fieldset.style.js +27 -1
  41. package/lib/__internal__/label/label.component.d.ts +6 -2
  42. package/lib/__internal__/label/label.component.js +7 -3
  43. package/lib/components/box/box.component.d.ts +3 -1
  44. package/lib/components/box/box.component.js +4 -1
  45. package/lib/components/button-toggle/button-toggle-group/button-toggle-group.component.d.ts +6 -1
  46. package/lib/components/button-toggle/button-toggle-group/button-toggle-group.component.js +4 -1
  47. package/lib/components/button-toggle/button-toggle.style.d.ts +15 -0
  48. package/lib/components/button-toggle/button-toggle.style.js +4 -4
  49. package/lib/components/heading/heading.style.d.ts +1 -1
  50. package/lib/components/image/image.component.d.ts +1 -1
  51. package/lib/components/image/image.component.js +11 -1
  52. package/lib/components/image/image.style.d.ts +18 -2
  53. package/lib/components/image/image.style.js +26 -2
  54. package/lib/components/tile/flex-tile-cell/flex-tile-cell.component.js +1 -0
  55. package/lib/components/time/__internal__/time-toggle/index.d.ts +2 -0
  56. package/lib/components/time/__internal__/time-toggle/index.js +13 -0
  57. package/lib/components/time/__internal__/time-toggle/package.json +6 -0
  58. package/lib/components/time/__internal__/time-toggle/time-toggle.component.d.ts +20 -0
  59. package/lib/components/time/__internal__/time-toggle/time-toggle.component.js +61 -0
  60. package/lib/components/time/__internal__/time-toggle/time-toggle.style.d.ts +8 -0
  61. package/lib/components/time/__internal__/time-toggle/time-toggle.style.js +26 -0
  62. package/lib/components/time/index.d.ts +2 -0
  63. package/lib/components/time/index.js +13 -0
  64. package/lib/components/time/package.json +6 -0
  65. package/lib/components/time/time.component.d.ts +73 -0
  66. package/lib/components/time/time.component.js +437 -0
  67. package/lib/components/time/time.style.d.ts +6 -0
  68. package/lib/components/time/time.style.js +26 -0
  69. package/lib/components/typography/typography.component.d.ts +7 -1
  70. package/lib/components/typography/typography.component.js +3 -1
  71. package/lib/components/typography/typography.style.js +5 -0
  72. package/lib/locales/__internal__/pl-pl.js +8 -0
  73. package/lib/locales/en-gb.js +8 -0
  74. package/lib/locales/locale.d.ts +8 -0
  75. package/package.json +1 -1
@@ -0,0 +1,73 @@
1
+ import React from "react";
2
+ import { MarginProps } from "styled-system";
3
+ import { ValidationProps } from "../../__internal__/validations";
4
+ import { TagProps } from "../../__internal__/utils/helpers/tags";
5
+ import { Sizes } from "../../__internal__/input/input-presentation.component";
6
+ import { ToggleDataProps } from "./__internal__/time-toggle";
7
+ export declare type ToggleValue = "AM" | "PM";
8
+ export declare type TimeValue = {
9
+ hours: string;
10
+ minutes: string;
11
+ period?: ToggleValue;
12
+ };
13
+ export interface TimeInputEvent {
14
+ target: {
15
+ name?: string;
16
+ id: string;
17
+ value: TimeValue;
18
+ };
19
+ }
20
+ interface TimeInputProps extends Omit<TagProps, "data-component">, Omit<ValidationProps, "info"> {
21
+ /** Set an id value on the input */
22
+ id?: string;
23
+ /** Override the default label text */
24
+ label?: string;
25
+ /** Override the default aria-label text */
26
+ "aria-label"?: string;
27
+ }
28
+ export interface TimeProps extends Omit<TagProps, "data-component">, MarginProps {
29
+ /** Label text for the component */
30
+ label?: string;
31
+ /** Sets the size of the inputs */
32
+ size?: Sizes;
33
+ /** Additional hint text rendered above the input elements */
34
+ inputHint?: string;
35
+ /**
36
+ * Set custom `data-` and `id` attributes on the input element.
37
+ * Set the `label` and `aria-label` values for the associated Label element.
38
+ * Set the `error` and `warning` states for the input
39
+ * */
40
+ hoursInputProps?: TimeInputProps;
41
+ /**
42
+ * Set custom `data-` and `id` attributes on the input element.
43
+ * Set the `label` and `aria-label` values for the associated Label element.
44
+ * Set the `error` and `warning` states for the input
45
+ * */
46
+ minutesInputProps?: TimeInputProps;
47
+ /** The value of the input elements */
48
+ value: TimeValue;
49
+ /** Callback to handle change events in input elements */
50
+ onChange: (ev: TimeInputEvent) => void;
51
+ /** Set a name value on the component */
52
+ name?: string;
53
+ /** Callback called when focus is lost on input elements */
54
+ onBlur?: (ev?: React.FocusEvent<HTMLInputElement>) => void;
55
+ /** Flag to configure component as mandatory */
56
+ required?: boolean;
57
+ /** Flag to configure component as optional */
58
+ isOptional?: boolean;
59
+ /** If true, the component will be disabled */
60
+ disabled?: boolean;
61
+ /** If true, the component will be read-only */
62
+ readOnly?: boolean;
63
+ /** Set custom data- attributes on the toggle elements */
64
+ toggleProps?: ToggleDataProps;
65
+ }
66
+ export declare type TimeHandle = {
67
+ /** Programmatically focus the hours input. */
68
+ focusHoursInput: () => void;
69
+ /** Programmatically focus the minutes input. */
70
+ focusMinutesInput: () => void;
71
+ } | null;
72
+ declare const Time: React.ForwardRefExoticComponent<TimeProps & React.RefAttributes<TimeHandle>>;
73
+ export default Time;
@@ -0,0 +1,437 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+ var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
10
+ var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
11
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
12
+ var _useInputAccessibility = _interopRequireDefault(require("../../hooks/__internal__/useInputAccessibility"));
13
+ var _fieldset = _interopRequireDefault(require("../../__internal__/fieldset"));
14
+ var _box = _interopRequireDefault(require("../box"));
15
+ var _textbox = require("../textbox/textbox.style");
16
+ var _validationMessage = _interopRequireDefault(require("../../__internal__/validation-message"));
17
+ var _number = _interopRequireDefault(require("../number"));
18
+ var _typography = _interopRequireDefault(require("../typography"));
19
+ var _time = require("./time.style");
20
+ var _timeToggle = require("./__internal__/time-toggle");
21
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
25
+ const Time = /*#__PURE__*/_react.default.forwardRef(({
26
+ label,
27
+ size = "medium",
28
+ inputHint,
29
+ hoursInputProps = {},
30
+ minutesInputProps = {},
31
+ value,
32
+ name,
33
+ onChange,
34
+ onBlur,
35
+ required,
36
+ isOptional,
37
+ disabled,
38
+ readOnly,
39
+ toggleProps = {},
40
+ ...rest
41
+ }, ref) => {
42
+ const {
43
+ id: hoursInputId,
44
+ label: hoursLabel,
45
+ "aria-label": hoursAriaLabel,
46
+ error: hoursError,
47
+ warning: hoursWarning
48
+ } = hoursInputProps;
49
+ const {
50
+ id: minutesInputId,
51
+ label: minutesLabel,
52
+ "aria-label": minutesAriaLabel,
53
+ error: minutesError,
54
+ warning: minutesWarning
55
+ } = minutesInputProps;
56
+ const internalHrsId = (0, _react.useRef)(hoursInputId || (0, _guid.default)());
57
+ const internalMinsId = (0, _react.useRef)(minutesInputId || (0, _guid.default)());
58
+ const inputHintId = (0, _react.useRef)((0, _guid.default)());
59
+ const internalId = (0, _react.useRef)(`${internalHrsId.current} ${internalMinsId.current}`);
60
+ const {
61
+ hours: hourValue,
62
+ minutes: minuteValue,
63
+ period: toggleValue
64
+ } = value;
65
+ const [inputValues, setInputValues] = (0, _react.useState)([hourValue, minuteValue]);
66
+ const locale = (0, _useLocale.default)();
67
+ const showToggle = toggleValue !== undefined;
68
+ const [period, setPeriod] = (0, _react.useState)(toggleValue);
69
+ const hrsLabel = hoursLabel || locale.time.hoursLabelText();
70
+ const minsLabel = minutesLabel || locale.time.minutesLabelText();
71
+ const hrsAriaLabel = hoursAriaLabel || locale.time.hoursAriaLabelText();
72
+ const minsAriaLabel = minutesAriaLabel || locale.time.minutesAriaLabelText();
73
+ const hoursRef = (0, _react.useRef)(null);
74
+ const minsRef = (0, _react.useRef)(null);
75
+ const computedValidations = (hrs, mins) => {
76
+ const hoursIsString = typeof hrs === "string";
77
+ const minutesIsString = typeof mins === "string";
78
+ if (!hoursIsString && !minutesIsString) {
79
+ return hrs || mins;
80
+ }
81
+ if (hoursIsString && !minutesIsString) {
82
+ return hrs;
83
+ }
84
+ if (minutesIsString && !hoursIsString) {
85
+ return mins;
86
+ }
87
+ return `${hrs} ${mins}`;
88
+ };
89
+ const error = computedValidations(hoursError, minutesError);
90
+ const warning = computedValidations(hoursWarning, minutesWarning);
91
+ const hasValidationFailure = !!(error || warning);
92
+ const {
93
+ validationId,
94
+ ariaDescribedBy
95
+ } = (0, _useInputAccessibility.default)({
96
+ id: internalId.current,
97
+ validationRedesignOptIn: true,
98
+ error,
99
+ warning
100
+ });
101
+ const combinedAriaDescribedBy = [ariaDescribedBy, inputHintId.current].filter(Boolean).join(" ");
102
+ (0, _react.useImperativeHandle)(ref, () => ({
103
+ focusHoursInput() {
104
+ hoursRef.current?.focus();
105
+ },
106
+ focusMinutesInput() {
107
+ minsRef.current?.focus();
108
+ }
109
+ }), []);
110
+ const handleChange = (ev, inputName) => {
111
+ const hours = inputName === "hrs" ? ev.target.value : inputValues[0];
112
+ const minutes = inputName === "mins" ? ev.target.value : inputValues[1];
113
+ setInputValues([hours, minutes]);
114
+ onChange({
115
+ target: {
116
+ name,
117
+ id: internalId.current,
118
+ value: {
119
+ hours,
120
+ minutes,
121
+ period
122
+ }
123
+ }
124
+ });
125
+ };
126
+ const handlePeriodChange = periodName => {
127
+ const [hours, minutes] = inputValues;
128
+ setPeriod(periodName);
129
+ onChange({
130
+ target: {
131
+ name,
132
+ id: internalId.current,
133
+ value: {
134
+ hours,
135
+ minutes,
136
+ period: periodName
137
+ }
138
+ }
139
+ });
140
+ };
141
+ const handleBlur = (0, _react.useCallback)(ev => {
142
+ setTimeout(() => {
143
+ if (hoursRef.current !== document.activeElement && minsRef.current !== document.activeElement) {
144
+ onBlur?.(ev);
145
+ }
146
+ });
147
+ }, [onBlur]);
148
+ return /*#__PURE__*/_react.default.createElement(_fieldset.default, _extends({
149
+ legend: label,
150
+ legendMargin: {
151
+ mb: 0
152
+ },
153
+ width: "min-content",
154
+ isRequired: required,
155
+ isOptional: isOptional,
156
+ isDisabled: disabled,
157
+ name: name,
158
+ id: internalId.current
159
+ }, rest, (0, _tags.default)("time", rest), {
160
+ "aria-describedby": combinedAriaDescribedBy
161
+ }), inputHint && /*#__PURE__*/_react.default.createElement(_time.StyledHintText, {
162
+ id: inputHintId.current,
163
+ isDisabled: disabled
164
+ }, inputHint), /*#__PURE__*/_react.default.createElement(_box.default, {
165
+ position: "relative"
166
+ }, /*#__PURE__*/_react.default.createElement(_validationMessage.default, {
167
+ validationId: validationId,
168
+ error: error,
169
+ warning: warning
170
+ }), hasValidationFailure && /*#__PURE__*/_react.default.createElement(_textbox.ErrorBorder, {
171
+ warning: !!(!error && warning)
172
+ }), /*#__PURE__*/_react.default.createElement(_box.default, {
173
+ display: "flex"
174
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_time.StyledLabel, {
175
+ "aria-label": hrsAriaLabel,
176
+ htmlFor: internalHrsId.current,
177
+ disabled: disabled
178
+ }, hrsLabel), /*#__PURE__*/_react.default.createElement(_number.default, _extends({}, hoursInputProps, {
179
+ label: undefined,
180
+ "data-component": "hours",
181
+ ref: hoursRef,
182
+ value: hourValue,
183
+ onChange: ev => handleChange(ev, "hrs"),
184
+ onBlur: handleBlur,
185
+ id: internalHrsId.current,
186
+ size: size,
187
+ error: !!hoursError,
188
+ warning: !!hoursWarning,
189
+ disabled: disabled,
190
+ readOnly: readOnly
191
+ }))), /*#__PURE__*/_react.default.createElement(_box.default, {
192
+ display: "flex",
193
+ flexDirection: "column",
194
+ justifyContent: "center",
195
+ mx: 1,
196
+ "aria-hidden": "true"
197
+ }, /*#__PURE__*/_react.default.createElement("span", null, "\xA0"), /*#__PURE__*/_react.default.createElement(_typography.default, {
198
+ isDisabled: disabled,
199
+ variant: "span",
200
+ mb: "-4px"
201
+ }, ":")), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_time.StyledLabel, {
202
+ "aria-label": minsAriaLabel,
203
+ htmlFor: internalMinsId.current,
204
+ disabled: disabled
205
+ }, minsLabel), /*#__PURE__*/_react.default.createElement(_number.default, _extends({}, minutesInputProps, {
206
+ label: undefined,
207
+ "data-component": "minutes",
208
+ ref: minsRef,
209
+ value: minuteValue,
210
+ onChange: ev => handleChange(ev, "mins"),
211
+ onBlur: handleBlur,
212
+ id: internalMinsId.current,
213
+ size: size,
214
+ error: !!minutesError,
215
+ warning: !!minutesWarning,
216
+ disabled: disabled,
217
+ readOnly: readOnly
218
+ }))), showToggle && /*#__PURE__*/_react.default.createElement(_box.default, {
219
+ display: "flex",
220
+ flexDirection: "column",
221
+ justifyContent: "flex-end"
222
+ }, /*#__PURE__*/_react.default.createElement(_timeToggle.TimeToggle, {
223
+ toggleProps: toggleProps,
224
+ size: size,
225
+ onChange: handlePeriodChange,
226
+ toggleValue: toggleValue,
227
+ disabled: disabled || readOnly
228
+ })))));
229
+ });
230
+ Time.propTypes = {
231
+ "children": _propTypes.default.node,
232
+ "data-element": _propTypes.default.string,
233
+ "data-role": _propTypes.default.string,
234
+ "disabled": _propTypes.default.bool,
235
+ "hoursInputProps": _propTypes.default.shape({
236
+ "aria-label": _propTypes.default.string,
237
+ "data-element": _propTypes.default.string,
238
+ "data-role": _propTypes.default.string,
239
+ "error": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
240
+ "id": _propTypes.default.string,
241
+ "label": _propTypes.default.string,
242
+ "warning": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool])
243
+ }),
244
+ "inputHint": _propTypes.default.string,
245
+ "isOptional": _propTypes.default.bool,
246
+ "label": _propTypes.default.string,
247
+ "m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
248
+ "__@toStringTag": _propTypes.default.string.isRequired,
249
+ "description": _propTypes.default.string,
250
+ "toString": _propTypes.default.func.isRequired,
251
+ "valueOf": _propTypes.default.func.isRequired
252
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
253
+ "__@toStringTag": _propTypes.default.string.isRequired,
254
+ "description": _propTypes.default.string,
255
+ "toString": _propTypes.default.func.isRequired,
256
+ "valueOf": _propTypes.default.func.isRequired
257
+ }), _propTypes.default.string]),
258
+ "margin": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
259
+ "__@toStringTag": _propTypes.default.string.isRequired,
260
+ "description": _propTypes.default.string,
261
+ "toString": _propTypes.default.func.isRequired,
262
+ "valueOf": _propTypes.default.func.isRequired
263
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
264
+ "__@toStringTag": _propTypes.default.string.isRequired,
265
+ "description": _propTypes.default.string,
266
+ "toString": _propTypes.default.func.isRequired,
267
+ "valueOf": _propTypes.default.func.isRequired
268
+ }), _propTypes.default.string]),
269
+ "marginBottom": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
270
+ "__@toStringTag": _propTypes.default.string.isRequired,
271
+ "description": _propTypes.default.string,
272
+ "toString": _propTypes.default.func.isRequired,
273
+ "valueOf": _propTypes.default.func.isRequired
274
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
275
+ "__@toStringTag": _propTypes.default.string.isRequired,
276
+ "description": _propTypes.default.string,
277
+ "toString": _propTypes.default.func.isRequired,
278
+ "valueOf": _propTypes.default.func.isRequired
279
+ }), _propTypes.default.string]),
280
+ "marginLeft": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
281
+ "__@toStringTag": _propTypes.default.string.isRequired,
282
+ "description": _propTypes.default.string,
283
+ "toString": _propTypes.default.func.isRequired,
284
+ "valueOf": _propTypes.default.func.isRequired
285
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
286
+ "__@toStringTag": _propTypes.default.string.isRequired,
287
+ "description": _propTypes.default.string,
288
+ "toString": _propTypes.default.func.isRequired,
289
+ "valueOf": _propTypes.default.func.isRequired
290
+ }), _propTypes.default.string]),
291
+ "marginRight": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
292
+ "__@toStringTag": _propTypes.default.string.isRequired,
293
+ "description": _propTypes.default.string,
294
+ "toString": _propTypes.default.func.isRequired,
295
+ "valueOf": _propTypes.default.func.isRequired
296
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
297
+ "__@toStringTag": _propTypes.default.string.isRequired,
298
+ "description": _propTypes.default.string,
299
+ "toString": _propTypes.default.func.isRequired,
300
+ "valueOf": _propTypes.default.func.isRequired
301
+ }), _propTypes.default.string]),
302
+ "marginTop": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
303
+ "__@toStringTag": _propTypes.default.string.isRequired,
304
+ "description": _propTypes.default.string,
305
+ "toString": _propTypes.default.func.isRequired,
306
+ "valueOf": _propTypes.default.func.isRequired
307
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
308
+ "__@toStringTag": _propTypes.default.string.isRequired,
309
+ "description": _propTypes.default.string,
310
+ "toString": _propTypes.default.func.isRequired,
311
+ "valueOf": _propTypes.default.func.isRequired
312
+ }), _propTypes.default.string]),
313
+ "marginX": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
314
+ "__@toStringTag": _propTypes.default.string.isRequired,
315
+ "description": _propTypes.default.string,
316
+ "toString": _propTypes.default.func.isRequired,
317
+ "valueOf": _propTypes.default.func.isRequired
318
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
319
+ "__@toStringTag": _propTypes.default.string.isRequired,
320
+ "description": _propTypes.default.string,
321
+ "toString": _propTypes.default.func.isRequired,
322
+ "valueOf": _propTypes.default.func.isRequired
323
+ }), _propTypes.default.string]),
324
+ "marginY": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
325
+ "__@toStringTag": _propTypes.default.string.isRequired,
326
+ "description": _propTypes.default.string,
327
+ "toString": _propTypes.default.func.isRequired,
328
+ "valueOf": _propTypes.default.func.isRequired
329
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
330
+ "__@toStringTag": _propTypes.default.string.isRequired,
331
+ "description": _propTypes.default.string,
332
+ "toString": _propTypes.default.func.isRequired,
333
+ "valueOf": _propTypes.default.func.isRequired
334
+ }), _propTypes.default.string]),
335
+ "mb": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
336
+ "__@toStringTag": _propTypes.default.string.isRequired,
337
+ "description": _propTypes.default.string,
338
+ "toString": _propTypes.default.func.isRequired,
339
+ "valueOf": _propTypes.default.func.isRequired
340
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
341
+ "__@toStringTag": _propTypes.default.string.isRequired,
342
+ "description": _propTypes.default.string,
343
+ "toString": _propTypes.default.func.isRequired,
344
+ "valueOf": _propTypes.default.func.isRequired
345
+ }), _propTypes.default.string]),
346
+ "minutesInputProps": _propTypes.default.shape({
347
+ "aria-label": _propTypes.default.string,
348
+ "data-element": _propTypes.default.string,
349
+ "data-role": _propTypes.default.string,
350
+ "error": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
351
+ "id": _propTypes.default.string,
352
+ "label": _propTypes.default.string,
353
+ "warning": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool])
354
+ }),
355
+ "ml": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
356
+ "__@toStringTag": _propTypes.default.string.isRequired,
357
+ "description": _propTypes.default.string,
358
+ "toString": _propTypes.default.func.isRequired,
359
+ "valueOf": _propTypes.default.func.isRequired
360
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
361
+ "__@toStringTag": _propTypes.default.string.isRequired,
362
+ "description": _propTypes.default.string,
363
+ "toString": _propTypes.default.func.isRequired,
364
+ "valueOf": _propTypes.default.func.isRequired
365
+ }), _propTypes.default.string]),
366
+ "mr": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
367
+ "__@toStringTag": _propTypes.default.string.isRequired,
368
+ "description": _propTypes.default.string,
369
+ "toString": _propTypes.default.func.isRequired,
370
+ "valueOf": _propTypes.default.func.isRequired
371
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
372
+ "__@toStringTag": _propTypes.default.string.isRequired,
373
+ "description": _propTypes.default.string,
374
+ "toString": _propTypes.default.func.isRequired,
375
+ "valueOf": _propTypes.default.func.isRequired
376
+ }), _propTypes.default.string]),
377
+ "mt": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
378
+ "__@toStringTag": _propTypes.default.string.isRequired,
379
+ "description": _propTypes.default.string,
380
+ "toString": _propTypes.default.func.isRequired,
381
+ "valueOf": _propTypes.default.func.isRequired
382
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
383
+ "__@toStringTag": _propTypes.default.string.isRequired,
384
+ "description": _propTypes.default.string,
385
+ "toString": _propTypes.default.func.isRequired,
386
+ "valueOf": _propTypes.default.func.isRequired
387
+ }), _propTypes.default.string]),
388
+ "mx": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
389
+ "__@toStringTag": _propTypes.default.string.isRequired,
390
+ "description": _propTypes.default.string,
391
+ "toString": _propTypes.default.func.isRequired,
392
+ "valueOf": _propTypes.default.func.isRequired
393
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
394
+ "__@toStringTag": _propTypes.default.string.isRequired,
395
+ "description": _propTypes.default.string,
396
+ "toString": _propTypes.default.func.isRequired,
397
+ "valueOf": _propTypes.default.func.isRequired
398
+ }), _propTypes.default.string]),
399
+ "my": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
400
+ "__@toStringTag": _propTypes.default.string.isRequired,
401
+ "description": _propTypes.default.string,
402
+ "toString": _propTypes.default.func.isRequired,
403
+ "valueOf": _propTypes.default.func.isRequired
404
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
405
+ "__@toStringTag": _propTypes.default.string.isRequired,
406
+ "description": _propTypes.default.string,
407
+ "toString": _propTypes.default.func.isRequired,
408
+ "valueOf": _propTypes.default.func.isRequired
409
+ }), _propTypes.default.string]),
410
+ "name": _propTypes.default.string,
411
+ "onBlur": _propTypes.default.func,
412
+ "onChange": _propTypes.default.func.isRequired,
413
+ "readOnly": _propTypes.default.bool,
414
+ "required": _propTypes.default.bool,
415
+ "size": _propTypes.default.oneOf(["large", "medium", "small"]),
416
+ "toggleProps": _propTypes.default.shape({
417
+ "amToggleProps": _propTypes.default.shape({
418
+ "data-element": _propTypes.default.string,
419
+ "data-role": _propTypes.default.string
420
+ }),
421
+ "pmToggleProps": _propTypes.default.shape({
422
+ "data-element": _propTypes.default.string,
423
+ "data-role": _propTypes.default.string
424
+ }),
425
+ "wrapperProps": _propTypes.default.shape({
426
+ "data-element": _propTypes.default.string,
427
+ "data-role": _propTypes.default.string
428
+ })
429
+ }),
430
+ "value": _propTypes.default.shape({
431
+ "hours": _propTypes.default.string.isRequired,
432
+ "minutes": _propTypes.default.string.isRequired,
433
+ "period": _propTypes.default.oneOf(["AM", "PM"])
434
+ }).isRequired
435
+ };
436
+ Time.displayName = "Time";
437
+ var _default = exports.default = Time;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledLabel: import("styled-components").StyledComponent<import("react").MemoExoticComponent<({ align, as, children, disabled, error, help, helpIcon, htmlFor, info, inline, isRequired, labelId, optional, pr, pl, tooltipId, useValidationIcon, validationIconId, warning, width, className, "aria-label": ariaLabel, }: import("../../__internal__/label").LabelProps) => import("react").JSX.Element>, any, {}, never>;
3
+ export declare const StyledHintText: import("styled-components").StyledComponent<"div", any, {
4
+ isDisabled?: boolean | undefined;
5
+ hasError?: boolean | undefined;
6
+ }, never>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StyledLabel = exports.StyledHintText = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _label = _interopRequireDefault(require("../../__internal__/label"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ const StyledLabel = exports.StyledLabel = (0, _styledComponents.default)(_label.default)`
11
+ label {
12
+ font-weight: var(--fontWeights500);
13
+ }
14
+ `;
15
+ const StyledHintText = exports.StyledHintText = _styledComponents.default.div`
16
+ ::after {
17
+ content: " ";
18
+ }
19
+
20
+ margin-top: 0px;
21
+ margin-bottom: var(--spacing150);
22
+ color: ${({
23
+ isDisabled
24
+ }) => isDisabled ? "var(--colorsUtilityYin030)" : "var(--colorsUtilityYin055)"};
25
+ font-size: 14px;
26
+ `;
@@ -49,9 +49,15 @@ export interface TypographyProps extends SpaceProps, TagProps {
49
49
  /** Set whether it will be visually hidden
50
50
  * NOTE: This is for screen readers only and will make a lot of the other props redundant */
51
51
  screenReaderOnly?: boolean;
52
+ /**
53
+ * @private
54
+ * @ignore
55
+ * Override the default color of the rendered element to match disabled styling
56
+ * */
57
+ isDisabled?: boolean;
52
58
  }
53
59
  export declare const Typography: {
54
- ({ "data-component": dataComponent, variant, as, id, fontSize, fontWeight, textTransform, lineHeight, textDecoration, display, listStyleType, whiteSpace, wordWrap, textAlign, textOverflow, truncate, color, backgroundColor, bg, opacity, children, className, screenReaderOnly, ...rest }: TypographyProps): React.JSX.Element;
60
+ ({ "data-component": dataComponent, variant, as, id, fontSize, fontWeight, textTransform, lineHeight, textDecoration, display, listStyleType, whiteSpace, wordWrap, textAlign, textOverflow, truncate, color, backgroundColor, bg, opacity, children, className, screenReaderOnly, isDisabled, ...rest }: TypographyProps): React.JSX.Element;
55
61
  displayName: string;
56
62
  };
57
63
  export default Typography;
@@ -36,6 +36,7 @@ const Typography = ({
36
36
  children,
37
37
  className,
38
38
  screenReaderOnly,
39
+ isDisabled,
39
40
  ...rest
40
41
  }) => {
41
42
  return /*#__PURE__*/_react.default.createElement(_typography.default, _extends({
@@ -59,7 +60,8 @@ const Typography = ({
59
60
  bg: bg,
60
61
  opacity: opacity,
61
62
  className: className,
62
- screenReaderOnly: screenReaderOnly
63
+ screenReaderOnly: screenReaderOnly,
64
+ isDisabled: isDisabled
63
65
  }, (0, _tags.default)(dataComponent, rest), (0, _utils.filterStyledSystemMarginProps)(rest), (0, _utils.filterStyledSystemPaddingProps)(rest)), children);
64
66
  };
65
67
  exports.Typography = Typography;
@@ -199,6 +199,11 @@ const StyledTypography = _styledComponents.default.span.attrs(({
199
199
  backgroundColor,
200
200
  ...rest
201
201
  })}
202
+ ${({
203
+ isDisabled
204
+ }) => isDisabled && (0, _styledComponents.css)`
205
+ color: var(--colorsUtilityYin030);
206
+ `}
202
207
  `;
203
208
  StyledTypography.defaultProps = {
204
209
  theme: _base.default
@@ -205,6 +205,14 @@ const plPL = {
205
205
  tileSelect: {
206
206
  deselect: () => "Odznacz"
207
207
  },
208
+ time: {
209
+ amText: () => "AM",
210
+ pmText: () => "PM",
211
+ hoursLabelText: () => "Hrs.",
212
+ minutesLabelText: () => "Min.",
213
+ hoursAriaLabelText: () => "Godziny",
214
+ minutesAriaLabelText: () => "Minuty"
215
+ },
208
216
  toast: {
209
217
  ariaLabels: {
210
218
  close: () => "Zamknij"
@@ -169,6 +169,14 @@ const enGB = {
169
169
  tileSelect: {
170
170
  deselect: () => "Deselect"
171
171
  },
172
+ time: {
173
+ amText: () => "AM",
174
+ pmText: () => "PM",
175
+ hoursLabelText: () => "Hrs.",
176
+ minutesLabelText: () => "Mins.",
177
+ hoursAriaLabelText: () => "Hours",
178
+ minutesAriaLabelText: () => "Minutes"
179
+ },
172
180
  toast: {
173
181
  ariaLabels: {
174
182
  close: () => "Close"
@@ -138,6 +138,14 @@ interface Locale {
138
138
  tileSelect: {
139
139
  deselect: () => string;
140
140
  };
141
+ time: {
142
+ amText: () => string;
143
+ pmText: () => string;
144
+ hoursLabelText: () => string;
145
+ minutesLabelText: () => string;
146
+ hoursAriaLabelText: () => string;
147
+ minutesAriaLabelText: () => string;
148
+ };
141
149
  toast: {
142
150
  ariaLabels: {
143
151
  close: () => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "125.7.0",
3
+ "version": "125.9.0",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "files": [
6
6
  "lib",