@carbon/ibm-products 1.51.0 → 1.53.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. package/README.md +10 -5
  2. package/css/index-full-carbon.css +89 -64
  3. package/css/index-full-carbon.css.map +1 -1
  4. package/css/index-full-carbon.min.css +1 -1
  5. package/css/index-full-carbon.min.css.map +1 -1
  6. package/css/index-without-carbon.css +89 -64
  7. package/css/index-without-carbon.css.map +1 -1
  8. package/css/index-without-carbon.min.css +1 -1
  9. package/css/index-without-carbon.min.css.map +1 -1
  10. package/css/index.css +89 -64
  11. package/css/index.css.map +1 -1
  12. package/css/index.min.css +1 -1
  13. package/css/index.min.css.map +1 -1
  14. package/es/components/AboutModal/AboutModal.js +3 -4
  15. package/es/components/ActionBar/ActionBar.js +9 -18
  16. package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +8 -13
  17. package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +7 -11
  18. package/es/components/Datagrid/Datagrid/DatagridToolbar.js +5 -5
  19. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +3 -4
  20. package/es/components/Datagrid/index.js +1 -0
  21. package/es/components/Datagrid/useActionsColumn.js +10 -7
  22. package/es/components/Datagrid/useCustomizeColumns.js +5 -1
  23. package/es/components/Datagrid/useEditableCell.js +12 -0
  24. package/es/components/Datagrid/useExpandedRow.js +11 -7
  25. package/es/components/Datagrid/useFiltering.js +11 -8
  26. package/es/components/Datagrid/useInlineEdit.js +17 -8
  27. package/es/components/Datagrid/useNestedRows.js +10 -6
  28. package/es/components/ExampleComponent/ExampleComponent.js +32 -4
  29. package/es/components/ExampleComponent/useExample.js +49 -0
  30. package/es/components/InlineEditV1/InlineEditV1.js +3 -1
  31. package/es/components/NonLinearReading/NonLinearReading.js +7 -7
  32. package/es/components/PageHeader/PageHeader.js +28 -31
  33. package/es/components/SidePanel/SidePanel.js +25 -26
  34. package/es/components/TagSet/TagSet.js +5 -7
  35. package/es/components/Tearsheet/TearsheetShell.js +4 -6
  36. package/es/components/index.js +1 -1
  37. package/es/global/js/hooks/useResizeObserver.js +74 -0
  38. package/es/global/js/package-settings.js +34 -4
  39. package/es/global/js/utils/test-helper.js +34 -3
  40. package/es/settings.js +26 -30
  41. package/lib/components/AboutModal/AboutModal.js +3 -4
  42. package/lib/components/ActionBar/ActionBar.js +9 -18
  43. package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +8 -13
  44. package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +7 -11
  45. package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +4 -4
  46. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +3 -4
  47. package/lib/components/Datagrid/index.js +7 -0
  48. package/lib/components/Datagrid/useActionsColumn.js +7 -1
  49. package/lib/components/Datagrid/useCustomizeColumns.js +4 -0
  50. package/lib/components/Datagrid/useEditableCell.js +20 -0
  51. package/lib/components/Datagrid/useExpandedRow.js +4 -0
  52. package/lib/components/Datagrid/useFiltering.js +4 -0
  53. package/lib/components/Datagrid/useInlineEdit.js +19 -8
  54. package/lib/components/Datagrid/useNestedRows.js +9 -6
  55. package/lib/components/ExampleComponent/ExampleComponent.js +35 -4
  56. package/lib/components/ExampleComponent/useExample.js +58 -0
  57. package/lib/components/InlineEditV1/InlineEditV1.js +3 -1
  58. package/lib/components/NonLinearReading/NonLinearReading.js +6 -6
  59. package/lib/components/PageHeader/PageHeader.js +28 -31
  60. package/lib/components/SidePanel/SidePanel.js +25 -26
  61. package/lib/components/TagSet/TagSet.js +5 -7
  62. package/lib/components/Tearsheet/TearsheetShell.js +4 -6
  63. package/lib/components/index.js +6 -0
  64. package/lib/global/js/hooks/useResizeObserver.js +83 -0
  65. package/lib/global/js/package-settings.js +33 -3
  66. package/lib/global/js/utils/test-helper.js +37 -5
  67. package/lib/settings.js +26 -30
  68. package/package.json +2 -3
  69. package/scss/components/NonLinearReading/_non-linear-reading.scss +76 -67
  70. package/scss/components/NonLinearReading/_storybook-styles.scss +16 -0
