carbon-react 106.6.10 → 107.1.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 (219) hide show
  1. package/esm/__internal__/click-away-wrapper/click-away-wrapper.component.d.ts +12 -0
  2. package/esm/__internal__/click-away-wrapper/click-away-wrapper.component.js +43 -0
  3. package/esm/__internal__/click-away-wrapper/index.d.ts +2 -0
  4. package/esm/__internal__/click-away-wrapper/index.js +1 -0
  5. package/esm/__internal__/focus-trap/focus-trap-utils.js +25 -1
  6. package/esm/__internal__/focus-trap/focus-trap.component.d.ts +3 -1
  7. package/esm/__internal__/focus-trap/focus-trap.component.js +44 -12
  8. package/esm/{components/radio-button → __internal__/radio-button-mapper}/radio-button-mapper.component.d.ts +0 -0
  9. package/esm/{components/radio-button → __internal__/radio-button-mapper}/radio-button-mapper.component.js +0 -0
  10. package/esm/components/advanced-color-picker/advanced-color-picker.component.js +5 -5
  11. package/esm/components/badge/badge.style.d.ts +1 -1
  12. package/esm/components/button/button.component.d.ts +1 -3
  13. package/esm/components/button/button.component.js +1 -12
  14. package/esm/components/button/button.style.d.ts +1 -1
  15. package/esm/components/button-toggle-group/button-toggle-group.component.js +1 -1
  16. package/esm/components/confirm/confirm.component.d.ts +1 -5
  17. package/esm/components/confirm/confirm.component.js +2 -14
  18. package/esm/components/confirm/confirm.d.ts +0 -2
  19. package/esm/components/date/date.component.js +19 -20
  20. package/esm/components/dialog/dialog.component.js +4 -3
  21. package/esm/components/dialog-full-screen/content.style.js +4 -10
  22. package/esm/components/dialog-full-screen/dialog-full-screen.component.js +4 -3
  23. package/esm/components/heading/heading.component.d.ts +27 -52
  24. package/esm/components/heading/heading.component.js +86 -170
  25. package/esm/components/heading/heading.d.ts +5 -3
  26. package/esm/components/i18n-provider/i18n-provider.component.d.ts +0 -9
  27. package/esm/components/i18n-provider/i18n-provider.component.js +0 -9
  28. package/esm/components/menu/__internal__/submenu/submenu.component.js +11 -17
  29. package/esm/components/menu/index.d.ts +0 -1
  30. package/esm/components/menu/index.js +0 -1
  31. package/esm/components/menu/menu-full-screen/menu-full-screen.component.js +4 -18
  32. package/esm/components/menu/menu-full-screen/menu-full-screen.style.js +1 -0
  33. package/esm/components/menu/menu-item/menu-item.component.js +0 -6
  34. package/esm/components/multi-action-button/multi-action-button.component.d.ts +1 -1
  35. package/esm/components/multi-action-button/multi-action-button.component.js +1 -11
  36. package/esm/components/navigation-bar/navigation-bar.component.d.ts +1 -6
  37. package/esm/components/navigation-bar/navigation-bar.component.js +1 -15
  38. package/esm/components/navigation-bar/navigation-bar.style.d.ts +0 -4
  39. package/esm/components/navigation-bar/navigation-bar.style.js +0 -8
  40. package/esm/components/popover-container/popover-container.component.js +16 -3
  41. package/esm/components/radio-button/radio-button-group.component.js +1 -1
  42. package/esm/components/select/select-list/select-list.component.js +2 -2
  43. package/esm/components/sidebar/__internal__/sidebar-header/sidebar-header.component.d.ts +3 -1
  44. package/esm/components/sidebar/__internal__/sidebar-header/sidebar-header.component.js +7 -2
  45. package/esm/components/sidebar/sidebar.component.js +10 -3
  46. package/esm/components/simple-color-picker/simple-color-picker.component.js +1 -1
  47. package/esm/components/split-button/split-button-toggle.style.d.ts +1 -1
  48. package/esm/components/split-button/split-button.component.d.ts +1 -4
  49. package/esm/components/split-button/split-button.component.js +3 -16
  50. package/esm/components/split-button/split-button.d.ts +0 -2
  51. package/esm/components/tile/tile.component.d.ts +1 -2
  52. package/esm/components/tile/tile.component.js +1 -13
  53. package/esm/components/tile/tile.d.ts +0 -2
  54. package/esm/components/tile-select/tile-select-group.component.js +1 -1
  55. package/esm/components/toast/toast.component.d.ts +1 -4
  56. package/esm/components/toast/toast.component.js +1 -13
  57. package/esm/components/toast/toast.d.ts +0 -2
  58. package/esm/locales/en-gb.js +0 -9
  59. package/esm/locales/locale.d.ts +0 -9
  60. package/esm/locales/pl-pl.js +0 -9
  61. package/lib/__internal__/click-away-wrapper/click-away-wrapper.component.d.ts +12 -0
  62. package/lib/__internal__/click-away-wrapper/click-away-wrapper.component.js +59 -0
  63. package/lib/__internal__/click-away-wrapper/index.d.ts +2 -0
  64. package/lib/{components/menu/submenu-block → __internal__/click-away-wrapper}/index.js +2 -2
  65. package/lib/{components/scrollable-list → __internal__/click-away-wrapper}/package.json +1 -1
  66. package/lib/__internal__/focus-trap/focus-trap-utils.js +25 -1
  67. package/lib/__internal__/focus-trap/focus-trap.component.d.ts +3 -1
  68. package/lib/__internal__/focus-trap/focus-trap.component.js +46 -12
  69. package/lib/{components/radio-button → __internal__/radio-button-mapper}/radio-button-mapper.component.d.ts +0 -0
  70. package/lib/{components/radio-button → __internal__/radio-button-mapper}/radio-button-mapper.component.js +0 -0
  71. package/lib/components/advanced-color-picker/advanced-color-picker.component.js +5 -5
  72. package/lib/components/badge/badge.style.d.ts +1 -1
  73. package/lib/components/button/button.component.d.ts +1 -3
  74. package/lib/components/button/button.component.js +1 -14
  75. package/lib/components/button/button.style.d.ts +1 -1
  76. package/lib/components/button-toggle-group/button-toggle-group.component.js +1 -1
  77. package/lib/components/confirm/confirm.component.d.ts +1 -5
  78. package/lib/components/confirm/confirm.component.js +2 -17
  79. package/lib/components/confirm/confirm.d.ts +0 -2
  80. package/lib/components/date/date.component.js +20 -20
  81. package/lib/components/dialog/dialog.component.js +4 -3
  82. package/lib/components/dialog-full-screen/content.style.js +4 -10
  83. package/lib/components/dialog-full-screen/dialog-full-screen.component.js +4 -3
  84. package/lib/components/heading/heading.component.d.ts +27 -52
  85. package/lib/components/heading/heading.component.js +86 -170
  86. package/lib/components/heading/heading.d.ts +5 -3
  87. package/lib/components/i18n-provider/i18n-provider.component.d.ts +0 -9
  88. package/lib/components/i18n-provider/i18n-provider.component.js +0 -9
  89. package/lib/components/menu/__internal__/submenu/submenu.component.js +12 -17
  90. package/lib/components/menu/index.d.ts +0 -1
  91. package/lib/components/menu/index.js +0 -8
  92. package/lib/components/menu/menu-full-screen/menu-full-screen.component.js +3 -17
  93. package/lib/components/menu/menu-full-screen/menu-full-screen.style.js +1 -0
  94. package/lib/components/menu/menu-item/menu-item.component.js +0 -7
  95. package/lib/components/multi-action-button/multi-action-button.component.d.ts +1 -1
  96. package/lib/components/multi-action-button/multi-action-button.component.js +1 -14
  97. package/lib/components/navigation-bar/navigation-bar.component.d.ts +1 -6
  98. package/lib/components/navigation-bar/navigation-bar.component.js +1 -18
  99. package/lib/components/navigation-bar/navigation-bar.style.d.ts +0 -4
  100. package/lib/components/navigation-bar/navigation-bar.style.js +0 -8
  101. package/lib/components/popover-container/popover-container.component.js +17 -3
  102. package/lib/components/radio-button/radio-button-group.component.js +1 -1
  103. package/lib/components/select/select-list/select-list.component.js +2 -2
  104. package/lib/components/sidebar/__internal__/sidebar-header/sidebar-header.component.d.ts +3 -1
  105. package/lib/components/sidebar/__internal__/sidebar-header/sidebar-header.component.js +7 -2
  106. package/lib/components/sidebar/sidebar.component.js +11 -3
  107. package/lib/components/simple-color-picker/simple-color-picker.component.js +1 -1
  108. package/lib/components/split-button/split-button-toggle.style.d.ts +1 -1
  109. package/lib/components/split-button/split-button.component.d.ts +1 -4
  110. package/lib/components/split-button/split-button.component.js +3 -18
  111. package/lib/components/split-button/split-button.d.ts +0 -2
  112. package/lib/components/tile/tile.component.d.ts +1 -2
  113. package/lib/components/tile/tile.component.js +1 -16
  114. package/lib/components/tile/tile.d.ts +0 -2
  115. package/lib/components/tile-select/tile-select-group.component.js +1 -1
  116. package/lib/components/toast/toast.component.d.ts +1 -4
  117. package/lib/components/toast/toast.component.js +1 -16
  118. package/lib/components/toast/toast.d.ts +0 -2
  119. package/lib/locales/en-gb.js +0 -9
  120. package/lib/locales/locale.d.ts +0 -9
  121. package/lib/locales/pl-pl.js +0 -9
  122. package/package.json +1 -1
  123. package/esm/components/app-wrapper/app-wrapper.component.d.ts +0 -25
  124. package/esm/components/app-wrapper/app-wrapper.component.js +0 -104
  125. package/esm/components/app-wrapper/app-wrapper.d.ts +0 -12
  126. package/esm/components/app-wrapper/app-wrapper.style.d.ts +0 -2
  127. package/esm/components/app-wrapper/app-wrapper.style.js +0 -17
  128. package/esm/components/app-wrapper/index.d.ts +0 -1
  129. package/esm/components/app-wrapper/index.js +0 -1
  130. package/esm/components/menu/submenu-block/index.d.ts +0 -2
  131. package/esm/components/menu/submenu-block/index.js +0 -1
  132. package/esm/components/menu/submenu-block/submenu-block.component.d.ts +0 -12
  133. package/esm/components/menu/submenu-block/submenu-block.component.js +0 -34
  134. package/esm/components/menu/submenu-block/submenu-block.d.ts +0 -12
  135. package/esm/components/menu/submenu-block/submenu-block.style.d.ts +0 -2
  136. package/esm/components/menu/submenu-block/submenu-block.style.js +0 -16
  137. package/esm/components/mount-in-app/__spec__.d.ts +0 -1
  138. package/esm/components/mount-in-app/__spec__.js +0 -47
  139. package/esm/components/mount-in-app/index.d.ts +0 -1
  140. package/esm/components/mount-in-app/mount-in-app.d.ts +0 -12
  141. package/esm/components/mount-in-app/mount-in-app.js +0 -90
  142. package/esm/components/mount-in-app/package.json +0 -3
  143. package/esm/components/multi-step-wizard/__spec__.d.ts +0 -1
  144. package/esm/components/multi-step-wizard/__spec__.js +0 -191
  145. package/esm/components/multi-step-wizard/multi-step-wizard.d.ts +0 -109
  146. package/esm/components/multi-step-wizard/multi-step-wizard.js +0 -383
  147. package/esm/components/multi-step-wizard/multi-step-wizard.style.d.ts +0 -2
  148. package/esm/components/multi-step-wizard/multi-step-wizard.style.js +0 -10
  149. package/esm/components/multi-step-wizard/package.json +0 -4
  150. package/esm/components/multi-step-wizard/step/__spec__.d.ts +0 -1
  151. package/esm/components/multi-step-wizard/step/__spec__.js +0 -399
  152. package/esm/components/multi-step-wizard/step/package.json +0 -4
  153. package/esm/components/multi-step-wizard/step/step.d.ts +0 -166
  154. package/esm/components/multi-step-wizard/step/step.js +0 -407
  155. package/esm/components/multi-step-wizard/step/step.style.d.ts +0 -13
  156. package/esm/components/multi-step-wizard/step/step.style.js +0 -138
  157. package/esm/components/scrollable-list/as-scrollable-list-item.wrapper.d.ts +0 -2
  158. package/esm/components/scrollable-list/as-scrollable-list-item.wrapper.js +0 -10
  159. package/esm/components/scrollable-list/index.d.ts +0 -4
  160. package/esm/components/scrollable-list/index.js +0 -4
  161. package/esm/components/scrollable-list/scrollable-list-item.component.d.ts +0 -2
  162. package/esm/components/scrollable-list/scrollable-list-item.component.js +0 -26
  163. package/esm/components/scrollable-list/scrollable-list.component.d.ts +0 -52
  164. package/esm/components/scrollable-list/scrollable-list.component.js +0 -306
  165. package/esm/components/scrollable-list/scrollable-list.context.d.ts +0 -3
  166. package/esm/components/scrollable-list/scrollable-list.context.js +0 -2
  167. package/esm/components/scrollable-list/scrollable-list.style.d.ts +0 -2
  168. package/esm/components/scrollable-list/scrollable-list.style.js +0 -30
  169. package/esm/components/scrollable-list/test-utils.d.ts +0 -2
  170. package/esm/components/scrollable-list/test-utils.js +0 -25
  171. package/lib/components/app-wrapper/app-wrapper.component.d.ts +0 -25
  172. package/lib/components/app-wrapper/app-wrapper.component.js +0 -120
  173. package/lib/components/app-wrapper/app-wrapper.d.ts +0 -12
  174. package/lib/components/app-wrapper/app-wrapper.style.d.ts +0 -2
  175. package/lib/components/app-wrapper/app-wrapper.style.js +0 -28
  176. package/lib/components/app-wrapper/index.d.ts +0 -1
  177. package/lib/components/app-wrapper/index.js +0 -15
  178. package/lib/components/app-wrapper/package.json +0 -6
  179. package/lib/components/menu/submenu-block/index.d.ts +0 -2
  180. package/lib/components/menu/submenu-block/package.json +0 -6
  181. package/lib/components/menu/submenu-block/submenu-block.component.d.ts +0 -12
  182. package/lib/components/menu/submenu-block/submenu-block.component.js +0 -53
  183. package/lib/components/menu/submenu-block/submenu-block.d.ts +0 -12
  184. package/lib/components/menu/submenu-block/submenu-block.style.d.ts +0 -2
  185. package/lib/components/menu/submenu-block/submenu-block.style.js +0 -33
  186. package/lib/components/mount-in-app/__spec__.d.ts +0 -1
  187. package/lib/components/mount-in-app/__spec__.js +0 -55
  188. package/lib/components/mount-in-app/index.d.ts +0 -1
  189. package/lib/components/mount-in-app/mount-in-app.d.ts +0 -12
  190. package/lib/components/mount-in-app/mount-in-app.js +0 -105
  191. package/lib/components/mount-in-app/package.json +0 -3
  192. package/lib/components/multi-step-wizard/__spec__.d.ts +0 -1
  193. package/lib/components/multi-step-wizard/__spec__.js +0 -202
  194. package/lib/components/multi-step-wizard/multi-step-wizard.d.ts +0 -109
  195. package/lib/components/multi-step-wizard/multi-step-wizard.js +0 -397
  196. package/lib/components/multi-step-wizard/multi-step-wizard.style.d.ts +0 -2
  197. package/lib/components/multi-step-wizard/multi-step-wizard.style.js +0 -21
  198. package/lib/components/multi-step-wizard/package.json +0 -4
  199. package/lib/components/multi-step-wizard/step/__spec__.d.ts +0 -1
  200. package/lib/components/multi-step-wizard/step/__spec__.js +0 -409
  201. package/lib/components/multi-step-wizard/step/package.json +0 -4
  202. package/lib/components/multi-step-wizard/step/step.d.ts +0 -166
  203. package/lib/components/multi-step-wizard/step/step.js +0 -421
  204. package/lib/components/multi-step-wizard/step/step.style.d.ts +0 -13
  205. package/lib/components/multi-step-wizard/step/step.style.js +0 -162
  206. package/lib/components/scrollable-list/as-scrollable-list-item.wrapper.d.ts +0 -2
  207. package/lib/components/scrollable-list/as-scrollable-list-item.wrapper.js +0 -21
  208. package/lib/components/scrollable-list/index.d.ts +0 -4
  209. package/lib/components/scrollable-list/index.js +0 -31
  210. package/lib/components/scrollable-list/scrollable-list-item.component.d.ts +0 -2
  211. package/lib/components/scrollable-list/scrollable-list-item.component.js +0 -42
  212. package/lib/components/scrollable-list/scrollable-list.component.d.ts +0 -52
  213. package/lib/components/scrollable-list/scrollable-list.component.js +0 -328
  214. package/lib/components/scrollable-list/scrollable-list.context.d.ts +0 -3
  215. package/lib/components/scrollable-list/scrollable-list.context.js +0 -14
  216. package/lib/components/scrollable-list/scrollable-list.style.d.ts +0 -2
  217. package/lib/components/scrollable-list/scrollable-list.style.js +0 -41
  218. package/lib/components/scrollable-list/test-utils.d.ts +0 -2
  219. package/lib/components/scrollable-list/test-utils.js +0 -37
