@carbon/ibm-products 2.64.0 → 2.65.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/css/index-full-carbon.css +59 -143
  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 +8 -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 +59 -143
  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 +59 -143
  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/Checklist/Checklist.js +8 -7
  18. package/es/components/CoachmarkStack/CoachmarkStack.d.ts +5 -0
  19. package/es/components/CoachmarkStack/CoachmarkStack.js +9 -3
  20. package/es/components/CoachmarkStack/CoachmarkStackHome.d.ts +5 -0
  21. package/es/components/CoachmarkStack/CoachmarkStackHome.js +39 -6
  22. package/es/components/CreateFullPage/CreateFullPage.d.ts +1 -1
  23. package/es/components/CreateFullPage/CreateFullPage.js +23 -18
  24. package/es/components/Datagrid/Datagrid/DraggableElement.d.ts +3 -1
  25. package/es/components/Datagrid/Datagrid/DraggableElement.js +3 -1
  26. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +3 -0
  27. package/es/components/InlineTip/InlineTip.js +3 -3
  28. package/es/components/InterstitialScreen/InterstitialScreen.d.ts +36 -59
  29. package/es/components/InterstitialScreen/InterstitialScreen.js +75 -271
  30. package/es/components/InterstitialScreen/InterstitialScreenBody.d.ts +27 -0
  31. package/es/components/InterstitialScreen/InterstitialScreenBody.js +110 -0
  32. package/es/components/InterstitialScreen/InterstitialScreenFooter.d.ts +47 -0
  33. package/es/components/InterstitialScreen/InterstitialScreenFooter.js +184 -0
  34. package/es/components/InterstitialScreen/InterstitialScreenHeader.d.ts +35 -0
  35. package/es/components/InterstitialScreen/InterstitialScreenHeader.js +90 -0
  36. package/es/components/{InterstitialScreenView → InterstitialScreen/_story-assets/InterstitialScreenView}/InterstitialScreenView.d.ts +1 -0
  37. package/{lib/components → es/components/InterstitialScreen/_story-assets}/InterstitialScreenViewModule/InterstitialScreenViewModule.d.ts +8 -0
  38. package/es/components/NotificationsPanel/NotificationsPanel.js +15 -10
  39. package/es/components/PageHeader/PageHeader.js +1 -1
  40. package/es/components/SidePanel/SidePanel.js +3 -2
  41. package/es/components/Tearsheet/Tearsheet.js +3 -2
  42. package/es/components/index.d.ts +0 -2
  43. package/es/global/js/hooks/useOverflowItems/useOverflowItems.d.ts +2 -2
  44. package/es/global/js/package-settings.d.ts +0 -2
  45. package/es/global/js/package-settings.js +0 -2
  46. package/es/index.js +0 -2
  47. package/es/settings.d.ts +0 -2
  48. package/lib/components/Checklist/Checklist.js +7 -6
  49. package/lib/components/CoachmarkStack/CoachmarkStack.d.ts +5 -0
  50. package/lib/components/CoachmarkStack/CoachmarkStack.js +9 -3
  51. package/lib/components/CoachmarkStack/CoachmarkStackHome.d.ts +5 -0
  52. package/lib/components/CoachmarkStack/CoachmarkStackHome.js +37 -4
  53. package/lib/components/CreateFullPage/CreateFullPage.d.ts +1 -1
  54. package/lib/components/CreateFullPage/CreateFullPage.js +22 -17
  55. package/lib/components/Datagrid/Datagrid/DraggableElement.d.ts +3 -1
  56. package/lib/components/Datagrid/Datagrid/DraggableElement.js +3 -1
  57. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +3 -0
  58. package/lib/components/InlineTip/InlineTip.js +2 -2
  59. package/lib/components/InterstitialScreen/InterstitialScreen.d.ts +36 -59
  60. package/lib/components/InterstitialScreen/InterstitialScreen.js +73 -267
  61. package/lib/components/InterstitialScreen/InterstitialScreenBody.d.ts +27 -0
  62. package/lib/components/InterstitialScreen/InterstitialScreenBody.js +114 -0
  63. package/lib/components/InterstitialScreen/InterstitialScreenFooter.d.ts +47 -0
  64. package/lib/components/InterstitialScreen/InterstitialScreenFooter.js +188 -0
  65. package/lib/components/InterstitialScreen/InterstitialScreenHeader.d.ts +35 -0
  66. package/lib/components/InterstitialScreen/InterstitialScreenHeader.js +94 -0
  67. package/lib/components/{InterstitialScreenView → InterstitialScreen/_story-assets/InterstitialScreenView}/InterstitialScreenView.d.ts +1 -0
  68. package/{es/components → lib/components/InterstitialScreen/_story-assets}/InterstitialScreenViewModule/InterstitialScreenViewModule.d.ts +8 -0
  69. package/lib/components/NotificationsPanel/NotificationsPanel.js +14 -9
  70. package/lib/components/PageHeader/PageHeader.js +1 -1
  71. package/lib/components/SidePanel/SidePanel.js +3 -2
  72. package/lib/components/Tearsheet/Tearsheet.js +3 -2
  73. package/lib/components/index.d.ts +0 -2
  74. package/lib/global/js/hooks/useOverflowItems/useOverflowItems.d.ts +2 -2
  75. package/lib/global/js/package-settings.d.ts +0 -2
  76. package/lib/global/js/package-settings.js +0 -2
  77. package/lib/index.js +0 -10
  78. package/lib/settings.d.ts +0 -2
  79. package/package.json +7 -7
  80. package/scss/components/Coachmark/_coachmark-overlay.scss +2 -0
  81. package/scss/components/CoachmarkOverlayElements/_coachmark-overlay-elements.scss +1 -0
  82. package/scss/components/CoachmarkStack/_coachmark-stack.scss +25 -0
  83. package/scss/components/InterstitialScreen/_interstitial-screen.scss +29 -137
  84. package/scss/components/NotificationsPanel/_notifications-panel.scss +2 -0
  85. package/scss/components/PageHeader/_page-header.scss +5 -0
  86. package/scss/components/_index-with-carbon.scss +0 -2
  87. package/scss/components/_index.scss +0 -2
  88. package/telemetry.yml +17 -8
  89. package/es/components/InterstitialScreenView/InterstitialScreenView.js +0 -78
  90. package/es/components/InterstitialScreenView/index.d.ts +0 -8
  91. package/es/components/InterstitialScreenViewModule/InterstitialScreenViewModule.js +0 -81
  92. package/es/components/InterstitialScreenViewModule/index.d.ts +0 -8
  93. package/lib/components/InterstitialScreenView/InterstitialScreenView.js +0 -78
  94. package/lib/components/InterstitialScreenView/index.d.ts +0 -8
  95. package/lib/components/InterstitialScreenViewModule/InterstitialScreenViewModule.js +0 -81
  96. package/lib/components/InterstitialScreenViewModule/index.d.ts +0 -8
  97. package/scss/components/InterstitialScreenView/_carbon-imports.scss +0 -9
  98. package/scss/components/InterstitialScreenView/_index-with-carbon.scss +0 -9
  99. package/scss/components/InterstitialScreenView/_index.scss +0 -8
  100. package/scss/components/InterstitialScreenView/_interstitial-screen-view.scss +0 -25
  101. package/scss/components/InterstitialScreenViewModule/_carbon-imports.scss +0 -9
  102. package/scss/components/InterstitialScreenViewModule/_index-with-carbon.scss +0 -9
  103. package/scss/components/InterstitialScreenViewModule/_index.scss +0 -8
  104. package/scss/components/InterstitialScreenViewModule/_interstitial-screen-view-module.scss +0 -59
