feat: support Params.marketing.google_site_verification

Also trial self-closing tags over void tags as Prettier doesn't support void tags: https://github.com/prettier/prettier/issues/5246
This commit is contained in:
George Cushen 2021-02-02 23:55:30 +00:00
commit 9bbf6fa2a6
4 changed files with 64 additions and 44 deletions

View file

@ -6,4 +6,14 @@ module.exports = {
jsxBracketSameLine: true, jsxBracketSameLine: true,
trailingComma: 'all', trailingComma: 'all',
printWidth: 120, printWidth: 120,
overrides: [
{
files: [
"*.html"
],
options: {
parser: "go-template"
}
}
],
}; };

View file

@ -1,13 +1,15 @@
<head> <head>
<meta charset="utf-8" />
<meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
{{ $is_sponsor := site.Params.i_am_a_sponsor | default false }} {{ $is_sponsor := site.Params.i_am_a_sponsor | default false }}
{{ $hide_generator := site.Params.power_ups.hide_generator | default false }} {{ $hide_generator := site.Params.power_ups.hide_generator | default false }}
{{ if not (and $is_sponsor $hide_generator) }} {{ if not (and $is_sponsor $hide_generator) }}
<meta name="generator" content="Wowchemy {{ site.Data.wowchemy.version }} for Hugo"> <meta name="generator" content="Wowchemy {{ site.Data.wowchemy.version }} for Hugo" />
{{ end }} {{ end }}
{{ with site.Params.marketing.google_site_verification }}
<meta name="google-site-verification" content="{{ . }}" />
{{- end -}}
{{ $scr := .Scratch }} {{ $scr := .Scratch }}
@ -25,7 +27,7 @@
{{ end }} {{ end }}
{{ $scr.Set "superuser_username" $superuser_username }}{{/* Set superuser globally for page_author.html. */}} {{ $scr.Set "superuser_username" $superuser_username }}{{/* Set superuser globally for page_author.html. */}}
{{ with $superuser_name }}<meta name="author" content="{{ . }}">{{ end }} {{ with $superuser_name }}<meta name="author" content="{{ . }}" />{{ end }}
{{/* Generate page description. */}} {{/* Generate page description. */}}
{{ $desc := "" }} {{ $desc := "" }}
@ -40,30 +42,30 @@
{{ else }} {{ else }}
{{ $desc = $superuser_role }} {{ $desc = $superuser_role }}
{{ end }} {{ end }}
<meta name="description" content="{{ $desc }}"> <meta name="description" content="{{ $desc }}" />
{{ range .Translations }} {{ range .Translations }}
<link rel="alternate" hreflang="{{ .Lang }}" href="{{ .Permalink }}"> <link rel="alternate" hreflang="{{ .Lang }}" href="{{ .Permalink }}" />
{{ end }} {{ end }}
<link rel="alternate" hreflang="{{ site.LanguageCode | default "en-us" }}" href="{{ .Permalink }}"> <link rel="alternate" hreflang="{{ site.LanguageCode | default "en-us" }}" href="{{ .Permalink }}" />
{{ partial "functions/parse_theme" . }} {{ partial "functions/parse_theme" . }}
{{/* Pre-connect to Google Fonts if the site's Font Theme uses them. */}} {{/* Pre-connect to Google Fonts if the site's Font Theme uses them. */}}
{{ with ($scr.Get "google_fonts") }} {{ with ($scr.Get "google_fonts") }}
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
{{end}} {{ end }}
{{ $css := site.Data.assets.css }} {{ $css := site.Data.assets.css }}
{{ $js := site.Data.assets.js }} {{ $js := site.Data.assets.js }}
{{ if ne ($scr.Get "primary") "#fff" }} {{ if ne ($scr.Get "primary") "#fff" }}
<meta name="theme-color" content="{{ $scr.Get "primary" }}"> <meta name="theme-color" content="{{ $scr.Get "primary" }}" />
{{ end }} {{ end }}
{{/* Config LaTeX math rendering. */}} {{/* Config LaTeX math rendering. */}}
{{ if or .Params.math site.Params.math }} {{ if or .Params.math site.Params.math }}
{{ $mathjax_config := resources.Get "js/mathjax-config.js" }} {{ $mathjax_config := resources.Get "js/mathjax-config.js" }}
<script src="{{ $mathjax_config.RelPermalink }}"></script> <script src="{{ $mathjax_config.RelPermalink }}"></script>
{{ end }} {{ end }}
{{/* Attempt to load local vendor CSS, otherwise load from CDN. */}} {{/* Attempt to load local vendor CSS, otherwise load from CDN. */}}
@ -71,7 +73,7 @@
{{ $scr.Set "vendor_js_filename" "main.min.js" }} {{ $scr.Set "vendor_js_filename" "main.min.js" }}
{{ if and (fileExists (printf "static/css/vendor/%s" ($scr.Get "vendor_css_filename"))) (fileExists (printf "static/js/vendor/%s" ($scr.Get "vendor_js_filename"))) }} {{ if and (fileExists (printf "static/css/vendor/%s" ($scr.Get "vendor_css_filename"))) (fileExists (printf "static/js/vendor/%s" ($scr.Get "vendor_js_filename"))) }}
{{ $scr.Set "use_cdn" 0 }} {{ $scr.Set "use_cdn" 0 }}
<link rel="stylesheet" href="{{ printf "/css/vendor/%s" ($scr.Get "vendor_css_filename") | relURL }}"> <link rel="stylesheet" href="{{ printf "/css/vendor/%s" ($scr.Get "vendor_css_filename") | relURL }}" />
{{ else }} {{ else }}
{{ $scr.Set "use_cdn" 1 }} {{ $scr.Set "use_cdn" 1 }}
{{ if site.Params.icon.pack.ai }} {{ if site.Params.icon.pack.ai }}
@ -105,7 +107,7 @@
{{ end }} {{ end }}
{{ if or (eq site.Params.map.engine 2) (eq site.Params.map.engine 3) }} {{ if or (eq site.Params.map.engine 2) (eq site.Params.map.engine 3) }}
{{ printf "<link rel=\"stylesheet\" href=\"%s\" integrity=\"%s\" crossorigin=\"anonymous\" media=\"print\" onload=\"this.media='all'\">" (printf $css.leaflet.url $css.leaflet.version) $css.leaflet.sri | safeHTML }} {{ printf "<link rel=\"stylesheet\" href=\"%s\" integrity=\"%s\" crossorigin=\"anonymous\" media=\"print\" onload=\"this.media='all'\">" (printf $css.leaflet.url $css.leaflet.version) $css.leaflet.sri | safeHTML }}
{{ end }} {{ end }}
{{ if eq site.Params.search.engine 2 }} {{ if eq site.Params.search.engine 2 }}
@ -114,19 +116,19 @@
{{ end }} {{ end }}
{{/* Load async scripts. */}} {{/* Load async scripts. */}}
{{ range $k, $v := site.Data.assets.js }}{{/* TODO: investigate why `where ... "async" true` does not work. */}} {{ range $k, $v := site.Data.assets.js }}
{{/* TODO: investigate why `where ... "async" true` does not work. */}}
{{ $load := $v.async }} {{ $load := $v.async }}
{{/* Only load MathJax if required. */}} {{/* Only load MathJax if required. */}}
{{ if (eq $k "mathJax") | and (not (or $.Params.math site.Params.math)) }} {{ if (eq $k "mathJax") | and (not (or $.Params.math site.Params.math)) }}
{{ $load = false }} {{ $load = false }}
{{end}} {{ end }}
{{ if $load }} {{ if $load }}
{{ printf "<script src=\"%s\" integrity=\"%s\" crossorigin=\"anonymous\" async></script>" (printf $v.url $v.version) $v.sri | safeHTML }} {{ printf "<script src=\"%s\" integrity=\"%s\" crossorigin=\"anonymous\" async></script>" (printf $v.url $v.version) $v.sri | safeHTML }}
{{end}} {{ end }}
{{end}} {{ end }}
{{ end }} {{ end }}
{{/* Load Google Fonts if the site's Font Theme uses them. */}} {{/* Load Google Fonts if the site's Font Theme uses them. */}}
@ -164,7 +166,7 @@
{{- if eq hugo.Environment "production" -}} {{- if eq hugo.Environment "production" -}}
{{- $style = $style | fingerprint "md5" -}} {{- $style = $style | fingerprint "md5" -}}
{{- end -}} {{- end -}}
<link rel="stylesheet" href="{{ $style.RelPermalink }}"> <link rel="stylesheet" href="{{ $style.RelPermalink }}" />
{{ partial "marketing/google_analytics" . }} {{ partial "marketing/google_analytics" . }}
{{ partial "marketing/google_tag_manager" . }} {{ partial "marketing/google_tag_manager" . }}
@ -172,21 +174,21 @@
{{/* Netlify Identity integration. */}} {{/* Netlify Identity integration. */}}
{{ if .IsHome | and (site.Params.cms.netlify_cms | default false) }} {{ if .IsHome | and (site.Params.cms.netlify_cms | default false) }}
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script> <script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
{{ end }} {{ end }}
{{ with .OutputFormats.Get "RSS" }} {{ with .OutputFormats.Get "RSS" }}
<link rel="alternate" href="{{.RelPermalink}}" type="application/rss+xml" title="{{site.Title}}"> <link rel="alternate" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ site.Title }}" />
{{ end }} {{ end }}
{{ if site.Home.OutputFormats.Get "WebAppManifest" }} {{ if site.Home.OutputFormats.Get "WebAppManifest" }}
<link rel="manifest" href="{{ "index.webmanifest" | relLangURL }}"> <link rel="manifest" href="{{ "index.webmanifest" | relLangURL }}" />
{{ end }} {{ end }}
<link rel="icon" type="image/png" href="{{(partial "functions/get_icon" 32).RelPermalink}}"> <link rel="icon" type="image/png" href="{{ (partial "functions/get_icon" 32).RelPermalink }}" />
<link rel="apple-touch-icon" type="image/png" href="{{(partial "functions/get_icon" 180).RelPermalink}}"> <link rel="apple-touch-icon" type="image/png" href="{{ (partial "functions/get_icon" 180).RelPermalink }}" />
<link rel="canonical" href="{{ .Permalink }}"> <link rel="canonical" href="{{ .Permalink }}" />
{{/* Get page image for sharing. */}} {{/* Get page image for sharing. */}}
{{ $featured_image := (.Resources.ByType "image").GetMatch "*featured*" }} {{ $featured_image := (.Resources.ByType "image").GetMatch "*featured*" }}
@ -212,37 +214,39 @@
{{ $twitter_card = "summary" }} {{ $twitter_card = "summary" }}
{{ end }} {{ end }}
{{ $scr.Set "og_image" $og_image }}{{/* Set `og_image` globally for `rss.xml`. */}} {{ $scr.Set "og_image" $og_image }}{{/* Set `og_image` globally for `rss.xml`. */}}
<meta property="twitter:card" content="{{ $twitter_card }}"> <meta property="twitter:card" content="{{ $twitter_card }}" />
{{ with site.Params.twitter }} {{ with site.Params.twitter }}
<meta property="twitter:site" content="@{{ . }}"> <meta property="twitter:site" content="@{{ . }}" />
<meta property="twitter:creator" content="@{{ . }}"> <meta property="twitter:creator" content="@{{ . }}" />
{{ end }} {{ end }}
<meta property="og:site_name" content="{{ site.Title }}"> <meta property="og:site_name" content="{{ site.Title }}" />
<meta property="og:url" content="{{ .Permalink }}"> <meta property="og:url" content="{{ .Permalink }}" />
<meta property="og:title" content="{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ site.Title }}"> <meta property="og:title" content="{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ site.Title }}" />
<meta property="og:description" content="{{ $desc }}"> <meta property="og:description" content="{{ $desc }}" />
{{- with $og_image -}} {{- with $og_image -}}
<meta property="og:image" content="{{.}}"> <meta property="og:image" content="{{ . }}" />
<meta property="twitter:image" content="{{.}}"> <meta property="twitter:image" content="{{ . }}" />
{{- end -}} {{- end -}}
<meta property="og:locale" content="{{ site.LanguageCode | default "en-us" }}"> <meta property="og:locale" content="{{ site.LanguageCode | default "en-us" }}" />
{{ if .IsPage }} {{ if .IsPage }}
{{ if not .PublishDate.IsZero }} {{ if not .PublishDate.IsZero }}
<meta property="article:published_time" content="{{ .PublishDate.Format "2006-01-02T15:04:05-07:00" | safeHTML }}"> <meta
property="article:published_time"
content="{{ .PublishDate.Format "2006-01-02T15:04:05-07:00" | safeHTML }}"
/>
{{ else if not .Date.IsZero }} {{ else if not .Date.IsZero }}
<meta property="article:published_time" content="{{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }}"> <meta property="article:published_time" content="{{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }}" />
{{ end }} {{ end }}
{{ if not .Lastmod.IsZero }}<meta property="article:modified_time" content="{{ .Lastmod.Format "2006-01-02T15:04:05-07:00" | safeHTML }}">{{ end }} {{ if not .Lastmod.IsZero }}<meta property="article:modified_time" content="{{ .Lastmod.Format "2006-01-02T15:04:05-07:00" | safeHTML }}">{{ end }}
{{ else }} {{ else }}
{{ if not .Date.IsZero }}<meta property="og:updated_time" content="{{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }}">{{ end }} {{ if not .Date.IsZero }}
<meta property="og:updated_time" content="{{ .Date.Format "2006-01-02T15:04:05-07:00" | safeHTML }}" />
{{ end }}
{{ end }} {{ end }}
{{ partial "jsonld/main" (dict "page" . "summary" $desc) }} {{ partial "jsonld/main" (dict "page" . "summary" $desc) }}
{{ partial "cookie_consent" . }} {{ partial "cookie_consent" . }}
{{ partial "custom_head" . }} {{ partial "custom_head" . }}
<title>{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ site.Title }}</title> <title>{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ site.Title }}</title>
</head> </head>

View file

@ -21,6 +21,7 @@
"eslint": "^7.17.0", "eslint": "^7.17.0",
"eslint-config-prettier": "^7.1.0", "eslint-config-prettier": "^7.1.0",
"prettier": "2.2.1", "prettier": "2.2.1",
"prettier-plugin-go-template": "0.0.11-beta.4",
"stylelint": "^13.8.0", "stylelint": "^13.8.0",
"stylelint-config-prettier": "^8.0.2", "stylelint-config-prettier": "^8.0.2",
"stylelint-config-standard": "^20.0.0", "stylelint-config-standard": "^20.0.0",

View file

@ -1560,6 +1560,11 @@ prelude-ls@^1.2.1:
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
prettier-plugin-go-template@0.0.11-beta.4:
version "0.0.11-beta.4"
resolved "https://registry.yarnpkg.com/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.11-beta.4.tgz#abf833f3e959c070518b0eb4975993271de3217e"
integrity sha512-QiyZoCUsksSF3pVDcc2iNG3i0bFpwAws+9zUUnK89BK4lkUnwF/DW0d4uSEhEFt06+GLomWgR7pkMI+xvkVuRA==
prettier@2.2.1: prettier@2.2.1:
version "2.2.1" version "2.2.1"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5"