jekyll-theme-dtf-basic 0.0.1

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 (161) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +438 -0
  3. data/README.md +39 -0
  4. data/_config.yml +84 -0
  5. data/_data/authors.yml +2 -0
  6. data/_data/navigation.yml +4 -0
  7. data/_includes/dtf/alert_element.html +4 -0
  8. data/_includes/dtf/author_element.html +17 -0
  9. data/_includes/dtf/feature_element.html +13 -0
  10. data/_includes/dtf/feature_group.html +12 -0
  11. data/_includes/dtf/picture_element.html +13 -0
  12. data/_includes/dtf/post_element.html +19 -0
  13. data/_includes/dtf/post_group.html +12 -0
  14. data/_includes/dtf/project_element.html +19 -0
  15. data/_includes/dtf/project_group.html +17 -0
  16. data/_includes/footer.html +7 -0
  17. data/_includes/head.html +12 -0
  18. data/_includes/nav.html +45 -0
  19. data/_includes/pagination.html +19 -0
  20. data/_layouts/archive.html +19 -0
  21. data/_layouts/default.html +19 -0
  22. data/_layouts/page.html +13 -0
  23. data/_layouts/post.html +43 -0
  24. data/_sass/basic/_style.scss +55 -0
  25. data/_sass/bootstrap-5.3.3/_accordion.scss +158 -0
  26. data/_sass/bootstrap-5.3.3/_alert.scss +68 -0
  27. data/_sass/bootstrap-5.3.3/_badge.scss +38 -0
  28. data/_sass/bootstrap-5.3.3/_breadcrumb.scss +40 -0
  29. data/_sass/bootstrap-5.3.3/_button-group.scss +142 -0
  30. data/_sass/bootstrap-5.3.3/_buttons.scss +216 -0
  31. data/_sass/bootstrap-5.3.3/_card.scss +239 -0
  32. data/_sass/bootstrap-5.3.3/_carousel.scss +236 -0
  33. data/_sass/bootstrap-5.3.3/_close.scss +63 -0
  34. data/_sass/bootstrap-5.3.3/_containers.scss +41 -0
  35. data/_sass/bootstrap-5.3.3/_dropdown.scss +250 -0
  36. data/_sass/bootstrap-5.3.3/_forms.scss +9 -0
  37. data/_sass/bootstrap-5.3.3/_functions.scss +302 -0
  38. data/_sass/bootstrap-5.3.3/_grid.scss +39 -0
  39. data/_sass/bootstrap-5.3.3/_helpers.scss +12 -0
  40. data/_sass/bootstrap-5.3.3/_images.scss +42 -0
  41. data/_sass/bootstrap-5.3.3/_list-group.scss +197 -0
  42. data/_sass/bootstrap-5.3.3/_maps.scss +174 -0
  43. data/_sass/bootstrap-5.3.3/_mixins.scss +42 -0
  44. data/_sass/bootstrap-5.3.3/_modal.scss +236 -0
  45. data/_sass/bootstrap-5.3.3/_nav.scss +197 -0
  46. data/_sass/bootstrap-5.3.3/_navbar.scss +289 -0
  47. data/_sass/bootstrap-5.3.3/_offcanvas.scss +143 -0
  48. data/_sass/bootstrap-5.3.3/_pagination.scss +109 -0
  49. data/_sass/bootstrap-5.3.3/_placeholders.scss +51 -0
  50. data/_sass/bootstrap-5.3.3/_popover.scss +196 -0
  51. data/_sass/bootstrap-5.3.3/_progress.scss +68 -0
  52. data/_sass/bootstrap-5.3.3/_reboot.scss +611 -0
  53. data/_sass/bootstrap-5.3.3/_root.scss +187 -0
  54. data/_sass/bootstrap-5.3.3/_spinners.scss +85 -0
  55. data/_sass/bootstrap-5.3.3/_tables.scss +171 -0
  56. data/_sass/bootstrap-5.3.3/_toasts.scss +73 -0
  57. data/_sass/bootstrap-5.3.3/_tooltip.scss +119 -0
  58. data/_sass/bootstrap-5.3.3/_transitions.scss +27 -0
  59. data/_sass/bootstrap-5.3.3/_type.scss +106 -0
  60. data/_sass/bootstrap-5.3.3/_utilities.scss +806 -0
  61. data/_sass/bootstrap-5.3.3/_variables-dark.scss +87 -0
  62. data/_sass/bootstrap-5.3.3/_variables.scss +1751 -0
  63. data/_sass/bootstrap-5.3.3/bootstrap-grid.scss +62 -0
  64. data/_sass/bootstrap-5.3.3/bootstrap-reboot.scss +10 -0
  65. data/_sass/bootstrap-5.3.3/bootstrap-utilities.scss +19 -0
  66. data/_sass/bootstrap-5.3.3/bootstrap.scss +52 -0
  67. data/_sass/bootstrap-5.3.3/forms/_floating-labels.scss +95 -0
  68. data/_sass/bootstrap-5.3.3/forms/_form-check.scss +189 -0
  69. data/_sass/bootstrap-5.3.3/forms/_form-control.scss +214 -0
  70. data/_sass/bootstrap-5.3.3/forms/_form-range.scss +91 -0
  71. data/_sass/bootstrap-5.3.3/forms/_form-select.scss +80 -0
  72. data/_sass/bootstrap-5.3.3/forms/_form-text.scss +11 -0
  73. data/_sass/bootstrap-5.3.3/forms/_input-group.scss +132 -0
  74. data/_sass/bootstrap-5.3.3/forms/_labels.scss +36 -0
  75. data/_sass/bootstrap-5.3.3/forms/_validation.scss +12 -0
  76. data/_sass/bootstrap-5.3.3/helpers/_clearfix.scss +3 -0
  77. data/_sass/bootstrap-5.3.3/helpers/_color-bg.scss +7 -0
  78. data/_sass/bootstrap-5.3.3/helpers/_colored-links.scss +30 -0
  79. data/_sass/bootstrap-5.3.3/helpers/_focus-ring.scss +5 -0
  80. data/_sass/bootstrap-5.3.3/helpers/_icon-link.scss +25 -0
  81. data/_sass/bootstrap-5.3.3/helpers/_position.scss +36 -0
  82. data/_sass/bootstrap-5.3.3/helpers/_ratio.scss +26 -0
  83. data/_sass/bootstrap-5.3.3/helpers/_stacks.scss +15 -0
  84. data/_sass/bootstrap-5.3.3/helpers/_stretched-link.scss +15 -0
  85. data/_sass/bootstrap-5.3.3/helpers/_text-truncation.scss +7 -0
  86. data/_sass/bootstrap-5.3.3/helpers/_visually-hidden.scss +8 -0
  87. data/_sass/bootstrap-5.3.3/helpers/_vr.scss +8 -0
  88. data/_sass/bootstrap-5.3.3/mixins/_alert.scss +18 -0
  89. data/_sass/bootstrap-5.3.3/mixins/_backdrop.scss +14 -0
  90. data/_sass/bootstrap-5.3.3/mixins/_banner.scss +7 -0
  91. data/_sass/bootstrap-5.3.3/mixins/_border-radius.scss +78 -0
  92. data/_sass/bootstrap-5.3.3/mixins/_box-shadow.scss +18 -0
  93. data/_sass/bootstrap-5.3.3/mixins/_breakpoints.scss +127 -0
  94. data/_sass/bootstrap-5.3.3/mixins/_buttons.scss +70 -0
  95. data/_sass/bootstrap-5.3.3/mixins/_caret.scss +69 -0
  96. data/_sass/bootstrap-5.3.3/mixins/_clearfix.scss +9 -0
  97. data/_sass/bootstrap-5.3.3/mixins/_color-mode.scss +21 -0
  98. data/_sass/bootstrap-5.3.3/mixins/_color-scheme.scss +7 -0
  99. data/_sass/bootstrap-5.3.3/mixins/_container.scss +11 -0
  100. data/_sass/bootstrap-5.3.3/mixins/_deprecate.scss +10 -0
  101. data/_sass/bootstrap-5.3.3/mixins/_forms.scss +163 -0
  102. data/_sass/bootstrap-5.3.3/mixins/_gradients.scss +47 -0
  103. data/_sass/bootstrap-5.3.3/mixins/_grid.scss +151 -0
  104. data/_sass/bootstrap-5.3.3/mixins/_image.scss +16 -0
  105. data/_sass/bootstrap-5.3.3/mixins/_list-group.scss +26 -0
  106. data/_sass/bootstrap-5.3.3/mixins/_lists.scss +7 -0
  107. data/_sass/bootstrap-5.3.3/mixins/_pagination.scss +10 -0
  108. data/_sass/bootstrap-5.3.3/mixins/_reset-text.scss +17 -0
  109. data/_sass/bootstrap-5.3.3/mixins/_resize.scss +6 -0
  110. data/_sass/bootstrap-5.3.3/mixins/_table-variants.scss +24 -0
  111. data/_sass/bootstrap-5.3.3/mixins/_text-truncate.scss +8 -0
  112. data/_sass/bootstrap-5.3.3/mixins/_transition.scss +26 -0
  113. data/_sass/bootstrap-5.3.3/mixins/_utilities.scss +97 -0
  114. data/_sass/bootstrap-5.3.3/mixins/_visually-hidden.scss +33 -0
  115. data/_sass/bootstrap-5.3.3/tests/jasmine.js +16 -0
  116. data/_sass/bootstrap-5.3.3/tests/mixins/_auto-import-of-variables-dark.test.scss +7 -0
  117. data/_sass/bootstrap-5.3.3/tests/mixins/_color-modes.test.scss +69 -0
  118. data/_sass/bootstrap-5.3.3/tests/mixins/_media-query-color-mode-full.test.scss +8 -0
  119. data/_sass/bootstrap-5.3.3/tests/mixins/_utilities.test.scss +393 -0
  120. data/_sass/bootstrap-5.3.3/tests/sass-true/register.js +14 -0
  121. data/_sass/bootstrap-5.3.3/tests/sass-true/runner.js +17 -0
  122. data/_sass/bootstrap-5.3.3/tests/utilities/_api.test.scss +75 -0
  123. data/_sass/bootstrap-5.3.3/utilities/_api.scss +47 -0
  124. data/_sass/custom_style.scss +0 -0
  125. data/_sass/fontawesome/font-awesome.scss +10 -0
  126. data/_sass/fontawesome/scss/LICENSE.txt +165 -0
  127. data/_sass/fontawesome/scss/_animated.scss +152 -0
  128. data/_sass/fontawesome/scss/_bordered-pulled.scss +20 -0
  129. data/_sass/fontawesome/scss/_core.scss +49 -0
  130. data/_sass/fontawesome/scss/_fixed-width.scss +7 -0
  131. data/_sass/fontawesome/scss/_functions.scss +57 -0
  132. data/_sass/fontawesome/scss/_icons.scss +12 -0
  133. data/_sass/fontawesome/scss/_list.scss +18 -0
  134. data/_sass/fontawesome/scss/_mixins.scss +65 -0
  135. data/_sass/fontawesome/scss/_rotated-flipped.scss +31 -0
  136. data/_sass/fontawesome/scss/_screen-reader.scss +14 -0
  137. data/_sass/fontawesome/scss/_shims.scss +1578 -0
  138. data/_sass/fontawesome/scss/_sizing.scss +16 -0
  139. data/_sass/fontawesome/scss/_stacked.scss +32 -0
  140. data/_sass/fontawesome/scss/_variables.scss +5044 -0
  141. data/_sass/fontawesome/scss/brands.scss +30 -0
  142. data/_sass/fontawesome/scss/fontawesome.scss +21 -0
  143. data/_sass/fontawesome/scss/regular.scss +27 -0
  144. data/_sass/fontawesome/scss/solid.scss +27 -0
  145. data/_sass/fontawesome/scss/v4-shims.scss +11 -0
  146. data/_sass/highlighter/code.scss +232 -0
  147. data/_sass/main.scss +40 -0
  148. data/assets/css/main.scss +4 -0
  149. data/assets/fonts/fontawesome/LICENSE.txt +165 -0
  150. data/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
  151. data/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  152. data/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
  153. data/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  154. data/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
  155. data/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  156. data/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
  157. data/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
  158. data/assets/js/bootstrap.bundle.js.map +1 -0
  159. data/assets/js/bootstrap.bundle.min.js +7 -0
  160. data/assets/js/darkmode.js +74 -0
  161. metadata +343 -0
