@carbon/ibm-products 2.2.0 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (225) hide show
  1. package/css/index-full-carbon.css +965 -434
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +4 -4
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +354 -155
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +2 -2
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +600 -236
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +4 -4
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +516 -293
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +4 -4
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/APIKeyModal/APIKeyModal.docs-page.js +26 -0
  18. package/es/components/AboutModal/AboutModal.docs-page.js +21 -0
  19. package/es/components/AboutModal/AboutModal.js +2 -4
  20. package/es/components/ActionBar/ActionBar.js +2 -6
  21. package/es/components/AddSelect/AddSelectFormControl.js +6 -6
  22. package/es/components/AddSelect/AddSelectRow.js +15 -5
  23. package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +5 -6
  24. package/es/components/ButtonMenu/ButtonMenu.js +4 -4
  25. package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +3 -9
  26. package/es/components/Cascade/Cascade.docs-page.js +22 -0
  27. package/es/components/Cascade/Cascade.js +11 -1
  28. package/es/components/CreateFullPage/CreateFullPage.docs-page.js +39 -0
  29. package/es/components/CreateFullPage/CreateFullPage.js +13 -0
  30. package/es/components/CreateModal/CreateModal.docs-page.js +24 -0
  31. package/es/components/CreateModal/CreateModal.js +7 -0
  32. package/es/components/CreateSidePanel/CreateSidePanel.docs-page.js +18 -0
  33. package/es/components/CreateSidePanel/CreateSidePanel.js +1 -1
  34. package/es/components/CreateTearsheet/CreateTearsheet.docs-page.js +29 -0
  35. package/es/components/DataSpreadsheet/DataSpreadsheet.js +3 -3
  36. package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -1
  37. package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -3
  38. package/es/components/Datagrid/Datagrid/DatagridToolbar.js +25 -10
  39. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +1 -3
  40. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +1 -1
  41. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +39 -47
  42. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +20 -24
  43. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/index.js +2 -2
  44. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilterContext.js +13 -0
  45. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +44 -15
  46. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +16 -30
  47. package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +2 -2
  48. package/es/components/Datagrid/index.js +2 -1
  49. package/es/components/Datagrid/useActionsColumn.js +10 -7
  50. package/es/components/Datagrid/useCustomizeColumns.js +9 -7
  51. package/es/components/Datagrid/useExpandedRow.js +11 -7
  52. package/es/components/Datagrid/useFiltering.js +12 -8
  53. package/es/components/Datagrid/useInlineEdit.js +3 -0
  54. package/es/components/Datagrid/useNestedRows.js +10 -6
  55. package/es/components/Datagrid/useStickyColumn.js +10 -3
  56. package/es/components/Datagrid/utils/DatagridActions.js +12 -20
  57. package/es/components/EditFullPage/EditFullPage.docs-page.js +39 -0
  58. package/es/components/EditFullPage/EditFullPage.js +2 -1
  59. package/es/components/EditSidePanel/EditSidePanel.js +1 -1
  60. package/es/components/EditTearsheet/EditTearsheet.docs-page.js +25 -0
  61. package/es/components/EditTearsheet/EditTearsheet.js +4 -0
  62. package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +1 -1
  63. package/es/components/EditUpdateCards/EditUpdateCards.js +3 -2
  64. package/es/components/EmptyStates/EmptyState.js +4 -0
  65. package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +4 -0
  66. package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +4 -0
  67. package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +4 -0
  68. package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +4 -0
  69. package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +4 -0
  70. package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +4 -0
  71. package/es/components/ExampleComponent/ExampleComponent.docs-page.js +22 -0
  72. package/es/components/ExportModal/ExportModal.js +4 -0
  73. package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
  74. package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
  75. package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
  76. package/es/components/ImportModal/ImportModal.docs-page.js +18 -0
  77. package/es/components/ImportModal/ImportModal.js +13 -6
  78. package/es/components/MultiAddSelect/MultiAddSelect.docs-page.js +17 -0
  79. package/es/components/MultiAddSelect/MultiAddSelect.js +4 -0
  80. package/es/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +2 -17
  81. package/es/components/PageHeader/PageHeader.js +2 -6
  82. package/es/components/PageHeader/PageHeaderUtils.js +2 -2
  83. package/es/components/RemoveModal/RemoveModal.docs-page.js +18 -0
  84. package/es/components/RemoveModal/RemoveModal.js +6 -0
  85. package/es/components/SidePanel/SidePanel.js +1 -3
  86. package/es/components/SingleAddSelect/SingleAddSelect.docs-page.js +15 -0
  87. package/es/components/SingleAddSelect/SingleAddSelect.js +4 -0
  88. package/es/components/StatusIcon/StatusIcon.docs-page.js +17 -0
  89. package/es/components/StatusIcon/StatusIcon.js +10 -0
  90. package/es/components/TagSet/TagSet.js +4 -7
  91. package/es/components/Tearsheet/TearsheetShell.js +11 -6
  92. package/es/components/Toolbar/Toolbar.docs-page.js +14 -0
  93. package/es/components/UserProfileImage/UserProfileImage.docs-page.js +17 -0
  94. package/es/components/UserProfileImage/UserProfileImage.js +14 -3
  95. package/es/components/WebTerminal/WebTerminal.docs-page.js +52 -0
  96. package/es/components/WebTerminal/WebTerminal.js +4 -0
  97. package/es/components/index.js +1 -1
  98. package/es/global/js/hooks/useCreateComponentStepChange.js +16 -15
  99. package/es/global/js/hooks/useResizeObserver.js +14 -28
  100. package/es/global/js/package-settings.js +14 -1
  101. package/es/global/js/utils/StoryDocsPage.js +218 -0
  102. package/es/global/js/utils/story-helper.js +108 -6
  103. package/lib/components/APIKeyModal/APIKeyModal.docs-page.js +37 -0
  104. package/lib/components/AboutModal/AboutModal.docs-page.js +32 -0
  105. package/lib/components/AboutModal/AboutModal.js +2 -4
  106. package/lib/components/ActionBar/ActionBar.js +2 -6
  107. package/lib/components/AddSelect/AddSelectFormControl.js +6 -6
  108. package/lib/components/AddSelect/AddSelectRow.js +15 -5
  109. package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +5 -6
  110. package/lib/components/ButtonMenu/ButtonMenu.js +4 -4
  111. package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +3 -9
  112. package/lib/components/Cascade/Cascade.docs-page.js +33 -0
  113. package/lib/components/Cascade/Cascade.js +11 -1
  114. package/lib/components/CreateFullPage/CreateFullPage.docs-page.js +50 -0
  115. package/lib/components/CreateFullPage/CreateFullPage.js +13 -0
  116. package/lib/components/CreateModal/CreateModal.docs-page.js +35 -0
  117. package/lib/components/CreateModal/CreateModal.js +7 -0
  118. package/lib/components/CreateSidePanel/CreateSidePanel.docs-page.js +29 -0
  119. package/lib/components/CreateSidePanel/CreateSidePanel.js +1 -1
  120. package/lib/components/CreateTearsheet/CreateTearsheet.docs-page.js +40 -0
  121. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +3 -3
  122. package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -1
  123. package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -3
  124. package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +25 -10
  125. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +1 -3
  126. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +1 -1
  127. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +37 -45
  128. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +20 -24
  129. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/index.js +6 -6
  130. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilterContext.js +20 -0
  131. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +42 -13
  132. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +16 -30
  133. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +2 -2
  134. package/lib/components/Datagrid/index.js +8 -1
  135. package/lib/components/Datagrid/useActionsColumn.js +12 -7
  136. package/lib/components/Datagrid/useCustomizeColumns.js +10 -8
  137. package/lib/components/Datagrid/useExpandedRow.js +9 -6
  138. package/lib/components/Datagrid/useFiltering.js +10 -7
  139. package/lib/components/Datagrid/useInlineEdit.js +3 -0
  140. package/lib/components/Datagrid/useNestedRows.js +9 -6
  141. package/lib/components/Datagrid/useStickyColumn.js +10 -3
  142. package/lib/components/Datagrid/utils/DatagridActions.js +49 -57
  143. package/lib/components/EditFullPage/EditFullPage.docs-page.js +50 -0
  144. package/lib/components/EditFullPage/EditFullPage.js +2 -1
  145. package/lib/components/EditSidePanel/EditSidePanel.js +1 -1
  146. package/lib/components/EditTearsheet/EditTearsheet.docs-page.js +36 -0
  147. package/lib/components/EditTearsheet/EditTearsheet.js +4 -0
  148. package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +1 -1
  149. package/lib/components/EditUpdateCards/EditUpdateCards.js +3 -2
  150. package/lib/components/EmptyStates/EmptyState.js +4 -0
  151. package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +4 -0
  152. package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +4 -0
  153. package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +4 -0
  154. package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +4 -0
  155. package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +4 -0
  156. package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +4 -0
  157. package/lib/components/ExampleComponent/ExampleComponent.docs-page.js +33 -0
  158. package/lib/components/ExportModal/ExportModal.js +4 -0
  159. package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
  160. package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
  161. package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
  162. package/lib/components/ImportModal/ImportModal.docs-page.js +26 -0
  163. package/lib/components/ImportModal/ImportModal.js +13 -6
  164. package/lib/components/MultiAddSelect/MultiAddSelect.docs-page.js +25 -0
  165. package/lib/components/MultiAddSelect/MultiAddSelect.js +4 -0
  166. package/lib/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +2 -17
  167. package/lib/components/PageHeader/PageHeader.js +2 -6
  168. package/lib/components/PageHeader/PageHeaderUtils.js +2 -2
  169. package/lib/components/RemoveModal/RemoveModal.docs-page.js +26 -0
  170. package/lib/components/RemoveModal/RemoveModal.js +6 -0
  171. package/lib/components/SidePanel/SidePanel.js +1 -3
  172. package/lib/components/SingleAddSelect/SingleAddSelect.docs-page.js +23 -0
  173. package/lib/components/SingleAddSelect/SingleAddSelect.js +4 -0
  174. package/lib/components/StatusIcon/StatusIcon.docs-page.js +28 -0
  175. package/lib/components/StatusIcon/StatusIcon.js +10 -0
  176. package/lib/components/TagSet/TagSet.js +4 -7
  177. package/lib/components/Tearsheet/TearsheetShell.js +11 -6
  178. package/lib/components/Toolbar/Toolbar.docs-page.js +25 -0
  179. package/lib/components/UserProfileImage/UserProfileImage.docs-page.js +28 -0
  180. package/lib/components/UserProfileImage/UserProfileImage.js +14 -3
  181. package/lib/components/WebTerminal/WebTerminal.docs-page.js +63 -0
  182. package/lib/components/WebTerminal/WebTerminal.js +4 -0
  183. package/lib/components/index.js +6 -0
  184. package/lib/global/js/hooks/useCreateComponentStepChange.js +16 -15
  185. package/lib/global/js/hooks/useResizeObserver.js +13 -27
  186. package/lib/global/js/package-settings.js +14 -1
  187. package/lib/global/js/utils/StoryDocsPage.js +225 -0
  188. package/lib/global/js/utils/story-helper.js +115 -7
  189. package/package.json +4 -4
  190. package/scss/components/AddSelect/_add-select.scss +10 -6
  191. package/scss/components/BreadcrumbWithOverflow/_breadcrumb-with-overflow.scss +0 -1
  192. package/scss/components/ButtonMenu/_button-menu.scss +32 -1
  193. package/scss/components/Cascade/_storybook-styles.scss +3 -2
  194. package/scss/components/CreateFullPage/_create-full-page.scss +3 -3
  195. package/scss/components/CreateModal/_create-modal.scss +3 -3
  196. package/scss/components/CreateSidePanel/_create-side-panel.scss +4 -4
  197. package/scss/components/CreateTearsheet/_create-tearsheet.scss +2 -2
  198. package/scss/components/CreateTearsheet/_storybook-styles.scss +1 -1
  199. package/scss/components/CreateTearsheetNarrow/_create-tearsheet-narrow.scss +2 -2
  200. package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +5 -5
  201. package/scss/components/DataSpreadsheet/_storybook-styles.scss +6 -0
  202. package/scss/components/Datagrid/_datagrid.scss +4 -2
  203. package/scss/components/Datagrid/_storybook-styles.scss +18 -4
  204. package/scss/components/Datagrid/styles/_datagrid.scss +26 -13
  205. package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +7 -0
  206. package/scss/components/Datagrid/styles/addons/_FilterPanel.scss +4 -0
  207. package/scss/components/EditSidePanel/_edit-side-panel.scss +2 -2
  208. package/scss/components/EditTearsheet/_edit-tearsheet.scss +2 -2
  209. package/scss/components/EditTearsheet/_storybook-styles.scss +1 -1
  210. package/scss/components/ImportModal/_import-modal.scss +1 -1
  211. package/scss/components/NotificationsPanel/_notifications-panel.scss +3 -3
  212. package/scss/components/NotificationsPanel/_storybook-styles.scss +10 -2
  213. package/scss/components/OptionsTile/_storybook-styles.scss +1 -1
  214. package/scss/components/PageHeader/_page-header.scss +4 -5
  215. package/scss/components/PageHeader/_storybook-styles.scss +24 -14
  216. package/scss/components/Saving/_saving.scss +1 -1
  217. package/scss/components/SidePanel/_side-panel.scss +3 -5
  218. package/scss/components/TagSet/_tag-set.scss +1 -1
  219. package/scss/components/Tearsheet/_tearsheet.scss +9 -8
  220. package/scss/components/UserProfileImage/_user-profile-image.scss +2 -2
  221. package/scss/components/WebTerminal/_storybook-styles.scss +11 -1
  222. package/scss/global/styles/_display-box.scss +1 -0
  223. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useInitialStateFromFilters.js +0 -21
  224. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useInitialStateFromFilters.js +0 -30
  225. package/scss/components/HTTPErrors/_storybook-styles.scss +0 -6
