@carbon/ibm-products 2.41.0 → 2.41.1-canary.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. package/css/index-full-carbon.css +6 -0
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +1 -1
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +6 -0
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +1 -1
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +6 -0
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +1 -1
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +6 -0
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +1 -1
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/Coachmark/Coachmark.js +2 -1
  18. package/es/components/CreateTearsheet/CreateTearsheetStep.js +30 -6
  19. package/es/components/Datagrid/Datagrid/DatagridContent.js +21 -1
  20. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +12 -2
  21. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.d.ts +3 -3
  22. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +5 -5
  23. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.d.ts +3 -1
  24. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +12 -3
  25. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +7 -0
  26. package/es/components/Datagrid/useCustomizeColumns.js +0 -4
  27. package/es/components/Datagrid/useEditableCell.js +1 -1
  28. package/es/components/Datagrid/useFocusRowExpander.js +1 -1
  29. package/es/components/Datagrid/useInlineEdit.d.ts +1 -1
  30. package/es/components/Datagrid/useInlineEdit.js +9 -16
  31. package/es/components/EditUpdateCards/EditUpdateCards.d.ts +4 -3
  32. package/es/components/FeatureFlags/index.d.ts +37 -0
  33. package/es/components/FeatureFlags/index.js +151 -0
  34. package/es/components/ProductiveCard/ProductiveCard.d.ts +115 -2
  35. package/es/components/ProductiveCard/ProductiveCard.js +9 -9
  36. package/es/components/TagOverflow/TagOverflowModal.d.ts +34 -28
  37. package/es/components/TagOverflow/TagOverflowModal.js +4 -4
  38. package/es/components/index.d.ts +1 -0
  39. package/es/feature-flags.d.ts +1 -0
  40. package/es/global/js/hooks/usePortalTarget.js +4 -2
  41. package/es/index.js +1 -0
  42. package/lib/components/Coachmark/Coachmark.js +2 -1
  43. package/lib/components/CreateTearsheet/CreateTearsheetStep.js +29 -5
  44. package/lib/components/Datagrid/Datagrid/DatagridContent.js +49 -29
  45. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +13 -19
  46. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.d.ts +3 -3
  47. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +5 -5
  48. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.d.ts +3 -1
  49. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +12 -3
  50. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +7 -0
  51. package/lib/components/Datagrid/useCustomizeColumns.js +0 -4
  52. package/lib/components/Datagrid/useEditableCell.js +1 -1
  53. package/lib/components/Datagrid/useFocusRowExpander.js +1 -1
  54. package/lib/components/Datagrid/useInlineEdit.d.ts +1 -1
  55. package/lib/components/Datagrid/useInlineEdit.js +8 -15
  56. package/lib/components/EditUpdateCards/EditUpdateCards.d.ts +4 -3
  57. package/lib/components/FeatureFlags/index.d.ts +37 -0
  58. package/lib/components/FeatureFlags/index.js +162 -0
  59. package/lib/components/ProductiveCard/ProductiveCard.d.ts +115 -2
  60. package/lib/components/ProductiveCard/ProductiveCard.js +9 -9
  61. package/lib/components/TagOverflow/TagOverflowModal.d.ts +34 -28
  62. package/lib/components/TagOverflow/TagOverflowModal.js +2 -2
  63. package/lib/components/index.d.ts +1 -0
  64. package/lib/feature-flags.d.ts +1 -0
  65. package/lib/global/js/hooks/usePortalTarget.js +4 -2
  66. package/lib/index.js +4 -0
  67. package/package.json +7 -3
  68. package/scss/components/Datagrid/styles/_useInlineEdit.scss +6 -0
