@carbon/ibm-products 2.83.0 → 2.84.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 (125) hide show
  1. package/css/carbon.css +4 -0
  2. package/css/carbon.css.map +1 -1
  3. package/css/index-full-carbon.css +99 -33
  4. package/css/index-full-carbon.css.map +1 -1
  5. package/css/index-full-carbon.min.css +1 -1
  6. package/css/index-full-carbon.min.css.map +1 -1
  7. package/css/index-without-carbon-released-only.css +95 -33
  8. package/css/index-without-carbon-released-only.css.map +1 -1
  9. package/css/index-without-carbon-released-only.min.css +1 -1
  10. package/css/index-without-carbon-released-only.min.css.map +1 -1
  11. package/css/index-without-carbon.css +95 -33
  12. package/css/index-without-carbon.css.map +1 -1
  13. package/css/index-without-carbon.min.css +1 -1
  14. package/css/index-without-carbon.min.css.map +1 -1
  15. package/css/index.css +95 -33
  16. package/css/index.css.map +1 -1
  17. package/css/index.min.css +1 -1
  18. package/css/index.min.css.map +1 -1
  19. package/es/components/AddSelect/AddSelectBody.js +1 -1
  20. package/es/components/Coachmark/next/Coachmark/CoachmarkBeacon/CoachmarkBeacon.js +6 -6
  21. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +1 -1
  22. package/es/components/PageHeader/PageHeader.js +4 -12
  23. package/es/components/PageHeader/next/PageHeader.js +29 -12
  24. package/es/components/PageHeader/next/context.d.ts +3 -0
  25. package/es/components/PageHeader/next/utils.js +8 -0
  26. package/es/components/SidePanel/SidePanel.js +11 -3
  27. package/es/components/Tearsheet/TearsheetPresence.d.ts +37 -0
  28. package/es/components/Tearsheet/TearsheetPresence.js +56 -0
  29. package/es/components/Tearsheet/TearsheetShell.js +76 -17
  30. package/es/components/Tearsheet/index.d.ts +2 -0
  31. package/es/components/Tearsheet/usePresence.d.ts +17 -0
  32. package/es/components/Tearsheet/usePresence.js +69 -0
  33. package/es/components/Tearsheet/usePresenceContext.d.ts +25 -0
  34. package/es/components/Tearsheet/usePresenceContext.js +50 -0
  35. package/es/global/js/hooks/useMergedRefs.d.ts +1 -0
  36. package/es/global/js/hooks/useMergedRefs.js +32 -0
  37. package/es/global/js/hooks/useOverflowString.js +1 -16
  38. package/es/index.js +1 -0
  39. package/lib/components/AddSelect/AddSelectBody.js +1 -1
  40. package/lib/components/Coachmark/next/Coachmark/CoachmarkBeacon/CoachmarkBeacon.js +6 -6
  41. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +1 -1
  42. package/lib/components/PageHeader/PageHeader.js +3 -11
  43. package/lib/components/PageHeader/next/PageHeader.js +29 -12
  44. package/lib/components/PageHeader/next/context.d.ts +3 -0
  45. package/lib/components/PageHeader/next/utils.js +8 -0
  46. package/lib/components/SidePanel/SidePanel.js +10 -2
  47. package/lib/components/Tearsheet/TearsheetPresence.d.ts +37 -0
  48. package/lib/components/Tearsheet/TearsheetPresence.js +61 -0
  49. package/lib/components/Tearsheet/TearsheetShell.js +74 -15
  50. package/lib/components/Tearsheet/index.d.ts +2 -0
  51. package/lib/components/Tearsheet/usePresence.d.ts +17 -0
  52. package/lib/components/Tearsheet/usePresence.js +71 -0
  53. package/lib/components/Tearsheet/usePresenceContext.d.ts +25 -0
  54. package/lib/components/Tearsheet/usePresenceContext.js +52 -0
  55. package/lib/global/js/hooks/useMergedRefs.d.ts +1 -0
  56. package/lib/global/js/hooks/useMergedRefs.js +34 -0
  57. package/lib/global/js/hooks/useOverflowString.js +0 -16
  58. package/lib/index.js +3 -0
  59. package/package.json +22 -21
  60. package/scss/components/APIKeyModal/_api-key-modal.scss +6 -4
  61. package/scss/components/AboutModal/_about-modal.scss +5 -5
  62. package/scss/components/ActionBar/_action-bar.scss +2 -0
  63. package/scss/components/ActionSet/_action-set.scss +12 -11
  64. package/scss/components/AddSelect/_add-select.scss +28 -29
  65. package/scss/components/BreadcrumbWithOverflow/_breadcrumb-with-overflow.scss +10 -8
  66. package/scss/components/ButtonMenu/_button-menu.scss +11 -9
  67. package/scss/components/Card/_card.scss +12 -10
  68. package/scss/components/Checklist/_checklist.scss +8 -6
  69. package/scss/components/Coachmark/_coachmark-overlay.scss +11 -9
  70. package/scss/components/Coachmark/_coachmark.scss +1 -1
  71. package/scss/components/CoachmarkStack/_coachmark-stack.scss +6 -4
  72. package/scss/components/ComboButton/_combo-button.scss +11 -9
  73. package/scss/components/CreateFullPage/_create-full-page.scss +9 -9
  74. package/scss/components/CreateModal/_create-modal.scss +9 -7
  75. package/scss/components/CreateSidePanel/_create-side-panel.scss +6 -4
  76. package/scss/components/CreateTearsheet/_create-tearsheet.scss +9 -9
  77. package/scss/components/CreateTearsheetNarrow/_create-tearsheet-narrow.scss +5 -3
  78. package/scss/components/Datagrid/_datagrid.scss +9 -7
  79. package/scss/components/Datagrid/styles/_datagrid.scss +86 -86
  80. package/scss/components/Datagrid/styles/_useExpandedRow.scss +11 -9
  81. package/scss/components/Datagrid/styles/_useInlineEdit.scss +48 -46
  82. package/scss/components/Datagrid/styles/_useNestedRows.scss +16 -16
  83. package/scss/components/Datagrid/styles/_useNestedTable.scss +5 -3
  84. package/scss/components/Datagrid/styles/_useSelectAllToggle.scss +4 -2
  85. package/scss/components/Datagrid/styles/_useSortableColumns.scss +21 -19
  86. package/scss/components/Datagrid/styles/addons/_CustomizeColumnsTearsheet.scss +5 -4
  87. package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +5 -5
  88. package/scss/components/Datagrid/styles/addons/_FilterPanel.scss +11 -8
  89. package/scss/components/Datagrid/styles/addons/_RowSizeDropdown.scss +18 -16
  90. package/scss/components/Datagrid/styles/addons/_animations.scss +4 -4
  91. package/scss/components/DescriptionList/_description-list.scss +6 -4
  92. package/scss/components/EditInPlace/_edit-in-place.scss +5 -9
  93. package/scss/components/EditSidePanel/_edit-side-panel.scss +6 -4
  94. package/scss/components/EditTearsheet/_edit-tearsheet.scss +8 -9
  95. package/scss/components/ExportModal/_export-modal.scss +7 -5
  96. package/scss/components/FilterPanel/_filter-panel-accordion-item.scss +6 -5
  97. package/scss/components/FilterPanel/_filter-panel-checkbox-with-overflow.scss +6 -5
  98. package/scss/components/FilterPanel/_filter-panel-checkbox.scss +6 -5
  99. package/scss/components/FilterPanel/_filter-panel.scss +6 -5
  100. package/scss/components/FilterSummary/_filter-summary.scss +5 -9
  101. package/scss/components/Guidebanner/_guidebanner.scss +5 -3
  102. package/scss/components/ImportModal/_import-modal.scss +16 -16
  103. package/scss/components/InterstitialScreen/_interstitial-screen.scss +6 -4
  104. package/scss/components/NotificationsPanel/_notifications-panel.scss +13 -8
  105. package/scss/components/OptionsTile/_options-tile.scss +8 -6
  106. package/scss/components/PageHeader/_page-header.scss +25 -21
  107. package/scss/components/RemoveModal/_remove-modal.scss +5 -4
  108. package/scss/components/Saving/_saving.scss +5 -3
  109. package/scss/components/SearchBar/_search-bar.scss +5 -4
  110. package/scss/components/SidePanel/_animations.scss +4 -4
  111. package/scss/components/SidePanel/_side-panel.scss +31 -12
  112. package/scss/components/SimpleHeader/_simple-header.scss +5 -4
  113. package/scss/components/StatusIcon/_status-icon.scss +5 -3
  114. package/scss/components/StatusIndicator/_status-indicator.scss +3 -2
  115. package/scss/components/StringFormatter/_string-formatter.scss +5 -4
  116. package/scss/components/TagOverflow/_tag-overflow.scss +7 -6
  117. package/scss/components/TagSet/_tag-set.scss +20 -18
  118. package/scss/components/Tearsheet/_tearsheet.scss +121 -30
  119. package/scss/components/Toolbar/_toolbar.scss +4 -2
  120. package/scss/components/TruncatedList/_truncated-list.scss +4 -3
  121. package/scss/components/TruncatedText/_truncated-text.scss +2 -2
  122. package/scss/components/UserAvatar/_user-avatar.scss +5 -4
  123. package/scss/components/UserProfileImage/_user-profile-image.scss +11 -7
  124. package/scss/components/WebTerminal/_web-terminal.scss +4 -2
  125. package/telemetry.yml +3 -0