@@ -0,0 +1,26 @@
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 _react = _interopRequireDefault(require("react"));
9
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
10
+ var _blocks = require("@storybook/blocks");
11
+ var _storyHelper = require("../../global/js/utils/story-helper");
12
+ var DocsPage = function DocsPage() {
13
+ var _useOf = (0, _blocks.useOf)('meta', ['meta']),
14
+ csfFile = _useOf.csfFile;
15
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
16
+ altGuidelinesHref: [(0, _storyHelper.storyDocsGuidelines)(csfFile), {
17
+ href: 'https://www.carbondesignsystem.com/components/modal/usage',
18
+ label: 'Carbon Modal usage guidelines'
19
+ }, {
20
+ href: 'https://react.carbondesignsystem.com/?path=/docs/modal--default',
21
+ label: 'Carbon Modal documentation'
22
+ }]
23
+ });
24
+ };
25
+ var _default = DocsPage;
26
+ exports.default = _default;
@@ -187,6 +187,13 @@ var ImportModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
187
187
  var inputHandler = function inputHandler(evt) {
188
188
  setImportUrl(evt.target.value);
189
189
  };
190
+ var onCloseHandler = function onCloseHandler() {
191
+ setFiles([]);
192
+ setImportUrl('');
193
+ if (onClose) {
194
+ onClose();
195
+ }
196
+ };
190
197
  var numberOfFiles = files.length;
