@carbon/web-components 2.4.0-rc.0 → 2.4.0-rc.2

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 (150) hide show
  1. package/custom-elements.json +108 -0
  2. package/dist/16-44367639.js +4 -1
  3. package/dist/16-880e779e.js +4 -1
  4. package/dist/16-8ab58ede.js +4 -1
  5. package/dist/16-945f9ad8.js +4 -1
  6. package/dist/16-9bdb8b2e.js +4 -1
  7. package/dist/16-afc2ad08.js +4 -1
  8. package/dist/16-f2933a25.js +60 -0
  9. package/dist/16-f2df91a2.js +4 -1
  10. package/dist/20-c1834a3b.js +4 -1
  11. package/dist/accordion.min.js +5 -2
  12. package/dist/ai-skeleton.min.js +5 -2
  13. package/dist/breadcrumb.min.js +5 -2
  14. package/dist/{button-dade8f28.js → button-ad33c11e.js} +5 -2
  15. package/dist/{button-set-5f5affa0.js → button-set-0868cd7d.js} +5 -2
  16. package/dist/{button-skeleton-7325ea56.js → button-skeleton-5d59f37f.js} +6 -3
  17. package/dist/button.min.js +5 -2
  18. package/dist/carbon-element-4ca9803f.js +4 -1
  19. package/dist/chat-button.min.js +5 -2
  20. package/dist/{checkbox-a610152a.js → checkbox-3f270cb6.js} +5 -2
  21. package/dist/checkbox.min.js +10 -7
  22. package/dist/class-map-b1739c02.js +4 -1
  23. package/dist/code-snippet.min.js +5 -2
  24. package/dist/collection-helpers-4e32fe16.js +4 -1
  25. package/dist/combo-box.min.js +5 -2
  26. package/dist/{content-switcher-item-9714594a.js → content-switcher-item-ef4c3ffc.js} +5 -2
  27. package/dist/content-switcher.min.js +5 -2
  28. package/dist/{copy-button-1310f02a.js → copy-button-22693367.js} +5 -2
  29. package/dist/copy-button.min.js +5 -2
  30. package/dist/custom-element-975be15f.js +4 -1
  31. package/dist/data-table.min.js +6 -3
  32. package/dist/date-picker.min.js +5 -2
  33. package/dist/{objectSpread2-0b7e8561.js → defineProperty-d784d12c.js} +5 -2
  34. package/dist/directive-e2d48b9c.js +4 -1
  35. package/dist/{dropdown-item-cc7cc1dc.js → dropdown-item-5213e869.js} +5 -2
  36. package/dist/dropdown.min.js +5 -2
  37. package/dist/file-uploader.min.js +5 -2
  38. package/dist/{floating-menu-6ec5c7fa.js → floating-menu-413f6e95.js} +5 -2
  39. package/dist/floating-menu.min.js +5 -2
  40. package/dist/focus-92d82b5f.js +4 -1
  41. package/dist/form-group.min.js +4 -1
  42. package/dist/form.min.js +4 -1
  43. package/dist/get-d229c408.js +4 -1
  44. package/dist/{host-listener-a948931e.js → host-listener-0024708a.js} +6 -3
  45. package/dist/{icon-button-7b2540b4.js → icon-button-7a997866.js} +9 -5
  46. package/dist/icon-button.min.js +5 -2
  47. package/dist/if-defined-b99f5484.js +4 -1
  48. package/dist/if-non-empty-d69cc3f0.js +4 -1
  49. package/dist/inline-loading.min.js +4 -1
  50. package/dist/layer-62995057.js +4 -1
  51. package/dist/layer.min.js +4 -1
  52. package/dist/{link-d5d53be2.js → link-6fcc6a0e.js} +5 -2
  53. package/dist/link.min.js +5 -2
  54. package/dist/list.min.js +4 -1
  55. package/dist/loading-0dcb7680.js +4 -1
  56. package/dist/loading-icon-2ac6de26.js +4 -1
  57. package/dist/loading.min.js +4 -1
  58. package/dist/modal.min.js +6 -3
  59. package/dist/multi-select.min.js +5 -2
  60. package/dist/notification.min.js +7 -4
  61. package/dist/number-input.min.js +5 -2
  62. package/dist/{16-2aa048a9.js → objectSpread2-58bc1706.js} +5 -2
  63. package/dist/on-6c264d49.js +4 -1
  64. package/dist/overflow-menu.min.js +5 -2
  65. package/dist/pagination.min.js +5 -2
  66. package/dist/popover-content-2df97cf7.js +75 -0
  67. package/dist/popover-controller-e5f73836.js +60 -0
  68. package/dist/popover.min.js +5 -2
  69. package/dist/progress-bar.min.js +4 -1
  70. package/dist/progress-indicator.min.js +5 -2
  71. package/dist/query-6ca5e414.js +4 -1
  72. package/dist/query-assigned-elements-8e88277c.js +4 -1
  73. package/dist/radio-button.min.js +5 -2
  74. package/dist/{radio-group-manager-3cfdd620.js → radio-group-manager-9810bd7d.js} +5 -2
  75. package/dist/{search-4c0e8630.js → search-b8b073b6.js} +5 -2
  76. package/dist/search.min.js +5 -2
  77. package/dist/select-item-db3c6fa0.js +4 -1
  78. package/dist/select.min.js +5 -2
  79. package/dist/settings-387c0fa4.js +4 -1
  80. package/dist/shared-enums-c6fe8c39.js +4 -1
  81. package/dist/side-panel.min.js +13 -10
  82. package/dist/skeleton-icon-451d3c47.js +4 -1
  83. package/dist/skeleton-icon.min.js +4 -1
  84. package/dist/{skeleton-placeholder-e6490dbd.js → skeleton-placeholder-5aa06271.js} +5 -2
  85. package/dist/skeleton-placeholder.min.js +5 -2
  86. package/dist/{skeleton-text-eeac3c87.js → skeleton-text-283abe50.js} +5 -2
  87. package/dist/skeleton-text.min.js +5 -2
  88. package/dist/skip-to-content.min.js +5 -2
  89. package/dist/slider.min.js +5 -2
  90. package/dist/slug.min.js +11 -7
  91. package/dist/spread-6af5f657.js +4 -1
  92. package/dist/stack.min.js +4 -1
  93. package/dist/state-63312e74.js +4 -1
  94. package/dist/structured-list.min.js +5 -2
  95. package/dist/tabs.min.js +7 -4
  96. package/dist/tag.min.js +5 -2
  97. package/dist/{text-input-8d011ae2.js → text-input-d40fbf4d.js} +5 -2
  98. package/dist/text-input.min.js +6 -3
  99. package/dist/textarea.min.js +9 -6
  100. package/dist/tile.min.js +5 -2
  101. package/dist/toggle-tip.min.js +5 -2
  102. package/dist/toggle.min.js +5 -2
  103. package/dist/toggletip-2d777826.js +114 -0
  104. package/dist/{tooltip-content-fbce4fed.js → tooltip-content-2ef20c6a.js} +5 -2
  105. package/dist/tooltip.min.js +5 -2
  106. package/dist/ui-shell.min.js +5 -2
  107. package/dist/validity-d86ffa4f.js +4 -1
  108. package/es/components/data-table/data-table.css.js +1 -1
  109. package/es/components/icon-button/icon-button.css.js +1 -1
  110. package/es/components/icon-button/icon-button.d.ts +5 -1
  111. package/es/components/icon-button/icon-button.js +18 -2
  112. package/es/components/icon-button/icon-button.js.map +1 -1
  113. package/es/components/popover/defs.d.ts +50 -2
  114. package/es/components/popover/defs.js +9 -2
  115. package/es/components/popover/defs.js.map +1 -1
  116. package/es/components/popover/popover-content.d.ts +5 -1
  117. package/es/components/popover/popover-content.js +32 -9
  118. package/es/components/popover/popover-content.js.map +1 -1
  119. package/es/components/popover/popover.css.js +1 -1
  120. package/es/components/popover/popover.d.ts +27 -1
  121. package/es/components/popover/popover.js +93 -4
  122. package/es/components/popover/popover.js.map +1 -1
  123. package/es/components/slug/slug.css.js +1 -1
  124. package/es/components/slug/slug.d.ts +1 -1
  125. package/es/components/slug/slug.js +5 -3
  126. package/es/components/slug/slug.js.map +1 -1
  127. package/es/components/tabs/tabs.css.js +1 -1
  128. package/es/components/toggle-tip/toggletip.css.js +1 -1
  129. package/es/components/toggle-tip/toggletip.d.ts +24 -0
  130. package/es/components/toggle-tip/toggletip.js +115 -17
  131. package/es/components/toggle-tip/toggletip.js.map +1 -1
  132. package/es/components/tooltip/tooltip.css.js +1 -1
  133. package/es/components/tooltip/tooltip.d.ts +5 -1
  134. package/es/components/tooltip/tooltip.js +17 -2
  135. package/es/components/tooltip/tooltip.js.map +1 -1
  136. package/es/globals/controllers/popover-controller.d.ts +47 -0
  137. package/es/globals/controllers/popover-controller.js +142 -0
  138. package/es/globals/controllers/popover-controller.js.map +1 -0
  139. package/lib/components/popover/defs.js +9 -1
  140. package/lib/components/popover/defs.js.map +1 -1
  141. package/lib/globals/controllers/popover-controller.js +150 -0
  142. package/lib/globals/controllers/popover-controller.js.map +1 -0
  143. package/package.json +3 -2
  144. package/scss/components/data-table/_table-core.scss +0 -1
  145. package/scss/components/popover/popover.scss +83 -64
  146. package/scss/components/slug/slug.scss +171 -28
  147. package/scss/components/tabs/tabs.scss +1 -1
  148. package/scss/components/toggle-tip/toggletip.scss +13 -1
  149. package/dist/popover-content-e0c3132f.js +0 -68
  150. package/dist/toggletip-b2d3b8bf.js +0 -99
