jekyll-text-theme 2.1.0 → 2.2.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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +171 -0
  3. data/README.md +5 -4
  4. data/_data/variables.yml +22 -8
  5. data/_includes/article-footer/author-profile.html +29 -27
  6. data/_includes/article-footer/license.html +4 -13
  7. data/_includes/article-header.html +47 -0
  8. data/_includes/article-info.html +79 -50
  9. data/_includes/article-list.html +82 -15
  10. data/_includes/article-section-navigator.html +2 -2
  11. data/_includes/author-links.html +1 -2
  12. data/_includes/footer.html +3 -1
  13. data/_includes/head.html +2 -2
  14. data/_includes/header.html +38 -32
  15. data/_includes/markdown-enhancements.html +6 -9
  16. data/_includes/markdown-enhancements/mathjax.html +2 -2
  17. data/_includes/scripts/article.js +1 -1
  18. data/_includes/scripts/lib/affix.js +2 -2
  19. data/_includes/scripts/lib/toc.js +1 -1
  20. data/_includes/scripts/variables.html +1 -0
  21. data/_includes/snippets/{page-title.html → get-article-title.html} +2 -2
  22. data/_layouts/archive.html +1 -1
  23. data/_layouts/article.html +17 -4
  24. data/_layouts/articles.html +89 -0
  25. data/_layouts/home.html +8 -2
  26. data/_layouts/landing.html +77 -101
  27. data/_layouts/page.html +158 -74
  28. data/_sass/additional/_alert.scss +8 -4
  29. data/_sass/additional/_tag.scss +21 -0
  30. data/_sass/common/_classes.scss +1 -0
  31. data/_sass/common/_variables.scss +26 -2
  32. data/_sass/common/classes/_grid.scss +112 -29
  33. data/_sass/common/classes/_spacing.scss +53 -42
  34. data/_sass/common/classes/_text.scss +37 -0
  35. data/_sass/common/components/_button.scss +9 -0
  36. data/_sass/common/components/_card.scss +93 -9
  37. data/_sass/common/components/_hero.scss +79 -0
  38. data/_sass/common/components/_image.scss +19 -0
  39. data/_sass/common/components/_item.scss +13 -9
  40. data/_sass/components/_article-header.scss +47 -0
  41. data/_sass/components/_article-info.scss +1 -1
  42. data/_sass/components/_article-list.scss +8 -0
  43. data/_sass/components/_author-links.scss +1 -1
  44. data/_sass/components/_author-profile.scss +10 -28
  45. data/_sass/components/_footer.scss +7 -11
  46. data/_sass/components/_header.scss +30 -19
  47. data/_sass/components/_main.scss +1 -0
  48. data/_sass/layout/_archive.scss +0 -6
  49. data/_sass/layout/_articles.scss +13 -0
  50. data/_sass/layout/_landing.scss +2 -99
  51. data/_sass/layout/_page.scss +26 -30
  52. data/assets/css/main.scss +12 -6
  53. metadata +17 -6
@@ -1,25 +1,29 @@
1
1
  .article__content {
2
2
  p.success {
3
- @include card(false);
3
+ padding: .5rem 1rem;
4
4
  background-color: rgba($green, .1);
5
5
  border: 1px solid $green;
6
+ border-radius: map-get($base, border-radius);
6
7
  }
7
8
 
8
9
  p.info {
9
- @include card(false);
10
+ padding: .5rem 1rem;
10
11
  background-color: rgba($blue, .1);
11
12
  border: 1px solid $blue;
13
+ border-radius: map-get($base, border-radius);
12
14
  }
13
15
 
14
16
  p.warning {
15
- @include card(false);
17
+ padding: .5rem 1rem;
16
18
  background-color: rgba($yellow, .1);
17
19
  border: 1px solid $yellow;
20
+ border-radius: map-get($base, border-radius);
18
21
  }
19
22
 
20
23
  p.error {
21
- @include card(false);
24
+ padding: .5rem 1rem;
22
25
  background-color: rgba($red, .1);
23
26
  border: 1px solid $red;
27
+ border-radius: map-get($base, border-radius);
24
28
  }
25
29
  }
@@ -0,0 +1,21 @@
1
+ .article__content {
2
+ code.success {
3
+ color: $text-color-function;
4
+ background-color: $green;
5
+ }
6
+
7
+ code.info {
8
+ color: $text-color-function;
9
+ background-color: $blue;
10
+ }
11
+
12
+ code.warning {
13
+ color: $text-color-function;
14
+ background-color: $yellow;
15
+ }
16
+
17
+ code.error {
18
+ color: $text-color-function;
19
+ background-color: $red;
20
+ }
21
+ }
@@ -9,6 +9,7 @@
9
9
  "common/classes/horizontal-rules",