191
198
  var numberOfValidFiles = files.filter(function (f) {
192
199
  return !f.invalid;
@@ -198,13 +205,13 @@ var ImportModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
198
205
  var blockClass = "".concat(_settings.pkg.prefix, "--import-modal");
199
206
  return /*#__PURE__*/_react.default.createElement(_react2.ComposedModal, (0, _extends2.default)({}, rest, _objectSpread({
200
207
  open: open,
201
- ref: ref,
202
- onClose: onClose
208
+ ref: ref
203
209
  }, (0, _devtools.getDevtoolsProps)(componentName)), {
204
210
  "aria-label": title,
205
211
  className: (0, _classnames.default)(blockClass, className),
206
212
  size: "sm",
207
- preventCloseOnClickOutside: true
213
+ preventCloseOnClickOutside: true,
214
+ onClose: onCloseHandler
208
215
  }), /*#__PURE__*/_react.default.createElement(_react2.ModalHeader, {
209
216
  className: "".concat(blockClass, "__header"),
210
217
  title: title
@@ -267,7 +274,7 @@ var ImportModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
267
274
  }, /*#__PURE__*/_react.default.createElement(_react2.Button, {
268
275
  type: "button",
269
276
  kind: "secondary",
270
- onClick: onClose
277
+ onClick: onCloseHandler
271
278
  }, secondaryButtonText), /*#__PURE__*/_react.default.createElement(_react2.Button, {
272
279
  type: "submit",
273
280
  kind: "primary",
@@ -371,11 +378,11 @@ ImportModal.propTypes = {
371
378
  /**
372
379
  * Specify a handler for "submitting" modal. Access the imported file via `file => {}`
373
380
  */
374
- onRequestSubmit: _propTypes.default.func,
381
+ onRequestSubmit: _propTypes.default.func.isRequired,
375
382
  /**
376
383
  * Specify whether the Modal is currently open
377
384
  */
378
- open: _propTypes.default.bool,
385
+ open: _propTypes.default.bool.isRequired,
379
386
  /**
380
387
  * Specify the text for the primary button
381
388
  */
@@ -0,0 +1,25 @@
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 _react = _interopRequireDefault(require("react"));
9
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
10
+ var DocsPage = function DocsPage() {
11
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
12
+ altGuidelinesHref: "https://pages.github.ibm.com/cdai-design/pal/patterns/add-and-select/usage",
13
+ blocks: [{
14
+ title: 'Structuring items',
15
+ description: "The `items` object has a lot of customization potential and can greatly effect\nthe way the component is displayed and how you interact with it.\n\nLet's walk through an example.",
16
+ source: {
17
+ code: "items: {\n modifiers: { // adds a modifier dropdown inside the items\n label: PropTypes.string, // label for the dropdown\n options: PropTypes.array, // list of options / values for the dropdown\n },\n sortBy: ['title'], // designates which properties should be used to sort the column when using a hierarchy\n entries: [ // the actual list of items / entries\n {\n id: '1', // required unique id for the entry\n value: '1', // required value of the entry\n title: 'item 1', // required title to display\n subtitle: 'item 1 subtitle', // subtitle to display\n children: { // designates if entry has children. if the children prop is found a hierarchy list will be used\n sortBy: ['title', 'size'],\n filterBy: 'fileType', // designates which property should be used to filter the column of items\n entries: [\n {\n id: '1-1',\n value: 'file1.pdf',\n title: 'file1.pdf',\n fileType: 'pdf',\n size: '100',\n icon: Document16, // designates if an icon should be displayed. While similar to avatar icon, both have different displays.\n tag: 'business',\n avatar: { // designates if an avatar should be displayed\n alt: 'alt text',\n icon: <Icon />,\n src: 'avatar.png',\n },\n },\n ],\n },\n },\n ],\n}"
18
+ }
19
+ }, {
20
+ description: "The properties that have been commented on like `id`, `value`, and `icon` have\nspecific use within the component and are generally required. Other properties\nlike `fileType` and `size` do not and will simply show up as details in the\nsidebar when selected."
21
+ }]
22
+ });
23
+ };
24
+ var _default = DocsPage;
25
+ exports.default = _default;
@@ -22,6 +22,10 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
22
22
  //
23
23
 
24
24
  var componentName = 'MultiAddSelect';
25
+
26
+ /**
27
+ * Used to add or select multiple or more items from larger lists or hierarchies.
28
+ */
25
29
  var MultiAddSelect = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
26
30
  return /*#__PURE__*/_react.default.createElement(_AddSelect.AddSelect, (0, _extends2.default)({}, props, {
27
31
  multi: true,
@@ -22,34 +22,19 @@ var UnreadNotificationBell = function UnreadNotificationBell() {
22
22
  xmlns: "http://www.w3.org/2000/svg",
23
23
  xmlnsXlink: "http://www.w3.org/1999/xlink"
24
24
  }, /*#__PURE__*/_react.default.createElement("title", null, "Unread notification bell"), /*#__PURE__*/_react.default.createElement("g", {
25
- id: "Page-1",
26
- stroke: "none",
27
- strokeWidth: "1",
28
- fill: "none",
29
- fillRule: "evenodd"
30
- }, /*#__PURE__*/_react.default.createElement("g", {
31
25
  id: "Group",
32
26
  transform: "translate(-1.000000, 0.000000)"
33
- }, /*#__PURE__*/_react.default.createElement("g", {
34
- id: "notification"
35
27
  }, /*#__PURE__*/_react.default.createElement("path", {
36
28
  d: "M17.9419375,12.058125 L16.25,10.3661875 L16.25,8.125 C16.245845,4.91692673 13.816599,2.23147626 10.625,1.90675 L10.625,0.625 L9.375,0.625 L9.375,1.90675 C6.183401,2.23147626 3.754155,4.91692673 3.75,8.125 L3.75,10.3661875 L2.0580625,12.058125 C1.94086706,12.1753182 1.875,12.3342622 1.875,12.5 L1.875,14.375 C1.875,14.720178 2.15482203,15 2.5,15 L6.875,15 L6.875,15.4855 C6.84694527,17.1272367 8.05869477,18.5271305 9.6875,18.7346875 C10.5660567,18.8218694 11.4405518,18.5337871 12.0952737,17.9415019 C12.7499955,17.3492167 13.1239886,16.5078712 13.125,15.625 L13.125,15 L17.5,15 C17.845178,15 18.125,14.720178 18.125,14.375 L18.125,12.5 C18.125,12.3342622 18.0591329,12.1753182 17.9419375,12.058125 Z M11.875,15.625 C11.875,16.6605339 11.0355339,17.5 10,17.5 C8.96446609,17.5 8.125,16.6605339 8.125,15.625 L8.125,15 L11.875,15 L11.875,15.625 Z M16.875,13.75 L3.125,13.75 L3.125,12.7588125 L4.816875,11.066875 C4.93409336,10.949692 4.9999646,10.7907468 5,10.625 L5,8.125 C5,5.36357625 7.23857625,3.125 10,3.125 C12.7614237,3.125 15,5.36357625 15,8.125 L15,10.625 C15.0000354,10.7907468 15.0659066,10.949692 15.183125,11.066875 L16.875,12.7588125 L16.875,13.75 Z",
37
29
  id: "Shape",
38
- fill: "#FFFFFF",
39
30
  fillRule: "nonzero"
40
- }), /*#__PURE__*/_react.default.createElement("rect", {
41
- id: "_Transparent_Rectangle_",
42
- x: "0",
43
- y: "0",
44
- width: "20",
45
- height: "20"
46
- })), /*#__PURE__*/_react.default.createElement("circle", {
31
+ }), /*#__PURE__*/_react.default.createElement("circle", {
47
32
  id: "Oval",
48
33
  stroke: "#161616",
49
34
  fill: "#DA1E28",
50
35
  cx: "15",
51
36
  cy: "4.375",
52
37
  r: "2.5"
53
- }))));
38
+ })));
54
39
  };
55
40
  exports.UnreadNotificationBell = UnreadNotificationBell;
@@ -320,12 +320,8 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
320
320
  (0, _PageHeaderUtils.utilSetCollapsed)(collapseHeader, metrics.headerOffset, metrics.headerTopValue);
321
321
  }
322
322
  }, [collapseHeader, metrics.headerOffset, metrics.headerTopValue]);