@@ -1,5 +1,5 @@
1
1
  //
2
- // Copyright IBM Corp. 2020, 2021
2
+ // Copyright IBM Corp. 2020, 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.
@@ -10,6 +10,8 @@
10
10
  @use '@carbon/styles/scss/spacing' as *;
11
11
  @use '@carbon/styles/scss/breakpoint' as *;
12
12
  @use '@carbon/styles/scss/type';
13
+ @use '@carbon/styles/scss/config' as carbon-config;
14
+
13
15
  @use '../../global/styles/project-settings' as *;
14
16
  @use '../../global/styles/mixins' as *;
15
17
 
@@ -55,11 +57,12 @@ $block-class-modal: #{$block-class}-modal;
55
57
  .#{$block-class-overflow} {
56
58
  display: inline-block;
57
59
  vertical-align: bottom;
58
- .#{$carbon-prefix}--tag.#{$carbon-prefix}--tag--interactive {
60
+ .#{carbon-config.$prefix}--tag.#{carbon-config.$prefix}--tag--interactive {
59
61
  border: 0;
60
62
  }
61
63
 
62
- .#{$carbon-prefix}--popover .#{$carbon-prefix}--popover-content {
64
+ .#{carbon-config.$prefix}--popover
65
+ .#{carbon-config.$prefix}--popover-content {
63
66
  padding: $spacing-05;
