carbon-react 109.3.3 → 109.3.4

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 (51) hide show
  1. package/esm/__internal__/fieldset/fieldset.component.d.ts +25 -0
  2. package/esm/__internal__/fieldset/fieldset.component.js +167 -50
  3. package/esm/__internal__/fieldset/fieldset.style.d.ts +13 -0
  4. package/esm/__internal__/fieldset/fieldset.style.js +0 -10
  5. package/esm/__internal__/fieldset/index.d.ts +2 -1
  6. package/esm/__internal__/popover/index.d.ts +2 -1
  7. package/esm/__internal__/popover/popover.component.d.ts +18 -0
  8. package/esm/__internal__/popover/popover.component.js +23 -21
  9. package/esm/__internal__/popover/popover.style.d.ts +2 -0
  10. package/esm/components/button/button.component.d.ts +2 -0
  11. package/esm/components/button/button.component.js +2 -0
  12. package/esm/components/multi-action-button/multi-action-button.component.js +1 -0
  13. package/esm/components/pager/pager.component.js +1 -1
  14. package/esm/components/pager/pager.style.js +1 -1
  15. package/esm/components/split-button/index.d.ts +2 -2
  16. package/esm/components/split-button/split-button-children.style.d.ts +8 -0
  17. package/esm/components/split-button/split-button-children.style.js +3 -4
  18. package/esm/components/split-button/split-button-toggle.style.d.ts +10 -0
  19. package/esm/components/split-button/split-button.component.d.ts +29 -0
  20. package/esm/components/split-button/split-button.component.js +534 -87
  21. package/esm/components/split-button/split-button.config.d.ts +4 -0
  22. package/esm/components/split-button/split-button.style.d.ts +2 -0
  23. package/lib/__internal__/fieldset/fieldset.component.d.ts +25 -0
  24. package/lib/__internal__/fieldset/fieldset.component.js +167 -53
  25. package/lib/__internal__/fieldset/fieldset.style.d.ts +13 -0
  26. package/lib/__internal__/fieldset/fieldset.style.js +1 -12
  27. package/lib/__internal__/fieldset/index.d.ts +2 -1
  28. package/lib/__internal__/popover/index.d.ts +2 -1
  29. package/lib/__internal__/popover/popover.component.d.ts +18 -0
  30. package/lib/__internal__/popover/popover.component.js +24 -22
  31. package/lib/__internal__/popover/popover.style.d.ts +2 -0
  32. package/lib/components/button/button.component.d.ts +2 -0
  33. package/lib/components/button/button.component.js +2 -0
  34. package/lib/components/multi-action-button/multi-action-button.component.js +1 -0
  35. package/lib/components/pager/pager.component.js +1 -1
  36. package/lib/components/pager/pager.style.js +1 -1
  37. package/lib/components/split-button/index.d.ts +2 -2
  38. package/lib/components/split-button/split-button-children.style.d.ts +8 -0
  39. package/lib/components/split-button/split-button-children.style.js +3 -4
  40. package/lib/components/split-button/split-button-toggle.style.d.ts +10 -0
  41. package/lib/components/split-button/split-button.component.d.ts +29 -0
  42. package/lib/components/split-button/split-button.component.js +535 -89
  43. package/lib/components/split-button/split-button.config.d.ts +4 -0
  44. package/lib/components/split-button/split-button.style.d.ts +2 -0
  45. package/package.json +1 -1
  46. package/esm/__internal__/fieldset/fieldset.d.ts +0 -37
  47. package/esm/__internal__/popover/popover.d.ts +0 -46
  48. package/esm/components/split-button/split-button.d.ts +0 -29
  49. package/lib/__internal__/fieldset/fieldset.d.ts +0 -37
  50. package/lib/__internal__/popover/popover.d.ts +0 -46
  51. package/lib/components/split-button/split-button.d.ts +0 -29
@@ -0,0 +1,4 @@
1
+ export declare const SPLIT_BUTTON_ICON_POSITIONS: string[];
2
+ export declare const SPLIT_BUTTON_THEMES: string[];
3
+ export declare const SPLIT_BUTTON_SIZES: string[];
4
+ export declare const SPLIT_BUTTON_ALIGNMENTS: string[];
@@ -0,0 +1,2 @@
1
+ declare const StyledSplitButton: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ export default StyledSplitButton;
@@ -0,0 +1,25 @@
1
+ import React from "react";
2
+ import { MarginProps } from "styled-system";
3
+ export interface FieldsetProps extends MarginProps {
4
+ /** Fieldset content */
5
+ children: React.ReactNode;
6
+ /** The content for the Fieldset Legend */
7
+ legend?: string;
8
+ error?: boolean | string;
9
+ warning?: boolean | string;
10
+ info?: boolean | string;
11
+ /** When true, legend is placed in line with the children */
12
+ inline?: boolean;
13
+ /** Percentage width of legend (only when legend is inline) */
14
+ legendWidth?: number;
15
+ /** Text alignment of legend when inline */
16
+ legendAlign?: "left" | "right";
17
+ /** Spacing between legend and field for inline legend, number multiplied by base spacing unit (8) */
18
+ legendSpacing?: 1 | 2;
19
+ /** If true, an asterisk will be added to the label */
20
+ isRequired?: boolean;
21
+ /** Controls whether group behaviour should be enabled */
22
+ blockGroupBehaviour?: boolean;
23
+ }
24
+ declare const Fieldset: ({ legend, children, inline, legendWidth, legendAlign, legendSpacing, error, warning, info, isRequired, blockGroupBehaviour, ...rest }: FieldsetProps) => JSX.Element;
25
+ export default Fieldset;
@@ -9,26 +9,20 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _propTypes2 = _interopRequireDefault(require("@styled-system/prop-types"));
13
-
14
12
  var _fieldset = require("./fieldset.style");
