{{define "header"}}
<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link rel="shortcut icon" href="public/img/favicon.ico" type="image/x-icon">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta name="Keywords" content="{{ .Config.HtmlKeywords }}" />
    <meta name="description" content="{{ .Config.HtmlDescription }}" />
    <title>{{ .Title }} - {{ .Config.SiteName }}</title>
    <style>:root{--primary: {{ .Config.ThemeColor }}}</style>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aplayer@1.10.1/dist/APlayer.min.css">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
    <link rel="stylesheet" href="/public/css/app.css">
    <link href="/public/css/prism.css" rel="stylesheet" />
    <script src="/public/js/marked.min.js"></script>
    <script async src="https://umami.starss.cc/script.js" data-website-id="594ff1a5-e8ce-47b1-8558-88cb3f9d7704"></script>
    <script async src="https://busuanzi.icodeq.com/busuanzi.pure.mini.js"></script>
    <script>
        function obj2StrParams(obj,firstStr = '?') {
            let params = firstStr;
            for (let p in obj){
                let isFirst = ( params === '?');
                let qz = isFirst ? '' : (params === '&' ? '' : '&');
                params += (qz + p + '=' + obj[p] )
            }
            return params
        }
        function currentUrlToParams(key = null) {
            let paramsUrl = (window.location.href).split('?');

            if(paramsUrl.length<2)return key ? null : {};
            let paramsArr = paramsUrl[1].split('&');
            let paramsData = {}

            paramsArr.forEach(r=>{
                let data = r.split('=')
                paramsData[data[0]] = data[1]
            })
            if(key)return paramsData.hasOwnProperty(key) ? paramsData[key] : null;
            return paramsData;
        }
    </script>
</head>
<body class="theme{{ .Config.ThemeColor }}">
<header>
    {{template "nav" .}}
</header>
<div class="post-warp">
    {{ end }}