@@ -5,6 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import React, { ReactNode } from 'react';
8
+ type TooltipAlignment = 'top' | 'bottom';
8
9
  interface CoachmarkStackHomeProps {
9
10
  /**
10
11
  * Optional class name for this component.
@@ -53,6 +54,10 @@ interface CoachmarkStackHomeProps {
53
54
  * The title of the Coachmark.
54
55
  */
55
56
  title: string;
57
+ /**
58
+ * Label's tooltip position
59
+ */
60
+ tooltipAlign?: TooltipAlignment;
56
61
  }
57
62
  /**
58
63
  * DO NOT USE. This component is for the exclusive use
@@ -20,7 +20,7 @@ var reactDom = require('react-dom');
20
20
  var CoachmarkHeader = require('../Coachmark/CoachmarkHeader.js');
21
21
  var useIsomorphicEffect = require('../../global/js/hooks/useIsomorphicEffect.js');
22
22
 
23
- var _excluded = ["className", "description", "isOpen", "renderMedia", "navLinkLabels", "onClickNavItem", "onClose", "portalTarget", "closeButtonLabel", "title"];
23
+ var _excluded = ["className", "description", "isOpen", "renderMedia", "navLinkLabels", "onClickNavItem", "onClose", "portalTarget", "closeButtonLabel", "title", "tooltipAlign"];
24
24
  // Carbon and package components we use.
25
25
  /* TODO: @import(s) of carbon components and other package components. */
