From 0f757943f11ca553f3bc14caa7979117ff94e4b7 Mon Sep 17 00:00:00 2001
From: Elmore Cheng <9206414+ike-c@users.noreply.github.com>
Date: Wed, 10 Jul 2019 23:19:24 +0800
Subject: [PATCH] Dark mode (#106)
* update some text
* update front-end source
* fix incorrect modification of article img
---
README.md | 10 ++----
README_zh-Hans.md | 10 ++----
_config.yml | 39 +++++++++++++--------
lib/configSchema.json | 14 ++++++++
lib/filter/post.js | 14 ++++----
lib/generator/theme.js | 4 +--
package.json | 2 +-
source/_resources.json | 2 +-
source/_theme.js | 2 +-
source/main.12166a654353e0a82d68.zh-Hant.js | 1 -
source/main.1c6c0dbb8fec445fc42a.ja.js | 1 +
source/main.3a9ad2f49fd8634e7fa0.zh-Hans.js | 1 -
source/main.7c07007d02c08b471cdf.en.js | 1 +
source/main.9d756d57e227aba70f33.zh-Hant.js | 1 +
source/main.c0d55e7428280128d494.en.js | 1 -
source/main.d55b8d92fb07c381cd17.zh-Hans.js | 1 +
source/main.e01c85758301d20058a7.ja.js | 1 -
source/styles.6413cb5fd384752f1714.css | 24 -------------
source/styles.b052e0427aa70b7d0587.css | 24 +++++++++++++
test/scripts/filters/post.js | 24 ++++++-------
20 files changed, 93 insertions(+), 84 deletions(-)
delete mode 100644 source/main.12166a654353e0a82d68.zh-Hant.js
create mode 100644 source/main.1c6c0dbb8fec445fc42a.ja.js
delete mode 100644 source/main.3a9ad2f49fd8634e7fa0.zh-Hans.js
create mode 100644 source/main.7c07007d02c08b471cdf.en.js
create mode 100644 source/main.9d756d57e227aba70f33.zh-Hant.js
delete mode 100644 source/main.c0d55e7428280128d494.en.js
create mode 100644 source/main.d55b8d92fb07c381cd17.zh-Hans.js
delete mode 100644 source/main.e01c85758301d20058a7.ja.js
delete mode 100644 source/styles.6413cb5fd384752f1714.css
create mode 100644 source/styles.b052e0427aa70b7d0587.css
diff --git a/README.md b/README.md
index d920d93..04348a1 100644
--- a/README.md
+++ b/README.md
@@ -22,13 +22,9 @@
## Features
- SPA built with [angular]
-- Custom accent color, background, fonts
+- Custom accent color, background, fonts, dark mode
- Custom code syntax highlighting
-- Sub-page routes
-- Internationalization (i18n)
- - :cn: Simplified Chinese & Traditional Chinese
- - :us: English
- - :jp: Japanese
+- Sub-page
- Search
- Comments
- [Disqus]
@@ -47,10 +43,8 @@
- [manifest.json]
- Offline support ([workbox])
- SEO
- - Canonical link
- Built-in `sitemap.xml`
- [Structured Data]
- - Open Graph Meta Tags
## Quick start
diff --git a/README_zh-Hans.md b/README_zh-Hans.md
index 81563a4..d71e7ac 100644
--- a/README_zh-Hans.md
+++ b/README_zh-Hans.md
@@ -21,13 +21,9 @@
## 特色
- SPA built with [angular]
-- 自定义色调、背景、字体
+- 自定义色调、背景、字体、暗色主题
- 自定义代码语法高亮
-- 可嵌套的 page 路由
-- 多语言 (i18n)
- - :cn: Simplified Chinese & Traditional Chinese
- - :us: English
- - :jp: Japanese
+- 可嵌套 page 路由
- 评论
- [Disqus]
- [LiveRe]
@@ -46,10 +42,8 @@
- [manifest.json]
- 离线支持 ([workbox])
- SEO
- - canonical link
- 内置 `sitemap.xml`
- [Structured Data]
- - Open Graph Meta Tags
## 开始使用
diff --git a/_config.yml b/_config.yml
index 7ed2ee4..a7c6634 100644
--- a/_config.yml
+++ b/_config.yml
@@ -19,6 +19,10 @@ appearance:
# - 'url(//www.toptal.com/designers/subtlepatterns/patterns/confectionary.png) #f5f7fa'
# - '#2a2b33'
+ # You can also set only the background when the sidebar is open.
+ # background:
+ # - '#2a2b33'
+
# Maximum width of content
# content_width: 640
@@ -48,9 +52,9 @@ appearance:
# Code and code block
code: Inconsolata, monospace
- # Code Highlight theme
+ # Code Syntax Highlighting
# Uses an architecture called "base16" (https://github.com/chriskempson/base16),
- # the default highlight theme is a customized Atelier Dune Light theme,
+ # the default theme is a customized Atelier Dune Light theme,
# please feel free to explore more.
highlight:
@@ -78,29 +82,38 @@ appearance:
# '#8abeb7', '#81a2be', '#b294bb', '#a3685a'
# ]
+ # Mode
+ # Specify `dark` to apply a built-in dark mode,
+ # or fully custom colors: `[foreground color, card background, border-color]`
+ # Note, the middle value can be any valid css background value
+ # `mode: dark` is equivalent to `mode: ['#d8d8d8', '#252525', '#444']`
+ mode:
+
# Sidebar profile
profile:
- # `email` will fallback to `hexo.config.email` if not specified
+ # `email` is used for gravatar(https://en.gravatar.com),
+ # fallback to `hexo.config.email` if not specified
email:
- # Avatar URL, email address will be used for gravatar(https://en.gravatar.com) avatar if not specified.
+ # You can set Avatar URL directly
# avatar:
bio: Awesome guy.
-# Sidebar menu
+# Sidebar navigation links
menu:
Home: /
# About: /about
# Links: /links
# Github: https://github.com/username
-# Sidebar social media
+# Social media URL
# Try to sort by changing the order of the keys
sns:
# `email` will fallback to `profile.email` if not specified
email:
- # `feed` will fallback to `hexo.config.feed.path` if not specified
+ # If you use hexo-generator-feed, `sns.feed` can be left blank
+ # and the theme will try to get `hexo.config.feed.path`.
feed:
github:
twitter:
@@ -118,10 +131,10 @@ sns:
weibo:
qq:
-# Sidebar footer
+# Sidebar footer copyright info
footer:
- # Default to `©year • author`, set to false to disable.
- # copyright:
+ # Set to false to hide.
+ # copyright: '© 2019 • John Doe'
# Set to false to hide Hexo link.
# powered: false
@@ -154,13 +167,9 @@ page:
post:
# per_page: 10
- # Display Table of content, default to `true`
+ # The following settings are the same as the page
# toc: false
-
- # Display reward, default to `false`
# reward: true
-
- # Display copyright notice, default to `false`
# copyright: true
# Archive
diff --git a/lib/configSchema.json b/lib/configSchema.json
index 23102c5..1ef874a 100644
--- a/lib/configSchema.json
+++ b/lib/configSchema.json
@@ -49,6 +49,20 @@
"type": "array",
"items": { "$ref": "#/definitions/color" },
"minItems": 15
+ },
+ "mode": {
+ "oneOf": [
+ { "enum": ["dark"] },
+ {
+ "type": "array",
+ "items": [
+ { "$ref": "#/definitions/color" },
+ { "type": "string" },
+ { "$ref": "#/definitions/color" }
+ ],
+ "minItems": 3
+ }
+ ]
}
},
"required": ["accent_color"],
diff --git a/lib/filter/post.js b/lib/filter/post.js
index 2b6aea8..4ae6a84 100644
--- a/lib/filter/post.js
+++ b/lib/filter/post.js
@@ -2,7 +2,6 @@ const cheerio = require('cheerio');
const { date } = require('hexo/lib/plugins/helper/date');
const bounded = '
';
const table = '';
-const img = '';
const { snippet, getPagePath, parseToc, isObject, isEmptyObject, localeId, pick } = require('../utils');
// cache
@@ -112,18 +111,17 @@ module.exports = function (data) {
$('img').each(function () {
const $img = $(this);
const src = $img.attr('src');
- const $parents = $img.parents();
// assets & post_asset_folder
src && $img.attr('src', uriReplacer(src, assetPath));
- // definitely a block img
- if (!$parents.length || !$parents.eq($parents.length - 1).text().trim()) {
+ if (
+ this.root // {% img %}
+ || (this.parent.tagName === 'p' && !$(this.parent).text().trim()) // \n![]()\n
+ || (this.parent.tagName === 'figure') //
+ ) {
// mark as zoomable
- $img.attr('data-zoomable', '');
-
- // wrap img to behave as a block
- (!$parents.length ? $img : $parents.eq($parents.length - 1)).wrap(img);
+ $img.addClass('article-img');
}
});
diff --git a/lib/generator/theme.js b/lib/generator/theme.js
index fb8294b..d9768c9 100644
--- a/lib/generator/theme.js
+++ b/lib/generator/theme.js
@@ -1,9 +1,9 @@
const { md5 } = require('../utils');
-const generateTheme = require('../../source/_theme.js').default;
+const { $appearance } = require('../../source/_theme.js');
module.exports = function () {
const theme = this.theme.config;
- const data = generateTheme(theme.appearance);
+ const data = $appearance(theme.appearance);
theme.runtime.themeHash = md5(data);
diff --git a/package.json b/package.json
index 97bb990..b213a94 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "hexo-theme-inside",
- "version": "2.3.0-beta.3",
+ "version": "2.3.0-rc.0",
"description": "❤️ SPA, flat and clean theme for Hexo.",
"scripts": {
"test": "jasmine --config=test/jasmine.json"
diff --git a/source/_resources.json b/source/_resources.json
index 9bb3694..c99a2e0 100644
--- a/source/_resources.json
+++ b/source/_resources.json
@@ -1 +1 @@
-{"styles":["styles.6413cb5fd384752f1714.css"],"scripts":["runtime.9c308a63d02029c20228.js","polyfills-es5.613d1909ec381c0aefb7.js","polyfills.23aa31104b29f3163090.js"],"locales":{"en":"main.c0d55e7428280128d494.en.js","zh-Hant":"main.12166a654353e0a82d68.zh-Hant.js","zh-Hans":"main.3a9ad2f49fd8634e7fa0.zh-Hans.js","ja":"main.e01c85758301d20058a7.ja.js"}}
+{"styles":["styles.b052e0427aa70b7d0587.css"],"scripts":["runtime.9c308a63d02029c20228.js","polyfills-es5.613d1909ec381c0aefb7.js","polyfills.23aa31104b29f3163090.js"],"locales":{"ja":"main.1c6c0dbb8fec445fc42a.ja.js","en":"main.7c07007d02c08b471cdf.en.js","zh-Hant":"main.9d756d57e227aba70f33.zh-Hant.js","zh-Hans":"main.d55b8d92fb07c381cd17.zh-Hans.js"}}
diff --git a/source/_theme.js b/source/_theme.js
index eb660ae..d287bbf 100644
--- a/source/_theme.js
+++ b/source/_theme.js
@@ -1 +1 @@
-module.exports=function(t){var o={};function r(e){if(o[e])return o[e].exports;var i=o[e]={i:e,l:!1,exports:{}};return t[e].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=o,r.d=function(t,o,e){r.o(t,o)||Object.defineProperty(t,o,{enumerable:!0,get:e})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,o){if(1&o&&(t=r(t)),8&o)return t;if(4&o&&"object"==typeof t&&t&&t.__esModule)return t;var e=Object.create(null);if(r.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:t}),2&o&&"string"!=typeof t)for(var i in t)r.d(e,i,function(o){return t[o]}.bind(null,i));return e},r.n=function(t){var o=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(o,"a",o),o},r.o=function(t,o){return Object.prototype.hasOwnProperty.call(t,o)},r.p="",r(r.s=1)}([function(t,o,r){"use strict";t.exports=function(t){var o=[];return o.toString=function(){return this.map(function(o){var r=function(t,o){var r=t[1]||"",e=t[3];if(!e)return r;if(o&&"function"==typeof btoa){var i=(a=e,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(a))))+" */"),n=e.sources.map(function(t){return"/*# sourceURL="+e.sourceRoot+t+" */"});return[r].concat(n).concat([i]).join("\n")}var a;return[r].join("\n")}(o,t);return o[2]?"@media "+o[2]+"{"+r+"}":r}).join("")},o.i=function(t,r){"string"==typeof t&&(t=[[null,t,""]]);for(var e={},i=0;i640&&o.push(a.content_width.replace(/CONTENT_WIDTH/g,t.content_width));var N=[];if(t.highlight)for(var x=0;x<15;x++){var k=t.highlight[x];if(!k||!i.test(k)){N=l;break}N.push(k.toLowerCase())}else N=l;return o.push(b(N,a.highlight.base)),p(N[0])?p(N[1])?o.push(a.highlight.bordered_mix):o.push(b(N,a.highlight.bordered)):(p(N[1])&&(N[1]=N[0]),o.push(b(N,a.highlight.flat))),o.join("")}},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".M2M5Yj{max-width:CONTENT_WIDTHpx}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,"::-moz-selection{background-color:COLOR;color:#fff}::selection{background-color:COLOR;color:#fff}::-webkit-scrollbar-thumb{background-color:COLOR_02}::-webkit-scrollbar-thumb:hover{background-color:COLOR_08}code{color:COLOR}.article-table tr:nth-child(2n),code{background-color:COLOR_005}@media (max-width:676px){.ODliMm{background:INSIDE}}.MDIwY2:after,.NDRhMD:active:before,.NDRhMD:focus:before,.NDRhMD:hover:before,.NWU0Mm:before,.ZDEzNm,.ZGI2Yj:active:after,.ZGI2Yj:focus:after,.ZGI2Yj:hover:after,.ZTc2YW:active,.ZTc2YW:focus,.ZTc2YW:hover{background-color:COLOR}.ZTY1Nz{background-color:COLOR_01}.NzBlYj{background-color:COLOR_005}.MWNmNz:active,.MWNmNz:focus,.MWNmNz:hover,.MzExYm{color:COLOR}.ZjMzMT{border-color:COLOR}.NDljY2{border-color:COLOR_04}.MTE0NG a:hover{border-color:COLOR;color:COLOR}.N2QzMz{stroke:COLOR}.NzYzYj{fill:COLOR}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".NTRkMD,body{background:BACKGROUND}@media (max-width:676px){.ZWQxMj{background:BACKGROUND}}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,"body{font-family:FONT_BASE}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".YjBlMT{font-family:FONT_LOGO}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".MWZhMW{font-family:FONT_MENU}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".NmViMj,h1,h2,h3,h4,h5,h6{font-family:FONT_HEADING}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".N2U4Zj,.YThjOW:after{font-family:FONT_LABEL}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".highlight figcaption,code,pre{font-family:FONT_CODE}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".highlight{border-radius:3px;color:base05}.highlight .gutter{color:base03}.highlight figcaption{color:base04}.highlight figcaption a,.highlight figcaption a:hover{color:base0C}.highlight ::-webkit-scrollbar-thumb{background-color:base01}.highlight ::-webkit-scrollbar-thumb:hover{background-color:base02}.highlight ::-moz-selection{background-color:base02;color:inherit}.highlight ::selection{background-color:base02;color:inherit}.highlight .comment,.highlight .quote{color:base03}.highlight .deletion,.highlight .name,.highlight .regexp,.highlight .selector-class,.highlight .selector-id,.highlight .tag,.highlight .template-variable,.highlight .variable{color:base08}.highlight .built_in,.highlight .builtin-name,.highlight .link,.highlight .literal,.highlight .meta,.highlight .number,.highlight .params,.highlight .type{color:base09}.highlight .attribute{color:base0A}.highlight .addition,.highlight .bullet,.highlight .string,.highlight .symbol{color:base0B}.highlight .section,.highlight .title{color:base0D}.highlight .keyword,.highlight .selector-tag{color:base0E}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".highlight{background-color:base00}.highlight figcaption{border-radius:3px 3px 0 0;background-color:base01}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".highlight{border:1px solid base01}.highlight figcaption{background-color:base01}",""])},function(t,o,r){(t.exports=r(0)(!1)).push([t.i,".highlight{border:1px solid #eee}.highlight figcaption{border-bottom:1px solid #eee}",""])}]);
\ No newline at end of file
+!function(o,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var e=t();for(var r in e)("object"==typeof exports?exports:o)[r]=e[r]}}(this.__inside__||(this.__inside__={}),function(){return function(o){var t={};function e(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return o[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=o,e.c=t,e.d=function(o,t,r){e.o(o,t)||Object.defineProperty(o,t,{enumerable:!0,get:r})},e.r=function(o){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})},e.t=function(o,t){if(1&t&&(o=e(o)),8&t)return o;if(4&t&&"object"==typeof o&&o&&o.__esModule)return o;var r=Object.create(null);if(e.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:o}),2&t&&"string"!=typeof o)for(var i in o)e.d(r,i,function(t){return o[t]}.bind(null,i));return r},e.n=function(o){var t=o&&o.__esModule?function(){return o.default}:function(){return o};return e.d(t,"a",t),t},e.o=function(o,t){return Object.prototype.hasOwnProperty.call(o,t)},e.p="",e(e.s=1)}([function(o,t,e){"use strict";o.exports=function(o){var t=[];return t.toString=function(){return this.map(function(t){var e=function(o,t){var e=o[1]||"",r=o[3];if(!r)return e;if(t&&"function"==typeof btoa){var i=(h=r,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(h))))+" */"),n=r.sources.map(function(o){return"/*# sourceURL="+r.sourceRoot+o+" */"});return[e].concat(n).concat([i]).join("\n")}var h;return[e].join("\n")}(t,o);return t[2]?"@media "+t[2]+"{"+e+"}":e}).join("")},t.i=function(o,e){"string"==typeof o&&(o=[[null,o,""]]);for(var r={},i=0;i640&&(e.content_width=a),Array.isArray(c)?(e.highlight=c.map(function(o){return g(o).hex}).filter(function(o){return o}),e.highlight.length<16&&(e.highlight=t.highlight)):e.highlight=t.highlight,e}(o,"dark"===o.mode?c:a),e=[];if(e.push(h.mode.replace(/MODE_FG/g,t.mode[0]).replace(/MODE_CARD_BG/g,t.mode[1]).replace(/MODE_BORDER/g,t.mode[2])),t.font){var r=t.font;r.base&&e.push(h.font.base.replace(/FONT_BASE/g,r.base)),r.logo&&e.push(h.font.logo.replace(/FONT_LOGO/g,r.logo)),r.menu&&e.push(h.font.menu.replace(/FONT_MENU/g,r.menu)),r.heading&&e.push(h.font.heading.replace(/FONT_HEADING/g,r.heading)),r.label&&e.push(h.font.label.replace(/FONT_LABEL/g,r.label)),r.code&&e.push(h.font.code.replace(/FONT_CODE/g,r.code))}var i=g(t.accent_color);return e.push(h.background.replace(/BACKGROUND/g,t.background[0]),h.accent_color.replace(/COLOR_005/g,"rgba("+i.r+","+i.g+","+i.b+",.05)").replace(/COLOR_01/g,"rgba("+i.r+","+i.g+","+i.b+",.1)").replace(/COLOR_02/g,"rgba("+i.r+","+i.g+","+i.b+",.2)").replace(/COLOR_04/g,"rgba("+i.r+","+i.g+","+i.b+",.4)").replace(/COLOR_08/g,"rgba("+i.r+","+i.g+","+i.b+",.8)").replace(/COLOR/g,i.hex).replace(/INSIDE/g,l(t.background[1]))),t.content_width&&e.push(h.content_width.replace(/CONTENT_WIDTH/g,t.content_width)),e.push(d(h.highlight.base,t.highlight)),s(t.mode[1],t.highlight[0])||s(t.highlight[15],t.highlight[0])?s(t.mode[1],t.highlight[1])||s(t.highlight[15],t.highlight[1])?e.push(h.highlight.bordered_mix):e.push(d(h.highlight.bordered,t.highlight)):(s(t.mode[1],t.highlight[1])&&(t.highlight[1]=t.highlight[0]),e.push(d(h.highlight.flat,t.highlight))),e.join("")}}},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,"body{color:MODE_FG}.ODJkZm,.OTljY2:after{background:MODE_CARD_BG}.MzRmOW{border-color:MODE_BORDER}.ZjkxNT:after{box-shadow:0 0 0 1px MODE_BORDER}.article-bounded ::-webkit-scrollbar-thumb{background-color:MODE_BORDER}.article-bounded ::-webkit-scrollbar-thumb:hover{background-color:MODE_FG}.article-bounded>div{box-shadow:inset 0 0 0 1px MODE_BORDER}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".M2M5Yj{max-width:CONTENT_WIDTHpx}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,"::-moz-selection{background-color:COLOR;color:#fff}::selection{background-color:COLOR;color:#fff}::-webkit-scrollbar-thumb{background-color:COLOR_02}::-webkit-scrollbar-thumb:hover{background-color:COLOR_08}code{color:COLOR}.article-table tr:nth-child(2n),code{background-color:COLOR_005}@media (max-width:676px){.ODliMm{background:INSIDE}}.MDIwY2:after,.NDRhMD:active:before,.NDRhMD:focus:before,.NDRhMD:hover:before,.NWU0Mm:before,.ZDEzNm,.ZGI2Yj:active:after,.ZGI2Yj:focus:after,.ZGI2Yj:hover:after,.ZTc2YW:active,.ZTc2YW:focus,.ZTc2YW:hover{background-color:COLOR}.ZTY1Nz{background-color:COLOR_01}.NzBlYj{background-color:COLOR_005}.MWNmNz:active,.MWNmNz:focus,.MWNmNz:hover,.MzExYm{color:COLOR}.ZjMzMT{border-color:COLOR}.NDljY2{border-color:COLOR_04}.MTE0NG a:hover{border-color:COLOR;color:COLOR}.N2QzMz{stroke:COLOR}.NzYzYj{fill:COLOR}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".MmYyMT:after,.NTRkMD,body{background:BACKGROUND}@media (max-width:676px){.ZWQxMj{background:BACKGROUND}}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,"body{font-family:FONT_BASE}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".YjBlMT{font-family:FONT_LOGO}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".MWZhMW{font-family:FONT_MENU}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".NmViMj,h1,h2,h3,h4,h5,h6{font-family:FONT_HEADING}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".N2U4Zj,.YThjOW:after{font-family:FONT_LABEL}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".highlight figcaption,code,pre{font-family:FONT_CODE}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".highlight{border-radius:3px;color:base05}.highlight .gutter{color:base03}.highlight figcaption{color:base04}.highlight figcaption a,.highlight figcaption a:hover{color:base0C}.highlight ::-webkit-scrollbar-thumb{background-color:base01}.highlight ::-webkit-scrollbar-thumb:hover{background-color:base02}.highlight ::-moz-selection{background-color:base02;color:inherit}.highlight ::selection{background-color:base02;color:inherit}.highlight .comment,.highlight .quote{color:base03}.highlight .deletion,.highlight .name,.highlight .regexp,.highlight .selector-class,.highlight .selector-id,.highlight .tag,.highlight .template-variable,.highlight .variable{color:base08}.highlight .built_in,.highlight .builtin-name,.highlight .link,.highlight .literal,.highlight .meta,.highlight .number,.highlight .params,.highlight .type{color:base09}.highlight .attribute{color:base0A}.highlight .addition,.highlight .bullet,.highlight .string,.highlight .symbol{color:base0B}.highlight .section,.highlight .title{color:base0D}.highlight .keyword,.highlight .selector-tag{color:base0E}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".highlight{background-color:base00}.highlight figcaption{border-radius:3px 3px 0 0;background-color:base01}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".highlight{border:1px solid base01}.highlight figcaption{background-color:base01}",""])},function(o,t,e){(o.exports=e(0)(!1)).push([o.i,".highlight{border:1px solid;border-color:inherit}.highlight figcaption{border-bottom:1px solid;border-color:inherit}",""])}])});
\ No newline at end of file
diff --git a/source/main.12166a654353e0a82d68.zh-Hant.js b/source/main.12166a654353e0a82d68.zh-Hant.js
deleted file mode 100644
index 7491d9a..0000000
--- a/source/main.12166a654353e0a82d68.zh-Hant.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},crnd:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="crnd"},u6yn:function(t,e,n){var r,i,o;!function(l){if("object"==typeof t.exports){var u=l(0,e);void 0!==u&&(t.exports=u)}else i=[n,e],void 0===(o="function"==typeof(r=l)?r.apply(e,i):r)||(t.exports=o)}(function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=void 0;e.default=["zh-Hant",[["\u4e0a\u5348","\u4e0b\u5348"],n,n],n,[["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"]],n,[["1","2","3","4","5","6","7","8","9","10","11","12"],["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],n],n,[["\u897f\u5143\u524d","\u897f\u5143"],n,n],0,[6,0],["y/M/d","y\u5e74M\u6708d\u65e5",n,"y\u5e74M\u6708d\u65e5 EEEE"],["ah:mm","ah:mm:ss","ah:mm:ss [z]","ah:mm:ss [zzzz]"],["{1} {0}",n,n,n],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","\u975e\u6578\u503c",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","\u65b0\u53f0\u5e63",{AUD:["AU$","$"],KRW:["\uffe6","\u20a9"],RON:[n,"L"],TWD:["$"],USD:["US$","$"]},function(t){return 5}]})},zUnb:function(t,e,n){"use strict";n.r(e);var r=n("u6yn"),i=n.n(r),o=function(t,e){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function l(t,e){function n(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var u=function(){return(u=Object.assign||function(t){for(var e,n=1,r=arguments.length;n=0;u--)(i=t[u])&&(l=(o<3?i(l):o>3?i(e,n,l):i(e,n))||l);return o>3&&l&&Object.defineProperty(e,n,l),l}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function c(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function f(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),l=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)l.push(r.value)}catch(u){i={error:u}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return l}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(Y);function rt(t){return t}function it(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),tt(rt,t)}function ot(t,e){return e?J(t,e):new M(V(t))}function lt(){return function(t){return t.lift(new ut(t))}}var ut=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new st(t,n),i=e.subscribe(r);return r.closed||(r.connection=n.connect()),i},t}(),st=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return l(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._refCount;if(e<=0)this.connection=null;else if(t._refCount=e-1,e>1)this.connection=null;else{var n=this.connection,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(x),at=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return l(e,t),e.prototype._subscribe=function(t){return this.getSubject().subscribe(t)},e.prototype.getSubject=function(){var t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject},e.prototype.connect=function(){var t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new v).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed&&(this._connection=null,t=v.EMPTY)),t},e.prototype.refCount=function(){return lt()(this)},e}(M).prototype,ct={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:at._subscribe},_isComplete:{value:at._isComplete,writable:!0},getSubject:{value:at.getSubject},connect:{value:at.connect},refCount:{value:at.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return l(e,t),e.prototype._error=function(e){this._unsubscribe(),t.prototype._error.call(this,e)},e.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}},e}(j);function pt(){return new L}var ht="__parameters__",dt="__prop__metadata__";function yt(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var o=[];for(var l in e)if(e.hasOwnProperty(l)){var u=e[l];o.push(l+":"+("string"==typeof u?JSON.stringify(u):kt(u)))}i="{"+o.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+i+"]: "+t.replace(Yt,"\n ")}function Xt(t,e){return new Error(Jt(t,e,"StaticInjectorError"))}var te="ngDebugContext",ee="ngOriginalError",ne="ngErrorLogger",re=new Lt("AnalyzeForEntryComponents"),ie=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),oe=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(At)}();function le(t){return t[te]}function ue(t){return t[ee]}function se(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='