323
- (0, _useResizeObserver.useResizeObserver)(sizingContainerRef, {
324
- callback: handleResizeActionBarColumn
325
- });
326
- (0, _useResizeObserver.useResizeObserver)(headerRef, {
327
- callback: handleResize
328
- });
323
+ (0, _useResizeObserver.useResizeObserver)(sizingContainerRef, handleResizeActionBarColumn);
324
+ (0, _useResizeObserver.useResizeObserver)(headerRef, handleResize);
329
325
 
330
326
  // Determine what form of title to display in the breadcrumb
331
327
  var breadcrumbItemForTitle = (0, _PageHeaderUtils.utilGetBreadcrumbItemForTitle)(_PageHeaderUtils.blockClass, collapseTitle, title);
@@ -71,11 +71,11 @@ var utilCheckUpdateVerticalSpace = function utilCheckUpdateVerticalSpace(headerR
71
71
  var scrollableContainer = (0, _scrollableAncestor.scrollableAncestor)(headerRef.current);
72
72
 
73
73
  /* istanbul ignore next */
74
- var scrollableContainerTop = scrollableContainer ? scrollableContainer.scrollTop - scrollableContainer.offsetTop : 0;
74
+ var scrollableContainerTop = scrollableContainer ? scrollableContainer.scrollTop - scrollableContainer.getBoundingClientRect().top : 0;
75
75
 
76
76
  // The header offset calculation is either going to work out at 0 if we have no gap between scrolling container
77
77
  // top and the measuring ref top, or the difference between. It does not change on scroll or resize.
78
- update.headerOffset = scrollableContainerTop + offsetTopMeasuringRef.current.getBoundingClientRect().top;
78
+ update.headerOffset = (offsetTopMeasuringRef.current ? offsetTopMeasuringRef.current.getBoundingClientRect().top : 0) + scrollableContainerTop;
79
79
 
80
80
  /* istanbul ignore next */
81
81
  update.breadcrumbRowHeight = breadcrumbRowEl ? breadcrumbRowEl.clientHeight : 0;
@@ -0,0 +1,26 @@
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 _react = _interopRequireDefault(require("react"));
9
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
10
+ var _blocks = require("@storybook/blocks");
11
+ var _storyHelper = require("../../global/js/utils/story-helper");
12
+ var DocsPage = function DocsPage() {
13
+ var _useOf = (0, _blocks.useOf)('meta', ['meta']),
14
+ csfFile = _useOf.csfFile;
15
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
16
+ altGuidelinesHref: [(0, _storyHelper.storyDocsGuidelines)(csfFile), {
17
+ href: 'https://www.carbondesignsystem.com/components/modal/usage',
18
+ label: 'Carbon Modal usage guidelines'
19
+ }, {
20
+ href: 'https://react.carbondesignsystem.com/?path=/docs/modal--default',
21
+ label: 'Carbon Modal documentation'
22
+ }]
23
+ });
24
+ };
25
+ var _default = DocsPage;
26
+ exports.default = _default;
@@ -29,6 +29,12 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
29
29
  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; }