64
67
  }
65
68
  }
@@ -70,7 +73,7 @@ $block-class-modal: #{$block-class}-modal;
70
73
  visibility: hidden;
71
74
  }
72
75
 
73
- .#{$carbon-prefix}--tag {
76
+ .#{carbon-config.$prefix}--tag {
74
77
  margin-block-end: $spacing-03;
75
78
  margin-inline-end: $spacing-03;
76
79
  }
@@ -100,7 +103,7 @@ $block-class-modal: #{$block-class}-modal;
100
103
  }
101
104
 
102
105
  .#{$block-class-modal}__body {
103
- .#{$carbon-prefix}--tag {
106
+ .#{carbon-config.$prefix}--tag {
104
107
  margin-block-end: $spacing-03;
105
108
  margin-inline-end: $spacing-03;
106
109
  }
@@ -114,9 +117,9 @@ $block-class-modal: #{$block-class}-modal;
114
117
  text-align: start;
115
118
  }
116
119
 
117
- .#{$carbon-prefix}--link:active,
118
- .#{$carbon-prefix}--link:active:visited,
119
- .#{$carbon-prefix}--link:active:visited:hover {
120
+ .#{carbon-config.$prefix}--link:active,
121
+ .#{carbon-config.$prefix}--link:active:visited,
122
+ .#{carbon-config.$prefix}--link:active:visited:hover {
120
123
  color: $text-inverse;
121
124
  }
122
125
 
@@ -144,16 +147,13 @@ $block-class-modal: #{$block-class}-modal;
144
147
  }
145
148
 
146
149
  .#{$block-class-overflow}__tag-item.#{$block-class-overflow}__tag-item--tag
147
- .#{$carbon-prefix}--tag {
150
+ .#{carbon-config.$prefix}--tag {
148
151
  background-color: $background-inverse-hover;
