@carbon/ibm-products 2.38.0-alpha.5 → 2.39.0
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +227 -0
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +1 -1
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +218 -0
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +1 -1
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +227 -0
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +1 -1
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +445 -0
- package/css/index.css.map +1 -1
- package/css/index.min.css +1 -1
- package/css/index.min.css.map +1 -1
- package/es/components/ActionSet/ActionSet.js +3 -2
- package/es/components/Card/Card.js +50 -9
- package/es/components/Card/CardFooter.d.ts +5 -1
- package/es/components/Card/CardFooter.js +11 -1
- package/es/components/Carousel/Carousel.d.ts +6 -2
- package/es/components/Checklist/Checklist.d.ts +100 -2
- package/es/components/Checklist/Checklist.js +19 -15
- package/es/components/Checklist/Checklist.types.d.ts +19 -0
- package/es/components/Checklist/Checklist.types.js +22 -0
- package/es/components/Checklist/ChecklistChart.d.ts +6 -2
- package/es/components/Checklist/ChecklistChart.js +14 -33
- package/es/components/Checklist/ChecklistIcon.d.ts +5 -1
- package/es/components/Checklist/ChecklistIcon.js +9 -4
- package/es/components/Coachmark/Coachmark.d.ts +65 -2
- package/es/components/Coachmark/Coachmark.js +7 -10
- package/es/components/Coachmark/CoachmarkDragbar.d.ts +40 -2
- package/es/components/Coachmark/CoachmarkDragbar.js +3 -1
- package/es/components/Coachmark/CoachmarkHeader.d.ts +27 -2
- package/es/components/Coachmark/CoachmarkHeader.js +0 -1
- package/es/components/Coachmark/CoachmarkOverlay.d.ts +42 -2
- package/es/components/Coachmark/CoachmarkOverlay.js +18 -15
- package/es/components/Coachmark/CoachmarkTagline.d.ts +27 -2
- package/es/components/Coachmark/CoachmarkTagline.js +0 -1
- package/es/components/Coachmark/utils/enums.d.ts +20 -20
- package/es/components/Coachmark/utils/enums.js +22 -20
- package/es/components/CoachmarkButton/CoachmarkButton.d.ts +19 -2
- package/es/components/CoachmarkFixed/CoachmarkFixed.d.ts +42 -2
- package/es/components/CoachmarkFixed/CoachmarkFixed.js +4 -2
- package/es/components/CoachmarkOverlayElements/CoachmarkOverlayElements.d.ts +46 -2
- package/es/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +5 -4
- package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +2 -1
- package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +25 -23
- package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +2 -2
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +14 -24
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +2 -0
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +4 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +3 -3
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +11 -11
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +5 -3
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +54 -44
- package/es/components/CreateInfluencer/CreateInfluencer.d.ts +55 -17
- package/es/components/DataSpreadsheet/DataSpreadsheet.d.ts +67 -2
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +48 -27
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +139 -2
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +60 -39
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +89 -2
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +39 -27
- package/es/components/DataSpreadsheet/hooks/useMoveActiveCell.js +2 -1
- package/es/components/DataSpreadsheet/types/index.d.ts +30 -0
- package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.d.ts +19 -2
- package/es/components/GetStartedCard/GetStartedCard.d.ts +5 -0
- package/es/components/GetStartedCard/GetStartedCard.js +82 -0
- package/es/components/GetStartedCard/index.d.ts +1 -0
- package/es/components/Guidebanner/Guidebanner.js +2 -2
- package/es/components/NotificationsPanel/NotificationsPanel.d.ts +162 -1
- package/es/components/NotificationsPanel/NotificationsPanel.js +10 -10
- package/es/components/SearchBar/SearchBar.d.ts +10 -1
- package/es/components/SearchBar/SearchBar.js +26 -20
- package/es/components/SidePanel/SidePanel.js +1 -1
- package/es/components/TagOverflow/TagOverflow.d.ts +5 -0
- package/es/components/TagOverflow/TagOverflow.js +153 -29
- package/es/components/TagOverflow/TagOverflowModal.d.ts +29 -0
- package/es/components/TagOverflow/TagOverflowModal.js +112 -0
- package/es/components/TagOverflow/TagOverflowPopover.d.ts +2 -0
- package/es/components/TagOverflow/TagOverflowPopover.js +135 -0
- package/es/components/TagSet/TagSet.d.ts +87 -3
- package/es/components/TagSet/TagSet.js +20 -9
- package/es/components/TagSet/TagSetModal.d.ts +32 -26
- package/es/components/TagSet/TagSetModal.js +5 -5
- package/es/components/TagSet/TagSetOverflow.d.ts +45 -2
- package/es/components/TagSet/TagSetOverflow.js +14 -12
- package/es/components/WebTerminal/WebTerminal.js +2 -2
- package/es/components/WebTerminal/WebTerminalContentWrapper.d.ts +15 -2
- package/es/components/WebTerminal/hooks/index.d.ts +16 -11
- package/es/components/WebTerminal/hooks/index.js +1 -1
- package/es/components/index.d.ts +1 -0
- package/es/global/js/package-settings.d.ts +2 -1
- package/es/global/js/package-settings.js +2 -1
- package/es/index.js +1 -0
- package/es/node_modules/@carbon/colors/es/index.js +4 -1
- package/es/settings.d.ts +2 -1
- package/lib/components/ActionSet/ActionSet.js +2 -1
- package/lib/components/Card/Card.js +50 -9
- package/lib/components/Card/CardFooter.d.ts +5 -1
- package/lib/components/Card/CardFooter.js +11 -1
- package/lib/components/Carousel/Carousel.d.ts +6 -2
- package/lib/components/Checklist/Checklist.d.ts +100 -2
- package/lib/components/Checklist/Checklist.js +19 -15
- package/lib/components/Checklist/Checklist.types.d.ts +19 -0
- package/lib/components/Checklist/Checklist.types.js +27 -0
- package/lib/components/Checklist/ChecklistChart.d.ts +6 -2
- package/lib/components/Checklist/ChecklistChart.js +17 -36
- package/lib/components/Checklist/ChecklistIcon.d.ts +5 -1
- package/lib/components/Checklist/ChecklistIcon.js +9 -4
- package/lib/components/Coachmark/Coachmark.d.ts +65 -2
- package/lib/components/Coachmark/Coachmark.js +6 -9
- package/lib/components/Coachmark/CoachmarkDragbar.d.ts +40 -2
- package/lib/components/Coachmark/CoachmarkDragbar.js +3 -1
- package/lib/components/Coachmark/CoachmarkHeader.d.ts +27 -2
- package/lib/components/Coachmark/CoachmarkHeader.js +0 -1
- package/lib/components/Coachmark/CoachmarkOverlay.d.ts +42 -2
- package/lib/components/Coachmark/CoachmarkOverlay.js +18 -15
- package/lib/components/Coachmark/CoachmarkTagline.d.ts +27 -2
- package/lib/components/Coachmark/CoachmarkTagline.js +0 -1
- package/lib/components/Coachmark/utils/enums.d.ts +20 -20
- package/lib/components/Coachmark/utils/enums.js +22 -20
- package/lib/components/CoachmarkButton/CoachmarkButton.d.ts +19 -2
- package/lib/components/CoachmarkFixed/CoachmarkFixed.d.ts +42 -2
- package/lib/components/CoachmarkFixed/CoachmarkFixed.js +4 -2
- package/lib/components/CoachmarkOverlayElements/CoachmarkOverlayElements.d.ts +46 -2
- package/lib/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +5 -4
- package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +2 -1
- package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +25 -23
- package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +2 -2
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +13 -23
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +2 -0
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +4 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +3 -3
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +11 -11
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +5 -3
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +54 -44
- package/lib/components/CreateInfluencer/CreateInfluencer.d.ts +55 -17
- package/lib/components/DataSpreadsheet/DataSpreadsheet.d.ts +67 -2
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +48 -27
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +139 -2
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +59 -38
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +89 -2
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +39 -27
- package/lib/components/DataSpreadsheet/hooks/useMoveActiveCell.js +2 -1
- package/lib/components/DataSpreadsheet/types/index.d.ts +30 -0
- package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.d.ts +19 -2
- package/lib/components/GetStartedCard/GetStartedCard.d.ts +5 -0
- package/lib/components/GetStartedCard/GetStartedCard.js +88 -0
- package/lib/components/GetStartedCard/index.d.ts +1 -0
- package/lib/components/Guidebanner/Guidebanner.js +2 -2
- package/lib/components/NotificationsPanel/NotificationsPanel.d.ts +162 -1
- package/lib/components/NotificationsPanel/NotificationsPanel.js +10 -10
- package/lib/components/SearchBar/SearchBar.d.ts +10 -1
- package/lib/components/SearchBar/SearchBar.js +26 -18
- package/lib/components/SidePanel/SidePanel.js +1 -1
- package/lib/components/TagOverflow/TagOverflow.d.ts +5 -0
- package/lib/components/TagOverflow/TagOverflow.js +154 -28
- package/lib/components/TagOverflow/TagOverflowModal.d.ts +29 -0
- package/lib/components/TagOverflow/TagOverflowModal.js +121 -0
- package/lib/components/TagOverflow/TagOverflowPopover.d.ts +2 -0
- package/lib/components/TagOverflow/TagOverflowPopover.js +144 -0
- package/lib/components/TagSet/TagSet.d.ts +87 -3
- package/lib/components/TagSet/TagSet.js +20 -9
- package/lib/components/TagSet/TagSetModal.d.ts +32 -26
- package/lib/components/TagSet/TagSetModal.js +3 -3
- package/lib/components/TagSet/TagSetOverflow.d.ts +45 -2
- package/lib/components/TagSet/TagSetOverflow.js +14 -12
- package/lib/components/WebTerminal/WebTerminal.js +2 -2
- package/lib/components/WebTerminal/WebTerminalContentWrapper.d.ts +15 -2
- package/lib/components/WebTerminal/hooks/index.d.ts +16 -11
- package/lib/components/WebTerminal/hooks/index.js +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/global/js/package-settings.d.ts +2 -1
- package/lib/global/js/package-settings.js +2 -1
- package/lib/index.js +5 -0
- package/lib/node_modules/@carbon/colors/es/index.js +6 -0
- package/lib/settings.d.ts +2 -1
- package/package.json +3 -3
- package/scss/components/Checklist/_carbon-imports.scss +2 -2
- package/scss/components/GetStartedCard/_carbon-imports.scss +9 -0
- package/scss/components/GetStartedCard/_get-started-card.scss +135 -0
- package/scss/components/GetStartedCard/_index-with-carbon.scss +9 -0
- package/scss/components/GetStartedCard/_index.scss +8 -0
- package/scss/components/TagOverflow/_tag-overflow.scss +157 -0
- package/scss/components/_index-released-only-with-carbon.scss +2 -1
- package/scss/components/_index-released-only.scss +2 -1
- package/scss/components/_index-with-carbon.scss +2 -0
- package/scss/components/_index.scss +1 -0
- package/telemetry.yml +28 -24
@@ -9,12 +9,14 @@ import { objectWithoutProperties as _objectWithoutProperties, objectSpread2 as _
|
|
9
9
|
import React__default, { forwardRef } from 'react';
|
10
10
|
import cx from 'classnames';
|
11
11
|
import { Layer, OverflowMenu, OverflowMenuItem, Button, IconButton } from '@carbon/react';
|
12
|
+
import { Incomplete, CheckmarkOutline } from '@carbon/react/icons';
|
12
13
|
import PropTypes from '../../node_modules/prop-types/index.js';
|
13
14
|
import { CardHeader } from './CardHeader.js';
|
14
15
|
import { CardFooter } from './CardFooter.js';
|
15
16
|
import { pkg } from '../../settings.js';
|
16
17
|
|
17
|
-
var
|
18
|
+
var _Incomplete, _CheckmarkOutline;
|
19
|
+
var _excluded = ["actionIcons", "actionsPlacement", "metadata", "children", "className", "clickZone", "description", "disabled", "footerActionIcon", "getStarted", "label", "media", "mediaPosition", "onClick", "onKeyDown", "onPrimaryButtonClick", "overflowActions", "overflowAriaLabel", "onSecondaryButtonClick", "pictogram", "primaryButtonDisabled", "primaryButtonHref", "primaryButtonIcon", "primaryButtonKind", "primaryButtonPlacement", "primaryButtonText", "productive", "secondaryButtonDisabled", "secondaryButtonHref", "secondaryButtonIcon", "secondaryButtonKind", "secondaryButtonPlacement", "secondaryButtonText", "slug", "status", "sequence", "title", "titleSize"],
|
18
20
|
_excluded2 = ["id"],
|
19
21
|
_excluded3 = ["id", "icon", "onClick", "iconDescription", "href"];
|
20
22
|
var componentName = 'Card';
|
@@ -38,11 +40,16 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
38
40
|
actionIcons = _ref$actionIcons === void 0 ? defaults.actionIcons : _ref$actionIcons,
|
39
41
|
_ref$actionsPlacement = _ref.actionsPlacement,
|
40
42
|
actionsPlacement = _ref$actionsPlacement === void 0 ? defaults.actionsPlacement : _ref$actionsPlacement,
|
43
|
+
_ref$metadata = _ref.metadata,
|
44
|
+
metadata = _ref$metadata === void 0 ? defaults.actionIcons : _ref$metadata,
|
41
45
|
children = _ref.children,
|
42
46
|
className = _ref.className,
|
43
47
|
_ref$clickZone = _ref.clickZone,
|
44
48
|
clickZone = _ref$clickZone === void 0 ? defaults.clickZone : _ref$clickZone,
|
45
49
|
description = _ref.description,
|
50
|
+
disabled = _ref.disabled,
|
51
|
+
footerActionIcon = _ref.footerActionIcon,
|
52
|
+
getStarted = _ref.getStarted,
|
46
53
|
label = _ref.label,
|
47
54
|
media = _ref.media,
|
48
55
|
_ref$mediaPosition = _ref.mediaPosition,
|
@@ -74,12 +81,18 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
74
81
|
secondaryButtonPlacement = _ref$secondaryButtonP === void 0 ? defaults.secondaryButtonPlacement : _ref$secondaryButtonP,
|
75
82
|
secondaryButtonText = _ref.secondaryButtonText,
|
76
83
|
slug = _ref.slug,
|
84
|
+
status = _ref.status,
|
85
|
+
sequence = _ref.sequence,
|
77
86
|
title = _ref.title,
|
78
87
|
_ref$titleSize = _ref.titleSize,
|
79
88
|
titleSize = _ref$titleSize === void 0 ? defaults.titleSize : _ref$titleSize,
|
80
89
|
rest = _objectWithoutProperties(_ref, _excluded);
|
90
|
+
var getIcons = function getIcons() {
|
91
|
+
return getStarted ? metadata : actionIcons;
|
92
|
+
};
|
81
93
|
var blockClass = "".concat(pkg.prefix, "--card");
|
82
|
-
var hasActions =
|
94
|
+
var hasActions = getIcons().length > 0 || overflowActions.length > 0 || !!primaryButtonText && primaryButtonPlacement === 'top';
|
95
|
+
var hasHeaderActions = hasActions && actionsPlacement === 'top';
|
83
96
|
var hasFooterActions = hasActions && actionsPlacement === 'bottom';
|
84
97
|
var hasFooterButton = !!secondaryButtonText || !!primaryButtonText && primaryButtonPlacement === 'bottom';
|
85
98
|
var hasBottomBar = hasFooterActions || hasFooterButton;
|
@@ -111,13 +124,21 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
111
124
|
}, rest));
|
112
125
|
})));
|
113
126
|
}
|
114
|
-
var icons =
|
127
|
+
var icons = getIcons().map(function (_ref3) {
|
115
128
|
var id = _ref3.id,
|
116
129
|
Icon = _ref3.icon,
|
117
130
|
onClick = _ref3.onClick,
|
118
131
|
iconDescription = _ref3.iconDescription,
|
119
132
|
href = _ref3.href,
|
120
133
|
rest = _objectWithoutProperties(_ref3, _excluded3);
|
134
|
+
if (getStarted) {
|
135
|
+
return /*#__PURE__*/React__default.createElement("span", {
|
136
|
+
key: id,
|
137
|
+
className: "".concat(blockClass, "__icon")
|
138
|
+
}, /*#__PURE__*/React__default.createElement(Icon, {
|
139
|
+
"aria-label": iconDescription
|
140
|
+
}), iconDescription);
|
141
|
+
}
|
121
142
|
if (productive) {
|
122
143
|
return /*#__PURE__*/React__default.createElement(Button, _extends({}, rest, {
|
123
144
|
key: id,
|
@@ -157,7 +178,7 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
157
178
|
var clickable = hasClickEvent && !productive || hasClickEvent && productive && clickZone === 'one';
|
158
179
|
var cardProps = _objectSpread2(_objectSpread2({}, rest), {}, {
|
159
180
|
ref: ref,
|
160
|
-
className: cx(blockClass, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "".concat(blockClass, "__productive"), productive), "".concat(blockClass, "__clickable"), clickable), "".concat(blockClass, "__media-left"), mediaPosition === 'left'), "".concat(blockClass, "--has-slug"), !!slug), className)
|
181
|
+
className: cx(blockClass, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "".concat(blockClass, "__disabled"), disabled), "".concat(blockClass, "__get-started"), getStarted), "".concat(blockClass, "__productive"), productive), "".concat(blockClass, "__clickable"), clickable), "".concat(blockClass, "__media-left"), mediaPosition === 'left'), "".concat(blockClass, "--has-slug"), !!slug), className)
|
161
182
|
}, clickable && clickableProps);
|
162
183
|
return cardProps;
|
163
184
|
};
|
@@ -173,7 +194,7 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
173
194
|
var getHeaderProps = function getHeaderProps() {
|
174
195
|
return {
|
175
196
|
actions: actionsPlacement === 'top' ? getActions() : '',
|
176
|
-
noActionIcons:
|
197
|
+
noActionIcons: getIcons().length > 0 && actionsPlacement === 'top' ? false : true,
|
177
198
|
actionsPlacement: actionsPlacement,
|
178
199
|
onPrimaryButtonClick: onPrimaryButtonClick,
|
179
200
|
onSecondaryButtonClick: onSecondaryButtonClick,
|
@@ -182,7 +203,7 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
182
203
|
primaryButtonText: primaryButtonText,
|
183
204
|
primaryButtonDisabled: primaryButtonDisabled,
|
184
205
|
description: description,
|
185
|
-
hasActions:
|
206
|
+
hasActions: hasHeaderActions,
|
186
207
|
inClickableCard: hasClickEvent,
|
187
208
|
label: label,
|
188
209
|
secondaryButtonDisabled: secondaryButtonDisabled,
|
@@ -206,6 +227,8 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
206
227
|
return {
|
207
228
|
actions: actionsPlacement === 'bottom' ? getActions() : '',
|
208
229
|
actionsPlacement: actionsPlacement,
|
230
|
+
disabled: disabled,
|
231
|
+
footerActionIcon: footerActionIcon,
|
209
232
|
hasActions: hasFooterActions,
|
210
233
|
hasButton: hasFooterButton,
|
211
234
|
onPrimaryButtonClick: onPrimaryButtonClick,
|
@@ -225,13 +248,21 @@ var Card = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
225
248
|
secondaryButtonText: secondaryButtonText
|
226
249
|
};
|
227
250
|
};
|
228
|
-
return /*#__PURE__*/React__default.createElement("div", getCardProps(), media && /*#__PURE__*/React__default.createElement("div", {
|
251
|
+
return /*#__PURE__*/React__default.createElement("div", getCardProps(), !getStarted && media && /*#__PURE__*/React__default.createElement("div", {
|
229
252
|
className: "".concat(blockClass, "__media")
|
230
253
|
}, media), Pictogram && /*#__PURE__*/React__default.createElement("div", {
|
231
254
|
className: "".concat(blockClass, "__pictogram")
|
232
|
-
}, /*#__PURE__*/React__default.createElement(Pictogram, null)), /*#__PURE__*/React__default.createElement("div", {
|
255
|
+
}, /*#__PURE__*/React__default.createElement(Pictogram, null)), getStarted && sequence && /*#__PURE__*/React__default.createElement("div", {
|
256
|
+
className: "".concat(blockClass, "__sequence")
|
257
|
+
}, sequence), getStarted && status && /*#__PURE__*/React__default.createElement("div", {
|
258
|
+
className: "".concat(blockClass, "__status")
|
259
|
+
}, status === 'incomplete' && (_Incomplete || (_Incomplete = /*#__PURE__*/React__default.createElement(Incomplete, null))), status === 'complete' && (_CheckmarkOutline || (_CheckmarkOutline = /*#__PURE__*/React__default.createElement(CheckmarkOutline, null)))), /*#__PURE__*/React__default.createElement("div", {
|
233
260
|
className: "".concat(blockClass, "__content-container")
|
234
|
-
}, /*#__PURE__*/React__default.createElement("div", getHeaderBodyProps(), /*#__PURE__*/React__default.createElement(
|
261
|
+
}, /*#__PURE__*/React__default.createElement("div", getHeaderBodyProps(), /*#__PURE__*/React__default.createElement("div", {
|
262
|
+
className: "".concat(blockClass, "__header-container")
|
263
|
+
}, /*#__PURE__*/React__default.createElement(CardHeader, getHeaderProps()), /*#__PURE__*/React__default.createElement("div", getBodyProps(), children)), getStarted && media && /*#__PURE__*/React__default.createElement("div", {
|
264
|
+
className: "".concat(blockClass, "__media")
|
265
|
+
}, media)), hasBottomBar && /*#__PURE__*/React__default.createElement(CardFooter, getFooterProps())));
|
235
266
|
});
|
236
267
|
Card.propTypes = {
|
237
268
|
actionIcons: PropTypes.arrayOf(PropTypes.shape({
|
@@ -247,9 +278,17 @@ Card.propTypes = {
|
|
247
278
|
className: PropTypes.string,
|
248
279
|
clickZone: PropTypes.oneOf(['one', 'two', 'three']),
|
249
280
|
description: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.node]),
|
281
|
+
disabled: PropTypes.bool,
|
282
|
+
footerActionIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
283
|
+
getStarted: PropTypes.bool,
|
250
284
|
label: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.node]),
|
251
285
|
media: PropTypes.node,
|
252
286
|
mediaPosition: PropTypes.oneOf(['top', 'left']),
|
287
|
+
metadata: PropTypes.arrayOf(PropTypes.shape({
|
288
|
+
id: PropTypes.string,
|
289
|
+
icon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
290
|
+
iconDescription: PropTypes.string
|
291
|
+
})),
|
253
292
|
onClick: PropTypes.func,
|
254
293
|
onKeyDown: PropTypes.func,
|
255
294
|
onPrimaryButtonClick: PropTypes.func,
|
@@ -275,11 +314,13 @@ Card.propTypes = {
|
|
275
314
|
secondaryButtonKind: PropTypes.oneOf(['secondary', 'ghost']),
|
276
315
|
secondaryButtonPlacement: PropTypes.oneOf(['top', 'bottom']),
|
277
316
|
secondaryButtonText: PropTypes.string,
|
317
|
+
sequence: PropTypes.number,
|
278
318
|
/**
|
279
319
|
* **Experimental:** For all cases a `Slug` component can be provided.
|
280
320
|
* Clickable tiles only accept a boolean value of true and display a hollow slug.
|
281
321
|
*/
|
282
322
|
slug: PropTypes.oneOfType([PropTypes.node, PropTypes.bool]),
|
323
|
+
status: PropTypes.oneOf(['complete', 'incomplete']),
|
283
324
|
title: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.node]),
|
284
325
|
titleSize: PropTypes.oneOf(['default', 'large'])
|
285
326
|
};
|
@@ -1,5 +1,7 @@
|
|
1
|
-
export function CardFooter({ actions, hasActions, hasButton, onPrimaryButtonClick, onSecondaryButtonClick, primaryButtonDisabled, primaryButtonHref, primaryButtonIcon, primaryButtonKind, primaryButtonPlacement, primaryButtonText, productive, secondaryButtonDisabled, secondaryButtonHref, secondaryButtonIcon, secondaryButtonKind, secondaryButtonPlacement, secondaryButtonText, }: {
|
1
|
+
export function CardFooter({ actions, disabled, footerActionIcon: FooterActionIcon, hasActions, hasButton, onPrimaryButtonClick, onSecondaryButtonClick, primaryButtonDisabled, primaryButtonHref, primaryButtonIcon, primaryButtonKind, primaryButtonPlacement, primaryButtonText, productive, secondaryButtonDisabled, secondaryButtonHref, secondaryButtonIcon, secondaryButtonKind, secondaryButtonPlacement, secondaryButtonText, }: {
|
2
2
|
actions?: any[] | undefined;
|
3
|
+
disabled: any;
|
4
|
+
footerActionIcon: any;
|
3
5
|
hasActions: any;
|
4
6
|
hasButton: any;
|
5
7
|
onPrimaryButtonClick: any;
|
@@ -21,6 +23,8 @@ export function CardFooter({ actions, hasActions, hasButton, onPrimaryButtonClic
|
|
21
23
|
export namespace CardFooter {
|
22
24
|
export namespace propTypes {
|
23
25
|
let actions: PropTypes.Requireable<NonNullable<any[] | PropTypes.ReactNodeLike>>;
|
26
|
+
let disabled: PropTypes.Requireable<boolean>;
|
27
|
+
let footerActionIcon: PropTypes.Requireable<object>;
|
24
28
|
let hasActions: PropTypes.Requireable<boolean>;
|
25
29
|
let hasButton: PropTypes.Requireable<boolean>;
|
26
30
|
let onPrimaryButtonClick: PropTypes.Requireable<(...args: any[]) => any>;
|
@@ -11,7 +11,9 @@ import cx from 'classnames';
|
|
11
11
|
import { Button } from '@carbon/react';
|
12
12
|
import PropTypes from '../../node_modules/prop-types/index.js';
|
13
13
|
import { pkg } from '../../settings.js';
|
14
|
+
import { Error } from '@carbon/react/icons';
|
14
15
|
|
16
|
+
var _Error;
|
15
17
|
var componentName = 'CardFooter';
|
16
18
|
var defaults = {
|
17
19
|
actions: Object.freeze([]),
|
@@ -22,6 +24,8 @@ var defaults = {
|
|
22
24
|
var CardFooter = function CardFooter(_ref) {
|
23
25
|
var _ref$actions = _ref.actions,
|
24
26
|
actions = _ref$actions === void 0 ? defaults.actions : _ref$actions,
|
27
|
+
disabled = _ref.disabled,
|
28
|
+
FooterActionIcon = _ref.footerActionIcon,
|
25
29
|
hasActions = _ref.hasActions,
|
26
30
|
hasButton = _ref.hasButton,
|
27
31
|
onPrimaryButtonClick = _ref.onPrimaryButtonClick,
|
@@ -63,10 +67,16 @@ var CardFooter = function CardFooter(_ref) {
|
|
63
67
|
disabled: primaryButtonDisabled
|
64
68
|
}, primaryButtonText), hasActions && /*#__PURE__*/React__default.createElement("div", {
|
65
69
|
className: "".concat(blockClass, "__actions")
|
66
|
-
}, actions)
|
70
|
+
}, actions), FooterActionIcon && /*#__PURE__*/React__default.createElement("div", {
|
71
|
+
className: "".concat(blockClass, "__action-icon")
|
72
|
+
}, disabled ? _Error || (_Error = /*#__PURE__*/React__default.createElement(Error, {
|
73
|
+
size: 16
|
74
|
+
})) : /*#__PURE__*/React__default.createElement(FooterActionIcon, null)));
|
67
75
|
};
|
68
76
|
CardFooter.propTypes = {
|
69
77
|
actions: PropTypes.oneOfType([PropTypes.array, PropTypes.node]),
|
78
|
+
disabled: PropTypes.bool,
|
79
|
+
footerActionIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
70
80
|
hasActions: PropTypes.bool,
|
71
81
|
hasButton: PropTypes.bool,
|
72
82
|
onPrimaryButtonClick: PropTypes.func,
|
@@ -5,7 +5,7 @@
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
7
|
import React, { ReactNode } from 'react';
|
8
|
-
interface CarouselProps {
|
8
|
+
export interface CarouselProps {
|
9
9
|
/**
|
10
10
|
* Provide the contents of the Carousel.
|
11
11
|
*/
|
@@ -41,6 +41,10 @@ interface CarouselProps {
|
|
41
41
|
* a value between 0 and 1.
|
42
42
|
*/
|
43
43
|
onScroll?: (scrollPercent: number) => void;
|
44
|
+
/**
|
45
|
+
* Additional props passed to the component.
|
46
|
+
*/
|
47
|
+
[key: string]: any;
|
44
48
|
}
|
45
49
|
/**
|
46
50
|
* The Carousel acts as a scaffold for other Novice to Pro content.
|
@@ -58,5 +62,5 @@ interface CarouselProps {
|
|
58
62
|
* 2. From the right-aligned position, when scrolling left,
|
59
63
|
* the left-most item should again be left-aligned.
|
60
64
|
*/
|
61
|
-
declare const Carousel: React.ForwardRefExoticComponent<CarouselProps & React.RefAttributes<HTMLDivElement>>;
|
65
|
+
declare const Carousel: React.ForwardRefExoticComponent<Omit<CarouselProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
62
66
|
export { Carousel };
|
@@ -1,8 +1,106 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2023, 2024
|
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
|
+
/// <reference path="../../../src/custom-typings/index.d.ts" />
|
8
|
+
/**
|
9
|
+
* TODO: Breakdown titles, icons, clickable items into sub-components
|
10
|
+
* See
|
11
|
+
* ModifiedTabs (ModifiedTabLabelNew, ModifiedTabLabelWithClose)
|
12
|
+
* PageHeader (PageHeaderTitle, PageHeaderUtils)
|
13
|
+
*/
|
14
|
+
import React, { ReactNode } from 'react';
|
15
|
+
import { IconButton } from '@carbon/react';
|
16
|
+
import { Kind, Theme } from './Checklist.types';
|
17
|
+
type Task = {
|
18
|
+
kind: Kind;
|
19
|
+
label: string;
|
20
|
+
onClick?(task?: Task): void;
|
21
|
+
};
|
22
|
+
type TaskList = {
|
23
|
+
title?: string;
|
24
|
+
tasks: Array<Task>;
|
25
|
+
};
|
26
|
+
interface ChecklistProps {
|
27
|
+
/**
|
28
|
+
* Define both `chartLabel` and `chartValue` to show the chart and its label together.
|
29
|
+
*/
|
30
|
+
chartLabel?: string;
|
31
|
+
/**
|
32
|
+
* A number between 0 and 1.
|
33
|
+
*
|
34
|
+
* Define both `chartLabel` and `chartValue` to show the chart and its label together.
|
35
|
+
*/
|
36
|
+
chartValue?: number;
|
37
|
+
/**
|
38
|
+
* Aria-label for the Checklist component.
|
39
|
+
*/
|
40
|
+
checklistAriaLabel?: string;
|
41
|
+
/**
|
42
|
+
* Aria-label for the Checklist's toggle component.
|
43
|
+
*/
|
44
|
+
checklistToggleAriaLabel?: string;
|
45
|
+
/**
|
46
|
+
* Provide an optional class to be applied to the containing node.
|
47
|
+
*/
|
48
|
+
className?: string;
|
49
|
+
/**
|
50
|
+
* Whether or not to show the open/close toggle.
|
51
|
+
*/
|
52
|
+
enableToggle?: boolean;
|
53
|
+
/**
|
54
|
+
* Callback for the "View all" button. See also `viewAllLabel`.
|
55
|
+
*/
|
56
|
+
onClickViewAll?(): void;
|
57
|
+
/**
|
58
|
+
* Optional callback for when the list is opened/closed.
|
59
|
+
*/
|
60
|
+
onToggle?(isOpen?: boolean): void;
|
61
|
+
/**
|
62
|
+
* Specifies whether the component is opened or closed.
|
63
|
+
* This can be set during initialization, or changed after being rendered.
|
64
|
+
*/
|
65
|
+
open?: boolean;
|
66
|
+
/**
|
67
|
+
* The task list can be broken down into sub-lists.
|
68
|
+
*
|
69
|
+
* Each sub-list can include an optional `title`.
|
70
|
+
*
|
71
|
+
* Each task must specify the appropriate icon (`kind`) and `label`.
|
72
|
+
*
|
73
|
+
* If any task has an `onClick` callback function defined,
|
74
|
+
* then the `label` will be rendered as a button,
|
75
|
+
* else the `label` will be rendered as plain text.
|
76
|
+
*/
|
77
|
+
taskLists: Array<TaskList>;
|
78
|
+
/**
|
79
|
+
* Determines the theme of the component.
|
80
|
+
*/
|
81
|
+
theme?: Theme;
|
82
|
+
/**
|
83
|
+
* The title of the component.
|
84
|
+
*/
|
85
|
+
title?: ReactNode;
|
86
|
+
/**
|
87
|
+
* The label for the toggle's tooltip.
|
88
|
+
*/
|
89
|
+
toggleLabel?: string;
|
90
|
+
/**
|
91
|
+
* The alignment of the toggle's tooltip.
|
92
|
+
*/
|
93
|
+
toggleLabelAlign?: React.ComponentProps<typeof IconButton>['align'];
|
94
|
+
/**
|
95
|
+
* If defined, will show and enable the "View all (#)" button at the bottom of the list.
|
96
|
+
*/
|
97
|
+
viewAllLabel?: string;
|
98
|
+
}
|
1
99
|
/**
|
2
100
|
* The Checklist tracks a user's progress much like Your Learning or
|
3
101
|
* WalkMe. Each item in the list can be clickable, and each item has
|
4
102
|
* an icon that defines the item's state as "not started", "in progress",
|
5
103
|
* and "complete".
|
6
104
|
*/
|
7
|
-
export let Checklist: React.ForwardRefExoticComponent<React.RefAttributes<
|
8
|
-
|
105
|
+
export declare let Checklist: React.ForwardRefExoticComponent<ChecklistProps & React.RefAttributes<HTMLElement>>;
|
106
|
+
export {};
|
@@ -16,8 +16,9 @@ import { IconButton, Button } from '@carbon/react';
|
|
16
16
|
import { ChevronUp } from '@carbon/react/icons';
|
17
17
|
import { ChecklistIcon } from './ChecklistIcon.js';
|
18
18
|
import { ChecklistChart } from './ChecklistChart.js';
|
19
|
+
import { Themes, Kinds } from './Checklist.types.js';
|
19
20
|
|
20
|
-
var _excluded = ["chartValue", "chartLabel", "checklistAriaLabel", "checklistToggleAriaLabel", "className", "onClickViewAll", "onToggle", "open", "
|
21
|
+
var _excluded = ["chartValue", "chartLabel", "checklistAriaLabel", "checklistToggleAriaLabel", "className", "onClickViewAll", "onToggle", "open", "enableToggle", "taskLists", "theme", "title", "toggleLabel", "toggleLabelAlign", "viewAllLabel"];
|
21
22
|
|
22
23
|
// The block part of our conventional BEM class names (blockClass__E--M).
|
23
24
|
var blockClass = "".concat(pkg.prefix, "--checklist");
|
@@ -41,9 +42,9 @@ var defaults = {
|
|
41
42
|
onClickViewAll: function onClickViewAll() {},
|
42
43
|
onToggle: function onToggle() {},
|
43
44
|
open: true,
|
44
|
-
|
45
|
+
enableToggle: true,
|
45
46
|
taskLists: [],
|
46
|
-
theme:
|
47
|
+
theme: Themes.light,
|
47
48
|
toggleLabel: 'Toggle',
|
48
49
|
toggleLabelAlign: 'top'
|
49
50
|
};
|
@@ -68,8 +69,8 @@ var Checklist = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
|
|
68
69
|
onToggle = _ref$onToggle === void 0 ? defaults.onToggle : _ref$onToggle,
|
69
70
|
_ref$open = _ref.open,
|
70
71
|
open = _ref$open === void 0 ? defaults.open : _ref$open,
|
71
|
-
_ref$
|
72
|
-
|
72
|
+
_ref$enableToggle = _ref.enableToggle,
|
73
|
+
enableToggle = _ref$enableToggle === void 0 ? defaults.enableToggle : _ref$enableToggle,
|
73
74
|
_ref$taskLists = _ref.taskLists,
|
74
75
|
taskLists = _ref$taskLists === void 0 ? defaults.taskLists : _ref$taskLists,
|
75
76
|
_ref$theme = _ref.theme,
|
@@ -133,7 +134,7 @@ var Checklist = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
|
|
133
134
|
}, title), chartLabelAndValue && /*#__PURE__*/React__default.createElement("h3", {
|
134
135
|
id: chartLabelId,
|
135
136
|
className: "".concat(blockClass, "__chart-label")
|
136
|
-
}, chartLabel)),
|
137
|
+
}, chartLabel)), enableToggle && /*#__PURE__*/React__default.createElement(IconButton, {
|
137
138
|
align: toggleLabelAlign,
|
138
139
|
"aria-controls": listContainerId,
|
139
140
|
"aria-expanded": isOpen,
|
@@ -167,11 +168,13 @@ var Checklist = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
|
|
167
168
|
className: "".concat(blockClass, "__list-item"),
|
168
169
|
key: "".concat(item.label, "-").concat(index)
|
169
170
|
}, /*#__PURE__*/React__default.createElement(ChecklistIcon, {
|
170
|
-
kind: item.kind
|
171
|
+
kind: item.kind,
|
172
|
+
theme: theme
|
171
173
|
}), typeof item.onClick === 'function' ? /*#__PURE__*/React__default.createElement(Button, {
|
172
174
|
className: cx("".concat(blockClass, "__button"), _defineProperty({}, "".concat(blockClass, "__button--error"), item.kind === 'error')),
|
173
175
|
onClick: function onClick() {
|
174
|
-
|
176
|
+
var _item$onClick;
|
177
|
+
(_item$onClick = item.onClick) === null || _item$onClick === void 0 || _item$onClick.call(item, item);
|
175
178
|
},
|
176
179
|
size: "sm",
|
177
180
|
title: item.label
|
@@ -219,6 +222,10 @@ Checklist.propTypes = {
|
|
219
222
|
* Provide an optional class to be applied to the containing node.
|
220
223
|
*/
|
221
224
|
className: PropTypes.string,
|
225
|
+
/**
|
226
|
+
* Whether or not to show the open/close toggle.
|
227
|
+
*/
|
228
|
+
enableToggle: PropTypes.bool,
|
222
229
|
/**
|
223
230
|
* Callback for the "View all" button. See also `viewAllLabel`.
|
224
231
|
*/
|
@@ -232,10 +239,6 @@ Checklist.propTypes = {
|
|
232
239
|
* This can be set during initialization, or changed after being rendered.
|
233
240
|
*/
|
234
241
|
open: PropTypes.bool,
|
235
|
-
/**
|
236
|
-
* Whether or not to show the open/close toggle.
|
237
|
-
*/
|
238
|
-
showToggle: PropTypes.bool,
|
239
242
|
/**
|
240
243
|
* The task list can be broken down into sub-lists.
|
241
244
|
*
|
@@ -247,10 +250,11 @@ Checklist.propTypes = {
|
|
247
250
|
* then the `label` will be rendered as a button,
|
248
251
|
* else the `label` will be rendered as plain text.
|
249
252
|
*/
|
253
|
+
/**@ts-ignore */
|
250
254
|
taskLists: PropTypes.arrayOf(PropTypes.shape({
|
251
255
|
title: PropTypes.string,
|
252
256
|
tasks: PropTypes.arrayOf(PropTypes.shape({
|
253
|
-
kind: PropTypes.oneOf([
|
257
|
+
kind: PropTypes.oneOf([Kinds.unchecked, Kinds.indeterminate, Kinds.checked, Kinds.disabled, Kinds.error]).isRequired,
|
254
258
|
label: PropTypes.string.isRequired,
|
255
259
|
onClick: PropTypes.func
|
256
260
|
})).isRequired
|
@@ -258,11 +262,11 @@ Checklist.propTypes = {
|
|
258
262
|
/**
|
259
263
|
* Determines the theme of the component.
|
260
264
|
*/
|
261
|
-
theme: PropTypes.oneOf([
|
265
|
+
theme: PropTypes.oneOf([Themes.light, Themes.dark]),
|
262
266
|
/**
|
263
267
|
* The title of the component.
|
264
268
|
*/
|
265
|
-
title: PropTypes.
|
269
|
+
title: PropTypes.node,
|
266
270
|
/**
|
267
271
|
* The label for the toggle's tooltip.
|
268
272
|
*/
|
@@ -0,0 +1,19 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2024, 2024
|
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
|
+
export declare enum Themes {
|
8
|
+
light = "light",
|
9
|
+
dark = "dark"
|
10
|
+
}
|
11
|
+
export type Theme = Themes.light | Themes.dark;
|
12
|
+
export declare enum Kinds {
|
13
|
+
unchecked = "unchecked",
|
14
|
+
indeterminate = "indeterminate",
|
15
|
+
checked = "checked",
|
16
|
+
disabled = "disabled",
|
17
|
+
error = "error"
|
18
|
+
}
|
19
|
+
export type Kind = Kinds.unchecked | Kinds.indeterminate | Kinds.checked | Kinds.disabled | Kinds.error;
|
@@ -0,0 +1,22 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2020, 2024
|
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
|
+
|
8
|
+
var Themes = /*#__PURE__*/function (Themes) {
|
9
|
+
Themes["light"] = "light";
|
10
|
+
Themes["dark"] = "dark";
|
11
|
+
return Themes;
|
12
|
+
}({});
|
13
|
+
var Kinds = /*#__PURE__*/function (Kinds) {
|
14
|
+
Kinds["unchecked"] = "unchecked";
|
15
|
+
Kinds["indeterminate"] = "indeterminate";
|
16
|
+
Kinds["checked"] = "checked";
|
17
|
+
Kinds["disabled"] = "disabled";
|
18
|
+
Kinds["error"] = "error";
|
19
|
+
return Kinds;
|
20
|
+
}({});
|
21
|
+
|
22
|
+
export { Kinds, Themes };
|
@@ -1,5 +1,9 @@
|
|
1
1
|
/**
|
2
|
-
*
|
2
|
+
* Custom chart component used within Checklist PLG component
|
3
3
|
*/
|
4
|
-
export let ChecklistChart: React.ForwardRefExoticComponent<
|
4
|
+
export let ChecklistChart: React.ForwardRefExoticComponent<{
|
5
|
+
className?: string | undefined;
|
6
|
+
value: number;
|
7
|
+
theme?: import("./Checklist.types").Theme | undefined;
|
8
|
+
} & React.RefAttributes<any>>;
|
5
9
|
import React from 'react';
|
@@ -9,48 +9,35 @@ import { objectWithoutProperties as _objectWithoutProperties, extends as _extend
|
|
9
9
|
import React__default from 'react';
|
10
10
|
import PropTypes from '../../node_modules/prop-types/index.js';
|
11
11
|
import cx from 'classnames';
|
12
|
+
import clamp from 'lodash/clamp';
|
13
|
+
import { gray20, gray70, purple50 } from '../../node_modules/@carbon/colors/es/index.js';
|
12
14
|
import { getDevtoolsProps } from '../../global/js/utils/devtools.js';
|
13
15
|
import { pkg } from '../../settings.js';
|
14
|
-
import
|
16
|
+
import { Themes } from './Checklist.types.js';
|
15
17
|
|
16
18
|
var _excluded = ["className", "value", "theme"];
|
17
|
-
|
18
|
-
// Carbon and package components we use.
|
19
|
-
/* TODO: @import(s) of carbon components and other package components. */
|
20
|
-
|
21
|
-
// The block part of our conventional BEM class names (blockClass__E--M).
|
22
19
|
var blockClass = "".concat(pkg.prefix, "--checklist__chart");
|
23
20
|
var componentName = 'ChecklistChart';
|
24
|
-
|
25
|
-
// NOTE: the component SCSS is not imported here: it is rolled up separately.
|
26
|
-
|
27
|
-
// Default values can be included here and then assigned to the prop params,
|
28
|
-
// e.g. prop = defaults.prop,
|
29
|
-
// This gathers default values together neatly and ensures non-primitive
|
30
|
-
// values are initialized early to avoid react making unnecessary re-renders.
|
31
|
-
// Note that default values are not required for props that are 'required',
|
32
|
-
// nor for props where the component can apply undefined values reasonably.
|
33
|
-
// Default values should be provided when the component needs to make a choice
|
34
|
-
// or assumption when a prop is not supplied.
|
35
|
-
|
36
|
-
// Default values for props
|
37
21
|
var defaults = {
|
38
|
-
theme:
|
22
|
+
theme: Themes.light
|
39
23
|
};
|
40
24
|
|
41
25
|
/**
|
42
|
-
*
|
26
|
+
* Custom chart component used within Checklist PLG component
|
27
|
+
*/
|
28
|
+
var ChecklistChart = /*#__PURE__*/React__default.forwardRef(
|
29
|
+
/**
|
30
|
+
* @param {{className?: string, value: number, theme?: import('./Checklist.types').Theme}} props type description
|
43
31
|
*/
|
44
|
-
|
32
|
+
function (_ref, ref) {
|
45
33
|
var className = _ref.className,
|
46
34
|
value = _ref.value,
|
47
35
|
_ref$theme = _ref.theme,
|
48
36
|
theme = _ref$theme === void 0 ? defaults.theme : _ref$theme,
|
49
37
|
rest = _objectWithoutProperties(_ref, _excluded);
|
50
38
|
var numDegrees = clamp(value * 360, 0, 360);
|
51
|
-
var circleColor = theme ===
|
52
|
-
var progressColor =
|
53
|
-
|
39
|
+
var circleColor = theme === Themes.light ? gray20 : gray70; // $ui-03 (-ish)
|
40
|
+
var progressColor = purple50;
|
54
41
|
return /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
|
55
42
|
className: cx(blockClass, className),
|
56
43
|
style: {
|
@@ -61,13 +48,7 @@ var ChecklistChart = /*#__PURE__*/React__default.forwardRef(function (_ref, ref)
|
|
61
48
|
role: "img"
|
62
49
|
}, getDevtoolsProps(componentName)));
|
63
50
|
});
|
64
|
-
|
65
|
-
// Return a placeholder if not released and not enabled by feature flag
|
66
|
-
// ChecklistChart = pkg.checkComponentEnabled(ChecklistChart, componentName);
|
67
|
-
|
68
|
-
// The display name of the component, used by React. Note that displayName
|
69
|
-
// is used in preference to relying on function.name.
|
70
|
-
// ChecklistChart.displayName = componentName;
|
51
|
+
ChecklistChart.displayName = componentName;
|
71
52
|
|
72
53
|
// The types and DocGen commentary for the component props,
|
73
54
|
// in alphabetical order (for consistency).
|
@@ -80,7 +61,7 @@ ChecklistChart.propTypes = {
|
|
80
61
|
/**
|
81
62
|
* Determines the theme of the component.
|
82
63
|
*/
|
83
|
-
theme: PropTypes.oneOf([
|
64
|
+
theme: PropTypes.oneOf([Themes.light, Themes.dark]),
|
84
65
|
/**
|
85
66
|
* Number between 0 and 1.
|
86
67
|
*/
|
@@ -1,5 +1,9 @@
|
|
1
1
|
/**
|
2
2
|
* TODO: A description of the component.
|
3
3
|
*/
|
4
|
-
export let ChecklistIcon: React.ForwardRefExoticComponent<
|
4
|
+
export let ChecklistIcon: React.ForwardRefExoticComponent<{
|
5
|
+
className?: string | undefined;
|
6
|
+
kind?: import("./Checklist.types").Kind | undefined;
|
7
|
+
theme?: import("./Checklist.types").Theme | undefined;
|
8
|
+
} & React.RefAttributes<any>>;
|
5
9
|
import React from 'react';
|