30
30
  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; }
31
31
  var componentName = 'RemoveModal';
32
+
33
+ /**
34
+ The `RemoveModal` covers what is known as high impact and medium impact deleting.
35
+ Enabling `textConfirmation` enables what would be considered the high impact state of the modal.
36
+ For additional information on differentiating between delete / remove and low / medium / high impact please refer to the usage guidelines.
37
+ */
32
38
  var RemoveModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
33
39
  var body = _ref.body,
34
40
  className = _ref.className,
@@ -451,9 +451,7 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
451
451
  }, title));
452
452
  };
453
453
  var contentRef = ref || sidePanelRef;
454
- (0, _useResizeObserver.useResizeObserver)(contentRef, {
455
- callback: handleResize
456
- });
454
+ (0, _useResizeObserver.useResizeObserver)(contentRef, handleResize);
457
455
  return /*#__PURE__*/_react.default.createElement(_framerMotion.AnimatePresence, null, open && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_framerMotion.motion.div, (0, _extends2.default)({}, (0, _devtools.getDevtoolsProps)(componentName), rest, {
458
456
  id: "".concat(blockClass, "-outer"),
459
457
  className: mainPanelClassNames,
@@ -0,0 +1,23 @@
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 _react = _interopRequireDefault(require("react"));
9
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
10
+ var DocsPage = function DocsPage() {
11
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
12
+ altGuidelinesHref: "https://pages.github.ibm.com/cdai-design/pal/patterns/add-and-select/usage",
13
+ blocks: [{
14
+ title: 'Structuring items',
15
+ description: "The `items` object has a lot of customization potential and can greatly effect\nthe way the component is displayed and how you interact with it..\n\nLet's walk through an example.",
16
+ source: {
17
+ code: "items: {\n entries: [ // the actual list of items / entries\n {\n id: '1', // required unique id for the entry\n value: '1', // required value of the entry\n title: 'item 1', // required title to display\n subtitle: 'item 1 subtitle', // subtitle to display\n children: { // designates if entry has children. if the children prop is found a hierarchy list will be used\n entries: [\n {\n id: '1-1',\n value: 'file1.pdf',\n title: 'file1.pdf',\n },\n ],\n },\n },\n ],\n}"
18
+ }
19
+ }]
20
+ });
21
+ };
22
+ var _default = DocsPage;
23
+ exports.default = _default;
@@ -23,6 +23,10 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
23
23
  //
24
24
 
25
25
  var componentName = 'SingleAddSelect';
26
+
27
+ /**
28
+ * Used to add or select one or more items from larger lists or hierarchies.
29
+ */
26
30
  var SingleAddSelect = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
27
31
  // remove multi add select specific props
28
32
  var validProps = (0, _propsHelper.prepareProps)(props, ['columnInputPlaceholder', 'globalFilters', 'globalFiltersIconDescription', 'globalFiltersPlaceholderText', 'globalFiltersPrimaryButtonText', 'globalFiltersSecondaryButtonText', 'influencerTitle', 'multi', 'noSelectionDescription', 'noSelectionTitle', 'removeIconDescription']);
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
11
+ var stories = _interopRequireWildcard(require("./StatusIcon.stories"));
12
+ 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); }
13
+ 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; }
14
+ var DocsPage = function DocsPage() {
15
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
16
+ blocks: [{
17
+ story: stories.Default
18
+ }, {
19
+ title: 'Accessibility',
20
+ description: "The `StatusIcon` component follows the Carbon guidelines for status icons with\nsome added specifications around illustration usage. For additional usage\nguidelines and documentation please refer to the links above.\n\n_Status icons_ are an important method of communicating severity level\ninformation to users. The shapes and colors, communicate severity that enable\nusers to quickly assess and identify status and respond accordingly."
21
+ }, {
22
+ title: 'Sizing',
23
+ description: "\n| Size | Pixels |\n| ------- | ------- |\n| small | 16 x 16 |\n| medium | 20 x 20 |\n| large | 24 x 24 |\n| x-large | 32 x 32 |\n "
24
+ }]
25
+ });
26
+ };
27
+ var _default = DocsPage;
28
+ exports.default = _default;
@@ -26,6 +26,16 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
26
26
  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; }