@@ -92,10 +92,10 @@ $popover-caret-height: custom-property.get-var(
92
92
  );
93
93
  }
94
94
 
95
- :host(#{$prefix}-tooltip-content[align^='bottom']),
96
- :host(#{$prefix}-popover-content[align^='bottom']),
97
- :host(#{$prefix}-toggletip[alignment^='bottom']),
98
- :host(#{$prefix}-slug[alignment^='bottom']) {
95
+ :host(#{$prefix}-tooltip-content[align^='bottom']:not([autoalign])),
96
+ :host(#{$prefix}-popover-content[align^='bottom']:not([autoalign])),
97
+ :host(#{$prefix}-toggletip[alignment^='bottom']:not([autoalign])),
98
+ :host(#{$prefix}-slug[alignment^='bottom']:not([autoalign])) {
99
99
  .#{$prefix}--popover-caret {
100
100
  block-size: $popover-caret-height;
101
101
  clip-path: polygon(0% 100%, 50% 0%, 100% 100%);
@@ -106,10 +106,10 @@ $popover-caret-height: custom-property.get-var(
106
106
  }
107
107
  }
108
108
 
109
- :host(#{$prefix}-tooltip-content[align='bottom']),
110
- :host(#{$prefix}-popover-content[align='bottom']),
111
- :host(#{$prefix}-toggletip[alignment='bottom']),
112
- :host(#{$prefix}-slug[alignment='bottom']) {
109
+ :host(#{$prefix}-tooltip-content[align='bottom']:not([autoalign])),
110
+ :host(#{$prefix}-popover-content[align='bottom']:not([autoalign])),
111
+ :host(#{$prefix}-toggletip[alignment='bottom']:not([autoalign])),
112
+ :host(#{$prefix}-slug[alignment='bottom']:not([autoalign])) {
113
113
  .#{$prefix}--popover-content {
114
114
  inset-block-end: 0;
115
115
  inset-inline-start: 50%;
@@ -117,10 +117,10 @@ $popover-caret-height: custom-property.get-var(
117
117
  }
118
118
  }
119
119
 
120
- :host(#{$prefix}-tooltip-content[align='bottom-left']),
121
- :host(#{$prefix}-popover-content[align='bottom-left']),
122
- :host(#{$prefix}-toggletip[alignment='bottom-left']),
123
- :host(#{$prefix}-slug[alignment='bottom-left']) {
120
+ :host(#{$prefix}-tooltip-content[align='bottom-left']:not([autoalign])),
121
+ :host(#{$prefix}-popover-content[align='bottom-left']:not([autoalign])),
122
+ :host(#{$prefix}-toggletip[alignment='bottom-left']:not([autoalign])),
123
+ :host(#{$prefix}-slug[alignment='bottom-left']:not([autoalign])) {
124
124
  .#{$prefix}--popover-content {
125
125
  inset-block-end: 0;
126
126
  inset-inline-start: 0;
@@ -131,10 +131,10 @@ $popover-caret-height: custom-property.get-var(
131
131
  }
132
132
  }
133
133
 
134
- :host(#{$prefix}-tooltip-content[align='bottom-right']),
135
- :host(#{$prefix}-popover-content[align='bottom-right']),
136
- :host(#{$prefix}-toggletip[alignment='bottom-right']),
137
- :host(#{$prefix}-slug[alignment='bottom-right']) {
134
+ :host(#{$prefix}-tooltip-content[align='bottom-right']:not([autoalign])),
135
+ :host(#{$prefix}-popover-content[align='bottom-right']:not([autoalign])),
136
+ :host(#{$prefix}-toggletip[alignment='bottom-right']:not([autoalign])),
137
+ :host(#{$prefix}-slug[alignment='bottom-right']:not([autoalign])) {
138
138
  .#{$prefix}--popover-content {
139
139
  inset-block-end: 0;
140
140
  inset-inline-end: 0;
@@ -142,10 +142,10 @@ $popover-caret-height: custom-property.get-var(
142
142
  }
143
143
  }
144
144
 
145
- :host(#{$prefix}-tooltip-content[align^='left']),
146
- :host(#{$prefix}-popover-content[align^='left']),
147
- :host(#{$prefix}-toggletip[alignment^='left']),
148
- :host(#{$prefix}-slug[alignment^='left']) {
145
+ :host(#{$prefix}-tooltip-content[align^='left']:not([autoalign])),
146
+ :host(#{$prefix}-popover-content[align^='left']:not([autoalign])),
147
+ :host(#{$prefix}-toggletip[alignment^='left']:not([autoalign])),
148
+ :host(#{$prefix}-slug[alignment^='left']:not([autoalign])) {
149
149
  .#{$prefix}--popover-caret {
150
150
  block-size: $popover-caret-width;
151
151
  clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
@@ -156,10 +156,10 @@ $popover-caret-height: custom-property.get-var(
156
156
  }
157
157
  }
158
158
 
159
- :host(#{$prefix}-tooltip-content[align='left']),
160
- :host(#{$prefix}-popover-content[align='left']),
161
- :host(#{$prefix}-toggletip[alignment='left']),
162
- :host(#{$prefix}-slug[alignment='left']) {
159
+ :host(#{$prefix}-tooltip-content[align='left']:not([autoalign])),
160
+ :host(#{$prefix}-popover-content[align='left']:not([autoalign])),
161
+ :host(#{$prefix}-toggletip[alignment='left']:not([autoalign])),
162
+ :host(#{$prefix}-slug[alignment='left']:not([autoalign])) {
163
163
  .#{$prefix}--popover-content {
164
164
  inset-block-start: 50%;
165
165
  inset-inline-end: 100%;
@@ -169,10 +169,10 @@ $popover-caret-height: custom-property.get-var(
169
169
  }
170
170
  }
171
171
 
172
- :host(#{$prefix}-tooltip-content[align='left-bottom']),
173
- :host(#{$prefix}-popover-content[align='left-bottom']),
174
- :host(#{$prefix}-toggletip[alignment='left-bottom']),
175
- :host(#{$prefix}-slug[alignment='left-bottom']) {
172
+ :host(#{$prefix}-tooltip-content[align='left-bottom']:not([autoalign])),
173
+ :host(#{$prefix}-popover-content[align='left-bottom']:not([autoalign])),
174
+ :host(#{$prefix}-toggletip[alignment='left-bottom']:not([autoalign])),
175
+ :host(#{$prefix}-slug[alignment='left-bottom']:not([autoalign])) {
176
176
  .#{$prefix}--popover-content {
177
177
  inset-block-end: 50%;
178
178
  inset-inline-end: 100%;
@@ -185,10 +185,10 @@ $popover-caret-height: custom-property.get-var(
185
185
  }
186
186
  }
187
187
 
188
- :host(#{$prefix}-tooltip-content[align='left-top']),
189
- :host(#{$prefix}-popover-content[align='left-top']),
190
- :host(#{$prefix}-toggletip[alignment='left-top']),
191
- :host(#{$prefix}-slug[alignment='left-top']) {
188
+ :host(#{$prefix}-tooltip-content[align='left-top']:not([autoalign])),
189
+ :host(#{$prefix}-popover-content[align='left-top']:not([autoalign])),
190
+ :host(#{$prefix}-toggletip[alignment='left-top']:not([autoalign])),
191
+ :host(#{$prefix}-slug[alignment='left-top']:not([autoalign])) {
192
192
  .#{$prefix}--popover-content {
193
193
  inset-block-start: 50%;
194
194
  inset-inline-end: 100%;
@@ -201,10 +201,10 @@ $popover-caret-height: custom-property.get-var(
201
201
  }
202
202
  }
203
203
 
204
- :host(#{$prefix}-tooltip-content[align^='right']),
205
- :host(#{$prefix}-popover-content[align^='right']),
206
- :host(#{$prefix}-toggletip[alignment^='right']),
207
- :host(#{$prefix}-slug[alignment^='right']) {
204
+ :host(#{$prefix}-tooltip-content[align^='right']:not([autoalign])),
205
+ :host(#{$prefix}-popover-content[align^='right']:not([autoalign])),
206
+ :host(#{$prefix}-toggletip[alignment^='right']:not([autoalign])),
207
+ :host(#{$prefix}-slug[alignment^='right']:not([autoalign])) {
208
208
  .#{$prefix}--popover-caret {
209
209
  block-size: $popover-caret-width;
210
210
  clip-path: polygon(0% 50%, 100% 0%, 100% 100%);
@@ -215,10 +215,10 @@ $popover-caret-height: custom-property.get-var(
215
215
  }
216
216
  }
217
217
 
218
- :host(#{$prefix}-tooltip-content[align='right']),
219
- :host(#{$prefix}-popover-content[align='right']),
220
- :host(#{$prefix}-toggletip[alignment='right']),
221
- :host(#{$prefix}-slug[alignment='right']) {
218
+ :host(#{$prefix}-tooltip-content[align='right']:not([autoalign])),
219
+ :host(#{$prefix}-popover-content[align='right']:not([autoalign])),
220
+ :host(#{$prefix}-toggletip[alignment='right']:not([autoalign])),
221
+ :host(#{$prefix}-slug[alignment='right']:not([autoalign])) {
222
222
  .#{$prefix}--popover-content {
223
223
  inset-block-start: 50%;
224
224
  inset-inline-start: 100%;
@@ -228,10 +228,10 @@ $popover-caret-height: custom-property.get-var(
228
228
  }
229
229
  }
230
230
 
231
- :host(#{$prefix}-tooltip-content[align='right-bottom']),
232
- :host(#{$prefix}-popover-content[align='right-bottom']),
233
- :host(#{$prefix}-toggletip[alignment='right-bottom']),
234
- :host(#{$prefix}-slug[alignment='right-bottom']) {
231
+ :host(#{$prefix}-tooltip-content[align='right-bottom']:not([autoalign])),
232
+ :host(#{$prefix}-popover-content[align='right-bottom']:not([autoalign])),
233
+ :host(#{$prefix}-toggletip[alignment='right-bottom']:not([autoalign])),
234
+ :host(#{$prefix}-slug[alignment='right-bottom']:not([autoalign])) {
235
235
  .#{$prefix}--popover-content {
236
236
  inset-block-end: 50%;
237
237
  inset-inline-start: 100%;
@@ -239,10 +239,10 @@ $popover-caret-height: custom-property.get-var(
239
239
  }
240
240
  }
241
241
 
242
- :host(#{$prefix}-tooltip-content[align='right-top']),
243
- :host(#{$prefix}-popover-content[align='right-top']),
244
- :host(#{$prefix}-toggletip[alignment='right-top']),
245
- :host(#{$prefix}-slug[alignment='right-top']) {
242
+ :host(#{$prefix}-tooltip-content[align='right-top']:not([autoalign])),
243
+ :host(#{$prefix}-popover-content[align='right-top']:not([autoalign])),
244
+ :host(#{$prefix}-toggletip[alignment='right-top']:not([autoalign])),
245
+ :host(#{$prefix}-slug[alignment='right-top']:not([autoalign])) {
246
246
  .#{$prefix}--popover-content {
247
247
  inset-block-start: 50%;
248
248
  inset-inline-start: 100%;
@@ -253,10 +253,10 @@ $popover-caret-height: custom-property.get-var(
253
253
  }
254
254
  }
255
255
 
256
- :host(#{$prefix}-tooltip-content[align^='top']),
257
- :host(#{$prefix}-popover-content[align^='top']),
258
- :host(#{$prefix}-toggletip[alignment^='top']),
259
- :host(#{$prefix}-slug[alignment^='top']) {
256
+ :host(#{$prefix}-tooltip-content[align^='top']:not([autoalign])),
257
+ :host(#{$prefix}-popover-content[align^='top']:not([autoalign])),
258
+ :host(#{$prefix}-toggletip[alignment^='top']:not([autoalign])),
259
+ :host(#{$prefix}-slug[alignment^='top']:not([autoalign])) {
260
260
  .#{$prefix}--popover-caret {
261
261
  block-size: $popover-caret-height;
262
262
  clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
@@ -267,10 +267,10 @@ $popover-caret-height: custom-property.get-var(
267
267
  }
268
268
  }
269
269
 
270
- :host(#{$prefix}-tooltip-content[align='top']),
271
- :host(#{$prefix}-popover-content[align='top']),
272
- :host(#{$prefix}-toggletip[alignment='top']),
273
- :host(#{$prefix}-slug[alignment='top']) {
270
+ :host(#{$prefix}-tooltip-content[align='top']:not([autoalign])),
271
+ :host(#{$prefix}-popover-content[align='top']:not([autoalign])),
272
+ :host(#{$prefix}-toggletip[alignment='top']:not([autoalign])),
273
+ :host(#{$prefix}-slug[alignment='top']:not([autoalign])) {
274
274
  .#{$prefix}--popover-content {
275
275
  inset-block-start: 0;
276
276
  inset-inline-start: 50%;
@@ -278,10 +278,10 @@ $popover-caret-height: custom-property.get-var(
278
278
  }
279
279
  }
280
280
 
281
- :host(#{$prefix}-tooltip-content[align='top-left']),
282
- :host(#{$prefix}-popover-content[align='top-left']),
283
- :host(#{$prefix}-toggletip[alignment='top-left']),
284
- :host(#{$prefix}-slug[alignment='top-left']) {
281
+ :host(#{$prefix}-tooltip-content[align='top-left']:not([autoalign])),
282
+ :host(#{$prefix}-popover-content[align='top-left']:not([autoalign])),
283
+ :host(#{$prefix}-toggletip[alignment='top-left']:not([autoalign])),
284
+ :host(#{$prefix}-slug[alignment='top-left']:not([autoalign])) {
285
285
  .#{$prefix}--popover-content {
286
286
  inset-block-start: 0;
287
287
  inset-inline-start: 0;
@@ -292,13 +292,32 @@ $popover-caret-height: custom-property.get-var(
292
292
  }
293
293
  }
294
294
 
295
- :host(#{$prefix}-tooltip-content[align='top-right']),
296
- :host(#{$prefix}-popover-content[align='top-right']),
297
- :host(#{$prefix}-toggletip[alignment='top-right']),
298
- :host(#{$prefix}-slug[alignment='top-right']) {
295
+ :host(#{$prefix}-tooltip-content[align='top-right']:not([autoalign])),
296
+ :host(#{$prefix}-popover-content[align='top-right']:not([autoalign])),
297
+ :host(#{$prefix}-toggletip[alignment='top-right']:not([autoalign])),
298
+ :host(#{$prefix}-slug[alignment='top-right']:not([autoalign])) {
299
299
  .#{$prefix}--popover-content {
300
300
  inset-block-start: 0;
301
301
  inset-inline-end: 0;
302
302
  transform: translate($popover-offset, calc(-100% - $popover-offset));
303
303
  }
304
304
  }
305
+
306
+ :host(#{$prefix}-toggletip[autoalign]),
307
+ :host(#{$prefix}-tooltip-content[autoalign]),
308
+ :host(#{$prefix}-popover-content[autoalign]) {
309
+ .#{$prefix}--popover-caret {
310
+ block-size: 8px;
311
+ inline-size: 8px;
312
+ transform: rotate(45deg);
313
+ }
314
+ }
315
+
316
+ :host(#{$prefix}-slug[autoalign]),
317
+ :host(#{$prefix}-tooltip[autoalign]),
318
+ :host(#{$prefix}-toggletip[autoalign]),
319
+ :host(#{$prefix}-popover[autoalign]) {
320
+ .#{$prefix}--popover-container {
321
+ position: static;
322
+ }
323
+ }
@@ -274,44 +274,187 @@ $colorMap: (
274
274
 
275
275
  // override for specific alignments
276
276
  /* stylelint-disable-next-line no-duplicate-selectors */
277
- :host(#{$prefix}-slug:not([kind='hollow']):not([dot-type='hollow'])) {
278
- &[alignment='left-bottom'],
279
- &[alignment='right-bottom'] {
280
- .#{$prefix}--popover-caret::after {
281
- background: transparent;
282
- }
277
+ :host(
278
+ #{$prefix}-slug:not([kind='hollow']):not(
279
+ [dot-type='hollow']
280
+ )[alignment='left-end']
281
+ ),
282
+ :host(
283
+ #{$prefix}-slug:not([kind='hollow']):not(
284
+ [dot-type='hollow']
285
+ )[alignment='left-bottom']
286
+ ),
287
+ :host(
288
+ #{$prefix}-slug:not([kind='hollow']):not(
289
+ [dot-type='hollow']
290
+ )[alignment='right-end']
291
+ ),
292
+ :host(
293
+ #{$prefix}-slug:not([kind='hollow']):not(
294
+ [dot-type='hollow']
295
+ )[alignment='right-bottom']
296
+ ) {
297
+ .#{$prefix}--popover-caret::after {
298
+ background: transparent;
283
299
  }
284
300
  }
285
301
 
286
302
  // Change caret color / border when it is near the bottom of the callout
287
303
  /* stylelint-disable-next-line no-duplicate-selectors */
288
- :host(#{$prefix}-slug:not([kind='hollow']):not([dot-type='hollow'])) {
289
- &[alignment='left-bottom'],
290
- &[alignment='right-bottom'],
291
- &[alignment='top'],
292
- &[alignment='top-right'],
293
- &[alignment='top-left'] {
294
- .#{$prefix}--popover-caret::before {
295
- border-color: $slug-callout-caret-bottom;
296
- background: $slug-callout-caret-bottom-background;
297
- }
298
- // Adjust background if actions are present
299
- &[has-actions] {
300
- .#{$prefix}--popover-caret::before {
301
- background: $slug-callout-caret-bottom-background-actions;
302
- }
303
- }
304
+ :host(
305
+ #{$prefix}-slug:not([kind='hollow']):not(
306
+ [dot-type='hollow']
307
+ )[alignment='left-end']
308
+ ),
309
+ :host(
310
+ #{$prefix}-slug:not([kind='hollow']):not(
311
+ [dot-type='hollow']
312
+ )[alignment='left-bottom']
313
+ ),
314
+ :host(
315
+ #{$prefix}-slug:not([kind='hollow']):not(
316
+ [dot-type='hollow']
317
+ )[alignment='right-end']
318
+ ),
319
+ :host(
320
+ #{$prefix}-slug:not([kind='hollow']):not(
321
+ [dot-type='hollow']
322
+ )[alignment='right-bottom']
323
+ ),
324
+ :host(
325
+ #{$prefix}-slug:not([kind='hollow']):not(
326
+ [dot-type='hollow']
327
+ )[alignment^='top']
328
+ ) {
329
+ .#{$prefix}--popover-caret::before {
330
+ border-color: $slug-callout-caret-bottom;
331
+ background: $slug-callout-caret-bottom-background;
332
+ }
333
+ }
334
+
335
+ :host(
336
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
337
+ [dot-type='hollow']
338
+ )[alignment='left-end'][has-actions]
339
+ ),
340
+ :host(
341
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
342
+ [dot-type='hollow']
343
+ )[alignment='left-bottom'][has-actions]
344
+ ),
345
+ :host(
346
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
347
+ [dot-type='hollow']
348
+ )[alignment='right-end'][has-actions]
349
+ ),
350
+ :host(
351
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
352
+ [dot-type='hollow']
353
+ )[alignment='right-bottom'][has-actions]
354
+ ),
355
+ :host(
356
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
357
+ [dot-type='hollow']
358
+ )[alignment^='top'][has-actions]
359
+ ) {
360
+ .#{$prefix}--popover-caret::before {
361
+ background: $slug-callout-caret-bottom-background-actions;
304
362
  }
305
363
  }
306
364
 
307
365
  // Change the caret border when it is near the middle of the callout
308
366
  /* stylelint-disable-next-line no-duplicate-selectors */
309
- :host(#{$prefix}-slug:not([kind='hollow']):not([dot-type='hollow'])) {
310
- &[alignment='left'],
311
- &[alignment='right'] {
312
- .#{$prefix}--popover-caret::before {
313
- border-color: $slug-callout-caret-center;
314
- }
367
+ :host(
368
+ #{$prefix}-slug:not([kind='hollow']):not(
369
+ [dot-type='hollow']
370
+ )[alignment='left']
371
+ ),
372
+ :host(
373
+ #{$prefix}-slug:not([kind='hollow']):not(
374
+ [dot-type='hollow']
375
+ )[alignment='right']
376
+ ) {
377
+ .#{$prefix}--popover-caret::before {
378
+ border-color: $slug-callout-caret-center;
379
+ }
380
+ }
381
+
382
+ // caret styles for auto align
383
+ :host(#{$prefix}-slug[autoalign]) .#{$prefix}--popover-caret {
384
+ block-size: $spacing-04;
385
+ inline-size: $spacing-04;
386
+ }
387
+
388
+ :host(#{$prefix}-slug[autoalign][kind='hollow']),
389
+ :host(#{$prefix}-slug[autoalign][dot-type='hollow']) {
390
+ .#{$prefix}--popover-caret {
391
+ block-size: $spacing-03;
392
+ inline-size: $spacing-03;
393
+ transform: rotate(45deg);
394
+ }
395
+ }
396
+
397
+ :host(
398
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not([dot-type='hollow'])
399
+ ) {
400
+ .#{$prefix}--popover-caret::before {
401
+ inset-block-start: 0;
402
+ }
403
+
404
+ .#{$prefix}--popover-caret {
405
+ transform: none;
406
+ }
407
+
408
+ .#{$prefix}--popover-caret::after {
409
+ inline-size: to-rem(14px);
410
+ inset-block-end: to-rem(5px);
411
+ inset-inline-start: to-rem(-1px);
412
+ }
413
+ }
414
+
415
+ :host(
416
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
417
+ [dot-type='hollow']
418
+ )[alignment^='left']
419
+ ),
420
+ :host(
421
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
422
+ [dot-type='hollow']
423
+ )[alignment^='right']
424
+ ) {
425
+ .#{$prefix}--popover-caret::before {
426
+ inset-inline-start: 0;
427
+ }
428
+ .#{$prefix}--popover-caret::after {
429
+ block-size: to-rem(14px);
430
+ inline-size: to-rem(2px);
431
+ inset-block-start: to-rem(-1px);
432
+ inset-inline-start: to-rem(5px);
433
+ }
434
+ }
435
+
436
+ :host(
437
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
438
+ [dot-type='hollow']
439
+ )[alignment='left-end']
440
+ ),
441
+ :host(
442
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
443
+ [dot-type='hollow']
444
+ )[alignment='left-bottom']
445
+ ),
446
+ :host(
447
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
448
+ [dot-type='hollow']
449
+ )[alignment='right-end']
450
+ ),
451
+ :host(
452
+ #{$prefix}-slug[autoalign]:not([kind='hollow']):not(
453
+ [dot-type='hollow']
454
+ )[alignment='right-bottom']
455
+ ) {
456
+ .#{$prefix}--popover-caret::after {
457
+ background: transparent;
315
458
  }
316
459
  }
317
460
 
@@ -28,7 +28,7 @@ $inset-transition: inset 110ms motion(standard, productive);
28
28
  overflow: scroll;
29
29
  flex: 1 1 0%;
30
30
  // for some reason, overflow: hidden shrinks the content
31
- block-size: $spacing-09;
31
+ block-size: $spacing-08;
32
32
  scrollbar-width: none;
33
33
 
34
34
  &::-webkit-scrollbar {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019, 2023
4
+ * Copyright IBM Corp. 2019, 2024
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.
@@ -10,6 +10,7 @@
10
10
  @use '@carbon/styles/scss/config' as *;
11
11
  @use '@carbon/styles/scss/type' as *;
12
12
  @use '@carbon/styles/scss/utilities';
13
+ @use '@carbon/styles/scss/utilities/custom-property' as *;
13
14
  @use '@carbon/styles/scss/spacing' as *;
14
15
  @use '@carbon/styles/scss/theme' as *;
15
16
  @use '@carbon/styles/scss/components/toggletip/index' as *;
@@ -32,3 +33,14 @@
32
33
  background-color: $background-inverse;
33
34
  }
34
35
  }
36
+
37
+ :host(#{$prefix}-slug[open][autoalign]),
38
+ :host(#{$prefix}-toggletip[open][autoalign]) {
39
+ .#{$prefix}--popover-content {
40
+ display: block;
41
+
42
+ @include declaration('popover-background-color', $background-inverse);
43
+
44
+ @include declaration('popover-text-color', $text-inverse);
45
+ }
46
+ }