carbon-react 152.2.0 → 152.3.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.
Files changed (150) hide show
  1. package/esm/__internal__/ai-icon/ai-icon.component.d.ts +4 -0
  2. package/esm/__internal__/ai-icon/ai-icon.component.js +28 -0
  3. package/esm/__internal__/ai-icon/index.d.ts +1 -0
  4. package/esm/__internal__/ai-icon/index.js +1 -0
  5. package/esm/__internal__/fieldset/fieldset.component.js +2 -2
  6. package/esm/__internal__/fieldset/fieldset.style.js +1 -0
  7. package/esm/__internal__/form-field/form-field.component.js +2 -2
  8. package/esm/__internal__/form-field/form-field.style.js +1 -0
  9. package/esm/__internal__/utils/helpers/events/events.d.ts +1 -1
  10. package/esm/components/button/button-types.style.js +11 -1
  11. package/esm/components/button/button.component.js +1 -1
  12. package/esm/components/checkbox/checkbox-group/checkbox-group.component.js +2 -7
  13. package/esm/components/checkbox/checkbox.component.js +2 -2
  14. package/esm/components/checkbox/checkbox.style.js +1 -0
  15. package/esm/components/date/date.component.js +2 -3
  16. package/esm/components/date/date.style.js +1 -0
  17. package/esm/components/date-range/date-range.style.js +1 -0
  18. package/esm/components/fieldset/fieldset.component.js +3 -6
  19. package/esm/components/fieldset/fieldset.style.js +5 -0
  20. package/esm/components/form/form.component.js +3 -6
  21. package/esm/components/form/form.style.d.ts +1 -1
  22. package/esm/components/form/form.style.js +20 -11
  23. package/esm/components/hr/hr.style.js +1 -1
  24. package/esm/components/image/image.style.d.ts +1 -1
  25. package/esm/components/inline-inputs/inline-inputs.component.js +3 -6
  26. package/esm/components/inline-inputs/inline-inputs.style.js +1 -0
  27. package/esm/components/message/message.component.d.ts +5 -1
  28. package/esm/components/message/message.component.js +38 -24
  29. package/esm/components/message/message.style.d.ts +4 -1
  30. package/esm/components/message/message.style.js +39 -13
  31. package/esm/components/numeral-date/numeral-date.component.js +2 -1
  32. package/esm/components/search/search.component.js +3 -3
  33. package/esm/components/search/search.style.js +1 -0
  34. package/esm/components/select/filterable-select/filterable-select.component.js +2 -3
  35. package/esm/components/select/multi-select/multi-select.component.js +2 -3
  36. package/esm/components/select/select.style.js +1 -0
  37. package/esm/components/select/simple-select/simple-select.component.js +2 -3
  38. package/esm/components/split-button/split-button-toggle.style.d.ts +1 -0
  39. package/esm/components/split-button/split-button-toggle.style.js +30 -2
  40. package/esm/components/split-button/split-button.component.d.ts +2 -0
  41. package/esm/components/split-button/split-button.component.js +4 -0
  42. package/esm/components/switch/switch.component.js +2 -2
  43. package/esm/components/switch/switch.style.js +1 -0
  44. package/esm/components/text-editor/text-editor.style.js +1 -0
  45. package/esm/components/textarea/textarea.component.js +4 -3
  46. package/esm/components/textarea/textarea.style.js +1 -0
  47. package/esm/components/textbox/textbox.component.js +1 -1
  48. package/esm/components/time/index.d.ts +1 -1
  49. package/esm/components/time/time.component.js +22 -4
  50. package/esm/components/toast/toast.component.js +2 -1
  51. package/esm/components/toast/toast.style.d.ts +2 -3
  52. package/esm/components/toast/toast.style.js +1 -2
  53. package/esm/components/typography/typography.style.d.ts +1 -1
  54. package/esm/locales/en-gb.js +2 -1
  55. package/esm/locales/locale.d.ts +1 -0
  56. package/lib/__internal__/ai-icon/ai-icon.component.d.ts +4 -0
  57. package/lib/__internal__/ai-icon/ai-icon.component.js +36 -0
  58. package/lib/__internal__/ai-icon/index.d.ts +1 -0
  59. package/lib/__internal__/ai-icon/index.js +13 -0
  60. package/lib/__internal__/{form-spacing-provider → ai-icon}/package.json +1 -1
  61. package/lib/__internal__/fieldset/fieldset.component.js +2 -2
  62. package/lib/__internal__/fieldset/fieldset.style.js +1 -0
  63. package/lib/__internal__/form-field/form-field.component.js +2 -2
  64. package/lib/__internal__/form-field/form-field.style.js +1 -0
  65. package/lib/__internal__/utils/helpers/events/events.d.ts +1 -1
  66. package/lib/components/button/button-types.style.js +11 -1
  67. package/lib/components/button/button.component.js +1 -1
  68. package/lib/components/checkbox/checkbox-group/checkbox-group.component.js +2 -7
  69. package/lib/components/checkbox/checkbox.component.js +2 -2
  70. package/lib/components/checkbox/checkbox.style.js +1 -0
  71. package/lib/components/date/date.component.js +1 -2
  72. package/lib/components/date/date.style.js +1 -0
  73. package/lib/components/date-range/date-range.style.js +1 -0
  74. package/lib/components/fieldset/fieldset.component.js +3 -6
  75. package/lib/components/fieldset/fieldset.style.js +5 -0
  76. package/lib/components/form/form.component.js +3 -6
  77. package/lib/components/form/form.style.d.ts +1 -1
  78. package/lib/components/form/form.style.js +20 -11
  79. package/lib/components/hr/hr.style.js +1 -1
  80. package/lib/components/image/image.style.d.ts +1 -1
  81. package/lib/components/inline-inputs/inline-inputs.component.js +3 -6
  82. package/lib/components/inline-inputs/inline-inputs.style.js +1 -0
  83. package/lib/components/message/message.component.d.ts +5 -1
  84. package/lib/components/message/message.component.js +38 -24
  85. package/lib/components/message/message.style.d.ts +4 -1
  86. package/lib/components/message/message.style.js +38 -13
  87. package/lib/components/numeral-date/numeral-date.component.js +2 -1
  88. package/lib/components/search/search.component.js +3 -3
  89. package/lib/components/search/search.style.js +1 -0
  90. package/lib/components/select/filterable-select/filterable-select.component.js +1 -2
  91. package/lib/components/select/multi-select/multi-select.component.js +1 -2
  92. package/lib/components/select/select.style.js +1 -0
  93. package/lib/components/select/simple-select/simple-select.component.js +1 -2
  94. package/lib/components/split-button/split-button-toggle.style.d.ts +1 -0
  95. package/lib/components/split-button/split-button-toggle.style.js +30 -2
  96. package/lib/components/split-button/split-button.component.d.ts +2 -0
  97. package/lib/components/split-button/split-button.component.js +4 -0
  98. package/lib/components/switch/switch.component.js +2 -2
  99. package/lib/components/switch/switch.style.js +1 -0
  100. package/lib/components/text-editor/text-editor.style.js +1 -0
  101. package/lib/components/textarea/textarea.component.js +4 -3
  102. package/lib/components/textarea/textarea.style.js +1 -0
  103. package/lib/components/textbox/textbox.component.js +1 -1
  104. package/lib/components/time/index.d.ts +1 -1
  105. package/lib/components/time/time.component.js +21 -3
  106. package/lib/components/toast/toast.component.js +2 -1
  107. package/lib/components/toast/toast.style.d.ts +2 -3
  108. package/lib/components/toast/toast.style.js +0 -7
  109. package/lib/components/typography/typography.style.d.ts +1 -1
  110. package/lib/locales/en-gb.js +2 -1
  111. package/lib/locales/locale.d.ts +1 -0
  112. package/package.json +15 -15
  113. package/esm/__internal__/form-spacing-provider/form-spacing-provider.component.d.ts +0 -7
  114. package/esm/__internal__/form-spacing-provider/form-spacing-provider.component.js +0 -11
  115. package/esm/__internal__/form-spacing-provider/form-spacing.context.d.ts +0 -5
  116. package/esm/__internal__/form-spacing-provider/form-spacing.context.js +0 -2
  117. package/esm/__internal__/form-spacing-provider/index.d.ts +0 -3
  118. package/esm/__internal__/form-spacing-provider/index.js +0 -2
  119. package/esm/components/message/__internal__/message-content/message-content.component.d.ts +0 -9
  120. package/esm/components/message/__internal__/message-content/message-content.component.js +0 -19
  121. package/esm/components/message/__internal__/message-content/message-content.style.d.ts +0 -3
  122. package/esm/components/message/__internal__/message-content/message-content.style.js +0 -12
  123. package/esm/components/message/__internal__/type-icon/type-icon.component.d.ts +0 -8
  124. package/esm/components/message/__internal__/type-icon/type-icon.component.js +0 -20
  125. package/esm/components/message/__internal__/type-icon/type-icon.style.d.ts +0 -7
  126. package/esm/components/message/__internal__/type-icon/type-icon.style.js +0 -38
  127. package/esm/hooks/__internal__/useFormSpacing/add-form-spacing/index.d.ts +0 -3
  128. package/esm/hooks/__internal__/useFormSpacing/add-form-spacing/index.js +0 -27
  129. package/esm/hooks/__internal__/useFormSpacing/index.d.ts +0 -3
  130. package/esm/hooks/__internal__/useFormSpacing/index.js +0 -11
  131. package/lib/__internal__/form-spacing-provider/form-spacing-provider.component.d.ts +0 -7
  132. package/lib/__internal__/form-spacing-provider/form-spacing-provider.component.js +0 -18
  133. package/lib/__internal__/form-spacing-provider/form-spacing.context.d.ts +0 -5
  134. package/lib/__internal__/form-spacing-provider/form-spacing.context.js +0 -9
  135. package/lib/__internal__/form-spacing-provider/index.d.ts +0 -3
  136. package/lib/__internal__/form-spacing-provider/index.js +0 -20
  137. package/lib/components/message/__internal__/message-content/message-content.component.d.ts +0 -9
  138. package/lib/components/message/__internal__/message-content/message-content.component.js +0 -26
  139. package/lib/components/message/__internal__/message-content/message-content.style.d.ts +0 -3
  140. package/lib/components/message/__internal__/message-content/message-content.style.js +0 -19
  141. package/lib/components/message/__internal__/type-icon/type-icon.component.d.ts +0 -8
  142. package/lib/components/message/__internal__/type-icon/type-icon.component.js +0 -27
  143. package/lib/components/message/__internal__/type-icon/type-icon.style.d.ts +0 -7
  144. package/lib/components/message/__internal__/type-icon/type-icon.style.js +0 -46
  145. package/lib/hooks/__internal__/useFormSpacing/add-form-spacing/index.d.ts +0 -3
  146. package/lib/hooks/__internal__/useFormSpacing/add-form-spacing/index.js +0 -34
  147. package/lib/hooks/__internal__/useFormSpacing/add-form-spacing/package.json +0 -6
  148. package/lib/hooks/__internal__/useFormSpacing/index.d.ts +0 -3
  149. package/lib/hooks/__internal__/useFormSpacing/index.js +0 -19
  150. package/lib/hooks/__internal__/useFormSpacing/package.json +0 -6
