jumbo-jekyll-theme 5.6.9.4 → 5.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (317) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.txt +202 -21
  3. data/README.md +10 -10
  4. data/_config.yml +146 -213
  5. data/_data/footer.yml +31 -33
  6. data/_data/nav.yml +73 -17
  7. data/_data/picture.yml +136 -0
  8. data/_data/settings.yml +97 -103
  9. data/_data/tags.yml +11 -11
  10. data/_data/universal_nav.yml +22 -0
  11. data/_includes/blog/authors_posts.html +37 -0
  12. data/_includes/blog/blog_filler_element.html +21 -0
  13. data/_includes/blog/display_blog_posts.html +126 -0
  14. data/_includes/{disqus-comments.html → blog/disqus_comments.html} +0 -0
  15. data/_includes/{latest-posts.html → blog/latest_posts.html} +0 -0
  16. data/_includes/blog/pagination.html +37 -0
  17. data/_includes/{post-series.html → blog/post_series.html} +0 -0
  18. data/_includes/blog/post_sidebar.html +81 -0
  19. data/_includes/{post-tags.html → blog/post_tags.html} +0 -0
  20. data/_includes/{read_time.html → blog/read_time.html} +0 -0
  21. data/_includes/components/breadcrumb.html +40 -0
  22. data/_includes/{carousel-header.html → components/carousel_header.html} +0 -0
  23. data/_includes/components/cookie_manager.html +80 -0
  24. data/_includes/components/css.html +8 -0
  25. data/_includes/{github-edit.html → components/github_edit.html} +0 -0
  26. data/_includes/components/head.html +60 -0
  27. data/_includes/components/http2.html +57 -0
  28. data/_includes/components/javascript.html +10 -0
  29. data/_includes/components/jumbotron.html +80 -0
  30. data/_includes/{linaro-404.html → components/linaro_404.html} +16 -19
  31. data/_includes/{schema.html → components/schema.html} +43 -43
  32. data/_includes/{sidebar.html → components/sidebar.html} +0 -0
  33. data/_includes/examples/custom_include.html +10 -0
  34. data/_includes/{custom_include_row.html → examples/custom_include_row.html} +562 -562
  35. data/_includes/flow/blocks.html +44 -0
  36. data/_includes/{core → flow}/button.html +5 -5
  37. data/_includes/flow/buttons.html +5 -0
  38. data/_includes/{core → flow}/call-to-action-banner.html +0 -0
  39. data/_includes/flow/container_row.html +11 -0
  40. data/_includes/flow/feature_block.html +41 -0
  41. data/_includes/flow/flow_inner.html +25 -0
  42. data/_includes/{core → flow}/full_width_row.html +5 -5
  43. data/_includes/{core → flow}/members-section.html +24 -32
  44. data/_includes/{core → flow}/slider.html +25 -33
  45. data/_includes/flow/slider_row.html +3 -0
  46. data/_includes/flow/tabbed_content.html +21 -0
  47. data/_includes/flow/text.html +3 -0
  48. data/_includes/flow/title.html +3 -0
  49. data/_includes/footer/footer.html +73 -0
  50. data/_includes/image.html +5 -6
  51. data/_includes/js_bundles/app.html +5 -0
  52. data/_includes/js_bundles/vendor.html +13 -0
  53. data/_includes/nav/brand.html +3 -0
  54. data/_includes/nav/nav.html +133 -0
  55. data/_includes/nav/universal_nav.html +36 -0
  56. data/_includes/{social-media-icons.html → social_media_icons.html} +0 -0
  57. data/_includes/youtube.html +74 -6
  58. data/_layouts/author.html +62 -6
  59. data/_layouts/base.html +6 -8
  60. data/_layouts/default.html +3 -3
  61. data/_layouts/error.html +25 -25
  62. data/_layouts/flow.html +33 -36
  63. data/_layouts/post-index.html +17 -16
  64. data/_layouts/post.html +55 -39
  65. data/_sass/app/blog.scss +0 -22
  66. data/_sass/app/overrides.scss +121 -66
  67. data/_sass/app/search.scss +51 -51
  68. data/_sass/blog.scss +1 -1
  69. data/_sass/bootstrap/_alert.scss +51 -0
  70. data/_sass/bootstrap/_badge.scss +47 -0
  71. data/_sass/bootstrap/_breadcrumb.scss +41 -0
  72. data/_sass/bootstrap/_button-group.scss +172 -0
  73. data/_sass/bootstrap/_buttons.scss +75 -100
  74. data/_sass/bootstrap/_card.scss +301 -0
  75. data/_sass/bootstrap/_carousel.scss +161 -195
  76. data/_sass/bootstrap/_close.scss +15 -16
  77. data/_sass/bootstrap/_code.scss +15 -36
  78. data/_sass/bootstrap/_custom-forms.scss +433 -0
  79. data/_sass/bootstrap/_dropdown.scss +166 -0
  80. data/_sass/bootstrap/_forms.scss +213 -497
  81. data/_sass/bootstrap/_functions.scss +86 -0
  82. data/_sass/bootstrap/_grid.scss +29 -61
  83. data/_sass/bootstrap/_images.scss +42 -0
  84. data/_sass/bootstrap/_input-group.scss +173 -0
  85. data/_sass/bootstrap/_jumbotron.scss +9 -47
  86. data/_sass/bootstrap/_list-group.scss +64 -79
  87. data/_sass/bootstrap/_media.scss +3 -61
  88. data/_sass/bootstrap/_mixins.scss +19 -18
  89. data/_sass/bootstrap/_modal.scss +180 -0
  90. data/_sass/bootstrap/_nav.scss +118 -0
  91. data/_sass/bootstrap/_navbar.scss +192 -555
  92. data/_sass/bootstrap/_pagination.scss +59 -70
  93. data/_sass/bootstrap/_popover.scss +183 -0
  94. data/_sass/bootstrap/_print.scss +89 -49
  95. data/_sass/bootstrap/_progress.scss +34 -0
  96. data/_sass/bootstrap/_reboot.scss +483 -0
  97. data/_sass/bootstrap/_root.scss +19 -0
  98. data/_sass/bootstrap/_tables.scss +119 -166
  99. data/_sass/bootstrap/_tooltip.scss +93 -79
  100. data/_sass/bootstrap/_transitions.scss +22 -0
  101. data/_sass/bootstrap/_type.scss +66 -239
  102. data/_sass/bootstrap/_utilities.scss +15 -55
  103. data/_sass/bootstrap/_variables.scss +952 -932
  104. data/_sass/bootstrap/bootstrap-grid.scss +32 -0
  105. data/_sass/bootstrap/bootstrap-reboot.scss +12 -0
  106. data/_sass/bootstrap/bootstrap.scss +42 -0
  107. data/_sass/bootstrap/mixins/_alert.scss +13 -0
  108. data/_sass/bootstrap/mixins/_background-variant.scss +14 -5
  109. data/_sass/bootstrap/mixins/_badge.scss +12 -0
  110. data/_sass/bootstrap/mixins/_border-radius.scss +25 -8
  111. data/_sass/bootstrap/mixins/_box-shadow.scss +5 -0
  112. data/_sass/bootstrap/mixins/_breakpoints.scss +123 -0
  113. data/_sass/bootstrap/mixins/_buttons.scss +84 -40
  114. data/_sass/bootstrap/mixins/_caret.scss +66 -0
  115. data/_sass/bootstrap/mixins/_clearfix.scss +3 -18
  116. data/_sass/bootstrap/mixins/_float.scss +11 -0
  117. data/_sass/bootstrap/mixins/_forms.scss +125 -66
  118. data/_sass/bootstrap/mixins/_gradients.scss +17 -30
  119. data/_sass/bootstrap/mixins/_grid-framework.scss +52 -66
  120. data/_sass/bootstrap/mixins/_grid.scss +37 -107
  121. data/_sass/bootstrap/mixins/_hover.scss +37 -0
  122. data/_sass/bootstrap/mixins/_image.scss +18 -15
  123. data/_sass/bootstrap/mixins/_list-group.scss +10 -21
  124. data/_sass/bootstrap/mixins/_lists.scss +7 -0
  125. data/_sass/bootstrap/mixins/_nav-divider.scss +4 -4
  126. data/_sass/bootstrap/mixins/_pagination.scss +10 -12
  127. data/_sass/bootstrap/mixins/_reset-text.scss +7 -8
  128. data/_sass/bootstrap/mixins/_resize.scss +1 -1
  129. data/_sass/bootstrap/mixins/_screen-reader.scss +33 -0
  130. data/_sass/bootstrap/mixins/_size.scss +1 -5
  131. data/_sass/bootstrap/mixins/_table-row.scss +16 -14
  132. data/_sass/bootstrap/mixins/_text-emphasis.scss +7 -5
  133. data/_sass/bootstrap/mixins/_text-hide.scss +13 -0
  134. data/_sass/bootstrap/mixins/{_text-overflow.scss → _text-truncate.scss} +2 -2
  135. data/_sass/bootstrap/mixins/_transition.scss +13 -0
  136. data/_sass/bootstrap/mixins/_visibility.scss +7 -0
  137. data/_sass/bootstrap/utilities/_align.scss +8 -0
  138. data/_sass/bootstrap/utilities/_background.scss +19 -0
  139. data/_sass/bootstrap/utilities/_borders.scss +59 -0
  140. data/_sass/bootstrap/utilities/_clearfix.scss +3 -0
  141. data/_sass/bootstrap/utilities/_display.scss +38 -0
  142. data/_sass/bootstrap/{_responsive-embed.scss → utilities/_embed.scss} +26 -9
  143. data/_sass/bootstrap/utilities/_flex.scss +51 -0
  144. data/_sass/bootstrap/utilities/_float.scss +9 -0
  145. data/_sass/bootstrap/utilities/_position.scss +37 -0
  146. data/_sass/bootstrap/utilities/_screenreaders.scss +11 -0
  147. data/_sass/bootstrap/utilities/_shadows.scss +6 -0
  148. data/_sass/bootstrap/utilities/_sizing.scss +12 -0
  149. data/_sass/bootstrap/utilities/_spacing.scss +51 -0
  150. data/_sass/bootstrap/utilities/_text.scss +58 -0
  151. data/_sass/bootstrap/utilities/_visibility.scss +11 -0
  152. data/_sass/core.scss +15 -20
  153. data/_sass/core/blog.scss +126 -426
  154. data/_sass/core/breadcrumb.scss +16 -96
  155. data/_sass/core/carousel-header.scss +91 -91
  156. data/_sass/core/carousel.scss +7 -8
  157. data/_sass/core/cookies.scss +194 -0
  158. data/_sass/core/error.scss +190 -190
  159. data/_sass/core/flow.scss +71 -186
  160. data/_sass/core/fontello.scss +156 -0
  161. data/_sass/core/footer.scss +69 -142
  162. data/_sass/core/jumbotron.scss +90 -279
  163. data/_sass/core/navbar.scss +233 -0
  164. data/_sass/core/normalize.scss +357 -357
  165. data/_sass/core/theme.scss +40 -918
  166. data/assets/css/main-blog.scss +15 -14
  167. data/assets/css/main-error.scss +14 -13
  168. data/assets/css/main-search.scss +4 -3
  169. data/assets/css/main.scss +12 -11
  170. data/assets/fonts/fontello/fontello.eot +0 -0
  171. data/assets/fonts/fontello/fontello.svg +82 -0
  172. data/assets/fonts/fontello/fontello.ttf +0 -0
  173. data/assets/fonts/fontello/fontello.woff +0 -0
  174. data/assets/fonts/fontello/fontello.woff2 +0 -0
  175. data/assets/fonts/{lato-regular → lato}/LICENSE.txt +0 -0
  176. data/assets/fonts/{lato-regular → lato}/Lato-regular.eot +0 -0
  177. data/assets/fonts/{lato-regular → lato}/Lato-regular.svg +0 -0
  178. data/assets/fonts/{lato-regular → lato}/Lato-regular.ttf +0 -0
  179. data/assets/fonts/{lato-regular → lato}/Lato-regular.woff +0 -0
  180. data/assets/fonts/{lato-regular → lato}/Lato-regular.woff2 +0 -0
  181. data/assets/images/clipboard.svg +3 -0
  182. data/assets/js/app/main.js +298 -261
  183. data/assets/js/app/scroll-to-anchors.js +10 -9
  184. data/assets/js/app/sticky-tab-bar.js +67 -69
  185. data/assets/js/bootstrap.js.map +1 -0
  186. data/assets/js/popper.min.js.map +1 -0
  187. data/assets/js/vendor/_popper.js +5 -0
  188. data/assets/js/vendor/bootstrap.js +5 -2376
  189. data/assets/js/vendor/fess-ss.min.js +24 -24
  190. data/assets/js/vendor/jquery.cookie.js +120 -0
  191. data/assets/js/vendor/jquery.ihavecookies.js +263 -0
  192. data/assets/js/vendor/jquery.slim.js +8842 -0
  193. data/robots.txt +9 -9
  194. metadata +157 -377
  195. data/_data/example-carousel-data-source.yml +0 -36
  196. data/_data/members-section-example.yml +0 -0
  197. data/_data/universal-nav.yml +0 -7
  198. data/_includes/authors-posts.html +0 -18
  199. data/_includes/blog-filler-element.html +0 -24
  200. data/_includes/breadcrumb.html +0 -97
  201. data/_includes/core/blocks.html +0 -30
  202. data/_includes/core/buttons.html +0 -5
  203. data/_includes/core/container_row.html +0 -7
  204. data/_includes/core/feature_block.html +0 -43
  205. data/_includes/core/slider_row.html +0 -3
  206. data/_includes/core/text.html +0 -3
  207. data/_includes/core/title.html +0 -3
  208. data/_includes/core/youtube_video_embed.html +0 -11
  209. data/_includes/css.html +0 -9
  210. data/_includes/custom_include.html +0 -13
  211. data/_includes/display-blog-posts.html +0 -154
  212. data/_includes/flow_inner.html +0 -19
  213. data/_includes/footer.html +0 -68
  214. data/_includes/google-analytics.html +0 -16
  215. data/_includes/head.html +0 -19
  216. data/_includes/http2.html +0 -102
  217. data/_includes/javascript.html +0 -10
  218. data/_includes/jumbotron.html +0 -115
  219. data/_includes/linaro-svg.html +0 -1
  220. data/_includes/nav.html +0 -153
  221. data/_includes/pagination.html +0 -39
  222. data/_includes/post-sidebar.html +0 -182
  223. data/_includes/responsive-image.html +0 -6
  224. data/_includes/thumb-image.html +0 -31
  225. data/_includes/thumb.html +0 -2
  226. data/_includes/thumbnail_image.html +0 -10
  227. data/_includes/universal-nav.html +0 -30
  228. data/_layouts/jumbotron-container.html +0 -19
  229. data/_layouts/jumbotron.html +0 -12
  230. data/_layouts/redirect.html +0 -11
  231. data/_sass/_bootstrap-compass.scss +0 -9
  232. data/_sass/_bootstrap-mincer.scss +0 -19
  233. data/_sass/_bootstrap-sprockets.scss +0 -9
  234. data/_sass/_bootstrap.scss +0 -56
  235. data/_sass/app-package.scss +0 -11
  236. data/_sass/app/contact.scss +0 -3
  237. data/_sass/app/custom.scss +0 -1
  238. data/_sass/bootstrap/_alerts.scss +0 -73
  239. data/_sass/bootstrap/_badges.scss +0 -68
  240. data/_sass/bootstrap/_breadcrumbs.scss +0 -28
  241. data/_sass/bootstrap/_button-groups.scss +0 -244
  242. data/_sass/bootstrap/_component-animations.scss +0 -37
  243. data/_sass/bootstrap/_dropdowns.scss +0 -216
  244. data/_sass/bootstrap/_glyphicons.scss +0 -307
  245. data/_sass/bootstrap/_input-groups.scss +0 -171
  246. data/_sass/bootstrap/_labels.scss +0 -66
  247. data/_sass/bootstrap/_modals.scss +0 -150
  248. data/_sass/bootstrap/_navs.scss +0 -242
  249. data/_sass/bootstrap/_normalize.scss +0 -424
  250. data/_sass/bootstrap/_pager.scss +0 -54
  251. data/_sass/bootstrap/_panels.scss +0 -271
  252. data/_sass/bootstrap/_popovers.scss +0 -131
  253. data/_sass/bootstrap/_progress-bars.scss +0 -87
  254. data/_sass/bootstrap/_responsive-utilities.scss +0 -179
  255. data/_sass/bootstrap/_scaffolding.scss +0 -161
  256. data/_sass/bootstrap/_theme.scss +0 -291
  257. data/_sass/bootstrap/_thumbnails.scss +0 -38
  258. data/_sass/bootstrap/_wells.scss +0 -29
  259. data/_sass/bootstrap/mixins/_alerts.scss +0 -14
  260. data/_sass/bootstrap/mixins/_center-block.scss +0 -7
  261. data/_sass/bootstrap/mixins/_hide-text.scss +0 -21
  262. data/_sass/bootstrap/mixins/_labels.scss +0 -12
  263. data/_sass/bootstrap/mixins/_nav-vertical-align.scss +0 -9
  264. data/_sass/bootstrap/mixins/_opacity.scss +0 -8
  265. data/_sass/bootstrap/mixins/_panels.scss +0 -24
  266. data/_sass/bootstrap/mixins/_progress-bar.scss +0 -10
  267. data/_sass/bootstrap/mixins/_reset-filter.scss +0 -8
  268. data/_sass/bootstrap/mixins/_responsive-visibility.scss +0 -21
  269. data/_sass/bootstrap/mixins/_tab-focus.scss +0 -9
  270. data/_sass/bootstrap/mixins/_vendor-prefixes.scss +0 -222
  271. data/_sass/core/animations.scss +0 -125
  272. data/_sass/core/cookieconsent.scss +0 -39
  273. data/_sass/core/critical.scss +0 -0
  274. data/_sass/core/custom.scss +0 -3
  275. data/_sass/core/fa.scss +0 -2336
  276. data/_sass/core/flipclock.scss +0 -434
  277. data/_sass/core/fly.scss +0 -10
  278. data/_sass/core/font-awesome.min.scss +0 -4
  279. data/_sass/core/fonts.scss +0 -3
  280. data/_sass/core/forms.scss +0 -3
  281. data/_sass/core/homepage.scss +0 -19
  282. data/_sass/core/lightbox.scss +0 -212
  283. data/_sass/core/nav.scss +0 -1015
  284. data/_sass/core/social-media-icons.scss +0 -67
  285. data/_sass/core/tables.scss +0 -175
  286. data/_sass/core/triangle-divider.scss +0 -27
  287. data/_sass/core/universal-nav.scss +0 -167
  288. data/_sass/core/youtube-lazy.scss +0 -51
  289. data/_sass/core/youtube.scss +0 -65
  290. data/_sass/home.scss +0 -2
  291. data/assets/fonts/fontawesome-webfont.eot +0 -0
  292. data/assets/fonts/fontawesome-webfont.svg +0 -2671
  293. data/assets/fonts/fontawesome-webfont.ttf +0 -0
  294. data/assets/fonts/fontawesome-webfont.woff +0 -0
  295. data/assets/fonts/fontawesome-webfont.woff2 +0 -0
  296. data/assets/fonts/fontello.eot +0 -0
  297. data/assets/fonts/fontello.svg +0 -44
  298. data/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  299. data/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  300. data/assets/fonts/glyphicons-halflings-regular.woff2 +0 -0
  301. data/assets/images/Linaro-Logo_light.png +0 -0
  302. data/assets/images/content/background-image1.jpg +0 -0
  303. data/assets/images/content/background-image2.png +0 -0
  304. data/assets/images/content/background-image3.jpg +0 -0
  305. data/assets/images/content/js-logo.png +0 -0
  306. data/assets/js/app/blog-comments.js +0 -50
  307. data/assets/js/app/facebook.js +0 -8
  308. data/assets/js/app/fly.js +0 -45
  309. data/assets/js/app/search.js +0 -29
  310. data/assets/js/app/youtube-lazy.js +0 -25
  311. data/assets/js/pacakge-search.js +0 -9
  312. data/assets/js/package-blog.js +0 -12
  313. data/assets/js/package-extended.js +0 -14
  314. data/assets/js/package-home.js +0 -14
  315. data/assets/js/package-main.js +0 -13
  316. data/assets/js/package-search.js +0 -8
  317. data/assets/js/vendor/cookieconsent.js +0 -1495