15
13
 
16
14
  var _validationIcon = _interopRequireDefault(require("../validations/validation-icon.component"));
17
15
 
18
16
  var _inputBehaviour = require("../input-behaviour");
19
17
 
20
- var _utils = require("../../style/utils");
21
-
22
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
19
 
24
20
  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); }
25
21
 
26
- const marginPropTypes = (0, _utils.filterStyledSystemMarginProps)(_propTypes2.default.space);
27
-
28
22
  const Fieldset = ({
29
23
  legend,
30
24
  children,
31
- inline,
25
+ inline = false,
32
26
  legendWidth,
33
27
  legendAlign = "right",
34
28
  legendSpacing = 2,
@@ -42,8 +36,7 @@ const Fieldset = ({
42
36
  blockGroupBehaviour: blockGroupBehaviour
43
37
  }, /*#__PURE__*/_react.default.createElement(_fieldset.StyledFieldset, _extends({
44
38
  "data-component": "fieldset",
45
- m: 0,
46
- inline: inline
39
+ m: 0
47
40
  }, rest), legend && /*#__PURE__*/_react.default.createElement(_inputBehaviour.InputGroupContext.Consumer, null, ({
48
41
  onMouseEnter,
49
42
  onMouseLeave
@@ -64,50 +57,171 @@ const Fieldset = ({
64
57
  })))), children));
65
58
 
66
59
  Fieldset.propTypes = {
67
- /** Filtered styled system margin props */
68
- ...marginPropTypes,
69
-
70
- /** Fieldset content */
71
- children: _propTypes.default.node.isRequired,
72
-
73
- /** The content for the Fieldset Legend */
74
- legend: _propTypes.default.string,
75
-
76
- /** Indicate that error has occurred
77
- Pass string to display icon, tooltip and red border
78
- Pass true boolean to only display red border */
79
- error: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
80
-
81
- /** Indicate that warning has occurred
82
- Pass string to display icon, tooltip and orange border
83
- Pass true boolean to only display orange border */
84
- warning: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
85
-
86
- /** Indicate additional information
87
- Pass string to display icon, tooltip and blue border
88
- Pass true boolean to only display blue border */
89
- info: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
90
-
91
- /** When true, legend is placed in line with the children */
92
- inline: _propTypes.default.bool,
93
-
94
- /** Percentage width of legend (only when legend is inline) */
95
- legendWidth: _propTypes.default.number,
96
-
97
- /** Text alignment of legend when inline */
98
- legendAlign: _propTypes.default.oneOf(["left", "right"]),
99
-
100
- /** Spacing between legend and field for inline legend, number multiplied by base spacing unit (8) */
101
- legendSpacing: _propTypes.default.oneOf([1, 2]),
102
-
103
- /** If true, an asterisk will be added to the label */
104
- isRequired: _propTypes.default.bool,
105
-
106
- /** Controls whether group behaviour should be enabled */
107
- blockGroupBehaviour: _propTypes.default.bool
108
- };
109
- Fieldset.defaultProps = {
110
- inline: false
60
+ "blockGroupBehaviour": _propTypes.default.bool,
61
+ "children": _propTypes.default.node,
62
+ "error": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
63
+ "info": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
64
+ "inline": _propTypes.default.bool,
65
+ "isRequired": _propTypes.default.bool,
66
+ "legend": _propTypes.default.string,
67
+ "legendAlign": _propTypes.default.oneOf(["left", "right"]),
68
+ "legendSpacing": _propTypes.default.oneOf([1, 2]),
69
+ "legendWidth": _propTypes.default.number,
70
+ "m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
71
+ "__@toStringTag": _propTypes.default.string.isRequired,
72
+ "description": _propTypes.default.string,
73
+ "toString": _propTypes.default.func.isRequired,
74
+ "valueOf": _propTypes.default.func.isRequired
75
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
76
+ "__@toStringTag": _propTypes.default.string.isRequired,
77
+ "description": _propTypes.default.string,
78
+ "toString": _propTypes.default.func.isRequired,
79
+ "valueOf": _propTypes.default.func.isRequired
80
+ }), _propTypes.default.string]),
81
+ "margin": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
82
+ "__@toStringTag": _propTypes.default.string.isRequired,
83
+ "description": _propTypes.default.string,
84
+ "toString": _propTypes.default.func.isRequired,
85
+ "valueOf": _propTypes.default.func.isRequired
86
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
87
+ "__@toStringTag": _propTypes.default.string.isRequired,
88
+ "description": _propTypes.default.string,
89
+ "toString": _propTypes.default.func.isRequired,
90
+ "valueOf": _propTypes.default.func.isRequired
91
+ }), _propTypes.default.string]),
92
+ "marginBottom": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
93
+ "__@toStringTag": _propTypes.default.string.isRequired,
94
+ "description": _propTypes.default.string,
95
+ "toString": _propTypes.default.func.isRequired,
96
+ "valueOf": _propTypes.default.func.isRequired
97
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
98
+ "__@toStringTag": _propTypes.default.string.isRequired,
99
+ "description": _propTypes.default.string,
100
+ "toString": _propTypes.default.func.isRequired,
101
+ "valueOf": _propTypes.default.func.isRequired
102
+ }), _propTypes.default.string]),
103
+ "marginLeft": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
104
+ "__@toStringTag": _propTypes.default.string.isRequired,
105
+ "description": _propTypes.default.string,
106
+ "toString": _propTypes.default.func.isRequired,
107
+ "valueOf": _propTypes.default.func.isRequired
108
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
109
+ "__@toStringTag": _propTypes.default.string.isRequired,
110
+ "description": _propTypes.default.string,
111
+ "toString": _propTypes.default.func.isRequired,
112
+ "valueOf": _propTypes.default.func.isRequired
113
+ }), _propTypes.default.string]),
114
+ "marginRight": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
115
+ "__@toStringTag": _propTypes.default.string.isRequired,
116
+ "description": _propTypes.default.string,
117
+ "toString": _propTypes.default.func.isRequired,
118
+ "valueOf": _propTypes.default.func.isRequired
119
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
120
+ "__@toStringTag": _propTypes.default.string.isRequired,
121
+ "description": _propTypes.default.string,
122
+ "toString": _propTypes.default.func.isRequired,
123
+ "valueOf": _propTypes.default.func.isRequired
124
+ }), _propTypes.default.string]),
125
+ "marginTop": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
126
+ "__@toStringTag": _propTypes.default.string.isRequired,
127
+ "description": _propTypes.default.string,
128
+ "toString": _propTypes.default.func.isRequired,
129
+ "valueOf": _propTypes.default.func.isRequired
130
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
131
+ "__@toStringTag": _propTypes.default.string.isRequired,
132
+ "description": _propTypes.default.string,
133
+ "toString": _propTypes.default.func.isRequired,
134
+ "valueOf": _propTypes.default.func.isRequired
135
+ }), _propTypes.default.string]),
136
+ "marginX": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
137
+ "__@toStringTag": _propTypes.default.string.isRequired,
138
+ "description": _propTypes.default.string,
139
+ "toString": _propTypes.default.func.isRequired,
140
+ "valueOf": _propTypes.default.func.isRequired
141
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
142
+ "__@toStringTag": _propTypes.default.string.isRequired,
143
+ "description": _propTypes.default.string,
144
+ "toString": _propTypes.default.func.isRequired,
145
+ "valueOf": _propTypes.default.func.isRequired
146
+ }), _propTypes.default.string]),
147
+ "marginY": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
148
+ "__@toStringTag": _propTypes.default.string.isRequired,
149
+ "description": _propTypes.default.string,
150
+ "toString": _propTypes.default.func.isRequired,
151
+ "valueOf": _propTypes.default.func.isRequired
152
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
153
+ "__@toStringTag": _propTypes.default.string.isRequired,
154
+ "description": _propTypes.default.string,
155
+ "toString": _propTypes.default.func.isRequired,
156
+ "valueOf": _propTypes.default.func.isRequired
157
+ }), _propTypes.default.string]),
158
+ "mb": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
159
+ "__@toStringTag": _propTypes.default.string.isRequired,
160
+ "description": _propTypes.default.string,
161
+ "toString": _propTypes.default.func.isRequired,
162
+ "valueOf": _propTypes.default.func.isRequired
163
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
164
+ "__@toStringTag": _propTypes.default.string.isRequired,
165
+ "description": _propTypes.default.string,
166
+ "toString": _propTypes.default.func.isRequired,
167
+ "valueOf": _propTypes.default.func.isRequired
168
+ }), _propTypes.default.string]),
169
+ "ml": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
170
+ "__@toStringTag": _propTypes.default.string.isRequired,
171
+ "description": _propTypes.default.string,
172
+ "toString": _propTypes.default.func.isRequired,
173
+ "valueOf": _propTypes.default.func.isRequired
174
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
175
+ "__@toStringTag": _propTypes.default.string.isRequired,
176
+ "description": _propTypes.default.string,
177
+ "toString": _propTypes.default.func.isRequired,
178
+ "valueOf": _propTypes.default.func.isRequired
179
+ }), _propTypes.default.string]),
180
+ "mr": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
181
+ "__@toStringTag": _propTypes.default.string.isRequired,
182
+ "description": _propTypes.default.string,
183
+ "toString": _propTypes.default.func.isRequired,
184
+ "valueOf": _propTypes.default.func.isRequired
185
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
186
+ "__@toStringTag": _propTypes.default.string.isRequired,
187
+ "description": _propTypes.default.string,
188
+ "toString": _propTypes.default.func.isRequired,
189
+ "valueOf": _propTypes.default.func.isRequired
190
+ }), _propTypes.default.string]),
191
+ "mt": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
192
+ "__@toStringTag": _propTypes.default.string.isRequired,
193
+ "description": _propTypes.default.string,
194
+ "toString": _propTypes.default.func.isRequired,
195
+ "valueOf": _propTypes.default.func.isRequired
196
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
197
+ "__@toStringTag": _propTypes.default.string.isRequired,
198
+ "description": _propTypes.default.string,
199
+ "toString": _propTypes.default.func.isRequired,
200
+ "valueOf": _propTypes.default.func.isRequired
201
+ }), _propTypes.default.string]),
202
+ "mx": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
203
+ "__@toStringTag": _propTypes.default.string.isRequired,
204
+ "description": _propTypes.default.string,
205
+ "toString": _propTypes.default.func.isRequired,
206
+ "valueOf": _propTypes.default.func.isRequired
207
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
208
+ "__@toStringTag": _propTypes.default.string.isRequired,
209
+ "description": _propTypes.default.string,
210
+ "toString": _propTypes.default.func.isRequired,
211
+ "valueOf": _propTypes.default.func.isRequired
212
+ }), _propTypes.default.string]),
213
+ "my": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
214
+ "__@toStringTag": _propTypes.default.string.isRequired,
215
+ "description": _propTypes.default.string,
216
+ "toString": _propTypes.default.func.isRequired,
217
+ "valueOf": _propTypes.default.func.isRequired
218
+ }), _propTypes.default.string])), _propTypes.default.number, _propTypes.default.object, _propTypes.default.shape({
219
+ "__@toStringTag": _propTypes.default.string.isRequired,
220
+ "description": _propTypes.default.string,
221
+ "toString": _propTypes.default.func.isRequired,
222
+ "valueOf": _propTypes.default.func.isRequired
223
+ }), _propTypes.default.string]),
224
+ "warning": _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool])
111
225
  };
