parent
c963ef30c3
commit
d51ea9c4f4
2 changed files with 160 additions and 0 deletions
@ -0,0 +1,157 @@ |
||||
<head> |
||||
{{/* Instant Page Script */}} |
||||
{{/* Optimised by A Friend */}} |
||||
<link rel="preload" href="{{ .Site.BaseURL }}instant.page.v5.1.1.js" as="script" /> |
||||
<script defer> |
||||
window.addEventListener('load', () => { |
||||
const el = document.createElement('script') |
||||
el.src = '{{ .Site.BaseURL }}instant.page.v5.1.1.js' |
||||
document.body.append(el) |
||||
}) |
||||
</script> |
||||
<meta charset="utf-8" /> |
||||
{{ with .Site.Language.Params.htmlCode | default .Site.LanguageCode }} |
||||
<meta http-equiv="content-language" content="{{ . }}" /> |
||||
{{ end }} |
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge" /> |
||||
{{/* Title */}} |
||||
{{ if .IsHome -}} |
||||
<title>{{ .Site.Title | emojify }}</title> |
||||
<meta name="title" content="{{ .Site.Title | emojify }}" /> |
||||
{{- else -}} |
||||
<title>{{ .Title | emojify }} · {{ .Site.Title | emojify }}</title> |
||||
<meta name="title" content="{{ .Title | emojify }} · {{ .Site.Title | emojify }}" /> |
||||
{{- end }} |
||||
{{/* Metadata */}} |
||||
{{ with .Site.Params.description -}} |
||||
<meta name="description" content="{{ . }}" /> |
||||
{{- end }} |
||||
{{ with .Site.Params.keywords -}} |
||||
<meta name="keywords" content="{{ . }}" /> |
||||
{{- end }} |
||||
{{ with .Site.Params.robots }} |
||||
<meta name="robots" content="{{ . }}" /> |
||||
{{ end }} |
||||
{{ with .Params.robots }} |
||||
<meta name="robots" content="{{ . }}" /> |
||||
{{ end }} |
||||
<link rel="canonical" href="{{ .Permalink }}" /> |
||||
{{ range .AlternativeOutputFormats -}} |
||||
{{ printf ` |
||||
<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .RelPermalink ($.Site.Title | emojify) | |
||||
safeHTML }} |
||||
{{ end -}} |
||||
{{/* Asset bundles */}} |
||||
{{ $assets := newScratch }} |
||||
{{ $cssScheme := resources.Get (printf "css/schemes/%s.css" (.Site.Params.colorScheme | default "blowfish")) }} |
||||
{{ if not $cssScheme }} |
||||
{{ $cssScheme = resources.Get "css/schemes/blowfish.css" }} |
||||
{{ end }} |
||||
{{ $assets.Add "css" (slice $cssScheme) }} |
||||
{{ $cssMain := resources.Get "css/compiled/main.css" }} |
||||
{{ $assets.Add "css" (slice $cssMain) }} |
||||
{{ $cssCustom := resources.Get "css/custom.css" }} |
||||
{{ if $cssCustom }} |
||||
{{ $assets.Add "css" (slice $cssCustom) }} |
||||
{{ end }} |
||||
{{ $bundleCSS := $assets.Get "css" | resources.Concat "css/main.bundle.css" | resources.Minify | resources.Fingerprint |
||||
"sha512" }} |
||||
<link type="text/css" rel="stylesheet" href="{{ $bundleCSS.RelPermalink }}" |
||||
integrity="{{ $bundleCSS.Data.Integrity }}" /> |
||||
{{ $jsAppearance := resources.Get "js/appearance.js" }} |
||||
{{ $jsAppearance = $jsAppearance | resources.Minify | resources.Fingerprint "sha512" }} |
||||
<script type="text/javascript" src="{{ $jsAppearance.RelPermalink }}" |
||||
integrity="{{ $jsAppearance.Data.Integrity }}"></script> |
||||
{{ if .Site.Params.enableSearch | default false }} |
||||
{{ $jsFuse := resources.Get "lib/fuse/fuse.min.js" }} |
||||
{{ $jsSearch := resources.Get "js/search.js" }} |
||||
{{ $assets.Add "js" (slice $jsFuse $jsSearch) }} |
||||
{{ end }} |
||||
{{ if .Site.Params.enableCodeCopy | default false }} |
||||
{{ $jsCode := resources.Get "js/code.js" }} |
||||
{{ $assets.Add "js" (slice $jsCode) }} |
||||
{{ end }} |
||||
{{ if .Site.Params.rtl | default false }} |
||||
{{ $jsRTL := resources.Get "js/rtl.js" }} |
||||
{{ $assets.Add "js" (slice $jsRTL) }} |
||||
{{ end }} |
||||
{{ if $assets.Get "js" }} |
||||
{{ $bundleJS := $assets.Get "js" | resources.Concat "js/main.bundle.js" | resources.Minify | resources.Fingerprint |
||||
"sha512" }} |
||||
<script defer type="text/javascript" id="script-bundle" src="{{ $bundleJS.RelPermalink }}" |
||||
integrity="{{ $bundleJS.Data.Integrity }}" data-copy="{{ i18n " code.copy" }}" data-copied="{{ i18n " code.copied" |
||||
}}"></script> |
||||
{{ end }} |
||||
<script src="/js/zoom.min.js"></script> |
||||
{{/* Icons */}} |
||||
{{ if templates.Exists "partials/favicons.html" }} |
||||
{{ partialCached "favicons.html" .Site }} |
||||
{{ else }} |
||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ "apple-touch-icon.png" | relURL }}" /> |
||||
<link rel="icon" type="image/png" sizes="32x32" href="{{ "favicon-32x32.png" | relURL }}" /> |
||||
<link rel="icon" type="image/png" sizes="16x16" href="{{ "favicon-16x16.png" | relURL }}" /> |
||||
<link rel="manifest" href="{{ "site.webmanifest" | relURL }}" /> |
||||
{{ end }} |
||||
{{/* Site Verification */}} |
||||
{{ with .Site.Params.verification.google }} |
||||
<meta name="google-site-verification" content="{{ . }}" /> |
||||
{{ end }} |
||||
{{ with .Site.Params.verification.bing }} |
||||
<meta name="msvalidate.01" content="{{ . }}" /> |
||||
{{ end }} |
||||
{{ with .Site.Params.verification.pinterest }} |
||||
<meta name="p:domain_verify" content="{{ . }}" /> |
||||
{{ end }} |
||||
{{ with .Site.Params.verification.yandex }} |
||||
<meta name="yandex-verification" content="{{ . }}" /> |
||||
{{ end }} |
||||
{{/* Social */}} |
||||
{{ template "_internal/opengraph.html" . }} |
||||
{{ template "_internal/twitter_cards.html" . }} |
||||
{{/* Schema */}} |
||||
{{ partial "schema.html" . }} |
||||
{{/* Me */}} |
||||
{{ with .Site.Author.name }} |
||||
<meta name="author" content="{{ . }}" />{{ end }} |
||||
{{ with .Site.Author.links }} |
||||
{{ range $links := . }} |
||||
{{ range $name, $url := $links }} |
||||
<link href="{{ $url }}" rel="me" />{{ end }} |
||||
{{ end }} |
||||
{{ end }} |
||||
{{/* Vendor */}} |
||||
{{ partial "vendor.html" . }} |
||||
{{/* Analytics */}} |
||||
{{ partialCached "analytics.html" .Site }} |
||||
{{/* Extend head - eg. for custom analytics scripts, etc. */}} |
||||
{{ if templates.Exists "partials/extend-head.html" }} |
||||
{{ partialCached "extend-head.html" .Site }} |
||||
{{ end }} |
||||
|
||||
{{/* Firebase */}} |
||||
{{ with $.Site.Params.firebase }} |
||||
{{ if isset $.Site.Params "firebase" }} |
||||
<script src="https://www.gstatic.com/firebasejs/8.10.0/firebase-app.js"></script> |
||||
<script src="https://www.gstatic.com/firebasejs/8.10.0/firebase-firestore.js"></script> |
||||
<script src="https://www.gstatic.com/firebasejs/8.10.0/firebase-auth.js"></script> |
||||
<script> |
||||
|
||||
const firebaseConfig = { |
||||
apiKey: {{ $.Site.Params.firebase.apiKey }}, |
||||
authDomain: {{ $.Site.Params.firebase.apiKey }}, |
||||
projectId: {{ $.Site.Params.firebase.projectId }}, |
||||
storageBucket: {{ $.Site.Params.firebase.storageBucket }}, |
||||
messagingSenderId: {{ $.Site.Params.firebase.messagingSenderId }}, |
||||
appId: {{ $.Site.Params.firebase.appId }}, |
||||
measurementId: {{ $.Site.Params.firebase.measurementId }} |
||||
}; |
||||
|
||||
var app = firebase.initializeApp(firebaseConfig); |
||||
var db = firebase.firestore(); |
||||
var auth = firebase.auth(); |
||||
|
||||
</script> |
||||
{{ end }} |
||||
{{ end }} |
||||
</head> |
@ -0,0 +1,3 @@ |
||||
/*! instant.page v5.1.1 - (C) 2019-2020 Alexandre Dieulot - https://instant.page/license */ |
||||
/* Modified by Rin - https://rin.systems/ */ |
||||
let z,x;const n=new Set,o=document.createElement("link"),i=o.relList&&o.relList.supports&&o.relList.supports("prefetch")&&window.IntersectionObserver&&"isIntersecting"in IntersectionObserverEntry.prototype,s="instantAllowQueryString"in document.body.dataset,a="instantAllowExternalLinks"in document.body.dataset,r="instantWhitelist"in document.body.dataset,c="instantMousedownShortcut"in document.body.dataset,d=1111;let l=65,u=!1,f=!1,m=!1;if("instantIntensity"in document.body.dataset){const t=document.body.dataset.instantIntensity;if("mousedown"==t.substr(0,"mousedown".length))u=!0,"mousedown-only"==t&&(f=!0);else if("viewport"==t.substr(0,"viewport".length))navigator.connection&&(navigator.connection.saveData||navigator.connection.effectiveType&&navigator.connection.effectiveType.includes("2g"))||("viewport"==t?document.documentElement.clientWidth*document.documentElement.clientHeight<45e4&&(m=!0):"viewport-all"==t&&(m=!0));else{const e=parseInt(t);isNaN(e)||(l=e)}}if(i){const t={capture:!0,passive:!0};if(f||document.addEventListener("touchstart",(function(t){x=performance.now();const e=t.target.closest("a");h(e)&&v(e.href)}),t),u?c||document.addEventListener("mousedown",(function(t){const e=t.target.closest("a");h(e)&&v(e.href)}),t):document.addEventListener("mouseover",(function(t){if(performance.now()-x<d)return;if(!("closest"in t.target))return;const e=t.target.closest("a");h(e)&&(e.addEventListener("mouseout",p,{passive:!0}),z=setTimeout((()=>{v(e.href),z=void 0}),l))}),t),c&&document.addEventListener("mousedown",(function(t){if(performance.now()-x<d)return;const e=t.target.closest("a");if(t.which>1||t.metaKey||t.ctrlKey)return;if(!e)return;e.addEventListener("click",(function(t){1337!=t.detail&&t.preventDefault()}),{capture:!0,passive:!1,once:!0});const n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1,detail:1337});e.dispatchEvent(n)}),t),m){let t;(t=window.requestIdleCallback?t=>{requestIdleCallback(t,{timeout:1500})}:t=>{t()})((()=>{const t=new IntersectionObserver((e=>{e.forEach((e=>{if(e.isIntersecting){const n=e.target;t.unobserve(n),v(n.href)}}))}));document.querySelectorAll("a").forEach((e=>{h(e)&&t.observe(e)}))}))}}function p(t){t.relatedTarget&&t.target.closest("a")==t.relatedTarget.closest("a")||z&&(clearTimeout(z),z=void 0)}function h(t){if(t&&t.href&&(!r||"instant"in t.dataset)&&(a||t.origin==location.origin||"instant"in t.dataset)&&["http:","https:"].includes(t.protocol)&&("http:"!=t.protocol||"https:"!=location.protocol)&&(s||!t.search||"instant"in t.dataset)&&!(t.hash&&t.pathname+t.search==location.pathname+location.search||"noInstant"in t.dataset))return!0}function v(t){if(n.has(t))return;const e=document.createElement("link");e.rel="prefetch",e.href=t,document.head.appendChild(e),n.add(t)} |
Loading…
Reference in new issue