@@ -1,64 +1,43 @@
1
- //
2
- // Code (inline and block)
3
- // --------------------------------------------------
4
-
5
-
6
- // Inline and block code styles
7
- code,
8
- kbd,
9
- pre,
10
- samp {
11
- font-family: $font-family-monospace;
12
- }
13
-
14
1
  // Inline code
15
2
  code {
16
- padding: 2px 4px;
17
- font-size: 90%;
3
+ font-size: $code-font-size;
18
4
  color: $code-color;
19
- background-color: $code-bg;
20
- border-radius: $border-radius-base;
5
+ word-break: break-word;
6
+
7
+ // Streamline the style when inside anchors to avoid broken underline and more
8
+ a > & {
9
+ color: inherit;
10
+ }
21
11
  }
22
12
 
23
13
  // User input typically entered via keyboard
24
14
  kbd {
25
- padding: 2px 4px;
26
- font-size: 90%;
15
+ padding: $kbd-padding-y $kbd-padding-x;
16
+ font-size: $kbd-font-size;
27
17
  color: $kbd-color;
28
18
  background-color: $kbd-bg;
29
- border-radius: $border-radius-small;
30
- box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);
19
+ @include border-radius($border-radius-sm);
20
+ @include box-shadow($kbd-box-shadow);
31
21
 
