jekyll-theme-centos 2.52.0.beta.76 → 2.52.0.beta.78
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 +4 -4
- data/_data/base/project_schema.yml +11 -3
- data/_includes/base/artwork.html.liquid +4 -1
- data/_includes/base/breadcrumb.html.liquid +5 -1
- data/_includes/base/content.html.liquid +2 -1
- data/_includes/base/head.html.liquid +4 -1
- data/_includes/base/project.html.liquid +7 -2
- data/_includes/base/title.html.liquid +4 -1
- data/_includes/base/toc.html.liquid +4 -1
- data/_layouts/base/default.html +15 -6
- data/_sass/base/_customization.scss +33 -5
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cbe756786a2e1582e88c6e174721d3f3457d81aa5d9ea4846e8b53ff0bca3a19
|
|
4
|
+
data.tar.gz: b9e9098fde19be75627b7f3239825b7aa3fc5daad2bcd8e1f7180c4d5cabc0a4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f4e02695884ce448834ffe7a961d5b8905a1cf8cb4367935f8a8566c10403da74dd7d05c9976f2f1ac9ac10e2e3a1d53c6f0be314ddb4310f299c8b7521491de
|
|
7
|
+
data.tar.gz: 3069b56eca0abfed57106906af11cc84e6c8b9b236889ce4d8333a14e8925b1c4ddd47b3fb9fa3cd01df2881b231db684c43b72bc196569b79e4668a22399c6f
|
|
@@ -23,6 +23,14 @@ properties:
|
|
|
23
23
|
description: >-
|
|
24
24
|
Custom Bootstrap classes for the main project container, controlling
|
|
25
25
|
alignment, background, and text colors (e.g., `padding`, `bg-image`).
|
|
26
|
+
content_class:
|
|
27
|
+
type: string
|
|
28
|
+
default: flex-column align-items-center py-5
|
|
29
|
+
description: >-
|
|
30
|
+
Custom Bootstrap classes for the inner content wrapper (the card
|
|
31
|
+
rendered inside the project container). Controls flex alignment
|
|
32
|
+
— e.g., swap `align-items-center` for `align-items-start` or
|
|
33
|
+
`align-items-end` to control text/content direction.
|
|
26
34
|
screenshot:
|
|
27
35
|
type: string
|
|
28
36
|
default: ""
|
|
@@ -71,7 +79,7 @@ properties:
|
|
|
71
79
|
description: The visible title or name of the project. This field is typically required.
|
|
72
80
|
name_class:
|
|
73
81
|
type: string
|
|
74
|
-
default: display-3 fw-bold mb-1
|
|
82
|
+
default: display-3 fw-bold mb-1 text-center
|
|
75
83
|
description: Custom CSS classes applied to the project name text element.
|
|
76
84
|
description:
|
|
77
85
|
type: string
|
|
@@ -79,7 +87,7 @@ properties:
|
|
|
79
87
|
description: A detailed summary or description of the project.
|
|
80
88
|
description_class:
|
|
81
89
|
type: string
|
|
82
|
-
default: lead mb-
|
|
90
|
+
default: lead mb-0 text-center
|
|
83
91
|
description: Custom CSS classes applied to the project description text element.
|
|
84
92
|
actions:
|
|
85
93
|
type: array
|
|
@@ -93,7 +101,7 @@ properties:
|
|
|
93
101
|
additionalProperties: true
|
|
94
102
|
actions_class:
|
|
95
103
|
type: string
|
|
96
|
-
default: "mb-3"
|
|
104
|
+
default: "pt-5 mb-3"
|
|
97
105
|
description: Custom CSS classes applied to the container wrapping the action buttons list.
|
|
98
106
|
actions_btn_class:
|
|
99
107
|
type: string
|
|
@@ -20,6 +20,8 @@ Optional Inputs:
|
|
|
20
20
|
- class: Container div CSS classes
|
|
21
21
|
- image_class: Image element CSS classes
|
|
22
22
|
- data: Artwork data object (overrides fallbacks)
|
|
23
|
+
- column_class: Bootstrap column class for the row wrapper (set by the layout to
|
|
24
|
+
keep this component aligned with the content column; defaults to "col")
|
|
23
25
|
|
|
24
26
|
Data Source Hierarchy (priority):
|
|
25
27
|
1. include.data
|
|
@@ -50,10 +52,11 @@ Data Source Hierarchy (priority):
|
|
|
50
52
|
{%- assign artwork_alt = with_artwork_data.alt | default: with_artwork_schema.alt.default %}
|
|
51
53
|
{%- assign artwork_class = with_artwork_data.class | default: with_artwork_schema.class.default %}
|
|
52
54
|
{%- assign artwork_image_class = with_artwork_data.image_class | default: with_artwork_schema.image_class.default %}
|
|
55
|
+
{%- assign column_class = include.column_class | default: 'col' %}
|
|
53
56
|
|
|
54
57
|
{%- comment %} --- HTML --- {% endcomment %}
|
|
55
58
|
<div class="row mb-3">
|
|
56
|
-
<div class="{{
|
|
59
|
+
<div class="{{ column_class }}">
|
|
57
60
|
<div class="{{ artwork_class }}">
|
|
58
61
|
{%- if artwork_image contains "://" %}
|
|
59
62
|
<img src="{{ artwork_image }}" class="{{ artwork_image_class }}" alt="{{ artwork_alt }}" />
|
|
@@ -20,6 +20,8 @@ Required Inputs:
|
|
|
20
20
|
|
|
21
21
|
Optional Inputs:
|
|
22
22
|
- with_breadcrumb_data.arialabel: aria-label for the <nav> element (default: "breadcrumb")
|
|
23
|
+
- column_class (include param): Bootstrap column class for the row wrapper (set by
|
|
24
|
+
the layout to keep this component aligned with the content column; defaults to "col")
|
|
23
25
|
|
|
24
26
|
Data Source Hierarchy:
|
|
25
27
|
- with_breadcrumb: include.with_breadcrumb → page.with_breadcrumb
|
|
@@ -47,8 +49,10 @@ Data Source Hierarchy:
|
|
|
47
49
|
{%- comment %} Use plugin-provided locale (set for localized pages, defaults to 'en') {%- endcomment %}
|
|
48
50
|
{%- assign detected_locale = page.locale | default: 'en' %}
|
|
49
51
|
|
|
52
|
+
{%- assign column_class = include.column_class | default: 'col' %}
|
|
53
|
+
|
|
50
54
|
<div class="row small mb-3">
|
|
51
|
-
<div class="
|
|
55
|
+
<div class="{{ column_class }}">
|
|
52
56
|
<nav aria-label="{{ with_breadcrumb_data.arialabel | default: with_breadcrumb_schema.arialabel.default | default: 'breadcrumb' }}">
|
|
53
57
|
<ol class="breadcrumb mb-0">
|
|
54
58
|
{%- comment %} Home link - adjust for locale {%- endcomment %}
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
| default: site.data[content_schema_key]
|
|
15
15
|
| default: site.data.base[content_schema_key]
|
|
16
16
|
-%}
|
|
17
|
-
{%- assign class =
|
|
17
|
+
{%- assign class = include.column_class
|
|
18
|
+
| default: with_content_data.class
|
|
18
19
|
| default: content_schema.properties.with_content_data.properties.class.default
|
|
19
20
|
| default: 'col' -%}
|
|
20
21
|
<div class="row mb-3">
|
|
@@ -80,7 +80,10 @@ Uses CSS custom properties for cleaner, more maintainable dynamic styling.
|
|
|
80
80
|
{%- assign breakingnews = page.with_breakingnews_data | default: site.data.breakingnews | default: site.data.base.breakingnews %}
|
|
81
81
|
{%- if page.with_breakingnews == true and breakingnews.size > 0 %}
|
|
82
82
|
{%- assign breakingnews_alert_height = site.data.base.breakingnews_schema.properties.breakingnews_alert_height.default %}
|
|
83
|
-
{%- assign navbar_height =
|
|
83
|
+
{%- assign navbar_height = 0 %}
|
|
84
|
+
{%- if page.with_navbar %}
|
|
85
|
+
{%- assign navbar_height = site.data.base.navbar_schema.properties.navbar_height.default %}
|
|
86
|
+
{%- endif %}
|
|
84
87
|
{%- assign breakingnews_offset = 0 %}
|
|
85
88
|
{%- for item in breakingnews %}
|
|
86
89
|
{%- if forloop.first %}
|
|
@@ -31,6 +31,10 @@ Data Source Hierarchy (priority):
|
|
|
31
31
|
| default: page.with_project
|
|
32
32
|
%}
|
|
33
33
|
|
|
34
|
+
{%- assign with_navbar = include.with_navbar
|
|
35
|
+
| default: page.with_navbar
|
|
36
|
+
%}
|
|
37
|
+
|
|
34
38
|
{%- assign with_project_data = include.data
|
|
35
39
|
| default: page.with_project_data
|
|
36
40
|
| default: site.data.project
|
|
@@ -42,6 +46,7 @@ Data Source Hierarchy (priority):
|
|
|
42
46
|
{%- if with_project -%}
|
|
43
47
|
|
|
44
48
|
{% assign project_class = with_project_data.class | default: with_project_schema.class.default %}
|
|
49
|
+
{% assign project_content_class = with_project_data.content_class | default: with_project_schema.content_class.default %}
|
|
45
50
|
{% assign project_screenshot = with_project_data.screenshot | default: with_project_schema.screenshot.default %}
|
|
46
51
|
{% assign project_screenshot_class = with_project_data.screenshot_class | default: with_project_schema.screenshot_class.default %}
|
|
47
52
|
{% assign project_screenshot_alt = with_project_data.screenshot_alt | default: with_project_schema.screenshot_alt.default %}
|
|
@@ -63,9 +68,9 @@ Data Source Hierarchy (priority):
|
|
|
63
68
|
{% assign project_resources_btn_class = with_project_data.resources_btn_class | default: with_project_schema.resources_btn_class.default %}
|
|
64
69
|
|
|
65
70
|
<div class="d-flex{% if project_class != "" %} {{ project_class }}{% endif %}">
|
|
66
|
-
<div class="container pt-5">
|
|
71
|
+
<div class="container{% if with_navbar %} pt-5{% endif %}">
|
|
67
72
|
{% include base/card.html.liquid
|
|
68
|
-
class =
|
|
73
|
+
class = project_content_class
|
|
69
74
|
color = "primary"
|
|
70
75
|
screenshot = project_screenshot
|
|
71
76
|
screenshot_class = project_screenshot_class
|
|
@@ -22,6 +22,8 @@ Optional Inputs (from data objects):
|
|
|
22
22
|
|
|
23
23
|
Optional Inputs (from include):
|
|
24
24
|
- data: Title configuration object
|
|
25
|
+
- column_class: Bootstrap column class for the row wrapper (set by the layout to
|
|
26
|
+
keep this component aligned with the content column; defaults to "col")
|
|
25
27
|
|
|
26
28
|
Data Source Hierarchy (in priority order):
|
|
27
29
|
1. include.data - Explicitly passed configuration
|
|
@@ -54,9 +56,10 @@ Conditional Logic:
|
|
|
54
56
|
{%- assign title_class = with_title_data.title_class | default: with_title_schema.title_class.default %}
|
|
55
57
|
{%- assign title_lead = with_title_data.title_lead | default: page.title_lead %}
|
|
56
58
|
{%- assign title_lead_class = with_title_data.title_lead_class | default: with_title_schema.title_lead_class.default %}
|
|
59
|
+
{%- assign column_class = include.column_class | default: 'col' %}
|
|
57
60
|
|
|
58
61
|
<div class="row mb-3">
|
|
59
|
-
<div class="{{
|
|
62
|
+
<div class="{{ column_class }}">
|
|
60
63
|
<div class="{{ class }}">
|
|
61
64
|
<p class="{{ title_class }}">{{ title }}</p>
|
|
62
65
|
{% if title_lead != "" %}
|
|
@@ -31,6 +31,8 @@ Optional Inputs (from data objects):
|
|
|
31
31
|
|
|
32
32
|
Optional Inputs (from include):
|
|
33
33
|
- data: TOC configuration object
|
|
34
|
+
- column_class: Bootstrap column class for the row wrapper (set by the layout to
|
|
35
|
+
keep this component aligned with the content column; defaults to "col")
|
|
34
36
|
|
|
35
37
|
Data Source Hierarchy (in priority order):
|
|
36
38
|
- with_toc: include.with_toc → page.with_toc
|
|
@@ -59,12 +61,13 @@ Data Source Hierarchy (in priority order):
|
|
|
59
61
|
{%- assign sanitize = with_toc_data.sanitize | default: with_toc_schema["sanitize"].default %}
|
|
60
62
|
{%- assign skip_no_ids = with_toc_data.skip_no_ids | default: with_toc_schema["skip_no_ids"].default %}
|
|
61
63
|
{%- assign flat_toc = with_toc_data.flat_toc | default: with_toc_schema["flat_toc"].default %}
|
|
64
|
+
{%- assign column_class = include.column_class | default: 'col' %}
|
|
62
65
|
|
|
63
66
|
{%- comment %} === Presentation === {% endcomment %}
|
|
64
67
|
|
|
65
68
|
{%- comment %} --- HTML --- {% endcomment %}
|
|
66
69
|
<div class="row mb-3">
|
|
67
|
-
<div class="{{
|
|
70
|
+
<div class="{{ column_class }}">
|
|
68
71
|
<div class="accordion shadow-sm" id="pageToc">
|
|
69
72
|
<div class="accordion-item">
|
|
70
73
|
<div class="accordion-header" id="flush-headingOne">
|
data/_layouts/base/default.html
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<!doctype html>
|
|
2
2
|
<html lang="{{ page.lang | default: 'en' }}"{% if page.with_ogp %} prefix="og: https://ogp.me/ns#"{% endif %}>
|
|
3
3
|
{% include base/head.html.liquid -%}
|
|
4
|
-
<body id="top" class="bg-body">
|
|
4
|
+
<body id="top" class="bg-body{% if page.with_navbar %} has-navbar{% endif %}">
|
|
5
5
|
|
|
6
6
|
{% include base/navbar.html.liquid -%}
|
|
7
7
|
|
|
@@ -9,6 +9,15 @@
|
|
|
9
9
|
|
|
10
10
|
{% include base/breakingnews.html.liquid -%}
|
|
11
11
|
|
|
12
|
+
{%- assign with_content_data = page.with_content_data
|
|
13
|
+
| default: site.data.content
|
|
14
|
+
| default: site.data.base.content
|
|
15
|
+
-%}
|
|
16
|
+
{%- assign content_schema = site.data.content_schema | default: site.data.base.content_schema -%}
|
|
17
|
+
{%- assign content_class = with_content_data.class
|
|
18
|
+
| default: content_schema.properties.with_content_data.properties.class.default
|
|
19
|
+
| default: 'col' -%}
|
|
20
|
+
|
|
12
21
|
<main class="container py-3">
|
|
13
22
|
|
|
14
23
|
{%- include base/announcement.html.liquid %}
|
|
@@ -17,15 +26,15 @@
|
|
|
17
26
|
|
|
18
27
|
{% include base/event.html.liquid %}
|
|
19
28
|
|
|
20
|
-
{% include base/breadcrumb.html.liquid %}
|
|
29
|
+
{% include base/breadcrumb.html.liquid column_class=content_class %}
|
|
21
30
|
|
|
22
|
-
{% include base/title.html.liquid %}
|
|
31
|
+
{% include base/title.html.liquid column_class=content_class %}
|
|
23
32
|
|
|
24
|
-
{% include base/artwork.html.liquid %}
|
|
33
|
+
{% include base/artwork.html.liquid column_class=content_class %}
|
|
25
34
|
|
|
26
|
-
{% include base/toc.html.liquid %}
|
|
35
|
+
{% include base/toc.html.liquid column_class=content_class %}
|
|
27
36
|
|
|
28
|
-
{% include base/content.html.liquid %}
|
|
37
|
+
{% include base/content.html.liquid column_class=content_class %}
|
|
29
38
|
|
|
30
39
|
</main>
|
|
31
40
|
|
|
@@ -22,10 +22,20 @@
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
body {
|
|
25
|
-
padding-top:
|
|
25
|
+
padding-top: 0;
|
|
26
26
|
|
|
27
27
|
.sticky-top-breakingnews {
|
|
28
|
-
top:
|
|
28
|
+
top: 0;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// Fixed-top navbar reserves this vertical space; pages that disable it
|
|
32
|
+
// (with_navbar: false) get no compensation, since nothing needs clearing.
|
|
33
|
+
&.has-navbar {
|
|
34
|
+
padding-top: $breakingnews-height;
|
|
35
|
+
|
|
36
|
+
.sticky-top-breakingnews {
|
|
37
|
+
top: $breakingnews-height;
|
|
38
|
+
}
|
|
29
39
|
}
|
|
30
40
|
}
|
|
31
41
|
|
|
@@ -160,7 +170,6 @@ main {
|
|
|
160
170
|
.content > h4,
|
|
161
171
|
.content > h5,
|
|
162
172
|
.content > h6 {
|
|
163
|
-
scroll-margin-top: 80px;
|
|
164
173
|
scroll-margin-bottom: 100px;
|
|
165
174
|
margin-top: 3rem;
|
|
166
175
|
}
|
|
@@ -170,7 +179,6 @@ main {
|
|
|
170
179
|
margin-bottom: $spacer * 0.75;
|
|
171
180
|
}
|
|
172
181
|
.content > figure {
|
|
173
|
-
scroll-margin-top: 80px;
|
|
174
182
|
scroll-margin-bottom: 100px;
|
|
175
183
|
}
|
|
176
184
|
|
|
@@ -248,7 +256,6 @@ main {
|
|
|
248
256
|
// item internal layout while still providing proper scroll margin and visual spacing.
|
|
249
257
|
.content .accordion,
|
|
250
258
|
.content .accordion-item {
|
|
251
|
-
scroll-margin-top: 80px;
|
|
252
259
|
scroll-margin-bottom: 100px;
|
|
253
260
|
}
|
|
254
261
|
|
|
@@ -329,3 +336,24 @@ main {
|
|
|
329
336
|
}
|
|
330
337
|
}
|
|
331
338
|
}
|
|
339
|
+
|
|
340
|
+
// --------------------------------------------------------------------------------
|
|
341
|
+
// Navbar-dependent scroll offset (fixed-top navbar only)
|
|
342
|
+
// --------------------------------------------------------------------------------
|
|
343
|
+
// scroll-margin-top exists solely to keep anchored headings/figures/accordions from
|
|
344
|
+
// being hidden behind the fixed-top navbar. Scoped to .has-navbar (stamped on <body>
|
|
345
|
+
// in the layout only when page.with_navbar is true) so pages that disable the navbar
|
|
346
|
+
// get no phantom offset.
|
|
347
|
+
body.has-navbar main {
|
|
348
|
+
.content > h1,
|
|
349
|
+
.content > h2,
|
|
350
|
+
.content > h3,
|
|
351
|
+
.content > h4,
|
|
352
|
+
.content > h5,
|
|
353
|
+
.content > h6,
|
|
354
|
+
.content > figure,
|
|
355
|
+
.content .accordion,
|
|
356
|
+
.content .accordion-item {
|
|
357
|
+
scroll-margin-top: 80px;
|
|
358
|
+
}
|
|
359
|
+
}
|