19 Commits

Author SHA1 Message Date
shenyu
a29108efdc 1.9.0 2021-06-08 09:41:00 +08:00
shenyu
c679fd6256 📝 docs 2021-05-31 10:24:23 +08:00
shenyu
49dfb78503 📝 update 2021-05-30 11:08:08 +08:00
shenyu
809d54eae2 1.8.24 2021-05-29 10:58:17 +08:00
shenyu
e76f208516 ️ bundle assets by rollup 2021-05-29 10:57:34 +08:00
shenyu
aad79d1baa ✏️ README.md 2021-05-24 11:45:14 +08:00
shenyu
221c637409 Merge branch 'master' of https://github.com/Shen-Yu/hexo-theme-ayer 2021-05-24 11:29:54 +08:00
shenyu
5a4edd6483 1.8.23 2021-05-24 11:29:16 +08:00
shenyu
0163b6bfe5 🛠️ hexo scripts 2021-05-24 11:28:56 +08:00
Eric Shen
3fa2e339c5 Update README.md 2021-05-18 10:19:02 +08:00
shenyu
1c857a0c5f 1.8.22 2021-05-15 12:48:41 +08:00
shenyu
302c6080fd 🐛 fix: float btns 2021-05-15 12:48:29 +08:00
shenyu
ec47bd254a Merge branch 'master' of https://github.com/Shen-Yu/hexo-theme-ayer 2021-04-28 10:37:59 +08:00
shenyu
42a6eb0c33 1.8.21 2021-04-28 10:37:27 +08:00
shenyu
0c0ea3312c 💄 fix: sidebar overflow scroll 2021-04-28 10:37:17 +08:00
Eric Shen
1e0275d757 Merge pull request #116 from MHG-LAB/master
minivaline v6
2021-04-26 14:23:49 +08:00
MHuiG
c5f8d5d058 minivaline v6 dark 2021-04-19 18:54:39 +08:00
MHuiG
38e99de4fb minivaline v6 2021-04-19 18:43:10 +08:00
shenyu
24be666717 🙈 update: ignore 2021-04-14 11:52:50 +08:00
18 changed files with 283 additions and 161 deletions

1
.gitignore vendored
View File

@@ -7,3 +7,4 @@ package-lock.json
node_modules/ node_modules/
.cache .cache
.history .history
_bak.yml

View File

@@ -1,3 +1,4 @@
.cache/ .cache/
.history/ .history/
.github/ .github/
_bak.yml

View File

@@ -1,5 +0,0 @@
{
"plugins": {
"autoprefixer": true
}
}

View File