32
22
  kbd {
33
23
  padding: 0;
34
24
  font-size: 100%;
35
- font-weight: bold;
36
- box-shadow: none;
25
+ font-weight: $nested-kbd-font-weight;
26
+ @include box-shadow(none);
37
27
  }
38
28
  }
39
29
 
40
30
  // Blocks of code
41
31
  pre {
42
32
  display: block;
43
- padding: (($line-height-computed - 1) / 2);
44
- margin: 0 0 ($line-height-computed / 2);
45
- font-size: ($font-size-base - 1); // 14px to 13px
46
- line-height: $line-height-base;
47
- word-break: break-all;
48
- word-wrap: break-word;
33
+ font-size: $code-font-size;
49
34
  color: $pre-color;
50
- background-color: $pre-bg;
51
- border: 1px solid $pre-border-color;
52
- border-radius: $border-radius-base;
53
35
 
54
36
  // Account for some code outputs that place code tags in pre tags
55
37
  code {
56
- padding: 0;
57
38
  font-size: inherit;
58
39
  color: inherit;
59
- white-space: pre-wrap;
60
- background-color: transparent;
61
- border-radius: 0;
40
+ word-break: normal;
62
41
  }
63
42
  }
64
43
 
@@ -0,0 +1,433 @@
1
+ // Embedded icons from Open Iconic.
2
+ // Released under MIT and copyright 2014 Waybury.
3
+ // https://useiconic.com/open
4
+
5
+
6
+ // Checkboxes and radios
7
+ //
8
+ // Base class takes care of all the key behavioral aspects.
9
+
10
+ .custom-control {
11
+ position: relative;
12
+ display: block;
13
+ min-height: ($font-size-base * $line-height-base);
14
+ padding-left: $custom-control-gutter;
15
+ }
16
+
17
+ .custom-control-inline {
18
+ display: inline-flex;
19
+ margin-right: $custom-control-spacer-x;
20
+ }
21
+
22
+ .custom-control-input {
23
+ position: absolute;
24
+ z-index: -1; // Put the input behind the label so it doesn't overlay text
25
+ opacity: 0;
26
+
27
+ &:checked ~ .custom-control-label::before {
28
+ color: $custom-control-indicator-checked-color;
29
+ @include gradient-bg($custom-control-indicator-checked-bg);
30
+ @include box-shadow($custom-control-indicator-checked-box-shadow);
31
+ }
32
+
33
+ &:focus ~ .custom-control-label::before {
34
+ // the mixin is not used here to make sure there is feedback
35
+ box-shadow: $custom-control-indicator-focus-box-shadow;
36
+ }
37
+
38
+ &:active ~ .custom-control-label::before {
39
+ color: $custom-control-indicator-active-color;
40
+ background-color: $custom-control-indicator-active-bg;
41
+ @include box-shadow($custom-control-indicator-active-box-shadow);
42
+ }
43
+
44
+ &:disabled {
45
+ ~ .custom-control-label {
46
+ color: $custom-control-label-disabled-color;
47
+
48
+ &::before {
49
+ background-color: $custom-control-indicator-disabled-bg;
50
+ }
51
+ }
52
+ }
53
+ }
54
+
55
+ // Custom control indicators
56
+ //
57
+ // Build the custom controls out of pseudo-elements.
58
+
59
+ .custom-control-label {
60
+ position: relative;
61
+ margin-bottom: 0;
62
+
63
+ // Background-color and (when enabled) gradient
64
+ &::before {
65
+ position: absolute;
66
+ top: (($font-size-base * $line-height-base - $custom-control-indicator-size) / 2);
67
+ left: -$custom-control-gutter;
68
+ display: block;
69
+ width: $custom-control-indicator-size;
70
+ height: $custom-control-indicator-size;
71
+ pointer-events: none;
72
+ content: "";
73
+ user-select: none;
74
+ background-color: $custom-control-indicator-bg;
75
+ @include box-shadow($custom-control-indicator-box-shadow);
76
+ }
77
+
78
+ // Foreground (icon)
79
+ &::after {
80
+ position: absolute;
81
+ top: (($font-size-base * $line-height-base - $custom-control-indicator-size) / 2);
82
+ left: -$custom-control-gutter;
83
+ display: block;
84
+ width: $custom-control-indicator-size;
85
+ height: $custom-control-indicator-size;
86
+ content: "";
87
+ background-repeat: no-repeat;
88
+ background-position: center center;
89
+ background-size: $custom-control-indicator-bg-size;
90
+ }
91
+ }
92
+
93
+
94
+ // Checkboxes
95
+ //
96
+ // Tweak just a few things for checkboxes.
97
+
98
+ .custom-checkbox {
99
+ .custom-control-label::before {
100
+ @include border-radius($custom-checkbox-indicator-border-radius);
101
+ }
102
+
103
+ .custom-control-input:checked ~ .custom-control-label {
104
+ &::before {
105
+ @include gradient-bg($custom-control-indicator-checked-bg);
106
+ }
107
+ &::after {
108
+ background-image: $custom-checkbox-indicator-icon-checked;
109
+ }
110
+ }
111
+
112
+ .custom-control-input:indeterminate ~ .custom-control-label {
113
+ &::before {
114
+ @include gradient-bg($custom-checkbox-indicator-indeterminate-bg);
115
+ @include box-shadow($custom-checkbox-indicator-indeterminate-box-shadow);
116
+ }
117
+ &::after {
118
+ background-image: $custom-checkbox-indicator-icon-indeterminate;
119
+ }
120
+ }
121
+
122
+ .custom-control-input:disabled {
123
+ &:checked ~ .custom-control-label::before {
124
+ background-color: $custom-control-indicator-checked-disabled-bg;
125
+ }
126
+ &:indeterminate ~ .custom-control-label::before {
127
+ background-color: $custom-control-indicator-checked-disabled-bg;
128
+ }
129
+ }
130
+ }
131
+
132
+ // Radios
133
+ //
134
+ // Tweak just a few things for radios.
135
+
136
+ .custom-radio {
137
+ .custom-control-label::before {
138
+ border-radius: $custom-radio-indicator-border-radius;
139
+ }
140
+
141
+ .custom-control-input:checked ~ .custom-control-label {
142
+ &::before {
143
+ @include gradient-bg($custom-control-indicator-checked-bg);
144
+ }
145
+ &::after {
146
+ background-image: $custom-radio-indicator-icon-checked;
147
+ }
148
+ }
149
+
150
+ .custom-control-input:disabled {
151
+ &:checked ~ .custom-control-label::before {
152
+ background-color: $custom-control-indicator-checked-disabled-bg;
153
+ }
154
+ }
155
+ }
156
+
157
+
158
+ // Select
159
+ //
160
+ // Replaces the browser default select with a custom one, mostly pulled from
161
+ // https://primer.github.io/.
162
+ //
163
+
164
+ .custom-select {
165
+ display: inline-block;
166
+ width: 100%;
167
+ height: $custom-select-height;
168
+ padding: $custom-select-padding-y ($custom-select-padding-x + $custom-select-indicator-padding) $custom-select-padding-y $custom-select-padding-x;
169
+ line-height: $custom-select-line-height;
170
+ color: $custom-select-color;
171
+ vertical-align: middle;
172
+ background: $custom-select-bg $custom-select-indicator no-repeat right $custom-select-padding-x center;
173
+ background-size: $custom-select-bg-size;
174
+ border: $custom-select-border-width solid $custom-select-border-color;
175
+ @if $enable-rounded {
176
+ border-radius: $custom-select-border-radius;
177
+ } @else {
178
+ border-radius: 0;
179
+ }
180
+ @include box-shadow($custom-select-box-shadow);
181
+ appearance: none;
182
+
183
+ &:focus {
184
+ border-color: $custom-select-focus-border-color;
185
+ outline: 0;
186
+ @if $enable-shadows {
187
+ box-shadow: $custom-select-box-shadow, $custom-select-focus-box-shadow;
188
+ } @else {
189
+ box-shadow: $custom-select-focus-box-shadow;
190
+ }
191
+
192
+ &::-ms-value {
193
+ // For visual consistency with other platforms/browsers,
194
+ // suppress the default white text on blue background highlight given to
195
+ // the selected option text when the (still closed) <select> receives focus
196
+ // in IE and (under certain conditions) Edge.
197
+ // See https://github.com/twbs/bootstrap/issues/19398.
198
+ color: $input-color;
199
+ background-color: $input-bg;
200
+ }
201
+ }
202
+
203
+ &[multiple],
204
+ &[size]:not([size="1"]) {
205
+ height: auto;
206
+ padding-right: $custom-select-padding-x;
207
+ background-image: none;
208
+ }
209
+
210
+ &:disabled {
211
+ color: $custom-select-disabled-color;
212
+ background-color: $custom-select-disabled-bg;
213
+ }
214
+
215
+ // Hides the default caret in IE11
216
+ &::-ms-expand {
217
+ opacity: 0;
218
+ }
219
+ }
220
+
221
+ .custom-select-sm {
222
+ height: $custom-select-height-sm;
223
+ padding-top: $custom-select-padding-y;
224
+ padding-bottom: $custom-select-padding-y;
225
+ font-size: $custom-select-font-size-sm;
226
+ }
227
+
228
+ .custom-select-lg {
229
+ height: $custom-select-height-lg;
230
+ padding-top: $custom-select-padding-y;
231
+ padding-bottom: $custom-select-padding-y;
232
+ font-size: $custom-select-font-size-lg;
233
+ }
234
+
235
+
236
+ // File
237
+ //
238
+ // Custom file input.
239
+
240
+ .custom-file {
241
+ position: relative;
242
+ display: inline-block;
243
+ width: 100%;
244
+ height: $custom-file-height;
245
+ margin-bottom: 0;
246
+ }
247
+
248
+ .custom-file-input {
249
+ position: relative;
250
+ z-index: 2;
251
+ width: 100%;
252
+ height: $custom-file-height;
253
+ margin: 0;
254
+ opacity: 0;
255
+
256
+ &:focus ~ .custom-file-label {
257
+ border-color: $custom-file-focus-border-color;
258
+ box-shadow: $custom-file-focus-box-shadow;
259
+
260
+ &::after {
261
+ border-color: $custom-file-focus-border-color;
262
+ }
263
+ }
264
+
265
+ &:disabled ~ .custom-file-label {
266
+ background-color: $custom-file-disabled-bg;
267
+ }
268
+
269
+ @each $lang, $value in $custom-file-text {
270
+ &:lang(#{$lang}) ~ .custom-file-label::after {
271
+ content: $value;
272
+ }
273
+ }
274
+ }
275
+
276
+ .custom-file-label {
277
+ position: absolute;
278
+ top: 0;
279
+ right: 0;
280
+ left: 0;
281
+ z-index: 1;
282
+ height: $custom-file-height;
283
+ padding: $custom-file-padding-y $custom-file-padding-x;
284
+ line-height: $custom-file-line-height;
285
+ color: $custom-file-color;
286
+ background-color: $custom-file-bg;
287
+ border: $custom-file-border-width solid $custom-file-border-color;
288
+ @include border-radius($custom-file-border-radius);
289
+ @include box-shadow($custom-file-box-shadow);
290
+
291
+ &::after {
292
+ position: absolute;
293
+ top: 0;
294
+ right: 0;
295
+ bottom: 0;
296
+ z-index: 3;
297
+ display: block;
298
+ height: $custom-file-height-inner;
299
+ padding: $custom-file-padding-y $custom-file-padding-x;
300
+ line-height: $custom-file-line-height;
301
+ color: $custom-file-button-color;
302
+ content: "Browse";
303
+ @include gradient-bg($custom-file-button-bg);
304
+ border-left: $custom-file-border-width solid $custom-file-border-color;
305
+ @include border-radius(0 $custom-file-border-radius $custom-file-border-radius 0);
306
+ }
307
+ }
308
+
309
+ // Range
310
+ //
311
+ // Style range inputs the same across browsers. Vendor-specific rules for pseudo
312
+ // elements cannot be mixed. As such, there are no shared styles for focus or
313
+ // active states on prefixed selectors.
314
+
315
+ .custom-range {
316
+ width: 100%;
317
+ padding-left: 0; // Firefox specific
318
+ background-color: transparent;
319
+ appearance: none;
320
+
321
+ &:focus {
322
+ outline: none;
323
+
324
+ // Pseudo-elements must be split across multiple rulesets to have an affect.
325
+ // No box-shadow() mixin for focus accessibility.
326
+ &::-webkit-slider-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
327
+ &::-moz-range-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
328
+ &::-ms-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
329
+ }
330
+
331
+ &::-moz-focus-outer {
332
+ border: 0;
333
+ }
334
+
335
+ &::-webkit-slider-thumb {
336
+ width: $custom-range-thumb-width;
337
+ height: $custom-range-thumb-height;
338
+ margin-top: (($custom-range-track-height - $custom-range-thumb-height) / 2); // Webkit specific
339
+ @include gradient-bg($custom-range-thumb-bg);
340
+ border: $custom-range-thumb-border;
341
+ @include border-radius($custom-range-thumb-border-radius);
342
+ @include box-shadow($custom-range-thumb-box-shadow);
343
+ @include transition($custom-forms-transition);
344
+ appearance: none;
345
+
346
+ &:active {
347
+ @include gradient-bg($custom-range-thumb-active-bg);
348
+ }
349
+ }
350
+
351
+ &::-webkit-slider-runnable-track {
352
+ width: $custom-range-track-width;
353
+ height: $custom-range-track-height;
354
+ color: transparent; // Why?
355
+ cursor: $custom-range-track-cursor;
356
+ background-color: $custom-range-track-bg;
357
+ border-color: transparent;
358
+ @include border-radius($custom-range-track-border-radius);
359
+ @include box-shadow($custom-range-track-box-shadow);
360
+ }
361
+
362
+ &::-moz-range-thumb {
363
+ width: $custom-range-thumb-width;
364
+ height: $custom-range-thumb-height;
365
+ @include gradient-bg($custom-range-thumb-bg);
366
+ border: $custom-range-thumb-border;
367
+ @include border-radius($custom-range-thumb-border-radius);
368
+ @include box-shadow($custom-range-thumb-box-shadow);
369
+ @include transition($custom-forms-transition);
370
+ appearance: none;
371
+
372
+ &:active {
373
+ @include gradient-bg($custom-range-thumb-active-bg);
374
+ }
375
+ }
376
+
377
+ &::-moz-range-track {
378
+ width: $custom-range-track-width;
379
+ height: $custom-range-track-height;
380
+ color: transparent;
381
+ cursor: $custom-range-track-cursor;
382
+ background-color: $custom-range-track-bg;
383
+ border-color: transparent; // Firefox specific?
384
+ @include border-radius($custom-range-track-border-radius);
385
+ @include box-shadow($custom-range-track-box-shadow);
386
+ }
387
+
388
+ &::-ms-thumb {
389
+ width: $custom-range-thumb-width;
390
+ height: $custom-range-thumb-height;
391
+ margin-top: 0; // Edge specific
392
+ margin-right: $custom-range-thumb-focus-box-shadow-width; // Workaround that overflowed box-shadow is hidden.
393
+ margin-left: $custom-range-thumb-focus-box-shadow-width; // Workaround that overflowed box-shadow is hidden.
394
+ @include gradient-bg($custom-range-thumb-bg);
395
+ border: $custom-range-thumb-border;
396
+ @include border-radius($custom-range-thumb-border-radius);
397
+ @include box-shadow($custom-range-thumb-box-shadow);
398
+ @include transition($custom-forms-transition);
399
+ appearance: none;
400
+
401
+ &:active {
402
+ @include gradient-bg($custom-range-thumb-active-bg);
403
+ }
404
+ }
405
+
406
+ &::-ms-track {
407
+ width: $custom-range-track-width;
408
+ height: $custom-range-track-height;
409
+ color: transparent;
410
+ cursor: $custom-range-track-cursor;
411
+ background-color: transparent;
412
+ border-color: transparent;
413
+ border-width: ($custom-range-thumb-height * .5);
414
+ @include box-shadow($custom-range-track-box-shadow);
415
+ }
416
+
417
+ &::-ms-fill-lower {
418
+ background-color: $custom-range-track-bg;
419
+ @include border-radius($custom-range-track-border-radius);
420
+ }
421
+
422
+ &::-ms-fill-upper {
423
+ margin-right: 15px; // arbitrary?
424
+ background-color: $custom-range-track-bg;
425
+ @include border-radius($custom-range-track-border-radius);
426
+ }
427
+ }
428
+
429
+ .custom-control-label::before,
430
+ .custom-file-label,
431
+ .custom-select {
432
+ @include transition($custom-forms-transition);
433
+ }