From bde012b309486d4969f273747c8f593250dac7ec Mon Sep 17 00:00:00 2001
From: bb1950328 <bb1950328@gmail.com>
Date: Sat, 30 Jan 2021 12:47:47 +0000
Subject: [PATCH] small optimizations to satisfy Google Lighthouse a bit more

---
 assets/js/index.js         |    5 +++--
 layouts/partials/head.html |   13 +++++++++++++
 assets/sass/_fonts.sass    |    6 ++++++
 3 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/assets/js/index.js b/assets/js/index.js
index 65cc1a9..b585603 100644
--- a/assets/js/index.js
+++ b/assets/js/index.js
@@ -131,8 +131,9 @@
     if(links) {
       Array.from(links).forEach(function(link, index){
         let target, rel, blank, noopener, attr1, attr2, url, isExternal;
-        url = elemAttribute(link, 'href');
-        isExternal = (url && typeof url == 'string' && url.startsWith('http')) && !url.startsWith(rootURL) && link.closest(contentWrapperClass);
+        url = new URL(elemAttribute(link, 'href'));
+        // definition of same origin: RFC 6454, section 4 (https://tools.ietf.org/html/rfc6454#section-4)
+        isExternal = url.host !== location.host || url.protocol !== location.protocol || url.port !== location.port;
         if(isExternal) {
           target = 'target';
           rel = 'rel';
diff --git a/assets/sass/_fonts.sass b/assets/sass/_fonts.sass
index 45153c7..29d5f29 100644
--- a/assets/sass/_fonts.sass
+++ b/assets/sass/_fonts.sass
@@ -4,33 +4,39 @@
   font-style: normal
   font-weight: 400
   src: local('Metropolis Regular'), local('Metropolis-Regular'), url('#{$font-path}/Metropolis-Regular.woff2') format('woff2'), url('#{$font-path}/Metropolis-Regular.woff') format('woff')
+  font-display: swap
 
 @font-face
   font-family: 'Metropolis'
   font-style: normal
   font-weight: 300
   src: local('Metropolis Light'), local('Metropolis-Light'), url('#{$font-path}/Metropolis-Light.woff2') format('woff2'), url('#{$font-path}/Metropolis-Light.woff') format('woff')
+  font-display: swap
 
 @font-face
   font-family: 'Metropolis'
   font-style: italic
   font-weight: 300
   src: local('Metropolis Light Italic'), local('Metropolis-LightItalic'), url('#{$font-path}/Metropolis-LightItalic.woff2') format('woff2'), url('#{$font-path}/Metropolis-LightItalic.woff') format('woff')
+  font-display: swap
 
 @font-face
   font-family: 'Metropolis'
   font-style: normal
   font-weight: 500
   src: local('Metropolis Medium'), local('Metropolis-Medium'), url('#{$font-path}/Metropolis-Medium.woff2') format('woff2'), url('#{$font-path}/Metropolis-Medium.woff') format('woff')
+  font-display: swap
 
 @font-face
   font-family: 'Metropolis'
   font-style: italic
   font-weight: 500
   src: local('Metropolis Medium Italic'), local('Metropolis-MediumItalic'), url('#{$font-path}/Metropolis-MediumItalic.woff2') format('woff2'), url('#{$font-path}/Metropolis-MediumItalic.woff') format('woff')
+  font-display: swap
 
 @font-face
   font-family: 'Cookie'
   font-style: normal
   font-weight: 400
   src: local('Cookie-Regular'), url('#{$font-path}/cookie-v10-latin-regular.woff2') format('woff2'), url('#{$font-path}/cookie-v10-latin-regular.woff') format('woff')
+  font-display: swap
diff --git a/layouts/partials/head.html b/layouts/partials/head.html
index 7b2b82f..045f3f3 100644
--- a/layouts/partials/head.html
+++ b/layouts/partials/head.html
@@ -21,3 +21,16 @@
 {{- $options := (dict "targetPath" "css/styles.css" "outputStyle" "compressed" "enableSourceMap" "true") -}}
 {{- $styles := resources.Get "sass/main.sass" | resources.ExecuteAsTemplate "main.sass" . | resources.ToCSS $options | resources.Fingerprint "sha512" }}
 <link rel="stylesheet" href="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}">
+
+{{- $sp := .Site.Params }}
+{{ with $sp.metaThemeColor }}
+  <meta name="theme-color" content="{{.}}">
+{{ end }}
+
+{{ if .Description }}
+  <meta name="description" content="{{ .Description }}">
+{{ else if .IsPage }}
+  <meta name="description" content="{{ .Summary | plainify }}">
+{{ else if .Site.Params.Description }}
+  <meta name="descripion" content="{{.}}">
+{{ end }}
\ No newline at end of file

--
Gitblit v1.10.0