carbon-react 144.4.1 → 144.6.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 (61) hide show
  1. package/esm/__internal__/checkable-input/checkable-input.style.js +5 -2
  2. package/esm/__internal__/label/label.component.d.ts +4 -2
  3. package/esm/__internal__/label/label.component.js +3 -1
  4. package/esm/__internal__/label/label.style.d.ts +2 -0
  5. package/esm/__internal__/label/label.style.js +5 -1
  6. package/esm/__internal__/validation-message/validation-message.component.d.ts +3 -1
  7. package/esm/__internal__/validation-message/validation-message.component.js +4 -2
  8. package/esm/__internal__/validation-message/validation-message.style.d.ts +1 -0
  9. package/esm/__internal__/validation-message/validation-message.style.js +11 -7
  10. package/esm/components/date/__internal__/date-formats/index.d.ts +1 -1
  11. package/esm/components/date/__internal__/date-formats/index.js +25 -1
  12. package/esm/components/date/date.component.d.ts +2 -0
  13. package/esm/components/date/date.component.js +4 -2
  14. package/esm/components/date-range/date-range.component.d.ts +2 -0
  15. package/esm/components/date-range/date-range.component.js +3 -2
  16. package/esm/components/flat-table/flat-table.component.d.ts +3 -1
  17. package/esm/components/flat-table/flat-table.component.js +3 -1
  18. package/esm/components/switch/__internal__/switch-slider-panel.style.d.ts +1 -0
  19. package/esm/components/switch/__internal__/switch-slider-panel.style.js +6 -4
  20. package/esm/components/switch/__internal__/switch-slider.component.d.ts +2 -1
  21. package/esm/components/switch/__internal__/switch-slider.component.js +6 -3
  22. package/esm/components/switch/__internal__/switch-slider.style.d.ts +2 -1
  23. package/esm/components/switch/__internal__/switch-slider.style.js +7 -6
  24. package/esm/components/switch/switch.component.d.ts +2 -0
  25. package/esm/components/switch/switch.component.js +64 -18
  26. package/esm/components/switch/switch.style.d.ts +6 -1
  27. package/esm/components/switch/switch.style.js +29 -16
  28. package/esm/components/time/time.style.d.ts +1 -1
  29. package/esm/locales/en-gb.js +2 -1
  30. package/esm/locales/locale.d.ts +1 -0
  31. package/lib/__internal__/checkable-input/checkable-input.style.js +5 -2
  32. package/lib/__internal__/label/label.component.d.ts +4 -2
  33. package/lib/__internal__/label/label.component.js +3 -1
  34. package/lib/__internal__/label/label.style.d.ts +2 -0
  35. package/lib/__internal__/label/label.style.js +5 -1
  36. package/lib/__internal__/validation-message/validation-message.component.d.ts +3 -1
  37. package/lib/__internal__/validation-message/validation-message.component.js +4 -2
  38. package/lib/__internal__/validation-message/validation-message.style.d.ts +1 -0
  39. package/lib/__internal__/validation-message/validation-message.style.js +11 -7
  40. package/lib/components/date/__internal__/date-formats/index.d.ts +1 -1
  41. package/lib/components/date/__internal__/date-formats/index.js +25 -1
  42. package/lib/components/date/date.component.d.ts +2 -0
  43. package/lib/components/date/date.component.js +4 -2
  44. package/lib/components/date-range/date-range.component.d.ts +2 -0
  45. package/lib/components/date-range/date-range.component.js +3 -2
  46. package/lib/components/flat-table/flat-table.component.d.ts +3 -1
  47. package/lib/components/flat-table/flat-table.component.js +3 -1
  48. package/lib/components/switch/__internal__/switch-slider-panel.style.d.ts +1 -0
  49. package/lib/components/switch/__internal__/switch-slider-panel.style.js +6 -4
  50. package/lib/components/switch/__internal__/switch-slider.component.d.ts +2 -1
  51. package/lib/components/switch/__internal__/switch-slider.component.js +6 -3
  52. package/lib/components/switch/__internal__/switch-slider.style.d.ts +2 -1
  53. package/lib/components/switch/__internal__/switch-slider.style.js +7 -6
  54. package/lib/components/switch/switch.component.d.ts +2 -0
  55. package/lib/components/switch/switch.component.js +64 -18
  56. package/lib/components/switch/switch.style.d.ts +6 -1
  57. package/lib/components/switch/switch.style.js +29 -16
  58. package/lib/components/time/time.style.d.ts +1 -1
  59. package/lib/locales/en-gb.js +2 -1
  60. package/lib/locales/locale.d.ts +1 -0
  61. package/package.json +1 -1