@@ -109,7 +109,8 @@ const DialogFullScreen = ({
109
109
  }, componentTags), /*#__PURE__*/_react.default.createElement(_focusTrap.default, {
110
110
  autoFocus: !disableAutoFocus,
111
111
  focusFirstElement: focusFirstElement,
112
- wrapperRef: dialogRef
112
+ wrapperRef: dialogRef,
113
+ isOpen: open
113
114
  }, /*#__PURE__*/_react.default.createElement(_dialogFullScreen.default, _extends({
114
115
  "aria-modal": role === "dialog" ? true : undefined
115
116
  }, ariaProps, {
@@ -117,12 +118,12 @@ const DialogFullScreen = ({
117
118
  "data-element": "dialog-full-screen",
118
119
  pagesStyling: pagesStyling,
119
120
  role: role
120
- }), dialogTitle(), /*#__PURE__*/_react.default.createElement(_content.default, {
121
+ }), dialogTitle(), closeIcon(), /*#__PURE__*/_react.default.createElement(_content.default, {
121
122
  hasHeader: title !== undefined,
122
123
  "data-element": "content",
123
124
  ref: contentRef,
124
125
  disableContentPadding: disableContentPadding
125
- }, children), closeIcon())));
126
+ }, children))));
126
127
  };
127
128
 
