mirror of
https://github.com/twbs/bootstrap.git
synced 2025-08-22 21:22:52 +02:00
Switch to Hugo
This commit includes all the needed workarounds and most changes from the main branch for everything to work, like: * removing empty lines in raw HTML that break output * read .browserslistrc, CSS variables from disk instead of duplicating it * using Hugo mounts * using Hugo for the docs CSS/JS * move ToC Sass code to a separate file while adapting it for Hugo Thus, this patch makes our npm scripts faster since lint runs on one step and there's no separate docs assets processing.
This commit is contained in:
37
site/layouts/_default/docs.html
Normal file
37
site/layouts/_default/docs.html
Normal file
@@ -0,0 +1,37 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
{{ partial "header" . }}
|
||||
</head>
|
||||
<body>
|
||||
{{ partial "skippy" . }}
|
||||
|
||||
{{ partial "docs-navbar" . }}
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row flex-xl-nowrap">
|
||||
<div class="col-md-3 col-xl-2 bd-sidebar">
|
||||
{{ partial "docs-sidebar" . }}
|
||||
</div>
|
||||
|
||||
{{ if (eq .Page.Params.toc true) }}
|
||||
<nav class="d-none d-xl-block col-xl-2 bd-toc" aria-label="Secondary navigation">
|
||||
{{ .TableOfContents }}
|
||||
</nav>
|
||||
{{ end }}
|
||||
|
||||
<main class="col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main">
|
||||
<div class="d-md-flex flex-md-row-reverse align-items-center justify-content-between">
|
||||
<a class="btn btn-sm btn-bd-light my-2 my-md-0" href="{{ .Site.Params.repo }}/blob/v4-dev/site/content/{{ .Page.File.Path | replaceRE `\\` "/" }}" title="View and edit this file on GitHub" target="_blank" rel="noopener">View on GitHub</a>
|
||||
<h1 class="bd-title" id="content">{{ .Title | markdownify }}</h1>
|
||||
</div>
|
||||
<p class="bd-lead">{{ .Page.Params.Description | markdownify }}</p>
|
||||
{{ partial "ads" . }}
|
||||
{{ .Content }}
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ partial "scripts" . }}
|
||||
</body>
|
||||
</html>
|
60
site/layouts/_default/examples.html
Normal file
60
site/layouts/_default/examples.html
Normal file
@@ -0,0 +1,60 @@
|
||||
<!doctype html>
|
||||
<html lang="en"{{ with .Page.Params.html_class }} class="{{ . }}"{{ end }}>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="{{ .Site.Params.authors }}">
|
||||
<meta name="generator" content="Hugo {{ hugo.Version }}">
|
||||
<title>{{ .Page.Title | markdownify }} · {{ .Site.Title | markdownify }}</title>
|
||||
|
||||
<link rel="canonical" href="{{ .Permalink }}">
|
||||
|
||||
{{ with .Params.robots -}}
|
||||
<meta name="robots" content="{{ . }}">
|
||||
{{- end }}
|
||||
|
||||
{{ partial "stylesheet" . }}
|
||||
{{ partial "favicons" . }}
|
||||
|
||||
<style>
|
||||
.bd-placeholder-img {
|
||||
font-size: 1.125rem;
|
||||
text-anchor: middle;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.bd-placeholder-img-lg {
|
||||
font-size: 3.5rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
{{ range .Page.Params.extra_css }}
|
||||
{{ "<!-- Custom styles for this template -->" | safeHTML }}
|
||||
<link href="{{ . }}" rel="stylesheet">
|
||||
{{- end }}
|
||||
</head>
|
||||
<body{{ with .Page.Params.body_class }} class="{{ . }}"{{ end }}>
|
||||
{{ .Content }}
|
||||
|
||||
{{ if ne .Page.Params.include_js false -}}
|
||||
<script src="{{ .Site.Params.cdn.jquery }}" {{ printf "integrity=%q" .Site.Params.cdn.jquery_hash | safeHTMLAttr }} crossorigin="anonymous"></script>
|
||||
<script>window.jQuery || document.write('<script src="/docs/{{ .Site.Params.docs_version }}/assets/js/vendor/jquery.slim.min.js"><\/script>')</script>
|
||||
|
||||
{{- if eq hugo.Environment "production" -}}
|
||||
<script src="/docs/{{ .Site.Params.docs_version }}/dist/js/bootstrap.bundle.min.js" {{ printf "integrity=%q" .Site.Params.cdn.js_bundle_hash | safeHTMLAttr }} crossorigin="anonymous"></script>
|
||||
{{- else -}}
|
||||
<script src="/docs/{{ .Site.Params.docs_version }}/dist/js/bootstrap.bundle.js"></script>
|
||||
{{- end }}
|
||||
|
||||
{{ range .Page.Params.extra_js }}
|
||||
<script src="{{ . }}"></script>
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
</body>
|
||||
</html>
|
19
site/layouts/_default/home.html
Normal file
19
site/layouts/_default/home.html
Normal file
@@ -0,0 +1,19 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
{{ partial "header" . }}
|
||||
</head>
|
||||
<body>
|
||||
{{ partial "skippy" . }}
|
||||
|
||||
{{ partial "docs-navbar" . }}
|
||||
|
||||
{{ partial "home/masthead" . }}
|
||||
{{ partial "home/masthead-followup" . }}
|
||||
|
||||
{{ .Content }}
|
||||
|
||||
{{ partial "footer" . }}
|
||||
{{ partial "scripts" . }}
|
||||
</body>
|
||||
</html>
|
11
site/layouts/_default/redirect.html
Normal file
11
site/layouts/_default/redirect.html
Normal file
@@ -0,0 +1,11 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<title>{{ .Page.Params.redirect | absURL }}</title>
|
||||
<link rel="canonical" href="{{ .Page.Params.redirect | absURL }}">
|
||||
<meta name="robots" content="noindex">
|
||||
<meta http-equiv="refresh" content="0; url={{ .Page.Params.redirect | absURL }}">
|
||||
</head>
|
||||
</html>
|
52
site/layouts/_default/single.html
Normal file
52
site/layouts/_default/single.html
Normal file
@@ -0,0 +1,52 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
{{ partial "header" . }}
|
||||
</head>
|
||||
<body>
|
||||
{{ partial "skippy" . }}
|
||||
|
||||
{{ partial "docs-navbar" . }}
|
||||
|
||||
<header class="d-flex flex-column flex-md-row align-items-md-center p-5 bg-light">
|
||||
<div class="pt-md-3 pb-md-4">
|
||||
<h1 class="bd-title mt-0">{{ .Title | markdownify }}</h1>
|
||||
<p class="bd-lead">{{ .Page.Params.Description | markdownify }}</p>
|
||||
{{ if eq .Title "Examples" }}
|
||||
<div class="d-flex flex-column flex-sm-row">
|
||||
<a href="{{ .Site.Params.download.dist_examples }}" class="btn btn-bd-primary py-2 px-3" onclick="ga('send', 'event', 'Examples', 'Hero', 'Download Examples');">Download examples</a>
|
||||
<a href="{{ .Site.Params.download.source }}" class="btn btn-outline-secondary py-2 px-3 mt-3 mt-sm-0 ml-sm-3" onclick="ga('send', 'event', 'Examples', 'Hero', 'Download');">Download source code</a>
|
||||
</div>
|
||||
{{- end -}}
|
||||
</div>
|
||||
{{ partial "ads" . }}
|
||||
</header>
|
||||
|
||||
<main class="bd-content p-5" id="content" role="main">
|
||||
{{ .Content }}
|
||||
|
||||
{{ if eq .Title "Examples" }}
|
||||
<hr class="my-5">
|
||||
<div class="container">
|
||||
<div class="text-center">
|
||||
<div class="masthead-followup-icon d-inline-block mb-2 text-white bg-danger">
|
||||
{{ partial "icons/droplet-fill.svg" (dict "width" "32" "height" "32") }}
|
||||
</div>
|
||||
<h2>Go further with Bootstrap Themes</h2>
|
||||
<p class="col-md-10 mx-auto lead font-weight-normal">
|
||||
Need something more than these examples? Take Bootstrap to the next level with premium themes from the <a href="{{ $.Site.Params.themes }}">official Bootstrap Themes marketplace</a>. They’re built as their own extended frameworks, rich with new components and plugins, documentation, and powerful build tools.
|
||||
</p>
|
||||
<a href="{{ .Site.Params.themes }}" class="btn btn-lg btn-outline-primary mb-3">Browse themes</a>
|
||||
</div>
|
||||
<img class="d-block img-fluid mt-3 mx-auto" srcset="/docs/{{ .Site.Params.docs_version }}/assets/img/bootstrap-themes-collage.png,
|
||||
/docs/{{ .Site.Params.docs_version }}/assets/img/bootstrap-themes-collage@2x.png 2x"
|
||||
src="/docs/{{ .Site.Params.docs_version }}/assets/img/bootstrap-themes-collage.png"
|
||||
alt="Bootstrap Themes" width="1151" height="320" loading="lazy">
|
||||
</div>
|
||||
{{ end }}
|
||||
</main>
|
||||
|
||||
{{ partial "footer" . }}
|
||||
{{ partial "scripts" . }}
|
||||
</body>
|
||||
</html>
|
Reference in New Issue
Block a user