@carbon/ibm-products 2.37.0 → 2.38.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. package/css/index-without-carbon-released-only.css +218 -0
  2. package/css/index-without-carbon-released-only.css.map +1 -1
  3. package/css/index-without-carbon-released-only.min.css +1 -1
  4. package/css/index-without-carbon-released-only.min.css.map +1 -1
  5. package/css/index.css +218 -0
  6. package/css/index.css.map +1 -1
  7. package/css/index.min.css +1 -1
  8. package/css/index.min.css.map +1 -1
  9. package/es/components/ActionSet/ActionSet.js +3 -2
  10. package/es/components/Checklist/Checklist.js +10 -10
  11. package/es/components/Checklist/ChecklistChart.d.ts +1 -1
  12. package/es/components/Checklist/ChecklistChart.js +6 -30
  13. package/es/components/Coachmark/Coachmark.d.ts +65 -2
  14. package/es/components/Coachmark/Coachmark.js +7 -10
  15. package/es/components/Coachmark/CoachmarkDragbar.d.ts +40 -2
  16. package/es/components/Coachmark/CoachmarkDragbar.js +3 -1
  17. package/es/components/Coachmark/CoachmarkHeader.d.ts +27 -2
  18. package/es/components/Coachmark/CoachmarkHeader.js +0 -1
  19. package/es/components/Coachmark/CoachmarkOverlay.d.ts +42 -2
  20. package/es/components/Coachmark/CoachmarkOverlay.js +18 -15
  21. package/es/components/Coachmark/CoachmarkTagline.d.ts +27 -2
  22. package/es/components/Coachmark/CoachmarkTagline.js +0 -1
  23. package/es/components/Coachmark/utils/enums.d.ts +20 -20
  24. package/es/components/Coachmark/utils/enums.js +22 -20
  25. package/es/components/CoachmarkFixed/CoachmarkFixed.d.ts +42 -2
  26. package/es/components/CoachmarkFixed/CoachmarkFixed.js +4 -2
  27. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +2 -1
  28. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +25 -23
  29. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +2 -2
  30. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +14 -24
  31. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +2 -0
  32. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +4 -1
  33. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +3 -3
  34. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +11 -11
  35. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +5 -3
  36. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +54 -44
  37. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +14 -8
  38. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +5 -2
  39. package/es/components/DataSpreadsheet/hooks/useMoveActiveCell.js +2 -1
  40. package/es/components/Datagrid/Datagrid/DatagridContent.d.ts +1 -0
  41. package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -0
  42. package/es/components/Datagrid/useSkeletonRows.d.ts +1 -1
  43. package/es/components/Datagrid/useSkeletonRows.js +11 -3
  44. package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.d.ts +19 -2
  45. package/es/components/SearchBar/SearchBar.d.ts +10 -1
  46. package/es/components/SearchBar/SearchBar.js +26 -20
  47. package/es/components/TagSet/TagSet.d.ts +87 -3
  48. package/es/components/TagSet/TagSet.js +20 -9
  49. package/es/components/TagSet/TagSetModal.d.ts +32 -26
  50. package/es/components/TagSet/TagSetModal.js +5 -5
  51. package/es/components/TagSet/TagSetOverflow.d.ts +45 -2
  52. package/es/components/TagSet/TagSetOverflow.js +14 -12
  53. package/es/components/WebTerminal/WebTerminal.js +2 -2
  54. package/es/components/WebTerminal/WebTerminalContentWrapper.d.ts +15 -2
  55. package/es/components/WebTerminal/hooks/index.d.ts +16 -11
  56. package/es/components/WebTerminal/hooks/index.js +1 -1
  57. package/es/global/js/package-settings.d.ts +1 -1
  58. package/es/global/js/package-settings.js +1 -1
  59. package/es/node_modules/@carbon/colors/es/index.js +4 -1
  60. package/es/settings.d.ts +1 -1
  61. package/lib/components/ActionSet/ActionSet.js +2 -1
  62. package/lib/components/Checklist/Checklist.js +10 -10
  63. package/lib/components/Checklist/ChecklistChart.d.ts +1 -1
  64. package/lib/components/Checklist/ChecklistChart.js +6 -30
  65. package/lib/components/Coachmark/Coachmark.d.ts +65 -2
  66. package/lib/components/Coachmark/Coachmark.js +6 -9
  67. package/lib/components/Coachmark/CoachmarkDragbar.d.ts +40 -2
  68. package/lib/components/Coachmark/CoachmarkDragbar.js +3 -1
  69. package/lib/components/Coachmark/CoachmarkHeader.d.ts +27 -2
  70. package/lib/components/Coachmark/CoachmarkHeader.js +0 -1
  71. package/lib/components/Coachmark/CoachmarkOverlay.d.ts +42 -2
  72. package/lib/components/Coachmark/CoachmarkOverlay.js +18 -15
  73. package/lib/components/Coachmark/CoachmarkTagline.d.ts +27 -2
  74. package/lib/components/Coachmark/CoachmarkTagline.js +0 -1
  75. package/lib/components/Coachmark/utils/enums.d.ts +20 -20
  76. package/lib/components/Coachmark/utils/enums.js +22 -20
  77. package/lib/components/CoachmarkFixed/CoachmarkFixed.d.ts +42 -2
  78. package/lib/components/CoachmarkFixed/CoachmarkFixed.js +4 -2
  79. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +2 -1
  80. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +25 -23
  81. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +2 -2
  82. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +13 -23
  83. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +2 -0
  84. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +4 -1
  85. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +3 -3
  86. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +11 -11
  87. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +5 -3
  88. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +54 -44
  89. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +13 -7
  90. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +5 -2
  91. package/lib/components/DataSpreadsheet/hooks/useMoveActiveCell.js +2 -1
  92. package/lib/components/Datagrid/Datagrid/DatagridContent.d.ts +1 -0
  93. package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -0
  94. package/lib/components/Datagrid/useSkeletonRows.d.ts +1 -1
  95. package/lib/components/Datagrid/useSkeletonRows.js +11 -3
  96. package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.d.ts +19 -2
  97. package/lib/components/SearchBar/SearchBar.d.ts +10 -1
  98. package/lib/components/SearchBar/SearchBar.js +26 -18
  99. package/lib/components/TagSet/TagSet.d.ts +87 -3
  100. package/lib/components/TagSet/TagSet.js +20 -9
  101. package/lib/components/TagSet/TagSetModal.d.ts +32 -26
  102. package/lib/components/TagSet/TagSetModal.js +3 -3
  103. package/lib/components/TagSet/TagSetOverflow.d.ts +45 -2
  104. package/lib/components/TagSet/TagSetOverflow.js +14 -12
  105. package/lib/components/WebTerminal/WebTerminal.js +2 -2
  106. package/lib/components/WebTerminal/WebTerminalContentWrapper.d.ts +15 -2
  107. package/lib/components/WebTerminal/hooks/index.d.ts +16 -11
  108. package/lib/components/WebTerminal/hooks/index.js +1 -1
  109. package/lib/global/js/package-settings.d.ts +1 -1
  110. package/lib/global/js/package-settings.js +1 -1
  111. package/lib/node_modules/@carbon/colors/es/index.js +6 -0
  112. package/lib/settings.d.ts +1 -1
  113. package/package.json +5 -3
  114. package/scss/components/Checklist/_carbon-imports.scss +2 -2
  115. package/scss/components/_index-released-only-with-carbon.scss +2 -1
  116. package/scss/components/_index-released-only.scss +2 -1
  117. package/scss/components/_index-with-carbon.scss +1 -0
  118. package/telemetry.yml +936 -683
