carbon-react 91.1.1 → 93.0.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 (187) hide show
  1. package/lib/__internal__/checkable-input/checkable-input.component.js +1 -1
  2. package/lib/{utils/helpers → __internal__}/date/date.d.ts +0 -0
  3. package/lib/{utils/helpers → __internal__}/date/date.js +0 -0
  4. package/lib/{utils/helpers → __internal__}/date/index.js +0 -0
  5. package/lib/{utils/helpers → __internal__}/filter-object-properties/filter-object-properties.js +0 -0
  6. package/lib/{utils/helpers → __internal__}/filter-object-properties/index.js +0 -0
  7. package/lib/__internal__/form-field/form-field.component.js +1 -1
  8. package/lib/__internal__/full-screen-heading/full-screen-heading.component.js +1 -1
  9. package/lib/{utils/helpers → __internal__/input}/extract-props/extract-props.js +0 -0
  10. package/lib/{utils/helpers → __internal__/input}/extract-props/index.js +0 -0
  11. package/lib/__internal__/utils/ether/ether.js +33 -0
  12. package/lib/__internal__/utils/ether/index.js +18 -0
  13. package/lib/{utils → __internal__/utils}/helpers/browser/browser.js +0 -0
  14. package/lib/{utils/helpers/warn-as-deprecated → __internal__/utils/helpers/browser}/index.js +2 -2
  15. package/lib/{utils → __internal__/utils}/helpers/browser-type-check/browser-type-check.js +0 -0
  16. package/lib/{utils → __internal__/utils}/helpers/browser-type-check/index.js +0 -0
  17. package/lib/{utils → __internal__/utils}/helpers/events/composedPath.js +0 -0
  18. package/lib/{utils → __internal__/utils}/helpers/events/events.js +0 -0
  19. package/lib/__internal__/utils/helpers/events/index.js +15 -0
  20. package/lib/{utils → __internal__/utils}/helpers/guid/guid.js +0 -0
  21. package/lib/{utils → __internal__/utils}/helpers/guid/package.json +0 -0
  22. package/lib/{utils → __internal__/utils}/helpers/immutable/immutable.js +0 -0
  23. package/lib/{utils → __internal__/utils}/helpers/immutable/package.json +0 -0
  24. package/lib/__internal__/utils/helpers/tags/index.js +15 -0
  25. package/lib/__internal__/utils/helpers/tags/tags-specs/index.js +19 -0
  26. package/lib/{utils → __internal__/utils}/helpers/tags/tags-specs/tags-specs.js +0 -0
  27. package/lib/{utils → __internal__/utils}/helpers/tags/tags.js +0 -0
  28. package/lib/{utils → __internal__/utils}/helpers/with-unique-id-props/index.js +0 -0
  29. package/lib/{utils → __internal__/utils}/helpers/with-unique-id-props/with-unique-id-props.hoc.d.ts +0 -0
  30. package/lib/{utils → __internal__/utils}/helpers/with-unique-id-props/with-unique-id-props.hoc.js +0 -0
  31. package/lib/__internal__/utils/logger/index.js +15 -0
  32. package/lib/{utils → __internal__/utils}/logger/logger.js +0 -9
  33. package/lib/__spec_helper__/mock-date-helper.js +2 -2
  34. package/lib/components/accordion/accordion-group/accordion-group.component.js +1 -1
  35. package/lib/components/accordion/accordion.component.js +2 -2
  36. package/lib/components/action-popover/action-popover-item/action-popover-item.component.js +2 -2
  37. package/lib/components/action-popover/action-popover-menu/action-popover-menu.component.js +1 -1
  38. package/lib/components/action-popover/action-popover.component.js +2 -2
  39. package/lib/components/action-popover/action-popover.style.js +1 -1
  40. package/lib/components/action-toolbar/action-toolbar.component.js +2 -2
  41. package/lib/components/advanced-color-picker/advanced-color-picker.component.js +1 -1
  42. package/lib/components/anchor-navigation/anchor-navigation.component.js +1 -1
  43. package/lib/components/app-wrapper/app-wrapper.component.js +2 -2
  44. package/lib/components/button/button.component.js +1 -1
  45. package/lib/components/button-toggle/button-toggle.component.js +1 -1
  46. package/lib/components/carousel/carousel.component.js +2 -2
  47. package/lib/components/carousel/slide/slide.component.js +1 -1
  48. package/lib/components/checkbox/checkbox-group.component.js +1 -1
  49. package/lib/components/configurable-items/configurable-item-row/configurable-item-row.component.js +1 -1
  50. package/lib/components/configurable-items/configurable-items.component.js +2 -2
  51. package/lib/components/confirm/confirm.component.js +1 -1
  52. package/lib/components/date/date-picker.component.js +1 -1
  53. package/lib/components/date/date.component.js +4 -4
  54. package/lib/components/date-range/date-range.component.js +2 -2
  55. package/lib/components/detail/detail.component.js +1 -1
  56. package/lib/components/dialog/dialog.style.js +10 -2
  57. package/lib/components/dialog-full-screen/content.style.js +45 -0
  58. package/lib/components/dialog-full-screen/dialog-full-screen.component.js +19 -2
  59. package/lib/components/drag-and-drop/__internal__/item-target/index.js +15 -0
  60. package/lib/{utils/helpers/dnd → components/drag-and-drop/__internal__}/item-target/item-target.js +0 -0
  61. package/lib/components/drag-and-drop/__internal__/item-types/index.js +15 -0
  62. package/lib/{utils/helpers/dnd → components/drag-and-drop/__internal__}/item-types/item-types.js +0 -0
  63. package/lib/components/drag-and-drop/draggable-context/__internal__/scrollable-parent/index.js +15 -0
  64. package/lib/{utils/helpers → components/drag-and-drop/draggable-context/__internal__}/scrollable-parent/scrollable-parent.js +1 -1
  65. package/lib/components/drag-and-drop/draggable-context/draggable-context.js +4 -4
  66. package/lib/components/drag-and-drop/with-drag/with-drag.js +2 -2
  67. package/lib/components/drag-and-drop/with-drop/with-drop.js +11 -6
  68. package/lib/components/drawer/drawer.component.js +1 -1
  69. package/lib/components/duelling-picklist/picklist/picklist.component.js +1 -1
  70. package/lib/components/duelling-picklist/picklist-group/picklist-group.component.js +1 -1
  71. package/lib/components/duelling-picklist/picklist-item/picklist-item.component.js +1 -1
  72. package/lib/components/fieldset/fieldset.component.js +2 -2
  73. package/lib/components/flat-table/flat-table-row/flat-table-row.component.js +1 -1
  74. package/lib/components/flat-table/sort/sort.component.js +2 -2
  75. package/lib/components/form/form.component.js +15 -51
  76. package/lib/components/form/form.d.ts +2 -0
  77. package/lib/components/form/form.style.js +40 -15
  78. package/lib/components/heading/heading.component.js +1 -1
  79. package/lib/components/help/help.component.js +2 -2
  80. package/lib/components/i18n-provider/i18n-provider.d.ts +1 -1
  81. package/lib/components/icon/icon.component.js +11 -4
  82. package/lib/components/icon/icon.d.ts +1 -0
  83. package/lib/components/icon/icon.style.js +1 -1
  84. package/lib/components/icon-button/icon-button.component.js +1 -1
  85. package/lib/components/inline-inputs/inline-inputs.component.js +1 -1
  86. package/lib/components/link/link.component.js +2 -2
  87. package/lib/components/loader/loader.component.js +1 -1
  88. package/lib/components/loader-bar/loader-bar.component.js +1 -1
  89. package/lib/components/menu/__internal__/keyboard-navigation/index.js +1 -1
  90. package/lib/components/menu/__internal__/submenu/submenu.component.js +1 -1
  91. package/lib/components/menu/menu-item/menu-item.component.js +1 -1
  92. package/lib/components/menu/menu.component.js +1 -1
  93. package/lib/components/menu/submenu-block/submenu-block.component.js +1 -1
  94. package/lib/components/message/message.component.js +1 -1
  95. package/lib/components/modal/modal.component.js +1 -1
  96. package/lib/components/mount-in-app/mount-in-app.js +1 -1
  97. package/lib/components/multi-action-button/multi-action-button.component.js +1 -1
  98. package/lib/components/multi-step-wizard/multi-step-wizard.js +1 -1
  99. package/lib/components/numeral-date/numeral-date.component.js +2 -2
  100. package/lib/components/pager/__internal__/pager-navigation.component.js +2 -2
  101. package/lib/components/pager/pager.component.js +1 -1
  102. package/lib/components/pages/page/page.component.js +1 -1
  103. package/lib/components/pages/pages.component.js +1 -1
  104. package/lib/components/pill/pill.component.js +1 -1
  105. package/lib/components/pod/pod.component.js +2 -2
  106. package/lib/components/popover-container/popover-container.component.js +1 -1
  107. package/lib/components/portal/portal.js +2 -2
  108. package/lib/components/portrait/portrait-initials.component.js +1 -1
  109. package/lib/components/portrait/portrait.component.js +1 -1
  110. package/lib/components/preview/preview.component.js +1 -1
  111. package/lib/components/profile/profile.component.js +9 -4
  112. package/lib/components/radio-button/radio-button-group.component.js +1 -1
  113. package/lib/components/row/column/column.component.js +1 -1
  114. package/lib/components/row/row.component.js +1 -1
  115. package/lib/components/scrollable-list/scrollable-list.component.js +3 -3
  116. package/lib/components/search/search.component.js +2 -2
  117. package/lib/components/select/filterable-select/filterable-select.component.js +1 -1
  118. package/lib/components/select/multi-select/multi-select.component.js +1 -1
  119. package/lib/components/select/simple-select/simple-select.component.js +1 -1
  120. package/lib/components/settings-row/settings-row.component.js +1 -1
  121. package/lib/components/show-edit-pod/show-edit-pod.component.js +3 -3
  122. package/lib/components/sidebar/__internal__/sidebar-header/sidebar-header.component.js +1 -1
  123. package/lib/components/simple-color-picker/simple-color/simple-color.component.js +1 -1
  124. package/lib/components/simple-color-picker/simple-color-picker.component.js +2 -2
  125. package/lib/components/split-button/split-button.component.js +2 -2
  126. package/lib/components/table/table-cell/table-cell.component.js +2 -2
  127. package/lib/components/table/table-header/table-header.component.js +1 -1
  128. package/lib/components/table/table-row/table-row.component.js +3 -3
  129. package/lib/components/table/table.component.js +1 -1
  130. package/lib/{utils/helpers → components/table-ajax/__internal__}/serialize/package.json +0 -0
  131. package/lib/{utils/helpers → components/table-ajax/__internal__}/serialize/serialize.js +0 -0
  132. package/lib/components/table-ajax/table-ajax.component.js +2 -2
  133. package/lib/components/tabs/__internal__/tab-title/tab-title.component.js +3 -3
  134. package/lib/components/tabs/tab/tab.component.js +1 -1
  135. package/lib/components/tabs/tabs.component.js +2 -2
  136. package/lib/components/text-editor/__internal__/toolbar/toolbar.component.js +1 -1
  137. package/lib/components/text-editor/text-editor.component.js +2 -2
  138. package/lib/components/text-editor/text-editor.style.js +1 -1
  139. package/lib/components/textarea/textarea.component.js +1 -1
  140. package/lib/components/textbox/textbox.component.js +1 -1
  141. package/lib/components/tile-select/tile-select-group.component.js +1 -1
  142. package/lib/components/tile-select/tile-select.component.js +2 -2
  143. package/lib/components/toast/toast.component.js +2 -2
  144. package/lib/components/tooltip/tooltip.component.js +1 -1
  145. package/lib/locales/index.d.ts +1 -0
  146. package/lib/locales/locale.d.ts +2 -2
  147. package/lib/locales/pl-pl.d.ts +5 -0
  148. package/lib/locales/pl-pl.js +116 -0
  149. package/lib/patterns/configurable-items/configurable-items-content/configurable-items-content.js +1 -1
  150. package/lib/patterns/configurable-items/configurable-items.js +1 -1
  151. package/lib/patterns/configurable-items/store/store.js +1 -1
  152. package/lib/style/utils/filter-styled-system-margin-props.js +1 -1
  153. package/lib/style/utils/filter-styled-system-padding-props.js +1 -1
  154. package/package.json +2 -2
  155. package/lib/utils/decorators/should-component-update/package.json +0 -4
  156. package/lib/utils/decorators/should-component-update/should-component-update.js +0 -104
  157. package/lib/utils/ether/ether.js +0 -107
  158. package/lib/utils/ether/package.json +0 -3
  159. package/lib/utils/handlers/base-registry/base-registry.js +0 -68
  160. package/lib/utils/handlers/base-registry/package.json +0 -3
  161. package/lib/utils/helpers/auto-focus/auto-focus.js +0 -22
  162. package/lib/utils/helpers/auto-focus/package.json +0 -3
  163. package/lib/utils/helpers/browser/package.json +0 -4
  164. package/lib/utils/helpers/chain-functions/chain-functions.js +0 -29
  165. package/lib/utils/helpers/chain-functions/package.json +0 -4
  166. package/lib/utils/helpers/dnd/item-target/package.json +0 -3
  167. package/lib/utils/helpers/dnd/item-types/package.json +0 -3
  168. package/lib/utils/helpers/events/package.json +0 -3
  169. package/lib/utils/helpers/poller/package.json +0 -3
  170. package/lib/utils/helpers/poller/poller.js +0 -181
  171. package/lib/utils/helpers/prop-types/package.json +0 -3
  172. package/lib/utils/helpers/prop-types/prop-types.js +0 -42
  173. package/lib/utils/helpers/scrollable-parent/package.json +0 -3
  174. package/lib/utils/helpers/should-component-update/package.json +0 -3
  175. package/lib/utils/helpers/should-component-update/should-component-update.js +0 -56
  176. package/lib/utils/helpers/tags/package.json +0 -3
  177. package/lib/utils/helpers/tags/tags-specs/package.json +0 -3
  178. package/lib/utils/helpers/text/package.json +0 -3
  179. package/lib/utils/helpers/text/text.js +0 -47
  180. package/lib/utils/helpers/to-array/package.json +0 -3
  181. package/lib/utils/helpers/to-array/to-array.js +0 -44
  182. package/lib/utils/helpers/validations/package.json +0 -4
  183. package/lib/utils/helpers/validations/validations.js +0 -27
  184. package/lib/utils/helpers/warn-as-deprecated/warn-as-deprecated.js +0 -23
  185. package/lib/utils/logger/package.json +0 -3
  186. package/lib/utils/service/package.json +0 -3
  187. package/lib/utils/service/service.js +0 -326