112
226
  var _default = Fieldset;
113
227
  exports.default = _default;
@@ -0,0 +1,13 @@
1
+ declare const StyledFieldset: import("styled-components").StyledComponent<"fieldset", any, {}, never>;
2
+ declare type StyledLegendContentProps = {
3
+ isRequired?: boolean;
4
+ };
5
+ declare const StyledLegendContent: import("styled-components").StyledComponent<"span", any, StyledLegendContentProps, never>;
6
+ declare type StyledLegendProps = {
7
+ inline?: boolean;
8
+ width?: number;
9
+ align?: "left" | "right";
10
+ rightPadding?: 1 | 2;
11
+ };
12
+ declare const StyledLegend: import("styled-components").StyledComponent<"legend", any, StyledLegendProps, never>;
13
+ export { StyledFieldset, StyledLegend, StyledLegendContent };
@@ -7,8 +7,6 @@ exports.StyledLegendContent = exports.StyledLegend = exports.StyledFieldset = vo
7
7
 
8
8
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
9
9
 
10
- var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
10
  var _styledSystem = require("styled-system");
13
11
 
14
12
  var _base = _interopRequireDefault(require("../../style/themes/base"));
@@ -67,13 +65,4 @@ const StyledLegend = _styledComponents.default.legend`
67
65
  padding-right: ${rightPadding === 1 ? "var(--spacing100)" : "var(--spacing200)"};
68
66
  `}
