owasp-td-jekyll 0.1.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 +7 -0
- data/LICENSE.txt +202 -0
- data/README.md +212 -0
- data/_includes/head.html +11 -0
- data/_includes/navbar.html +33 -0
- data/_includes/sidebar.html +55 -0
- data/_layouts/default.html +15 -0
- data/_layouts/page.html +11 -0
- data/_layouts/post.html +5 -0
- data/_sass/bootstrap-theme.scss +15 -0
- data/_sass/bootstrap/LICENSE +22 -0
- data/_sass/bootstrap/_alert.scss +52 -0
- data/_sass/bootstrap/_badge.scss +54 -0
- data/_sass/bootstrap/_breadcrumb.scss +44 -0
- data/_sass/bootstrap/_button-group.scss +163 -0
- data/_sass/bootstrap/_buttons.scss +142 -0
- data/_sass/bootstrap/_card.scss +286 -0
- data/_sass/bootstrap/_carousel.scss +197 -0
- data/_sass/bootstrap/_close.scss +40 -0
- data/_sass/bootstrap/_code.scss +48 -0
- data/_sass/bootstrap/_custom-forms.scss +524 -0
- data/_sass/bootstrap/_dropdown.scss +192 -0
- data/_sass/bootstrap/_forms.scss +347 -0
- data/_sass/bootstrap/_functions.scss +144 -0
- data/_sass/bootstrap/_grid.scss +73 -0
- data/_sass/bootstrap/_images.scss +42 -0
- data/_sass/bootstrap/_input-group.scss +192 -0
- data/_sass/bootstrap/_jumbotron.scss +17 -0
- data/_sass/bootstrap/_list-group.scss +154 -0
- data/_sass/bootstrap/_media.scss +8 -0
- data/_sass/bootstrap/_mixins.scss +47 -0
- data/_sass/bootstrap/_modal.scss +240 -0
- data/_sass/bootstrap/_nav.scss +123 -0
- data/_sass/bootstrap/_navbar.scss +324 -0
- data/_sass/bootstrap/_pagination.scss +74 -0
- data/_sass/bootstrap/_popover.scss +170 -0
- data/_sass/bootstrap/_print.scss +141 -0
- data/_sass/bootstrap/_progress.scss +47 -0
- data/_sass/bootstrap/_reboot.scss +484 -0
- data/_sass/bootstrap/_root.scss +20 -0
- data/_sass/bootstrap/_spinners.scss +56 -0
- data/_sass/bootstrap/_tables.scss +185 -0
- data/_sass/bootstrap/_toasts.scss +46 -0
- data/_sass/bootstrap/_tooltip.scss +115 -0
- data/_sass/bootstrap/_transitions.scss +20 -0
- data/_sass/bootstrap/_type.scss +125 -0
- data/_sass/bootstrap/_utilities.scss +18 -0
- data/_sass/bootstrap/_variables.scss +1142 -0
- data/_sass/bootstrap/bootstrap-grid.scss +29 -0
- data/_sass/bootstrap/bootstrap-reboot.scss +12 -0
- data/_sass/bootstrap/bootstrap.scss +44 -0
- data/_sass/bootstrap/mixins/_alert.scss +13 -0
- data/_sass/bootstrap/mixins/_background-variant.scss +23 -0
- data/_sass/bootstrap/mixins/_badge.scss +17 -0
- data/_sass/bootstrap/mixins/_border-radius.scss +76 -0
- data/_sass/bootstrap/mixins/_box-shadow.scss +20 -0
- data/_sass/bootstrap/mixins/_breakpoints.scss +123 -0
- data/_sass/bootstrap/mixins/_buttons.scss +110 -0
- data/_sass/bootstrap/mixins/_caret.scss +62 -0
- data/_sass/bootstrap/mixins/_clearfix.scss +7 -0
- data/_sass/bootstrap/mixins/_deprecate.scss +10 -0
- data/_sass/bootstrap/mixins/_float.scss +14 -0
- data/_sass/bootstrap/mixins/_forms.scss +178 -0
- data/_sass/bootstrap/mixins/_gradients.scss +45 -0
- data/_sass/bootstrap/mixins/_grid-framework.scss +80 -0
- data/_sass/bootstrap/mixins/_grid.scss +69 -0
- data/_sass/bootstrap/mixins/_hover.scss +37 -0
- data/_sass/bootstrap/mixins/_image.scss +36 -0
- data/_sass/bootstrap/mixins/_list-group.scss +21 -0
- data/_sass/bootstrap/mixins/_lists.scss +7 -0
- data/_sass/bootstrap/mixins/_nav-divider.scss +11 -0
- data/_sass/bootstrap/mixins/_pagination.scss +22 -0
- data/_sass/bootstrap/mixins/_reset-text.scss +17 -0
- data/_sass/bootstrap/mixins/_resize.scss +6 -0
- data/_sass/bootstrap/mixins/_screen-reader.scss +34 -0
- data/_sass/bootstrap/mixins/_size.scss +7 -0
- data/_sass/bootstrap/mixins/_table-row.scss +39 -0
- data/_sass/bootstrap/mixins/_text-emphasis.scss +17 -0
- data/_sass/bootstrap/mixins/_text-hide.scss +11 -0
- data/_sass/bootstrap/mixins/_text-truncate.scss +8 -0
- data/_sass/bootstrap/mixins/_transition.scss +26 -0
- data/_sass/bootstrap/mixins/_visibility.scss +8 -0
- data/_sass/bootstrap/utilities/_align.scss +8 -0
- data/_sass/bootstrap/utilities/_background.scss +19 -0
- data/_sass/bootstrap/utilities/_borders.scss +75 -0
- data/_sass/bootstrap/utilities/_clearfix.scss +3 -0
- data/_sass/bootstrap/utilities/_display.scss +26 -0
- data/_sass/bootstrap/utilities/_embed.scss +39 -0
- data/_sass/bootstrap/utilities/_flex.scss +51 -0
- data/_sass/bootstrap/utilities/_float.scss +11 -0
- data/_sass/bootstrap/utilities/_interactions.scss +5 -0
- data/_sass/bootstrap/utilities/_overflow.scss +5 -0
- data/_sass/bootstrap/utilities/_position.scss +32 -0
- data/_sass/bootstrap/utilities/_screenreaders.scss +11 -0
- data/_sass/bootstrap/utilities/_shadows.scss +6 -0
- data/_sass/bootstrap/utilities/_sizing.scss +20 -0
- data/_sass/bootstrap/utilities/_spacing.scss +73 -0
- data/_sass/bootstrap/utilities/_stretched-link.scss +19 -0
- data/_sass/bootstrap/utilities/_text.scss +72 -0
- data/_sass/bootstrap/utilities/_visibility.scss +13 -0
- data/_sass/bootstrap/vendor/_rfs.scss +204 -0
- data/_sass/colors.scss +6 -0
- data/_sass/layout.scss +13 -0
- data/_sass/navbar.scss +20 -0
- data/_sass/sidebar.scss +62 -0
- data/assets/css/bootstrap.scss +5 -0
- data/assets/css/fontawesome.min.css +5 -0
- data/assets/css/style.scss +5 -0
- data/assets/images/favicon.ico +0 -0
- data/assets/js/bootstrap.bundle.min.js +7 -0
- data/assets/js/bootstrap.bundle.min.js.map +1 -0
- data/assets/js/jquery.min.js +2 -0
- data/assets/js/sidebar.js +25 -0
- data/assets/webfonts/fa-brands-400.eot +0 -0
- data/assets/webfonts/fa-brands-400.svg +3717 -0
- data/assets/webfonts/fa-brands-400.ttf +0 -0
- data/assets/webfonts/fa-brands-400.woff +0 -0
- data/assets/webfonts/fa-brands-400.woff2 +0 -0
- data/assets/webfonts/fa-regular-400.eot +0 -0
- data/assets/webfonts/fa-regular-400.svg +801 -0
- data/assets/webfonts/fa-regular-400.ttf +0 -0
- data/assets/webfonts/fa-regular-400.woff +0 -0
- data/assets/webfonts/fa-regular-400.woff2 +0 -0
- data/assets/webfonts/fa-solid-900.eot +0 -0
- data/assets/webfonts/fa-solid-900.svg +5034 -0
- data/assets/webfonts/fa-solid-900.ttf +0 -0
- data/assets/webfonts/fa-solid-900.woff +0 -0
- data/assets/webfonts/fa-solid-900.woff2 +0 -0
- metadata +184 -0
@@ -0,0 +1,144 @@
|
|
1
|
+
// Bootstrap functions
|
2
|
+
//
|
3
|
+
// Utility mixins and functions for evaluating source code across our variables, maps, and mixins.
|
4
|
+
|
5
|
+
// Ascending
|
6
|
+
// Used to evaluate Sass maps like our grid breakpoints.
|
7
|
+
@mixin _assert-ascending($map, $map-name) {
|
8
|
+
$prev-key: null;
|
9
|
+
$prev-num: null;
|
10
|
+
@each $key, $num in $map {
|
11
|
+
@if $prev-num == null or unit($num) == "%" or unit($prev-num) == "%" {
|
12
|
+
// Do nothing
|
13
|
+
} @else if not comparable($prev-num, $num) {
|
14
|
+
@warn "Potentially invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} whose unit makes it incomparable to #{$prev-num}, the value of the previous key '#{$prev-key}' !";
|
15
|
+
} @else if $prev-num >= $num {
|
16
|
+
@warn "Invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} which isn't greater than #{$prev-num}, the value of the previous key '#{$prev-key}' !";
|
17
|
+
}
|
18
|
+
$prev-key: $key;
|
19
|
+
$prev-num: $num;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
// Starts at zero
|
24
|
+
// Used to ensure the min-width of the lowest breakpoint starts at 0.
|
25
|
+
@mixin _assert-starts-at-zero($map, $map-name: "$grid-breakpoints") {
|
26
|
+
@if length($map) > 0 {
|
27
|
+
$values: map-values($map);
|
28
|
+
$first-value: nth($values, 1);
|
29
|
+
@if $first-value != 0 {
|
30
|
+
@warn "First breakpoint in #{$map-name} must start at 0, but starts at #{$first-value}.";
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
// Replace `$search` with `$replace` in `$string`
|
36
|
+
// Used on our SVG icon backgrounds for custom forms.
|
37
|
+
//
|
38
|
+
// @author Hugo Giraudel
|
39
|
+
// @param {String} $string - Initial string
|
40
|
+
// @param {String} $search - Substring to replace
|
41
|
+
// @param {String} $replace ('') - New value
|
42
|
+
// @return {String} - Updated string
|
43
|
+
@function str-replace($string, $search, $replace: "") {
|
44
|
+
$index: str-index($string, $search);
|
45
|
+
|
46
|
+
@if $index {
|
47
|
+
@return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
|
48
|
+
}
|
49
|
+
|
50
|
+
@return $string;
|
51
|
+
}
|
52
|
+
|
53
|
+
// See https://codepen.io/kevinweber/pen/dXWoRw
|
54
|
+
//
|
55
|
+
// Requires the use of quotes around data URIs.
|
56
|
+
|
57
|
+
@function escape-svg($string) {
|
58
|
+
@if str-index($string, "data:image/svg+xml") {
|
59
|
+
@each $char, $encoded in $escaped-characters {
|
60
|
+
// Do not escape the url brackets
|
61
|
+
@if str-index($string, "url(") == 1 {
|
62
|
+
$string: url("#{str-replace(str-slice($string, 6, -3), $char, $encoded)}");
|
63
|
+
} @else {
|
64
|
+
$string: str-replace($string, $char, $encoded);
|
65
|
+
}
|
66
|
+
}
|
67
|
+
}
|
68
|
+
|
69
|
+
@return $string;
|
70
|
+
}
|
71
|
+
|
72
|
+
// Color contrast
|
73
|
+
@function color-yiq($color, $dark: $yiq-text-dark, $light: $yiq-text-light) {
|
74
|
+
$r: red($color);
|
75
|
+
$g: green($color);
|
76
|
+
$b: blue($color);
|
77
|
+
|
78
|
+
$yiq: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;
|
79
|
+
|
80
|
+
@if ($yiq >= $yiq-contrasted-threshold) {
|
81
|
+
@return $dark;
|
82
|
+
} @else {
|
83
|
+
@return $light;
|
84
|
+
}
|
85
|
+
}
|
86
|
+
|
87
|
+
// Retrieve color Sass maps
|
88
|
+
@function color($key: "blue") {
|
89
|
+
@return map-get($colors, $key);
|
90
|
+
}
|
91
|
+
|
92
|
+
@function theme-color($key: "primary") {
|
93
|
+
@return map-get($theme-colors, $key);
|
94
|
+
}
|
95
|
+
|
96
|
+
@function gray($key: "100") {
|
97
|
+
@return map-get($grays, $key);
|
98
|
+
}
|
99
|
+
|
100
|
+
// Request a theme color level
|
101
|
+
@function theme-color-level($color-name: "primary", $level: 0) {
|
102
|
+
$color: theme-color($color-name);
|
103
|
+
$color-base: if($level > 0, $black, $white);
|
104
|
+
$level: abs($level);
|
105
|
+
|
106
|
+
@return mix($color-base, $color, $level * $theme-color-interval);
|
107
|
+
}
|
108
|
+
|
109
|
+
// Return valid calc
|
110
|
+
@function add($value1, $value2, $return-calc: true) {
|
111
|
+
@if $value1 == null {
|
112
|
+
@return $value2;
|
113
|
+
}
|
114
|
+
|
115
|
+
@if $value2 == null {
|
116
|
+
@return $value1;
|
117
|
+
}
|
118
|
+
|
119
|
+
@if type-of($value1) == number and type-of($value2) == number and comparable($value1, $value2) {
|
120
|
+
@return $value1 + $value2;
|
121
|
+
}
|
122
|
+
|
123
|
+
@return if($return-calc == true, calc(#{$value1} + #{$value2}), $value1 + unquote(" + ") + $value2);
|
124
|
+
}
|
125
|
+
|
126
|
+
@function subtract($value1, $value2, $return-calc: true) {
|
127
|
+
@if $value1 == null and $value2 == null {
|
128
|
+
@return null;
|
129
|
+
}
|
130
|
+
|
131
|
+
@if $value1 == null {
|
132
|
+
@return -$value2;
|
133
|
+
}
|
134
|
+
|
135
|
+
@if $value2 == null {
|
136
|
+
@return $value1;
|
137
|
+
}
|
138
|
+
|
139
|
+
@if type-of($value1) == number and type-of($value2) == number and comparable($value1, $value2) {
|
140
|
+
@return $value1 - $value2;
|
141
|
+
}
|
142
|
+
|
143
|
+
@return if($return-calc == true, calc(#{$value1} - #{$value2}), $value1 + unquote(" - ") + $value2);
|
144
|
+
}
|
@@ -0,0 +1,73 @@
|
|
1
|
+
// Container widths
|
2
|
+
//
|
3
|
+
// Set the container width, and override it for fixed navbars in media queries.
|
4
|
+
|
5
|
+
@if $enable-grid-classes {
|
6
|
+
// Single container class with breakpoint max-widths
|
7
|
+
.container,
|
8
|
+
// 100% wide container at all breakpoints
|
9
|
+
.container-fluid {
|
10
|
+
@include make-container();
|
11
|
+
}
|
12
|
+
|
13
|
+
// Responsive containers that are 100% wide until a breakpoint
|
14
|
+
@each $breakpoint, $container-max-width in $container-max-widths {
|
15
|
+
.container-#{$breakpoint} {
|
16
|
+
@extend .container-fluid;
|
17
|
+
}
|
18
|
+
|
19
|
+
@include media-breakpoint-up($breakpoint, $grid-breakpoints) {
|
20
|
+
%responsive-container-#{$breakpoint} {
|
21
|
+
max-width: $container-max-width;
|
22
|
+
}
|
23
|
+
|
24
|
+
// Extend each breakpoint which is smaller or equal to the current breakpoint
|
25
|
+
$extend-breakpoint: true;
|
26
|
+
|
27
|
+
@each $name, $width in $grid-breakpoints {
|
28
|
+
@if ($extend-breakpoint) {
|
29
|
+
.container#{breakpoint-infix($name, $grid-breakpoints)} {
|
30
|
+
@extend %responsive-container-#{$breakpoint};
|
31
|
+
}
|
32
|
+
|
33
|
+
// Once the current breakpoint is reached, stop extending
|
34
|
+
@if ($breakpoint == $name) {
|
35
|
+
$extend-breakpoint: false;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
|
44
|
+
// Row
|
45
|
+
//
|
46
|
+
// Rows contain your columns.
|
47
|
+
|
48
|
+
@if $enable-grid-classes {
|
49
|
+
.row {
|
50
|
+
@include make-row();
|
51
|
+
}
|
52
|
+
|
53
|
+
// Remove the negative margin from default .row, then the horizontal padding
|
54
|
+
// from all immediate children columns (to prevent runaway style inheritance).
|
55
|
+
.no-gutters {
|
56
|
+
margin-right: 0;
|
57
|
+
margin-left: 0;
|
58
|
+
|
59
|
+
> .col,
|
60
|
+
> [class*="col-"] {
|
61
|
+
padding-right: 0;
|
62
|
+
padding-left: 0;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
// Columns
|
68
|
+
//
|
69
|
+
// Common styles for small and large grid columns
|
70
|
+
|
71
|
+
@if $enable-grid-classes {
|
72
|
+
@include make-grid-columns();
|
73
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
// Responsive images (ensure images don't scale beyond their parents)
|
2
|
+
//
|
3
|
+
// This is purposefully opt-in via an explicit class rather than being the default for all `<img>`s.
|
4
|
+
// We previously tried the "images are responsive by default" approach in Bootstrap v2,
|
5
|
+
// and abandoned it in Bootstrap v3 because it breaks lots of third-party widgets (including Google Maps)
|
6
|
+
// which weren't expecting the images within themselves to be involuntarily resized.
|
7
|
+
// See also https://github.com/twbs/bootstrap/issues/18178
|
8
|
+
.img-fluid {
|
9
|
+
@include img-fluid();
|
10
|
+
}
|
11
|
+
|
12
|
+
|
13
|
+
// Image thumbnails
|
14
|
+
.img-thumbnail {
|
15
|
+
padding: $thumbnail-padding;
|
16
|
+
background-color: $thumbnail-bg;
|
17
|
+
border: $thumbnail-border-width solid $thumbnail-border-color;
|
18
|
+
@include border-radius($thumbnail-border-radius);
|
19
|
+
@include box-shadow($thumbnail-box-shadow);
|
20
|
+
|
21
|
+
// Keep them at most 100% wide
|
22
|
+
@include img-fluid();
|
23
|
+
}
|
24
|
+
|
25
|
+
//
|
26
|
+
// Figures
|
27
|
+
//
|
28
|
+
|
29
|
+
.figure {
|
30
|
+
// Ensures the caption's text aligns with the image.
|
31
|
+
display: inline-block;
|
32
|
+
}
|
33
|
+
|
34
|
+
.figure-img {
|
35
|
+
margin-bottom: $spacer / 2;
|
36
|
+
line-height: 1;
|
37
|
+
}
|
38
|
+
|
39
|
+
.figure-caption {
|
40
|
+
@include font-size($figure-caption-font-size);
|
41
|
+
color: $figure-caption-color;
|
42
|
+
}
|
@@ -0,0 +1,192 @@
|
|
1
|
+
// stylelint-disable selector-no-qualifying-type
|
2
|
+
|
3
|
+
//
|
4
|
+
// Base styles
|
5
|
+
//
|
6
|
+
|
7
|
+
.input-group {
|
8
|
+
position: relative;
|
9
|
+
display: flex;
|
10
|
+
flex-wrap: wrap; // For form validation feedback
|
11
|
+
align-items: stretch;
|
12
|
+
width: 100%;
|
13
|
+
|
14
|
+
> .form-control,
|
15
|
+
> .form-control-plaintext,
|
16
|
+
> .custom-select,
|
17
|
+
> .custom-file {
|
18
|
+
position: relative; // For focus state's z-index
|
19
|
+
flex: 1 1 auto;
|
20
|
+
width: 1%;
|
21
|
+
min-width: 0; // https://stackoverflow.com/questions/36247140/why-dont-flex-items-shrink-past-content-size
|
22
|
+
margin-bottom: 0;
|
23
|
+
|
24
|
+
+ .form-control,
|
25
|
+
+ .custom-select,
|
26
|
+
+ .custom-file {
|
27
|
+
margin-left: -$input-border-width;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
|
31
|
+
// Bring the "active" form control to the top of surrounding elements
|
32
|
+
> .form-control:focus,
|
33
|
+
> .custom-select:focus,
|
34
|
+
> .custom-file .custom-file-input:focus ~ .custom-file-label {
|
35
|
+
z-index: 3;
|
36
|
+
}
|
37
|
+
|
38
|
+
// Bring the custom file input above the label
|
39
|
+
> .custom-file .custom-file-input:focus {
|
40
|
+
z-index: 4;
|
41
|
+
}
|
42
|
+
|
43
|
+
> .form-control,
|
44
|
+
> .custom-select {
|
45
|
+
&:not(:last-child) { @include border-right-radius(0); }
|
46
|
+
&:not(:first-child) { @include border-left-radius(0); }
|
47
|
+
}
|
48
|
+
|
49
|
+
// Custom file inputs have more complex markup, thus requiring different
|
50
|
+
// border-radius overrides.
|
51
|
+
> .custom-file {
|
52
|
+
display: flex;
|
53
|
+
align-items: center;
|
54
|
+
|
55
|
+
&:not(:last-child) .custom-file-label,
|
56
|
+
&:not(:last-child) .custom-file-label::after { @include border-right-radius(0); }
|
57
|
+
&:not(:first-child) .custom-file-label { @include border-left-radius(0); }
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
|
62
|
+
// Prepend and append
|
63
|
+
//
|
64
|
+
// While it requires one extra layer of HTML for each, dedicated prepend and
|
65
|
+
// append elements allow us to 1) be less clever, 2) simplify our selectors, and
|
66
|
+
// 3) support HTML5 form validation.
|
67
|
+
|
68
|
+
.input-group-prepend,
|
69
|
+
.input-group-append {
|
70
|
+
display: flex;
|
71
|
+
|
72
|
+
// Ensure buttons are always above inputs for more visually pleasing borders.
|
73
|
+
// This isn't needed for `.input-group-text` since it shares the same border-color
|
74
|
+
// as our inputs.
|
75
|
+
.btn {
|
76
|
+
position: relative;
|
77
|
+
z-index: 2;
|
78
|
+
|
79
|
+
&:focus {
|
80
|
+
z-index: 3;
|
81
|
+
}
|
82
|
+
}
|
83
|
+
|
84
|
+
.btn + .btn,
|
85
|
+
.btn + .input-group-text,
|
86
|
+
.input-group-text + .input-group-text,
|
87
|
+
.input-group-text + .btn {
|
88
|
+
margin-left: -$input-border-width;
|
89
|
+
}
|
90
|
+
}
|
91
|
+
|
92
|
+
.input-group-prepend { margin-right: -$input-border-width; }
|
93
|
+
.input-group-append { margin-left: -$input-border-width; }
|
94
|
+
|
95
|
+
|
96
|
+
// Textual addons
|
97
|
+
//
|
98
|
+
// Serves as a catch-all element for any text or radio/checkbox input you wish
|
99
|
+
// to prepend or append to an input.
|
100
|
+
|
101
|
+
.input-group-text {
|
102
|
+
display: flex;
|
103
|
+
align-items: center;
|
104
|
+
padding: $input-padding-y $input-padding-x;
|
105
|
+
margin-bottom: 0; // Allow use of <label> elements by overriding our default margin-bottom
|
106
|
+
@include font-size($input-font-size); // Match inputs
|
107
|
+
font-weight: $font-weight-normal;
|
108
|
+
line-height: $input-line-height;
|
109
|
+
color: $input-group-addon-color;
|
110
|
+
text-align: center;
|
111
|
+
white-space: nowrap;
|
112
|
+
background-color: $input-group-addon-bg;
|
113
|
+
border: $input-border-width solid $input-group-addon-border-color;
|
114
|
+
@include border-radius($input-border-radius);
|
115
|
+
|
116
|
+
// Nuke default margins from checkboxes and radios to vertically center within.
|
117
|
+
input[type="radio"],
|
118
|
+
input[type="checkbox"] {
|
119
|
+
margin-top: 0;
|
120
|
+
}
|
121
|
+
}
|
122
|
+
|
123
|
+
|
124
|
+
// Sizing
|
125
|
+
//
|
126
|
+
// Remix the default form control sizing classes into new ones for easier
|
127
|
+
// manipulation.
|
128
|
+
|
129
|
+
.input-group-lg > .form-control:not(textarea),
|
130
|
+
.input-group-lg > .custom-select {
|
131
|
+
height: $input-height-lg;
|
132
|
+
}
|
133
|
+
|
134
|
+
.input-group-lg > .form-control,
|
135
|
+
.input-group-lg > .custom-select,
|
136
|
+
.input-group-lg > .input-group-prepend > .input-group-text,
|
137
|
+
.input-group-lg > .input-group-append > .input-group-text,
|
138
|
+
.input-group-lg > .input-group-prepend > .btn,
|
139
|
+
.input-group-lg > .input-group-append > .btn {
|
140
|
+
padding: $input-padding-y-lg $input-padding-x-lg;
|
141
|
+
@include font-size($input-font-size-lg);
|
142
|
+
line-height: $input-line-height-lg;
|
143
|
+
@include border-radius($input-border-radius-lg);
|
144
|
+
}
|
145
|
+
|
146
|
+
.input-group-sm > .form-control:not(textarea),
|
147
|
+
.input-group-sm > .custom-select {
|
148
|
+
height: $input-height-sm;
|
149
|
+
}
|
150
|
+
|
151
|
+
.input-group-sm > .form-control,
|
152
|
+
.input-group-sm > .custom-select,
|
153
|
+
.input-group-sm > .input-group-prepend > .input-group-text,
|
154
|
+
.input-group-sm > .input-group-append > .input-group-text,
|
155
|
+
.input-group-sm > .input-group-prepend > .btn,
|
156
|
+
.input-group-sm > .input-group-append > .btn {
|
157
|
+
padding: $input-padding-y-sm $input-padding-x-sm;
|
158
|
+
@include font-size($input-font-size-sm);
|
159
|
+
line-height: $input-line-height-sm;
|
160
|
+
@include border-radius($input-border-radius-sm);
|
161
|
+
}
|
162
|
+
|
163
|
+
.input-group-lg > .custom-select,
|
164
|
+
.input-group-sm > .custom-select {
|
165
|
+
padding-right: $custom-select-padding-x + $custom-select-indicator-padding;
|
166
|
+
}
|
167
|
+
|
168
|
+
|
169
|
+
// Prepend and append rounded corners
|
170
|
+
//
|
171
|
+
// These rulesets must come after the sizing ones to properly override sm and lg
|
172
|
+
// border-radius values when extending. They're more specific than we'd like
|
173
|
+
// with the `.input-group >` part, but without it, we cannot override the sizing.
|
174
|
+
|
175
|
+
|
176
|
+
.input-group > .input-group-prepend > .btn,
|
177
|
+
.input-group > .input-group-prepend > .input-group-text,
|
178
|
+
.input-group > .input-group-append:not(:last-child) > .btn,
|
179
|
+
.input-group > .input-group-append:not(:last-child) > .input-group-text,
|
180
|
+
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
|
181
|
+
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
|
182
|
+
@include border-right-radius(0);
|
183
|
+
}
|
184
|
+
|
185
|
+
.input-group > .input-group-append > .btn,
|
186
|
+
.input-group > .input-group-append > .input-group-text,
|
187
|
+
.input-group > .input-group-prepend:not(:first-child) > .btn,
|
188
|
+
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
|
189
|
+
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
|
190
|
+
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
|
191
|
+
@include border-left-radius(0);
|
192
|
+
}
|