@carbon/ibm-products 1.16.0 → 1.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/css/index-full-carbon.css +32 -7
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +6 -3
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +9 -3
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +4 -1
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +32 -7
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +6 -3
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +32 -7
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +6 -3
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/DataSpreadsheet/DataSpreadsheet.js +1 -0
  18. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +6 -2
  19. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +5 -2
  20. package/es/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +57 -12
  21. package/es/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +16 -0
  22. package/es/components/DataSpreadsheet/utils/createCellSelectionArea.js +10 -5
  23. package/es/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +6 -2
  24. package/es/components/Datagrid/Datagrid/Datagrid.js +24 -12
  25. package/es/components/Datagrid/Datagrid/DatagridHead.js +8 -16
  26. package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +10 -10
  27. package/es/components/Datagrid/Datagrid/index.js +6 -7
  28. package/es/components/Datagrid/index.js +1 -1
  29. package/es/components/ExportModal/ExportModal.js +10 -5
  30. package/es/components/SidePanel/SidePanel.js +5 -1
  31. package/es/components/WebTerminal/WebTerminal.js +36 -11
  32. package/es/components/WebTerminal/WebTerminalContentWrapper.js +49 -0
  33. package/es/components/WebTerminal/index.js +2 -1
  34. package/es/components/index.js +1 -1
  35. package/es/global/js/package-settings.js +1 -0
  36. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +1 -0
  37. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +7 -2
  38. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +6 -2
  39. package/lib/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +61 -11
  40. package/lib/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +26 -0
  41. package/lib/components/DataSpreadsheet/utils/createCellSelectionArea.js +10 -5
  42. package/lib/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +6 -2
  43. package/lib/components/Datagrid/Datagrid/Datagrid.js +25 -8
  44. package/lib/components/Datagrid/Datagrid/DatagridHead.js +8 -16
  45. package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +10 -10
  46. package/lib/components/Datagrid/Datagrid/index.js +3 -5
  47. package/lib/components/Datagrid/index.js +2 -2
  48. package/lib/components/ExportModal/ExportModal.js +9 -4
  49. package/lib/components/SidePanel/SidePanel.js +5 -1
  50. package/lib/components/WebTerminal/WebTerminal.js +36 -10
  51. package/lib/components/WebTerminal/WebTerminalContentWrapper.js +58 -0
  52. package/lib/components/WebTerminal/index.js +9 -1
  53. package/lib/components/index.js +6 -0
  54. package/lib/global/js/package-settings.js +1 -0
  55. package/package.json +9 -9
  56. package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +10 -0
  57. package/scss/components/SidePanel/_side-panel.scss +22 -3
  58. package/scss/components/WebTerminal/_storybook-styles.scss +5 -0
  59. package/scss/components/WebTerminal/_web-terminal.scss +14 -4
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.WebTerminalContentWrapper = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _propTypes = _interopRequireDefault(require("prop-types"));
19
+
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+
22
+ var _settings = require("../../settings");
23
+
24
+ var _excluded = ["children", "isTerminalOpen"];
25
+ // The block part of our conventional BEM class names (blockClass__E--M).
26
+ var componentName = 'WebTerminalContentWrapper';
27
+ var blockClass = "".concat(_settings.pkg.prefix, "--web-terminal-content-wrapper");
28
+
29
+ var WebTerminalContentWrapper = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
30
+ var children = _ref.children,
31
+ isTerminalOpen = _ref.isTerminalOpen,
32
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
33
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
34
+ ref: ref,
35
+ className: (0, _classnames.default)([blockClass, (0, _defineProperty2.default)({}, "".concat(blockClass, "--open"), isTerminalOpen)])
36
+ }, rest), children);
37
+ }); // Return a placeholder if not released and not enabled by feature flag
38
+
39
+
40
+ exports.WebTerminalContentWrapper = WebTerminalContentWrapper;
41
+ exports.WebTerminalContentWrapper = WebTerminalContentWrapper = _settings.pkg.checkComponentEnabled(WebTerminalContentWrapper, componentName); // The display name of the component, used by React. Note that displayName
42
+ // is used in preference to relying on function.name.
43
+
44
+ WebTerminalContentWrapper.displayName = componentName; // The types and DocGen commentary for the component props,
45
+ // in alphabetical order (for consistency).
46
+ // See https://www.npmjs.com/package/prop-types#usage.
47
+
48
+ WebTerminalContentWrapper.propTypes = {
49
+ /**
50
+ * Pass in content as children.
51
+ */
52
+ children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]).isRequired,
53
+
54
+ /**
55
+ * A boolean to determine if the terminal is open.
56
+ */
57
+ isTerminalOpen: _propTypes.default.bool.isRequired
58
+ };
@@ -9,5 +9,13 @@ Object.defineProperty(exports, "WebTerminal", {
9
9
  return _WebTerminal.WebTerminal;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "WebTerminalContentWrapper", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _WebTerminalContentWrapper.WebTerminalContentWrapper;
16
+ }
17
+ });
18
+
19
+ var _WebTerminal = require("./WebTerminal");
12
20
 