@@ -22,7 +22,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
22
22
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
23
23
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
24
24
 
25
- var _excluded = ["className", "clearButtonLabelText", "hideScopesLabel", "labelText", "onChange", "onSubmit", "placeHolderText", "scopes", "scopesTypeLabel", "scopeToString", "selectedScopes", "sortItems", "submitLabel", "translateWithId", "value"];
25
+ var _excluded = ["className", "clearButtonLabelText", "hideScopesLabel", "labelText", "onChange", "onSubmit", "placeholderText", "scopes", "scopesTypeLabel", "scopeToString", "selectedScopes", "sortItems", "submitLabel", "translateWithId", "value"];
26
26
 
27
27
  // The block part of our conventional BEM class names (blockClass__E--M).
28
28
  var blockClass = "".concat(settings.pkg.prefix, "--search-bar");
@@ -48,7 +48,7 @@ exports.SearchBar = /*#__PURE__*/React__default["default"].forwardRef(function (
48
48
  onChange = _ref$onChange === void 0 ? defaults.onChange : _ref$onChange,
49
49
  _ref$onSubmit = _ref.onSubmit,
50
50
  onSubmit = _ref$onSubmit === void 0 ? defaults.onSubmit : _ref$onSubmit,
51
- placeHolderText = _ref.placeHolderText,
51
+ placeholderText = _ref.placeholderText,
52
52
  _ref$scopes = _ref.scopes,
53
53
  scopes = _ref$scopes === void 0 ? [] : _ref$scopes,
54
54
  scopesTypeLabel = _ref.scopesTypeLabel,
@@ -122,30 +122,32 @@ exports.SearchBar = /*#__PURE__*/React__default["default"].forwardRef(function (
122
122
  setText(value);
123
123
  onChange(eventObject);
124
124
  };
125
+ var multiSelectProps = {
126
+ initialSelectedItems: selectedScopes,
127
+ items: scopes,
128
+ itemToString: scopeToString,
129
+ label: scopesTypeLabel,
130
+ sortItems: sortItems,
131
+ translateWithId: translateWithId
132
+ };
125
133
  return /*#__PURE__*/React__default["default"].createElement("form", _rollupPluginBabelHelpers["extends"]({}, rest, {
126
134
  ref: ref
127
135
  }, devtools.getDevtoolsProps(componentName), {
128
136
  className: cx__default["default"](blockClass, className, _rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "--hide-scopes-label"), hideScopesLabel)),
129
137
  onSubmit: handleSubmit
130
- }), scopes !== null && scopes !== void 0 && scopes.length ? /*#__PURE__*/React__default["default"].createElement(react.MultiSelect, {
138
+ }), scopes !== null && scopes !== void 0 && scopes.length ? /*#__PURE__*/React__default["default"].createElement(react.MultiSelect, _rollupPluginBabelHelpers["extends"]({}, multiSelectProps, {
131
139
  id: "".concat(blockClass, "__multi-select"),
132
140
  name: "search-scopes",
133
141
  className: "".concat(blockClass, "__scopes"),
134
- label: scopesTypeLabel,
135
142
  onChange: handleSearchScopeChange,
136
- initialSelectedItems: selectedScopes,
137
- items: scopes,
138
- itemToString: scopeToString,
139
- translateWithId: translateWithId,
140
- sortItems: sortItems,
141
143
  size: "lg"
142
- }) : null, /*#__PURE__*/React__default["default"].createElement(react.Search, {
144
+ })) : null, /*#__PURE__*/React__default["default"].createElement(react.Search, {
143
145
  className: "".concat(blockClass, "__input"),
144
146
  closeButtonLabelText: clearButtonLabelText,
145
147
  labelText: labelText || '',
146
148
  name: "search-input",
147
149
  onChange: handleInputChange,
148
- placeholder: placeHolderText,
150
+ placeholder: placeholderText,
149
151
  value: text,
150
152
  size: "lg"
151
153
  }), /*#__PURE__*/React__default["default"].createElement(react.Button, {
@@ -173,11 +175,19 @@ var conditionalScopePropValidator = function conditionalScopePropValidator(props
173
175
  }
174
176
  return index["default"].string.apply(index["default"], [props, propName, componentName].concat(rest));
175
177
  };
178
+ var deprecatedProps = {
179
+ /**
180
+ * **Deprecated**
181
+ *
182
+ * Provide accessible label text for the scopes MultiSelect.
183
+ */
184
+ titleText: index["default"].string
185
+ };
176
186
 
177
187
  // The types and DocGen commentary for the component props,
178
188
  // in alphabetical order (for consistency).
179
189
  // See https://www.npmjs.com/package/prop-types#usage.
180
- exports.SearchBar.propTypes = {
190
+ exports.SearchBar.propTypes = _rollupPluginBabelHelpers.objectSpread2({
181
191
  /** @type {string} Optional additional class name. */
182
192
  className: index["default"].string,
183
193
  /** @type {string} The label text for the search text input. */
@@ -193,7 +203,7 @@ exports.SearchBar.propTypes = {
193
203
  /** @type {Function} Function handler for when the user submits a search. */
194
204
  onSubmit: index["default"].func,
195
205
  /** @type {string} Placeholder text to be displayed in the search input. */
196
- placeHolderText: index["default"].string.isRequired,
206
+ placeholderText: index["default"].string.isRequired,
197
207
  /** @type {Function} Function to get the text for each scope to display in dropdown. */
198
208
  scopeToString: index["default"].func,
199
209
  /** @type {Array<any>} Array of allowed search scopes. */
@@ -215,14 +225,12 @@ exports.SearchBar.propTypes = {
215
225
 
216
226
  /** @type {string} The label text for the search submit button. */
217
227
  submitLabel: index["default"].string.isRequired,
218
- /**
219
- * Provide accessible label text for the scopes MultiSelect.
220
- */
221
- titleText: index["default"].string,
222
228
  /** @type {func} Callback function for translating MultiSelect's child ListBoxMenuIcon SVG title. */
223
229
  translateWithId: index["default"].func,
224
230
  // eslint-disable-line react/require-default-props
225
231
 
226
232
  /** @type {string} Search query value. */
227
233
  value: index["default"].string
228
- };
234
+ }, deprecatedProps);
235
+
236
+ exports.deprecatedProps = deprecatedProps;
@@ -1,8 +1,92 @@
1
- export let TagSet: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
1
+ import React, { ReactNode, PropsWithChildren } from 'react';
2
+ import { TagBaseProps } from '@carbon/type';
3
+ type Align = 'start' | 'center' | 'end';
4
+ type OverflowAlign = 'top' | 'top-left' | 'top-right' | 'bottom' | 'bottom-left' | 'bottom-right' | 'left' | 'left-bottom' | 'left-top' | 'right' | 'right-bottom' | 'right-top';
5
+ type OverflowType = 'default' | 'tag';
6
+ type TagType = {
7
+ label: string;
8
+ type?: keyof typeof tagTypes;
9
+ } & TagBaseProps;
10
+ interface TagSetProps extends PropsWithChildren {
11
+ /**
12
+ * align the Tags displayed by the TagSet. Default start.
13
+ */
14
+ align?: Align;
15
+ /**
16
+ * label text for the show all search. **Note: Required if more than 10 tags**
17
+ */
18
+ allTagsModalSearchLabel?: string;
19
+ /**
20
+ * placeholder text for the show all search. **Note: Required if more than 10 tags**
21
+ */
22
+ allTagsModalSearchPlaceholderText?: string;
23
+ /**
24
+ * portal target for the all tags modal
25
+ */
26
+ allTagsModalTarget?: ReactNode;
27
+ /**
28
+ * title for the show all modal. **Note: Required if more than 10 tags**
29
+ */
30
+ allTagsModalTitle?: string;
31
+ /**
32
+ * className
33
+ */
34
+ className?: string;
35
+ /**
36
+ * Optional ref for custom resize container to measure available space
37
+ * Default will measure the available space of the TagSet container itself.
38
+ */
39
+ containingElementRef?: React.RefObject<HTMLElement>;
40
+ /**
41
+ * maximum visible tags
42
+ */
43
+ maxVisible?: number;
44
+ /**
45
+ * Specify offset amount for measure available space, only used when `containingElementSelector`
46
+ * is also provided
47
+ */
48
+ measurementOffset?: number;
49
+ /**
50
+ * display tags in multiple lines
51
+ */
52
+ multiline?: boolean;
53
+ /**
54
+ * Handler to get overflow tags
55
+ */
56
+ onOverflowTagChange?: (value: ReactNode) => void;
57
+ /**
58
+ * overflowAlign from the standard tooltip. Default center.
59
+ */
60
+ overflowAlign?: OverflowAlign;
61
+ /**
62
+ * overflowClassName for the tooltip popup
63
+ */
64
+ overflowClassName?: string;
65
+ /**
66
+ * Type of rendering displayed inside of the tag overflow component
67
+ */
68
+ overflowType?: OverflowType;
69
+ /**
70
+ * label for the overflow show all tags link.
71
+ *
72
+ * **Note:** Required if more than 10 tags
73
+ */
74
+ showAllTagsLabel: string;
75
+ /**
76
+ * The tags to be shown in the TagSet. Each tag is specified as an object
77
+ * with properties: **label**\* (required) to supply the tag content, and
78
+ * other properties will be passed to the Carbon Tag component, such as
79
+ * **type**, **disabled**, **ref**, **className** , and any other Tag props.
80
+ *
81
+ * See https://react.carbondesignsystem.com/?path=/docs/components-tag--default
82
+ */
83
+ tags?: TagType[];
84
+ }
85
+ export declare let TagSet: React.ForwardRefExoticComponent<TagSetProps & React.RefAttributes<HTMLDivElement>>;
2
86
  /**
3
87
  * The strings shown in the showAllModal are only shown if we have more than allTagsModalSearchLThreshold
4
88
  * @returns null if no problems
5
89
  */
6
- export const string_required_if_more_than_10_tags: (props: any, propName: any, componentName: any, location: any, propFullName: any, secret: any) => any;
90
+ export declare const string_required_if_more_than_10_tags: (props: any, propName: any, componentName: any, location: any, propFullName: any, secret: any) => any;
91
+ declare const tagTypes: string[];
7
92
  export default TagSet;
8
- import React from 'react';
@@ -41,18 +41,26 @@ var defaults = {
41
41
  overflowType: 'default',
42
42
  onOverflowTagChange: function onOverflowTagChange() {}
43
43
  };
44
+
45
+ // interface TagType extends TagBaseProps
46
+ // {
47
+ // label: string;
48
+ // // we duplicate this prop to improve the DocGen
49
+ // type?: typeof tagTypes[number];
50
+ // }
51
+
44
52
  exports.TagSet = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
45
53
  var _ref$align = _ref.align,
46
- align = _ref$align === void 0 ? defaults.align : _ref$align,
54
+ align = _ref$align === void 0 ? 'start' : _ref$align,
47
55
  allTagsModalTarget = _ref.allTagsModalTarget,
48
56
  className = _ref.className,
49
57
  maxVisible = _ref.maxVisible,
50
58
  multiline = _ref.multiline,
51
59
  _ref$overflowAlign = _ref.overflowAlign,
52
- overflowAlign = _ref$overflowAlign === void 0 ? defaults.overflowAlign : _ref$overflowAlign,
60
+ overflowAlign = _ref$overflowAlign === void 0 ? 'bottom' : _ref$overflowAlign,
53
61
  overflowClassName = _ref.overflowClassName,
54
62
  _ref$overflowType = _ref.overflowType,
55
- overflowType = _ref$overflowType === void 0 ? defaults.overflowType : _ref$overflowType,
63
+ overflowType = _ref$overflowType === void 0 ? 'default' : _ref$overflowType,
56
64
  allTagsModalTitle = _ref.allTagsModalTitle,
57
65
  allTagsModalSearchLabel = _ref.allTagsModalSearchLabel,
58
66
  allTagsModalSearchPlaceholderText = _ref.allTagsModalSearchPlaceholderText,
@@ -82,7 +90,7 @@ exports.TagSet = /*#__PURE__*/React__default["default"].forwardRef(function (_re
82
90
  setShowAllModalOpen = _useState8[1];
83
91
  var localTagSetRef = React.useRef(null);
84
92
  var tagSetRef = ref || localTagSetRef;
85
- var sizingContainerRef = React.useRef();
93
+ var sizingContainerRef = React.useRef(null);
86
94
  var displayedArea = React.useRef(null);
87
95
  var _useState9 = React.useState([]),
88
96
  _useState10 = _rollupPluginBabelHelpers.slicedToArray(_useState9, 2),
@@ -107,7 +115,9 @@ exports.TagSet = /*#__PURE__*/React__default["default"].forwardRef(function (_re
107
115
  key: index,
108
116
  className: "".concat(blockClass, "__sizing-tag"),
109
117
  ref: function ref(el) {
110
- return newSizingTags[index] = el;
118
+ if (el != null) {
119
+ newSizingTags[index] = el;
120
+ }
111
121
  }
112
122
  }, /*#__PURE__*/React__default["default"].createElement(react.Tag, _rollupPluginBabelHelpers["extends"]({}, other, {
113
123
  // ensure id is not duplicated
@@ -164,7 +174,7 @@ exports.TagSet = /*#__PURE__*/React__default["default"].forwardRef(function (_re
164
174
  }, [displayCount, overflowAlign, overflowClassName, overflowType, showAllTagsLabel, tags, onOverflowTagChange, popoverOpen, handleTagOnClose]);
165
175
  var checkFullyVisibleTags = React.useCallback(function () {
166
176
  if (multiline) {
167
- return setDisplayCount(maxVisible);
177
+ return setDisplayCount(maxVisible || 3);
168
178
  }
169
179
 
170
180
  // how many will fit?
@@ -172,7 +182,7 @@ exports.TagSet = /*#__PURE__*/React__default["default"].forwardRef(function (_re
172
182
  if (sizingTags.length > 0) {
173
183
  var optionalContainingElement = containingElementRef === null || containingElementRef === void 0 ? void 0 : containingElementRef.current;
174
184
  var measurementOffsetValue = typeof measurementOffset === 'number' ? measurementOffset : 0;
175
- var spaceAvailable = optionalContainingElement ? optionalContainingElement.offsetWidth - measurementOffsetValue : tagSetRef.current.offsetWidth;
185
+ var spaceAvailable = optionalContainingElement ? optionalContainingElement.offsetWidth - measurementOffsetValue : tagSetRef === null || tagSetRef === void 0 ? void 0 : tagSetRef['current'].offsetWidth;
176
186
  for (var i in sizingTags) {
177
187
  var _sizingTags$i;
178
188
  var tagWidth = ((_sizingTags$i = sizingTags[i]) === null || _sizingTags$i === void 0 ? void 0 : _sizingTags$i.offsetWidth) || 0;
@@ -183,7 +193,7 @@ exports.TagSet = /*#__PURE__*/React__default["default"].forwardRef(function (_re
183
193
  break;
184
194
  }
185
195
  }
186
- if (willFit < sizingTags.length) {
196
+ if (willFit < sizingTags.length && overflowTag.current) {
187
197
  while (willFit > 0 && spaceAvailable < overflowTag.current.offsetWidth) {
188
198
  // Highly unlikely any useful tag is smaller
189
199
  willFit -= 1; // remove one tag
@@ -271,7 +281,7 @@ var TYPES = {
271
281
  outline: 'Outline'
272
282
  };
273
283
  var tagTypes = Object.keys(TYPES);
274
- exports.TagSet.types = tagTypes;
284
+ exports.TagSet['types'] = tagTypes;
275
285
  exports.TagSet.propTypes = {
276
286
  /**
277
287
  * align the Tags displayed by the TagSet. Default start.
@@ -301,6 +311,7 @@ exports.TagSet.propTypes = {
301
311
  * Optional ref for custom resize container to measure available space
302
312
  * Default will measure the available space of the TagSet container itself.
303
313
  */
314
+ /**@ts-ignore */
304
315
  containingElementRef: index["default"].object,
305
316
  /**
306
317
  * maximum visible tags
@@ -1,29 +1,35 @@
1
- export function TagSetModal({ allTags, className, title, onClose, open, 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
- portalTarget: any;
9
- searchLabel?: string | undefined;
10
- searchPlaceholder: any;
11
- }): any;
12
- export namespace TagSetModal {
13
- export namespace propTypes {
14
- 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 TagSetModalProps {
10
+ allTags?: AllTags;
11
+ className?: string;
12
+ onClose?: () => void;
13
+ open?: boolean;
14
+ portalTarget?: ReactNode;
15
+ searchLabel?: string;
16
+ searchPlaceholder?: string;
17
+ title?: string;
18
+ }
19
+ export declare const TagSetModal: {
20
+ ({ allTags, className, title, onClose, open, portalTarget: portalTargetIn, searchLabel, searchPlaceholder, ...rest }: TagSetModalProps): any;
21
+ propTypes: {
22
+ allTags: PropTypes.Requireable<(PropTypes.InferProps<{
15
23
  label: PropTypes.Validator<string>;
16
24
  }> | null | undefined)[]>;
17
- let className: PropTypes.Requireable<string>;
18
- let onClose: PropTypes.Requireable<(...args: any[]) => any>;
19
- let open: PropTypes.Requireable<boolean>;
20
- let portalTarget: PropTypes.Requireable<PropTypes.ReactNodeLike>;
21
- let searchLabel: PropTypes.Requireable<string>;
22
- let searchPlaceholder: PropTypes.Requireable<string>;
23
- let title: PropTypes.Requireable<string>;
24
- }
25
- export { componentName as displayName };
26
- }
27
- import PropTypes from 'prop-types';
28
- declare const componentName: "TagSetModal";
25
+ className: PropTypes.Requireable<string>;
26
+ onClose: PropTypes.Requireable<(...args: any[]) => any>;
27
+ open: PropTypes.Requireable<boolean>;
28
+ portalTarget: PropTypes.Requireable<PropTypes.ReactNodeLike>;
29
+ searchLabel: PropTypes.Requireable<string>;
30
+ searchPlaceholder: PropTypes.Requireable<string>;
31
+ title: PropTypes.Requireable<string>;
32
+ };
33
+ displayName: string;
34
+ };
29
35
  export {};
@@ -56,11 +56,11 @@ var TagSetModal = function TagSetModal(_ref) {
56
56
  React.useEffect(function () {
57
57
  var newFilteredModalTags = [];
58
58
  if (open) {
59
- if (search === '') {
60
- newFilteredModalTags = allTags.slice(0);
59
+ if (search === '' && allTags) {
60
+ newFilteredModalTags = allTags === null || allTags === void 0 ? void 0 : allTags.slice(0);
61
61
  } else {
62
62
  var lCaseSearch = search.toLocaleLowerCase();
63
- allTags.forEach(function (tag) {
63
+ allTags === null || allTags === void 0 || allTags.forEach(function (tag) {
64
64
  var _tag$dataSearch, _tag$label;
65
65
  var dataSearch = (_tag$dataSearch = tag['data-search']) === null || _tag$dataSearch === void 0 || (_tag$dataSearch = _tag$dataSearch.toLocaleLowerCase()) === null || _tag$dataSearch === void 0 ? void 0 : _tag$dataSearch.indexOf(lCaseSearch);
66
66
  var labelSearch = (_tag$label = tag.label) === null || _tag$label === void 0 || (_tag$label = _tag$label.toLocaleLowerCase()) === null || _tag$label === void 0 ? void 0 : _tag$label.indexOf(lCaseSearch);
@@ -1,2 +1,45 @@
1
- export const TagSetOverflow: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
- import React from 'react';
1
+ import React, { ReactNode } from 'react';
2
+ type OverflowAlign = 'top' | 'top-left' | 'top-right' | 'bottom' | 'bottom-left' | 'bottom-right' | 'left' | 'left-bottom' | 'left-top' | 'right' | 'right-bottom' | 'right-top';
3
+ type OverflowType = 'default' | 'tag';
4
+ interface TagSetOverflowProps {
5
+ /**
6
+ * count of overflowTags over which a modal is offered
7
+ */
8
+ allTagsModalSearchThreshold?: number;
9
+ /**
10
+ * className
11
+ */
12
+ className?: string;
13
+ /**
14
+ * function to execute on clicking show all
15
+ */
16
+ onShowAllClick: () => void;
17
+ /**
18
+ * overflowAlign from the standard tooltip
19
+ */
20
+ overflowAlign?: OverflowAlign;
21
+ /** @type {Array<any>}
22
+ * tags shown in overflow
23
+ */
24
+ overflowTags: ReactNode[];
25
+ /**
26
+ * Type of rendering displayed inside of the tag overflow component
27
+ */
28
+ overflowType?: OverflowType;
29
+ /**
30
+ * Open state of the popover
31
+ */
32
+ popoverOpen?: boolean;
33
+ /**
34
+ * Setter function for the popoverOpen state value
35
+ */
36
+ setPopoverOpen?: ((value: boolean) => void) | undefined;
37
+ /**
38
+ * label for the overflow show all tags link
39
+ */
40
+ showAllTagsLabel?: string;
41
+ }
42
+ export declare const TagSetOverflow: React.ForwardRefExoticComponent<TagSetOverflowProps & {
43
+ children?: React.ReactNode;
44
+ } & React.RefAttributes<HTMLSpanElement>>;
45
+ export {};
@@ -28,8 +28,7 @@ var blockClass = "".concat(settings.pkg.prefix, "--tag-set-overflow");
28
28
 
29
29
  // Default values for props
30
30
  var defaults = {
31
- allTagsModalSearchThreshold: 10,
32
- overflowAlign: 'bottom'
31
+ allTagsModalSearchThreshold: 10
33
32
  };
34
33
  var TagSetOverflow = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
35
34
  var _ref$allTagsModalSear = _ref.allTagsModalSearchThreshold,
@@ -37,30 +36,30 @@ var TagSetOverflow = /*#__PURE__*/React__default["default"].forwardRef(function
37
36
  className = _ref.className,
38
37
  onShowAllClick = _ref.onShowAllClick,
39
38
  _ref$overflowAlign = _ref.overflowAlign,
40
- overflowAlign = _ref$overflowAlign === void 0 ? defaults.overflowAlign : _ref$overflowAlign,
39
+ overflowAlign = _ref$overflowAlign === void 0 ? 'bottom' : _ref$overflowAlign,
41
40
  overflowTags = _ref.overflowTags,
42
41
  overflowType = _ref.overflowType,
43
42
  showAllTagsLabel = _ref.showAllTagsLabel,
44
43
  popoverOpen = _ref.popoverOpen,
45
44
  setPopoverOpen = _ref.setPopoverOpen,
46
45
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
47
- var localRef = React.useRef();
46
+ var localRef = React.useRef(null);
48
47
  var overflowTagContent = React.useRef(null);
49
48
  useClickOutside.useClickOutside(ref || localRef, function () {
50
49
  if (popoverOpen) {
51
- setPopoverOpen(false);
50
+ setPopoverOpen === null || setPopoverOpen === void 0 || setPopoverOpen(false);
52
51
  }
53
52
  });
54
53
  var handleShowAllTagsClick = function handleShowAllTagsClick(ev) {
55
54
  ev.stopPropagation();
56
55
  ev.preventDefault();
57
- setPopoverOpen(false);
56
+ setPopoverOpen === null || setPopoverOpen === void 0 || setPopoverOpen(false);
58
57
  onShowAllClick();
59
58
  };
60
59
  var handleEscKeyPress = function handleEscKeyPress(event) {
61
60
  var key = event.key;
62
61
  if (key === 'Escape') {
63
- setPopoverOpen(false);
62
+ setPopoverOpen === null || setPopoverOpen === void 0 || setPopoverOpen(false);
64
63
  }
65
64
  };
66
65
  return /*#__PURE__*/React__default["default"].createElement("span", _rollupPluginBabelHelpers["extends"]({}, rest, {
@@ -76,7 +75,7 @@ var TagSetOverflow = /*#__PURE__*/React__default["default"].forwardRef(function
76
75
  open: popoverOpen
77
76
  }, /*#__PURE__*/React__default["default"].createElement(react.Tag, {
78
77
  onClick: function onClick() {
79
- return setPopoverOpen(!popoverOpen);
78
+ return setPopoverOpen === null || setPopoverOpen === void 0 ? void 0 : setPopoverOpen(!popoverOpen);
80
79
  },
81
80
  className: cx__default["default"]("".concat(blockClass, "__popover-trigger"))
82
81
  }, "+", overflowTags.length), /*#__PURE__*/React__default["default"].createElement(react.PopoverContent, null, /*#__PURE__*/React__default["default"].createElement("div", {
@@ -94,10 +93,12 @@ var TagSetOverflow = /*#__PURE__*/React__default["default"].forwardRef(function
94
93
  if (overflowType === 'default') {
95
94
  tagProps.filter = false;
96
95
  }
97
- return /*#__PURE__*/React__default["default"].createElement("li", {
98
- className: cx__default["default"]("".concat(blockClass, "__tag-item"), _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "__tag-item--default"), overflowType === 'default'), "".concat(blockClass, "__tag-item--tag"), overflowType === 'tag')),
99
- key: index
100
- }, /*#__PURE__*/React__default["default"].cloneElement(tag, tagProps));
96
+ if ( /*#__PURE__*/React__default["default"].isValidElement(tag)) {
97
+ return /*#__PURE__*/React__default["default"].createElement("li", {
98
+ className: cx__default["default"]("".concat(blockClass, "__tag-item"), _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "__tag-item--default"), overflowType === 'default'), "".concat(blockClass, "__tag-item--tag"), overflowType === 'tag')),
99
+ key: index
100
+ }, /*#__PURE__*/React__default["default"].cloneElement(tag, tagProps));
101
+ }
101
102
  })), overflowTags.length > allTagsModalSearchThreshold && /*#__PURE__*/React__default["default"].createElement(react.Link, {
102
103
  className: "".concat(blockClass, "__show-all-tags-link"),
103
104
  href: "",
@@ -126,6 +127,7 @@ TagSetOverflow.propTypes = {
126
127
  /**
127
128
  * tags shown in overflow
128
129
  */
130
+ /**@ts-ignore */
129
131
  overflowTags: index["default"].arrayOf(index["default"].object).isRequired,
130
132
  /**
131
133
  * Type of rendering displayed inside of the tag overflow component
@@ -81,7 +81,7 @@ exports.WebTerminal = /*#__PURE__*/React__default["default"].forwardRef(function
81
81
  */
82
82
  React.useEffect(function () {
83
83
  if (isInitiallyOpen) {
84
- openWebTerminal();
84
+ openWebTerminal === null || openWebTerminal === void 0 || openWebTerminal();
85
85
  }
86
86
  }, []); // eslint-disable-line
87
87
 
@@ -101,7 +101,7 @@ exports.WebTerminal = /*#__PURE__*/React__default["default"].forwardRef(function
101
101
  if (prefersReducedMotion) {
102
102
  setRender(false);
103
103
  }
104
- closeWebTerminal();
104
+ closeWebTerminal === null || closeWebTerminal === void 0 || closeWebTerminal();
105
105
  };
106
106
  return shouldRender ? /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, rest), devtools.getDevtoolsProps(componentName)), {
107
107
  ref: ref,
@@ -1,2 +1,15 @@
1
- export let WebTerminalContentWrapper: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
2
- import React from 'react';
1
+ /**
2
+ * Copyright IBM Corp. 2022, 2022
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React, { ReactNode } from 'react';
8
+ interface WebTerminalContentWrapperProps {
9
+ /**
10
+ * Pass in content as children.
11
+ */
12
+ children: ReactNode | ReactNode[];
13
+ }
14
+ export declare let WebTerminalContentWrapper: React.ForwardRefExoticComponent<WebTerminalContentWrapperProps & React.RefAttributes<HTMLDivElement>>;
15
+ export {};
@@ -1,12 +1,17 @@
1
- export const WebTerminalContext: React.Context<any>;
2
- export function WebTerminalProvider({ children }: {
3
- children: any;
4
- }): import("react/jsx-runtime").JSX.Element;
5
- export namespace WebTerminalProvider {
6
- namespace propTypes {
7
- let children: PropTypes.Validator<NonNullable<NonNullable<PropTypes.ReactNodeLike>>>;
8
- }
1
+ import React, { ReactNode } from 'react';
2
+ export interface WebTerminalContextType {
3
+ open?: boolean;
4
+ openWebTerminal?: () => void;
5
+ closeWebTerminal?: () => void;
6
+ toggleWebTerminal?: () => void;
9
7
  }
10
- export function useWebTerminal(): any;
11
- import React from 'react';
12
- import PropTypes from 'prop-types';
8
+ export declare const WebTerminalContext: React.Context<WebTerminalContextType>;
9
+ interface WebTerminalProviderProps {
10
+ /**
11
+ * Provide your own terminal component as children to show up in the web terminal
12
+ */
13
+ children: ReactNode | ReactNode[];
14
+ }
15
+ export declare let WebTerminalProvider: React.FC<WebTerminalProviderProps>;
16
+ export declare const useWebTerminal: () => WebTerminalContextType;
17
+ export {};
@@ -18,7 +18,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
18
18
 
19
19
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
20
 
21
- var WebTerminalContext = /*#__PURE__*/React.createContext();
21
+ var WebTerminalContext = /*#__PURE__*/React.createContext({});
22
22
  var componentName = 'WebTerminalProvider';
23
23
  exports.WebTerminalProvider = function WebTerminalProvider(_ref) {
24
24
  var children = _ref.children;
@@ -24,6 +24,7 @@ declare namespace defaults {
24
24
  let AboutModal: boolean;
25
25
  let APIKeyModal: boolean;
26
26
  let Cascade: boolean;
27
+ let Checklist: boolean;
27
28
  let CreateModal: boolean;
28
29
  let CreateFullPage: boolean;
29
30
  let CreateFullPageStep: boolean;
@@ -112,7 +113,6 @@ declare namespace defaults {
112
113
  let DescriptionListRow: boolean;
113
114
  let SearchBar: boolean;
114
115
  let UserAvatar: boolean;
115
- let Checklist: boolean;
116
116
  let EmptyStateV2: boolean;
117
117
  let Guidebanner: boolean;
118
118
  let GuidebannerElement: boolean;
@@ -26,6 +26,7 @@ var defaults = {
26
26
  AboutModal: true,
27
27
  APIKeyModal: true,
28
28
  Cascade: true,
29
+ Checklist: true,
29
30
  CreateModal: true,
30
31
  CreateFullPage: true,
31
32
  CreateFullPageStep: true,
@@ -121,7 +122,6 @@ var defaults = {
121
122
  /* new component flags here - comment used by generate CLI */
122
123
 
123
124
  // Novice to pro components not yet reviewed and released:
124
- Checklist: false,
125
125
  EmptyStateV2: false,
126
126
  Guidebanner: false,
127
127
  GuidebannerElement: false,
@@ -9,8 +9,14 @@
9
9
 
10
10
  Object.defineProperty(exports, '__esModule', { value: true });
11
11
 
12
+ var purple50 = '#a56eff';
12
13
  var purple70 = '#6929c4';
13
14
  var blue90 = '#001d6c';
15
+ var gray20 = '#e0e0e0';
16
+ var gray70 = '#525252';
14
17
 
15
18
  exports.blue90 = blue90;
19
+ exports.gray20 = gray20;
20
+ exports.gray70 = gray70;
21
+ exports.purple50 = purple50;
16
22
  exports.purple70 = purple70;
package/lib/settings.d.ts CHANGED
@@ -10,6 +10,7 @@ export const pkg: {
10
10
  AboutModal: boolean;
11
11
  APIKeyModal: boolean;
12
12
  Cascade: boolean;
13
+ Checklist: boolean;
13
14
  CreateModal: boolean;
14
15
  CreateFullPage: boolean;
15
16
  CreateFullPageStep: boolean;
@@ -98,7 +99,6 @@ export const pkg: {
98
99
  DescriptionListRow: boolean;
99
100
  SearchBar: boolean;
100
101
  UserAvatar: boolean;
101
- Checklist: boolean;
102
102
  EmptyStateV2: boolean;
103
103
  Guidebanner: boolean;
104
104
  GuidebannerElement: boolean;