@@ -6,17 +6,17 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = exports.Switch = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
- var _switch = _interopRequireWildcard(require("./switch.style"));
9
+ var _box = _interopRequireDefault(require("../box"));
10
10
  var _checkableInput = _interopRequireDefault(require("../../__internal__/checkable-input"));
11
- var _switchSlider = _interopRequireDefault(require("./__internal__/switch-slider.component"));
12
- var _useIsAboveBreakpoint = _interopRequireDefault(require("../../hooks/__internal__/useIsAboveBreakpoint"));
11
+ var _label = _interopRequireDefault(require("../../__internal__/label"));
13
12
  var _tooltipProvider = require("../../__internal__/tooltip-provider");
14
- var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
15
- var _useFormSpacing = _interopRequireDefault(require("../../hooks/__internal__/useFormSpacing"));
16
13
  var _newValidation = _interopRequireDefault(require("../carbon-provider/__internal__/new-validation.context"));
14
+ var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
17
15
  var _validationMessage = _interopRequireDefault(require("../../__internal__/validation-message/validation-message.component"));
18
- var _box = _interopRequireDefault(require("../box"));
19
- var _label = _interopRequireDefault(require("../../__internal__/label"));
16
+ var _useFormSpacing = _interopRequireDefault(require("../../hooks/__internal__/useFormSpacing"));
17
+ var _useIsAboveBreakpoint = _interopRequireDefault(require("../../hooks/__internal__/useIsAboveBreakpoint"));
18
+ var _switch = _interopRequireWildcard(require("./switch.style"));
19
+ var _switchSlider = _interopRequireDefault(require("./__internal__/switch-slider.component"));
20
20
  var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
21
21
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
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); }
@@ -54,6 +54,7 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
54
54
  "data-element": dataElement,
55
55
  "data-role": dataRole,
56
56
  helpAriaLabel,
57
+ isDarkBackground = false,
57
58
  ...rest
58
59
  }, ref) => {
59
60
  const isControlled = checked !== undefined;
@@ -86,6 +87,7 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
86
87
  "data-role": dataRole,
87
88
  "data-element": dataElement,
88
89
  checked: isControlled ? checked : checkedInternal,
90
+ isDarkBackground,
89
91
  fieldHelpInline,
90
92
  labelInline: shouldLabelBeInline,
91
93
  labelSpacing,
@@ -98,6 +100,7 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
98
100
  checked: isControlled ? checked : checkedInternal,
99
101
  disabled: disabled || loading,
100
102
  loading,
103
+ isDarkBackground,
101
104
  size,
102
105
  error,
103
106
  warning,
@@ -118,6 +121,7 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
118
121
  labelInline: shouldLabelBeInline,
119
122
  labelSpacing,
120
123
  onBlur,
124
+ isDarkBackground,
121
125
  onFocus,
122
126
  onChange: isControlled ? onChange : onChangeInternal,
123
127
  id,
@@ -141,6 +145,8 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
141
145
  "data-role": dataRole,
142
146
  "data-element": dataElement,
143
147
  checked: isControlled ? checked : checkedInternal,
148
+ labelInline: shouldLabelBeInline,
149
+ isDarkBackground,
144
150
  size,
145
151
  ...marginProps
146
152
  };
@@ -148,6 +154,7 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
148
154
  checked: isControlled ? checked : checkedInternal,
149
155
  disabled: disabled || loading,
150
156
  loading,
157
+ isDarkBackground,
151
158
  size,
152
159
  error,
153
160
  warning
@@ -156,10 +163,12 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
156
163
  autoFocus,