27
27
  var blockClass = "".concat(_settings.pkg.prefix, "--status-icon");
28
28
  var componentName = 'StatusIcon';
29
+
30
+ /**
31
+ The `StatusIcon` component follows the Carbon guidelines for status icons with
32
+ some added specifications around illustration usage. For additional usage
33
+ guidelines and documentation please refer to the links above.
34
+
35
+ _Status icons_ are an important method of communicating severity level
36
+ information to users. The shapes and colors, communicate severity that enable
37
+ users to quickly assess and identify status and respond accordingly.
38
+ */
29
39
  var StatusIcon = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
30
40
  var _icons$kind;
31
41
  var kind = _ref.kind,
@@ -164,7 +164,8 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
164
164
  if (sizingTags.length > 0) {
165
165
  var spaceAvailable = tagSetRef.current.offsetWidth;
166
166
  for (var i in sizingTags) {
167
- var tagWidth = sizingTags[i].offsetWidth;
167
+ var _sizingTags$i;
168
+ var tagWidth = ((_sizingTags$i = sizingTags[i]) === null || _sizingTags$i === void 0 ? void 0 : _sizingTags$i.offsetWidth) || 0;
168
169
  if (spaceAvailable >= tagWidth) {
169
170
  spaceAvailable -= tagWidth;
170
171
  willFit += 1;
@@ -206,12 +207,8 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
206
207
  var handleModalClose = function handleModalClose() {
207
208
  setShowAllModalOpen(false);
208
209
  };
209
- (0, _useResizeObserver.useResizeObserver)(sizingContainerRef, {
210
- callback: handleSizerTagsResize
211
- });
212
- (0, _useResizeObserver.useResizeObserver)(tagSetRef, {
213
- callback: handleResize
214
- });
210
+ (0, _useResizeObserver.useResizeObserver)(sizingContainerRef, handleSizerTagsResize);
211
+ (0, _useResizeObserver.useResizeObserver)(tagSetRef, handleResize);
215
212
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
216
213
  className: (0, _classnames.default)([blockClass, className]),
217
214
  ref: tagSetRef
@@ -63,7 +63,13 @@ var tearsheetHasCloseIcon = function tearsheetHasCloseIcon(actions, hasCloseIcon
63
63
  return hasCloseIcon !== null && hasCloseIcon !== void 0 ? hasCloseIcon : tearsheetIsPassive(actions);
64
64
  };
65
65
 
66
- // TearSheetShell is used internally by TearSheet and TearSheetNarrow
66
+ /**
67
+ * TearSheetShell is used internally by TearSheet and TearSheetNarrow
68
+ *
69
+ * The component is not public.
70
+ *
71
+ * See the canvas tab for the component API details.
72
+ * */
67
73
  exports.tearsheetHasCloseIcon = tearsheetHasCloseIcon;
68
74
  var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
69
75
  var actions = _ref.actions,
@@ -225,7 +231,8 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
225
231
  closeModal: onClose,
226
232
  iconDescription: closeIconDescription
227
233
  }, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
228
- className: "".concat(bc, "__header-content")
234
+ className: "".concat(bc, "__header-content"),
235
+ element: wide ? _react2.Layer : undefined
229
236
  }, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
230
237
  className: "".concat(bc, "__header-fields")
231
238
  }, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