128
129
  DialogFullScreen.defaultProps = {
@@ -1,64 +1,44 @@
1
1
  export default Heading;
2
- declare class Heading extends React.Component<any, any, any> {
3
- constructor(props: any);
4
- constructor(props: any, context: any);
5
- get help(): JSX.Element | null;
6
- get back(): JSX.Element | null;
7
- get subheader(): JSX.Element | null;
8
- get separator(): JSX.Element | null;
9
- get divider(): JSX.Element | null;
10
- get pills(): JSX.Element | null;
11
- render(): JSX.Element | null;
12
- }
2
+ declare function Heading({ children, backLink, divider, help, helpAriaLabel, helpLink, pills, separator, subheader, subtitleId, title, titleId, ...rest }: {
3
+ [x: string]: any;
4
+ children: any;
5
+ backLink: any;
6
+ divider?: boolean | undefined;
7
+ help: any;
8
+ helpAriaLabel: any;
9
+ helpLink: any;
10
+ pills: any;
11
+ separator?: boolean | undefined;
12
+ subheader: any;
13
+ subtitleId: any;
14
+ title: any;
15
+ titleId: any;
16
+ }): JSX.Element | null;
13
17
  declare namespace Heading {
14
18
  const propTypes: {
15
- /**
16
- * Children elements
17
- */
19
+ /** Child elements */
18
20
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
19
- /**
20
- * Defines the title for the heading.
21
- */
21
+ /** Defines the title for the heading. */
22
22
  title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
23
- /**
24
- * Defines the title id for the heading.
25
- */
23
+ /** Defines the title id for the heading. */
26
24
  titleId: PropTypes.Requireable<string>;
27
- /**
28
- * Defines the subheader for the heading.
29
- */
25
+ /** Defines the subheader for the heading. */
30
26
  subheader: PropTypes.Requireable<PropTypes.ReactNodeLike>;
31
- /**
32
- * Defines the subtitle id for the heading.
33
- */
27
+ /** Defines the subtitle id for the heading. */
34
28
  subtitleId: PropTypes.Requireable<string>;
35
- /**
36
- * Defines the help text for the heading.
37
- */
29
+ /** Defines the help text for the heading. */
38
30
  help: PropTypes.Requireable<string>;
39
- /**
40
- * Defines the help link for the heading.
41
- */
31
+ /** Defines the help link for the heading. */
42
32
  helpLink: PropTypes.Requireable<string>;
43
- /**
44
- * Defines the a href for the back link.
45
- */
33
+ /** Defines the a href for the back link. */
46
34
  backLink: PropTypes.Requireable<string | ((...args: any[]) => any)>;
47
- /**
48
- * Adds a divider below the heading and the content.
49
- */
35
+ /** Adds a divider below the heading and the content. */
50
36
  divider: PropTypes.Requireable<boolean>;
51
- /**
52
- * Adds a separator between the title and the subheader.
53
- */
37
+ /** Adds a separator between the title and the subheader. */
54
38
  separator: PropTypes.Requireable<boolean>;
55
- /**
56
- * Pills that will be added after the title.
57
- */
39
+ /** Pills that will be added after the title. */
58
40
  pills: PropTypes.Requireable<PropTypes.ReactNodeLike>;
59
- /**
60
- * Aria label for rendered help component
61
- */
41
+ /** Aria label for rendered help component */
62
42
  helpAriaLabel: PropTypes.Requireable<string>;
63
43
  marginBottom?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
64
44
  margin?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
@@ -75,10 +55,5 @@ declare namespace Heading {
75
55
  marginY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
76
56
  my?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
77
57
  };
78
- namespace defaultProps {
79
- const divider: boolean;
80
- const separator: boolean;
81
- }
82
58
  }
83
- import React from "react";
84
59
  import PropTypes from "prop-types";
@@ -21,204 +21,120 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
21
21
 
22
22
  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); }
