@carbon/ibm-products 2.71.0 → 2.72.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.
- package/css/carbon.css +50 -0
- package/css/carbon.css.map +1 -1
- package/css/index-full-carbon.css +560 -185
- 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 +132 -1
- 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 +570 -245
- 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 +358 -33
- 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/{BigNumbers/BigNumbers.d.ts → BigNumber/BigNumber.d.ts} +5 -5
- package/es/components/{BigNumbers/BigNumbers.js → BigNumber/BigNumber.js} +12 -12
- package/es/components/BigNumber/BigNumberSkeleton.d.ts +17 -0
- package/es/components/{BigNumbers/BigNumbersSkeleton.js → BigNumber/BigNumberSkeleton.js} +16 -16
- package/es/components/{BigNumbers → BigNumber}/constants.d.ts +3 -3
- package/es/components/{BigNumbers → BigNumber}/constants.js +6 -6
- package/es/components/{BigNumbers → BigNumber}/index.d.ts +2 -2
- package/es/components/Coachmark/next/Coachmark/Coachmark.d.ts +72 -0
- package/es/components/Coachmark/next/Coachmark/Coachmark.js +185 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBeacon/CoachmarkBeacon.d.ts +44 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBeacon/index.d.ts +8 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubble.d.ts +38 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubble.js +125 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubbleHeader.d.ts +24 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubbleHeader.js +25 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkBubble/index.d.ts +10 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkContent.d.ts +34 -0
- package/es/components/Coachmark/next/Coachmark/CoachmarkContent.js +118 -0
- package/es/components/Coachmark/next/Coachmark/ContentBody.d.ts +23 -0
- package/es/components/Coachmark/next/Coachmark/ContentBody.js +37 -0
- package/es/components/Coachmark/next/Coachmark/ContentHeader.d.ts +21 -0
- package/es/components/Coachmark/next/Coachmark/ContentHeader.js +89 -0
- package/{lib/components/BigNumbers → es/components/Coachmark/next/Coachmark}/index.d.ts +2 -2
- package/es/components/CoachmarkBeacon/CoachmarkBeacon.js +0 -1
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +2 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +11 -5
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +1 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +11 -4
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +2 -2
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +1 -1
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +42 -3
- package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
- package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +5 -3
- package/es/components/ConditionBuilder/utils/useTranslations.js +1 -1
- package/es/components/EditInPlace/EditInPlace.js +0 -3
- package/es/components/EmptyStates/EmptyState.d.ts +2 -2
- package/es/components/EmptyStates/EmptyState.js +2 -8
- package/es/components/FilterPanel/FilterPanelGroup/index.d.ts +1 -0
- package/es/components/InterstitialScreen/InterstitialScreen.d.ts +1 -25
- package/es/components/InterstitialScreen/InterstitialScreen.js +3 -19
- package/es/components/InterstitialScreen/InterstitialScreenBody.d.ts +1 -1
- package/es/components/InterstitialScreen/InterstitialScreenBody.js +1 -1
- package/es/components/InterstitialScreen/InterstitialScreenFooter.d.ts +1 -1
- package/es/components/InterstitialScreen/InterstitialScreenFooter.js +1 -1
- package/es/components/InterstitialScreen/InterstitialScreenHeader.d.ts +6 -0
- package/es/components/InterstitialScreen/InterstitialScreenHeader.js +1 -1
- package/es/components/InterstitialScreen/_story-assets/InterstitialScreenViewModule/InterstitialScreenViewModule.d.ts +1 -1
- package/es/components/InterstitialScreen/context.d.ts +31 -0
- package/es/components/InterstitialScreen/context.js +18 -0
- package/es/components/InterstitialScreen/index.d.ts +3 -2
- package/es/components/NotificationsPanel/NotificationsPanel.js +36 -13
- package/es/components/PageHeader/PageHeader.d.ts +2 -1
- package/es/components/PageHeader/PageHeader.js +2 -1
- package/es/components/PageHeader/next/PageHeader.d.ts +18 -3
- package/es/components/PageHeader/next/PageHeader.js +260 -12
- package/es/components/PageHeader/next/context.d.ts +25 -0
- package/es/components/PageHeader/next/context.js +30 -0
- package/es/components/PageHeader/next/index.d.ts +3 -3
- package/es/components/PageHeader/next/overflowHandler.d.ts +95 -0
- package/es/components/PageHeader/next/overflowHandler.js +162 -0
- package/es/components/PageHeader/next/utils.d.ts +19 -0
- package/es/components/PageHeader/next/utils.js +68 -0
- package/es/components/ProductiveCard/ProductiveCard.js +2 -1
- package/es/components/ScrollGradient/ScrollGradient.js +1 -2
- package/es/components/SidePanel/SidePanel.d.ts +4 -0
- package/es/components/SidePanel/SidePanel.js +8 -2
- package/es/components/Tearsheet/TearsheetShell.js +8 -5
- package/es/components/TruncatedText/TruncatedText.d.ts +48 -0
- package/es/components/TruncatedText/TruncatedText.js +86 -0
- package/es/components/TruncatedText/index.d.ts +7 -0
- package/es/components/TruncatedText/useTruncatedText.d.ts +16 -0
- package/es/components/TruncatedText/useTruncatedText.js +41 -0
- package/es/components/index.d.ts +4 -2
- package/es/global/js/hooks/useOverflowString.d.ts +2 -2
- package/es/global/js/hooks/useResizeObserver.d.ts +1 -1
- package/es/global/js/package-settings.d.ts +2 -1
- package/es/global/js/package-settings.js +3 -2
- package/es/global/js/utils/checkForOverflow.js +21 -0
- package/es/global/js/utils/makeDraggable/index.d.ts +1 -0
- package/es/global/js/utils/makeDraggable/makeDraggable.d.ts +19 -0
- package/es/global/js/utils/makeDraggable/makeDraggable.js +91 -0
- package/es/global/js/utils/makeDraggable/makeDraggable.stories.d.ts +22 -0
- package/es/index.js +4 -2
- package/es/node_modules/@floating-ui/core/dist/floating-ui.core.js +592 -0
- package/es/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +713 -0
- package/es/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +95 -0
- package/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +161 -0
- package/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +142 -0
- package/es/settings.d.ts +2 -1
- package/lib/components/{BigNumbers/BigNumbers.d.ts → BigNumber/BigNumber.d.ts} +5 -5
- package/lib/components/{BigNumbers/BigNumbers.js → BigNumber/BigNumber.js} +11 -11
- package/lib/components/BigNumber/BigNumberSkeleton.d.ts +17 -0
- package/lib/components/{BigNumbers/BigNumbersSkeleton.js → BigNumber/BigNumberSkeleton.js} +15 -15
- package/lib/components/{BigNumbers → BigNumber}/constants.d.ts +3 -3
- package/lib/components/{BigNumbers → BigNumber}/constants.js +6 -6
- package/lib/components/BigNumber/index.d.ts +7 -0
- package/lib/components/Coachmark/Coachmark.js +2 -2
- package/lib/components/Coachmark/next/Coachmark/Coachmark.d.ts +72 -0
- package/lib/components/Coachmark/next/Coachmark/Coachmark.js +189 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBeacon/CoachmarkBeacon.d.ts +44 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBeacon/index.d.ts +8 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubble.d.ts +38 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubble.js +127 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubbleHeader.d.ts +24 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBubble/CoachmarkBubbleHeader.js +27 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkBubble/index.d.ts +10 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkContent.d.ts +34 -0
- package/lib/components/Coachmark/next/Coachmark/CoachmarkContent.js +122 -0
- package/lib/components/Coachmark/next/Coachmark/ContentBody.d.ts +23 -0
- package/lib/components/Coachmark/next/Coachmark/ContentBody.js +41 -0
- package/lib/components/Coachmark/next/Coachmark/ContentHeader.d.ts +21 -0
- package/lib/components/Coachmark/next/Coachmark/ContentHeader.js +93 -0
- package/lib/components/Coachmark/next/Coachmark/index.d.ts +7 -0
- package/lib/components/CoachmarkBeacon/CoachmarkBeacon.js +0 -1
- package/lib/components/CoachmarkFixed/CoachmarkFixed.js +2 -2
- package/lib/components/CoachmarkStack/CoachmarkStack.js +2 -2
- package/lib/components/CoachmarkStack/CoachmarkStackHome.js +2 -2
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +2 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +11 -5
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +11 -4
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +2 -2
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +1 -1
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +41 -2
- package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
- package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +5 -3
- package/lib/components/ConditionBuilder/utils/useTranslations.js +1 -1
- package/lib/components/EditInPlace/EditInPlace.js +0 -3
- package/lib/components/EmptyStates/EmptyState.d.ts +2 -2
- package/lib/components/EmptyStates/EmptyState.js +2 -8
- package/lib/components/FilterPanel/FilterPanelGroup/index.d.ts +1 -0
- package/lib/components/InterstitialScreen/InterstitialScreen.d.ts +1 -25
- package/lib/components/InterstitialScreen/InterstitialScreen.js +6 -25
- package/lib/components/InterstitialScreen/InterstitialScreenBody.d.ts +1 -1
- package/lib/components/InterstitialScreen/InterstitialScreenBody.js +6 -6
- package/lib/components/InterstitialScreen/InterstitialScreenFooter.d.ts +1 -1
- package/lib/components/InterstitialScreen/InterstitialScreenFooter.js +9 -9
- package/lib/components/InterstitialScreen/InterstitialScreenHeader.d.ts +6 -0
- package/lib/components/InterstitialScreen/InterstitialScreenHeader.js +5 -5
- package/lib/components/InterstitialScreen/_story-assets/InterstitialScreenViewModule/InterstitialScreenViewModule.d.ts +1 -1
- package/lib/components/InterstitialScreen/context.d.ts +31 -0
- package/lib/components/InterstitialScreen/context.js +21 -0
- package/lib/components/InterstitialScreen/index.d.ts +3 -2
- package/lib/components/NotificationsPanel/NotificationsPanel.js +36 -13
- package/lib/components/PageHeader/PageHeader.d.ts +2 -1
- package/lib/components/PageHeader/PageHeader.js +2 -1
- package/lib/components/PageHeader/next/PageHeader.d.ts +18 -3
- package/lib/components/PageHeader/next/PageHeader.js +261 -7
- package/lib/components/PageHeader/next/context.d.ts +25 -0
- package/lib/components/PageHeader/next/context.js +33 -0
- package/lib/components/PageHeader/next/index.d.ts +3 -3
- package/lib/components/PageHeader/next/overflowHandler.d.ts +95 -0
- package/lib/components/PageHeader/next/overflowHandler.js +166 -0
- package/lib/components/PageHeader/next/utils.d.ts +19 -0
- package/lib/components/PageHeader/next/utils.js +71 -0
- package/lib/components/ProductiveCard/ProductiveCard.js +2 -1
- package/lib/components/ScrollGradient/ScrollGradient.js +1 -2
- package/lib/components/SidePanel/SidePanel.d.ts +4 -0
- package/lib/components/SidePanel/SidePanel.js +8 -2
- package/lib/components/Tearsheet/TearsheetShell.js +8 -5
- package/lib/components/TruncatedText/TruncatedText.d.ts +48 -0
- package/lib/components/TruncatedText/TruncatedText.js +86 -0
- package/lib/components/TruncatedText/index.d.ts +7 -0
- package/lib/components/TruncatedText/useTruncatedText.d.ts +16 -0
- package/lib/components/TruncatedText/useTruncatedText.js +45 -0
- package/lib/components/index.d.ts +4 -2
- package/lib/global/js/hooks/useOverflowString.d.ts +2 -2
- package/lib/global/js/hooks/usePortalTarget.js +2 -2
- package/lib/global/js/hooks/useResizeObserver.d.ts +1 -1
- package/lib/global/js/package-settings.d.ts +2 -1
- package/lib/global/js/package-settings.js +3 -2
- package/lib/global/js/utils/checkForOverflow.js +23 -0
- package/lib/global/js/utils/makeDraggable/index.d.ts +1 -0
- package/lib/global/js/utils/makeDraggable/makeDraggable.d.ts +19 -0
- package/lib/global/js/utils/makeDraggable/makeDraggable.js +93 -0
- package/lib/global/js/utils/makeDraggable/makeDraggable.stories.d.ts +22 -0
- package/lib/index.js +11 -4
- package/lib/node_modules/@floating-ui/core/dist/floating-ui.core.js +600 -0
- package/lib/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +722 -0
- package/lib/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +102 -0
- package/lib/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +182 -0
- package/lib/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +164 -0
- package/lib/settings.d.ts +2 -1
- package/package.json +10 -11
- package/scss/components/{BigNumbers/_big-numbers.scss → BigNumber/_big-number.scss} +5 -5
- package/scss/components/{BigNumbers → BigNumber}/_carbon-imports.scss +3 -3
- package/scss/components/{BigNumbers → BigNumber}/_index-with-carbon.scss +2 -2
- package/scss/components/{BigNumbers → BigNumber}/_index.scss +2 -2
- package/scss/components/Card/_card.scss +2 -0
- package/scss/components/Coachmark/_bubble.scss +62 -0
- package/scss/components/Coachmark/_coachmark-beacon.scss +164 -0
- package/scss/components/Coachmark/_coachmark.scss +15 -0
- package/scss/components/ConditionBuilder/_condition-builder.scss +8 -0
- package/scss/components/PageHeader/_page-header.scss +144 -1
- package/scss/components/Tearsheet/_tearsheet.scss +6 -0
- package/scss/components/TruncatedText/_carbon-imports.scss +6 -0
- package/scss/components/TruncatedText/_index-with-carbon.scss +9 -0
- package/scss/components/TruncatedText/_index.scss +8 -0
- package/scss/components/TruncatedText/_truncated-text.scss +26 -0
- package/scss/components/_index-with-carbon.scss +3 -2
- package/scss/components/_index.scss +3 -2
- package/telemetry.yml +24 -5
- package/es/components/BigNumbers/BigNumbersSkeleton.d.ts +0 -17
- package/lib/components/BigNumbers/BigNumbersSkeleton.d.ts +0 -17
@@ -0,0 +1,102 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2020, 2025
|
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
|
+
'use strict';
|
9
|
+
|
10
|
+
var floatingUi_dom = require('../../dom/dist/floating-ui.dom.js');
|
11
|
+
require('react');
|
12
|
+
require('react-dom');
|
13
|
+
|
14
|
+
/**
|
15
|
+
* Provides data to position an inner element of the floating element so that it
|
16
|
+
* appears centered to the reference element.
|
17
|
+
* This wraps the core `arrow` middleware to allow React refs as the element.
|
18
|
+
* @see https://floating-ui.com/docs/arrow
|
19
|
+
*/
|
20
|
+
const arrow$1 = options => {
|
21
|
+
function isRef(value) {
|
22
|
+
return {}.hasOwnProperty.call(value, 'current');
|
23
|
+
}
|
24
|
+
return {
|
25
|
+
name: 'arrow',
|
26
|
+
options,
|
27
|
+
fn(state) {
|
28
|
+
const {
|
29
|
+
element,
|
30
|
+
padding
|
31
|
+
} = typeof options === 'function' ? options(state) : options;
|
32
|
+
if (element && isRef(element)) {
|
33
|
+
if (element.current != null) {
|
34
|
+
return floatingUi_dom.arrow({
|
35
|
+
element: element.current,
|
36
|
+
padding
|
37
|
+
}).fn(state);
|
38
|
+
}
|
39
|
+
return {};
|
40
|
+
}
|
41
|
+
if (element) {
|
42
|
+
return floatingUi_dom.arrow({
|
43
|
+
element,
|
44
|
+
padding
|
45
|
+
}).fn(state);
|
46
|
+
}
|
47
|
+
return {};
|
48
|
+
}
|
49
|
+
};
|
50
|
+
};
|
51
|
+
|
52
|
+
/**
|
53
|
+
* Modifies the placement by translating the floating element along the
|
54
|
+
* specified axes.
|
55
|
+
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
56
|
+
* object may be passed.
|
57
|
+
* @see https://floating-ui.com/docs/offset
|
58
|
+
*/
|
59
|
+
const offset = (options, deps) => ({
|
60
|
+
...floatingUi_dom.offset(options),
|
61
|
+
options: [options, deps]
|
62
|
+
});
|
63
|
+
|
64
|
+
/**
|
65
|
+
* Optimizes the visibility of the floating element by shifting it in order to
|
66
|
+
* keep it in view when it will overflow the clipping boundary.
|
67
|
+
* @see https://floating-ui.com/docs/shift
|
68
|
+
*/
|
69
|
+
const shift = (options, deps) => ({
|
70
|
+
...floatingUi_dom.shift(options),
|
71
|
+
options: [options, deps]
|
72
|
+
});
|
73
|
+
|
74
|
+
/**
|
75
|
+
* Optimizes the visibility of the floating element by flipping the `placement`
|
76
|
+
* in order to keep it in view when the preferred placement(s) will overflow the
|
77
|
+
* clipping boundary. Alternative to `autoPlacement`.
|
78
|
+
* @see https://floating-ui.com/docs/flip
|
79
|
+
*/
|
80
|
+
const flip = (options, deps) => ({
|
81
|
+
...floatingUi_dom.flip(options),
|
82
|
+
options: [options, deps]
|
83
|
+
});
|
84
|
+
|
85
|
+
/**
|
86
|
+
* Provides data to position an inner element of the floating element so that it
|
87
|
+
* appears centered to the reference element.
|
88
|
+
* This wraps the core `arrow` middleware to allow React refs as the element.
|
89
|
+
* @see https://floating-ui.com/docs/arrow
|
90
|
+
*/
|
91
|
+
const arrow = (options, deps) => ({
|
92
|
+
...arrow$1(options),
|
93
|
+
options: [options, deps]
|
94
|
+
});
|
95
|
+
|
96
|
+
exports.autoUpdate = floatingUi_dom.autoUpdate;
|
97
|
+
exports.computePosition = floatingUi_dom.computePosition;
|
98
|
+
exports.platform = floatingUi_dom.platform;
|
99
|
+
exports.arrow = arrow;
|
100
|
+
exports.flip = flip;
|
101
|
+
exports.offset = offset;
|
102
|
+
exports.shift = shift;
|
@@ -0,0 +1,182 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2020, 2025
|
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
|
+
'use strict';
|
9
|
+
|
10
|
+
function hasWindow() {
|
11
|
+
return typeof window !== 'undefined';
|
12
|
+
}
|
13
|
+
function getNodeName(node) {
|
14
|
+
if (isNode(node)) {
|
15
|
+
return (node.nodeName || '').toLowerCase();
|
16
|
+
}
|
17
|
+
// Mocked nodes in testing environments may not be instances of Node. By
|
18
|
+
// returning `#document` an infinite loop won't occur.
|
19
|
+
// https://github.com/floating-ui/floating-ui/issues/2317
|
20
|
+
return '#document';
|
21
|
+
}
|
22
|
+
function getWindow(node) {
|
23
|
+
var _node$ownerDocument;
|
24
|
+
return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
|
25
|
+
}
|
26
|
+
function getDocumentElement(node) {
|
27
|
+
var _ref;
|
28
|
+
return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
|
29
|
+
}
|
30
|
+
function isNode(value) {
|
31
|
+
if (!hasWindow()) {
|
32
|
+
return false;
|
33
|
+
}
|
34
|
+
return value instanceof Node || value instanceof getWindow(value).Node;
|
35
|
+
}
|
36
|
+
function isElement(value) {
|
37
|
+
if (!hasWindow()) {
|
38
|
+
return false;
|
39
|
+
}
|
40
|
+
return value instanceof Element || value instanceof getWindow(value).Element;
|
41
|
+
}
|
42
|
+
function isHTMLElement(value) {
|
43
|
+
if (!hasWindow()) {
|
44
|
+
return false;
|
45
|
+
}
|
46
|
+
return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
|
47
|
+
}
|
48
|
+
function isShadowRoot(value) {
|
49
|
+
if (!hasWindow() || typeof ShadowRoot === 'undefined') {
|
50
|
+
return false;
|
51
|
+
}
|
52
|
+
return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
|
53
|
+
}
|
54
|
+
function isOverflowElement(element) {
|
55
|
+
const {
|
56
|
+
overflow,
|
57
|
+
overflowX,
|
58
|
+
overflowY,
|
59
|
+
display
|
60
|
+
} = getComputedStyle(element);
|
61
|
+
return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
|
62
|
+
}
|
63
|
+
function isTableElement(element) {
|
64
|
+
return ['table', 'td', 'th'].includes(getNodeName(element));
|
65
|
+
}
|
66
|
+
function isTopLayer(element) {
|
67
|
+
return [':popover-open', ':modal'].some(selector => {
|
68
|
+
try {
|
69
|
+
return element.matches(selector);
|
70
|
+
} catch (e) {
|
71
|
+
return false;
|
72
|
+
}
|
73
|
+
});
|
74
|
+
}
|
75
|
+
function isContainingBlock(elementOrCss) {
|
76
|
+
const webkit = isWebKit();
|
77
|
+
const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
|
78
|
+
|
79
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
80
|
+
// https://drafts.csswg.org/css-transforms-2/#individual-transforms
|
81
|
+
return ['transform', 'translate', 'scale', 'rotate', 'perspective'].some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
|
82
|
+
}
|
83
|
+
function getContainingBlock(element) {
|
84
|
+
let currentNode = getParentNode(element);
|
85
|
+
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
86
|
+
if (isContainingBlock(currentNode)) {
|
87
|
+
return currentNode;
|
88
|
+
} else if (isTopLayer(currentNode)) {
|
89
|
+
return null;
|
90
|
+
}
|
91
|
+
currentNode = getParentNode(currentNode);
|
92
|
+
}
|
93
|
+
return null;
|
94
|
+
}
|
95
|
+
function isWebKit() {
|
96
|
+
if (typeof CSS === 'undefined' || !CSS.supports) return false;
|
97
|
+
return CSS.supports('-webkit-backdrop-filter', 'none');
|
98
|
+
}
|
99
|
+
function isLastTraversableNode(node) {
|
100
|
+
return ['html', 'body', '#document'].includes(getNodeName(node));
|
101
|
+
}
|
102
|
+
function getComputedStyle(element) {
|
103
|
+
return getWindow(element).getComputedStyle(element);
|
104
|
+
}
|
105
|
+
function getNodeScroll(element) {
|
106
|
+
if (isElement(element)) {
|
107
|
+
return {
|
108
|
+
scrollLeft: element.scrollLeft,
|
109
|
+
scrollTop: element.scrollTop
|
110
|
+
};
|
111
|
+
}
|
112
|
+
return {
|
113
|
+
scrollLeft: element.scrollX,
|
114
|
+
scrollTop: element.scrollY
|
115
|
+
};
|
116
|
+
}
|
117
|
+
function getParentNode(node) {
|
118
|
+
if (getNodeName(node) === 'html') {
|
119
|
+
return node;
|
120
|
+
}
|
121
|
+
const result =
|
122
|
+
// Step into the shadow DOM of the parent of a slotted node.
|
123
|
+
node.assignedSlot ||
|
124
|
+
// DOM Element detected.
|
125
|
+
node.parentNode ||
|
126
|
+
// ShadowRoot detected.
|
127
|
+
isShadowRoot(node) && node.host ||
|
128
|
+
// Fallback.
|
129
|
+
getDocumentElement(node);
|
130
|
+
return isShadowRoot(result) ? result.host : result;
|
131
|
+
}
|
132
|
+
function getNearestOverflowAncestor(node) {
|
133
|
+
const parentNode = getParentNode(node);
|
134
|
+
if (isLastTraversableNode(parentNode)) {
|
135
|
+
return node.ownerDocument ? node.ownerDocument.body : node.body;
|
136
|
+
}
|
137
|
+
if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
|
138
|
+
return parentNode;
|
139
|
+
}
|
140
|
+
return getNearestOverflowAncestor(parentNode);
|
141
|
+
}
|
142
|
+
function getOverflowAncestors(node, list, traverseIframes) {
|
143
|
+
var _node$ownerDocument2;
|
144
|
+
if (list === void 0) {
|
145
|
+
list = [];
|
146
|
+
}
|
147
|
+
if (traverseIframes === void 0) {
|
148
|
+
traverseIframes = true;
|
149
|
+
}
|
150
|
+
const scrollableAncestor = getNearestOverflowAncestor(node);
|
151
|
+
const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
|
152
|
+
const win = getWindow(scrollableAncestor);
|
153
|
+
if (isBody) {
|
154
|
+
const frameElement = getFrameElement(win);
|
155
|
+
return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);
|
156
|
+
}
|
157
|
+
return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
|
158
|
+
}
|
159
|
+
function getFrameElement(win) {
|
160
|
+
return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
|
161
|
+
}
|
162
|
+
|
163
|
+
exports.getComputedStyle = getComputedStyle;
|
164
|
+
exports.getContainingBlock = getContainingBlock;
|
165
|
+
exports.getDocumentElement = getDocumentElement;
|
166
|
+
exports.getFrameElement = getFrameElement;
|
167
|
+
exports.getNearestOverflowAncestor = getNearestOverflowAncestor;
|
168
|
+
exports.getNodeName = getNodeName;
|
169
|
+
exports.getNodeScroll = getNodeScroll;
|
170
|
+
exports.getOverflowAncestors = getOverflowAncestors;
|
171
|
+
exports.getParentNode = getParentNode;
|
172
|
+
exports.getWindow = getWindow;
|
173
|
+
exports.isContainingBlock = isContainingBlock;
|
174
|
+
exports.isElement = isElement;
|
175
|
+
exports.isHTMLElement = isHTMLElement;
|
176
|
+
exports.isLastTraversableNode = isLastTraversableNode;
|
177
|
+
exports.isNode = isNode;
|
178
|
+
exports.isOverflowElement = isOverflowElement;
|
179
|
+
exports.isShadowRoot = isShadowRoot;
|
180
|
+
exports.isTableElement = isTableElement;
|
181
|
+
exports.isTopLayer = isTopLayer;
|
182
|
+
exports.isWebKit = isWebKit;
|
@@ -0,0 +1,164 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2020, 2025
|
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
|
+
'use strict';
|
9
|
+
|
10
|
+
/**
|
11
|
+
* Custom positioning reference element.
|
12
|
+
* @see https://floating-ui.com/docs/virtual-elements
|
13
|
+
*/
|
14
|
+
|
15
|
+
const min = Math.min;
|
16
|
+
const max = Math.max;
|
17
|
+
const round = Math.round;
|
18
|
+
const floor = Math.floor;
|
19
|
+
const createCoords = v => ({
|
20
|
+
x: v,
|
21
|
+
y: v
|
22
|
+
});
|
23
|
+
const oppositeSideMap = {
|
24
|
+
left: 'right',
|
25
|
+
right: 'left',
|
26
|
+
bottom: 'top',
|
27
|
+
top: 'bottom'
|
28
|
+
};
|
29
|
+
const oppositeAlignmentMap = {
|
30
|
+
start: 'end',
|
31
|
+
end: 'start'
|
32
|
+
};
|
33
|
+
function clamp(start, value, end) {
|
34
|
+
return max(start, min(value, end));
|
35
|
+
}
|
36
|
+
function evaluate(value, param) {
|
37
|
+
return typeof value === 'function' ? value(param) : value;
|
38
|
+
}
|
39
|
+
function getSide(placement) {
|
40
|
+
return placement.split('-')[0];
|
41
|
+
}
|
42
|
+
function getAlignment(placement) {
|
43
|
+
return placement.split('-')[1];
|
44
|
+
}
|
45
|
+
function getOppositeAxis(axis) {
|
46
|
+
return axis === 'x' ? 'y' : 'x';
|
47
|
+
}
|
48
|
+
function getAxisLength(axis) {
|
49
|
+
return axis === 'y' ? 'height' : 'width';
|
50
|
+
}
|
51
|
+
function getSideAxis(placement) {
|
52
|
+
return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
|
53
|
+
}
|
54
|
+
function getAlignmentAxis(placement) {
|
55
|
+
return getOppositeAxis(getSideAxis(placement));
|
56
|
+
}
|
57
|
+
function getAlignmentSides(placement, rects, rtl) {
|
58
|
+
if (rtl === void 0) {
|
59
|
+
rtl = false;
|
60
|
+
}
|
61
|
+
const alignment = getAlignment(placement);
|
62
|
+
const alignmentAxis = getAlignmentAxis(placement);
|
63
|
+
const length = getAxisLength(alignmentAxis);
|
64
|
+
let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
|
65
|
+
if (rects.reference[length] > rects.floating[length]) {
|
66
|
+
mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
|
67
|
+
}
|
68
|
+
return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
|
69
|
+
}
|
70
|
+
function getExpandedPlacements(placement) {
|
71
|
+
const oppositePlacement = getOppositePlacement(placement);
|
72
|
+
return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
|
73
|
+
}
|
74
|
+
function getOppositeAlignmentPlacement(placement) {
|
75
|
+
return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
|
76
|
+
}
|
77
|
+
function getSideList(side, isStart, rtl) {
|
78
|
+
const lr = ['left', 'right'];
|
79
|
+
const rl = ['right', 'left'];
|
80
|
+
const tb = ['top', 'bottom'];
|
81
|
+
const bt = ['bottom', 'top'];
|
82
|
+
switch (side) {
|
83
|
+
case 'top':
|
84
|
+
case 'bottom':
|
85
|
+
if (rtl) return isStart ? rl : lr;
|
86
|
+
return isStart ? lr : rl;
|
87
|
+
case 'left':
|
88
|
+
case 'right':
|
89
|
+
return isStart ? tb : bt;
|
90
|
+
default:
|
91
|
+
return [];
|
92
|
+
}
|
93
|
+
}
|
94
|
+
function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
|
95
|
+
const alignment = getAlignment(placement);
|
96
|
+
let list = getSideList(getSide(placement), direction === 'start', rtl);
|
97
|
+
if (alignment) {
|
98
|
+
list = list.map(side => side + "-" + alignment);
|
99
|
+
if (flipAlignment) {
|
100
|
+
list = list.concat(list.map(getOppositeAlignmentPlacement));
|
101
|
+
}
|
102
|
+
}
|
103
|
+
return list;
|
104
|
+
}
|
105
|
+
function getOppositePlacement(placement) {
|
106
|
+
return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
|
107
|
+
}
|
108
|
+
function expandPaddingObject(padding) {
|
109
|
+
return {
|
110
|
+
top: 0,
|
111
|
+
right: 0,
|
112
|
+
bottom: 0,
|
113
|
+
left: 0,
|
114
|
+
...padding
|
115
|
+
};
|
116
|
+
}
|
117
|
+
function getPaddingObject(padding) {
|
118
|
+
return typeof padding !== 'number' ? expandPaddingObject(padding) : {
|
119
|
+
top: padding,
|
120
|
+
right: padding,
|
121
|
+
bottom: padding,
|
122
|
+
left: padding
|
123
|
+
};
|
124
|
+
}
|
125
|
+
function rectToClientRect(rect) {
|
126
|
+
const {
|
127
|
+
x,
|
128
|
+
y,
|
129
|
+
width,
|
130
|
+
height
|
131
|
+
} = rect;
|
132
|
+
return {
|
133
|
+
width,
|
134
|
+
height,
|
135
|
+
top: y,
|
136
|
+
left: x,
|
137
|
+
right: x + width,
|
138
|
+
bottom: y + height,
|
139
|
+
x,
|
140
|
+
y
|
141
|
+
};
|
142
|
+
}
|
143
|
+
|
144
|
+
exports.clamp = clamp;
|
145
|
+
exports.createCoords = createCoords;
|
146
|
+
exports.evaluate = evaluate;
|
147
|
+
exports.expandPaddingObject = expandPaddingObject;
|
148
|
+
exports.floor = floor;
|
149
|
+
exports.getAlignment = getAlignment;
|
150
|
+
exports.getAlignmentAxis = getAlignmentAxis;
|
151
|
+
exports.getAlignmentSides = getAlignmentSides;
|
152
|
+
exports.getAxisLength = getAxisLength;
|
153
|
+
exports.getExpandedPlacements = getExpandedPlacements;
|
154
|
+
exports.getOppositeAlignmentPlacement = getOppositeAlignmentPlacement;
|
155
|
+
exports.getOppositeAxis = getOppositeAxis;
|
156
|
+
exports.getOppositeAxisPlacements = getOppositeAxisPlacements;
|
157
|
+
exports.getOppositePlacement = getOppositePlacement;
|
158
|
+
exports.getPaddingObject = getPaddingObject;
|
159
|
+
exports.getSide = getSide;
|
160
|
+
exports.getSideAxis = getSideAxis;
|
161
|
+
exports.max = max;
|
162
|
+
exports.min = min;
|
163
|
+
exports.rectToClientRect = rectToClientRect;
|
164
|
+
exports.round = round;
|
package/lib/settings.d.ts
CHANGED
@@ -67,8 +67,9 @@ export const pkg: {
|
|
67
67
|
Nav: boolean;
|
68
68
|
NavItem: boolean;
|
69
69
|
NavList: boolean;
|
70
|
-
|
70
|
+
BigNumber: boolean;
|
71
71
|
TruncatedList: boolean;
|
72
|
+
TruncatedText: boolean;
|
72
73
|
DelimitedList: boolean;
|
73
74
|
ScrollGradient: boolean;
|
74
75
|
StringFormatter: boolean;
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@carbon/ibm-products",
|
3
3
|
"description": "Carbon for IBM Products",
|
4
|
-
"version": "2.
|
4
|
+
"version": "2.72.0-rc.0",
|
5
5
|
"license": "Apache-2.0",
|
6
6
|
"main": "lib/index.js",
|
7
7
|
"module": "es/index.js",
|
@@ -48,7 +48,6 @@
|
|
48
48
|
"build:scss": "copyfiles '../ibm-products-styles/scss/**/*.*' ./ -u 2",
|
49
49
|
"build:storybook": "yarn dlx cross-env \"NODE_OPTIONS=--max_old_space_size=8192\" && storybook build --quiet",
|
50
50
|
"build:js-new": "node scripts/build",
|
51
|
-
"ci-check": "node scripts/import",
|
52
51
|
"clean": "rimraf es lib css scss",
|
53
52
|
"generate": "cross-env FORCE_COLOR=1 node scripts/generate/index.mjs",
|
54
53
|
"postinstall": "ibmtelemetry --config=telemetry.yml",
|
@@ -82,16 +81,16 @@
|
|
82
81
|
"@storybook/react-vite": "^9.0.13",
|
83
82
|
"@types/react-table": "^7.7.20",
|
84
83
|
"babel-plugin-dev-expression": "^0.2.3",
|
85
|
-
"babel-preset-ibm-cloud-cognitive": "^0.
|
84
|
+
"babel-preset-ibm-cloud-cognitive": "^0.30.0-rc.0",
|
86
85
|
"chalk": "^4.1.2",
|
87
86
|
"change-case": "5.4.4",
|
88
87
|
"classnames": "^2.5.1",
|
89
88
|
"copyfiles": "^2.4.1",
|
90
|
-
"cross-env": "^
|
89
|
+
"cross-env": "^10.0.0",
|
91
90
|
"fs-extra": "^11.3.0",
|
92
91
|
"glob": "^11.0.1",
|
93
92
|
"jest": "^29.7.0",
|
94
|
-
"jest-config-ibm-cloud-cognitive": "^1.
|
93
|
+
"jest-config-ibm-cloud-cognitive": "^1.31.0-rc.0",
|
95
94
|
"jest-environment-jsdom": "^29.7.0",
|
96
95
|
"namor": "^1.1.2",
|
97
96
|
"npm-run-all": "^4.1.5",
|
@@ -108,12 +107,12 @@
|
|
108
107
|
},
|
109
108
|
"dependencies": {
|
110
109
|
"@babel/runtime": "^7.26.10",
|
111
|
-
"@carbon-labs/react-resizer": "^0.
|
112
|
-
"@carbon/feature-flags": "^0.
|
113
|
-
"@carbon/ibm-products-styles": "^2.
|
110
|
+
"@carbon-labs/react-resizer": "^0.5.0",
|
111
|
+
"@carbon/feature-flags": "^0.28.1",
|
112
|
+
"@carbon/ibm-products-styles": "^2.68.0-rc.0",
|
114
113
|
"@carbon/telemetry": "^0.1.0",
|
115
114
|
"@carbon/utilities": "^0.7.0",
|
116
|
-
"@carbon/utilities-react": "0.
|
115
|
+
"@carbon/utilities-react": "0.10.0",
|
117
116
|
"@dnd-kit/core": "^6.3.1",
|
118
117
|
"@dnd-kit/modifiers": "^9.0.0",
|
119
118
|
"@dnd-kit/sortable": "^10.0.0",
|
@@ -126,11 +125,11 @@
|
|
126
125
|
"@carbon/grid": "^11.38.0",
|
127
126
|
"@carbon/layout": "^11.36.0",
|
128
127
|
"@carbon/motion": "^11.30.0",
|
129
|
-
"@carbon/react": "^1.
|
128
|
+
"@carbon/react": "^1.86.0",
|
130
129
|
"@carbon/themes": "^11.55.0",
|
131
130
|
"@carbon/type": "^11.42.0",
|
132
131
|
"react": "^16.8.6 || ^17.0.1 || ^18.2.0 || ^19.0.0",
|
133
132
|
"react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0 || ^19.0.0"
|
134
133
|
},
|
135
|
-
"gitHead": "
|
134
|
+
"gitHead": "844a483091e668abe326d27da86108ec05be8860"
|
136
135
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
//
|
2
|
-
// Copyright IBM Corp. 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.
|
@@ -17,11 +17,11 @@
|
|
17
17
|
// TODO: @use '@carbon/styles/scss/grid';
|
18
18
|
// or
|
19
19
|
// TODO: @use '@carbon/styles/scss/grid';
|
20
|
-
//
|
21
|
-
// TODO: @use(s) of IBM Products component styles used by
|
20
|
+
// BigNumber uses the following Carbon for IBM Products components:
|
21
|
+
// TODO: @use(s) of IBM Products component styles used by BigNumber
|
22
22
|
// The block part of our conventional BEM class names (blockClass__E--M).
|
23
|
-
$block-class: #{c4p-settings.$pkg-prefix}--big-
|
24
|
-
$skeleton-block-class: #{c4p-settings.$pkg-prefix}--big-
|
23
|
+
$block-class: #{c4p-settings.$pkg-prefix}--big-number;
|
24
|
+
$skeleton-block-class: #{c4p-settings.$pkg-prefix}--big-number-skeleton;
|
25
25
|
|
26
26
|
.#{$block-class}__label {
|
27
27
|
@include type-style('label-01');
|
@@ -1,11 +1,11 @@
|
|
1
1
|
//
|
2
|
-
// Copyright IBM Corp. 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
7
|
|
8
|
-
// Import any Carbon component styles used from
|
9
|
-
//
|
8
|
+
// Import any Carbon component styles used from BigNumber in this file.
|
9
|
+
// BigNumber uses the following Carbon components:
|
10
10
|
@use '@carbon/styles/scss/components/skeleton-styles';
|
11
11
|
@use '@carbon/styles/scss/components/tooltip';
|
@@ -1,9 +1,9 @@
|
|
1
1
|
//
|
2
|
-
// Copyright IBM Corp. 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
7
|
|
8
8
|
@use './carbon-imports';
|
9
|
-
@use './big-
|
9
|
+
@use './big-number';
|
@@ -1,8 +1,8 @@
|
|
1
1
|
//
|
2
|
-
// Copyright IBM Corp. 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
7
|
|
8
|
-
@use './big-
|
8
|
+
@use './big-number';
|
@@ -18,11 +18,13 @@
|
|
18
18
|
$block-class: #{c4p-settings.$pkg-prefix}--card;
|
19
19
|
|
20
20
|
.#{$block-class} {
|
21
|
+
border: 1px solid transparent;
|
21
22
|
background-color: $layer-01;
|
22
23
|
color: $text-primary;
|
23
24
|
}
|
24
25
|
|
25
26
|
.#{$block-class}__clickable {
|
27
|
+
border-color: $border-tile-01;
|
26
28
|
cursor: pointer;
|
27
29
|
// stylelint-disable-next-line carbon/motion-easing-use
|
28
30
|
transition: background-color $duration-fast-02;
|
@@ -0,0 +1,62 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2025
|
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
|
+
@use '@carbon/react/scss/spacing' as *;
|
8
|
+
@use '@carbon/react/scss/colors' as *;
|
9
|
+
@use '@carbon/styles/scss/theme' as theme;
|
10
|
+
@use '@carbon/styles/scss/themes' as themes;
|
11
|
+
@use '@carbon/styles/scss/breakpoint' as *;
|
12
|
+
@use '@carbon/styles/scss/utilities';
|
13
|
+
@use '../../../../ibm-products-styles/src/global/styles/project-settings' as
|
14
|
+
c4p-settings;
|
15
|
+
|
16
|
+
$prefix: #{c4p-settings.$pkg-prefix} !default;
|
17
|
+
|
18
|
+
.#{$prefix}__bubble {
|
19
|
+
position: fixed;
|
20
|
+
z-index: 10000;
|
21
|
+
display: none;
|
22
|
+
padding: $spacing-05;
|
23
|
+
border-radius: $spacing-01;
|
24
|
+
/* stylelint-disable-next-line declaration-no-important */
|
25
|
+
background: theme.$layer !important;
|
26
|
+
color: theme.$text-primary;
|
27
|
+
font-weight: bold;
|
28
|
+
inline-size: max-content;
|
29
|
+
inset-block-start: 0;
|
30
|
+
inset-inline-start: 0;
|
31
|
+
pointer-events: none;
|
32
|
+
}
|
33
|
+
|
34
|
+
.#{$prefix}__bubble-hidden {
|
35
|
+
display: none;
|
36
|
+
}
|
37
|
+
|
38
|
+
.#{$prefix}__bubble-open {
|
39
|
+
display: grid;
|
40
|
+
pointer-events: all;
|
41
|
+
}
|
42
|
+
|
43
|
+
.#{$prefix}__bubble-drop-shadow {
|
44
|
+
filter: drop-shadow(0 $spacing-01 $spacing-01 rgba(0, 0, 0, 0.2));
|
45
|
+
}
|
46
|
+
|
47
|
+
.#{$prefix}__bubble__arrow {
|
48
|
+
position: absolute;
|
49
|
+
z-index: 10010;
|
50
|
+
background: theme.$layer;
|
51
|
+
block-size: $spacing-04;
|
52
|
+
inline-size: $spacing-04;
|
53
|
+
transform: rotate(45deg);
|
54
|
+
}
|
55
|
+
|
56
|
+
.#{$prefix}__bubble__header {
|
57
|
+
z-index: 10020;
|
58
|
+
display: flex;
|
59
|
+
justify-content: flex-end;
|
60
|
+
margin-block-start: -$spacing-05;
|
61
|
+
margin-inline: -$spacing-05;
|
62
|
+
}
|