@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,254 @@
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.MultiFormEditTearsheet = void 0;
11
+
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _carbonComponentsReact = require("carbon-components-react");
17
+
18
+ var _classnames = _interopRequireDefault(require("classnames"));
19
+
20
+ var _settings = require("../../../settings");
21
+
22
+ var _EditTearsheet = require("../EditTearsheet");
23
+
24
+ var _EditTearsheetForm = require("../EditTearsheetForm");
25
+
26
+ 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); }
27
+
28
+ 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; }
29
+
30
+ /* eslint-disable react/prop-types */
31
+
32
+ /**
33
+ * Copyright IBM Corp. 2022, 2022
34
+ *
35
+ * This source code is licensed under the Apache-2.0 license found in the
36
+ * LICENSE file in the root directory of this source tree.
37
+ */
38
+ var blockClass = "".concat(_settings.pkg.prefix, "--tearsheet-edit-multi-form");
39
+
40
+ var MultiFormEditTearsheet = function MultiFormEditTearsheet(_ref) {
41
+ var cancelButtonText = _ref.cancelButtonText,
42
+ className = _ref.className,
43
+ description = _ref.description,
44
+ influencerWidth = _ref.influencerWidth,
45
+ label = _ref.label,
46
+ submitButtonText = _ref.submitButtonText,
47
+ title = _ref.title;
48
+
49
+ var _useState = (0, _react.useState)(false),
50
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
51
+ open = _useState2[0],
52
+ setOpen = _useState2[1];
53
+
54
+ var _useState3 = (0, _react.useState)(false),
55
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
56
+ hasSubmitError = _useState4[0],
57
+ setHasSubmitError = _useState4[1];
58
+
59
+ var _useState5 = (0, _react.useState)('Topic name here'),
60
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
61
+ formOneTextInputValue = _useState6[0],
62
+ setFormOneTextInputValue = _useState6[1];
63
+
64
+ var _useState7 = (0, _react.useState)('Topic description here'),
65
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
66
+ topicDescriptionValue = _useState8[0],
67
+ setTopicDescriptionValue = _useState8[1];
68
+
69
+ var _useState9 = (0, _react.useState)('Topic value here'),
70
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
71
+ topicVersionValue = _useState10[0],
72
+ setTopicVersionValue = _useState10[1];
73
+
74
+ var _useState11 = (0, _react.useState)('Location here'),
75
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
76
+ topicLocationValue = _useState12[0],
77
+ setTopicLocationValue = _useState12[1];
78
+
79
+ var _useState13 = (0, _react.useState)(1),
80
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
81
+ formTwoTextInputValue = _useState14[0],
82
+ setFormTwoTextInputValue = _useState14[1];
83
+
84
+ var _useState15 = (0, _react.useState)('one-day'),
85
+ _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
86
+ formThreeTextInputValue = _useState16[0],
87
+ setFormThreeTextInputValue = _useState16[1];
88
+
89
+ var _useState17 = (0, _react.useState)(false),
90
+ _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
91
+ isInvalid = _useState18[0],
92
+ setIsInvalid = _useState18[1];
93
+
94
+ var clearCreateData = function clearCreateData() {
95
+ setFormOneTextInputValue(formOneTextInputValue);
96
+ setTopicDescriptionValue(topicDescriptionValue);
97
+ setTopicVersionValue(topicVersionValue);
98
+ setTopicLocationValue(topicLocationValue);
99
+ setFormTwoTextInputValue(1);
100
+ setFormThreeTextInputValue('one-day');
101
+ setHasSubmitError(false);
102
+ setIsInvalid(false);
103
+ setOpen(false);
104
+ };
105
+
106
+ var handleModalClick = function handleModalClick() {
107
+ setOpen(!open);
108
+ };
109
+
110
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("style", null, ".".concat(blockClass, " { opacity: 0 }"), ";"), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Button, {
111
+ onClick: handleModalClick
112
+ }, open ? 'Close EditTearsheet' : 'Open EditTearsheet'), /*#__PURE__*/_react.default.createElement(_EditTearsheet.EditTearsheet, {
113
+ influencerWidth: influencerWidth,
114
+ label: label,
115
+ className: (0, _classnames.default)(blockClass, className),
116
+ submitButtonText: submitButtonText,
117
+ cancelButtonText: cancelButtonText,
118
+ description: description,
119
+ title: title,
120
+ open: open,
121
+ onHandleModalClick: handleModalClick,
122
+ onClose: clearCreateData
123
+ }, /*#__PURE__*/_react.default.createElement(_EditTearsheetForm.EditTearsheetForm, {
124
+ title: "Topic name",
125
+ fieldsetLegendText: "Topic information",
126
+ subtitle: "This is the unique name used to recognize your topic",
127
+ description: "It will also be used by your producers and consumers as part of the connection information, so make it something easy to recognize."
128
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Row, null, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
129
+ xlg: 8,
130
+ lg: 8,
131
+ md: 8,
132
+ sm: 8
133
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.TextInput, {
134
+ labelText: "Topic name",
135
+ placeholder: "Enter topic name",
136
+ id: "tearsheet-multi-form-story-text-input-multi-form-1",
137
+ value: formOneTextInputValue,
138
+ onChange: function onChange(event) {
139
+ if (event.target.value.length) {
140
+ setIsInvalid(false);
141
+ }
142
+
143
+ setFormOneTextInputValue(event.target.value);
144
+ },
145
+ invalid: isInvalid,
146
+ invalidText: "This is a required field",
147
+ onBlur: function onBlur() {
148
+ if (!formOneTextInputValue.length) {
149
+ setIsInvalid(true);
150
+ }
151
+ }
152
+ }), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.TextInput, {
153
+ labelText: "Topic description (optional)",
154
+ id: "tearsheet-multi-form-story-text-input-multi-form-1-input-2",
155
+ value: topicDescriptionValue,
156
+ placeholder: "Enter topic description",
157
+ onChange: function onChange(event) {
158
+ return setTopicDescriptionValue(event.target.value);
159
+ }
160
+ }), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.TextInput, {
161
+ labelText: "Topic version (optional)",
162
+ id: "tearsheet-multi-form-story-text-input-multi-form-1-input-3",
163
+ value: topicVersionValue,
164
+ placeholder: "Enter topic version",
165
+ onChange: function onChange(event) {
166
+ return setTopicVersionValue(event.target.value);
167
+ }
168
+ }), hasSubmitError && /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.InlineNotification, {
169
+ kind: "error",
170
+ title: "Error",
171
+ subtitle: "Resolve errors to continue",
172
+ onClose: function onClose() {
173
+ return setHasSubmitError(!hasSubmitError);
174
+ }
175
+ }), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Toggle, {
176
+ className: "".concat(blockClass, "__error--toggle"),
177
+ id: "simulated-error-toggle",
178
+ size: "sm",
179
+ labelText: "Simulate error",
180
+ onToggle: function onToggle() {
181
+ return setHasSubmitError(!hasSubmitError);
182
+ },
183
+ toggled: hasSubmitError
184
+ })))), /*#__PURE__*/_react.default.createElement(_EditTearsheetForm.EditTearsheetForm, {
185
+ title: "Location",
186
+ subtitle: "Custom form subtitle",
187
+ fieldsetLegendText: "",
188
+ description: "Custom form description (see storybook implementation for new custom form capability)"
189
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Row, null, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
190
+ xlg: 8,
191
+ lg: 8,
192
+ md: 8,
193
+ sm: 8
194
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.TextInput, {
195
+ value: topicLocationValue,
196
+ onChange: function onChange(event) {
197
+ return setTopicLocationValue(event.target.value);
198
+ },
199
+ id: "custom-form-input",
200
+ labelText: "Location",
201
+ placeholder: "Enter location"
202
+ })))), /*#__PURE__*/_react.default.createElement(_EditTearsheetForm.EditTearsheetForm, {
203
+ title: "Partitions",
204
+ subtitle: "One or more partitions make up a topic. A partition is an ordered list of messages.",
205
+ description: "Partitions are distributed across the brokers in order to increase the scalability of your topic. You can also use them to distribute messages across the members of a consumer group.",
206
+ fieldsetLegendText: "Partition information"
207
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Row, null, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
208
+ xlg: 3,
209
+ lg: 3
210
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.NumberInput, {
211
+ id: "carbon-number",
212
+ min: 1,
213
+ max: 100,
214
+ value: formTwoTextInputValue,
215
+ label: "Partitions",
216
+ helperText: "1 partition is sufficient for getting started but, production systems often have more.",
217
+ invalidText: "Max partitions is 100, min is 1",
218
+ onChange: function onChange(event) {
219
+ return setFormTwoTextInputValue(event.imaginaryTarget.value);
220
+ }
221
+ })))), /*#__PURE__*/_react.default.createElement(_EditTearsheetForm.EditTearsheetForm, {
222
+ title: "Message retention",
223
+ subtitle: "This is how long messages are retained before they are deleted.",
224
+ description: "If your messages are not read by a consumer within this time, they will be missed.",
225
+ fieldsetLegendText: "Message retention scheduling"
226
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Row, null, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
227
+ xlg: 8,
228
+ lg: 8,
229
+ md: 8,
230
+ sm: 8
231
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.RadioButtonGroup, {
232
+ legendText: "Message retention",
233
+ name: "radio-button-group",
234
+ defaultSelected: formThreeTextInputValue,
235
+ onChange: function onChange(value) {
236
+ return setFormThreeTextInputValue(value);
237
+ },
238
+ orientation: "vertical"
239
+ }, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.RadioButton, {
240
+ labelText: "A day",
241
+ value: "one-day",
242
+ id: "one-day"
243
+ }), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.RadioButton, {
244
+ labelText: "A week",
245
+ value: "one-week",
246
+ id: "one-week"
247
+ }), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.RadioButton, {
248
+ labelText: "A month",
249
+ value: "one-month",
250
+ id: "one-month"
251
+ })))))));
252
+ };
253
+
254
+ exports.MultiFormEditTearsheet = MultiFormEditTearsheet;
@@ -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.EditTearsheetNarrow = 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-tearsheet-narrow");
30
+ var componentName = 'EditTearsheetNarrow'; // 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 EditTearsheetNarrow = /*#__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.EditTearsheetNarrow = EditTearsheetNarrow;
66
+ exports.EditTearsheetNarrow = EditTearsheetNarrow = _settings.pkg.checkComponentEnabled(EditTearsheetNarrow, 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
+ EditTearsheetNarrow.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
+ EditTearsheetNarrow.propTypes = {
74
+ /**
75
+ * Provide the contents of the EditTearsheetNarrow.
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, "EditTearsheetNarrow", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _EditTearsheetNarrow.EditTearsheetNarrow;
10
+ }
11
+ });
12
+
13
+ var _EditTearsheetNarrow = require("./EditTearsheetNarrow");
@@ -93,12 +93,30 @@ Object.defineProperty(exports, "Datagrid", {
93
93
  return _Datagrid.Datagrid;
94
94
  }
95
95
  });
96
+ Object.defineProperty(exports, "EditFullPage", {
97
+ enumerable: true,
98
+ get: function get() {
99
+ return _EditFullPage.EditFullPage;
100
+ }
101
+ });
96
102
  Object.defineProperty(exports, "EditSidePanel", {
97
103
  enumerable: true,
98
104
  get: function get() {
99
105
  return _EditSidePanel.EditSidePanel;
100
106
  }
101
107
  });
108
+ Object.defineProperty(exports, "EditTearsheet", {
109
+ enumerable: true,
110
+ get: function get() {
111
+ return _EditTearsheet.EditTearsheet;
112
+ }
113
+ });
114
+ Object.defineProperty(exports, "EditTearsheetNarrow", {
115
+ enumerable: true,
116
+ get: function get() {
117
+ return _EditTearsheetNarrow.EditTearsheetNarrow;
118
+ }
119
+ });
102
120
  Object.defineProperty(exports, "EmptyState", {
103
121
  enumerable: true,
104
122
  get: function get() {
@@ -454,4 +472,10 @@ var _InlineEdit = require("./InlineEdit");
454
472
 
455
473
  var _DataSpreadsheet = require("./DataSpreadsheet");
456
474
 
457
- var _Datagrid = require("./Datagrid");
475
+ var _Datagrid = require("./Datagrid");
476
+
477
+ var _EditTearsheet = require("./EditTearsheet");
478
+
479
+ var _EditTearsheetNarrow = require("./EditTearsheetNarrow");
480
+
481
+ var _EditFullPage = require("./EditFullPage");
@@ -69,7 +69,10 @@ var defaults = {
69
69
  EditSidePanel: false,
70
70
  CancelableTextEdit: false,
71
71
  DataSpreadsheet: false,
72
- Datagrid: false
72
+ Datagrid: false,
73
+ EditTearsheet: false,
74
+ EditTearsheetNarrow: false,
75
+ EditFullPage: false
73
76
  /* new component flags here - comment used by generate CLI */
74
77
 
75
78
  },
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/ibm-products",
3
3
  "description": "Carbon for IBM Products",
4
- "version": "1.23.1",
4
+ "version": "1.24.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -93,5 +93,5 @@
93
93
  "react": "^16.8.6 || ^17.0.1",
94
94
  "react-dom": "^16.8.6 || ^17.0.1"
95
95
  },
