@patternfly/patternfly 6.0.0-alpha.128 → 6.0.0-alpha.129

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.
@@ -1,814 +0,0 @@
1
- @use '../../sass-utilities' as *;
2
-
3
- $pf-v6-c-dropdown--breakpoint-map: build-breakpoint-map("base", "sm", "md", "lg", "xl", "2xl");
4
-
5
- .#{$dropdown} {
6
- // Toggle
7
- --#{$dropdown}__toggle--PaddingBlockStart: var(--#{$pf-global}--spacer--form-element);
8
- --#{$dropdown}__toggle--PaddingInlineEnd: var(--#{$pf-global}--spacer--sm);
9
- --#{$dropdown}__toggle--PaddingBlockEnd: var(--#{$pf-global}--spacer--form-element);
10
- --#{$dropdown}__toggle--PaddingInlineStart: var(--#{$pf-global}--spacer--sm);
11
- --#{$dropdown}__toggle--ColumnGap: var(--#{$pf-global}--spacer--sm);
12
- --#{$dropdown}__toggle--MinWidth: 0;
13
- --#{$dropdown}__toggle--FontSize: var(--#{$pf-global}--FontSize--md);
14
- --#{$dropdown}__toggle--FontWeight: var(--#{$pf-global}--FontWeight--normal);
15
- --#{$dropdown}__toggle--Color: var(--#{$pf-global}--Color--100);
16
- --#{$dropdown}__toggle--LineHeight: var(--#{$pf-global}--LineHeight--md);
17
- --#{$dropdown}__toggle--BackgroundColor: transparent;
18
- --#{$dropdown}__toggle--before--BorderWidth: var(--#{$pf-global}--BorderWidth--sm);
19
- --#{$dropdown}__toggle--before--BorderBlockStartColor: var(--#{$pf-global}--BorderColor--300);
20
- --#{$dropdown}__toggle--before--BorderInlineEndColor: var(--#{$pf-global}--BorderColor--300);
21
- --#{$dropdown}__toggle--before--BorderBlockEndColor: var(--#{$pf-global}--BorderColor--200);
22
- --#{$dropdown}__toggle--before--BorderInlineStartColor: var(--#{$pf-global}--BorderColor--300);
23
- --#{$dropdown}__toggle--hover--before--BorderBlockEndColor: var(--#{$pf-global}--active-color--100);
24
- --#{$dropdown}__toggle--focus--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--md);
25
- --#{$dropdown}__toggle--focus--before--BorderBlockEndColor: var(--#{$pf-global}--active-color--100);
26
- --#{$dropdown}__toggle--active--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--md);
27
- --#{$dropdown}__toggle--active--before--BorderBlockEndColor: var(--#{$pf-global}--active-color--100);
28
- --#{$dropdown}--m-expanded__toggle--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--md);
29
- --#{$dropdown}--m-expanded__toggle--before--BorderBlockEndColor: var(--#{$pf-global}--active-color--100);
30
- --#{$dropdown}__toggle--disabled--BackgroundColor: var(--#{$pf-global}--disabled-color--300);
31
-
32
- // Plain
33
- --#{$dropdown}__toggle--m-plain--Color: var(--#{$pf-global}--Color--200);
34
- --#{$dropdown}__toggle--m-plain--hover--Color: var(--#{$pf-global}--Color--100);
35
- --#{$dropdown}__toggle--m-plain--disabled--Color: var(--#{$pf-global}--disabled-color--200);
36
- --#{$dropdown}__toggle--m-plain--PaddingInlineEnd: var(--#{$pf-global}--spacer--md);
37
- --#{$dropdown}__toggle--m-plain--PaddingInlineStart: var(--#{$pf-global}--spacer--md);
38
- --#{$dropdown}__toggle--m-plain--child--LineHeight: normal; // remove at breaking change
39
-
40
- // Primary
41
- --#{$dropdown}__toggle--m-primary--Color: var(--#{$pf-global}--Color--light-100);
42
- --#{$dropdown}__toggle--m-primary--BorderRadius: var(--#{$pf-global}--BorderRadius--sm);
43
- --#{$dropdown}__toggle--m-primary--BackgroundColor: var(--#{$pf-global}--primary-color--100);
44
- --#{$dropdown}__toggle--m-primary--hover--BackgroundColor: var(--#{$pf-global}--primary-color--200);
45
- --#{$dropdown}__toggle--m-primary--focus--BackgroundColor: var(--#{$pf-global}--primary-color--200);
46
- --#{$dropdown}__toggle--m-primary--active--BackgroundColor: var(--#{$pf-global}--primary-color--200);
47
- --#{$dropdown}--m-expanded__toggle--m-primary--BackgroundColor: var(--#{$pf-global}--primary-color--200);
48
- --#{$dropdown}__toggle--m-primary--disabled--Color: var(--#{$pf-global}--Color--100);
49
-
50
- // Secondary
51
- --#{$dropdown}__toggle--m-secondary--Color: var(--#{$pf-global}--primary-color--100);
52
- --#{$dropdown}__toggle--m-secondary--BorderRadius: var(--#{$pf-global}--BorderRadius--sm);
53
- --#{$dropdown}__toggle--m-secondary--BackgroundColor: transparent;
54
- --#{$dropdown}__toggle--m-secondary--before--BorderWidth: var(--#{$pf-global}--BorderWidth--sm);
55
- --#{$dropdown}__toggle--m-secondary--hover--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
56
- --#{$dropdown}__toggle--m-secondary--focus--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
57
- --#{$dropdown}__toggle--m-secondary--active--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
58
- --#{$dropdown}__toggle--m-secondary--before--BorderColor: var(--#{$pf-global}--primary-color--100);
59
- --#{$dropdown}__toggle--m-secondary--hover--before--BorderColor: var(--#{$pf-global}--primary-color--100);
60
- --#{$dropdown}__toggle--m-secondary--focus--before--BorderColor: var(--#{$pf-global}--primary-color--100);
61
- --#{$dropdown}__toggle--m-secondary--active--before--BorderColor: var(--#{$pf-global}--primary-color--100);
62
- --#{$dropdown}--m-expanded__toggle--m-secondary--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
63
- --#{$dropdown}--m-expanded__toggle--m-secondary--before--BorderColor: var(--#{$pf-global}--primary-color--100);
64
-
65
- // toggle button
66
- --#{$dropdown}__toggle-button--Color: var(--#{$pf-global}--Color--100);
67
- --#{$dropdown}__toggle-button--BackgroundColor: transparent;
68
-
69
- // toggle progress
70
- --#{$dropdown}__toggle-progress--Visibility: hidden;
71
- --#{$dropdown}__toggle-progress--c-spinner--diameter: var(--#{$pf-global}--FontSize--sm); // should match the checkbox input size
72
-
73
- // split buttons
74
- --#{$dropdown}__toggle--m-split-button--child--PaddingBlockStart: var(--#{$pf-global}--spacer--form-element);
75
- --#{$dropdown}__toggle--m-split-button--child--PaddingInlineEnd: var(--#{$pf-global}--spacer--xs);
76
- --#{$dropdown}__toggle--m-split-button--child--PaddingBlockEnd: var(--#{$pf-global}--spacer--form-element);
77
- --#{$dropdown}__toggle--m-split-button--child--PaddingInlineStart: var(--#{$pf-global}--spacer--xs);
78
- --#{$dropdown}__toggle--m-split-button--child--BackgroundColor: transparent;
79
- --#{$dropdown}__toggle--m-split-button--first-child--PaddingInlineStart: var(--#{$pf-global}--spacer--sm);
80
- --#{$dropdown}__toggle--m-split-button--last-child--PaddingInlineEnd: var(--#{$pf-global}--spacer--sm);
81
- --#{$dropdown}__toggle--m-split-button--m-action--child--PaddingInlineStart: var(--#{$pf-global}--spacer--sm);
82
- --#{$dropdown}__toggle--m-split-button--m-action--child--PaddingInlineEnd: var(--#{$pf-global}--spacer--sm);
83
- --#{$dropdown}__toggle--m-split-button--m-action__toggle-button--MarginInlineEnd: calc(-1 * var(--#{$pf-global}--BorderWidth--sm));
84
- --#{$dropdown}__toggle--m-split-button__toggle-text--MarginInlineStart: var(--#{$pf-global}--spacer--sm);
85
- --#{$dropdown}__toggle--m-split-button--child--BorderRadius: var(--#{$pf-global}--BorderRadius--sm);
86
-
87
- // Split button
88
- --#{$dropdown}__toggle--m-split-button--m-primary--child--BorderRadius: var(--#{$dropdown}__toggle--m-split-button--child--BorderRadius);
89
- --#{$dropdown}__toggle--m-split-button--m-primary--child--BackgroundColor: var(--#{$pf-global}--primary-color--100);
90
- --#{$dropdown}__toggle--m-split-button--m-primary--child--hover--BackgroundColor: var(--#{$pf-global}--primary-color--200);
91
- --#{$dropdown}__toggle--m-split-button--m-primary--child--focus--BackgroundColor: var(--#{$pf-global}--primary-color--200);
92
- --#{$dropdown}__toggle--m-split-button--m-primary--child--active--BackgroundColor: var(--#{$pf-global}--primary-color--200);
93
- --#{$dropdown}__toggle--m-split-button--m-primary--child--m-expanded--BackgroundColor: var(--#{$pf-global}--primary-color--200);
94
-
95
- // Split button, action, primary
96
- --#{$dropdown}__toggle--m-split-button--m-primary--m-action--child--BorderInlineStartColor: var(--#{$pf-global}--primary-color--200);
97
- --#{$dropdown}__toggle--m-split-button--m-primary--m-action--child--BorderInlineStartWidth: var(--#{$pf-global}--BorderWidth--sm);
98
-
99
- // Split button
100
- --#{$dropdown}--m-expanded__toggle--m-secondary--m-split-button--child--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
101
- --#{$dropdown}__toggle--m-secondary--m-split-button--Color: var(--#{$pf-global}--primary-color--100);
102
- --#{$dropdown}__toggle--m-secondary--m-split-button--hover--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
103
- --#{$dropdown}__toggle--m-secondary--m-split-button--focus--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
104
- --#{$dropdown}__toggle--m-secondary--m-split-button--active--before--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
105
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth--base: var(--#{$pf-global}--BorderWidth--sm);
106
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderColor--base: var(--#{$pf-global}--primary-color--100);
107
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderColor: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderColor--base);
108
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth--base);
109
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--hover--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
110
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--focus--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
111
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--active--BorderWidth: var(--#{$pf-global}--BorderWidth--md);
112
-
113
- // Toggle Arrow
114
- --#{$dropdown}__toggle-icon--LineHeight: var(--#{$pf-global}--LineHeight--md);
115
- --#{$dropdown}__toggle-icon--PaddingInlineEnd: var(--#{$pf-global}--spacer--sm);
116
- --#{$dropdown}__toggle-icon--PaddingInlineStart: var(--#{$pf-global}--spacer--sm);
117
- --#{$dropdown}__toggle-icon--MarginInlineStart: 0;
118
- --#{$dropdown}--m-top--m-expanded__toggle-icon--Rotate: 180deg;
119
- --#{$dropdown}--m-plain__toggle-icon--Color: var(--#{$pf-global}--Color--200);
120
- --#{$dropdown}--m-plain--hover__toggle-icon--Color: var(--#{$pf-global}--Color--100);
121
-
122
- // Menu
123
- --#{$dropdown}__menu--BackgroundColor: var(--#{$pf-global}--BackgroundColor--light-100);
124
- --#{$dropdown}__menu--BoxShadow: var(--#{$pf-global}--BoxShadow--md);
125
- --#{$dropdown}__menu--PaddingBlockStart: var(--#{$pf-global}--spacer--sm);
126
- --#{$dropdown}__menu--PaddingBlockEnd: var(--#{$pf-global}--spacer--sm);
127
- --#{$dropdown}__menu--InsetBlockStart: calc(100% + var(--#{$pf-global}--spacer--xs)); // The top of the menu must be pushed down to create space between the toggle and menu
128
- --#{$dropdown}__menu--ZIndex: var(--pf-t--global--z-index--sm);
129
- --#{$dropdown}--m-top__menu--InsetBlockStart: 0;
130
- --#{$dropdown}--m-top__menu--TranslateY: calc(-100% - var(--#{$pf-global}--spacer--xs)); // The "dropup" menu must be transformed up and this calculates how much to create space between the toggle and menu
131
-
132
- // Menu Item
133
- --#{$dropdown}__menu-item--BackgroundColor: transparent;
134
- --#{$dropdown}__menu-item--PaddingBlockStart: var(--#{$pf-global}--spacer--sm);
135
- --#{$dropdown}__menu-item--PaddingInlineEnd: var(--#{$pf-global}--spacer--md);
136
- --#{$dropdown}__menu-item--PaddingBlockEnd: var(--#{$pf-global}--spacer--sm);
137
- --#{$dropdown}__menu-item--PaddingInlineStart: var(--#{$pf-global}--spacer--md);
138
- --#{$dropdown}__menu-item--FontSize: var(--#{$pf-global}--FontSize--md);
139
- --#{$dropdown}__menu-item--FontWeight: var(--#{$pf-global}--FontWeight--normal);
140
- --#{$dropdown}__menu-item--LineHeight: var(--#{$pf-global}--LineHeight--md);
141
- --#{$dropdown}__menu-item--Color: var(--#{$pf-global}--Color--dark-100);
142
- --#{$dropdown}__menu-item--hover--Color: var(--#{$pf-global}--Color--dark-100);
143
- --#{$dropdown}__menu-item--disabled--Color: var(--#{$pf-global}--Color--dark-200);
144
- --#{$dropdown}__menu-item--hover--BackgroundColor: var(--#{$pf-global}--BackgroundColor--light-300);
145
- --#{$dropdown}__menu-item--disabled--BackgroundColor: transparent;
146
- --#{$dropdown}__menu-item--m-text--Color: var(--#{$pf-global}--Color--dark-200);
147
-
148
- // Menu item icon
149
- --#{$dropdown}__menu-item-icon--MarginInlineEnd: var(--#{$pf-global}--spacer--sm);
150
- --#{$dropdown}__menu-item-icon--Width: var(--#{$pf-global}--icon--FontSize--lg);
151
- --#{$dropdown}__menu-item-icon--Height: var(--#{$pf-global}--icon--FontSize--lg);
152
-
153
- // Menu item description
154
- --#{$dropdown}__menu-item-description--FontSize: var(--#{$pf-global}--FontSize--xs);
155
- --#{$dropdown}__menu-item-description--Color: var(--#{$pf-global}--Color--dark-200);
156
-
157
- // Groups
158
- --#{$dropdown}__group--group--PaddingBlockStart: var(--#{$pf-global}--spacer--sm);
159
- --#{$dropdown}__group-title--PaddingBlockStart: var(--#{$pf-global}--spacer--sm);
160
- --#{$dropdown}__group-title--PaddingInlineEnd: var(--#{$dropdown}__menu-item--PaddingInlineEnd);
161
- --#{$dropdown}__group-title--PaddingBlockEnd: var(--#{$dropdown}__menu-item--PaddingBlockEnd);
162
- --#{$dropdown}__group-title--PaddingInlineStart: var(--#{$dropdown}__menu-item--PaddingInlineStart);
163
- --#{$dropdown}__group-title--FontSize: var(--#{$pf-global}--FontSize--xs);
164
- --#{$dropdown}__group-title--FontWeight: var(--#{$pf-global}--FontWeight--normal);
165
- --#{$dropdown}__group-title--Color: var(--#{$pf-global}--Color--dark-200);
166
-
167
- // Divider
168
- --#{$dropdown}--c-divider--MarginBlockStart: var(--#{$pf-global}--spacer--sm);
169
- --#{$dropdown}--c-divider--MarginBlockEnd: var(--#{$pf-global}--spacer--sm);
170
-
171
- // badge toggle icon
172
- --#{$dropdown}__toggle--c-badge__toggle-icon--PaddingInlineEnd: 0;
173
- --#{$dropdown}__toggle--c-badge__toggle-icon--PaddingInlineStart: 0;
174
- --#{$dropdown}__toggle--c-badge__toggle-icon--MarginInlineStart: var(--#{$pf-global}--spacer--xs);
175
- --#{$dropdown}__toggle--c-badge__toggle-icon--MarginInlineEnd: 0;
176
-
177
- // menu
178
- --#{$dropdown}--c-menu--InsetBlockStart: calc(100% + var(--#{$pf-global}--spacer--xs)); // The top of the menu must be pushed down to create space between the toggle and menu
179
- --#{$dropdown}--c-menu--ZIndex: var(--pf-t--global--z-index--sm);
180
- --#{$dropdown}--m-top--c-menu--InsetBlockStart: 0;
181
- --#{$dropdown}--m-top--c-menu--TranslateY: calc(-100% - var(--#{$pf-global}--spacer--xs)); // The "dropup" menu must be transformed up and this calculates how much to create space between the toggle and menu
182
-
183
- // Dropdown
184
- --#{$dropdown}--m-full-height__toggle--before--BorderBlockStartWidth: 0;
185
- --#{$dropdown}--m-full-height__toggle--expanded--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--xl);
186
- --#{$dropdown}--m-full-height__toggle--hover--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--xl);
187
- --#{$dropdown}--m-full-height__toggle--active--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--xl);
188
- --#{$dropdown}--m-full-height__toggle--focus--before--BorderBlockEndWidth: var(--#{$pf-global}--BorderWidth--xl);
189
- --#{$dropdown}--m-full-height__toggle--PaddingInlineEnd: var(--#{$pf-global}--spacer--lg);
190
- --#{$dropdown}--m-full-height__toggle--PaddingInlineStart: var(--#{$pf-global}--spacer--lg);
191
-
192
- position: relative;
193
- display: inline-flex;
194
- align-items: flex-start;
195
- max-width: 100%;
196
-
197
- .#{$divider} {
198
- margin-block-start: var(--#{$dropdown}--c-divider--MarginBlockStart);
199
- margin-block-end: var(--#{$dropdown}--c-divider--MarginBlockEnd);
200
-
201
- // Support divider as last item in group to separate groups
202
- &:last-child {
203
- --#{$dropdown}--c-divider--MarginBlockEnd: 0;
204
- }
205
- }
206
-
207
- > .#{$menu} {
208
- position: absolute;
209
- inset-block-start: var(--#{$dropdown}--c-menu--InsetBlockStart);
210
- z-index: var(--#{$dropdown}--c-menu--ZIndex);
211
- }
212
-
213
- &.pf-m-full-height {
214
- --#{$dropdown}__toggle--PaddingInlineEnd: var(--#{$dropdown}--m-full-height__toggle--PaddingInlineEnd);
215
- --#{$dropdown}__toggle--PaddingInlineStart: var(--#{$dropdown}--m-full-height__toggle--PaddingInlineStart);
216
- --#{$dropdown}__toggle--active--before--BorderBlockEndWidth: var(--#{$dropdown}--m-full-height__toggle--active--before--BorderBlockEndWidth);
217
- --#{$dropdown}__toggle--focus--before--BorderBlockEndWidth: var(--#{$dropdown}--m-full-height__toggle--focus--before--BorderBlockEndWidth);
218
- --#{$dropdown}--m-expanded__toggle--before--BorderBlockEndWidth: var(--#{$dropdown}--m-full-height__toggle--expanded--before--BorderBlockEndWidth);
219
-
220
- display: inline-flex;
221
- align-items: center;
222
- height: 100%;
223
-
224
- .#{$dropdown}__toggle {
225
- align-self: stretch;
226
-
227
- &::before {
228
- border-block-start-width: var(--#{$dropdown}--m-full-height__toggle--before--BorderBlockStartWidth);
229
- }
230
- }
231
-
232
- &:hover {
233
- .#{$dropdown}__toggle::before {
234
- border-block-end-width: var(--#{$dropdown}--m-full-height__toggle--hover--before--BorderBlockEndWidth);
235
- }
236
- }
237
- }
238
-
239
- &.pf-m-expanded {
240
- --#{$dropdown}__toggle--m-split-button--m-primary--child--BackgroundColor: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--m-expanded--BackgroundColor); // update to --#{$dropdown}__toggle--m-primary--m-split-button--child--before--BorderWidth at breaking change
241
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth: var(--#{$dropdown}--m-expanded__toggle--m-secondary--m-split-button--child--before--BorderWidth);
242
- }
243
- }
244
-
245
- .#{$dropdown}__toggle {
246
- position: relative;
247
- display: inline-flex;
248
- column-gap: var(--#{$dropdown}__toggle--ColumnGap);
249
- align-items: center;
250
- min-width: var(--#{$dropdown}__toggle--MinWidth);
251
- max-width: 100%;
252
- padding-block-start: var(--#{$dropdown}__toggle--PaddingBlockStart);
253
- padding-block-end: var(--#{$dropdown}__toggle--PaddingBlockEnd);
254
- padding-inline-start: var(--#{$dropdown}__toggle--PaddingInlineStart);
255
- padding-inline-end: var(--#{$dropdown}__toggle--PaddingInlineEnd);
256
- font-size: var(--#{$dropdown}__toggle--FontSize);
257
- font-weight: var(--#{$dropdown}__toggle--FontWeight);
258
- line-height: var(--#{$dropdown}__toggle--LineHeight);
259
- color: var(--#{$dropdown}__toggle--Color);
260
- background-color: var(--#{$dropdown}__toggle--BackgroundColor);
261
- border: none;
262
-
263
- &::before,
264
- &.pf-m-action .#{$dropdown}__toggle-button::before {
265
- position: absolute;
266
- inset-block-start: 0;
267
- inset-block-end: 0;
268
- inset-inline-start: 0;
269
- inset-inline-end: 0;
270
- content: "";
271
- border: var(--#{$dropdown}__toggle--before--BorderWidth) solid;
272
- border-block-start-color: var(--#{$dropdown}__toggle--before--BorderBlockStartColor);
273
- border-block-end-color: var(--#{$dropdown}__toggle--before--BorderBlockEndColor);
274
- border-inline-start-color: var(--#{$dropdown}__toggle--before--BorderInlineStartColor);
275
- border-inline-end-color: var(--#{$dropdown}__toggle--before--BorderInlineEndColor);
276
- }
277
-
278
- &.pf-m-disabled,
279
- &:disabled {
280
- --#{$dropdown}__toggle--m-primary--Color: var(--#{$dropdown}__toggle--m-primary--disabled--Color);
281
- --#{$dropdown}__toggle--before--BorderBlockEndColor: transparent;
282
-
283
- pointer-events: none;
284
-
285
- &:not(.pf-m-plain),
286
- &.pf-m-plain.pf-m-text {
287
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}__toggle--disabled--BackgroundColor);
288
-
289
- &::before {
290
- border: 0;
291
- }
292
- }
293
- }
294
-
295
- &.pf-m-split-button {
296
- --#{$dropdown}__toggle--ColumnGap: 0;
297
-
298
- padding: 0;
299
-
300
- &:not(.pf-m-disabled) {
301
- background-color: var(--#{$dropdown}__toggle--m-split-button--child--BackgroundColor);
302
- }
303
-
304
- > * {
305
- position: relative;
306
- padding-block-start: var(--#{$dropdown}__toggle--m-split-button--child--PaddingBlockStart);
307
- padding-block-end: var(--#{$dropdown}__toggle--m-split-button--child--PaddingBlockEnd);
308
- padding-inline-start: var(--#{$dropdown}__toggle--m-split-button--child--PaddingInlineStart);
309
- padding-inline-end: var(--#{$dropdown}__toggle--m-split-button--child--PaddingInlineEnd);
310
-
311
- &:first-child {
312
- --#{$dropdown}__toggle--m-split-button--child--PaddingInlineStart: var(--#{$dropdown}__toggle--m-split-button--first-child--PaddingInlineStart);
313
- }
314
-
315
- &:last-child {
316
- --#{$dropdown}__toggle--m-split-button--child--PaddingInlineEnd: var(--#{$dropdown}__toggle--m-split-button--last-child--PaddingInlineEnd);
317
- }
318
- }
319
-
320
- &.pf-m-action {
321
- --#{$dropdown}__toggle--m-split-button--child--PaddingInlineEnd: var(--#{$dropdown}__toggle--m-split-button--m-action--child--PaddingInlineEnd);
322
- --#{$dropdown}__toggle--m-split-button--child--PaddingInlineStart: var(--#{$dropdown}__toggle--m-split-button--m-action--child--PaddingInlineStart);
323
-
324
- .#{$dropdown}__toggle-button {
325
- margin-inline-end: var(--#{$dropdown}__toggle--m-split-button--m-action__toggle-button--MarginInlineEnd);
326
-
327
- // stylelint-disable max-nesting-depth
328
- &::before {
329
- border-inline-start: 0;
330
- }
331
-
332
- &:last-child {
333
- --#{$dropdown}__toggle--m-split-button--m-action__toggle-button--MarginInlineEnd: 0;
334
- }
335
- // stylelint-enable
336
- }
337
-
338
- &.pf-m-primary {
339
- // stylelint-disable max-nesting-depth, selector-max-class
340
- > :not(:first-child) {
341
- border-inline-start: var(--#{$dropdown}__toggle--m-split-button--m-primary--m-action--child--BorderInlineStartWidth) solid var(--#{$dropdown}__toggle--m-split-button--m-primary--m-action--child--BorderInlineStartColor);
342
- }
343
-
344
- &.pf-m-disabled,
345
- &[disabled] {
346
- --#{$dropdown}__toggle--m-split-button--m-primary--m-action--child--BorderInlineStartWidth: 0;
347
- }
348
- // stylelint-enable
349
- }
350
- }
351
-
352
- .#{$dropdown}__toggle-check {
353
- display: flex;
354
- align-items: center;
355
- overflow: hidden;
356
- cursor: pointer;
357
-
358
- &.pf-m-in-progress {
359
- --#{$dropdown}__toggle--m-split-button__toggle-check__input--Visibility: hidden;
360
- --#{$dropdown}__toggle-progress--Visibility: visible;
361
- }
362
-
363
- > input,
364
- .#{$check} {
365
- --#{$check}__input--TranslateY: none;
366
-
367
- align-self: revert;
368
- width: auto;
369
- cursor: pointer;
370
- visibility: var(--#{$dropdown}__toggle--m-split-button__toggle-check__input--Visibility, unset);
371
- }
372
- }
373
-
374
- .#{$dropdown}__toggle-button {
375
- color: var(--#{$dropdown}__toggle-button--Color);
376
- background-color: var(--#{$dropdown}__toggle-button--BackgroundColor);
377
- border: 0;
378
- }
379
-
380
- .#{$dropdown}__toggle-text {
381
- margin-inline-start: var(--#{$dropdown}__toggle--m-split-button__toggle-text--MarginInlineStart);
382
- }
383
- }
384
-
385
- &.pf-m-primary.pf-m-split-button:not(.pf-m-disabled) {
386
- --#{$dropdown}__toggle--before--BorderWidth: 0;
387
- --#{$dropdown}--m-expanded__toggle--before--BorderBlockEndWidth: 0;
388
-
389
- > * {
390
- background-color: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--BackgroundColor);
391
- border: 0;
392
-
393
- &:hover {
394
- --#{$dropdown}__toggle--m-split-button--m-primary--child--BackgroundColor: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--hover--BackgroundColor);
395
- }
396
-
397
- &:focus {
398
- --#{$dropdown}__toggle--m-split-button--m-primary--child--BackgroundColor: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--focus--BackgroundColor);
399
- }
400
-
401
- &:active,
402
- &.pf-m-active {
403
- --#{$dropdown}__toggle--m-split-button--m-primary--child--BackgroundColor: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--focus--BackgroundColor);
404
- }
405
- }
406
-
407
- > :first-child {
408
- border-start-start-radius: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--BorderRadius);
409
- border-end-start-radius: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--BorderRadius);
410
- }
411
-
412
- > :last-child {
413
- border-start-end-radius: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--BorderRadius);
414
- border-end-end-radius: var(--#{$dropdown}__toggle--m-split-button--m-primary--child--BorderRadius);
415
- }
416
- }
417
-
418
- // stylelint-disable selector-not-notation
419
- // update to single :not() in breaking change
420
- &:not(.pf-m-action):not(.pf-m-secondary):hover,
421
- &.pf-m-action .#{$dropdown}__toggle-button:hover {
422
- &::before {
423
- --#{$dropdown}__toggle--before--BorderBlockEndColor: var(--#{$dropdown}__toggle--hover--before--BorderBlockEndColor);
424
- }
425
- }
426
-
427
- &:not(.pf-m-action):not(.pf-m-secondary):focus,
428
- &.pf-m-action .#{$dropdown}__toggle-button:focus {
429
- &::before {
430
- --#{$dropdown}__toggle--before--BorderBlockEndColor: var(--#{$dropdown}__toggle--focus--before--BorderBlockEndColor);
431
-
432
- border-block-end-width: var(--#{$dropdown}__toggle--focus--before--BorderBlockEndWidth);
433
- }
434
- }
435
-
436
- &:not(.pf-m-action):not(.pf-m-secondary):active,
437
- &:not(.pf-m-action):not(.pf-m-secondary).pf-m-active,
438
- &.pf-m-action .#{$dropdown}__toggle-button:active {
439
- &::before {
440
- --#{$dropdown}__toggle--before--BorderBlockEndColor: var(--#{$dropdown}__toggle--active--before--BorderBlockEndColor);
441
-
442
- border-block-end-width: var(--#{$dropdown}__toggle--active--before--BorderBlockEndWidth);
443
- }
444
- }
445
-
446
- .pf-m-expanded > &:not(.pf-m-action):not(.pf-m-secondary),
447
- .pf-m-expanded > &.pf-m-action .#{$dropdown}__toggle-button {
448
- &::before {
449
- --#{$dropdown}__toggle--before--BorderBlockEndColor: var(--#{$dropdown}--m-expanded__toggle--before--BorderBlockEndColor);
450
-
451
- border-block-end-width: var(--#{$dropdown}--m-expanded__toggle--before--BorderBlockEndWidth);
452
- }
453
- }
454
-
455
- &.pf-m-plain {
456
- --#{$dropdown}__toggle-icon--Color: var(--#{$dropdown}--m-plain__toggle-icon--Color);
457
-
458
- &:not(.pf-m-text) {
459
- --#{$dropdown}__toggle--PaddingInlineEnd: var(--#{$dropdown}__toggle--m-plain--PaddingInlineEnd);
460
- --#{$dropdown}__toggle--PaddingInlineStart: var(--#{$dropdown}__toggle--m-plain--PaddingInlineStart);
461
-
462
- display: inline-block;
463
- color: var(--#{$dropdown}__toggle--m-plain--Color);
464
-
465
- // remove at breaking change
466
- > * {
467
- line-height: var(--#{$dropdown}__toggle--m-plain--child--LineHeight);
468
- }
469
- }
470
-
471
- &::before {
472
- border: 0;
473
- }
474
-
475
- &:hover,
476
- &:focus,
477
- &:active,
478
- &.pf-m-active,
479
- .pf-m-expanded > & {
480
- --#{$dropdown}__toggle--m-plain--Color: var(--#{$dropdown}__toggle--m-plain--hover--Color);
481
- --#{$dropdown}--m-plain__toggle-icon--Color: var(--#{$dropdown}--m-plain--hover__toggle-icon--Color);
482
- }
483
-
484
- &.pf-m-disabled,
485
- &:disabled {
486
- --#{$dropdown}__toggle--m-plain--Color: var(--#{$dropdown}__toggle--m-plain--disabled--Color);
487
- }
488
- }
489
-
490
- &.pf-m-primary {
491
- --#{$dropdown}__toggle--Color: var(--#{$dropdown}__toggle--m-primary--Color);
492
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}__toggle--m-primary--BackgroundColor);
493
- --#{$dropdown}__toggle-button--Color: var(--#{$dropdown}__toggle--m-primary--Color);
494
-
495
- border-radius: var(--#{$dropdown}__toggle--m-primary--BorderRadius);
496
-
497
- &::before,
498
- .#{$dropdown}__toggle-button::before {
499
- border: 0;
500
- }
501
-
502
- &:hover {
503
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}__toggle--m-primary--hover--BackgroundColor);
504
- }
505
-
506
- &:focus {
507
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}__toggle--m-primary--focus--BackgroundColor);
508
- }
509
-
510
- &:active,
511
- &.pf-m-active {
512
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}__toggle--m-primary--active--BackgroundColor);
513
- }
514
-
515
- .pf-m-expanded > & {
516
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}--m-expanded__toggle--m-primary--BackgroundColor);
517
- }
518
- }
519
-
520
- &.pf-m-secondary {
521
- border-radius: var(--#{$dropdown}__toggle--m-secondary--BorderRadius);
522
-
523
- &:not(.pf-m-disabled):not([disabled]) {
524
- --#{$dropdown}__toggle--Color: var(--#{$dropdown}__toggle--m-secondary--Color);
525
- --#{$dropdown}__toggle--BackgroundColor: var(--#{$dropdown}__toggle--m-secondary--BackgroundColor);
526
-
527
- &::before {
528
- border: var(--#{$dropdown}__toggle--m-secondary--before--BorderWidth) solid var(--#{$dropdown}__toggle--m-secondary--before--BorderColor);
529
- border-radius: var(--#{$dropdown}__toggle--m-secondary--BorderRadius);
530
- }
531
- }
532
-
533
- &:hover {
534
- --#{$dropdown}__toggle--m-secondary--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--hover--before--BorderWidth);
535
- }
536
-
537
- &:focus {
538
- --#{$dropdown}__toggle--m-secondary--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--focus--before--BorderWidth);
539
- }
540
-
541
- &:active,
542
- &.pf-m-active {
543
- --#{$dropdown}__toggle--m-secondary--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--active--before--BorderWidth);
544
- }
545
-
546
- .pf-m-expanded > & {
547
- --#{$dropdown}__toggle--m-secondary--before--BorderWidth: var(--#{$dropdown}--m-expanded__toggle--m-secondary--before--BorderWidth);
548
- --#{$dropdown}__toggle--m-secondary--before--BorderColor: var(--#{$dropdown}--m-expanded__toggle--m-secondary--before--BorderColor);
549
- }
550
- }
551
-
552
- &.pf-m-secondary.pf-m-split-button:not(.pf-m-disabled) {
553
- --#{$dropdown}__toggle-button--Color: var(--#{$dropdown}__toggle--m-secondary--m-split-button--Color);
554
-
555
- &:hover {
556
- --#{$dropdown}__toggle--m-secondary--hover--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--hover--before--BorderWidth);
557
- }
558
-
559
- &:focus {
560
- --#{$dropdown}__toggle--m-secondary--focus--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--focus--before--BorderWidth);
561
- }
562
-
563
- &:active {
564
- --#{$dropdown}__toggle--m-secondary--active--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--active--before--BorderWidth);
565
- }
566
-
567
- > * {
568
- &::before {
569
- border: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth) solid var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderColor);
570
- }
571
-
572
- &:hover {
573
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--hover--BorderWidth);
574
- }
575
-
576
- &:focus {
577
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--focus--BorderWidth);
578
- }
579
-
580
- &:active {
581
- --#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--active--BorderWidth);
582
- }
583
-
584
- &:first-child::before {
585
- border-start-start-radius: var(--#{$dropdown}__toggle--m-split-button--child--BorderRadius);
586
- border-end-start-radius: var(--#{$dropdown}__toggle--m-split-button--child--BorderRadius);
587
- }
588
-
589
- &:last-child::before {
590
- border-start-end-radius: var(--#{$dropdown}__toggle--m-split-button--child--BorderRadius);
591
- border-end-end-radius: var(--#{$dropdown}__toggle--m-split-button--child--BorderRadius);
592
- }
593
-
594
- &:not(:first-child)::before {
595
- border-inline-start: var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderWidth--base) solid var(--#{$dropdown}__toggle--m-secondary--m-split-button--child--before--BorderColor--base);
596
- }
597
-
598
- &:not(:last-child)::before {
599
- border-inline-end: 0;
600
- }
601
- }
602
-
603
- &.pf-m-action {
604
- &::before {
605
- border: 0;
606
- }
607
- }
608
- }
609
-
610
- > .#{$badge} {
611
- --#{$dropdown}__toggle-icon--PaddingInlineEnd: var(--#{$dropdown}__toggle--c-badge__toggle-icon--PaddingInlineEnd);
612
- --#{$dropdown}__toggle-icon--PaddingInlineStart: var(--#{$dropdown}__toggle--c-badge__toggle-icon--PaddingInlineStart);
613
- --#{$dropdown}__toggle-icon--MarginInlineStart: var(--#{$dropdown}__toggle--c-badge__toggle-icon--MarginInlineStart);
614
- }
615
-
616
- .#{$dropdown}__toggle-text {
617
- @include pf-v6-text-overflow;
618
- }
619
- }
620
-
621
- .#{$dropdown}__toggle-button {
622
- align-self: baseline;
623
- }
624
-
625
- .#{$dropdown}__toggle-text {
626
- flex: 1 1 auto;
627
- text-align: start;
628
- }
629
-
630
- .#{$dropdown}__toggle-icon {
631
- padding-inline-start: var(--#{$dropdown}__toggle-icon--PaddingInlineStart);
632
- padding-inline-end: var(--#{$dropdown}__toggle-icon--PaddingInlineEnd);
633
- margin-inline-start: var(--#{$dropdown}__toggle-icon--MarginInlineStart);
634
- line-height: var(--#{$dropdown}__toggle-icon--LineHeight);
635
- color: var(--#{$dropdown}__toggle-icon--Color, inherit);
636
-
637
- // stylelint-disable-next-line
638
- .#{$dropdown}.pf-m-top.pf-m-expanded & {
639
- transform: rotate(var(--#{$dropdown}--m-top--m-expanded__toggle-icon--Rotate));
640
- }
641
- }
642
-
643
- // Toggle image
644
- .#{$dropdown}__toggle-image {
645
- display: inline-flex;
646
- flex-shrink: 0;
647
- line-height: 1;
648
- }
649
-
650
- // Loading spinner
651
- .#{$dropdown}__toggle-progress {
652
- position: absolute;
653
- inset-inline-start: var(--#{$dropdown}__toggle--m-split-button--child--PaddingInlineStart);
654
- visibility: var(--#{$dropdown}__toggle-progress--Visibility);
655
-
656
- .#{$spinner} {
657
- --#{$spinner}--diameter: var(--#{$dropdown}__toggle-progress--c-spinner--diameter);
658
- }
659
- }
660
-
661
- .#{$dropdown}__menu {
662
- position: absolute;
663
- inset-block-start: var(--#{$dropdown}__menu--InsetBlockStart);
664
- z-index: var(--#{$dropdown}__menu--ZIndex);
665
- padding-block-start: var(--#{$dropdown}__menu--PaddingBlockStart);
666
- padding-block-end: var(--#{$dropdown}__menu--PaddingBlockEnd);
667
- background: var(--#{$dropdown}__menu--BackgroundColor);
668
- background-clip: padding-box;
669
- box-shadow: var(--#{$dropdown}__menu--BoxShadow);
670
-
671
- &.pf-m-static {
672
- --#{$dropdown}--m-top__menu--TranslateY: 0;
673
-
674
- position: static;
675
- inset-block-start: auto;
676
- inset-block-end: auto;
677
- inset-inline-start: auto;
678
- inset-inline-end: auto;
679
- z-index: auto;
680
- min-width: min-content;
681
- }
682
- }
683
-
684
- .#{$dropdown} .#{$menu},
685
- .#{$dropdown}__menu {
686
- min-width: 100%;
687
-
688
- @each $breakpoint, $breakpoint-value in $pf-v6-c-dropdown--breakpoint-map {
689
- $breakpoint-name: if($breakpoint != "base", -on-#{$breakpoint}, "");
690
-
691
- @include pf-v6-apply-breakpoint($breakpoint) {
692
- &.pf-m-align-right#{$breakpoint-name} {
693
- inset-inline-end: 0;
694
- }
695
-
696
- // unset alignment set for .pf-m-align-right
697
- &.pf-m-align-left#{$breakpoint-name} {
698
- inset-inline-end: auto;
699
- }
700
- }
701
- }
702
- }
703
-
704
- .#{$dropdown}.pf-m-top {
705
- .#{$dropdown}__menu {
706
- --#{$dropdown}__menu--InsetBlockStart: var(--#{$dropdown}--m-top__menu--InsetBlockStart);
707
-
708
- transform: translateY(var(--#{$dropdown}--m-top__menu--TranslateY));
709
- }
710
-
711
- > .#{$menu} {
712
- --#{$dropdown}--c-menu--InsetBlockStart: var(--#{$dropdown}--m-top--c-menu--InsetBlockStart);
713
-
714
- transform: translateY(var(--#{$dropdown}--m-top--c-menu--TranslateY));
715
- }
716
- }
717
-
718
- .#{$dropdown}__menu-item {
719
- display: block;
720
- width: 100%;
721
- padding-block-start: var(--#{$dropdown}__menu-item--PaddingBlockStart);
722
- padding-block-end: var(--#{$dropdown}__menu-item--PaddingBlockEnd);
723
- padding-inline-start: var(--#{$dropdown}__menu-item--PaddingInlineStart);
724
- padding-inline-end: var(--#{$dropdown}__menu-item--PaddingInlineEnd);
725
- font-size: var(--#{$dropdown}__menu-item--FontSize);
726
- font-weight: var(--#{$dropdown}__menu-item--FontWeight);
727
- line-height: var(--#{$dropdown}__menu-item--LineHeight);
728
- color: var(--#{$dropdown}__menu-item--Color);
729
- text-align: start;
730
- white-space: nowrap;
731
- background-color: var(--#{$dropdown}__menu-item--BackgroundColor);
732
- border: none;
733
-
734
- &:hover,
735
- &:focus {
736
- --#{$dropdown}__menu-item--Color: var(--#{$dropdown}__menu-item--hover--Color);
737
- --#{$dropdown}__menu-item--BackgroundColor: var(--#{$dropdown}__menu-item--hover--BackgroundColor);
738
-
739
- text-decoration: none;
740
- }
741
-
742
- &:disabled,
743
- &.pf-m-disabled,
744
- &.pf-m-aria-disabled {
745
- --#{$dropdown}__menu-item--Color: var(--#{$dropdown}__menu-item--disabled--Color);
746
- --#{$dropdown}__menu-item--BackgroundColor: var(--#{$dropdown}__menu-item--disabled--BackgroundColor);
747
- }
748
-
749
- &:disabled,
750
- &.pf-m-disabled {
751
- pointer-events: none;
752
- }
753
-
754
- &.pf-m-aria-disabled {
755
- cursor: default;
756
- }
757
-
758
- &.pf-m-icon {
759
- display: flex;
760
- align-items: center;
761
-
762
- &.pf-m-description {
763
- flex-direction: column;
764
- align-items: flex-start;
765
- }
766
-
767
- .#{$dropdown}__menu-item-main {
768
- display: flex;
769
- align-items: center;
770
- }
771
- }
772
-
773
- &.pf-m-text {
774
- --#{$dropdown}__menu-item--Color: var(--#{$dropdown}__menu-item--m-text--Color);
775
-
776
- &:hover,
777
- &:focus {
778
- --#{$dropdown}__menu-item--BackgroundColor: transparent;
779
- }
780
- }
781
- }
782
-
783
- .#{$dropdown}__menu-item-icon {
784
- display: inline-flex;
785
- align-items: center;
786
- justify-content: center;
787
- width: var(--#{$dropdown}__menu-item-icon--Width);
788
- height: var(--#{$dropdown}__menu-item-icon--Height);
789
- margin-inline-end: var(--#{$dropdown}__menu-item-icon--MarginInlineEnd);
790
-
791
- > * {
792
- max-width: 100%;
793
- max-height: 100%;
794
- }
795
- }
796
-
797
- .#{$dropdown}__menu-item-description {
798
- font-size: var(--#{$dropdown}__menu-item-description--FontSize);
799
- color: var(--#{$dropdown}__menu-item-description--Color);
800
- }
801
-
802
- .#{$dropdown}__group + .#{$dropdown}__group {
803
- padding-block-start: var(--#{$dropdown}__group--group--PaddingBlockStart);
804
- }
805
-
806
- .#{$dropdown}__group-title {
807
- padding-block-start: var(--#{$dropdown}__group-title--PaddingBlockStart);
808
- padding-block-end: var(--#{$dropdown}__group-title--PaddingBlockEnd);
809
- padding-inline-start: var(--#{$dropdown}__group-title--PaddingInlineStart);
810
- padding-inline-end: var(--#{$dropdown}__group-title--PaddingInlineEnd);
811
- font-size: var(--#{$dropdown}__group-title--FontSize);
812
- font-weight: var(--#{$dropdown}__group-title--FontWeight);
813
- color: var(--#{$dropdown}__group-title--Color);
814
- }