13
- var _WebTerminal = require("./WebTerminal");
21
+ var _WebTerminalContentWrapper = require("./WebTerminalContentWrapper");
@@ -297,6 +297,12 @@ Object.defineProperty(exports, "WebTerminal", {
297
297
  return _WebTerminal.WebTerminal;
298
298
  }
299
299
  });
300
+ Object.defineProperty(exports, "WebTerminalContentWrapper", {
301
+ enumerable: true,
302
+ get: function get() {
303
+ return _WebTerminal.WebTerminalContentWrapper;
304
+ }
305
+ });
300
306
 
301
307
  var _AboutModal = require("./AboutModal");
302
308
 
@@ -64,6 +64,7 @@ var defaults = {
64
64
  ToolbarButton: false,
65
65
  ToolbarGroup: false,
66
66
  WebTerminal: false,
67
+ WebTerminalContentWrapper: false,
67
68
  EditSidePanel: false,
68
69
  CancelableTextEdit: false,
69
70
  InlineEdit: false,
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.16.0",
4
+ "version": "1.17.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -52,7 +52,7 @@
52
52
  "devDependencies": {
53
53
  "@babel/cli": "^7.17.6",
54
54
  "@babel/core": "^7.17.9",
55
- "babel-preset-ibm-cloud-cognitive": "^0.14.13",
55
+ "babel-preset-ibm-cloud-cognitive": "^0.14.14",
56
56
  "chalk": "^4.1.2",
57
57
  "change-case": "^4.1.2",
58
58
  "copyfiles": "^2.4.1",
@@ -60,23 +60,23 @@
60
60
  "fs-extra": "^10.1.0",
61
61
  "glob": "^8.0.1",
62
62
  "jest": "^27.5.1",
63
- "jest-config-ibm-cloud-cognitive": "^0.23.16",
63
+ "jest-config-ibm-cloud-cognitive": "^0.23.17",
64
64
  "namor": "^1.1.2",
65
- "npm-check-updates": "^12.5.9",
65
+ "npm-check-updates": "^12.5.10",
66
66
  "npm-run-all": "^4.1.5",
67
67
  "rimraf": "^3.0.2",
68
- "sass": "^1.50.1",
68
+ "sass": "^1.51.0",
69
69
  "yargs": "^17.4.1"
70
70
  },
71
71
  "dependencies": {
72
72
  "@babel/runtime": "^7.17.9",
73
73
  "@carbon/telemetry": "^0.1.0",
74
74
  "immutability-helper": "^3.1.1",
75
- "react-dnd": "^16.0.1",
76
- "react-dnd-html5-backend": "^16.0.1",
75
+ "react-dnd": "^15.1.2",
76
+ "react-dnd-html5-backend": "^15.1.3",
77
77
  "react-resize-detector": "^7.0.0",
78
78
  "react-table": "^7.7.0",
79
- "react-window": "^1.8.6"
79
+ "react-window": "^1.8.7"
80
80
  },
81
81
  "peerDependencies": {
82
82
  "@carbon/colors": "^10.37.1",
@@ -92,5 +92,5 @@
92
92
  "react": "^16.8.6 || ^17.0.1",
93
93
  "react-dom": "^16.8.6 || ^17.0.1"
94
94
  },
95
- "gitHead": "c9d83ac8cb5d738772533f2ea93b854a1f4d711f"
95
+ "gitHead": "dcf8ef9163dbb8cad6bfc6e70165bfa7288c654e"
96
96
  }
@@ -171,6 +171,7 @@
171
171
 
172
172
  &[data-active-row-index='header'],
173
173
  &[data-active-column-index='header'] {
174
+ z-index: 4;
174
175
  background-color: transparent;
175
176
  }
176
177
 
@@ -214,6 +215,15 @@
214
215
  .#{$block-class}__td-th--active-header.#{$block-class}__td {
215
216
  background-color: $hover-selected-ui;
216
217
  }
