bootstrap 4.6.0 → 5.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.
- checksums.yaml +4 -4
- data/.travis.yml +2 -1
- data/README.md +7 -4
- data/assets/javascripts/bootstrap/alert.js +181 -109
- data/assets/javascripts/bootstrap/base-component.js +63 -0
- data/assets/javascripts/bootstrap/button.js +85 -173
- data/assets/javascripts/bootstrap/carousel.js +458 -355
- data/assets/javascripts/bootstrap/collapse.js +366 -218
- data/assets/javascripts/bootstrap/dom/data.js +68 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +322 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +88 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +85 -0
- data/assets/javascripts/bootstrap/dropdown.js +459 -351
- data/assets/javascripts/bootstrap/modal.js +597 -429
- data/assets/javascripts/bootstrap/offcanvas.js +671 -0
- data/assets/javascripts/bootstrap/popover.js +130 -154
- data/assets/javascripts/bootstrap/scrollspy.js +238 -188
- data/assets/javascripts/bootstrap/tab.js +235 -137
- data/assets/javascripts/bootstrap/toast.js +210 -148
- data/assets/javascripts/bootstrap/tooltip.js +627 -466
- data/assets/javascripts/bootstrap-global-this-define.js +6 -0
- data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
- data/assets/javascripts/bootstrap-sprockets.js +15 -8
- data/assets/javascripts/bootstrap.js +3174 -2563
- data/assets/javascripts/bootstrap.min.js +2 -2
- data/assets/stylesheets/_bootstrap-grid.scss +51 -16
- data/assets/stylesheets/_bootstrap-reboot.scss +4 -1
- data/assets/stylesheets/_bootstrap.scss +16 -8
- data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
- data/assets/stylesheets/bootstrap/_alert.scss +15 -10
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +3 -17
- data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
- data/assets/stylesheets/bootstrap/_buttons.scss +29 -60
- data/assets/stylesheets/bootstrap/_card.scss +20 -91
- data/assets/stylesheets/bootstrap/_carousel.scss +65 -33
- data/assets/stylesheets/bootstrap/_close.scss +30 -30
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +84 -36
- data/assets/stylesheets/bootstrap/_forms.scss +9 -347
- data/assets/stylesheets/bootstrap/_functions.scss +84 -23
- data/assets/stylesheets/bootstrap/_grid.scss +3 -54
- data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
- data/assets/stylesheets/bootstrap/_list-group.scss +28 -8
- data/assets/stylesheets/bootstrap/_mixins.scss +8 -13
- data/assets/stylesheets/bootstrap/_modal.scss +43 -55
- data/assets/stylesheets/bootstrap/_nav.scss +23 -4
- data/assets/stylesheets/bootstrap/_navbar.scss +45 -71
- data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +10 -20
- data/assets/stylesheets/bootstrap/_popover.scss +15 -27
- data/assets/stylesheets/bootstrap/_progress.scss +5 -4
- data/assets/stylesheets/bootstrap/_reboot.scss +316 -179
- data/assets/stylesheets/bootstrap/_root.scss +5 -8
- data/assets/stylesheets/bootstrap/_spinners.scss +11 -7
- data/assets/stylesheets/bootstrap/_tables.scss +79 -114
- data/assets/stylesheets/bootstrap/_toasts.scss +20 -15
- data/assets/stylesheets/bootstrap/_tooltip.scss +17 -17
- data/assets/stylesheets/bootstrap/_transitions.scss +2 -1
- data/assets/stylesheets/bootstrap/_type.scss +38 -59
- data/assets/stylesheets/bootstrap/_utilities.scss +594 -18
- data/assets/stylesheets/bootstrap/_variables.scss +800 -482
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +152 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +219 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +67 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
- data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
- data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -5
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +71 -48
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +38 -86
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +89 -33
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +5 -2
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +17 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +68 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +234 -126
- data/bootstrap.gemspec +1 -3
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +20 -5
- data/tasks/updater/network.rb +7 -1
- data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
- data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
- data/test/dummy_rails/app/views/pages/root.html +89 -0
- data/test/dummy_rails/config/application.rb +0 -3
- data/test/gemfiles/rails_6_1.gemfile +7 -0
- metadata +45 -73
- data/assets/javascripts/bootstrap/util.js +0 -192
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -526
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -208
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -141
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -23
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -80
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
- data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
- data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
- data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_interactions.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
- data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
- data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
- data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
- data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
- /data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
|
@@ -56,19 +56,13 @@
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
.modal-dialog-scrollable {
|
|
59
|
-
|
|
60
|
-
max-height: subtract(100%, $modal-dialog-margin * 2);
|
|
59
|
+
height: subtract(100%, $modal-dialog-margin * 2);
|
|
61
60
|
|
|
62
61
|
.modal-content {
|
|
63
|
-
max-height:
|
|
62
|
+
max-height: 100%;
|
|
64
63
|
overflow: hidden;
|
|
65
64
|
}
|
|
66
65
|
|
|
67
|
-
.modal-header,
|
|
68
|
-
.modal-footer {
|
|
69
|
-
flex-shrink: 0;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
66
|
.modal-body {
|
|
73
67
|
overflow-y: auto;
|
|
74
68
|
}
|
|
@@ -78,29 +72,6 @@
|
|
|
78
72
|
display: flex;
|
|
79
73
|
align-items: center;
|
|
80
74
|
min-height: subtract(100%, $modal-dialog-margin * 2);
|
|
81
|
-
|
|
82
|
-
// Ensure `modal-dialog-centered` extends the full height of the view (IE10/11)
|
|
83
|
-
&::before {
|
|
84
|
-
display: block; // IE10
|
|
85
|
-
height: subtract(100vh, $modal-dialog-margin * 2);
|
|
86
|
-
height: min-content; // Reset height to 0 except on IE
|
|
87
|
-
content: "";
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
// Ensure `.modal-body` shows scrollbar (IE10/11)
|
|
91
|
-
&.modal-dialog-scrollable {
|
|
92
|
-
flex-direction: column;
|
|
93
|
-
justify-content: center;
|
|
94
|
-
height: 100%;
|
|
95
|
-
|
|
96
|
-
.modal-content {
|
|
97
|
-
max-height: none;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
&::before {
|
|
101
|
-
content: none;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
75
|
}
|
|
105
76
|
|
|
106
77
|
// Actual modal
|
|
@@ -140,16 +111,16 @@
|
|
|
140
111
|
// Top section of the modal w/ title and dismiss
|
|
141
112
|
.modal-header {
|
|
142
113
|
display: flex;
|
|
143
|
-
|
|
114
|
+
flex-shrink: 0;
|
|
115
|
+
align-items: center;
|
|
144
116
|
justify-content: space-between; // Put modal header elements (title and dismiss) on opposite ends
|
|
145
117
|
padding: $modal-header-padding;
|
|
146
118
|
border-bottom: $modal-header-border-width solid $modal-header-border-color;
|
|
147
119
|
@include border-top-radius($modal-content-inner-border-radius);
|
|
148
120
|
|
|
149
|
-
.close {
|
|
150
|
-
padding: $modal-header-padding;
|
|
151
|
-
|
|
152
|
-
margin: (-$modal-header-padding-y) (-$modal-header-padding-x) (-$modal-header-padding-y) auto;
|
|
121
|
+
.btn-close {
|
|
122
|
+
padding: ($modal-header-padding-y / 2) ($modal-header-padding-x / 2);
|
|
123
|
+
margin: ($modal-header-padding-y / -2) ($modal-header-padding-x / -2) ($modal-header-padding-y / -2) auto;
|
|
153
124
|
}
|
|
154
125
|
}
|
|
155
126
|
|
|
@@ -173,6 +144,7 @@
|
|
|
173
144
|
.modal-footer {
|
|
174
145
|
display: flex;
|
|
175
146
|
flex-wrap: wrap;
|
|
147
|
+
flex-shrink: 0;
|
|
176
148
|
align-items: center; // vertically center
|
|
177
149
|
justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items
|
|
178
150
|
padding: $modal-inner-padding - $modal-footer-margin-between / 2;
|
|
@@ -187,15 +159,6 @@
|
|
|
187
159
|
}
|
|
188
160
|
}
|
|
189
161
|
|
|
190
|
-
// Measure scrollbar width for padding body during modal show/hide
|
|
191
|
-
.modal-scrollbar-measure {
|
|
192
|
-
position: absolute;
|
|
193
|
-
top: -9999px;
|
|
194
|
-
width: 50px;
|
|
195
|
-
height: 50px;
|
|
196
|
-
overflow: scroll;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
162
|
// Scale up the modal
|
|
200
163
|
@include media-breakpoint-up(sm) {
|
|
201
164
|
// Automatically set modal's width for larger viewports
|
|
@@ -205,20 +168,11 @@
|
|
|
205
168
|
}
|
|
206
169
|
|
|
207
170
|
.modal-dialog-scrollable {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
.modal-content {
|
|
211
|
-
max-height: subtract(100vh, $modal-dialog-margin-y-sm-up * 2);
|
|
212
|
-
}
|
|
171
|
+
height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
|
|
213
172
|
}
|
|
214
173
|
|
|
215
174
|
.modal-dialog-centered {
|
|
216
175
|
min-height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
|
|
217
|
-
|
|
218
|
-
&::before {
|
|
219
|
-
height: subtract(100vh, $modal-dialog-margin-y-sm-up * 2);
|
|
220
|
-
height: min-content;
|
|
221
|
-
}
|
|
222
176
|
}
|
|
223
177
|
|
|
224
178
|
.modal-content {
|
|
@@ -238,3 +192,37 @@
|
|
|
238
192
|
@include media-breakpoint-up(xl) {
|
|
239
193
|
.modal-xl { max-width: $modal-xl; }
|
|
240
194
|
}
|
|
195
|
+
|
|
196
|
+
// scss-docs-start modal-fullscreen-loop
|
|
197
|
+
@each $breakpoint in map-keys($grid-breakpoints) {
|
|
198
|
+
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
|
199
|
+
$postfix: if($infix != "", $infix + "-down", "");
|
|
200
|
+
|
|
201
|
+
@include media-breakpoint-down($breakpoint) {
|
|
202
|
+
.modal-fullscreen#{$postfix} {
|
|
203
|
+
width: 100vw;
|
|
204
|
+
max-width: none;
|
|
205
|
+
height: 100%;
|
|
206
|
+
margin: 0;
|
|
207
|
+
|
|
208
|
+
.modal-content {
|
|
209
|
+
height: 100%;
|
|
210
|
+
border: 0;
|
|
211
|
+
@include border-radius(0);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.modal-header {
|
|
215
|
+
@include border-radius(0);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
.modal-body {
|
|
219
|
+
overflow-y: auto;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
.modal-footer {
|
|
223
|
+
@include border-radius(0);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
// scss-docs-end modal-fullscreen-loop
|
|
@@ -14,10 +14,16 @@
|
|
|
14
14
|
.nav-link {
|
|
15
15
|
display: block;
|
|
16
16
|
padding: $nav-link-padding-y $nav-link-padding-x;
|
|
17
|
+
@include font-size($nav-link-font-size);
|
|
18
|
+
font-weight: $nav-link-font-weight;
|
|
19
|
+
color: $nav-link-color;
|
|
17
20
|
text-decoration: if($link-decoration == none, null, none);
|
|
21
|
+
@include transition($nav-link-transition);
|
|
18
22
|
|
|
19
|
-
|
|
20
|
-
|
|
23
|
+
&:hover,
|
|
24
|
+
&:focus {
|
|
25
|
+
color: $nav-link-hover-color;
|
|
26
|
+
text-decoration: if($link-hover-decoration == underline, none, null);
|
|
21
27
|
}
|
|
22
28
|
|
|
23
29
|
// Disabled state lightens text
|
|
@@ -37,11 +43,15 @@
|
|
|
37
43
|
|
|
38
44
|
.nav-link {
|
|
39
45
|
margin-bottom: -$nav-tabs-border-width;
|
|
46
|
+
background: none;
|
|
40
47
|
border: $nav-tabs-border-width solid transparent;
|
|
41
48
|
@include border-top-radius($nav-tabs-border-radius);
|
|
42
49
|
|
|
43
|
-
|
|
50
|
+
&:hover,
|
|
51
|
+
&:focus {
|
|
44
52
|
border-color: $nav-tabs-link-hover-border-color;
|
|
53
|
+
// Prevents active .nav-link tab overlapping focus outline of previous/next .nav-link
|
|
54
|
+
isolation: isolate;
|
|
45
55
|
}
|
|
46
56
|
|
|
47
57
|
&.disabled {
|
|
@@ -73,13 +83,15 @@
|
|
|
73
83
|
|
|
74
84
|
.nav-pills {
|
|
75
85
|
.nav-link {
|
|
86
|
+
background: none;
|
|
87
|
+
border: 0;
|
|
76
88
|
@include border-radius($nav-pills-border-radius);
|
|
77
89
|
}
|
|
78
90
|
|
|
79
91
|
.nav-link.active,
|
|
80
92
|
.show > .nav-link {
|
|
81
93
|
color: $nav-pills-link-active-color;
|
|
82
|
-
|
|
94
|
+
@include gradient-bg($nav-pills-link-active-bg);
|
|
83
95
|
}
|
|
84
96
|
}
|
|
85
97
|
|
|
@@ -105,6 +117,13 @@
|
|
|
105
117
|
}
|
|
106
118
|
}
|
|
107
119
|
|
|
120
|
+
.nav-fill,
|
|
121
|
+
.nav-justified {
|
|
122
|
+
.nav-item .nav-link {
|
|
123
|
+
width: 100%; // Make sure button will grow
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
108
127
|
|
|
109
128
|
// Tabbable tabs
|
|
110
129
|
//
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
// Navbar brand
|
|
5
5
|
// Navbar nav
|
|
6
6
|
// Navbar text
|
|
7
|
-
// Navbar divider
|
|
8
7
|
// Responsive navbar
|
|
9
8
|
// Navbar position
|
|
10
9
|
// Navbar themes
|
|
@@ -21,19 +20,24 @@
|
|
|
21
20
|
flex-wrap: wrap; // allow us to do the line break for collapsing content
|
|
22
21
|
align-items: center;
|
|
23
22
|
justify-content: space-between; // space out brand from logo
|
|
24
|
-
padding: $navbar-padding-y
|
|
23
|
+
padding-top: $navbar-padding-y;
|
|
24
|
+
padding-right: $navbar-padding-x; // default: null
|
|
25
|
+
padding-bottom: $navbar-padding-y;
|
|
26
|
+
padding-left: $navbar-padding-x; // default: null
|
|
27
|
+
@include gradient-bg();
|
|
25
28
|
|
|
26
29
|
// Because flex properties aren't inherited, we need to redeclare these first
|
|
27
30
|
// few properties so that content nested within behave properly.
|
|
31
|
+
// The `flex-wrap` property is inherited to simplify the expanded navbars
|
|
28
32
|
%container-flex-properties {
|
|
29
33
|
display: flex;
|
|
30
|
-
flex-wrap:
|
|
34
|
+
flex-wrap: inherit;
|
|
31
35
|
align-items: center;
|
|
32
36
|
justify-content: space-between;
|
|
33
37
|
}
|
|
34
38
|
|
|
35
|
-
.container,
|
|
36
|
-
.container-fluid {
|
|
39
|
+
> .container,
|
|
40
|
+
> .container-fluid {
|
|
37
41
|
@extend %container-flex-properties;
|
|
38
42
|
}
|
|
39
43
|
|
|
@@ -50,16 +54,16 @@
|
|
|
50
54
|
// Used for brand, project, or site names.
|
|
51
55
|
|
|
52
56
|
.navbar-brand {
|
|
53
|
-
display: inline-block;
|
|
54
57
|
padding-top: $navbar-brand-padding-y;
|
|
55
58
|
padding-bottom: $navbar-brand-padding-y;
|
|
56
|
-
margin-right: $navbar-
|
|
59
|
+
margin-right: $navbar-brand-margin-end;
|
|
57
60
|
@include font-size($navbar-brand-font-size);
|
|
58
|
-
|
|
61
|
+
text-decoration: if($link-decoration == none, null, none);
|
|
59
62
|
white-space: nowrap;
|
|
60
63
|
|
|
61
|
-
|
|
62
|
-
|
|
64
|
+
&:hover,
|
|
65
|
+
&:focus {
|
|
66
|
+
text-decoration: if($link-hover-decoration == underline, none, null);
|
|
63
67
|
}
|
|
64
68
|
}
|
|
65
69
|
|
|
@@ -82,7 +86,6 @@
|
|
|
82
86
|
|
|
83
87
|
.dropdown-menu {
|
|
84
88
|
position: static;
|
|
85
|
-
float: none;
|
|
86
89
|
}
|
|
87
90
|
}
|
|
88
91
|
|
|
@@ -92,7 +95,6 @@
|
|
|
92
95
|
//
|
|
93
96
|
|
|
94
97
|
.navbar-text {
|
|
95
|
-
display: inline-block;
|
|
96
98
|
padding-top: $nav-link-padding-y;
|
|
97
99
|
padding-bottom: $nav-link-padding-y;
|
|
98
100
|
}
|
|
@@ -122,10 +124,17 @@
|
|
|
122
124
|
background-color: transparent; // remove default button style
|
|
123
125
|
border: $border-width solid transparent; // remove default button style
|
|
124
126
|
@include border-radius($navbar-toggler-border-radius);
|
|
127
|
+
@include transition($navbar-toggler-transition);
|
|
125
128
|
|
|
126
|
-
|
|
129
|
+
&:hover {
|
|
127
130
|
text-decoration: none;
|
|
128
131
|
}
|
|
132
|
+
|
|
133
|
+
&:focus {
|
|
134
|
+
text-decoration: none;
|
|
135
|
+
outline: 0;
|
|
136
|
+
box-shadow: 0 0 0 $navbar-toggler-focus-width;
|
|
137
|
+
}
|
|
129
138
|
}
|
|
130
139
|
|
|
131
140
|
// Keep as a separate element so folks can easily override it with another icon
|
|
@@ -135,15 +144,17 @@
|
|
|
135
144
|
width: 1.5em;
|
|
136
145
|
height: 1.5em;
|
|
137
146
|
vertical-align: middle;
|
|
138
|
-
|
|
139
|
-
background:
|
|
147
|
+
background-repeat: no-repeat;
|
|
148
|
+
background-position: center;
|
|
149
|
+
background-size: 100%;
|
|
140
150
|
}
|
|
141
151
|
|
|
142
152
|
.navbar-nav-scroll {
|
|
143
|
-
max-height: $
|
|
153
|
+
max-height: var(--#{$variable-prefix}scroll-height, 75vh);
|
|
144
154
|
overflow-y: auto;
|
|
145
155
|
}
|
|
146
156
|
|
|
157
|
+
// scss-docs-start navbar-expand-loop
|
|
147
158
|
// Generate series of `.navbar-expand-*` responsive classes for configuring
|
|
148
159
|
// where your navbar collapses.
|
|
149
160
|
.navbar-expand {
|
|
@@ -151,27 +162,10 @@
|
|
|
151
162
|
$next: breakpoint-next($breakpoint, $grid-breakpoints);
|
|
152
163
|
$infix: breakpoint-infix($next, $grid-breakpoints);
|
|
153
164
|
|
|
165
|
+
// stylelint-disable-next-line scss/selector-no-union-class-name
|
|
154
166
|
&#{$infix} {
|
|
155
|
-
@include media-breakpoint-down($breakpoint) {
|
|
156
|
-
%container-navbar-expand-#{$breakpoint} {
|
|
157
|
-
padding-right: 0;
|
|
158
|
-
padding-left: 0;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
> .container,
|
|
162
|
-
> .container-fluid {
|
|
163
|
-
@extend %container-navbar-expand-#{$breakpoint};
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
@each $size, $container-max-width in $container-max-widths {
|
|
167
|
-
> .container#{breakpoint-infix($size, $container-max-widths)} {
|
|
168
|
-
@extend %container-navbar-expand-#{$breakpoint};
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
|
|
173
167
|
@include media-breakpoint-up($next) {
|
|
174
|
-
flex-
|
|
168
|
+
flex-wrap: nowrap;
|
|
175
169
|
justify-content: flex-start;
|
|
176
170
|
|
|
177
171
|
.navbar-nav {
|
|
@@ -187,30 +181,12 @@
|
|
|
187
181
|
}
|
|
188
182
|
}
|
|
189
183
|
|
|
190
|
-
// For nesting containers, have to redeclare for alignment purposes
|
|
191
|
-
%container-nesting-#{$breakpoint} {
|
|
192
|
-
flex-wrap: nowrap;
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
> .container,
|
|
196
|
-
> .container-fluid {
|
|
197
|
-
@extend %container-nesting-#{$breakpoint};
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
@each $size, $container-max-width in $container-max-widths {
|
|
201
|
-
> .container#{breakpoint-infix($size, $container-max-widths)} {
|
|
202
|
-
@extend %container-nesting-#{$breakpoint};
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
|
|
206
184
|
.navbar-nav-scroll {
|
|
207
185
|
overflow: visible;
|
|
208
186
|
}
|
|
209
187
|
|
|
210
188
|
.navbar-collapse {
|
|
211
189
|
display: flex !important; // stylelint-disable-line declaration-no-important
|
|
212
|
-
|
|
213
|
-
// Changes flex-bases to auto because of an IE10 bug
|
|
214
190
|
flex-basis: auto;
|
|
215
191
|
}
|
|
216
192
|
|
|
@@ -221,6 +197,7 @@
|
|
|
221
197
|
}
|
|
222
198
|
}
|
|
223
199
|
}
|
|
200
|
+
// scss-docs-end navbar-expand-loop
|
|
224
201
|
|
|
225
202
|
|
|
226
203
|
// Navbar themes
|
|
@@ -232,7 +209,8 @@
|
|
|
232
209
|
.navbar-brand {
|
|
233
210
|
color: $navbar-light-brand-color;
|
|
234
211
|
|
|
235
|
-
|
|
212
|
+
&:hover,
|
|
213
|
+
&:focus {
|
|
236
214
|
color: $navbar-light-brand-hover-color;
|
|
237
215
|
}
|
|
238
216
|
}
|
|
@@ -241,7 +219,8 @@
|
|
|
241
219
|
.nav-link {
|
|
242
220
|
color: $navbar-light-color;
|
|
243
221
|
|
|
244
|
-
|
|
222
|
+
&:hover,
|
|
223
|
+
&:focus {
|
|
245
224
|
color: $navbar-light-hover-color;
|
|
246
225
|
}
|
|
247
226
|
|
|
@@ -251,8 +230,6 @@
|
|
|
251
230
|
}
|
|
252
231
|
|
|
253
232
|
.show > .nav-link,
|
|
254
|
-
.active > .nav-link,
|
|
255
|
-
.nav-link.show,
|
|
256
233
|
.nav-link.active {
|
|
257
234
|
color: $navbar-light-active-color;
|
|
258
235
|
}
|
|
@@ -269,12 +246,11 @@
|
|
|
269
246
|
|
|
270
247
|
.navbar-text {
|
|
271
248
|
color: $navbar-light-color;
|
|
272
|
-
a {
|
|
273
|
-
color: $navbar-light-active-color;
|
|
274
249
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
250
|
+
a,
|
|
251
|
+
a:hover,
|
|
252
|
+
a:focus {
|
|
253
|
+
color: $navbar-light-active-color;
|
|
278
254
|
}
|
|
279
255
|
}
|
|
280
256
|
}
|
|
@@ -284,7 +260,8 @@
|
|
|
284
260
|
.navbar-brand {
|
|
285
261
|
color: $navbar-dark-brand-color;
|
|
286
262
|
|
|
287
|
-
|
|
263
|
+
&:hover,
|
|
264
|
+
&:focus {
|
|
288
265
|
color: $navbar-dark-brand-hover-color;
|
|
289
266
|
}
|
|
290
267
|
}
|
|
@@ -293,7 +270,8 @@
|
|
|
293
270
|
.nav-link {
|
|
294
271
|
color: $navbar-dark-color;
|
|
295
272
|
|
|
296
|
-
|
|
273
|
+
&:hover,
|
|
274
|
+
&:focus {
|
|
297
275
|
color: $navbar-dark-hover-color;
|
|
298
276
|
}
|
|
299
277
|
|
|
@@ -303,8 +281,6 @@
|
|
|
303
281
|
}
|
|
304
282
|
|
|
305
283
|
.show > .nav-link,
|
|
306
|
-
.active > .nav-link,
|
|
307
|
-
.nav-link.show,
|
|
308
284
|
.nav-link.active {
|
|
309
285
|
color: $navbar-dark-active-color;
|
|
310
286
|
}
|
|
@@ -321,12 +297,10 @@
|
|
|
321
297
|
|
|
322
298
|
.navbar-text {
|
|
323
299
|
color: $navbar-dark-color;
|
|
324
|
-
a
|
|
300
|
+
a,
|
|
301
|
+
a:hover,
|
|
302
|
+
a:focus {
|
|
325
303
|
color: $navbar-dark-active-color;
|
|
326
|
-
|
|
327
|
-
@include hover-focus() {
|
|
328
|
-
color: $navbar-dark-active-color;
|
|
329
|
-
}
|
|
330
304
|
}
|
|
331
305
|
}
|
|
332
306
|
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
.offcanvas {
|
|
2
|
+
position: fixed;
|
|
3
|
+
bottom: 0;
|
|
4
|
+
z-index: $zindex-offcanvas;
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
max-width: 100%;
|
|
8
|
+
color: $offcanvas-color;
|
|
9
|
+
visibility: hidden;
|
|
10
|
+
background-color: $offcanvas-bg-color;
|
|
11
|
+
background-clip: padding-box;
|
|
12
|
+
outline: 0;
|
|
13
|
+
@include box-shadow($offcanvas-box-shadow);
|
|
14
|
+
@include transition(transform $offcanvas-transition-duration ease-in-out);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.offcanvas-header {
|
|
18
|
+
display: flex;
|
|
19
|
+
align-items: center;
|
|
20
|
+
justify-content: space-between;
|
|
21
|
+
padding: $offcanvas-padding-y $offcanvas-padding-x;
|
|
22
|
+
|
|
23
|
+
.btn-close {
|
|
24
|
+
padding: ($offcanvas-padding-y / 2) ($offcanvas-padding-x / 2);
|
|
25
|
+
margin: ($offcanvas-padding-y / -2) ($offcanvas-padding-x / -2) ($offcanvas-padding-y / -2) auto;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.offcanvas-title {
|
|
30
|
+
margin-bottom: 0;
|
|
31
|
+
line-height: $offcanvas-title-line-height;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.offcanvas-body {
|
|
35
|
+
flex-grow: 1;
|
|
36
|
+
padding: $offcanvas-padding-y $offcanvas-padding-x;
|
|
37
|
+
overflow-y: auto;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.offcanvas-start {
|
|
41
|
+
top: 0;
|
|
42
|
+
left: 0;
|
|
43
|
+
width: $offcanvas-horizontal-width;
|
|
44
|
+
border-right: $offcanvas-border-width solid $offcanvas-border-color;
|
|
45
|
+
transform: translateX(-100%);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.offcanvas-end {
|
|
49
|
+
top: 0;
|
|
50
|
+
right: 0;
|
|
51
|
+
width: $offcanvas-horizontal-width;
|
|
52
|
+
border-left: $offcanvas-border-width solid $offcanvas-border-color;
|
|
53
|
+
transform: translateX(100%);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.offcanvas-top {
|
|
57
|
+
top: 0;
|
|
58
|
+
right: 0;
|
|
59
|
+
left: 0;
|
|
60
|
+
height: $offcanvas-vertical-height;
|
|
61
|
+
max-height: 100%;
|
|
62
|
+
border-bottom: $offcanvas-border-width solid $offcanvas-border-color;
|
|
63
|
+
transform: translateY(-100%);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.offcanvas-bottom {
|
|
67
|
+
right: 0;
|
|
68
|
+
left: 0;
|
|
69
|
+
height: $offcanvas-vertical-height;
|
|
70
|
+
max-height: 100%;
|
|
71
|
+
border-top: $offcanvas-border-width solid $offcanvas-border-color;
|
|
72
|
+
transform: translateY(100%);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.offcanvas.show {
|
|
76
|
+
transform: none;
|
|
77
|
+
}
|
|
@@ -1,60 +1,49 @@
|
|
|
1
1
|
.pagination {
|
|
2
2
|
display: flex;
|
|
3
3
|
@include list-unstyled();
|
|
4
|
-
@include border-radius();
|
|
5
4
|
}
|
|
6
5
|
|
|
7
6
|
.page-link {
|
|
8
7
|
position: relative;
|
|
9
8
|
display: block;
|
|
10
|
-
padding: $pagination-padding-y $pagination-padding-x;
|
|
11
|
-
margin-left: -$pagination-border-width;
|
|
12
|
-
line-height: $pagination-line-height;
|
|
13
9
|
color: $pagination-color;
|
|
14
10
|
text-decoration: if($link-decoration == none, null, none);
|
|
15
11
|
background-color: $pagination-bg;
|
|
16
12
|
border: $pagination-border-width solid $pagination-border-color;
|
|
13
|
+
@include transition($pagination-transition);
|
|
17
14
|
|
|
18
15
|
&:hover {
|
|
19
16
|
z-index: 2;
|
|
20
17
|
color: $pagination-hover-color;
|
|
21
|
-
text-decoration: none;
|
|
18
|
+
text-decoration: if($link-hover-decoration == underline, none, null);
|
|
22
19
|
background-color: $pagination-hover-bg;
|
|
23
20
|
border-color: $pagination-hover-border-color;
|
|
24
21
|
}
|
|
25
22
|
|
|
26
23
|
&:focus {
|
|
27
24
|
z-index: 3;
|
|
25
|
+
color: $pagination-focus-color;
|
|
26
|
+
background-color: $pagination-focus-bg;
|
|
28
27
|
outline: $pagination-focus-outline;
|
|
29
28
|
box-shadow: $pagination-focus-box-shadow;
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
31
|
|
|
33
32
|
.page-item {
|
|
34
|
-
&:first-child {
|
|
35
|
-
|
|
36
|
-
margin-left: 0;
|
|
37
|
-
@include border-left-radius($border-radius);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
&:last-child {
|
|
41
|
-
.page-link {
|
|
42
|
-
@include border-right-radius($border-radius);
|
|
43
|
-
}
|
|
33
|
+
&:not(:first-child) .page-link {
|
|
34
|
+
margin-left: $pagination-margin-start;
|
|
44
35
|
}
|
|
45
36
|
|
|
46
37
|
&.active .page-link {
|
|
47
38
|
z-index: 3;
|
|
48
39
|
color: $pagination-active-color;
|
|
49
|
-
|
|
40
|
+
@include gradient-bg($pagination-active-bg);
|
|
50
41
|
border-color: $pagination-active-border-color;
|
|
51
42
|
}
|
|
52
43
|
|
|
53
44
|
&.disabled .page-link {
|
|
54
45
|
color: $pagination-disabled-color;
|
|
55
46
|
pointer-events: none;
|
|
56
|
-
// Opinionated: remove the "hand" cursor set previously for .page-link
|
|
57
|
-
cursor: auto;
|
|
58
47
|
background-color: $pagination-disabled-bg;
|
|
59
48
|
border-color: $pagination-disabled-border-color;
|
|
60
49
|
}
|
|
@@ -64,11 +53,12 @@
|
|
|
64
53
|
//
|
|
65
54
|
// Sizing
|
|
66
55
|
//
|
|
56
|
+
@include pagination-size($pagination-padding-y, $pagination-padding-x, null, $pagination-border-radius);
|
|
67
57
|
|
|
68
58
|
.pagination-lg {
|
|
69
|
-
@include pagination-size($pagination-padding-y-lg, $pagination-padding-x-lg, $font-size-lg, $
|
|
59
|
+
@include pagination-size($pagination-padding-y-lg, $pagination-padding-x-lg, $font-size-lg, $pagination-border-radius-lg);
|
|
70
60
|
}
|
|
71
61
|
|
|
72
62
|
.pagination-sm {
|
|
73
|
-
@include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $
|
|
63
|
+
@include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $pagination-border-radius-sm);
|
|
74
64
|
}
|