From 78b7aca90447176ce03b1f87fc67a860bc142a72 Mon Sep 17 00:00:00 2001
From: ikeq <9206414+ikeq@users.noreply.github.com>
Date: Sat, 2 Nov 2019 17:17:06 +0800
Subject: [PATCH] update to hexo@4.0 (#166)
* Update .npmignore
* Update dependency uglify-js to v3.6.3 (#158)
* Update dependency uglify-js to v3.6.4 (#162)
* upgrade to hexo@4.0
* Update dependency uglify-js to v3.6.5 (#163)
* drop angular i18n
* update badage
* Update dependency uglify-js to v3.6.7 (#164)
* support string as content_width
---
.npmignore | 1 -
README.md | 6 +-
README_zh-Hans.md | 6 +-
languages/default.yml | 51 ------------
layout/index.ejs | 30 -------
layout/index.swig | 33 ++++++++
lib/config.js | 3 +-
lib/configSchema.json | 7 +-
lib/filter/post.js | 20 ++++-
lib/generator/entries/archives.js | 78 ++++++++++---------
lib/generator/entries/properties.js | 10 +--
lib/theme-processor/index.js | 3 -
lib/theme-processor/localized-script.js | 17 ----
package.json | 6 +-
scripts/index.js | 1 -
source/_resources.json | 2 +-
source/_theme.js | 2 +-
source/main.0c926d87f8cb6ab96db0.js | 1 +
source/main.5ac6b548dbff945e028b.zh-Hant.js | 1 -
source/main.7773219322474154c9eb.zh-Hans.js | 1 -
source/main.a6ef31dc523c76e5118c.js | 1 -
source/main.c145738ea9113b8ce68e.ja.js | 1 -
source/polyfills.14df1390f4da8e838f05.js | 1 +
source/polyfills.28555e618578fe61f50a.js | 1 -
...c5a.js => runtime.ee6f73bc31187f12810a.js} | 0
source/styles.6d727dade1159bc77736.css | 1 +
source/styles.d1f4718a192abf1f2afd.css | 24 ------
test/scripts/filters/post.js | 2 +-
test/scripts/filters/template.js | 7 +-
29 files changed, 127 insertions(+), 190 deletions(-)
delete mode 100644 languages/default.yml
delete mode 100644 layout/index.ejs
create mode 100644 layout/index.swig
delete mode 100644 lib/theme-processor/index.js
delete mode 100644 lib/theme-processor/localized-script.js
create mode 100644 source/main.0c926d87f8cb6ab96db0.js
delete mode 100644 source/main.5ac6b548dbff945e028b.zh-Hant.js
delete mode 100644 source/main.7773219322474154c9eb.zh-Hans.js
delete mode 100644 source/main.a6ef31dc523c76e5118c.js
delete mode 100644 source/main.c145738ea9113b8ce68e.ja.js
create mode 100644 source/polyfills.14df1390f4da8e838f05.js
delete mode 100644 source/polyfills.28555e618578fe61f50a.js
rename source/{runtime.caef73fae70e33459c5a.js => runtime.ee6f73bc31187f12810a.js} (100%)
create mode 100644 source/styles.6d727dade1159bc77736.css
delete mode 100644 source/styles.d1f4718a192abf1f2afd.css
diff --git a/.npmignore b/.npmignore
index c30a216..9cd73ff 100644
--- a/.npmignore
+++ b/.npmignore
@@ -2,4 +2,3 @@ test/
.travis.yml
.github/
.DS_Store
-renovate.json
diff --git a/README.md b/README.md
index 47735ce..9fc37fb 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,9 @@
# Inside
-[![build-img]][travis] [![release-img]][releases] [![license-img]](LICENSE)
+[![build-img]][travis]
+[![release-img]][releases]
+[![hexo-image]][hexo]
+[![license-img]](LICENSE)
❤️ SPA, flat and clean theme for [Hexo].
@@ -92,3 +95,4 @@ Licensed under [MIT](LICENSE).
[releases]: https://github.com/ikeq/hexo-theme-inside/releases
[travis]: https://travis-ci.org/ikeq/hexo-theme-inside
[documentation]: https://blog.oniuo.com/theme-inside
+[hexo-image]: https://img.shields.io/badge/hexo-%3E%3D%204.0-blue.svg?longCache=true&style=flat-square
diff --git a/README_zh-Hans.md b/README_zh-Hans.md
index ccbda9d..548ba49 100644
--- a/README_zh-Hans.md
+++ b/README_zh-Hans.md
@@ -1,6 +1,9 @@
# Inside
-[![build-img]][travis] [![release-img]][releases] [![license-img]](LICENSE)
+[![build-img]][travis]
+[![release-img]][releases]
+[![license-img]](LICENSE)
+[![hexo-image]][hexo]
❤️ SPA, flat and clean theme for [Hexo].
@@ -91,3 +94,4 @@ Licensed under [MIT](LICENSE).
[releases]: https://github.com/ikeq/hexo-theme-inside/releases
[travis]: https://travis-ci.org/ikeq/hexo-theme-inside
[documentation]: https://blog.oniuo.com/theme-inside
+[hexo-image]: https://img.shields.io/badge/hexo-%3E%3D%204.0-blue.svg?longCache=true&style=flat-square
diff --git a/languages/default.yml b/languages/default.yml
deleted file mode 100644
index 4732bc2..0000000
--- a/languages/default.yml
+++ /dev/null
@@ -1,51 +0,0 @@
-menu:
- archives: Archives
- categories: Categories
- tags: Tags
-
-title:
- archives: Archive
- categories: Category
- tags: Tag
- search: Search
-
-footer:
- powered: Powered by %s
- theme: Theme
-
-reward:
- paypal: Paypal
- wechat: WeChat
- alipay: 支
- bitcoin: Bitcoin
-
-comments:
- load: Load %s
- load_faild: Faild to load %s, click to retry
- livere: Livere
- disqus: Disqus
-
-post:
- copyright:
- author: Author
- link: Link
- license: Copyright
- published: Published
- updated: Updated
-
-page:
- tags:
- zero: No tags
- one: 1 tag in total
- other: "%d tags in total"
-
- notfound:
- direct_failed: Failed to direct to %s
- empty: Nothing here.
-
- search:
- placeholder: Search
- hits:
- zero: No result found for ":query"
- one: 1 result found in :time ms
- other: ":hits results found in :time ms"
diff --git a/layout/index.ejs b/layout/index.ejs
deleted file mode 100644
index b397771..0000000
--- a/layout/index.ejs
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-<%= title %>
-
-
-
-
-<% if (theme.pwa.manifest) { -%>
-
-
-
-<% } -%>
-<%- open_graph({ image: page.thumbnail || theme.profile.avatar }) %>
-<% if (theme.seo.structured_data) { %><%- structured_data(page) %>
-<% } -%>
-<% if (config.feed && config.feed.path) { -%>
-
-<% } -%>
-<%- theme.styles %>
-<%- css('theme.' + theme.runtime.themeHash) %>
-<%- js('config.' + theme.runtime.configHash) %>
-<% if (theme.ga) { %><%- ga(theme.ga) %><% } -%>
-
-
-<%- `<${theme.runtime.selector}>${theme.runtime.selector}>` %>
-<%- theme.scripts %>
-
-
diff --git a/layout/index.swig b/layout/index.swig
new file mode 100644
index 0000000..cc676b5
--- /dev/null
+++ b/layout/index.swig
@@ -0,0 +1,33 @@
+
+
+
+
+{{ title }}
+
+
+
+
+{% if theme.pwa.manifest %}
+
+
+
+{% endif %}
+{{ open_graph({ image: page.thumbnail || theme.profile.avatar }) | safe }}
+{% if theme.seo.structured_data %}
+{{ structured_data(page) | safe }}
+{% endif %}
+{% if config.feed and config.feed.path %}
+
+{% endif %}
+{{ theme.styles | safe }}
+{{ css('theme.' + theme.runtime.themeHash) | safe }}
+{{ js('config.' + theme.runtime.configHash) | safe }}
+{% if theme.ga %}
+{{ ga(theme.ga) | safe }}
+{% endif %}
+
+
+<{{ theme.runtime.selector }}>{{ theme.runtime.selector }}>
+{{ theme.scripts | safe }}
+
+
diff --git a/lib/config.js b/lib/config.js
index 03b6fb6..37b9d14 100644
--- a/lib/config.js
+++ b/lib/config.js
@@ -64,8 +64,7 @@ module.exports = function (hexo) {
// plugins comes first to ensure that their libs is ready when executing dynamic code.
...(result.plugins || []),
...resources.styles,
- ...resources.scripts,
- resources.locales[site.language]
+ ...resources.scripts
];
if (theme.appearance.font && theme.appearance.font.url)
diff --git a/lib/configSchema.json b/lib/configSchema.json
index 247bca6..d84a017 100644
--- a/lib/configSchema.json
+++ b/lib/configSchema.json
@@ -30,7 +30,12 @@
"background": { "type": "string" },
"sidebar_background": { "type": "string" },
"card_background": { "type": "string" },
- "content_width": { "type": "number", "minimum": 320 },
+ "content_width": {
+ "oneOf": [
+ { "type": "number" },
+ { "type": "string" }
+ ]
+ },
"font": {
"type": "object",
"properties": {
diff --git a/lib/filter/post.js b/lib/filter/post.js
index 067d28f..8764cae 100644
--- a/lib/filter/post.js
+++ b/lib/filter/post.js
@@ -3,6 +3,11 @@ const { date } = require('hexo/lib/plugins/helper/date');
const bounded = '';
const table = '';
const { snippet, parseToc, isObject, isEmptyObject, localeId, pick, trimHtml } = require('../utils');
+const date_formats = [
+ 'll', // Sep 4, 1986
+ 'L', // 09/04/1986
+ 'MM-DD' // 06-17
+]
// cache
let hasComments, hasReward, hasToc, copyright, dateHelper, uriReplacer;
@@ -36,6 +41,12 @@ module.exports = function (data) {
(s, p) => /\//.test(s) ? s : `/${p}/${s}` :
s => s;
+ // pre format date for i18n
+ data.date_formatted = date_formats.reduce((ret, format) => {
+ ret[format] = dateHelper(data.date, format)
+ return ret
+ }, {})
+
// relative link
data.link = trimHtml(data.path);
// permalink link
@@ -112,8 +123,13 @@ module.exports = function (data) {
const $img = $(this);
const src = $img.attr('src');
- // assets & post_asset_folder
- src && $img.attr('src', uriReplacer(src, assetPath));
+ if (src) {
+ // assets & post_asset_folder
+ $img.attr('src', uriReplacer(src, assetPath));
+
+ // native lazyload
+ // $img.attr('loading', 'lazy')
+ }
if (
this.root // {% img %}
diff --git a/lib/generator/entries/archives.js b/lib/generator/entries/archives.js
index cc45b17..49c9bad 100644
--- a/lib/generator/entries/archives.js
+++ b/lib/generator/entries/archives.js
@@ -1,10 +1,12 @@
const { flattenDeep } = require('lodash');
-const { pick } = require('../../utils');
+const { date } = require('hexo/lib/plugins/helper/date');
+const { pick, localeId } = require('../../utils');
const { archive: archiveProps } = require('./properties');
-module.exports = function ({ theme, locals, helpers }) {
+module.exports = function ({ site, theme, locals, helpers }) {
const posts = locals.posts.map(pick(archiveProps));
const config = theme.archive;
+ const dateHelper = date.bind({ page: { lang: localeId(site.language, true) }, config })
if (!posts.length) return [];
@@ -14,49 +16,49 @@ module.exports = function ({ theme, locals, helpers }) {
{ type: 'html', extend: { type: 'archives' } },
])
);
-}
-/**
- * Classify posts with `year` and `month`
- *
- * @param {object} data
- * @returns {data}
- */
-function classify(data) {
- const posts = data.data;
+ /**
+ * Classify posts with `year` and `month`
+ *
+ * @param {object} data
+ * @returns {data}
+ */
+ function classify(data) {
+ const posts = data.data;
- if (!posts.length) return [];
+ if (!posts.length) return [];
- const desc = (a, b) => parseInt(a) < parseInt(b) ? 1 : -1;
- const cfyPosts = {};
+ const desc = (a, b) => parseInt(a) < parseInt(b) ? 1 : -1;
+ const cfyPosts = {};
- posts.forEach(post => {
- const date = post.date.clone(),
- year = date.year(),
- month = date.month() + 1;
+ posts.forEach(post => {
+ const date = post.date.clone(),
+ year = date.year(),
+ month = date.month() + 1;
- if (cfyPosts[year]) {
- if (cfyPosts[year][month]) cfyPosts[year][month].push(post)
- else cfyPosts[year][month] = [post]
- } else {
- cfyPosts[year] = {
- [month]: [post]
+ if (cfyPosts[year]) {
+ if (cfyPosts[year][month]) cfyPosts[year][month].push(post)
+ else cfyPosts[year][month] = [post]
+ } else {
+ cfyPosts[year] = {
+ [month]: [post]
+ }
}
- }
- });
+ });
- data.data = Object.keys(cfyPosts).sort(desc).map(year => {
- return {
- year: year,
- months: Object.keys(cfyPosts[year]).sort(desc).map(month => {
- return {
- month: month,
- entries: cfyPosts[year][month]
- }
- })
- }
- })
+ data.data = Object.keys(cfyPosts).sort(desc).map(year => {
+ return {
+ year: year,
+ months: Object.keys(cfyPosts[year]).sort(desc).map(month => {
+ return {
+ month: dateHelper(month, 'MMM'),
+ entries: cfyPosts[year][month]
+ }
+ })
+ }
+ })
- return data;
+ return data;
+ }
}
diff --git a/lib/generator/entries/properties.js b/lib/generator/entries/properties.js
index 7f79243..fb8f242 100644
--- a/lib/generator/entries/properties.js
+++ b/lib/generator/entries/properties.js
@@ -1,11 +1,11 @@
-const listProps = ['title', 'date', 'link'];
+const listProps = ['title', 'date', 'date_formatted', 'link'];
module.exports = {
archive: listProps,
categoryPosts: listProps,
tagPosts: listProps,
- page: ['title', 'date', 'updated', 'content', 'link', 'comments', 'dropcap', 'plink', 'toc', 'reward', 'copyright', 'meta'],
- post: ['title', 'date', 'author', 'thumbnail', 'color', 'link', 'comments', 'dropcap', 'tags', 'categories', 'updated', 'content', 'prev', 'next', 'plink', 'toc', 'reward', 'copyright'],
- postList: ['title', 'date', 'author', 'thumbnail', 'color', 'excerpt', 'link', 'tags', 'categories'],
- search: ['title', 'date', 'author', 'updated', 'content', 'thumbnail', 'color', 'plink']
+ page: ['title', 'date', 'date_formatted', 'updated', 'content', 'link', 'comments', 'dropcap', 'plink', 'toc', 'reward', 'copyright', 'meta'],
+ post: ['title', 'date', 'date_formatted', 'author', 'thumbnail', 'color', 'link', 'comments', 'dropcap', 'tags', 'categories', 'updated', 'content', 'prev', 'next', 'plink', 'toc', 'reward', 'copyright'],
+ postList: ['title', 'date', 'date_formatted', 'author', 'thumbnail', 'color', 'excerpt', 'link', 'tags', 'categories'],
+ search: ['title', 'date', 'date_formatted', 'author', 'updated', 'content', 'thumbnail', 'color', 'plink']
}
diff --git a/lib/theme-processor/index.js b/lib/theme-processor/index.js
deleted file mode 100644
index 7459016..0000000
--- a/lib/theme-processor/index.js
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = function (hexo) {
- hexo.theme.processors.push(require('./localized-script')(hexo));
-};
diff --git a/lib/theme-processor/localized-script.js b/lib/theme-processor/localized-script.js
deleted file mode 100644
index 7b9db7d..0000000
--- a/lib/theme-processor/localized-script.js
+++ /dev/null
@@ -1,17 +0,0 @@
-const { localeId } = require('../utils');
-const { Pattern } = require('hexo-util');
-const { locales: localeScripts } = require('../../source/_resources.json');
-
-module.exports = function (hexo) {
- const lang = localeId(hexo.config.language);
-
- return {
- process: function (file) {
- const Asset = this.model('Asset');
- const id = file.source.substring(this.base_dir.length).replace(/\\/g, '/')
- const doc = Asset.findById(id);
- if (doc && (!localeScripts[lang] || !file.path.match(localeScripts[lang]))) doc.remove();
- },
- pattern: new Pattern(/source\/main.*\.js$/)
- }
-}
diff --git a/package.json b/package.json
index 2b968a1..307656f 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "hexo-theme-inside",
- "version": "2.4.2",
+ "version": "2.5.0",
"description": "❤️ SPA, flat and clean theme for Hexo.",
"scripts": {
"test": "jasmine --config=test/jasmine.json"
@@ -26,8 +26,8 @@
"devDependencies": {
"babel-core": "6.26.3",
"babel-preset-env": "1.7.0",
- "hexo": "3.9.0",
+ "hexo": "4.0.0",
"jasmine": "3.5.0",
- "uglify-js": "3.6.2"
+ "uglify-js": "3.6.7"
}
}
diff --git a/scripts/index.js b/scripts/index.js
index 1b2280a..6ce5be3 100644
--- a/scripts/index.js
+++ b/scripts/index.js
@@ -3,4 +3,3 @@ require('../lib/helper')(hexo);
require('../lib/generator')(hexo);
require('../lib/filter')(hexo);
require('../lib/tag')(hexo);
-require('../lib/theme-processor')(hexo);
diff --git a/source/_resources.json b/source/_resources.json
index 400e3df..d2d01da 100644
--- a/source/_resources.json
+++ b/source/_resources.json
@@ -1 +1 @@
-{"root":"is-a","styles":["styles.d1f4718a192abf1f2afd.css"],"scripts":["runtime.caef73fae70e33459c5a.js","polyfills.28555e618578fe61f50a.js"],"locales":{"zh-Hant":"main.5ac6b548dbff945e028b.zh-Hant.js","zh-Hans":"main.7773219322474154c9eb.zh-Hans.js","en":"main.a6ef31dc523c76e5118c.js","ja":"main.c145738ea9113b8ce68e.ja.js"}}
+{"root":"is-a","styles":["styles.6d727dade1159bc77736.css"],"scripts":["runtime.ee6f73bc31187f12810a.js","polyfills.14df1390f4da8e838f05.js","main.0c926d87f8cb6ab96db0.js"]}
diff --git a/source/_theme.js b/source/_theme.js
index 24881d2..16823dc 100644
--- a/source/_theme.js
+++ b/source/_theme.js
@@ -1 +1 @@
-!function(o,r){if("object"==typeof exports&&"object"==typeof module)module.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{var t=r();for(var e in t)("object"==typeof exports?exports:o)[e]=t[e]}}(this.__inside__||(this.__inside__={}),function(){return function(o){var r={};function t(e){if(r[e])return r[e].exports;var i=r[e]={i:e,l:!1,exports:{}};return o[e].call(i.exports,i,i.exports,t),i.l=!0,i.exports}return t.m=o,t.c=r,t.d=function(o,r,e){t.o(o,r)||Object.defineProperty(o,r,{enumerable:!0,get:e})},t.r=function(o){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})},t.t=function(o,r){if(1&r&&(o=t(o)),8&r)return o;if(4&r&&"object"==typeof o&&o&&o.__esModule)return o;var e=Object.create(null);if(t.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:o}),2&r&&"string"!=typeof o)for(var i in o)t.d(e,i,function(r){return o[r]}.bind(null,i));return e},t.n=function(o){var r=o&&o.__esModule?function(){return o.default}:function(){return o};return t.d(r,"a",r),r},t.o=function(o,r){return Object.prototype.hasOwnProperty.call(o,r)},t.p="",t(t.s=16)}([function(o,r,t){"use strict";o.exports=function(o){var r=[];return r.toString=function(){return this.map(function(r){var t=function(o,r){var t=o[1]||"",e=o[3];if(!e)return t;if(r&&"function"==typeof btoa){var i=(h=e,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(h))))+" */"),n=e.sources.map(function(o){return"/*# sourceURL="+e.sourceRoot+o+" */"});return[t].concat(n).concat([i]).join("\n")}var h;return[t].join("\n")}(r,o);return r[2]?"@media "+r[2]+"{"+t+"}":t}).join("")},r.i=function(o,t){"string"==typeof o&&(o=[[null,o,""]]);for(var e={},i=0;idiv{box-shadow:inset 0 0 0 1px MODE_BORDER}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".q{max-width:CONTENT_WIDTHpx}",""])},function(o,r,t){(o.exports=t(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){.x{background:SIDEBAR_BACKGROUND}}.b,.e:after,.f:before,.g:active,.g:focus,.g:hover,.h:active:after,.h:focus:after,.h:hover:after,.i:active:before,.i:focus:before,.i:hover:before{background-color:COLOR}.d{background-color:COLOR_01}.c{background-color:COLOR_005}.o,.p:active,.p:focus,.p:hover{color:COLOR}.m{border-color:COLOR}.n{border-color:COLOR_04}.a a:hover{border-color:COLOR;color:COLOR}.bc{stroke:COLOR}.r{fill:COLOR}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".j,.k:after,body{background:BACKGROUND}@media (max-width:676px){.l{background:BACKGROUND}}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,"body{font-family:FONT_BASE}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".v{font-family:FONT_LOGO}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".w{font-family:FONT_MENU}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".s,h1,h2,h3,h4,h5,h6{font-family:FONT_HEADING}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".t,.u:after{font-family:FONT_LABEL}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".highlight figcaption,code,pre{font-family:FONT_CODE}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,"@media print{body{font-family:FONT_PRINT}}",""])},function(o,r,t){(o.exports=t(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,r,t){(o.exports=t(0)(!1)).push([o.i,".highlight{background-color:base00}.highlight figcaption{border-radius:3px 3px 0 0;background-color:base01}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".highlight{border:1px solid base01}.highlight figcaption{background-color:base01}",""])},function(o,r,t){(o.exports=t(0)(!1)).push([o.i,".highlight{border:1px solid;border-color:inherit}.highlight figcaption{border-bottom:1px solid;border-color:inherit}",""])},function(o,r,t){"use strict";t.r(r);var e=function(){return(e=Object.assign||function(o){for(var r,t=1,e=arguments.length;t640&&(t.content_width=f);Array.isArray(d)?(t.highlight=d.map(function(o){return l(o).hex}).filter(function(o){return o}),t.highlight.length<16&&(t.highlight=r.highlight)):t.highlight=r.highlight;return t}(o,c),t=[];if(t.push(h.mode.replace(/MODE_FG/g,r.foreground_color).replace(/MODE_CARD_BG/g,r.card_background).replace(/MODE_BORDER/g,r.border_color)),r.font){var e=r.font;e.base&&t.push(h.font.base.replace(/FONT_BASE/g,e.base)),e.logo&&t.push(h.font.logo.replace(/FONT_LOGO/g,e.logo)),e.menu&&t.push(h.font.menu.replace(/FONT_MENU/g,e.menu)),e.heading&&t.push(h.font.heading.replace(/FONT_HEADING/g,e.heading)),e.label&&t.push(h.font.label.replace(/FONT_LABEL/g,e.label)),e.code&&t.push(h.font.code.replace(/FONT_CODE/g,e.code)),e.print&&t.push(h.font.print.replace(/FONT_PRINT/g,e.print))}var i=l(r.accent_color);return t.push(h.background.replace(/BACKGROUND/g,r.background),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(/SIDEBAR_BACKGROUND/g,g(r.sidebar_background))),r.content_width&&t.push(h.content_width.replace(/CONTENT_WIDTH/g,r.content_width)),t.push(d(h.highlight.base,r.highlight)),s(r.card_background,r.highlight[0])||s(r.highlight[15],r.highlight[0])?s(r.card_background,r.highlight[1])||s(r.highlight[15],r.highlight[1])?t.push(h.highlight.bordered_mix):t.push(d(h.highlight.bordered,r.highlight)):(s(r.card_background,r.highlight[1])&&(r.highlight[1]=r.highlight[0]),t.push(d(h.highlight.flat,r.highlight))),t.join("")}}function g(o){var r=/(^data:image)|(^[^\(^'^"]*\.(jpg|png|gif|svg))/;return o.split(/\s+/).map(function(o){return o.match(r)?"url("+o+")":o}).join(" ")}function l(o,r){if(o=(o||"").trim(),i.test(o))return e({hex:o},f(o));if(n.test(o)){var t=o.match(n).slice(1,4).map(function(o){return+o}).filter(function(o){return o<256});if(3===t.length)return{hex:u.apply(null,t),r:t[0],g:t[1],b:t[2]}}return r?e({hex:r},f(r)):{}}function u(o,r,t){return"#"+((1<<24)+(o<<16)+(r<<8)+t).toString(16).slice(1)}function f(o){o=o.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(o,r,t,e){return r+r+t+t+e+e});var r=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(o);return r?{r:parseInt(r[1],16),g:parseInt(r[2],16),b:parseInt(r[3],16)}:null}function b(o,r){void 0===r&&(r=[]);var t=o?o.split(","):[],e=[];return t.forEach(function(o){(o=o.trim())&&!~r.indexOf(o)&&e.push(o)}),e.concat(r)}function d(o,r){return r.reduce(function(o,r,t){var e=new RegExp("base0"+t.toString(16).toUpperCase(),"g");return o.replace(e,r)},o)}function s(o,r){var t=l(o),e=l(r);return t&&e&&t.r===e.r&&t.g===e.g&&t.b===e.b}}])});
\ No newline at end of file
+!function(r,o){if("object"==typeof exports&&"object"==typeof module)module.exports=o();else if("function"==typeof define&&define.amd)define([],o);else{var e=o();for(var t in e)("object"==typeof exports?exports:r)[t]=e[t]}}(this.__inside__||(this.__inside__={}),function(){return function(r){var o={};function e(t){if(o[t])return o[t].exports;var i=o[t]={i:t,l:!1,exports:{}};return r[t].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=r,e.c=o,e.d=function(r,o,t){e.o(r,o)||Object.defineProperty(r,o,{enumerable:!0,get:t})},e.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},e.t=function(r,o){if(1&o&&(r=e(r)),8&o)return r;if(4&o&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(e.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&o&&"string"!=typeof r)for(var i in r)e.d(t,i,function(o){return r[o]}.bind(null,i));return t},e.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return e.d(o,"a",o),o},e.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},e.p="",e(e.s=16)}([function(r,o,e){"use strict";r.exports=function(r){var o=[];return o.toString=function(){return this.map(function(o){var e=function(r,o){var e=r[1]||"",t=r[3];if(!t)return e;if(o&&"function"==typeof btoa){var i=(h=t,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(h))))+" */"),n=t.sources.map(function(r){return"/*# sourceURL="+t.sourceRoot+r+" */"});return[e].concat(n).concat([i]).join("\n")}var h;return[e].join("\n")}(o,r);return o[2]?"@media "+o[2]+"{"+e+"}":e}).join("")},o.i=function(r,e){"string"==typeof r&&(r=[[null,r,""]]);for(var t={},i=0;idiv{box-shadow:inset 0 0 0 1px MODE_BORDER}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".b{max-width:CONTENT_WIDTH}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.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){.v{background:SIDEBAR_BACKGROUND}}.a:active,.a:focus,.a:hover,.q:active:before,.q:focus:before,.q:hover:before,.r:active:after,.r:focus:after,.r:hover:after,.s:before,.t:after,.u{background-color:COLOR}.o{background-color:COLOR_01}.n{background-color:COLOR_005}.l:active,.l:focus,.l:hover,.m{color:COLOR}.k{border-color:COLOR}.j{border-color:COLOR_04}.h:active,.h:focus,.h:hover,.i{border-color:COLOR_02}.g a:hover{border-color:COLOR;color:COLOR}.f{stroke:COLOR}.e{fill:COLOR}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".c:after,.d,body{background:BACKGROUND}@media (max-width:676px){.p{background:BACKGROUND}}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,"body{font-family:FONT_BASE}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".be{font-family:FONT_LOGO}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".bc{font-family:FONT_MENU}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".bd,h1,h2,h3,h4,h5,h6{font-family:FONT_HEADING}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".ba:after,.bb{font-family:FONT_LABEL}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".highlight figcaption,code,pre{font-family:FONT_CODE}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,"@media print{body{font-family:FONT_PRINT}}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.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(r,o,e){(r.exports=e(0)(!1)).push([r.i,".highlight{background-color:base00}.highlight figcaption{border-radius:3px 3px 0 0;background-color:base01}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".highlight{border:1px solid base01}.highlight figcaption{background-color:base01}",""])},function(r,o,e){(r.exports=e(0)(!1)).push([r.i,".highlight{border:1px solid;border-color:inherit}.highlight figcaption{border-bottom:1px solid;border-color:inherit}",""])},function(r,o,e){"use strict";e.r(o);var t=function(){return(t=Object.assign||function(r){for(var o,e=1,t=arguments.length;e=t.length&&(t=void 0),{value:t&&t[e++],done:!t}}}}function u(t,n){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var r,o,i=e.call(t),l=[];try{for(;(void 0===n||n-- >0)&&!(r=i.next()).done;)l.push(r.value)}catch(u){o={error:u}}finally{try{r&&!r.done&&(e=i.return)&&e.call(i)}finally{if(o)throw o.error}}return l}function a(){for(var t=[],n=0;n0?this._next(n.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},n}(M);function W(t){return t}function Q(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),q(W,t)}function Z(t,n){return n?H(t,n):new _(R(t))}function K(){return function(t){return t.lift(new G(t))}}var G=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,n){var e=this.connectable;e._refCount++;var r=new Y(t,e),o=n.subscribe(r);return r.closed||(r.connection=e.connect()),o},t}(),Y=function(t){function n(n,e){var r=t.call(this,n)||this;return r.connectable=e,r}return r.b(n,t),n.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var n=t._refCount;if(n<=0)this.connection=null;else if(t._refCount=n-1,n>1)this.connection=null;else{var e=this.connection,r=t._connection;this.connection=null,!r||e&&r!==e||r.unsubscribe()}}else this.connection=null},n}(g),J=function(t){function n(n,e){var r=t.call(this)||this;return r.source=n,r.subjectFactory=e,r._refCount=0,r._isComplete=!1,r}return r.b(n,t),n.prototype._subscribe=function(t){return this.getSubject().subscribe(t)},n.prototype.getSubject=function(){var t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject},n.prototype.connect=function(){var t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new a).add(this.source.subscribe(new tt(this.getSubject(),this))),t.closed&&(this._connection=null,t=a.EMPTY)),t},n.prototype.refCount=function(){return K()(this)},n}(_),X=function(){var t=J.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}}(),tt=function(t){function n(n,e){var r=t.call(this,n)||this;return r.connectable=e,r}return r.b(n,t),n.prototype._error=function(n){this._unsubscribe(),t.prototype._error.call(this,n)},n.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),t.prototype._complete.call(this)},n.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var n=t._connection;t._refCount=0,t._subject=null,t._connection=null,n&&n.unsubscribe()}},n}(I);function nt(){return new E}var et="__parameters__";function rt(t,n,e){var o=function(t){return function(){for(var n=[],e=0;e ");else if("object"==typeof n){var i=[];for(var l in n)if(n.hasOwnProperty(l)){var u=n[l];i.push(l+":"+("string"==typeof u?JSON.stringify(u):ht(u)))}o="{"+i.join(", ")+"}"}return e+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Et,"\n ")}var Dt=function(){return function(){}}(),Lt=function(){return function(){}}();function Mt(t,n,e){n>=t.length?t.push(e):t.splice(n,0,e)}function Ut(t,n){return n>=t.length-1?t.pop():t.splice(n,1)[0]}var Vt=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),Ft=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(xt)}(),Ht="ngDebugContext",zt="ngOriginalError",qt="ngErrorLogger";function Bt(t){return t[Ht]}function $t(t){return t[zt]}function Wt(t){for(var n=[],e=1;e',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='