@@ -25,6 +25,8 @@ var _iconButton = _interopRequireDefault(require("../icon-button"));
25
25
 
26
26
  var _icon = _interopRequireDefault(require("../icon"));
27
27
 
28
+ var _useResizeObserver = _interopRequireDefault(require("../../hooks/__internal__/useResizeObserver"));
29
+
28
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
31
 
30
32
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
@@ -51,6 +53,19 @@ const DialogFullScreen = ({
51
53
  ...rest
52
54
  }) => {
53
55
  const dialogRef = (0, _react.useRef)();
56
+ const headingRef = (0, _react.useRef)();
57
+ const [headingHeight, setHeadingHeight] = (0, _react.useState)(101);
58
+
59
+ const updateheadingHeight = () => {
60
+ setHeadingHeight(headingRef.current.offsetHeight);
61
+ };
62
+
63
+ (0, _react.useEffect)(() => {
64
+ if (open && headingRef.current) {
65
+ updateheadingHeight();
66
+ }
67
+ }, [open]);
68
+ (0, _useResizeObserver.default)(headingRef, updateheadingHeight, !headingRef.current);
54
69
 
55
70
  const closeIcon = () => {
56
71
  if (!showCloseIcon || !onCancel) return null;
@@ -64,7 +79,8 @@ const DialogFullScreen = ({
64
79
  };
65
80
 
66
81
  const dialogTitle = () => /*#__PURE__*/_react.default.createElement(_fullScreenHeading.default, {
67
- hasContent: title
82
+ hasContent: title,
83
+ ref: headingRef
68
84
  }, typeof title === "string" ? /*#__PURE__*/_react.default.createElement(_heading.default, {
69
85
  title: title,
70
86
  titleId: "carbon-dialog-title",
@@ -95,7 +111,8 @@ const DialogFullScreen = ({
95
111
  hasHeader: title !== undefined,
96
112
  "data-element": "content",
97
113
  ref: contentRef,
98
- disableContentPadding: disableContentPadding
114
+ disableContentPadding: disableContentPadding,
115
+ headingHeight: headingHeight
99
116
  }, children), closeIcon())));
100
117
  };
101
118
 
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _itemTarget.default;
10
+ }
11
+ });
12
+
13
+ var _itemTarget = _interopRequireDefault(require("./item-target"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _itemTypes.default;
10
+ }
11
+ });
12
+
13
+ var _itemTypes = _interopRequireDefault(require("./item-types"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _scrollableParent.default;
10
+ }
11
+ });
12
+
13
+ var _scrollableParent = _interopRequireDefault(require("./scrollable-parent"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- var _browser = _interopRequireDefault(require("../browser"));
8
+ var _browser = _interopRequireDefault(require("../../../../../__internal__/utils/helpers/browser"));
9
9
 
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
 
@@ -15,15 +15,15 @@ var _reactDndTouchBackend = _interopRequireDefault(require("react-dnd-touch-back
15
15
 
16
16
  var _reactDom = _interopRequireDefault(require("react-dom"));
17
17
 
18
- var _itemTarget = _interopRequireDefault(require("../../../utils/helpers/dnd/item-target"));
18
+ var _itemTarget = _interopRequireDefault(require("../__internal__/item-target"));
19
19
 
20
20
  var _customDragLayer = _interopRequireDefault(require("../custom-drag-layer"));
21
21
 
22
- var _browser = _interopRequireDefault(require("../../../utils/helpers/browser"));
22
+ var _browser = _interopRequireDefault(require("../../../__internal__/utils/helpers/browser"));
23
23
 
24
- var _scrollableParent = _interopRequireDefault(require("../../../utils/helpers/scrollable-parent"));
24
+ var _scrollableParent = _interopRequireDefault(require("./__internal__/scrollable-parent"));
25
25
 
26
- var _logger = _interopRequireDefault(require("../../../utils/logger/logger"));
26
+ var _logger = _interopRequireDefault(require("../../../__internal__/utils/logger"));
27
27
 
28
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
29
 
@@ -11,9 +11,9 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _reactDndLegacy = require("react-dnd-legacy");
13
13
 
14
- var _itemTypes = _interopRequireDefault(require("../../../utils/helpers/dnd/item-types"));
14
+ var _itemTypes = _interopRequireDefault(require("../__internal__/item-types"));
15
15
 
16
- var _browser = _interopRequireDefault(require("../../../utils/helpers/browser"));
16
+ var _browser = _interopRequireDefault(require("../../../__internal__/utils/helpers/browser"));
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
 
@@ -11,9 +11,9 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _reactDndLegacy = require("react-dnd-legacy");
13
13
 
14
- var _itemTypes = _interopRequireDefault(require("../../../utils/helpers/dnd/item-types"));
14
+ var _itemTypes = _interopRequireDefault(require("../__internal__/item-types"));
15
15
 
16
- var _text = _interopRequireDefault(require("../../../utils/helpers/text"));
16
+ var _browser = _interopRequireDefault(require("../../../__internal__/utils/helpers/browser"));
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
 
@@ -178,14 +178,19 @@ const ItemTarget = {
178
178
 
179
179
  hover(props, monitor, component) {
180
180
  if (!monitor.canDrop()) return false;
181
-
182
- _text.default.clearSelection();
183
-
181
+ clearSelection();
184
182
  const hover = props.hover || component.context.dragAndDropHover;
185
183
  return hover(props, monitor, component);
186
184
  }
187
185
 
188
- }; // eslint-disable-next-line no-class-assign
186
+ };
187
+
188
+ function clearSelection() {
189
+ const window = _browser.default.getWindow();
190
+
191
+ window.getSelection().removeAllRanges();
192
+ } // eslint-disable-next-line no-class-assign
193
+
189
194
 
190
195
  WithDrop = (0, _reactDndLegacy.DropTarget)(_itemTypes.default.getItemType, ItemTarget, (connect, monitor) => ({
191
196
  isOver: monitor.isOver(),
@@ -13,7 +13,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
13
13
 
14
14
  var _invariant = _interopRequireDefault(require("invariant"));
15
15
 
16
- var _guid = _interopRequireDefault(require("../../utils/helpers/guid/guid"));
16
+ var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
17
17
 
18
18
  var _icon = _interopRequireDefault(require("../icon"));
19
19
 
@@ -15,7 +15,7 @@ var _picklist = require("./picklist.style");
15
15
 
16
16
  var _duellingPicklist = _interopRequireDefault(require("../duelling-picklist.context"));
17
17
 
18
- var _events = _interopRequireDefault(require("../../../utils/helpers/events"));
18
+ var _events = _interopRequireDefault(require("../../../__internal__/utils/helpers/events"));
19
19
 
20
20
  var _picklistGroup = _interopRequireDefault(require("../picklist-group/picklist-group.component"));
21
21
 
@@ -15,7 +15,7 @@ var _picklistGroup = require("./picklist-group.style");
15
15
 
16
16
  var _duellingPicklist = _interopRequireDefault(require("../duelling-picklist.context"));
17
17
 
18
- var _events = _interopRequireDefault(require("../../../utils/helpers/events/events"));
18
+ var _events = _interopRequireDefault(require("../../../__internal__/utils/helpers/events"));
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
@@ -15,7 +15,7 @@ var _picklistItem = require("./picklist-item.style");
15
15
 
16
16
  var _duellingPicklist = _interopRequireDefault(require("../duelling-picklist.context"));
17
17
 
18
- var _events = _interopRequireDefault(require("../../../utils/helpers/events"));
18
+ var _events = _interopRequireDefault(require("../../../__internal__/utils/helpers/events"));
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
@@ -11,9 +11,9 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
- var _ether = require("../../utils/ether/ether");
14
+ var _ether = require("../../__internal__/utils/ether");
15
15
 
16
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags/tags"));
16
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
17
17
 
18
18
  var _utils = require("../../style/utils");
19
19
 
@@ -9,7 +9,7 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _events = _interopRequireDefault(require("../../../utils/helpers/events"));
12
+ var _events = _interopRequireDefault(require("../../../__internal__/utils/helpers/events"));
13
13
 
14
14
  var _flatTableRow = _interopRequireDefault(require("./flat-table-row.style"));
15
15
 
@@ -9,13 +9,13 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _events = _interopRequireDefault(require("../../../utils/helpers/events/events"));
12
+ var _events = _interopRequireDefault(require("../../../__internal__/utils/helpers/events"));
13
13
 
14
14
  var _icon = _interopRequireDefault(require("../../icon"));
15
15
 
16
16
  var _sort = require("./sort.style");
17
17
 
18
- var _guid = _interopRequireDefault(require("../../../utils/helpers/guid"));
18
+ var _guid = _interopRequireDefault(require("../../../__internal__/utils/helpers/guid"));
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
@@ -9,12 +9,8 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _throttle = _interopRequireDefault(require("lodash/throttle"));
13
-
14
12
  var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
15
13
 
16
- var _useResizeObserver = _interopRequireDefault(require("../../hooks/__internal__/useResizeObserver"));
17
-
18
14
  var _formSummary = _interopRequireDefault(require("./__internal__/form-summary.component"));
19
15
 
20
16
  var _form = require("./form.style");
@@ -29,8 +25,6 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
29
25
 
30
26
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
31
27
 
32
- const SCROLL_THROTTLE = 50;
33
-
34
28
  const Form = ({
35
29
  children,
36
30
  saveButton,
@@ -44,65 +38,32 @@ const Form = ({
44
38
  dialogRef,
45
39
  fieldSpacing = 3,
46
40
  noValidate = true,
41
+ height,
47
42
  ...rest
48
43
  }) => {
49
- const [isFooterSticky, setIsFooterSticky] = (0, _react.useState)(false);
50
44
  const {
51
45
  isInSidebar
52
46
  } = (0, _react.useContext)(_sidebar.SidebarContext);
53
47
  const formRef = (0, _react.useRef)();
54
48
  const formFooterRef = (0, _react.useRef)();
55
- const stickyListenersAddedRef = (0, _react.useRef)(false);
56
- const checkStickyFooter = (0, _react.useCallback)((0, _throttle.default)(() => {
57
- const {
58
- bottom
59
- } = formRef.current.getBoundingClientRect();
60
- let isBottomBelowScreen;
61
-
62
- if (dialogRef) {
63
- isBottomBelowScreen = bottom > dialogRef.current.getBoundingClientRect().bottom;
64
- } else {
65
- isBottomBelowScreen = bottom > window.innerHeight;
66
- }
67
-
68
- if (isBottomBelowScreen) {
69
- setIsFooterSticky(true);
70
- } else {
71
- setIsFooterSticky(false);
72
- }
73
- }, SCROLL_THROTTLE), []);
74
- (0, _useResizeObserver.default)(formRef, checkStickyFooter, !stickyFooter);
75
- const addStickyFooterListeners = (0, _react.useCallback)(() => {
76
- window.addEventListener("resize", checkStickyFooter, true);
77
- window.addEventListener("scroll", checkStickyFooter, true);
78
- stickyListenersAddedRef.current = true;
79
- }, [checkStickyFooter]);
80
- const removeStickyFooterListeners = (0, _react.useCallback)(() => {
81
- window.removeEventListener("resize", checkStickyFooter, true);
82
- window.removeEventListener("scroll", checkStickyFooter, true);
83
- stickyListenersAddedRef.current = false;
84
- }, [checkStickyFooter]);
85
- (0, _react.useEffect)(() => {
86
- if (stickyFooter && !stickyListenersAddedRef.current) {
87
- addStickyFooterListeners();
88
- checkStickyFooter();
89
- }
90
-
91
- return () => removeStickyFooterListeners();
92
- }, [addStickyFooterListeners, checkStickyFooter, removeStickyFooterListeners, stickyFooter]);
93
49
  return /*#__PURE__*/_react.default.createElement(_form.StyledForm, _extends({
94
50
  ref: formRef,
95
- stickyFooter: stickyFooter && isFooterSticky,
51
+ stickyFooter: stickyFooter,
96
52
  onSubmit: onSubmit,
97
53
  "data-component": "form",
98
54
  fieldSpacing: fieldSpacing,
99
55
  noValidate: noValidate,
100
- isInSidebar: isInSidebar
101
- }, rest), children, /*#__PURE__*/_react.default.createElement(_form.StyledFormFooter, {
56
+ isInSidebar: isInSidebar,
57
+ height: height
58
+ }, rest), /*#__PURE__*/_react.default.createElement(_form.StyledFormContent, {
59
+ "data-element": "form-content",
60
+ stickyFooter: stickyFooter,
61
+ className: stickyFooter ? "sticky" : ""
62
+ }, children), /*#__PURE__*/_react.default.createElement(_form.StyledFormFooter, {
102
63
  "data-element": "form-footer",
103
- className: isFooterSticky ? "sticky" : "",
64
+ className: stickyFooter ? "sticky" : "",
104
65
  ref: formFooterRef,
105
- stickyFooter: isFooterSticky,
66
+ stickyFooter: stickyFooter,
106
67
  buttonAlignment: buttonAlignment
107
68
  }, leftSideButtons && /*#__PURE__*/_react.default.createElement(_form.StyledLeftButtons, {
108
69
  buttonAlignment: buttonAlignment
@@ -156,7 +117,10 @@ Form.propTypes = { ..._propTypes2.default.space,
156
117
  */
157
118
  dialogRef: _propTypes.default.shape({
158
119
  current: _propTypes.default.any
159
- })
120
+ }),
121
+
122
+ /** Height of the form (any valid CSS value) */
123
+ height: _propTypes.default.string
160
124
  };
161
125
  var _default = Form;
162
126
  exports.default = _default;
@@ -24,6 +24,8 @@ export interface FormProps extends SpaceProps {
24
24
  stickyFooter?: boolean;
25
25
  /** The total number of warnings present in the form */
26
26
  warningCount?: number;
27
+ /** Height of the form (any valid CSS value) */
28
+ height?: string;
27
29
  }
28
30
 
29
31
  declare function Form(props: FormProps): JSX.Element;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledLeftButtons = exports.StyledRightButtons = exports.StyledForm = exports.StyledFormFooter = void 0;
6
+ exports.StyledLeftButtons = exports.StyledRightButtons = exports.StyledForm = exports.StyledFormFooter = exports.StyledFormContent = void 0;
7
7
 
8
8
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
9
9
 
@@ -33,12 +33,18 @@ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return
33
33
 
34
34
  function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
35
 
36
- const FormButtonAnimation = (0, _styledComponents.keyframes)`
37
- 0% { transform: translateY(50px); }
38
- 100% { transform: translateY(0px); }
36
+ const StyledFormContent = _styledComponents.default.div`
37
+ ${({
38
+ stickyFooter
39
+ }) => (0, _styledComponents.css)`
40
+ ${stickyFooter && (0, _styledComponents.css)`
41
+ overflow-y: auto;
42
+ height: calc(100vh - 72px);
43
+ `}
44
+ `}
39
45
  `;
46
+ exports.StyledFormContent = StyledFormContent;
40
47
  const StyledFormFooter = _styledComponents.default.div`
41
- margin-top: 48px;
42
48
  align-items: center;
43
49
  display: flex;
44
50
 
@@ -52,15 +58,15 @@ const StyledFormFooter = _styledComponents.default.div`
52
58
  stickyFooter,
53
59
  theme
54
60
  }) => (0, _styledComponents.css)`
61
+ ${!stickyFooter && (0, _styledComponents.css)`
62
+ margin-top: 48px;
63
+ `}
64
+
55
65
  ${stickyFooter && (0, _styledComponents.css)`
56
- animation: ${FormButtonAnimation} 0.25s ease;
57
66
  background-color: ${theme.colors.white};
58
67
  box-shadow: 0 -4px 12px 0 rgba(0, 0, 0, 0.05);
59
68
  box-sizing: border-box;
60
69
  padding: 16px 32px;
61
- bottom: 0;
62
- left: 0;
63
- position: fixed;
64
70
  width: 100%;
65
71
  z-index: 1000;
66
72
  `}
@@ -70,6 +76,12 @@ exports.StyledFormFooter = StyledFormFooter;
70
76
  const StyledForm = _styledComponents.default.form`
71
77
  ${_styledSystem.space}
72
78
 
79
+ ${({
80
+ height
81
+ }) => height && (0, _styledComponents.css)`
82
+ height: ${height};
83
+ `}
84
+
73
85
  & ${_formField.default}, ${_fieldset.StyledFieldset}, ${_fieldset2.FieldsetStyle}, > ${_button.default} {
74
86
  margin-top: 0;
75
87
  margin-bottom: ${({
@@ -95,16 +107,29 @@ const StyledForm = _styledComponents.default.form`
95
107
 
96
108
  ${({
97
109
  stickyFooter,
98
- isInSidebar
110
+ isInSidebar,
111
+ theme
99
112
  }) => stickyFooter && (0, _styledComponents.css)`
100
- padding-bottom: 88px;
113
+ display: flex;
114
+ flex-direction: column;
101
115
 
102
116
  ${isInSidebar && (0, _styledComponents.css)`
103
- // important keyword is needed because original style is provided in inline style mode
104
- position: static !important;
117
+ ${StyledFormContent}.sticky {
118
+ height: calc(100vh - 184px);
119
+ padding-right: ${theme.space[4]}px;
120
+ padding-left: ${theme.space[4]}px;
121
+ padding-top: 27px;
122
+ margin-right: -${theme.space[4]}px;
123
+ margin-left: -${theme.space[4]}px;
124
+ margin-top: -27px;
125
+ }
105
126
 
106
- ${StyledFormFooter} {
107
- position: absolute;
127
+ ${StyledFormFooter}.sticky {
128
+ margin-left: -${theme.space[4]}px;
129
+ margin-bottom: -${theme.space[4]}px;
130
+ width: calc(100% + ${2 * theme.space[4]}px);
131
+ padding-left: ${theme.space[4]}px;
132
+ padding-right: ${theme.space[4]}px;
108
133
  }
109
134
  `}
110
135
  `}
@@ -13,7 +13,7 @@ var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
14
  var _utils = require("../../style/utils");
15
15
 
16
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags"));
16
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
17
17
 
18
18
  var _heading = require("./heading.style");
19
19
 
@@ -13,11 +13,11 @@ var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
14
  var _icon = _interopRequireDefault(require("../icon"));
15
15
 
16
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags"));
16
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
17
17
 
18
18
  var _help = _interopRequireDefault(require("./help.style"));
19
19
 
20
- var _events = _interopRequireDefault(require("../../utils/helpers/events/events"));
20
+ var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
21
21
 
22
22
  var _utils = require("../../style/utils");
23
23
 
@@ -3,7 +3,7 @@ import * as React from "react";
3
3
  import Locale from "../../locales";
4
4
 
5
5
  export interface I18nProviderProps {
6
- locale: Locale;
6
+ locale: Partial<Locale>;
7
7
  children: React.ReactNode;
8
8
  }
9
9
 
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags"));
14
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
15
15
 
16
16
  var _icon = _interopRequireDefault(require("./icon.style"));
17
17
 
@@ -19,7 +19,7 @@ var _tooltip = _interopRequireDefault(require("../tooltip"));
19
19
 
20
20
  var _utils = require("../../style/utils");
21
21
 
22
- var _logger = _interopRequireDefault(require("../../utils/logger"));
22
+ var _logger = _interopRequireDefault(require("../../__internal__/utils/logger"));
23
23
 
24
24
  var _iconConfig = require("./icon-config");
25
25
 
@@ -144,7 +144,11 @@ Icon.propTypes = { ...marginPropTypes,
144
144
  * */
145
145
  className: _propTypes.default.string,
146
146
 
147
- /** Icon type */
147
+ /**
148
+ * Icon type.
149
+ *
150
+ * The full list of types can be seen [here](https://github.com/Sage/carbon/blob/master/src/components/icon/icon-config.js).
151
+ * */
148
152
  type: _propTypes.default.string.isRequired,
149
153
 
150
154
  /** Background size */
@@ -189,7 +193,10 @@ Icon.propTypes = { ...marginPropTypes,
189
193
  /** Override font color of the Tooltip, provide any color from palette or any valid css color value. */
190
194
  tooltipFontColor: _propTypes.default.string,
191
195
 
192
- /** Overrides the default flip behaviour of the Tooltip, must be an array containing some or all of ["top", "bottom", "left", "right"] (see https://popper.js.org/docs/v2/modifiers/flip/#fallbackplacements) */
196
+ /** Overrides the default flip behaviour of the Tooltip, must be an array containing some or all of ["top", "bottom", "left", "right"].
197
+ *
198
+ * See the Popper [documentation](https://popper.js.org/docs/v2/modifiers/flip/#fallbackplacements) for more information
199
+ * */
193
200
  tooltipFlipOverrides: (props, propName) => {
194
201
  const prop = props[propName];
195
202
  const isValid = prop && Array.isArray(prop) && prop.every(placement => _iconConfig.ICON_TOOLTIP_POSITIONS.includes(placement));
@@ -180,6 +180,7 @@ export type IconType =
180
180
  | "refresh"
181
181
  | "refresh_clock"
182
182
  | "remove"
183
+ | "sage_coin"
183
184
  | "save"
184
185
  | "scan"
185
186
  | "search"
@@ -21,7 +21,7 @@ var _palette = _interopRequireDefault(require("../../style/palette"));
21
21
 
22
22
  var _iconConfig = _interopRequireWildcard(require("./icon-config"));
23
23
 
24
- var _browserTypeCheck = _interopRequireWildcard(require("../../utils/helpers/browser-type-check"));
24
+ var _browserTypeCheck = _interopRequireWildcard(require("../../__internal__/utils/helpers/browser-type-check"));
25
25
 
26
26
  var _color = _interopRequireDefault(require("../../style/utils/color"));
27
27
 
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
- var _events = _interopRequireDefault(require("../../utils/helpers/events"));
14
+ var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
15
15
 
16
16
  var _iconButton = _interopRequireDefault(require("./icon-button.style"));
17
17
 
@@ -15,7 +15,7 @@ var _label = _interopRequireDefault(require("../../__internal__/label"));
15
15
 
16
16
  var _inlineInputs = _interopRequireDefault(require("./inline-inputs.style"));
17
17
 
18
- var _guid = _interopRequireDefault(require("../../utils/helpers/guid"));
18
+ var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
@@ -11,11 +11,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _icon = _interopRequireDefault(require("../icon"));
13
13
 
14
- var _events = _interopRequireDefault(require("../../utils/helpers/events"));
14
+ var _events = _interopRequireDefault(require("../../__internal__/utils/helpers/events"));
15
15
 
16
16
  var _link = require("./link.style");
17
17
 
18
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags"));
18
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags"));
14
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
15
15
 
16
16
  var _loader = _interopRequireDefault(require("./loader.style"));
17
17
 
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
13
 
14
- var _tags = _interopRequireDefault(require("../../utils/helpers/tags"));
14
+ var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
15
15
 
16
16
  var _loaderBar = _interopRequireWildcard(require("./loader-bar.style"));
17
17