jobdone-shared-files 0.0.1-beta.5 → 0.0.1-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/package.json +2 -2
  2. package/style/scss/Bootstrap/_accordion.scss +158 -0
  3. package/style/scss/Bootstrap/_alert.scss +68 -0
  4. package/style/scss/Bootstrap/_badge.scss +38 -0
  5. package/style/scss/Bootstrap/_breadcrumb.scss +40 -0
  6. package/style/scss/Bootstrap/_button-group.scss +142 -0
  7. package/style/scss/Bootstrap/_buttons.scss +207 -0
  8. package/style/scss/Bootstrap/_card.scss +238 -0
  9. package/style/scss/Bootstrap/_carousel.scss +238 -0
  10. package/style/scss/Bootstrap/_close.scss +61 -0
  11. package/style/scss/Bootstrap/_containers.scss +41 -0
  12. package/style/scss/Bootstrap/_dropdown.scss +250 -0
  13. package/style/scss/Bootstrap/_forms.scss +9 -0
  14. package/style/scss/Bootstrap/_grid.scss +33 -0
  15. package/style/scss/Bootstrap/_helpers.scss +10 -0
  16. package/style/scss/Bootstrap/_images.scss +42 -0
  17. package/style/scss/Bootstrap/_list-group.scss +204 -0
  18. package/style/scss/Bootstrap/_maps.scss +121 -0
  19. package/style/scss/Bootstrap/_modal.scss +237 -0
  20. package/style/scss/Bootstrap/_nav.scss +172 -0
  21. package/style/scss/Bootstrap/_navbar.scss +286 -0
  22. package/style/scss/Bootstrap/_offcanvas.scss +146 -0
  23. package/style/scss/Bootstrap/_pagination.scss +109 -0
  24. package/style/scss/Bootstrap/_placeholders.scss +51 -0
  25. package/style/scss/Bootstrap/_popover.scss +196 -0
  26. package/style/scss/Bootstrap/_progress.scss +68 -0
  27. package/style/scss/Bootstrap/_reboot.scss +610 -0
  28. package/style/scss/Bootstrap/_root.scss +195 -0
  29. package/style/scss/Bootstrap/_spinners.scss +85 -0
  30. package/style/scss/Bootstrap/_tables.scss +164 -0
  31. package/style/scss/Bootstrap/_toasts.scss +73 -0
  32. package/style/scss/Bootstrap/_tooltip.scss +120 -0
  33. package/style/scss/Bootstrap/_transitions.scss +27 -0
  34. package/style/scss/Bootstrap/_type.scss +106 -0
  35. package/style/scss/Bootstrap/_utilities.scss +748 -0
  36. package/style/scss/Bootstrap/_variables-dark.scss +70 -0
  37. package/style/scss/Bootstrap/_variables.scss +1703 -0
  38. package/style/scss/Bootstrap/bootstrap-grid.scss +66 -0
  39. package/style/scss/Bootstrap/bootstrap-reboot.scss +10 -0
  40. package/style/scss/Bootstrap/bootstrap-utilities.scss +19 -0
  41. package/style/scss/Bootstrap/bootstrap.scss +52 -0
  42. package/style/scss/Bootstrap/forms/_floating-labels.scss +90 -0
  43. package/style/scss/Bootstrap/forms/_form-check.scss +188 -0
  44. package/style/scss/Bootstrap/forms/_form-control.scss +201 -0
  45. package/style/scss/Bootstrap/forms/_form-range.scss +91 -0
  46. package/style/scss/Bootstrap/forms/_form-select.scss +81 -0
  47. package/style/scss/Bootstrap/forms/_form-text.scss +11 -0
  48. package/style/scss/Bootstrap/forms/_input-group.scss +132 -0
  49. package/style/scss/Bootstrap/forms/_labels.scss +36 -0
  50. package/style/scss/Bootstrap/forms/_validation.scss +12 -0
  51. package/style/scss/Bootstrap/helpers/_clearfix.scss +3 -0
  52. package/style/scss/Bootstrap/helpers/_color-bg.scss +10 -0
  53. package/style/scss/Bootstrap/helpers/_colored-links.scss +12 -0
  54. package/style/scss/Bootstrap/helpers/_position.scss +36 -0
  55. package/style/scss/Bootstrap/helpers/_ratio.scss +26 -0
  56. package/style/scss/Bootstrap/helpers/_stacks.scss +15 -0
  57. package/style/scss/Bootstrap/helpers/_stretched-link.scss +15 -0
  58. package/style/scss/Bootstrap/helpers/_text-truncation.scss +7 -0
  59. package/style/scss/Bootstrap/helpers/_visually-hidden.scss +8 -0
  60. package/style/scss/Bootstrap/helpers/_vr.scss +8 -0
  61. package/style/scss/Bootstrap/utilities/_api.scss +47 -0
  62. package/style/scss/Layout/LayoutBase.scss +939 -0
  63. package/style/scss/Layout/LayoutProject.scss +124 -0
  64. package/style/scss/Layout/LayoutSinglePage.scss +14 -0
  65. package/style/scss/Layout/LayoutTwoColumn.scss +56 -0