69
67
  `;
70
- exports.StyledLegend = StyledLegend;
71
- StyledLegend.defaultProps = {
72
- align: "right"
73
- };
74
- StyledLegend.propTypes = {
75
- inline: _propTypes.default.bool,
76
- width: _propTypes.default.number,
77
- align: _propTypes.default.oneOf(["left", "right"]),
78
- rightPadding: _propTypes.default.oneOf([1, 2])
79
- };
68
+ exports.StyledLegend = StyledLegend;
@@ -1 +1,2 @@
1
- export { default } from "./fieldset";
1
+ export { default } from "./fieldset.component";
2
+ export type { FieldsetProps } from "./fieldset.component";
@@ -1 +1,2 @@
1
- export { default } from "./popover";
1
+ export { default } from "./popover.component";
2
+ export type { PopoverProps } from "./popover.component";
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ import { State } from "@popperjs/core";
3
+ declare type PopoverModifier = {
4
+ name: string;
5
+ options?: Record<string, unknown>;
6
+ enabled?: boolean;
7
+ };
8
+ export interface PopoverProps {
9
+ children: React.ReactElement;
10
+ placement?: "auto" | "auto-start" | "auto-end" | "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end";
11
+ disableBackgroundUI?: boolean;
12
+ modifiers?: PopoverModifier[];
13
+ onFirstUpdate?: (state: Partial<State>) => void;
14
+ disablePortal?: boolean;
15
+ reference: React.RefObject<HTMLElement>;
16
+ }
17
+ declare const Popover: ({ children, placement, disablePortal, reference, onFirstUpdate, modifiers, disableBackgroundUI, }: PopoverProps) => JSX.Element;
18
+ export default Popover;
@@ -7,10 +7,10 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
10
- var _reactDom = _interopRequireDefault(require("react-dom"));
11
-
12
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
11
 
12
+ var _reactDom = _interopRequireDefault(require("react-dom"));
13
+
14
14
  var _core = require("@popperjs/core");
15
15
 
16
16
  var _useResizeObserver = _interopRequireDefault(require("../../hooks/__internal__/useResizeObserver"));
@@ -38,7 +38,8 @@ const Popover = ({
38
38
  }) => {
39
39
  var _reference$current;
40
40
 
41
- const elementDOM = (0, _react.useRef)();
41
+ const elementDOM = (0, _react.useRef)(null); // TODO: Remove TempModalContext after modal has been converted to TS
42
+
42
43
  const {
43
44
  isInModal
44
45
  } = (0, _react.useContext)(_modal.ModalContext);
@@ -50,8 +51,8 @@ const Popover = ({
50
51
  mountNode.appendChild(elementDOM.current);
51
52
  }
52
53
 
53
- const popperInstance = (0, _react.useRef)();
54
- const popperRef = (0, _react.useRef)();
54
+ const popperInstance = (0, _react.useRef)(null);
55
+ const popperRef = (0, _react.useRef)(null);
55
56
  let content;
56
57
  let popperElementRef;
57
58
 
@@ -115,23 +116,24 @@ const Popover = ({
115
116
  };
116
117
 
117
118
  Popover.propTypes = {
118
- // Element to be positioned, has to be a single node and has to accept `ref` and `style` props
119
- children: _propTypes.default.node.isRequired,
120
- // Placement of children in relation to the reference element
121
- placement: _propTypes.default.oneOf(["auto", "auto-start", "auto-end", "top", "top-start", "top-end", "bottom", "bottom-start", "bottom-end", "right", "right-start", "right-end", "left", "left-start", "left-end"]),
122
- // Disables interaction with background UI
123
- disableBackgroundUI: _propTypes.default.bool,
124
- // Optional modifiers array, for more information and object structure go to:
125
- // https://popper.js.org/docs/v2/constructors/#modifiers
126
- modifiers: _propTypes.default.array,
127
- // Optional onFirstUpdate function, for more information go to:
128
- // https://popper.js.org/docs/v2/lifecycle/#hook-into-the-lifecycle
129
- onFirstUpdate: _propTypes.default.func,
130
- // When true, children are not rendered in portal
131
- disablePortal: _propTypes.default.bool,
132
- // Reference element, children will be positioned in relation to this element - should be a ref
133
- reference: _propTypes.default.shape({
134
- current: _propTypes.default.any
119
+ "children": _propTypes.default.element.isRequired,
120
+ "disableBackgroundUI": _propTypes.default.bool,
121
+ "disablePortal": _propTypes.default.bool,
122
+ "modifiers": _propTypes.default.arrayOf(_propTypes.default.shape({
123
+ "enabled": _propTypes.default.bool,
124
+ "name": _propTypes.default.string.isRequired,
125
+ "options": _propTypes.default.object
126
+ })),
127
+ "onFirstUpdate": _propTypes.default.func,
128
+ "placement": _propTypes.default.oneOf(["auto-end", "auto-start", "auto", "bottom-end", "bottom-start", "bottom", "left-end", "left-start", "left", "right-end", "right-start", "right", "top-end", "top-start", "top"]),
129
+ "reference": _propTypes.default.shape({
130
+ "current": _propTypes.default.oneOfType([_propTypes.default.oneOf([null]), function (props, propName) {
131
+ if (props[propName] == null) {
132
+ return new Error("Prop '" + propName + "' is required but wasn't specified");
133
+ } else if (typeof props[propName] !== 'object' || props[propName].nodeType !== 1) {
134
+ return new Error("Expected prop '" + propName + "' to be of type Element");
135
+ }
136
+ }]).isRequired
135
137
  }).isRequired
136
138
  };
137
139
  var _default = Popover;
@@ -0,0 +1,2 @@
1
+ declare const StyledBackdrop: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ export default StyledBackdrop;
@@ -35,6 +35,8 @@ export interface ButtonProps extends SpaceProps {
35
35
  iconTooltipPosition?: TooltipPositions;
36
36
  /** Defines an Icon type within the button */
37
37
  iconType?: IconType;
38
+ /** id attribute */
39
+ id?: string;
38
40
  /** If provided, the text inside a button will not wrap */
39
41
  noWrap?: boolean;
40
42
  /** Specify a callback triggered on blur */
@@ -215,6 +215,7 @@ Button.propTypes = {
215
215
  "iconTooltipMessage": _propTypes.default.string,
216
216
  "iconTooltipPosition": _propTypes.default.oneOf(["bottom", "left", "right", "top"]),
217
217
  "iconType": _propTypes.default.oneOf(["add", "admin", "alert", "analysis", "arrow_down", "arrow_left_boxed", "arrow_left_right_small", "arrow_left_small", "arrow_left", "arrow_right_small", "arrow_right", "arrow_up", "arrow", "attach", "bank", "basket_with_squares", "basket", "bin", "block_arrow_right", "blocked_square", "blocked", "bold", "boxed_shapes", "bulk_destroy", "bullet_list_dotted", "bullet_list_numbers", "bullet_list", "business", "calendar_today", "calendar", "call", "camera", "card_view", "caret_down", "caret_large_down", "caret_large_left", "caret_large_right", "caret_large_up", "caret_left", "caret_right", "caret_up", "cart", "chart_bar", "chart_line", "chart_pie", "chat_notes", "chat", "chevron_down_thick", "chevron_down", "chevron_left_thick", "chevron_left", "chevron_right_thick", "chevron_right", "chevron_up_thick", "chevron_up", "circle_with_dots", "circles_connection", "clock", "close", "coins", "collaborate", "computer_clock", "connect", "contacts", "copy", "create", "credit_card_slash", "credit_card", "cross_circle", "cross", "csv", "delete", "delivery", "disconnect", "disputed", "document_right_align", "document_tick", "document_vertical_lines", "download", "draft", "drag_vertical", "drag", "dropdown", "duplicate", "edit", "edited", "ellipsis_horizontal", "ellipsis_vertical", "email_switch", "email", "entry", "envelope_dollar", "envelope_euro", "error_square", "error", "euro", "expand", "factory", "favourite_lined", "favourite", "fax", "feedback", "file_excel", "file_generic", "file_image", "file_pdf", "file_word", "files_leaning", "filter_new", "filter", "fit_height", "fit_width", "flag", "folder", "gift", "go", "graph", "grid", "help", "hide", "home", "image", "in_progress", "in_transit", "individual", "info", "italic", "key", "ledger_arrow_left", "ledger_arrow_right", "ledger", "lightbulb_off", "lightbulb_on", "link", "list_view", "location", "locked", "logout", "lookup", "marker", "message", "minus_large", "minus", "mobile", "money_bag", "none", "old_warning", "pause_circle", "pause", "pdf", "people_switch", "people", "person_info", "person_tick", "person", "phone", "piggy_bank", "play_circle", "play", "plus_large", "plus", "pound", "print", "progress", "progressed", "question_hollow", "question_mark", "question", "refresh_clock", "refresh", "remove", "sage_coin", "save", "scan", "search", "services", "settings_old", "settings", "share", "shop", "sort_down", "sort_up", "spanner", "split_container", "split", "square_dot", "squares_nine", "stacked_boxes", "stacked_squares", "submitted", "sync", "tag", "talk", "three_boxes", "tick_circle", "tick", "true_tick", "undo", "unlocked", "upload", "uploaded", "video", "view", "warning"]),
218
+ "id": _propTypes.default.string,
218
219
  "m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
219
220
  "__@toStringTag": _propTypes.default.string.isRequired,
220
221
  "description": _propTypes.default.string,
@@ -566,6 +567,7 @@ ButtonWithForwardRef.propTypes = {
566
567
  "iconTooltipMessage": _propTypes.default.string,
567
568
  "iconTooltipPosition": _propTypes.default.oneOf(["bottom", "left", "right", "top"]),
568
569
  "iconType": _propTypes.default.oneOf(["add", "admin", "alert", "analysis", "arrow_down", "arrow_left_boxed", "arrow_left_right_small", "arrow_left_small", "arrow_left", "arrow_right_small", "arrow_right", "arrow_up", "arrow", "attach", "bank", "basket_with_squares", "basket", "bin", "block_arrow_right", "blocked_square", "blocked", "bold", "boxed_shapes", "bulk_destroy", "bullet_list_dotted", "bullet_list_numbers", "bullet_list", "business", "calendar_today", "calendar", "call", "camera", "card_view", "caret_down", "caret_large_down", "caret_large_left", "caret_large_right", "caret_large_up", "caret_left", "caret_right", "caret_up", "cart", "chart_bar", "chart_line", "chart_pie", "chat_notes", "chat", "chevron_down_thick", "chevron_down", "chevron_left_thick", "chevron_left", "chevron_right_thick", "chevron_right", "chevron_up_thick", "chevron_up", "circle_with_dots", "circles_connection", "clock", "close", "coins", "collaborate", "computer_clock", "connect", "contacts", "copy", "create", "credit_card_slash", "credit_card", "cross_circle", "cross", "csv", "delete", "delivery", "disconnect", "disputed", "document_right_align", "document_tick", "document_vertical_lines", "download", "draft", "drag_vertical", "drag", "dropdown", "duplicate", "edit", "edited", "ellipsis_horizontal", "ellipsis_vertical", "email_switch", "email", "entry", "envelope_dollar", "envelope_euro", "error_square", "error", "euro", "expand", "factory", "favourite_lined", "favourite", "fax", "feedback", "file_excel", "file_generic", "file_image", "file_pdf", "file_word", "files_leaning", "filter_new", "filter", "fit_height", "fit_width", "flag", "folder", "gift", "go", "graph", "grid", "help", "hide", "home", "image", "in_progress", "in_transit", "individual", "info", "italic", "key", "ledger_arrow_left", "ledger_arrow_right", "ledger", "lightbulb_off", "lightbulb_on", "link", "list_view", "location", "locked", "logout", "lookup", "marker", "message", "minus_large", "minus", "mobile", "money_bag", "none", "old_warning", "pause_circle", "pause", "pdf", "people_switch", "people", "person_info", "person_tick", "person", "phone", "piggy_bank", "play_circle", "play", "plus_large", "plus", "pound", "print", "progress", "progressed", "question_hollow", "question_mark", "question", "refresh_clock", "refresh", "remove", "sage_coin", "save", "scan", "search", "services", "settings_old", "settings", "share", "shop", "sort_down", "sort_up", "spanner", "split_container", "split", "square_dot", "squares_nine", "stacked_boxes", "stacked_squares", "submitted", "sync", "tag", "talk", "three_boxes", "tick_circle", "tick", "true_tick", "undo", "unlocked", "upload", "uploaded", "video", "view", "warning"]),
570
+ "id": _propTypes.default.string,
569
571
  "m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
570
572
  "__@toStringTag": _propTypes.default.string.isRequired,
571
573
  "description": _propTypes.default.string,
@@ -243,6 +243,7 @@ MultiActionButton.propTypes = {
243
243
  "formTarget": _propTypes.default.string,
244
244
  "hidden": _propTypes.default.bool,
245
245
  "iconPosition": _propTypes.default.oneOf(["after", "before"]),
246
+ "iconType": _propTypes.default.oneOf(["add", "admin", "alert", "analysis", "arrow_down", "arrow_left_boxed", "arrow_left_right_small", "arrow_left_small", "arrow_left", "arrow_right_small", "arrow_right", "arrow_up", "arrow", "attach", "bank", "basket_with_squares", "basket", "bin", "block_arrow_right", "blocked_square", "blocked", "bold", "boxed_shapes", "bulk_destroy", "bullet_list_dotted", "bullet_list_numbers", "bullet_list", "business", "calendar_today", "calendar", "call", "camera", "card_view", "caret_down", "caret_large_down", "caret_large_left", "caret_large_right", "caret_large_up", "caret_left", "caret_right", "caret_up", "cart", "chart_bar", "chart_line", "chart_pie", "chat_notes", "chat", "chevron_down_thick", "chevron_down", "chevron_left_thick", "chevron_left", "chevron_right_thick", "chevron_right", "chevron_up_thick", "chevron_up", "circle_with_dots", "circles_connection", "clock", "close", "coins", "collaborate", "computer_clock", "connect", "contacts", "copy", "create", "credit_card_slash", "credit_card", "cross_circle", "cross", "csv", "delete", "delivery", "disconnect", "disputed", "document_right_align", "document_tick", "document_vertical_lines", "download", "draft", "drag_vertical", "drag", "dropdown", "duplicate", "edit", "edited", "ellipsis_horizontal", "ellipsis_vertical", "email_switch", "email", "entry", "envelope_dollar", "envelope_euro", "error_square", "error", "euro", "expand", "factory", "favourite_lined", "favourite", "fax", "feedback", "file_excel", "file_generic", "file_image", "file_pdf", "file_word", "files_leaning", "filter_new", "filter", "fit_height", "fit_width", "flag", "folder", "gift", "go", "graph", "grid", "help", "hide", "home", "image", "in_progress", "in_transit", "individual", "info", "italic", "key", "ledger_arrow_left", "ledger_arrow_right", "ledger", "lightbulb_off", "lightbulb_on", "link", "list_view", "location", "locked", "logout", "lookup", "marker", "message", "minus_large", "minus", "mobile", "money_bag", "none", "old_warning", "pause_circle", "pause", "pdf", "people_switch", "people", "person_info", "person_tick", "person", "phone", "piggy_bank", "play_circle", "play", "plus_large", "plus", "pound", "print", "progress", "progressed", "question_hollow", "question_mark", "question", "refresh_clock", "refresh", "remove", "sage_coin", "save", "scan", "search", "services", "settings_old", "settings", "share", "shop", "sort_down", "sort_up", "spanner", "split_container", "split", "square_dot", "squares_nine", "stacked_boxes", "stacked_squares", "submitted", "sync", "tag", "talk", "three_boxes", "tick_circle", "tick", "true_tick", "undo", "unlocked", "upload", "uploaded", "video", "view", "warning"]),
246
247
  "id": _propTypes.default.string,
247
248
  "inlist": _propTypes.default.any,
248
249
  "inputMode": _propTypes.default.oneOf(["decimal", "email", "none", "numeric", "search", "tel", "text", "url"]),
@@ -140,7 +140,7 @@ const Pager = ({
140
140
  };
141
141
 
142
142
  const renderPageSizeOptions = () => {
143
- return showPageSizeSelection && /*#__PURE__*/_react.default.createElement(_pager.StyledPagerSizeOptionsInner, null, showPageSizeLabelBefore && /*#__PURE__*/_react.default.createElement("span", null, l.pager.show()), sizeSelector(), showPageSizeLabelAfter && /*#__PURE__*/_react.default.createElement("span", null, l.pager.records(currentPageSize, false)));
143
+ return showPageSizeSelection && /*#__PURE__*/_react.default.createElement(_pager.StyledPagerSizeOptionsInner, null, showPageSizeLabelBefore && /*#__PURE__*/_react.default.createElement("span", null, l.pager.show()), sizeSelector(), showPageSizeLabelAfter && /*#__PURE__*/_react.default.createElement("div", null, l.pager.records(currentPageSize, false)));
144
144
  };
145
145
 
146
146
  const renderTotalRecords = () => showTotalRecords && l.pager.records(totalRecords);
@@ -120,7 +120,7 @@ const StyledPagerLinkStyles = (0, _styledComponents.default)(_link.default)`
120
120
  margin-right: 7px;