157
164
  // set aria-invalid but prevent validationIconId from being added to aria-describedby
158
165
  error: !!error,
166
+ warning,
159
167
  disabled: disabled || loading,
160
168
  loading,
161
169
  checked: isControlled ? checked : checkedInternal,
162
170
  onBlur,
171
+ isDarkBackground,
163
172
  onFocus,
164
173
  onChange: isControlled ? onChange : onChangeInternal,
165
174
  id,
@@ -174,30 +183,66 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
174
183
  };
175
184
  const applyValidation = error || warning;
176
185
  const ariaDescribedBy = [labelHelp && inputHintId.current, applyValidation && validationMessageId.current].filter(Boolean).join(" ");
177
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, validationRedesignOptIn ? /*#__PURE__*/_react.default.createElement(_switch.default, switchStylePropsForNewValidation, /*#__PURE__*/_react.default.createElement(_label.default, {
186
+ if (!validationRedesignOptIn) {
187
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_tooltipProvider.TooltipProvider, {
188
+ helpAriaLabel: helpAriaLabel,
189
+ tooltipPosition: tooltipPosition
190
+ }, /*#__PURE__*/_react.default.createElement(_switch.default, switchStyleProps, /*#__PURE__*/_react.default.createElement(_checkableInput.default, inputProps, /*#__PURE__*/_react.default.createElement(_switchSlider.default, switchSliderProps)))));
191
+ }
192
+ const defaultMargin = labelInline ? 1 : 0;
193
+ const defaultInputWrapperMargin = labelInline ? 3 : 0;
194
+ const errorMargin = error || warning ? defaultInputWrapperMargin : defaultMargin;
195
+ const direction = labelInline ? "row" : "column";
196
+ const reverseDirection = labelInline ? "row-reverse" : "column";
197
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_switch.default, switchStylePropsForNewValidation, /*#__PURE__*/_react.default.createElement(_box.default, {
198
+ "data-role": "field-reverse-wrapper",
199
+ display: "flex",
200
+ flexWrap: "wrap",
201
+ alignItems: error || warning ? "flex-start" : undefined,
202
+ flexDirection: !reverse ? reverseDirection : direction,
203
+ width: labelInline ? "100%" : "auto"
204
+ }, /*#__PURE__*/_react.default.createElement(_box.default, {
205
+ "data-role": "label-wrapper"
206
+ // width={labelInline ? rest.labelWidth : 30}
207
+ // minWidth={label && labelInline ? "32px" : 0}
208
+ }, /*#__PURE__*/_react.default.createElement(_label.default, {
209
+ isDarkBackground: isDarkBackground,
178
210
  labelId: labelId.current,
179
211
  disabled: disabled,
180
212
  isRequired: required,
181
213
  optional: isOptional
182
- }, label), labelHelp && /*#__PURE__*/_react.default.createElement(_switch.StyledHintText, {
214
+ }, label), labelHelp && /*#__PURE__*/_react.default.createElement(_box.default, {
215
+ "data-role": "hint-text-wrapper",
216
+ mb: labelInline ? 0 : 1,
217
+ mr: reverse ? 0 : 1,
218
+ ml: reverse ? 0 : 1
219
+ }, /*#__PURE__*/_react.default.createElement(_switch.StyledHintText, {
183
220
  "data-role": "hint-text",
184
- id: inputHintId.current
185
- }, labelHelp), /*#__PURE__*/_react.default.createElement(_box.default, {
186
- position: "relative"
221
+ id: inputHintId.current,
222
+ isDarkBackground: isDarkBackground
223
+ }, labelHelp))), /*#__PURE__*/_react.default.createElement(_box.default, {
224
+ ml: reverse ? errorMargin : defaultInputWrapperMargin,
225
+ mr: !reverse ? errorMargin : defaultInputWrapperMargin,
226
+ position: "relative",
227
+ id: "input-wrapper"
187
228
  }, /*#__PURE__*/_react.default.createElement(_validationMessage.default, {
188
229
  error: error,
189
230
  warning: warning,
190
- validationId: validationMessageId.current
231
+ validationId: validationMessageId.current,
232
+ isDarkBackground: isDarkBackground
191
233
  }), applyValidation && /*#__PURE__*/_react.default.createElement(_switch.ErrorBorder, {
192
234
  "data-role": "error-border",
193
- warning: !!(!error && warning)
235
+ warning: !!(!error && warning),
236
+ reverse: !reverse,
237
+ isDarkBackground: isDarkBackground
194
238
  }), /*#__PURE__*/_react.default.createElement(_checkableInput.default, _extends({
195
239
  ariaLabelledBy: `${label && labelId.current}`,
196
240
  ariaDescribedBy: ariaDescribedBy
197
- }, inputPropsForNewValidation), /*#__PURE__*/_react.default.createElement(_switchSlider.default, switchSliderPropsForNewValidation)))) : /*#__PURE__*/_react.default.createElement(_tooltipProvider.TooltipProvider, {
198
- helpAriaLabel: helpAriaLabel,
199
- tooltipPosition: tooltipPosition
200
- }, /*#__PURE__*/_react.default.createElement(_switch.default, switchStyleProps, /*#__PURE__*/_react.default.createElement(_checkableInput.default, inputProps, /*#__PURE__*/_react.default.createElement(_switchSlider.default, switchSliderProps)))));
241
+ }, inputPropsForNewValidation, {
242
+ fieldHelp: labelInline ? undefined : rest.fieldHelp
243
+ }), /*#__PURE__*/_react.default.createElement(_switchSlider.default, switchSliderPropsForNewValidation))))), labelInline && rest.fieldHelp && /*#__PURE__*/_react.default.createElement(_box.default, {
244
+ color: isDarkBackground ? "var(--colorsUtilityYang100)" : "var(--colorsUtilityYin090)"
245
+ }, rest.fieldHelp));
201
246
  });
