jekyll-theme-cs50 0.1.3
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 +21 -0
- data/_includes/aside.html +24 -0
- data/_includes/footer.md +0 -0
- data/_includes/header.md +0 -0
- data/_includes/main.html +5 -0
- data/_includes/nav.md +0 -0
- data/_layouts/page.html +136 -0
- data/_sass/jekyll-theme-cs50.scss +314 -0
- data/_sass/node_modules/bootstrap/LICENSE +22 -0
- data/_sass/node_modules/bootstrap/scss/_alert.scss +51 -0
- data/_sass/node_modules/bootstrap/scss/_badge.scss +53 -0
- data/_sass/node_modules/bootstrap/scss/_breadcrumb.scss +41 -0
- data/_sass/node_modules/bootstrap/scss/_button-group.scss +163 -0
- data/_sass/node_modules/bootstrap/scss/_buttons.scss +140 -0
- data/_sass/node_modules/bootstrap/scss/_card.scss +310 -0
- data/_sass/node_modules/bootstrap/scss/_carousel.scss +198 -0
- data/_sass/node_modules/bootstrap/scss/_close.scss +44 -0
- data/_sass/node_modules/bootstrap/scss/_code.scss +48 -0
- data/_sass/node_modules/bootstrap/scss/_custom-forms.scss +507 -0
- data/_sass/node_modules/bootstrap/scss/_dropdown.scss +191 -0
- data/_sass/node_modules/bootstrap/scss/_forms.scss +334 -0
- data/_sass/node_modules/bootstrap/scss/_functions.scss +86 -0
- data/_sass/node_modules/bootstrap/scss/_grid.scss +52 -0
- data/_sass/node_modules/bootstrap/scss/_images.scss +42 -0
- data/_sass/node_modules/bootstrap/scss/_input-group.scss +193 -0
- data/_sass/node_modules/bootstrap/scss/_jumbotron.scss +16 -0
- data/_sass/node_modules/bootstrap/scss/_list-group.scss +121 -0
- data/_sass/node_modules/bootstrap/scss/_media.scss +8 -0
- data/_sass/node_modules/bootstrap/scss/_mixins.scss +41 -0
- data/_sass/node_modules/bootstrap/scss/_modal.scss +186 -0
- data/_sass/node_modules/bootstrap/scss/_nav.scss +120 -0
- data/_sass/node_modules/bootstrap/scss/_navbar.scss +299 -0
- data/_sass/node_modules/bootstrap/scss/_pagination.scss +78 -0
- data/_sass/node_modules/bootstrap/scss/_popover.scss +183 -0
- data/_sass/node_modules/bootstrap/scss/_print.scss +141 -0
- data/_sass/node_modules/bootstrap/scss/_progress.scss +34 -0
- data/_sass/node_modules/bootstrap/scss/_reboot.scss +462 -0
- data/_sass/node_modules/bootstrap/scss/_root.scss +19 -0
- data/_sass/node_modules/bootstrap/scss/_spinners.scss +53 -0
- data/_sass/node_modules/bootstrap/scss/_tables.scss +187 -0
- data/_sass/node_modules/bootstrap/scss/_toasts.scss +43 -0
- data/_sass/node_modules/bootstrap/scss/_tooltip.scss +115 -0
- data/_sass/node_modules/bootstrap/scss/_transitions.scss +22 -0
- data/_sass/node_modules/bootstrap/scss/_type.scss +125 -0
- data/_sass/node_modules/bootstrap/scss/_utilities.scss +16 -0
- data/_sass/node_modules/bootstrap/scss/_variables.scss +1091 -0
- data/_sass/node_modules/bootstrap/scss/bootstrap-grid.scss +29 -0
- data/_sass/node_modules/bootstrap/scss/bootstrap-reboot.scss +12 -0
- data/_sass/node_modules/bootstrap/scss/bootstrap.scss +44 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_alert.scss +13 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_background-variant.scss +21 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_badge.scss +11 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_border-radius.scss +35 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_box-shadow.scss +5 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_breakpoints.scss +123 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_buttons.scss +111 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_caret.scss +62 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_clearfix.scss +7 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_float.scss +11 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_forms.scss +198 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_gradients.scss +45 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_grid-framework.scss +66 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_grid.scss +51 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_hover.scss +37 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_image.scss +36 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_list-group.scss +21 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_lists.scss +7 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_nav-divider.scss +10 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_pagination.scss +22 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_reset-text.scss +17 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_resize.scss +6 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_screen-reader.scss +33 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_size.scss +6 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_table-row.scss +39 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_text-emphasis.scss +14 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_text-hide.scss +13 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_text-truncate.scss +8 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_transition.scss +16 -0
- data/_sass/node_modules/bootstrap/scss/mixins/_visibility.scss +7 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_align.scss +8 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_background.scss +19 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_borders.scss +63 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_clearfix.scss +3 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_display.scss +38 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_embed.scss +39 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_flex.scss +51 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_float.scss +9 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_overflow.scss +5 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_position.scss +32 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_screenreaders.scss +11 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_shadows.scss +6 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_sizing.scss +20 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_spacing.scss +73 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_text.scss +67 -0
- data/_sass/node_modules/bootstrap/scss/utilities/_visibility.scss +11 -0
- data/_sass/node_modules/primer-markdown/build/build.scss +1 -0
- data/_sass/package.json +12 -0
- data/assets/css/style.scss +4 -0
- metadata +266 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: a066c419ac06d26ead6008fadcff6517c8a81a567e5dce51db01ebfa590c7cb7
|
|
4
|
+
data.tar.gz: c7a2ad45e86344736b56eeb98d55e95ccc2b4ac0acaa9989c9ae1043476f5647
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: b77c50e69997ec31fbd0352c2c93a0b32e2417c636f3fa325336b6ab6409d34a6947c555fdc7e6764c8f6dea9cff521f4cfa033ece0ae31a8dd90aede00b5d86
|
|
7
|
+
data.tar.gz: 7e003109731169c54aed6ff026255f78172d605f9a9321baa9ff7d18b7bab40374afef01fe6b4f1d50cd4bb43f1e8ea456dd2eec3bf7c55b21b1ae85d45ff44d
|
data/LICENSE.txt
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2018
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<aside>
|
|
2
|
+
|
|
3
|
+
<header>
|
|
4
|
+
|
|
5
|
+
{%- capture header -%}{%- include header.md -%}{%- endcapture -%}
|
|
6
|
+
{{- header | markdownify | replace: " id=", " data-id=" | strip -}}
|
|
7
|
+
|
|
8
|
+
</header>
|
|
9
|
+
|
|
10
|
+
<nav class="collapse">
|
|
11
|
+
|
|
12
|
+
{%- capture nav -%}{%- include nav.md -%}{%- endcapture -%}
|
|
13
|
+
{{- nav | markdownify | replace: " id=", " data-id=" | strip -}}
|
|
14
|
+
|
|
15
|
+
</nav>
|
|
16
|
+
|
|
17
|
+
<footer>
|
|
18
|
+
|
|
19
|
+
{%- capture footer -%}{%- include footer.md -%}{%- endcapture -%}
|
|
20
|
+
{{- footer | markdownify | replace: " id=", " data-id=" | strip -}}
|
|
21
|
+
|
|
22
|
+
</footer>
|
|
23
|
+
|
|
24
|
+
</aside>
|
data/_includes/footer.md
ADDED
|
File without changes
|
data/_includes/header.md
ADDED
|
File without changes
|
data/_includes/main.html
ADDED
data/_includes/nav.md
ADDED
|
File without changes
|
data/_layouts/page.html
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
|
|
3
|
+
<html lang="{{ page.lang | default: site.lang | default: "en-us" }}">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
|
|
7
|
+
<meta charset="utf-8">
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
9
|
+
|
|
10
|
+
<meta property="og:description" content="{{ site.description }}">
|
|
11
|
+
|
|
12
|
+
<meta property="og:image" content="{{ site.image }}">
|
|
13
|
+
|
|
14
|
+
{%- capture title -%}
|
|
15
|
+
{%- if page.title -%}
|
|
16
|
+
{{- page.title -}}
|
|
17
|
+
{%- endif -%}
|
|
18
|
+
{%- if site.title -%}
|
|
19
|
+
{%- unless site.github and site.title == site.github.repository_name -%}
|
|
20
|
+
{%- if page.title %} - {% endif -%}
|
|
21
|
+
{{- site.title -}}
|
|
22
|
+
{%- endunless -%}
|
|
23
|
+
{%- endif -%}
|
|
24
|
+
{%- endcapture %}
|
|
25
|
+
|
|
26
|
+
<meta property="og:title" content="{{ title }}">
|
|
27
|
+
|
|
28
|
+
<meta property="og:url" content="{{ site.url }}">
|
|
29
|
+
|
|
30
|
+
<link href="{{ '/favicon.ico' | relative_url }}?{{ site.time | date: '%s' }}" rel="icon">
|
|
31
|
+
|
|
32
|
+
<!-- https://useiconic.com/open -->
|
|
33
|
+
<link crossorigin="anonymous" href="https://cdnjs.cloudflare.com/ajax/libs/open-iconic/1.1.1/font/css/open-iconic-bootstrap.min.css" integrity="sha256-BJ/G+e+y7bQdrYkS2RBTyNfBHpA9IuGaPmf9htub5MQ=" rel="stylesheet">
|
|
34
|
+
|
|
35
|
+
<link href="{{ '/assets/css/style.css' | relative_url }}?{{ site.time | date: '%s' }}" rel="stylesheet">
|
|
36
|
+
|
|
37
|
+
<!-- http://getbootstrap.com/docs/4.2/getting-started/introduction/ -->
|
|
38
|
+
<script crossorigin="anonymous" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
39
|
+
<script crossorigin="anonymous" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"></script>
|
|
40
|
+
<script crossorigin="anonymous" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script>
|
|
41
|
+
|
|
42
|
+
<script>
|
|
43
|
+
|
|
44
|
+
$(document).on('DOMContentLoaded', function() {
|
|
45
|
+
|
|
46
|
+
// Add toggler
|
|
47
|
+
let nav = $('aside nav.collapse');
|
|
48
|
+
let button = $('<button aria-expanded="false" class="btn collapsed" data-toggle="collapse" type="button"><span class="oi oi-menu"></span></button>');
|
|
49
|
+
nav.before(button);
|
|
50
|
+
button.click(function() {
|
|
51
|
+
nav.collapse('toggle');
|
|
52
|
+
$(this).toggleClass('collapsed');
|
|
53
|
+
$(this).attr('aria-expanded', ($(this).attr('aria-expanded') === 'false') ? 'true' : 'false');
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
// Get headings
|
|
57
|
+
let $headings = $([
|
|
58
|
+
'main.markdown-body h2',
|
|
59
|
+
'main.markdown-body h3',
|
|
60
|
+
'main.markdown-body h4',
|
|
61
|
+
'main.markdown-body h5',
|
|
62
|
+
'main.markdown-body h6'].join(','));
|
|
63
|
+
|
|
64
|
+
// Add anchors to headings
|
|
65
|
+
$headings.each(function(index, element) {
|
|
66
|
+
if ($(element).attr('id') && $(element).has('a').length === 0) {
|
|
67
|
+
$(element).wrapInner($('<a href="#' + $(element).attr('id') + '"></a>'));
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
// For each iframe
|
|
72
|
+
$('iframe').each(function(index, element) {
|
|
73
|
+
|
|
74
|
+
// If an embedded YouTube video
|
|
75
|
+
let matches = $(this).attr('src').match(/^https:\/\/www.youtube.com\/embed\/([A-Za-z0-9_-]+)/);
|
|
76
|
+
if (matches) {
|
|
77
|
+
|
|
78
|
+
// Add allowfullscreen if not present
|
|
79
|
+
if ($(this).attr('allowfullscreen') === undefined) {
|
|
80
|
+
$(this).attr('allowfullscreen', '');
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// Add modifier classes if not present, assuming 16x9 by default
|
|
84
|
+
if (!$(this).hasClass('embed-responsive-item')) {
|
|
85
|
+
$(this).addClass('embed-responsive-item');
|
|
86
|
+
$(this).wrap('<div class="embed-responsive embed-responsive-16by9"></div>');
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// Add background image for printing
|
|
90
|
+
// https://stackoverflow.com/a/2068371/5156190
|
|
91
|
+
if ($(this).css('background-image') === 'none') {
|
|
92
|
+
$(this).css('background-image', 'url("https://img.youtube.com/vi/' + matches[1] + '/sddefault.jpg")');
|
|
93
|
+
$(this).css('background-repeat', 'no-repeat');
|
|
94
|
+
$(this).css('background-size', 'cover');
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
|
|
99
|
+
// Ensure last heading can be anchored atop page
|
|
100
|
+
$(window).resize(function() {
|
|
101
|
+
let last = $headings.last();
|
|
102
|
+
if (last.length) {
|
|
103
|
+
|
|
104
|
+
// On small devices
|
|
105
|
+
if ($('aside').position().top < $('main').position().top) {
|
|
106
|
+
var margin = $(window).height() - ($('main').outerHeight() + $('aside').outerHeight() - last.offset().top);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// On large devices
|
|
110
|
+
else {
|
|
111
|
+
var margin = $(window).height() - ($('main').outerHeight() - last.offset().top);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// Update margin
|
|
115
|
+
$('main').css('margin-bottom', Math.max(0, Math.ceil(margin)) + 'px');
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
$(window).trigger('resize');
|
|
119
|
+
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
</script>
|
|
123
|
+
|
|
124
|
+
<title>{{ title }}</title>
|
|
125
|
+
|
|
126
|
+
</head>
|
|
127
|
+
|
|
128
|
+
<body>
|
|
129
|
+
|
|
130
|
+
{%- include aside.html -%}
|
|
131
|
+
|
|
132
|
+
{%- include main.html -%}
|
|
133
|
+
|
|
134
|
+
</body>
|
|
135
|
+
|
|
136
|
+
</html>
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
// Default font
|
|
2
|
+
$font-family-sans-serif: "PT Sans" !default;
|
|
3
|
+
|
|
4
|
+
// Crimson links
|
|
5
|
+
$link-color: #a51c30 !default;
|
|
6
|
+
$link-hover-color: $link-color !default;
|
|
7
|
+
|
|
8
|
+
// Import Bootstrap
|
|
9
|
+
@import "node_modules/bootstrap/scss/bootstrap.scss";
|
|
10
|
+
|
|
11
|
+
// Import build of primer-markdown after renaming build.css to build.scss via package.json so that we can import, per
|
|
12
|
+
// https://stackoverflow.com/questions/7111610/import-regular-css-file-in-scss-file/36166487#36166487
|
|
13
|
+
@import "node_modules/primer-markdown/build/build.scss";
|
|
14
|
+
|
|
15
|
+
// Import Google Fonts
|
|
16
|
+
@import url("https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700");
|
|
17
|
+
|
|
18
|
+
// Root em
|
|
19
|
+
html {
|
|
20
|
+
font-size: 20px;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// Defaults for iframes
|
|
24
|
+
iframe {
|
|
25
|
+
border: 0;
|
|
26
|
+
height: 480px;
|
|
27
|
+
width: 100%;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Confine images to parent
|
|
31
|
+
img {
|
|
32
|
+
max-width: 100%;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Crimson aside, transparent text
|
|
36
|
+
aside {
|
|
37
|
+
background-color: $link-color;
|
|
38
|
+
bottom: 0;
|
|
39
|
+
color: rgba(255, 255, 255, 0.5);
|
|
40
|
+
font-size: 1.125rem;
|
|
41
|
+
left: 0;
|
|
42
|
+
padding: 2rem 2rem;
|
|
43
|
+
overflow: auto;
|
|
44
|
+
position: fixed;
|
|
45
|
+
text-align: left;
|
|
46
|
+
top: 0;
|
|
47
|
+
width: 20rem;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Bold headings
|
|
51
|
+
aside h1,
|
|
52
|
+
aside h2,
|
|
53
|
+
aside h3,
|
|
54
|
+
aside h4,
|
|
55
|
+
aside h5,
|
|
56
|
+
aside h6 {
|
|
57
|
+
font-weight: bold;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// Opaque text
|
|
61
|
+
aside a,
|
|
62
|
+
aside a:hover,
|
|
63
|
+
aside button {
|
|
64
|
+
background-color: inherit;
|
|
65
|
+
color: rgba(255, 255, 255, 1);
|
|
66
|
+
opacity: 1;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// Separate nav button (or header) and footer, applying margins to children to avoid flicker when uncollapsing
|
|
70
|
+
nav > *:first-child {
|
|
71
|
+
margin-top: 1rem;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// Mimic Primer
|
|
75
|
+
header *:last-child,
|
|
76
|
+
nav *:last-child,
|
|
77
|
+
footer *:last-child {
|
|
78
|
+
margin-bottom: 0;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// Separate button from header and nav
|
|
82
|
+
aside button[data-toggle=collapse] {
|
|
83
|
+
margin-top: 1rem;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// Remove padding above and below icon
|
|
87
|
+
aside button[data-toggle=collapse] {
|
|
88
|
+
padding-bottom: 0;
|
|
89
|
+
padding-top: 0;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// No bullets for nav
|
|
93
|
+
nav dl,
|
|
94
|
+
nav ol,
|
|
95
|
+
nav ul {
|
|
96
|
+
list-style: none;
|
|
97
|
+
padding-left: 0;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
// Separate footer from nav unless empty
|
|
101
|
+
footer {
|
|
102
|
+
margin-top: 1rem;
|
|
103
|
+
}
|
|
104
|
+
footer:empty {
|
|
105
|
+
margin-top: 0;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// Padding around main
|
|
109
|
+
main {
|
|
110
|
+
margin-left: 20rem;
|
|
111
|
+
padding: 4rem 2rem;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// Override Primer's family and size for fonts
|
|
115
|
+
.markdown-body {
|
|
116
|
+
font-family: unset; /* Use our family */
|
|
117
|
+
font-size: unset; /* Use our size */
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// Add padding above headings to match Primer's padding below headings,
|
|
121
|
+
// to ensure anchors aren't too close to top of viewport
|
|
122
|
+
.markdown-body h1,
|
|
123
|
+
.markdown-body h2,
|
|
124
|
+
.markdown-body h3,
|
|
125
|
+
.markdown-body h4,
|
|
126
|
+
.markdown-body h5,
|
|
127
|
+
.markdown-body h6 {
|
|
128
|
+
margin-top: 0;
|
|
129
|
+
padding-top: 16px;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
// Subtle anchors in headings
|
|
133
|
+
.markdown-body h2 a,
|
|
134
|
+
.markdown-body h3 a,
|
|
135
|
+
.markdown-body h4 a,
|
|
136
|
+
.markdown-body h5 a,
|
|
137
|
+
.markdown-body h6 a {
|
|
138
|
+
color: inherit;
|
|
139
|
+
text-decoration: none;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// Fix inconsistency in Primer
|
|
143
|
+
// https://github.com/primer/primer/pull/563
|
|
144
|
+
.markdown-body ol > li:first-child,
|
|
145
|
+
.markdown-body ul > li:first-child {
|
|
146
|
+
margin-top: .25em;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// Mimic li's margin-top
|
|
150
|
+
.markdown-body li > blockquote,
|
|
151
|
+
.markdown-body li > div > div.highlight,
|
|
152
|
+
.markdown-body li > img,
|
|
153
|
+
.markdown-body li > pre {
|
|
154
|
+
margin-top: .25em;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
// Mimic li's margin-bottom, not p's margin-bottom
|
|
158
|
+
.markdown-body li > div > div.highlight {
|
|
159
|
+
margin-bottom: 0;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
// Mimic h1's bottom border
|
|
163
|
+
.markdown-body hr {
|
|
164
|
+
background-color: #eaecef;
|
|
165
|
+
height: 1px;
|
|
166
|
+
margin: 16px 0;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// Mimic p
|
|
170
|
+
.markdown-body .embed-responsive {
|
|
171
|
+
margin-bottom: 16px;
|
|
172
|
+
margin-top: 0;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
// Condense TOC
|
|
176
|
+
#markdown-toc li + li,
|
|
177
|
+
#markdown-toc ol > li:first-child,
|
|
178
|
+
#markdown-toc ul > li:first-child {
|
|
179
|
+
margin-top: 0;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
// On large devices
|
|
183
|
+
// https://getbootstrap.com/docs/4.2/layout/overview/#responsive-breakpoints
|
|
184
|
+
@media (min-width: 768px) {
|
|
185
|
+
|
|
186
|
+
// Hide button above nav
|
|
187
|
+
aside button[data-toggle=collapse] {
|
|
188
|
+
display: none;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
// Show nav
|
|
192
|
+
nav.collapse:not(.show) {
|
|
193
|
+
display: block;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
// On small devices and printers
|
|
198
|
+
// https://getbootstrap.com/docs/4.2/layout/overview/#responsive-breakpoints
|
|
199
|
+
@media (max-width: 767.98px), print {
|
|
200
|
+
|
|
201
|
+
// Root em
|
|
202
|
+
html {
|
|
203
|
+
font-size: 16px;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
// Static aside
|
|
207
|
+
aside {
|
|
208
|
+
bottom: auto;
|
|
209
|
+
left: auto;
|
|
210
|
+
overflow: visible;
|
|
211
|
+
position: static;
|
|
212
|
+
right: auto;
|
|
213
|
+
text-align: center;
|
|
214
|
+
top: auto;
|
|
215
|
+
width: auto;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// Don't offset main
|
|
219
|
+
main {
|
|
220
|
+
margin-left: auto;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
// Also on printers
|
|
225
|
+
@media print {
|
|
226
|
+
|
|
227
|
+
// Hide button above nav
|
|
228
|
+
aside button[data-toggle=collapse] {
|
|
229
|
+
display: none;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
// Only show header
|
|
233
|
+
nav.collapse:not(.show), footer {
|
|
234
|
+
display: none;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
// Display links' URLs
|
|
238
|
+
a[href^='http']:after {
|
|
239
|
+
content: ' (' attr(href) ')';
|
|
240
|
+
word-wrap: break-word;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
// GitHub syntax highlighter color scheme for Pygments
|
|
245
|
+
// https://github.com/PhilipTrauner/pygments-github-css/blob/master/github.css
|
|
246
|
+
.highlight .hll { background-color: #ffffcc }
|
|
247
|
+
.highlight { background: #f8f8f8; }
|
|
248
|
+
.highlight .c { color: #6a737d } /* Comment */
|
|
249
|
+
.highlight .err { } /* Error */
|
|
250
|
+
.highlight .k { color: #d73a49 } /* Keyword */
|
|
251
|
+
.highlight .o { } /* Operator */
|
|
252
|
+
.highlight .ch { color: #6a737d } /* Comment.Hashbang */
|
|
253
|
+
.highlight .cm { color: #6a737d } /* Comment.Multiline */
|
|
254
|
+
.highlight .cp { color: #d73a49 } /* Comment.Preproc */
|
|
255
|
+
.highlight .cpf { color: #032f62 } /* Comment.PreprocFile */
|
|
256
|
+
.highlight .c1 { color: #6a737d } /* Comment.Single */
|
|
257
|
+
.highlight .cs { color: #6a737d } /* Comment.Special */
|
|
258
|
+
.highlight .gd { color: #b31d28; background-color: #ffeef0 } /* Generic.Deleted */
|
|
259
|
+
.highlight .ge { } /* Generic.Emph */
|
|
260
|
+
.highlight .gr { } /* Generic.Error */
|
|
261
|
+
.highlight .gh { color: #005cc5 } /* Generic.Heading */
|
|
262
|
+
.highlight .gi { color: #22863a; background-color: #f0fff4 } /* Generic.Inserted */
|
|
263
|
+
.highlight .go { } /* Generic.Output */
|
|
264
|
+
.highlight .gp { } /* Generic.Prompt */
|
|
265
|
+
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
|
266
|
+
.highlight .gu { color: #6f42c1; font-weight: bold } /* Generic.Subheading */
|
|
267
|
+
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
|
268
|
+
.highlight .kc { color: #005cc5 } /* Keyword.Constant */
|
|
269
|
+
.highlight .kd { color: #d73a49 } /* Keyword.Declaration */
|
|
270
|
+
.highlight .kn { color: #d73a49 } /* Keyword.Namespace */
|
|
271
|
+
.highlight .kp { color: #d73a49 } /* Keyword.Pseudo */
|
|
272
|
+
.highlight .kr { color: #d73a49 } /* Keyword.Reserved */
|
|
273
|
+
.highlight .kt { color: #d73a49 } /* Keyword.Type */
|
|
274
|
+
.highlight .m { color: #666666 } /* Literal.Number */
|
|
275
|
+
.highlight .s { color: #032f62 } /* Literal.String */
|
|
276
|
+
.highlight .na { } /* Name.Attribute */
|
|
277
|
+
.highlight .nb { color: #005cc5 } /* Name.Builtin */
|
|
278
|
+
.highlight .nc { color: #6f42c1 } /* Name.Class */
|
|
279
|
+
.highlight .no { color: #005cc5 } /* Name.Constant */
|
|
280
|
+
.highlight .nd { color: #6f42c1 } /* Name.Decorator */
|
|
281
|
+
.highlight .ni { color: #005cc5 } /* Name.Entity */
|
|
282
|
+
.highlight .ne { color: #005cc5 } /* Name.Exception */
|
|
283
|
+
.highlight .nf { color: #6f42c1 } /* Name.Function */
|
|
284
|
+
.highlight .nl { color: #005cc5 } /* Name.Label */
|
|
285
|
+
.highlight .nn { color: #6f42c1 } /* Name.Namespace */
|
|
286
|
+
.highlight .nt { color: #22863a } /* Name.Tag */
|
|
287
|
+
.highlight .nv { color: #24292e } /* Name.Variable */
|
|
288
|
+
.highlight .ow { color: #d73a49; } /* Operator.Word */
|
|
289
|
+
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
|
290
|
+
.highlight .mb { color: #005cc5 } /* Literal.Number.Bin */
|
|
291
|
+
.highlight .mf { color: #005cc5 } /* Literal.Number.Float */
|
|
292
|
+
.highlight .mh { color: #005cc5 } /* Literal.Number.Hex */
|
|
293
|
+
.highlight .mi { color: #005cc5 } /* Literal.Number.Integer */
|
|
294
|
+
.highlight .mo { color: #005cc5 } /* Literal.Number.Oct */
|
|
295
|
+
.highlight .sa { color: #d73a49 } /* Literal.String.Affix */
|
|
296
|
+
.highlight .sb { color: #032f62 } /* Literal.String.Backtick */
|
|
297
|
+
.highlight .sc { color: #032f62 } /* Literal.String.Char */
|
|
298
|
+
.highlight .dl { color: #d73a49 } /* Literal.String.Delimiter */
|
|
299
|
+
.highlight .sd { color: #032f62 } /* Literal.String.Doc */
|
|
300
|
+
.highlight .s2 { color: #032f62 } /* Literal.String.Double */
|
|
301
|
+
.highlight .se { color: #032f62 } /* Literal.String.Escape */
|
|
302
|
+
.highlight .sh { color: #032f62 } /* Literal.String.Heredoc */
|
|
303
|
+
.highlight .si { color: #005cc5 } /* Literal.String.Interpol */
|
|
304
|
+
.highlight .sx { color: #032f62 } /* Literal.String.Other */
|
|
305
|
+
.highlight .sr { color: #032f62 } /* Literal.String.Regex */
|
|
306
|
+
.highlight .s1 { color: #032f62 } /* Literal.String.Single */
|
|
307
|
+
.highlight .ss { color: #005cc5 } /* Literal.String.Symbol */
|
|
308
|
+
.highlight .bp { color: #005cc5 } /* Name.Builtin.Pseudo */
|
|
309
|
+
.highlight .fm { color: #005cc5 } /* Name.Function.Magic */
|
|
310
|
+
.highlight .vc { color: #24292e } /* Name.Variable.Class */
|
|
311
|
+
.highlight .vg { color: #24292e } /* Name.Variable.Global */
|
|
312
|
+
.highlight .vi { color: #24292e } /* Name.Variable.Instance */
|
|
313
|
+
.highlight .vm { color: #005cc5 } /* Name.Variable.Magic */
|
|
314
|
+
.highlight .il { color: #005cc5 } /* Literal.Number.Integer.Long */
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2011-2018 Twitter, Inc.
|
|
4
|
+
Copyright (c) 2011-2018 The Bootstrap Authors
|
|
5
|
+
|
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
8
|
+
in the Software without restriction, including without limitation the rights
|
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
11
|
+
furnished to do so, subject to the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be included in
|
|
14
|
+
all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
22
|
+
THE SOFTWARE.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Base styles
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
.alert {
|
|
6
|
+
position: relative;
|
|
7
|
+
padding: $alert-padding-y $alert-padding-x;
|
|
8
|
+
margin-bottom: $alert-margin-bottom;
|
|
9
|
+
border: $alert-border-width solid transparent;
|
|
10
|
+
@include border-radius($alert-border-radius);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// Headings for larger alerts
|
|
14
|
+
.alert-heading {
|
|
15
|
+
// Specified to prevent conflicts of changing $headings-color
|
|
16
|
+
color: inherit;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// Provide class for links that match alerts
|
|
20
|
+
.alert-link {
|
|
21
|
+
font-weight: $alert-link-font-weight;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
// Dismissible alerts
|
|
26
|
+
//
|
|
27
|
+
// Expand the right padding and account for the close button's positioning.
|
|
28
|
+
|
|
29
|
+
.alert-dismissible {
|
|
30
|
+
padding-right: $close-font-size + $alert-padding-x * 2;
|
|
31
|
+
|
|
32
|
+
// Adjust close link position
|
|
33
|
+
.close {
|
|
34
|
+
position: absolute;
|
|
35
|
+
top: 0;
|
|
36
|
+
right: 0;
|
|
37
|
+
padding: $alert-padding-y $alert-padding-x;
|
|
38
|
+
color: inherit;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
// Alternate styles
|
|
44
|
+
//
|
|
45
|
+
// Generate contextual modifier classes for colorizing the alert.
|
|
46
|
+
|
|
47
|
+
@each $color, $value in $theme-colors {
|
|
48
|
+
.alert-#{$color} {
|
|
49
|
+
@include alert-variant(theme-color-level($color, $alert-bg-level), theme-color-level($color, $alert-border-level), theme-color-level($color, $alert-color-level));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// Base class
|
|
2
|
+
//
|
|
3
|
+
// Requires one of the contextual, color modifier classes for `color` and
|
|
4
|
+
// `background-color`.
|
|
5
|
+
|
|
6
|
+
.badge {
|
|
7
|
+
display: inline-block;
|
|
8
|
+
padding: $badge-padding-y $badge-padding-x;
|
|
9
|
+
font-size: $badge-font-size;
|
|
10
|
+
font-weight: $badge-font-weight;
|
|
11
|
+
line-height: 1;
|
|
12
|
+
text-align: center;
|
|
13
|
+
white-space: nowrap;
|
|
14
|
+
vertical-align: baseline;
|
|
15
|
+
@include border-radius($badge-border-radius);
|
|
16
|
+
|
|
17
|
+
@at-root a#{&} {
|
|
18
|
+
@include hover-focus {
|
|
19
|
+
text-decoration: none;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// Empty badges collapse automatically
|
|
24
|
+
&:empty {
|
|
25
|
+
display: none;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Quick fix for badges in buttons
|
|
30
|
+
.btn .badge {
|
|
31
|
+
position: relative;
|
|
32
|
+
top: -1px;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Pill badges
|
|
36
|
+
//
|
|
37
|
+
// Make them extra rounded with a modifier to replace v3's badges.
|
|
38
|
+
|
|
39
|
+
.badge-pill {
|
|
40
|
+
padding-right: $badge-pill-padding-x;
|
|
41
|
+
padding-left: $badge-pill-padding-x;
|
|
42
|
+
@include border-radius($badge-pill-border-radius);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Colors
|
|
46
|
+
//
|
|
47
|
+
// Contextual variations (linked badges get darker on :hover).
|
|
48
|
+
|
|
49
|
+
@each $color, $value in $theme-colors {
|
|
50
|
+
.badge-#{$color} {
|
|
51
|
+
@include badge-variant($value);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
.breadcrumb {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-wrap: wrap;
|
|
4
|
+
padding: $breadcrumb-padding-y $breadcrumb-padding-x;
|
|
5
|
+
margin-bottom: $breadcrumb-margin-bottom;
|
|
6
|
+
list-style: none;
|
|
7
|
+
background-color: $breadcrumb-bg;
|
|
8
|
+
@include border-radius($breadcrumb-border-radius);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.breadcrumb-item {
|
|
12
|
+
// The separator between breadcrumbs (by default, a forward-slash: "/")
|
|
13
|
+
+ .breadcrumb-item {
|
|
14
|
+
padding-left: $breadcrumb-item-padding;
|
|
15
|
+
|
|
16
|
+
&::before {
|
|
17
|
+
display: inline-block; // Suppress underlining of the separator in modern browsers
|
|
18
|
+
padding-right: $breadcrumb-item-padding;
|
|
19
|
+
color: $breadcrumb-divider-color;
|
|
20
|
+
content: $breadcrumb-divider;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// IE9-11 hack to properly handle hyperlink underlines for breadcrumbs built
|
|
25
|
+
// without `<ul>`s. The `::before` pseudo-element generates an element
|
|
26
|
+
// *within* the .breadcrumb-item and thereby inherits the `text-decoration`.
|
|
27
|
+
//
|
|
28
|
+
// To trick IE into suppressing the underline, we give the pseudo-element an
|
|
29
|
+
// underline and then immediately remove it.
|
|
30
|
+
+ .breadcrumb-item:hover::before {
|
|
31
|
+
text-decoration: underline;
|
|
32
|
+
}
|
|
33
|
+
// stylelint-disable-next-line no-duplicate-selectors
|
|
34
|
+
+ .breadcrumb-item:hover::before {
|
|
35
|
+
text-decoration: none;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&.active {
|
|
39
|
+
color: $breadcrumb-active-color;
|
|
40
|
+
}
|
|
41
|
+
}
|