96
- "gitHead": "f40f3df7863f899776c205dac85e0ad0803e8df4"
96
+ "gitHead": "e03a4b24cc558c658938d5a7f540ce4987a01fd5"
97
97
  }
@@ -30,7 +30,7 @@
30
30
  .#{$block-class}__element,
31
31
  .#{$block-class}__col {
32
32
  @media (prefers-reduced-motion: no-preference) {
33
- // stylelint-disable-next-line carbon/motion-token-use
33
+ // stylelint-disable-next-line carbon/motion-duration-use
34
34
  animation: $animationProps fade; // stylelint note animation duration declared in $animationProps
35
35
  animation-fill-mode: forwards;
36
36
  opacity: 0;
@@ -61,6 +61,7 @@
61
61
  }
62
62
  .#{$block-class}__side-nav-opening,
63
63
  .#{$block-class}__progress-indicator-opening {
64
+ // stylelint-disable-next-line carbon/motion-easing-use
64
65
  animation: influencer-menu-entrance $duration--moderate-02 1;
65
66
  animation-fill-mode: forwards;
66
67
  @include carbon--motion(entrance, productive);
@@ -68,6 +69,7 @@
68
69
 
69
70
  .#{$block-class}__side-nav-closing,
70
71
  .#{$block-class}__progress-indicator-closing {