@@ -14,7 +14,7 @@ var _react = _interopRequireWildcard(require("react"));
14
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
  var _classnames = _interopRequireDefault(require("classnames"));
16
16
  var _settings = require("../../settings");
17
- var _reactResizeDetector = require("react-resize-detector");
17
+ var _useResizeObserver = require("../../global/js/hooks/useResizeObserver");
18
18
  var _carbonComponentsReact = require("carbon-components-react");
19
19
  var _uuidv = _interopRequireDefault(require("../../global/js/utils/uuidv4"));
20
20
  var _propsHelper = require("../../global/js/utils/props-helper");
@@ -61,6 +61,8 @@ var ActionBar = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
61
61
  var refDisplayedItems = (0, _react.useRef)(null);
62
62
  var sizingRef = (0, _react.useRef)(null);
63
63
  var sizes = (0, _react.useRef)({});
64
+ var backupRef = (0, _react.useRef)();
65
+ var localRef = ref || backupRef;
64
66
 
65
67
  // create hidden sizing items
66
68
  (0, _react.useEffect)(function () {
@@ -175,30 +177,19 @@ var ActionBar = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
175
177
 
176
178
  /* istanbul ignore next */ // not sure how to fake window resize
177
179
  var handleResize = function handleResize() {
178
- // width is the space available for all action bar items horizontally
179
- // the action bar items are squares so the height should be one item wide
180
- /* istanbul ignore next */ // not sure how to fake window resize
181
- checkFullyVisibleItems();
182
- };
183
-
184
- /* istanbul ignore next */ // not sure how to fake window resize
185
- var handleActionBarItemsResize = function handleActionBarItemsResize() {
186
180
  // when the hidden sizing items change size
187
181
  /* istanbul ignore next */ // not sure how to fake window resize
188
182
  checkFullyVisibleItems();
189
183
  };
190
- (0, _reactResizeDetector.useResizeDetector)({
191
- onResize: handleActionBarItemsResize,
192
- targetRef: sizingRef
184
+ (0, _useResizeObserver.useResizeObserver)(sizingRef, {
185
+ callback: handleResize
186
+ });
187
+ (0, _useResizeObserver.useResizeObserver)(localRef, {
188
+ callback: handleResize
193
189
  });
194
- var _useResizeDetector = (0, _reactResizeDetector.useResizeDetector)({
195
- onResize: handleResize,
196
- targetRef: ref
197
- }),
198
- outerRef = _useResizeDetector.ref;
199
190
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
200
191
  className: (0, _classnames.default)([blockClass, className]),
201
- ref: outerRef
192
+ ref: localRef
202
193
  }), hiddenSizingItems, /*#__PURE__*/_react.default.createElement("div", {
203
194
  ref: refDisplayedItems,
204
195
  className: (0, _classnames.default)(["".concat(blockClass, "__displayed-items"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__displayed-items--right"), rightAlign)])
@@ -15,7 +15,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
  var _classnames = _interopRequireDefault(require("classnames"));
16
16
  var _carbonComponentsReact = require("carbon-components-react");
17
17
  var _settings = require("../../settings");
18
- var _reactResizeDetector = require("react-resize-detector");
18
+ var _useResizeObserver = require("../../global/js/hooks/useResizeObserver");
19
19
  var _iconsReact = require("@carbon/icons-react");
20
20
  var _uuidv = _interopRequireDefault(require("../../global/js/utils/uuidv4"));
21
21
  require("../../global/js/utils/props-helper");
@@ -233,24 +233,19 @@ var BreadcrumbWithOverflow = function BreadcrumbWithOverflow(_ref) {
233
233
  /* istanbul ignore next */ // not sure how to test resize
234
234
  checkFullyVisibleBreadcrumbItems();
235
235
  };
236
-
237
- /* istanbul ignore next */ // not sure how to test resize
238
- var handleBreadcrumbItemsResize = function handleBreadcrumbItemsResize() {
239
- /* istanbul ignore next */ // not sure how to test resize
240
- checkFullyVisibleBreadcrumbItems();
241
- };
242
236
  var backItem = breadcrumbs[breadcrumbs.length - 1];
243
237
  /* istanbul ignore if */ // not sure how to test media queries
244
238
  if (backItem.isCurrentPage) {
245
239
  backItem = breadcrumbs[breadcrumbs.length - 2];
246
240
  }
247
- (0, _reactResizeDetector.useResizeDetector)({
248
- onResize: handleBreadcrumbItemsResize,
249
- targetRef: sizingContainerRef
241
+
242
+ // container resize
243
+ (0, _useResizeObserver.useResizeObserver)(sizingContainerRef, {
244
+ callback: handleResize
250
245
  });
251
- (0, _reactResizeDetector.useResizeDetector)({
252
- onResize: handleResize,
253
- targetRef: breadcrumbItemWithOverflow
246
+ // item resize
247
+ (0, _useResizeObserver.useResizeObserver)(breadcrumbItemWithOverflow, {
248
+ callback: handleResize
254
249
  });
255
250
  return /*#__PURE__*/_react.default.createElement("div", {
256
251
  className: (0, _classnames.default)(blockClass, className, (0, _defineProperty2.default)({}, "".concat(blockClass, "__with-items"), displayedBreadcrumbItems.length > 1)),
@@ -13,7 +13,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
13
13
  var _react = _interopRequireWildcard(require("react"));
14
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
  var _classnames = _interopRequireDefault(require("classnames"));
16
- var _reactResizeDetector = require("react-resize-detector");
16
+ var _useResizeObserver = require("../../global/js/hooks/useResizeObserver");
17
17
  var _carbonComponentsReact = require("carbon-components-react");
18
18
  var _ButtonMenu = require("../ButtonMenu");
19
19
  var _settings = require("../../settings");
@@ -138,18 +138,14 @@ var ButtonSetWithOverflow = function ButtonSetWithOverflow(_ref) {
138
138
  }, (0, _propsHelper.prepareProps)(other, ['iconDescription', 'renderIcon'])));
139
139
  }).reverse());
140
140
  });
141
- (0, _reactResizeDetector.useResizeDetector)({
142
- onResize: checkFullyVisibleItems,
143
- targetRef: sizingContainerRefSet
141
+ (0, _useResizeObserver.useResizeObserver)(sizingContainerRefSet, {
142
+ callback: checkFullyVisibleItems
144
143
  });
145
- (0, _reactResizeDetector.useResizeDetector)({
146
- onResize: checkFullyVisibleItems,
147
- targetRef: sizingContainerRefCombo
144
+ (0, _useResizeObserver.useResizeObserver)(sizingContainerRefCombo, {
145
+ callback: checkFullyVisibleItems
148
146
  });
149
- (0, _reactResizeDetector.useResizeDetector)({
150
- onResize: checkFullyVisibleItems,
151
- targetRef: spaceAvailableRef,
152
- handleWidth: true
147
+ (0, _useResizeObserver.useResizeObserver)(spaceAvailableRef, {
148
+ callback: checkFullyVisibleItems
153
149
  });
154
150
  return /*#__PURE__*/_react.default.createElement("div", {
155
151
  className: (0, _classnames.default)([blockClass, className, (0, _defineProperty2.default)({}, "".concat(blockClass, "--right"), rightAlign)]),
@@ -11,7 +11,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var _iconsReact = require("@carbon/icons-react");
13
13
  var _carbonComponentsReact = require("carbon-components-react");
14
- var _reactResizeDetector = require("react-resize-detector");
14
+ var _useResizeObserver2 = require("../../../global/js/hooks/useResizeObserver");
15
15
  var _ButtonMenu = require("../../ButtonMenu");
16
16
  var _settings = require("../../../settings");
17
17
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -134,9 +134,9 @@ var DatagridBatchActionsToolbar = function DatagridBatchActionsToolbar(datagridS
134
134
  })), renderBatchActionOverflow());
135
135
  };
136
136
  var DatagridToolbar = function DatagridToolbar(datagridState) {
137
- var _useResizeDetector = (0, _reactResizeDetector.useResizeDetector)(),
138
- width = _useResizeDetector.width,
139
- ref = _useResizeDetector.ref;
137
+ var ref = (0, _react.useRef)(null);
138
+ var _useResizeObserver = (0, _useResizeObserver2.useResizeObserver)(ref),
139
+ width = _useResizeObserver.width;
140
140
  var DatagridActions = datagridState.DatagridActions,
141
141
  DatagridBatchActions = datagridState.DatagridBatchActions,
142
142
  batchActions = datagridState.batchActions,
@@ -12,7 +12,7 @@ var _react = _interopRequireWildcard(require("react"));
12
12
  var _reactWindow = require("react-window");
13
13
  var _carbonComponentsReact = require("carbon-components-react");
14
14
  var _layout = require("@carbon/layout");
15
- var _reactResizeDetector = require("react-resize-detector");
15
+ var _useResizeObserver = require("../../../global/js/hooks/useResizeObserver");
16
16
  var _settings = require("../../../settings");
17
17
  var _DatagridHead = _interopRequireDefault(require("./DatagridHead"));
18
18
  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); }
@@ -54,9 +54,8 @@ var DatagridVirtualBody = function DatagridVirtualBody(datagridState) {
54
54
  var gridRefElement = gridRef === null || gridRef === void 0 ? void 0 : gridRef.current;
55
55
  gridRefElement.style.width = gridRefElement === null || gridRefElement === void 0 ? void 0 : gridRefElement.clientWidth;
56
56
  };
57
- (0, _reactResizeDetector.useResizeDetector)({
58
- onResize: handleVirtualGridResize,
59
- targetRef: gridRef
57
+ (0, _useResizeObserver.useResizeObserver)(gridRef, {
58
+ callback: handleVirtualGridResize
60
59
  });
61
60
  var syncScroll = function syncScroll(e) {
62
61
  var virtualBody = e.target;
@@ -58,6 +58,12 @@ Object.defineProperty(exports, "useDisableSelectRows", {
58
58
  return _useDisableSelectRows.default;
59
59
  }
60
60
  });
61
+ Object.defineProperty(exports, "useEditableCell", {
62
+ enumerable: true,
63
+ get: function get() {
64
+ return _useEditableCell.default;
65
+ }
66
+ });
61
67
  Object.defineProperty(exports, "useExpandedRow", {
62
68
  enumerable: true,
63
69
  get: function get() {
@@ -142,5 +148,6 @@ var _useSelectAllToggle = _interopRequireDefault(require("./useSelectAllToggle")
142
148
  var _useColumnCenterAlign = _interopRequireDefault(require("./useColumnCenterAlign"));
143
149
  var _useColumnOrder = _interopRequireDefault(require("./useColumnOrder"));
144
150
  var _useInlineEdit = _interopRequireDefault(require("./useInlineEdit"));
151
+ var _useEditableCell = _interopRequireDefault(require("./useEditableCell"));
145
152
  var _useFiltering = _interopRequireDefault(require("./useFiltering"));
146
153
  var _getAutoSizedColumnWidth = require("./utils/getAutoSizedColumnWidth");
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -8,16 +9,21 @@ exports.default = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _react = _interopRequireDefault(require("react"));
12
+ var _react = _interopRequireWildcard(require("react"));
12
13
  var _classnames = _interopRequireDefault(require("classnames"));
13
14
  var _carbonComponentsReact = require("carbon-components-react");
14
15
  var _settings = require("../../settings");
15
16
  var _excluded = ["id", "itemText", "onClick", "icon"],
16
17
  _excluded2 = ["id", "onClick", "shouldHideMenuItem", "shouldDisableMenuItem", "disabled"];
18
+ 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); }
19
+ 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; }
17
20
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
18
21
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
22
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
20
23
  var useActionsColumn = function useActionsColumn(hooks) {
24
+ (0, _react.useEffect)(function () {
25
+ _settings.pkg.checkReportFeatureEnabled('Datagrid.useActionsColumn');
26
+ }, []);
21
27
  var useAttachActionsOnInstance = function useAttachActionsOnInstance(instance) {
22
28
  var rowActions = instance.rowActions,
23
29
  isFetching = instance.isFetching,
@@ -10,12 +10,16 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
12
  var React = _interopRequireWildcard(require("react"));
13
+ var _settings = require("../../settings");
13
14
  var _CustomizeColumns = require("./Datagrid/addons/CustomizeColumns");
14
15
  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); }
15
16
  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; }
16
17
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
18
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
18
19
  var useCustomizeColumns = function useCustomizeColumns(hooks) {
20
+ React.useEffect(function () {
21
+ _settings.pkg.checkReportFeatureEnabled('Datagrid.useCustomizeColumns');
22
+ }, []);
19
23
  var _React$useState = React.useState(false),
20
24
  _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
21
25
  isTearsheetOpen = _React$useState2[0],
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _useInlineEdit = _interopRequireDefault(require("./useInlineEdit"));
9
+ /**
10
+ * Copyright IBM Corp. 2023, 2023
11
+ *
12
+ * This source code is licensed under the Apache-2.0 license found in the
13
+ * LICENSE file in the root directory of this source tree.
14
+ */
15
+
16
+ var useEditableCell = function useEditableCell(hooks) {
17
+ (0, _useInlineEdit.default)(hooks, 'usingEditableCell');
18
+ };
19
+ var _default = useEditableCell;
20
+ exports.default = _default;
@@ -8,11 +8,15 @@ exports.default = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = require("react");
11
+ var _settings = require("../../settings");
11
12
  var _DatagridExpandedRow = _interopRequireDefault(require("./Datagrid/DatagridExpandedRow"));
12
13
  var _useRowExpander = _interopRequireDefault(require("./useRowExpander"));
13
14
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
15
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
16
  var useExpandedRow = function useExpandedRow(hooks) {
17
+ (0, _react.useEffect)(function () {
18
+ _settings.pkg.checkReportFeatureEnabled('Datagrid.useExpandedRow');
19
+ }, []);
16
20
  (0, _useRowExpander.default)(hooks);
17
21
  var useInstance = function useInstance(instance) {
18
22
  var rows = instance.rows,
@@ -8,11 +8,15 @@ exports.default = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = require("react");
11
+ var _settings = require("../../settings");
11
12
  var _Filtering = require("./Datagrid/addons/Filtering");
12
13
  var _constants = require("./Datagrid/addons/Filtering/constants");
13
14
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
15
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
16
  var useFiltering = function useFiltering(hooks) {
17
+ (0, _react.useEffect)(function () {
18
+ _settings.pkg.checkReportFeatureEnabled('Datagrid.useFiltering');
19
+ }, []);
16
20
  var filterTypes = (0, _react.useMemo)(function () {
17
21
  return {
18
22
  date: function date(rows, id, _ref) {
@@ -1,25 +1,36 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
8
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
10
11
  var _settings = require("../../settings");
11
12
  var _classnames = _interopRequireDefault(require("classnames"));
12
13
  var _InlineEditCell = require("./Datagrid/addons/InlineEdit/InlineEditCell");
13
- /*
14
- * Licensed Materials - Property of IBM
15
- * 5724-Q36
16
- * (c) Copyright IBM Corp. 2022
17
- * US Government Users Restricted Rights - Use, duplication or disclosure
18
- * restricted by GSA ADP Schedule Contract with IBM Corp.
14
+ var _pconsole = require("../../global/js/utils/pconsole");
15
+ 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); }
16
+ 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; }
17
+ /**
18
+ * Copyright IBM Corp. 2022, 2023
19
+ *
20
+ * This source code is licensed under the Apache-2.0 license found in the
21
+ * LICENSE file in the root directory of this source tree.
19
22
  */
20
23
 
21
24
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
22
- var useInlineEdit = function useInlineEdit(hooks) {
25
+ var useInlineEdit = function useInlineEdit(hooks, usingEditableCell) {
26
+ (0, _react.useEffect)(function () {
27
+ _settings.pkg.checkReportFeatureEnabled('Datagrid.useInlineEdit');
28
+ }, []);
29
+ (0, _react.useEffect)(function () {
30
+ if (!usingEditableCell) {
31
+ (0, _pconsole.warn)("The 'useInlineEdit' hook is being renamed in Carbon for IBM Products v2 to 'useEditableCell'. You can use this newly renamed hook now or upgrade when moving to v2.");
32
+ }
33
+ }, [usingEditableCell]);
23
34
  var addInlineEdit = function addInlineEdit(props, _ref) {
24
35
  var _cell$column, _cell$column$inlineEd, _instance$columns$fil;
25
36
  var cell = _ref.cell,
@@ -6,19 +6,22 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _react = require("react");
9
10
  var _settings = require("../../settings");
10
11
  var _classnames = _interopRequireDefault(require("classnames"));
11
12
  var _useNestedRowExpander = _interopRequireDefault(require("./useNestedRowExpander"));
12
- /*
13
- * Licensed Materials - Property of IBM
14
- * 5724-Q36
15
- * (c) Copyright IBM Corp. 2020
16
- * US Government Users Restricted Rights - Use, duplication or disclosure
17
- * restricted by GSA ADP Schedule Contract with IBM Corp.
13
+ /**
14
+ * Copyright IBM Corp. 2020, 2023
15
+ *
16
+ * This source code is licensed under the Apache-2.0 license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
18
  */
19
19
 
20
20
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
21
21
  var useNestedRows = function useNestedRows(hooks) {
22
+ (0, _react.useEffect)(function () {
23
+ _settings.pkg.checkReportFeatureEnabled('Datagrid.useNestedRows');
24
+ }, []);
22
25
  (0, _useNestedRowExpander.default)(hooks);
23
26
  var marginLeft = 24;
24
27
  var getRowProps = function getRowProps(props, _ref) {
@@ -1,19 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.ExampleComponent = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _react = _interopRequireDefault(require("react"));
13
+ var _react = _interopRequireWildcard(require("react"));
12
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
15
  var _classnames = _interopRequireDefault(require("classnames"));
14
16
  var _settings = require("../../settings");
17
+ var _useExample3 = _interopRequireDefault(require("./useExample"));
15
18
  var _carbonComponentsReact = require("carbon-components-react");
16
- var _excluded = ["borderColor", "boxedBorder", "className", "disabled", "onPrimaryClick", "onSecondaryClick", "primaryButtonLabel", "primaryKind", "secondaryButtonLabel", "secondaryKind", "size", "style"];
19
+ var _excluded = ["borderColor", "boxedBorder", "className", "disabled", "usesExampleHook", "onPrimaryClick", "onSecondaryClick", "primaryButtonLabel", "primaryKind", "secondaryButtonLabel", "secondaryKind", "secondaryIcon", "size", "style"];
20
+ 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); }
21
+ 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; }
17
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
18
23
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
24
  // The block part of our conventional BEM class names (blockClass__E--M).
@@ -37,6 +42,7 @@ var ExampleComponent = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
37
42
  boxedBorder = _ref.boxedBorder,
38
43
  className = _ref.className,
39
44
  disabled = _ref.disabled,
45
+ usesExampleHook = _ref.usesExampleHook,
40
46
  onPrimaryClick = _ref.onPrimaryClick,
41
47
  onSecondaryClick = _ref.onSecondaryClick,
42
48
  primaryButtonLabel = _ref.primaryButtonLabel,
@@ -45,10 +51,18 @@ var ExampleComponent = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
45
51
  secondaryButtonLabel = _ref.secondaryButtonLabel,
46
52
  _ref$secondaryKind = _ref.secondaryKind,
47
53
  secondaryKind = _ref$secondaryKind === void 0 ? defaults.secondaryKind : _ref$secondaryKind,
54
+ secondaryIcon = _ref.secondaryIcon,
48
55
  _ref$size = _ref.size,
49
56
  size = _ref$size === void 0 ? defaults.size : _ref$size,
50
57
  style = _ref.style,
51
58
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
59
+ var _useState = (0, _react.useState)(primaryButtonLabel),
60
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
61
+ thePrimaryButtonLabel = _useState2[0],
62
+ setThePrimaryButtonLabel = _useState2[1];
63
+ var _useExample = (0, _useExample3.default)(usesExampleHook),
64
+ _useExample2 = (0, _slicedToArray2.default)(_useExample, 1),
65
+ exampleUse = _useExample2[0];
52
66
  var modeClass = boxedBorder ? "".concat(blockClass, "--boxed-set") : "".concat(blockClass, "--shadow-set");
53
67
  var handlePrimaryClick = function handlePrimaryClick(e) {
54
68
  if (onPrimaryClick) {
@@ -60,6 +74,14 @@ var ExampleComponent = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
60
74
  onSecondaryClick(e);
61
75
  }
62
76
  };
77
+ var theSecondaryIcon = (0, _react.useRef)(secondaryIcon && _settings.pkg.checkReportFeatureEnabled('ExampleComponent.secondaryIcon') ? secondaryIcon : null);
78
+ (0, _react.useEffect)(function () {
79
+ if (usesExampleHook !== undefined && _settings.pkg.checkReportFeatureEnabled('ExampleComponent.useExample')) {
80
+ setThePrimaryButtonLabel("".concat(primaryButtonLabel, " ").concat(exampleUse.toFixed(1), "s"));
81
+ } else {
82
+ setThePrimaryButtonLabel(primaryButtonLabel);
83
+ }
84
+ }, [primaryButtonLabel, usesExampleHook, exampleUse]);
63
85
  return /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.ButtonSet, (0, _extends2.default)({}, rest, {
64
86
  className: (0, _classnames.default)(blockClass,
65
87
  // Apply the block class to the main HTML element
@@ -72,6 +94,7 @@ var ExampleComponent = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
72
94
  className: "".concat(blockClass, "__secondary-button"),
73
95
  kind: secondaryKind,
74
96
  onClick: handleSecondaryClick,
97
+ renderIcon: theSecondaryIcon.current,
75
98
  disabled: disabled,
76
99
  size: size
77
100
  }, secondaryButtonLabel), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Button, {
@@ -80,7 +103,7 @@ var ExampleComponent = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
80
103
  onClick: handlePrimaryClick,
81
104
  disabled: disabled,
82
105
  size: size
83
- }, primaryButtonLabel));
106
+ }, thePrimaryButtonLabel));
84
107
  });
85
108
 
86
109
  // Return a placeholder if not released and not enabled by feature flag.
@@ -131,6 +154,10 @@ ExampleComponent.propTypes = {
131
154
  * The secondary button label.
132
155
  */
133
156
  secondaryButtonLabel: _propTypes.default.string.isRequired,
157
+ /**
158
+ * The icon to use for the secondary button.
159
+ */
160
+ secondaryIcon: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
134
161
  /**
135
162
  * The kind of button for the secondary button ('secondary' or 'tertiary').
136
163
  */
@@ -142,5 +169,9 @@ ExampleComponent.propTypes = {
142
169
  /**
143
170
  * Optional style settings for the containing node.
144
171
  */
145
- style: _propTypes.default.object
172
+ style: _propTypes.default.object,
173
+ /**
174
+ * Hook example timeout (in seconds) or undefined
175
+ */
176
+ usesExampleHook: _propTypes.default.number
146
177
  };
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _react = require("react");
10
+ var _settings = require("../../settings");
11
+ /**
12
+ * Copyright IBM Corp. 2020, 2021
13
+ *
14
+ * This source code is licensed under the Apache-2.0 license found in the
15
+ * LICENSE file in the root directory of this source tree.
16
+ */
17
+
18
+ var useExample = function useExample(initialTime) {
19
+ // NOTE: hooks cannot be called conditionally.
20
+ //
21
+ // ** If the hook uses other hooks then they must be called,
22
+ // ** this could lead to unexpected behavior.
23
+ // ** As some hooks may still be called even if the condition is false.
24
+
25
+ var _useState = (0, _react.useState)(
26
+ // Disable hook in a safe way if possible, else use despite feature disabled.
27
+ // Either a console error or warning will be logged.
28
+ initialTime),
29
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
30
+ time = _useState2[0],
31
+ setTime = _useState2[1];
32
+
33
+ // Use of the feature flag to
34
+ var feature = 'ExampleComponent.useExample';
35
+ var tryFeature = initialTime !== undefined;
36
+ var featureEnabled = tryFeature && _settings.pkg.checkReportFeatureEnabled(feature);
37
+ if (tryFeature && !featureEnabled) {
38
+ // Output a useful message if the feature is disabled.
39
+ console.warn("Disabled feature \"".concat(feature, "\" does not change the initialTime."));
40
+ }
41
+
42
+ // Actual hook is code is below
43
+ (0, _react.useEffect)(function () {
44
+ if (!featureEnabled) {
45
+ return;
46
+ }
47
+
48
+ // turn off all or part of the feature
49
+ if (time > 0) {
50
+ setTimeout(function () {
51
+ setTime(Math.max(0, time - 0.1));
52
+ }, 100);
53
+ }
54
+ }, [featureEnabled, time]);
55
+ return [time];
56
+ };
57
+ var _default = useExample;
58
+ exports.default = _default;
@@ -303,7 +303,9 @@ InlineEditV1.deprecated = {
303
303
  level: 'warn',
304
304
  details: "The v1 version of this component is being deprecated. please switch to the v2 component as soon as possible."
305
305
  };
306
- _settings.pkg.logDeprecated(InlineEditV1, componentName);
306
+
307
+ // needed to show deprecation message but based on host component name
308
+ exports.InlineEditV1 = InlineEditV1 = _settings.pkg.checkComponentEnabled(InlineEditV1, 'InlineEdit');
307
309
 
308
310
  // The types and DocGen commentary for the component props,
309
311
  // in alphabetical order (for consistency).
@@ -49,16 +49,16 @@ var NonLinearReading = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
49
49
  });
50
50
  };
51
51
  return /*#__PURE__*/_react.default.createElement("span", (0, _extends2.default)({}, rest, {
52
- className: (0, _classnames.default)(blockClass, className),
52
+ className: (0, _classnames.default)(blockClass, "".concat(blockClass, "__").concat(theme), className),
53
53
  ref: ref,
54
54
  role: "main"
55
55
  }, (0, _devtools.getDevtoolsProps)(componentName)), ' ', /*#__PURE__*/_react.default.createElement("button", {
56
56
  type: "button",
57
57
  "aria-expanded": isOpen,
58
- className: (0, _classnames.default)("".concat(blockClass, "__term-").concat(theme), [isOpen ? ["".concat(blockClass, "__term-").concat(theme, "--open")] : ["".concat(blockClass, "__term-").concat(theme, "--closed")]]),
58
+ className: (0, _classnames.default)("".concat(blockClass, "__keyword"), [isOpen ? ["".concat(blockClass, "__keyword-open")] : ["".concat(blockClass, "__keyword-closed")]]),
59
59
  onClick: handleToggle
60
- }, children, isOpen && /*#__PURE__*/_react.default.createElement(_iconsReact.ChevronUp16, null)), ' ', isOpen && /*#__PURE__*/_react.default.createElement("span", {
61
- className: "".concat(blockClass, "--body-").concat(theme)
60
+ }, children, /*#__PURE__*/_react.default.createElement(_iconsReact.ChevronDown16, null)), ' ', isOpen && /*#__PURE__*/_react.default.createElement("span", {
61
+ className: "".concat(blockClass, "__body")
62
62
  }, definition), ' ');
63
63
  });
64
64
 
@@ -72,7 +72,7 @@ NonLinearReading.displayName = componentName;
72
72
  // See https://www.npmjs.com/package/prop-types#usage.
73
73
  NonLinearReading.propTypes = {
74
74
  /**
75
- * The term of the component appears as a pill.
75
+ * The keyword of the component appears as a pill.
76
76
  */
77
77
  children: _propTypes.default.node.isRequired,
78
78
  /**
@@ -80,7 +80,7 @@ NonLinearReading.propTypes = {
80
80
  */
81
81
  className: _propTypes.default.string,
82
82
  /**
83
- * The content that appears when the term is toggled open.
83
+ * The content that appears when the keyword is toggled open.
84
84
  */
85
85
  definition: _propTypes.default.node.isRequired,
86
86
  /**