202
247
  if (process.env.NODE_ENV !== "production") {
203
248
  Switch.propTypes = {
@@ -350,6 +395,7 @@ if (process.env.NODE_ENV !== "production") {
350
395
  "inputMode": _propTypes.default.oneOf(["decimal", "email", "none", "numeric", "search", "tel", "text", "url"]),
351
396
  "inputWidth": _propTypes.default.number,
352
397
  "is": _propTypes.default.string,
398
+ "isDarkBackground": _propTypes.default.bool,
353
399
  "isOptional": _propTypes.default.bool,
354
400
  "itemID": _propTypes.default.string,
355
401
  "itemProp": _propTypes.default.string,
@@ -1,6 +1,11 @@
1
+ interface StyledHintTextProps {
2
+ isDarkBackground?: boolean;
3
+ }
1
4
  export declare const ErrorBorder: import("styled-components").StyledComponent<"span", any, {
5
+ reverse: boolean;
2
6
  warning: boolean;
7
+ isDarkBackground: boolean;
3
8
  }, never>;
4
- export declare const StyledHintText: import("styled-components").StyledComponent<"div", any, {}, never>;
9
+ export declare const StyledHintText: import("styled-components").StyledComponent<"div", any, StyledHintTextProps, never>;
5
10
  declare const StyledSwitch: import("styled-components").StyledComponent<"div", any, {}, never>;
6
11
  export default StyledSwitch;
@@ -6,15 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = exports.StyledHintText = exports.ErrorBorder = void 0;
7
7
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
8
8
  var _styledSystem = require("styled-system");
9
- var _base = _interopRequireDefault(require("../../style/themes/base"));
10
- var _fieldHelp = _interopRequireDefault(require("../../__internal__/field-help/field-help.style"));
9
+ var _checkableInput = require("../../__internal__/checkable-input/checkable-input.style");
11
10
  var _hiddenCheckableInput = _interopRequireDefault(require("../../__internal__/checkable-input/hidden-checkable-input.style"));
11
+ var _fieldHelp = _interopRequireDefault(require("../../__internal__/field-help/field-help.style"));
12
+ var _formField = require("../../__internal__/form-field/form-field.style");
12
13
  var _label = require("../../__internal__/label/label.style");
13
- var _checkableInput = require("../../__internal__/checkable-input/checkable-input.style");
14
- var _switchSlider = _interopRequireDefault(require("./__internal__/switch-slider.style"));
15
14
  var _validationIcon = _interopRequireDefault(require("../../__internal__/validations/validation-icon.style"));
16
- var _formField = require("../../__internal__/form-field/form-field.style");
15
+ var _base = _interopRequireDefault(require("../../style/themes/base"));
17
16
  var _addFocusStyling = _interopRequireDefault(require("../../style/utils/add-focus-styling"));
17
+ var _switchSlider = _interopRequireDefault(require("./__internal__/switch-slider.style"));
18
18
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
19
  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); }
20
20
  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 && {}.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; }