10
10
  "common/classes/pseudo",
11
11
  "common/classes/link",
12
+ "common/classes/text",
12
13
  "common/classes/media",
13
14
  "common/classes/overflow",
14
15
  "common/classes/shadow",
@@ -4,12 +4,19 @@ $base: (
4
4
 
5
5
  font-size-root: 16px,
6
6
 
7
- font-size-xl: 1.6rem,
7
+ font-size-xl: 1.5rem,
8
8
  font-size-lg: 1.25rem,
9
9
  font-size: 1rem,
10
10
  font-size-sm: .875rem,
11
11
  font-size-xs: .75rem,
12
12
 
13
+ font-size-h1-xl: 3.5rem,
14
+ font-size-h2-xl: 2.5rem,
15
+ font-size-h3-xl: 2rem,
16
+ font-size-h4-xl: 1.75rem,
17
+ font-size-h5-xl: 1.5rem,
18
+ font-size-h6-xl: 1.5rem,
19
+
13
20
  font-size-h1-lg: 3rem,
14
21
  font-size-h2-lg: 2rem,
15
22
  font-size-h3-lg: 1.75rem,
@@ -102,28 +109,45 @@ $link: (
102
109
  transition: all .2s ease-in-out
103
110
  );
104
111
 
112
+ $button-height-xl: 2.8rem;
105
113
  $button-height-lg: 2.3rem;
106
114
  $button-height: 1.9rem;
107
115
  $button-height-sm: 1.5rem;
116
+ $button-height-xs: 1.2rem;
108
117
 
109
118
  $button: (
119
+ padding-y-xl: ($button-height-xl - map-get($base, font-size-xl)) / 2,
120
+ padding-x-xl: $button-height-xl / 3,
110
121
  padding-y-lg: ($button-height-lg - map-get($base, font-size-lg)) / 2,
111
122
  padding-x-lg: $button-height-lg / 3,
112
123
  padding-y: ($button-height - map-get($base, font-size)) / 2,
113
124
  padding-x: $button-height / 3,
114
125
  padding-y-sm: ($button-height-sm - map-get($base, font-size-sm)) / 2,
115
126
  padding-x-sm: $button-height-sm / 3,
127
+ padding-y-xs: ($button-height-xs - map-get($base, font-size-xs)) / 2,
128
+ padding-x-xs: $button-height-xs / 3,
116
129
 
117
- pill-radius: 4rem,
130
+ pill-radius: 6rem,
118
131
 
132
+ circle-diameter-xl: $button-height-xl,
119
133
  circle-diameter-lg: $button-height-lg,
120
134
  circle-diameter: $button-height,
121
135
  circle-diameter-sm: $button-height-sm,
136
+ circle-diameter-xs: $button-height-xs,
137
+
122
138
  font-weight: map-get($base, font-weight-bold),
123
139
 
124
140
  transition: all .2s ease-in-out
125
141
  );
126
142
 
143
+ $image: (
144
+ width-xl: 20em,
145
+ width-lg: 16rem,
146
+ width: 12rem,
147
+ width-sm: 8rem,
148
+ width-xs: 4rem
149
+ );
150
+
127
151
  $menu: (
128
152
  horizontal-spacer: 1,
129
153
  horizontal-item-vertical-spacer: 1
@@ -1,48 +1,131 @@
1
1
  $grid-columns: 12;
2
2
 
3
- @mixin make-col($columns) {
4
- .col-#{$columns} {
5
- display: inline-block;
6
- width: percentage($columns / $grid-columns);
7
- letter-spacing: normal;
3
+ .grid-container {
4
+ @include overflow(hidden);
5
+ }
6
+
7
+ @mixin make-cell($columns) {
8
+ .cell--#{$columns} {
9
+ @if $columns == "auto" {
10
+ @include flex(1 1 0);
11
+ width: auto;
12
+ min-width: 0;
13
+ } @else if $columns == "shrink" {
14
+ @include flex(0 0 auto);
15
+ width: auto;
16
+ min-width: 0;
17
+ } @else if $columns == "stretch" {
18
+ @include flex(1);
19
+ } @else {
20
+ @include flex(none);
21
+ width: percentage($columns / $grid-columns);
22
+ min-width: 0;
23
+ }
8
24
  }
9
25
  }
10
26
 
11
- @mixin make-md-col($columns) {
27
+ @mixin make-md-cell($columns) {
12
28
  @include media-breakpoint-down(lg) {
13
- .col-md-#{$columns} {
14
- display: inline-block;
15
- width: percentage($columns / $grid-columns);
16
- letter-spacing: normal;
29
+ .cell--md-#{$columns} {
30
+ @if $columns == "auto" {
31
+ @include flex(1 1 0);
32
+ width: auto;
33
+ min-width: 0;
34
+ } @else if $columns == "shrink" {
35
+ @include flex(0 0 auto);
36
+ width: auto;
37
+ min-width: 0;
38
+ } @else if $columns == "stretch" {
39
+ @include flex(1);
40
+ } @else {
41
+ @include flex(none);
42
+ width: percentage($columns / $grid-columns);
43
+ min-width: 0;
44
+ }
17
45
  }
18
46
  }
19
47
  }
20
48
 
21
- @mixin make-sm-col($columns) {
49
+ @mixin make-sm-cell($columns) {
22
50
  @include media-breakpoint-down(md) {
23
- .col-sm-#{$columns} {
24
- display: inline-block;
25
- width: percentage($columns / $grid-columns);
26
- letter-spacing: normal;
51
+ .cell--sm-#{$columns} {
52
+ @if $columns == "auto" {
53
+ @include flex(1 1 0);
54
+ width: auto;
55
+ min-width: 0;
56
+ } @else if $columns == "shrink" {
57
+ @include flex(0 0 auto);
58
+ width: auto;
59
+ min-width: 0;
60
+ } @else if $columns == "stretch" {
61
+ @include flex(1);
62
+ } @else {
63
+ @include flex(none);
64
+ width: percentage($columns / $grid-columns);
65
+ min-width: 0;
66
+ }
27
67
  }
28
68
  }
29
69
  }
30
70
 
31
71
  .grid {
32
- & > .row {
33
- @include flexbox();
34
- @include flex-wrap(wrap);
35
- letter-spacing: -.31em;
36
- & > {
37
- @for $i from 1 through $grid-columns {
38
- @include make-col($i);
39
- }
40
- @for $i from 1 through $grid-columns {
41
- @include make-md-col($i);
42
- }
43
- @for $i from 1 through $grid-columns {
44
- @include make-sm-col($i);
72
+ @include flexbox();
73
+ @include flex-wrap(wrap);
74
+ & > {
75
+ @for $i from 1 through $grid-columns {
76
+ @include make-cell($i);
77
+ }
78
+ @include make-cell("auto");
79
+ @include make-cell("shrink");
80
+ @include make-cell("stretch");
81
+
82
+ @for $i from 1 through $grid-columns {
83
+ @include make-md-cell($i);
84
+ }
85
+ @include make-md-cell("auto");
86
+ @include make-md-cell("shrink");
87
+ @include make-md-cell("stretch");
88
+
89
+ @for $i from 1 through $grid-columns {
90
+ @include make-sm-cell($i);
91
+ }
92
+
93
+ @include make-sm-cell("auto");
94
+ @include make-sm-cell("shrink");
95
+ @include make-sm-cell("stretch");
96
+ }
97
+ }
98
+
99
+ .grid--reverse {
100
+ flex-direction: row-reverse;
101
+ }
102
+
103
+ @mixin make-grid() {
104
+ $types: ("p");
105
+ $directions: ("x", "y", "");
106
+ $spacers: (0, 1, 2, 3, 4, 5);
107
+
108
+ @each $type in $types {
109
+ @each $direction in $directions {
110
+ @each $spacer in $spacers {
111
+ @if $direction == "" {
112
+ .grid--#{$type}-#{$spacer} {
113
+ @include make-spacing("m", "", $spacer, true);
114
+ .cell {
115
+ @include make-spacing($type, "", $spacer);
116
+ }
117
+ }
118
+ } @else {
119
+ .grid--#{$type}#{$direction}-#{$spacer} {
120
+ @include make-spacing("m", $direction, $spacer, true);
121
+ .cell {
122
+ @include make-spacing($type, $direction, $spacer);
123
+ }
124
+ }
125
+ }
45
126
  }
46
127
  }
47
128
  }
48
- }
129
+ }
130
+
131
+ @include make-grid();
@@ -1,70 +1,81 @@
1
- @mixin make-spacing($type, $direction, $spacer) {
1
+ @mixin make-spacing($property, $side, $spacer, $negative: false) {
2
2
 
3
- $_type: null;
4
- $_dirs: null;
3
+ $css_property: null;
4
+ $css_sides: null;
5
5
 
6
- @if ($type == "m") {
7
- $_type: "margin";
8
- } @else if ($type == "p") {
9
- $_type: "padding";
6
+ @if ($property == "m") {
7
+ $css_property: "margin";
8
+ } @else if ($property == "p") {
9
+ $css_property: "padding";
10
10
  }
11
11
 
12
- @if ($direction == "t") {
13
- $_dirs: ("top");
12
+ @if ($side == "t") {
13
+ $css_sides: ("top");
14
14
  }
15
- @else if ($direction == "b") {
16
- $_dirs: ("bottom");
15
+ @else if ($side == "b") {
16
+ $css_sides: ("bottom");
17
17
  }
18
- @else if ($direction == "l") {
19
- $_dirs: ("left");
18
+ @else if ($side == "l") {
19
+ $css_sides: ("left");
20
20
  }
21
- @else if ($direction == "r") {
22
- $_dirs: ("right");
21
+ @else if ($side == "r") {
22
+ $css_sides: ("right");
23
23
  }
24
- @else if ($direction == "x") {
25
- $_dirs: ("left", "right");
24
+ @else if ($side == "x") {
25
+ $css_sides: ("left", "right");
26
26
  }
27
- @else if ($direction == "y") {
28
- $_dirs: ("top", "bottom");
27
+ @else if ($side == "y") {
28
+ $css_sides: ("top", "bottom");
29
29
  }
30
- @else if ($direction == "") {
31
- $_dirs: ("");
30
+ @else if ($side == "") {
31
+ $css_sides: ("");
32
32
  }
33
33
 
34
- @each $dir in $_dirs {
34
+ @each $side in $css_sides {
35
35
  @if ($spacer == "auto") {
36
- @if ($dir == "") {
37
- #{$_type}: auto;
36
+ @if ($side == "") {
37
+ #{$css_property}: auto;
38
38
  } @else {
39
- #{$_type}-#{$dir}: auto;
39
+ #{$css_property}-#{$side}: auto;
40
40
  }
41
41
  } @else {
42
- @if ($dir == "") {
43
- #{$_type}: map-get($spacers, $spacer);
42
+ @if ($side == "") {
43
+ @if ($negative == true) {
44
+ #{$css_property}: - map-get($spacers, $spacer);
45
+ } @else {
46
+ #{$css_property}: map-get($spacers, $spacer);
47
+ }
44
48
  } @else {
45
- #{$_type}-#{$dir}: map-get($spacers, $spacer);
49
+ @if ($negative == true) {
50
+ #{$css_property}-#{$side}: - map-get($spacers, $spacer);
51
+ } @else {
52
+ #{$css_property}-#{$side}: map-get($spacers, $spacer);
53
+ }
46
54
  }
47
55
  }
48
56
  }
49
57
  }
50
58
 
59
+ @mixin make-spacings() {
60
+ $propertys: ("m", "p");
61
+ $sides: ("t", "b", "l", "r", "x", "y", "");
62
+ $spacers: (0, 1, 2, 3, 4, 5);
51
63
 
52
- $_types: ("m", "p");
53
- $_directions: ("t", "b", "l", "r", "x", "y", "");
54
- $_spacers: (0, 1, 2, 3, 4, 5);
55
-
56
- @each $i in $_types {
57
- @each $j in $_directions {
58
- @each $k in $_spacers {
59
- .#{$i}#{$j}-#{$k} {
60
- @include make-spacing($i, $j, $k);
64
+ @each $property in $propertys {
65
+ @each $side in $sides {
66
+ @each $spacer in $spacers {
67
+ .#{$property}#{$side}-#{$spacer} {
68
+ @include make-spacing($property, $side, $spacer);
69
+ }
61
70
  }
62
71
  }
63
72
  }
64
- }
65
73
 
66
- @each $j in $_directions {
67
- .m#{$j}-auto {
68
- @include make-spacing("m", $j, "auto");
74
+ @each $side in $sides {
75
+ .m#{$side}-auto {
76
+ @include make-spacing("m", $side, "auto");
77
+ }
69
78
  }
70
- }
79
+ }
80
+
81
+ @include make-spacings();
@@ -0,0 +1,37 @@
1
+ @mixin text-light {
2
+ color: $text-color-theme-light;
3
+ h1, h2, h3 {
4
+ color: $text-color-theme-light-d;
5
+ }
6
+ h4, h5 {
7
+ color: $text-color-theme-light;
8
+ }
9
+ h6 {
10
+ color: $text-color-theme-light-l;
11
+ }
12
+ a:not(.button) {
13
+ @include link-colors($text-color-theme-light, $main-color-1);
14
+ }
15
+ }
16
+ @mixin text-dark {
17
+ color: $text-color-theme-dark;
18
+ h1, h2, h3 {
19
+ color: $text-color-theme-dark-d;
20
+ }
21
+ h4, h5 {
22
+ color: $text-color-theme-dark;
23
+ }
24
+ h6 {
25
+ color: $text-color-theme-dark-l;
26
+ }
27
+ a:not(.button) {
28
+ @include link-colors($text-color-theme-dark, $main-color-1);
29
+ }
30
+ }
31
+
32
+ .text--light {
33
+ @include text-light();
34
+ }
35
+ .text--dark {
36
+ @include text-dark();
37
+ }