121
121
  `;
122
122
  exports.StyledPagerLinkStyles = StyledPagerLinkStyles;
123
- const StyledPagerNoSelect = _styledComponents.default.span`
123
+ const StyledPagerNoSelect = _styledComponents.default.div`
124
124
  user-select: none;
125
125
  white-space: nowrap;
126
126
  `;
@@ -1,2 +1,2 @@
1
- export { default } from "./split-button";
2
- export type { SplitButtonProps } from "./split-button";
1
+ export { default } from "./split-button.component";
2
+ export type { SplitButtonProps } from "./split-button.component";
@@ -0,0 +1,8 @@
1
+ import { ThemeObject } from "../../style/themes/base";
2
+ declare type StyledSplitButtonChildrenContainerProps = {
3
+ theme: ThemeObject;
4
+ align: "left" | "right";
5
+ minWidth: number;
6
+ };
7
+ declare const StyledSplitButtonChildrenContainer: import("styled-components").StyledComponent<"div", any, StyledSplitButtonChildrenContainerProps, never>;
8
+ export default StyledSplitButtonChildrenContainer;
@@ -20,12 +20,11 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
20
20
  const StyledSplitButtonChildrenContainer = _styledComponents.default.div`
21
21
  ${({
22
22
  theme,
23
- align
23
+ align,
24
+ minWidth
24
25
  }) => (0, _styledComponents.css)`