149
- // This adds spacing only for the overflow menu
150
- // listing "tags" as opposed to just "labels".
151
- margin-block-end: $spacing-01;
152
152
  }
153
153
 
154
154
  .#{$block-class-overflow}__tag-item.#{$block-class-overflow}__tag-item--default,
155
155
  .#{$block-class-overflow}__tag-item.#{$block-class-overflow}__tag-item--default
156
- .#{$carbon-prefix}--tag {
156
+ .#{carbon-config.$prefix}--tag {
157
157
  @include type.type-style('body-compact-01');
158
158
 
159
159
  display: block;
@@ -169,21 +169,23 @@ $block-class-modal: #{$block-class}-modal;
169
169
  white-space: nowrap;
170
170
  }
171
171
 
172
- .#{$block-class-overflow}__tag .#{$carbon-prefix}--tag__close-icon {
173
- // undo override by .#{$carbon-prefix}--tooltip button
172
+ .#{$block-class-overflow}__tag .#{carbon-config.$prefix}--tag__close-icon {
173
+ // undo override by .#{carbon-config.$prefix}--tooltip button
174
174
  padding: 0;
175
175
  }
176
176
 
177
- .#{$block-class-overflow}__tag .#{$carbon-prefix}--tag--high-contrast {
177
+ .#{$block-class-overflow}__tag .#{carbon-config.$prefix}--tag--high-contrast {
178
178
  background-color: $background;
179
179
  color: $text-primary;
180
180
  }
181
181
 
182
- .#{$block-class-overflow}__tag .#{$carbon-prefix}--tag__close-icon:hover {
182
+ .#{$block-class-overflow}__tag
183
+ .#{carbon-config.$prefix}--tag__close-icon:hover {
183
184
  background-color: $background-hover;
184
185
  }
185
186
 
186
- .#{$block-class-overflow}__tag .#{$carbon-prefix}--tag__close-icon:focus {
187
+ .#{$block-class-overflow}__tag
188
+ .#{carbon-config.$prefix}--tag__close-icon:focus {
187
189
  box-shadow: inset 0 0 0 $spacing-01 $focus;
188
190
  }
189
191
  }
@@ -1,7 +1,7 @@
1
1
  // stylelint-disable carbon/motion-duration-use, carbon/motion-easing-use
2
2
 
3
3
  //
4
- // Copyright IBM Corp. 2020, 2023
4
+ // Copyright IBM Corp. 2020, 2025
5
5
  //
6
6
  // This source code is licensed under the Apache-2.0 license found in the
7
7
  // LICENSE file in the root directory of this source tree.
@@ -13,8 +13,11 @@
13
13
  @use '@carbon/styles/scss/spacing' as *;
14
14
  @use '@carbon/styles/scss/motion' as *;
15
15
  @use '@carbon/styles/scss/breakpoint' as *;
16
+ @use '@carbon/styles/scss/feature-flags' as *;
16
17
  @use '@carbon/styles/scss/type';
17
18
  @use '@carbon/styles/scss/utilities';
19
+ @use '@carbon/styles/scss/config' as carbon-config;
20
+
18
21
  @use '../../global/styles/project-settings' as *;
19
22
  @use '../../global/styles/mixins' as *;
20
23
 
@@ -26,9 +29,99 @@
26
29
 
27
30
  $block-class: #{$pkg-prefix}--tearsheet;
28
31
 
32
+ // viewport, capped at 500px to set an upper limit on the movement speed
33
+ // For the reason for calc() see https://github.com/sass/sass/issues/2849
34
+ // and https://github.com/sass/node-sass/issues/2815.
35
+ // stylelint-disable-next-line carbon/layout-use
36
+ $transform-start: translate3d(0, calc(min(95vh, 500px)), 0);
37
+
29
38
  // stylelint-disable-next-line carbon/theme-use
30
39
  $motion-duration: $duration-moderate-02;
31
40
 