@@ -27,7 +27,7 @@
<a href="https://github.com/Shen-Yu/hexo-theme-ayer/releases" target="_blank" rel="noopener noreferrer"> <a href="https://github.com/Shen-Yu/hexo-theme-ayer/releases" target="_blank" rel="noopener noreferrer">
<img alt="GitHub repo size" src="https://img.shields.io/github/repo-size/Shen-Yu/hexo-theme-ayer?color=b37feb"> <img alt="GitHub repo size" src="https://img.shields.io/github/repo-size/Shen-Yu/hexo-theme-ayer?color=b37feb">
</a> </a>
<a href="https://github.com/Shen-Yu/hexo-theme-ayer/blob/master/LICENSE" target="_blank" rel="noopener noreferrer"><img alt="LICENSE" src="https://img.shields.io/badge/LICENSE-SATA-yellow"> <a href="https://github.com/Shen-Yu/hexo-theme-ayer/blob/master/LICENSE" target="_blank" rel="noopener noreferrer"><img alt="LICENSE" src="https://img.shields.io/badge/LICENSE-SATA-6ccab8">
</a> </a>
</p> </p>
@@ -48,12 +48,6 @@
## Install ## Install
### For hexo < 5.0
``` shell
git clone https://github.com/Shen-Yu/hexo-theme-ayer.git themes/ayer
```
### For hexo >= 5.0 ### For hexo >= 5.0
```shell ```shell
@@ -63,6 +57,12 @@ npm i hexo-theme-ayer -S
- If this theme is newly installed, a `_config.ayer.yml` file will be generated in the root directory after the installation is complete, and you can directly edit the `_config.ayer.yml` file for configuration. - If this theme is newly installed, a `_config.ayer.yml` file will be generated in the root directory after the installation is complete, and you can directly edit the `_config.ayer.yml` file for configuration.
- If it is a theme upgrade, you can use the configuration method of hexo < 5.0, or you can move the original configuration file to the root directory and rename it to `_config.ayer.yml`. - If it is a theme upgrade, you can use the configuration method of hexo < 5.0, or you can move the original configuration file to the root directory and rename it to `_config.ayer.yml`.
### For hexo < 5.0
```shell
git clone https://github.com/Shen-Yu/hexo-theme-ayer.git themes/ayer
```
## Enable ## Enable
Modify `theme` setting in `_config.yml` to `ayer` Modify `theme` setting in `_config.yml` to `ayer`
@@ -79,6 +79,7 @@ git pull
``` ```
## Multi Language Support ## Multi Language Support
zh-CN中文简体 enEnglish zh-TW中文繁体 ja日本語 esEspañol deDeutsch frFrançais ruРусский ko한국어 viTiếng Việt nlNederlands nonorsk ptPortuguês zh-CN中文简体 enEnglish zh-TW中文繁体 ja日本語 esEspañol deDeutsch frFrançais ruРусский ko한국어 viTiếng Việt nlNederlands nonorsk ptPortuguês
English is default languge, if you want to change, modify `language` option in `_config.yml` file in your Hexo blog's root folder. English is default languge, if you want to change, modify `language` option in `_config.yml` file in your Hexo blog's root folder.
@@ -169,7 +170,7 @@ word_count:
# type0-close reward 1-only open in article which you have configured reward:true 2-open in all articles # type0-close reward 1-only open in article which you have configured reward:true 2-open in all articles
reward_type: 2 reward_type: 2
# reward word # reward word
reward_wording: 'Buy me a cup of coffee~' reward_wording: "Buy me a cup of coffee~"
# qrcode image path # qrcode image path
alipay: /images/alipay.jpg alipay: /images/alipay.jpg
# qrcode image path # qrcode image path
@@ -222,9 +223,9 @@ cnzz:
url: # url: #
# Google Analytics # Google Analytics
google_analytics: '' google_analytics: ""
# Baidu Analytics # Baidu Analytics
baidu_analytics: '' baidu_analytics: ""
# Mathjax Support # Mathjax Support
mathjax: true mathjax: true
@@ -308,19 +309,31 @@ twikoo:
# See: https://github.com/MiniValine/MiniValine # See: https://github.com/MiniValine/MiniValine
minivaline: minivaline:
enable: false enable: false
md: true serverURL: https://minivaline.your-domain.com
# more options https://minivaline.js.org/docs/cn/#/Options
backend: waline # advertisement
serverURL: https://waline.vercel.app # if there is an "ad" word in photo or urlit may blocked by adblock or any other browser extensions
ads:
ad_1:
title: vultr优惠vps
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/vultr.png
url: https://www.vultr.com/?ref=8630075
width: 300
ad_2:
title: 云服务器全球购低至2折
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/ten_2.jpg
url: https://curl.qcloud.com/kvO7hb43
width: 300
``` ```
## Plugins ## Plugins
+ [hexo-generator-search](https://github.com/wzpan/hexo-generator-search) (for Local Search) - [hexo-generator-search](https://github.com/wzpan/hexo-generator-search) (for Local Search)
```yml ```yml
$ npm install hexo-generator-searchdb --save $ npm install hexo-generator-searchdb --save
``` ```
Then add the plugin configuration in hexo's configuration file `_config.yml` (note: not the theme's configuration file): Then add the plugin configuration in hexo's configuration file `_config.yml` (note: not the theme's configuration file):
```yml ```yml
@@ -331,7 +344,7 @@ minivaline:
format: html format: html
``` ```
+ [hexo-generator-feed](https://github.com/hexojs/hexo-generator-feed) (for RSS) - [hexo-generator-feed](https://github.com/hexojs/hexo-generator-feed) (for RSS)
```yml ```yml
$ npm install hexo-generator-feed --save $ npm install hexo-generator-feed --save
@@ -351,17 +364,21 @@ minivaline:
order_by: -date order_by: -date
``` ```
+ [hexo-generator-index-pin-top](https://github.com/netcan/hexo-generator-index-pin-top) (for Sticky Post) - [hexo-generator-index-pin-top](https://github.com/netcan/hexo-generator-index-pin-top) (for Sticky Post)
```bash ```bash
$ npm uninstall hexo-generator-index --save $ npm uninstall hexo-generator-index --save
$ npm install hexo-generator-index-pin-top --save $ npm install hexo-generator-index-pin-top --save
``` ```
## Categories ## Categories
```bash ```bash
hexo new page categories hexo new page categories
``` ```
Then paste following codes to file: /source/categories/index.md Then paste following codes to file: /source/categories/index.md
```md ```md
--- ---
title: categories title: categories
@@ -371,13 +388,17 @@ layout: "categories"
``` ```
## Tags ## Tags
Same as categories. Same as categories.
## Friend Links ## Friend Links
```bash ```bash
hexo new page friends hexo new page friends
``` ```
Then paste following codes to file: /source/friends/index.md Then paste following codes to file: /source/friends/index.md
```md ```md
--- ---
title: friends title: friends
@@ -385,19 +406,18 @@ type: friends
layout: "friends" layout: "friends"
--- ---
``` ```
Then edit `friends_link` in `_config.yml` Then edit `friends_link` in `_config.yml`
## Gallery ## Gallery
Need to write in the head of the markdown, this is not a good way to write, I hope to get a better way to write on github. Need to write in the head of the markdown, this is not a good way to write, I hope to get a better way to write on github.
```md ```md
--- ---
title: Gallery title: Gallery
albums: [ albums: [["img_url", "img_caption"], ["img_url", "img_caption"]]
["img_url","img_caption"],
["img_url","img_caption"]
]
--- ---
``` ```
@@ -405,13 +425,14 @@ albums: [
Use Tocbot to parse the title tags (h1~h6) in the content and insert the directory. Use Tocbot to parse the title tags (h1~h6) in the content and insert the directory.
+ ayer/_config.yml - ayer/\_config.yml
```bash ```bash
# Toc # Toc
toc: true toc: true
``` ```
+ If Toc is turned on in ayer/_config.yml, then Tocbot will generate a Toc article directory in the title tag of each blog parsing content, but not all blogs require Toc, so in the Front-matter section of markdown Can be closed:
- If Toc is turned on in ayer/\_config.yml, then Tocbot will generate a Toc article directory in the title tag of each blog parsing content, but not all blogs require Toc, so in the Front-matter section of markdown Can be closed:
```md ```md
--- ---
@@ -433,7 +454,6 @@ This project exists thanks to all the people who contribute.
[![Stargazers over time](https://starchart.cc/Shen-Yu/hexo-theme-ayer.svg)](https://starchart.cc/Shen-Yu/hexo-theme-ayer) [![Stargazers over time](https://starchart.cc/Shen-Yu/hexo-theme-ayer.svg)](https://starchart.cc/Shen-Yu/hexo-theme-ayer)
## License ## License
<a src="https://github.com/Shen-Yu/hexo-theme-ayer">Ayer</a> by <a href="https://github.com/Shen-Yu">Eric-Shen</a> is licensed under <a rel="license" href="https://github.com/Shen-Yu/hexo-theme-ayer/blob/master/LICENSE">SATA-License</a>. <a src="https://github.com/Shen-Yu/hexo-theme-ayer">Ayer</a> by <a href="https://github.com/Shen-Yu">Eric-Shen</a> is licensed under <a rel="license" href="https://github.com/Shen-Yu/hexo-theme-ayer/blob/master/LICENSE">SATA-License</a>.

View File

@@ -233,20 +233,18 @@ twikoo:
# See: https://github.com/MiniValine/MiniValine # See: https://github.com/MiniValine/MiniValine
minivaline: minivaline:
enable: false enable: false
md: true
# 更多选项 https://minivaline.js.org/docs/cn/#/Options 按照yml格式继续填写即可 (除了 [el] 选项) # 更多选项 https://minivaline.js.org/docs/cn/#/Options 按照yml格式继续填写即可 (除了 [el] 选项)
# emoticonUrl 等列表选项 可参考 https://github.com/MiniValine/hexo-next-minivaline # emoticonUrl 等列表选项 可参考 https://github.com/MiniValine/hexo-next-minivaline
# 下面是一个例子: # 下面是一个例子:
backend: waline serverURL: https://minivaline.your-domain.com
serverURL: https://waline.vercel.app
# 首页广告配置 # 首页广告配置
# 可以根据需要自行增加ad_3ad_4...留空则不显示建议图片和url不要带ad等关键词否则可能会被adblock等插件屏蔽 # 可以根据需要自行增加ad_3ad_4...留空则不显示建议图片和url不要带ad等关键词否则可能会被adblock等插件屏蔽
ads: ads:
ad_1: ad_1:
title: 腾讯云限时秒杀 title: vultr优惠vps
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/ten_1.jpg img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/vultr.png
url: https://curl.qcloud.com/ezctH6FU url: https://www.vultr.com/?ref=8630075
width: 300 width: 300
ad_2: ad_2:
title: 云服务器全球购低至2折 title: 云服务器全球购低至2折

View File

@@ -3,7 +3,7 @@
<div id="mvcomments-box"> <div id="mvcomments-box">
<div id="mvcomments"></div> <div id="mvcomments"></div>
</div> </div>
<script src="https://cdn.jsdelivr.net/npm/minivaline@latest"></script> <script src="https://cdn.jsdelivr.net/npm/minivaline@6"></script>
<script> <script>
new MiniValine(Object.assign(<%- JSON.stringify(theme.minivaline) %>, { new MiniValine(Object.assign(<%- JSON.stringify(theme.minivaline) %>, {
el: '#mvcomments', el: '#mvcomments',
@@ -24,54 +24,24 @@
padding: 5px 0px; padding: 5px 0px;
} }
} }
.darkmode .MiniValine *{ :root .darkmode {
color: #f1f1f1!important; --ohhho-color-p: #bbb;
--ohhho-color-text: #fff;
--ohhho-color-card: #252d38;
--ohhho-color-block: rgba(68, 68, 68, 0.65);
--ohhho-expand-before-background: linear-gradient(
180deg,
rgba(246, 246, 246, 0),
rgba(0, 0, 0, 0.9)
);
--ohhho-expand-after-background: rgba(0, 0, 0, 0.9);
} }
.darkmode .commentTrigger{ .darkmode .ohhho pre {
background-color: #403e3e !important; background: #888;
border: 1px solid var(--ohhho-color-block);
} }
.darkmode .MiniValine .vpage .more{ .darkmode .ohhho .vlist .vcard .vcomment-body .vhead {
background: #21232F filter: brightness(85%);
}
.darkmode img{
filter: brightness(30%)
}
.darkmode .MiniValine .vlist .vcard .vcomment-body .text-wrapper .vcomment.expand:before{
background: linear-gradient(180deg, rgba(246,246,246,0), rgba(0,0,0,0.9))
}
.darkmode .MiniValine .vlist .vcard .vcomment-body .text-wrapper .vcomment.expand:after{
background: rgba(0,0,0,0.9)
}
.darkmode .MiniValine .vlist .vcard .vcomment-body .text-wrapper .vcomment pre{
background: #282c34
border: 1px solid #282c34
}
.darkmode .MiniValine .vinputs-area .textarea-wrapper textarea{
color: #000;
}
.darkmode .MiniValine .vinputs-area .auth-section .input-wrapper input{
color: #000;
}
.darkmode .MiniValine .vinputs-area .vextra-area .vsmile-icons{
background: transparent;
}
.darkmode .MiniValine .vinputs-wrap{
border-color: #b2b2b5;
}
.darkmode .MiniValine .vinputs-wrap:hover{
border: 1px dashed #2196f3;
}
.darkmode .MiniValine .vinputs-area .auth-section .input-wrapper{
border-bottom: 1px dashed #b2b2b5;
}
.darkmode .MiniValine .vinputs-area .auth-section .input-wrapper:hover{
border-bottom: 1px dashed #2196f3;
}
.darkmode .MiniValine .vbtn{
background-color: transparent!important;
}
.darkmode .MiniValine .vbtn:hover{
border: 1px dashed #2196f3;
} }
</style> </style>
<% } %> <% } %>

View File

@@ -1,10 +1,10 @@
{ {
"name": "hexo-theme-ayer", "name": "hexo-theme-ayer",
"version": "1.8.20", "version": "1.9.0",
"description": "a clean and elegant theme for hexo.", "description": "a clean and elegant theme for hexo.",
"scripts": { "scripts": {
"dev": "parcel serve source-src/main.js -d source/dist", "dev": "rollup -c -w",
"build": "rimraf source/dist && parcel build source-src/main.js -d source/dist --no-source-maps", "build": "rollup -c",
"postinstall": "node ./move_config.js", "postinstall": "node ./move_config.js",
"test": "stylint source-src/css/style.styl -c .stylintrc" "test": "stylint source-src/css/style.styl -c .stylintrc"
}, },
@@ -28,9 +28,9 @@
"homepage": "https://shen-yu.gitee.io/", "homepage": "https://shen-yu.gitee.io/",
"devDependencies": { "devDependencies": {
"autoprefixer": "^9.8.6", "autoprefixer": "^9.8.6",
"cssnano": "^4.1.10", "rollup": "^2.50.2",
"parcel-bundler": "^1.12.5", "rollup-plugin-styles": "^3.14.1",
"postcss-modules": "^1.5.0", "rollup-plugin-terser": "^7.0.2",
"stylint": "^2.0.0" "stylint": "^2.0.0"
} }
} }

16
rollup.config.js Normal file
View File

@@ -0,0 +1,16 @@
import autoprefixer from "autoprefixer";
import styles from "rollup-plugin-styles";
import { terser } from "rollup-plugin-terser";
export default {
input: "source-src/main.js",
output: {
dir: "source/dist",
format: "iife",
assetFileNames: "[name][extname]",
},
plugins: [
styles({ mode: "extract", minimize: true, plugins: [autoprefixer()] }),
terser(),
],
};

11
scripts/events/index.js Normal file
View File

@@ -0,0 +1,11 @@
/* global hexo */
"use strict";
hexo.on("generateBefore", () => {
require("./lib/merge-configs")(hexo);
});
hexo.on("generateAfter", () => {
require("./lib/hello")(hexo);
});

View File

@@ -0,0 +1,38 @@
"use strict";
module.exports = (hexo) => {
const isZh = hexo.theme.i18n.languages[0].search(/zh-CN/i) !== -1;
if (isZh) {
hexo.log.info(`
------------------------------------------------
| |
| __ ________ _____ |
| /\\\\ \\ / / ____| __ \\ |
| / \\\\ \\_/ /| |__ | |__) | |
| / /\\ \\\\ / | __| | _ / |
| / ____ \\| | | |____| | \\ \\ |
| /_/ \\_\\_| |______|_| \\_\\ |
| |
| 感谢使用 Ayer 主题 ! |
| 文档: https://shen-yu.gitee.io/2019/ayer/ |
| |
------------------------------------------------
`);
} else {
hexo.log.info(`
----------------------------------------------------
| |
| __ ________ _____ |
| /\\\\ \\ / / ____| __ \\ |
| / \\\\ \\_/ /| |__ | |__) | |
| / /\\ \\\\ / | __| | _ / |
| / ____ \\| | | |____| | \\ \\ |
| /_/ \\_\\_| |______|_| \\_\\ |
| |
| Thank you for using Ayer theme ! |
| Docs: https://github.com/Shen-Yu/hexo-theme-ayer |
| |
----------------------------------------------------
`);
}
};

View File

@@ -0,0 +1,28 @@
"use strict";
const objUtil = require("../../utils/object");
const { isNotEmptyObject } = require("../../utils/object");
module.exports = (hexo) => {
const isZh = hexo.theme.i18n.languages[0].search(/zh-CN/i) !== -1;
if (isNotEmptyObject(hexo.config.theme_config)) {
hexo.theme.config = objUtil.merge(
{},
hexo.theme.config,
hexo.config.theme_config
);
if (isZh) {
hexo.log.info("[Ayer] 读取 _config.yml 中 theme_config 配置项覆盖配置");
} else {
hexo.log.info(
"[Ayer] Merge theme config from theme_config in _config.yml"
);
}
}
hexo.log.debug(
"[Ayer] Output theme config:\n",
JSON.stringify(hexo.theme.config, undefined, 2)
);
};

View File

@@ -0,0 +1,12 @@
'use strict';
const joinPath = function(base, relative) {
if (relative && /^https*:\/\//.test(relative)) {
return relative;
}
return relative
? base.replace(/\/+$/, '') + '/' + relative.replace(/^\/+/, '')
: base;
};
module.exports = joinPath;

31
scripts/utils/object.js Normal file
View File

@@ -0,0 +1,31 @@
'use strict';
const isObject = (obj) => {
return obj && typeof obj === 'object' && !Array.isArray(obj);
};
const isNotEmptyObject = (obj) => {
return obj && typeof obj === 'object' && Object.getOwnPropertyNames(obj).length !== 0;
};
const merge = (target, ...sources) => {
for (const source of sources) {
for (const key in source) {
if (!Object.prototype.hasOwnProperty.call(source, key)) {
continue;
}
if (isObject(target[key]) && isObject(source[key])) {
merge(target[key], source[key]);
} else {
target[key] = source[key];
}
}
}
return target;
};
module.exports = {
isObject,
isNotEmptyObject,
merge
};

View File

@@ -56,12 +56,14 @@
color sea color sea
.float_btns .float_btns
position fixed position sticky
bottom 10rem bottom 10rem
right 50px right 50px
z-index 9996 z-index 9996
text-align center text-align center
transform scale(1.2) transform scale(1.2)
width: 50px
float: right
#mask #mask
position fixed position fixed

View File

@@ -14,6 +14,13 @@
opacity .8 opacity .8
background-color body-color background-color body-color
&.nav-main &.nav-main
height 60vh
overflow-y scroll
scrollbar-width none
-ms-overflow-style none
&::-webkit-scrollbar
width 0px
height 0px
.nav-item-link .nav-item-link
i i
font-size 1rem font-size 1rem

View File

@@ -1,3 +1,3 @@
import './css/style.styl' import "./css/style.styl";
import './js/ayer' import "./js/ayer";
import './js/share' import "./js/share";

File diff suppressed because one or more lines are too long

10
source/dist/main.js vendored
View File

@@ -1,9 +1 @@
parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"MiQR":[function(require,module,exports) { !function(){"use strict";var e;function t(e,t){e=e.replace(/<%-sUrl%>/g,encodeURIComponent(t.sUrl)).replace(/<%-sTitle%>/g,encodeURIComponent(t.sTitle)).replace(/<%-sDesc%>/g,encodeURIComponent(t.sDesc)).replace(/<%-sPic%>/g,encodeURIComponent(t.sPic));window.open(e)}function o(){$(".wx-share-modal").removeClass("in ready"),$("#share-mask").hide()}function s(e,o){"weibo"===e?t("http://service.weibo.com/share/share.php?url=<%-sUrl%>&title=<%-sTitle%>&pic=<%-sPic%>",o):"qq"===e?t("http://connect.qq.com/widget/shareqq/index.html?url=<%-sUrl%>&title=<%-sTitle%>&source=<%-sDesc%>",o):"douban"===e?t("https://www.douban.com/share/service?image=<%-sPic%>&href=<%-sUrl%>&name=<%-sTitle%>&text=<%-sDesc%>",o):"qzone"===e?t("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=<%-sUrl%>&title=<%-sTitle%>&pics=<%-sPic%>&summary=<%-sDesc%>",o):"facebook"===e?t("https://www.facebook.com/sharer/sharer.php?u=<%-sUrl%>",o):"twitter"===e?t("https://twitter.com/intent/tweet?text=<%-sTitle%>&url=<%-sUrl%>",o):"google"===e?t("https://plus.google.com/share?url=<%-sUrl%>",o):"weixin"===e&&($(".wx-share-modal").addClass("in ready"),$("#share-mask").show())}!function(e){let t=e(".search-form-wrap"),o=!1;e(".nav-item-search").click((()=>{var s;o||(o=!0,t.addClass("on"),s=function(){e(".local-search-input").focus()},setTimeout((function(){o=!1,s&&s()}),200))})),e(document).mouseup((o=>{const s=e(".local-search");s.is(o.target)||0!==s.has(o.target).length||t.removeClass("on")})),e(".local-search").size()&&e.getScript("/js/search.js",(function(){searchFunc("/search.xml","local-search-input","local-search-result")})),e(".share-outer").click((()=>e(".share-wrap").fadeToggle())),e("img.lazy").lazyload({effect:"fadeIn"}),e("#gallery").justifiedGallery({rowHeight:200,margins:5}),e(document).ready((function(e){e(".anchor").click((function(t){t.preventDefault(),e("main").animate({scrollTop:e(".cover").height()},"smooth")}))})),(()=>{const t=e("#totop");t.hide(),e(".content").scroll((function(){e(".content").scrollTop()>1e3?e(t).stop().fadeTo(200,.6):e(t).stop().fadeTo(200,0)})),e(t).click((function(){return e(".content").animate({scrollTop:0},1e3),!1}))})();const s=e(".content"),r=e(".sidebar");e(".navbar-toggle").on("click",(function(){e(".content,.sidebar").addClass("anim"),s.toggleClass("on"),r.toggleClass("on")})),e("#reward-btn").click((()=>{e("#reward").fadeIn(150),e("#mask").fadeIn(150)})),e("#reward .close, #mask").click((()=>{e("#mask").fadeOut(100),e("#reward").fadeOut(100)})),1==sessionStorage.getItem("darkmode")?(e("body").addClass("darkmode"),e("#todark i").removeClass("ri-moon-line").addClass("ri-sun-line")):(e("body").removeClass("darkmode"),e("#todark i").removeClass("ri-sun-line").addClass("ri-moon-line")),e("#todark").click((()=>{1==sessionStorage.getItem("darkmode")?(e("body").removeClass("darkmode"),e("#todark i").removeClass("ri-sun-line").addClass("ri-moon-line"),sessionStorage.removeItem("darkmode")):(e("body").addClass("darkmode"),e("#todark i").removeClass("ri-moon-line").addClass("ri-sun-line"),sessionStorage.setItem("darkmode",1))}));console.log("%c%s%c%s%c%s","background-color: #49b1f5; color: #fff; padding: 8px; font-size: 14px;","主题不错⭐star 支持一下 ->","background-color: #ffbca2; padding: 8px; font-size: 14px;","https://github.com/Shen-Yu/hexo-theme-ayer","background-color: #eaf8ff;","\n\n _ __ _______ _____ \n / \\ \\ \\ / / ____| _ \\ \n / _ \\ \\ V /| _| | |_) | \n / ___ \\ | | | |___| _ < \n /_/ \\_\\ _| |_____|_| \\__\\ \n")}(jQuery),e={id:"JGjrOr2rebvP6q2a",ck:"JGjrOr2rebvP6q2a"},function(t){var o=window,s=document,r=e,a="".concat("https:"===s.location.protocol?"https://":"http://","sdk.51.la/js-sdk-pro.min.js"),n=s.createElement("script"),c=s.getElementsByTagName("script")[0];n.type="text/javascript",n.setAttribute("charset","UTF-8"),n.async=!0,n.src=a,n.id="LA_COLLECT",r.d=n;var i=function(){o.LA.ids.push(r)};o.LA?o.LA.ids&&i():(o.LA=e,o.LA.ids=[],i()),c.parentNode.insertBefore(n,c)}();(()=>{let e=document.querySelectorAll(".share-sns");if(!e||0===e.length)return;let t=window.location.href,r=document.querySelector("title").innerHTML,a=document.querySelectorAll(".article-entry img").length?document.querySelector(".article-entry img").getAttribute("src"):"";""===a||/^(http:|https:)?\/\//.test(a)||(a=window.location.origin+a),e.forEach((e=>{e.onclick=o=>{s(e.getAttribute("data-type"),{sUrl:t,sPic:a,sTitle:r,sDesc:r})}})),document.querySelector("#mask").onclick=o,document.querySelector(".modal-close").onclick=o})()}();
},{}],"jSg4":[function(require,module,exports) {
!function(e){var o=e(".search-form-wrap"),a=!1;e(".nav-item-search").click(function(){var n;a||(a=!0,o.addClass("on"),n=function(){e(".local-search-input").focus()},setTimeout(function(){a=!1,n&&n()},200))}),e(document).mouseup(function(a){var n=e(".local-search");n.is(a.target)||0!==n.has(a.target).length||o.removeClass("on")}),e(".local-search").size()&&e.getScript("/js/search.js",function(){searchFunc("/search.xml","local-search-input","local-search-result")});var n;e(".share-outer").click(function(){return e(".share-wrap").fadeToggle()}),e("img.lazy").lazyload({effect:"fadeIn"}),e("#gallery").justifiedGallery({rowHeight:200,margins:5}),e(document).ready(function(e){e(".anchor").click(function(o){o.preventDefault(),e("main").animate({scrollTop:e(".cover").height()},"smooth")})}),(n=e("#totop")).hide(),e(".content").scroll(function(){e(".content").scrollTop()>1e3?e(n).stop().fadeTo(200,.6):e(n).stop().fadeTo(200,0)}),e(n).click(function(){return e(".content").animate({scrollTop:0},1e3),!1});var t=e(".content"),r=e(".sidebar");e(".navbar-toggle").on("click",function(){e(".content,.sidebar").addClass("anim"),t.toggleClass("on"),r.toggleClass("on")}),e("#reward-btn").click(function(){e("#reward").fadeIn(150),e("#mask").fadeIn(150)}),e("#reward .close, #mask").click(function(){e("#mask").fadeOut(100),e("#reward").fadeOut(100)}),1==sessionStorage.getItem("darkmode")?(e("body").addClass("darkmode"),e("#todark i").removeClass("ri-moon-line").addClass("ri-sun-line")):(e("body").removeClass("darkmode"),e("#todark i").removeClass("ri-sun-line").addClass("ri-moon-line")),e("#todark").click(function(){1==sessionStorage.getItem("darkmode")?(e("body").removeClass("darkmode"),e("#todark i").removeClass("ri-sun-line").addClass("ri-moon-line"),sessionStorage.removeItem("darkmode")):(e("body").addClass("darkmode"),e("#todark i").removeClass("ri-moon-line").addClass("ri-sun-line"),sessionStorage.setItem("darkmode",1))});console.log("%c%s%c%s%c%s","background-color: #49b1f5; color: #fff; padding: 8px; font-size: 14px;","主题不错⭐star 支持一下 ->","background-color: #ffbca2; padding: 8px; font-size: 14px;","https://github.com/Shen-Yu/hexo-theme-ayer","background-color: #eaf8ff;","\n\n _ __ _______ _____ \n / \\ \\ \\ / / ____| _ \\ \n / _ \\ \\ V /| _| | |_) | \n / ___ \\ | | | |___| _ < \n /_/ \\_\\ _| |_____|_| \\__\\ \n")}(jQuery),function(e){"use strict";!function(o){var a=window,n=document,t=e,r="".concat("https:"===n.location.protocol?"https://":"http://","sdk.51.la/js-sdk-pro.min.js"),s=n.createElement("script"),c=n.getElementsByTagName("script")[0];s.type="text/javascript",s.setAttribute("charset","UTF-8"),s.async=!0,s.src=r,s.id="LA_COLLECT",t.d=s;var i=function(){a.LA.ids.push(t)};a.LA?a.LA.ids&&i():(a.LA=e,a.LA.ids=[],i()),c.parentNode.insertBefore(s,c)}()}({id:"JGjrOr2rebvP6q2a",ck:"JGjrOr2rebvP6q2a"});
},{}],"BNiz":[function(require,module,exports) {
function e(e,t){e=e.replace(/<%-sUrl%>/g,encodeURIComponent(t.sUrl)).replace(/<%-sTitle%>/g,encodeURIComponent(t.sTitle)).replace(/<%-sDesc%>/g,encodeURIComponent(t.sDesc)).replace(/<%-sPic%>/g,encodeURIComponent(t.sPic));window.open(e)}function t(){$(".wx-share-modal").addClass("in ready"),$("#share-mask").show()}function s(){$(".wx-share-modal").removeClass("in ready"),$("#share-mask").hide()}function o(s,o){"weibo"===s?e("http://service.weibo.com/share/share.php?url=<%-sUrl%>&title=<%-sTitle%>&pic=<%-sPic%>",o):"qq"===s?e("http://connect.qq.com/widget/shareqq/index.html?url=<%-sUrl%>&title=<%-sTitle%>&source=<%-sDesc%>",o):"douban"===s?e("https://www.douban.com/share/service?image=<%-sPic%>&href=<%-sUrl%>&name=<%-sTitle%>&text=<%-sDesc%>",o):"qzone"===s?e("http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=<%-sUrl%>&title=<%-sTitle%>&pics=<%-sPic%>&summary=<%-sDesc%>",o):"facebook"===s?e("https://www.facebook.com/sharer/sharer.php?u=<%-sUrl%>",o):"twitter"===s?e("https://twitter.com/intent/tweet?text=<%-sTitle%>&url=<%-sUrl%>",o):"google"===s?e("https://plus.google.com/share?url=<%-sUrl%>",o):"weixin"===s&&t()}var r=function(){var e=document.querySelectorAll(".share-sns");if(e&&0!==e.length){var t=window.location.href,r=document.querySelector("title").innerHTML,c=document.querySelectorAll(".article-entry img").length?document.querySelector(".article-entry img").getAttribute("src"):"";""===c||/^(http:|https:)?\/\//.test(c)||(c=window.location.origin+c),e.forEach(function(e){e.onclick=function(s){o(e.getAttribute("data-type"),{sUrl:t,sPic:c,sTitle:r,sDesc:r})}}),document.querySelector("#mask").onclick=s,document.querySelector(".modal-close").onclick=s}};r();
},{}],"epB2":[function(require,module,exports) {
"use strict";require("./css/style.styl"),require("./js/ayer"),require("./js/share");
},{"./css/style.styl":"MiQR","./js/ayer":"jSg4","./js/share":"BNiz"}]},{},["epB2"], null)