25
26
  background-color: var(--colorsActionMajorYang100);
26
- min-width: ${({
27
- minWidth
28
- }) => minWidth}px;
27
+ min-width: ${minWidth}px;
29
28
  white-space: nowrap;
30
29
  z-index: ${theme.zIndex.popover};
31
30
  box-shadow: var(--boxShadow100);
@@ -0,0 +1,10 @@
1
+ declare type StyledSplitButtonToggleProps = {
2
+ buttonType: "primary" | "secondary";
3
+ disabled: boolean;
4
+ displayed: boolean;
5
+ size: "small" | "medium" | "large";
6
+ };
7
+ 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> & import("../button").ButtonProps & {
8
+ iconOnly?: boolean | undefined;
9
+ } & StyledSplitButtonToggleProps, never>;
10
+ export default StyledSplitButtonToggle;
@@ -0,0 +1,29 @@
1
+ import React from "react";
2
+ import { MarginProps } from "styled-system";
3
+ import { IconType } from "../icon";
4
+ export interface SplitButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, MarginProps {
5
+ /** Set align of the rendered content */
6
+ align?: "left" | "right";
7
+ /** Button type: "primary" | "secondary" */
8
+ buttonType?: "primary" | "secondary";
9
+ /** The additional button to display. */
10
+ children: React.ReactNode;
11
+ /** A custom value for the data-element attribute */
12
+ "data-element"?: string;
13
+ /** A custom value for the data-role attribute */
14
+ "data-role"?: string;
15
+ /** Gives the button a disabled state. */
16
+ disabled?: boolean;
17
+ /** Defines an Icon position within the button: "before" | "after" */
18
+ iconPosition?: "before" | "after";
19
+ /** Defines an Icon type within the button */
20
+ iconType?: IconType;
21
+ /** The size of the buttons in the SplitButton. */
22
+ size?: "small" | "medium" | "large";
23
+ /** Second text child, renders under main text, only when size is "large" */
24
+ subtext?: string;
25
+ /** The text to be displayed in the SplitButton. */
26
+ text: string;
27
+ }
28
+ export declare const SplitButton: ({ align, buttonType, children, disabled, iconPosition, iconType, onClick, size, subtext, text, "data-element": dataElement, "data-role": dataRole, ...rest }: SplitButtonProps) => JSX.Element;
29
+ export default SplitButton;