@lucca-front/scss 22.0.0-rc.5 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lucca-front.min.css +1 -1
- package/package.json +3 -3
- package/src/commons/utils/highlight-prisme.scss +2 -0
- package/src/commons/utils/index.scss +1 -9
- package/src/commons/vars.scss +3 -2
- package/src/components/appLayout/vars.scss +1 -1
- package/src/components/approbationInbox/component.scss +457 -0
- package/src/components/approbationInbox/exports.scss +4 -0
- package/src/components/approbationInbox/index.scss +119 -0
- package/src/components/approbationInbox/mods.scss +78 -0
- package/src/components/approbationInbox/states.scss +20 -0
- package/src/components/approbationInbox/vars.scss +29 -0
- package/src/components/button/states.scss +6 -2
- package/src/components/calloutPopover/component.scss +1 -1
- package/src/components/color/component.scss +5 -4
- package/src/components/color/index.scss +3 -1
- package/src/components/color/mods.scss +1 -1
- package/src/components/comment/component.scss +10 -7
- package/src/components/comment/index.scss +4 -0
- package/src/components/comment/mods.scss +4 -0
- package/src/components/comment/vars.scss +1 -0
- package/src/components/container/mods.scss +1 -1
- package/src/components/dataTable/mods.scss +5 -0
- package/src/components/dateRangeField/mods.scss +1 -1
- package/src/components/dialog/component.scss +10 -1
- package/src/components/dialog/index.scss +18 -3
- package/src/components/dialog/mods.scss +28 -2
- package/src/components/dialog/vars.scss +5 -2
- package/src/components/divider/component.scss +1 -1
- package/src/components/divider/vars.scss +1 -0
- package/src/components/dropdown/component.scss +2 -2
- package/src/components/dropdown/states.scss +0 -1
- package/src/components/dropdown/vars.scss +1 -2
- package/src/components/emptyState/vars.scss +1 -1
- package/src/components/errorPage/component.scss +6 -6
- package/src/components/errorPage/index.scss +2 -2
- package/src/components/errorPage/mods.scss +1 -1
- package/src/components/fancyBox/component.scss +3 -3
- package/src/components/field/vars.scss +1 -1
- package/src/components/filterBar/component.scss +5 -1
- package/src/components/filterPill/component.scss +25 -8
- package/src/components/filterPill/index.scss +8 -0
- package/src/components/filterPill/states.scss +4 -1
- package/src/components/filterPill/vars.scss +4 -0
- package/src/components/footer/component.scss +5 -0
- package/src/components/form/vars.scss +1 -1
- package/src/components/grid/component.scss +1 -0
- package/src/components/highlightData/component.scss +1 -1
- package/src/components/highlightSection/component.scss +48 -0
- package/src/components/highlightSection/exports.scss +4 -0
- package/src/components/highlightSection/index.scss +23 -0
- package/src/components/highlightSection/mods.scss +14 -0
- package/src/components/highlightSection/states.scss +0 -0
- package/src/components/highlightSection/vars.scss +10 -0
- package/src/components/horizontalNavigation/component.scss +2 -1
- package/src/components/horizontalNavigation/mods.scss +1 -0
- package/src/components/horizontalNavigation/vars.scss +1 -0
- package/src/components/index.scss +2 -0
- package/src/components/indexTable/mods.scss +5 -0
- package/src/components/layout/component.scss +3 -3
- package/src/components/layout/states.scss +1 -1
- package/src/components/link/component.scss +1 -1
- package/src/components/listboxOption/component.scss +13 -2
- package/src/components/listboxOption/index.scss +46 -17
- package/src/components/listboxOption/mods.scss +0 -1
- package/src/components/listboxOption/states.scss +8 -7
- package/src/components/listboxOption/vars.scss +1 -1
- package/src/components/loading/mods.scss +2 -0
- package/src/components/main/states.scss +1 -1
- package/src/components/mainLayout/component.scss +50 -2
- package/src/components/mainLayout/index.scss +14 -2
- package/src/components/mainLayout/mods.scss +9 -0
- package/src/components/mainLayout/vars.scss +12 -0
- package/src/components/multiSelect/mods.scss +2 -2
- package/src/components/multiSelect/states.scss +1 -1
- package/src/components/navside/states.scss +2 -2
- package/src/components/popover/component.scss +2 -2
- package/src/components/progress/component.scss +1 -1
- package/src/components/readMore/component.scss +2 -0
- package/src/components/readMore/index.scss +4 -0
- package/src/components/readMore/mods.scss +4 -0
- package/src/components/readMore/vars.scss +1 -0
- package/src/components/resourceCard/component.scss +11 -1
- package/src/components/richText/vars.scss +1 -1
- package/src/components/segmentedControl/component.scss +12 -0
- package/src/components/simpleSelect/mods.scss +1 -1
- package/src/components/switchField/component.scss +1 -1
- package/src/components/textField/component.scss +21 -7
- package/src/components/textField/mods.scss +15 -0
- package/src/components/textField/vars.scss +3 -1
- package/src/components/toast/vars.scss +1 -1
- package/src/components/tooltip/component.scss +1 -1
- package/src/components/userPopover/component.scss +1 -1
|
@@ -48,10 +48,15 @@
|
|
|
48
48
|
.filterPill_popover-content-option {
|
|
49
49
|
padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100);
|
|
50
50
|
border-radius: var(--pr-t-border-radius-default);
|
|
51
|
+
background-color: var(--components-filterPill-option-backgroundColor);
|
|
51
52
|
position: relative;
|
|
53
|
+
display: flex;
|
|
54
|
+
gap: var(--pr-t-spacings-100);
|
|
55
|
+
justify-content: space-between;
|
|
52
56
|
|
|
53
57
|
.formLabel {
|
|
54
58
|
position: static;
|
|
59
|
+
cursor: pointer;
|
|
55
60
|
|
|
56
61
|
&::before {
|
|
57
62
|
content: '';
|
|
@@ -60,15 +65,31 @@
|
|
|
60
65
|
}
|
|
61
66
|
}
|
|
62
67
|
|
|
68
|
+
.filterPill_popover-content-option-input {
|
|
69
|
+
@include a11y.mask;
|
|
70
|
+
}
|
|
71
|
+
|
|
63
72
|
&:hover {
|
|
64
|
-
|
|
73
|
+
--components-filterPill-option-backgroundColor: var(--palettes-neutral-50);
|
|
65
74
|
}
|
|
66
75
|
|
|
67
76
|
&:has(:checked) {
|
|
68
|
-
|
|
77
|
+
--components-filterPill-option-backgroundColor: var(--palettes-product-50);
|
|
78
|
+
|
|
79
|
+
.filterPill_popover-content-option-actions {
|
|
80
|
+
&:hover {
|
|
81
|
+
background-color: var(--palettes-product-200);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
69
84
|
|
|
70
85
|
&:hover {
|
|
71
|
-
|
|
86
|
+
--components-filterPill-option-backgroundColor: var(--palettes-product-100);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.filterPill_popover-content-option-actions {
|
|
91
|
+
&:hover {
|
|
92
|
+
background-color: var(--palettes-neutral-100);
|
|
72
93
|
}
|
|
73
94
|
}
|
|
74
95
|
}
|
|
@@ -104,22 +125,18 @@
|
|
|
104
125
|
|
|
105
126
|
display: flex;
|
|
106
127
|
margin-block-start: -1px;
|
|
107
|
-
margin-inline-start: var(--pr-t-spacings-50);
|
|
108
128
|
inline-size: calc(var(--pr-t-spacings-50) + var(--pr-t-spacings-200));
|
|
109
129
|
flex-shrink: 0;
|
|
110
130
|
z-index: 1;
|
|
111
131
|
color: var(--components-filterPill-toggle-iconColor);
|
|
112
132
|
cursor: var(--components-filterPill-label-cursor);
|
|
133
|
+
margin-inline-start: var(--components-filterPill-toggle-marginInlineStart);
|
|
113
134
|
|
|
114
135
|
.icon-arrowChevronBottom {
|
|
115
136
|
transition-property: transform;
|
|
116
137
|
transition-duration: var(--commons-animations-durations-fast);
|
|
117
138
|
transform: rotate(var(--components-filterPill-toggle-rotation));
|
|
118
139
|
}
|
|
119
|
-
|
|
120
|
-
.filterPill-value + & {
|
|
121
|
-
margin-inline-start: var(--components-filterPill-toggle-marginInlineStart);
|
|
122
|
-
}
|
|
123
140
|
}
|
|
124
141
|
|
|
125
142
|
.filterPill-clear.clear {
|
|
@@ -38,6 +38,10 @@
|
|
|
38
38
|
&:active {
|
|
39
39
|
@include filledActive;
|
|
40
40
|
}
|
|
41
|
+
|
|
42
|
+
&:has(~ .filterPill_clear) {
|
|
43
|
+
@include filledClearable;
|
|
44
|
+
}
|
|
41
45
|
}
|
|
42
46
|
|
|
43
47
|
&.mod-checkbox {
|
|
@@ -82,6 +86,10 @@
|
|
|
82
86
|
}
|
|
83
87
|
|
|
84
88
|
.filterPillWrapper {
|
|
89
|
+
@layer components {
|
|
90
|
+
@include varsWrapper;
|
|
91
|
+
}
|
|
92
|
+
|
|
85
93
|
@layer mods {
|
|
86
94
|
&.is-hidden {
|
|
87
95
|
@include hidden;
|
|
@@ -67,7 +67,6 @@
|
|
|
67
67
|
--components-filterPill-backgroundColor: var(--palettes-product-50);
|
|
68
68
|
--components-filterPill-color: var(--palettes-product-800);
|
|
69
69
|
--components-filterPill-toggle-iconColor: var(--palettes-product-700);
|
|
70
|
-
--components-filterPill-toggle-marginInlineStart: calc(var(--pr-t-spacings-300) + var(--pr-t-spacings-50));
|
|
71
70
|
}
|
|
72
71
|
|
|
73
72
|
@mixin notFilled {
|
|
@@ -109,3 +108,7 @@
|
|
|
109
108
|
@mixin hidden {
|
|
110
109
|
--components-filterPillWrapper-display: none;
|
|
111
110
|
}
|
|
111
|
+
|
|
112
|
+
@mixin filledClearable {
|
|
113
|
+
--components-filterPill-toggle-marginInlineStart: calc(var(--pr-t-spacings-300) + var(--pr-t-spacings-50));
|
|
114
|
+
}
|
|
@@ -18,5 +18,9 @@
|
|
|
18
18
|
--components-filterPill-arrowColor: var(--palettes-product-700);
|
|
19
19
|
--components-filterPill-label-maxInlineSize: none;
|
|
20
20
|
--components-filterPill-toggle-marginInlineStart: var(--pr-t-spacings-50);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@mixin varsWrapper {
|
|
21
24
|
--components-filterPillWrapper-display: block;
|
|
25
|
+
--components-filterPill-option-backgroundColor: transparent;
|
|
22
26
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
@use '@lucca-front/scss/src/commons/utils/namespace';
|
|
2
|
+
@use '@lucca-front/scss/src/commons/utils/media';
|
|
2
3
|
|
|
3
4
|
@mixin component($atRoot: namespace.$defaultAtRoot) {
|
|
4
5
|
background-color: var(--components-footer-backgroundColor);
|
|
@@ -18,6 +19,10 @@
|
|
|
18
19
|
@at-root ($atRoot) {
|
|
19
20
|
.footer-content {
|
|
20
21
|
flex-grow: 1;
|
|
22
|
+
|
|
23
|
+
&:empty {
|
|
24
|
+
display: none;
|
|
25
|
+
}
|
|
21
26
|
}
|
|
22
27
|
|
|
23
28
|
.footer-actions {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
--components-field-framed-label-top-offset: var(--pr-t-spacings-100);
|
|
12
12
|
--components-field-framed-textarea-height: 8.5rem;
|
|
13
13
|
--components-field-framed-textarea-min-height: 5.5rem;
|
|
14
|
-
--components-field-framed-textarea-max-height:
|
|
14
|
+
--components-field-framed-textarea-max-height: 80vb;
|
|
15
15
|
--components-field-framed-title-font-size: 1.125rem;
|
|
16
16
|
--components-field-framed-title-line-height: var(--pr-t-font-body-M-lineHeight);
|
|
17
17
|
--components-field-framed-suffix-padding-right: var(--pr-t-spacings-600);
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
grid-column-end: span var(--grid-colspan, var(--grid-column-end));
|
|
30
30
|
grid-row-end: span var(--grid-rowspan, var(--grid-row-end));
|
|
31
31
|
min-inline-size: 0;
|
|
32
|
+
text-align: inherit; // required for Chrome, which interprets the deprecated `align` attribute
|
|
32
33
|
|
|
33
34
|
@each $breakpoint, $value in config.$breakpoints {
|
|
34
35
|
@include media.min($breakpoint) {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
@use '@lucca-front/scss/src/commons/utils/namespace';
|
|
2
|
+
|
|
3
|
+
@mixin component($atRoot: namespace.$defaultAtRoot) {
|
|
4
|
+
background-color: var(--components-highlightSection-background);
|
|
5
|
+
border-radius: var(--components-highlightSection-borderRadius);
|
|
6
|
+
display: block;
|
|
7
|
+
overflow: hidden;
|
|
8
|
+
padding: var(--components-highlightSection-padding);
|
|
9
|
+
position: relative;
|
|
10
|
+
|
|
11
|
+
@at-root ($atRoot) {
|
|
12
|
+
.highlightSection-content {
|
|
13
|
+
align-items: flex-start;
|
|
14
|
+
column-gap: var(--components-highlightSection-gap);
|
|
15
|
+
display: flex;
|
|
16
|
+
position: relative;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.highlightSection-content-slot {
|
|
20
|
+
flex-grow: 1;
|
|
21
|
+
min-inline-size: 0;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.highlightSection-content-illustration {
|
|
25
|
+
block-size: var(--components-highlightSection-illustration-blockSize);
|
|
26
|
+
inline-size: var(--components-highlightSection-illustration-inlineSize);
|
|
27
|
+
flex-shrink: 0;
|
|
28
|
+
display: var(--components-highlightSection-content-illustration-display);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.highlightSection-bubbleStart,
|
|
32
|
+
.highlightSection-bubbleEnd {
|
|
33
|
+
inset-block-end: 0;
|
|
34
|
+
position: absolute;
|
|
35
|
+
pointer-events: none;
|
|
36
|
+
display: var(--components-highlightSection-bubbleStartBubbleEnd-display);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.highlightSection-bubbleStart {
|
|
40
|
+
inset-inline-start: 0;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.highlightSection-bubbleEnd {
|
|
44
|
+
inset-inline-end: 0;
|
|
45
|
+
transform: scaleX(-1);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
@use 'exports' as *;
|
|
2
|
+
@use '@lucca-front/scss/src/commons/utils/media';
|
|
3
|
+
|
|
4
|
+
.highlightSection {
|
|
5
|
+
@layer components {
|
|
6
|
+
@include vars;
|
|
7
|
+
@include component;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
@layer mods {
|
|
11
|
+
&.mod-light {
|
|
12
|
+
@include light;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&.mod-dark {
|
|
16
|
+
@include dark;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@include media.max('XXS') {
|
|
20
|
+
@include narrow;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
@mixin light {
|
|
2
|
+
--components-highlightSection-background: var(--palettes-50, var(--palettes-product-50));
|
|
3
|
+
--palettes-assets-primary: var(--palettes-assets-primary-light);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
@mixin dark {
|
|
7
|
+
--components-highlightSection-background: var(--palettes-100, var(--palettes-product-100));
|
|
8
|
+
--palettes-assets-primary: var(--palettes-assets-primary-dark);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@mixin narrow {
|
|
12
|
+
--components-highlightSection-content-illustration-display: none;
|
|
13
|
+
--components-highlightSection-bubbleStartBubbleEnd-display: none;
|
|
14
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
@mixin vars {
|
|
2
|
+
--components-highlightSection-background: var(--pr-t-elevation-surface-raised);
|
|
3
|
+
--components-highlightSection-borderRadius: var(--pr-t-border-radius-structure);
|
|
4
|
+
--components-highlightSection-gap: var(--pr-t-spacings-100);
|
|
5
|
+
--components-highlightSection-illustration-blockSize: 150px;
|
|
6
|
+
--components-highlightSection-illustration-inlineSize: 140px;
|
|
7
|
+
--components-highlightSection-padding: var(--pr-t-spacings-200);
|
|
8
|
+
--components-highlightSection-content-illustration-display: block;
|
|
9
|
+
--components-highlightSection-bubbleStartBubbleEnd-display: flex;
|
|
10
|
+
}
|
|
@@ -149,7 +149,8 @@
|
|
|
149
149
|
.horizontalNavigation_panel {
|
|
150
150
|
display: var(--components-horizontalNavigation-panel-display);
|
|
151
151
|
overflow: var(--components-horizontalNavigation-panel-overflow);
|
|
152
|
-
|
|
152
|
+
flex-grow: var(--components-horizontalNavigation-panel-flexGrow);
|
|
153
|
+
min-block-size: 0;
|
|
153
154
|
flex-direction: column;
|
|
154
155
|
|
|
155
156
|
&:focus-visible {
|
|
@@ -115,6 +115,7 @@
|
|
|
115
115
|
@mixin insideDialogPanel {
|
|
116
116
|
--components-horizontalNavigation-panel-display: flex;
|
|
117
117
|
--components-horizontalNavigation-panel-overflow: auto;
|
|
118
|
+
--components-horizontalNavigation-panel-flexGrow: 1;
|
|
118
119
|
|
|
119
120
|
&:focus-visible {
|
|
120
121
|
@include a11y.focusVisible($offset: -4px, $borderRadius: var(--pr-t-border-radius-structure));
|
|
@@ -101,6 +101,7 @@
|
|
|
101
101
|
@forward 'richText';
|
|
102
102
|
@forward 'readMore';
|
|
103
103
|
@forward 'highlightData';
|
|
104
|
+
@forward 'highlightSection';
|
|
104
105
|
@forward 'listing';
|
|
105
106
|
@forward 'fileUpload';
|
|
106
107
|
@forward 'fileEntry';
|
|
@@ -119,6 +120,7 @@
|
|
|
119
120
|
@forward 'activityFeed';
|
|
120
121
|
@forward 'impersonation';
|
|
121
122
|
@forward 'highlightText';
|
|
123
|
+
@forward 'approbationInbox';
|
|
122
124
|
|
|
123
125
|
@forward 'filterBarDeprecated';
|
|
124
126
|
@forward 'tableFixedDeprecated';
|
|
@@ -298,6 +298,11 @@
|
|
|
298
298
|
// For specificity purpose. Could be removed if we decide to remove automatic CSS imports in Angular components
|
|
299
299
|
@include button.critical;
|
|
300
300
|
}
|
|
301
|
+
|
|
302
|
+
&.is-loading {
|
|
303
|
+
@include button.loadingS;
|
|
304
|
+
@include button.loadingGhost;
|
|
305
|
+
}
|
|
301
306
|
}
|
|
302
307
|
}
|
|
303
308
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
@use '@lucca-front/scss/src/commons/utils/namespace';
|
|
7
7
|
|
|
8
8
|
@mixin component($atRoot: namespace.$defaultAtRoot) {
|
|
9
|
-
min-block-size:
|
|
9
|
+
min-block-size: 100vb;
|
|
10
10
|
display: grid;
|
|
11
11
|
|
|
12
12
|
@include media.min('L') {
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
|
|
95
95
|
.layout-navside,
|
|
96
96
|
.layout-aside {
|
|
97
|
-
min-block-size: calc(
|
|
97
|
+
min-block-size: calc(100vb - var(--commons-banner-height));
|
|
98
98
|
inset-block-start: var(--commons-banner-height);
|
|
99
99
|
display: flex;
|
|
100
100
|
position: sticky;
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
}
|
|
117
117
|
|
|
118
118
|
.layout-navside {
|
|
119
|
-
max-block-size: calc(
|
|
119
|
+
max-block-size: calc(100vb - var(--commons-banner-height));
|
|
120
120
|
grid-area: navside;
|
|
121
121
|
z-index: 2;
|
|
122
122
|
overflow: auto;
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
@mixin active {
|
|
9
9
|
@include media.max('S') {
|
|
10
10
|
inset-block-start: var(--commons-banner-height);
|
|
11
|
-
block-size: calc(
|
|
11
|
+
block-size: calc(100vb - var(--commons-banner-height));
|
|
12
12
|
background-color: var(--pr-t-elevation-surface-raised);
|
|
13
13
|
position: fixed;
|
|
14
14
|
overflow: auto;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
@mixin component($atRoot: namespace.$defaultAtRoot) {
|
|
5
5
|
display: var(--components-listboxOption-display);
|
|
6
6
|
flex-direction: column;
|
|
7
|
-
gap: var(--pr-t-spacings-
|
|
7
|
+
gap: var(--pr-t-spacings-50);
|
|
8
8
|
scroll-margin-block: var(--components-listboxOption-scrollMarginBlock);
|
|
9
9
|
position: var(--components-listboxOption-position);
|
|
10
10
|
inset-block-end: 0;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
|
|
17
17
|
@at-root ($atRoot) {
|
|
18
18
|
.listboxOption-content {
|
|
19
|
-
opacity: var(--components-listboxOption-content-opacity);
|
|
20
19
|
background-color: var(--components-listboxOption-content-backgroundColor);
|
|
21
20
|
color: var(--components-listboxOption-content-color);
|
|
22
21
|
border-radius: var(--pr-t-border-radius-default);
|
|
@@ -36,6 +35,7 @@
|
|
|
36
35
|
inset-block-start: var(--components-listboxOption-content-insetBlockStart);
|
|
37
36
|
justify-content: var(--components-listboxOption-content-justifyContent);
|
|
38
37
|
box-shadow: var(--components-listboxOption-content-boxShadow);
|
|
38
|
+
overflow-wrap: anywhere;
|
|
39
39
|
|
|
40
40
|
&::before {
|
|
41
41
|
content: var(--components-listboxOption-content-before-content);
|
|
@@ -58,6 +58,12 @@
|
|
|
58
58
|
.avatar {
|
|
59
59
|
margin-inline-end: var(--pr-t-spacings-75);
|
|
60
60
|
}
|
|
61
|
+
|
|
62
|
+
.link {
|
|
63
|
+
opacity: var(--components-listboxOption-content-link-opacity);
|
|
64
|
+
transition-property: opacity;
|
|
65
|
+
transition-duration: var(--commons-animations-durations-fast);
|
|
66
|
+
}
|
|
61
67
|
}
|
|
62
68
|
|
|
63
69
|
.listboxOption-content-checkboxField.checkboxField {
|
|
@@ -85,5 +91,10 @@
|
|
|
85
91
|
--components-listboxOptionWrapper-overflow: visible;
|
|
86
92
|
}
|
|
87
93
|
}
|
|
94
|
+
|
|
95
|
+
.listboxOption-content-group {
|
|
96
|
+
color: var(--palettes-neutral-600);
|
|
97
|
+
font: var(--pr-t-font-body-S);
|
|
98
|
+
}
|
|
88
99
|
}
|
|
89
100
|
}
|
|
@@ -31,14 +31,31 @@
|
|
|
31
31
|
&[role='group'] {
|
|
32
32
|
@include group;
|
|
33
33
|
|
|
34
|
-
&:hover
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
&:hover {
|
|
35
|
+
.selectPanel.is-pointerNavigation & {
|
|
36
|
+
@include groupHover;
|
|
37
|
+
}
|
|
37
38
|
}
|
|
38
39
|
|
|
39
|
-
|
|
40
|
+
&:has(.is-hovered),
|
|
41
|
+
&:has(.link.is-highlighted) {
|
|
42
|
+
.selectPanel:not(.is-pointerNavigation) & {
|
|
43
|
+
@include groupHover;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
> .listboxOption-content:has(.link) {
|
|
40
48
|
&:hover {
|
|
41
|
-
|
|
49
|
+
.selectPanel.is-pointerNavigation & {
|
|
50
|
+
@include hover;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
&.is-hovered,
|
|
55
|
+
&:has(.link.is-highlighted) {
|
|
56
|
+
.selectPanel:not(.is-pointerNavigation) & {
|
|
57
|
+
@include hover;
|
|
58
|
+
}
|
|
42
59
|
}
|
|
43
60
|
}
|
|
44
61
|
|
|
@@ -59,9 +76,16 @@
|
|
|
59
76
|
> .listboxOption-content {
|
|
60
77
|
@include selected;
|
|
61
78
|
|
|
62
|
-
&.is-hovered,
|
|
63
79
|
&:hover {
|
|
64
|
-
|
|
80
|
+
.selectPanel.is-pointerNavigation & {
|
|
81
|
+
@include selectedHover;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
&.is-hovered {
|
|
86
|
+
.selectPanel:not(.is-pointerNavigation) & {
|
|
87
|
+
@include selectedHover;
|
|
88
|
+
}
|
|
65
89
|
}
|
|
66
90
|
|
|
67
91
|
&:active {
|
|
@@ -97,8 +121,16 @@
|
|
|
97
121
|
}
|
|
98
122
|
|
|
99
123
|
@layer mods {
|
|
124
|
+
&:hover {
|
|
125
|
+
.selectPanel.is-pointerNavigation & {
|
|
126
|
+
@include hover;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
100
130
|
&.is-hovered {
|
|
101
|
-
|
|
131
|
+
.selectPanel:not(.is-pointerNavigation) & {
|
|
132
|
+
@include hover;
|
|
133
|
+
}
|
|
102
134
|
}
|
|
103
135
|
|
|
104
136
|
&:active {
|
|
@@ -107,15 +139,6 @@
|
|
|
107
139
|
}
|
|
108
140
|
}
|
|
109
141
|
|
|
110
|
-
// In presentation mode the hover state is driven exclusively by the is-hovered class
|
|
111
|
-
// (bound to isHighlighted by the parent lu-select-option), so native :hover must not apply
|
|
112
|
-
// to avoid two items appearing highlighted simultaneously during mixed keyboard/mouse navigation.
|
|
113
|
-
.listboxOption:not([presentation]) > .listboxOption-content:hover {
|
|
114
|
-
@layer mods {
|
|
115
|
-
@include hover;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
142
|
.listboxOptionWrapper {
|
|
120
143
|
@layer components {
|
|
121
144
|
@include varsWrapper;
|
|
@@ -140,6 +163,12 @@
|
|
|
140
163
|
}
|
|
141
164
|
|
|
142
165
|
&.mod-multiple {
|
|
166
|
+
// Grouped options keep the same inline alignment as ungrouped ones (checkbox + label),
|
|
167
|
+
// so the extra group indentation from `@mixin group` must not apply in multi-select.
|
|
168
|
+
.listboxOption[role='group'] > .listboxOptionWrapper {
|
|
169
|
+
--components-listboxOptionWrapper-childrenPaddingInlineStart: var(--pr-t-spacings-100);
|
|
170
|
+
}
|
|
171
|
+
|
|
143
172
|
&,
|
|
144
173
|
.listboxOptionWrapper {
|
|
145
174
|
@include multiple;
|
|
@@ -54,7 +54,6 @@
|
|
|
54
54
|
|
|
55
55
|
@mixin select {
|
|
56
56
|
> .listboxOption-content {
|
|
57
|
-
--components-listboxOption-content-opacity: 0;
|
|
58
57
|
--components-listboxOption-content-position: static;
|
|
59
58
|
--components-listboxOption-content-font: var(--pr-t-font-body-S);
|
|
60
59
|
--components-listboxOption-content-padding: 0;
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
@mixin disabledHover {
|
|
10
|
-
--components-listboxOption-content-backgroundColor: var(--pr-t-elevation-surface-raised);
|
|
10
|
+
--components-listboxOption-content-backgroundColor: var(--pr-t-elevation-surface-raised) !important;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
@mixin selectedDisabled {
|
|
@@ -74,17 +74,14 @@
|
|
|
74
74
|
--components-listboxOption-content-cursor: default;
|
|
75
75
|
--components-listboxOption-content-backgroundColor: var(--pr-t-elevation-surface-raised);
|
|
76
76
|
}
|
|
77
|
-
|
|
78
|
-
.listboxOption-content-checkboxField {
|
|
79
|
-
display: none;
|
|
80
|
-
}
|
|
81
77
|
}
|
|
82
78
|
|
|
83
79
|
@mixin empty {
|
|
84
80
|
.listboxOption-content {
|
|
81
|
+
--components-listboxOption-content-color: var(--pr-t-color-text-subtle);
|
|
85
82
|
--components-listboxOption-content-checkboxField-display: none;
|
|
86
83
|
--components-listboxOption-content-cursor: default;
|
|
87
|
-
--components-listboxOption-content-backgroundColor: var(--pr-t-elevation-surface-raised);
|
|
84
|
+
--components-listboxOption-content-backgroundColor: var(--pr-t-elevation-surface-raised) !important;
|
|
88
85
|
}
|
|
89
86
|
}
|
|
90
87
|
|
|
@@ -95,7 +92,7 @@
|
|
|
95
92
|
|
|
96
93
|
@mixin groupHover {
|
|
97
94
|
.listboxOption-content {
|
|
98
|
-
--components-listboxOption-content-opacity: 1;
|
|
95
|
+
--components-listboxOption-content-link-opacity: 1;
|
|
99
96
|
}
|
|
100
97
|
}
|
|
101
98
|
|
|
@@ -110,6 +107,10 @@
|
|
|
110
107
|
|
|
111
108
|
@mixin hover {
|
|
112
109
|
--components-listboxOption-content-backgroundColor: var(--palettes-neutral-50);
|
|
110
|
+
|
|
111
|
+
.listboxOption-content-checkboxField-input {
|
|
112
|
+
@include checkboxField.hover;
|
|
113
|
+
}
|
|
113
114
|
}
|
|
114
115
|
|
|
115
116
|
@mixin active {
|
|
@@ -23,10 +23,10 @@
|
|
|
23
23
|
--components-listboxOption-content-position: relative;
|
|
24
24
|
--components-listboxOption-content-before-content: var(--components-listboxOptionWrapper-childrenBefore-content, '');
|
|
25
25
|
--components-listboxOption-content-after-content: none;
|
|
26
|
-
--components-listboxOption-content-opacity: 1;
|
|
27
26
|
--components-listboxOption-content-boxShadow: none;
|
|
28
27
|
--components-listboxOption-content-flexWrap: nowrap;
|
|
29
28
|
--components-listboxOption-content-justifyContent: normal;
|
|
29
|
+
--components-listboxOption-content-link-opacity: 0;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
@mixin varsWrapper {
|
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
@include popin;
|
|
40
40
|
|
|
41
41
|
// legacy, approximate centering
|
|
42
|
+
// stylelint-disable-next-line unit-layout-mappings -- translateY is physical; pair it with physical vh.
|
|
42
43
|
--components-loading-transform: translateY(35vh);
|
|
43
44
|
}
|
|
44
45
|
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
|
|
48
49
|
// legacy, approximate centering
|
|
49
50
|
--components-loading-margin: 0 auto;
|
|
51
|
+
// stylelint-disable-next-line unit-layout-mappings -- translateY is physical; pair it with physical vh.
|
|
50
52
|
--components-loading-transform: translateY(35vh);
|
|
51
53
|
}
|
|
52
54
|
|