72
+ // stylelint-disable-next-line carbon/motion-easing-use
71
73
  animation: influencer-menu-exit $duration--moderate-02 1;
72
74
  animation-fill-mode: forwards;
73
75
  @include carbon--motion(exit, productive);
@@ -38,7 +38,6 @@
38
38
  display: flex;
39
39
  overflow: hidden;
40
40
  width: 100%;
41
- height: 100%;
42
41
  flex-direction: column;
43
42
 
44
43
  /* stylelint-disable-next-line selector-pseudo-class-no-unknown */
@@ -12,6 +12,10 @@
12
12
 
13
13
  $block-class: #{$pkg-prefix}--datagrid;
14
14
 
15
+ .sb-show-main.sb-main-centered {
16
+ height: 100vh;
17
+ }
18
+
15
19
  .sb-show-main.sb-main-centered #root {
16
20
  width: 100%;
17
21
  height: 100vh;
@@ -33,3 +37,52 @@ $block-class: #{$pkg-prefix}--datagrid;
33
37
  .#{$block-class}__panelContent {
34
38
  display: inline;
35
39
  }
40
+
41
+ /* only for storybook purpose. */
42
+ .#{$pkg-prefix}--side-panel.#{$pkg-prefix}--side-panel__container {
43
+ top: 0;
44
+ height: 100%;
45
+ }
46
+
47
+ .page-content-wrapper.side-panel-open {
48
+ .#{$block-class} {
49
+ padding-right: $spacing-05;
50
+ }
51
+ }
52
+
53
+ .#{$block-class}__side-panel-sections {
54
+ padding-bottom: $spacing-06;
55
+ }
56
+
57
+ .#{$block-class}__side-panel-section-inner {
58
+ display: flex;
59
+ padding: $spacing-01 0;
60
+ }
61
+
62
+ .#{$block-class}__side-panel-label-text {
63
+ @include carbon--type-style('label-02');
64
+
65
+ color: $text-02;
66
+ }
67
+
68
+ .#{$block-class}__side-panel-value {
69
+ @include carbon--type-style('body-short-01');
70
+
71
+ padding-left: $spacing-03;
72
+ }
73
+
74
+ .#{$block-class}__side-panel-section-header {
75
+ @include carbon--type-style('productive-heading-01');
76
+
77
+ padding-bottom: $spacing-02;
78
+ }
79
+
80
+ .#{$pkg-prefix}--side-panel.#{$pkg-prefix}--side-panel__container.#{$pkg-prefix}--side-panel__container-right-placement {
81
+ border: 0 none;
82
+ box-shadow: none;
83
+ }
84
+
85
+ .#{$pkg-prefix}--side-panel__container
86
+ .#{$pkg-prefix}--side-panel__inner-content {
87
+ height: 100%;
88
+ }
@@ -144,26 +144,18 @@
144
144
  }