23
23
 
24
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
25
-
26
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
27
-
28
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
29
-
30
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
31
-
32
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
33
-
34
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
35
-
36
- function _possibleConstructorReturn(self, call) { if (call && (typeof call === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
37
-
38
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
39
-
40
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
-
42
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
43
-
44
24
  const marginPropTypes = (0, _utils.filterStyledSystemMarginProps)(_propTypes2.default.space);
45
25
 
46
- let Heading = /*#__PURE__*/function (_React$Component) {
47
- _inherits(Heading, _React$Component);
48
-
49
- var _super = _createSuper(Heading);
50
-
51
- function Heading() {
52
- _classCallCheck(this, Heading);
53
-
54
- return _super.apply(this, arguments);
55
- }
56
-
57
- _createClass(Heading, [{
58
- key: "help",
59
- get: function () {
60
- if (!this.props.help && !this.props.helpLink) {
61
- return null;
62
- }
63
-
64
- return /*#__PURE__*/_react.default.createElement(_heading.StyledHeaderHelp, {
65
- "data-element": "help",
66
- tooltipPosition: "right",
67
- href: this.props.helpLink,
68
- ariaLabel: this.props.helpAriaLabel
69
- }, this.props.help);
70
- }
71
- }, {
72
- key: "back",
73
- get: function () {
74
- if (!this.props.backLink) {
75
- return null;
76
- }
77
-
78
- let props;
79
-
80
- if (typeof this.props.backLink === "string") {
81
- props = {
82
- href: this.props.backLink
83
- };
84
- } else {
85
- props = {
86
- onClick: this.props.backLink
87
- };
88
- }
89
-
90
- return /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingBackButton // this event allows an element to be focusable on click event on IE
91
- , _extends({
92
- onMouseDown: e => e.currentTarget.focus(),
93
- "data-element": "back"
94
- }, props), /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingIcon, {
95
- type: "chevron_left",
96
- divider: this.props.divider
97
- }));
98
- }
99
- }, {
100
- key: "subheader",
101
- get: function () {
102
- if (!this.props.subheader) {
103
- return null;
104
- }
105
-
106
- return /*#__PURE__*/_react.default.createElement(_heading.StyledSubHeader, {
107
- "data-element": "subtitle",
108
- id: this.props.subtitleId,
109
- hasBackLink: !!this.props.backLink,
110
- hasSeparator: this.props.separator
111
- }, this.props.subheader);
112
- }
113
- }, {
114
- key: "separator",
115
- get: function () {
116
- return this.props.separator ? /*#__PURE__*/_react.default.createElement(_heading.StyledSeparator, null) : null;
117
- }
118
- }, {
119
- key: "divider",
120
- get: function () {
121
- return this.props.divider ? /*#__PURE__*/_react.default.createElement(_heading.StyledDivider, {
122
- "data-element": "divider"
123
- }) : null;
124
- }
125
- }, {
126
- key: "pills",
127
- get: function () {
128
- return this.props.pills ? /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingPills, {
129
- "data-element": "pills"
130
- }, this.props.pills) : null;
131
- }
132
- }, {
133
- key: "render",
134
- value: function render() {
135
- if (!this.props.title) {
136
- return null;
137
- }
138
-
139
- const marginProps = (0, _utils.filterStyledSystemMarginProps)(this.props);
140
- return /*#__PURE__*/_react.default.createElement(_heading.StyledHeading, _extends({}, (0, _tags.default)("heading", this.props), marginProps), /*#__PURE__*/_react.default.createElement(_heading.StyledHeader, {
141
- "data-element": "header-container",
142
- divider: this.props.divider,
143
- subheader: this.props.subheader,
144
- hasBackLink: !!this.props.backLink
145
- }, this.back, /*#__PURE__*/_react.default.createElement(_heading.StyledHeaderContent, null, /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingTitle, {
146
- withMargin: this.props.pills || this.props.help,
147
- variant: "h1",
148
- "data-element": "title",
149
- id: this.props.titleId
150
- }, this.props.title), this.help, this.pills), this.separator, this.subheader), this.divider, this.props.children);
151
- }
152
- }]);
153
-
154
- return Heading;
155
- }(_react.default.Component);
26
+ const Heading = ({
27
+ children,
28
+ backLink,
29
+ divider = true,
30
+ help,
31
+ helpAriaLabel,
32
+ helpLink,
33
+ pills,
34
+ separator = false,
35
+ subheader,
36
+ subtitleId,
37
+ title,
38
+ titleId,
39
+ ...rest
40
+ }) => {
41
+ const getHelp = () => {
42
+ return /*#__PURE__*/_react.default.createElement(_heading.StyledHeaderHelp, {
43
+ "data-element": "help",
44
+ tooltipPosition: "right",
45
+ href: helpLink,
46
+ ariaLabel: helpAriaLabel
47
+ }, help);
48
+ };
49
+
50
+ const getBackButton = () => {
51
+ const backButtonProps = typeof backLink === "string" ? {
52
+ href: backLink
53
+ } : {
54
+ onClick: backLink
55
+ };
56
+ return /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingBackButton // this event allows an element to be focusable on click event on IE
57
+ , _extends({
58
+ onMouseDown: e => e.currentTarget.focus(),
59
+ "data-element": "back"
60
+ }, backButtonProps), /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingIcon, {
61
+ type: "chevron_left",
62
+ divider: divider
63
+ }));
64
+ };
65
+
66
+ const getSubheader = () => {
67
+ return /*#__PURE__*/_react.default.createElement(_heading.StyledSubHeader, {
68
+ "data-element": "subtitle",
69
+ id: subtitleId,
70
+ hasBackLink: !!backLink,
71
+ hasSeparator: separator
72
+ }, subheader);
73
+ };
74
+
75
+ const getPills = () => {
76
+ return /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingPills, {
77
+ "data-element": "pills"
78
+ }, pills);
79
+ };
80
+
81
+ const marginProps = (0, _utils.filterStyledSystemMarginProps)(rest);
82
+ const dataAttributes = {
83
+ "data-element": rest["data-element"],
84
+ "data-role": rest["data-role"]
85
+ };
86
+ return title ? /*#__PURE__*/_react.default.createElement(_heading.StyledHeading, _extends({}, (0, _tags.default)("heading", dataAttributes), marginProps), /*#__PURE__*/_react.default.createElement(_heading.StyledHeader, {
87
+ "data-element": "header-container",
88
+ divider: divider,
89
+ subheader: subheader,
90
+ hasBackLink: !!backLink
91
+ }, backLink && getBackButton(), /*#__PURE__*/_react.default.createElement(_heading.StyledHeaderContent, null, /*#__PURE__*/_react.default.createElement(_heading.StyledHeadingTitle, {
92
+ withMargin: pills || help,
93
+ variant: "h1",
94
+ "data-element": "title",
95
+ id: titleId
96
+ }, title), (help || helpLink) && getHelp(), pills && getPills()), separator && /*#__PURE__*/_react.default.createElement(_heading.StyledSeparator, null), subheader && getSubheader()), divider && /*#__PURE__*/_react.default.createElement(_heading.StyledDivider, {
97
+ "data-element": "divider"
98
+ }), children) : null;
99
+ };
156
100
 