41
+ @mixin tearsheet-entrance-exit($has-presence: false) {
42
+ @if not($has-presence) {
43
+ &.#{$block-class} {
44
+ &:not(.is-visible) {
45
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
46
+ transform: $transform-start;
47
+ }
48
+ }
49
+ }
50
+ } @else {
51
+ // handle entrance and exit via CSS animations,
52
+ // however keep CSS transitions for stacking animations
53
+ &.#{$block-class} {
54
+ animation: #{$block-class}--presence-tearsheet__enter
55
+ $motion-duration
56
+ motion(entrance, expressive);
57
+ opacity: 1;
58
+
59
+ // extra specificity to ensure this transition overrides the carbon default
60
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
61
+ animation: #{$block-class}--presence-tearsheet--container__enter
62
+ $motion-duration
63
+ motion(entrance, expressive);
64
+ transform: translate3d(0, 0, 0);
65
+ @media screen and (prefers-reduced-motion: reduce) {
66
+ animation: none;
67
+ }
68
+ }
69
+
70
+ &.#{$block-class}--stacked-1-of-2.is-visible .#{$block-class}__container,
71
+ &.#{$block-class}--stacked-2-of-3.is-visible .#{$block-class}__container {
72
+ transform: scale(var(--#{$block-class}--stacking-scale-factor-single));
73
+ }
74
+
75
+ &.#{$block-class}--stacked-1-of-3.is-visible .#{$block-class}__container {
76
+ transform: scale(var(--#{$block-class}--stacking-scale-factor-double));
77
+ }
78
+
79
+ &[data-tearsheet-exiting] {
80
+ animation: #{$block-class}--presence-tearsheet__exit
81
+ $motion-duration
82
+ motion(exit, expressive)
83
+ forwards;
84
+
85
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
86
+ animation: #{$block-class}--presence-tearsheet--container__exit
87
+ $motion-duration
88
+ motion(entrance, expressive)
89
+ forwards;
90
+ @media screen and (prefers-reduced-motion: reduce) {
91
+ animation: none;
92
+ }
93
+ }
94
+ }
95
+ }
96
+
97
+ @keyframes #{$block-class}--presence-tearsheet__enter {
98
+ from {
99
+ opacity: 0;
100
+ transition: none;
101
+ }
102
+ }
103
+
104
+ @keyframes #{$block-class}--presence-tearsheet__exit {
105
+ to {
106
+ opacity: 0;
107
+ }
108
+ }
109
+
110
+ @keyframes #{$block-class}--presence-tearsheet--container__enter {
111
+ from {
112
+ transform: $transform-start;
113
+ transition: none;
114
+ }
115
+ }
116
+
117
+ @keyframes #{$block-class}--presence-tearsheet--container__exit {
118
+ to {
119
+ transform: $transform-start;
120
+ }
121
+ }
122
+ }
123
+ }
124
+
32
125
  @include block-wrap($block-class) {
33
126
  &.#{$block-class} {
34
127
  --overlay-color: #{$overlay};
@@ -51,17 +144,6 @@ $motion-duration: $duration-moderate-02;
51
144
  }
52
145
  }
53
146
 
54
- &:not(.is-visible) {
55
- &.#{$block-class}.#{$block-class} .#{$block-class}__container {
56
- // we want the enter/leave animation to run up most of the height of the
57
- // viewport, capped at 500px to set an upper limit on the movement speed
58
- // For the reason for calc() see https://github.com/sass/sass/issues/2849
59
- // and https://github.com/sass/node-sass/issues/2815.
60
- // stylelint-disable-next-line carbon/layout-use
61
- transform: translate3d(0, calc(min(95vh, 500px)), 0);
62
- }
63
- }
64
-
65
147
  &.#{$block-class}.#{$block-class} {
66
148
  /* tearsheet uses --overlay-color and --overlay-opacity in ::before */
67
149
  background: initial;
@@ -249,8 +331,8 @@ $motion-duration: $duration-moderate-02;
249
331
 
250
332
  // buttons inside button sets in the header action area have 8px gap
251
333
  .#{$block-class}__header-actions
252
- .#{$carbon-prefix}--btn-set
253
- .#{$carbon-prefix}--btn:not(:first-of-type) {
334
+ .#{carbon-config.$prefix}--btn-set
335
+ .#{carbon-config.$prefix}--btn:not(:first-of-type) {
254
336
  margin-inline-start: $spacing-03;
255
337
  }
256
338
 
@@ -259,7 +341,7 @@ $motion-duration: $duration-moderate-02;
259
341
  }
260
342
 
261
343
  &.#{$block-class}--wide