@@ -1,31 +1,37 @@
1
- export function TagOverflowModal({ allTags, className, title, onClose, open, overflowType, portalTarget: portalTargetIn, searchLabel, searchPlaceholder, ...rest }: {
2
- [x: string]: any;
3
- allTags: any;
4
- className: any;
5
- title: any;
6
- onClose: any;
7
- open: any;
8
- overflowType: any;
9
- portalTarget: any;
10
- searchLabel?: string | undefined;
11
- searchPlaceholder: any;
12
- }): any;
13
- export namespace TagOverflowModal {
14
- export namespace propTypes {
15
- let allTags: PropTypes.Requireable<(PropTypes.InferProps<{
1
+ /// <reference path="../../../src/custom-typings/index.d.ts" />
2
+ import React, { ReactNode } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import { Tag } from '@carbon/react';
5
+ interface TagType {
6
+ label: string;
7
+ }
8
+ type AllTags = (TagType & Omit<React.ComponentProps<Tag>, 'filter'>)[];
9
+ interface TagOverflowModalProps {
10
+ allTags?: AllTags;
11
+ className?: string;
12
+ onClose?: () => void;
13
+ open?: boolean;
14
+ overflowType?: 'default' | 'tag';
15
+ portalTarget?: ReactNode;
16
+ searchLabel?: string;
17
+ searchPlaceholder?: string;
18
+ title?: string;
19
+ }
20
+ export declare const TagOverflowModal: {
21
+ ({ allTags, className, title, onClose, open, overflowType, portalTarget: portalTargetIn, searchLabel, searchPlaceholder, ...rest }: TagOverflowModalProps): any;
22
+ propTypes: {
23
+ allTags: PropTypes.Requireable<(PropTypes.InferProps<{
16
24
  label: PropTypes.Validator<string>;
17
25
  }> | null | undefined)[]>;
18
- let className: PropTypes.Requireable<string>;
19
- let onClose: PropTypes.Requireable<(...args: any[]) => any>;
20
- let open: PropTypes.Requireable<boolean>;
21
- let overflowType: PropTypes.Requireable<string>;
22
- let portalTarget: PropTypes.Requireable<PropTypes.ReactNodeLike>;
23
- let searchLabel: PropTypes.Requireable<string>;
24
- let searchPlaceholder: PropTypes.Requireable<string>;
25
- let title: PropTypes.Requireable<string>;
26
- }
27
- export { componentName as displayName };
28
- }
29
- import PropTypes from 'prop-types';
30
- declare const componentName: "TagOverflowModal";
26
+ className: PropTypes.Requireable<string>;
27
+ onClose: PropTypes.Requireable<(...args: any[]) => any>;
28
+ open: PropTypes.Requireable<boolean>;
29
+ overflowType: PropTypes.Requireable<string>;
30
+ portalTarget: PropTypes.Requireable<PropTypes.ReactNodeLike>;
31
+ searchLabel: PropTypes.Requireable<string>;
32
+ searchPlaceholder: PropTypes.Requireable<string>;
33
+ title: PropTypes.Requireable<string>;
34
+ };
35
+ displayName: string;
36
+ };
31
37
  export {};
@@ -51,13 +51,13 @@ var TagOverflowModal = function TagOverflowModal(_ref) {
51
51
  setSearch = _useState2[1];
52
52
  var renderPortalUse = usePortalTarget.usePortalTarget(portalTargetIn);
53
53
  var getFilteredItems = function getFilteredItems() {
54
- if (open && search) {
54
+ if (open && search && allTags) {
55
55
  return allTags.filter(function (tag) {
56
56
  var _tag$label;
57
57
  return (_tag$label = tag.label) === null || _tag$label === void 0 || (_tag$label = _tag$label.toLocaleLowerCase()) === null || _tag$label === void 0 ? void 0 : _tag$label.includes(search.toLocaleLowerCase());
58
58
  });
59
59
  }
60
- return allTags;
60
+ return allTags || [];
61
61
  };
62
62
  var handleSearch = function handleSearch(evt) {
63
63
  setSearch(evt.target.value || '');
@@ -69,3 +69,4 @@ export { Guidebanner, GuidebannerElement, GuidebannerElementButton, GuidebannerE
69
69
  export { InlineTip, InlineTipButton, InlineTipLink } from "./InlineTip";
70
70
  export { DescriptionList, DescriptionListBody, DescriptionListCell, DescriptionListRow } from "./DescriptionList";
71
71
  export { FilterPanel, FilterPanelAccordion, FilterPanelAccordionItem, FilterPanelCheckbox, FilterPanelCheckboxWithOverflow, FilterPanelGroup, FilterPanelLabel, FilterPanelSearch } from "./FilterPanel";
72
+ export { FeatureFlags as unstable_FeatureFlags, useFeatureFlag as unstable_useFeatureFlag, useFeatureFlags as unstable_useFeatureFlags } from "./FeatureFlags";
@@ -0,0 +1 @@
1
+ export {};
@@ -13,8 +13,10 @@ var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHel
13
13
  var React = require('react');
14
14
  var settings = require('../../../settings.js');
15
15
  var reactDom = require('react-dom');
16
+ var index = require('../../../components/FeatureFlags/index.js');
16
17
 
17
18
  var usePortalTarget = function usePortalTarget(portalTargetIn) {
19
+ var enablePortalTarget = index.useFeatureFlag('default-portal-target-body');
18
20
  var _useState = React.useState(null),
19
21
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
20
22
  portalTarget = _useState2[0],
@@ -23,11 +25,11 @@ var usePortalTarget = function usePortalTarget(portalTargetIn) {
23
25
  if (portalTargetIn) {
24
26
  setPortalTarget(portalTargetIn);
25
27
  } else {
26
- if (settings.pkg.isFeatureEnabled('default-portal-target-body')) {
28
+ if (settings.pkg.isFeatureEnabled('default-portal-target-body') || enablePortalTarget) {
27
29
  setPortalTarget(document.body);
28
30
  }
29
31
  }
30
- }, [portalTargetIn]);
32
+ }, [portalTargetIn, enablePortalTarget]);
31
33
  var renderPortalUse = React.useCallback(function (children) {
32
34
  return portalTarget ? /*#__PURE__*/reactDom.createPortal(children, portalTarget) : children;
33
35
  }, [portalTarget]);
package/lib/index.js CHANGED
@@ -137,6 +137,7 @@ var FilterPanelLabel = require('./components/FilterPanel/FilterPanelLabel/Filter
137
137
  var FilterPanelSearch = require('./components/FilterPanel/FilterPanelSearch/FilterPanelSearch.js');
138
138
  var ConditionBuilder = require('./components/ConditionBuilder/ConditionBuilder.js');
139
139
  var GetStartedCard = require('./components/GetStartedCard/GetStartedCard.js');
140
+ var index$2 = require('./components/FeatureFlags/index.js');
140
141
 
141
142
 
142
143
 
@@ -581,3 +582,6 @@ Object.defineProperty(exports, 'GetStartedCard', {
581
582
  enumerable: true,
582
583
  get: function () { return GetStartedCard.GetStartedCard; }
583
584
  });
585
+ exports.unstable_FeatureFlags = index$2.FeatureFlags;
586
+ exports.unstable_useFeatureFlag = index$2.useFeatureFlag;
587
+ exports.unstable_useFeatureFlags = index$2.useFeatureFlags;
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": "2.41.0",
4
+ "version": "2.41.1-canary.11+b54cbad87",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -17,7 +17,10 @@
17
17
  "sideEffects": [
18
18
  "**/global/js/utils/props-helper.js",
19
19
  "**/*.css",
20
- "**/*.scss"
20
+ "**/*.scss",
21
+ "es/feature-flags.js",
22
+ "lib/feature-flags.js",
23
+ "src/feature-flags.js"
21
24
  ],
22
25
  "files": [
23
26
  "css",
@@ -92,6 +95,7 @@
92
95
  },
93
96
  "dependencies": {
94
97
  "@babel/runtime": "^7.23.9",
98
+ "@carbon/feature-flags": "^0.20.0",
95
99
  "@carbon/ibm-products-styles": "^2.38.0",
96
100
  "@carbon/telemetry": "^0.1.0",
97
101
  "@dnd-kit/core": "^6.0.8",
@@ -116,5 +120,5 @@
116
120
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
117
121
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
118
122
  },
119
- "gitHead": "51b3c237bbf5923c8b9274f51077b5deec132fb6"
123
+ "gitHead": "b54cbad876d63df0c280bcd0a843eee7199bf3f7"
120
124
  }
@@ -80,6 +80,12 @@ $row-heights: (
80
80
  align-items: center;
81
81
  }
82
82
 
83
+ .#{variables.$block-class}__static--outer-cell {
84
+ display: flex;
85
+ height: -webkit-fill-available;
86
+ align-items: center;
87
+ }
88
+
83
89
  .#{variables.$block-class}__inline-edit--outer-cell-button {
84
90
  width: 100%;
85
91
  height: calc(100% + 2px); // account for borders