218
+ .#{$block-class}__th--selected-header,
219
+ .#{$block-class}__td-th--selected-header.#{$block-class}__td {
220
+ background-color: $inverse-02;
221
+ color: $text-04;
222
+
223
+ &:hover {
224
+ background-color: $inverse-02;
225
+ }
226
+ }
217
227
  .#{$block-class}__list--container {
218
228
  overscroll-behavior: none;
219
229
  }
@@ -278,7 +278,10 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
278
278
  position: fixed;
279
279
  z-index: 2;
280
280
  // stylelint-disable-next-line carbon/layout-token-use
281
- top: calc(var(--#{$block-class}--title-text-height) + #{$spacing-09});
281
+ top: calc(
282
+ var(--#{$block-class}--title-text-height) +
283
+ var(--#{$block-class}--label-text-height) + #{$spacing-09}
284
+ );
282
285
  background-color: $ui-01;
283
286
  }
284
287
 
@@ -298,7 +301,10 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
298
301
  .#{$block-class}__title-container.#{$block-class}__title-container--no-title-animation {
299
302
  position: fixed;
300
303
  top: $spacing-09;
301
- height: var(--#{$block-class}--title-text-height);
304
+ height: calc(
305
+ var(--#{$block-class}--title-text-height) +
306
+ var(--#{$block-class}--label-text-height)
307
+ );
302
308
  }
303
309
 
304
310
  .#{$block-class}__inner-content {
@@ -308,7 +314,8 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
308
314
  margin-top: calc(
309
315
  var(--#{$block-class}--title-text-height) +
310
316
  var(--#{$block-class}--subtitle-container-height) +
311
- var(--#{$block-class}--action-bar-container-height)
317
+ var(--#{$block-class}--action-bar-container-height) +
318
+ var(--#{$block-class}--label-text-height)
312
319
  );
313
320
  overflow-x: hidden;
314
321
  }
@@ -331,6 +338,18 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
331
338
  padding-top: $spacing-05;
332
339
  }
333
340
 
341
+ .#{$block-class}__inner-content.#{$block-class}__static-inner-content-no-actions {
342
+ height: calc(
343
+ 100vh -
344
+ calc(
345
+ var(--#{$block-class}--title-text-height) +
346
+ var(--#{$block-class}--subtitle-container-height) +
347
+ var(--#{$block-class}--action-bar-container-height) +
348
+ var(--#{$block-class}--label-text-height)
349
+ )
350
+ );
351
+ }
352
+
334
353
  .#{$block-class}__action-toolbar.#{$block-class}__action-toolbar-no-animation {
335
354
  position: fixed;
336
355
  // stylelint-disable-next-line carbon/layout-token-use
@@ -2,6 +2,11 @@
2
2
 
3
3
  @import '../../global/styles/project-settings';
4
4
 
5
+ .sb-show-main.sb-main-centered #root {
6
+ padding: 0 !important;
7
+ margin: 0 !important;
8
+ }
9
+
5
10
  .example-terminal {
6
11
  padding: $spacing-05;
7
12
  color: $gray-10;
@@ -5,25 +5,25 @@ $web-terminal-width: 36.5rem;
5
5
  $block-class: #{$pkg-prefix}--web-terminal;
6
6
 
7
7
  @keyframes web-terminal-entrance {
8
- 0% {
8
+ from {
9
9
  opacity: 0;
10
10
  // stylelint-disable-next-line carbon/layout-token-use
11
11
  transform: translateX(#{$web-terminal-width});
12
12
  }
13
13
 
14
- 100% {
14
+ to {
15
15
  opacity: 1;
16
16
  transform: translateX(0);
17
17
  }
18
18
  }
19
19
 
20
20
  @keyframes web-terminal-exit {
21
- 0% {
21
+ from {
22
22
  opacity: 1;
23
23
  transform: translateX(0);
24
24
  }
25
25
 
26
- 100% {
26
+ to {
27
27
  opacity: 0;
28
28
  // stylelint-disable-next-line carbon/layout-token-use
29
29
  transform: translateX(#{$web-terminal-width});
@@ -70,3 +70,13 @@ $block-class: #{$pkg-prefix}--web-terminal;
70
70
  .#{$block-class}__body {
71
71
  height: 100%;
72
72
  }
73
+
74
+ // Terminal wrapper styles
75
+ .#{$block-class}-content-wrapper {
76
+ width: 100vw;
77
+ height: 100%;
78
+ }
79
+
80
+ .#{$block-class}-content-wrapper--open {
81
+ width: calc(100vw - #{$web-terminal-width});
82
+ }