157
101
  Heading.propTypes = { ...marginPropTypes,
158
102
 
159
- /**
160
- * Children elements
161
- */
103
+ /** Child elements */
162
104
  children: _propTypes.default.node,
163
105
 
164
- /**
165
- * Defines the title for the heading.
166
- */
106
+ /** Defines the title for the heading. */
167
107
  title: _propTypes.default.node,
168
108
 
169
- /**
170
- * Defines the title id for the heading.
171
- */
109
+ /** Defines the title id for the heading. */
172
110
  titleId: _propTypes.default.string,
173
111
 
174
- /**
175
- * Defines the subheader for the heading.
176
- */
112
+ /** Defines the subheader for the heading. */
177
113
  subheader: _propTypes.default.node,
178
114
 
179
- /**
180
- * Defines the subtitle id for the heading.
181
- */
115
+ /** Defines the subtitle id for the heading. */
182
116
  subtitleId: _propTypes.default.string,
183
117
 
184
- /**
185
- * Defines the help text for the heading.
186
- */
118
+ /** Defines the help text for the heading. */
187
119
  help: _propTypes.default.string,
188
120
 
189
- /**
190
- * Defines the help link for the heading.
191
- */
121
+ /** Defines the help link for the heading. */
192
122
  helpLink: _propTypes.default.string,
193
123
 
194
- /**
195
- * Defines the a href for the back link.
196
- */
124
+ /** Defines the a href for the back link. */
197
125
  backLink: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func]),