145
145
  .#{$block-class}__grid-container {
146
146
  display: block;
147
- overflow: auto;
148
147
  width: 100%;
149
148
  padding-top: 0;
150
149
 
151
150
  .#{$carbon-prefix}--data-table-content {
152
151
  width: 100%;
153
152
  height: 100%;
154
- /* stylelint-disable-next-line declaration-property-value-disallowed-list */
155
- overflow-x: unset;
153
+ overflow-x: auto;
156
154
  }
157
155
 
158
156
  .#{$block-class}__table-simple {
159
- display: flex;
160
- overflow: auto;
157
+ overflow: hidden;
161
158
  max-height: 100%;
162
- flex-direction: column;
163
- }
164
-
165
- .#{$block-class}__with-pagination tr:last-of-type > td {
166
- border-bottom: none;
167
159
  }
168
160
 
169
161
  .#{$block-class}__head {
@@ -261,6 +253,10 @@
261
253
  flex: 1 1 auto;
262
254
  }
263
255
 
256
+ .#{$block-class}__with-pagination table tr:last-of-type > td {
257
+ border-bottom: none;
258
+ }
259
+
264
260
  .#{$block-class}__resizer {
265
261
  position: absolute;
266
262
  z-index: 1;
@@ -359,7 +355,6 @@
359
355
  .#{$block-class}__datagridLeftPanel {
