@carbon/ibm-products 1.23.1 → 1.24.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. package/css/components/Datagrid/styles/datagrid.css +83 -11
  2. package/css/components/Datagrid/styles/datagrid.css.map +1 -1
  3. package/css/components/Datagrid/styles/index.css +83 -15
  4. package/css/components/Datagrid/styles/index.css.map +1 -1
  5. package/css/components/Datagrid/styles/useExpandedRow.css +0 -3
  6. package/css/components/Datagrid/styles/useExpandedRow.css.map +1 -1
  7. package/css/index-full-carbon.css +235 -44
  8. package/css/index-full-carbon.css.map +1 -1
  9. package/css/index-full-carbon.min.css +1 -7
  10. package/css/index-full-carbon.min.css.map +1 -1
  11. package/css/index-without-carbon-released-only.css +15 -28
  12. package/css/index-without-carbon-released-only.css.map +1 -1
  13. package/css/index-without-carbon-released-only.min.css +1 -7
  14. package/css/index-without-carbon-released-only.min.css.map +1 -1
  15. package/css/index-without-carbon.css +235 -44
  16. package/css/index-without-carbon.css.map +1 -1
  17. package/css/index-without-carbon.min.css +1 -7
  18. package/css/index-without-carbon.min.css.map +1 -1
  19. package/css/index.css +235 -44
  20. package/css/index.css.map +1 -1
  21. package/css/index.min.css +1 -7
  22. package/css/index.min.css.map +1 -1
  23. package/es/components/AddSelect/AddSelect.js +1 -2
  24. package/es/components/AddSelect/AddSelectBody.js +5 -9
  25. package/es/components/AddSelect/AddSelectColumn.js +4 -1
  26. package/es/components/AddSelect/AddSelectList.js +1 -1
  27. package/es/components/AddSelect/AddSelectSidebar.js +4 -26
  28. package/es/components/Datagrid/Datagrid/Datagrid.js +17 -12
  29. package/es/components/Datagrid/Datagrid/DatagridRow.js +4 -2
  30. package/es/components/Datagrid/useExpandedRow.js +5 -12
  31. package/es/components/Datagrid/useOnRowClick.js +10 -3
  32. package/es/components/EditFullPage/EditFullPage.js +79 -0
  33. package/es/components/EditFullPage/index.js +7 -0
  34. package/es/components/EditTearsheet/EditTearsheet.js +205 -0
  35. package/es/components/EditTearsheet/EditTearsheetForm.js +103 -0
  36. package/es/components/EditTearsheet/index.js +8 -0
  37. package/es/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +230 -0
  38. package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +79 -0
  39. package/es/components/EditTearsheetNarrow/index.js +7 -0
  40. package/es/components/index.js +4 -1
  41. package/es/global/js/package-settings.js +4 -1
  42. package/lib/components/AddSelect/AddSelect.js +1 -2
  43. package/lib/components/AddSelect/AddSelectBody.js +5 -9
  44. package/lib/components/AddSelect/AddSelectColumn.js +3 -1
  45. package/lib/components/AddSelect/AddSelectList.js +1 -1
  46. package/lib/components/AddSelect/AddSelectSidebar.js +3 -26
  47. package/lib/components/Datagrid/Datagrid/Datagrid.js +17 -12
  48. package/lib/components/Datagrid/Datagrid/DatagridRow.js +3 -1
  49. package/lib/components/Datagrid/useExpandedRow.js +5 -20
  50. package/lib/components/Datagrid/useOnRowClick.js +10 -3
  51. package/lib/components/EditFullPage/EditFullPage.js +85 -0
  52. package/lib/components/EditFullPage/index.js +13 -0
  53. package/lib/components/EditTearsheet/EditTearsheet.js +229 -0
  54. package/lib/components/EditTearsheet/EditTearsheetForm.js +122 -0
  55. package/lib/components/EditTearsheet/index.js +21 -0
  56. package/lib/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +254 -0
  57. package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +85 -0
  58. package/lib/components/EditTearsheetNarrow/index.js +13 -0
  59. package/lib/components/index.js +25 -1
  60. package/lib/global/js/package-settings.js +4 -1
  61. package/package.json +2 -2
  62. package/scss/components/Cascade/_cascade.scss +1 -1
  63. package/scss/components/CreateInfluencer/_create-influencer.scss +2 -0
  64. package/scss/components/Datagrid/_datagrid.scss +0 -1
  65. package/scss/components/Datagrid/_storybook-styles.scss +53 -0
  66. package/scss/components/Datagrid/styles/datagrid.scss +93 -12
  67. package/scss/components/Datagrid/styles/useExpandedRow.scss +0 -6
  68. package/scss/components/EditFullPage/_edit-full-page.scss +34 -0
  69. package/scss/components/EditFullPage/_index.scss +8 -0
  70. package/scss/components/EditFullPage/_storybook-styles.scss +10 -0
  71. package/scss/components/EditTearsheet/_edit-tearsheet.scss +132 -0
  72. package/scss/components/EditTearsheet/_index.scss +8 -0
  73. package/scss/components/EditTearsheet/_storybook-styles.scss +55 -0
  74. package/scss/components/EditTearsheetNarrow/_edit-tearsheet-narrow.scss +34 -0
  75. package/scss/components/EditTearsheetNarrow/_index.scss +8 -0
  76. package/scss/components/EditTearsheetNarrow/_storybook-styles.scss +10 -0
  77. package/scss/components/InlineEdit/_inline-edit.scss +8 -20
  78. package/scss/components/NotificationsPanel/_notifications-panel.scss +1 -0
  79. package/scss/components/PageHeader/_page-header.scss +3 -1
  80. package/scss/components/StatusIcon/_status-icon.scss +1 -1
  81. package/scss/components/Tearsheet/_tearsheet.scss +2 -2
  82. package/scss/components/_index.scss +3 -0
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.EditFullPage = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ var _classnames = _interopRequireDefault(require("classnames"));
19
+
20
+ var _devtools = require("../../global/js/utils/devtools");
21
+
22
+ var _settings = require("../../settings");
23
+
24
+ var _excluded = ["children", "className"];
25
+ // Carbon and package components we use.
26
+
27
+ /* TODO: @import(s) of carbon components and other package components. */
28
+ // The block part of our conventional BEM class names (blockClass__E--M).
29
+ var blockClass = "".concat(_settings.pkg.prefix, "--edit-full-page");
30
+ var componentName = 'EditFullPage'; // NOTE: the component SCSS is not imported here: it is rolled up separately.
31
+ // Default values can be included here and then assigned to the prop params,
32
+ // e.g. prop = defaults.prop,
33
+ // This gathers default values together neatly and ensures non-primitive
34
+ // values are initialized early to avoid react making unnecessary re-renders.
35
+ // Note that default values are not required for props that are 'required',
36
+ // nor for props where the component can apply undefined values reasonably.
37
+ // Default values should be provided when the component needs to make a choice
38
+ // or assumption when a prop is not supplied.
39
+ // Default values for props
40
+ // const defaults = {
41
+ // /* TODO: add defaults for relevant props if needed */
42
+ // };
43
+
44
+ /**
45
+ * TODO: A description of the component.
46
+ */
47
+
48
+ var EditFullPage = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
49
+ var children = _ref.children,
50
+ className = _ref.className,
51
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
52
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
53
+ className: (0, _classnames.default)(blockClass, // Apply the block class to the main HTML element
54
+ className, // Apply any supplied class names to the main HTML element.
55
+ // example: `${blockClass}__template-string-class-${kind}-n-${size}`,
56
+ {// switched classes dependant on props or state
57
+ // example: [`${blockClass}__here-if-small`]: size === 'sm',
58
+ }),
59
+ ref: ref,
60
+ role: "main"
61
+ }, (0, _devtools.getDevtoolsProps)(componentName)), children);
62
+ }); // Return a placeholder if not released and not enabled by feature flag
63
+
64
+
65
+ exports.EditFullPage = EditFullPage;
66
+ exports.EditFullPage = EditFullPage = _settings.pkg.checkComponentEnabled(EditFullPage, componentName); // The display name of the component, used by React. Note that displayName
67
+ // is used in preference to relying on function.name.
68
+
69
+ EditFullPage.displayName = componentName; // The types and DocGen commentary for the component props,
70
+ // in alphabetical order (for consistency).
71
+ // See https://www.npmjs.com/package/prop-types#usage.
72
+
73
+ EditFullPage.propTypes = {
74
+ /**
75
+ * Provide the contents of the EditFullPage.
76
+ */
77
+ children: _propTypes.default.node.isRequired,
78
+
79
+ /**
80
+ * Provide an optional class to be applied to the containing node.
81
+ */
82
+ className: _propTypes.default.string
83
+ /* TODO: add types and DocGen for all props. */
84
+
85
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "EditFullPage", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _EditFullPage.EditFullPage;
10
+ }
11
+ });
12
+
13
+ var _EditFullPage = require("./EditFullPage");
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.FormNumberContext = exports.FormContext = exports.EditTearsheet = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _propTypes = _interopRequireDefault(require("prop-types"));
21
+
22
+ var _classnames = _interopRequireDefault(require("classnames"));
23
+
24
+ var _carbonComponentsReact = require("carbon-components-react");
25
+
26
+ var _settings = require("../../settings");
27
+
28
+ var _devtools = require("../../global/js/utils/devtools");
29
+
30
+ var _TearsheetShell = require("../Tearsheet/TearsheetShell");
31
+
32
+ var _excluded = ["cancelButtonText", "children", "className", "description", "influencerWidth", "label", "onClose", "open", "submitButtonText", "title", "verticalPosition", "onHandleModalClick"];
33
+
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
+
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
37
+
38
+ var componentName = 'EditTearsheet';
39
+ var blockClass = "".concat(_settings.pkg.prefix, "--tearsheet-edit"); // This is a general context for the forms container
40
+ // containing information about the state of the container
41
+ // and providing some callback methods for forms to use
42
+
43
+ var FormContext = /*#__PURE__*/(0, _react.createContext)(null); // This is a context supplied separately to each form in the container
44
+ // to let it know what number it is in the sequence of forms
45
+
46
+ exports.FormContext = FormContext;
47
+ var FormNumberContext = /*#__PURE__*/(0, _react.createContext)(0); // Default values for props
48
+
49
+ exports.FormNumberContext = FormNumberContext;
50
+ var defaults = {
51
+ verticalPosition: 'normal',
52
+ influencerWidth: 'narrow'
53
+ };
54
+ var EditTearsheet = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
55
+ var cancelButtonText = _ref.cancelButtonText,
56
+ children = _ref.children,
57
+ className = _ref.className,
58
+ description = _ref.description,
59
+ _ref$influencerWidth = _ref.influencerWidth,
60
+ influencerWidth = _ref$influencerWidth === void 0 ? defaults.influencerWidth : _ref$influencerWidth,
61
+ label = _ref.label,
62
+ onClose = _ref.onClose,
63
+ open = _ref.open,
64
+ submitButtonText = _ref.submitButtonText,
65
+ title = _ref.title,
66
+ _ref$verticalPosition = _ref.verticalPosition,
67
+ verticalPosition = _ref$verticalPosition === void 0 ? defaults.verticalPosition : _ref$verticalPosition,
68
+ onHandleModalClick = _ref.onHandleModalClick,
69
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
70
+
71
+ var _useState = (0, _react.useState)(0),
72
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
73
+ currentForm = _useState2[0],
74
+ setCurrentForm = _useState2[1];
75
+
76
+ var contentRef = (0, _react.useRef)();
77
+
78
+ var handleCurrentForm = function handleCurrentForm(form) {
79
+ setCurrentForm(form);
80
+ };
81
+
82
+ var sideNavItems = [{
83
+ label: 'Topic Name'
84
+ }, {
85
+ label: 'Location'
86
+ }, {
87
+ label: 'Partitions'
88
+ }, {
89
+ label: 'Message retention'
90
+ }];
91
+
92
+ var influencer = /*#__PURE__*/_react.default.createElement("div", {
93
+ className: "tearsheet-stories__dummy-influencer-block"
94
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.SideNav, {
95
+ "aria-label": "Side navigation",
96
+ className: "".concat(blockClass, "__side-nav"),
97
+ expanded: true,
98
+ isFixedNav: false
99
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.SideNavItems, null, sideNavItems.map(function (item, index) {
100
+ return /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.SideNavMenuItem, {
101
+ key: index,
102
+ onClick: function onClick() {
103
+ return handleCurrentForm(index);
104
+ },
105
+ isActive: currentForm === index
106
+ }, item.label);
107
+ }))));
108
+
109
+ return /*#__PURE__*/_react.default.createElement(_TearsheetShell.TearsheetShell, (0, _extends2.default)({}, rest, (0, _devtools.getDevtoolsProps)(componentName), {
110
+ actions: [{
111
+ label: submitButtonText,
112
+ onClick: onHandleModalClick,
113
+ kind: 'primary'
114
+ }, {
115
+ label: cancelButtonText,
116
+ onClick: onHandleModalClick,
117
+ kind: 'secondary'
118
+ }],
119
+ className: (0, _classnames.default)(blockClass, className),
120
+ description: description,
121
+ hasCloseIcon: false,
122
+ influencer: influencer,
123
+ influencerPosition: "left",
124
+ influencerWidth: influencerWidth,
125
+ label: label,
126
+ onClose: onClose,
127
+ open: open,
128
+ size: "wide",
129
+ title: title,
130
+ verticalPosition: verticalPosition,
131
+ ref: ref
132
+ }), /*#__PURE__*/_react.default.createElement("div", {
133
+ className: "".concat(blockClass, "__content"),
134
+ ref: contentRef,
135
+ role: "main"
136
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Grid, null, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Form, null, /*#__PURE__*/_react.default.createElement(FormContext.Provider, {
137
+ value: {
138
+ currentForm: currentForm
139
+ }
140
+ }, _react.default.Children.map(children, function (child, index) {
141
+ return /*#__PURE__*/_react.default.createElement(FormNumberContext.Provider, {
142
+ value: index
143
+ }, child);
144
+ }))))));
145
+ }); // Return a placeholder if not released and not enabled by feature flag
146
+
147
+ exports.EditTearsheet = EditTearsheet;
148
+ exports.EditTearsheet = EditTearsheet = _settings.pkg.checkComponentEnabled(EditTearsheet, componentName); // The display name of the component, used by React. Note that displayName
149
+ // is used in preference to relying on function.name.
150
+
151
+ EditTearsheet.displayName = componentName; // Note that the descriptions here should be kept in sync with those for the
152
+ // corresponding props for TearsheetNarrow and TearsheetShell components.
153
+
154
+ EditTearsheet.propTypes = {
155
+ /**
156
+ * The cancel button text
157
+ */
158
+ cancelButtonText: _propTypes.default.string,
159
+
160
+ /**
161
+ * The main content of the tearsheet
162
+ */
163
+ children: _propTypes.default.node,
164
+
165
+ /**
166
+ * An optional class or classes to be added to the outermost element.
167
+ */
168
+ className: _propTypes.default.string,
169
+
170
+ /**
171
+ * A description of the flow, displayed in the header area of the tearsheet.
172
+ */
173
+ description: _propTypes.default.node,
174
+
175
+ /**
176
+ * The content for the influencer section of the tearsheet, displayed
177
+ * alongside the main content. This is typically a menu, or filter, or
178
+ * progress indicator, or similar.
179
+ */
180
+ influencer: _propTypes.default.element,
181
+
182
+ /**
183
+ * Used to set the size of the influencer
184
+ */
185
+ influencerWidth: _propTypes.default.oneOf(['narrow', 'wide']),
186
+
187
+ /**
188
+ * A label for the tearsheet, displayed in the header area of the tearsheet
189
+ * to maintain context for the tearsheet (e.g. as the title changes from page
190
+ * to page of a multi-page task).
191
+ */
192
+ label: _propTypes.default.node,
193
+
194
+ /**
195
+ * An optional handler that is called when the user closes the tearsheet (by
196
+ * clicking the close button, if enabled, or clicking outside, if enabled).
197
+ * Returning `false` here prevents the modal from closing.
198
+ */
199
+ onClose: _propTypes.default.func,
200
+
201
+ /**
202
+ * Specifies whether the tearsheet is currently open.
203
+ */
204
+ onHandleModalClick: _propTypes.default.func,
205
+
206
+ /**
207
+ * Specifies whether the tearsheet is currently open.
208
+ */
209
+ open: _propTypes.default.bool,
210
+
211
+ /**
212
+ * The submit button text
213
+ */
214
+ submitButtonText: _propTypes.default.string,
215
+
216
+ /**
217
+ * The main title of the tearsheet, displayed in the header area.
218
+ */
219
+ title: _propTypes.default.node,
220
+
221
+ /**
222
+ * The position of the top of tearsheet in the viewport. The 'normal'
223
+ * position (the default) is a short distance down from the top of the
224
+ * viewport, leaving room at the top for a global header bar to show through
225
+ * from below. The 'lower' position provides a little extra room at the top
226
+ * to allow an action bar navigation or breadcrumbs to also show through.
227
+ */
228
+ verticalPosition: _propTypes.default.oneOf(['normal', 'lower'])
229
+ };
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.EditTearsheetForm = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _propTypes = _interopRequireDefault(require("prop-types"));
21
+
22
+ var _classnames = _interopRequireDefault(require("classnames"));
23
+
24
+ var _carbonComponentsReact = require("carbon-components-react");
25
+
26
+ var _EditTearsheet = require("./EditTearsheet");
27
+
28
+ var _settings = require("../../settings");
29
+
30
+ var _pconsole = _interopRequireDefault(require("../../global/js/utils/pconsole"));
31
+
32
+ var _excluded = ["children", "className", "description", "fieldsetLegendText", "hasFieldset", "subtitle", "title"];
33
+
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
+
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
37
+
38
+ var componentName = 'EditTearsheetForm';
39
+ var blockClass = "".concat(_settings.pkg.prefix, "--tearsheet-edit__form"); // Default values for props
40
+
41
+ var defaults = {
42
+ hasFieldset: true
43
+ };
44
+ var EditTearsheetForm = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
45
+ var _cx;
46
+
47
+ var children = _ref.children,
48
+ className = _ref.className,
49
+ description = _ref.description,
50
+ fieldsetLegendText = _ref.fieldsetLegendText,
51
+ _ref$hasFieldset = _ref.hasFieldset,
52
+ hasFieldset = _ref$hasFieldset === void 0 ? defaults.hasFieldset : _ref$hasFieldset,
53
+ subtitle = _ref.subtitle,
54
+ title = _ref.title,
55
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
56
+ var formContext = (0, _react.useContext)(_EditTearsheet.FormContext);
57
+ var formNumber = (0, _react.useContext)(_EditTearsheet.FormNumberContext);
58
+ return formContext ? /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
59
+ className: (0, _classnames.default)(blockClass, className, (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__form--hidden-form"), formNumber !== (formContext === null || formContext === void 0 ? void 0 : formContext.currentForm)), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__form--visible-form"), formNumber === (formContext === null || formContext === void 0 ? void 0 : formContext.currentForm)), _cx)),
60
+ ref: ref
61
+ }), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Row, null, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
62
+ xlg: 12,
63
+ lg: 12,
64
+ md: 8,
65
+ sm: 8
66
+ }, /*#__PURE__*/_react.default.createElement("h4", {
67
+ className: "".concat(blockClass, "--title")
68
+ }, title), subtitle && /*#__PURE__*/_react.default.createElement("h6", {
69
+ className: "".concat(blockClass, "--subtitle")
70
+ }, subtitle), description && /*#__PURE__*/_react.default.createElement("p", {
71
+ className: "".concat(blockClass, "--description")
72
+ }, description))), hasFieldset ? /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.FormGroup, {
73
+ legendText: fieldsetLegendText,
74
+ className: "".concat(blockClass, "--fieldset")
75
+ }, children) : children) : _pconsole.default.warn("You have tried using a ".concat(componentName, " component outside of a EditTearsheet. This is not allowed. ").concat(componentName, "s should always be children of the EditTearsheet"));
76
+ }); // Return a placeholder if not released and not enabled by feature flag
77
+
78
+ exports.EditTearsheetForm = EditTearsheetForm;
79
+ exports.EditTearsheetForm = EditTearsheetForm = _settings.pkg.checkComponentEnabled(EditTearsheetForm, componentName);
80
+ EditTearsheetForm.propTypes = {
81
+ /**
82
+ * Content that shows in the tearsheet form
83
+ */
84
+ children: _propTypes.default.node,
85
+
86
+ /**
87
+ * Sets an optional className to be added to the tearsheet form
88
+ */
89
+ className: _propTypes.default.string,
90
+
91
+ /**
92
+ * Sets an optional description on the form component
93
+ */
94
+ description: _propTypes.default.string,
95
+
96
+ /**
97
+ * This is the required legend text that appears above a fieldset html element for accessibility purposes.
98
+ * You can set the `hasFieldset` prop to false if you have multiple fieldset elements or want to control the children of your Full Page's form content.
99
+ * Otherwise, use CSS to hide/remove this label text.
100
+ */
101
+ fieldsetLegendText: _propTypes.default.string.isRequired.if(function (_ref2) {
102
+ var hasFieldset = _ref2.hasFieldset;
103
+ return !!hasFieldset;
104
+ }),
105
+
106
+ /**
107
+ * This optional prop will render your form content inside of a fieldset html element
108
+ * and is defaulted to true.
109
+ * You can set this prop to `false` if you have multiple fieldset elements or want to control the children of your Full Page's form content.
110
+ */
111
+ hasFieldset: _propTypes.default.bool,
112
+
113
+ /**
114
+ * Sets an optional subtitle on the form component
115
+ */
116
+ subtitle: _propTypes.default.string,
117
+
118
+ /**
119
+ * Sets the title text for a tearsheet form
120
+ */
121
+ title: _propTypes.default.node.isRequired
122
+ };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "EditTearsheet", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _EditTearsheet.EditTearsheet;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "EditTearsheetForm", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _EditTearsheetForm.EditTearsheetForm;
16
+ }
17
+ });
18
+
19
+ var _EditTearsheet = require("./EditTearsheet");
20
+
21
+ var _EditTearsheetForm = require("./EditTearsheetForm");