@@ -250,12 +257,10 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
250
257
  className: "".concat(bc, "__right")
251
258
  }, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
252
259
  className: "".concat(bc, "__main"),
253
- alwaysRender: includeActions,
254
- element: wide ? _react2.Layer : undefined
260
+ alwaysRender: includeActions
255
261
  }, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
256
262
  className: "".concat(bc, "__content"),
257
- alwaysRender: influencer && influencerPosition === 'right',
258
- element: wide ? _react2.Layer : undefined
263
+ alwaysRender: influencer && influencerPosition === 'right'
259
264
  }, children), /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
260
265
  className: (0, _classnames.default)((_cx6 = {}, (0, _defineProperty2.default)(_cx6, "".concat(bc, "__influencer"), true), (0, _defineProperty2.default)(_cx6, "".concat(bc, "__influencer--wide"), influencerWidth === 'wide'), _cx6)),
261
266
  neverRender: influencerPosition !== 'right'
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
11
+ var stories = _interopRequireWildcard(require("./Toolbar.stories"));
12
+ 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); }
13
+ 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; }
14
+ var DocsPage = function DocsPage() {
15
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
16
+ blocks: [{
17
+ story: stories._Toolbar
18
+ }, {
19
+ story: stories.vertical,
20
+ description: "A toolbar orientation for floating the toolbar on the canvas."
21
+ }]
22
+ });
23
+ };
24
+ var _default = DocsPage;
25
+ exports.default = _default;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
11
+ var stories = _interopRequireWildcard(require("./UserProfileImage.stories"));
12
+ 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); }
13
+ 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; }
14
+ var DocsPage = function DocsPage() {
15
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
16
+ blocks: [{
17
+ story: stories.Default
18
+ }, {
19
+ story: stories.WithGroupIcon,
20
+ description: "By passing in icon prop with a value of `group`, the avatar will display the group icon"
21
+ }, {
22
+ story: stories.WithInitials,
23
+ description: "When passing a display name to the component, the display name will be distilled down to the first and last initials of the display name. `Thomas Watson` and `Thomas J. Watson` will both display `TW` as the initials."
24
+ }]
25
+ });
26
+ };
27
+ var _default = DocsPage;
28
+ exports.default = _default;
@@ -15,7 +15,7 @@ require("../../global/js/utils/props-helper");
15
15
  var _settings = require("../../settings");
16
16
  var _icons = require("@carbon/react/icons");
17
17
  var _react2 = require("@carbon/react");
18
- var _excluded = ["backgroundColor", "className", "kind", "icon", "initials", "image", "imageDescription", "size", "theme", "tooltipText"];
18
+ var _excluded = ["backgroundColor", "className", "kind", "icon", "initials", "image", "imageDescription", "size", "theme", "tooltipText", "tooltipAlignment"];
19
19
  /**
20
20
  * Copyright IBM Corp. 2021, 2021
21
21
  *
@@ -31,8 +31,12 @@ var componentName = 'UserProfileImage';
31
31
 
32
32
  // NOTE: the component SCSS is not imported here: it is rolled up separately.
33
33
 
34
+ // Default values for props
35
+ var defaults = {
36
+ tooltipAlignment: 'bottom'
37
+ };
34
38
  /**
35
- * This is a user profile image component which displays an image, or initials or icon for a user.
39
+ * The user profile avatar allows for an image of the user to be displayed by passing in the image prop. By default the component will display a user icon on a blue background.
36
40
  */
37
41
  var UserProfileImage = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
38
42
  var backgroundColor = _ref.backgroundColor,
@@ -45,6 +49,8 @@ var UserProfileImage = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
45
49
  size = _ref.size,
46
50
  theme = _ref.theme,
47
51
  tooltipText = _ref.tooltipText,
52
+ _ref$tooltipAlignment = _ref.tooltipAlignment,
53
+ tooltipAlignment = _ref$tooltipAlignment === void 0 ? defaults.tooltipAlignment : _ref$tooltipAlignment,
48
54
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
49
55
  var icons = {
50
56
  user: {
@@ -124,7 +130,8 @@ var UserProfileImage = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
124
130
  return FillItem && (tooltipText ? /*#__PURE__*/_react.default.createElement(_react2.IconButton, {
125
131
  label: tooltipText,
126
132
  className: "".concat(blockClass, "__tooltip"),
127
- kind: "ghost"
133
+ kind: "ghost",
134
+ align: tooltipAlignment
128
135
  }, renderUserProfileImage()) : renderUserProfileImage());
129
136
  });
130
137
 