26
26
 
@@ -44,12 +44,18 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
44
44
  portalTarget = _ref.portalTarget,
45
45
  closeButtonLabel = _ref.closeButtonLabel,
46
46
  title = _ref.title,
47
+ tooltipAlign = _ref.tooltipAlign,
47
48
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
48
49
  var buttonFocusRef = React.useRef(null);
49
50
  var _useState = React.useState(0),
50
51
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
51
52
  linkFocusIndex = _useState2[0],
52
53
  setLinkFocusIndex = _useState2[1];
54
+ var navItemRefs = React.useRef([]);
55
+ var _useState3 = React.useState([]),
56
+ _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
57
+ overflowStates = _useState4[0],
58
+ setOverflowStates = _useState4[1];
53
59
  React.useEffect(function () {
54
60
  setTimeout(function () {
55
61
  if (isOpen && buttonFocusRef.current) {
@@ -65,10 +71,26 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
65
71
  if (!navLinkLabels) {
66
72
  return pconsole.default.warn("".concat(componentName, " is an Onboarding internal component and is not intended for general use."));
67
73
  }
74
+ var itemRefHandler = function itemRefHandler(index, node) {
75
+ if (node && navItemRefs.current[index] !== node) {
76
+ var isOverflowing = node.scrollWidth > node.clientWidth;
77
+ navItemRefs.current[index] = node;
78
+ setOverflowStates(function (prev) {
79
+ var newState = _rollupPluginBabelHelpers.toConsumableArray(prev);
80
+ newState[index] = isOverflowing;
81
+ return newState;
82
+ });
83
+ }
84
+ };
68
85
  function renderNavLink(index, label) {
86
+ var _overflowStates$index;
69
87
  var ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
88
+ var isOverflowing = (_overflowStates$index = overflowStates[index]) !== null && _overflowStates$index !== void 0 ? _overflowStates$index : false;
70
89
  return /*#__PURE__*/React.createElement("li", {
71
- key: index
90
+ key: index,
91
+ ref: function ref(node) {
92
+ itemRefHandler(index, node);
93
+ }
72
94
  }, /*#__PURE__*/React.createElement(react.Button, {
73
95
  kind: "ghost",
74
96
  size: "sm",
@@ -77,7 +99,14 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
77
99
  onClickNavItem(index + 1);
78
100
  },
79
101
  ref: ref
80
- }, label));
102
+ }, isOverflowing ? /*#__PURE__*/React.createElement(react.Tooltip, {
103
+ highContrast: false,
104
+ label: label,
105
+ align: tooltipAlign,
106
+ className: "".concat(blockClass, "__navLinkLabels-tooltip")
107
+ }, /*#__PURE__*/React.createElement("span", {
108
+ className: "".concat(blockClass, "__navLinkLabels-text")
109
+ }, label)) : label));
81
110
  }
82
111
  return portalNode !== null && portalNode !== void 0 && portalNode.current ? /*#__PURE__*/reactDom.createPortal(/*#__PURE__*/React.createElement("div", _rollupPluginBabelHelpers.extends({}, rest, {
83
112
  className: cx(blockClass, className),
@@ -179,5 +208,9 @@ exports.CoachmarkStackHome.propTypes = {
179
208
  /**
180
209
  * The title of the Coachmark.
181
210
  */
182
- title: index.default.string.isRequired
211
+ title: index.default.string.isRequired,
212
+ /**
213
+ * Label's tooltip position
214
+ */
215
+ tooltipAlign: index.default.oneOf(['top', 'bottom'])
183
216
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2021, 2023
2
+ * Copyright IBM Corp. 2021, 2025
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -21,7 +21,6 @@ var settings = require('../../settings.js');
21
21
  var usePreviousValue = require('../../global/js/hooks/usePreviousValue.js');
22
22
  var useCreateComponentFocus = require('../../global/js/hooks/useCreateComponentFocus.js');
23
23
  var useValidCreateStepCount = require('../../global/js/hooks/useValidCreateStepCount.js');
24
- var useResetCreateComponent = require('../../global/js/hooks/useResetCreateComponent.js');
25
24
  var useCreateComponentStepChange = require('../../global/js/hooks/useCreateComponentStepChange.js');
26
25
  var CreateInfluencer = require('../CreateInfluencer/CreateInfluencer.js');
27
26
 
@@ -95,8 +94,7 @@ exports.CreateFullPage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
95
94
  modalIsOpen = _useState10[0],
96
95
  setModalIsOpen = _useState10[1];
97
96
  var previousState = usePreviousValue.usePreviousValue({
98
- currentStep: currentStep,
99
- open: open
97
+ currentStep: currentStep
100
98
  });
101
99
  var _useState11 = React.useState(false),
102
100
  _useState12 = _rollupPluginBabelHelpers.slicedToArray(_useState11, 2),
@@ -126,6 +124,7 @@ exports.CreateFullPage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
126
124
  _useState24 = _rollupPluginBabelHelpers.slicedToArray(_useState23, 2),
127
125
  lastIncludedStep = _useState24[0],
128
126
  setLastIncludedStep = _useState24[1];
127
+ var invalidInitialStepWarned = React.useRef(false);
129
128
  React.useEffect(function () {
130
129
  var firstItem = stepData.findIndex(function (item) {
131
130
  return item === null || item === void 0 ? void 0 : item.shouldIncludeStep;
@@ -139,11 +138,18 @@ exports.CreateFullPage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
139
138
  }
140
139
 
141
140
  /**@ts-ignore */
142
- if (open && initialStep) {
141
+ if (initialStep) {
143
142
  var numberOfHiddenSteps = getNumberOfHiddenSteps.getNumberOfHiddenSteps(stepData, initialStep);
144
143
  setCurrentStep(Number(initialStep + numberOfHiddenSteps));
145
144
  }
146
145
  }, [stepData, firstIncludedStep, lastIncludedStep, initialStep, modalIsOpen]);
146
+ React.useEffect(function () {
147
+ if (!(invalidInitialStepWarned !== null && invalidInitialStepWarned !== void 0 && invalidInitialStepWarned.current)) {
148
+ checkForValidInitialStep();
149
+ }
150
+
151
+ // eslint-disable-next-line react-hooks/exhaustive-deps
152
+ }, [initialStep, stepData]);
147
153
  useCreateComponentFocus.useCreateComponentFocus({
148
154
  previousState: previousState,
149
155
  currentStep: currentStep,
@@ -152,17 +158,6 @@ exports.CreateFullPage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
152
158
  firstFocusElement: firstFocusElement
153
159
  });
154
160
  useValidCreateStepCount.useValidCreateStepCount(stepData.length, componentName);
155
- useResetCreateComponent.useResetCreateComponent({
156
- firstIncludedStep: firstIncludedStep,
157
- previousState: previousState,
158
- open: true,
159
- setCurrentStep: setCurrentStep,
160
- stepData: stepData,
161
- /**@ts-ignore */
162
- initialStep: initialStep,
163
- totalSteps: stepData === null || stepData === void 0 ? void 0 : stepData.length,
164
- componentName: componentName
165
- });
166
161
  useCreateComponentStepChange.useCreateComponentStepChange({
167
162
  firstIncludedStep: firstIncludedStep,
168
163
  lastIncludedStep: lastIncludedStep,
@@ -185,6 +180,15 @@ exports.CreateFullPage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
185
180
  setCreateComponentActions: setCreateFullPageActions,
186
181
  setModalIsOpen: setModalIsOpen
187
182
  });
183
+ var checkForValidInitialStep = function checkForValidInitialStep() {
184
+ // An invalid initialStep value was provided, we'll default to rendering the first step or last step
185
+
186
+ if (initialStep && stepData !== null && stepData !== void 0 && stepData.length && Number(initialStep) > Number(stepData === null || stepData === void 0 ? void 0 : stepData.length) || Number(initialStep) <= 0) {
187
+ invalidInitialStepWarned.current = true;
188
+ setCurrentStep(1);
189
+ console.warn("".concat(componentName, ": An invalid `initialStep` prop was supplied. The `initialStep` prop should be a number that is greater than 0 or less than or equal to the number of steps your ").concat(componentName, " has."));
190
+ }
191
+ };
188
192
  // currently, we are not supporting the use of 'view all' toggle state
189
193
  /* istanbul ignore next */
190
194
  return /*#__PURE__*/React.createElement("div", _rollupPluginBabelHelpers.extends({}, rest, {
@@ -238,9 +242,10 @@ exports.CreateFullPage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
238
242
  setStepData: setStepData,
239
243
  stepData: stepData
240
244
  }
241
- }, React.Children.map(children, function (child, index) {
245
+ }, React.Children.toArray(children).filter(Boolean).map(function (child, index) {
242
246
  return /*#__PURE__*/React.createElement(StepNumberContext.Provider, {
243
- value: index + 1
247
+ value: index + 1,
248
+ key: index
244
249
  }, child);
245
250
  })))), /*#__PURE__*/React.createElement(ActionSet.ActionSet, {
246
251
  className: "".concat(blockClass, "__buttons"),
@@ -11,16 +11,18 @@ interface DraggableElementProps extends PropsWithChildren {
11
11
  classList?: string;
12
12
  disabled?: boolean;
13
13
  id: string;
14
+ elementId?: string;
14
15
  isSticky?: boolean;
15
16
  selected?: boolean;
16
17
  }
17
18
  declare const DraggableElement: {
18
- ({ id, children, classList, disabled, ariaLabel, isSticky, selected, }: DraggableElementProps): React.JSX.Element;
19
+ ({ id, elementId, children, classList, disabled, ariaLabel, isSticky, selected, }: DraggableElementProps): React.JSX.Element;
19
20
  propTypes: {
20
21
  ariaLabel: any;
21
22
  children: any;
22
23
  classList: any;
23
24
  disabled: any;
25
+ elementId: any;
24
26
  id: any;
25
27
  isSticky: any;
26
28
  selected: any;
@@ -22,6 +22,7 @@ var _Locked, _DraggableIcon;
22
22
  var blockClass = "".concat(settings.pkg.prefix, "--datagrid");
23
23
  var DraggableElement = function DraggableElement(_ref) {
24
24
  var id = _ref.id,
25
+ elementId = _ref.elementId,
25
26
  children = _ref.children,
26
27
  classList = _ref.classList,
27
28
  disabled = _ref.disabled,
@@ -53,7 +54,7 @@ var DraggableElement = function DraggableElement(_ref) {
53
54
  };
54
55
  return /*#__PURE__*/React.createElement("li", _rollupPluginBabelHelpers.extends({
55
56
  className: cx(classList, "".concat(blockClass, "__draggable-handleHolder"), _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "__draggable-handleHolder--selected"), selected), "".concat(blockClass, "__draggable-handleHolder--sticky"), isSticky), "".concat(blockClass, "__draggable-handleHolder--dragging"), isDragging)),
56
- id: id,
57
+ id: elementId ? elementId : id,
57
58
  ref: setNodeRef,
58
59
  style: style
59
60
  }, attributes, listeners, {
@@ -71,6 +72,7 @@ DraggableElement.propTypes = {
71
72
  children: index.default.element.isRequired,
72
73
  classList: index.default.string,
73
74
  disabled: index.default.bool,
75
+ elementId: index.default.string,
74
76
  id: index.default.string.isRequired,
75
77
  isSticky: index.default.bool,
76
78
  selected: index.default.bool
@@ -12,6 +12,7 @@ var React = require('react');
12
12
  var index = require('../../../../../_virtual/index.js');
13
13
  var react = require('@carbon/react');
14
14
  var common = require('./common.js');
15
+ var useId = require('../../../../../global/js/utils/useId.js');
15
16
  var DraggableElement = require('../../DraggableElement.js');
16
17
  var settings = require('../../../../../settings.js');
17
18
  var getNodeTextContent = require('../../../../../global/js/utils/getNodeTextContent.js');
@@ -31,6 +32,7 @@ var DraggableItemsList = function DraggableItemsList(_ref) {
31
32
  onSelectColumn = _ref.onSelectColumn,
32
33
  setAriaRegionText = _ref.setAriaRegionText;
33
34
  var draggableClass = "".concat(blockClass, "__draggable-item");
35
+ var generatedId = useId.useId();
34
36
  var visibleCols = columns
35
37
  // hide the columns without Header, e.g the sticky actions, spacer
36
38
  .filter(function (colDef) {
@@ -194,6 +196,7 @@ var DraggableItemsList = function DraggableItemsList(_ref) {
194
196
  classList: draggableClass,
195
197
  key: colDef.id,
196
198
  id: colDef.id,
199
+ elementId: "".concat(colDef.id, "-").concat(generatedId),
197
200
  disabled: filterString.length > 0 || isFrozenColumn,
198
201
  ariaLabel: colHeaderTitle,
199
202
  isSticky: isFrozenColumn,
@@ -84,7 +84,7 @@ exports.InlineTip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
84
84
  React.useEffect(function () {
85
85
  setIsCollapsed(collapsible);
86
86
  }, [collapsible]);
87
- return /*#__PURE__*/React.createElement("div", _rollupPluginBabelHelpers.extends({}, rest, {
87
+ return /*#__PURE__*/React.createElement(react.Section, _rollupPluginBabelHelpers.extends({}, rest, {
88
88
  "aria-labelledby": labelId,
89
89
  className: cx(blockClass, className, collapsible && "".concat(blockClass, "__collapsible"), isCollapsed && "".concat(blockClass, "__collapsible-collapsed"), renderMedia && "".concat(blockClass, "__has-media"), [narrow ? "".concat(blockClass, "__narrow") : "".concat(blockClass, "__wide")], withLeftGutter && !narrow && "".concat(blockClass, "__with-left-gutter")),
90
90
  ref: ref,
@@ -106,7 +106,7 @@ exports.InlineTip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
106
106
  size: 16
107
107
  }))), /*#__PURE__*/React.createElement("div", {
108
108
  className: "".concat(blockClass, "__content")
109
- }, /*#__PURE__*/React.createElement("h6", {
109
+ }, /*#__PURE__*/React.createElement(react.Heading, {
110
110
  id: labelId,
111
111
  className: "".concat(blockClass, "__title")
112
112
  }, title), /*#__PURE__*/React.createElement("section", {
@@ -1,15 +1,15 @@
1
1
  /**
2
- * Copyright IBM Corp. 2024, 2024
2
+ * Copyright IBM Corp. 2024, 2025
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import React, { PropsWithChildren, ReactNode } from 'react';
8
- type BreakpointsWithMedia = {
9
- xlg?: number;
10
- lg?: number;
11
- };
12
- export interface InterstitialScreenProps extends PropsWithChildren {
7
+ import React, { ReactNode, RefObject } from 'react';
8
+ import { InterstitialScreenHeaderProps } from './InterstitialScreenHeader';
9
+ import { InterstitialScreenBodyProps } from './InterstitialScreenBody';
10
+ import { InterstitialScreenFooterProps } from './InterstitialScreenFooter';
11
+ export type ActionType = 'close' | 'start' | 'skip' | 'back' | 'next';
12
+ export interface InterstitialScreenProps {
13
13
  /**
14
14
  * Provide the contents of the InterstitialScreen.
15
15
  */
@@ -18,26 +18,6 @@ export interface InterstitialScreenProps extends PropsWithChildren {
18
18
  * Provide an optional class to be applied to the containing node.
19
19
  */
20
20
  className?: string;
21
- /**
22
- * Tooltip text and aria label for the Close button icon.
23
- */
24
- closeIconDescription?: string;
25
- /**
26
- * The domain this app belongs to, e.g. "IBM Cloud Pak".
27
- */
28
- domainName?: string;
29
- /**
30
- * Provide an optional class to be applied to the <header> element >.
31
- */
32
- headerClassName?: string;
33
- /**
34
- * Provide an optional class to be applied to the <header> element >.
35
- */
36
- headerTitle?: string;
37
- /**
38
- * Optional parameter to hide the progress indicator when multiple steps are used.
39
- */
40
- hideProgressIndicator?: boolean;
41
21
  /**
42
22
  * The aria label applied to the Interstitial Screen component
43
23
  */
@@ -51,46 +31,43 @@ export interface InterstitialScreenProps extends PropsWithChildren {
51
31
  * Specifies whether the component is currently open.
52
32
  */
53
33
  isOpen?: boolean;
54
- /**
55
- * Optional prop to render any media like images or any animated media.
56
- */
57
- renderMedia?: (params: any) => ReactNode;
58
- /**
59
- * optional prop to specify breakpoints when media is rendered through renderMedia
60
- * Breakpoints are used to set the media content column size as well as the remainder for the main content areas column size.
61
- * Medium and small breakpoints will be set to 0 internally to focus on the main content area.
62
- */
63
- breakpointsWithMedia?: BreakpointsWithMedia;
64
- /**
65
- * The label for the Next button.
66
- */
67
- nextButtonLabel?: string;
68
34
  /**
69
35
  * Function to call when the close button is clicked.
70
36
  */
71
- onClose?: () => void;
72
- /**
73
- * The label for the Previous button.
74
- */
75
- previousButtonLabel?: string;
76
- /**
77
- * The name of this app, e.g. "QRadar".
78
- */
79
- productName?: string;
80
- /**
81
- * The label for the skip button.
82
- */
83
- skipButtonLabel?: string;
84
- /**
85
- * The label for the start button.
86
- */
87
- startButtonLabel?: string;
37
+ onClose?: (value: ActionType) => void;
38
+ }
39
+ type InterstitialScreenComponent = React.ForwardRefExoticComponent<InterstitialScreenProps & React.RefAttributes<HTMLDivElement>> & {
40
+ Header: React.FC<InterstitialScreenHeaderProps>;
41
+ Body: React.FC<InterstitialScreenBodyProps>;
42
+ Footer: React.FC<InterstitialScreenFooterProps>;
43
+ };
44
+ export type disableButtonConfigType = {
45
+ skip?: boolean;
46
+ back?: boolean;
47
+ next?: boolean;
48
+ start?: boolean;
49
+ };
50
+ interface InterstitialScreenContextType {
51
+ bodyChildrenData?: ReactNode;
52
+ setBodyChildrenData?: (value: ReactNode) => void;
53
+ isFullScreen?: boolean;
54
+ handleClose?: (value: ActionType) => void;
55
+ progStep: number;
56
+ setProgStep?: (value: number) => void;
57
+ bodyScrollRef?: RefObject<HTMLDivElement | null>;
58
+ scrollRef?: RefObject<HTMLDivElement>;
59
+ handleGotoStep?: (value: number) => void;
60
+ stepCount: number;
61
+ setStepCount?: (value: number) => void;
62
+ disableButtonConfig?: disableButtonConfigType;
63
+ setDisableButtonConfig?: (value: disableButtonConfigType) => void;
88
64
  }
65
+ export declare const InterstitialScreenContext: React.Context<InterstitialScreenContextType>;
89
66
  /**
90
67
  * InterstitialScreen can be a full page or an overlay, and are
91
68
  * shown on the first time a user accesses a new experience
92
69
  * (e.g. upon first login or first time opening a page where a
93
70
  * newly purchased capability is presented).
94
71
  */
95
- export declare let InterstitialScreen: React.ForwardRefExoticComponent<InterstitialScreenProps & React.RefAttributes<HTMLDivElement>>;
72
+ export declare let InterstitialScreen: InterstitialScreenComponent;
96
73
  export {};