262
- .#{$carbon-prefix}--modal-header__heading.#{$block-class}__heading {
344
+ .#{carbon-config.$prefix}--modal-header__heading.#{$block-class}__heading {
263
345
  @include type.type-style('heading-04');
264
346
  }
265
347
 
@@ -401,27 +483,28 @@ $motion-duration: $duration-moderate-02;
401
483
  &.#{$block-class}--wide .#{$block-class}__content {
402
484
  // Specific to the Tearsheet *and* radio buttons,
403
485
  // `readOnly` styling is not applying a grey outline.
404
- .#{$carbon-prefix}--radio-button[readonly]
405
- + .#{$carbon-prefix}--radio-button__label
406
- .#{$carbon-prefix}--radio-button__appearance {
486
+ .#{carbon-config.$prefix}--radio-button[readonly]
487
+ + .#{carbon-config.$prefix}--radio-button__label
488
+ .#{carbon-config.$prefix}--radio-button__appearance {
407
489
  border-color: $icon-disabled;
408
490
  }
409
491
 
410
- .#{$carbon-prefix}--select--inline .#{$carbon-prefix}--select-input {
492
+ .#{carbon-config.$prefix}--select--inline
493
+ .#{carbon-config.$prefix}--select-input {
411
494
  background-color: transparent;
412
495
  }
413
496
 
414
497
  // and restore the 'light' prop in case light fields are wanted
415
- .#{$carbon-prefix}--text-input--light,
416
- .#{$carbon-prefix}--text-area--light,
417
- .#{$carbon-prefix}--search--light .#{$carbon-prefix}--search-input,
418
- .#{$carbon-prefix}--select--light .#{$carbon-prefix}--select-input,
419
- .#{$carbon-prefix}--dropdown--light,
420
- .#{$carbon-prefix}--dropdown--light .#{$carbon-prefix}--dropdown-list,
498
+ .#{carbon-config.$prefix}--text-input--light,
499
+ .#{carbon-config.$prefix}--text-area--light,
500
+ .#{carbon-config.$prefix}--search--light .#{carbon-config.$prefix}--search-input,
501
+ .#{carbon-config.$prefix}--select--light .#{carbon-config.$prefix}--select-input,
502
+ .#{carbon-config.$prefix}--dropdown--light,
503
+ .#{carbon-config.$prefix}--dropdown--light .#{carbon-config.$prefix}--dropdown-list,
421
504
  /* stylelint-disable-next-line prettier/prettier */
422
- .#{$carbon-prefix}--number--light input[type='number'],
423
- .#{$carbon-prefix}--date-picker--light
424
- .#{$carbon-prefix}--date-picker__input {
505
+ .#{carbon-config.$prefix}--number--light input[type='number'],
506
+ .#{carbon-config.$prefix}--date-picker--light
507
+ .#{carbon-config.$prefix}--date-picker__input {
425
508
  background-color: $field-02;
426
509
  }
427
510
  }
@@ -453,12 +536,20 @@ $motion-duration: $duration-moderate-02;
453
536
  }
454
537
 
455
538
  &.#{$block-class}--has-slug:not(.#{$block-class}--has-close)
456
- .#{$carbon-prefix}--slug,
539
+ .#{carbon-config.$prefix}--slug,
457
540
  &.#{$block-class}--has-ai-label:not(.#{$block-class}--has-close)
458
- .#{$carbon-prefix}--slug {
541
+ .#{carbon-config.$prefix}--slug {
459
542
  inset-inline-end: 0;
460
543
  /* stylelint-disable-next-line carbon/layout-use */
461
544
  margin-block: 6px;
462
545
  margin-inline-end: $spacing-05;
463
546
  }
547
+
548
+ &.#{$block-class}--tearsheet-enable-presence {
549
+ @include tearsheet-entrance-exit($has-presence: true);
550
+ }
551
+
552
+ &:not(.#{$block-class}--tearsheet-enable-presence) {
553
+ @include tearsheet-entrance-exit($has-presence: enabled('enable-presence'));
554
+ }
464
555
  }
@@ -1,5 +1,5 @@
1
1
  //
2
- // Copyright IBM Corp. 2021, 2021
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.
@@ -8,6 +8,8 @@
8
8
  @use '@carbon/styles/scss/theme' as *;
9
9
  @use '@carbon/styles/scss/breakpoint' as *;