360
356
  display: flex;
361
357
  width: 388px; // as per UX specs.
362
- height: 100%;
363
358
  background-color: $ui-01;
364
359
  }
365
360
 
@@ -370,9 +365,38 @@
370
365
  .#{$block-class}__datagridWithPanel {
371
366
  position: relative;
372
367
  display: flex;
373
- overflow: auto;
374
368
  width: 100%;
369
+ height: 100%;
375
370
  flex-direction: column;
371
+
372
+ .#{$block-class}__grid-container {
373
+ display: flex;
374
+ overflow: hidden;
375
+ flex-direction: column;
376
+ }
377
+
378
+ .#{$block-class}__table-toolbar {
379
+ width: 100%;
380
+ }
381
+
382
+ .#{$block-class}__datagridLeftPanel {
383
+ flex: 0 0 auto;
384
+ }
385
+
386
+ .#{$carbon-prefix}--data-table-content {
387
+ flex: 1 1 0%;
388
+ }
389
+ .#{$block-class}__table-container {
390
+ overflow: hidden;
391
+ }
392
+ }
393
+
394
+ .#{$block-class}__table-container {
395
+ position: relative;
396
+ display: flex;
397
+ overflow: auto;
398
+ width: 100%;
399
+ max-height: 100%;
376
400
  }
377
401
 
378
402
  .#{$block-class}__carbon-row-expanded {
@@ -382,3 +406,60 @@
382
406
  border-left: 1px solid $interactive-01;
383
407
  }
384
408
  }
409
+
410
+ .#{$block-class} .#{$carbon-prefix}--data-table-header {
411
+ background: transparent;
412
+ }
413
+
414
+ .#{$block-class}__dense-header {
415
+ display: flex;
416
+ flex-wrap: wrap;
417
+
418
+ .#{$carbon-prefix}--data-table-header {
419
+ flex: 1 1 auto;
420
+ padding-bottom: $spacing-05;
421
+ }
422
+
423
+ .#{$block-class}__table-toolbar {
424
+ flex: 0 0 auto;
425
+ }
426
+ .#{$carbon-prefix}--table-toolbar {
427
+ background: transparent;
428
+ }
429
+
430
+ .#{$carbon-prefix}__table-container {
431
+ flex: 1 1 100%;
432
+ }
433
+
434
+ .#{$carbon-prefix}--table-toolbar {
435
+ padding-top: $spacing-07;
436
+ }
437
+
438
+ .#{$block-class}__toolbar-divider {
439
+ position: relative;
440
+ }
441
+
442
+ .#{$block-class}__toolbar-divider::before {
443
+ position: absolute;
444
+ top: 50%;
445
+ left: 0;
446
+ width: 1px;
447
+ height: $spacing-05;
448
+ border-left: 1px solid $ui-03;
449
+ content: '';
450
+ transform: translateY(-50%);
451
+ }
452
+ }
453
+
454
+ .#{$carbon-prefix}--data-table--selected {
455
+ position: relative;
456
+ }
457
+
458
+ .#{$carbon-prefix}--data-table--selected::before {
459
+ position: absolute;
460
+ left: 0;
461
+ width: $spacing-02;
462
+ height: 100%;
463
+ background-color: $interactive-01;
464
+ content: '';
465
+ }
@@ -5,9 +5,3 @@
5
5
  * US Government Users Restricted Rights - Use, duplication or disclosure
6
6
  * restricted by GSA ADP Schedule Contract with IBM Corp.
7
7
  */
8
-
9
- @import './variables';
10
-
11
- .#{$block-class}__expanded-row-content {
12
- padding: $spacing-05 $spacing-05 $spacing-06 $spacing-10;
13
- }