@@ -163,8 +163,7 @@ const Search = exports.Search = /*#__PURE__*/_react.default.forwardRef(({
163
163
  maxWidth: maxWidth,
164
164
  searchHasValue: searchHasValue,
165
165
  showSearchButton: !!searchButton,
166
- variant: variant,
167
- mb: 0
166
+ variant: variant
168
167
  }, (0, _utils.filterStyledSystemMarginProps)(rest), {
169
168
  id: id,
170
169
  name: name
@@ -189,7 +188,8 @@ const Search = exports.Search = /*#__PURE__*/_react.default.forwardRef(({
189
188
  type: "search",
190
189
  ml: 1
191
190
  }) : undefined,
192
- tooltipPosition: tooltipPosition
191
+ tooltipPosition: tooltipPosition,
192
+ my: 0 // prevents any form spacing being applied
193
193
  }), searchButton && /*#__PURE__*/_react.default.createElement(_searchButton.default, null, /*#__PURE__*/_react.default.createElement(_button.default, _extends({
194
194
  "aria-label": searchButtonAriaLabel || searchButtonText,
195
195
  size: "medium",
@@ -28,6 +28,7 @@ const StyledSearch = _styledComponents.default.div`
28
28
  const darkVariant = variant === "dark";
29
29
  const variantColor = darkVariant ? "var(--colorsUtilityYang080)" : "var(--colorsUtilityMajor300)";
30
30
  return (0, _styledComponents.css)`
31
+ margin-bottom: var(--fieldSpacing);
31
32
  ${_styledSystem.margin}
32
33
  width: ${searchWidth ? `${searchWidth}` : "100%"};
33
34
  max-width: ${maxWidth ? `${maxWidth}` : "100%"};
@@ -17,7 +17,6 @@ var _areObjectsEqual = _interopRequireDefault(require("../__internal__/utils/are
17
17
  var _isNavigationKey = _interopRequireDefault(require("../__internal__/utils/is-navigation-key"));
18
18
  var _logger = _interopRequireDefault(require("../../../__internal__/utils/logger"));
19
19
  var _useStableCallback = _interopRequireDefault(require("../../../hooks/__internal__/useStableCallback"));
20
- var _useFormSpacing = _interopRequireDefault(require("../../../hooks/__internal__/useFormSpacing"));
21
20
  var _useInputAccessibility = _interopRequireDefault(require("../../../hooks/__internal__/useInputAccessibility/useInputAccessibility"));
22
21
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
23
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); }
@@ -466,7 +465,7 @@ const FilterableSelect = exports.FilterableSelect = /*#__PURE__*/_react.default.
466
465
  listWidth
467
466
  };
468
467
  const selectList = disableDefaultFiltering ? /*#__PURE__*/_react.default.createElement(_selectList.default, selectListProps, children) : /*#__PURE__*/_react.default.createElement(FilterableSelectList, selectListProps, children);
469
- const marginProps = (0, _useFormSpacing.default)(textboxProps);
468
+ const marginProps = (0, _utils.filterStyledSystemMarginProps)(textboxProps);
470
469
  return /*#__PURE__*/_react.default.createElement(_select.default, _extends({
471
470
  hasTextCursor: true,
472
471
  readOnly: readOnly,
@@ -18,7 +18,6 @@ var _isExpectedValue = _interopRequireDefault(require("../__internal__/utils/is-
18
18
  var _isNavigationKey = _interopRequireDefault(require("../__internal__/utils/is-navigation-key"));
19
19
  var _logger = _interopRequireDefault(require("../../../__internal__/utils/logger"));
20
20
  var _useStableCallback = _interopRequireDefault(require("../../../hooks/__internal__/useStableCallback"));
21
- var _useFormSpacing = _interopRequireDefault(require("../../../hooks/__internal__/useFormSpacing"));
22
21
  var _useInputAccessibility = _interopRequireDefault(require("../../../hooks/__internal__/useInputAccessibility/useInputAccessibility"));
23
22
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
24
23
  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); }
@@ -470,7 +469,7 @@ const MultiSelect = exports.MultiSelect = /*#__PURE__*/_react.default.forwardRef
470
469
  virtualScrollOverscan: virtualScrollOverscan,
471
470
  listWidth: listWidth
472
471
  }, children);
473
- const marginProps = (0, _useFormSpacing.default)(textboxProps);
472
+ const marginProps = (0, _utils.filterStyledSystemMarginProps)(textboxProps);
474
473
  return /*#__PURE__*/_react.default.createElement(_multiSelect.StyledSelectMultiSelect, _extends({
475
474
  disabled: disabled,
476
475
  readOnly: readOnly,
@@ -22,6 +22,7 @@ const StyledSelect = _styledComponents.default.div`
22
22
  transparent,
23
23
  isOpen
24
24
  }) => (0, _styledComponents.css)`
25
+ margin-bottom: var(--fieldSpacing);
25
26
  ${_styledSystem.margin}
26
27
 
27
28
  position: relative;
@@ -15,7 +15,6 @@ var _getNextChildByText = _interopRequireDefault(require("../__internal__/utils/
15
15
  var _isExpectedOption = _interopRequireDefault(require("../__internal__/utils/is-expected-option"));
16
16
  var _isNavigationKey = _interopRequireDefault(require("../__internal__/utils/is-navigation-key"));
17
17
  var _logger = _interopRequireDefault(require("../../../__internal__/utils/logger"));
18
- var _useFormSpacing = _interopRequireDefault(require("../../../hooks/__internal__/useFormSpacing"));
19
18
  var _useInputAccessibility = _interopRequireDefault(require("../../../hooks/__internal__/useInputAccessibility/useInputAccessibility"));
20
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
20
  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); }
@@ -335,7 +334,7 @@ const SimpleSelect = exports.SimpleSelect = /*#__PURE__*/_react.default.forwardR
335
334
  virtualScrollOverscan: virtualScrollOverscan,
336
335
  listWidth: listWidth
337
336
  }, children);
338
- const marginProps = (0, _useFormSpacing.default)(props);
337
+ const marginProps = (0, _utils.filterStyledSystemMarginProps)(props);
339
338
  return /*#__PURE__*/_react.default.createElement(_select.default, _extends({
340
339
  transparent: transparent,
341
340
  disabled: disabled,
@@ -3,6 +3,7 @@ declare type StyledSplitButtonToggleProps = {
3
3
  disabled: boolean;
4
4
  displayed: boolean;
5
5
  size: "small" | "medium" | "large";
6
+ isWhite?: boolean;
6
7
  };
7
8
  declare const StyledSplitButtonToggle: import("styled-components").StyledComponent<"button", any, import("styled-system").SpaceProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>, string | number | symbol> & Omit<import("../button").ButtonProps, "buttonType"> & {
8
9
  iconOnly?: boolean | undefined;
@@ -21,12 +21,13 @@ const StyledSplitButtonToggle = (0, _styledComponents.default)(_button.default)`
21
21
  buttonType,
22
22
  disabled,
23
23
  displayed,
24
- size
24
+ size,
25
+ isWhite
25
26
  }) => (0, _styledComponents.css)`
26
27
  border-top-left-radius: var(--borderRadius000);
27
28
  border-bottom-left-radius: var(--borderRadius000);
28
29
 
29
- ${!disabled && displayed ? (0, _styledComponents.css)`
30
+ ${!disabled && displayed && !isWhite ? (0, _styledComponents.css)`
30
31
  background-color: var(--colorsActionMajor500);
31
32
  border-color: var(--colorsActionMajor500);
32
33
 
@@ -39,6 +40,21 @@ const StyledSplitButtonToggle = (0, _styledComponents.default)(_button.default)`
39
40
  border-left-color: var(--colorsSemanticFocus500);
40
41
  }
41
42
  ` : ""}
43
+
44
+ ${!disabled && displayed && isWhite ? (0, _styledComponents.css)`
45
+ background-color: var(--colorsActionMajorYang100);
46
+ border-color: var(--colorsActionMajorYang100);
47
+
48
+ &,
49
+ ${_icon.default} {
50
+ color: var(--colorsYin100);
51
+ }
52
+
53
+ &:focus {
54
+ border-left-color: var(--colorsSemanticFocus500);
55
+ }
56
+ ` : ""}
57
+
42
58
  ${!disabled && buttonType === "primary" && `
43
59
  position: relative;
44
60
  &::before {
@@ -72,6 +88,18 @@ const StyledSplitButtonToggle = (0, _styledComponents.default)(_button.default)`
72
88
  color: var(--colorsActionMajorYang100);
73
89
  }
74
90
  }
91
+
92
+ ${!disabled && isWhite && `
93
+ &:focus {
94
+ background-color: var(--colorsActionMajorYang100);
95
+ border-color: var(--colorsActionMajorYang100);
96
+
97
+ &,
98
+ ${_icon.default} {
99
+ color: var(--colorsYin100);
100
+ }
101
+ }
102
+ `}
75
103
  `}
76
104
  `;
77
105
  StyledSplitButtonToggle.defaultProps = {
@@ -25,6 +25,8 @@ export interface SplitButtonProps extends React.ButtonHTMLAttributes<HTMLButtonE
25
25
  text: string;
26
26
  /** Sets rendering position of menu */
27
27
  position?: "left" | "right";
28
+ /** Renders the white variant of the secondary split button */
29
+ isWhite?: boolean;
28
30
  }
29
31
  export declare type SplitButtonHandle = {
30
32
  /** Programmatically focus the main button */
@@ -41,6 +41,7 @@ const SplitButton = exports.SplitButton = /*#__PURE__*/(0, _react.forwardRef)(({
41
41
  "data-element": dataElement,
42
42
  "data-role": dataRole,
43
43
  "aria-label": ariaLabel,
44
+ isWhite = false,
44
45
  ...rest
45
46
  }, ref) => {
46
47
  const locale = (0, _useLocale.default)();
@@ -51,6 +52,7 @@ const SplitButton = exports.SplitButton = /*#__PURE__*/(0, _react.forwardRef)(({
51
52
  const {
52
53
  isInFlatTable
53
54
  } = (0, _react.useContext)(_flatTable.default);
55
+ const shouldRenderIsWhiteVariant = buttonType === "secondary" && isWhite;
54
56
  (0, _react.useImperativeHandle)(ref, () => ({
55
57
  focusMainButton() {
56
58
  mainButtonRef.current?.focus();
@@ -85,12 +87,14 @@ const SplitButton = exports.SplitButton = /*#__PURE__*/(0, _react.forwardRef)(({
85
87
  onClick: handleMainClick,
86
88
  size,
87
89
  subtext,
90
+ isWhite: shouldRenderIsWhiteVariant,
88
91
  ...(0, _utils.filterOutStyledSystemSpacingProps)(rest)
89
92
  };
90
93
  const handleToggleClick = () => {
91
94
  showButtons();
92
95
  };
93
96
  const toggleButtonProps = {
97
+ isWhite: shouldRenderIsWhiteVariant,
94
98
  disabled,
95
99
  displayed: showAdditionalButtons,
96
100
  onTouchStart: showButtons,
@@ -12,12 +12,12 @@ var _tooltipProvider = require("../../__internal__/tooltip-provider");
12
12
  var _newValidation = _interopRequireDefault(require("../carbon-provider/__internal__/new-validation.context"));
13
13
  var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
14
14
  var _validationMessage = _interopRequireDefault(require("../../__internal__/validation-message/validation-message.component"));
15
- var _useFormSpacing = _interopRequireDefault(require("../../hooks/__internal__/useFormSpacing"));
16
15
  var _useIsAboveBreakpoint = _interopRequireDefault(require("../../hooks/__internal__/useIsAboveBreakpoint"));
17
16
  var _switch = _interopRequireWildcard(require("./switch.style"));
18
17
  var _switchSlider = _interopRequireDefault(require("./__internal__/switch-slider.component"));
19
18
  var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
20
19
  var _hintText = _interopRequireDefault(require("../../__internal__/hint-text"));
20
+ var _utils = require("../../style/utils");
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); }
23
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 && {}.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; }
@@ -80,7 +80,7 @@ const Switch = exports.Switch = /*#__PURE__*/_react.default.forwardRef(({
80
80
  shouldLabelBeInline = largeScreen;
81
81
  }
82
82
  const shouldValidationBeOnLabel = labelInline && !reverse ? true : validationOnLabel;
83
- const marginProps = (0, _useFormSpacing.default)(rest);
83
+ const marginProps = (0, _utils.filterStyledSystemMarginProps)(rest);
84
84
  const switchStyleProps = {
85
85
  "data-component": "switch",
86
86
  "data-role": dataRole,
@@ -43,6 +43,7 @@ const StyledSwitch = _styledComponents.default.div`
43
43
  reverse,
44
44
  size
45
45
  }) => (0, _styledComponents.css)`
46
+ margin-bottom: var(--fieldSpacing);
46
47
  ${_styledSystem.margin}
47
48
  ${_formField.FieldLineStyle} {
48
49
  display: flex;
@@ -15,6 +15,7 @@ const StyledTextEditor = exports.StyledTextEditor = (0, _styledComponents.defaul
15
15
  position: relative;
16
16
  `;
17
17
  const StyledTextEditorWrapper = exports.StyledTextEditorWrapper = _styledComponents.default.div`
18
+ margin-bottom: var(--fieldSpacing);
18
19
  ${_styledSystem.margin}
19
20
  `;
20
21
  const StyledWrapper = exports.StyledWrapper = _styledComponents.default.div`
@@ -21,8 +21,8 @@ var _textbox = _interopRequireDefault(require("../textbox/textbox.style"));
21
21
  var _validationMessage = _interopRequireDefault(require("../../__internal__/validation-message"));
22
22
  var _box = _interopRequireDefault(require("../box"));
23
23
  var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
24
- var _useFormSpacing = _interopRequireDefault(require("../../hooks/__internal__/useFormSpacing"));
25
24
  var _hintText = _interopRequireDefault(require("../../__internal__/hint-text"));
25
+ var _utils = require("../../style/utils");
26
26
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
27
27
  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); }
28
28
  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; }
@@ -222,7 +222,7 @@ const Textarea = exports.OriginalTextarea = exports.Textarea = /*#__PURE__*/_rea
222
222
  validationIconId: validationRedesignOptIn ? undefined : validationId,
223
223
  useValidationIcon: !(validationRedesignOptIn || validationOnLabel)
224
224
  }));
225
- const marginProps = (0, _useFormSpacing.default)(rest);
225
+ const marginProps = (0, _utils.filterStyledSystemMarginProps)(rest);
226
226
  return /*#__PURE__*/_react.default.createElement(_tooltipProvider.TooltipProvider, {
227
227
  tooltipPosition: tooltipPosition,
228
228
  helpAriaLabel: helpAriaLabel
@@ -252,7 +252,8 @@ const Textarea = exports.OriginalTextarea = exports.Textarea = /*#__PURE__*/_rea
252
252
  isOptional: isOptional,
253
253
  useValidationIcon: computeLabelPropValues(validationOnLabel),
254
254
  adaptiveLabelBreakpoint: adaptiveLabelBreakpoint,
255
- validationRedesignOptIn: validationRedesignOptIn
255
+ validationRedesignOptIn: validationRedesignOptIn,
256
+ my: 0 // prevents any form spacing being applied
256
257
  }, (inputHint || labelHelp && validationRedesignOptIn) && /*#__PURE__*/_react.default.createElement(_hintText.default, {
257
258
  align: labelAlign,
258
259
  id: inputHintId,
@@ -15,6 +15,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
15
15
  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; }
16
16
  const DEFAULT_MIN_HEIGHT = exports.DEFAULT_MIN_HEIGHT = 64;
17
17
  const StyledTextarea = _styledComponents.default.div`
18
+ margin-bottom: var(--fieldSpacing);
18
19
  ${_styledSystem.margin};
19
20
 
20
21
  ${_input.default} {
@@ -229,7 +229,7 @@ const Textbox = exports.Textbox = /*#__PURE__*/_react.default.forwardRef(({
229
229
  warning: warning
230
230
  }), !disableErrorBorder && (error || warning) && /*#__PURE__*/_react.default.createElement(_textbox.default, {
231
231
  warning: !!(!error && warning)
232
- }), input) : input), characterCount));
232
+ }), input) : input, characterCount)));
233
233
  });
234
234
  Textbox.displayName = "Textbox";
235
235
  var _default = exports.default = Textbox;
@@ -1,2 +1,2 @@
1
1
  export { default as Time } from "./time.component";
2
- export type { TimeValue, TimeProps, TimeHandle, ToggleValue, } from "./time.component";
2
+ export type { TimeValue, TimeProps, TimeHandle, ToggleValue, TimeInputEvent, } from "./time.component";
@@ -9,6 +9,7 @@ var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/gui
9
9
  var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
10
10
  var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
11
11
  var _useInputAccessibility = _interopRequireDefault(require("../../hooks/__internal__/useInputAccessibility"));
12
+ var _utils = require("../../style/utils");
12
13
  var _fieldset = _interopRequireDefault(require("../../__internal__/fieldset"));
13
14
  var _box = _interopRequireDefault(require("../box"));
14
15
  var _textbox = _interopRequireDefault(require("../textbox/textbox.style"));
@@ -77,6 +78,21 @@ const Time = /*#__PURE__*/_react.default.forwardRef(({
77
78
  const minsAriaLabel = minutesAriaLabel || locale.time.minutesAriaLabelText();
78
79
  const hoursRef = (0, _react.useRef)(null);
79
80
  const minsRef = (0, _react.useRef)(null);
81
+ (0, _react.useEffect)(() => {
82
+ const updates = [...inputValues];
83
+ if (inputValues[0] !== hourValue) {
84
+ updates[0] = hourValue;
85
+ }
86
+ if (inputValues[1] !== minuteValue) {
87
+ updates[1] = minuteValue;
88
+ }
89
+ if (inputValues[0] !== hourValue || inputValues[1] !== minuteValue) {
90
+ setInputValues(updates);
91
+ const formattedHours = hourValue.length ? hourValue.padStart(2, "0") : hourValue;
92
+ const formattedMinutes = minuteValue.length ? minuteValue.padStart(2, "0") : minuteValue;
93
+ setFormattedInputValues([formattedHours, formattedMinutes]);
94
+ }
95
+ }, [hourValue, minuteValue, inputValues]);
80
96
  const computedValidations = (hrs, mins) => {
81
97
  const hoursIsString = typeof hrs === "string";
82
98
  const minutesIsString = typeof mins === "string";
@@ -179,7 +195,7 @@ const Time = /*#__PURE__*/_react.default.forwardRef(({
179
195
  isDisabled: disabled,
180
196
  name: name,
181
197
  id: internalId.current
182
- }, rest, (0, _tags.default)("time", rest), {
198
+ }, rest, (0, _utils.filterStyledSystemMarginProps)(rest), (0, _tags.default)("time", rest), {
183
199
  "aria-describedby": inputHint ? combinedAriaDescribedBy : ariaDescribedBy
184
200
  }), inputHint && /*#__PURE__*/_react.default.createElement(_hintText.default, {
185
201
  align: labelAlign,
@@ -213,7 +229,8 @@ const Time = /*#__PURE__*/_react.default.forwardRef(({
213
229
  error: !!hoursError,
214
230
  warning: !!hoursWarning,
215
231
  disabled: disabled,
216
- readOnly: readOnly
232
+ readOnly: readOnly,
233
+ my: 0 // prevents any form spacing being applied
217
234
  }))), /*#__PURE__*/_react.default.createElement(_box.default, {
218
235
  display: "flex",
219
236
  flexDirection: "column",
@@ -241,7 +258,8 @@ const Time = /*#__PURE__*/_react.default.forwardRef(({
241
258
  error: !!minutesError,
242
259
  warning: !!minutesWarning,
243
260
  disabled: disabled,
244
- readOnly: readOnly
261
+ readOnly: readOnly,
262
+ my: 0 // prevents any form spacing being applied
245
263
  }))), showToggle && /*#__PURE__*/_react.default.createElement(_box.default, {
246
264
  display: "flex",
247
265
  flexDirection: "column",
@@ -9,6 +9,7 @@ var _reactTransitionGroup = require("react-transition-group");
9
9
  var _icon = _interopRequireDefault(require("../icon"));
10
10
  var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
11
11
  var _toast = require("./toast.style");
12
+ var _message = require("../message/message.style");
12
13
  var _iconButton = _interopRequireDefault(require("../icon-button"));
13
14
  var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
14
15
  var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
@@ -141,7 +142,7 @@ const Toast = exports.Toast = /*#__PURE__*/_react.default.forwardRef(({
141
142
  }, !disableAutoFocus && {
142
143
  tabIndex,
143
144
  onBlur: () => setTabIndex(undefined)
144
- }), !isNotice && /*#__PURE__*/_react.default.createElement(_toast.TypeIcon, {
145
+ }), !isNotice && /*#__PURE__*/_react.default.createElement(_message.TypeIconStyle, {
145
146
  variant: isNotification ? "info" : variant,
146
147
  "data-role": "toast-type-icon"
147
148
  }, /*#__PURE__*/_react.default.createElement(_icon.default, {
@@ -1,12 +1,11 @@
1
1
  /// <reference types="react" />
2
- import TypeIcon from "../message/__internal__/type-icon/type-icon.style";
3
2
  import { MessageVariant } from "../message/message.component";
4
3
  declare const StyledPortal: import("styled-components").StyledComponent<({ children, className, id, onReposition, inertOptOut, }: import("../portal/portal").PortalProps) => import("react").JSX.Element, any, {
5
4
  align?: "center" | "left" | "right" | undefined;
6
5
  alignY?: "center" | "top" | "bottom" | undefined;
7
6
  isNotice?: boolean | undefined;
8
7
  }, never>;
9
- declare type ToastVariants = MessageVariant;
8
+ declare type ToastVariants = Exclude<MessageVariant, "ai">;
10
9
  declare type ToastStyleProps = {
11
10
  align?: "left" | "center" | "right";
12
11
  alignY?: "top" | "center" | "bottom";
@@ -24,4 +23,4 @@ declare const ToastWrapper: import("styled-components").StyledComponent<"div", a
24
23
  align?: "center" | "left" | "right" | undefined;
25
24
  isNotice?: boolean | undefined;
26
25
  }, never>;
27
- export { StyledPortal, StyledToast, TypeIcon, StyledToastContent, ToastWrapper, };
26
+ export { StyledPortal, StyledToast, StyledToastContent, ToastWrapper };
@@ -4,14 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ToastWrapper = exports.StyledToastContent = exports.StyledToast = exports.StyledPortal = void 0;
7
- Object.defineProperty(exports, "TypeIcon", {
8
- enumerable: true,
9
- get: function () {
10
- return _typeIcon.default;
11
- }
12
- });
13
7
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
14
- var _typeIcon = _interopRequireDefault(require("../message/__internal__/type-icon/type-icon.style"));
15
8
  var _iconButton = _interopRequireDefault(require("../icon-button/icon-button.style"));
16
9
  var _portal = _interopRequireDefault(require("../portal/portal"));
17
10
  var _base = _interopRequireDefault(require("../../style/themes/base"));
@@ -8,5 +8,5 @@ declare const StyledTypography: import("styled-components").StyledComponent<"spa
8
8
  textDecoration: string;
9
9
  lineHeight: string;
10
10
  defaultMargin: string;
11
- } & TypographyProps, "textDecoration" | "size" | "as" | "weight" | "textTransform" | "lineHeight" | "defaultMargin">;
11
+ } & TypographyProps, "textDecoration" | "as" | "size" | "weight" | "textTransform" | "lineHeight" | "defaultMargin">;
12
12
  export default StyledTypography;
@@ -115,7 +115,8 @@ const enGB = {
115
115
  info: () => "Information",
116
116
  success: () => "Success",
117
117
  warning: () => "Warning",
118
- neutral: () => "Information"
118
+ neutral: () => "Information",
119
+ ai: () => "AI Information"
119
120
  },
120
121
  numeralDate: {
121
122
  validation: {
@@ -93,6 +93,7 @@ interface Locale {
93
93
  success: () => string;
94
94
  warning: () => string;
95
95
  neutral: () => string;
96
+ ai?: () => string;
96
97
  };
97
98
  numeralDate: {
98
99
  validation: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "152.2.0",
3
+ "version": "152.3.1",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "files": [
6
6
  "lib",
@@ -74,20 +74,20 @@
74
74
  "@semantic-release/changelog": "^6.0.3",
75
75
  "@semantic-release/exec": "^6.0.3",
76
76
  "@semantic-release/git": "^10.0.1",
77
- "@storybook/addon-a11y": "^8.4.7",
78
- "@storybook/addon-actions": "^8.4.7",
79
- "@storybook/addon-controls": "^8.4.7",
80
- "@storybook/addon-docs": "^8.4.7",
81
- "@storybook/addon-toolbars": "^8.4.7",
82
- "@storybook/addon-viewport": "^8.4.7",
77
+ "@storybook/addon-a11y": "~8.6.7",
78
+ "@storybook/addon-actions": "~8.6.7",
79
+ "@storybook/addon-controls": "~8.6.7",
80
+ "@storybook/addon-docs": "~8.6.7",
81
+ "@storybook/addon-toolbars": "~8.6.7",
82
+ "@storybook/addon-viewport": "~8.6.7",
83
83
  "@storybook/addon-webpack5-compiler-babel": "^3.0.3",
84
- "@storybook/components": "^8.4.7",
85
- "@storybook/manager-api": "^8.4.7",
86
- "@storybook/preview-api": "^8.4.7",
87
- "@storybook/react": "^8.4.7",
88
- "@storybook/react-webpack5": "^8.4.7",
89
- "@storybook/theming": "^8.4.7",
90
- "@storybook/types": "^8.4.7",
84
+ "@storybook/components": "~8.6.7",
85
+ "@storybook/manager-api": "~8.6.7",
86
+ "@storybook/preview-api": "~8.6.7",
87
+ "@storybook/react": "~8.6.7",
88
+ "@storybook/react-webpack5": "~8.6.7",
89
+ "@storybook/theming": "~8.6.7",
90
+ "@storybook/types": "~8.6.7",
91
91
  "@testing-library/dom": "^10.4.0",
92
92
  "@testing-library/jest-dom": "^6.6.3",
93
93
  "@testing-library/react": "^16.1.0",
@@ -161,7 +161,7 @@
161
161
  "semantic-release": "^24.2.3",
162
162
  "semver": "^7.5.4",
163
163
  "sprintf-js": "^1.1.3",
164
- "storybook": "^8.4.7",
164
+ "storybook": "~8.6.7",
165
165
  "styled-components": "^4.4.1",
166
166
  "typescript": "~4.7.0",
167
167
  "url-loader": "^4.1.1",
@@ -1,7 +0,0 @@
1
- import React from "react";
2
- import { FormSpacingContextProps } from "./form-spacing.context";
3
- interface FormSpacingProviderProps extends FormSpacingContextProps {
4
- children: React.ReactNode;
5
- }
6
- declare const FormSpacingProvider: ({ marginBottom, children, }: FormSpacingProviderProps) => React.JSX.Element;
7
- export default FormSpacingProvider;
@@ -1,11 +0,0 @@
1
- import React from "react";
2
- import { FormSpacingContext } from "./form-spacing.context";
3
- const FormSpacingProvider = ({
4
- marginBottom,
5
- children
6
- }) => /*#__PURE__*/React.createElement(FormSpacingContext.Provider, {
7
- value: {
8
- marginBottom
9
- }
10
- }, children);
11
- export default FormSpacingProvider;
@@ -1,5 +0,0 @@
1
- import React from "react";
2
- export interface FormSpacingContextProps {
3
- marginBottom?: string;
4
- }
5
- export declare const FormSpacingContext: React.Context<FormSpacingContextProps>;
@@ -1,2 +0,0 @@
1
- import React from "react";
2
- export const FormSpacingContext = /*#__PURE__*/React.createContext({});
@@ -1,3 +0,0 @@
1
- export { FormSpacingContext } from "./form-spacing.context";
2
- export type { FormSpacingContextProps } from "./form-spacing.context";
3
- export { default } from "./form-spacing-provider.component";
@@ -1,2 +0,0 @@
1
- export { FormSpacingContext } from "./form-spacing.context";
2
- export { default } from "./form-spacing-provider.component";
@@ -1,9 +0,0 @@
1
- import React from "react";
2
- export interface MessageContentProps {
3
- title?: React.ReactNode;
4
- children?: React.ReactNode;
5
- showCloseIcon?: boolean;
6
- reduceLeftPadding?: boolean;
7
- }
8
- declare const MessageContent: ({ title, children, showCloseIcon, reduceLeftPadding, }: MessageContentProps) => React.JSX.Element;
9
- export default MessageContent;
@@ -1,19 +0,0 @@
1
- import React from "react";
2
- import Content from "../../../content";
3
- import MessageContentStyle from "./message-content.style";
4
- const MessageContent = ({
5
- title,
6
- children,
7
- showCloseIcon,
8
- reduceLeftPadding
9
- }) => {
10
- return /*#__PURE__*/React.createElement(MessageContentStyle, {
11
- showCloseIcon: showCloseIcon,
12
- reduceLeftPadding: reduceLeftPadding,
13
- "data-element": "message-content",
14
- "data-role": "message-content"
15
- }, /*#__PURE__*/React.createElement(Content, {
16
- title: title
17
- }, children));
18
- };
19
- export default MessageContent;
@@ -1,3 +0,0 @@
1
- import { MessageContentProps } from "./message-content.component";
2
- declare const MessageContentStyle: import("styled-components").StyledComponent<"div", any, Pick<MessageContentProps, "showCloseIcon" | "reduceLeftPadding">, never>;
3
- export default MessageContentStyle;
@@ -1,12 +0,0 @@
1
- import styled from "styled-components";
2
- const MessageContentStyle = styled.div`
3
- padding: 15px ${({
4
- showCloseIcon
5
- }) => showCloseIcon ? "50px" : "20px"} 15px
6
- ${({
7
- reduceLeftPadding
8
- }) => reduceLeftPadding ? "10px" : "20px"};
9
- white-space: pre-wrap;
10
- flex: 1;
11
- `;
12
- export default MessageContentStyle;
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { MessageVariant } from "../../message.component";
3
- export interface TypeIconProps {
4
- transparent?: boolean;
5
- variant: MessageVariant;
6
- }
7
- declare const TypeIcon: ({ variant, transparent }: TypeIconProps) => React.JSX.Element;
8
- export default TypeIcon;
@@ -1,20 +0,0 @@
1
- import React from "react";
2
- import TypeIconStyle from "./type-icon.style";
3
- import Icon from "../../../icon";
4
- const TypeIcon = ({
5
- variant,
6
- transparent
7
- }) => {
8
- function iconToRender() {
9
- if (variant === "neutral") return "info";
10
- if (variant === "success") return "tick_circle";
11
- return variant;
12
- }
13
- return /*#__PURE__*/React.createElement(TypeIconStyle, {
14
- variant: variant,
15
- transparent: transparent
16
- }, /*#__PURE__*/React.createElement(Icon, {
17
- type: iconToRender()
18
- }));
19
- };
20
- export default TypeIcon;
@@ -1,7 +0,0 @@
1
- import { MessageVariant } from "../../message.component";
2
- declare type TypeIconStyleProps = {
3
- transparent?: boolean;
4
- variant: MessageVariant;
5
- };
6
- declare const TypeIconStyle: import("styled-components").StyledComponent<"div", any, TypeIconStyleProps, never>;
7
- export default TypeIconStyle;