@ch-post-common/common-web-frontend 0.0.1-security → 6.939.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of @ch-post-common/common-web-frontend might be problematic. Click here for more details.
- package/components/accordion.scss +177 -0
- package/components/alert.scss +217 -0
- package/components/badge.scss +95 -0
- package/components/breadcrumb.scss +43 -0
- package/components/button.scss +168 -0
- package/components/card.scss +227 -0
- package/components/carousel.scss +161 -0
- package/components/custom-choice-control.scss +217 -0
- package/components/custom-range-input.scss +51 -0
- package/components/custom-select.scss +60 -0
- package/components/datatable.scss +147 -0
- package/components/datepicker.scss +220 -0
- package/components/detail-summary.scss +72 -0
- package/components/dropdown.scss +71 -0
- package/components/floating-label.scss +65 -0
- package/components/fonts.scss +35 -0
- package/components/form-feedback.scss +70 -0
- package/components/forms.scss +31 -0
- package/components/grid.scss +103 -0
- package/components/icons.scss +62 -0
- package/components/intranet-header/_icon.scss +6 -0
- package/components/intranet-header/_language-chooser.scss +40 -0
- package/components/intranet-header/_logo.scss +74 -0
- package/components/intranet-header/_nav-overflow.scss +56 -0
- package/components/intranet-header/_scaffolding.scss +96 -0
- package/components/intranet-header/_searchbox.scss +56 -0
- package/components/intranet-header/_settings.scss +23 -0
- package/components/intranet-header/_sidebar.scss +118 -0
- package/components/intranet-header/_top-navigation.scss +83 -0
- package/components/list-group.scss +156 -0
- package/components/modal.scss +87 -0
- package/components/pagination.scss +67 -0
- package/components/popover.scss +21 -0
- package/components/product-card.scss +74 -0
- package/components/progress.scss +15 -0
- package/components/reboot.scss +17 -0
- package/components/root.scss +10 -0
- package/components/sizing.scss +90 -0
- package/components/spinner.scss +58 -0
- package/components/stepper.scss +158 -0
- package/components/subnavigation.scss +131 -0
- package/components/switch.scss +132 -0
- package/components/tabs.scss +122 -0
- package/components/timepicker.scss +110 -0
- package/components/toast.scss +172 -0
- package/components/tooltip.scss +23 -0
- package/components/topic-teaser.scss +133 -0
- package/components/type.scss +106 -0
- package/components/utilities.scss +93 -0
- package/index.js +28 -0
- package/layouts/portal/_type.scss +83 -0
- package/lic/_bootstrap-license.scss +29 -0
- package/lic/_cwf-license.scss +7 -0
- package/mixins/_animation.scss +39 -0
- package/mixins/_button.scss +232 -0
- package/mixins/_forms.scss +188 -0
- package/mixins/_icons.scss +27 -0
- package/mixins/_scroll-shadows.scss +13 -0
- package/mixins/_size.scss +69 -0
- package/mixins/_type.scss +187 -0
- package/mixins/_utilities.scss +73 -0
- package/package.json +11 -3
- package/placeholders/_dropdown.scss +11 -0
- package/placeholders/_floating-label.scss +143 -0
- package/placeholders/_notifications.scss +160 -0
- package/placeholders/_text.scss +187 -0
- package/variables/_animation.scss +36 -0
- package/variables/_color.scss +240 -0
- package/variables/_commons.scss +57 -0
- package/variables/_icons.scss +2071 -0
- package/variables/_spacing.scss +180 -0
- package/variables/_type.scss +157 -0
- package/variables/components/_accordion.scss +22 -0
- package/variables/components/_alert.scss +50 -0
- package/variables/components/_badge.scss +29 -0
- package/variables/components/_breadcrumbs.scss +21 -0
- package/variables/components/_button.scss +152 -0
- package/variables/components/_card.scss +29 -0
- package/variables/components/_carousel.scss +27 -0
- package/variables/components/_close.scss +9 -0
- package/variables/components/_datatable.scss +49 -0
- package/variables/components/_datepicker.scss +14 -0
- package/variables/components/_dropdowns.scss +30 -0
- package/variables/components/_forms.scss +256 -0
- package/variables/components/_intranet-header.scss +9 -0
- package/variables/components/_modals.scss +68 -0
- package/variables/components/_nav.scss +82 -0
- package/variables/components/_pagination.scss +41 -0
- package/variables/components/_paragraph.scss +6 -0
- package/variables/components/_popovers.scss +28 -0
- package/variables/components/_progress-bars.scss +16 -0
- package/variables/components/_stepper.scss +26 -0
- package/variables/components/_subnavigation.scss +36 -0
- package/variables/components/_switch.scss +3 -0
- package/variables/components/_tables.scss +31 -0
- package/variables/components/_tooltips.scss +26 -0
- package/README.md +0 -5
@@ -0,0 +1,177 @@
|
|
1
|
+
@forward "../variables/options";
|
2
|
+
@use "sass:map";
|
3
|
+
|
4
|
+
@use "../lic/bootstrap-license";
|
5
|
+
@use "../themes/bootstrap/overrides" as *;
|
6
|
+
|
7
|
+
@use "../variables";
|
8
|
+
@use "../mixins";
|
9
|
+
@use "../variables/components/accordion";
|
10
|
+
@use "../variables/options";
|
11
|
+
@use "../variables/spacing";
|
12
|
+
@use "../variables/color";
|
13
|
+
@use "../variables/components/button";
|
14
|
+
@use "../mixins/icons" as icon-mixin;
|
15
|
+
@use "../layouts/portal/type" as portal;
|
16
|
+
@use "../variables/type";
|
17
|
+
@use "../placeholders/text";
|
18
|
+
|
19
|
+
|
20
|
+
.accordion {
|
21
|
+
.card {
|
22
|
+
background-color: transparent;
|
23
|
+
border: none;
|
24
|
+
box-shadow: none;
|
25
|
+
margin-top: 0;
|
26
|
+
outline: none;
|
27
|
+
|
28
|
+
.card-body {
|
29
|
+
|
30
|
+
padding: accordion.$accordion-content-space-top accordion.$accordion-padding-horizontal-xs accordion.$accordion-content-space-bottom-xs;
|
31
|
+
|
32
|
+
// Only one heading style is needed inside the accordion. h2 should not be used inside the accordion.
|
33
|
+
h2,
|
34
|
+
h3,
|
35
|
+
h4,
|
36
|
+
h5,
|
37
|
+
h6,
|
38
|
+
p {
|
39
|
+
@extend %font-curve-regular;
|
40
|
+
|
41
|
+
&:first-child {
|
42
|
+
margin-top: 0;
|
43
|
+
}
|
44
|
+
|
45
|
+
&:last-child {
|
46
|
+
margin-bottom: 0;
|
47
|
+
}
|
48
|
+
}
|
49
|
+
|
50
|
+
h2,
|
51
|
+
h3,
|
52
|
+
h4,
|
53
|
+
h5,
|
54
|
+
h6 {
|
55
|
+
@include mixins.fontSizeAndLineHeight($font-curve-regular...);
|
56
|
+
margin-top: accordion.$accordion-content-heading-top;
|
57
|
+
margin-bottom: 0;
|
58
|
+
font-weight: type.$font-weight-bold;
|
59
|
+
}
|
60
|
+
|
61
|
+
p {
|
62
|
+
font-weight: $font-weight-light; // Default style for text with p tag.
|
63
|
+
}
|
64
|
+
|
65
|
+
@include media-breakpoint-up(sm) {
|
66
|
+
padding-right: accordion.$accordion-padding-horizontal-sm;
|
67
|
+
padding-left: accordion.$accordion-padding-horizontal-sm;
|
68
|
+
}
|
69
|
+
@include media-breakpoint-up(rg) {
|
70
|
+
padding-bottom: accordion.$accordion-content-space-bottom-rg;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
|
75
|
+
.card-header {
|
76
|
+
background-color: transparent;
|
77
|
+
border: none;
|
78
|
+
padding: 0;
|
79
|
+
margin: 0;
|
80
|
+
|
81
|
+
h5 {
|
82
|
+
@extend %font-curve-regular;
|
83
|
+
font-weight: type.$font-weight-bold;
|
84
|
+
position: relative;
|
85
|
+
margin: 0;
|
86
|
+
padding: 0;
|
87
|
+
}
|
88
|
+
|
89
|
+
.btn {
|
90
|
+
@include transition(variables.$transition-base);
|
91
|
+
@include mixins.reset-button;
|
92
|
+
@include mixins.fontSizeAndLineHeight(
|
93
|
+
variables.$font-curve-regular...
|
94
|
+
); // need to include font-size here, with @extend %font-curve-regular the resetButton mixin overwrite the line-height.
|
95
|
+
|
96
|
+
display: unset;
|
97
|
+
transition: none;
|
98
|
+
width: 100%;
|
99
|
+
background-color: transparent;
|
100
|
+
padding: accordion.$accordion-trigger-padding-vertical
|
101
|
+
accordion.$accordion-trigger-padding-right-xs
|
102
|
+
accordion.$accordion-trigger-padding-vertical
|
103
|
+
accordion.$accordion-padding-horizontal-xs;
|
104
|
+
border-top-style: solid;
|
105
|
+
border-top-color: accordion.$accordion-border-color;
|
106
|
+
border-top-width: accordion.$accordion-border-width;
|
107
|
+
border-radius: 0;
|
108
|
+
cursor: pointer;
|
109
|
+
white-space: normal;
|
110
|
+
color: accordion.$accordion-btn-text-color-expanded;
|
111
|
+
text-align: left;
|
112
|
+
vertical-align: baseline;
|
113
|
+
font-weight: type.$font-weight-bold;
|
114
|
+
|
115
|
+
&[aria-expanded="false"] {
|
116
|
+
@include text-truncate;
|
117
|
+
}
|
118
|
+
|
119
|
+
&:not([aria-expanded="false"]) {
|
120
|
+
color: accordion.$accordion-btn-text-color;
|
121
|
+
}
|
122
|
+
|
123
|
+
&:focus {
|
124
|
+
outline: none;
|
125
|
+
}
|
126
|
+
|
127
|
+
&:hover {
|
128
|
+
.no-touchevents & {
|
129
|
+
color: color.$black;
|
130
|
+
background-color: map.get(color.$background-colors, "dark");
|
131
|
+
}
|
132
|
+
}
|
133
|
+
|
134
|
+
&.btn-link {
|
135
|
+
text-decoration: none;
|
136
|
+
}
|
137
|
+
|
138
|
+
&.btn-link.collapsed[aria-expanded="false"],
|
139
|
+
&.btn-link[aria-expanded="true"] {
|
140
|
+
//stylelint-disable-next-line max-nesting-depth
|
141
|
+
&::after {
|
142
|
+
@include icon-mixin.pi(2113);
|
143
|
+
content: "";
|
144
|
+
position: absolute;
|
145
|
+
top: spacing.$size-regular;
|
146
|
+
right: spacing.$size-regular;
|
147
|
+
width: accordion.$accordion-icon-width;
|
148
|
+
height: accordion.$accordion-icon-width;
|
149
|
+
background-size: contain;
|
150
|
+
background-repeat: no-repeat;
|
151
|
+
background-position: center center;
|
152
|
+
transition: button.$btn-transition;
|
153
|
+
|
154
|
+
@include media-breakpoint-up(md) {
|
155
|
+
top: spacing.$size-small-large;
|
156
|
+
}
|
157
|
+
}
|
158
|
+
}
|
159
|
+
|
160
|
+
&.btn-link[aria-expanded="true"] {
|
161
|
+
//stylelint-disable-next-line max-nesting-depth
|
162
|
+
&::after {
|
163
|
+
transform: rotate(180deg);
|
164
|
+
}
|
165
|
+
}
|
166
|
+
|
167
|
+
@include media-breakpoint-up(sm) {
|
168
|
+
padding-left: accordion.$accordion-padding-horizontal-sm;
|
169
|
+
padding-right: accordion.$accordion-trigger-padding-right-sm;
|
170
|
+
}
|
171
|
+
}
|
172
|
+
}
|
173
|
+
|
174
|
+
.collapse {
|
175
|
+
@include transition($transition-collapse);
|
176
|
+
}
|
177
|
+
}
|
@@ -0,0 +1,217 @@
|
|
1
|
+
@forward "../variables/options";
|
2
|
+
|
3
|
+
@use "sass:map";
|
4
|
+
|
5
|
+
@use "../lic/bootstrap-license";
|
6
|
+
@use "../themes/bootstrap/overrides" as *;
|
7
|
+
|
8
|
+
@use "../variables/color";
|
9
|
+
@use "../variables/commons";
|
10
|
+
@use "../variables/type";
|
11
|
+
@use "../variables/spacing";
|
12
|
+
@use "../variables/grid";
|
13
|
+
@use "../variables/breakpoints";
|
14
|
+
@use "../variables/components/alert";
|
15
|
+
@use "../variables/options";
|
16
|
+
@use "../placeholders/notifications";
|
17
|
+
|
18
|
+
|
19
|
+
.alert-container {
|
20
|
+
@extend %notification-container;
|
21
|
+
}
|
22
|
+
|
23
|
+
.alert {
|
24
|
+
$effective-line-height: (alert.$alert-line-height * alert.$alert-font-size);
|
25
|
+
|
26
|
+
@extend %notification;
|
27
|
+
|
28
|
+
padding: alert.$alert-padding-y alert.$alert-padding-x;
|
29
|
+
padding-left: (alert.$alert-padding-x * 2 + alert.$alert-icon-size);
|
30
|
+
|
31
|
+
background-position: alert.$alert-padding-x center;
|
32
|
+
background-size: alert.$alert-icon-size;
|
33
|
+
|
34
|
+
font-size: alert.$alert-font-size;
|
35
|
+
|
36
|
+
min-height: 2 * alert.$alert-padding-y + alert.$alert-icon-size;
|
37
|
+
|
38
|
+
& > *:only-child {
|
39
|
+
font-weight: type.$font-weight-bold;
|
40
|
+
}
|
41
|
+
|
42
|
+
&:not(.alert-fixed-bottom) {
|
43
|
+
max-width: map.get(breakpoints.$grid-breakpoints, "xxl");
|
44
|
+
}
|
45
|
+
|
46
|
+
&.no-icon {
|
47
|
+
padding-left: alert.$alert-padding-x;
|
48
|
+
}
|
49
|
+
|
50
|
+
&.alert-dismissible {
|
51
|
+
padding-right: alert.$alert-close-icon-size + alert.$alert-padding-x * 2;
|
52
|
+
}
|
53
|
+
|
54
|
+
// Adjust close link position
|
55
|
+
.close {
|
56
|
+
@extend %notification-close;
|
57
|
+
|
58
|
+
padding: alert.$alert-padding-y alert.$alert-padding-x;
|
59
|
+
}
|
60
|
+
}
|
61
|
+
|
62
|
+
.alert-heading {
|
63
|
+
@extend %notification-title;
|
64
|
+
|
65
|
+
font-size: alert.$alert-font-size;
|
66
|
+
}
|
67
|
+
|
68
|
+
@each $name, $color, $icon in alert.$alert-list {
|
69
|
+
.alert-#{$name} {
|
70
|
+
@extend %notification-#{$name};
|
71
|
+
|
72
|
+
.close {
|
73
|
+
@extend %notification-#{$name}-close;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
}
|
77
|
+
|
78
|
+
.alert-fixed-bottom {
|
79
|
+
position: fixed;
|
80
|
+
|
81
|
+
left: 0;
|
82
|
+
bottom: 0;
|
83
|
+
|
84
|
+
width: 100%;
|
85
|
+
|
86
|
+
margin-bottom: 0;
|
87
|
+
border-radius: 0;
|
88
|
+
|
89
|
+
@include media-breakpoint-up(xxl) {
|
90
|
+
// TODO: All of the calculations need to be offset by 0.5rem - but I have no idea why.
|
91
|
+
$container-padding: map.get(grid.$grid-container-padding, "xxl");
|
92
|
+
|
93
|
+
background-position: calc(
|
94
|
+
(100vw - #{map.get(breakpoints.$grid-breakpoints, "xxl")}) / 2 + #{alert.$alert-padding-x} + #{$container-padding} - .5rem
|
95
|
+
) center;
|
96
|
+
padding: alert.$alert-padding-y
|
97
|
+
calc(
|
98
|
+
(100vw - #{map.get(breakpoints.$grid-breakpoints, "xxl")}) / 2 + #{alert.$alert-padding-x *
|
99
|
+
2 + alert.$alert-icon-size} + #{$container-padding} - .5rem
|
100
|
+
);
|
101
|
+
|
102
|
+
&.alert-dismissible {
|
103
|
+
padding-right: calc(
|
104
|
+
(100vw - #{map.get(breakpoints.$grid-breakpoints, "xxl")}) / 2 + #{alert.$alert-close-icon-size +
|
105
|
+
alert.$alert-padding-x * 2} + #{$container-padding} - .5rem
|
106
|
+
);
|
107
|
+
|
108
|
+
& .close {
|
109
|
+
right: calc(
|
110
|
+
(100vw - #{map.get(breakpoints.$grid-breakpoints, "xxl")}) / 2 + #{$container-padding} -
|
111
|
+
.5rem
|
112
|
+
);
|
113
|
+
}
|
114
|
+
}
|
115
|
+
}
|
116
|
+
}
|
117
|
+
|
118
|
+
.alert-action {
|
119
|
+
@extend .alert-fixed-bottom;
|
120
|
+
|
121
|
+
flex-direction: row;
|
122
|
+
flex-wrap: nowrap;
|
123
|
+
align-items: center;
|
124
|
+
justify-content: space-between;
|
125
|
+
|
126
|
+
.alert-content {
|
127
|
+
display: flex;
|
128
|
+
flex: 1 1 0%;
|
129
|
+
flex-flow: column nowrap;
|
130
|
+
|
131
|
+
& > *:last-child {
|
132
|
+
margin-bottom: 0;
|
133
|
+
}
|
134
|
+
}
|
135
|
+
|
136
|
+
.alert-buttons {
|
137
|
+
flex: 0 0 auto;
|
138
|
+
margin-left: alert.$alert-padding-x;
|
139
|
+
|
140
|
+
.btn {
|
141
|
+
float: right;
|
142
|
+
|
143
|
+
+ .btn {
|
144
|
+
margin-right: spacing.$spacer;
|
145
|
+
}
|
146
|
+
}
|
147
|
+
}
|
148
|
+
|
149
|
+
@include media-breakpoint-down(md) {
|
150
|
+
flex-direction: column;
|
151
|
+
justify-content: stretch;
|
152
|
+
align-items: flex-start;
|
153
|
+
|
154
|
+
.alert-content {
|
155
|
+
flex-basis: auto;
|
156
|
+
align-self: stretch;
|
157
|
+
}
|
158
|
+
|
159
|
+
.alert-buttons {
|
160
|
+
align-self: flex-end;
|
161
|
+
margin-top: spacing.$spacer;
|
162
|
+
margin-left: 0;
|
163
|
+
}
|
164
|
+
}
|
165
|
+
|
166
|
+
@include media-breakpoint-down(sm) {
|
167
|
+
align-items: center;
|
168
|
+
|
169
|
+
.alert-buttons {
|
170
|
+
align-self: stretch;
|
171
|
+
|
172
|
+
.btn {
|
173
|
+
width: 100%;
|
174
|
+
|
175
|
+
+ .btn {
|
176
|
+
margin-right: 0;
|
177
|
+
margin-top: spacing.$spacer;
|
178
|
+
}
|
179
|
+
}
|
180
|
+
}
|
181
|
+
}
|
182
|
+
|
183
|
+
@include media-breakpoint-up(xxl) {
|
184
|
+
$container-padding: map.get(grid.$grid-container-padding, "xxl");
|
185
|
+
padding-right: calc(
|
186
|
+
(100vw - #{map.get(breakpoints.$grid-breakpoints, "xxl")}) / 2 + #{alert.$alert-padding-x} +
|
187
|
+
#{$container-padding} - .5rem
|
188
|
+
);
|
189
|
+
}
|
190
|
+
}
|
191
|
+
|
192
|
+
@include media-breakpoint-down(sm) {
|
193
|
+
.alert {
|
194
|
+
padding-left: alert.$alert-padding-x;
|
195
|
+
padding-top: alert.$alert-padding-y * 2 + alert.$alert-icon-size;
|
196
|
+
text-align: center;
|
197
|
+
background-position: center alert.$alert-padding-y;
|
198
|
+
font-size: alert.$alert-font-size-small;
|
199
|
+
|
200
|
+
&.alert-dismissible {
|
201
|
+
padding-right: alert.$alert-padding-x;
|
202
|
+
}
|
203
|
+
|
204
|
+
&.no-icon {
|
205
|
+
padding-top: alert.$alert-padding-y;
|
206
|
+
}
|
207
|
+
|
208
|
+
.close {
|
209
|
+
bottom: auto;
|
210
|
+
padding: spacing.$spacer/2;
|
211
|
+
}
|
212
|
+
|
213
|
+
.alert-heading {
|
214
|
+
font-size: alert.$alert-font-size-small;
|
215
|
+
}
|
216
|
+
}
|
217
|
+
}
|
@@ -0,0 +1,95 @@
|
|
1
|
+
@forward "../variables/options";
|
2
|
+
|
3
|
+
@use "../lic/bootstrap-license";
|
4
|
+
@use "../themes/bootstrap/overrides" as *;
|
5
|
+
@use "../themes/bootstrap/badge" as bb;
|
6
|
+
|
7
|
+
@use "../variables/color";
|
8
|
+
@use "../variables/type";
|
9
|
+
@use "../variables/components/badge";
|
10
|
+
@use "../variables/components/nav";
|
11
|
+
@use "../variables/options";
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
:root {
|
16
|
+
--isolate-components: #{options.$isolate-components};
|
17
|
+
}
|
18
|
+
|
19
|
+
.badge {
|
20
|
+
border: badge.$badge-border;
|
21
|
+
text-decoration: none;
|
22
|
+
height: badge.$badge-height;
|
23
|
+
display: inline-flex;
|
24
|
+
align-items: center;
|
25
|
+
font-size: type.$font-size-tiny;
|
26
|
+
font-weight: type.$font-weight-normal;
|
27
|
+
}
|
28
|
+
|
29
|
+
.badge-pill {
|
30
|
+
padding: badge.$badge-pill-padding-y badge.$badge-pill-padding-x;
|
31
|
+
min-width: badge.$badge-pill-min-width;
|
32
|
+
}
|
33
|
+
|
34
|
+
.badge-pill-p6 {
|
35
|
+
padding: badge.$badge-pill-padding-y-p6 badge.$badge-pill-padding-x-p6;
|
36
|
+
min-width: badge.$badge-pill-min-width;
|
37
|
+
}
|
38
|
+
//-- Legacy --
|
39
|
+
|
40
|
+
@each $color, $value in $theme-colors {
|
41
|
+
.badge-outline-#{$color} {
|
42
|
+
color: color.$black;
|
43
|
+
background-color: $white;
|
44
|
+
border: nav.$nav-pills-outline-border-width solid $value;
|
45
|
+
text-decoration: none;
|
46
|
+
|
47
|
+
&[href] {
|
48
|
+
@include hover-focus {
|
49
|
+
color: color-yiq($value);
|
50
|
+
text-decoration: none;
|
51
|
+
background-color: $value;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
.badge-outline-gray-carrara-thick {
|
58
|
+
color: color.$black-alpha-60;
|
59
|
+
background-color: color.$white;
|
60
|
+
border: badge.$badge-pill-border-thick solid color.$black-alpha-20;
|
61
|
+
text-decoration: none;
|
62
|
+
|
63
|
+
&[href] {
|
64
|
+
@include hover-focus {
|
65
|
+
color: color-yiq(color.$gray-cararra);
|
66
|
+
text-decoration: none;
|
67
|
+
background-color: color.$gray-cararra;
|
68
|
+
}
|
69
|
+
}
|
70
|
+
}
|
71
|
+
|
72
|
+
.badge-gray-carrara {
|
73
|
+
color: #000;
|
74
|
+
background-color: color.$gray-cararra;
|
75
|
+
border: badge.$badge-pill-border-thick solid transparent;
|
76
|
+
}
|
77
|
+
|
78
|
+
.badge-gray-100 {
|
79
|
+
background-color: color.$gray-100;
|
80
|
+
color: color.$black-alpha-60;
|
81
|
+
border: badge.$badge-pill-border-thick solid transparent;
|
82
|
+
}
|
83
|
+
|
84
|
+
.badge > i {
|
85
|
+
position: relative;
|
86
|
+
}
|
87
|
+
|
88
|
+
.badge-pill-circle {
|
89
|
+
border-radius: badge.$badge-height;
|
90
|
+
border: nav.$nav-pills-outline-border-width solid transparent;
|
91
|
+
}
|
92
|
+
|
93
|
+
.badge-pill > * + * {
|
94
|
+
margin-left: (.375rem);
|
95
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
@forward "../variables/options";
|
2
|
+
|
3
|
+
@use "sass:map";
|
4
|
+
|
5
|
+
@use "../lic/bootstrap-license";
|
6
|
+
@use "../themes/bootstrap/overrides" as *;
|
7
|
+
@use "../themes/bootstrap/breadcrumbs" as bb;
|
8
|
+
|
9
|
+
@use "../variables/type";
|
10
|
+
@use "../variables/spacing";
|
11
|
+
@use "../variables/components/breadcrumbs";
|
12
|
+
@use "../placeholders/text";
|
13
|
+
|
14
|
+
|
15
|
+
.breadcrumb {
|
16
|
+
@extend %font-curve-small;
|
17
|
+
font-weight: type.$font-weight-normal;
|
18
|
+
height: map.get(spacing.$post-sizes, "bigger-big");
|
19
|
+
overflow: hidden;
|
20
|
+
flex-wrap: nowrap;
|
21
|
+
white-space: nowrap;
|
22
|
+
}
|
23
|
+
|
24
|
+
.breadcrumb-item {
|
25
|
+
display: flex;
|
26
|
+
align-items: center;
|
27
|
+
|
28
|
+
.ppm-breadcrumb-divider {
|
29
|
+
fill: breadcrumbs.$breadcrumb-divider-color;
|
30
|
+
}
|
31
|
+
|
32
|
+
a {
|
33
|
+
display: flex;
|
34
|
+
align-content: center;
|
35
|
+
align-items: center;
|
36
|
+
text-decoration: none;
|
37
|
+
color: breadcrumbs.$breadcrumb-link-color;
|
38
|
+
|
39
|
+
&:hover {
|
40
|
+
color: breadcrumbs.$breadcrumb-hover-color;
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,168 @@
|
|
1
|
+
@forward "../variables/options";
|
2
|
+
|
3
|
+
@use "sass:map";
|
4
|
+
|
5
|
+
@use "../lic/bootstrap-license";
|
6
|
+
@use "../themes/bootstrap/overrides" as *;
|
7
|
+
@use "../themes/bootstrap/buttons";
|
8
|
+
@use "../themes/bootstrap/button-group";
|
9
|
+
|
10
|
+
@use "../variables/components/button";
|
11
|
+
@use "../variables/color";
|
12
|
+
@use "../mixins/button" as mixins;
|
13
|
+
|
14
|
+
// Overwrites padding-x and padding-y for buttons with hover animation
|
15
|
+
.btn {
|
16
|
+
@include mixins.btn;
|
17
|
+
}
|
18
|
+
|
19
|
+
.btn-sm {
|
20
|
+
@include mixins.btn-sm;
|
21
|
+
}
|
22
|
+
|
23
|
+
.btn-rg {
|
24
|
+
@include mixins.btn-rg;
|
25
|
+
}
|
26
|
+
|
27
|
+
.btn-lg {
|
28
|
+
@include mixins.btn-lg;
|
29
|
+
}
|
30
|
+
|
31
|
+
.btn-scaling {
|
32
|
+
@include mixins.btn-sm;
|
33
|
+
|
34
|
+
@include media-breakpoint-up(rg) {
|
35
|
+
@include mixins.btn-rg;
|
36
|
+
}
|
37
|
+
|
38
|
+
@include media-breakpoint-up(md) {
|
39
|
+
@include mixins.btn;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
// Includes button variants for buttons that are to be used on coloured backgrounds
|
44
|
+
.btn-inverted {
|
45
|
+
&.btn {
|
46
|
+
@include mixins.button-outline-variant(color.$white-alpha-80, color.$white);
|
47
|
+
}
|
48
|
+
|
49
|
+
@each $color, $value in color.$theme-colors {
|
50
|
+
&.btn-#{$color} {
|
51
|
+
@if $color == "primary" {
|
52
|
+
@include mixins.button-variant(
|
53
|
+
color.$white,
|
54
|
+
transparent,
|
55
|
+
color.$white-alpha-80,
|
56
|
+
transparent
|
57
|
+
);
|
58
|
+
} @else {
|
59
|
+
@include mixins.button-variant($value, $value, color.$white);
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
&.btn-outline-#{$color} {
|
64
|
+
@if $color == "white" or $color == "secondary" {
|
65
|
+
@include mixins.button-variant(
|
66
|
+
transparent,
|
67
|
+
color.$white,
|
68
|
+
transparent,
|
69
|
+
color.$white-alpha-80
|
70
|
+
);
|
71
|
+
@include hover-focus {
|
72
|
+
&:not(:disabled):not(.disabled) {
|
73
|
+
color: color.$white-alpha-80;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
} @else {
|
77
|
+
@include mixins.button-outline-variant($value);
|
78
|
+
}
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
82
|
+
|
83
|
+
// Define primary button hover-background as black
|
84
|
+
.btn-primary {
|
85
|
+
$primary-color: map.get(color.$theme-colors, "primary");
|
86
|
+
@include mixins.button-variant(color.$primary-color, color.$primary-color, color.$black, color.$black);
|
87
|
+
}
|
88
|
+
|
89
|
+
// Define a white button styling
|
90
|
+
.btn-white {
|
91
|
+
@include mixins.button-variant(color.$white, color.$white, color.$white-alpha-80, transparent);
|
92
|
+
}
|
93
|
+
|
94
|
+
// Define a default button styling
|
95
|
+
.btn-default {
|
96
|
+
@include mixins.button-outline-variant(color.$black);
|
97
|
+
}
|
98
|
+
|
99
|
+
.btn-animated {
|
100
|
+
@include hover-focus {
|
101
|
+
&:not([disabled]) > span {
|
102
|
+
&::after {
|
103
|
+
opacity: 1;
|
104
|
+
}
|
105
|
+
}
|
106
|
+
|
107
|
+
&[disabled] > span {
|
108
|
+
transform: none;
|
109
|
+
}
|
110
|
+
}
|
111
|
+
|
112
|
+
&:not([disabled]) > span {
|
113
|
+
@include transition(button.$btn-transition-base-label);
|
114
|
+
|
115
|
+
position: relative;
|
116
|
+
left: 0;
|
117
|
+
display: inline-block;
|
118
|
+
|
119
|
+
&::after {
|
120
|
+
@include transition(
|
121
|
+
button.$btn-transition-base-label,
|
122
|
+
button.$btn-transition-fade-arrow
|
123
|
+
);
|
124
|
+
|
125
|
+
content: "";
|
126
|
+
background-size: contain;
|
127
|
+
background-repeat: no-repeat;
|
128
|
+
background-position: right center;
|
129
|
+
position: absolute;
|
130
|
+
display: inline-block;
|
131
|
+
padding: 0;
|
132
|
+
margin: 0;
|
133
|
+
opacity: 0;
|
134
|
+
}
|
135
|
+
}
|
136
|
+
}
|
137
|
+
|
138
|
+
.btn-icon {
|
139
|
+
.pi {
|
140
|
+
transition: button.$btn-transition;
|
141
|
+
opacity: .6;
|
142
|
+
}
|
143
|
+
|
144
|
+
// Icon spacing
|
145
|
+
.pi + span,
|
146
|
+
span + .pi {
|
147
|
+
margin-left: button.$btn-padding-x/2;
|
148
|
+
}
|
149
|
+
|
150
|
+
&:hover:not(:disabled):not(.disabled) .pi {
|
151
|
+
opacity: 1;
|
152
|
+
}
|
153
|
+
}
|
154
|
+
|
155
|
+
@each $size, $margin in button.$btn-icon-size-map {
|
156
|
+
.btn-icon.btn-#{$size} {
|
157
|
+
.pi + span,
|
158
|
+
span + .pi {
|
159
|
+
margin-left: $margin/2;
|
160
|
+
}
|
161
|
+
}
|
162
|
+
}
|
163
|
+
|
164
|
+
.btn-link {
|
165
|
+
&:focus {
|
166
|
+
box-shadow: none;
|
167
|
+
}
|
168
|
+
}
|