198
126
 
199
- /**
200
- * Adds a divider below the heading and the content.
201
- */
127
+ /** Adds a divider below the heading and the content. */
202
128
  divider: _propTypes.default.bool,
203
129
 
204
- /**
205
- * Adds a separator between the title and the subheader.
206
- */
130
+ /** Adds a separator between the title and the subheader. */
207
131
  separator: _propTypes.default.bool,
208
132
 
209
- /**
210
- * Pills that will be added after the title.
211
- */
133
+ /** Pills that will be added after the title. */
212
134
  pills: _propTypes.default.node,
213
135
 
214
- /**
215
- * Aria label for rendered help component
216
- */
136
+ /** Aria label for rendered help component */
217
137
  helpAriaLabel: _propTypes.default.string
218
138
  };
219
- Heading.defaultProps = {
220
- divider: true,
221
- separator: false
222
- };
223
139
  var _default = Heading;
224
140
  exports.default = _default;
@@ -2,8 +2,8 @@ import * as React from "react";
2
2
  import { MarginProps } from "styled-system";
3
3
 
4
4
  export interface HeadingProps extends MarginProps {
5
- /** Custom className */
6
- className?: string;
5
+ /** Child elements */
6
+ children?: React.ReactNode;
7
7
  /** Defines the title for the heading. */
8
8
  title?: React.ReactNode;
9
9
  /** Defines the title id for the heading. */
@@ -24,8 +24,10 @@ export interface HeadingProps extends MarginProps {
24
24
  separator?: boolean;
25
25
  /** Pills that will be added after the title. */
26
26
  pills?: React.ReactNode;
27
+ /** Aria label for rendered help component */
28
+ helpAriaLabel?: string;
27
29
  }
28
30
 
29
- declare class Heading extends React.Component<HeadingProps> {}
31
+ declare function Heading(props: HeadingProps): JSX.Element | null;
30
32
 
31
33
  export default Heading;
@@ -82,15 +82,6 @@ declare namespace I18nProvider {
82
82
  titleSelect: PropTypes.Requireable<PropTypes.InferProps<{
83
83
  deselect: PropTypes.Requireable<(...args: any[]) => any>;
84
84
  }>>;
85
- wizards: PropTypes.Requireable<PropTypes.InferProps<{
86
- multiStep: PropTypes.Requireable<PropTypes.InferProps<{
87
- buttons: PropTypes.Requireable<PropTypes.InferProps<{
88
- submit: PropTypes.Requireable<(...args: any[]) => any>;
89
- next: PropTypes.Requireable<(...args: any[]) => any>;
90
- back: PropTypes.Requireable<(...args: any[]) => any>;
91
- }>>;
92
- }>>;
93
- }>>;
94
85
  }>>;
95
86
  export { locale_1 as locale };
96
87
  export const children: PropTypes.Validator<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>;
@@ -101,15 +101,6 @@ I18nProvider.propTypes = {
101
101
  }),