@@ -173,6 +180,10 @@ UserProfileImage.propTypes = {
173
180
  * Set theme in which the component will be rendered
174
181
  */
175
182
  theme: _propTypes.default.oneOf(['light', 'dark']).isRequired,
183
+ /**
184
+ * Specify how the trigger should align with the tooltip
185
+ */
186
+ tooltipAlignment: _propTypes.default.oneOf(['top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right', 'left', 'right']),
176
187
  /**
177
188
  * Pass in the display name to have it shown on hover
178
189
  */
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _StoryDocsPage = require("../../global/js/utils/StoryDocsPage");
11
+ var stories = _interopRequireWildcard(require("./WebTerminal.stories"));
12
+ 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); }
13
+ 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; }
14
+ var DocsPage = function DocsPage() {
15
+ return /*#__PURE__*/_react.default.createElement(_StoryDocsPage.StoryDocsPage, {
16
+ blocks: [{
17
+ description: "To get started using the WebTerminal, you have to first wrap your\n application with the `<WebTerminalProvider>`\n component. This will allow all the WebTerminal components to be\n used with the `useWebTerminal()` custom hook.\n ",
18
+ title: 'Getting Started',
19
+ source: {
20
+ code: "import { WebTerminalProvider } from '@carbon/ibm-products';\n\nconst App = () => {\n return (\n <WebTerminalProvider>\n ...\n <WebTerminalProvider>\n )\n};"
21
+ }
22
+ }, {
23
+ title: 'useWebTerminal()',
24
+ source: {
25
+ code: "const { open, openWebTerminal, closeWebTerminal, toggleWebTerminal } =\n useWebTerminal();"
26
+ }
27
+ }, {
28
+ description: "The `useWebTerminal()` hook returns an object with 4 properties:\n1. Read the `open` state (true or false)\n2. `openWebTerminal` sets the `open` state to true\n3. `closeWebTerminal` sets the `open` state to false\n4. `toggleWebTerminal` toggles between true and false\n\nExample:\n",
29
+ source: {
30
+ code: "const MyComponent = () => {\n const { open, openWebTerminal, closeWebTerminal, toggleWebTerminal } =\n useWebTerminal();\n\n return (\n <div>\n <button onClick={() => openWebTerminal()}>Open web terminal</button>\n <button onClick={() => closeWebTerminal()}>Close web terminal</button>\n <button onClick={() => toggleWebTerminal()}>Toggle web terminal</button>\n <p>The web terminal is now {open}</p>\n\n <WebTerminal>...</WebTerminal>\n </div>\n );\n};"
31
+ }
32
+ }, {
33
+ subTitle: 'Passing in your own terminal.',
34
+ description: "The `WebTerminal` is wrapper component for your own\nterminal component that you may have been using for your product.\nSimply pass your own terminal component as children.\n "
35
+ }, {
36
+ subTitle: 'Optional wrapper component.',
37
+ description: "Optionally you can import `WebTerminalContentWrapper` to have\n content adjust their width based off the `WebTerminal` width when\n it is opened.",
38
+ source: {
39
+ code: "<WebTerminalContentWrapper>\n content\n</WebTerminalContentWrapper>\n\n<WebTerminal>\n ...\n</WebTerminal>"
40
+ }
41
+ }, {
42
+ description: 'The default web terminal is one which opens and the terminal loads. Then if the user desires to dismiss it they can click the close icon on the top right corner of the component.',
43
+ story: stories.Default
44
+ }, {
45
+ story: stories.WithDocumentationLinks
46
+ }, {
47
+ subTitle: 'Help users with helpful documentation links',
48
+ description: "Optionally you can pass documentation links to help point your users to useful\ndocumentation for your terminal, or kubernetes commands etc.\n\nThe documentation links should reflect the same props as `OverflowMenuItem` from\ncarbon.\n\nLearn more:\nhttps://react.carbondesignsystem.com/?path=/docs/components-overflowmenu--default\n",
49
+ source: {
50
+ code: "const documentationLinks = [\n {\n itemText: 'BX/ICP docs',\n href: '#',\n onClick: () => console.log('clicked'),\n },\n {\n itemText: 'Kubernetes docs',\n href: '#',\n onClick: () => console.log('clicked'),\n },\n {\n itemText: 'Docker docs',\n href: '#',\n onClick: () => console.log('clicked'),\n },\n {\n itemText: 'Helm docs',\n href: '#',\n onClick: () => console.log('clicked'),\n },\n];"
51
+ }
52
+ }, {
53
+ story: stories.WithActions
54
+ }, {
55
+ description: "Optionally you can add actions to the web terminal header bar. To add actions\nyou need to pass in an array of actions with objects for each object.",
56
+ source: {
57
+ code: "<WebTerminal\n actions={[\n {\n renderIcon: Code32,\n onClick: () => {},\n iconDescription: 'Create new deployment',\n },\n ]}\n>\n ...\n</WebTerminal>"
58
+ }
59
+ }]
60
+ });
61
+ };
62
+ var _default = DocsPage;
63
+ exports.default = _default;
@@ -45,6 +45,10 @@ var defaults = {
45
45
  documentationLinksIconDescription: 'Show documentation links',
46
46
  isInitiallyOpen: false
47
47
  };
48
+
49
+ /**
50
+ * The `WebTerminal` is prompted by the user and is persistent until dismissed. The purpose of a web terminal is to provide users with the ability to type commands manually instead of using the GUI.
51
+ */
48
52
  var WebTerminal = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
49
53
  var _ref3;
50
54
  var _ref$actions = _ref.actions,
@@ -381,6 +381,12 @@ Object.defineProperty(exports, "useExpandedRow", {
381
381
  return _Datagrid.useExpandedRow;
382
382
  }
383
383
  });
384
+ Object.defineProperty(exports, "useFilterContext", {
385
+ enumerable: true,
386
+ get: function get() {
387
+ return _Datagrid.useFilterContext;
388
+ }
389
+ });
384
390
  Object.defineProperty(exports, "useFiltering", {
385
391
  enumerable: true,
386
392
  get: function get() {