@@ -0,0 +1,237 @@
1
+ // stylelint-disable function-disallowed-list
2
+
3
+ // .modal-open - body class for killing the scroll
4
+ // .modal - container to scroll within
5
+ // .modal-dialog - positioning shell for the actual modal
6
+ // .modal-content - actual modal w/ bg and corners and stuff
7
+
8
+
9
+ // Container that the modal scrolls within
10
+ .modal {
11
+ // scss-docs-start modal-css-vars
12
+ --#{$prefix}modal-zindex: #{$zindex-modal};
13
+ --#{$prefix}modal-width: #{$modal-md};
14
+ --#{$prefix}modal-padding: #{$modal-inner-padding};
15
+ --#{$prefix}modal-margin: #{$modal-dialog-margin};
16
+ --#{$prefix}modal-color: #{$modal-content-color};
17
+ --#{$prefix}modal-bg: #{$modal-content-bg};
18
+ --#{$prefix}modal-border-color: #{$modal-content-border-color};
19
+ --#{$prefix}modal-border-width: #{$modal-content-border-width};
20
+ --#{$prefix}modal-border-radius: #{$modal-content-border-radius};
21
+ --#{$prefix}modal-box-shadow: #{$modal-content-box-shadow-xs};
22
+ --#{$prefix}modal-inner-border-radius: #{$modal-content-inner-border-radius};
23
+ --#{$prefix}modal-header-padding-x: #{$modal-header-padding-x};
24
+ --#{$prefix}modal-header-padding-y: #{$modal-header-padding-y};
25
+ --#{$prefix}modal-header-padding: #{$modal-header-padding}; // Todo in v6: Split this padding into x and y
26
+ --#{$prefix}modal-header-border-color: #{$modal-header-border-color};
27
+ --#{$prefix}modal-header-border-width: #{$modal-header-border-width};
28
+ --#{$prefix}modal-title-line-height: #{$modal-title-line-height};
29
+ --#{$prefix}modal-footer-gap: #{$modal-footer-margin-between};
30
+ --#{$prefix}modal-footer-bg: #{$modal-footer-bg};
31
+ --#{$prefix}modal-footer-border-color: #{$modal-footer-border-color};
32
+ --#{$prefix}modal-footer-border-width: #{$modal-footer-border-width};
33
+ // scss-docs-end modal-css-vars
34
+
35
+ position: fixed;
36
+ top: 0;
37
+ left: 0;
38
+ z-index: var(--#{$prefix}modal-zindex);
39
+ display: none;
40
+ width: 100%;
41
+ height: 100%;
42
+ overflow-x: hidden;
43
+ overflow-y: auto;
44
+ // Prevent Chrome on Windows from adding a focus outline. For details, see
45
+ // https://github.com/twbs/bootstrap/pull/10951.
46
+ outline: 0;
47
+ // We deliberately don't use `-webkit-overflow-scrolling: touch;` due to a
48
+ // gnarly iOS Safari bug: https://bugs.webkit.org/show_bug.cgi?id=158342
49
+ // See also https://github.com/twbs/bootstrap/issues/17695
50
+ }
51
+
52
+ // Shell div to position the modal with bottom padding
53
+ .modal-dialog {
54
+ position: relative;
55
+ width: auto;
56
+ margin: var(--#{$prefix}modal-margin);
57
+ // allow clicks to pass through for custom click handling to close modal
58
+ pointer-events: none;
59
+
60
+ // When fading in the modal, animate it to slide down
61
+ .modal.fade & {
62
+ @include transition($modal-transition);
63
+ transform: $modal-fade-transform;
64
+ }
65
+ .modal.show & {
66
+ transform: $modal-show-transform;
67
+ }
68
+
69
+ // When trying to close, animate focus to scale
70
+ .modal.modal-static & {
71
+ transform: $modal-scale-transform;
72
+ }
73
+ }
74
+
75
+ .modal-dialog-scrollable {
76
+ height: calc(100% - var(--#{$prefix}modal-margin) * 2);
77
+
78
+ .modal-content {
79
+ max-height: 100%;
80
+ overflow: hidden;
81
+ }
82
+
83
+ .modal-body {
84
+ overflow-y: auto;
85
+ }
86
+ }
87
+
88
+ .modal-dialog-centered {
89
+ display: flex;
90
+ align-items: center;
91
+ min-height: calc(100% - var(--#{$prefix}modal-margin) * 2);
92
+ }
93
+
94
+ // Actual modal
95
+ .modal-content {
96
+ position: relative;
97
+ display: flex;
98
+ flex-direction: column;
99
+ width: 100%; // Ensure `.modal-content` extends the full width of the parent `.modal-dialog`
100
+ // counteract the pointer-events: none; in the .modal-dialog
101
+ color: var(--#{$prefix}modal-color);
102
+ pointer-events: auto;
103
+ background-color: var(--#{$prefix}modal-bg);
104
+ background-clip: padding-box;
105
+ border: var(--#{$prefix}modal-border-width) solid var(--#{$prefix}modal-border-color);
106
+ @include border-radius(var(--#{$prefix}modal-border-radius));
107
+ @include box-shadow(var(--#{$prefix}modal-box-shadow));
108
+ // Remove focus outline from opened modal
109
+ outline: 0;
110
+ }
111
+
112
+ // Modal background
113
+ .modal-backdrop {
114
+ // scss-docs-start modal-backdrop-css-vars
115
+ --#{$prefix}backdrop-zindex: #{$zindex-modal-backdrop};
116
+ --#{$prefix}backdrop-bg: #{$modal-backdrop-bg};
117
+ --#{$prefix}backdrop-opacity: #{$modal-backdrop-opacity};
118
+ // scss-docs-end modal-backdrop-css-vars
119
+
120
+ @include overlay-backdrop(var(--#{$prefix}backdrop-zindex), var(--#{$prefix}backdrop-bg), var(--#{$prefix}backdrop-opacity));
121
+ }
122
+
123
+ // Modal header
124
+ // Top section of the modal w/ title and dismiss
125
+ .modal-header {
126
+ display: flex;
127
+ flex-shrink: 0;
128
+ align-items: center;
129
+ justify-content: space-between; // Put modal header elements (title and dismiss) on opposite ends
130
+ padding: var(--#{$prefix}modal-header-padding);
131
+ border-bottom: var(--#{$prefix}modal-header-border-width) solid var(--#{$prefix}modal-header-border-color);
132
+ @include border-top-radius(var(--#{$prefix}modal-inner-border-radius));
133
+
134
+ .btn-close {
135
+ padding: calc(var(--#{$prefix}modal-header-padding-y) * .5) calc(var(--#{$prefix}modal-header-padding-x) * .5);
136
+ margin: calc(-.5 * var(--#{$prefix}modal-header-padding-y)) calc(-.5 * var(--#{$prefix}modal-header-padding-x)) calc(-.5 * var(--#{$prefix}modal-header-padding-y)) auto;
137
+ }
138
+ }
139
+
140
+ // Title text within header
141
+ .modal-title {
142
+ margin-bottom: 0;
143
+ line-height: var(--#{$prefix}modal-title-line-height);
144
+ }
145
+
146
+ // Modal body
147
+ // Where all modal content resides (sibling of .modal-header and .modal-footer)
148
+ .modal-body {
149
+ position: relative;
150
+ // Enable `flex-grow: 1` so that the body take up as much space as possible
151
+ // when there should be a fixed height on `.modal-dialog`.
152
+ flex: 1 1 auto;
153
+ padding: var(--#{$prefix}modal-padding);
154
+ }
155
+
156
+ // Footer (for actions)
157
+ .modal-footer {
158
+ display: flex;
159
+ flex-shrink: 0;
160
+ flex-wrap: wrap;
161
+ align-items: center; // vertically center
162
+ justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items
163
+ padding: calc(var(--#{$prefix}modal-padding) - var(--#{$prefix}modal-footer-gap) * .5);
164
+ background-color: var(--#{$prefix}modal-footer-bg);
165
+ border-top: var(--#{$prefix}modal-footer-border-width) solid var(--#{$prefix}modal-footer-border-color);
166
+ @include border-bottom-radius(var(--#{$prefix}modal-inner-border-radius));
167
+
168
+ // Place margin between footer elements
169
+ // This solution is far from ideal because of the universal selector usage,
170
+ // but is needed to fix https://github.com/twbs/bootstrap/issues/24800
171
+ > * {
172
+ margin: calc(var(--#{$prefix}modal-footer-gap) * .5); // Todo in v6: replace with gap on parent class
173
+ }
174
+ }
175
+
176
+ // Scale up the modal
177
+ @include media-breakpoint-up(sm) {
178
+ .modal {
179
+ --#{$prefix}modal-margin: #{$modal-dialog-margin-y-sm-up};
180
+ --#{$prefix}modal-box-shadow: #{$modal-content-box-shadow-sm-up};
181
+ }
182
+
183
+ // Automatically set modal's width for larger viewports
184
+ .modal-dialog {
185
+ max-width: var(--#{$prefix}modal-width);
186
+ margin-right: auto;
187
+ margin-left: auto;
188
+ }
189
+
190
+ .modal-sm {
191
+ --#{$prefix}modal-width: #{$modal-sm};
192
+ }
193
+ }
194
+
195
+ @include media-breakpoint-up(lg) {
196
+ .modal-lg,
197
+ .modal-xl {
198
+ --#{$prefix}modal-width: #{$modal-lg};
199
+ }
200
+ }
201
+
202
+ @include media-breakpoint-up(xl) {
203
+ .modal-xl {
204
+ --#{$prefix}modal-width: #{$modal-xl};
205
+ }
206
+ }
207
+
208
+ // scss-docs-start modal-fullscreen-loop
209
+ @each $breakpoint in map-keys($grid-breakpoints) {
210
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
211
+ $postfix: if($infix != "", $infix + "-down", "");
212
+
213
+ @include media-breakpoint-down($breakpoint) {
214
+ .modal-fullscreen#{$postfix} {
215
+ width: 100vw;
216
+ max-width: none;
217
+ height: 100%;
218
+ margin: 0;
219
+
220
+ .modal-content {
221
+ height: 100%;
222
+ border: 0;
223
+ @include border-radius(0);
224
+ }
225
+
226
+ .modal-header,
227
+ .modal-footer {
228
+ @include border-radius(0);
229
+ }
230
+
231
+ .modal-body {
232
+ overflow-y: auto;
233
+ }
234
+ }
235
+ }
236
+ }
237
+ // scss-docs-end modal-fullscreen-loop
@@ -0,0 +1,172 @@
1
+ // Base class
2
+ //
3
+ // Kickstart any navigation component with a set of style resets. Works with
4
+ // `<nav>`s, `<ul>`s or `<ol>`s.
5
+
6
+ .nav {
7
+ // scss-docs-start nav-css-vars
8
+ --#{$prefix}nav-link-padding-x: #{$nav-link-padding-x};
9
+ --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};
10
+ @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);
11
+ --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
12
+ --#{$prefix}nav-link-color: #{$nav-link-color};
13
+ --#{$prefix}nav-link-hover-color: #{$nav-link-hover-color};
14
+ --#{$prefix}nav-link-disabled-color: #{$nav-link-disabled-color};
15
+ // scss-docs-end nav-css-vars
16
+
17
+ display: flex;
18
+ flex-wrap: wrap;
19
+ padding-left: 0;
20
+ margin-bottom: 0;
21
+ list-style: none;
22
+ }
23
+
24
+ .nav-link {
25
+ display: block;
26
+ padding: var(--#{$prefix}nav-link-padding-y) var(--#{$prefix}nav-link-padding-x);
27
+ @include font-size(var(--#{$prefix}nav-link-font-size));
28
+ font-weight: var(--#{$prefix}nav-link-font-weight);
29
+ color: var(--#{$prefix}nav-link-color);
30
+ text-decoration: if($link-decoration == none, null, none);
31
+ @include transition($nav-link-transition);
32
+
33
+ &:hover,
34
+ &:focus {
35
+ color: var(--#{$prefix}nav-link-hover-color);
36
+ text-decoration: if($link-hover-decoration == underline, none, null);
37
+ }
38
+
39
+ // Disabled state lightens text
40
+ &.disabled {
41
+ color: var(--#{$prefix}nav-link-disabled-color);
42
+ pointer-events: none;
43
+ cursor: default;
44
+ }
45
+ }
46
+
47
+ //
48
+ // Tabs
49
+ //
50
+
51
+ .nav-tabs {
52
+ // scss-docs-start nav-tabs-css-vars
53
+ --#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};
54
+ --#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};
55
+ --#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};
56
+ --#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};
57
+ --#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};
58
+ --#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};
59
+ --#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};
60
+ // scss-docs-end nav-tabs-css-vars
61
+
62
+ border-bottom: var(--#{$prefix}nav-tabs-border-width) solid var(--#{$prefix}nav-tabs-border-color);
63
+
64
+ .nav-link {
65
+ margin-bottom: calc(-1 * var(--#{$prefix}nav-tabs-border-width)); // stylelint-disable-line function-disallowed-list
66
+ background: none;
67
+ border: var(--#{$prefix}nav-tabs-border-width) solid transparent;
68
+ @include border-top-radius(var(--#{$prefix}nav-tabs-border-radius));
69
+
70
+ &:hover,
71
+ &:focus {
72
+ // Prevents active .nav-link tab overlapping focus outline of previous/next .nav-link
73
+ isolation: isolate;
74
+ border-color: var(--#{$prefix}nav-tabs-link-hover-border-color);
75
+ }
76
+
77
+ &.disabled,
78
+ &:disabled {
79
+ color: var(--#{$prefix}nav-link-disabled-color);
80
+ background-color: transparent;
81
+ border-color: transparent;
82
+ }
83
+ }
84
+
85
+ .nav-link.active,
86
+ .nav-item.show .nav-link {
87
+ color: var(--#{$prefix}nav-tabs-link-active-color);
88
+ background-color: var(--#{$prefix}nav-tabs-link-active-bg);
89
+ border-color: var(--#{$prefix}nav-tabs-link-active-border-color);
90
+ }
91
+
92
+ .dropdown-menu {
93
+ // Make dropdown border overlap tab border
94
+ margin-top: calc(-1 * var(--#{$prefix}nav-tabs-border-width)); // stylelint-disable-line function-disallowed-list
95
+ // Remove the top rounded corners here since there is a hard edge above the menu
96
+ @include border-top-radius(0);
97
+ }
98
+ }
99
+
100
+
101
+ //
102
+ // Pills
103
+ //
104
+
105
+ .nav-pills {
106
+ // scss-docs-start nav-pills-css-vars
107
+ --#{$prefix}nav-pills-border-radius: #{$nav-pills-border-radius};
108
+ --#{$prefix}nav-pills-link-active-color: #{$nav-pills-link-active-color};
109
+ --#{$prefix}nav-pills-link-active-bg: #{$nav-pills-link-active-bg};
110
+ // scss-docs-end nav-pills-css-vars
111
+
112
+ .nav-link {
113
+ background: none;
114
+ border: 0;
115
+ @include border-radius(var(--#{$prefix}nav-pills-border-radius));
116
+
117
+ &:disabled {
118
+ color: var(--#{$prefix}nav-link-disabled-color);
119
+ background-color: transparent;
120
+ border-color: transparent;
121
+ }
122
+ }
123
+
124
+ .nav-link.active,
125
+ .show > .nav-link {
126
+ color: var(--#{$prefix}nav-pills-link-active-color);
127
+ @include gradient-bg(var(--#{$prefix}nav-pills-link-active-bg));
128
+ }
129
+ }
130
+
131
+
132
+ //
133
+ // Justified variants
134
+ //
135
+
136
+ .nav-fill {
137
+ > .nav-link,
138
+ .nav-item {
139
+ flex: 1 1 auto;
140
+ text-align: center;
141
+ }
142
+ }
143
+
144
+ .nav-justified {
145
+ > .nav-link,
146
+ .nav-item {
147
+ flex-basis: 0;
148
+ flex-grow: 1;
149
+ text-align: center;
150
+ }
151
+ }
152
+
153
+ .nav-fill,
154
+ .nav-justified {
155
+ .nav-item .nav-link {
156
+ width: 100%; // Make sure button will grow
157
+ }
158
+ }
159
+
160
+
161
+ // Tabbable tabs
162
+ //
163
+ // Hide tabbable panes to start, show them when `.active`
164
+
165
+ .tab-content {
166
+ > .tab-pane {
167
+ display: none;
168
+ }
169
+ > .active {
170
+ display: block;
171
+ }
172
+ }
@@ -0,0 +1,286 @@
1
+ // Navbar
2
+ //
3
+ // Provide a static navbar from which we expand to create full-width, fixed, and
4
+ // other navbar variations.
5
+
6
+ .navbar {
7
+ // scss-docs-start navbar-css-vars
8
+ --#{$prefix}navbar-padding-x: #{if($navbar-padding-x == null, 0, $navbar-padding-x)};
9
+ --#{$prefix}navbar-padding-y: #{$navbar-padding-y};
10
+ --#{$prefix}navbar-color: #{$navbar-light-color};
11
+ --#{$prefix}navbar-hover-color: #{$navbar-light-hover-color};
12
+ --#{$prefix}navbar-disabled-color: #{$navbar-light-disabled-color};
13
+ --#{$prefix}navbar-active-color: #{$navbar-light-active-color};
14
+ --#{$prefix}navbar-brand-padding-y: #{$navbar-brand-padding-y};
15
+ --#{$prefix}navbar-brand-margin-end: #{$navbar-brand-margin-end};
16
+ --#{$prefix}navbar-brand-font-size: #{$navbar-brand-font-size};
17
+ --#{$prefix}navbar-brand-color: #{$navbar-light-brand-color};
18
+ --#{$prefix}navbar-brand-hover-color: #{$navbar-light-brand-hover-color};
19
+ --#{$prefix}navbar-nav-link-padding-x: #{$navbar-nav-link-padding-x};
20
+ --#{$prefix}navbar-toggler-padding-y: #{$navbar-toggler-padding-y};
21
+ --#{$prefix}navbar-toggler-padding-x: #{$navbar-toggler-padding-x};
22
+ --#{$prefix}navbar-toggler-font-size: #{$navbar-toggler-font-size};
23
+ --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-light-toggler-icon-bg)};
24
+ --#{$prefix}navbar-toggler-border-color: #{$navbar-light-toggler-border-color};
25
+ --#{$prefix}navbar-toggler-border-radius: #{$navbar-toggler-border-radius};
26
+ --#{$prefix}navbar-toggler-focus-width: #{$navbar-toggler-focus-width};
27
+ --#{$prefix}navbar-toggler-transition: #{$navbar-toggler-transition};
28
+ // scss-docs-end navbar-css-vars
29
+
30
+ position: relative;
31
+ display: flex;
32
+ flex-wrap: wrap; // allow us to do the line break for collapsing content
33
+ align-items: center;
34
+ justify-content: space-between; // space out brand from logo
35
+ padding: var(--#{$prefix}navbar-padding-y) var(--#{$prefix}navbar-padding-x);
36
+ @include gradient-bg();
37
+
38
+ // Because flex properties aren't inherited, we need to redeclare these first
39
+ // few properties so that content nested within behave properly.
40
+ // The `flex-wrap` property is inherited to simplify the expanded navbars
41
+ %container-flex-properties {
42
+ display: flex;
43
+ flex-wrap: inherit;
44
+ align-items: center;
45
+ justify-content: space-between;
46
+ }
47
+
48
+ > .container,
49
+ > .container-fluid {
50
+ @extend %container-flex-properties;
51
+ }
52
+
53
+ @each $breakpoint, $container-max-width in $container-max-widths {
54
+ > .container#{breakpoint-infix($breakpoint, $container-max-widths)} {
55
+ @extend %container-flex-properties;
56
+ }
57
+ }
58
+ }
59
+
60
+
61
+ // Navbar brand
62
+ //
63
+ // Used for brand, project, or site names.
64
+
65
+ .navbar-brand {
66
+ padding-top: var(--#{$prefix}navbar-brand-padding-y);
67
+ padding-bottom: var(--#{$prefix}navbar-brand-padding-y);
68
+ margin-right: var(--#{$prefix}navbar-brand-margin-end);
69
+ @include font-size(var(--#{$prefix}navbar-brand-font-size));
70
+ color: var(--#{$prefix}navbar-brand-color);
71
+ text-decoration: if($link-decoration == none, null, none);
72
+ white-space: nowrap;
73
+
74
+ &:hover,
75
+ &:focus {
76
+ color: var(--#{$prefix}navbar-brand-hover-color);
77
+ text-decoration: if($link-hover-decoration == underline, none, null);
78
+ }
79
+ }
80
+
81
+
82
+ // Navbar nav
83
+ //
84
+ // Custom navbar navigation (doesn't require `.nav`, but does make use of `.nav-link`).
85
+
86
+ .navbar-nav {
87
+ // scss-docs-start navbar-nav-css-vars
88
+ --#{$prefix}nav-link-padding-x: 0;
89
+ --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};
90
+ @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);
91
+ --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
92
+ --#{$prefix}nav-link-color: var(--#{$prefix}navbar-color);
93
+ --#{$prefix}nav-link-hover-color: var(--#{$prefix}navbar-hover-color);
94
+ --#{$prefix}nav-link-disabled-color: var(--#{$prefix}navbar-disabled-color);
95
+ // scss-docs-end navbar-nav-css-vars
96
+
97
+ display: flex;
98
+ flex-direction: column; // cannot use `inherit` to get the `.navbar`s value
99
+ padding-left: 0;
100
+ margin-bottom: 0;
101
+ list-style: none;
102
+
103
+ .show > .nav-link,
104
+ .nav-link.active {
105
+ color: var(--#{$prefix}navbar-active-color);
106
+ }
107
+
108
+ .dropdown-menu {
109
+ position: static;
110
+ }
111
+ }
112
+
113
+
114
+ // Navbar text
115
+ //
116
+ //
117
+
118
+ .navbar-text {
119
+ padding-top: $nav-link-padding-y;
120
+ padding-bottom: $nav-link-padding-y;
121
+ color: var(--#{$prefix}navbar-color);
122
+
123
+ a,
124
+ a:hover,
125
+ a:focus {
126
+ color: var(--#{$prefix}navbar-active-color);
127
+ }
128
+ }
129
+
130
+
131
+ // Responsive navbar
132
+ //
133
+ // Custom styles for responsive collapsing and toggling of navbar contents.
134
+ // Powered by the collapse Bootstrap JavaScript plugin.
135
+
136
+ // When collapsed, prevent the toggleable navbar contents from appearing in
137
+ // the default flexbox row orientation. Requires the use of `flex-wrap: wrap`
138
+ // on the `.navbar` parent.
139
+ .navbar-collapse {
140
+ flex-basis: 100%;
141
+ flex-grow: 1;
142
+ // For always expanded or extra full navbars, ensure content aligns itself
143
+ // properly vertically. Can be easily overridden with flex utilities.
144
+ align-items: center;
145
+ }
146
+
147
+ // Button for toggling the navbar when in its collapsed state
148
+ .navbar-toggler {
149
+ padding: var(--#{$prefix}navbar-toggler-padding-y) var(--#{$prefix}navbar-toggler-padding-x);
150
+ @include font-size(var(--#{$prefix}navbar-toggler-font-size));
151
+ line-height: 1;
152
+ color: var(--#{$prefix}navbar-color);
153
+ background-color: transparent; // remove default button style
154
+ border: var(--#{$prefix}border-width) solid var(--#{$prefix}navbar-toggler-border-color); // remove default button style
155
+ @include border-radius(var(--#{$prefix}navbar-toggler-border-radius));
156
+ @include transition(var(--#{$prefix}navbar-toggler-transition));
157
+
158
+ &:hover {
159
+ text-decoration: none;
160
+ }
161
+
162
+ &:focus {
163
+ text-decoration: none;
164
+ outline: 0;
165
+ box-shadow: 0 0 0 var(--#{$prefix}navbar-toggler-focus-width);
166
+ }
167
+ }
168
+
169
+ // Keep as a separate element so folks can easily override it with another icon
170
+ // or image file as needed.
171
+ .navbar-toggler-icon {
172
+ display: inline-block;
173
+ width: 1.5em;
174
+ height: 1.5em;
175
+ vertical-align: middle;
176
+ background-image: var(--#{$prefix}navbar-toggler-icon-bg);
177
+ background-repeat: no-repeat;
178
+ background-position: center;
179
+ background-size: 100%;
180
+ }
181
+
182
+ .navbar-nav-scroll {
183
+ max-height: var(--#{$prefix}scroll-height, 75vh);
184
+ overflow-y: auto;
185
+ }
186
+
187
+ // scss-docs-start navbar-expand-loop
188
+ // Generate series of `.navbar-expand-*` responsive classes for configuring
189
+ // where your navbar collapses.
190
+ .navbar-expand {
191
+ @each $breakpoint in map-keys($grid-breakpoints) {
192
+ $next: breakpoint-next($breakpoint, $grid-breakpoints);
193
+ $infix: breakpoint-infix($next, $grid-breakpoints);
194
+
195
+ // stylelint-disable-next-line scss/selector-no-union-class-name
196
+ &#{$infix} {
197
+ @include media-breakpoint-up($next) {
198
+ flex-wrap: nowrap;
199
+ justify-content: flex-start;
200
+
201
+ .navbar-nav {
202
+ flex-direction: row;
203
+
204
+ .dropdown-menu {
205
+ position: absolute;
206
+ }
207
+
208
+ .nav-link {
209
+ padding-right: var(--#{$prefix}navbar-nav-link-padding-x);
210
+ padding-left: var(--#{$prefix}navbar-nav-link-padding-x);
211
+ }
212
+ }
213
+
214
+ .navbar-nav-scroll {
215
+ overflow: visible;
216
+ }
217
+
218
+ .navbar-collapse {
219
+ display: flex !important; // stylelint-disable-line declaration-no-important
220
+ flex-basis: auto;
221
+ }
222
+
223
+ .navbar-toggler {
224
+ display: none;
225
+ }
226
+
227
+ .offcanvas {
228
+ // stylelint-disable declaration-no-important
229
+ position: static;
230
+ z-index: auto;
231
+ flex-grow: 1;
232
+ width: auto !important;
233
+ height: auto !important;
234
+ visibility: visible !important;
235
+ background-color: transparent !important;
236
+ border: 0 !important;
237
+ transform: none !important;
238
+ @include box-shadow(none);
239
+ @include transition(none);
240
+ // stylelint-enable declaration-no-important
241
+
242
+ .offcanvas-header {
243
+ display: none;
244
+ }
245
+
246
+ .offcanvas-body {
247
+ display: flex;
248
+ flex-grow: 0;
249
+ padding: 0;
250
+ overflow-y: visible;
251
+ }
252
+ }
253
+ }
254
+ }
255
+ }
256
+ }
257
+ // scss-docs-end navbar-expand-loop
258
+
259
+ // Navbar themes
260
+ //
261
+ // Styles for switching between navbars with light or dark background.
262
+
263
+ .navbar-light {
264
+ @include deprecate("`.navbar-light`", "v5.2.0", "v6.0.0", true);
265
+ }
266
+
267
+ .navbar-dark {
268
+ // scss-docs-start navbar-dark-css-vars
269
+ --#{$prefix}navbar-color: #{$navbar-dark-color};
270
+ --#{$prefix}navbar-hover-color: #{$navbar-dark-hover-color};
271
+ --#{$prefix}navbar-disabled-color: #{$navbar-dark-disabled-color};
272
+ --#{$prefix}navbar-active-color: #{$navbar-dark-active-color};
273
+ --#{$prefix}navbar-brand-color: #{$navbar-dark-brand-color};
274
+ --#{$prefix}navbar-brand-hover-color: #{$navbar-dark-brand-hover-color};
275
+ --#{$prefix}navbar-toggler-border-color: #{$navbar-dark-toggler-border-color};
276
+ --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-dark-toggler-icon-bg)};
277
+ // scss-docs-end navbar-dark-css-vars
278
+ }
279
+
280
+ @if $enable-dark-mode {
281
+ @include color-mode(dark) {
282
+ .navbar {
283
+ --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-dark-toggler-icon-bg)};
284
+ }
285
+ }
286
+ }