10
10
  @use '@carbon/styles/scss/spacing' as *;
11
+ @use '@carbon/styles/scss/config' as carbon-config;
12
+
11
13
  @use '../../global/styles/project-settings' as *;
12
14
 
13
15
  $block-class: #{$pkg-prefix}--toolbar;
@@ -48,7 +50,7 @@ $toolbar-dimensions: $spacing-08;
48
50
  }
49
51
 
50
52
  .#{$block-class}--vertical > .#{$block-class}__group:last-of-type,
51
- .#{$block-class} .#{$carbon-prefix}--dropdown {
53
+ .#{$block-class} .#{carbon-config.$prefix}--dropdown {
52
54
  border-block-end-width: 0;
53
55
  }
54
56
 
@@ -1,5 +1,5 @@
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.
@@ -12,6 +12,7 @@
12
12
  // Other Carbon settings if needed
13
13
  @use '@carbon/styles/scss/motion' as *;
14
14
  @use '@carbon/styles/scss/spacing' as *;
15
+ @use '@carbon/styles/scss/config' as carbon-config;
15
16
 
16
17
  // The block part of our conventional BEM class names (blockClass__E--M).
17
18
  $block-class: #{c4p-settings.$pkg-prefix}--truncated-list;
@@ -40,12 +41,12 @@ $block-class: #{c4p-settings.$pkg-prefix}--truncated-list;
40
41
  }
41
42
  }
42
43
 
43
- .#{c4p-settings.$carbon-prefix}--btn.#{$block-class}__button {
44
+ .#{carbon-config.$prefix}--btn.#{$block-class}__button {
44
45
  padding: 0;
45
46
  inline-size: 100%;
46
47
  margin-block-start: $spacing-02;
47
48
  min-block-size: auto;
48
49
  }
49
- .#{c4p-settings.$carbon-prefix}--btn.#{$block-class}__button:hover {
50
+ .#{carbon-config.$prefix}--btn.#{$block-class}__button:hover {
50
51
  background: transparent;
51
52
  }
@@ -7,7 +7,7 @@
7
7
 
8
8
  @use '../../global/styles/project-settings' as c4p-settings;
9
9
  @use '../../global/styles/mixins';
10
- @use '@carbon/styles/scss/theme' as *;
10
+ @use '@carbon/styles/scss/theme';
11
11
 
12
12
  $block-class: #{c4p-settings.$pkg-prefix}--truncated-text;
13
13
 
@@ -21,7 +21,7 @@ $block-class: #{c4p-settings.$pkg-prefix}--truncated-text;
21
21
  }
22
22
 
23
23
  &__expand-toggle {
24
- color: $link-primary;
24
+ color: theme.$link-primary;
25
25
  cursor: pointer;
26
26
  }
27
27
  }
@@ -14,6 +14,7 @@
14
14
  @use '@carbon/styles/scss/theme' as *;
15
15
  @use '@carbon/styles/scss/spacing' as *;
16
16
  @use '@carbon/styles/scss/type';
17
+ @use '@carbon/styles/scss/config' as carbon-config;
17
18
 
18
19
  $block-class: #{$pkg-prefix}--user-avatar;
19
20
 
@@ -71,16 +72,16 @@ $sizes: (
71
72
  //this mixin allows you to set background color based on the lighter themes such as g10 and white
72
73
  @mixin setLightBg($order, $color) {
73
74
  :root .#{$block-class}--#{$order},
74
- .#{$carbon-prefix}--g10 .#{$block-class}--#{$order},
75
- .#{$carbon-prefix}--white .#{$block-class}--#{$order} {
75
+ .#{carbon-config.$prefix}--g10 .#{$block-class}--#{$order},
76
+ .#{carbon-config.$prefix}--white .#{$block-class}--#{$order} {
76
77
  @include setBgColor($color);
77
78
  }
78
79
  }
79
80
 
80
81
  //this mixin allows you to set background color based on the darker themes such as g90 and g100
81
82
  @mixin setDarkBg($order, $color) {
82
- .#{$carbon-prefix}--g90 .#{$block-class}--#{$order},
83
- .#{$carbon-prefix}--g100 .#{$block-class}--#{$order} {
83
+ .#{carbon-config.$prefix}--g90 .#{$block-class}--#{$order},
84
+ .#{carbon-config.$prefix}--g100 .#{$block-class}--#{$order} {
84
85
  @include setBgColor($color);
85
86
  }