102
102
  titleSelect: _propTypes.default.shape({
103
103
  deselect: _propTypes.default.func
104
- }),
105
- wizards: _propTypes.default.shape({
106
- multiStep: _propTypes.default.shape({
107
- buttons: _propTypes.default.shape({
108
- submit: _propTypes.default.func,
109
- next: _propTypes.default.func,
110
- back: _propTypes.default.func
111
- })
112
- })
113
104
  })
114
105
  }),
115
106
  children: _propTypes.default.node.isRequired
@@ -27,6 +27,8 @@ var _scrollableBlock = _interopRequireDefault(require("../../scrollable-block"))
27
27
 
28
28
  var _submenu2 = _interopRequireDefault(require("./submenu.context"));
29
29
 
30
+ var _clickAwayWrapper = _interopRequireDefault(require("../../../../__internal__/click-away-wrapper"));
31
+
30
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
33
 
32
34
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
@@ -209,12 +211,11 @@ const Submenu = /*#__PURE__*/_react.default.forwardRef(({
209
211
  }
210
212
  }
211
213
  }, [submenuFocusIndex, submenuOpen, href, menuContext, arrayOfFormattedChildren, numberOfChildren, openSubmenu, closeSubmenu, onKeyDown, characterString, restartCharacterTimeout, startCharacterTimeout]);
212
- const onClickOutside = (0, _react.useCallback)(event => {
213
- if (!_events.default.composedPath(event).includes(submenuRef.current)) {
214
- document.removeEventListener("click", onClickOutside);
215
- closeSubmenu();
216
- }
217
- }, [closeSubmenu]);
214
+
215
+ const handleClickAway = () => {
216
+ document.removeEventListener("click", handleClickAway);
217
+ closeSubmenu();
218
+ };
218
219
 
219
220
  const handleClick = event => {
220
221
  if (clickToOpen) {
@@ -233,15 +234,6 @@ const Submenu = /*#__PURE__*/_react.default.forwardRef(({
233
234
  } // eslint-disable-next-line react-hooks/exhaustive-deps
234
235
 
235
236
  }, [characterString]);
236
- (0, _react.useEffect)(() => {
237
- if (submenuOpen) {
238
- document.addEventListener("click", onClickOutside);
239
- }
240
-
241
- return function cleanup() {
242
- document.removeEventListener("click", onClickOutside);
243
- };
244
- }, [onClickOutside, submenuOpen]);
245
237
 
246
238
  if (inFullscreenView) {
247
239
  return /*#__PURE__*/_react.default.createElement(_submenu.StyledSubmenuWrapper, {
@@ -275,7 +267,10 @@ const Submenu = /*#__PURE__*/_react.default.forwardRef(({
275
267
  }, child))));
276
268
  }
277
269
 
278
- return /*#__PURE__*/_react.default.createElement(_submenu.StyledSubmenuWrapper, {
270
+ return /*#__PURE__*/_react.default.createElement(_clickAwayWrapper.default, {
271
+ handleClickAway: handleClickAway,
272
+ targets: [submenuRef]
273
+ }, /*#__PURE__*/_react.default.createElement(_submenu.StyledSubmenuWrapper, {
279
274
  "data-component": "submenu-wrapper",
280
275
  onMouseOver: !clickToOpen ? () => openSubmenu() : undefined,
281
276
  onMouseLeave: () => closeSubmenu(),
@@ -313,7 +308,7 @@ const Submenu = /*#__PURE__*/_react.default.forwardRef(({
313
308
  updateFocusIndex: setSubmenuFocusIndex,
314
309
  itemIndex: child.type === _menuItem2.default ? index : undefined
315
310
  }
316
- }, child))));
311
+ }, child)))));
317
312
  });
318
313
 