@@ -0,0 +1,174 @@
1
+ // Re-assigned maps
2
+ //
3
+ // Placed here so that others can override the default Sass maps and see automatic updates to utilities and more.
4
+
5
+ // scss-docs-start theme-colors-rgb
6
+ $theme-colors-rgb: map-loop($theme-colors, to-rgb, "$value") !default;
7
+ // scss-docs-end theme-colors-rgb
8
+
9
+ // scss-docs-start theme-text-map
10
+ $theme-colors-text: (
11
+ "primary": $primary-text-emphasis,
12
+ "secondary": $secondary-text-emphasis,
13
+ "success": $success-text-emphasis,
14
+ "info": $info-text-emphasis,
15
+ "warning": $warning-text-emphasis,
16
+ "danger": $danger-text-emphasis,
17
+ "light": $light-text-emphasis,
18
+ "dark": $dark-text-emphasis,
19
+ ) !default;
20
+ // scss-docs-end theme-text-map
21
+
22
+ // scss-docs-start theme-bg-subtle-map
23
+ $theme-colors-bg-subtle: (
24
+ "primary": $primary-bg-subtle,
25
+ "secondary": $secondary-bg-subtle,
26
+ "success": $success-bg-subtle,
27
+ "info": $info-bg-subtle,
28
+ "warning": $warning-bg-subtle,
29
+ "danger": $danger-bg-subtle,
30
+ "light": $light-bg-subtle,
31
+ "dark": $dark-bg-subtle,
32
+ ) !default;
33
+ // scss-docs-end theme-bg-subtle-map
34
+
35
+ // scss-docs-start theme-border-subtle-map
36
+ $theme-colors-border-subtle: (
37
+ "primary": $primary-border-subtle,
38
+ "secondary": $secondary-border-subtle,
39
+ "success": $success-border-subtle,
40
+ "info": $info-border-subtle,
41
+ "warning": $warning-border-subtle,
42
+ "danger": $danger-border-subtle,
43
+ "light": $light-border-subtle,
44
+ "dark": $dark-border-subtle,
45
+ ) !default;
46
+ // scss-docs-end theme-border-subtle-map
47
+
48
+ $theme-colors-text-dark: null !default;
49
+ $theme-colors-bg-subtle-dark: null !default;
50
+ $theme-colors-border-subtle-dark: null !default;
51
+
52
+ @if $enable-dark-mode {
53
+ // scss-docs-start theme-text-dark-map
54
+ $theme-colors-text-dark: (
55
+ "primary": $primary-text-emphasis-dark,
56
+ "secondary": $secondary-text-emphasis-dark,
57
+ "success": $success-text-emphasis-dark,
58
+ "info": $info-text-emphasis-dark,
59
+ "warning": $warning-text-emphasis-dark,
60
+ "danger": $danger-text-emphasis-dark,
61
+ "light": $light-text-emphasis-dark,
62
+ "dark": $dark-text-emphasis-dark,
63
+ ) !default;
64
+ // scss-docs-end theme-text-dark-map
65
+
66
+ // scss-docs-start theme-bg-subtle-dark-map
67
+ $theme-colors-bg-subtle-dark: (
68
+ "primary": $primary-bg-subtle-dark,
69
+ "secondary": $secondary-bg-subtle-dark,
70
+ "success": $success-bg-subtle-dark,
71
+ "info": $info-bg-subtle-dark,
72
+ "warning": $warning-bg-subtle-dark,
73
+ "danger": $danger-bg-subtle-dark,
74
+ "light": $light-bg-subtle-dark,
75
+ "dark": $dark-bg-subtle-dark,
76
+ ) !default;
77
+ // scss-docs-end theme-bg-subtle-dark-map
78
+
79
+ // scss-docs-start theme-border-subtle-dark-map
80
+ $theme-colors-border-subtle-dark: (
81
+ "primary": $primary-border-subtle-dark,
82
+ "secondary": $secondary-border-subtle-dark,
83
+ "success": $success-border-subtle-dark,
84
+ "info": $info-border-subtle-dark,
85
+ "warning": $warning-border-subtle-dark,
86
+ "danger": $danger-border-subtle-dark,
87
+ "light": $light-border-subtle-dark,
88
+ "dark": $dark-border-subtle-dark,
89
+ ) !default;
90
+ // scss-docs-end theme-border-subtle-dark-map
91
+ }
92
+
93
+ // Utilities maps
94
+ //
95
+ // Extends the default `$theme-colors` maps to help create our utilities.
96
+
97
+ // Come v6, we'll de-dupe these variables. Until then, for backward compatibility, we keep them to reassign.
98
+ // scss-docs-start utilities-colors
99
+ $utilities-colors: $theme-colors-rgb !default;
100
+ // scss-docs-end utilities-colors
101
+
102
+ // scss-docs-start utilities-text-colors
103
+ $utilities-text: map-merge(
104
+ $utilities-colors,
105
+ (
106
+ "black": to-rgb($black),
107
+ "white": to-rgb($white),
108
+ "body": to-rgb($body-color)
109
+ )
110
+ ) !default;
111
+ $utilities-text-colors: map-loop($utilities-text, rgba-css-var, "$key", "text") !default;
112
+
113
+ $utilities-text-emphasis-colors: (
114
+ "primary-emphasis": var(--#{$prefix}primary-text-emphasis),
115
+ "secondary-emphasis": var(--#{$prefix}secondary-text-emphasis),
116
+ "success-emphasis": var(--#{$prefix}success-text-emphasis),
117
+ "info-emphasis": var(--#{$prefix}info-text-emphasis),
118
+ "warning-emphasis": var(--#{$prefix}warning-text-emphasis),
119
+ "danger-emphasis": var(--#{$prefix}danger-text-emphasis),
120
+ "light-emphasis": var(--#{$prefix}light-text-emphasis),
121
+ "dark-emphasis": var(--#{$prefix}dark-text-emphasis)
122
+ ) !default;
123
+ // scss-docs-end utilities-text-colors
124
+
125
+ // scss-docs-start utilities-bg-colors
126
+ $utilities-bg: map-merge(
127
+ $utilities-colors,
128
+ (
129
+ "black": to-rgb($black),
130
+ "white": to-rgb($white),
131
+ "body": to-rgb($body-bg)
132
+ )
133
+ ) !default;
134
+ $utilities-bg-colors: map-loop($utilities-bg, rgba-css-var, "$key", "bg") !default;
135
+
136
+ $utilities-bg-subtle: (
137
+ "primary-subtle": var(--#{$prefix}primary-bg-subtle),
138
+ "secondary-subtle": var(--#{$prefix}secondary-bg-subtle),
139
+ "success-subtle": var(--#{$prefix}success-bg-subtle),
140
+ "info-subtle": var(--#{$prefix}info-bg-subtle),
141
+ "warning-subtle": var(--#{$prefix}warning-bg-subtle),
142
+ "danger-subtle": var(--#{$prefix}danger-bg-subtle),
143
+ "light-subtle": var(--#{$prefix}light-bg-subtle),
144
+ "dark-subtle": var(--#{$prefix}dark-bg-subtle)
145
+ ) !default;
146
+ // scss-docs-end utilities-bg-colors
147
+
148
+ // scss-docs-start utilities-border-colors
149
+ $utilities-border: map-merge(
150
+ $utilities-colors,
151
+ (
152
+ "black": to-rgb($black),
153
+ "white": to-rgb($white)
154
+ )
155
+ ) !default;
156
+ $utilities-border-colors: map-loop($utilities-border, rgba-css-var, "$key", "border") !default;
157
+
158
+ $utilities-border-subtle: (
159
+ "primary-subtle": var(--#{$prefix}primary-border-subtle),
160
+ "secondary-subtle": var(--#{$prefix}secondary-border-subtle),
161
+ "success-subtle": var(--#{$prefix}success-border-subtle),
162
+ "info-subtle": var(--#{$prefix}info-border-subtle),
163
+ "warning-subtle": var(--#{$prefix}warning-border-subtle),
164
+ "danger-subtle": var(--#{$prefix}danger-border-subtle),
165
+ "light-subtle": var(--#{$prefix}light-border-subtle),
166
+ "dark-subtle": var(--#{$prefix}dark-border-subtle)
167
+ ) !default;
168
+ // scss-docs-end utilities-border-colors
169
+
170
+ $utilities-links-underline: map-loop($utilities-colors, rgba-css-var, "$key", "link-underline") !default;
171
+
172
+ $negative-spacers: if($enable-negative-margins, negativify-map($spacers), null) !default;
173
+
174
+ $gutters: $spacers !default;
@@ -0,0 +1,42 @@
1
+ // Toggles
2
+ //
3
+ // Used in conjunction with global variables to enable certain theme features.
4
+
5
+ // Vendor
6
+ @import "vendor/rfs";
7
+
8
+ // Deprecate
9
+ @import "mixins/deprecate";
10
+
11
+ // Helpers
12
+ @import "mixins/breakpoints";
13
+ @import "mixins/color-mode";
14
+ @import "mixins/color-scheme";
15
+ @import "mixins/image";
16
+ @import "mixins/resize";
17
+ @import "mixins/visually-hidden";
18
+ @import "mixins/reset-text";
19
+ @import "mixins/text-truncate";
20
+
21
+ // Utilities
22
+ @import "mixins/utilities";
23
+
24
+ // Components
25
+ @import "mixins/backdrop";
26
+ @import "mixins/buttons";
27
+ @import "mixins/caret";
28
+ @import "mixins/pagination";
29
+ @import "mixins/lists";
30
+ @import "mixins/forms";
31
+ @import "mixins/table-variants";
32
+
33
+ // Skins
34
+ @import "mixins/border-radius";
35
+ @import "mixins/box-shadow";
36
+ @import "mixins/gradients";
37
+ @import "mixins/transition";
38
+
39
+ // Layout
40
+ @import "mixins/clearfix";
41
+ @import "mixins/container";
42
+ @import "mixins/grid";
@@ -0,0 +1,236 @@
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
+ padding: var(--#{$prefix}modal-header-padding);
130
+ border-bottom: var(--#{$prefix}modal-header-border-width) solid var(--#{$prefix}modal-header-border-color);
131
+ @include border-top-radius(var(--#{$prefix}modal-inner-border-radius));
132
+
133
+ .btn-close {
134
+ padding: calc(var(--#{$prefix}modal-header-padding-y) * .5) calc(var(--#{$prefix}modal-header-padding-x) * .5);
135
+ 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;
136
+ }
137
+ }
138
+
139
+ // Title text within header
140
+ .modal-title {
141
+ margin-bottom: 0;
142
+ line-height: var(--#{$prefix}modal-title-line-height);
143
+ }
144
+
145
+ // Modal body
146
+ // Where all modal content resides (sibling of .modal-header and .modal-footer)
147
+ .modal-body {
148
+ position: relative;
149
+ // Enable `flex-grow: 1` so that the body take up as much space as possible
150
+ // when there should be a fixed height on `.modal-dialog`.
151
+ flex: 1 1 auto;
152
+ padding: var(--#{$prefix}modal-padding);
153
+ }
154
+
155
+ // Footer (for actions)
156
+ .modal-footer {
157
+ display: flex;
158
+ flex-shrink: 0;
159
+ flex-wrap: wrap;
160
+ align-items: center; // vertically center
161
+ justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items
162
+ padding: calc(var(--#{$prefix}modal-padding) - var(--#{$prefix}modal-footer-gap) * .5);
163
+ background-color: var(--#{$prefix}modal-footer-bg);
164
+ border-top: var(--#{$prefix}modal-footer-border-width) solid var(--#{$prefix}modal-footer-border-color);
165
+ @include border-bottom-radius(var(--#{$prefix}modal-inner-border-radius));
166
+
167
+ // Place margin between footer elements
168
+ // This solution is far from ideal because of the universal selector usage,
169
+ // but is needed to fix https://github.com/twbs/bootstrap/issues/24800
170
+ > * {
171
+ margin: calc(var(--#{$prefix}modal-footer-gap) * .5); // Todo in v6: replace with gap on parent class
172
+ }
173
+ }
174
+
175
+ // Scale up the modal
176
+ @include media-breakpoint-up(sm) {
177
+ .modal {
178
+ --#{$prefix}modal-margin: #{$modal-dialog-margin-y-sm-up};
179
+ --#{$prefix}modal-box-shadow: #{$modal-content-box-shadow-sm-up};
180
+ }
181
+
182
+ // Automatically set modal's width for larger viewports
183
+ .modal-dialog {
184
+ max-width: var(--#{$prefix}modal-width);
185
+ margin-right: auto;
186
+ margin-left: auto;
187
+ }
188
+
189
+ .modal-sm {
190
+ --#{$prefix}modal-width: #{$modal-sm};
191
+ }
192
+ }
193
+
194
+ @include media-breakpoint-up(lg) {
195
+ .modal-lg,
196
+ .modal-xl {
197
+ --#{$prefix}modal-width: #{$modal-lg};
198
+ }
199
+ }
200
+
201
+ @include media-breakpoint-up(xl) {
202
+ .modal-xl {
203
+ --#{$prefix}modal-width: #{$modal-xl};
204
+ }
205
+ }
206
+
207
+ // scss-docs-start modal-fullscreen-loop
208
+ @each $breakpoint in map-keys($grid-breakpoints) {
209
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
210
+ $postfix: if($infix != "", $infix + "-down", "");
211
+
212
+ @include media-breakpoint-down($breakpoint) {
213
+ .modal-fullscreen#{$postfix} {
214
+ width: 100vw;
215
+ max-width: none;
216
+ height: 100%;
217
+ margin: 0;
218
+
219
+ .modal-content {
220
+ height: 100%;
221
+ border: 0;
222
+ @include border-radius(0);
223
+ }
224
+
225
+ .modal-header,
226
+ .modal-footer {
227
+ @include border-radius(0);
228
+ }
229
+
230
+ .modal-body {
231
+ overflow-y: auto;
232
+ }
233
+ }
234
+ }
235
+ }
236
+ // scss-docs-end modal-fullscreen-loop
@@ -0,0 +1,197 @@
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
+ background: none;
32
+ border: 0;
33
+ @include transition($nav-link-transition);
34
+
35
+ &:hover,
36
+ &:focus {
37
+ color: var(--#{$prefix}nav-link-hover-color);
38
+ text-decoration: if($link-hover-decoration == underline, none, null);
39
+ }
40
+
41
+ &:focus-visible {
42
+ outline: 0;
43
+ box-shadow: $nav-link-focus-box-shadow;
44
+ }
45
+
46
+ // Disabled state lightens text
47
+ &.disabled,
48
+ &:disabled {
49
+ color: var(--#{$prefix}nav-link-disabled-color);
50
+ pointer-events: none;
51
+ cursor: default;
52
+ }
53
+ }
54
+
55
+ //
56
+ // Tabs
57
+ //
58
+
59
+ .nav-tabs {
60
+ // scss-docs-start nav-tabs-css-vars
61
+ --#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};
62
+ --#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};
63
+ --#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};
64
+ --#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};
65
+ --#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};
66
+ --#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};
67
+ --#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};
68
+ // scss-docs-end nav-tabs-css-vars
69
+
70
+ border-bottom: var(--#{$prefix}nav-tabs-border-width) solid var(--#{$prefix}nav-tabs-border-color);
71
+
72
+ .nav-link {
73
+ margin-bottom: calc(-1 * var(--#{$prefix}nav-tabs-border-width)); // stylelint-disable-line function-disallowed-list
74
+ border: var(--#{$prefix}nav-tabs-border-width) solid transparent;
75
+ @include border-top-radius(var(--#{$prefix}nav-tabs-border-radius));
76
+
77
+ &:hover,
78
+ &:focus {
79
+ // Prevents active .nav-link tab overlapping focus outline of previous/next .nav-link
80
+ isolation: isolate;
81
+ border-color: var(--#{$prefix}nav-tabs-link-hover-border-color);
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
+ @include border-radius(var(--#{$prefix}nav-pills-border-radius));
114
+ }
115
+
116
+ .nav-link.active,
117
+ .show > .nav-link {
118
+ color: var(--#{$prefix}nav-pills-link-active-color);
119
+ @include gradient-bg(var(--#{$prefix}nav-pills-link-active-bg));
120
+ }
121
+ }
122
+
123
+
124
+ //
125
+ // Underline
126
+ //
127
+
128
+ .nav-underline {
129
+ // scss-docs-start nav-underline-css-vars
130
+ --#{$prefix}nav-underline-gap: #{$nav-underline-gap};
131
+ --#{$prefix}nav-underline-border-width: #{$nav-underline-border-width};
132
+ --#{$prefix}nav-underline-link-active-color: #{$nav-underline-link-active-color};
133
+ // scss-docs-end nav-underline-css-vars
134
+
135
+ gap: var(--#{$prefix}nav-underline-gap);
136
+
137
+ .nav-link {
138
+ padding-right: 0;
139
+ padding-left: 0;
140
+ border-bottom: var(--#{$prefix}nav-underline-border-width) solid transparent;
141
+
142
+ &:hover,
143
+ &:focus {
144
+ border-bottom-color: currentcolor;
145
+ }
146
+ }
147
+
148
+ .nav-link.active,
149
+ .show > .nav-link {
150
+ font-weight: $font-weight-bold;
151
+ color: var(--#{$prefix}nav-underline-link-active-color);
152
+ border-bottom-color: currentcolor;
153
+ }
154
+ }
155
+
156
+
157
+ //
158
+ // Justified variants
159
+ //
160
+
161
+ .nav-fill {
162
+ > .nav-link,
163
+ .nav-item {
164
+ flex: 1 1 auto;
165
+ text-align: center;
166
+ }
167
+ }
168
+
169
+ .nav-justified {
170
+ > .nav-link,
171
+ .nav-item {
172
+ flex-basis: 0;
173
+ flex-grow: 1;
174
+ text-align: center;
175
+ }
176
+ }
177
+
178
+ .nav-fill,
179
+ .nav-justified {
180
+ .nav-item .nav-link {
181
+ width: 100%; // Make sure button will grow
182
+ }
183
+ }
184
+
185
+
186
+ // Tabbable tabs
187
+ //
188
+ // Hide tabbable panes to start, show them when `.active`
189
+
190
+ .tab-content {
191
+ > .tab-pane {
192
+ display: none;
193
+ }
194
+ > .active {
195
+ display: block;
196
+ }
197
+ }