86
87
  }
@@ -1,5 +1,5 @@
1
1
  //
2
- // Copyright IBM Corp. 2021, 2021
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.
@@ -12,6 +12,8 @@
12
12
  @use '@carbon/styles/scss/spacing' as *;
13
13
  @use '@carbon/styles/scss/type';
14
14
  @use '@carbon/type/scss/font-family';
15
+ @use '@carbon/styles/scss/config' as carbon-config;
16
+
15
17
  @use '../../global/styles/project-settings' as *;
16
18
  @use './color-map' as *;
17
19
 
@@ -72,8 +74,9 @@ $theme-keys: map-keys($themes);
72
74
  }
73
75
  }
74
76
 
75
- .#{$carbon-prefix}--tooltip__trigger.#{$block-class}__tooltip,
76
- .#{$block-class}__tooltip.#{$carbon-prefix}--btn--ghost:not([disabled]) svg {
77
+ .#{carbon-config.$prefix}--tooltip__trigger.#{$block-class}__tooltip,
78
+ .#{$block-class}__tooltip.#{carbon-config.$prefix}--btn--ghost:not([disabled])
79
+ svg {
77
80
  /* stylelint-disable-next-line max-nesting-depth */
78
81
  &:hover,
79
82
  &:focus {
@@ -93,19 +96,20 @@ $theme-keys: map-keys($themes);
93
96
  text-transform: uppercase;
94
97
  }
95
98
 
96
- .#{$block-class}__tooltip.#{$carbon-prefix}--btn--md.#{$carbon-prefix}--btn--icon-only {
99
+ .#{$block-class}__tooltip.#{carbon-config.$prefix}--btn--md.#{carbon-config.$prefix}--btn--icon-only {
97
100
  padding: 0;
98
101
  border-radius: 50%;
99
102
  min-block-size: auto;
100
103
  }
101
104
 
102
- .#{$carbon-prefix}--btn--ghost.#{$block-class}__tooltip:focus {
105
+ .#{carbon-config.$prefix}--btn--ghost.#{$block-class}__tooltip:focus {
103
106
  border: 0;
104
107
  box-shadow: 0 0 0 $spacing-02 $focus;
105
108
  }
106
109
 
107
- .#{$carbon-prefix}--tooltip__trigger .#{$block-class} svg,
108
- .#{$block-class}__tooltip.#{$carbon-prefix}--btn--ghost:not([disabled]) svg {
110
+ .#{carbon-config.$prefix}--tooltip__trigger .#{$block-class} svg,
111
+ .#{$block-class}__tooltip.#{carbon-config.$prefix}--btn--ghost:not([disabled])
112
+ svg {
109
113
  fill: $layer-01;
110
114
  }
111
115
 
@@ -1,5 +1,5 @@
1
1
  //
2
- // Copyright IBM Corp. 2020, 2022
2
+ // Copyright IBM Corp. 2020, 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.
@@ -11,6 +11,8 @@
11
11
  @use '@carbon/styles/scss/motion' as *;
12
12
  @use '@carbon/styles/scss/themes' as *;
13
13
  @use '@carbon/styles/scss/theme' as *;
14
+ @use '@carbon/styles/scss/config' as carbon-config;
15
+
14
16
  @use '../../global/styles/project-settings' as *;
15
17
 
16
18
  $web-terminal-width: 40rem; // 640px
@@ -90,7 +92,7 @@ $block-class: #{$pkg-prefix}--web-terminal;
90
92
  }
91
93
 
92
94
  .#{$block-class}__documentation-overflow
93
- .#{$carbon-prefix}--overflow-menu-options__btn {
95
+ .#{carbon-config.$prefix}--overflow-menu-options__btn {
94
96
  text-decoration: none;
95
97
  }
96
98
 
package/telemetry.yml CHANGED
@@ -965,6 +965,9 @@ collect:
965
965
  # TearsheetHeaderContent
966
966
  - titleEnd
967
967
  - titleStart
968
+ # TearsheetPresence
969
+ - _autoEnablePresence
970
+ - _presenceId
968
971
  # TearsheetWithSteps
969
972
  - progressIndicator
970
973
  - setOpen