Merge pull request #71 from dillonzq/fix/refactor_style
chore(refactor): update code style
This commit is contained in:
@@ -30,6 +30,7 @@ body {
|
||||
line-height: 1.5rem;
|
||||
background-color: $global-background-color;
|
||||
color: $global-font-color;
|
||||
overflow-wrap: break-word;
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
|
||||
@@ -32,8 +32,8 @@
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 960px) {
|
||||
.navbar {
|
||||
.navbar-container {
|
||||
header.desktop {
|
||||
.header-wrapper {
|
||||
margin: 0 1rem;
|
||||
}
|
||||
}
|
||||
@@ -52,11 +52,11 @@
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 560px) {
|
||||
.navbar {
|
||||
header.desktop {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.navbar-mobile {
|
||||
header.mobile {
|
||||
display: block;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.notfound {
|
||||
#content-404 {
|
||||
font-size: 1.8rem;
|
||||
line-height: 3rem;
|
||||
transform: translateY(30vh);
|
||||
|
||||
9
assets/css/_page/_archive.scss
Normal file
9
assets/css/_page/_archive.scss
Normal file
@@ -0,0 +1,9 @@
|
||||
.archive {
|
||||
.single-title {
|
||||
text-align: right;
|
||||
padding-bottom: 2rem;
|
||||
}
|
||||
|
||||
@import "../_partial/_archive/terms";
|
||||
@import "../_partial/_archive/tags";
|
||||
}
|
||||
@@ -1,55 +1,70 @@
|
||||
/** Home **/
|
||||
.home-intro {
|
||||
transform: translateY(25vh);
|
||||
text-align: center;
|
||||
@import "../_partial/_home/summary";
|
||||
|
||||
.home-avatar {
|
||||
padding: 0.6rem;
|
||||
@mixin page-home($profile, $posts) {
|
||||
.home {
|
||||
@if $profile {
|
||||
.home-profile {
|
||||
transform: translateY(if($posts, 0, 16vh));
|
||||
padding: if($posts, 2rem, 0) 0;
|
||||
text-align: center;
|
||||
|
||||
img {
|
||||
width: 8rem;
|
||||
height: auto;
|
||||
display: inline-block;
|
||||
-webkit-border-radius: 100%;
|
||||
border-radius: 100%;
|
||||
-webkit-box-shadow: 0 0 0 0.3618em rgba(0, 0, 0, 0.05);
|
||||
box-shadow: 0 0 0 0.3618em rgba(0, 0, 0, 0.05);
|
||||
margin: 0 auto;
|
||||
-webkit-transition: all ease 0.4s;
|
||||
-moz-transition: all ease 0.4s;
|
||||
-o-transition: all ease 0.4s;
|
||||
transition: all ease 0.4s;
|
||||
cursor: pointer;
|
||||
.home-avatar {
|
||||
padding: 0.6rem;
|
||||
|
||||
&:hover {
|
||||
position: relative;
|
||||
-webkit-transform: translateY(-0.75rem);
|
||||
-moz-transform: translateY(-0.75rem);
|
||||
-ms-transform: translateY(-0.75rem);
|
||||
-o-transform: translateY(-0.75rem);
|
||||
transform: translateY(-0.75rem);
|
||||
cursor: pointer;
|
||||
img {
|
||||
width: if($posts, 6rem, 8rem);
|
||||
height: auto;
|
||||
display: inline-block;
|
||||
-webkit-border-radius: 100%;
|
||||
border-radius: 100%;
|
||||
-webkit-box-shadow: 0 0 0 0.3618em rgba(0, 0, 0, 0.05);
|
||||
box-shadow: 0 0 0 0.3618em rgba(0, 0, 0, 0.05);
|
||||
margin: 0 auto;
|
||||
-webkit-transition: all ease 0.4s;
|
||||
-moz-transition: all ease 0.4s;
|
||||
-o-transition: all ease 0.4s;
|
||||
transition: all ease 0.4s;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
position: relative;
|
||||
-webkit-transform: translateY(-0.75rem);
|
||||
-moz-transform: translateY(-0.75rem);
|
||||
-ms-transform: translateY(-0.75rem);
|
||||
-o-transform: translateY(-0.75rem);
|
||||
transform: translateY(-0.75rem);
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.home-description {
|
||||
font-size: 1rem;
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding: .4rem;
|
||||
}
|
||||
|
||||
.home-social-links {
|
||||
padding-top: .6rem;
|
||||
|
||||
i {
|
||||
font-size: 1.45rem;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 1.5rem;
|
||||
height: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.home-description {
|
||||
font-size: 1rem;
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding: .4rem;
|
||||
}
|
||||
|
||||
.home-social-links {
|
||||
padding-top: .6rem;
|
||||
|
||||
i {
|
||||
font-size: 1.45rem;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 1.5rem;
|
||||
height: 1.5rem;
|
||||
@if $posts {
|
||||
@include summary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include page-home($home-profile, $home-posts);
|
||||
|
||||
@@ -1,30 +1,13 @@
|
||||
@import "_home";
|
||||
@import "_404";
|
||||
|
||||
.page {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 980px;
|
||||
margin: 0 auto;
|
||||
padding-top: 6rem;
|
||||
|
||||
@import "_post";
|
||||
@import "_posts";
|
||||
}
|
||||
|
||||
.archive {
|
||||
.post-title {
|
||||
text-align: right;
|
||||
padding-bottom: 2rem;
|
||||
}
|
||||
|
||||
@import "_terms";
|
||||
@import "_tags";
|
||||
}
|
||||
|
||||
.single {
|
||||
.post-title {
|
||||
text-align: right;
|
||||
padding-bottom: 2rem;
|
||||
}
|
||||
}
|
||||
@import "_single";
|
||||
@import "_special";
|
||||
@import "_archive";
|
||||
@import "_home";
|
||||
@import "_404";
|
||||
|
||||
@@ -1,376 +0,0 @@
|
||||
/** Post **/
|
||||
.post-title {
|
||||
margin: 0 !important;
|
||||
font-size: 1.8rem;
|
||||
line-height: 3rem;
|
||||
}
|
||||
|
||||
.post-meta {
|
||||
font-size: .88rem;
|
||||
color: $global-font-secondary-color;
|
||||
|
||||
span {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-secondary-color-dark;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $post-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $post-link-hover-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-hover-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.author {
|
||||
font-size: 1.05rem;
|
||||
}
|
||||
}
|
||||
|
||||
.post-featured-image {
|
||||
padding-top: .6rem;
|
||||
|
||||
img {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_partial/_post/toc";
|
||||
|
||||
.post-content {
|
||||
.post-dummy-target:target {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
top: -5.6rem;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-weight: bold;
|
||||
|
||||
.dark-theme & {
|
||||
font-weight: bolder;
|
||||
}
|
||||
}
|
||||
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
padding-top: .8rem;
|
||||
padding-bottom: .3rem;
|
||||
}
|
||||
|
||||
h2::before {
|
||||
content: "#";
|
||||
margin-right: .3125rem;
|
||||
color: $post-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
h3::before,
|
||||
h4::before,
|
||||
h5::before,
|
||||
h6::before {
|
||||
content: "|";
|
||||
margin-right: .3125rem;
|
||||
color: $post-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1rem;
|
||||
margin: .5rem 0;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $post-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: $post-link-hover-color;
|
||||
|
||||
.dark-theme &:hover {
|
||||
color: $post-link-hover-color-dark;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 2rem;
|
||||
list-style-type: disc;
|
||||
}
|
||||
|
||||
ruby {
|
||||
background: $code-background-color;
|
||||
|
||||
rt {
|
||||
color: $global-font-secondary-color;
|
||||
}
|
||||
|
||||
.dark-theme & {
|
||||
background: $code-background-color-dark;
|
||||
|
||||
rt {
|
||||
color: $global-font-secondary-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.table-wrapper {
|
||||
overflow-x: auto;
|
||||
|
||||
&::-webkit-scrollbar {
|
||||
background-color: $table-background-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $table-background-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
> table {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
margin: .625rem 0;
|
||||
border-spacing: 0;
|
||||
background: $table-background-color;
|
||||
|
||||
.dark-theme & {
|
||||
background: $table-background-color-dark;
|
||||
}
|
||||
|
||||
thead {
|
||||
background: $table-thead-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $table-thead-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
th, td {
|
||||
padding: .3rem 1rem;
|
||||
border: 1px double $global-border-color;
|
||||
|
||||
.dark-theme & {
|
||||
border: 1px double $global-border-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
figure {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.image-caption:not(:empty) {
|
||||
min-width: 20%;
|
||||
max-width: 80%;
|
||||
display: inline-block;
|
||||
padding: .625rem;
|
||||
margin: 0 auto;
|
||||
border-bottom: 1px solid #d9d9d9;
|
||||
font-size: .875rem;
|
||||
color: #969696;
|
||||
line-height: 1.7;
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-size: 1rem;
|
||||
display: block;
|
||||
border-width: 1px 0;
|
||||
border-style: solid;
|
||||
border-color: $global-border-color;
|
||||
padding: 1.5em 1.2em 0.5em 1.2em;
|
||||
margin: 0 0 2em 0;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
content: '\201C';
|
||||
position: absolute;
|
||||
top: 0em;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: 3rem;
|
||||
height: 2rem;
|
||||
font: 6em/1.08em 'PT Sans', sans-serif;
|
||||
color: $post-link-color;
|
||||
text-align: center;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: '#blockquote' attr(cite);
|
||||
display: block;
|
||||
text-align: right;
|
||||
font-size: 0.875em;
|
||||
color: $post-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.dark-theme & {
|
||||
border-color: $global-border-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.footnotes {
|
||||
color: $global-font-secondary-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-secondary-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_partial/_post/code";
|
||||
@import "../_partial/_post/admonition";
|
||||
|
||||
.mermaid {
|
||||
width: 100%;
|
||||
margin: 3% auto;
|
||||
text-align: center;
|
||||
|
||||
@import "../_mermaid/neutral/index";
|
||||
|
||||
.dark-theme & {
|
||||
@import "../_mermaid/dark/index";
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_aplayer/dark.scss";
|
||||
|
||||
.echarts {
|
||||
width: 100%;
|
||||
height: 30rem;
|
||||
margin: 3% auto;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.bilibili {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding-bottom: 75%;
|
||||
margin: 3% auto;
|
||||
text-align: center;
|
||||
|
||||
iframe {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
hr {
|
||||
margin: 1rem 0;
|
||||
position: relative;
|
||||
border-top: 1px dashed $global-border-color;
|
||||
border-bottom: none;
|
||||
|
||||
.dark-theme & {
|
||||
border-top: 1px dashed $global-border-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
kbd {
|
||||
display: inline-block;
|
||||
padding: .25rem;
|
||||
background-color: $global-background-color;
|
||||
border: 1px solid $global-border-color;
|
||||
border-bottom-color: $global-border-color;
|
||||
border-radius: 3px;
|
||||
-webkit-box-shadow: inset 0 -1px 0 $global-border-color;
|
||||
box-shadow: inset 0 -1px 0 $global-border-color;
|
||||
font-size: .8rem;
|
||||
font-family: $code-font-family;
|
||||
color: $code-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $global-background-color-dark;
|
||||
border: 1px solid $global-border-color-dark;
|
||||
border-bottom-color: $global-border-color-dark;
|
||||
-webkit-box-shadow: inset 0 -1px 0 $global-border-color-dark;
|
||||
box-shadow: inset 0 -1px 0 $global-border-color-dark;
|
||||
color: $code-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.typeit {
|
||||
.code {
|
||||
padding: .375rem;
|
||||
font-size: .875rem;
|
||||
font-family: $code-font-family;
|
||||
font-weight: bold;
|
||||
word-break: break-all;
|
||||
}
|
||||
}
|
||||
|
||||
.align-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.align-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.float-left {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.float-right {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_partial/_post/footer";
|
||||
|
||||
@import "../_partial/_post/comment";
|
||||
@@ -1,133 +0,0 @@
|
||||
.home-intro {
|
||||
transform: translateY(0);
|
||||
padding: 2rem 0 2rem 0;
|
||||
|
||||
.home-avatar {
|
||||
img {
|
||||
width: 6rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.post {
|
||||
padding-top: 1rem;
|
||||
padding-bottom: .8rem;
|
||||
color: $global-font-color;
|
||||
border-bottom: 1px dashed $global-border-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-color-dark;
|
||||
border-bottom: 1px dashed $global-border-color-dark;
|
||||
}
|
||||
|
||||
.post-featured-image-preview {
|
||||
width: 100%;
|
||||
padding: 30% 0 0;
|
||||
position: relative;
|
||||
margin: 0.6rem auto;
|
||||
|
||||
img {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
object-fit: cover;
|
||||
}
|
||||
}
|
||||
|
||||
.post-list-title {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
.post-meta {
|
||||
font-size: .875rem !important;
|
||||
a {
|
||||
color: $global-font-secondary-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-secondary-color-dark !important;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $global-link-hover-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-link-hover-color-dark !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.post-content {
|
||||
display: -webkit-box;
|
||||
margin-top: .3rem;
|
||||
width: 100%;
|
||||
max-height: 10rem;
|
||||
text-overflow: ellipsis;
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 2;
|
||||
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
p {
|
||||
font-size: 1rem;
|
||||
margin: 0;
|
||||
padding: .2rem 0;
|
||||
overflow: hidden;
|
||||
overflow-wrap: break-word;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
a {
|
||||
word-break: break-all;
|
||||
}
|
||||
}
|
||||
|
||||
.post-footer {
|
||||
margin-top: .5rem;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
font-size: .875rem !important;
|
||||
|
||||
a {
|
||||
color: $post-link-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark !important;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $post-link-hover-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-hover-color-dark !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.post-tags {
|
||||
padding: 0;
|
||||
|
||||
a {
|
||||
color: $global-link-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-link-color-dark !important;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $global-link-hover-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-link-hover-color-dark !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
364
assets/css/_page/_single.scss
Normal file
364
assets/css/_page/_single.scss
Normal file
@@ -0,0 +1,364 @@
|
||||
/** Single **/
|
||||
.single {
|
||||
.single-title {
|
||||
margin: 0;
|
||||
font-size: 1.8rem;
|
||||
line-height: 3rem;
|
||||
}
|
||||
|
||||
.meta {
|
||||
font-size: .88rem;
|
||||
color: $global-font-secondary-color;
|
||||
|
||||
span {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-secondary-color-dark;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $single-link-hover-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-hover-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.author {
|
||||
font-size: 1.05rem;
|
||||
}
|
||||
}
|
||||
|
||||
.featured-image {
|
||||
padding-top: .6rem;
|
||||
|
||||
img {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_partial/_single/toc";
|
||||
|
||||
.content {
|
||||
.post-dummy-target:target {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
top: -5.6rem;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-weight: bold;
|
||||
|
||||
.dark-theme & {
|
||||
font-weight: bolder;
|
||||
}
|
||||
}
|
||||
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
padding-top: .8rem;
|
||||
padding-bottom: .3rem;
|
||||
}
|
||||
|
||||
h2::before {
|
||||
content: "#";
|
||||
margin-right: .3125rem;
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
h3::before,
|
||||
h4::before,
|
||||
h5::before,
|
||||
h6::before {
|
||||
content: "|";
|
||||
margin-right: .3125rem;
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1rem;
|
||||
margin: .5rem 0;
|
||||
}
|
||||
|
||||
a {
|
||||
word-break: break-all;
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: $single-link-hover-color;
|
||||
|
||||
.dark-theme &:hover {
|
||||
color: $single-link-hover-color-dark;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 2rem;
|
||||
list-style-type: disc;
|
||||
}
|
||||
|
||||
ruby {
|
||||
background: $code-background-color;
|
||||
|
||||
rt {
|
||||
color: $global-font-secondary-color;
|
||||
}
|
||||
|
||||
.dark-theme & {
|
||||
background: $code-background-color-dark;
|
||||
|
||||
rt {
|
||||
color: $global-font-secondary-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.table-wrapper {
|
||||
overflow-x: auto;
|
||||
|
||||
&::-webkit-scrollbar {
|
||||
background-color: $table-background-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $table-background-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
> table {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
margin: .625rem 0;
|
||||
border-spacing: 0;
|
||||
background: $table-background-color;
|
||||
|
||||
.dark-theme & {
|
||||
background: $table-background-color-dark;
|
||||
}
|
||||
|
||||
thead {
|
||||
background: $table-thead-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $table-thead-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
th, td {
|
||||
padding: .3rem 1rem;
|
||||
border: 1px double $global-border-color;
|
||||
|
||||
.dark-theme & {
|
||||
border: 1px double $global-border-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
figure {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.image-caption:not(:empty) {
|
||||
min-width: 20%;
|
||||
max-width: 80%;
|
||||
display: inline-block;
|
||||
padding: .625rem;
|
||||
margin: 0 auto;
|
||||
border-bottom: 1px solid #d9d9d9;
|
||||
font-size: .875rem;
|
||||
color: #969696;
|
||||
line-height: 1.7;
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-size: 1rem;
|
||||
display: block;
|
||||
border-width: 1px 0;
|
||||
border-style: solid;
|
||||
border-color: $global-border-color;
|
||||
padding: 1.5em 1.2em 0.5em 1.2em;
|
||||
margin: 0 0 2em 0;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
content: '\201C';
|
||||
position: absolute;
|
||||
top: 0em;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: 3rem;
|
||||
height: 2rem;
|
||||
font: 6em/1.08em 'PT Sans', sans-serif;
|
||||
color: $single-link-color;
|
||||
text-align: center;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: '#blockquote' attr(cite);
|
||||
display: block;
|
||||
text-align: right;
|
||||
font-size: 0.875em;
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.dark-theme & {
|
||||
border-color: $global-border-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.footnotes {
|
||||
color: $global-font-secondary-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-secondary-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_partial/_single/code";
|
||||
@import "../_partial/_single/admonition";
|
||||
|
||||
.echarts {
|
||||
width: 100%;
|
||||
height: 30rem;
|
||||
margin: 3% auto;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.bilibili {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
padding-bottom: 75%;
|
||||
margin: 3% auto;
|
||||
text-align: center;
|
||||
|
||||
iframe {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
hr {
|
||||
margin: 1rem 0;
|
||||
position: relative;
|
||||
border-top: 1px dashed $global-border-color;
|
||||
border-bottom: none;
|
||||
|
||||
.dark-theme & {
|
||||
border-top: 1px dashed $global-border-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
kbd {
|
||||
display: inline-block;
|
||||
padding: .25rem;
|
||||
background-color: $global-background-color;
|
||||
border: 1px solid $global-border-color;
|
||||
border-bottom-color: $global-border-color;
|
||||
border-radius: 3px;
|
||||
-webkit-box-shadow: inset 0 -1px 0 $global-border-color;
|
||||
box-shadow: inset 0 -1px 0 $global-border-color;
|
||||
font-size: .8rem;
|
||||
font-family: $code-font-family;
|
||||
color: $code-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $global-background-color-dark;
|
||||
border: 1px solid $global-border-color-dark;
|
||||
border-bottom-color: $global-border-color-dark;
|
||||
-webkit-box-shadow: inset 0 -1px 0 $global-border-color-dark;
|
||||
box-shadow: inset 0 -1px 0 $global-border-color-dark;
|
||||
color: $code-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.typeit {
|
||||
.code {
|
||||
padding: .375rem;
|
||||
font-size: .875rem;
|
||||
font-family: $code-font-family;
|
||||
font-weight: bold;
|
||||
word-break: break-all;
|
||||
}
|
||||
}
|
||||
|
||||
.align-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.align-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.float-left {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.float-right {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
|
||||
@import "../_partial/_single/footer";
|
||||
@import "../_partial/_single/comment";
|
||||
}
|
||||
6
assets/css/_page/_special.scss
Normal file
6
assets/css/_page/_special.scss
Normal file
@@ -0,0 +1,6 @@
|
||||
.special {
|
||||
.single-title {
|
||||
text-align: right;
|
||||
padding-bottom: 2rem;
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
margin: 5px 10px;
|
||||
word-wrap: break-word;
|
||||
overflow-wrap: break-word;
|
||||
transition-duration: .3s;
|
||||
transition-property: transform;
|
||||
transition-timing-function: ease-out;
|
||||
@@ -1,78 +1,78 @@
|
||||
.navbar {
|
||||
header.desktop {
|
||||
display: block;
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
z-index: 100;
|
||||
height: 4rem;
|
||||
line-height: 4rem;
|
||||
background-color: $navbar-background-color;
|
||||
background-color: $header-background-color;
|
||||
|
||||
.dark-theme & {
|
||||
background-color: $navbar-background-color-dark;
|
||||
background-color: $header-background-color-dark;
|
||||
}
|
||||
|
||||
.navbar-container {
|
||||
.header-wrapper {
|
||||
width: auto;
|
||||
text-align: center;
|
||||
margin: 0 4rem;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.navbar-header a {
|
||||
.header-title a {
|
||||
padding: 0 8px;
|
||||
font-size: 20px;
|
||||
font-size: 1.25rem;
|
||||
|
||||
i {
|
||||
line-height: 2em;
|
||||
line-height: 2rem;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-menu a {
|
||||
.menu a {
|
||||
padding: 0 8px;
|
||||
|
||||
&.active {
|
||||
font-weight: 900;
|
||||
color: $navbar-hover-color;
|
||||
color: $header-hover-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $navbar-hover-color-dark;
|
||||
color: $header-hover-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-mobile {
|
||||
header.mobile {
|
||||
display: none;
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
z-index: 100;
|
||||
transition: all 0.3s ease 0s;
|
||||
|
||||
.navbar-container {
|
||||
.header-wrapper {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
height: 4.5em;
|
||||
line-height: 4.5em;
|
||||
height: 4.5rem;
|
||||
line-height: 4.5rem;
|
||||
background: $global-background-color;
|
||||
|
||||
.navbar-header {
|
||||
.header-container {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
font-size: 18px;
|
||||
padding-right: 1em;
|
||||
padding-left: 1em;
|
||||
font-size: 1.125rem;
|
||||
padding-right: 1rem;
|
||||
padding-left: 1rem;
|
||||
box-sizing: border-box;
|
||||
|
||||
.navbar-header-title {
|
||||
font-size: 20px;
|
||||
.header-title {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
.menu-toggle {
|
||||
cursor: pointer;
|
||||
line-height: 4.5em;
|
||||
line-height: 4.5rem;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
@@ -127,7 +127,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-menu {
|
||||
.menu {
|
||||
text-align: center;
|
||||
background: $global-background-color;
|
||||
border-top: 2px solid $global-font-color;
|
||||
@@ -136,7 +136,7 @@
|
||||
|
||||
a {
|
||||
display: block;
|
||||
line-height: 2.5em;
|
||||
line-height: 2.5rem;
|
||||
}
|
||||
|
||||
&.active {
|
||||
134
assets/css/_partial/_home/_summary.scss
Normal file
134
assets/css/_partial/_home/_summary.scss
Normal file
@@ -0,0 +1,134 @@
|
||||
@mixin summary {
|
||||
.summary {
|
||||
padding-top: 1rem;
|
||||
padding-bottom: .8rem;
|
||||
color: $global-font-color;
|
||||
border-bottom: 1px dashed $global-border-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-color-dark;
|
||||
border-bottom: 1px dashed $global-border-color-dark;
|
||||
}
|
||||
|
||||
.featured-image-preview {
|
||||
width: 100%;
|
||||
padding: 30% 0 0;
|
||||
position: relative;
|
||||
margin: 0.6rem auto;
|
||||
|
||||
img {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
object-fit: cover;
|
||||
}
|
||||
}
|
||||
|
||||
.single-title {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
.meta {
|
||||
font-size: .875rem !important;
|
||||
a {
|
||||
color: $global-font-secondary-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-font-secondary-color-dark !important;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $global-link-hover-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-link-hover-color-dark !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
display: -moz-box;
|
||||
display: -webkit-box;
|
||||
-moz-box-orient: vertical;
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 3;
|
||||
margin-top: .3rem;
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
p {
|
||||
font-size: 1rem;
|
||||
display: inline;
|
||||
|
||||
&::after {
|
||||
content: "\A";
|
||||
white-space: pre;
|
||||
}
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
line-height: 2;
|
||||
}
|
||||
|
||||
.post-footer {
|
||||
margin-top: .5rem;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
font-size: .875rem !important;
|
||||
|
||||
a {
|
||||
color: $single-link-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-color-dark !important;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $single-link-hover-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $single-link-hover-color-dark !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.post-tags {
|
||||
padding: 0;
|
||||
|
||||
a {
|
||||
color: $global-link-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-link-color-dark !important;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $global-link-hover-color !important;
|
||||
|
||||
.dark-theme & {
|
||||
color: $global-link-hover-color-dark !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
/** pagination **/
|
||||
/** pagination **/
|
||||
.pagination {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
.post-comment {
|
||||
.comment {
|
||||
padding: 4rem 0;
|
||||
}
|
||||
@@ -34,17 +34,17 @@
|
||||
.post-info-md
|
||||
a {
|
||||
font-size: 0.8em;
|
||||
color: $post-link-color;
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $post-link-hover-color;
|
||||
color: $single-link-hover-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-hover-color-dark;
|
||||
color: $single-link-hover-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@
|
||||
margin-left: 1000px;
|
||||
padding: 0 .8rem;
|
||||
border-left: 1px solid $global-border-color;
|
||||
word-wrap: break-word;
|
||||
overflow-wrap: break-word;
|
||||
box-sizing: border-box;
|
||||
top: 12rem;
|
||||
|
||||
@@ -37,10 +37,10 @@
|
||||
content: "|";
|
||||
font-weight: bolder;
|
||||
margin-right: .5rem;
|
||||
color: $post-link-color;
|
||||
color: $single-link-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-color-dark;
|
||||
color: $single-link-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,18 +56,18 @@
|
||||
|
||||
.toc-link.active {
|
||||
font-weight: bold;
|
||||
color: $post-link-hover-color;
|
||||
color: $single-link-hover-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-hover-color-dark;
|
||||
color: $single-link-hover-color-dark;
|
||||
}
|
||||
|
||||
&::before {
|
||||
font-weight: bolder;
|
||||
color: $post-link-hover-color;
|
||||
color: $single-link-hover-color;
|
||||
|
||||
.dark-theme & {
|
||||
color: $post-link-hover-color-dark;
|
||||
color: $single-link-hover-color-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -47,24 +47,24 @@ $selection-color: rgba(38, 139, 211, 0.2) !default;
|
||||
$selection-color-dark: rgba(38, 139, 211, 0.3) !default;
|
||||
// ========== Selection ========== //
|
||||
|
||||
// ========== Navbar ========== //
|
||||
// Color of the navbar background
|
||||
$navbar-background-color: #fafafa !default;
|
||||
$navbar-background-color-dark: #252627 !default;
|
||||
// ========== Header ========== //
|
||||
// Color of the header background
|
||||
$header-background-color: #fafafa !default;
|
||||
$header-background-color-dark: #252627 !default;
|
||||
|
||||
// Color of the hover navbar item
|
||||
$navbar-hover-color: #161209 !default;
|
||||
$navbar-hover-color-dark: #fff !default;
|
||||
// ========== Navbar ========== //
|
||||
// Color of the hover header item
|
||||
$header-hover-color: #161209 !default;
|
||||
$header-hover-color-dark: #fff !default;
|
||||
// ========== Header ========== //
|
||||
|
||||
// ========== Post Content ========== //
|
||||
// Color of the post link
|
||||
$post-link-color: #2d96bd !default;
|
||||
$post-link-color-dark: #eee !default;
|
||||
// ========== Single Content ========== //
|
||||
// Color of the single link
|
||||
$single-link-color: #2d96bd !default;
|
||||
$single-link-color-dark: #eee !default;
|
||||
|
||||
// Color of the hover post link
|
||||
$post-link-hover-color: #ef3982 !default;
|
||||
$post-link-hover-color-dark: #2d96bd !default;
|
||||
// Color of the hover single link
|
||||
$single-link-hover-color: #ef3982 !default;
|
||||
$single-link-hover-color-dark: #2d96bd !default;
|
||||
|
||||
// Color of the table background
|
||||
$table-background-color: #fff !default;
|
||||
@@ -73,7 +73,7 @@ $table-background-color-dark: #272c34 !default;
|
||||
// Color of the table thead
|
||||
$table-thead-color: #ededed !default;
|
||||
$table-thead-color-dark: #20252b !default;
|
||||
// ========== Post Content ========== //
|
||||
// ========== Single Content ========== //
|
||||
|
||||
// ========== Pagination ========== //
|
||||
// Color of the link in pagination
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
@import "_variables";
|
||||
@import "_custom";
|
||||
|
||||
@import "_core/normalize";
|
||||
@import "_core/base";
|
||||
@import "_core/layout";
|
||||
|
||||
@import "_page/index";
|
||||
|
||||
@import "_partial/navbar";
|
||||
@import "_partial/footer";
|
||||
@import "_partial/pagination";
|
||||
|
||||
@import "_core/media";
|
||||
|
||||
@import "_custom";
|
||||
@@ -4,3 +4,4 @@ gittalk@1.5.0
|
||||
katex@0.11.1
|
||||
aplayer@1.10.1
|
||||
animate.css@3.7.2
|
||||
mermaid@8.4.2
|
||||
|
||||
11
assets/css/mermaid.scss
Normal file
11
assets/css/mermaid.scss
Normal file
@@ -0,0 +1,11 @@
|
||||
.mermaid {
|
||||
width: 100%;
|
||||
margin: 3% auto;
|
||||
text-align: center;
|
||||
|
||||
@import "lib/mermaid/neutral/index";
|
||||
|
||||
.dark-theme & {
|
||||
@import "lib/mermaid/dark/index";
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
@import "_variables";
|
||||
|
||||
@import "_core/normalize";
|
||||
@import "_core/base";
|
||||
@import "_core/layout";
|
||||
|
||||
@import "_page/index";
|
||||
|
||||
@import "_partial/navbar";
|
||||
@import "_partial/footer";
|
||||
@import "_partial/pagination";
|
||||
|
||||
@import "_core/media";
|
||||
29
assets/css/style.template.scss
Normal file
29
assets/css/style.template.scss
Normal file
@@ -0,0 +1,29 @@
|
||||
{{- if eq .Site.Params.home_mode "post" -}}
|
||||
$home-profile: true;
|
||||
$home-posts: true;
|
||||
{{- else -}}
|
||||
$home-profile: true;
|
||||
$home-posts: false;
|
||||
{{- end -}}
|
||||
|
||||
@import "_variables";
|
||||
|
||||
{{- if fileExists "config/css/_custom.scss" -}}
|
||||
@import "_custom";
|
||||
{{- end -}}
|
||||
|
||||
@import "_core/normalize";
|
||||
@import "_core/base";
|
||||
@import "_core/layout";
|
||||
|
||||
@import "_page/index";
|
||||
|
||||
@import "_partial/header";
|
||||
@import "_partial/footer";
|
||||
@import "_partial/pagination";
|
||||
|
||||
@import "_core/media";
|
||||
|
||||
{{- if fileExists "config/css/_custom.scss" -}}
|
||||
@import "_custom";
|
||||
{{- end -}}
|
||||
@@ -2,16 +2,20 @@ jQuery(function($) {
|
||||
|
||||
'use strict';
|
||||
|
||||
var _Blog = window._Blog || {};
|
||||
var _Theme = window._Theme || {};
|
||||
|
||||
_Blog.toggleMobileMenu = function() {
|
||||
_Theme.scroll = function () {
|
||||
window.scroll = new SmoothScroll('[data-scroll]', {speed: 300, speedAsDuration: true});
|
||||
}
|
||||
|
||||
_Theme.toggleMobileMenu = function () {
|
||||
$('#menu-toggle').on('click', () => {
|
||||
$('#menu-toggle').toggleClass('active');
|
||||
$('#mobile-menu').toggleClass('active');
|
||||
$('#menu-mobile').toggleClass('active');
|
||||
});
|
||||
};
|
||||
|
||||
_Blog.toggleTheme = function() {
|
||||
_Theme.toggleTheme = function () {
|
||||
$('.theme-switch').on('click', () => {
|
||||
$('body').toggleClass('dark-theme');
|
||||
window.isDark = !window.isDark;
|
||||
@@ -20,17 +24,7 @@ jQuery(function($) {
|
||||
});
|
||||
};
|
||||
|
||||
_Blog.changeTitle = function() {
|
||||
var currentTitle = document.title;
|
||||
window.onblur = function() {
|
||||
document.title = currentTitle;
|
||||
};
|
||||
window.onfocus = function() {
|
||||
document.title = currentTitle;
|
||||
};
|
||||
};
|
||||
|
||||
_Blog.dynamicToTop = function() {
|
||||
_Theme.dynamicToTop = function () {
|
||||
const min = 300;
|
||||
var $toTop = $('#dynamic-to-top');
|
||||
$(window).scroll(() => {
|
||||
@@ -73,7 +67,7 @@ jQuery(function($) {
|
||||
});
|
||||
};
|
||||
|
||||
_Blog.chroma = function () {
|
||||
_Theme.chroma = function () {
|
||||
const blocks = document.querySelectorAll('.highlight > .chroma');
|
||||
for (let i = 0; i < blocks.length; i++) {
|
||||
const block = blocks[i];
|
||||
@@ -101,8 +95,8 @@ jQuery(function($) {
|
||||
}
|
||||
};
|
||||
|
||||
_Blog.responsiveTable = function() {
|
||||
const tables = document.querySelectorAll('.post-content table');
|
||||
_Theme.responsiveTable = function () {
|
||||
const tables = document.querySelectorAll('.content table');
|
||||
for (let i = 0; i < tables.length; i++) {
|
||||
const table = tables[i];
|
||||
const wrapper = document.createElement('div');
|
||||
@@ -112,7 +106,7 @@ jQuery(function($) {
|
||||
}
|
||||
};
|
||||
|
||||
_Blog._refactorToc = function(toc) {
|
||||
_Theme._refactorToc = function(toc) {
|
||||
// when headings do not start with `h1`
|
||||
const oldTocList = toc.children[0];
|
||||
let newTocList = oldTocList;
|
||||
@@ -124,12 +118,12 @@ jQuery(function($) {
|
||||
if (newTocList !== oldTocList) toc.replaceChild(newTocList, oldTocList);
|
||||
};
|
||||
|
||||
_Blog._linkToc = function() {
|
||||
_Theme._linkToc = function () {
|
||||
const links = document.querySelectorAll('#TableOfContents a:first-child');
|
||||
for (let i = 0; i < links.length; i++) links[i].className += ' toc-link';
|
||||
|
||||
for (let num = 1; num <= 6; num++) {
|
||||
const headers = document.querySelectorAll('.post-content>h' + num);
|
||||
const headers = document.querySelectorAll('.content>h' + num);
|
||||
for (let i = 0; i < headers.length; i++) {
|
||||
const header = headers[i];
|
||||
header.innerHTML = `<a href="#${header.id}" class="headerlink"></a>${header.innerHTML}`;
|
||||
@@ -137,7 +131,7 @@ jQuery(function($) {
|
||||
}
|
||||
};
|
||||
|
||||
_Blog._initToc = function() {
|
||||
_Theme._initToc = function () {
|
||||
const $toc = $('#post-toc');
|
||||
if ($toc.length && $toc.css('display') !== 'none') {
|
||||
const SPACING = 80;
|
||||
@@ -145,7 +139,7 @@ jQuery(function($) {
|
||||
const minTop = $toc.position().top;;
|
||||
const mainTop = $('main').position().top;
|
||||
const minScrollTop = minTop + mainTop - SPACING;
|
||||
const changeTocState = function() {
|
||||
const changeTocState = function () {
|
||||
const scrollTop = $(window).scrollTop();
|
||||
const maxTop = $footer.position().top - $toc.height();
|
||||
const maxScrollTop = maxTop + mainTop - SPACING;
|
||||
@@ -213,7 +207,7 @@ jQuery(function($) {
|
||||
}
|
||||
};
|
||||
|
||||
_Blog.toc = function() {
|
||||
_Theme.toc = function () {
|
||||
const tocContainer = document.getElementById('post-toc');
|
||||
if (tocContainer !== null) {
|
||||
const toc = document.getElementById('TableOfContents');
|
||||
@@ -225,15 +219,16 @@ jQuery(function($) {
|
||||
this._linkToc();
|
||||
this._initToc();
|
||||
// Listen for orientation changes
|
||||
window.addEventListener("resize", function() {
|
||||
this.setTimeout(_Blog._initToc, 0);
|
||||
window.addEventListener("resize", function () {
|
||||
this.setTimeout(_Theme._initToc, 0);
|
||||
}, false);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
_Blog.mermaid = function() {
|
||||
_Theme.mermaid = function () {
|
||||
if (window.mermaidMap) {
|
||||
mermaid.initialize({startOnLoad: false, theme: null});
|
||||
const mermaidAPI = mermaid.mermaidAPI
|
||||
Object.keys(mermaidMap).forEach((id) => {
|
||||
const element = document.getElementById(id);
|
||||
@@ -246,7 +241,7 @@ jQuery(function($) {
|
||||
}
|
||||
}
|
||||
|
||||
_Blog.echarts = function() {
|
||||
_Theme.echarts = function () {
|
||||
if (window.echartsMap) {
|
||||
for (let i = 0; i < echartsArr.length; i++) {
|
||||
echartsArr[i].dispose();
|
||||
@@ -257,7 +252,7 @@ jQuery(function($) {
|
||||
myChart.setOption(echartsMap[id]);
|
||||
echartsArr.push(myChart);
|
||||
});
|
||||
window.addEventListener("resize", function() {
|
||||
window.addEventListener("resize", function () {
|
||||
this.setTimeout(() => {
|
||||
for (let i = 0; i < echartsArr.length; i++) {
|
||||
echartsArr[i].resize();
|
||||
@@ -267,7 +262,7 @@ jQuery(function($) {
|
||||
}
|
||||
}
|
||||
|
||||
_Blog.countdown = function() {
|
||||
_Theme.countdown = function () {
|
||||
if (window.countdownMap) {
|
||||
Object.keys(countdownMap).forEach(function(id) {
|
||||
$(`#${id}`).countdown(countdownMap[id]['date'], {elapse: true})
|
||||
@@ -278,7 +273,7 @@ jQuery(function($) {
|
||||
}
|
||||
};
|
||||
|
||||
_Blog.typeit = function() {
|
||||
_Theme.typeit = function () {
|
||||
if (window.typeitArr) {
|
||||
for (let i = 0; i < typeitArr.length; i++) {
|
||||
const group = typeitArr[i];
|
||||
@@ -303,16 +298,16 @@ jQuery(function($) {
|
||||
};
|
||||
|
||||
$(document).ready(() => {
|
||||
_Blog.toggleMobileMenu();
|
||||
_Blog.toggleTheme();
|
||||
_Blog.changeTitle();
|
||||
_Blog.dynamicToTop();
|
||||
_Blog.chroma();
|
||||
_Blog.responsiveTable();
|
||||
_Blog.mermaid();
|
||||
_Blog.echarts();
|
||||
_Blog.countdown();
|
||||
_Blog.typeit();
|
||||
_Blog.toc();
|
||||
_Theme.scroll();
|
||||
_Theme.toggleMobileMenu();
|
||||
_Theme.toggleTheme();
|
||||
_Theme.dynamicToTop();
|
||||
_Theme.chroma();
|
||||
_Theme.responsiveTable();
|
||||
_Theme.mermaid();
|
||||
_Theme.echarts();
|
||||
_Theme.countdown();
|
||||
_Theme.typeit();
|
||||
_Theme.toc();
|
||||
});
|
||||
});
|
||||
@@ -33,10 +33,10 @@ other = "More"
|
||||
other = "Switch Theme"
|
||||
# === partials/header.html ===
|
||||
|
||||
# === partials/comments.html ===
|
||||
# === partials/comment.html ===
|
||||
[valineLang]
|
||||
other = "en"
|
||||
# === partials/comments.html ===
|
||||
# === partials/comment.html ===
|
||||
|
||||
# === partials/footer.html ===
|
||||
[powered]
|
||||
|
||||
@@ -33,10 +33,10 @@ other = "更多"
|
||||
other = "切换主题"
|
||||
# === partials/header.html ===
|
||||
|
||||
# === partials/comments.html ===
|
||||
# === partials/comment.html ===
|
||||
[valineLang]
|
||||
other = "zh-cn"
|
||||
# === partials/comments.html ===
|
||||
# === partials/comment.html ===
|
||||
|
||||
# === partials/footer.html ===
|
||||
[powered]
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
{{- end -}}
|
||||
|
||||
{{- define "content" -}}
|
||||
<div class="notfound">
|
||||
<div class="page" id="content-404">
|
||||
<h1 id="error-emoji"></h1>
|
||||
<p class="error-text">
|
||||
{{- T "pageNotFoundText" -}}
|
||||
@@ -11,12 +11,12 @@
|
||||
</p>
|
||||
</div>
|
||||
<script>
|
||||
const emojiArray = [
|
||||
var emojiArray = [
|
||||
'\\(o_o)/', '(o^^)o', '(˚Δ˚)b', '(^-^*)', '(≥o≤)', '(^_^)b', '(·_·)',
|
||||
'(=\'X\'=)', '(>_<)', '(;-;)', '\\(^Д^)/',
|
||||
];
|
||||
const errorEmoji = emojiArray[Math.floor(Math.random() * emojiArray.length)];
|
||||
const errorEmojiContainer = document.getElementById('error-emoji');
|
||||
var errorEmoji = emojiArray[Math.floor(Math.random() * emojiArray.length)];
|
||||
var errorEmojiContainer = document.getElementById('error-emoji');
|
||||
errorEmojiContainer.appendChild(document.createTextNode(errorEmoji));
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
@@ -3,15 +3,26 @@
|
||||
{{- errorf "\n\nThere are two possible situations that led to this error:\n 1. You haven't copied the config.toml yet. See https://github.com/dillonzq/LoveIt#installation \n 2. You have an incompatible update. See https://github.com//dillonzq/LoveIt/blob/master/CHANGELOG.md \n\n有两种可能的情况会导致这个错误发生:\n 1. 你还没有复制 config.toml 参考 https://github.com/dillonzq/LoveIt#installation \n 2. 你进行了一次不兼容的更新 参考 https://github.com//dillonzq/LoveIt/blob/master/CHANGELOG.md \n" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- if eq (getenv "HUGO_ENV") "production" -}}
|
||||
{{- .Scratch.Set "production" true -}}
|
||||
{{- .Scratch.Set "CDN" .Site.Params.cdn -}}
|
||||
{{- end -}}
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ .Site.LanguageCode }}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="robots" content="noodp" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<title>
|
||||
{{- block "title" . }}{{ .Site.Title }}{{ end -}}
|
||||
</title>
|
||||
{{- partial "head.html" . -}}
|
||||
<meta name="Description" content="{{ .Params.description | default .Site.Params.description }}">
|
||||
|
||||
{{- partial "head/meta.html" . -}}
|
||||
{{- partial "head/link.html" . -}}
|
||||
{{- partial "head/seo.html" . -}}
|
||||
</head>
|
||||
<body>
|
||||
{{- /* Check theme isDark before body rendering */ -}}
|
||||
@@ -45,7 +56,7 @@
|
||||
<span> </span>
|
||||
</a>
|
||||
|
||||
{{- /* Load scripts */ -}}
|
||||
{{- partial "scripts.html" . -}}
|
||||
{{- /* Load script */ -}}
|
||||
{{- partial "script.html" . -}}
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
{{- define "content" -}}
|
||||
<div class="page archive">
|
||||
{{- /* Title */ -}}
|
||||
<h2 class="post-title animated pulse faster">
|
||||
<h2 class="single-title animated pulse faster">
|
||||
{{- T "all" | humanize}}{{ T .Section | default .Section | humanize -}}
|
||||
</h2>
|
||||
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{{- define "title" }}{{ .Title }} | {{ .Site.Title }}{{ end -}}
|
||||
|
||||
{{- define "content" -}}
|
||||
<div class="page single">
|
||||
<div class="page single special">
|
||||
{{- /* Title */ -}}
|
||||
<h1 class="post-title animated pulse faster">
|
||||
<h1 class="single-title animated pulse faster">
|
||||
{{- .Title -}}
|
||||
</h1>
|
||||
|
||||
{{- /* Content */ -}}
|
||||
<div class="post-content">
|
||||
<div class="content">
|
||||
{{- partial "hook/content.html" .Content | safeHTML -}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
<article class="post" itemscope itemtype="http://schema.org/Article">
|
||||
<article class="single summary" itemscope itemtype="http://schema.org/Article">
|
||||
{{- /* Featured image */ -}}
|
||||
{{- with .Params.featured_image -}}
|
||||
<div class="post-featured-image-preview">
|
||||
<div class="featured-image-preview">
|
||||
{{- $image := $.Params.featured_image_preview | default . -}}
|
||||
{{- partial "image" $image -}}
|
||||
{{- partial "hook/image" $image -}}
|
||||
</div>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Title */ -}}
|
||||
<h1 class="post-title post-list-title" itemprop="name headline">
|
||||
<h1 class="single-title" itemprop="name headline">
|
||||
<a href="{{ .Permalink }}">{{ .Title }}</a>
|
||||
</h1>
|
||||
|
||||
{{- /* Meta */ -}}
|
||||
<div class="post-meta">
|
||||
<div class="meta">
|
||||
{{- $author := .Params.author | default .Site.Author.name -}}
|
||||
{{- $author_link := .Params.author_link | default .Site.Author.link | default .Site.BaseURL -}}
|
||||
<a class="author" href="{{ $author_link }}" rel="author" target="_blank">
|
||||
@@ -38,7 +38,7 @@
|
||||
</div>
|
||||
|
||||
{{- /* Summary content */ -}}
|
||||
<div class="post-content">
|
||||
<div class="content">
|
||||
{{- if .Params.description_as_summary -}}
|
||||
<p>
|
||||
{{- .Params.description -}}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{{- define "content" -}}
|
||||
{{- /* Home mode [post] */ -}}
|
||||
{{- if eq .Site.Params.home_mode "post" -}}
|
||||
<div class="page">
|
||||
<div class="page home">
|
||||
{{- /* Home mode [post] */ -}}
|
||||
{{- if eq .Site.Params.home_mode "post" -}}
|
||||
{{- /* Profile */ -}}
|
||||
{{- partial "home/profile.html" . -}}
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
{{- .Render "summary" -}}
|
||||
{{- end -}}
|
||||
{{- partial "paginator.html" . -}}
|
||||
</div>
|
||||
|
||||
{{- /* Home mode [other] */ -}}
|
||||
{{- else -}}
|
||||
{{- /* Profile */ -}}
|
||||
{{- partial "home/profile.html" . -}}
|
||||
{{- end -}}
|
||||
{{- /* Home mode [other] */ -}}
|
||||
{{- else -}}
|
||||
{{- /* Profile */ -}}
|
||||
{{- partial "home/profile.html" . -}}
|
||||
{{- end -}}
|
||||
</div>
|
||||
{{- end -}}
|
||||
|
||||
110
layouts/partials/comment.html
Normal file
110
layouts/partials/comment.html
Normal file
@@ -0,0 +1,110 @@
|
||||
{{- if .Scratch.Get "production" | and .IsPage | and (ne .Params.comment false) -}}
|
||||
{{- $CDN := .Scratch.Get "CDN" -}}
|
||||
|
||||
{{- /* Disqus Comment System */ -}}
|
||||
{{- with .Site.Params.disqus.shortname -}}
|
||||
<div id="disqus_thread"></div>
|
||||
{{- $script := printf `<script src="https://%s.disqus.com/embed.js"></script>` . -}}
|
||||
{{- slice $script | $.Scratch.Add "scriptCDN" -}}
|
||||
<noscript>
|
||||
Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a>
|
||||
</noscript>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Gitalk Comment System */ -}}
|
||||
{{- if .Site.Params.gitalk.owner -}}
|
||||
<div id="gitalk_container"></div>
|
||||
{{- with $CDN.gitalk_css -}}
|
||||
{{- slice . | $.Scratch.Add "linkCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "css/lib/gitalk/gitalk.css" | .Scratch.Add "linkLocal" -}}
|
||||
{{- end -}}
|
||||
{{- with $CDN.gitalk_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "css/lib/gitalk/gitalk.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function(event) {
|
||||
var gitalk = new Gitalk({
|
||||
id: '{{ .Date }}',
|
||||
title: '{{ .Title }}',
|
||||
clientID: '{{ .Site.Params.gitalk.clientId }}',
|
||||
clientSecret: '{{ .Site.Params.gitalk.clientSecret }}',
|
||||
repo: '{{ .Site.Params.gitalk.repo }}',
|
||||
owner: '{{ .Site.Params.gitalk.owner }}',
|
||||
admin: ['{{ .Site.Params.gitalk.owner }}'],
|
||||
body: decodeURI(location.href),
|
||||
});
|
||||
gitalk.render('gitalk_container');
|
||||
});
|
||||
</script>
|
||||
<noscript>
|
||||
Please enable JavaScript to view the <a href="https://github.com/gitalk/gitalk">comments powered by Gitalk.</a>
|
||||
</noscript>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Valine Comment System */ -}}
|
||||
{{- if .Site.Params.valine.enable -}}
|
||||
<div id="valine_container"></div>
|
||||
{{- with $CDN.valine_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/valine/Valine.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function(event) {
|
||||
new Valine({
|
||||
el: '#valine_container',
|
||||
appId: '{{ .Site.Params.valine.appId }}',
|
||||
appKey: '{{ .Site.Params.valine.appKey }}',
|
||||
{{- with .Site.Params.valine.placeholder -}}
|
||||
placeholder: '{{ . }}',
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.valine.notify -}}
|
||||
notify: true,
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.valine.verify -}}
|
||||
verify: true,
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.valine.avatar -}}
|
||||
avatar: '{{ . }}',
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.valine.meta -}}
|
||||
meta: {{ . | safeJS }},
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.valine.pageSize -}}
|
||||
pageSize: {{ . | safeJS }},
|
||||
{{- end -}}
|
||||
lang: '{{ T "valineLang" }}',
|
||||
{{- if .Site.Params.valine.visitor -}}
|
||||
visitor: true,
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.valine.recordIP -}}
|
||||
recordIP: true,
|
||||
{{- end -}}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<noscript>
|
||||
Please enable JavaScript to view the <a href="https://valine.js.org/">comments powered by Valine.</a>
|
||||
</noscript>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Facebook Comment System */ -}}
|
||||
{{- if .Site.Params.facebook.enable -}}
|
||||
<div id="fb-root"></div>
|
||||
<div
|
||||
class="fb-comments"
|
||||
data-href="{{ .Site.Params.baseURL }}{{ .Permalink | absURL }}"
|
||||
data-width="{{ .Site.Params.facebook.width }}"
|
||||
data-numposts="{{ .Site.Params.facebook.numPosts }}"
|
||||
></div>
|
||||
{{- $script := `<script src="https://connect.facebook.net/%s/sdk.js#xfbml=1&version=v5.0&appId=%s&autoLogAppEvents=1" crossorigin="anonymous"></script>` -}}
|
||||
{{- $script = printf $script .Site.Params.facebook.languageCode .Site.Params.facebook.appId -}}
|
||||
{{- slice $script | .Scratch.Add "scriptCDN" -}}
|
||||
<noscript>
|
||||
Please enable JavaScript to view the <a href="https://developers.facebook.com/docs/plugins/comments/">comments powered by Facebook.</a>
|
||||
</noscript>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -1,101 +0,0 @@
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .IsPage | and (ne .Params.comment false) -}}
|
||||
{{- /* Disqus Comment System */ -}}
|
||||
{{- with .Site.Params.disqus.shortname -}}
|
||||
<div id="disqus_thread"></div>
|
||||
<script src="https://{{ . }}.disqus.com/embed.js"></script>
|
||||
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Gitalk Comment System */ -}}
|
||||
{{- if .Site.Params.gitalk.owner -}}
|
||||
<div id="gitalk_container"></div>
|
||||
{{- if .Site.Params.cdn.gitalk_css -}}
|
||||
{{- .Site.Params.cdn.gitalk_css | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/lib/gitalk/gitalk.css" | resources.Minify -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.cdn.gitalk_js -}}
|
||||
{{ .Site.Params.cdn.gitalk_js | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/gitalk/gitalk.min.js" | resources.Minify -}}
|
||||
<script src="{{ $res.RelPermalink }}"></script>
|
||||
{{- end -}}
|
||||
<script>
|
||||
var gitalk = new Gitalk({
|
||||
id: '{{ .Date }}',
|
||||
title: '{{ .Title }}',
|
||||
clientID: '{{ .Site.Params.gitalk.clientId }}',
|
||||
clientSecret: '{{ .Site.Params.gitalk.clientSecret }}',
|
||||
repo: '{{ .Site.Params.gitalk.repo }}',
|
||||
owner: '{{ .Site.Params.gitalk.owner }}',
|
||||
admin: ['{{ .Site.Params.gitalk.owner }}'],
|
||||
body: decodeURI(location.href),
|
||||
});
|
||||
gitalk.render('gitalk_container');
|
||||
</script>
|
||||
<noscript>Please enable JavaScript to view the <a href="https://github.com/gitalk/gitalk">comments powered by Gitalk.</a></noscript>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Valine Comment System */ -}}
|
||||
{{- if .Site.Params.valine.enable -}}
|
||||
<div id="valine_container"></div>
|
||||
{{- if .Site.Params.cdn.valine_js -}}
|
||||
{{- .Site.Params.cdn.valine_js | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/valine/Valine.min.js" | resources.Minify -}}
|
||||
<script src="{{ $res.RelPermalink }}"></script>
|
||||
{{- end -}}
|
||||
<script>
|
||||
new Valine({
|
||||
el: '#valine_container',
|
||||
appId: '{{ .Site.Params.valine.appId }}',
|
||||
appKey: '{{ .Site.Params.valine.appKey }}',
|
||||
{{- with .Site.Params.valine.placeholder -}}
|
||||
placeholder: '{{ . }}',
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.valine.notify -}}
|
||||
notify: true,
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.valine.verify -}}
|
||||
verify: true,
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.valine.avatar -}}
|
||||
avatar: '{{ . }}',
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.valine.meta -}}
|
||||
meta: {{ . | safeJS }},
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.valine.pageSize -}}
|
||||
pageSize: {{ . | safeJS }},
|
||||
{{- end -}}
|
||||
lang: '{{ T "valineLang" }}',
|
||||
{{- if .Site.Params.valine.visitor -}}
|
||||
visitor: true,
|
||||
{{- end -}}
|
||||
{{- if .Site.Params.valine.recordIP -}}
|
||||
recordIP: true,
|
||||
{{- end -}}
|
||||
});
|
||||
</script>
|
||||
<noscript>Please enable JavaScript to view the <a href="https://valine.js.org/">comments powered by Valine.</a></noscript>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Facebook Comment System */ -}}
|
||||
{{- if .Site.Params.facebook.enable -}}
|
||||
<div id="fb-root"></div>
|
||||
<div
|
||||
class="fb-comments"
|
||||
data-href="{{ .Site.Params.baseURL }}{{ .Permalink | absURL }}"
|
||||
data-width="{{ .Site.Params.facebook.width }}"
|
||||
data-numposts="{{ .Site.Params.facebook.numPosts }}"
|
||||
></div>
|
||||
<script
|
||||
async
|
||||
defer
|
||||
crossorigin="anonymous"
|
||||
src="https://connect.facebook.net/{{ .Site.Params.facebook.languageCode }}/sdk.js#xfbml=1&version=v5.0&appId={{ .Site.Params.facebook.appId }}&autoLogAppEvents=1"
|
||||
></script>
|
||||
<noscript>Please enable JavaScript to view the <a href="https://developers.facebook.com/docs/plugins/comments/">comments powered by Facebook.</a></noscript>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -1,77 +0,0 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="robots" content="noodp" />
|
||||
<meta name="Description" content="{{ .Params.description | default .Site.Params.description }}">
|
||||
{{- with .Site.Params.google_verification -}}
|
||||
<meta name="google-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.bing_verification -}}
|
||||
<meta name="msvalidate.01" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.yandex_verification -}}
|
||||
<meta name="yandex-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.pinterest_verification -}}
|
||||
<meta name="p:domain_verify" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.baidu_verification -}}
|
||||
<meta name="baidu-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- if .PrevInSection -}}
|
||||
<link rel="prev" href="{{ .PrevInSection.Permalink }}" />
|
||||
{{- end -}}
|
||||
{{- if .NextInSection -}}
|
||||
<link rel="next" href="{{ .NextInSection.Permalink }}" />
|
||||
{{- end -}}
|
||||
<link rel="canonical" href="{{ .Permalink }}" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||
<link rel="manifest" href="/site.webmanifest">
|
||||
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
|
||||
<meta name="msapplication-TileColor" content="#da532c">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
{{- with .OutputFormats.Get "RSS" -}}
|
||||
<link rel="alternate" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ $.Site.Title }}">
|
||||
<link rel="feed" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ $.Site.Title }}">
|
||||
{{- end -}}
|
||||
|
||||
{{- template "_internal/opengraph.html" . -}}
|
||||
|
||||
{{- $share := .Params.share.enable | default .Site.Params.share.enable | eq true -}}
|
||||
{{- if $share | and (.Params.Share.Twitter | default .Site.Params.Share.Twitter | eq true) -}}
|
||||
{{- template "_internal/twitter_cards.html" . -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- partial "seo.html" . -}}
|
||||
|
||||
{{- $options := dict "targetPath" "css/style.min.css" "outputStyle" "compressed" "enableSourceMap" true -}}
|
||||
{{- if fileExists "config/css/_custom.scss" -}}
|
||||
{{- $options = dict "includePaths" (slice "config/css") | merge $options -}}
|
||||
{{- $res := resources.Get "css/custom-style.scss" | toCSS $options -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/style.scss" | toCSS $options -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Font Awesome https://fontawesome.com/ */ -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.fontawesome_free_css -}}
|
||||
{{- .Site.Params.cdn.fontawesome_free_css | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/lib/fontawesome-free/all.min.css" -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Fork Awesome https://forkaweso.me/ */ -}}
|
||||
{{- $options := dict "targetPath" "css/lib/forkawesome/forkawesome.min.css" "outputStyle" "compressed" "enableSourceMap" true -}}
|
||||
{{- $res := resources.Get "css/lib/forkawesome/fork-awesome.scss"| toCSS $options -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
|
||||
{{- /* Animate.css https://github.com/daneden/animate.css */ -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.animate_css -}}
|
||||
{{- .Site.Params.cdn.animate_css | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{ $res := resources.Get "css/lib/animate/animate.min.css" -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
51
layouts/partials/head/link.html
Normal file
51
layouts/partials/head/link.html
Normal file
@@ -0,0 +1,51 @@
|
||||
{{- $CDN := .Scratch.Get "CDN" -}}
|
||||
|
||||
<link rel="canonical" href="{{ .Permalink }}" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||
<link rel="manifest" href="/site.webmanifest">
|
||||
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
|
||||
|
||||
{{- if .PrevInSection -}}
|
||||
<link rel="prev" href="{{ .PrevInSection.Permalink }}" />
|
||||
{{- end -}}
|
||||
{{- if .NextInSection -}}
|
||||
<link rel="next" href="{{ .NextInSection.Permalink }}" />
|
||||
{{- end -}}
|
||||
|
||||
{{- with .OutputFormats.Get "RSS" -}}
|
||||
<link rel="alternate" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ $.Site.Title }}">
|
||||
<link rel="feed" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ $.Site.Title }}">
|
||||
{{- end -}}
|
||||
|
||||
{{- /* style.min.css */ -}}
|
||||
{{- $res := resources.Get "css/style.template.scss" -}}
|
||||
{{- $options := dict "targetPath" "css/style.min.css" "outputStyle" "compressed" "enableSourceMap" true -}}
|
||||
{{- if fileExists "config/css/_custom.scss" -}}
|
||||
{{- $options = dict "includePaths" (slice "config/css") | merge $options -}}
|
||||
{{- end -}}
|
||||
{{- $res = resources.ExecuteAsTemplate "style.scss" . $res | toCSS $options -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
|
||||
{{- /* Font Awesome https://fontawesome.com/ */ -}}
|
||||
{{- with $CDN.fontawesome_free_css -}}
|
||||
{{- . | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/lib/fontawesome-free/all.min.css" -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Fork Awesome https://forkaweso.me/ */ -}}
|
||||
{{- $options := dict "targetPath" "css/lib/forkawesome/fork-awesome.min.css" "outputStyle" "compressed" "enableSourceMap" true -}}
|
||||
{{- $res := resources.Get "css/lib/forkawesome/fork-awesome.scss"| toCSS $options -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
|
||||
{{- /* Animate.css https://github.com/daneden/animate.css */ -}}
|
||||
{{- with $CDN.animate_css -}}
|
||||
{{- . | safeHTML -}}
|
||||
{{- else -}}
|
||||
{{ $res := resources.Get "css/lib/animate/animate.min.css" -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
21
layouts/partials/head/meta.html
Normal file
21
layouts/partials/head/meta.html
Normal file
@@ -0,0 +1,21 @@
|
||||
{{- with .Site.Params.google_verification -}}
|
||||
<meta name="google-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.bing_verification -}}
|
||||
<meta name="msvalidate.01" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.yandex_verification -}}
|
||||
<meta name="yandex-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.pinterest_verification -}}
|
||||
<meta name="p:domain_verify" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
{{- with .Site.Params.baidu_verification -}}
|
||||
<meta name="baidu-site-verification" content="{{ . }}" />
|
||||
{{- end -}}
|
||||
|
||||
{{- template "_internal/opengraph.html" . -}}
|
||||
{{- template "_internal/twitter_cards.html" . -}}
|
||||
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<meta name="msapplication-TileColor" content="#da532c">
|
||||
@@ -1,12 +1,12 @@
|
||||
{{- /* Desktop navbar */ -}}
|
||||
<nav class="navbar">
|
||||
<div class="navbar-container">
|
||||
<div class="navbar-header animated bounceIn">
|
||||
{{- /* Desktop header */ -}}
|
||||
<header class="desktop">
|
||||
<div class="header-wrapper">
|
||||
<div class="header-title animated bounceIn">
|
||||
<a href="{{ .Site.BaseURL }}">
|
||||
{{- .Site.Title -}}
|
||||
</a>
|
||||
</div>
|
||||
<div class="navbar-menu">
|
||||
<div class="menu">
|
||||
{{- $currentPage := . }}
|
||||
{{- range .Site.Menus.main -}}
|
||||
<a class="menu-item{{ if or ($currentPage.IsMenuCurrent "main" .) ($currentPage.HasMenuCurrent "main" .) | or (eq $currentPage.RelPermalink .URL) }} active{{ end }}" href="{{ .URL | absLangURL }}" title="{{ .Title }}">
|
||||
@@ -16,13 +16,13 @@
|
||||
<a href="javascript:void(0);" class="theme-switch"><i class="fas fa-adjust fa-rotate-180 fa-fw" title="{{ T "switchTheme" }}"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
{{- /* Mobile navbar */ -}}
|
||||
<nav class="navbar-mobile">
|
||||
<div class="navbar-container">
|
||||
<div class="navbar-header">
|
||||
<div class="navbar-header-title animated bounceIn">
|
||||
{{- /* Mobile header */ -}}
|
||||
<header class="mobile">
|
||||
<div class="header-wrapper">
|
||||
<div class="header-container">
|
||||
<div class="header-title animated bounceIn">
|
||||
<a href="{{ .Site.BaseURL }}">
|
||||
{{- .Site.Title -}}
|
||||
</a>
|
||||
@@ -31,7 +31,7 @@
|
||||
<span></span><span></span><span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-menu" id="mobile-menu">
|
||||
<div class="menu" id="menu-mobile">
|
||||
{{- $currentPage := . -}}
|
||||
{{- range .Site.Menus.main -}}
|
||||
<a class="menu-item" href="{{ .URL | absLangURL }}" title="{{ .Title }}">
|
||||
@@ -41,4 +41,4 @@
|
||||
<a href="javascript:void(0);" class="theme-switch"><i class="fas fa-adjust fa-rotate-180 fa-fw" title="{{ T "switchTheme" }}"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class="home-intro">
|
||||
<div class="home-profile">
|
||||
{{- $avatar := "" -}}
|
||||
{{- if .Site.Params.gravatar.email -}}
|
||||
{{- $avatar = (printf "https://www.gravatar.com/avatar/%s?s=240&d=mp" (md5 .Site.Params.gravatar.email)) -}}
|
||||
|
||||
199
layouts/partials/script.html
Normal file
199
layouts/partials/script.html
Normal file
@@ -0,0 +1,199 @@
|
||||
{{- $CDN := .Scratch.Get "CDN" -}}
|
||||
|
||||
{{- /* Google analytics async */ -}}
|
||||
{{- if .Scratch.Get "production" | and .Site.GoogleAnalytics -}}
|
||||
{{- template "_internal/google_analytics_async.html" . -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* jQuery https://github.com/jquery/jquery */ -}}
|
||||
{{- with $CDN.jquery_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/jquery/jquery.slim.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* lazysizes https://github.com/aFarkas/lazysizes */ -}}
|
||||
{{- with $CDN.lazysizes_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/lazysizes/lazysizes.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Smooth Scroll https://github.com/cferdinandi/smooth-scroll */ -}}
|
||||
{{- with $CDN.smooth_scroll_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/smooth-scroll/smooth-scroll.polyfills.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* TypeIt https://github.com/alexmacarthur/typeit */ -}}
|
||||
{{- with .Scratch.Get "typeitMap" -}}
|
||||
{{- with $CDN.typeit_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/typeit/typeit.min.js" | $.Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- range $key, $val := . -}}
|
||||
{{- slice $val | $.Scratch.Add "typeitArr" -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
window.typeitArr = {{ $.Scratch.Get "typeitArr" | jsonify | safeJS }};
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* KaTeX https://github.com/KaTeX/KaTeX */ -}}
|
||||
{{- if .Site.Params.math.enable | and (ne .Params.math false) -}}
|
||||
{{- with $CDN.katex_css -}}
|
||||
{{- slice . | $.Scratch.Add "linkCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "css/lib/katex/katex.min.css" | .Scratch.Add "linkLocal" -}}
|
||||
{{- end -}}
|
||||
{{- with $CDN.katex_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/katex/katex.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- with $CDN.katex_auto_render_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/katex/auto-render.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- $math := .Site.Params.math -}}
|
||||
{{- if $math.copy_tex -}}
|
||||
{{- with $CDN.katex_copy_tex_css -}}
|
||||
{{- slice . | $.Scratch.Add "linkCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "css/lib/katex/copy-tex.min.css" | .Scratch.Add "linkLocal" -}}
|
||||
{{- end -}}
|
||||
{{- with $CDN.katex_copy_tex_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/katex/copy-tex.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- if $math.mhchem -}}
|
||||
{{- with $CDN.katex_mhchem_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/katex/mhchem.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
renderMathInElement(document.body, {
|
||||
delimiters: [
|
||||
{ left: "$$", right: "$$", display: true },
|
||||
{ left: "\\(", right: "\\)", display: false },
|
||||
{ left: "\\[", right: "\\]", display: true },
|
||||
{{- if and $math.block_left_delimiter $math.block_right_delimiter -}}
|
||||
{ left: "{{ $math.block_left_delimiter }}", right: "{{ $math.block_right_delimiter }}", display: true },
|
||||
{{- end -}}
|
||||
{{- if and $math.inline_left_delimiter $math.inline_right_delimiter -}}
|
||||
{ left: "{{ $math.inline_left_delimiter }}", right: "{{ $math.inline_right_delimiter }}", display: false },
|
||||
{{- end -}}
|
||||
]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* mermaid https://github.com/knsv/mermaid */ -}}
|
||||
{{- with .Scratch.Get "mermaidMap" -}}
|
||||
{{- with $CDN.mermaid_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/mermaid/mermaid.min.js" | $.Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- slice "css/mermaid.scss" | $.Scratch.Add "linkLocal" -}}
|
||||
<script>
|
||||
window.mermaidMap = {{ jsonify . | safeJS }};
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Music */ -}}
|
||||
{{- if .Scratch.Get "music" -}}
|
||||
{{- /* APlayer https://github.com/MoePlayer/APlayer */ -}}
|
||||
{{- with $CDN.aplayer_css -}}
|
||||
{{- slice . | $.Scratch.Add "linkCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "css/lib/aplayer/APlayer.min.css" | .Scratch.Add "linkLocal" -}}
|
||||
{{- end -}}
|
||||
{{- slice "css/lib/aplayer/dark.scss" | .Scratch.Add "linkLocal" -}}
|
||||
{{- with $CDN.aplayer_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/aplayer/APlayer.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* MetingJS https://github.com/metowolf/MetingJS */ -}}
|
||||
{{- with $CDN.meting_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/meting/Meting.min.js" | .Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* jQuery.countdown https://github.com/hilios/jQuery.countdown */ -}}
|
||||
{{- with .Scratch.Get "countdownMap" -}}
|
||||
{{- with $CDN.jquery_countdown_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/jquery-countdown/jquery.countdown.min.js" | $.Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
window.countdownMap = {{ jsonify . | safeJS }};
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* dev feature */ -}}
|
||||
{{- if .Params.dev -}}
|
||||
{{- /* ECharts https://github.com/apache/incubator-echarts */ -}}
|
||||
{{- with .Scratch.Get "echartsMap" -}}
|
||||
{{- with $CDN.echarts_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/echarts/echarts.min.js" | $.Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
{{- with $CDN.echarts_macarons_js -}}
|
||||
{{- slice . | $.Scratch.Add "scriptCDN" -}}
|
||||
{{- else -}}
|
||||
{{- slice "js/lib/echarts/macarons.js" | $.Scratch.Add "scriptLocal" -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
window.echartsMap = {
|
||||
{{- range $key, $var := . -}}
|
||||
{{- $key }}: {{ $var | safeJS -}},
|
||||
{{- end -}}
|
||||
};
|
||||
window.echartsArr = [];
|
||||
</script>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Theme script */ -}}
|
||||
{{- slice "js/theme.js" | .Scratch.Add "scriptLocal" -}}
|
||||
|
||||
{{- range .Scratch.Get "linkCDN" -}}
|
||||
{{- safeHTML . -}}
|
||||
{{- end -}}
|
||||
{{- range .Scratch.Get "linkLocal" -}}
|
||||
{{- $res := resources.Get . -}}
|
||||
{{- if strings.HasSuffix . ".scss" -}}
|
||||
{{- $options := dict "outputStyle" "compressed" "enableSourceMap" true -}}
|
||||
{{- $res = toCSS $options $res -}}
|
||||
{{- else if not (strings.HasSuffix . ".min.css") -}}
|
||||
{{- $res = minify $res -}}
|
||||
{{- end -}}
|
||||
<link rel="stylesheet" href="{{ $res.RelPermalink }}">
|
||||
{{- end -}}
|
||||
|
||||
{{- range .Scratch.Get "scriptCDN" -}}
|
||||
{{- safeHTML . -}}
|
||||
{{- end -}}
|
||||
{{- range .Scratch.Get "scriptLocal" -}}
|
||||
{{- $res := resources.Get . -}}
|
||||
{{- if not (strings.HasSuffix . ".min.js") -}}
|
||||
{{- $res = minify $res -}}
|
||||
{{- end -}}
|
||||
<script src="{{ $res.RelPermalink }}"></script>
|
||||
{{- end -}}
|
||||
@@ -1,224 +0,0 @@
|
||||
{{- /* Google analytics async */ -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.GoogleAnalytics -}}
|
||||
{{- template "_internal/google_analytics_async.html" . -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* jQuery https://github.com/jquery/jquery */ -}}
|
||||
{{- $jquery := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.jquery_js -}}
|
||||
{{- $jquery = .Site.Params.cdn.jquery_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/jquery/jquery.slim.min.js" -}}
|
||||
{{- $jquery = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $jquery | safeHTML -}}
|
||||
|
||||
{{- /* lazysizes https://github.com/aFarkas/lazysizes */ -}}
|
||||
{{- $lazysizes := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.lazysizes_js -}}
|
||||
{{- $lazysizes = .Site.Params.cdn.lazysizes_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/lazysizes/lazysizes.min.js" -}}
|
||||
{{- $lazysizes = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $lazysizes | safeHTML -}}
|
||||
|
||||
{{- /* Smooth Scroll https://github.com/cferdinandi/smooth-scroll */ -}}
|
||||
{{- $smooth_scroll := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.smooth_scroll_js -}}
|
||||
{{- $smooth_scroll = .Site.Params.cdn.smooth_scroll_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/smooth-scroll/smooth-scroll.polyfills.min.js" -}}
|
||||
{{- $smooth_scroll = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $smooth_scroll = delimit (slice $smooth_scroll "<script>window.scroll = new SmoothScroll('[data-scroll]', {speed: 300, speedAsDuration: true});</script>") "" -}}
|
||||
{{- $smooth_scroll | safeHTML -}}
|
||||
|
||||
{{- /* TypeIt https://github.com/alexmacarthur/typeit */ -}}
|
||||
{{- if .Scratch.Get "typeitMap" -}}
|
||||
{{- $typeit := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.typeit_js -}}
|
||||
{{- $typeit = .Site.Params.cdn.typeit_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/typeit/typeit.min.js" -}}
|
||||
{{- $typeit = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $typeit | safeHTML -}}
|
||||
{{- $typeitArr := slice -}}
|
||||
{{- range $key, $val := .Scratch.Get "typeitMap" -}}
|
||||
{{- $typeitArr = $typeitArr | append (slice $val) -}}
|
||||
{{- end -}}
|
||||
<script>
|
||||
{{- printf "window.typeitArr=%s;" ($typeitArr | jsonify) | safeJS -}}
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* KaTeX https://github.com/KaTeX/KaTeX */ -}}
|
||||
{{- if .Site.Params.math.enable | and (ne .Params.math false) -}}
|
||||
{{- $math := .Site.Params.math -}}
|
||||
{{- $katex_css := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.katex_css -}}
|
||||
{{- $katex_css = .Site.Params.cdn.katex_css -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/lib/katex/katex.min.css" -}}
|
||||
{{- $katex_css = printf "<link rel=\"stylesheet\" href=\"%s\">" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $katex_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.katex_js -}}
|
||||
{{- $katex_js = .Site.Params.cdn.katex_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/katex/katex.min.js" -}}
|
||||
{{- $katex_js = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $katex_auto_render_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.katex_auto_render_js -}}
|
||||
{{- $katex_auto_render_js = .Site.Params.cdn.katex_auto_render_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/katex/auto-render.min.js" -}}
|
||||
{{- $katex_auto_render_js = printf "<script defer src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $katex := delimit (slice $katex_css $katex_js $katex_auto_render_js) "" -}}
|
||||
{{- if $math.copy_tex -}}
|
||||
{{- $katex_copy_tex_css := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.katex_copy_tex_css -}}
|
||||
{{- $katex_copy_tex_css = .Site.Params.cdn.katex_copy_tex_css -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/lib/katex/copy-tex.min.css" -}}
|
||||
{{- $katex_copy_tex_css = printf "<link rel=\"stylesheet\" href=\"%s\">" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $katex_copy_tex_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.katex_copy_tex_js -}}
|
||||
{{- $katex_copy_tex_js = .Site.Params.cdn.katex_copy_tex_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/katex/copy-tex.min.js" -}}
|
||||
{{- $katex_copy_tex_js = printf "<script defer src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $katex = delimit (slice $katex $katex_copy_tex_css $katex_copy_tex_js) "" -}}
|
||||
{{- end -}}
|
||||
{{- if $math.mhchem -}}
|
||||
{{- $katex_mhchem_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.katex_mhchem_js -}}
|
||||
{{- $katex_mhchem_js = .Site.Params.cdn.katex_mhchem_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/katex/mhchem.min.js" -}}
|
||||
{{- $katex_mhchem_js = printf "<script defer src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $katex = delimit (slice $katex $katex_mhchem_js) "" -}}
|
||||
{{- end -}}
|
||||
{{- $katex | safeHTML -}}
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
renderMathInElement(document.body, {
|
||||
delimiters: [
|
||||
{ left: "$$", right: "$$", display: true },
|
||||
{ left: "\\(", right: "\\)", display: false },
|
||||
{ left: "\\[", right: "\\]", display: true },
|
||||
{{- if and $math.block_left_delimiter $math.block_right_delimiter -}}
|
||||
{ left: "{{ $math.block_left_delimiter }}", right: "{{ $math.block_right_delimiter }}", display: true },
|
||||
{{- end -}}
|
||||
{{- if and $math.inline_left_delimiter $math.inline_right_delimiter -}}
|
||||
{ left: "{{ $math.inline_left_delimiter }}", right: "{{ $math.inline_right_delimiter }}", display: false },
|
||||
{{- end -}}
|
||||
]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* mermaid https://github.com/knsv/mermaid */ -}}
|
||||
{{- if .Scratch.Get "mermaidMap" -}}
|
||||
{{- $mermaid := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.mermaid_js -}}
|
||||
{{- $mermaid = .Site.Params.cdn.mermaid_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/mermaid/mermaid.min.js" -}}
|
||||
{{- $mermaid = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $mermaidInit := "<script>mermaid.initialize({startOnLoad: false, theme: null});</script>" -}}
|
||||
{{- $mermaid = delimit (slice $mermaid $mermaidInit) "" -}}
|
||||
{{- $mermaid | safeHTML -}}
|
||||
<script>
|
||||
{{- printf "window.mermaidMap=%s;" (.Scratch.Get "mermaidMap" | jsonify) | safeJS -}}
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Music */ -}}
|
||||
{{- if .Scratch.Get "music" -}}
|
||||
{{- /* APlayer https://github.com/MoePlayer/APlayer */ -}}
|
||||
{{- $aplayer_css := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.aplayer_css -}}
|
||||
{{- $aplayer_css = .Site.Params.cdn.aplayer_css -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "css/lib/aplayer/APlayer.min.css" -}}
|
||||
{{- $aplayer_css = printf "<link rel=\"stylesheet\" href=\"%s\">" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $aplayer_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.aplayer_js -}}
|
||||
{{- $aplayer_js = .Site.Params.cdn.aplayer_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/aplayer/APlayer.min.js" -}}
|
||||
{{- $aplayer_js = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $aplayer := delimit (slice $aplayer_css $aplayer_js) "" -}}
|
||||
{{- $aplayer | safeHTML -}}
|
||||
|
||||
{{- /* MetingJS https://github.com/metowolf/MetingJS */ -}}
|
||||
{{- $meting := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.meting_js -}}
|
||||
{{- $meting = .Site.Params.cdn.meting_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/meting/Meting.min.js" -}}
|
||||
{{- $meting = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $meting | safeHTML -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* jQuery.countdown https://github.com/hilios/jQuery.countdown */ -}}
|
||||
{{- if .Scratch.Get "countdownMap" -}}
|
||||
{{- $countdown := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.jquery_countdown_js -}}
|
||||
{{- $countdown = .Site.Params.cdn.jquery_countdown_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/jquery-countdown/jquery.countdown.min.js" -}}
|
||||
{{- $countdown = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $countdown | safeHTML -}}
|
||||
<script>
|
||||
{{- printf "window.countdownMap=%s;" (.Scratch.Get "countdownMap" | jsonify) | safeJS -}}
|
||||
</script>
|
||||
{{- end -}}
|
||||
|
||||
{{- /* dev feature */ -}}
|
||||
{{- if .Params.dev -}}
|
||||
{{- /* ECharts https://github.com/apache/incubator-echarts */ -}}
|
||||
{{- if .Scratch.Get "echartsMap" -}}
|
||||
{{- $echarts_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.echarts_js -}}
|
||||
{{- $echarts_js = .Site.Params.cdn.echarts_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/echarts/echarts.min.js" -}}
|
||||
{{- $echarts_js = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $echarts_macarons_js := "" -}}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.cdn.echarts_macarons_js -}}
|
||||
{{- $echarts_macarons_js = .Site.Params.cdn.echarts_macarons_js -}}
|
||||
{{- else -}}
|
||||
{{- $res := resources.Get "js/lib/echarts/macarons.js" | minify -}}
|
||||
{{- $echarts_macarons_js = printf "<script src=\"%s\"></script>" $res.RelPermalink -}}
|
||||
{{- end -}}
|
||||
{{- $echarts := delimit (slice $echarts_js $echarts_macarons_js) "" -}}
|
||||
{{- $echarts | safeHTML -}}
|
||||
<script>
|
||||
window.echartsMap = {
|
||||
{{- range $key, $var := .Scratch.Get "echartsMap" -}}
|
||||
{{- $key }}: {{ $var | safeJS -}},
|
||||
{{- end -}}
|
||||
};
|
||||
window.echartsArr = [];
|
||||
</script>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Blog script */ -}}
|
||||
{{- $res := resources.Get "/js/blog.js" | minify -}}
|
||||
<script src="{{ $res.RelPermalink }}"></script>
|
||||
@@ -1,13 +1,13 @@
|
||||
{{- define "title" }}{{ .Title }} | {{ .Site.Title }}{{ end -}}
|
||||
|
||||
{{- define "content" -}}
|
||||
<article class="page">
|
||||
<article class="page single">
|
||||
{{- /* Title */ -}}
|
||||
<h1 class="post-title animated flipInX">{{ .Title }}</h1>
|
||||
<h1 class="single-title animated flipInX">{{ .Title }}</h1>
|
||||
|
||||
{{- /* Meta */ -}}
|
||||
<div class="post-meta">
|
||||
<div class="post-meta-main">
|
||||
<div class="meta">
|
||||
<div class="meta-line">
|
||||
{{- $author := .Params.author | default .Site.Author.name -}}
|
||||
{{- $author_link := .Params.author_link | default .Site.Author.link | default .Site.BaseURL -}}
|
||||
<a class="author" href="{{ $author_link }}" rel="author" target="_blank">
|
||||
@@ -25,12 +25,12 @@
|
||||
</span>
|
||||
{{- end -}}
|
||||
</div>
|
||||
<div class="post-meta-other">
|
||||
<div class="meta-line">
|
||||
{{- $publish_date := .PublishDate.Format (.Site.Params.dateFormatToUse | default "2006-01-02") -}}
|
||||
<i class="far fa-calendar-alt fa-fw"></i><time datetime={{ $publish_date }}>{{ $publish_date }}</time>
|
||||
<i class="fas fa-pencil-alt fa-fw"></i>{{ T "wordCount" .WordCount }}
|
||||
<i class="far fa-clock fa-fw"></i>{{ T "readingTime" .ReadingTime }}
|
||||
{{- if eq (getenv "HUGO_ENV") "production" | and .Site.Params.valine.enable | and .Site.Params.valine.visitor -}}
|
||||
{{- if .Scratch.Get "production" | and .Site.Params.valine.enable | and .Site.Params.valine.visitor -}}
|
||||
<span id="{{ .RelPermalink | relURL }}" class="leancloud_visitors" data-flag-title="{{ .Title }}">
|
||||
<i class="far fa-eye fa-fw"></i>{{ T "pageviews" | safeHTML }}
|
||||
</span>
|
||||
@@ -40,8 +40,8 @@
|
||||
|
||||
{{- /* Featured image */ -}}
|
||||
{{- with .Params.featured_image -}}
|
||||
<div class="post-featured-image">
|
||||
{{- partial "image" . -}}
|
||||
<div class="featured-image">
|
||||
{{- partial "hook/image" . -}}
|
||||
</div>
|
||||
{{- end -}}
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
{{- end -}}
|
||||
|
||||
{{- /* Content */ -}}
|
||||
<div class="post-content">
|
||||
<div class="content">
|
||||
{{- partial "hook/content.html" .Content | safeHTML -}}
|
||||
</div>
|
||||
|
||||
@@ -80,9 +80,9 @@
|
||||
{{- partial "post/footer.html" . -}}
|
||||
|
||||
{{- /* Comment */ -}}
|
||||
<div class="post-comment">
|
||||
<div class="comment">
|
||||
{{- if ( .Params.comment | default true ) -}}
|
||||
{{- partial "comments.html" . -}}
|
||||
{{- partial "comment.html" . -}}
|
||||
{{- end -}}
|
||||
</div>
|
||||
</article>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
{{- define "content" -}}
|
||||
<div class="page archive">
|
||||
{{- /* Title */ -}}
|
||||
<h2 class="post-title animated pulse faster">
|
||||
<h2 class="single-title animated pulse faster">
|
||||
{{- $taxonomy := .Data.Singular -}}
|
||||
{{- if eq $taxonomy "category" -}}
|
||||
<i class="far fa-folder-open fa-fw"></i> {{ humanize .Title }}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
<div class="page archive">
|
||||
{{- /* Title */ -}}
|
||||
<h2 class="post-title animated pulse faster">
|
||||
<h2 class="single-title animated pulse faster">
|
||||
{{- T "all" | humanize}}{{ T $taxonomies | default $taxonomies | humanize -}}
|
||||
</h2>
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
{{- end -}}
|
||||
{{- if gt (len $pages) 5 -}}
|
||||
<span class="more-post">
|
||||
<a href="{{ .Permalink }}" class="more-post-link">{{ T "more" }} >></a>
|
||||
<a href="{{ .Permalink }}" class="more-single-link">{{ T "more" }} >></a>
|
||||
</span>
|
||||
{{- end -}}
|
||||
</div>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,3 @@
|
||||
.dark-theme .aplayer{background:#212121}.dark-theme .aplayer.aplayer-withlist .aplayer-info{border-bottom-color:#5c5c5c}.dark-theme .aplayer.aplayer-fixed .aplayer-list{border-color:#5c5c5c}.dark-theme .aplayer .aplayer-body{background-color:#212121}.dark-theme .aplayer .aplayer-info{border-top-color:#212121}.dark-theme .aplayer .aplayer-info .aplayer-music .aplayer-title{color:#fff}.dark-theme .aplayer .aplayer-info .aplayer-music .aplayer-author{color:#fff}.dark-theme .aplayer .aplayer-info .aplayer-controller .aplayer-time{color:#eee}.dark-theme .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path{fill:#eee}.dark-theme .aplayer .aplayer-list{background-color:#212121}.dark-theme .aplayer .aplayer-list::-webkit-scrollbar-thumb{background-color:#999}.dark-theme .aplayer .aplayer-list::-webkit-scrollbar-thumb:hover{background-color:#bbb}.dark-theme .aplayer .aplayer-list li{color:#fff;border-top-color:#666}.dark-theme .aplayer .aplayer-list li:hover{background:#4e4e4e}.dark-theme .aplayer .aplayer-list li.aplayer-list-light{background:#6c6c6c}.dark-theme .aplayer .aplayer-list li .aplayer-list-index{color:#ddd}.dark-theme .aplayer .aplayer-list li .aplayer-list-author{color:#ddd}.dark-theme .aplayer .aplayer-lrc{text-shadow:-1px -1px 0 #666}.dark-theme .aplayer .aplayer-lrc:before{background:-moz-linear-gradient(top, #212121 0%, rgba(33,33,33,0) 100%);background:-webkit-linear-gradient(top, #212121 0%, rgba(33,33,33,0) 100%);background:linear-gradient(to bottom, #212121 0%, rgba(33,33,33,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#212121', endColorstr='#00212121',GradientType=0 )}.dark-theme .aplayer .aplayer-lrc:after{background:-moz-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.8) 100%);background:-webkit-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.8) 100%);background:linear-gradient(to bottom, rgba(33,33,33,0) 0%, rgba(33,33,33,0.8) 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#00212121', endColorstr='#cc212121',GradientType=0 )}.dark-theme .aplayer .aplayer-lrc p{color:#fff}.dark-theme .aplayer .aplayer-miniswitcher{background:#484848}.dark-theme .aplayer .aplayer-miniswitcher .aplayer-icon path{fill:#eee}
|
||||
|
||||
/*# sourceMappingURL=dark.css.map */
|
||||
@@ -0,0 +1 @@
|
||||
{"Target":"css/lib/aplayer/dark.css","MediaType":"text/css","Data":{}}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
{"Target":"css/lib/forkawesome/fork-awesome.min.css","MediaType":"text/css","Data":{}}
|
||||
@@ -1 +0,0 @@
|
||||
{"Target":"css/lib/forkawesome/forkawesome.min.css","MediaType":"text/css","Data":{}}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
{"Target":"css/mermaid.css","MediaType":"text/css","Data":{}}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
{"Target":"css/style.min.css","MediaType":"text/css","Data":{}}
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user