@@ -23,23 +23,33 @@ const oldFocusStyling = `
23
23
  `;
24
24
  const ErrorBorder = exports.ErrorBorder = _styledComponents.default.span`
25
25
  ${({
26
- warning
27
- }) => (0, _styledComponents.css)`
28
- position: absolute;
29
- z-index: 6;
30
- width: 2px;
31
- background-color: ${warning ? "var(--colorsSemanticCaution500)" : "var(--colorsSemanticNegative500)"};
32
- left: -12px;
33
- bottom: -4px;
34
- top: 2px;
35
- `}
26
+ reverse,
27
+ warning,
28
+ isDarkBackground
29
+ }) => {
30
+ const darkBgColour = isDarkBackground ? "var(--colorsSemanticNegative450)" : "var(--colorsSemanticNegative500)";
31
+ return (0, _styledComponents.css)`
32
+ position: absolute;
33
+ z-index: 6;
34
+ width: 2px;
35
+ background-color: ${warning ? "var(--colorsSemanticCaution500)" : darkBgColour};
36
+ ${reverse ? "right" : "left"}: -12px;
37
+ bottom: -4px;
38
+ top: 2px;
39
+ `;
40
+ }}
36
41
  `;
37
42
  const StyledHintText = exports.StyledHintText = _styledComponents.default.div`
38
43
  margin-top: 8px;
39
44
  margin-bottom: 8px;
40
- color: var(--colorsUtilityYin055);
41
45
  font-size: 14px;
42
46
  font-weight: 400;
47
+ max-width: 160px;
48
+ ${({
49
+ isDarkBackground
50
+ }) => (0, _styledComponents.css)`
51
+ color: ${isDarkBackground ? "var(--colorsUtilityYang065)" : "var(--colorsUtilityYin055)"};
52
+ `}
43
53
  `;
44
54
  const StyledSwitch = _styledComponents.default.div`
45
55
  ${({
@@ -60,6 +70,9 @@ const StyledSwitch = _styledComponents.default.div`
60
70
  `}
61
71
  }
62
72
 
73
+ display: flex;
74
+ flex-flow: ${labelInline ? "row wrap" : "column wrap"};
75
+
63
76
  ${_checkableInput.StyledCheckableInput}, ${_hiddenCheckableInput.default} {
64
77
  border: none;
65
78
  box-sizing: border-box;
@@ -1,5 +1,5 @@
1
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>;
2
+ export declare const StyledLabel: import("styled-components").StyledComponent<import("react").MemoExoticComponent<({ align, as, children, disabled, error, help, helpIcon, htmlFor, info, inline, isDarkBackground, 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
3
  export declare const StyledHintText: import("styled-components").StyledComponent<"div", any, {
4
4
  isDisabled?: boolean | undefined;
5
5
  hasError?: boolean | undefined;
@@ -41,7 +41,8 @@ const enGB = {
41
41
  ariaLabels: {
42
42
  previousMonthButton: () => "Previous month",
43
43
  nextMonthButton: () => "Next month"
44
- }
44
+ },
45
+ dateFormatOverride: undefined
45
46
  },
46
47
  dialog: {
47
48
  ariaLabels: {
@@ -34,6 +34,7 @@ interface Locale {
34
34
  previousMonthButton: () => string;
35
35
  nextMonthButton: () => string;
36
36
  };
37
+ dateFormatOverride?: string;
37
38
  };
38
39
  dialog: {
39
40
  ariaLabels: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "144.4.1",
3
+ "version": "144.6.0",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "files": [
6
6
  "lib",