319
314
  Submenu.propTypes = {
@@ -1,6 +1,5 @@
1
1
  export { default as Menu } from "./menu";
2
2
  export { default as MenuItem } from "./menu-item/menu-item";
3
3
  export { default as ScrollableBlock } from "./scrollable-block/scrollable-block";
4
- export { default as SubmenuBlock } from "./submenu-block/submenu-block";
5
4
  export { default as MenuDivider } from "./menu-divider/menu-divider";
6
5
  export { default as MenuSegmentTitle } from "./menu-segment-title/menu-segment-title";
@@ -15,12 +15,6 @@ Object.defineProperty(exports, "MenuItem", {
15
15
  return _menuItem.default;
16
16
  }
17
17
  });
18
- Object.defineProperty(exports, "SubmenuBlock", {
19
- enumerable: true,
20
- get: function () {
21
- return _submenuBlock.default;
22
- }
23
- });
24
18
  Object.defineProperty(exports, "MenuDivider", {
25
19
  enumerable: true,
26
20
  get: function () {
@@ -50,8 +44,6 @@ var _menu = _interopRequireDefault(require("./menu.component"));
50
44
 
51
45
  var _menuItem = _interopRequireDefault(require("./menu-item/menu-item.component"));
52
46
 
53
- var _submenuBlock = _interopRequireDefault(require("./submenu-block/submenu-block.component"));
54
-
55
47
  var _menuDivider = _interopRequireDefault(require("./menu-divider/menu-divider.component"));
56
48
 
57
49
  var _menuSegmentTitle = _interopRequireDefault(require("./menu-segment-title/menu-segment-title.component"));
@@ -57,19 +57,6 @@ const MenuFullscreen = ({
57
57
  }
58
58
  };
59
59
 
60
- (0, _react.useLayoutEffect)(() => {
61
- const checkTransitionEnd = () => {
62
- menuContentRef.current.focus();
63
- };
64
-
65
- const wrapperRef = menuWrapperRef.current;
66
-
67
- if (isOpen) {
68
- wrapperRef.addEventListener("transitionend", checkTransitionEnd);
69
- } else {
70
- wrapperRef.removeEventListener("transitionend", checkTransitionEnd);
71
- }
72
- }, [isOpen]);
73
60
  const scrollVariants = {
74
61
  light: "light",
75
62
  dark: "dark",
@@ -85,8 +72,8 @@ const MenuFullscreen = ({
85
72
  return /*#__PURE__*/_react.default.createElement("li", {
86
73
  "aria-label": "menu-fullscreen"
87
74
  }, /*#__PURE__*/_react.default.createElement(_portal.default, null, /*#__PURE__*/_react.default.createElement(_focusTrap.default, {
88
- autoFocus: false,
89
- wrapperRef: menuWrapperRef
75
+ wrapperRef: menuWrapperRef,
76
+ isOpen: isOpen
90
77
  }, /*#__PURE__*/_react.default.createElement(_menuFullScreen.StyledMenuFullscreen, _extends({
91
78
  "data-component": "menu-fullscreen",
92
79
  ref: menuWrapperRef,
@@ -117,8 +104,7 @@ const MenuFullscreen = ({
117
104
  display: "flex",
118
105
  flexDirection: "column",
119
106
  role: "list",
120
- inFullscreenView: true,
121
- tabIndex: -1
107
+ inFullscreenView: true
122
108
  }, _react.default.Children.map(children, (child, index) => /*#__PURE__*/_react.default.createElement(_menu2.default.Provider, {
123
109
  value: {
124
110
  inFullscreenView: true,
@@ -33,6 +33,7 @@ const StyledMenuFullscreen = _styledComponents.default.div`
33
33
  bottom: 0;
34
34
  height: 100vh;
35
35
  width: 100%;
36
+ outline: none;
36
37
 
37
38
  a,
38
39
  button,
@@ -25,8 +25,6 @@ var _submenu = _interopRequireDefault(require("../__internal__/submenu/submenu.c
25
25
 
26
26
  var _submenu2 = _interopRequireDefault(require("../__internal__/submenu/submenu.context"));
27
27
 
28
- var _submenuBlock = _interopRequireDefault(require("../submenu-block/submenu-block.component"));
29
-
30
28
  var _menu2 = require("../menu.style");
31
29
 
32
30
  var _search = _interopRequireDefault(require("../../search"));
@@ -71,11 +69,6 @@ const MenuItem = ({
71
69
  } = menuContext;
72
70
 
73
71
  const childrenItems = _react.default.Children.map(children, child => {
74
- if (child && child.type === _submenuBlock.default) {
75
- const childArray = Array.isArray(child.props.children) ? child.props.children : [child.props.children];
76
- return [...childArray.map(innerChild => innerChild)];
77
- }
78
-
79
72
  if ((child === null || child === void 0 ? void 0 : child.type) === _search.default) {
80
73
  isChildSearch.current = true;
81
74
  }
@@ -6,5 +6,5 @@ export interface MultiActionButtonProps extends Omit<SplitButtonProps, "buttonTy
6
6
  /** Second text child, renders under main text, only when size is "large" */
7
7
  subtext?: string;
8
8
  }
9
- export declare const MultiActionButton: ({ align, disabled, as, buttonType, size, children, text, subtext, "data-element": dataElement, "data-role": dataRole, ...rest }: MultiActionButtonProps) => JSX.Element;
9
+ export declare const MultiActionButton: ({ align, disabled, buttonType, size, children, text, subtext, "data-element": dataElement, "data-role": dataRole, ...rest }: MultiActionButtonProps) => JSX.Element;
10
10
  export default MultiActionButton;