Compare commits
101 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
203268ef54 | ||
|
465a1f871b | ||
|
0b55074b50 | ||
|
6a7213ccfb | ||
|
d6596af54c | ||
|
6e45d27f95 | ||
|
9421e614f8 | ||
|
adccb1fb64 | ||
|
d774e4868d | ||
|
b3280e8d81 | ||
|
c2f6f674b0 | ||
|
d67e7b66e4 | ||
|
daa9eafe47 | ||
|
be3c627b53 | ||
|
bf50fa3cbf | ||
|
47c68fbcf6 | ||
|
7df5fb3bbc | ||
|
7875f1f10b | ||
|
0f2ce49711 | ||
|
62bbf2ea84 | ||
|
73d1541964 | ||
|
3f62a1d379 | ||
|
65660e28ff | ||
|
f16f3f3b67 | ||
|
d5967b9b27 | ||
|
3c4e20c278 | ||
|
9f8cdc1e08 | ||
|
f741f71d48 | ||
|
5f67e530ca | ||
|
ae0dc7c60e | ||
|
1480ba764a | ||
|
0d50488be9 | ||
|
5367cb98aa | ||
|
4180e196a7 | ||
|
aa8f962b96 | ||
|
f5c57c26a4 | ||
|
4c6353ef4f | ||
|
ac48e4b5d7 | ||
|
f3932d682c | ||
|
07f3f29b6a | ||
|
47c56cc364 | ||
|
bf2f718d73 | ||
|
550ab8a68d | ||
|
15b16e79ce | ||
|
84bca19471 | ||
|
313752c594 | ||
|
7ef6c7c618 | ||
|
31b38391de | ||
|
9c53a603f3 | ||
|
a9db32d0cb | ||
|
3ff73f9805 | ||
|
5969d1a456 | ||
|
219bb6db37 | ||
|
e0f4461fe5 | ||
|
20332ad8f2 | ||
|
8229b7436f | ||
|
c24db5e371 | ||
|
8b6074fef4 | ||
|
3d4a4fcc7e | ||
|
a842da9697 | ||
|
72c4fd9761 | ||
|
f1c3083f09 | ||
|
a29108efdc | ||
|
c679fd6256 | ||
|
49dfb78503 | ||
|
809d54eae2 | ||
|
e76f208516 | ||
|
aad79d1baa | ||
|
221c637409 | ||
|
5a4edd6483 | ||
|
0163b6bfe5 | ||
|
3fa2e339c5 | ||
|
1c857a0c5f | ||
|
302c6080fd | ||
|
ec47bd254a | ||
|
42a6eb0c33 | ||
|
0c0ea3312c | ||
|
1e0275d757 | ||
|
c5f8d5d058 | ||
|
38e99de4fb | ||
|
24be666717 | ||
|
4991ad5085 | ||
|
ed96a4ac21 | ||
|
c61cbb4803 | ||
|
2e7b792039 | ||
|
76096640f4 | ||
|
343b1435c1 | ||
|
6270c15b76 | ||
|
1292dbff48 | ||
|
651ccc266c | ||
|
61ddfbf724 | ||
|
826a654766 | ||
|
6a407dc892 | ||
|
cb4eba81c7 | ||
|
24a5b177ac | ||
|
49cf370803 | ||
|
4dc27165b9 | ||
|
77caffdbfa | ||
|
9767e1fa3f | ||
|
83572e499b | ||
|
ea8711e0ca |
58
.drone.yml
Normal file
58
.drone.yml
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
kind: pipeline
|
||||||
|
steps:
|
||||||
|
- name: restore-cache
|
||||||
|
image: meltwater/drone-cache:dev
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: aws_acces
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: aws_key
|
||||||
|
pull: true
|
||||||
|
settings:
|
||||||
|
debug: false
|
||||||
|
cache_key: '{{ arch }}_{{ os }}_{{ checksum "package-lock.json" }}'
|
||||||
|
archive_format: "gzip"
|
||||||
|
endpoint: storage.yandexcloud.net
|
||||||
|
restore: true
|
||||||
|
bucket: drone-cache
|
||||||
|
region: ru-central1
|
||||||
|
mount: 'node_modules'
|
||||||
|
- name: run-sh
|
||||||
|
image: node:alpine
|
||||||
|
commands:
|
||||||
|
- chmod +x ./bin/run.sh
|
||||||
|
- ./bin/run.sh
|
||||||
|
- name: update-site
|
||||||
|
image: plugins/downstream
|
||||||
|
settings:
|
||||||
|
server: https://drone.lp76.ru
|
||||||
|
token:
|
||||||
|
from_secret: drone_token
|
||||||
|
fork: false
|
||||||
|
repositories:
|
||||||
|
- aleks/site
|
||||||
|
- name: rebuild-cache
|
||||||
|
image: meltwater/drone-cache:dev
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: aws_acces
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: aws_key
|
||||||
|
pull: true
|
||||||
|
settings:
|
||||||
|
debug: false
|
||||||
|
cache_key: '{{ arch }}_{{ os }}_{{ checksum "package-lock.json" }}'
|
||||||
|
archive_format: "gzip"
|
||||||
|
endpoint: storage.yandexcloud.net
|
||||||
|
rebuild: true
|
||||||
|
bucket: drone-cache
|
||||||
|
region: ru-central1
|
||||||
|
mount: 'node_modules'
|
||||||
|
- name: telegram
|
||||||
|
image: appleboy/drone-telegram
|
||||||
|
settings:
|
||||||
|
token:
|
||||||
|
from_secret: token_telegramm
|
||||||
|
to:
|
||||||
|
from_secret: to_telegram_user
|
||||||
|
message: #success {{build.status}}
|
12
.github/FUNDING.yml
vendored
12
.github/FUNDING.yml
vendored
@ -1,12 +0,0 @@
|
|||||||
# These are supported funding model platforms
|
|
||||||
|
|
||||||
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
|
||||||
patreon: # Replace with a single Patreon username
|
|
||||||
open_collective: # Replace with a single Open Collective username
|
|
||||||
ko_fi: # Replace with a single Ko-fi username
|
|
||||||
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
|
||||||
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
|
||||||
liberapay: # Replace with a single Liberapay username
|
|
||||||
issuehunt: # Replace with a single IssueHunt username
|
|
||||||
otechie: # Replace with a single Otechie username
|
|
||||||
custom: http://afdian.net/@shenyu
|
|
70
.github/ISSUE_TEMPLATE/bug-report.md
vendored
70
.github/ISSUE_TEMPLATE/bug-report.md
vendored
@ -1,70 +0,0 @@
|
|||||||
---
|
|
||||||
name: Bug Report
|
|
||||||
about: Something isn't working as expected
|
|
||||||
title: ""
|
|
||||||
labels: Bug
|
|
||||||
assignees: ""
|
|
||||||
---
|
|
||||||
|
|
||||||
Please follow this Issue template to provide relevant information, such as source code repositories, blog links, and screenshots, which will help us investigate.
|
|
||||||
请按照此 Issue 模版提供相关信息,例如源码仓库、博客链接和屏幕截图,这将有助于我们进行调查。
|
|
||||||
|
|
||||||
## Issue Checklist <!-- 我确认我已经查看了 -->
|
|
||||||
|
|
||||||
<!-- Change [ ] to [x] to select (将 [ ] 换成 [x] 来选择) -->
|
|
||||||
|
|
||||||
- [ ] I am using [the latest](https://github.com/Shen-Yu/hexo-theme-ayer) version of hexo-theme-ayer.
|
|
||||||
- [ ] I have reviewed the latest Roadmap on GitHub and searched for current [Ayer Issues](https://github.com/Shen-Yu/hexo-theme-ayer/issues), which does not help me.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Expected behavior <!-- 预期行为 -->
|
|
||||||
|
|
||||||
## Actual behavior <!-- 实际行为 -->
|
|
||||||
|
|
||||||
<!-- Please provide at least one of the following information (请至少提供以下的一项信息) -->
|
|
||||||
|
|
||||||
- Links to demo site with this issue: N/A
|
|
||||||
- Links to repository or source code of the blog: N/A
|
|
||||||
|
|
||||||
## Steps to reproduce the behavior <!-- 重现步骤 -->
|
|
||||||
|
|
||||||
1. N/A
|
|
||||||
2. N/A
|
|
||||||
3. N/A
|
|
||||||
|
|
||||||
## Environment Information
|
|
||||||
|
|
||||||
### Node.js and NPM Information
|
|
||||||
|
|
||||||
<!-- Paste output from `node -v && npm -v` (粘贴 `node -v && npm -v` 输出的信息) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
### Package dependencies Information
|
|
||||||
|
|
||||||
<!-- Paste output from `npm ls --depth 0` (粘贴 `npm ls --depth 0` 输出的信息) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
### HTML Configuration
|
|
||||||
|
|
||||||
<!-- Paste configuration from HTML (粘贴 HTML 配置 中的内容) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
### MiniValine Configuration
|
|
||||||
|
|
||||||
<!-- Paste configuration from MiniValine (粘贴 MiniValine 配置 中的内容) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
## Other Information <!-- (Like Browser, System, Screenshots) -->
|
|
36
.github/ISSUE_TEMPLATE/feature-request.md
vendored
36
.github/ISSUE_TEMPLATE/feature-request.md
vendored
@ -1,36 +0,0 @@
|
|||||||
---
|
|
||||||
name: Feature Request
|
|
||||||
about: Suggest an idea for this project
|
|
||||||
title: ""
|
|
||||||
labels: Feature Request
|
|
||||||
assignees: ""
|
|
||||||
---
|
|
||||||
|
|
||||||
Please follow this Issue template to provide relevant information, such as source code repositories, blog links, and screenshots, which will help us investigate.
|
|
||||||
请按照此 Issue 模版提供相关信息,例如源码仓库、博客链接和屏幕截图,这将有助于我们进行调查。
|
|
||||||
|
|
||||||
## Issue Checklist <!-- 我确认我已经查看了 -->
|
|
||||||
|
|
||||||
<!-- Change [ ] to [x] to select (将 [ ] 换成 [x] 来选择) -->
|
|
||||||
|
|
||||||
- [ ] I am using [the latest](https://github.com/Shen-Yu/hexo-theme-ayer) version of hexo-theme-ayer.
|
|
||||||
- [ ] I have reviewed the latest Roadmap on GitHub and searched for current [Ayer Issues](https://github.com/Shen-Yu/hexo-theme-ayer/issues), which does not help me.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Expected behavior <!-- 预期行为 -->
|
|
||||||
|
|
||||||
## Actual behavior <!-- 实际行为 -->
|
|
||||||
|
|
||||||
<!-- Please provide at least one of the following information (请至少提供以下的一项信息) -->
|
|
||||||
|
|
||||||
- Links to demo site with this feature: N/A
|
|
||||||
- Links to repository or source code of the blog: N/A
|
|
||||||
|
|
||||||
## Steps to reproduce the behavior <!-- 重现步骤 -->
|
|
||||||
|
|
||||||
1. N/A
|
|
||||||
2. N/A
|
|
||||||
3. N/A
|
|
||||||
|
|
||||||
## Other Information <!-- Like Browser, System, Screenshots -->
|
|
21
.github/ISSUE_TEMPLATE/other.md
vendored
21
.github/ISSUE_TEMPLATE/other.md
vendored
@ -1,21 +0,0 @@
|
|||||||
---
|
|
||||||
name: Other
|
|
||||||
about: Not a question, feature request or bug report
|
|
||||||
title: ""
|
|
||||||
labels: ""
|
|
||||||
assignees: ""
|
|
||||||
---
|
|
||||||
|
|
||||||
Please follow this Issue template to provide relevant information, such as source code repositories, blog links, and screenshots, which will help us investigate.
|
|
||||||
请按照此 Issue 模版提供相关信息,例如源码仓库、博客链接和屏幕截图,这将有助于我们进行调查。
|
|
||||||
|
|
||||||
## Issue Checklist <!-- 我确认我已经查看了 -->
|
|
||||||
|
|
||||||
<!-- Change [ ] to [x] to select (将 [ ] 换成 [x] 来选择) -->
|
|
||||||
|
|
||||||
- [ ] I am using [the latest](https://github.com/Shen-Yu/hexo-theme-ayer) version of hexo-theme-ayer.
|
|
||||||
- [ ] I have reviewed the latest Roadmap on GitHub and searched for current [Ayer Issues](https://github.com/Shen-Yu/hexo-theme-ayer/issues), which does not help me.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Other Information <!-- Like Browser, System, Screenshots -->
|
|
70
.github/ISSUE_TEMPLATE/question.md
vendored
70
.github/ISSUE_TEMPLATE/question.md
vendored
@ -1,70 +0,0 @@
|
|||||||
---
|
|
||||||
name: Question
|
|
||||||
about: I have a question for Ayer
|
|
||||||
title: ""
|
|
||||||
labels: Question
|
|
||||||
assignees: ""
|
|
||||||
---
|
|
||||||
|
|
||||||
Please follow this Issue template to provide relevant information, such as source code repositories, blog links, and screenshots, which will help us investigate.
|
|
||||||
请按照此 Issue 模版提供相关信息,例如源码仓库、博客链接和屏幕截图,这将有助于我们进行调查。
|
|
||||||
|
|
||||||
## Issue Checklist <!-- 我确认我已经查看了 -->
|
|
||||||
|
|
||||||
<!-- Change [ ] to [x] to select (将 [ ] 换成 [x] 来选择) -->
|
|
||||||
|
|
||||||
- [ ] I am using [the latest](https://github.com/Shen-Yu/hexo-theme-ayer) version of hexo-theme-ayer.
|
|
||||||
- [ ] I have reviewed the latest Roadmap on GitHub and searched for current [Ayer Issues](https://github.com/Shen-Yu/hexo-theme-ayer/issues), which does not help me.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Expected behavior <!-- 预期行为 -->
|
|
||||||
|
|
||||||
## Actual behavior <!-- 实际行为 -->
|
|
||||||
|
|
||||||
<!-- Please provide at least one of the following information (请至少提供以下的一项信息) -->
|
|
||||||
|
|
||||||
- Links to demo site with this issue: N/A
|
|
||||||
- Links to repository or source code of the blog: N/A
|
|
||||||
|
|
||||||
## Steps to reproduce the behavior <!-- 重现步骤 -->
|
|
||||||
|
|
||||||
1. N/A
|
|
||||||
2. N/A
|
|
||||||
3. N/A
|
|
||||||
|
|
||||||
## Environment Information
|
|
||||||
|
|
||||||
### Node.js and NPM Information
|
|
||||||
|
|
||||||
<!-- Paste output from `node -v && npm -v` (粘贴 `node -v && npm -v` 输出的信息) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
### Package dependencies Information
|
|
||||||
|
|
||||||
<!-- Paste output from `npm ls --depth 0` (粘贴 `npm ls --depth 0` 输出的信息) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
### HTML Configuration
|
|
||||||
|
|
||||||
<!-- Paste configuration from HTML (粘贴 HTML 配置 中的内容) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
### Ayer Configuration
|
|
||||||
|
|
||||||
<!-- Paste configuration from Ayer (粘贴 Ayer 配置 中的内容) -->
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
## Other Information <!-- (Like Browser, System, Screenshots) -->
|
|
12
.github/config.yml
vendored
12
.github/config.yml
vendored
@ -1,12 +0,0 @@
|
|||||||
# =============================================================================================== #
|
|
||||||
# Configuration for welcome - https://github.com/behaviorbot/welcome
|
|
||||||
|
|
||||||
# Comment to be posted to on first time issues
|
|
||||||
newIssueWelcomeComment: >
|
|
||||||
Thanks for opening this issue, maintainers will get back to you as soon as possible!
|
|
||||||
# Comment to be posted to on PRs from first time contributors in your repository
|
|
||||||
newPRWelcomeComment: >
|
|
||||||
Thanks so much for opening your first PR here!
|
|
||||||
# Comment to be posted to on pull requests merged by a first time user
|
|
||||||
firstPRMergeComment: >
|
|
||||||
Congrats on merging your first pull request here! :tada: How awesome!
|
|
31
.github/workflows/node.yml
vendored
Normal file
31
.github/workflows/node.yml
vendored
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
|
||||||
|
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
|
||||||
|
|
||||||
|
name: Node.js CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ "master" ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ "master" ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version: [16.x, 18.x]
|
||||||
|
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Use Node.js ${{ matrix.node-version }}
|
||||||
|
uses: actions/setup-node@v3
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
cache: 'npm'
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build --if-present
|
||||||
|
- run: npm test
|
21
.github/workflows/npmpublish.yml
vendored
21
.github/workflows/npmpublish.yml
vendored
@ -1,21 +0,0 @@
|
|||||||
# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
|
|
||||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
|
|
||||||
|
|
||||||
name: Node.js Package
|
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [created]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish-npm:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- uses: actions/setup-node@v1
|
|
||||||
with:
|
|
||||||
node-version: 12
|
|
||||||
registry-url: https://registry.npmjs.org/
|
|
||||||
- run: npm publish
|
|
||||||
env:
|
|
||||||
NODE_AUTH_TOKEN: ${{secrets.npm_token}}
|
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -2,8 +2,7 @@
|
|||||||
.idea/
|
.idea/
|
||||||
*.log
|
*.log
|
||||||
*.iml
|
*.iml
|
||||||
yarn.lock
|
|
||||||
package-lock.json
|
|
||||||
node_modules/
|
node_modules/
|
||||||
.cache
|
.cache
|
||||||
.history
|
.history
|
||||||
|
_bak.yml
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
.cache/
|
.cache/
|
||||||
.history/
|
.history/
|
||||||
.github/
|
.github/
|
||||||
|
_bak.yml
|
@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
"plugins": {
|
|
||||||
"autoprefixer": true
|
|
||||||
}
|
|
||||||
}
|
|
10
.travis.yml
10
.travis.yml
@ -1,10 +0,0 @@
|
|||||||
language: node_js
|
|
||||||
|
|
||||||
node_js: node
|
|
||||||
|
|
||||||
cache:
|
|
||||||
npm: true
|
|
||||||
|
|
||||||
install: npm install
|
|
||||||
|
|
||||||
script: npm run test
|
|
37
LICENSE
37
LICENSE
@ -1,37 +0,0 @@
|
|||||||
The Star And Thank Author License (SATA)
|
|
||||||
|
|
||||||
Copyright © 2019 Shen-Yu(shenyu@hotmail.com)
|
|
||||||
|
|
||||||
Project Url: https://github.com/Shen-Yu/hexo-theme-ayer
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
|
||||||
all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
And wait, the most important, you shall star/+1/like the project(s) in project url
|
|
||||||
section above first, and then thank the author(s) in Copyright section.
|
|
||||||
|
|
||||||
Here are some suggested ways:
|
|
||||||
|
|
||||||
- Email the authors a thank-you letter, and make friends with him/her/them.
|
|
||||||
- Report bugs or issues.
|
|
||||||
- Tell friends what a wonderful project this is.
|
|
||||||
- And, sure, you can just express thanks in your mind without telling the world.
|
|
||||||
|
|
||||||
Contributors of this project by forking have the option to add his/her name and
|
|
||||||
forked project url at copyright and project url sections, but shall not delete
|
|
||||||
or modify anything else in these two sections.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
THE SOFTWARE.
|
|
168
README.md
168
README.md
@ -1,93 +1,49 @@
|
|||||||
<p align="center"><a href="https://shen-yu.gitee.io" target="_blank" rel="noopener noreferrer"><img width="100" src="logo.png" alt="ayer logo"></a></p>
|
|
||||||
|
|
||||||
<h3 align="center">一个安静且优雅的 Hexo 主题</h3>
|
|
||||||
|
|
||||||
<p align="center">
|
|
||||||
<a href="https://travis-ci.org/Shen-Yu/hexo-theme-ayer?branch=master" target="_blank" rel="noopener noreferrer">
|
|
||||||
<img alt="travis-ci" src="https://travis-ci.org/Shen-Yu/hexo-theme-ayer.svg?branch=master">
|
|
||||||
</a>
|
|
||||||
<a href="http://standardjs.com" target="_blank" rel="noopener noreferrer">
|
|
||||||
<img alt="js-standard-style" src="https://img.shields.io/badge/code%20style-standard-brightgreen.svg">
|
|
||||||
</a>
|
|
||||||
<br>
|
|
||||||
<a href="https://www.npmjs.com/package/hexo-theme-ayer" target="_blank" rel="noopener noreferrer">
|
|
||||||
<img alt="npm" src="https://img.shields.io/npm/dt/hexo-theme-ayer">
|
|
||||||
</a>
|
|
||||||
<a href="https://shen-yu.gitee.io" target="_blank" rel="noopener noreferrer">
|
|
||||||
<img alt="platform" src="https://img.shields.io/badge/platform-PC--ios--android-ff69b4.svg">
|
|
||||||
</a>
|
|
||||||
<a href="https://gitter.im/hexo-theme-ayer/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge" target="_blank" rel="noopener noreferrer">
|
|
||||||
<img alt="Gitter" src="https://badges.gitter.im/Join%20Chat.svg">
|
|
||||||
</a>
|
|
||||||
<br>
|
|
||||||
<a href="https://www.npmjs.com/package/hexo-theme-ayer" target="_blank" rel="noopener noreferrer">
|
|
||||||
<img alt="npm version" src="https://img.shields.io/npm/v/hexo-theme-ayer">
|
|
||||||
</a>
|
|
||||||
<img alt="language" src="https://img.shields.io/badge/language-ejs--stylus-green.svg">
|
|
||||||
<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">
|
|
||||||
</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>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
:ocean: Ayer is a clean and elegant theme for Hexo, also fast, powerful and responsive. It contains many awesome features, It's perfect for your blog, "Ayer" means "water" in Malaysian and "yesterday" in Spanish. If you have any queries or advice during the process of using, Please contact me! shenyu@hotmail.com
|
|
||||||
|
|
||||||
<b>注:收藏本主题请点右上角Star,谢谢~~ </b>
|
|
||||||
<b>如果你想给主题添砖加瓦,可以点右上角Fork,然后给此仓库提交PR</b>
|
|
||||||
|
|
||||||
### [Preview 预览](https://shen-yu.gitee.io)
|
|
||||||
|
|
||||||
### [中文说明](https://shen-yu.gitee.io/2019/ayer/)
|
|
||||||
|
|
||||||
### [国内镜像](https://gitee.com/shen-yu/hexo-theme-ayer)
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## 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
|
||||||
npm i hexo-theme-ayer -S
|
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`
|
||||||
|
|
||||||
``` yml
|
```yml
|
||||||
theme: ayer
|
theme: ayer
|
||||||
```
|
```
|
||||||
|
|
||||||
## Update
|
## Update
|
||||||
|
|
||||||
``` bash
|
```bash
|
||||||
cd themes/ayer
|
cd themes/ayer
|
||||||
git pull
|
git pull
|
||||||
```
|
```
|
||||||
|
|
||||||
## Multi Language Support
|
## Multi Language Support
|
||||||
zh-CN(中文简体) en(English) zh-TW(中文繁体) ja(Japanese) es(Spanish) de(German) fr(French) ru(Russian) ko(Korean) vi(Vietnamese) nl(Dutch) no(Norwegian) pt(Portuguese)
|
|
||||||
|
|
||||||
English is default languge, if you want to change, modify `language` option in `_config.yml` file in your blog's root folder.
|
zh-CN(中文简体) en(English) zh-TW(中文繁体) ja(日本語) es(Español) de(Deutsch) fr(Français) ru(Русский) ko(한국어) vi(Tiếng Việt) nl(Nederlands) no(norsk) pt(Português)
|
||||||
|
|
||||||
|
English is default languge, if you want to change, modify `language` option in `_config.yml` file in your Hexo blog's root folder.
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
let me know if you have any questions.
|
let me know if you have any questions.
|
||||||
|
|
||||||
``` yml
|
```yml
|
||||||
# Menu-Sidebar
|
# Menu-Sidebar
|
||||||
menu:
|
menu:
|
||||||
Home: /
|
Home: /
|
||||||
@ -169,7 +125,7 @@ word_count:
|
|||||||
# type:0-close reward; 1-only open in article which you have configured reward:true; 2-open in all articles
|
# type:0-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 +178,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
|
||||||
@ -239,9 +195,6 @@ katex:
|
|||||||
# since year
|
# since year
|
||||||
since: 2019
|
since: 2019
|
||||||
|
|
||||||
# pageFooter (Set true can let more people know this theme, Thanks!)
|
|
||||||
pageFooter: true
|
|
||||||
|
|
||||||
# only for chinese website
|
# only for chinese website
|
||||||
# ICP
|
# ICP
|
||||||
icp:
|
icp:
|
||||||
@ -304,23 +257,35 @@ twikoo:
|
|||||||
enable: false
|
enable: false
|
||||||
envId: #
|
envId: #
|
||||||
|
|
||||||
# 4、MiniValine
|
|
||||||
# See: https://github.com/MiniValine/MiniValine
|
# advertisement
|
||||||
minivaline:
|
# if there is an "ad" word in photo or url,it 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
|
||||||
|
|
||||||
|
# encrypt settings
|
||||||
|
lock:
|
||||||
enable: false
|
enable: false
|
||||||
md: true
|
password: 123456
|
||||||
# more options https://minivaline.js.org/docs/cn/#/Options
|
|
||||||
backend: waline
|
|
||||||
serverURL: https://waline.vercel.app
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## 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 +296,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,18 +316,22 @@ 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
|
||||||
type: categories
|
type: categories
|
||||||
@ -371,33 +340,36 @@ 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
|
||||||
type: friends
|
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,15 +377,16 @@ 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:
|
|
||||||
|
|
||||||
``` md
|
- 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
|
||||||
---
|
---
|
||||||
no_toc: true
|
no_toc: true
|
||||||
---
|
---
|
||||||
@ -421,24 +394,3 @@ Use Tocbot to parse the title tags (h1~h6) in the content and insert the directo
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<br/>
|
|
||||||
|
|
||||||
## 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>.
|
|
||||||
|
|
||||||
The basic idea is, whenever using a project using SATA license, people shall star/like/+1 that project and thank the author. Just imagine Google stared your project and send you a thank-you letter because they used your project in github!
|
|
||||||
<br>
|
|
||||||
|
|
||||||
本项目采用<a rel="license" href="https://github.com/Shen-Yu/hexo-theme-ayer/blob/master/LICENSE">SATA</a>开源协议,在遵守MIT许可证的前提下,你应该给这个开源项目“点个赞”,比如github右上角的star,然后你应该感谢这个开源项目的作者,作者信息可以在许可证头部的版权声明部分找到。<br>
|
|
||||||
|
|
||||||
下面是几条SATA作者推荐的感谢途径,也是SATA包含的内容:
|
|
||||||
|
|
||||||
- 给你使用的开源项目的作者发个Email,和他交个朋友
|
|
||||||
- 提出你在使用过程中发现的BUG或者提一些建设性的意见
|
|
||||||
- 告诉你的朋友们这个开源项目碉堡了(博主: 就像我在宣传SATA)
|
|
||||||
- 当然,你也可以只是在心里默默的感激,不用让全世界都知道
|
|
||||||
|
|
||||||
## Stargazers over time
|
|
||||||
|
|
||||||
[](https://starchart.cc/Shen-Yu/hexo-theme-ayer)
|
|
||||||
|
147
_config.yml
147
_config.yml
@ -1,21 +1,17 @@
|
|||||||
# 侧边栏菜单
|
# 侧边栏菜单
|
||||||
menu:
|
menu:
|
||||||
主页: /
|
Главная: /
|
||||||
归档: /archives
|
Архивы: /archives
|
||||||
分类: /categories
|
Категории: /categories
|
||||||
标签: /tags
|
Теги: /tags
|
||||||
旅行: /tags/旅行/
|
|
||||||
摄影: http://shenyu-vip.lofter.com
|
|
||||||
友链: /friends
|
|
||||||
关于我: /2019/about
|
|
||||||
|
|
||||||
# 站点次标题和打字动效
|
# 站点次标题和打字动效
|
||||||
# https://github.com/mattboldt/typed.js
|
# https://github.com/mattboldt/typed.js
|
||||||
subtitle:
|
subtitle:
|
||||||
enable: true # 是否开启动效
|
enable: true # 是否开启动效
|
||||||
text: 面朝大海,春暖花开 # 显示的文字
|
text: # 显示的文字
|
||||||
text2: 愿你一生努力,一生被爱 # 滚动播放,如果不需要可以留空
|
text2: # 滚动播放,如果不需要可以留空
|
||||||
text3: 想要的都拥有,得不到的都释怀 # 最多支持三段文字
|
text3: # 最多支持三段文字
|
||||||
startDelay: 0 # 延迟时间
|
startDelay: 0 # 延迟时间
|
||||||
typeSpeed: 200 # 打字速度
|
typeSpeed: 200 # 打字速度
|
||||||
loop: true # 是否循环
|
loop: true # 是否循环
|
||||||
@ -38,13 +34,13 @@ progressBar: true
|
|||||||
|
|
||||||
# 告示板模块
|
# 告示板模块
|
||||||
broadcast:
|
broadcast:
|
||||||
enable: true # true开启,false关闭
|
enable: false # true开启,false关闭
|
||||||
type: 2 # 1:自定义输入,2:一言api(https://hitokoto.cn/)
|
type: 2 # 1:自定义输入,2:一言api(https://hitokoto.cn/)
|
||||||
text: 一个安静优雅的hexo主题,快速且响应式。 # type为1时有效
|
text: енен # type为1时有效
|
||||||
|
|
||||||
# 文章配置
|
# 文章配置
|
||||||
# 文章太长,截断按钮文字(在需要截断的行增加此标记:<!--more-->)
|
# 文章太长,截断按钮文字(在需要截断的行增加此标记:<!--more-->)
|
||||||
excerpt_link: 阅读更多...
|
excerpt_link: false
|
||||||
# 如果你嫌每篇文章手动加more标记比较麻烦,又不想在首页全文显示,可以把excerpt_all设置成true,这样首页只会显示文章归档
|
# 如果你嫌每篇文章手动加more标记比较麻烦,又不想在首页全文显示,可以把excerpt_all设置成true,这样首页只会显示文章归档
|
||||||
excerpt_all: false
|
excerpt_all: false
|
||||||
|
|
||||||
@ -53,16 +49,16 @@ copy_btn: true
|
|||||||
# 是否开启文章分享按钮
|
# 是否开启文章分享按钮
|
||||||
share_enable: true
|
share_enable: true
|
||||||
# 国内的社交平台(If you are not in China, maybe you prefer to set:false)
|
# 国内的社交平台(If you are not in China, maybe you prefer to set:false)
|
||||||
share_china: true
|
share_china: false
|
||||||
# 文章分享文字
|
# 文章分享文字
|
||||||
share_text: 分享
|
share_text: Поделится
|
||||||
|
|
||||||
# 分页文字
|
# 分页文字
|
||||||
nav_text:
|
nav_text:
|
||||||
page_prev: 上一页
|
page_prev: Страница назад
|
||||||
page_next: 下一页
|
page_next: Страница вперед
|
||||||
post_prev: 上一篇
|
post_prev: Предыдущая запись
|
||||||
post_next: 下一篇
|
post_next: Следующая запись
|
||||||
|
|
||||||
# 文章页是否显示目录
|
# 文章页是否显示目录
|
||||||
toc: true
|
toc: true
|
||||||
@ -82,11 +78,11 @@ word_count:
|
|||||||
# 打赏type设定:0-关闭打赏; 1-文章对应的md文件里有reward:true属性,才有打赏; 2-所有文章均有打赏
|
# 打赏type设定:0-关闭打赏; 1-文章对应的md文件里有reward:true属性,才有打赏; 2-所有文章均有打赏
|
||||||
reward_type: 2
|
reward_type: 2
|
||||||
# 打赏wording
|
# 打赏wording
|
||||||
reward_wording: "请我喝杯咖啡吧~"
|
reward_wording: "wording"
|
||||||
# 支付宝二维码图片地址,跟你设置logo的方式一样。比如:/images/alipay.jpg
|
# 支付宝二维码图片地址,跟你设置logo的方式一样。比如:/images/alipay.jpg
|
||||||
alipay: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/alipay.jpg
|
alipay: /images/alipay.jpg
|
||||||
# 微信二维码图片地址
|
# 微信二维码图片地址
|
||||||
weixin: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/wechat.jpg
|
weixin: /images/wechat.jpg
|
||||||
|
|
||||||
# 版权声明
|
# 版权声明
|
||||||
# 版权声明type设定:0-关闭版权声明; 1-文章对应的md文件里有copyright: true属性,才有版权声明; 2-所有文章均有版权声明
|
# 版权声明type设定:0-关闭版权声明; 1-文章对应的md文件里有copyright: true属性,才有版权声明; 2-所有文章均有版权声明
|
||||||
@ -123,7 +119,7 @@ layout:
|
|||||||
github:
|
github:
|
||||||
# (关闭请设置为false)
|
# (关闭请设置为false)
|
||||||
enable: true
|
enable: true
|
||||||
url: https://github.com/Shen-Yu/hexo-theme-ayer
|
url: https://github.com/alkyl1978/hexo-theme-ayer
|
||||||
|
|
||||||
# 网易云音乐插件
|
# 网易云音乐插件
|
||||||
music:
|
music:
|
||||||
@ -135,11 +131,11 @@ music:
|
|||||||
|
|
||||||
# 访问量统计(不蒜子)
|
# 访问量统计(不蒜子)
|
||||||
busuanzi:
|
busuanzi:
|
||||||
enable: true
|
enable: false
|
||||||
|
|
||||||
# 友盟cnzz统计(url填js代码src链接)
|
# 友盟cnzz统计(url填js代码src链接)
|
||||||
cnzz:
|
cnzz:
|
||||||
enable: true
|
enable: false
|
||||||
url: https://s9.cnzz.com/z_stat.php?id=1278069914&web_id=1278069914
|
url: https://s9.cnzz.com/z_stat.php?id=1278069914&web_id=1278069914
|
||||||
|
|
||||||
# Google Analytics
|
# Google Analytics
|
||||||
@ -147,26 +143,31 @@ google_analytics: ""
|
|||||||
# 百度统计
|
# 百度统计
|
||||||
baidu_analytics: ""
|
baidu_analytics: ""
|
||||||
|
|
||||||
|
yandex_analytics: true
|
||||||
|
|
||||||
# Mathjax数学公式
|
# Mathjax数学公式
|
||||||
mathjax: false
|
mathjax: false
|
||||||
|
|
||||||
# Katex数学公式(allpost设置为false时只有头部设置math:true的文章才开启)
|
# Katex数学公式(allpost设置为false时只有头部设置math:true的文章才开启)
|
||||||
# 需要更换hexo渲染器,npm un hexo-renderer-marked -S && npm i hexo-renderer-markdown-it-katex -S
|
# 需要更换hexo渲染器,npm un hexo-renderer-marked -S && npm i hexo-renderer-markdown-it-katex -S
|
||||||
katex:
|
katex:
|
||||||
enable: false # true
|
enable: true # true
|
||||||
allpost: true
|
allpost: true
|
||||||
copy_tex: false
|
copy_tex: false
|
||||||
|
|
||||||
# 网站成立年份(默认为 2019,若填入年份小于当前年份,则显示为 2018-2019 类似的格式)
|
# mermaid流程图 三个选项缺一不可(https://mermaid-js.github.io/mermaid/)
|
||||||
since: 2015
|
mermaid:
|
||||||
|
enable: true
|
||||||
|
cdn: https://cdn.staticfile.org/mermaid/8.14.0/mermaid.min.js
|
||||||
|
theme: forest
|
||||||
|
|
||||||
# 是否显示页脚信息(建议保留)
|
# 网站成立年份(默认为 2019,若填入年份小于当前年份,则显示为 2018-2019 类似的格式)
|
||||||
pageFooter: true
|
since: 2023
|
||||||
|
|
||||||
# ICP备案信息尾部显示
|
# ICP备案信息尾部显示
|
||||||
icp:
|
icp:
|
||||||
enable: false
|
enable: false
|
||||||
url: "http://www.beian.miit.gov.cn/" # 备案链接
|
url: "https://beian.miit.gov.cn/" # 备案链接
|
||||||
text: "浙ICP备88888888" # 备案信息
|
text: "浙ICP备88888888" # 备案信息
|
||||||
# 公安备案信息尾部显示
|
# 公安备案信息尾部显示
|
||||||
gongan:
|
gongan:
|
||||||
@ -179,71 +180,35 @@ gongan:
|
|||||||
friends_link:
|
friends_link:
|
||||||
Ayer主题: #网站名称
|
Ayer主题: #网站名称
|
||||||
#网站地址
|
#网站地址
|
||||||
url: https://github.com/Shen-Yu/hexo-theme-ayer
|
url: https://github.com/alkyl1978/hexo-theme-ayer
|
||||||
#网站图片(可忽略不写)
|
#网站图片(可忽略不写)
|
||||||
img: /images/ayer.png
|
img: /images/ayer.png
|
||||||
GitHub:
|
GitHub:
|
||||||
url: https://github.com/Shen-Yu
|
url: https://github.com/alkyl1978
|
||||||
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/github.png
|
img: /images/github.png
|
||||||
码云:
|
码云:
|
||||||
url: https://gitee.com/shen-yu
|
url: https://lp76.ru
|
||||||
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/gitee.png
|
img: /images/gitee.png
|
||||||
Hexo官网:
|
Hexo官网:
|
||||||
url: https://hexo.io
|
url: https://hexo.io
|
||||||
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/hexo.png
|
img: /images/hexo.png
|
||||||
Hexo图表插件:
|
|
||||||
url: https://github.com/Shen-Yu/hexo-tag-chart
|
|
||||||
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/hexo-tag-chart.png
|
|
||||||
|
|
||||||
# 评论:1、Valine(推荐);2、Gitalk;3、Twikoo; 4.MiniValine
|
|
||||||
|
|
||||||
# 1、Valine[一款快速、简洁且高效的无后端评论系统](https://github.com/xCss/Valine)
|
|
||||||
# 启用Valine必须先创建leancloud应用, 获取 id|key 填入即可
|
|
||||||
leancloud:
|
|
||||||
enable: true
|
|
||||||
app_id: #
|
|
||||||
app_key: #
|
|
||||||
# Valine配置
|
|
||||||
valine:
|
|
||||||
enable: true # 是否启用
|
|
||||||
avatar: monsterid # 头像样式(https://valine.js.org/avatar.html)
|
|
||||||
placeholder: 给我的文章加点评论吧~ # placeholder
|
|
||||||
|
|
||||||
# 2、Gitalk(https://github.com/gitalk/gitalk)
|
|
||||||
gitalk:
|
|
||||||
enable: false # true
|
|
||||||
clientID: # GitHub Application Client ID
|
|
||||||
clientSecret: # Client Secret
|
|
||||||
repo: # Repository name
|
|
||||||
owner: # GitHub ID
|
|
||||||
admin: # GitHub ID
|
|
||||||
|
|
||||||
# 3、Twikoo(https://github.com/imaegoo/twikoo)
|
|
||||||
twikoo:
|
|
||||||
enable: false
|
|
||||||
envId: #
|
|
||||||
|
|
||||||
# 4、MiniValine
|
|
||||||
# See: https://github.com/MiniValine/MiniValine
|
|
||||||
minivaline:
|
|
||||||
enable: false
|
|
||||||
md: true
|
|
||||||
# 更多选项 https://minivaline.js.org/docs/cn/#/Options 按照yml格式继续填写即可 (除了 [el] 选项)
|
|
||||||
# emoticonUrl 等列表选项 可参考 https://github.com/MiniValine/hexo-next-minivaline
|
|
||||||
# 下面是一个例子:
|
|
||||||
backend: waline
|
|
||||||
serverURL: https://waline.vercel.app
|
|
||||||
|
|
||||||
|
# 评论:1、Valine(推荐);2、Gitalk;3、Twikoo;
|
||||||
# 首页广告配置
|
# 首页广告配置
|
||||||
# 可以根据需要自行增加ad_3,ad_4...,留空则不显示,建议图片和url不要带ad等关键词,否则可能会被adblock等插件屏蔽
|
# 可以根据需要自行增加ad_3,ad_4...,留空则不显示,建议图片和url不要带ad等关键词,否则可能会被adblock等插件屏蔽
|
||||||
ads:
|
#ads:
|
||||||
ad_1:
|
# ad_1:
|
||||||
title: 腾讯云限时秒杀
|
# title: 云服务器限时秒杀
|
||||||
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/ten_1.jpg
|
# img: https://pic.imgdb.cn/item/62174b452ab3f51d912a5ccc.jpg
|
||||||
url: https://curl.qcloud.com/ezctH6FU
|
# url: https://curl.qcloud.com/kvO7hb43
|
||||||
width: 300
|
# width: 300
|
||||||
ad_2:
|
# ad_2:
|
||||||
title: 云服务器全球购低至2折
|
# title: vultr优惠vps
|
||||||
img: https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/ten_2.jpg
|
# img: https://pic.imgdb.cn/item/62174b452ab3f51d912a5cd7.png
|
||||||
url: https://curl.qcloud.com/kvO7hb43
|
# url: https://www.vultr.com/?ref=8630075
|
||||||
width: 300
|
# width: 300
|
||||||
|
|
||||||
|
# 网站开启加密访问,密码可设置任何字符
|
||||||
|
lock:
|
||||||
|
enable: true
|
||||||
|
password: 123456
|
||||||
|
6
bin/run.sh
Normal file
6
bin/run.sh
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -x
|
||||||
|
set -e
|
||||||
|
npm i
|
||||||
|
npm run build
|
||||||
|
|
@ -1,32 +0,0 @@
|
|||||||
categories: Kategorien
|
|
||||||
search: Suche
|
|
||||||
tags: Tags
|
|
||||||
tagcloud: Tag Cloud
|
|
||||||
tweets: Tweets
|
|
||||||
prev: zurück
|
|
||||||
next: weiter
|
|
||||||
comment: Kommentare
|
|
||||||
archive_a: Archiv
|
|
||||||
archive_b: "Archive: %s"
|
|
||||||
page: Seite %d
|
|
||||||
recent_posts: letzter Beitrag
|
|
||||||
newer: Neuer
|
|
||||||
older: Älter
|
|
||||||
share: Teilen
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: RSS Feed
|
|
||||||
category: Kategorie
|
|
||||||
tag: Tag
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: Freunde
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: Wortzahl
|
|
||||||
read_time: Lesezeit
|
|
||||||
minutes: Minuten
|
|
||||||
reward: Belohnung
|
|
||||||
sticky: Oben
|
|
||||||
copyright_title: Copyright-Hinweis
|
|
||||||
copyright_content: Sofern nicht anders angegeben, liegt das Urheberrecht aller Artikel in diesem Blog beim Autor. Nachdruck bitte Quelle angeben!
|
|
@ -30,3 +30,9 @@ post:
|
|||||||
sticky: Sticky
|
sticky: Sticky
|
||||||
copyright_title: Copyright
|
copyright_title: Copyright
|
||||||
copyright_content: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
|
copyright_content: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
|
||||||
|
|
||||||
|
lock:
|
||||||
|
lock_info: Please enter password
|
||||||
|
lock_error: Incorrect password, please try again
|
||||||
|
confirm_text: Ok
|
||||||
|
cancel_text: Cancel
|
||||||
|
@ -30,3 +30,9 @@ post:
|
|||||||
sticky: Sticky
|
sticky: Sticky
|
||||||
copyright_title: Copyright
|
copyright_title: Copyright
|
||||||
copyright_content: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
|
copyright_content: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
|
||||||
|
|
||||||
|
lock:
|
||||||
|
lock_info: Please enter password
|
||||||
|
lock_error: Incorrect password, please try again
|
||||||
|
confirm_text: Ok
|
||||||
|
cancel_text: Cancel
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
categories: Categorías
|
|
||||||
search: Buscar
|
|
||||||
tags: Tags
|
|
||||||
tagcloud: Nube de Tags
|
|
||||||
tweets: Tweets
|
|
||||||
prev: Previo
|
|
||||||
next: Siguiente
|
|
||||||
comment: Comentarios
|
|
||||||
archive_a: Archivos
|
|
||||||
archive_b: "Archivos: %s"
|
|
||||||
page: Página %d
|
|
||||||
recent_posts: Posts recientes
|
|
||||||
newer: Nuevo
|
|
||||||
older: Viejo
|
|
||||||
share: Compartir
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: RSS
|
|
||||||
category: Categoría
|
|
||||||
tag: Tag
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: Amigos
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: El recuento de palabras
|
|
||||||
read_time: Tiempo de lectura
|
|
||||||
minutes: minutos
|
|
||||||
reward: Recompensa
|
|
||||||
sticky: Arriba
|
|
||||||
copyright_title: Derechos de autor
|
|
||||||
copyright_content: Los derechos de autor son propiedad del autor. Para reimpresiones comerciales, comuníquese con el autor para obtener autorización. Para reimpresiones no comerciales, indique la fuente.
|
|
@ -30,3 +30,9 @@ post:
|
|||||||
sticky: Haut
|
sticky: Haut
|
||||||
copyright_title: Avis de copyright
|
copyright_title: Avis de copyright
|
||||||
copyright_content: Le droit d'auteur appartient à l'auteur. Pour les réimpressions commerciales, veuillez contacter l'auteur pour autorisation. Pour les réimpressions non commerciales, veuillez indiquer la source.
|
copyright_content: Le droit d'auteur appartient à l'auteur. Pour les réimpressions commerciales, veuillez contacter l'auteur pour autorisation. Pour les réimpressions non commerciales, veuillez indiquer la source.
|
||||||
|
|
||||||
|
lock:
|
||||||
|
lock_info: Please enter password
|
||||||
|
lock_error: Incorrect password, please try again
|
||||||
|
confirm_text: Ok
|
||||||
|
cancel_text: Cancel
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
categories: カテゴリ
|
|
||||||
search: 検索
|
|
||||||
tags: タグ
|
|
||||||
tagcloud: タグクラウド
|
|
||||||
tweets: ツイート
|
|
||||||
prev: 戻る
|
|
||||||
next: 次へ
|
|
||||||
comment: コメント
|
|
||||||
archive_a: アーカイブ
|
|
||||||
archive_b: "アーカイブ: %s"
|
|
||||||
page: ページ %d
|
|
||||||
recent_posts: 最近の投稿
|
|
||||||
newer: 次の記事
|
|
||||||
older: 前の記事
|
|
||||||
share: 共有
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: RSSフィード
|
|
||||||
category: カテゴリ
|
|
||||||
tag: タグ
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: 友達
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: 単語数
|
|
||||||
read_time: 読書の時間
|
|
||||||
minutes: 分
|
|
||||||
reward: 報酬
|
|
||||||
sticky: 上へ
|
|
||||||
copyright_title: 著作権表示
|
|
||||||
copyright_content: 著作権は著者が所有しています。商業版の複製については、承認について著者に連絡してください。非商業版の複製については、出典を明記してください。
|
|
@ -1,32 +0,0 @@
|
|||||||
categories: 카테고리
|
|
||||||
search: 검색
|
|
||||||
tags: 태그
|
|
||||||
tagcloud: 태그 클라우드
|
|
||||||
tweets: 트윗
|
|
||||||
prev: 이전
|
|
||||||
next: 다음
|
|
||||||
comment: 댓글
|
|
||||||
archive_a: 아카이브
|
|
||||||
archive_b: "아카이브: %s"
|
|
||||||
page: 페이지 %d
|
|
||||||
recent_posts: 최근 포스트
|
|
||||||
newer: 최신
|
|
||||||
older: 이전
|
|
||||||
share: 공유
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: RSS Feed
|
|
||||||
category: 카테고리
|
|
||||||
tag: 태그
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: 친구 들
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: 단어 수
|
|
||||||
read_time: 독서 시간
|
|
||||||
minutes: 분
|
|
||||||
reward: 보상
|
|
||||||
sticky: 톱
|
|
||||||
copyright_title: 저작권 고지
|
|
||||||
copyright_content: 저작권은 저자가 소유합니다. 상업용 재 인쇄의 경우 승인을 위해 저자에게 문의하십시오. 비상업적 재 인쇄의 경우 출처를 명시하십시오.
|
|
@ -30,3 +30,9 @@ post:
|
|||||||
sticky: Sticky
|
sticky: Sticky
|
||||||
copyright_title: Copyright melding
|
copyright_title: Copyright melding
|
||||||
copyright_content: Copyright is eigendom van de auteur. Neem voor commerciële herdrukken contact op met de auteur voor autorisatie. Geef de bron aan voor niet-commerciële herdrukken.
|
copyright_content: Copyright is eigendom van de auteur. Neem voor commerciële herdrukken contact op met de auteur voor autorisatie. Geef de bron aan voor niet-commerciële herdrukken.
|
||||||
|
|
||||||
|
lock:
|
||||||
|
lock_info: Please enter password
|
||||||
|
lock_error: Incorrect password, please try again
|
||||||
|
confirm_text: Ok
|
||||||
|
cancel_text: Cancel
|
||||||
|
@ -30,3 +30,9 @@ post:
|
|||||||
sticky: Sticky
|
sticky: Sticky
|
||||||
copyright_title: Opphavsrett
|
copyright_title: Opphavsrett
|
||||||
copyright_content: Opphavsrett eies av forfatteren. For kommersielle opptrykk, vennligst kontakt forfatteren for godkjenning. For ikke-kommersiell uttrykk, vennligst oppgi kilden.
|
copyright_content: Opphavsrett eies av forfatteren. For kommersielle opptrykk, vennligst kontakt forfatteren for godkjenning. For ikke-kommersiell uttrykk, vennligst oppgi kilden.
|
||||||
|
|
||||||
|
lock:
|
||||||
|
lock_info: Please enter password
|
||||||
|
lock_error: Incorrect password, please try again
|
||||||
|
confirm_text: Ok
|
||||||
|
cancel_text: Cancel
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
categories: Categorias
|
|
||||||
search: Buscar
|
|
||||||
tags: Tags
|
|
||||||
tagcloud: Nuvem de Tags
|
|
||||||
tweets: Tweets
|
|
||||||
prev: Anterior
|
|
||||||
next: Próximo
|
|
||||||
comment: Comentários
|
|
||||||
archive_a: Arquivos
|
|
||||||
archive_b: "Arquivos: %s"
|
|
||||||
page: Página %d
|
|
||||||
recent_posts: Postagens Recentes
|
|
||||||
newer: Mais Recente
|
|
||||||
older: Mais Antigo
|
|
||||||
share: Compartilhar
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: Feed RSS
|
|
||||||
category: Categoria
|
|
||||||
tag: Tag
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: Amigos
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: Word count
|
|
||||||
read_time: Reading time
|
|
||||||
minutes: min
|
|
||||||
reward: Donate
|
|
||||||
sticky: Sticky
|
|
||||||
copyright_title: direito autoral
|
|
||||||
copyright_content: Os direitos autorais são de propriedade do autor. Para reimpressões comerciais, entre em contato com o autor para obter autorização. Para reimpressões não comerciais, indique a fonte.
|
|
@ -30,3 +30,9 @@ post:
|
|||||||
sticky: липкий
|
sticky: липкий
|
||||||
copyright_title: Авторские права
|
copyright_title: Авторские права
|
||||||
copyright_content: Авторские права принадлежат автору. Для коммерческих перепечаток, пожалуйста, свяжитесь с автором для авторизации. Для некоммерческих перепечаток, пожалуйста, укажите источник.
|
copyright_content: Авторские права принадлежат автору. Для коммерческих перепечаток, пожалуйста, свяжитесь с автором для авторизации. Для некоммерческих перепечаток, пожалуйста, укажите источник.
|
||||||
|
|
||||||
|
lock:
|
||||||
|
lock_info: Please enter password
|
||||||
|
lock_error: Incorrect password, please try again
|
||||||
|
confirm_text: Ok
|
||||||
|
cancel_text: Cancel
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
categories: Thể loại
|
|
||||||
search: Tìm Kiếm
|
|
||||||
tags: thẻ
|
|
||||||
tagcloud: thẻ đám mây
|
|
||||||
tweets: Tweets
|
|
||||||
prev: trước
|
|
||||||
next: kế tiếp
|
|
||||||
comment: bình luận
|
|
||||||
archive_a: Archives
|
|
||||||
archive_b: "Archives: %s"
|
|
||||||
page: Page %d
|
|
||||||
recent_posts: Bài viết gần đây
|
|
||||||
newer: mới hơn
|
|
||||||
older: lớn hơn
|
|
||||||
share: chia sẻ
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: RSS Feed
|
|
||||||
category: Thể loại
|
|
||||||
tag: thẻ
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: Bạn
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: Đếm từ
|
|
||||||
read_time: Thời gian đọc
|
|
||||||
minutes: min
|
|
||||||
reward: tặng
|
|
||||||
sticky: dính
|
|
||||||
copyright_title: Bản quyền
|
|
||||||
copyright_content: Bản quyền thuộc sở hữu của tác giả. Đối với tái bản thương mại, xin vui lòng liên hệ với tác giả cho phép. Đối với tái bản phi thương mại, xin vui lòng cho biết nguồn.
|
|
@ -1,32 +0,0 @@
|
|||||||
categories: 分类
|
|
||||||
search: 搜索
|
|
||||||
tags: 标签
|
|
||||||
tagcloud: 标签云
|
|
||||||
tweets: 推文
|
|
||||||
prev: 上一页
|
|
||||||
next: 下一页
|
|
||||||
comment: 留言
|
|
||||||
archive_a: 归档
|
|
||||||
archive_b: 归档:%s
|
|
||||||
page: 第 %d 页
|
|
||||||
recent_posts: 最新文章
|
|
||||||
newer: Newer
|
|
||||||
older: Older
|
|
||||||
share: 分享
|
|
||||||
powered_by: 由 %s 强力驱动
|
|
||||||
theme: 主题 - %s
|
|
||||||
rss_feed: RSS Feed
|
|
||||||
category: Category
|
|
||||||
tag: Tag
|
|
||||||
site_visitors: 访问人数
|
|
||||||
page_views: 浏览次数
|
|
||||||
friends: 友情链接
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: 字数统计
|
|
||||||
read_time: 阅读时长
|
|
||||||
minutes: 分钟
|
|
||||||
reward: 打赏
|
|
||||||
sticky: 置顶
|
|
||||||
copyright_title: 版权声明
|
|
||||||
copyright_content: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
|
|
@ -1,32 +0,0 @@
|
|||||||
categories: 分類
|
|
||||||
search: 搜尋
|
|
||||||
tags: 標籤
|
|
||||||
tagcloud: 標籤雲
|
|
||||||
tweets: 推文
|
|
||||||
prev: 上一頁
|
|
||||||
next: 下一頁
|
|
||||||
comment: 留言
|
|
||||||
archive_a: 彙整
|
|
||||||
archive_b: 彙整:%s
|
|
||||||
page: 第 %d 頁
|
|
||||||
recent_posts: 最新文章
|
|
||||||
newer: Newer
|
|
||||||
older: Older
|
|
||||||
share: Share
|
|
||||||
powered_by: Powered by %s
|
|
||||||
theme: Theme - %s
|
|
||||||
rss_feed: RSS Feed
|
|
||||||
category: Category
|
|
||||||
tag: Tag
|
|
||||||
site_visitors: Visitors
|
|
||||||
page_views: Views
|
|
||||||
friends: 友情鏈接
|
|
||||||
|
|
||||||
post:
|
|
||||||
word_count: 字數統計
|
|
||||||
read_time: 閱讀時長
|
|
||||||
minutes: 分鐘
|
|
||||||
reward: 打賞
|
|
||||||
sticky: 置頂
|
|
||||||
copyright_title: 版權聲明
|
|
||||||
copyright_content: 本博客所有文章除特別聲明外,著作權歸作者所有。轉載請註明出處!
|
|
@ -1,66 +1,57 @@
|
|||||||
<%- js('/js/jquery-2.0.3.min') %>
|
<%- js('/js/jquery-3.6.0.min') %> <%- js('/js/lazyload.min') %>
|
||||||
<%- js('/js/lazyload.min') %>
|
|
||||||
<!-- Tocbot -->
|
<!-- Tocbot -->
|
||||||
<% if (theme.toc && is_post() && !page.no_toc){ %>
|
<% if (theme.toc && is_post() && !page.no_toc){ %> <%- js('/js/tocbot.min') %>
|
||||||
<%- js('/js/tocbot.min') %>
|
|
||||||
<script>
|
<script>
|
||||||
tocbot.init({
|
tocbot.init({
|
||||||
tocSelector: '.tocbot',
|
tocSelector: ".tocbot",
|
||||||
contentSelector: '.article-entry',
|
contentSelector: ".article-entry",
|
||||||
headingSelector: 'h1, h2, h3, h4, h5, h6',
|
headingSelector: "h1, h2, h3, h4, h5, h6",
|
||||||
hasInnerContainers: true,
|
hasInnerContainers: true,
|
||||||
scrollSmooth: true,
|
scrollSmooth: true,
|
||||||
scrollContainer: 'main',
|
scrollContainer: "main",
|
||||||
positionFixedSelector: '.tocbot',
|
positionFixedSelector: ".tocbot",
|
||||||
positionFixedClass: 'is-position-fixed',
|
positionFixedClass: "is-position-fixed",
|
||||||
fixedSidebarOffset: 'auto'
|
fixedSidebarOffset: "auto",
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<% } %>
|
<% } %>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/jquery-modal@0.9.2/jquery.modal.min.js"></script>
|
<script src="https://cdn.staticfile.org/jquery-modal/0.9.2/jquery.modal.min.js"></script>
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/jquery-modal@0.9.2/jquery.modal.min.css">
|
<link
|
||||||
<script src="https://cdn.jsdelivr.net/npm/justifiedGallery@3.7.0/dist/js/jquery.justifiedGallery.min.js"></script>
|
rel="stylesheet"
|
||||||
|
href="https://cdn.staticfile.org/jquery-modal/0.9.2/jquery.modal.min.css"
|
||||||
|
/>
|
||||||
|
<script src="https://cdn.staticfile.org/justifiedGallery/3.8.1/js/jquery.justifiedGallery.min.js"></script>
|
||||||
<%- js('dist/main') %>
|
<%- js('dist/main') %>
|
||||||
<!-- ImageViewer -->
|
<!-- ImageViewer -->
|
||||||
<% if (theme.image_viewer){ %>
|
<% if (theme.image_viewer){ %> <%- partial('viewer') %> <% } %>
|
||||||
<%- partial('viewer') %>
|
|
||||||
<% } %>
|
|
||||||
<!-- MathJax -->
|
<!-- MathJax -->
|
||||||
<% if (theme.mathjax){ %>
|
<% if (theme.mathjax){ %> <%- partial('mathjax') %>
|
||||||
<%- partial('mathjax') %>
|
|
||||||
<script>
|
<script>
|
||||||
var ayerConfig = {
|
var ayerConfig = {
|
||||||
mathjax: true
|
mathjax: true,
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
<% } %>
|
<% } %>
|
||||||
<!-- Katex -->
|
<!-- Katex -->
|
||||||
<% if (theme.katex.enable){ %>
|
<% if (theme.katex.enable){ %> <%- partial('katex') %> <% } %>
|
||||||
<%- partial('katex') %>
|
|
||||||
<% } %>
|
|
||||||
<!-- busuanzi -->
|
<!-- busuanzi -->
|
||||||
<% if (theme.busuanzi && theme.busuanzi.enable){ %>
|
<% if (theme.busuanzi && theme.busuanzi.enable){ %> <%-
|
||||||
<%- js('/js/busuanzi-2.3.pure.min') %>
|
js('/js/busuanzi-2.3.pure.min') %> <% } %>
|
||||||
<% } %>
|
|
||||||
<!-- ClickLove -->
|
<!-- ClickLove -->
|
||||||
<% if (theme.click_effect===1){ %>
|
<% if (theme.click_effect===1){ %> <%- js('/js/clickLove') %> <% } %>
|
||||||
<%- js('/js/clickLove') %>
|
|
||||||
<% } %>
|
|
||||||
<!-- ClickBoom1 -->
|
<!-- ClickBoom1 -->
|
||||||
<% if (theme.click_effect===2){ %>
|
<% if (theme.click_effect===2){ %>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/animejs@latest/anime.min.js"></script>
|
<script src="https://cdn.staticfile.org/animejs/3.2.1/anime.min.js"></script>
|
||||||
<%- js('/js/clickBoom1') %>
|
<%- js('/js/clickBoom1') %> <% } %>
|
||||||
<% } %>
|
|
||||||
<!-- ClickBoom2 -->
|
<!-- ClickBoom2 -->
|
||||||
<% if (theme.click_effect===3){ %>
|
<% if (theme.click_effect===3){ %> <%- js('/js/clickBoom2') %> <% } %>
|
||||||
<%- js('/js/clickBoom2') %>
|
|
||||||
<% } %>
|
|
||||||
<!-- CodeCopy -->
|
<!-- CodeCopy -->
|
||||||
<% if (theme.copy_btn == true) { %>
|
<% if (theme.copy_btn == true) { %> <%- css('/css/clipboard') %> <%-
|
||||||
<%- css('/css/clipboard') %>
|
partial('post/clipboard') %> <% } %>
|
||||||
<%- partial('post/clipboard') %>
|
|
||||||
<% } %>
|
|
||||||
<!-- CanvasBackground -->
|
<!-- CanvasBackground -->
|
||||||
<% if (theme.canvas_bg == 1) { %>
|
<% if (theme.canvas_bg == 1) { %> <%- js('/js/dz') %> <% } %>
|
||||||
<%- js('/js/dz') %>
|
<script>
|
||||||
<% } %>
|
if (window.mermaid) {
|
||||||
|
mermaid.initialize({ theme: "<%= theme.mermaid.theme %>" });
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
@ -9,6 +9,7 @@
|
|||||||
<% if (post.link || post.title){ %>
|
<% if (post.link || post.title){ %>
|
||||||
<header class="article-header">
|
<header class="article-header">
|
||||||
<%- partial('post/title', {class_name: 'article-title'}) %>
|
<%- partial('post/title', {class_name: 'article-title'}) %>
|
||||||
|
<%- partial('post/author', {class_name: 'article-author'}) %>
|
||||||
</header>
|
</header>
|
||||||
<% } %> <% if (index || is_post()) { %>
|
<% } %> <% if (index || is_post()) { %>
|
||||||
<div class="article-meta">
|
<div class="article-meta">
|
||||||
@ -38,7 +39,6 @@
|
|||||||
<% } %>
|
<% } %>
|
||||||
</div>
|
</div>
|
||||||
<% } %>
|
<% } %>
|
||||||
|
|
||||||
<!-- copyright -->
|
<!-- copyright -->
|
||||||
<% if (((theme.copyright_type === 2) || (theme.copyright_type === 1 &&
|
<% if (((theme.copyright_type === 2) || (theme.copyright_type === 1 &&
|
||||||
post.copyright)) && !index){ %>
|
post.copyright)) && !index){ %>
|
||||||
@ -65,7 +65,5 @@
|
|||||||
<% if (!index){ %> <%- partial('post/nav') %> <% } %> <% if (theme.valine &&
|
<% if (!index){ %> <%- partial('post/nav') %> <% } %> <% if (theme.valine &&
|
||||||
theme.valine.enable && !post.no_valine){ %> <%- partial('post/valine', { key:
|
theme.valine.enable && !post.no_valine){ %> <%- partial('post/valine', { key:
|
||||||
post.slug, title: post.title, url: config.url+url_for(post.path) }) %> <% } %>
|
post.slug, title: post.title, url: config.url+url_for(post.path) }) %> <% } %>
|
||||||
<% if (is_post()) { %> <%- partial('post/gitalk') %> <% } %> <% if
|
|
||||||
(theme.minivaline && theme.minivaline.enable && !post.no_minivaline){ %> <%-
|
|
||||||
partial('post/minivaline') %> <% } %> <% if (is_post()) { %> <%- partial('post/twikoo') %> <% } %>
|
|
||||||
</article>
|
</article>
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
<% } %>
|
<% } %>
|
||||||
|
|
||||||
<% if (theme.subtitle.enable){ %>
|
<% if (theme.subtitle.enable){ %>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/typed.js@2.0.11/lib/typed.min.js"></script>
|
<script src="https://cdn.staticfile.org/typed.js/2.0.12/typed.min.js"></script>
|
||||||
<% } %>
|
<% } %>
|
||||||
|
|
||||||
<!-- Subtitle -->
|
<!-- Subtitle -->
|
||||||
|
@ -11,43 +11,12 @@
|
|||||||
<li>
|
<li>
|
||||||
<% if (theme.pageFooter){ %>
|
<% if (theme.pageFooter){ %>
|
||||||
<% var hexoLink = '<a href="https://hexo.io" target="_blank">Hexo</a>'; %>
|
<% var hexoLink = '<a href="https://hexo.io" target="_blank">Hexo</a>'; %>
|
||||||
<% var themeLink = '<a href="https://github.com/Shen-Yu/hexo-theme-ayer" target="_blank">Ayer</a>'; %>
|
<% var themeLink = '<a href="https://github.com/alkyl1978/hexo-theme-ayer" target="_blank">Ayer</a>'; %>
|
||||||
<%- __('powered_by', hexoLink) %>
|
<%- __('powered_by', hexoLink) %>
|
||||||
<span class="division">|</span>
|
<span class="division">|</span>
|
||||||
<%- __('theme', themeLink) %>
|
<%- __('theme', themeLink) %>
|
||||||
<% } %>
|
<% } %>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<% if (theme.busuanzi && theme.busuanzi.enable){ %>
|
|
||||||
<%# "不蒜子统计" %>
|
|
||||||
<%- partial('post/busuanzi') %>
|
|
||||||
<% } %>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<ul>
|
|
||||||
<% if (theme.icp&&theme.icp.enable){ %>
|
|
||||||
<li>
|
|
||||||
<a href="<%= theme.icp.url %>" target="_black" rel="nofollow"><%= theme.icp.text %></a>
|
|
||||||
</li>
|
|
||||||
<% } %>
|
|
||||||
</ul>
|
|
||||||
<ul>
|
|
||||||
<% if (theme.gongan&&theme.gongan.enable){ %>
|
|
||||||
<li>
|
|
||||||
<img src="<%= theme.gongan.img %>"></img>
|
|
||||||
<a href="<%= theme.gongan.url %>" target="_black" rel="nofollow"><%= theme.gongan.text %></a>
|
|
||||||
</li>
|
|
||||||
<% } %>
|
|
||||||
</ul>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<!-- cnzz统计 -->
|
|
||||||
<% if (theme.cnzz&&theme.cnzz.enable){ %>
|
|
||||||
<script type="text/javascript" src='<%= theme.cnzz.url%>'></script>
|
|
||||||
<% } %>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
@ -1,14 +1,10 @@
|
|||||||
<% if (theme.google_analytics){ %>
|
<% if (theme.google_analytics){ %>
|
||||||
<%# "Google Analytics" %>
|
<!-- Global site tag (gtag.js) - Google Analytics -->
|
||||||
<script type="text/javascript">
|
<script async src="https://www.googletagmanager.com/gtag/js?id=<%= theme.google_analytics %>"></script>
|
||||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
<script>
|
||||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
window.dataLayer = window.dataLayer || [];
|
||||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
function gtag(){dataLayer.push(arguments);}
|
||||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
gtag('js', new Date());
|
||||||
|
gtag('config', '<%= theme.google_analytics %>');
|
||||||
ga('create', '<%= theme.google_analytics %>', 'auto');
|
|
||||||
ga('send', 'pageview');
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
<%# "End Google Analytics" %>
|
|
||||||
<% } %>
|
<% } %>
|
||||||
|
@ -2,18 +2,20 @@
|
|||||||
|
|
||||||
<% if (config.language){ %>
|
<% if (config.language){ %>
|
||||||
<html lang="<%= config.language %>">
|
<html lang="<%= config.language %>">
|
||||||
<% } else { %>
|
<% } else { %>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<% }%>
|
<% }%>
|
||||||
|
<head>
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<% var title = page.title; if (is_archive()) { title = __('archive_a'); if
|
<% var title = page.title; if (is_archive()) { title = __('archive_a'); if
|
||||||
(is_month()) { title += ': ' + page.year + '/' + page.month; } else if
|
(is_month()) { title += ': ' + page.year + '/' + page.month; } else if
|
||||||
(is_year()) { title += ': ' + page.year; } } else if (is_category()) { title
|
(is_year()) { title += ': ' + page.year; } } else if (is_category()) {
|
||||||
= page.category; } else if (is_tag()) {
|
title = page.category; } else if (is_tag()) { title = __('tag') + ': ' +
|
||||||
title = __('tag') + ': ' + page.tag; } %> <% if (page.keywords){ %>
|
page.tag; } %> <% if (page.keywords){ %>
|
||||||
<meta name="keywords" content="<%= page.keywords %>,<%= config.keywords %>" />
|
<meta
|
||||||
|
name="keywords"
|
||||||
|
content="<%= page.keywords %>,<%= config.keywords %>"
|
||||||
|
/>
|
||||||
<% } else if (config.keywords){ %>
|
<% } else if (config.keywords){ %>
|
||||||
<meta name="keywords" content="<%= config.keywords %>" />
|
<meta name="keywords" content="<%= config.keywords %>" />
|
||||||
<% } %> <% if (page.description){ %>
|
<% } %> <% if (page.description){ %>
|
||||||
@ -21,21 +23,36 @@
|
|||||||
<% } else if (config.description){ %>
|
<% } else if (config.description){ %>
|
||||||
<meta name="description" content="<%= config.description %>" />
|
<meta name="description" content="<%= config.description %>" />
|
||||||
<% } %>
|
<% } %>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
|
<meta
|
||||||
<title>
|
name="viewport"
|
||||||
<% if (title){ %><%= title %> | <% } %> <%= config.title %>
|
content="width=device-width, initial-scale=1, maximum-scale=1"
|
||||||
</title>
|
/>
|
||||||
|
<title><% if (title){ %><%= title %> | <% } %> <%= config.title %></title>
|
||||||
<% if (theme.favicon){ %>
|
<% if (theme.favicon){ %>
|
||||||
<link rel="shortcut icon" href="<%- theme.favicon %>" />
|
<link rel="shortcut icon" href="<%- theme.favicon %>" />
|
||||||
<% } %>
|
<% } %> <%- css('dist/main') %>
|
||||||
<%- css('dist/main') %>
|
<%- css('css/fonts/remixicon') %>
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/css/remixicon.min.css">
|
<%- css('css/custom') %> <% if (theme.progressBar){ %>
|
||||||
<%- css('css/custom') %>
|
<script src="https://cdn.staticfile.org/pace/1.2.4/pace.min.js"></script>
|
||||||
<% if (theme.progressBar){ %>
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/pace-js@1.0.2/pace.min.js"></script>
|
|
||||||
<% } %>
|
<% } %>
|
||||||
<%- partial('google-analytics') %>
|
<%- partial('google-analytics') %>
|
||||||
<%- partial('baidu-analytics') %>
|
<%- partial('baidu-analytics') %>
|
||||||
</head>
|
<%- partial('yandex-analytics') %>
|
||||||
|
<link
|
||||||
|
rel="stylesheet"
|
||||||
|
href="https://cdn.jsdelivr.net/npm/@sweetalert2/theme-bulma@5.0.1/bulma.min.css"
|
||||||
|
/>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.0.19/dist/sweetalert2.min.js"></script>
|
||||||
|
|
||||||
|
<!-- mermaid -->
|
||||||
|
<% if (theme.mermaid.enable) { %>
|
||||||
|
<script src="<%= theme.mermaid.cdn %>"></script>
|
||||||
|
<% } %>
|
||||||
|
<style>
|
||||||
|
.swal2-styled.swal2-confirm {
|
||||||
|
font-size: 1.6rem;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
</html>
|
</html>
|
@ -1,11 +1,11 @@
|
|||||||
<% if ( theme.katex.enable ) { %>
|
<% if ( theme.katex.enable ) { %>
|
||||||
<% if( theme.katex.allpost || page.math ) { %>
|
<% if( theme.katex.allpost || page.math ) { %>
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.css">
|
<link rel="stylesheet" href="https://cdn.staticfile.org/KaTeX/0.15.1/katex.min.css">
|
||||||
<script src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.js"></script>
|
<script src="https://cdn.staticfile.org/KaTeX/0.15.1/katex.min.js"></script>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/contrib/auto-render.min.js"></script>
|
<script src="https://cdn.staticfile.org/KaTeX/0.15.1/contrib/auto-render.min.js"></script>
|
||||||
<% if ( theme.katex.copy_tex ) { %>
|
<% if ( theme.katex.copy_tex ) { %>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/contrib/copy-tex.min.js"></script>
|
<script src="https://cdn.staticfile.org/KaTeX/0.15.1/contrib/copy-tex.min.js"></script>
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/contrib/copy-tex.min.css">
|
<link rel="stylesheet" href="https://cdn.staticfile.org/KaTeX/0.15.1/contrib/copy-tex.min.css">
|
||||||
<% } %>
|
<% } %>
|
||||||
<% } %>
|
<% } %>
|
||||||
<% } %>
|
<% } %>
|
37
layout/_partial/lock.ejs
Normal file
37
layout/_partial/lock.ejs
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<% if (theme.lock.enable){ %>
|
||||||
|
<script>
|
||||||
|
const password = "<%= theme.lock.password %>";
|
||||||
|
const lock_password = window.sessionStorage.getItem("lock_password");
|
||||||
|
console.log(password, lock_password);
|
||||||
|
if (lock_password !== password) {
|
||||||
|
Swal.fire({
|
||||||
|
title: "<%= __('lock.lock_info') %>",
|
||||||
|
input: "text",
|
||||||
|
inputAttributes: {
|
||||||
|
autocapitalize: "off",
|
||||||
|
},
|
||||||
|
showCancelButton: false,
|
||||||
|
showLoaderOnConfirm: true,
|
||||||
|
allowOutsideClick: false,
|
||||||
|
confirmButtonText: "<%= __('lock.confirm_text') %>",
|
||||||
|
}).then((result) => {
|
||||||
|
console.log(result);
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
console.log(password);
|
||||||
|
if (result.value === password) {
|
||||||
|
window.sessionStorage.setItem("lock_password", result.value);
|
||||||
|
} else {
|
||||||
|
Swal.fire({
|
||||||
|
icon: "error",
|
||||||
|
title: "<%= __('lock.lock_error') %>",
|
||||||
|
confirmButtonText: "<%= __('lock.confirm_text') %>",
|
||||||
|
allowOutsideClick: false,
|
||||||
|
}).then(() => {
|
||||||
|
window.location.reload();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<% } %>
|
@ -15,4 +15,5 @@
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/mathjax@2.7.6/unpacked/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
|
<script src="https://cdn.staticfile.org/mathjax/2.7.7/MathJax.js"></script>
|
||||||
|
<script src="https://cdn.staticfile.org/mathjax/2.7.7/config/TeX-AMS-MML_HTMLorMML-full.js"></script>
|
@ -1,16 +0,0 @@
|
|||||||
<div id="music">
|
|
||||||
<%# "bottom:120px; left:auto;position:fixed; width:85%" %>
|
|
||||||
<% var defaultHeight = theme.music.type == 1 ? '32' : '66'; %>
|
|
||||||
<% var defaultIframeHeight = theme.music.type == 1 ? '52' : '86'; %>
|
|
||||||
<iframe frameborder="no" border="1" marginwidth="0" marginheight="0" width="200" height="<%=defaultIframeHeight%>"
|
|
||||||
src="//music.163.com/outchain/player?type=2&id=<%=theme.music.id||22707008%>&auto=<%=theme.music.autoPlay?1:0%>&height=<%=defaultHeight%>"></iframe>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
#music {
|
|
||||||
position: fixed;
|
|
||||||
right: 15px;
|
|
||||||
bottom: 0;
|
|
||||||
z-index: 998;
|
|
||||||
}
|
|
||||||
</style>
|
|
8
layout/_partial/post/author.ejs
Normal file
8
layout/_partial/post/author.ejs
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<% if (post.authors && post.authors.length){ %>
|
||||||
|
<div class="<%= class_name %>" <% if (!index){ %> style="text-align: center" <% }%>>
|
||||||
|
作者:<% for (var i = 0; i < post.authors.length - 1; i++) { %>
|
||||||
|
<%= post.authors[i]%> ,
|
||||||
|
<% }%> <%= post.authors[post.authors.length - 1] %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% } %>
|
@ -1,5 +1,5 @@
|
|||||||
<span>
|
<span>
|
||||||
<span><i class="ri-user-3-fill"></i><%- __('site_visitors') %>:<span id="busuanzi_value_site_uv"></span></s>
|
<span><i class="ri-user-3-fill"></i><%- __('site_visitors') %>:<span id="busuanzi_value_site_uv"></span></span>
|
||||||
<span class="division">|</span>
|
<span class="division">|</span>
|
||||||
<span><i class="ri-eye-fill"></i><%- __('page_views') %>:<span id="busuanzi_value_page_pv"></span></span>
|
<span><i class="ri-eye-fill"></i><%- __('page_views') %>:<span id="busuanzi_value_page_pv"></span></span>
|
||||||
</span>
|
</span>
|
@ -1,4 +1,4 @@
|
|||||||
<script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script>
|
<script src="https://cdn.staticfile.org/clipboard.js/2.0.10/clipboard.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
function wait(callback, seconds) {
|
function wait(callback, seconds) {
|
||||||
var timelag = null;
|
var timelag = null;
|
||||||
|
@ -1,21 +0,0 @@
|
|||||||
<% if (theme.gitalk.enable && post.comments) { %>
|
|
||||||
<div class="gitalk" id="gitalk-container"></div>
|
|
||||||
<%- css('https://cdn.jsdelivr.net/npm/gitalk@1.6.2/dist/gitalk.css') %>
|
|
||||||
<%- js('https://cdn.jsdelivr.net/npm/gitalk@1.6.2/dist/gitalk.min.js') %>
|
|
||||||
<%- js('https://cdn.jsdelivr.net/npm/blueimp-md5@2.10.0/js/md5.min.js') %>
|
|
||||||
<script type="text/javascript">
|
|
||||||
var gitalk = new Gitalk({
|
|
||||||
clientID: '<%- theme.gitalk.clientID %>',
|
|
||||||
clientSecret: '<%- theme.gitalk.clientSecret %>',
|
|
||||||
repo: '<%- theme.gitalk.repo %>',
|
|
||||||
owner: '<%- theme.gitalk.owner %>',
|
|
||||||
admin: ['<%- theme.gitalk.admin %>'],
|
|
||||||
// id: location.pathname, // Ensure uniqueness and length less than 50
|
|
||||||
id: md5(location.pathname),
|
|
||||||
distractionFreeMode: false, // Facebook-like distraction free mode
|
|
||||||
pagerDirection: 'last'
|
|
||||||
})
|
|
||||||
|
|
||||||
gitalk.render('gitalk-container')
|
|
||||||
</script>
|
|
||||||
<% } %>
|
|
@ -1,77 +0,0 @@
|
|||||||
<% if (!index && post.comments){ %>
|
|
||||||
<!-- minivaline评论 -->
|
|
||||||
<div id="mvcomments-box">
|
|
||||||
<div id="mvcomments"></div>
|
|
||||||
</div>
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/minivaline@latest"></script>
|
|
||||||
<script>
|
|
||||||
new MiniValine(Object.assign(<%- JSON.stringify(theme.minivaline) %>, {
|
|
||||||
el: '#mvcomments',
|
|
||||||
}));
|
|
||||||
const infoEle = document.querySelector('#mvcomments .info');
|
|
||||||
if (infoEle && infoEle.childNodes && infoEle.childNodes.length > 0) {
|
|
||||||
infoEle.childNodes.forEach(function (item) {
|
|
||||||
item.parentNode.removeChild(item);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<style>
|
|
||||||
#mvcomments-box {
|
|
||||||
padding: 5px 30px;
|
|
||||||
}
|
|
||||||
@media screen and (max-width: 800px) {
|
|
||||||
#mvcomments-box {
|
|
||||||
padding: 5px 0px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.darkmode .MiniValine *{
|
|
||||||
color: #f1f1f1!important;
|
|
||||||
}
|
|
||||||
.darkmode .commentTrigger{
|
|
||||||
background-color: #403e3e !important;
|
|
||||||
}
|
|
||||||
.darkmode .MiniValine .vpage .more{
|
|
||||||
background: #21232F
|
|
||||||
}
|
|
||||||
.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>
|
|
||||||
<% } %>
|
|
@ -27,6 +27,7 @@
|
|||||||
<i class="icon icon-qzone"></i>
|
<i class="icon icon-qzone"></i>
|
||||||
</a> -->
|
</a> -->
|
||||||
<% } %>
|
<% } %>
|
||||||
|
<% if( theme.share_eng ) { %>
|
||||||
<a class="facebook share-sns" href="javascript:;" data-type="facebook">
|
<a class="facebook share-sns" href="javascript:;" data-type="facebook">
|
||||||
<i class="ri-facebook-circle-fill"></i>
|
<i class="ri-facebook-circle-fill"></i>
|
||||||
</a>
|
</a>
|
||||||
@ -36,16 +37,16 @@
|
|||||||
<a class="google share-sns" href="javascript:;" data-type="google">
|
<a class="google share-sns" href="javascript:;" data-type="google">
|
||||||
<i class="ri-google-fill"></i>
|
<i class="ri-google-fill"></i>
|
||||||
</a>
|
</a>
|
||||||
|
<% } %>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!--
|
||||||
<div class="wx-share-modal">
|
<div class="wx-share-modal">
|
||||||
<a class="modal-close" href="javascript:;"><i class="ri-close-circle-line"></i></a>
|
<a class="modal-close" href="javascript:;"><i class="ri-close-circle-line"></i></a>
|
||||||
<p>扫一扫,分享到微信</p>
|
<p>扫一扫,分享到微信</p>
|
||||||
<div class="wx-qrcode">
|
<div class="wx-qrcode">
|
||||||
<img src="<%- 'qrcode' in locals ? qrcode(sUrl) : '//api.qrserver.com/v1/create-qr-code/?size=150x150&data=' + sUrl %>" alt="微信分享二维码">
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
-->
|
||||||
<div id="share-mask"></div>
|
<div id="share-mask"></div>
|
@ -4,3 +4,5 @@
|
|||||||
class: 'article-tag'
|
class: 'article-tag'
|
||||||
}) %>
|
}) %>
|
||||||
<% } %>
|
<% } %>
|
||||||
|
<!-- реклама-->
|
||||||
|
<div id="v9NMhvNxS5mPbQZeytTmfkhUc0UNVLw"></div>
|
@ -1,5 +1,5 @@
|
|||||||
<% if (!index && theme.twikoo && theme.twikoo.enable){ %>
|
<% if (!index && theme.twikoo && theme.twikoo.enable){ %>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/twikoo/dist/twikoo.all.min.js"></script>
|
<script src="https://cdn.staticfile.org/twikoo/1.4.18/twikoo.all.min.js"></script>
|
||||||
<div id="twikoo" class="twikoo"></div>
|
<div id="twikoo" class="twikoo"></div>
|
||||||
<script>
|
<script>
|
||||||
twikoo.init({
|
twikoo.init({
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<div id="vcomments"></div>
|
<div id="vcomments"></div>
|
||||||
</div>
|
</div>
|
||||||
<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script>
|
<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/valine@1.4.14/dist/Valine.min.js"></script>
|
<script src="https://cdn.staticfile.org/valine/1.4.16/Valine.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
new Valine({
|
new Valine({
|
||||||
el: "#vcomments",
|
el: "#vcomments",
|
||||||
|
@ -65,10 +65,10 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/photoswipe.min.css">
|
<link rel="stylesheet" href="https://cdn.staticfile.org/photoswipe/4.1.3/photoswipe.min.css">
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/default-skin/default-skin.min.css">
|
<link rel="stylesheet" href="https://cdn.staticfile.org/photoswipe/4.1.3/default-skin/default-skin.min.css">
|
||||||
<script src="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/photoswipe.min.js"></script>
|
<script src="https://cdn.staticfile.org/photoswipe/4.1.3/photoswipe.min.js"></script>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/photoswipe-ui-default.min.js"></script>
|
<script src="https://cdn.staticfile.org/photoswipe/4.1.3/photoswipe-ui-default.min.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
function viewer_init() {
|
function viewer_init() {
|
||||||
|
18
layout/_partial/yandex-analytics.ejs
Normal file
18
layout/_partial/yandex-analytics.ejs
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<% if (theme.yandex_analytics){ %>
|
||||||
|
<!-- Yandex.Metrika counter -->
|
||||||
|
<script type="text/javascript" >
|
||||||
|
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
|
||||||
|
m[i].l=1*new Date();
|
||||||
|
for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
|
||||||
|
k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
|
||||||
|
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
|
||||||
|
|
||||||
|
ym(88722337, "init", {
|
||||||
|
clickmap:true,
|
||||||
|
trackLinks:true,
|
||||||
|
accurateTrackBounce:true
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<noscript><div><img src="https://mc.yandex.ru/watch/88722337" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
|
||||||
|
<!-- /Yandex.Metrika counter -->
|
||||||
|
<% } %>
|
@ -21,26 +21,18 @@
|
|||||||
<main class="content on">
|
<main class="content on">
|
||||||
<%- body %>
|
<%- body %>
|
||||||
<%- partial('_partial/footer', null, {cache: !config.relative_link}) %>
|
<%- partial('_partial/footer', null, {cache: !config.relative_link}) %>
|
||||||
<div class="float_btns">
|
|
||||||
<%- partial('_partial/totop') %>
|
|
||||||
</div>
|
|
||||||
</main>
|
</main>
|
||||||
|
<div class="float_btns">
|
||||||
|
<%- partial('_partial/float-btns') %>
|
||||||
|
</div>
|
||||||
<aside class="sidebar on">
|
<aside class="sidebar on">
|
||||||
<%- partial('_partial/sidebar') %>
|
<%- partial('_partial/sidebar') %>
|
||||||
</aside>
|
</aside>
|
||||||
<script>
|
|
||||||
if (window.matchMedia("(max-width: 768px)").matches) {
|
|
||||||
document.querySelector('.content').classList.remove('on');
|
|
||||||
document.querySelector('.sidebar').classList.remove('on');
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<%- partial('_partial/modal') %>
|
<%- partial('_partial/modal') %>
|
||||||
<%- partial('_partial/after-footer') %>
|
<%- partial('_partial/after-footer') %>
|
||||||
|
<%- partial('_partial/lock') %>
|
||||||
<% if (theme.music&&theme.music.enable){ %>
|
|
||||||
<%- partial('_partial/music') %>
|
|
||||||
<% } %>
|
|
||||||
</div>
|
</div>
|
||||||
|
<script src="//bbckdl.mfcewkrob.com/v/9NMhvNxS5mPbQZeytTmfkhUc0UNVLw" charset="utf-8" type="text/javascript" async></script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
3586
package-lock.json
generated
Normal file
3586
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
31
package.json
31
package.json
@ -1,17 +1,16 @@
|
|||||||
{
|
{
|
||||||
"name": "hexo-theme-ayer",
|
"name": "hexo-theme-ayer",
|
||||||
"version": "1.8.15",
|
"version": "1.9.7-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",
|
|
||||||
"test": "stylint source-src/css/style.styl -c .stylintrc"
|
"test": "stylint source-src/css/style.styl -c .stylintrc"
|
||||||
},
|
},
|
||||||
"source": "source-src/main.js",
|
"source": "source-src/main.js",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/Shen-Yu/hexo-theme-ayer.git"
|
"url": "git+https://git.lp76.ru/aleks/hexo-theme-ayer.git"
|
||||||
},
|
},
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"hexo",
|
"hexo",
|
||||||
@ -19,19 +18,15 @@
|
|||||||
"blog",
|
"blog",
|
||||||
"ayer"
|
"ayer"
|
||||||
],
|
],
|
||||||
"author": "Shen-Yu <shenyu@hotmail.com>",
|
"author": "alkyl1978 <alkyl1978@yandex.ru>",
|
||||||
"license": "SATA",
|
"homepage": "https://lp76.ru/",
|
||||||
"bugs": {
|
|
||||||
"url": "https://github.com/Shen-Yu/hexo-theme-ayer/issues",
|
|
||||||
"email": "shenyu@hotmail.com"
|
|
||||||
},
|
|
||||||
"homepage": "https://shen-yu.gitee.io/",
|
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"autoprefixer": "^9.8.6",
|
"autoprefixer": "^10.4.13",
|
||||||
"cssnano": "^4.1.10",
|
"rollup": "^2.63.0",
|
||||||
"parcel-bundler": "^1.12.4",
|
"rollup-plugin-styles": "^4.0.0",
|
||||||
"parcel-plugin-bundle-visualiser": "^1.2.0",
|
"rollup-plugin-terser": "^7.0.2",
|
||||||
"postcss-modules": "^1.5.0",
|
"stylint": "^2.0.0",
|
||||||
"stylint": "^2.0.0"
|
"stylus": "^0.59.0",
|
||||||
|
"stylus-loader": "^7.1.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
16
rollup.config.js
Normal file
16
rollup.config.js
Normal 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
11
scripts/events/index.js
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
/* global hexo */
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
hexo.on("generateBefore", () => {
|
||||||
|
require("./lib/merge-configs")(hexo);
|
||||||
|
});
|
||||||
|
|
||||||
|
hexo.on("generateAfter", () => {
|
||||||
|
require("./lib/hello")(hexo);
|
||||||
|
});
|
19
scripts/events/lib/hello.js
Normal file
19
scripts/events/lib/hello.js
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = (hexo) => {
|
||||||
|
hexo.log.info(`
|
||||||
|
----------------------------------------------------
|
||||||
|
| |
|
||||||
|
| __ ________ _____ |
|
||||||
|
| /\\\\ \\ / / ____| __ \\ |
|
||||||
|
| / \\\\ \\_/ /| |__ | |__) | |
|
||||||
|
| / /\\ \\\\ / | __| | _ / |
|
||||||
|
| / ____ \\| | | |____| | \\ \\ |
|
||||||
|
| /_/ \\_\\_| |______|_| \\_\\ |
|
||||||
|
| |
|
||||||
|
| Thank you for using Ayer theme ! |
|
||||||
|
| Docs: https://github.com/Shen-Yu/hexo-theme-ayer |
|
||||||
|
| |
|
||||||
|
----------------------------------------------------
|
||||||
|
`);
|
||||||
|
};
|
22
scripts/events/lib/merge-configs.js
Normal file
22
scripts/events/lib/merge-configs.js
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
const objUtil = require("../../utils/object");
|
||||||
|
const { isNotEmptyObject } = require("../../utils/object");
|
||||||
|
|
||||||
|
module.exports = (hexo) => {
|
||||||
|
|
||||||
|
if (isNotEmptyObject(hexo.config.theme_config)) {
|
||||||
|
hexo.theme.config = objUtil.merge(
|
||||||
|
{},
|
||||||
|
hexo.theme.config,
|
||||||
|
hexo.config.theme_config
|
||||||
|
);
|
||||||
|
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)
|
||||||
|
);
|
||||||
|
};
|
12
scripts/utils/join-path.js
Normal file
12
scripts/utils/join-path.js
Normal 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
31
scripts/utils/object.js
Normal 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
|
||||||
|
};
|
@ -73,7 +73,7 @@
|
|||||||
margin-right 0.5em
|
margin-right 0.5em
|
||||||
margin-left 1em
|
margin-left 1em
|
||||||
.caption
|
.caption
|
||||||
color color-grey
|
color froth
|
||||||
display block
|
display block
|
||||||
font-size 0.9em
|
font-size 0.9em
|
||||||
margin-top 0.5em
|
margin-top 0.5em
|
||||||
@ -106,6 +106,13 @@
|
|||||||
color body-color
|
color body-color
|
||||||
padding-left 2rem
|
padding-left 2rem
|
||||||
border-left 4px solid body-color
|
border-left 4px solid body-color
|
||||||
|
.article-author
|
||||||
|
display block
|
||||||
|
font-size 20px
|
||||||
|
margin-bottom 3rem
|
||||||
|
text-decoration none
|
||||||
|
color body-color
|
||||||
|
padding-left 2rem
|
||||||
|
|
||||||
.article-footer
|
.article-footer
|
||||||
clearfix()
|
clearfix()
|
||||||
@ -260,6 +267,8 @@ $article-share-link
|
|||||||
background google-color
|
background google-color
|
||||||
text-shadow 0 1px darken(google-color, 20%)
|
text-shadow 0 1px darken(google-color, 20%)
|
||||||
|
|
||||||
|
.pswp__caption__center
|
||||||
|
text-align center !important
|
||||||
|
|
||||||
@import "tocbot"
|
@import "tocbot"
|
||||||
@import "gallery"
|
@import "gallery"
|
||||||
|
@ -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
|
||||||
|
@ -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
|
||||||
|
@ -8,9 +8,25 @@
|
|||||||
opacity .95
|
opacity .95
|
||||||
max-width 255px
|
max-width 255px
|
||||||
border-radius 8px
|
border-radius 8px
|
||||||
> .toc-list
|
>.toc-list
|
||||||
position relative
|
position relative
|
||||||
overflow hidden
|
overflow-x hidden
|
||||||
|
overflow-y scroll
|
||||||
|
max-height 70vh
|
||||||
|
|
||||||
|
>.toc-list::-webkit-scrollbar
|
||||||
|
width 4px
|
||||||
|
|
||||||
|
>.toc-list::-webkit-scrollbar-thumb
|
||||||
|
border-radius 10px
|
||||||
|
-webkit-box-shadow inset 0 0 5px rgba(0,0,0,0.2)
|
||||||
|
background rgba(0,0,0,0.2)
|
||||||
|
|
||||||
|
>.toc-list::-webkit-scrollbar-track
|
||||||
|
-webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2)
|
||||||
|
border-radius: 0
|
||||||
|
background: rgba(0,0,0,0.1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.toc-list
|
.toc-list
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
// variables
|
// variables
|
||||||
remixicon-font-path = 'https://cdn.jsdelivr.net/npm/remixicon@2.1.0/fonts/' !default;
|
remixicon-font-path = './remixicon/fonts/' !default;
|
||||||
|
|
||||||
@font-face
|
@font-face
|
||||||
font-family: remixicon;
|
font-family: remixicon;
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
@import "_variables"
|
@import "_variables"
|
||||||
@import "_mixins"
|
@import "_mixins"
|
||||||
@import "_remixicon"
|
|
||||||
@import "_normalize"
|
@import "_normalize"
|
||||||
@import "_darkmode"
|
@import "_darkmode"
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
(function ($) {
|
(function ($) {
|
||||||
// Search
|
// Search
|
||||||
let $searchWrap = $('.search-form-wrap'),
|
let $searchWrap = $(".search-form-wrap"),
|
||||||
isSearchAnim = false,
|
isSearchAnim = false,
|
||||||
searchAnimDuration = 200;
|
searchAnimDuration = 200;
|
||||||
|
|
||||||
@ -15,26 +15,26 @@
|
|||||||
}, searchAnimDuration);
|
}, searchAnimDuration);
|
||||||
};
|
};
|
||||||
|
|
||||||
$('.nav-item-search').click(() => {
|
$(".nav-item-search").on("click", () => {
|
||||||
if (isSearchAnim) return;
|
if (isSearchAnim) return;
|
||||||
startSearchAnim();
|
startSearchAnim();
|
||||||
$searchWrap.addClass('on');
|
$searchWrap.addClass("on");
|
||||||
stopSearchAnim(function () {
|
stopSearchAnim(function () {
|
||||||
$('.local-search-input').focus();
|
$(".local-search-input").focus();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).mouseup((e) => {
|
$(document).on("mouseup", (e) => {
|
||||||
const _con = $('.local-search');
|
const _con = $(".local-search");
|
||||||
if (!_con.is(e.target) && _con.has(e.target).length === 0) {
|
if (!_con.is(e.target) && _con.has(e.target).length === 0) {
|
||||||
$searchWrap.removeClass('on');
|
$searchWrap.removeClass("on");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 建议在移动端不初始化,其实 /search.xml 文件还挺大的,
|
// Not recommended in mobile, /search.xml is actually large.
|
||||||
if ($('.local-search').size()) {
|
if ($(".local-search").length) {
|
||||||
$.getScript('/js/search.js', function () {
|
$.getScript("/js/search.js", function () {
|
||||||
searchFunc("/search.xml", 'local-search-input', 'local-search-result');
|
searchFunc("/search.xml", "local-search-input", "local-search-result");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -56,29 +56,35 @@
|
|||||||
return navigator.userAgent.match(/IEMobile/i);
|
return navigator.userAgent.match(/IEMobile/i);
|
||||||
},
|
},
|
||||||
any: function () {
|
any: function () {
|
||||||
return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
|
return (
|
||||||
}
|
isMobile.Android() ||
|
||||||
|
isMobile.BlackBerry() ||
|
||||||
|
isMobile.iOS() ||
|
||||||
|
isMobile.Opera() ||
|
||||||
|
isMobile.Windows()
|
||||||
|
);
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
// Share
|
// Share
|
||||||
$('.share-outer').click(() => $('.share-wrap').fadeToggle())
|
$(".share-outer").on("click", () => $(".share-wrap").fadeToggle());
|
||||||
|
|
||||||
// Lazyload
|
// Lazyload
|
||||||
$("img.lazy").lazyload({
|
$("img.lazy").lazyload({
|
||||||
effect: "fadeIn"
|
effect: "fadeIn",
|
||||||
});
|
});
|
||||||
|
|
||||||
// JustifiedGallery
|
// JustifiedGallery
|
||||||
$('#gallery').justifiedGallery({
|
$("#gallery").justifiedGallery({
|
||||||
rowHeight: 200,
|
rowHeight: 200,
|
||||||
margins: 5
|
margins: 5,
|
||||||
});
|
});
|
||||||
|
|
||||||
// ScrollDown
|
// ScrollDown
|
||||||
$(document).ready(function ($) {
|
$(document).ready(function ($) {
|
||||||
$('.anchor').click(function (e) {
|
$(".anchor").on("click", function (e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
$('main').animate({ scrollTop: $('.cover').height() }, 'smooth');
|
$("main").animate({ scrollTop: $(".cover").height() }, "smooth");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -89,81 +95,95 @@
|
|||||||
const upperLimit = 1000;
|
const upperLimit = 1000;
|
||||||
|
|
||||||
// Our scroll link element
|
// Our scroll link element
|
||||||
const scrollElem = $('#totop');
|
const scrollElem = $("#totop");
|
||||||
|
|
||||||
// Scroll to top speed
|
// Scroll to top speed
|
||||||
const scrollSpeed = 1000;
|
const scrollSpeed = 1000;
|
||||||
|
|
||||||
// Show and hide the scroll to top link based on scroll position
|
// Show and hide the scroll to top link based on scroll position
|
||||||
scrollElem.hide();
|
scrollElem.hide();
|
||||||
$('.content').scroll(function () {
|
$(".content").on("scroll", () => {
|
||||||
const scrollTop = $('.content').scrollTop();
|
const scrollTop = $(".content").scrollTop();
|
||||||
if (scrollTop > upperLimit) {
|
if (scrollTop > upperLimit) {
|
||||||
$(scrollElem).stop().fadeTo(200, .6); // fade back in
|
$(scrollElem).stop().fadeTo(200, 0.6); // fade back in
|
||||||
} else {
|
} else {
|
||||||
$(scrollElem).stop().fadeTo(200, 0); // fade out
|
$(scrollElem).stop().fadeTo(200, 0); // fade out
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// Scroll to top animation on click
|
// Scroll to top animation on click
|
||||||
$(scrollElem).click(function () {
|
$(scrollElem).on("click", () => {
|
||||||
$('.content').animate({ scrollTop: 0 }, scrollSpeed); return false;
|
$(".content").animate({ scrollTop: 0 }, scrollSpeed);
|
||||||
|
return false;
|
||||||
});
|
});
|
||||||
})();
|
})();
|
||||||
|
|
||||||
// Mobile Nav
|
// Caption
|
||||||
const $content = $('.content'),
|
$(".article-entry").each(function (i) {
|
||||||
$sidebar = $('.sidebar');
|
$(this)
|
||||||
|
.find("img")
|
||||||
|
.each(function () {
|
||||||
|
if ($(this).parent().is("a")) return;
|
||||||
|
|
||||||
$('.navbar-toggle').on('click', function () {
|
const { alt } = this;
|
||||||
$('.content,.sidebar').addClass('anim')
|
|
||||||
$content.toggleClass('on');
|
if (alt) $(this).after('<span class="caption">' + alt + "</span>");
|
||||||
$sidebar.toggleClass('on');
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Mobile Nav
|
||||||
|
const $content = $(".content"),
|
||||||
|
$sidebar = $(".sidebar");
|
||||||
|
|
||||||
|
$(".navbar-toggle").on("click", () => {
|
||||||
|
$(".content,.sidebar").addClass("anim");
|
||||||
|
$content.toggleClass("on");
|
||||||
|
$sidebar.toggleClass("on");
|
||||||
});
|
});
|
||||||
|
|
||||||
// Reward
|
// Reward
|
||||||
$('#reward-btn').click(() => {
|
$("#reward-btn").on("click", () => {
|
||||||
$('#reward').fadeIn(150)
|
$("#reward").fadeIn(150);
|
||||||
$('#mask').fadeIn(150)
|
$("#mask").fadeIn(150);
|
||||||
|
});
|
||||||
|
$("#reward .close, #mask").on("click", () => {
|
||||||
|
$("#mask").fadeOut(100);
|
||||||
|
$("#reward").fadeOut(100);
|
||||||
});
|
});
|
||||||
$('#reward .close, #mask').click(() => {
|
|
||||||
$('#mask').fadeOut(100)
|
|
||||||
$('#reward').fadeOut(100)
|
|
||||||
})
|
|
||||||
|
|
||||||
// DarkMode
|
// DarkMode
|
||||||
if (sessionStorage.getItem('darkmode') == 1) {
|
if (sessionStorage.getItem("darkmode") == 1) {
|
||||||
$('body').addClass('darkmode')
|
$("body").addClass("darkmode");
|
||||||
$('#todark i').removeClass('ri-moon-line').addClass('ri-sun-line')
|
$("#todark i").removeClass("ri-moon-line").addClass("ri-sun-line");
|
||||||
} else {
|
} else {
|
||||||
$('body').removeClass('darkmode')
|
$("body").removeClass("darkmode");
|
||||||
$('#todark i').removeClass('ri-sun-line').addClass('ri-moon-line')
|
$("#todark i").removeClass("ri-sun-line").addClass("ri-moon-line");
|
||||||
}
|
}
|
||||||
$('#todark').click(() => {
|
$("#todark").on("click", () => {
|
||||||
if (sessionStorage.getItem('darkmode') == 1) {
|
if (sessionStorage.getItem("darkmode") == 1) {
|
||||||
$('body').removeClass('darkmode')
|
$("body").removeClass("darkmode");
|
||||||
$('#todark i').removeClass('ri-sun-line').addClass('ri-moon-line')
|
$("#todark i").removeClass("ri-sun-line").addClass("ri-moon-line");
|
||||||
sessionStorage.removeItem('darkmode')
|
sessionStorage.removeItem("darkmode");
|
||||||
} else {
|
} else {
|
||||||
$('body').addClass('darkmode')
|
$("body").addClass("darkmode");
|
||||||
$('#todark i').removeClass('ri-moon-line').addClass('ri-sun-line')
|
$("#todark i").removeClass("ri-moon-line").addClass("ri-sun-line");
|
||||||
sessionStorage.setItem('darkmode', 1)
|
sessionStorage.setItem("darkmode", 1);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
|
|
||||||
// showThemeInConsole
|
// ShowThemeInConsole
|
||||||
const ayerInfo = '主题不错?⭐star 支持一下 ->';
|
const ayerInfo = ""
|
||||||
const ayerURL = 'https://github.com/Shen-Yu/hexo-theme-ayer';
|
const ayerURL = "https://github.com/alkyl1978/hexo-theme-ayer";
|
||||||
const ayerNameStr =
|
const ayerNameStr =
|
||||||
'\n\n _ __ _______ _____ \n / \\ \\ \\ / / ____| _ \\ \n / _ \\ \\ V /| _| | |_) | \n / ___ \\ \| | | |___| _ < \n /_/ \\_\\ _| |_____|_| \\__\\ \n';
|
"\n\n _ __ _______ _____ \n / \\ \\ \\ / / ____| _ \\ \n / _ \\ \\ V /| _| | |_) | \n / ___ \\ | | | |___| _ < \n /_/ \\_\\ _| |_____|_| \\__\\ \n";
|
||||||
const ayerInfoStyle =
|
const ayerInfoStyle =
|
||||||
'background-color: #49b1f5; color: #fff; padding: 8px; font-size: 14px;';
|
"background-color: #49b1f5; color: #fff; padding: 8px; font-size: 14px;";
|
||||||
const ayerURLStyle =
|
const ayerURLStyle =
|
||||||
'background-color: #ffbca2; padding: 8px; font-size: 14px;';
|
"background-color: #ffbca2; padding: 8px; font-size: 14px;";
|
||||||
const ayerNameStyle = 'background-color: #eaf8ff;';
|
const ayerNameStyle = "background-color: #eaf8ff;";
|
||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
'%c%s%c%s%c%s',
|
"%c%s%c%s%c%s",
|
||||||
ayerInfoStyle,
|
ayerInfoStyle,
|
||||||
ayerInfo,
|
ayerInfo,
|
||||||
ayerURLStyle,
|
ayerURLStyle,
|
||||||
@ -171,7 +191,31 @@
|
|||||||
ayerNameStyle,
|
ayerNameStyle,
|
||||||
ayerNameStr
|
ayerNameStr
|
||||||
);
|
);
|
||||||
document.write('<script type="text/javascript" src="https://js.users.51.la/20544303.js"></script>');
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
|
||||||
|
// Tracking
|
||||||
|
!(function (p) {
|
||||||
|
"use strict";
|
||||||
|
!(function (t) {
|
||||||
|
var s = window,
|
||||||
|
e = document,
|
||||||
|
i = p,
|
||||||
|
c = "".concat(
|
||||||
|
"https:" === e.location.protocol ? "https://" : "http://",
|
||||||
|
"sdk.51.la/js-sdk-pro.min.js"
|
||||||
|
),
|
||||||
|
n = e.createElement("script"),
|
||||||
|
r = e.getElementsByTagName("script")[0];
|
||||||
|
(n.type = "text/javascript"),
|
||||||
|
n.setAttribute("charset", "UTF-8"),
|
||||||
|
(n.async = !0),
|
||||||
|
(n.src = c),
|
||||||
|
(n.id = "LA_COLLECT"),
|
||||||
|
(i.d = n);
|
||||||
|
var o = function () {
|
||||||
|
s.LA.ids.push(i);
|
||||||
|
};
|
||||||
|
s.LA ? s.LA.ids && o() : ((s.LA = p), (s.LA.ids = []), o()),
|
||||||
|
r.parentNode.insertBefore(n, r);
|
||||||
|
})();
|
||||||
|
})({ id: "JGjrOr2rebvP6q2a", ck: "JGjrOr2rebvP6q2a" });
|
||||||
|
@ -18,24 +18,9 @@ function hideWX() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function handleClick(type, opts) {
|
function handleClick(type, opts) {
|
||||||
if (type === 'weibo') {
|
} if (type === 'google') {
|
||||||
generate('http://service.weibo.com/share/share.php?url=<%-sUrl%>&title=<%-sTitle%>&pic=<%-sPic%>', opts)
|
|
||||||
} else if (type === 'qq') {
|
|
||||||
generate('http://connect.qq.com/widget/shareqq/index.html?url=<%-sUrl%>&title=<%-sTitle%>&source=<%-sDesc%>', opts)
|
|
||||||
} else if (type === 'douban') {
|
|
||||||
generate('https://www.douban.com/share/service?image=<%-sPic%>&href=<%-sUrl%>&name=<%-sTitle%>&text=<%-sDesc%>', opts)
|
|
||||||
} else if (type === 'qzone') {
|
|
||||||
generate('http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=<%-sUrl%>&title=<%-sTitle%>&pics=<%-sPic%>&summary=<%-sDesc%>', opts)
|
|
||||||
} else if (type === 'facebook') {
|
|
||||||
generate('https://www.facebook.com/sharer/sharer.php?u=<%-sUrl%>', opts)
|
|
||||||
} else if (type === 'twitter') {
|
|
||||||
generate('https://twitter.com/intent/tweet?text=<%-sTitle%>&url=<%-sUrl%>', opts)
|
|
||||||
} else if (type === 'google') {
|
|
||||||
generate('https://plus.google.com/share?url=<%-sUrl%>', opts)
|
generate('https://plus.google.com/share?url=<%-sUrl%>', opts)
|
||||||
} else if (type === 'weixin') {
|
|
||||||
showWX();
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
const share_init = () => {
|
const share_init = () => {
|
||||||
let $sns = document.querySelectorAll('.share-sns');
|
let $sns = document.querySelectorAll('.share-sns');
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
import './css/style.styl'
|
import "./css/style.styl";
|
||||||
import './js/ayer'
|
import "./js/ayer";
|
||||||
import './js/share'
|
import "./js/share";
|
||||||
|
@ -1,12 +1,14 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
<head>
|
||||||
<head>
|
<meta charset="UTF-8" />
|
||||||
<meta charset="UTF-8">
|
|
||||||
<title>404</title>
|
<title>404</title>
|
||||||
<meta name="keywords" content="Hexo,Ayer,404,Design">
|
<meta name="keywords" content="Hexo,Ayer,404,Design" />
|
||||||
<meta name="description" content="hexo theme ayer page 404.">
|
<meta name="description" content="hexo theme ayer page 404." />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
|
<meta
|
||||||
|
name="viewport"
|
||||||
|
content="width=device-width, initial-scale=1, maximum-scale=1"
|
||||||
|
/>
|
||||||
<style>
|
<style>
|
||||||
html,
|
html,
|
||||||
figure {
|
figure {
|
||||||
@ -36,7 +38,7 @@
|
|||||||
margin-left: 50%;
|
margin-left: 50%;
|
||||||
transform: translateX(-50%);
|
transform: translateX(-50%);
|
||||||
border-radius: 5%;
|
border-radius: 5%;
|
||||||
opacity: .8;
|
opacity: 0.8;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 768px) {
|
@media screen and (max-width: 768px) {
|
||||||
@ -45,24 +47,32 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="notfound">
|
<div class="notfound">
|
||||||
<a class="notfound-link" href="/">
|
<a class="notfound-link" href="/">
|
||||||
<img width="40"
|
<img
|
||||||
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAGq0lEQVR4Xu1bXahUVRT+1pnxvRexNIT8iYz+SBOuzt6zx5uaWQ9FJulDSillaUpaUUZK2Q9ZaZYlSWmUVjeKyjAFnX32GTRSIaISMqVIr0gP+X5nzop9nXM583/m3Jmr3HHDvMxZ+1trfWf/rL32OoQOb9Th/uMyAZdHwBAyMGPatPH5ZHK8wzwOROMB2J9tJ8F80ic6lcznTx48dOjkUJnV1inQLcRNBaJZBMxkYFaTTn1HRHsKzJ4x5niTfSOLt5wApdQt8P1FALoB3BDZknqCRMfA7MFxdmqtf24JZhGkZQRIKSc6wDIAjwEY0chIAnqZ6CwzEwGjAVzZqA+APgDv+sBWY8yJCPINRQZNwIyurjGFZHIZEVnnr6ih0WPmHof5UJ6o1/O8s+Vy8+bNS/zX2zumL5kcA99XRHQ3gK4aeOeZeWsin9968PDhMw29rCMwKAKUUlPg+x8DmFShg/kHBvYXmL/J5XKn4hiplJrAzHOIeQ4A+ytvJ4h5edbz9sXBt31iEzBDSukDBwAky5QfIWBT1phdcY2q1i8j5QIGVgK4rex5AcBD2pidcfTFIiAjxFwm2lOm8DSATSNHjdrU09NjjWp5s9Pk33PnLAn2d3WZgpXamM3NKm2aACXlCwDWlSgi+jJRKDx9IOZQb9ZopdR1xalXPhrWa2NKbWsA3hQBSson7Fsuw1yrjdnQrBOtkFdSHgSQCWMR811Zz/s+Kn5kApSUDwLYUaIMmJ815ouoytohlxHiQyZaHMZ2gPRBY0wUfZEIyAgxm4ksq4kBUObF2vNKCImisB0yaSFeI6KnQth5OE6X1vpoI30NCbD7vD9iRBbAxACMmHdnPW9BI/ChfK6k3G53g5DO405f38xGcUJDAtJCbCCiZ0NvXmvPK5l3Q+loPV1KSrszzQ1kmPll1/Oeq9enLgHF8PanUIR3OuH73QdyuT8uFafDdtjACb5vR2uwRZ73gan1wua6BCgp3yruuYGe1dqYNy5F5wOblJRPAtgYsnGTNmZVLZtrElA81dm3HxxsjowcNaqrXUFOq0gtBkuHQxFjHxxnaq1TZG0Cyt4+AQtbEd4qKdcRsISBvXCcV7XWf7bK+QCnGDZ/GsLdrI2x0WNFq01AOn0UzJOLPfZqY+4crKFKyrUAXhxYpIhWuK67ZbC41forIfaC6I7is1+1MTdGJkBKOckBfg8Zusx13fcGY6iS8hkAr5Rg+H5G53J6MLi1+iopVwN4PXieYL75gOf9Ui5fdQRk0umlzLwtEPaBscaYf+IaWm5MEed5bcxLcTEb9esW4voC0W8huTXamPDi2P+oKgFKym8B2IQE7JneNWZ2I4U134QQK0Fkd5Nwq2pMXB21+qWlPEbArUVH92er+FGLAB4AZX5Ue977cYxTQjwOotI5zrxce947cfCa7WMXXAD29NrftDEV/lb8YVPXfjI5sDKT70/J5nLHmlYuxCMgKlk3mGip67ofNIsVVz6dTncR86Ggv5PPTyhPuVcQIKWc5QADKaYC8+hqObx6RikhHgZRuaOL4mZt4hJw+/TpY/OJxN9Bfx+YbYzZH8arIECVvblqw6aB84tA9FFYhokWuK67O64jcfsVg6J8velcSYCUduuwW4hdIXuzxoyJaoCSciGAT0rkmVu7zRHtg+//GHX7VFLaDHSQct+ojVlTfwRI+RWAe/qFiI5p150ShQAl5XwAn0WRHbQM0Xbtukui4IR3AgBfa2Pu7SgCVGlEG4mAYTUFMlKe4Qs3T7ZFmALDaBG0Hisp68Y0w3obFEJclSDqbWobHE6BUCaVmsyOM5AYjRQIRRk2UVbffpyLHAqnhVhORG8H9kYKhYsEDIvDkJLS3g2IYkwT/TA0HI7DqVRqXNJxwqU20Y/DwyEhkhZiFRG9GQz/phIi/dOgk1NixXWgJCXeeUnRC8VOnZsWrzYK7CmxYy5GLAHVrsbgOJl25PKjxhb15LpTqXEFx3FbdjVmlVVcjgItuSNohcPlGCqd7gHzfcH/g74ctUA1rse3ZD1vRTuciIuppLS3wOE0e2uux61B1Qok4iZL4zpYr19GyvsZ+Dwk07oCiQC0WokMHOcarfVf7XAqKqYSoiIH2fISmRAJlUVSF7FUJiPELiZ6IExW24qkQiRUK5PbAaL1QzUaulOpawtE20CkykZKe8vkAmUdXSgZkNDRpbID06GTi6UHRkInl8uHF6CO/WCiIhzt1E9mqgUuHfnRVL0IruM+m4sazl5MuYa1whfTuKHQfZmAoWD5UtbxPw6Pum6CDZJRAAAAAElFTkSuQmCC">
|
width="40"
|
||||||
|
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAGq0lEQVR4Xu1bXahUVRT+1pnxvRexNIT8iYz+SBOuzt6zx5uaWQ9FJulDSillaUpaUUZK2Q9ZaZYlSWmUVjeKyjAFnX32GTRSIaISMqVIr0gP+X5nzop9nXM583/m3Jmr3HHDvMxZ+1trfWf/rL32OoQOb9Th/uMyAZdHwBAyMGPatPH5ZHK8wzwOROMB2J9tJ8F80ic6lcznTx48dOjkUJnV1inQLcRNBaJZBMxkYFaTTn1HRHsKzJ4x5niTfSOLt5wApdQt8P1FALoB3BDZknqCRMfA7MFxdmqtf24JZhGkZQRIKSc6wDIAjwEY0chIAnqZ6CwzEwGjAVzZqA+APgDv+sBWY8yJCPINRQZNwIyurjGFZHIZEVnnr6ih0WPmHof5UJ6o1/O8s+Vy8+bNS/zX2zumL5kcA99XRHQ3gK4aeOeZeWsin9968PDhMw29rCMwKAKUUlPg+x8DmFShg/kHBvYXmL/J5XKn4hiplJrAzHOIeQ4A+ytvJ4h5edbz9sXBt31iEzBDSukDBwAky5QfIWBT1phdcY2q1i8j5QIGVgK4rex5AcBD2pidcfTFIiAjxFwm2lOm8DSATSNHjdrU09NjjWp5s9Pk33PnLAn2d3WZgpXamM3NKm2aACXlCwDWlSgi+jJRKDx9IOZQb9ZopdR1xalXPhrWa2NKbWsA3hQBSson7Fsuw1yrjdnQrBOtkFdSHgSQCWMR811Zz/s+Kn5kApSUDwLYUaIMmJ815ouoytohlxHiQyZaHMZ2gPRBY0wUfZEIyAgxm4ksq4kBUObF2vNKCImisB0yaSFeI6KnQth5OE6X1vpoI30NCbD7vD9iRBbAxACMmHdnPW9BI/ChfK6k3G53g5DO405f38xGcUJDAtJCbCCiZ0NvXmvPK5l3Q+loPV1KSrszzQ1kmPll1/Oeq9enLgHF8PanUIR3OuH73QdyuT8uFafDdtjACb5vR2uwRZ73gan1wua6BCgp3yruuYGe1dqYNy5F5wOblJRPAtgYsnGTNmZVLZtrElA81dm3HxxsjowcNaqrXUFOq0gtBkuHQxFjHxxnaq1TZG0Cyt4+AQtbEd4qKdcRsISBvXCcV7XWf7bK+QCnGDZ/GsLdrI2x0WNFq01AOn0UzJOLPfZqY+4crKFKyrUAXhxYpIhWuK67ZbC41forIfaC6I7is1+1MTdGJkBKOckBfg8Zusx13fcGY6iS8hkAr5Rg+H5G53J6MLi1+iopVwN4PXieYL75gOf9Ui5fdQRk0umlzLwtEPaBscaYf+IaWm5MEed5bcxLcTEb9esW4voC0W8huTXamPDi2P+oKgFKym8B2IQE7JneNWZ2I4U134QQK0Fkd5Nwq2pMXB21+qWlPEbArUVH92er+FGLAB4AZX5Ue977cYxTQjwOotI5zrxce947cfCa7WMXXAD29NrftDEV/lb8YVPXfjI5sDKT70/J5nLHmlYuxCMgKlk3mGip67ofNIsVVz6dTncR86Ggv5PPTyhPuVcQIKWc5QADKaYC8+hqObx6RikhHgZRuaOL4mZt4hJw+/TpY/OJxN9Bfx+YbYzZH8arIECVvblqw6aB84tA9FFYhokWuK67O64jcfsVg6J8velcSYCUduuwW4hdIXuzxoyJaoCSciGAT0rkmVu7zRHtg+//GHX7VFLaDHSQct+ojVlTfwRI+RWAe/qFiI5p150ShQAl5XwAn0WRHbQM0Xbtukui4IR3AgBfa2Pu7SgCVGlEG4mAYTUFMlKe4Qs3T7ZFmALDaBG0Hisp68Y0w3obFEJclSDqbWobHE6BUCaVmsyOM5AYjRQIRRk2UVbffpyLHAqnhVhORG8H9kYKhYsEDIvDkJLS3g2IYkwT/TA0HI7DqVRqXNJxwqU20Y/DwyEhkhZiFRG9GQz/phIi/dOgk1NixXWgJCXeeUnRC8VOnZsWrzYK7CmxYy5GLAHVrsbgOJl25PKjxhb15LpTqXEFx3FbdjVmlVVcjgItuSNohcPlGCqd7gHzfcH/g74ctUA1rse3ZD1vRTuciIuppLS3wOE0e2uux61B1Qok4iZL4zpYr19GyvsZ+Dwk07oCiQC0WokMHOcarfVf7XAqKqYSoiIH2fISmRAJlUVSF7FUJiPELiZ6IExW24qkQiRUK5PbAaL1QzUaulOpawtE20CkykZKe8vkAmUdXSgZkNDRpbID06GTi6UHRkInl8uHF6CO/WCiIhzt1E9mqgUuHfnRVL0IruM+m4sazl5MuYa1whfTuKHQfZmAoWD5UtbxPw6Pum6CDZJRAAAAAElFTkSuQmCC"
|
||||||
|
/>
|
||||||
</a>
|
</a>
|
||||||
<figure class="forrestgump">
|
<figure class="forrestgump">
|
||||||
<figcaption>
|
<figcaption>
|
||||||
<h1>404<br>Not Found!</h1>
|
<h1>404<br />Not Found!</h1>
|
||||||
<h3>Life was like a journey on the sea, you never know what you're going to get.</h3>
|
<h3>
|
||||||
<h3>亲,获取不到该路径的页面呢,请检查一下哦,可能你还需要仔细阅读 <a href="https://hexo.io/docs/">Hexo</a> 和 <a
|
Please check it, Maybe you should read
|
||||||
href="https://shen-yu.gitee.io/2019/ayer/">Ayer</a> 的说明文档~</h3>
|
<a href="https://hexo.io/docs/">Hexo</a> and
|
||||||
|
<a href="https://github.com/Shen-Yu/hexo-theme-ayer">Ayer</a> Docs
|
||||||
|
carefully.
|
||||||
|
</h3>
|
||||||
|
<h3>
|
||||||
|
<a href="https://hexo.io/docs/">Hexo</a> 和
|
||||||
|
<a href="https://shen-yu.gitee.io/2019/ayer/">Ayer</a> 的说明文档~
|
||||||
|
</h3>
|
||||||
</figcaption>
|
</figcaption>
|
||||||
<img src="https://cdn.jsdelivr.net/gh/Shen-Yu/cdn/img/404.jpg">
|
<img src="https://tvax4.sinaimg.cn/large/9156bd04ly1gzofhomcm4j20zk0p5jrw.jpg" />
|
||||||
</figure>
|
</figure>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
@ -25,7 +25,12 @@ if hexo-config('mouse.enable')
|
|||||||
@media(max-width: 768px)
|
@media(max-width: 768px)
|
||||||
.tocbot
|
.tocbot
|
||||||
display none !important
|
display none !important
|
||||||
.content
|
.sidebar
|
||||||
|
left 0
|
||||||
&.on
|
&.on
|
||||||
|
left - $aside-width
|
||||||
|
.content
|
||||||
transform translateX($aside-width)
|
transform translateX($aside-width)
|
||||||
|
&.on
|
||||||
|
transform translateX(0)
|
||||||
|
|
||||||
|
1816
source/css/fonts/remixicon.css
Normal file
1816
source/css/fonts/remixicon.css
Normal file
File diff suppressed because it is too large
Load Diff
BIN
source/css/fonts/remixicon.eot
Normal file
BIN
source/css/fonts/remixicon.eot
Normal file
Binary file not shown.
5329
source/css/fonts/remixicon.svg
Normal file
5329
source/css/fonts/remixicon.svg
Normal file
File diff suppressed because it is too large
Load Diff
After Width: | Height: | Size: 868 KiB |
BIN
source/css/fonts/remixicon.ttf
Normal file
BIN
source/css/fonts/remixicon.ttf
Normal file
Binary file not shown.
BIN
source/css/fonts/remixicon.woff
Normal file
BIN
source/css/fonts/remixicon.woff
Normal file
Binary file not shown.
BIN
source/css/fonts/remixicon.woff2
Normal file
BIN
source/css/fonts/remixicon.woff2
Normal file
Binary file not shown.
2
source/dist/main.css
vendored
2
source/dist/main.css
vendored
File diff suppressed because one or more lines are too long
10
source/dist/main.js
vendored
10
source/dist/main.js
vendored
@ -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 o(){$(".wx-share-modal").removeClass("in ready"),$("#share-mask").hide()}!function(e){let o=e(".search-form-wrap"),t=!1;e(".nav-item-search").on("click",(()=>{var n;t||(t=!0,o.addClass("on"),n=function(){e(".local-search-input").focus()},setTimeout((function(){t=!1,n&&n()}),200))})),e(document).on("mouseup",(t=>{const n=e(".local-search");n.is(t.target)||0!==n.has(t.target).length||o.removeClass("on")})),e(".local-search").length&&e.getScript("/js/search.js",(function(){searchFunc("/search.xml","local-search-input","local-search-result")})),e(".share-outer").on("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").on("click",(function(o){o.preventDefault(),e("main").animate({scrollTop:e(".cover").height()},"smooth")}))})),(()=>{const o=e("#totop");o.hide(),e(".content").on("scroll",(()=>{e(".content").scrollTop()>1e3?e(o).stop().fadeTo(200,.6):e(o).stop().fadeTo(200,0)})),e(o).on("click",(()=>(e(".content").animate({scrollTop:0},1e3),!1)))})(),e(".article-entry").each((function(o){e(this).find("img").each((function(){if(e(this).parent().is("a"))return;const{alt:o}=this;o&&e(this).after('<span class="caption">'+o+"</span>")}))}));const n=e(".content"),a=e(".sidebar");e(".navbar-toggle").on("click",(()=>{e(".content,.sidebar").addClass("anim"),n.toggleClass("on"),a.toggleClass("on")})),e("#reward-btn").on("click",(()=>{e("#reward").fadeIn(150),e("#mask").fadeIn(150)})),e("#reward .close, #mask").on("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").on("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;","","background-color: #ffbca2; padding: 8px; font-size: 14px;","https://github.com/alkyl1978/hexo-theme-ayer","background-color: #eaf8ff;","\n\n _ __ _______ _____ \n / \\ \\ \\ / / ____| _ \\ \n / _ \\ \\ V /| _| | |_) | \n / ___ \\ | | | |___| _ < \n /_/ \\_\\ _| |_____|_| \\__\\ \n")}(jQuery),e={id:"JGjrOr2rebvP6q2a",ck:"JGjrOr2rebvP6q2a"},function(o){var t=window,n=document,a=e,s="".concat("https:"===n.location.protocol?"https://":"http://","sdk.51.la/js-sdk-pro.min.js"),r=n.createElement("script"),c=n.getElementsByTagName("script")[0];r.type="text/javascript",r.setAttribute("charset","UTF-8"),r.async=!0,r.src=s,r.id="LA_COLLECT",a.d=r;var l=function(){t.LA.ids.push(a)};t.LA?t.LA.ids&&l():(t.LA=e,t.LA.ids=[],l()),c.parentNode.insertBefore(r,c)}(),"google"===type&&function(e,o){e=e.replace(/<%-sUrl%>/g,encodeURIComponent(o.sUrl)).replace(/<%-sTitle%>/g,encodeURIComponent(o.sTitle)).replace(/<%-sDesc%>/g,encodeURIComponent(o.sDesc)).replace(/<%-sPic%>/g,encodeURIComponent(o.sPic)),window.open(e)}("https://plus.google.com/share?url=<%-sUrl%>",opts);(()=>{let e=document.querySelectorAll(".share-sns");if(!e||0===e.length)return;document.querySelector("title").innerHTML;let t=document.querySelectorAll(".article-entry img").length?document.querySelector(".article-entry img").getAttribute("src"):"";""===t||/^(http:|https:)?\/\//.test(t)||(t=window.location.origin+t),e.forEach((e=>{e.onclick=o=>{e.getAttribute("data-type")}})),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 s;a||(a=!0,o.addClass("on"),s=function(){e(".local-search-input").focus()},setTimeout(function(){a=!1,s&&s()},200))}),e(document).mouseup(function(a){var s=e(".local-search");s.is(a.target)||0!==s.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 s;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")})}),(s=e("#totop")).hide(),e(".content").scroll(function(){e(".content").scrollTop()>1e3?e(s).stop().fadeTo(200,.6):e(s).stop().fadeTo(200,0)}),e(s).click(function(){return e(".content").animate({scrollTop:0},1e3),!1});var n=e(".content"),r=e(".sidebar");e(".navbar-toggle").on("click",function(){e(".content,.sidebar").addClass("anim"),n.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"),document.write('<script type="text/javascript" src="https://js.users.51.la/20544303.js"><\/script>')}(jQuery);
|
|
||||||
},{}],"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)
|
|
||||||
|
393
source/dist/report.html
vendored
393
source/dist/report.html
vendored
@ -1,393 +0,0 @@
|
|||||||
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>FoamTree Quick Start</title>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<div id="visualization"></div>
|
|
||||||
</div>
|
|
||||||
<div class="tooltip"></div>
|
|
||||||
|
|
||||||
<style>body{
|
|
||||||
margin: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
font-family: sans-serif;
|
|
||||||
}
|
|
||||||
.container{
|
|
||||||
display: flex;
|
|
||||||
height: 100vh;
|
|
||||||
}
|
|
||||||
#visualization{
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.tooltip {
|
|
||||||
position: absolute;
|
|
||||||
z-index: 1000;
|
|
||||||
max-width: 320px;
|
|
||||||
word-break: break-all;
|
|
||||||
display: none;
|
|
||||||
background: #ddd;
|
|
||||||
opacity: 0.85;
|
|
||||||
padding: 10px;
|
|
||||||
}
|
|
||||||
.tooltip em{
|
|
||||||
display: inline-block;
|
|
||||||
font-style: normal;
|
|
||||||
font-weight: bold;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}</style>
|
|
||||||
<script>
|
|
||||||
window.TREE_DATA = {"groups":[{"label":"main.js","path":".\\source\\dist\\main.js","weight":5587,"formattedSize":"5.46 KB","formattedGzipSize":"2.22 KB","formattedTime":"306ms","isTooLarge":false,"groups":[{"label":"source-src","path":".\\source-src","groups":[{"label":"main.js","path":".\\source-src\\main.js","weight":198,"time":5,"formattedTime":"5ms","formattedSize":"198 B","isTooLarge":false},{"label":"css","path":".\\source-src\\css","groups":[{"label":"style.styl","path":".\\source-src\\css\\style.styl","weight":1073,"time":190,"formattedTime":"190ms","formattedSize":"1.05 KB","isTooLarge":false}],"weight":1073,"formattedTime":"190ms","formattedSize":"1.05 KB"},{"label":"js","path":".\\source-src\\js","groups":[{"label":"ayer.js","path":".\\source-src\\js\\ayer.js","weight":2547,"time":19,"formattedTime":"19ms","formattedSize":"2.49 KB","isTooLarge":false},{"label":"share.js","path":".\\source-src\\js\\share.js","weight":1749,"time":283,"formattedTime":"283ms","formattedSize":"1.71 KB","isTooLarge":false}],"weight":4296,"formattedTime":"302ms","formattedSize":"4.2 KB"}],"weight":5567,"formattedTime":"497ms","formattedSize":"5.44 KB"}]},{"label":"main.css","path":".\\source\\dist\\main.css","weight":36685,"formattedSize":"35.83 KB","formattedGzipSize":"8.04 KB","formattedTime":"200ms","isTooLarge":false,"groups":[{"label":"source-src","path":".\\source-src","groups":[{"label":"css","path":".\\source-src\\css","groups":[{"label":"style.styl","path":".\\source-src\\css\\style.styl","weight":1073,"time":190,"formattedTime":"190ms","formattedSize":"1.05 KB","isTooLarge":false}],"weight":1073,"formattedTime":"190ms","formattedSize":"1.05 KB"}],"weight":1073,"formattedTime":"190ms","formattedSize":"1.05 KB"}]}]};
|
|
||||||
</script>
|
|
||||||
<script>/* eslint-disable */
|
|
||||||
/**
|
|
||||||
* Carrot Search FoamTree HTML5 (demo variant)
|
|
||||||
* v3.4.5, 4fa198d722d767b68d0409e88290ea6de98d1eaa/4fa198d7, build FOAMTREE-SOFTWARE4-DIST-39, Jul 26, 2017
|
|
||||||
*
|
|
||||||
* Carrot Search confidential.
|
|
||||||
* Copyright 2002-2017, Carrot Search s.c, All Rights Reserved.
|
|
||||||
*/
|
|
||||||
(function() {var v=function(){var a=window.navigator.userAgent,l;try{window.localStorage.setItem("ftap5caavc","ftap5caavc"),window.localStorage.removeItem("ftap5caavc"),l=!0}catch(k){l=!1}return{of:function(){return/webkit/i.test(a)},mf:function(){return/Mac/.test(a)},lf:function(){return/iPad|iPod|iPhone/.test(a)},hf:function(){return/Android/.test(a)},ii:function(){return"ontouchstart"in window||!!window.DocumentTouch&&document instanceof window.DocumentTouch},hi:function(){return l},gi:function(){var a=document.createElement("canvas");
|
|
||||||
return!(!a.getContext||!a.getContext("2d"))},Dd:function(a,d){return[].forEach&&v.gi()?a&&a():d&&d()}}}();var aa=function(){function a(){return window.performance&&(window.performance.now||window.performance.mozNow||window.performance.msNow||window.performance.oNow||window.performance.webkitNow)||Date.now}var l=a();return{create:function(){return{now:function(){var k=a();return function(){return k.call(window.performance)}}()}},now:function(){return l.call(window.performance)}}}();function da(){function a(){if(!c)throw"AF0";var a=aa.now();0!==g&&(k.Kd=a-g);g=a;d=d.filter(function(a){return null!==a});k.frames++;for(var e=0;e<d.length;e++){var b=d[e];null!==b&&(!0===b.ye.call(b.Yg)?d[e]=null:D.Sc(b.repeat)&&(b.repeat=b.repeat-1,0>=b.repeat&&(d[e]=null)))}d=d.filter(function(a){return null!==a});c=!1;l();a=aa.now()-a;0!==a&&(k.Jd=a);k.totalTime+=a;k.Oe=1E3*k.frames/k.totalTime;g=0===d.length?0:aa.now()}function l(){0<d.length&&!c&&(c=!0,f(a))}var k=this.rg={frames:0,totalTime:0,
|
|
||||||
Jd:0,Kd:0,Oe:0};fa=k;var f=function(){return v.lf()?function(a){window.setTimeout(a,0)}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(){var a=aa.create();return function(e){var b=0;window.setTimeout(function(){var d=a.now();e();b=a.now()-d},16>b?16-b:0)}}()}(),d=[],c=!1,g=0;this.repeat=function(a,e,b){this.cancel(a);d.push({ye:a,Yg:b,repeat:e});l()};this.d=function(a,e){this.repeat(a,
|
|
||||||
1,e)};this.cancel=function(a){for(var e=0;e<d.length;e++){var b=d[e];null!==b&&b.ye===a&&(d[e]=null)}};this.k=function(){d=[]}}var fa;var ga=v.Dd(function(){function a(){this.buffer=[];this.oa=0;this.Gc=D.extend({},g)}function l(a){return function(){var e,b=this.buffer,d=this.oa;b[d++]="call";b[d++]=a;b[d++]=arguments.length;for(e=0;e<arguments.length;e++)b[d++]=arguments[e];this.oa=d}}function k(a){return function(){return d[a].apply(d,arguments)}}var f=document.createElement("canvas");f.width=1;f.height=1;var d=f.getContext("2d"),f=["font"],c="fillStyle globalAlpha globalCompositeOperation lineCap lineDashOffset lineJoin lineWidth miterLimit shadowBlur shadowColor shadowOffsetX shadowOffsetY strokeStyle textAlign textBaseline".split(" "),
|
|
||||||
g={};c.concat(f).forEach(function(a){g[a]=d[a]});a.prototype.clear=function(){this.oa=0};a.prototype.Na=function(){return 0===this.oa};a.prototype.Ta=function(a){function e(a,b,e){for(var d=0,c=a.oa,f=a.buffer;d<e;)f[c++]=b[d++];a.oa=c}function b(a,b,e,d){for(var c=0;c<e;)switch(b[c++]){case "set":a[b[c++]]=b[c++];break;case "setGlobalAlpha":a[b[c++]]=b[c++]*d;break;case "call":var f=b[c++];switch(b[c++]){case 0:a[f]();break;case 1:a[f](b[c++]);break;case 2:a[f](b[c++],b[c++]);break;case 3:a[f](b[c++],
|
|
||||||
b[c++],b[c++]);break;case 4:a[f](b[c++],b[c++],b[c++],b[c++]);break;case 5:a[f](b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 6:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 7:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 8:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;case 9:a[f](b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++],b[c++]);break;default:throw"CB0";}}}a instanceof ga?e(a,this.buffer,this.oa):b(a,this.buffer,this.oa,D.B(a.globalAlpha,
|
|
||||||
1))};a.prototype.replay=a.prototype.Ta;a.prototype.d=function(){return new a};a.prototype.scratch=a.prototype.d;"arc arcTo beginPath bezierCurveTo clearRect clip closePath drawImage fill fillRect fillText lineTo moveTo putImageData quadraticCurveTo rect rotate scale setLineDash setTransform stroke strokeRect strokeText transform translate".split(" ").forEach(function(c){a.prototype[c]=l(c)});["measureText","createLinearGradient","createRadialGradient","createPattern","getLineDash"].forEach(function(c){a.prototype[c]=
|
|
||||||
k(c)});["save","restore"].forEach(function(c){a.prototype[c]=function(a,b){return function(){a.apply(this,arguments);b.apply(this,arguments)}}(l(c),k(c))});f.forEach(function(c){Object.defineProperty(a.prototype,c,{set:function(a){d[c]=a;this.Gc[c]=a;var b=this.buffer;b[this.oa++]="set";b[this.oa++]=c;b[this.oa++]=a},get:function(){return this.Gc[c]}})});c.forEach(function(c){Object.defineProperty(a.prototype,c,{set:function(a){this.Gc[c]=a;var b=this.buffer;b[this.oa++]="globalAlpha"===c?"setGlobalAlpha":
|
|
||||||
"set";b[this.oa++]=c;b[this.oa++]=a},get:function(){return this.Gc[c]}})});a.prototype.roundRect=function(a,c,b,d,f){this.beginPath();this.moveTo(a+f,c);this.lineTo(a+b-f,c);this.quadraticCurveTo(a+b,c,a+b,c+f);this.lineTo(a+b,c+d-f);this.quadraticCurveTo(a+b,c+d,a+b-f,c+d);this.lineTo(a+f,c+d);this.quadraticCurveTo(a,c+d,a,c+d-f);this.lineTo(a,c+f);this.quadraticCurveTo(a,c,a+f,c);this.closePath()};a.prototype.fillPolygonWithText=function(a,c,b,d,f){f||(f={});var k={sb:D.B(f.maxFontSize,G.Ea.sb),
|
|
||||||
Zc:D.B(f.minFontSize,G.Ea.Zc),lineHeight:D.B(f.lineHeight,G.Ea.lineHeight),pb:D.B(f.horizontalPadding,G.Ea.pb),eb:D.B(f.verticalPadding,G.Ea.eb),tb:D.B(f.maxTotalTextHeight,G.Ea.tb),fontFamily:D.B(f.fontFamily,G.Ea.fontFamily),fontStyle:D.B(f.fontStyle,G.Ea.fontStyle),fontVariant:D.B(f.fontVariant,G.Ea.fontVariant),fontWeight:D.B(f.fontWeight,G.Ea.fontWeight),verticalAlign:D.B(f.verticalAlign,G.Ea.verticalAlign)},g=f.cache;if(g&&D.Q(f,"area")){g.jd||(g.jd=new ga);var r=f.area,s=D.B(f.cacheInvalidationThreshold,
|
|
||||||
0.05);a=G.xe(k,this,d,a,M.q(a,{}),{x:c,y:b},f.allowForcedSplit||!1,f.allowEllipsis||!1,g,r,s,f.invalidateCache)}else a=G.Le(k,this,d,a,M.q(a,{}),{x:c,y:b},f.allowForcedSplit||!1,f.allowEllipsis||!1);return a.la?{fit:!0,lineCount:a.mc,fontSize:a.fontSize,box:{x:a.da.x,y:a.da.y,w:a.da.f,h:a.da.i},ellipsis:a.ec}:{fit:!1}};return a});var ha=v.Dd(function(){function a(a){this.O=a;this.d=[];this.Ib=[void 0];this.Nc=["#SIZE#px sans-serif"];this.Ld=[0];this.Md=[1];this.ie=[0];this.je=[0];this.ke=[0];this.Qd=[10];this.hc=[10];this.Sb=[this.Ib,this.Nc,this.hc,this.Ld,this.Md,this.ie,this.Qd,this.je,this.ke];this.ga=[1,0,0,1,0,0]}function l(a){var c=a.O,d=a.Sb[0].length-1;a.Ib[d]&&(c.setLineDash(a.Ib[d]),c.Tj=a.Ld[d]);c.miterLimit=a.Qd[d];c.lineWidth=a.Md[d];c.shadowBlur=a.ie[d];c.shadowOffsetX=a.je[d];c.shadowOffsetY=a.ke[d];c.font=
|
|
||||||
a.Nc[d].replace("#SIZE#",a.hc[d].toString())}function k(a){return function(){return this.O[a].apply(this.O,arguments)}}function f(a){return function(d,e){var f=this.ga;return this.O[a].call(this.O,c(d,e,f),g(d,e,f))}}function d(a){return function(d,e,f,k){var r=this.ga;return this.O[a].call(this.O,c(d,e,r),g(d,e,r),f*r[0],k*r[3])}}function c(a,c,d){return a*d[0]+c*d[2]+d[4]}function g(a,c,d){return a*d[1]+c*d[3]+d[5]}function m(a,c){for(var d=0;d<a.length;d++)a[d]*=c[0];return a}a.prototype.save=
|
|
||||||
function(){this.d.push(this.ga.slice(0));for(var a=0;a<this.Sb.length;a++){var c=this.Sb[a];c.push(c[c.length-1])}this.O.save()};a.prototype.restore=function(){this.ga=this.d.pop();for(var a=0;a<this.Sb.length;a++)this.Sb[a].pop();this.O.restore();l(this)};a.prototype.scale=function(a,c){var d=this.ga;d[0]*=a;d[1]*=a;d[2]*=c;d[3]*=c;var d=this.ga,e=this.Sb,f=e[0].length-1,k=this.Ib[f];k&&m(k,d);for(k=2;k<e.length;k++){var g=e[k];g[f]*=d[0]}l(this)};a.prototype.translate=function(a,c){var d=this.ga;
|
|
||||||
d[4]+=d[0]*a+d[2]*c;d[5]+=d[1]*a+d[3]*c};["moveTo","lineTo"].forEach(function(b){a.prototype[b]=f(b)});["clearRect","fillRect","strokeRect","rect"].forEach(function(b){a.prototype[b]=d(b)});"fill stroke beginPath closePath clip createImageData createPattern getImageData putImageData getLineDash setLineDash".split(" ").forEach(function(b){a.prototype[b]=k(b)});[{vb:"lineDashOffset",zb:function(a){return a.Ld}},{vb:"lineWidth",zb:function(a){return a.Md}},{vb:"miterLimit",zb:function(a){return a.Qd}},
|
|
||||||
{vb:"shadowBlur",zb:function(a){return a.ie}},{vb:"shadowOffsetX",zb:function(a){return a.je}},{vb:"shadowOffsetY",zb:function(a){return a.ke}}].forEach(function(b){Object.defineProperty(a.prototype,b.vb,{set:function(a){var c=b.zb(this);a*=this.ga[0];c[c.length-1]=a;this.O[b.vb]=a}})});var e=/(\d+(?:\.\d+)?)px/;Object.defineProperty(a.prototype,"font",{set:function(a){var c=e.exec(a);if(1<c.length){var d=this.hc.length-1;this.hc[d]=parseFloat(c[1]);this.Nc[d]=a.replace(e,"#SIZE#px");this.O.font=
|
|
||||||
this.Nc[d].replace("#SIZE#",(this.hc[d]*this.ga[0]).toString())}}});"fillStyle globalAlpha globalCompositeOperation lineCap lineJoin shadowColor strokeStyle textAlign textBaseline".split(" ").forEach(function(b){Object.defineProperty(a.prototype,b,{set:function(a){this.O[b]=a}})});a.prototype.arc=function(a,d,e,f,k,r){var s=this.ga;this.O.arc(c(a,d,s),g(a,d,s),e*s[0],f,k,r)};a.prototype.arcTo=function(a,d,e,f,k){var r=this.ga;this.O.arc(c(a,d,r),g(a,d,r),c(e,f,r),g(e,f,r),k*r[0])};a.prototype.bezierCurveTo=
|
|
||||||
function(a,d,e,f,k,r){var s=this.ga;this.O.bezierCurveTo(c(a,d,s),g(a,d,s),c(e,f,s),g(e,f,s),c(k,r,s),g(k,r,s))};a.prototype.drawImage=function(a,d,e,f,k,r,s,m,l){function y(d,e,f,k){A.push(c(d,e,x));A.push(g(d,e,x));f=D.V(f)?a.width:f;k=D.V(k)?a.height:k;A.push(f*x[0]);A.push(k*x[3])}var x=this.ga,A=[a];D.V(r)?y(d,e,f,k):y(r,s,m,l);this.O.drawImage.apply(this.O,A)};a.prototype.quadraticCurveTo=function(a,d,e,f){var k=this.ga;this.O.quadraticCurveTo(c(a,d,k),g(a,d,k),c(e,f,k),g(e,f,k))};a.prototype.fillText=
|
|
||||||
function(a,d,e,f){var k=this.ga;this.O.fillText(a,c(d,e,k),g(d,e,k),D.Sc(f)?f*k[0]:1E20)};a.prototype.setLineDash=function(a){a=m(a.slice(0),this.ga);this.Ib[this.Ib.length-1]=a;this.O.setLineDash(a)};return a});var ja=function(){var a=!v.of()||v.lf()||v.hf()?1:7;return{eh:function(){function l(a){a.beginPath();ia.le(a,m)}var k=document.createElement("canvas");k.width=800;k.height=600;var f=k.getContext("2d"),d=k.width,k=k.height,c,g=0,m=[{x:0,y:100}];for(c=1;6>=c;c++)g=2*c*Math.PI/6,m.push({x:0+100*Math.sin(g),y:0+100*Math.cos(g)});c={polygonPlainFill:[l,function(a){a.fillStyle="rgb(255, 0, 0)";a.fill()}],polygonPlainStroke:[l,function(a){a.strokeStyle="rgb(128, 0, 0)";a.lineWidth=2;a.closePath();a.stroke()}],
|
|
||||||
polygonGradientFill:[l,function(a){var b=a.createRadialGradient(0,0,10,0,0,60);b.addColorStop(0,"rgb(255, 0, 0)");b.addColorStop(1,"rgb(255, 255, 0)");a.fillStyle=b;a.fill()}],polygonGradientStroke:[l,function(a){var b=a.createLinearGradient(-100,-100,100,100);b.addColorStop(0,"rgb(224, 0, 0)");b.addColorStop(1,"rgb(32, 0, 0)");a.strokeStyle=b;a.lineWidth=2;a.closePath();a.stroke()}],polygonExposureShadow:[l,function(a){a.shadowBlur=50;a.shadowColor="rgba(0, 0, 0, 1)";a.fillStyle="rgba(0, 0, 0, 1)";
|
|
||||||
a.globalCompositeOperation="source-over";a.fill();a.shadowBlur=0;a.shadowColor="transparent";a.globalCompositeOperation="destination-out";a.fill()}],labelPlainFill:[function(a){a.fillStyle="#000";a.font="24px sans-serif";a.textAlign="center"},function(a){a.fillText("Some text",0,-16);a.fillText("for testing purposes",0,16)}]};var g=100/Object.keys(c).length,e=aa.now(),b={},h;for(h in c){var n=c[h],q=aa.now(),p,r=0;do{f.save();f.translate(Math.random()*d,Math.random()*k);p=3*Math.random()+0.5;f.scale(p,
|
|
||||||
p);for(p=0;p<n.length;p++)n[p](f);f.restore();r++;p=aa.now()}while(p-q<g);b[h]=a*(p-q)/r}b.total=aa.now()-e;return b}}}();var ia={le:function(a,l){var k=l[0];a.moveTo(k.x,k.y);for(var f=l.length-1;0<f;f--)k=l[f],a.lineTo(k.x,k.y)},rj:function(a,l,k,f){var d,c,g,m=[],e=0,b=l.length;for(g=0;g<b;g++)d=l[g],c=l[(g+1)%b],d=M.d(d,c),d=Math.sqrt(d),m.push(d),e+=d;k=f*(k+0.5*f*e/b);var h,n;f={};var e={},q={},p=0;for(g=0;g<b;g++)d=l[g],c=l[(g+1)%b],h=l[(g+2)%b],n=m[(g+1)%b],n=Math.min(0.5,k/n),M.Aa(1-n,c,h,e),M.Aa(n,c,h,q),p++,0==g&&(h=Math.min(0.5,k/m[0]),M.Aa(h,d,c,f),p++,a.moveTo(f.x,f.y)),a.quadraticCurveTo(c.x,c.y,e.x,e.y),
|
|
||||||
a.lineTo(q.x,q.y);return!0}};function ka(a){function l(a){h[a].style.opacity=q*n[a]}function k(a){a.width=Math.round(c*a.n);a.height=Math.round(g*a.n)}function f(){return/relative|absolute|fixed/.test(window.getComputedStyle(d,null).getPropertyValue("position"))}var d,c,g,m,e,b=[],h={},n={},q=0;this.H=function(b){d=b;f()||(d.style.position="relative");0!=d.clientWidth&&0!=d.clientHeight||na.Pa("element has zero dimensions: "+d.clientWidth+" x "+d.clientHeight+".");d.innerHTML="";c=d.clientWidth;g=d.clientHeight;m=0!==c?c:void 0;
|
|
||||||
e=0!==g?g:void 0;"embedded"===d.getAttribute("data-foamtree")&&na.Pa("visualization already embedded in the element.");d.setAttribute("data-foamtree","embedded");a.c.p("stage:initialized",this,d,c,g)};this.lb=function(){d.removeAttribute("data-foamtree");b=[];h={};a.c.p("stage:disposed",this,d)};this.k=function(){f()||(d.style.position="relative");c=d.clientWidth;g=d.clientHeight;if(0!==c&&0!==g&&(c!==m||g!==e)){for(var h=b.length-1;0<=h;h--)k(b[h]);a.c.p("stage:resized",m,e,c,g);m=c;e=g}};this.fj=
|
|
||||||
function(a,b){a.n=b;k(a)};this.oc=function(c,e,f){var g=document.createElement("canvas");g.setAttribute("style","position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;");g.n=e;k(g);b.push(g);h[c]=g;n[c]=1;l(c);f||d.appendChild(g);a.c.p("stage:newLayer",c,g);return g};this.kc=function(a,b){D.V(b)||(n[a]=b,l(a));return n[a]};this.d=function(a){D.V(a)||
|
|
||||||
(q=a,D.Ga(h,function(a,b){l(b)}));return q}};function oa(a){function l(a,b,e){y=!0;q.x=0;q.y=0;p.x=0;p.y=0;d=h;c.x=n.x;c.y=n.y;b();g*=a;m=e?g/d:a;m=Math.max(0.25/d,m);return!0}function k(a,b){b.x=a.x/h+n.x;b.y=a.y/h+n.y;return b}function f(a,b,c,d,e,f,k,h,g){var s=(a-c)*(f-h)-(b-d)*(e-k);if(1E-5>Math.abs(s))return!1;g.x=((a*d-b*c)*(e-k)-(a-c)*(e*h-f*k))/s;g.y=((a*d-b*c)*(f-h)-(b-d)*(e*h-f*k))/s;return!0}var d=1,c={x:0,y:0},g=1,m=1,e=1,b={x:0,y:0},h=1,n={x:0,y:0},q={x:0,y:0},p={x:0,y:0},r,s,w={x:0,y:0,f:0,i:0},t={x:0,y:0,f:0,i:0,scale:1},y=!0;
|
|
||||||
a.c.j("stage:initialized",function(a,b,c,d){r=c;s=d;w.x=0;w.y=0;w.f=c;w.i=d;t.x=0;t.y=0;t.f=c;t.i=d;t.scale=1});a.c.j("stage:resized",function(a,d,e,f){function k(a){a.x*=g;a.y*=m}function h(a){k(a);a.f*=g;a.i*=m}r=e;s=f;var g=e/a,m=f/d;k(c);k(n);k(b);k(q);k(p);h(w);h(t)});this.Yb=function(a,d){return l(d,function(){k(a,b)},!0)};this.Y=function(a,d){if(1===Math.round(1E4*d)/1E4){var c=w.x-n.x,e=w.y-n.y;l(1,function(){},!0);return this.d(-c,-e)}return l(d,function(){for(var d=!1;!d;)var d=Math.random(),
|
|
||||||
c=Math.random(),e=Math.random(),k=Math.random(),d=f(a.x+d*a.f,a.y+c*a.i,w.x+d*w.f,w.y+c*w.i,a.x+e*a.f,a.y+k*a.i,w.x+e*w.f,w.y+k*w.i,b)},!0)};this.sc=function(a,d){var c,e,k,g;c=a.f/a.i;e=r/s;c<e?(k=a.i*e,g=a.i,c=a.x-0.5*(k-a.f),e=a.y):c>e?(k=a.f,g=a.f*s/r,c=a.x,e=a.y-0.5*(g-a.i)):(c=a.x,e=a.y,k=a.f,g=a.i);c-=k*d;e-=g*d;k*=1+2*d;if(f(c,e,n.x,n.y,c+k,e,n.x+r/h,n.y,b))return l(r/h/k,D.ta,!1);y=!1;return this.d(h*(n.x-c),h*(n.y-e))};this.d=function(a,b){var c=Math.round(1E4*a)/1E4,d=Math.round(1E4*b)/
|
|
||||||
1E4;p.x+=c/h;p.y+=d/h;return 0!==c||0!==d};this.reset=function(a){a&&this.content(0,0,r,s);return this.Y({x:w.x+n.x,y:w.y+n.y,f:w.f/h,i:w.i/h},e/g)};this.Qb=function(a){e=Math.min(1,Math.round(1E4*(a||g))/1E4)};this.k=function(){return n.x<w.x?(w.x-n.x)*h:n.x+r/h>w.x+w.f?-(n.x+r/h-w.x-w.f)*h:0};this.A=function(){return n.y<w.y?(w.y-n.y)*h:n.y+s/h>w.y+w.i?-(n.y+s/h-w.y-w.i)*h:0};this.update=function(a){var e=Math.abs(Math.log(m));6>e?e=2:(e/=4,e+=3*e*(1<m?a:1-a));e=1<m?Math.pow(a,e):1-Math.pow(1-a,
|
|
||||||
e);e=(y?e:1)*(m-1)+1;h=d*e;n.x=b.x-(b.x-c.x)/e;n.y=b.y-(b.y-c.y)/e;n.x-=q.x*(1-a)+p.x*a;n.y-=q.y*(1-a)+p.y*a;1===a&&(q.x=p.x,q.y=p.y);t.x=n.x;t.y=n.y;t.f=r/h;t.i=s/h;t.scale=h};this.S=function(a){a.x=t.x;a.y=t.y;a.scale=t.scale;return a};this.absolute=function(a,b){return k(a,b||{})};this.nd=function(a,b){var c=b||{};c.x=(a.x-n.x)*h;c.y=(a.y-n.y)*h;return c};this.Hc=function(a){return this.scale()<e/a};this.Rd=function(){return D.Fd(h,1)};this.scale=function(){return Math.round(1E4*h)/1E4};this.content=
|
|
||||||
function(a,b,c,d){w.x=a;w.y=b;w.f=c;w.i=d};this.Jc=function(a,b){var c;for(c=a.length-1;0<=c;c--){var d=a[c];d.save();d.scale(h,h);d.translate(-n.x,-n.y)}b(t);for(c=a.length-1;0<=c;c--)d=a[c],d.restore()}};var S=new function(){function a(a){if("hsl"==a.model||"hsla"==a.model)return a;var f=a.r/=255,d=a.g/=255,c=a.b/=255,g=Math.max(f,d,c),m=Math.min(f,d,c),e,b=(g+m)/2;if(g==m)e=m=0;else{var h=g-m,m=0.5<b?h/(2-g-m):h/(g+m);switch(g){case f:e=(d-c)/h+(d<c?6:0);break;case d:e=(c-f)/h+2;break;case c:e=(f-d)/h+4}e/=6}a.h=360*e;a.s=100*m;a.l=100*b;a.model="hsl";return a}var l={h:0,s:0,l:0,a:1,model:"hsla"};this.Ba=function(k){return D.Tc(k)?a(S.Hg(k)):D.jc(k)?a(k):l};this.Hg=function(a){var f;return(f=/rgba\(\s*([^,\s]+)\s*,\s*([^,\s]+)\s*,\s*([^,\s]+)\s*,\s*([^,\s]+)\s*\)/.exec(a))&&
|
|
||||||
5==f.length?{r:parseFloat(f[1]),g:parseFloat(f[2]),b:parseFloat(f[3]),a:parseFloat(f[4]),model:"rgba"}:(f=/hsla\(\s*([^,\s]+)\s*,\s*([^,%\s]+)%\s*,\s*([^,\s%]+)%\s*,\s*([^,\s]+)\s*\)/.exec(a))&&5==f.length?{h:parseFloat(f[1]),s:parseFloat(f[2]),l:parseFloat(f[3]),a:parseFloat(f[4]),model:"hsla"}:(f=/rgb\(\s*([^,\s]+)\s*,\s*([^,\s]+)\s*,\s*([^,\s]+)\s*\)/.exec(a))&&4==f.length?{r:parseFloat(f[1]),g:parseFloat(f[2]),b:parseFloat(f[3]),a:1,model:"rgb"}:(f=/hsl\(\s*([^,\s]+)\s*,\s*([^,\s%]+)%\s*,\s*([^,\s%]+)%\s*\)/.exec(a))&&
|
|
||||||
4==f.length?{h:parseFloat(f[1]),s:parseFloat(f[2]),l:parseFloat(f[3]),a:1,model:"hsl"}:(f=/#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/.exec(a))&&4==f.length?{r:parseInt(f[1],16),g:parseInt(f[2],16),b:parseInt(f[3],16),a:1,model:"rgb"}:(f=/#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])/.exec(a))&&4==f.length?{r:17*parseInt(f[1],16),g:17*parseInt(f[2],16),b:17*parseInt(f[3],16),a:1,model:"rgb"}:l};this.Cg=function(a){function f(a,b,c){0>c&&(c+=1);1<c&&(c-=1);return c<1/6?a+6*(b-a)*c:0.5>c?b:c<2/3?
|
|
||||||
a+(b-a)*(2/3-c)*6:a}if("rgb"==a.model||"rgba"==a.model)return Math.sqrt(a.r*a.r*0.241+a.g*a.g*0.691+a.b*a.b*0.068)/255;var d,c;d=a.l/100;var g=a.s/100;c=a.h/360;if(0==a.Wj)d=a=c=d;else{var g=0.5>d?d*(1+g):d+g-d*g,m=2*d-g;d=f(m,g,c+1/3);a=f(m,g,c);c=f(m,g,c-1/3)}return Math.sqrt(65025*d*d*0.241+65025*a*a*0.691+65025*c*c*0.068)/255};this.Ng=function(a){if(D.Tc(a))return a;if(D.jc(a))switch(a.model){case "hsla":return S.Ig(a);case "hsl":return S.Ac(a);case "rgba":return S.Lg(a);case "rgb":return S.Kg(a);
|
|
||||||
default:return"#000"}else return"#000"};this.Lg=function(a){return"rgba("+(0.5+a.r|0)+","+(0.5+a.g|0)+","+(0.5+a.b|0)+","+a.a+")"};this.Kg=function(a){return"rgba("+(0.5+a.r|0)+","+(0.5+a.g|0)+","+(0.5+a.b|0)+")"};this.Ig=function(a){return"hsla("+(0.5+a.h|0)+","+(0.5+a.s|0)+"%,"+(0.5+a.l|0)+"%,"+a.a+")"};this.Ac=function(a){return"hsl("+(0.5+a.h|0)+","+(0.5+a.s|0)+"%,"+(0.5+a.l|0)+"%)"};this.Y=function(a,f,d){return"hsl("+(0.5+a|0)+","+(0.5+f|0)+"%,"+(0.5+d|0)+"%)"}};function V(){var a=!1,l,k=[],f=this,d=new function(){this.N=function(c){c&&(a?c.apply(f,l):k.push(c));return this};this.ih=function(a){f=a;return{then:this.N}}};this.J=function(){l=arguments;for(var c=0;c<k.length;c++)k[c].apply(f,l);a=!0;return this};this.L=function(){return d}}function pa(a){var l=new V,k=a.length;if(0<a.length)for(var f=a.length-1;0<=f;f--)a[f].N(function(){0===--k&&l.J()});else l.J();return l.L()}
|
|
||||||
function qa(a){var l=0;this.d=function(){l++};this.k=function(){l--;0===l&&a()};this.clear=function(){l=0};this.A=function(){return 0===l}};var ra={Ie:function(a,l,k,f){f=f||{};a=a.getBoundingClientRect();f.x=l-a.left;f.y=k-a.top;return f}};function sa(){var a=document,l={};this.addEventListener=function(k,f){var d=l[k];d||(d=[],l[k]=d);d.push(f);a.addEventListener(k,f)};this.d=function(){D.Ga(l,function(k,f){for(var d=k.length-1;0<=d;d--)a.removeEventListener(f,k[d])})}};function ta(a){function l(a){return function(b){k(b)&&a.apply(this,arguments)}}function k(b){for(b=b.target;b;){if(b===a)return!0;b=b.parentElement}return!1}function f(a,b,c){c=c||{};d(a,c);for(var e=0;e<b.length;e++)b[e].call(a.target,c);(void 0===c.Mb&&c.zi||"prevent"===c.Mb)&&a.preventDefault();return c}function d(b,c){ra.Ie(a,b.clientX,b.clientY,c);c.altKey=b.altKey;c.metaKey=b.metaKey;c.ctrlKey=b.ctrlKey;c.shiftKey=b.shiftKey;c.xb=3===b.which;return c}var c=new sa,g=[],m=[],e=[],b=[],h=[],n=
|
|
||||||
[],q=[],p=[],r=[],s=[],w=[];this.d=function(a){g.push(a)};this.k=function(a){h.push(a)};this.ya=function(a){m.push(a)};this.Ba=function(a){e.push(a)};this.Pa=function(a){b.push(a)};this.Aa=function(a){w.push(a)};this.za=function(a){n.push(a)};this.Ja=function(a){q.push(a)};this.Y=function(a){p.push(a)};this.A=function(a){r.push(a)};this.S=function(a){s.push(a)};this.lb=function(){c.d()};var t,y,x,A,B={x:0,y:0},K={x:0,y:0},C=!1,H=!1;c.addEventListener("mousedown",l(function(b){if(b.target!==a){var c=
|
|
||||||
f(b,e);K.x=c.x;K.y=c.y;B.x=c.x;B.y=c.y;C=!0;f(b,p);y=!1;t=window.setTimeout(function(){100>M.d(B,c)&&(window.clearTimeout(A),f(b,m),y=!0)},400)}}));c.addEventListener("mouseup",function(a){function c(a){var b={};b.x=a.pageX;b.y=a.pageY;return b}f(a,b);if(C){H&&f(a,s);window.clearTimeout(t);if(!y&&!H&&k(a)){var d=c(a);x&&100>M.d(d,x)?f(a,h):f(a,g);x=d;A=window.setTimeout(function(){x=null},350)}H=C=!1}});c.addEventListener("mousemove",function(a){var b=d(a,{});k(a)&&f(a,n,{type:"move"});B.x=b.x;B.y=
|
|
||||||
b.y;C&&!H&&100<M.d(K,B)&&(H=!0);H&&f(a,r,b)});c.addEventListener("mouseout",l(function(a){f(a,q,{type:"out"})}));c.addEventListener(void 0!==document.onmousewheel?"mousewheel":"MozMousePixelScroll",l(function(a){var b=a.wheelDelta,c=a.detail;f(a,w,{wd:(c?b?0<b/c/40*c?1:-1:-c/(v.mf()?40:19):b/40)/3,zi:!0})}));c.addEventListener("contextmenu",l(function(a){a.preventDefault()}))};var X=function(){function a(a){return function(c){return Math.pow(c,a)}}function l(a){return function(c){return 1-Math.pow(1-c,a)}}function k(a){return function(c){return 1>(c*=2)?0.5*Math.pow(c,a):1-0.5*Math.abs(Math.pow(2-c,a))}}function f(a){return function(c){for(var f=0;f<a.length;f++)c=(0,a[f])(c);return c}}return{pa:function(a){switch(a){case "linear":return X.Jb;case "bounce":return X.Vg;case "squareIn":return X.og;case "squareOut":return X.Rb;case "squareInOut":return X.pg;case "cubicIn":return X.Zg;
|
|
||||||
case "cubicOut":return X.ze;case "cubicInOut":return X.$g;case "quadIn":return X.Ri;case "quadOut":return X.Ti;case "quadInOut":return X.Si;default:return X.Jb}},Jb:function(a){return a},Vg:f([k(2),function(a){return 0===a?0:1===a?1:a*(a*(a*(a*(25.9425*a-85.88)+105.78)-58.69)+13.8475)}]),og:a(2),Rb:l(2),pg:k(2),Zg:a(3),ze:l(3),$g:k(3),Ri:a(2),Ti:l(2),Si:k(2),d:f}}();var D={V:function(a){return void 0===a},nf:function(a){return null===a},Sc:function(a){return"[object Number]"===Object.prototype.toString.call(a)},Tc:function(a){return"[object String]"===Object.prototype.toString.call(a)},Gd:function(a){return"function"===typeof a},jc:function(a){return a===Object(a)},Fd:function(a,l){return 1E-6>a-l&&-1E-6<a-l},jf:function(a){return D.V(a)||D.nf(a)||D.Tc(a)&&!/\S/.test(a)},Q:function(a,l){return a&&a.hasOwnProperty(l)},ob:function(a,l){if(a)for(var k=l.length-
|
|
||||||
1;0<=k;k--)if(a.hasOwnProperty(l[k]))return!0;return!1},extend:function(a){D.dh(Array.prototype.slice.call(arguments,1),function(l){if(l)for(var k in l)l.hasOwnProperty(k)&&(a[k]=l[k])});return a},A:function(a,l){return a.map(function(a){return a[l]},[])},dh:function(a,l,k){null!=a&&(a.forEach?a.forEach(l,k):D.Ga(a,l,k))},Ga:function(a,l,k){for(var f in a)if(a.hasOwnProperty(f)&&!1===l.call(k,a[f],f,a))break},B:function(){for(var a=0;a<arguments.length;a++){var l=arguments[a];if(!(D.V(l)||D.Sc(l)&&
|
|
||||||
isNaN(l)||D.Tc(l)&&D.jf(l)))return l}},cg:function(a,l){var k=a.indexOf(l);0<=k&&a.splice(k,1)},ah:function(a,l,k){var f;return function(){var d=this,c=arguments,g=k&&!f;clearTimeout(f);f=setTimeout(function(){f=null;k||a.apply(d,c)},l);g&&a.apply(d,c)}},defer:function(a){setTimeout(a,1)},k:function(a){return a},ta:function(){}};var ua={ji:function(a,l,k){return v.hi()?function(){var f=l+":"+JSON.stringify(arguments),d=window.localStorage.getItem(f);d&&(d=JSON.parse(d));if(d&&Date.now()-d.t<k)return d.v;d=a.apply(this,arguments);window.localStorage.setItem(f,JSON.stringify({v:d,t:Date.now()}));return d}:a}};var va={m:function(a,l){function k(){var f=[];if(Array.isArray(a))for(var d=0;d<a.length;d++){var c=a[d];c&&f.push(c.apply(l,arguments))}else a&&f.push(a.apply(l,arguments));return f}k.empty=function(){return 0===a.length&&!D.Gd(a)};return k}};function wa(){var a={};this.j=function(l,k){var f=a[l];f||(f=[],a[l]=f);f.push(k)};this.p=function(l,k){var f=a[l];if(f)for(var d=Array.prototype.slice.call(arguments,1),c=0;c<f.length;c++)f[c].apply(this,d)}};var xa={kg:function(a){for(var l="",k=0;k<a.length;k++)l+=String.fromCharCode(a.charCodeAt(k)^1);return l}};function ya(a){function l(b,d,k){var l=this,p,r=0;this.id=g++;this.name=k?k:"{unnamed on "+b+"}";this.target=function(){return b};this.Gb=function(){return-1!=e.indexOf(l)};this.start=function(){if(!l.Gb()){if(-1==e.indexOf(l)){var b=m.now();!0===l.xf(b)&&(e=e.slice(),e.push(l))}0<e.length&&a.repeat(f)}return this};this.stop=function(){for(c(l);p<d.length;p++){var a=d[p];a.jb&&a.Ya.call()}return this};this.eg=function(){p=void 0};this.xf=function(a){r++;if(0!==d.length){var b;D.V(p)?(p=0,b=d[p],b.W&&
|
|
||||||
b.W.call(b,a,r,l)):b=d[p];for(;p<d.length;){if(b.Ya&&b.Ya.call(b,a,r,l))return!0;b.Da&&b.Da.call(b,a,r,l);D.V(p)&&(p=-1);++p<d.length&&(b=d[p],b.W&&b.W.call(b,a,r,l))}}return!1}}function k(a){return D.V(a)?e.slice():e.filter(function(c){return c.target()===a})}function f(){d();0==e.length&&a.cancel(f)}function d(){var a=m.now();e.forEach(function(d){!0!==d.xf(a)&&c(d)})}function c(a){e=e.filter(function(c){return c!==a})}var g=0,m=aa.create(),e=[];this.d=function(){for(var a=e.length-1;0<=a;a--)e[a].stop();
|
|
||||||
e=[]};this.D=function(){function a(){}function c(a){var b=a.target,d=a.duration,e=a.ca,f,g;this.W=function(){f={};for(var c in a.G)b.hasOwnProperty(c)&&(f[c]={start:D.V(a.G[c].start)?b[c]:D.Gd(a.G[c].start)?a.G[c].start.call(void 0):a.G[c].start,end:D.V(a.G[c].end)?b[c]:D.Gd(a.G[c].end)?a.G[c].end.call(void 0):a.G[c].end,P:D.V(a.G[c].P)?X.Jb:a.G[c].P});g=m.now()};this.Ya=function(){var a=m.now()-g,a=0===d?1:Math.min(d,a)/d,c;for(c in f){var k=f[c];b[c]=k.start+(k.end-k.start)*k.P(a)}e&&e.call(b,a);
|
|
||||||
return 1>a}}function d(a,b,c){this.jb=c;this.Ya=function(){a.call(b);return!1}}function e(a){var b;this.W=function(c,d){b=d+a};this.Ya=function(a,c){return c<b}}function f(a){var b;this.W=function(c){b=c+a};this.Ya=function(a){return a<b}}function g(a){this.W=function(){a.forEach(function(a){a.start()})};this.Ya=function(){for(var b=0;b<a.length;b++)if(a[b].Gb())return!0;return!1}}a.m=function(a,b){return new function(){function k(b,c,e,f){return c?(D.V(e)&&(e=a),b.Bb(new d(c,e,f))):b}var m=[];this.Bb=
|
|
||||||
function(a){m.push(a);return this};this.fb=function(a){return this.Bb(new f(a))};this.oe=function(a){return this.Bb(new e(a||1))};this.call=function(a,b){return k(this,a,b,!1)};this.jb=function(a,b){return k(this,a,b,!0)};this.ia=function(b){D.V(b.target)&&(b.target=a);return this.Bb(new c(b))};this.Za=function(a){return this.Bb(new g(a))};this.eg=function(){return this.Bb({Ya:function(a,b){b.eg();return!0}})};this.xa=function(){return new l(a,m,b)};this.start=function(){return this.xa().start()};
|
|
||||||
this.Fg=function(){var a=new V;this.oe().call(a.J).xa();return a.L()};this.bb=function(){var a=this.Fg();this.start();return a}}};a.tc=function(c){k(c).forEach(function(a){a.stop()});return a.m(c,void 0)};return a}()};var Z=function(){var a={He:function(a,k){if(a.e)for(var f=a.e,d=0;d<f.length;d++)k(f[d],d)},Kc:function(l,k){if(l.e)for(var f=l.e,d=0;d<f.length;d++)if(!1===a.Kc(f[d],k)||!1===k(f[d],d))return!1}};a.F=a.Kc;a.Lc=function(l,k){if(l.e)for(var f=l.e,d=0;d<f.length;d++)if(!1===k(f[d],d)||!1===a.Lc(f[d],k))return!1};a.Fa=function(l,k){if(l.e)for(var f=l.e,d=0;d<f.length;d++)if(!1===a.Fa(f[d],k))return!1;return k(l)};a.Nj=a.Fa;a.xd=function(l,k){!1!==k(l)&&a.Lc(l,k)};a.Mc=function(l,k){var f=[];a.Lc(l,function(a){f.push(a)});
|
|
||||||
return k?f.filter(k):f};a.Ge=function(a,k){for(var f=a.parent;f&&!1!==k(f);)f=f.parent};a.ki=function(a,k){for(var f=a.parent;f&&f!==k;)f=f.parent;return!!f};return a}();var M=new function(){function a(a,f){var d=a.x-f.x,c=a.y-f.y;return d*d+c*c}function l(a,f,d){for(var c=0;c<a.length;c++){var g=M.za(a[c],a[c+1]||a[0],f,d,!0);if(g)return g}}this.za=function(a,f,d,c,g){var m=a.x;a=a.y;var e=f.x-m;f=f.y-a;var b=d.x,h=d.y;d=c.x-b;var n=c.y-h;c=e*n-d*f;if(!(1E-12>=c&&-1E-12<=c)&&(b=b-m,h=h-a,d=(b*n-d*h)/c,c=(b*f-e*h)/c,0<=c&&(g||1>=c)&&0<=d&&1>=d))return{x:m+e*d,y:a+f*d}};this.Jg=function(a,f,d,c){var g=a.x;a=a.y;var m=f.x-g;f=f.y-a;var e=d.x;d=d.y;var b=c.x-e;c=c.y-
|
|
||||||
d;var h=m*c-b*f;if(!(1E-12>=h&&-1E-12<=h)&&(c=((e-g)*c-b*(d-a))/h,0<=c&&1>=c))return{x:g+m*c,y:a+f*c}};this.Bc=function(a,f,d){for(var c=M.k(f,{}),g=M.k(d,{}),m,e=g.x-c.x,b=g.y-c.y,h=[],g=0;g<d.length;g++)m=d[g],h.push({x:m.x-e,y:m.y-b});d=[];m=[];for(g=0;g<a.length;g++){var n=a[g],q=l(f,c,n);q?(d.push(q),m.push(l(h,c,n))):(d.push(null),m.push(null))}for(g=0;g<a.length;g++)if(q=d[g],n=m[g],q&&n){f=a[g];var h=c,p=q.x-c.x,q=q.y-c.y,q=Math.sqrt(p*p+q*q);if(1E-12<q){var p=f.x-c.x,r=f.y-c.y,q=Math.sqrt(p*
|
|
||||||
p+r*r)/q;f.x=h.x+q*(n.x-h.x);f.y=h.y+q*(n.y-h.y)}else f.x=h.x,f.y=h.y}for(g=0;g<a.length;g++)m=a[g],m.x+=e,m.y+=b};this.q=function(a,f){if(0!==a.length){var d,c,g,m;d=c=a[0].x;g=m=a[0].y;for(var e=a.length;0<--e;)d=Math.min(d,a[e].x),c=Math.max(c,a[e].x),g=Math.min(g,a[e].y),m=Math.max(m,a[e].y);f.x=d;f.y=g;f.f=c-d;f.i=m-g;return f}};this.A=function(a){return[{x:a.x,y:a.y},{x:a.x+a.f,y:a.y},{x:a.x+a.f,y:a.y+a.i},{x:a.x,y:a.y+a.i}]};this.k=function(a,f){for(var d=0,c=0,g=a.length,m=a[0],e=0,b=1;b<
|
|
||||||
g-1;b++)var h=a[b],n=a[b+1],l=m.y+h.y+n.y,p=(h.x-m.x)*(n.y-m.y)-(n.x-m.x)*(h.y-m.y),d=d+p*(m.x+h.x+n.x),c=c+p*l,e=e+p;f.x=d/(3*e);f.y=c/(3*e);f.ja=e/2;return f};this.re=function(a,f){this.k(a,f);f.Ob=Math.sqrt(f.ja/Math.PI)};this.Va=function(a,f){for(var d=0;d<a.length;d++){var c=a[d],g=a[d+1]||a[0];if(0>(f.y-c.y)*(g.x-c.x)-(f.x-c.x)*(g.y-c.y))return!1}return!0};this.Mg=function(a,f,d){var c=a.x,g=f.x;a.x>f.x&&(c=f.x,g=a.x);g>d.x+d.f&&(g=d.x+d.f);c<d.x&&(c=d.x);if(c>g)return!1;var m=a.y,e=f.y,b=f.x-
|
|
||||||
a.x;1E-7<Math.abs(b)&&(e=(f.y-a.y)/b,a=a.y-e*a.x,m=e*c+a,e=e*g+a);m>e&&(c=e,e=m,m=c);e>d.y+d.i&&(e=d.y+d.i);m<d.y&&(m=d.y);return m<=e};this.se=function(k,f,d,c,g){var m,e;function b(b,c,d){if(f.x===n.x&&f.y===n.y)return d;var g=l(k,f,n),p=Math.sqrt(a(g,f)/(b*b+c*c));return p<h?(h=p,m=g.x,e=g.y,0!==c?Math.abs(e-f.y)/Math.abs(c):Math.abs(m-f.x)/Math.abs(b)):d}c=D.B(c,0.5);g=D.B(g,0.5);d=D.B(d,1);var h=Number.MAX_VALUE;e=m=0;var n={x:0,y:0},q,p=c*d;d=(1-c)*d;c=1-g;n.x=f.x-p;n.y=f.y-g;q=b(p,g,q);n.x=
|
|
||||||
f.x+d;n.y=f.y-g;q=b(d,g,q);n.x=f.x-p;n.y=f.y+c;q=b(p,c,q);n.x=f.x+d;n.y=f.y+c;return q=b(d,c,q)};this.Eg=function(a,f){function d(a,c,d){var e=c.x,f=d.x;c=c.y;d=d.y;var g=f-e,k=d-c;return Math.abs(k*a.x-g*a.y-e*d+f*c)/Math.sqrt(g*g+k*k)}for(var c=a.length,g=d(f,a[c-1],a[0]),m=0;m<c-1;m++){var e=d(f,a[m],a[m+1]);e<g&&(g=e)}return g};this.Wb=function(a,f,d){var c;d={x:f.x+Math.cos(d),y:f.y-Math.sin(d)};var g=[],m=[],e=a.length;for(c=0;c<e;c++){var b=M.Jg(a[c],a[(c+1)%e],f,d);if(b&&(g.push(b),2==m.push(c)))break}if(2==
|
|
||||||
g.length){var b=g[0],g=g[1],h=m[0],m=m[1],n=[g,b];for(c=h+1;c<=m;c++)n.push(a[c]);for(c=[b,g];m!=h;)m=(m+1)%e,c.push(a[m]);a=[n,c];e=d.x-f.x;c=g.x-b.x;0===e&&(e=d.y-f.y,c=g.y-b.y);(0>e?-1:0<e?1:0)!==(0>c?-1:0<c?1:0)&&a.reverse();return a}};this.Aa=function(a,f,d,c){c.x=a*(f.x-d.x)+d.x;c.y=a*(f.y-d.y)+d.y;return c};this.d=a;this.qe=function(a,f,d){if(D.Sc(f))f=2*Math.PI*f/360;else{var c=M.q(a,{});switch(f){case "random":f=Math.random()*Math.PI*2;break;case "top":f=Math.atan2(-c.i,0);break;case "bottom":f=
|
|
||||||
Math.atan2(c.i,0);break;case "topleft":f=Math.atan2(-c.i,-c.f);break;default:f=Math.atan2(c.i,c.f)}}c=M.k(a,{});return M.Aa(d,l(a,c,{x:c.x+Math.cos(f),y:c.y+Math.sin(f)}),c,{})};return this};var za=new function(){function a(a,d){this.face=a;this.kd=d;this.pc=this.dd=null}function l(a,d,f){this.ma=[a,d,f];this.C=Array(3);var e=d.y-a.y,b=f.z-a.z,h=d.x-a.x;d=d.z-a.z;var k=f.x-a.x;a=f.y-a.y;this.Oa={x:e*b-d*a,y:d*k-h*b,z:h*a-e*k};this.kb=[];this.td=this.visible=!1}this.S=function(c){function f(b,c,d){var g,h,k=b.ma[0],m=b.Oa,r=m.x,s=m.y,m=m.z,l=Array(n);c=c.kb;g=c.length;for(e=0;e<g;e++)h=c[e].kd,l[h.index]=!0,0>r*(h.x-k.x)+s*(h.y-k.y)+m*(h.z-k.z)&&a.d(b,h);c=d.kb;g=c.length;for(e=0;e<g;e++)h=
|
|
||||||
c[e].kd,!0!==l[h.index]&&0>r*(h.x-k.x)+s*(h.y-k.y)+m*(h.z-k.z)&&a.d(b,h)}var m,e,b,h,n=c.length;for(m=0;m<n;m++)c[m].index=m,c[m].$b=null;var q=[],p;if(0<(p=function(){function b(a,c,d,e){var f=(c.y-a.y)*(d.z-a.z)-(c.z-a.z)*(d.y-a.y),g=(c.z-a.z)*(d.x-a.x)-(c.x-a.x)*(d.z-a.z),h=(c.x-a.x)*(d.y-a.y)-(c.y-a.y)*(d.x-a.x);return f*e.x+g*e.y+h*e.z>f*a.x+g*a.y+h*a.z?new l(a,c,d):new l(d,c,a)}function d(a,b,c,e){function f(a,b,c){a=a.ma;b=a[0]==b?0:a[1]==b?1:2;return a[(b+1)%3]!=c?(b+2)%3:b}b.C[f(b,c,e)]=
|
|
||||||
a;a.C[f(a,e,c)]=b}if(4>n)return 0;var e=c[0],f=c[1],g=c[2],h=c[3],k=b(e,f,g,h),m=b(e,g,h,f),r=b(e,f,h,g),s=b(f,g,h,e);d(k,m,g,e);d(k,r,e,f);d(k,s,f,g);d(m,r,h,e);d(m,s,g,h);d(r,s,h,f);q.push(k,m,r,s);for(e=4;e<n;e++)for(f=c[e],g=0;4>g;g++)h=q[g],k=h.ma[0],m=h.Oa,0>m.x*(f.x-k.x)+m.y*(f.y-k.y)+m.z*(f.z-k.z)&&a.d(h,f);return 4}())){for(;p<n;){b=c[p];if(b.$b){for(m=b.$b;null!==m;)m.face.visible=!0,m=m.pc;var r,s;m=0;a:for(;m<q.length;m++)if(h=q[m],!1===h.visible){var w=h.C;for(e=0;3>e;e++)if(!0===w[e].visible){r=
|
|
||||||
h;s=e;break a}}h=[];var w=[],t=r,y=s;do if(h.push(t),w.push(y),y=(y+1)%3,!1===t.C[y].visible){do for(m=t.ma[y],t=t.C[y],e=0;3>e;e++)t.ma[e]==m&&(y=e);while(!1===t.C[y].visible&&(t!==r||y!==s))}while(t!==r||y!==s);var x=null,A=null;for(m=0;m<h.length;m++){var t=h[m],y=w[m],B=t.C[y],K=t.ma[(y+1)%3],C=t.ma[y],H=K.y-b.y,Q=C.z-b.z,O=K.x-b.x,P=K.z-b.z,F=C.x-b.x,T=C.y-b.y,N;0<d.length?(N=d.pop(),N.ma[0]=b,N.ma[1]=K,N.ma[2]=C,N.Oa.x=H*Q-P*T,N.Oa.y=P*F-O*Q,N.Oa.z=O*T-H*F,N.kb.length=0,N.visible=!1,N.td=!0):
|
|
||||||
N={ma:[b,K,C],C:Array(3),Oa:{x:H*Q-P*T,y:P*F-O*Q,z:O*T-H*F},kb:[],visible:!1};q.push(N);t.C[y]=N;N.C[1]=t;null!==A&&(A.C[0]=N,N.C[2]=A);A=N;null===x&&(x=N);f(N,t,B)}A.C[0]=x;x.C[2]=A;m=[];for(e=0;e<q.length;e++)if(h=q[e],!0===h.visible){w=h.kb;t=w.length;for(b=0;b<t;b++)y=w[b],x=y.dd,A=y.pc,null!==x&&(x.pc=A),null!==A&&(A.dd=x),null===x&&(y.kd.$b=A),k.push(y);h.td&&d.push(h)}else m.push(h);q=m}p++}for(m=0;m<q.length;m++)h=q[m],h.td&&d.push(h)}return{Je:q}};a.d=function(c,d){var f;0<k.length?(f=k.pop(),
|
|
||||||
f.face=c,f.kd=d,f.pc=null,f.dd=null):f=new a(c,d);c.kb.push(f);var e=d.$b;null!==e&&(e.dd=f);f.pc=e;d.$b=f};for(var k=Array(2E3),f=0;f<k.length;f++)k[f]=new a(null,null);for(var d=Array(1E3),f=0;f<d.length;f++)d[f]={ma:Array(3),C:Array(3),Oa:{x:0,y:0,z:0},kb:[],visible:!1}};var Aa=new function(){function a(a,f,d,c,g,m,e,b){var h=(a-d)*(m-b)-(f-c)*(g-e);return Math.abs(h)<l?void 0:{x:((a*c-f*d)*(g-e)-(a-d)*(g*b-m*e))/h,y:((a*c-f*d)*(m-b)-(f-c)*(g*b-m*e))/h}}var l=1E-12;this.cb=function(k,f){for(var d=k[0],c=d.x,g=d.y,m=d.x,e=d.y,b=k.length-1;0<b;b--)d=k[b],c=Math.min(c,d.x),g=Math.min(g,d.y),m=Math.max(m,d.x),e=Math.max(e,d.y);if(m-c<3*f||e-g<3*f)d=void 0;else{a:{d=!0;void 0==d&&(d=!1);c=[];g=k.length;for(m=0;m<=g;m++){var e=k[m%g],b=k[(m+1)%g],h=k[(m+2)%g],n,q,p;n=b.x-
|
|
||||||
e.x;q=b.y-e.y;p=Math.sqrt(n*n+q*q);var r=f*n/p,s=f*q/p;n=h.x-b.x;q=h.y-b.y;p=Math.sqrt(n*n+q*q);n=f*n/p;q=f*q/p;if(e=a(e.x-s,e.y+r,b.x-s,b.y+r,b.x-q,b.y+n,h.x-q,h.y+n))if(c.push(e),h=c.length,d&&3<=h&&(e=c[h-3],b=c[h-2],h=c[h-1],0>(b.x-e.x)*(h.y-e.y)-(h.x-e.x)*(b.y-e.y))){d=void 0;break a}}c.shift();d=3>c.length?void 0:c}if(!d)a:{c=k.slice(0);for(d=0;d<k.length;d++){m=k[d%k.length];b=k[(d+1)%k.length];h=b.x-m.x;g=b.y-m.y;e=Math.sqrt(h*h+g*g);h=f*h/e;e=f*g/e;g=m.x-e;m=m.y+h;e=b.x-e;b=b.y+h;if(0!=c.length){s=
|
|
||||||
g-e;q=m-b;h=[];n=p=!0;r=void 0;for(r=0;r<c.length;r++){var w=s*(m-c[r].y)-(g-c[r].x)*q;w<=l&&w>=-l&&(w=0);h.push(w);0<w&&(p=!1);0>w&&(n=!1)}if(p)c=[];else if(!n){s=[];for(r=0;r<c.length;r++)q=(r+1)%c.length,p=h[r],n=h[q],0<=p&&s.push(c[r]),(0<p&&0>n||0>p&&0<n)&&s.push(a(c[r].x,c[r].y,c[q].x,c[q].y,g,m,e,b));c=s}}if(3>c.length){d=void 0;break a}}d=c}}return d};return this};var Ba=new function(){function a(a){for(var f=a[0].x,d=a[0].y,c=f,g=d,m=1;m<a.length;m++)var e=a[m],f=Math.min(f,e.x),d=Math.min(d,e.y),c=Math.max(c,e.x),g=Math.max(g,e.y);a=c-f;g=g-d;return[{x:f+2*a,y:d+2*g,f:0},{x:f+2*a,y:d-2*g,f:0},{x:f-2*a,y:d+2*g,f:0}]}var l=1E-12;this.S=function(k,f){function d(){for(b=0;b<p.length;b++){var a=p[b],c=a.ma,d=c[0],e=c[1],f=c[2],c=d.x,g=d.y,d=d.z,h=e.x,k=e.y,e=e.z,r=f.x,m=f.y,f=f.z,s=c*(k-m)+h*(m-g)+r*(g-k);a.ha={x:-(g*(e-f)+k*(f-d)+m*(d-e))/s/2,y:-(d*(h-r)+e*(r-
|
|
||||||
c)+f*(c-h))/s/2}}}function c(a){for(b=0;b<p.length;b++){var c=p[b];c.ub=!M.Va(a,c.ha)}}function g(a,b){var c=Array(b.length),d;for(d=0;d<c.length;d++)c[d]=[];for(d=0;d<a.length;d++){var e=a[d];if(!(0>e.Oa.z))for(var f=e.C,g=0;g<f.length;g++){var h=f[g];if(!(0>h.Oa.z)){var k=e.ma,r=k[(g+1)%3].index,k=k[g].index;2<r&&c[r-3].push([e,h,2<k?b[k-3]:null])}}}return c}function m(a){var b=[a[0]],c=a[0][0],d=a[0][1],e=a.length,f=1;a:for(;f<e;f++)for(var g=1;g<e;g++){var h=a[g];if(null!==h){if(h[1]===c)if(b.unshift(h),
|
|
||||||
c=h[0],a[g]=null,b.length===e)break a;else continue;if(h[0]===d&&(b.push(h),d=h[1],a[g]=null,b.length===e))break a}}b[0][0]!=b[e-1][1]&&b.push([b[e-1][1],b[0][0]]);return b}function e(a,b,c,d){var e=[],f=[],g=c.length,h,k=b.length,r=0,m=-1,s=-1,n=-1,p=null,q=d;for(d=0;d<g;d++){var w=(q+1)%g,t=c[q][0],E=c[w][0];if(M.d(t.ha,E.ha)>l)if(t.ub&&E.ub){var I=[],J=[];for(h=0;h<k;h++){m=(r+1)%k;if(p=M.za(b[r],b[m],t.ha,E.ha,!1))if(J.push(r),2===I.push(p))break;r=m}if(2===I.length){m=I[1];p=M.d(t.ha,I[0]);m=
|
|
||||||
M.d(t.ha,m);t=p<m?0:1;p=p<m?1:0;m=J[t];-1===s&&(s=m);if(-1!==n)for(;m!=n;)n=(n+1)%k,e.push(b[n]),f.push(null);e.push(I[t],I[p]);f.push(c[q][2],null);n=J[p]}}else if(t.ub&&!E.ub)for(h=0;h<k;h++){m=(r+1)%k;if(p=M.za(b[r],b[m],t.ha,E.ha,!1)){if(-1!==n)for(I=n;r!=I;)I=(I+1)%k,e.push(b[I]),f.push(null);e.push(p);f.push(c[q][2]);-1===s&&(s=r);break}r=m}else if(!t.ub&&E.ub)for(h=0;h<k;h++){m=(r+1)%k;if(p=M.za(b[r],b[m],t.ha,E.ha,!1)){e.push(t.ha,p);f.push(c[q][2],null);n=r;break}r=m}else e.push(t.ha),f.push(c[q][2]);
|
|
||||||
q=w}if(0==e.length)f=e=null;else if(-1!==n)for(;s!=n;)n=(n+1)%k,e.push(b[n]),f.push(null);a.o=e;a.C=f}if(1===k.length)k[0].o=f.slice(0),k[0].C=[];else{var b,h;h=a(f);var n=[],q;for(b=0;b<h.length;b++)q=h[b],n.push({x:q.x,y:q.y,z:q.x*q.x+q.y*q.y-q.f});for(b=0;b<k.length;b++)q=k[b],q.o=null,n.push({x:q.x,y:q.y,z:q.x*q.x+q.y*q.y-q.f});var p=za.S(n).Je;d();c(f);n=g(p,k);for(b=0;b<k.length;b++)if(q=n[b],0!==q.length){var r=k[b];q=m(q);var s=q.length,w=-1;for(h=0;h<s;h++)q[h][0].ub&&(w=h);if(0<=w)e(r,f,
|
|
||||||
q,w);else{var w=[],t=[];for(h=0;h<s;h++)M.d(q[h][0].ha,q[(h+1)%s][0].ha)>l&&(w.push(q[h][0].ha),t.push(q[h][2]));r.o=w;r.C=t}r.o&&3>r.o.length&&(r.o=null,r.C=null)}}};this.zc=function(k,f){var d,c,g=!1,m=k.length;for(c=0;c<m;c++)d=k[c],null===d.o&&(g=!0),d.pe=d.f;if(g){var g=a(f),e=[],b,h;c=k.length;for(d=0;d<g.length;d++)b=g[d],e.push({x:b.x,y:b.y,z:b.x*b.x+b.y*b.y});for(d=0;d<c;d++)b=k[d],e.push({x:b.x,y:b.y,z:b.x*b.x+b.y*b.y});b=za.S(e).Je;g=Array(c);for(d=0;d<c;d++)g[d]={};e=b.length;for(d=0;d<
|
|
||||||
e;d++)if(h=b[d],0<h.Oa.z){var n=h.ma,l=n.length;for(h=0;h<l-1;h++){var p=n[h].index-3,r=n[h+1].index-3;0<=p&&0<=r&&(g[p][r]=!0,g[r][p]=!0)}h=n[0].index-3;0<=r&&0<=h&&(g[r][h]=!0,g[h][r]=!0)}for(d=0;d<c;d++){h=g[d];b=k[d];var r=Number.MAX_VALUE,e=null,s;for(s in h)h=k[s],n=M.d(b,h),r>n&&(r=n,e=h);b.Uj=e;b.vf=Math.sqrt(r)}for(c=0;c<m;c++)d=k[c],s=Math.min(Math.sqrt(d.f),0.95*d.vf),d.f=s*s;this.S(k,f);for(c=0;c<m;c++)d=k[c],d.pe!==d.f&&0<d.uc&&(s=Math.min(d.uc,d.pe-d.f),d.f+=s,d.uc-=s)}}};var Ca=new function(){this.Dg=function(a){a=a.e;for(var l=0,k=a.length,f=0;f<k;f++){var d=a[f];if(d.o){var c=d.x,g=d.y;M.k(d.o,d);c=c-d.x;d=g-d.y;d=(0<c?c:-c)+(0<d?d:-d);l<d&&(l=d)}}return l};this.ya=function(a,l){var k=a.e,f,d,c,g;switch(l){case "random":return a.e[Math.floor(k.length*Math.random())];case "topleft":f=k[0];var m=f.x+f.y;for(g=1;g<k.length;g++)d=k[g],c=d.x+d.y,c<m&&(m=c,f=d);return f;case "bottomright":f=k[0];m=f.x+f.y;for(g=1;g<k.length;g++)d=k[g],c=d.x+d.y,c>m&&(m=c,f=d);return f;
|
|
||||||
default:f=k[0];c=d=M.d(a,f);for(g=k.length-1;1<=g;g--)m=k[g],d=M.d(a,m),d<c&&(c=d,f=m);return f}};this.Ja=function(a,l,k){var f=a.e;if(f[0].C){var d=f.length;for(a=0;a<d;a++)f[a].ld=!1,f[a].ic=0;var d=[],c,g;g=c=0;d[c++]=l||f[0];for(l=l.ic=0;g<c;)if(f=d[g++],!f.ld&&f.C){k(f,l++,f.ic);f.ld=!0;var m=f.C,e=m.length;for(a=0;a<e;a++){var b=m[a];b&&!0!==b.ld&&(0===b.ic&&(b.ic=f.ic+1),d[c++]=b)}}}else for(a=0;a<f.length;a++)k(f[a],a,1)}};var G=function(){function a(a,e,h,r,s,p,w,P){var F=D.extend({},m,a);1>a.lineHeight&&(a.lineHeight=1);a=F.fontFamily;var T=F.fontStyle+" "+F.fontVariant+" "+F.fontWeight,N=F.sb,U=F.Zc,u=T+" "+a;F.Ne=u;var z={la:!1,mc:0,fontSize:0};e.save();e.font=T+" "+x+"px "+a;e.textBaseline="middle";e.textAlign="center";l(e,F);h=h.trim();t.text=h;d(r,s,p,y);if(/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/.test(h))f(t),k(e,t,u),c(F,t,y,U,N,!0,z);else if(k(e,t,u),c(F,t,y,U,N,!1,
|
|
||||||
z),!z.la&&(w&&(f(t),k(e,t,u)),P||w))P&&(z.ec=!0),c(F,t,y,U,U,!0,z);if(z.la){var L="",E=0,I=Number.MAX_VALUE,J=Number.MIN_VALUE;g(F,t,z.mc,z.fontSize,y,z.ec,function(a,c){0<L.length&&c===b&&(L+=b);L+=a},function(a,b,c,d,f){d===q&&(L+=n);e.save();e.translate(p.x,b);a=z.fontSize/x;e.scale(a,a);e.fillText(L,0,0);e.restore();L=c;E<f&&(E=f);I>b&&(I=b);J<b&&(J=b)});z.da={x:p.x-E/2,y:I-z.fontSize/2,f:E,i:J-I+z.fontSize};e.restore()}else e.clear&&e.clear();return z}function l(a,c){var d=c.Ne,f=e[d];void 0===
|
|
||||||
f&&(f={},e[d]=f);f[b]=a.measureText(b).width;f[h]=a.measureText(h).width}function k(a,b,c){var d,f=b.text.split(/(\n|[ \f\r\t\v\u2028\u2029]+|\u00ad+|\u200b+)/),g=[],h=[],k=f.length>>>1;for(d=0;d<k;d++)g.push(f[2*d]),h.push(f[2*d+1]);2*d<f.length&&(g.push(f[2*d]),h.push(void 0));c=e[c];for(d=0;d<g.length;d++)f=g[d],k=c[f],void 0===k&&(k=a.measureText(f).width,c[f]=k);b.md=g;b.lg=h}function f(a){for(var c=a.text.split(/\s+/),d=[],e={".":!0,",":!0,";":!0,"?":!0,"!":!0,":":!0,"\u3002":!0},f=0;f<c.length;f++){var g=
|
|
||||||
c[f];if(3<g.length){for(var h="",h=h+g.charAt(0),h=h+g.charAt(1),k=2;k<g.length-2;k++){var r=g.charAt(k);e[r]||(h+=p);h+=r}h+=p;h+=g.charAt(g.length-2);h+=g.charAt(g.length-1);d.push(h)}else d.push(g)}a.text=d.join(b)}function d(a,b,c,d){for(var e,f,g=0;g<a.length;g++)a[g].y===b.y&&(void 0===e?e=g:f=g);void 0===f&&(f=e);e!==f&&a[f].x<a[e].x&&(g=e,e=f,f=g);d.o=a;d.q=b;d.vd=c;d.tf=e;d.uf=f}function c(a,b,c,d,e,f,h){var k=a.lineHeight,r=Math.max(a.eb,0.001),m=a.tb,n=b.md,s=c.vd,p=c.q,l=void 0,q=void 0;
|
|
||||||
switch(a.verticalAlign){case "top":s=p.y+p.i-s.y;break;case "bottom":s=s.y-p.y;break;default:s=2*Math.min(s.y-p.y,p.y+p.i-s.y)}m=Math.min(s,m*c.q.i);if(0>=m)h.la=!1;else{s=d;e=Math.min(e,m);p=Math.min(1,m/Math.max(20,b.md.length));do{var w=(s+e)/2,t=Math.min(n.length,Math.floor((m+w*(k-1-2*r))/(w*k))),y=void 0;if(0<t){var x=1,Y=t;do{var $=Math.floor((x+Y)/2);if(g(a,b,$,w,c,f&&w===d&&$===t,null,null)){if(Y=l=y=$,x===Y)break}else if(x=$+1,x>Y)break}while(1)}void 0!==y?s=q=w:e=w}while(e-s>p);void 0===
|
|
||||||
q?(h.la=!1,h.fontSize=0):(h.la=!0,h.fontSize=q,h.mc=l,h.ec=f&&w===s)}}function g(a,c,d,f,g,k,m,n){var p=a.pb,l=f*(a.lineHeight-1),q=a.verticalAlign,t=Math.max(a.eb,0.001);a=e[a.Ne];var y=c.md;c=c.lg;var z=g.o,L=g.vd,E=g.tf,I=g.uf,J;switch(q){case "top":g=L.y+f/2+f*t;J=1;break;case "bottom":g=L.y-(f*d+l*(d-1))+f/2-f*t;J=-1;break;default:g=L.y-(f*(d-1)/2+l*(d-1)/2),J=1}q=g;for(t=0;t<d;t++)r[2*t]=g-f/2,r[2*t+1]=g+f/2,g+=J*f,g+=J*l;for(;s.length<r.length;)s.push(Array(2));t=r;g=2*d;J=s;for(var R=z.length,
|
|
||||||
Y=E,E=(E-1+R)%R,$=I,I=(I+1)%R,W=0;W<g;){for(var ea=t[W],ba=z[E];ba.y<ea;)Y=E,E=(E-1+R)%R,ba=z[E];for(var ca=z[I];ca.y<ea;)$=I,I=(I+1)%R,ca=z[I];var la=z[Y],ma=z[$],ca=ma.x+(ca.x-ma.x)*(ea-ma.y)/(ca.y-ma.y);J[W][0]=la.x+(ba.x-la.x)*(ea-la.y)/(ba.y-la.y);J[W][1]=ca;W++}for(t=0;t<d;t++)z=2*t,g=L.x,J=g-s[z][0],R=s[z][1]-g,J=J<R?J:R,R=g-s[z+1][0],z=s[z+1][1]-g,z=R<z?R:z,w[t]=2*(J<z?J:z)-p*f;Y=a[b]*f/x;J=a[h]*f/x;p=0;E=w[p];L=0;z=void 0;for(t=0;t<y.length;t++){g=y[t];$=c[t];R=a[g]*f/x;if(L+R<E&&y.length-
|
|
||||||
t>=d-p&&"\n"!=z)L+=R," "===$&&(L+=Y),m&&m(g,z);else{if(R>E&&(p!==d-1||!k))return!1;if(p+1>=d){if(k){d=E-L-J;if(d>J||R>J)d=Math.floor(g.length*d/R),0<d&&m&&m(g.substring(0,d),z);m&&m(h,void 0);n&&n(p,q,g,z,L);return!0}return!1}p++;n&&n(p,q,g,z,L);q+=f;q+=l;E=w[p];L=R;" "===$&&(L+=Y);if(R>E&&(p!==d||!k))return!1}z=$}n&&n(p,q,void 0,void 0,L);return!0}var m={sb:72,Zc:0,lineHeight:1.05,pb:1,eb:0.5,tb:0.9,fontFamily:"sans-serif",fontStyle:"normal",fontWeight:"normal",fontVariant:"normal",verticalAlign:"center"},
|
|
||||||
e={},b=" ",h="\u2026",n="\u2010",q="\u00ad",p="\u200b",r=[],s=[],w=[],t={text:"",md:void 0,lg:void 0},y={o:void 0,q:void 0,vd:void 0,tf:0,uf:0},x=100;return{Le:a,xe:function(b,c,d,e,f,g,h,k,m,r,s,n){var p,l=0,q=0;d=d.toString().trim();!n&&m.result&&d===m.sg&&Math.abs(r-m.ue)/r<=s&&(p=m.result,p.la&&(l=g.x-m.zg,q=g.y-m.Ag,s=m.jd,c.save(),c.translate(l,q),s.Ta(c),c.restore()));p||(s=m.jd,s.clear(),p=a(b,s,d,e,f,g,h,k),p.la&&s.Ta(c),m.ue=r,m.zg=g.x,m.Ag=g.y,m.result=p,m.sg=d);return p.la?{la:!0,mc:p.mc,
|
|
||||||
fontSize:p.fontSize,da:{x:p.da.x+l,y:p.da.y+q,f:p.da.f,i:p.da.i},ec:p.ec}:{la:!1}},yi:function(){return{ue:0,zg:0,Ag:0,result:void 0,jd:new ga,sg:void 0}},Ea:m}}();var Da=new function(){function a(a,d){return function(c,g,m,e){function b(a,c,e,f,g){if(0!=a.length){var r=a.shift(),s=k(r),n,p,l,q;if(d(f,g)){n=c;l=s/f;do{s=r.shift();p=s.vc;q=p/l;p=s;var P=e,F=l;p.x=n+q/2;p.y=P+F/2;m&&h(s,n,e,q,l);n+=q}while(0<r.length);return b(a,c,e+l,f,g-l)}n=e;q=s/g;do s=r.shift(),p=s.vc,l=p/q,p=s,P=n,F=l,p.x=c+q/2,p.y=P+F/2,m&&h(s,c,n,q,l),n+=l;while(0<r.length);return b(a,c+q,e,f-q,g)}}function h(a,b,c,d,e){a.o=[{x:b,y:c},{x:b+d,y:c},{x:b+d,y:c+e},{x:b,y:c+e}]}var n=g.x,l=
|
|
||||||
g.y,p=g.f;g=g.i;if(0!=c.length)if(1==c.length)c[0].x=n+p/2,c[0].y=l+g/2,c[0].Ed=0,m&&h(c[0],n,l,p,g);else{c=c.slice(0);for(var r=0,s=0;s<c.length;s++)r+=c[s].T;r=p*g/r;for(s=0;s<c.length;s++)c[s].vc=c[s].T*r;e=a(c,p,g,[[c.shift()]],e);b(e,n,l,p,g)}}}function l(a,d,c,g){function m(a){return Math.max(Math.pow(h*a/b,c),Math.pow(b/(h*a),g))}var e=k(a),b=e*e,h=d*d;d=m(a[0].vc);for(e=1;e<a.length;e++)d=Math.max(d,m(a[e].vc));return d}function k(a){for(var d=0,c=0;c<a.length;c++)d+=a[c].vc;return d}this.te=
|
|
||||||
a(function(a,d,c,g,m){m=Math.pow(2,m);for(var e=1/m,b=d<c;0<a.length;){var h=g[g.length-1],n=a.shift(),q=b?d:c,p=b?m:e,r=b?e:m,s=l(h,q,p,r);h.push(n);q=l(h,q,p,r);s<q&&(h.pop(),g.push([n]),b?c-=k(h)/d:d-=k(h)/c,b=d<c)}return g},function(a,d){return a<d});this.Xb=a(function(a,d,c,g,k){function e(a){if(1<g.length){for(var c=g[g.length-1],e=g[g.length-2].slice(0),f=0;f<c.length;f++)e.push(c[f]);l(e,d,b,h)<a&&g.splice(-2,2,e)}}for(var b=Math.pow(2,k),h=1/b;0<a.length;){c=g[g.length-1];k=l(c,d,b,h);if(0==
|
|
||||||
a.length)return;var n=a.shift();c.push(n);var q=l(c,d,b,h);k<q&&(c.pop(),e(k),g.push([n]))}e(l(g[g.length-1],d,b,h));return g},function(){return!0})};function Ea(a){var l={},k=a.Ud,f;a.c.j("model:loaded",function(a){f=a});this.H=function(){a.c.p("api:initialized",this)};this.Dc=function(a,c,f,m){this.pd(l,c);this.qd(l,c);this.od(l,c,!1);m&&m(l);a(k,l,f)};this.ud=function(a,c,g,k,e,b,h){if(a){for(a=c.length-1;0<=a;a--){var n=c[a],l=D.extend({group:n.group},e);l[g]=k(n);b(l)}0<c.length&&h(D.extend({groups:Z.Mc(f,k).map(function(a){return a.group})},e))}};this.qd=function(a,c){a.selected=c.selected;a.hovered=c.Eb;a.open=c.open;a.openness=c.Lb;a.exposed=
|
|
||||||
c.U;a.exposure=c.ka;a.transitionProgress=c.ua;a.revealed=!c.ba.Na();a.browseable=c.Qa?c.M:void 0;a.visible=c.ea;a.labelDrawn=c.ra&&c.ra.la;return a};this.pd=function(a,c){var f=c.parent;a.group=c.group;a.parent=f&&f.group;a.weightNormalized=c.xg;a.level=c.R-1;a.siblingCount=f&&f.e.length;a.hasChildren=!c.empty();a.index=c.index;a.indexByWeight=c.Ed;a.description=c.description;a.attribution=c.na;return a};this.od=function(a,c,f){a.polygonCenterX=c.K.x;a.polygonCenterY=c.K.y;a.polygonArea=c.K.ja;a.boxLeft=
|
|
||||||
c.q.x;a.boxTop=c.q.y;a.boxWidth=c.q.f;a.boxHeight=c.q.i;if(c.ra&&c.ra.la){var k=c.ra.da;a.labelBoxLeft=k.x;a.labelBoxTop=k.y;a.labelBoxWidth=k.f;a.labelBoxHeight=k.i;a.labelFontSize=c.ra.fontSize}f&&c.aa&&(a.polygon=c.aa.map(function(a){return{x:a.x,y:a.y}}),a.neighbors=c.C&&c.C.map(function(a){return a&&a.group}));return a}};var na=new function(){var a=window.console;this.Pa=function(a){throw"FoamTree: "+a;};this.info=function(l){a.info("FoamTree: "+l)};this.warn=function(l){a.warn("FoamTree: "+l)}};function Fa(a){function l(b,c){b.e=[];b.La=!0;var e=d(c),f=0;if("flattened"==a.Ua&&0<c.length&&0<b.R){var g=c.reduce(function(a,b){return a+D.B(b.weight,1)},0),h=k(b.group,!1);h.description=!0;h.T=g*a.cc;h.index=f++;h.parent=b;h.R=b.R+1;h.id=h.id+"_d";b.e.push(h)}for(g=0;g<c.length;g++){var r=c[g],h=D.B(r.weight,1);if(0>=h)if(a.uj)h=0.9*e;else continue;r=k(r,!0);r.T=h;r.index=f;r.parent=b;r.R=b.R+1;b.e.push(r);f++}}function k(a,b){var c=new Ga;f(a);c.id=a.__id;c.group=a;b&&(n[a.__id]=c);return c}
|
|
||||||
function f(a){D.Q(a,"__id")||(Object.defineProperty(a,"__id",{enumerable:!1,configurable:!1,writable:!1,value:h}),h++)}function d(a){for(var b=Number.MAX_VALUE,c=0;c<a.length;c++){var d=a[c].weight;0<d&&b>d&&(b=d)}b===Number.MAX_VALUE&&(b=1);return b}function c(a){if(!a.empty()){a=a.e;var b=0,c;for(c=a.length-1;0<=c;c--){var d=a[c].T;b<d&&(b=d)}for(c=a.length-1;0<=c;c--)d=a[c],d.xg=d.T/b}}function g(a){if(!a.empty()){a=a.e.slice(0).sort(function(a,b){return a.T<b.T?1:a.T>b.T?-1:a.index-b.index});
|
|
||||||
for(var b=0;b<a.length;b++)a[b].Ed=b}}function m(){for(var c=b.e.reduce(function(a,b){return a+b.T},0),d=0;d<b.e.length;d++){var e=b.e[d];e.na&&(e.T=Math.max(0.025,a.Ug)*c)}}var e=this,b=new Ga,h,n,q,p,r;this.H=function(){return b};this.S=function(b){var d=b.group.groups,e=a.qi;return!b.e&&!b.description&&d&&0<d.length&&r+d.length<=e?(r+=d.length,l(b,d),c(b),g(b),!0):!1};this.Y=function(a){function d(a){var b=a.groups;if(b)for(var c=0;c<b.length;c++){var e=b[c];f(e);var g=e.__id;n[g]=null;p[g]=a;
|
|
||||||
g=e.id;D.V(g)||(q[g]=e);d(e)}}function e(a,b){if(!a)return b;var c=Math.max(b,a.__id||0),d=a.groups;if(d&&0<d.length)for(var f=d.length-1;0<=f;f--)c=e(d[f],c);return c}b.group=a;b.Ca=!1;b.M=!1;b.Qa=!1;b.open=!0;b.Lb=1;h=e(a,0)+1;n={};q={};p={};r=0;a&&(f(a),n[a.__id]=b,D.V(a.id)||(q[a.id]=a),d(a));l(b,a&&a.groups||[]);(function(a){if(!a.empty()){var b=k({attribution:!0});b.index=a.e.length;b.parent=a;b.R=a.R+1;b.na=!0;a.e.push(b)}})(b);c(b);m();g(b)};this.update=function(){Z.Fa(b,function(a){if(!a.empty()){a=
|
|
||||||
a.e;for(var b=d(a.map(function(a){return a.group})),c=0;c<a.length;c++){var e=a[c];e.T=0<e.group.weight?e.group.weight:0.9*b}}});c(b);m();g(b)};this.k=function(a){return function(){if(D.V(a)||D.nf(a))return[];if(Array.isArray(a))return a.map(e.d,e);if(D.jc(a)){if(D.Q(a,"__id"))return[e.d(a)];if(D.Q(a,"all")){var c=[];Z.F(b,function(a){c.push(a)});return c}if(D.Q(a,"groups"))return e.k(a.groups)}return[e.d(a)]}().filter(function(a){return void 0!==a})};this.d=function(a){if(D.jc(a)&&D.Q(a,"__id")){if(a=
|
|
||||||
a.__id,D.Q(n,a)){if(null===n[a]){for(var b=p[a],c=[];b;){b=b.__id;c.push(b);if(n[b])break;b=p[b]}for(b=c.length-1;0<=b;b--)this.S(n[c[b]])}return n[a]}}else if(D.Q(q,a))return this.d(q[a])};this.A=function(a,b,c){return{e:e.k(a),Ia:D.B(a&&a[b],!0),Ha:D.B(a&&a.keepPrevious,c)}}}function Ha(a,l,k){var f={};l.Ha&&Z.F(a,function(a){k(a)&&(f[a.id]=a)});a=l.e;l=l.Ia;for(var d=a.length-1;0<=d;d--){var c=a[d];f[c.id]=l?c:void 0}var g=[];D.Ga(f,function(a){void 0!==a&&g.push(a)});return g};function Ia(a){function l(a,b){var c=a.ka;b.opacity=1;b.Ka=1;b.va=0>c?1-p.ei/100*c:1;b.wa=0>c?1-p.fi/100*c:1;b.fa=0>c?1+0.5*c:1}function k(a){a=a.ka;return Math.max(0.001,0===a?1:1+a*(p.Xa-1))}function f(a,b){for(var c=a.reduce(function(a,b){a[b.id]=b;return a},{}),d=a.length-1;0<=d;d--)Z.F(a[d],function(a){c[a.id]=void 0});var e=[];D.Ga(c,function(a){a&&Z.Ge(a,function(a){a.open||e.push(a)})});var f=[];D.Ga(c,function(a){a&&a.open&&f.push(a)});d=[];0!==e.length&&d.push(x.Kb({e:e,Ia:!0,Ha:!0},b,!0));
|
|
||||||
return pa(d)}function d(d,f,k,n){var l=m();if(0===d.length&&!l)return(new V).J().L();var q=d.reduce(function(a,b){a[b.id]=!0;return a},{}),s=[];d=[];if(A.reduce(function(a,b){return a||q[b.id]&&(!b.U||1!==b.ka)||!q[b.id]&&!b.parent.U&&(b.U||-1!==b.ka)},!1)){var x=[],C={};A.forEach(function(a){q[a.id]&&(a.U||s.push(a),a.U=!0,Z.Fa(a,function(a){x.push(b(a,1));C[a.id]=!0}))});0<x.length?(Z.F(r,function(a){q[a.id]||(a.U&&s.push(a),a.U=!1);C[a.id]||x.push(b(a,-1))}),d.push(y.D.m({}).Za(x).call(h).bb()),
|
|
||||||
c(q),d.push(g(l)),k&&(t.sc(B,p.Qc,p.Wa,X.pa(p.gc)),t.Qb())):(d.push(e(k)),f&&Z.F(r,function(a){a.U&&s.push(a)}))}return pa(d).N(function(){w.ud(f,s,"exposed",function(a){return a.U},{indirect:n},a.options.Ef,a.options.Df)})}function c(a){A.reduce(n(!0,void 0,function(b){return b.U||a[b.id]}),q(B));B.x-=B.f*(p.Xa-1)/2;B.y-=B.i*(p.Xa-1)/2;B.f*=p.Xa;B.i*=p.Xa}function g(b){if(b||!t.Rd())return y.D.m(s).ia({duration:0.7*p.Wa,G:{x:{end:B.x+B.f/2,P:X.pa(p.gc)},y:{end:B.y+B.i/2,P:X.pa(p.gc)}},ca:function(){a.c.p("foamtree:dirty",
|
|
||||||
!0)}}).bb();s.x=B.x+B.f/2;s.y=B.y+B.i/2;return(new V).J().L()}function m(){return!!A&&A.reduce(function(a,b){return a||0!==b.ka},!1)}function e(a){var c=[],d=[];Z.F(r,function(a){0!==a.ka&&d.push(b(a,0,function(){this.U=!1}))});c.push(y.D.m({}).Za(d).bb());t.content(0,0,K,C);a&&(c.push(t.reset(p.Wa,X.pa(p.gc))),t.Qb());return pa(c)}function b(b,c,d){var e=y.D.m(b);0===b.ka&&0!==c&&e.call(function(){this.Cc(H);this.Ab(l)});e.ia({duration:p.Wa,G:{ka:{end:c,P:X.pa(p.gc)}},ca:function(){r.I=!0;r.Ma=!0;
|
|
||||||
a.c.p("foamtree:dirty",!0)}});0===c&&e.call(function(){this.Nd();this.nc();this.fd(H);this.ed(l)});return e.call(d).xa()}function h(){var a=r.e.reduce(n(!1,H.Ub,void 0),q({})).da,b=p.Qc,c=Math.min(a.x,B.x-B.f*b),d=Math.max(a.x+a.f,B.x+B.f*(1+b)),e=Math.min(a.y,B.y-B.i*b),a=Math.max(a.y+a.i,B.y+B.i*(1+b));t.content(c,e,d-c,a-e)}function n(a,b,c){var d={};return function(e,f){if(!c||c(f)){for(var g=a?f.aa||f.o:f.o,h,k=g.length-1;0<=k;k--)h=void 0!==b?b(f,g[k],d):g[k],e.$c=Math.min(e.$c,h.x),e.Od=Math.max(e.Od,
|
|
||||||
h.x),e.ad=Math.min(e.ad,h.y),e.Pd=Math.max(e.Pd,h.y);e.da.x=e.$c;e.da.y=e.ad;e.da.f=e.Od-e.$c;e.da.i=e.Pd-e.ad}return e}}function q(a){return{$c:Number.MAX_VALUE,Od:Number.MIN_VALUE,ad:Number.MAX_VALUE,Pd:Number.MIN_VALUE,da:a}}var p=a.options,r,s,w,t,y,x,A,B,K,C,H={rf:function(a,b){b.scale=k(a);return!1},Tb:function(a,b){var c=k(a),d=s.x,e=s.y;b.translate(d,e);b.scale(c,c);b.translate(-d,-e)},Vb:function(a,b,c){a=k(a);var d=s.x,e=s.y;c.x=(b.x-d)/a+d;c.y=(b.y-e)/a+e},Ub:function(a,b,c){a=k(a);var d=
|
|
||||||
s.x,e=s.y;c.x=(b.x-d)*a+d;c.y=(b.y-e)*a+e;return c}};a.c.j("stage:initialized",function(a,b,c,d){s={x:c/2,y:d/2};K=c;C=d;B={x:0,y:0,f:K,i:C}});a.c.j("stage:resized",function(a,b,c,d){s.x*=c/a;s.y*=d/b;K=c;C=d});a.c.j("api:initialized",function(a){w=a});a.c.j("zoom:initialized",function(a){t=a});a.c.j("model:loaded",function(a,b){r=a;A=b});a.c.j("model:childrenAttached",function(a){A=a});a.c.j("timeline:initialized",function(a){y=a});a.c.j("openclose:initialized",function(a){x=a});var Q=["groupExposureScale",
|
|
||||||
"groupUnexposureScale","groupExposureZoomMargin"];a.c.j("options:changed",function(a){D.ob(a,Q)&&m()&&(c({}),t.Bj(B,p.Qc),t.Qb())});this.H=function(){a.c.p("expose:initialized",this)};this.fc=function(a,b,c,e){var g=a.e.reduce(function(a,b){for(var c=b;c=c.parent;)a[c.id]=!0;return a},{}),h=Ha(r,a,function(a){return a.U&&!a.open&&!g[a.id]}),k=new V;f(h,b).N(function(){d(h.filter(function(a){return a.o&&a.aa}),b,c,e).N(k.J)});return k.L()}};function Ja(a){function l(d){function b(a,b){var c=Math.min(1,Math.max(0,a.ua));b.opacity=c;b.va=1;b.wa=c;b.Ka=c;b.fa=a.Hb}var h=a.options,k=h.pj,l=h.qj,p=h.mj,r=h.nj,s=h.oj,w=h.fe,t=k+l+p+r+s,y=0<t?w/t:0,x=[];m.hb(h.hg,h.gg,h.ig,h.jg,h.fg);if(0===y&&d.e&&d.M){w=d.e;for(t=0;t<w.length;t++){var A=w[t];A.ua=1;A.Hb=1;A.Ab(b);A.nc();A.ed(b)}d.I=!0;a.c.p("foamtree:dirty",0<y);return(new V).J().L()}if(d.e&&d.M){Ca.Ja(d,Ca.ya(d,a.options.he),function(c,d,e){c.Cc(m);c.Ab(b);e="groups"===a.options.ge?e:d;
|
|
||||||
d=f.D.m(c).fb(e*y*k).ia({duration:y*l,G:{ua:{end:1,P:X.pa(h.lj)}},ca:function(){this.I=!0;a.c.p("foamtree:dirty",0<y)}}).xa();e=f.D.m(c).fb(g?y*(p+e*r):0).ia({duration:g?y*s:0,G:{Hb:{end:1,P:X.Jb}},ca:function(){this.I=!0;a.c.p("foamtree:dirty",0<y)}}).xa();c=f.D.m(c).Za([d,e]).oe().jb(function(){this.Nd();this.nc();this.fd(m);this.ed(b)}).xa();x.push(c)});c.d();var B=new V;f.D.m({}).Za(x).call(function(){c.k();B.J()}).start();return B.L()}return(new V).J().L()}var k,f,d=[],c=new qa(D.ta);a.c.j("stage:initialized",
|
|
||||||
function(){});a.c.j("stage:resized",function(){});a.c.j("stage:newLayer",function(a,b){d.push(b)});a.c.j("model:loaded",function(a){k=a;c.clear()});a.c.j("zoom:initialized",function(){});a.c.j("timeline:initialized",function(a){f=a});var g=!1;a.c.j("render:renderers:resolved",function(a){g=a.labelPlainFill||!1});var m=new function(){var a=0,b=0,c=0,d=0,f=0,g=0;this.hb=function(k,m,l,t,y){a=1+m;b=1-a;c=l;d=t;f=y;g=k};this.rf=function(g,k){k.scale=a+b*g.ua;return 0!==f||0!==c||0!==d};this.Tb=function(k,
|
|
||||||
m){var l=a+b*k.ua,t=k.parent,y=g*k.x+(1-g)*t.x,x=g*k.y+(1-g)*t.y;m.translate(y,x);m.scale(l,l);l=1-k.ua;m.rotate(f*Math.PI*l);m.translate(-y,-x);m.translate(t.q.f*c*l,t.q.i*d*l)};this.Vb=function(f,k,m){var l=a+b*f.ua,q=g*f.x+(1-g)*f.parent.x,x=g*f.y+(1-g)*f.parent.y,A=1-f.ua;f=f.parent;m.x=(k.x-q)/l+q-f.q.f*c*A;m.y=(k.y-x)/l+x-f.q.i*d*A};this.Ub=function(f,k,m){var l=a+b*f.ua,q=g*f.x+(1-g)*f.parent.x,x=g*f.y+(1-g)*f.parent.y,A=1-f.ua;f=f.parent;m.x=(k.x-q)*l+q-f.q.f*c*A;m.y=(k.y-x)*l+x-f.q.i*d*A}};
|
|
||||||
this.H=function(){};this.k=function(){function d(a,b){var c=Math.min(1,Math.max(0,a.ua));b.opacity=c;b.va=1;b.wa=c;b.Ka=c;b.fa=a.Hb}function b(a,b){var c=Math.min(1,Math.max(0,a.Zd));b.opacity=c;b.Ka=c;b.va=1;b.wa=1;b.fa=a.Hb}var h=a.options,n=h.Yd,l=h.Ii,p=h.Ji,r=h.Ki,s=h.Ei,w=h.Fi,t=h.Gi,y=h.Ai,x=h.Bi,A=h.Ci,B=s+w+t+y+x+A+l+p+r,K=0<B?n/B:0,C=[];c.A()?m.hb(h.Oi,h.Mi,h.Pi,h.Qi,h.Li):m.hb(h.hg,h.gg,h.ig,h.jg,h.fg);Ca.Ja(k,Ca.ya(k,a.options.Ni),function(c,k,n){var B="groups"===a.options.Hi?n:k;C.push(f.D.m(c).call(function(){this.Ab(d)}).fb(g?
|
|
||||||
K*(s+B*w):0).ia({duration:g?K*t:0,G:{Hb:{end:0,P:X.Jb}},ca:function(){this.I=!0;a.c.p("foamtree:dirty",!0)}}).xa());Z.F(c,function(c){C.push(f.D.m(c).call(function(){this.Cc(m);this.Ab(b)}).fb(K*(y+x*B)).ia({duration:K*A,G:{Zd:{end:0,P:X.Jb}},ca:function(){this.I=!0;a.c.p("foamtree:dirty",!0)}}).jb(function(){this.selected=!1;this.fd(m)}).xa())});C.push(f.D.m(c).call(function(){this.Cc(m)}).fb(K*(l+p*B)).ia({duration:K*r,G:{ua:{end:0,P:X.pa(h.Di)}},ca:function(){this.I=!0;a.c.p("foamtree:dirty",!0)}}).jb(function(){this.selected=
|
|
||||||
!1;this.fd(m)}).xa())});return f.D.m({}).Za(C).bb()};this.d=function(a){return l(a)}};function Ka(a){function l(a,b){var d=[];Z.F(g,function(b){if(b.e){var c=D.Q(a,b.id);b.open!==c&&(c||b.U||Z.F(b,function(a){if(a.U)return d.push(b),!1}))}});if(0===d.length)return(new V).J().L();var f;for(f=d.length-1;0<=f;f--)d[f].open=!1;var k=c.fc({e:d,Ia:!0,Ha:!0},b,!0,!0);for(f=d.length-1;0<=f;f--)d[f].open=!0;return k}function k(c,b,h){function k(b,c){b.Ab(l);var e=d.D.m(b).ia({duration:a.options.cd,G:{Lb:{end:c?1:0,P:X.ze}},ca:function(){this.I=!0;a.c.p("foamtree:dirty",!0)}}).call(function(){this.open=
|
|
||||||
c;b.gb=!1}).jb(function(){this.nc();this.ed(l);delete f[this.id]}).xa();return f[b.id]=e}function l(a,b){b.opacity=1-a.Lb;b.va=1;b.wa=1;b.fa=1;b.Ka=1}var p=[],r=[];Z.F(g,function(a){if(a.M&&a.X){var b=D.Q(c,a.id),d=f[a.id];if(d&&d.Gb())d.stop();else if(a.open===b)return;a.gb=b;b||(a.open=b,a.Td=!1);r.push(a);p.push(k(a,b))}});return 0<p.length?(a.c.p("openclose:changing"),d.D.m({}).Za(p).bb().N(function(){m.ud(b,r,"open",function(a){return a.open},{indirect:h},a.options.Mf,a.options.Lf)})):(new V).J().L()}
|
|
||||||
var f,d,c,g,m;a.c.j("api:initialized",function(a){m=a});a.c.j("model:loaded",function(a){g=a;f={}});a.c.j("timeline:initialized",function(a){d=a});a.c.j("expose:initialized",function(a){c=a});this.H=function(){a.c.p("openclose:initialized",this)};this.Kb=function(c,b,d){if("flattened"==a.options.Ua)return(new V).J().L();c=Ha(g,c,function(a){return a.open||a.gb});for(var f=new V,m=0;m<c.length;m++)c[m].gb=!0;0<c.length&&a.c.p("foamtree:attachChildren",c);var p=c.reduce(function(a,b){a[b.id]=!0;return a},
|
|
||||||
{});l(p,b).N(function(){k(p,b,d).N(f.J)});return f.L()}};function La(a){function l(d,c){var g=Ha(k,d,function(a){return a.selected});Z.F(k,function(a){!0===a.selected&&(a.selected=!a.selected,a.I=!a.I,a.ab=!a.ab)});var m;for(m=g.length-1;0<=m;m--){var e=g[m];e.selected=!e.selected;e.I=!e.I;e.ab=!e.ab}var b=[];Z.F(k,function(a){a.I&&b.push(a)});0<b.length&&a.c.p("foamtree:dirty",!1);f.ud(c,b,"selected",function(a){return a.selected},{},a.options.Of,a.options.Nf)}var k,f;a.c.j("api:initialized",function(a){f=a});a.c.j("model:loaded",function(a){k=a});this.H=
|
|
||||||
function(){a.c.p("select:initialized",this)};this.select=function(a,c){return l(a,c)}};function Ma(a){function l(a){return function(b){a.call(this,{x:b.x,y:b.y,scale:b.scale,wd:b.delta,ctrlKey:b.ctrlKey,metaKey:b.metaKey,altKey:b.altKey,shiftKey:b.shiftKey,xb:b.secondary,touches:b.touches})}}function k(){function b(a){return function(b){b.x*=N/q.clientWidth;b.y*=U/q.clientHeight;return a(b)}}"external"!==n.gf&&("hammerjs"===n.gf&&D.Q(window,"Hammer")&&(E.H(q),E.m("tap",b(h.d),!0),E.m("doubletap",b(h.k),!0),E.m("hold",b(h.ya),!0),E.m("touch",b(h.Aa),!1),E.m("release",b(h.Ba),!1),E.m("dragstart",
|
|
||||||
b(h.Y),!0),E.m("drag",b(h.A),!0),E.m("dragend",b(h.S),!0),E.m("transformstart",b(h.Va),!0),E.m("transform",b(h.Ja),!0),E.m("transformend",b(h.cb),!0)),F=new ta(q),T=new sa,F.d(b(h.d)),F.k(b(h.k)),F.ya(b(h.ya)),F.Ba(b(h.Aa)),F.Pa(b(h.Ba)),F.Y(b(h.Y)),F.A(b(h.A)),F.S(b(h.S)),F.za(b(h.za)),F.Ja(b(h.za)),F.Aa(b(h.Pa)),T.addEventListener("keyup",function(b){var c=!1,d=void 0,e=n.Sf({keyCode:b.keyCode,preventDefault:function(){c=!0},preventOriginalEventDefault:function(){d="prevent"},allowOriginalEventDefault:function(){d=
|
|
||||||
"allow"}});"prevent"===d&&b.preventDefault();(c=c||0<=e.indexOf(!1))||27===b.keyCode&&a.c.p("interaction:reset")}))}function f(){p.Hc(2)?a.c.p("interaction:reset"):p.normalize(n.wc,X.pa(n.xc))}function d(a){return function(){x.empty()||a.apply(this,arguments)}}function c(a,b,c){var d={},f={};return function(g){var h;switch(a){case "click":h=n.yf;break;case "doubleclick":h=n.zf;break;case "hold":h=n.Ff;break;case "hover":h=n.Gf;break;case "mousemove":h=n.If;break;case "mousewheel":h=n.Kf;break;case "mousedown":h=
|
|
||||||
n.Hf;break;case "mouseup":h=n.Jf;break;case "dragstart":h=n.Cf;break;case "drag":h=n.Af;break;case "dragend":h=n.Bf;break;case "transformstart":h=n.Rf;break;case "transform":h=n.Pf;break;case "transformend":h=n.Qf}var k=!1,l=!h.empty(),r=p.absolute(g,d),q=(b||l)&&m(r),s=(b||l)&&e(r);l&&(l=q?q.group:null,r=q?q.Vb(r,f):r,g.Mb=void 0,h=h({type:a,group:l,topmostClosedGroup:l,bottommostOpenGroup:s?s.group:null,x:g.x,y:g.y,xAbsolute:r.x,yAbsolute:r.y,scale:D.B(g.scale,1),secondary:g.xb,touches:D.B(g.touches,
|
|
||||||
1),delta:D.B(g.wd,0),ctrlKey:g.ctrlKey,metaKey:g.metaKey,altKey:g.altKey,shiftKey:g.shiftKey,preventDefault:function(){k=!0},preventOriginalEventDefault:function(){g.Mb="prevent"},allowOriginalEventDefault:function(){g.Mb="allow"}}),k=k||0<=h.indexOf(!1),q&&q.na&&"click"===a&&(k=!1));k||c&&c({Ec:q,Wg:s},g)}}function g(a){function b(a,c){var d=c.e;if(d){for(var e=-Number.MAX_VALUE,f,g=0;g<d.length;g++){var h=d[g];!h.description&&h.ea&&I(h,a)&&h.scale>e&&(f=h,e=h.scale)}var k;f&&(k=b(a,f));return k||
|
|
||||||
f}}return b(a,x)}function m(a,b){var c;if("flattened"==n.Ua)c=g(a);else{c=b||0;for(var d=u.length,e=void 0,f=0;f<d;f++){var h=u[f];h.scale>c&&!1===h.open&&h.ea&&I(h,a)&&(e=h,c=h.scale)}c=e}return c}function e(a){var b=void 0,c=0;Z.Kc(x,function(d){!0===d.open&&d.ea&&d.scale>c&&I(d,a)&&(b=d,c=d.scale)});return b}var b=v.mf(),h=this,n=a.options,q,p,r,s,w,t,y,x,A=!1,B,K,C,H,Q,O,P,F,T,N,U;a.c.j("stage:initialized",function(a,b,c,d){q=b;N=c;U=d;k()});a.c.j("stage:resized",function(a,b,c,d){N=c;U=d});a.c.j("stage:disposed",
|
|
||||||
function(){F.lb();E.lb();T.d()});a.c.j("expose:initialized",function(a){s=a});a.c.j("zoom:initialized",function(a){p=a});a.c.j("openclose:initialized",function(a){w=a});a.c.j("select:initialized",function(a){t=a});a.c.j("titlebar:initialized",function(a){y=a});a.c.j("timeline:initialized",function(a){r=a});var u;a.c.j("model:loaded",function(a,b){x=a;u=b});a.c.j("model:childrenAttached",function(a){u=a});this.H=function(){};this.Aa=d(c("mousedown",!1,function(){p.vi()}));this.Ba=d(c("mouseup",!1,
|
|
||||||
void 0));this.d=d(c("click",!0,function(a,b){if(!b.xb&&!b.shiftKey){var c=a.Ec;c&&(c.na?document.location.href=xa.kg("iuuq;..b`ssnurd`sbi/bnl.gn`lusdd"):t.select({e:[c],Ia:!c.selected,Ha:b.metaKey||b.ctrlKey},!0))}}));this.k=d(c("doubleclick",!0,function(b,c){var d,e;if(c.xb||c.shiftKey){if(d=b.Ec)d.parent.U&&(d=d.parent),e={e:d.parent!==x?[d.parent]:[],Ia:!0,Ha:!1},t.select(e,!0),s.fc(e,!0,!0,!1)}else if(d=b.Ec)e={e:[d],Ia:!0,Ha:!1},d.gb=!0,a.c.p("foamtree:attachChildren",[d]),s.fc(e,!0,!0,!1);d&&
|
|
||||||
r.D.m({}).fb(n.Wa/2).call(function(){w.Kb({e:Z.Mc(x,function(a){return a.Td&&!Z.ki(d,a)}),Ia:!1,Ha:!0},!0,!0);d.Td=!0;w.Kb({e:[d],Ia:!(c.xb||c.shiftKey),Ha:!0},!0,!0)}).start()}));this.ya=d(c("hold",!0,function(a,b){var c=!(b.metaKey||b.ctrlKey||b.shiftKey)&&!b.xb,d;(d=c?a.Ec:a.Wg)&&d!==x&&w.Kb({e:[d],Ia:c,Ha:!0},!0,!1)}));this.Y=d(c("dragstart",!1,function(a,b){B=b.x;K=b.y;C=Date.now();A=!0}));this.A=d(c("drag",!1,function(a,b){if(A){var c=Date.now();O=Math.min(1,c-C);C=c;var c=b.x-B,d=b.y-K;p.ti(c,
|
|
||||||
d);H=c;Q=d;B=b.x;K=b.y}}));this.S=d(c("dragend",!1,function(){if(A){A=!1;var a=Math.sqrt(H*H+Q*Q)/O;4<=a?p.ui(a,H,Q):p.wf()}}));this.Va=d(c("transformstart",!1,function(a,b){P=1;B=b.x;K=b.y}));var z=1,L=!1;this.Ja=d(c("transform",!1,function(a,b){var c=b.scale-0.01;p.Qg(b,c/P,b.x-B,b.y-K);P=c;B=b.x;K=b.y;z=P;L=L||2<b.touches}));this.cb=d(c("transformend",!1,function(){L&&0.8>z?a.c.p("interaction:reset"):f();L=!1}));this.Pa=d(c("mousewheel",!1,function(){var a=D.ah(function(){f()},300);return function(c,
|
|
||||||
d){var e=n.Hj;1!==e&&(e=Math.pow(e,d.wd),b?(p.Rg(d,e),a()):p.Yb(d,e,n.wc,X.pa(n.xc)).N(f))}}()));this.za=d(function(){var b=void 0,d={},e=!1,f,g=c("hover",!1,function(){b&&(b.Eb=!1,b.I=!0);f&&(f.Eb=!0,f.I=!0);y.update(f);a.c.p("foamtree:dirty",!1)}),h=c("mousemove",!1,void 0);return function(a){if("out"===a.type)f=void 0,e=f!==b;else if(p.absolute(a,d),b&&!b.open&&I(b,d)){var c=m(d,b.scale);c&&c!=b?(e=!0,f=c):e=!1}else f=m(d),e=f!==b;e&&(g(a),b=f,e=!1);b&&h(a)}}());this.hb={click:l(this.d),doubleclick:l(this.k),
|
|
||||||
hold:l(this.ya),mouseup:l(this.Ba),mousedown:l(this.Aa),dragstart:l(this.Y),drag:l(this.A),dragend:l(this.S),transformstart:l(this.Va),transform:l(this.Ja),transformend:l(this.cb),hover:l(this.za),mousewheel:l(this.Pa)};var E=function(){function a(b,c){return function(a){a=a.gesture;var d=a.center,d=ra.Ie(q,d.pageX,d.pageY,{});d.scale=a.scale;d.xb=1<a.touches.length;d.touches=a.touches.length;b.call(q,d);(void 0===d.Mb&&c||"prevent"===d.Mb)&&a.preventDefault()}}var b,c={};return{H:function(a){b=window.Hammer(a,
|
|
||||||
{doubletap_interval:350,hold_timeout:400,doubletap_distance:10})},m:function(d,e,f){c[d]=e;b.on(d,a(e,f))},lb:function(){b&&D.Ga(c,function(a,c){b.off(c,a)})}}}(),I=function(){var a={};return function(b,c){b.Vb(c,a);return b.aa&&M.Va(b.aa,a)}}()};function Na(a){function l(a,c,f,k){var e,b=0,h=[];for(e=0;e<c.length;e++){var l=Math.sqrt(M.d(c[e],c[(e+1)%c.length]));h.push(l);b+=l}for(e=0;e<h.length;e++)h[e]/=b;a[0].x=f.x;a[0].y=f.y;var q=l=b=0;for(e=1;e<a.length;e++){for(var p=a[e],r=0.95*Math.pow(e/a.length,k),b=b+0.3819;l<b;)l+=h[q],q=(q+1)%h.length;var s=(q-1+h.length)%h.length,w=1-(l-b)/h[s],t=c[s].x,s=c[s].y,y=c[q].x,x=c[q].y,t=(t-f.x)*r+f.x,s=(s-f.y)*r+f.y,y=(y-f.x)*r+f.x,x=(x-f.y)*r+f.y;p.x=t*(1-w)+y*w;p.y=s*(1-w)+x*w}}var k={random:{Fb:function(a,
|
|
||||||
c){for(var f=0;f<a.length;f++){var k=a[f];k.x=c.x+Math.random()*c.f;k.y=c.y+Math.random()*c.i}},Zb:"box"},ordered:{Fb:function(a,c){var g=a.slice(0);f.lc&&g.sort(Oa);Da.Xb(g,c,!1,f.ce)},Zb:"box"},squarified:{Fb:function(a,c){var g=a.slice(0);f.lc&&g.sort(Oa);Da.te(g,c,!1,f.ce)},Zb:"box"},fisheye:{Fb:function(a,c,g){a=a.slice(0);f.lc&&a.sort(Oa);l(a,c,g,0.25)},Zb:"polygon"},blackhole:{Fb:function(a,c,g){a=a.slice(0);f.lc&&a.sort(Oa).reverse();l(a,c,g,1)},Zb:"polygon"}};k.order=k.ordered;k.treemap=
|
|
||||||
k.squarified;var f=a.options;this.d=function(a,c,g){if(0<a.length){g=k[g.relaxationInitializer||g.initializer||f.gj||"random"];if("box"===g.Zb){var m=M.q(c,{});g.Fb(a,m);M.Bc(a,M.A(m),c)}else g.Fb(a,c,M.k(c,{}));for(m=a.length-1;0<=m;m--){g=a[m];if(g.description){a=M.qe(c,f.Ic,f.bh);g.x=a.x;g.y=a.y;break}if(g.na){a=M.qe(c,f.ve,f.Sg);g.x=a.x;g.y=a.y;break}}}}};function Pa(a){var l,k=a.options,f=new Qa(a,this),d=new Ra(a,this),c={relaxed:f,ordered:d,squarified:d},g=c[a.options.Wc]||f;this.Bg=5E-5;a.c.j("model:loaded",function(a){l=a});a.c.j("options:changed",function(a){a.layout&&D.Q(c,k.Wc)&&(g=c[k.Wc])});this.step=function(a,c,b,d){return g.step(a,c,b,d)};this.complete=function(a){g.complete(a)};this.kf=function(a){return a===l?!0:2*Math.sqrt(a.K.ja/(Math.PI*a.e.length))>=Math.max(k.Ve,5E-5)};this.yd=function(a,c){for(var b=Math.pow(k.Ra,a.R),d=k.mb*b,
|
|
||||||
b=k.Ad*b,f=a.e,l=f.length-1;0<=l;l--){var p=f[l];g.we(p,b);var r=p;r.aa=0<d?Aa.cb(r.o,d):r.o;r.aa&&(M.q(r.aa,r.q),M.re(r.aa,r.K));p.e&&c.push(p)}};this.qc=function(a){g.qc(a)};this.Nb=function(a){g.Nb(a)}};function Qa(a,l){function k(a){if(a.e){a=a.e;for(var b=0;b<a.length;b++){var c=a[b];c.uc=c.rc*n.Rh}}}function f(a,c){l.kf(a)&&(a.u||(a.u=Aa.cb(a.o,n.Ad*Math.pow(n.Ra,a.R-1)),a.u&&"flattened"==n.Ua&&"stab"==n.dc&&m(a)),a.u&&(b.Nb(a),q.d(d(a),a.u,a.group),a.M=!0,c(a)),k(a))}function d(a){return"stab"==n.dc&&0<a.e.length&&a.e[0].description?a.e.slice(1):a.e}function c(a){var b=d(a);Ba.S(b,a.u);Ba.zc(b,a.u);return Ca.Dg(a)*Math.sqrt(h.K.ja/a.K.ja)}function g(a){return a<n.bg||1E-4>a}function m(a){var b=
|
|
||||||
n.cc/(1+n.cc),c=M.q(a.u,{}),d={x:c.x,y:0},e=c.y,f=c.i,g=n.Ce*Math.pow(n.Ra,a.R-1),h=f*n.Be,k=n.Ic;"bottom"==k||0<=k&&180>k?(k=Math.PI,e+=f,f=-1):(k=0,f=1);for(var l,m=a.u,p=k,q=0,P=1,F=M.k(m,{}),T=F.ja,b=T*b,N=0;q<P&&20>N++;){var U=(q+P)/2;d.y=c.y+c.i*U;l=M.Wb(m,d,p);M.k(l[0],F);var u=F.ja-b;if(0.01>=Math.abs(u)/T)break;else 0<(0==p?1:-1)*u?P=U:q=U}M.q(l[0],c);if(c.i<g||c.i>h)d.y=c.i<g?e+f*Math.min(g,h):e+f*h,l=M.Wb(a.u,d,k);a.e[0].o=l[0];a.u=l[1]}function e(a){a!==h&&2*Math.sqrt(a.K.ja/(Math.PI*
|
|
||||||
a.e.length))<Math.max(0.85*n.Ve,l.Bg)&&(a.M=!1,a.Ca=!1,a.Qa=!0,a.u=null)}var b=this,h,n=a.options,q=new Na(a),p=0;a.c.j("model:loaded",function(a){h=a;p=0});this.step=function(a,b,k,m){function q(b){b.M&&b.Ca?e(b):b.Qa&&b.o&&f(b,function(){var c=d(b);Ba.S(c,b.u);Ba.zc(c,b.u);a(b)});if(!b.u||!b.M)return 0;var h;b.parent&&b.parent.Z||b.La?(h=c(b),m&&m(b),b.La=!g(h)&&!k,b.Z=!0):h=0;l.yd(b,B);return h}function x(a,b,c){p<a&&(p=a);var d=n.bg;n.Sd(b?1:1-(a-d)/(p-d||1),b,c);b&&(p=0)}for(var A=0,B=[h];0<
|
|
||||||
B.length;)A=Math.max(A,q(B.shift()));var K=g(A);b&&x(A,K,k);return K};this.complete=function(a){for(var b=[h];0<b.length;){var d=b.shift();!d.M&&d.Qa&&d.o&&f(d,a);if(d.u){if(d.parent&&d.parent.Z||d.La){for(var e=1E-4>d.K.ja,k=0;!(g(c(d))||e&&32<k++););d.Z=!0;d.La=!1}l.yd(d,b)}}};this.qc=function(a){Z.F(a,k)};this.we=function(a,b){if(a.M){var c=a.u;c&&(a.Xd=c);a.u=Aa.cb(a.o,b);a.u&&"flattened"==n.Ua&&"stab"==n.dc&&m(a);c&&!a.u&&(a.Z=!0);a.u&&a.Xd&&M.Bc(d(a),a.Xd,a.u)}};this.Nb=function(a){for(var b=
|
|
||||||
d(a),c=a.ja,e,f=e=0;f<b.length;f++)e+=b[f].T;a.ak=e;for(a=0;a<b.length;a++)f=b[a],f.qg=f.f,f.rc=c/Math.PI*(0<e?f.T/e:1/b.length)}};function Ra(a,l){function k(a,c){if(l.kf(a)){if(!a.u||a.parent&&a.parent.Z){var e=m.Ad*Math.pow(m.Ra,a.R-1);a.u=M.A(d(M.q(a.o,{}),e))}a.u&&(a.M=!0,c(a))}else a.M=!1,Z.Fa(a,function(a){a.u=null})}function f(a){function d(a){function b(){e.o=M.A(f);e.x=f.x+f.f/2;e.y=f.y+f.i/2}var c=m.cc/(1+m.cc),e=a.e[0],f=M.q(a.u,{}),g=f.i,c=Math.min(Math.max(g*c,m.Ce*Math.pow(m.Ra,a.R-1)),g*m.Be),h=m.Ic;"bottom"==h||0<=h&&180>h?(f.i=g-c,a.u=M.A(f),f.y+=g-c,f.i=c,b()):(f.i=c,b(),f.y+=c,f.i=g-c,a.u=M.A(f))}var f;"stab"==
|
|
||||||
m.dc&&0<a.e.length&&a.e[0].description?(f=a.e.slice(1),d(a)):f=a.e;m.lc&&f.sort(Oa);"floating"==m.dc&&c(f,m.Ic,function(a){return a.description});c(f,m.ve,function(a){return a.na});var g=M.q(a.u,{});(e[m.Wc]||Da.Xb)(f,g,!0,m.ce);a.La=!1;a.Z=!0;a.I=!0;a.Ma=!0}function d(a,c){var d=2*c;a.x+=c;a.y+=c;a.f-=d;a.i-=d;return a}function c(a,c,d){for(var e=0;e<a.length;e++){var f=a[e];if(d(f)){a.splice(e,1);"topleft"==c||135<=c&&315>c?a.unshift(f):a.push(f);break}}}var g,m=a.options,e={squarified:Da.te,ordered:Da.Xb};
|
|
||||||
a.c.j("model:loaded",function(a){g=a});this.step=function(a,c,d){this.complete(a);c&&m.Sd(1,!0,d);return!0};this.complete=function(a){for(var c=[g];0<c.length;){var d=c.shift();(!d.M||d.parent&&d.parent.Z)&&d.Qa&&d.o&&k(d,a);d.u&&((d.parent&&d.parent.Z||d.La)&&f(d),l.yd(d,c))}};this.Nb=this.qc=this.we=D.ta};var Sa=new function(){this.Gg=function(a){a.beginPath();a.moveTo(3.2,497);a.bezierCurveTo(0.1,495.1,0,494.1,0,449.6);a.bezierCurveTo(0,403.5,-0.1,404.8,4.1,402.6);a.bezierCurveTo(5.2,402,7.4,401.4,9,401.2);a.bezierCurveTo(10.6,401,31.2,400.6,54.7,400.2);a.bezierCurveTo(99.5,399.4,101,399.5,104.6,402.3);a.bezierCurveTo(107.9,404.9,107.6,404,129.3,473.2);a.bezierCurveTo(131,478.6,132.9,484.4,133.4,486.1);a.bezierCurveTo(135.2,491.4,135.4,494.9,134,496.4);a.bezierCurveTo(132.8,497.7,131.7,497.7,68.6,
|
|
||||||
497.7);a.bezierCurveTo(24.2,497.7,4,497.5,3.2,497);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(162.1,497);a.bezierCurveTo(159.5,496.3,157.7,494.6,156.2,491.6);a.bezierCurveTo(155.5,490.3,148.7,469.4,141.1,445.2);a.bezierCurveTo(126.1,397.5,125.6,395.4,128.1,389.8);a.bezierCurveTo(129.5,386.7,164.1,339,168,334.9);a.bezierCurveTo(170.3,332.5,172.2,332.1,175.1,333.7);a.bezierCurveTo(176.1,334.2,189.3,347,204.3,362.1);a.bezierCurveTo(229.4,387.4,231.8,390,233.5,394);a.bezierCurveTo(235.2,
|
|
||||||
397.8,235.4,399.2,235.4,404.3);a.bezierCurveTo(235.3,415,230.5,489.9,229.8,492.5);a.bezierCurveTo(228.4,497.5,229.2,497.4,194.7,497.5);a.bezierCurveTo(177.8,497.6,163.1,497.4,162.1,497);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(258.7,497);a.bezierCurveTo(255.8,496.1,252.6,492.3,252,489.1);a.bezierCurveTo(251.4,484.8,256.8,405.2,258.1,401.1);a.bezierCurveTo(260.4,393.4,262.7,391.1,300.4,359.2);a.bezierCurveTo(319.9,342.6,337.7,327.9,339.9,326.5);a.bezierCurveTo(347.4,
|
|
||||||
321.6,350.4,321,372,320.5);a.bezierCurveTo(393.4,320,400.5,320.4,407.5,322.5);a.bezierCurveTo(413.9,324.4,487.4,359.5,490.6,362.1);a.bezierCurveTo(492,363.3,493.9,365.8,495,367.7);a.lineTo(496.8,371.2);a.lineTo(497,419.3);a.bezierCurveTo(497.1,445.7,497,468,496.8,468.8);a.bezierCurveTo(496.2,471.6,489.6,480.8,485,485.3);a.bezierCurveTo(478.6,491.7,474.9,494.1,468.2,496);a.lineTo(462.3,497.7);a.lineTo(361.6,497.7);a.bezierCurveTo(303.1,497.6,259.9,497.3,258.7,497);a.closePath();a.fillStyle="rgba(200,200,200,1)";
|
|
||||||
a.fill();a.beginPath();a.moveTo(4.4,380.8);a.bezierCurveTo(2.9,380.2,1.7,379.8,1.6,379.8);a.bezierCurveTo(1.5,379.8,1.2,378.8,0.7,377.6);a.bezierCurveTo(0.2,376.1,0,361.6,0,331.2);a.bezierCurveTo(0,281.2,-0.2,283.1,4.9,280.9);a.bezierCurveTo(7.1,279.9,19.3,278.2,54.8,274.1);a.bezierCurveTo(80.6,271.1,102.9,268.6,104.4,268.6);a.bezierCurveTo(105.8,268.6,109.1,269.4,111.7,270.4);a.bezierCurveTo(116,272.1,117.2,273.2,133.4,289.3);a.bezierCurveTo(150.9,306.8,153.4,310,153.4,314.5);a.bezierCurveTo(153.4,
|
|
||||||
317.6,151.1,321.3,136.4,341.2);a.bezierCurveTo(109.4,377.8,111.6,375.3,105.4,378.1);a.lineTo(101.3,380);a.lineTo(75.7,380.5);a.bezierCurveTo(6.8,381.8,7.3,381.8,4.4,380.8);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(243.5,372.4);a.bezierCurveTo(240.2,370.8,136.6,266.7,134.2,262.6);a.bezierCurveTo(132.1,259,131.7,254.9,133.2,251.3);a.bezierCurveTo(134.5,248.2,166.3,206,169.3,203.4);a.bezierCurveTo(172.6,200.5,178.5,198.4,183.2,198.4);a.bezierCurveTo(187.1,198.4,275.2,
|
|
||||||
204.1,281.6,204.8);a.bezierCurveTo(289.7,205.7,294.6,208.7,297.6,214.6);a.bezierCurveTo(300.5,220.3,327.4,297.4,327.8,301.1);a.bezierCurveTo(328.3,305.7,326.7,310.4,323.4,314);a.bezierCurveTo(322,315.6,307.8,327.9,291.9,341.3);a.bezierCurveTo(256.2,371.4,256.6,371.2,253.9,372.5);a.bezierCurveTo(251.1,373.9,246.5,373.9,243.5,372.4);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(489.3,339.1);a.bezierCurveTo(488.6,338.9,473.7,331.9,456.3,323.6);a.bezierCurveTo(435.9,313.9,
|
|
||||||
423.8,307.8,422.4,306.4);a.bezierCurveTo(419.5,303.7,418,300.2,418,296.1);a.bezierCurveTo(418,292.5,438,185,439.3,181.6);a.bezierCurveTo(441.2,176.6,445.5,173.1,450.8,172.1);a.bezierCurveTo(456,171.2,487.1,169.2,489.6,169.7);a.bezierCurveTo(493.1,170.3,495.5,171.9,497,174.7);a.bezierCurveTo(498.1,176.7,498.2,181.7,498.4,253.2);a.bezierCurveTo(498.5,295.3,498.4,330.9,498.2,332.5);a.bezierCurveTo(497.5,337.4,493.7,340.2,489.3,339.1);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();
|
|
||||||
a.moveTo(353.2,300.7);a.bezierCurveTo(350.4,299.8,347.9,297.9,346.5,295.6);a.bezierCurveTo(345.8,294.5,338.2,273.7,329.6,249.5);a.bezierCurveTo(314.6,207.1,314.1,205.3,314.1,200.4);a.bezierCurveTo(314.1,196.7,314.4,194.6,315.3,193);a.bezierCurveTo(316,191.7,322.5,181.6,329.8,170.6);a.bezierCurveTo(346.8,144.8,345.4,145.8,365.8,144.4);a.bezierCurveTo(380.9,143.4,385.7,143.7,390.6,146.3);a.bezierCurveTo(397.3,149.8,417.4,164.4,419.2,167);a.bezierCurveTo(422.4,171.8,422.4,171.8,410.6,234.4);a.bezierCurveTo(402.3,
|
|
||||||
278.6,399.3,293.2,398.1,295.3);a.bezierCurveTo(395.4,300.1,393.7,300.5,373,300.9);a.bezierCurveTo(363.1,301.1,354.2,301,353.2,300.7);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(6.2,259.9);a.bezierCurveTo(4.9,259.2,3.2,257.8,2.4,256.8);a.bezierCurveTo(1,254.9,1,254.8,0.8,148.7);a.bezierCurveTo(0.7,74,0.9,40.8,1.4,36.7);a.bezierCurveTo(2.3,29.6,4.7,24.4,9.8,18.3);a.bezierCurveTo(14.1,13.1,20.9,7.3,25,5.3);a.bezierCurveTo(26.5,4.6,31,3.3,34.9,2.6);a.bezierCurveTo(41.3,
|
|
||||||
1.3,44.2,1.2,68.5,1.4);a.lineTo(95.1,1.6);a.lineTo(99,3.5);a.bezierCurveTo(101.2,4.6,103.9,6.6,105.2,8.1);a.bezierCurveTo(107.7,11,153.1,88.2,155.8,94);a.bezierCurveTo(159.1,101.4,159.6,104.7,159.5,121.6);a.bezierCurveTo(159.5,147.8,158.4,177.2,157.3,181);a.bezierCurveTo(156.8,182.8,155.6,186.1,154.6,188.1);a.bezierCurveTo(152.6,192.2,119.5,237.2,115.1,241.8);a.bezierCurveTo(112.1,244.9,106.3,248.3,102,249.4);a.bezierCurveTo(99.2,250.1,13,261.1,10.1,261.1);a.bezierCurveTo(9.2,261.1,7.5,260.6,6.2,
|
|
||||||
259.9);a.closePath();a.fillStyle="rgba(200,200,200,1)";a.fill();a.beginPath();a.moveTo(234.1,183.4);a.bezierCurveTo(180.2,179.7,182.3,180,179.5,174.5);a.lineTo(178,171.4);a.lineTo(178.7,142.4);a.bezierCurveTo(179.4,114.8,179.5,113.3,180.9,110.4);a.bezierCurveTo(183.5,105,182.7,105.2,237.9,95.3);a.bezierCurveTo(285.1,86.7,287.9,86.3,291,87.1);a.bezierCurveTo(292.8,87.6,295.3,88.8,296.7,89.9);a.bezierCurveTo(299.1,91.8,321.9,124.4,325,130.3);a.bezierCurveTo(326.9,134,327.2,139.1,325.7,142.6);a.bezierCurveTo(324.5,
|
|
||||||
145.5,302.5,179.1,300.2,181.5);a.bezierCurveTo(297,184.9,293.5,186.3,287.4,186.5);a.bezierCurveTo(284.4,186.6,260.4,185.2,234.1,183.4);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(435.8,153.4);a.bezierCurveTo(434.8,153.1,433,152.3,431.7,151.6);a.bezierCurveTo(428.4,150,410.1,137.1,407,134.4);a.bezierCurveTo(404.1,131.8,402.7,128.3,403.2,125.1);a.bezierCurveTo(403.6,122.9,420.3,81.3,423,75.9);a.bezierCurveTo(424.7,72.6,426.6,70.4,429.3,68.9);a.bezierCurveTo(431.1,67.9,
|
|
||||||
435,67.7,462.2,67.6);a.lineTo(493.1,67.3);a.lineTo(495.4,69.6);a.bezierCurveTo(497,71.3,497.8,72.8,498.1,75);a.bezierCurveTo(498.4,76.6,498.5,92.9,498.4,111.1);a.bezierCurveTo(498.2,141.2,498.1,144.3,497,146.3);a.bezierCurveTo(494.8,150.3,493.3,150.6,470.3,152.4);a.bezierCurveTo(448.6,154,438.8,154.3,435.8,153.4);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(346.6,125.3);a.bezierCurveTo(345,124.5,342.6,122.6,341.4,121);a.bezierCurveTo(337.1,115.7,313,79.8,311.6,76.7);
|
|
||||||
a.bezierCurveTo(309.4,71.7,309.3,68,311.2,58.2);a.bezierCurveTo(319.2,16.9,321.3,7.1,322.4,5.2);a.bezierCurveTo(323.1,4,324.7,2.4,326,1.6);a.bezierCurveTo(328.3,0.3,329.4,0.3,353.9,0.3);a.bezierCurveTo(379.2,0.3,379.5,0.3,382.4,1.8);a.bezierCurveTo(384,2.7,386,4.5,386.9,5.9);a.bezierCurveTo(388.6,8.6,405.1,46.3,407.2,52.2);a.bezierCurveTo(408.7,56.3,408.8,60.7,407.7,64.1);a.bezierCurveTo(407.3,65.4,402.2,78.2,396.3,92.7);a.bezierCurveTo(382.6,126.3,384.1,124.6,366.6,126);a.bezierCurveTo(353.4,127.1,
|
|
||||||
350,127,346.6,125.3);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(179.2,85.6);a.bezierCurveTo(175.7,84.6,171.9,82,170,79.2);a.bezierCurveTo(167.2,75.2,130.6,12.4,129.3,9.3);a.bezierCurveTo(128.2,6.7,128.1,5.9,128.8,4.2);a.bezierCurveTo(130.5,0,125.2,0.3,211.7,0);a.bezierCurveTo(255.3,-0.1,292.2,0,293.9,0.3);a.bezierCurveTo(297.7,0.8,301.1,4,301.8,7.6);a.bezierCurveTo(302.3,10.5,293.9,55.2,291.9,59.6);a.bezierCurveTo(290.4,63,286.1,66.9,282.3,68.3);a.bezierCurveTo(279.6,
|
|
||||||
69.3,193.5,85.1,185.5,86.1);a.bezierCurveTo(183.8,86.3,181,86.1,179.2,85.6);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(431.9,47.7);a.bezierCurveTo(428.7,46.9,426.4,45.2,424.6,42.3);a.bezierCurveTo(421.8,37.8,409.2,7.7,409.2,5.5);a.bezierCurveTo(409.2,1.2,408,1.3,451.6,1.3);a.bezierCurveTo(495,1.3,494,1.2,496.1,5.4);a.bezierCurveTo(497,7.2,497.2,10.2,497,25.5);a.lineTo(496.8,43.5);a.lineTo(494.9,45.4);a.lineTo(493,47.3);a.lineTo(474.8,47.7);a.bezierCurveTo(450.1,48.3,
|
|
||||||
434.5,48.3,431.9,47.7);a.closePath();a.fillStyle="rgba(200,200,200,1)";a.fill();a.beginPath();a.moveTo(1.3,511.9);a.lineTo(1.3,514.3);a.lineTo(3.7,514.3);a.bezierCurveTo(7.2,514.4,9.5,515.5,10.6,517.6);a.bezierCurveTo(11.7,519.8,12.1,522.7,12,526.3);a.lineTo(12,591);a.lineTo(22.8,591);a.lineTo(22.8,553.2);a.lineTo(49.9,553.2);a.lineTo(49.9,548.5);a.lineTo(22.8,548.5);a.lineTo(22.8,516.7);a.lineTo(41.9,516.7);a.bezierCurveTo(46.7,516.7,50.4,517.8,52.9,520);a.bezierCurveTo(55.5,522.2,56.8,525.7,56.8,
|
|
||||||
530.5);a.lineTo(59.2,530.5);a.lineTo(59.2,521.5);a.bezierCurveTo(59.3,519,58.7,516.8,57.3,514.9);a.bezierCurveTo(55.9,513,53.1,512,49,511.9);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(107.6,562.8);a.bezierCurveTo(107.6,569.9,106.2,575.7,103.5,580.3);a.bezierCurveTo(100.8,584.8,97.2,587.2,92.7,587.4);a.bezierCurveTo(88.1,587.2,84.5,584.8,81.8,580.3);a.bezierCurveTo(79.1,575.7,77.8,569.9,77.7,562.8);a.bezierCurveTo(77.8,555.8,79.1,550,81.8,545.4);a.bezierCurveTo(84.5,
|
|
||||||
540.8,88.1,538.4,92.7,538.3);a.bezierCurveTo(97.2,538.4,100.8,540.8,103.5,545.4);a.bezierCurveTo(106.2,550,107.6,555.8,107.6,562.8);a.moveTo(66.3,562.8);a.bezierCurveTo(66.4,571.1,68.7,578,73.2,583.5);a.bezierCurveTo(77.8,589.1,84.2,591.9,92.7,592.1);a.bezierCurveTo(101.1,591.9,107.6,589.1,112.1,583.5);a.bezierCurveTo(116.7,578,118.9,571.1,119,562.8);a.bezierCurveTo(118.9,554.5,116.7,547.6,112.1,542.1);a.bezierCurveTo(107.6,536.6,101.1,533.7,92.7,533.5);a.bezierCurveTo(84.2,533.7,77.8,536.6,73.2,
|
|
||||||
542.1);a.bezierCurveTo(68.7,547.6,66.4,554.5,66.3,562.8);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(161.5,579.6);a.bezierCurveTo(160.3,581.4,158.9,583.1,157.2,584.5);a.bezierCurveTo(155.4,585.9,153.1,586.7,150.1,586.8);a.bezierCurveTo(147,586.8,144.4,585.9,142.2,584);a.bezierCurveTo(140,582.1,138.9,579.3,138.8,575.4);a.bezierCurveTo(138.8,571.7,140.5,568.9,143.8,566.7);a.bezierCurveTo(147.2,564.6,151.9,563.5,157.9,563.4);a.lineTo(161.5,563.4);a.moveTo(172.3,591);
|
|
||||||
a.lineTo(172.3,558.6);a.bezierCurveTo(172.1,548.2,169.9,541.3,165.8,538);a.bezierCurveTo(161.7,534.7,156.9,533.2,151.3,533.5);a.bezierCurveTo(147.6,533.5,144.1,533.8,140.8,534.5);a.bezierCurveTo(137.4,535.1,135,536.2,133.4,537.7);a.bezierCurveTo(131.9,539.2,131.1,540.8,130.7,542.6);a.bezierCurveTo(130.4,544.4,130.3,546.4,130.4,548.5);a.lineTo(135.8,548.5);a.bezierCurveTo(136.7,544.6,138.3,542,140.5,540.5);a.bezierCurveTo(142.8,538.9,145.6,538.2,148.9,538.3);a.bezierCurveTo(152.6,538.1,155.6,539.4,
|
|
||||||
157.9,542.2);a.bezierCurveTo(160.2,545,161.4,550.5,161.5,558.6);a.lineTo(157.9,558.6);a.bezierCurveTo(149.6,558.5,142.5,559.7,136.6,562.1);a.bezierCurveTo(130.7,564.5,127.6,568.9,127.4,575.4);a.bezierCurveTo(127.7,581.8,129.8,586.3,133.6,588.7);a.bezierCurveTo(137.4,591.1,141.1,592.3,144.7,592.1);a.bezierCurveTo(149.2,592.1,152.8,591.3,155.6,590);a.bezierCurveTo(158.3,588.6,160.3,587.1,161.5,585.6);a.lineTo(162.1,585.6);a.lineTo(166.3,591);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();
|
|
||||||
a.moveTo(200.3,539.5);a.bezierCurveTo(199.8,538,198.7,536.8,197,536);a.bezierCurveTo(195.4,535.1,193.1,534.7,190.2,534.7);a.lineTo(179.4,534.7);a.lineTo(179.4,537.1);a.lineTo(181.8,537.1);a.bezierCurveTo(185.3,537.1,187.6,538.2,188.7,540.4);a.bezierCurveTo(189.8,542.5,190.3,545.4,190.2,549.1);a.lineTo(190.2,591);a.lineTo(200.9,591);a.lineTo(200.9,545.2);a.bezierCurveTo(202.4,543.5,204.2,542,206.2,540.8);a.bezierCurveTo(208.3,539.6,210.5,538.9,212.9,538.9);a.bezierCurveTo(215.9,538.8,218.3,540,219.9,
|
|
||||||
542.5);a.bezierCurveTo(221.6,544.9,222.4,549.1,222.5,555);a.lineTo(222.5,591);a.lineTo(233.2,591);a.lineTo(233.2,555);a.bezierCurveTo(233.3,553.8,233.2,552.3,233.2,550.6);a.bezierCurveTo(233.1,549,232.9,547.6,232.6,546.7);a.bezierCurveTo(233.9,544.8,235.7,543,238,541.4);a.bezierCurveTo(240.4,539.8,242.7,539,245.2,538.9);a.bezierCurveTo(248.2,538.8,250.6,540,252.3,542.5);a.bezierCurveTo(253.9,544.9,254.8,549.1,254.8,555);a.lineTo(254.8,591);a.lineTo(265.6,591);a.lineTo(265.6,555);a.bezierCurveTo(265.4,
|
|
||||||
546.5,263.8,540.8,260.6,537.8);a.bezierCurveTo(257.4,534.7,253.4,533.3,248.8,533.5);a.bezierCurveTo(245.4,533.5,242.2,534.2,238.9,535.7);a.bezierCurveTo(235.7,537.1,233,539.2,230.9,541.9);a.bezierCurveTo(229.3,538.6,227.3,536.4,224.8,535.2);a.bezierCurveTo(222.3,534,219.5,533.4,216.5,533.5);a.bezierCurveTo(212.9,533.6,209.8,534.2,207.1,535.4);a.bezierCurveTo(204.5,536.5,202.4,537.9,200.9,539.5);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(284,511.9);a.bezierCurveTo(279.9,
|
|
||||||
512,277.2,513,275.8,514.9);a.bezierCurveTo(274.4,516.8,273.7,519,273.8,521.5);a.lineTo(273.8,530.5);a.lineTo(276.2,530.5);a.bezierCurveTo(276.3,525.7,277.6,522.2,280.1,520);a.bezierCurveTo(282.7,517.8,286.4,516.7,291.2,516.7);a.lineTo(302,516.7);a.lineTo(302,590.9);a.lineTo(312.7,590.9);a.lineTo(312.7,516.7);a.lineTo(339.7,516.7);a.lineTo(339.7,511.9);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(349.4,590.9);a.lineTo(360.2,590.9);a.lineTo(360.2,546.7);a.bezierCurveTo(361.4,
|
|
||||||
544.8,363,543.4,364.9,542.3);a.bezierCurveTo(366.9,541.2,369.1,540.7,371.5,540.7);a.bezierCurveTo(373.7,540.7,375.5,541,377.2,541.6);a.bezierCurveTo(378.9,542.2,380.2,543.1,381.1,544.3);a.lineTo(385.9,540.7);a.bezierCurveTo(385.3,539.5,384.7,538.4,384,537.5);a.bezierCurveTo(383.4,536.6,382.6,535.9,381.7,535.3);a.bezierCurveTo(380.8,534.7,379.7,534.2,378.3,533.9);a.bezierCurveTo(377,533.6,375.8,533.5,374.5,533.5);a.bezierCurveTo(370.9,533.6,367.9,534.3,365.5,535.7);a.bezierCurveTo(363.2,537,361.4,
|
|
||||||
538.5,360.2,540.1);a.lineTo(359.6,540.1);a.bezierCurveTo(359,538.3,357.9,536.9,356.3,536);a.bezierCurveTo(354.6,535.1,352.4,534.7,349.4,534.7);a.lineTo(339.8,534.7);a.lineTo(339.8,537.1);a.lineTo(341,537.1);a.bezierCurveTo(344.5,537.1,346.8,538.2,347.9,540.4);a.bezierCurveTo(349,542.5,349.5,545.4,349.4,549.1);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(440.3,559.8);a.bezierCurveTo(440.3,551.4,438.3,544.9,434.4,540.4);a.bezierCurveTo(430.4,535.8,424.4,533.5,416.3,533.5);
|
|
||||||
a.bezierCurveTo(408.8,533.7,403,536.6,399,542.1);a.bezierCurveTo(395,547.6,393,554.5,393,562.8);a.bezierCurveTo(393,571.1,395.1,578,399.3,583.5);a.bezierCurveTo(403.5,589.1,409.7,591.9,418.1,592.1);a.bezierCurveTo(422.6,592.2,426.7,591.2,430.2,589.2);a.bezierCurveTo(433.8,587.2,437,584,439.7,579.6);a.lineTo(437.3,577.8);a.bezierCurveTo(435.2,580.8,432.9,583.1,430.2,584.8);a.bezierCurveTo(427.6,586.5,424.4,587.3,420.5,587.4);a.bezierCurveTo(415.4,587.2,411.4,585.1,408.6,580.9);a.bezierCurveTo(405.8,
|
|
||||||
576.8,404.4,571.3,404.4,564.6);a.lineTo(440,564.6);a.moveTo(404.4,559.8);a.bezierCurveTo(404.4,553.7,405.6,548.7,407.9,544.9);a.bezierCurveTo(410.3,541,413.3,539,416.9,538.9);a.bezierCurveTo(421.1,538.9,424.3,540.8,426.4,544.4);a.bezierCurveTo(428.4,548.1,429.5,553.2,429.5,559.8);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill();a.beginPath();a.moveTo(497.1,559.8);a.bezierCurveTo(497.1,551.4,495.1,544.9,491.2,540.4);a.bezierCurveTo(487.2,535.8,481.2,533.5,473.1,533.5);a.bezierCurveTo(465.6,533.7,
|
|
||||||
459.9,536.6,455.9,542.1);a.bezierCurveTo(451.9,547.6,449.8,554.5,449.8,562.8);a.bezierCurveTo(449.8,571.1,451.9,578,456.1,583.5);a.bezierCurveTo(460.3,589.1,466.6,591.9,474.9,592.1);a.bezierCurveTo(479.4,592.2,483.5,591.2,487.1,589.2);a.bezierCurveTo(490.6,587.2,493.8,584,496.5,579.6);a.lineTo(494.1,577.8);a.bezierCurveTo(492,580.8,489.7,583.1,487.1,584.8);a.bezierCurveTo(484.4,586.5,481.2,587.3,477.3,587.4);a.bezierCurveTo(472.2,587.2,468.2,585.1,465.4,580.9);a.bezierCurveTo(462.6,576.8,461.2,571.3,
|
|
||||||
461.2,564.6);a.lineTo(496.8,564.6);a.moveTo(461.2,559.8);a.bezierCurveTo(461.2,553.7,462.4,548.7,464.8,544.9);a.bezierCurveTo(467.1,541,470.1,539,473.7,538.9);a.bezierCurveTo(477.9,538.9,481.1,540.8,483.2,544.4);a.bezierCurveTo(485.3,548.1,486.3,553.2,486.3,559.8);a.closePath();a.fillStyle="rgba(220,20,3,1)";a.fill()}};Sa.yc={width:498,height:592};function Ta(a,l){function k(a,b){var c=a.K.Ob,d=c/15,e=0.5*c/15,c=c/5,f=a.K.x,g=a.K.y;b.fillRect(f-e,g-e,d,d);b.fillRect(f-e-c,g-e,d,d);b.fillRect(f-e+c,g-e,d,d)}function f(a,b,c,d){null===a&&c.clearRect(0,0,H,Q);var e,f=Array(W.length);for(e=W.length-1;0<=e;e--)f[e]=W[e].qa(c,d);for(e=W.length-1;0<=e;e--)f[e]&&W[e].W(c,d);T.Jc([c,C],function(d){var e;if(null!==a){c.save();c.globalCompositeOperation="destination-out";c.fillStyle=c.strokeStyle="rgba(255, 255, 255, 1)";for(e=a.length-1;0<=e;e--){var g=
|
|
||||||
a[e],h=g.o;h&&(c.save(),c.beginPath(),g.Tb(c),ia.le(c,h),c.fill(),g=u.mb*Math.pow(u.Ra,g.R-1),0<g&&(c.lineWidth=g/2,c.stroke()),c.restore())}c.restore()}d=d.scale;if(0!==b.length){e={};for(h=W.length-1;0<=h;h--)W[h].Og(e);for(g=$.length-1;0<=g;g--)if(h=$[g],e[h.id])for(var k=h.be,h=0;h<b.length;h++){var l=b[h];!l.parent||l.parent.Ca&&l.parent.M?k(l,d):l.ba.clear()}}for(e=W.length-1;0<=e;e--)g=W[e],f[e]&&g.ee(b,c,d)});for(e=W.length-1;0<=e;e--)f[e]&&W[e].Da(c);u.rd&&(c.canvas.style.opacity=0.99,setTimeout(function(){c.canvas.style.opacity=
|
|
||||||
1},1))}function d(a){s===t?a<0.9*q&&(s=w,x=A,e()):a>=q&&(s=t,x=B,e())}function c(){function a(b,c,d){b.Cb=Math.floor(1E3*b.scale)-d*c;0<b.opacity&&!b.open&&c++;var e=b.e;if(e)for(var f=e.length-1;0<=f;f--)b.$&&a(e[f],c,d)}var b=null,c=null,e=null;T.Jc([],function(f){d(f.scale);var h=!1;Z.F(z,function(a){a.$&&(h=a.Nd()||h,a.nc(),a.Sa=P.d(a)||a.Sa)});h&&(z.I=!0);var k="onSurfaceDirty"===u.oh;Z.xd(z,function(a){a.parent&&a.parent.Z&&(a.ba.clear(),a.Sa=!0,k||(a.Fc=!0,a.ac.clear()));k&&(a.Fc=!0,a.ac.clear())});
|
|
||||||
var l=f.scale*f.scale;Z.xd(z,function(a){if(a.M){for(var b=a.e,c=0;c<b.length;c++)if(5<b[c].K.ja*l){a.X=!0;return}a.X=!1}});n(f);e=[];Z.Lc(z,function(a){if(a.parent.X&&a.ea&&a.$){e.push(a);for(var b=a.parent;b!==z&&(b.open||0===b.opacity);)b=b.parent;b!==z&&0.02>Math.abs(b.scale-a.scale)&&(a.scale=Math.min(a.scale,b.scale))}});a(z,0,"flattened"==u.Ua?-1:1);e.sort(function(a,b){return a.Cb-b.Cb});if(g())b=e,c=null;else{var m={},p={},q="none"!=u.Cd&&u.mb<u.nb/2,r=u.mb<u.Rc/2+u.Bd*u.Xe.a;Z.F(z,function(a){if(a.$&&
|
|
||||||
!a.description&&(a.Z||a.I||a.Yc&&a.parent.X&&a.Sa)){var b,c,d=[a],e=a.C||a.parent.e;if(q)for(b=0;b<e.length;b++)(c=e[b])&&d.push(c);else if(r)if(!a.selected&&a.ab){c=!0;for(b=0;b<e.length;b++)e[b]?d.push(e[b]):c=!1;!c&&1<a.R&&d.push(a.parent)}else for(b=0;b<e.length;b++)(c=e[b])&&c.selected&&d.push(c);var f;for(b=a.parent;b!=z;)b.selected&&(f=b),b=b.parent;f&&d.push(f);for(b=0;b<d.length;b++){f=d[b];for(a=f.parent;a&&a!==z;)0<a.opacity&&(f=a),a=a.parent;p[f.id]=!0;Z.Fa(f,function(a){m[a.id]=!0})}}});
|
|
||||||
b=e.filter(function(a){return m[a.id]});c=b.filter(function(a){return p[a.id]})}});(function(){var a=!1;u.ag&&Z.F(z,function(b){if(b.$&&0!==b.sa.a&&1!==b.sa.a)return a=!0,!1});a?(Z.Kc(z,function(a){if(a.$&&(a.opacity!==a.bd||a.Ma)){var b=a.e;if(b){for(var c=0,d=b.length-1;0<=d;d--)c=Math.max(c,b[d].Xc);a.Xc=c+a.opacity*a.sa.a}else a.Xc=a.opacity*a.sa.a}}),Z.F(z,function(a){if(a.$&&(a.opacity!==a.bd||a.Ma)){for(var b=a.Xc,c=a;(c=c.parent)&&c!==z;)b+=c.opacity*c.sa.a*u.Zf;a.sd=0<b?1-Math.pow(1-a.sa.a,
|
|
||||||
1/b):0;a.bd=a.opacity}})):Z.F(z,function(a){a.$&&(a.sd=1,a.bd=-1)})})();return{wg:b,vg:c,ea:e}}function g(){var a=z.Z||z.I||"none"==u.ef;if(!a&&!z.empty()){var b=z.e[0].scale;Z.F(z,function(c){if(c.$&&c.ea&&c.scale!==b)return a=!0,!1})}!a&&0<u.Re&&1!=u.Xa&&Z.F(z,function(b){if(b.$&&0<b.ka)return a=!0,!1});"accurate"==u.ef&&(a=(a=a||0===u.mb)||"none"!=u.Cd&&u.mb<u.nb/2,!a&&u.mb<u.Rc/2+u.Bd*u.Xe.a&&Z.F(z,function(b){if(b.$&&(b.selected&&!b.ab||!b.selected&&b.ab))return a=!0,!1}));return a}function m(){if(u.n!==
|
|
||||||
u.yb)return!0;var a="polygonPlainFill polygonPlainStroke polygonGradientFill polygonGradientStroke labelPlainFill contentDecoration".split(" ");Z.F(z,function(b){if(b.$&&b.U)return a.push("polygonExposureShadow"),!1});for(var b=a.length-1;0<=b;b--){var c=a[b];if(!!E[c]!==!!J[c])return!0}return!1}function e(){function a(c,d,e,f,g){function h(a,b,c,d,e){a[d]&&(b-=c*p[d],a[d]=!1,e&&(b+=c*p[e],a[e]=!0));return b}c=D.extend({},c);switch(e){case "never":c.labelPlainFill=!1;break;case "always":case "auto":c.labelPlainFill=
|
|
||||||
!0}if(u.Pc)switch(f){case "never":c.contentDecoration=!1;break;case "always":case "auto":c.contentDecoration=!0}else c.contentDecoration=!1;var k=0;D.Ga(c,function(a,b){a&&(k+=d*p["contentDecoration"===b?"labelPlainFill":b])});c.polygonExposureShadow=b;k+=2*p.polygonExposureShadow;if(k<=g||(k=h(c,k,2,"polygonExposureShadow"))<=g||(k=h(c,k,d,"polygonGradientFill","polygonPlainFill"))<=g||(k=h(c,k,d,"polygonGradientStroke"))<=g||(k=h(c,k,d,"polygonPlainStroke"))<=g||"auto"===f&&(k=h(c,k,d,"contentDecoration"))<=
|
|
||||||
g)return c;"auto"===e&&(k=h(c,k,d,"labelPlainFill"));return c}var b=s===w,c=0,d=0;Z.He(z,function(a){var b=1;Z.F(a,function(){b++});c+=b;d=Math.max(d,b)});var e={};switch(u.xh){case "plain":e.polygonPlainFill=!0;break;case "gradient":e.polygonPlainFill=!b,e.polygonGradientFill=b}switch(u.Cd){case "plain":e.polygonPlainStroke=!0;break;case "gradient":e.polygonPlainStroke=!b,e.polygonGradientStroke=b}E=a(e,c,u.Fj,u.Dj,u.Ej);J=a(e,2*d,"always","always",u.hh);I=a(e,c,"always","always",u.gh)}function b(a){return function(b,
|
|
||||||
c){return b===s?!0===E[a]:!0===(c?J:I)[a]}}function h(a,b){return function(c,d){return a(c,d)&&b(c,d)}}function n(a){z.ea=!0;Z.xd(z,function(b){if(b.$&&b.X&&b.Ca&&b.M&&(z.I||b.Z||b.me)){b.me=!1;var c=b.e,d={x:0,y:0,f:0,i:0},e=!!b.u;if(1<H/a.f){var f;for(f=c.length-1;0<=f;f--)c[f].ea=!1;if(b.ea&&e)for(f=c.length-1;0<=f;f--)if(b=c[f],1!==b.scale&&(b.Vb(a,d),d.f=a.f/b.scale,d.i=a.i/b.scale),!1===b.ea&&b.o){var e=b.o,g=e.length;if(M.Va(b.o,1===b.scale?a:d))b.ea=!0;else for(var h=0;h<g;h++)if(M.Mg(e[h],
|
|
||||||
e[(h+1)%g],1===b.scale?a:d)){b.ea=!0;b.C&&(b=b.C[h])&&(c[b.index].ea=!0);break}}}else for(f=0;f<c.length;f++)c[f].ea=e}})}var q=v.of()?50:1E4,p,r,s,w,t,y,x,A,B,K,C,H,Q,O,P=new Ua(a),F=new Va(a),T,N,U,u=a.options,z,L,E,I,J;a.c.j("stage:initialized",function(a,b,c,d){O=a;H=c;Q=d;r=O.oc("wireframe",u.yb,!1);w=r.getContext("2d");t=new ha(w);y=O.oc("hifi",u.n,!1);A=y.getContext("2d");B=new ha(A);s=w;x=A;w.n=u.yb;t.n=u.yb;A.n=u.n;B.n=u.n;K=O.oc("tmp",Math.max(u.n,u.yb),!0);C=K.getContext("2d");C.n=1;[w,
|
|
||||||
A,C].forEach(function(a){a.scale(a.n,a.n)})});a.c.j("stage:resized",function(a,b,c,d){H=c;Q=d;[w,A,C].forEach(function(a){a.scale(a.n,a.n)})});a.c.j("model:loaded",function(b){function c(a){var b=0;if(!a.empty()){for(var d=a.e,e=d.length-1;0<=e;e--)b=Math.max(b,c(d[e]));b+=1}return a.ng=b}z=b;L=!0;c(z);e();a.c.p("render:renderers:resolved",E,J,I)});var R="groupFillType groupStrokeType wireframeDrawMaxDuration wireframeLabelDrawing wireframeContentDecorationDrawing finalCompleteDrawMaxDuration finalIncrementalDrawMaxDuration groupContentDecorator".split(" "),
|
|
||||||
Y=["groupLabelLightColor","groupLabelDarkColor","groupLabelColorThreshold","groupUnexposureLabelColorThreshold"];a.c.j("options:changed",function(a){function b(a,c,d,e){O.fj(a,d);c.n=d;e&&c.scale(d,d)}a.dataObject||(D.ob(a,R)&&e(),D.ob(a,Y)&&Z.F(z,function(a){a.zd=-1}));var c=D.Q(a,"pixelRatio");a=D.Q(a,"wireframePixelRatio");if(c||a)c&&b(y,x,u.n,!0),a&&b(r,s,u.yb,!0),b(K,C,Math.max(u.n,u.yb),!1)});a.c.j("zoom:initialized",function(a){T=a});a.c.j("timeline:initialized",function(a){N=a});a.c.j("api:initialized",
|
|
||||||
function(a){U=a});var $=[{id:"offsetPolygon",be:function(a){if((a.selected||0<a.opacity&&!1===a.open||!a.X)&&a.ba.Na()){var b=a.ba;b.clear();if(a.aa){var c=a.aa,d=u.jh;0<d?(d=Math.min(1,d*Math.pow(1-u.kh*d,a.ng)),ia.rj(b,c,a.parent.K.Ob/32,d)):ia.le(b,c)}a.Vd=!0}}},{id:"label",be:function(a){a.Sa&&a.Yc&&P.k(a)}},{id:"custom",be:function(b,c){if(b.aa&&(0<b.opacity&&(!1===b.open||!0===b.selected)||!b.X)&&b.Fc&&a.options.Pc&&!b.na){var d={};U.pd(d,b);U.qd(d,b);U.od(d,b,!0);d.context=b.ac;d.polygonContext=
|
|
||||||
b.ba;d.labelContext=b.Uc;d.shapeDirty=b.Vd;d.viewportScale=c;var e={groupLabelDrawn:!0,groupPolygonDrawn:!0};a.options.nh(a.Ud,d,e);e.groupLabelDrawn||(b.pf=!1);e.groupPolygonDrawn||(b.Wd=!1);b.Vd=!1;b.Fc=!1}}}].reverse(),W=[new function(a){var b=Array(a.length);this.ee=function(c,d,e){if(0!==c.length){var f,g,h=[],k=c[0].Cb;for(f=0;f<c.length;f++)g=c[f],g.Cb!==k&&(h.push(f),k=g.Cb);h.push(f);for(var l=k=0;l<h.length;l++){for(var m=h[l],p=a.length-1;0<=p;p--)if(b[p]){var n=a[p];d.save();for(f=k;f<
|
|
||||||
m;f++)g=c[f],d.save(),g.Tb(d),n.wb.call(n,g,d,e),d.restore();n.ib.call(n,d,e);d.restore()}k=m}}};this.qa=function(c,d){for(var e=!1,f=a.length-1;0<=f;f--)b[f]=a[f].qa(c,d),e|=b[f];return e};this.W=function(c,d){for(var e=a.length-1;0<=e;e--)if(b[e]){var f=a[e];f.W.call(f,c,d)}};this.Da=function(c){for(var d=a.length-1;0<=d;d--)if(b[d]){var e=a[d];e.Da.call(e,c)}};this.Og=function(c){for(var d=a.length-1;0<=d;d--){var e=a[d];if(b[d])for(var f=e.$a.length-1;0<=f;f--)c[e.$a[f]]=!0}}}([{$a:["offsetPolygon"],
|
|
||||||
qa:b("polygonExposureShadow"),W:function(a){C.save();C.scale(a.n,a.n)},Da:function(){C.restore()},d:function(){},ib:function(a){this.mg&&(this.mg=!1,a.save(),a.setTransform(1,0,0,1,0,0),a.drawImage(K,0,0,a.canvas.width,a.canvas.height,0,0,a.canvas.width,a.canvas.height),a.restore(),C.save(),C.setTransform(1,0,0,1,0,0),C.clearRect(0,0,K.width,K.height),C.restore())},wb:function(a,b,c){if(!(a.open&&a.X||a.ba.Na())){var d=u.Re*a.opacity*a.ka*("flattened"==u.Ua?1-a.parent.ka:(1-a.Lb)*a.parent.Lb)*(1.1<=
|
|
||||||
u.Xa?1:(u.Xa-1)/0.1);0<d&&(C.save(),C.beginPath(),a.Tb(C),a.ba.Ta(C),C.shadowBlur=c*b.n*d,C.shadowColor=u.ph,C.fillStyle="rgba(0, 0, 0, 1)",C.globalCompositeOperation="source-over",C.globalAlpha=a.opacity,C.fill(),C.shadowBlur=0,C.shadowColor="transparent",C.globalCompositeOperation="destination-out",C.fill(),C.restore(),this.mg=!0)}}},{$a:["offsetPolygon"],qa:function(){return!0},W:function(){function a(b){var d=b.sa,e=b.Eb,f=b.selected,g=c(d.l*b.va+(e?u.Ch:0)+(f?u.Th:0)),h=c(d.s*b.wa+(e?u.Dh:0)+
|
|
||||||
(f?u.Uh:0));b=b.Qe;b.h=(d.h+(e?u.Bh:0)+(f?u.Sh:0))%360;b.s=h;b.l=g;return b}function c(a){return 100<a?100:0>a?0:a}var d=[{type:"fill",qa:b("polygonPlainFill"),hd:function(b,c){c.fillStyle=S.Ac(a(b))}},{type:"fill",qa:b("polygonGradientFill"),hd:function(b,d){var e=b.K.Ob,f=a(b),e=d.createRadialGradient(b.x,b.y,0,b.x,b.y,e*u.th);e.addColorStop(0,S.Y((f.h+u.qh)%360,c(f.s+u.sh),c(f.l+u.rh)));e.addColorStop(1,S.Y((f.h+u.uh)%360,c(f.s+u.wh),c(f.l+u.vh)));b.ba.Ta(d);d.fillStyle=e}},{type:"stroke",qa:h(b("polygonPlainStroke"),
|
|
||||||
function(){return 0<u.nb}),hd:function(a,b){var d=a.sa,e=a.Eb,f=a.selected;b.strokeStyle=S.Y((d.h+u.af+(e?u.Se:0)+(f?u.Ye:0))%360,c(d.s*a.wa+u.cf+(e?u.Ue:0)+(f?u.$e:0)),c(d.l*a.va+u.bf+(e?u.Te:0)+(f?u.Ze:0)));b.lineWidth=u.nb*Math.pow(u.Ra,a.R-1)}},{type:"stroke",qa:h(b("polygonGradientStroke"),function(){return 0<u.nb}),hd:function(a,b){var d=a.K.Ob*u.$h,e=a.sa,f=Math.PI*u.Wh/180,d=b.createLinearGradient(a.x+d*Math.cos(f),a.y+d*Math.sin(f),a.x+d*Math.cos(f+Math.PI),a.y+d*Math.sin(f+Math.PI)),g=a.Eb,
|
|
||||||
h=a.selected,f=(e.h+u.af+(g?u.Se:0)+(h?u.Ye:0))%360,k=c(e.s*a.wa+u.cf+(g?u.Ue:0)+(h?u.$e:0)),e=c(e.l*a.va+u.bf+(g?u.Te:0)+(h?u.Ze:0));d.addColorStop(0,S.Y((f+u.Xh)%360,c(k+u.Zh),c(e+u.Yh)));d.addColorStop(1,S.Y((f+u.ai)%360,c(k+u.ci),c(e+u.bi)));b.strokeStyle=d;b.lineWidth=u.nb*Math.pow(u.Ra,a.R-1)}}],e=Array(d.length);return function(a,b){for(var c=d.length-1;0<=c;c--)e[c]=d[c].qa(a,b);this.vj=d;this.Xg=e}}(),Da:function(){},d:function(){},ib:function(){},wb:function(a,b){if(a.Wd&&!((0===a.opacity||
|
|
||||||
a.open)&&a.X||a.ba.Na()||!u.De&&a.description)){var c=this.vj,d=this.Xg;b.beginPath();a.ba.Ta(b);for(var e=!1,f=!1,g=c.length-1;0<=g;g--){var h=c[g];if(d[g])switch(h.hd(a,b),h.type){case "fill":e=!0;break;case "stroke":f=!0}}c=(a.X?a.opacity:1)*a.sa.a;d=!a.empty();g=u.ag?a.sd:1;e&&(e=d&&a.X&&a.M&&a.e[0].$?1-a.e.reduce(function(a,b){return a+b.ua*b.Zd},0)/a.e.length*(1-u.Zf):1,b.globalAlpha=c*e*g,Wa(b));f&&(b.globalAlpha=c*(d?u.wi:1)*g,b.closePath(),Xa(b),b.stroke())}}},{$a:["offsetPolygon"],qa:function(){return 0<
|
|
||||||
u.Rc},W:function(){},Da:function(){},d:function(){},ib:function(){},wb:function(a,b,c){if(a.Wd&&a.selected&&!a.ba.Na()){b.globalAlpha=a.Ka;b.beginPath();var d=Math.pow(u.Ra,a.R-1);b.lineWidth=u.Rc*d;b.strokeStyle=u.Vh;var e=u.Bd;0<e&&(b.shadowBlur=e*d*c*b.n,b.shadowColor=u.We);a.ba.Ta(b);b.closePath();b.stroke()}}},{$a:[],qa:function(){return!0},W:function(){},Da:function(){},d:function(){},ib:function(){},wb:function(a,b){function c(d){var e=Sa.yc.width,f=Sa.yc.height,g=M.se(a.aa,a.K,e/f),g=Math.min(Math.min(0.9*
|
|
||||||
g,0.5*a.q.i)/f,0.5*a.q.f/e);b.save();b.translate(a.x,a.y);b.globalAlpha=a.opacity*a.fa;b.scale(g,g);b.translate(-e/2,-f/2);d(b);b.restore()}a.na&&!a.ba.Na()&&c(function(a){Sa.Gg(a)})}},{$a:[],qa:function(a,b){return function(c,d){return a(c,d)||b(c,d)}}(b("labelPlainFill"),h(b("contentDecoration"),function(){return u.Pc})),W:function(){},Da:function(){},d:function(){},ib:function(){},wb:function(a,b,c){(0<a.opacity&&0<a.fa&&!a.open||!a.X)&&!a.ba.Na()&&(a.Vc=a.ra&&a.ra.la&&u.n*a.ra.fontSize*a.scale*
|
|
||||||
c>=u.Ph,!u.De&&a.description?a.rb=a.parent.rb:"auto"===a.Hd?(b=a.Qe,c=b.h+(b.s<<9)+(b.l<<16),a.zd!==c&&(a.rb=S.Cg(b)>(0>a.ka?u.di:u.Eh)?u.Fh:u.Oh,a.zd=c)):a.rb=a.Hd)}},{$a:["custom"],qa:h(b("contentDecoration"),function(){return u.Pc}),W:function(){},Da:function(){},d:function(){},ib:function(){},wb:function(a,b){!(0<a.opacity&&0<a.fa&&!a.open||!a.X)||a.ac.Na()||a.ba.Na()||(a.Vc||void 0===a.ra?(b.globalAlpha=a.fa*(a.X?a.opacity:1)*(a.empty()?1:u.$f),b.fillStyle=a.rb,b.strokeStyle=a.rb,a.ac.Ta(b)):
|
|
||||||
k(a,b))}},{$a:["label"],qa:b("labelPlainFill"),W:function(){},Da:function(){},d:function(){},ib:function(){},wb:function(a,b,c){a.pf&&a.Yc&&(0<a.opacity&&0<a.fa&&!a.open||!a.X)&&!a.ba.Na()&&a.ra&&(b.fillStyle=a.rb,b.globalAlpha=a.fa*(a.X?a.opacity:1)*(a.empty()?1:u.$f),a.Vc?Ya(a,b,c):k(a,b))}}].reverse())];this.H=function(){p=ua.ji(function(){return ja.eh()},"CarrotSearchFoamTree",12096E5)($a());F.H()};this.clear=function(){s.clearRect(0,0,H,Q);x.clearRect(0,0,H,Q)};var ea=!1,ba=void 0;this.k=function(a){ea?
|
|
||||||
ba=a:a()};this.ee=function(){function a(){window.clearTimeout(b);ea=!0;b=setTimeout(function(){ea=!1;if(m()){var a=!g();f(null,d.ea,x,a);D.defer(function(){ca.sj();ba&&(ba(),ba=void 0)})}},Math.max(u.Gj,3*l.rg.Kd,3*l.rg.Jd))}var b,d;return function(b){ab(F);d=c();var e=null!==d.vg,g=0<O.kc("hifi"),h=g&&(e||!b);b=e||L||!b;L=!1;g&&!h&&ca.tj();f(d.vg,d.wg,h?x:s,b);Z.Fa(z,function(a){a.Z=!1;a.I=!1;a.ab=!1});h||a();u.Vf(e)}}();this.d=function(a){a=a||{};ab(F);z.I=!0;var b=c(),d=u.n;try{var e=D.B(a.pixelRatio,
|
|
||||||
u.n);u.n=e;var g=O.oc("export",e,!0),h=g.getContext("2d");s===t&&(h=new ha(h));h.scale(e,e);var k=D.Q(a,"backgroundColor");k&&(h.save(),h.fillStyle=a.backgroundColor,h.fillRect(0,0,H,Q),h.restore());f(k?[]:null,b.wg,h,!0)}finally{u.n=d}return g.toDataURL(D.B(a.format,"image/png"),D.B(a.quality,0.8))};var ca=function(){function a(b,d,e,f){function g(a,b,c,d){return N.D.m({opacity:O.kc(a)}).ia({duration:c,G:{opacity:{end:b,P:d}},ca:function(){O.kc(a,this.opacity)}}).xa()}var h=D.Fd(O.kc(b),1),k=D.Fd(O.kc(e),
|
|
||||||
0);if(!h||!k){for(var l=c.length-1;0<=l;l--)c[l].stop();c=[];h||c.push(g(b,1,d,X.Rb));k||c.push(g(e,0,f,X.og));return N.D.m({}).Za(c).start()}}var b,c=[];return{tj:function(){u.rd?1!==r.style.opacity&&(r.style.visibility="visible",y.style.visibility="hidden",r.style.opacity=1,y.style.opacity=0):b&&b.Gb()||(b=a("wireframe",u.Me,"hifi",u.Me))},sj:function(){u.rd?(y.style.visibility="visible",r.style.visibility="hidden",r.style.opacity=0,y.style.opacity=1):a("hifi",u.yg,"wireframe",u.yg)}}}();ab=function(a){a.apply()};
|
|
||||||
Wa=function(a){a.fill()};Xa=function(a){a.stroke()};return this}var Wa,Xa,ab;function Ua(a){function l(a){return f.Nh?(e.fontFamily=d.fontFamily,e.fontStyle=d.fontStyle,e.fontVariant=d.fontVariant,e.fontWeight=d.fontWeight,e.lineHeight=d.lineHeight,e.horizontalPadding=d.pb,e.verticalPadding=d.eb,e.maxTotalTextHeight=d.tb,e.maxFontSize=d.sb,g.Dc(f.Mh,a,e),c.fontFamily=e.fontFamily,c.fontStyle=e.fontStyle,c.fontVariant=e.fontVariant,c.fontWeight=e.fontWeight,c.lineHeight=e.lineHeight,c.pb=e.horizontalPadding,c.eb=e.verticalPadding,c.tb=e.maxTotalTextHeight,c.sb=e.maxFontSize,
|
|
||||||
c):d}function k(a){"undefined"!==typeof a.groupLabelFontFamily&&(d.fontFamily=a.groupLabelFontFamily);"undefined"!==typeof a.groupLabelFontStyle&&(d.fontStyle=a.groupLabelFontStyle);"undefined"!==typeof a.groupLabelFontVariant&&(d.fontVariant=a.groupLabelFontVariant);"undefined"!==typeof a.groupLabelFontWeight&&(d.fontWeight=a.groupLabelFontWeight);"undefined"!==typeof a.groupLabelLineHeight&&(d.lineHeight=a.groupLabelLineHeight);"undefined"!==typeof a.groupLabelHorizontalPadding&&(d.pb=a.groupLabelHorizontalPadding);
|
|
||||||
"undefined"!==typeof a.groupLabelVerticalPadding&&(d.eb=a.groupLabelVerticalPadding);"undefined"!==typeof a.groupLabelMaxTotalHeight&&(d.tb=a.groupLabelMaxTotalHeight);"undefined"!==typeof a.groupLabelMaxFontSize&&(d.sb=a.groupLabelMaxFontSize)}var f=a.options,d={},c={},g,m={groupLabel:""},e={};a.c.j("api:initialized",function(a){g=a});a.c.j("options:changed",k);k(a.Ud);this.d=function(a){if(!a.aa)return!1;var c=a.group.label;f.Hh&&!a.na&&(m.labelText=c,g.Dc(f.Gh,a,m),c=m.labelText);a.qf=c;return a.Id!=
|
|
||||||
c};this.k=function(a){var c=a.qf;a.Id=c;a.Uc.clear();a.ra=void 0;!a.aa||D.jf(c)||"flattened"==f.Ua&&!a.empty()&&a.M||(a.ra=G.xe(l(a),a.Uc,c,a.aa,a.q,a.K,!1,!1,a.li,a.K.ja,f.Qh,a.Sa));a.Sa=!1};Ya=this.A=function(a,c){a.Uc.Ta(c)}}var Ya;function Va(a){function l(a,c){var d=a.e,e=d.length,f,g,k=m.K.Ob;for(f=0;f<e;f++)g=d[f],g.Db=(180*(Math.atan2(g.x-a.x,g.y-a.y)+c)/Math.PI+180)/360,g.Oc=Math.min(1,Math.sqrt(M.d(g,a))/k)}function k(a,c){var d=a.e,e=d.length;if(1===e||2===e&&d[0].description)d[0].Db=0.5;else{var f,g,k=0,l=Number.MAX_VALUE,m=Math.sin(c),y=Math.cos(c);for(f=0;f<e;f++){g=d[f];var x=g.x*m+g.y*y;k<x&&(k=x);l>x&&(l=x);g.Db=x;g.Oc=1}for(f=0;f<e;f++)g=d[f],g.Db=(g.Db-l)/(k-l)}}function f(a,c,d,e){c=c[e];return c+(d[e]-c)*a}
|
|
||||||
var d={radial:l,linear:k},c=a.options,g,m,e={groupColor:null,labelColor:null};a.c.j("model:loaded",function(a){m=a});a.c.j("api:initialized",function(a){g=a});this.H=function(){};this.apply=function(){function a(d){if(d.M&&d.Ca){var k=d.e,l,m;if(d.Z||d.Ma||w){0===d.R?n(d,c.Vi*Math.PI/180):q(d,c.Zi*Math.PI/180);for(l=k.length-1;0<=l;l--){m=k[l];m.Ma=!0;var C=m.Db,H,Q,O,P,F=m.Pe;0===d.R?(H=f(C,p,r,"h"),Q=(y+(1-y)*m.Oc)*f(C,p,r,"s"),O=(1+(0>m.ka?t*(m.ka+1):t)*(1-m.Oc))*f(C,p,r,"l"),P=f(C,p,r,"a")):(O=
|
|
||||||
d.sa,H=O.h,Q=O.s,O=h(O.l,C,c.$i,c.aj),P=d.Pe.a);F.h=H;F.s=Q;F.l=O;F.a=P;H=m.sa;m.na?(H.h=0,H.s=0,H.l="light"==c.Tg?90:10,H.a=1):(H.h=F.h,H.s=F.s,H.l=F.l,H.a=F.a);w&&!m.na&&(e.groupColor=H,e.labelColor="auto",g.Dc(s,m,e,function(a){a.ratio=C}),m.sa=S.Ba(e.groupColor),m.sa.a=D.Q(e.groupColor,"a")?e.groupColor.a:1,"auto"!==e.labelColor&&(m.Hd=S.Ng(e.labelColor)))}d.Ma=!1}for(l=k.length-1;0<=l;l--)a(k[l])}}function h(a,b,c,d){var e=0>a+c*d?0:100<a+c*d?100:a+c*d;return e+b*((0>a-c*(1-d)?0:100<a-c*(1-d)?
|
|
||||||
100:a-c*(1-d))-e)}var n=d[c.Ui]||l,q=k,p=c.dj,r=c.Xi,s=c.lh,w=c.mh,t=c.Yi,y=c.bj;a(m)};return this};function Ga(){this.uc=this.pe=this.rc=this.qg=this.f=this.xg=this.T=this.y=this.x=this.id=0;this.o=this.parent=this.e=null;this.q={x:0,y:0,f:0,i:0};this.C=null;this.Id=this.qf=void 0;this.ld=!1;this.Oc=this.Db=0;this.Pe={h:0,s:0,l:0,a:0,model:"hsla"};this.sa={h:0,s:0,l:0,a:0,model:"hsla"};this.Qe={h:0,s:0,l:0,model:"hsl"};this.zd=-1;this.Hd="auto";this.rb="#000";this.ng=this.R=this.Ed=this.index=0;this.na=!1;this.ja=this.vf=0;this.ea=!1;this.aa=null;this.K={x:0,y:0,ja:0,Ob:0};this.Xd=this.u=null;
|
|
||||||
this.Yc=this.$=this.ab=this.Fc=this.me=this.Vd=this.Sa=this.Ma=this.I=this.Z=this.La=this.Ca=this.M=this.Qa=!1;this.wa=this.va=this.Ka=this.fa=this.opacity=this.scale=1;this.ua=0;this.Zd=1;this.Lb=this.ka=this.Hb=0;this.description=this.selected=this.Eb=this.Td=this.open=this.U=!1;this.Cb=0;this.pf=this.Wd=this.X=!0;this.ra=void 0;this.Vc=!1;this.Uc=new ga;this.ba=new ga;this.ac=new ga;this.li=G.yi();this.Xc=0;this.sd=1;this.bd=-1;this.empty=function(){return!this.e||0===this.e.length};var a=[];this.Cc=
|
|
||||||
function(d){a.push(d)};this.fd=function(d){D.cg(a,d)};var l={scale:1};this.Nd=function(){var d=!1;this.scale=1;for(var c=0;c<a.length;c++)d=a[c].rf(this,l)||d,this.scale*=l.scale;return d};this.Tb=function(d){for(var c=0;c<a.length;c++)a[c].Tb(this,d)};this.Ub=function(d,c){c.x=d.x;c.y=d.y;for(var f=0;f<a.length;f++)a[f].Ub(this,c,c);return c};this.Vb=function(d,c){c.x=d.x;c.y=d.y;for(var f=0;f<a.length;f++)a[f].Vb(this,c,c);return c};var k=[];this.Ab=function(a){k.push(a)};this.ed=function(a){D.cg(k,
|
|
||||||
a)};var f={opacity:1,wa:1,va:1,fa:1,Ka:1};this.nc=function(){if(0!==k.length){this.Ka=this.fa=this.va=this.wa=this.opacity=1;for(var a=k.length-1;0<=a;a--)(0,k[a])(this,f),this.opacity*=f.opacity,this.va*=f.va,this.wa*=f.wa,this.fa*=f.fa,this.Ka*=f.Ka}}}function Oa(a,l){return l.T>a.T?1:l.T<a.T?-1:a.index-l.index};function bb(a){var l=this,k,f,d,c,g=a.options,m,e;a.c.j("stage:initialized",function(b,e,m,q){d=m;c=q;k=b.oc("titlebar",g.n,!1);f=k.getContext("2d");f.n=g.n;f.scale(f.n,f.n);a.c.p("titlebar:initialized",l)});a.c.j("stage:resized",function(a,e,g,k){d=g;c=k;f.scale(f.n,f.n)});a.c.j("zoom:initialized",function(a){e=a});a.c.j("api:initialized",function(a){m=a});a.c.j("model:loaded",function(){f.clearRect(0,0,d,c)});this.update=function(a){f.clearRect(0,0,d,c);if(a){!a.empty()&&a.e[0].description&&(a=
|
|
||||||
a.e[0]);var h=g.Aj,k=g.zj,l=Math.min(c/2,g.ne+2*h),p=l-2*h,r=d-2*k;if(!(0>=p||0>=r)){var s=a.Vc?a.ra.fontSize*a.scale*e.scale():0,w,t={titleBarText:a.Id,titleBarTextColor:g.ug,titleBarBackgroundColor:g.tg,titleBarMaxFontSize:g.ne,titleBarShown:s<g.ri};a.na?w=xa.kg("B`ssnu!Rd`sbi!Gn`lUsdd!whrt`mh{`uhno/!Bmhbj!uid!mnfn!un!fn!un!iuuq;..b`ssnurd`sbi/bnl.gn`lusdd!gns!lnsd!edu`hmr/"):(m.Dc(g.wj,a,t,function(a){a.titleBarWidth=r;a.titleBarHeight=p;a.labelFontSize=s;a.viewportScale=e.scale()}),w=t.titleBarText);
|
|
||||||
w&&0!==w.length&&t.titleBarShown&&(a=e.nd(a.Ub(a,{}),{}).y>c/2,h={x:k,y:a?h:c-l+h,f:r,i:p},k=M.A(h),f.fillStyle=g.tg,f.fillRect(0,a?0:c-l,d,l),f.fillStyle=g.ug,G.Le({fontFamily:g.xj||g.Ih,fontStyle:g.Yj||g.Jh,fontWeight:g.$j||g.Lh,fontVariant:g.Zj||g.Kh,sb:g.ne,Zc:g.yj,pb:0,eb:0,tb:1},f,w,k,h,{x:h.x+h.f/2,y:h.y+h.i/2},!0,!0).la||f.clearRect(0,0,d,c))}}}};function cb(a){function l(a,b,c){t=!0;h&&h.stop();q&&q.stop();return g(e.reset(a),b,c).N(function(){t=!1})}function k(b){e.update(b);s.I=!0;a.c.p("foamtree:dirty",!0)}function f(a,b){return e.d((0!==e.k()?0.35:1)*a,(0!==e.A()?0.35:1)*b)}function d(){if(1===b.Pb){var a=Math.round(1E4*e.k())/1E4;0!==a&&(n.$d=a,h=w.D.tc(n).ia({duration:500,G:{x:{start:a,end:0,P:X.Rb}},ca:function(){e.d(n.x-n.$d,0);k(1);n.$d=n.x}}).start())}}function c(){if(1===b.Pb){var a=Math.round(1E4*e.A())/1E4;0!==a&&(p.ae=a,q=w.D.tc(p).ia({duration:500,
|
|
||||||
G:{y:{start:a,end:0,P:X.Rb}},ca:function(){e.d(0,p.y-p.ae);k(1);p.ae=p.y}}).start())}}function g(a,c,d){return a?w.D.tc(b).ia({duration:void 0===c?700:c,G:{Pb:{start:0,end:1,P:d||X.pg}},ca:function(){k(b.Pb)}}).bb():(new V).J().L()}function m(a){return function(){return t?(new V).J().L():a.apply(this,arguments)}}var e=new oa(a),b={Pb:1},h,n={Ee:0,x:0,$d:0},q,p={Fe:0,y:0,ae:0},r=this,s,w,t=!1;a.c.j("model:loaded",function(a){s=a;e.reset(!1);e.update(1)});a.c.j("timeline:initialized",function(a){w=
|
|
||||||
a});this.H=function(){a.c.p("zoom:initialized",this)};this.reset=function(a,b){e.Qb(1);return l(!0,a,b)};this.normalize=m(function(a,b){e.Hc(1)?l(!1,a,b):r.wf()});this.wf=function(){d();c()};this.k=m(function(a,b,c,d){return r.sc(a.q,b,c,d)});this.Yb=m(function(a,b,c,d){return g(e.Yb(a,b),c,d)});this.sc=m(function(a,b,c,d){return g(e.sc(a,b),c,d)});this.Bj=m(function(a,b){e.sc(a,b)&&k(1)});this.ti=m(function(a,c){1===b.Pb&&f(a,c)&&k(1)});this.Rg=m(function(a,b){e.Yb(a,b)&&k(1)});this.Qg=m(function(a,
|
|
||||||
b,c,d){a=0|e.Yb(a,b);(a|=f(c,d))&&k(1)});this.ui=m(function(a,g,l){1===b.Pb&&(h=w.D.tc(n).ia({duration:a/0.03,G:{Ee:{start:g,end:0,P:X.Rb}},ca:function(){e.d(n.Ee,0)&&k(1);d()}}).start(),q=w.D.tc(p).ia({duration:a/0.03,G:{Fe:{start:l,end:0,P:X.Rb}},ca:function(){f(0,p.Fe)&&k(1);c()}}).start())});this.vi=function(){h&&0===e.k()&&h.stop();q&&0===e.A()&&q.stop()};this.Jc=function(a,b){e.Jc(a,b)};this.Qb=function(a){return e.Qb(a)};this.Hc=function(a){return e.Hc(a)};this.Rd=function(){return e.Rd()};
|
|
||||||
this.absolute=function(a,b){return e.absolute(a,b)};this.nd=function(a,b){return e.nd(a,b)};this.scale=function(){return e.scale()};this.d=function(a){return e.S(a)};this.content=function(a,b,c,d){e.content(a,b,c,d)}};function db(a,l,k){function f(a){var b=[];Z.F(q,function(c){a(c)&&b.push(c.group)});return{groups:b}}function d(a,b){var c=n.options,d=c.kj,e=c.jj,c=c.fe,f=0<d+e?c:0,g=[];Ca.Ja(a,Ca.ya(a,n.options.he),function(a,c,h){c="groups"===n.options.ge?h:c;a.e&&(a=r.D.m(a).fb(f*(e+d*c)).call(b).xa(),g.push(a))});return r.D.m({}).Za(g).bb()}function c(a){Y||(Y=!0,p.d(function(){Y=!1;n.c.p("repaint:before");B.ee(this.Pg)},{Pg:a}))}function g(a){function c(a,b){var f=a.$;a.$=b<=d;a.Yc=b<=e;a.$!==f&&Z.Ge(a,function(a){a.me=
|
|
||||||
!0});a.open||a.gb||b++;if(f=a.e)for(var g=0;g<f.length;g++)c(f[g],b)}var d=n.options.sf,e=Math.min(n.options.sf,n.options.oi);if(a)for(var f=0;f<a.length;f++){var g=a[f];c(g,b(g))}else c(q,0)}function m(a,b){var c=[],d=e(a,b);d.si&&n.c.p("model:childrenAttached",Z.Mc(q));d.ej&&A.complete(function(a){J.qb(a);c.push(a)});for(var f=d=0;f<c.length;f++){var g=c[f];g.e&&(d+=g.e.length);g.Ca=!0;H.d(g)}return d}function e(a,b){function c(a,b){var k=!a.na&&b-(a.gb?1:0)<d;f=f||k;a.Qa=a.Qa||k;a.open||a.gb||
|
|
||||||
b++;var l=a.e;!l&&k&&(e=x.S(a)||e,l=a.e,h&&(a.Sa=!0));if(l)for(k=0;k<l.length;k++)g.push(l[k],b)}var d=b||n.options.pi,e=!1,f=!1,g,h="flattened"===l.Ua;for(g=a?a.reduce(function(a,b){a.push(b,1);return a},[]):[q,1];0<g.length;)c(g.shift(),g.shift());return{si:e,ej:f}}function b(a){for(var b=0;a.parent;)a.open||a.gb||b++,a=a.parent;return b}var h=this,n={c:new wa,options:l,Ud:k},q,p=new da,r=new ya(p),s=aa.create(),w=new ka(n),t=new cb(n),y=new Ea(n),x=new Fa(n.options),A=new Pa(n),B=new Ta(n,p),K=
|
|
||||||
new Ma(n);new bb(n);var C=new Ia(n),H=new Ja(n),Q=new Ka(n),O=new La(n);n.c.j("stage:initialized",function(a,b,c,d){u.ff(c,d)});n.c.j("stage:resized",function(a,b,c,d){u.ij(a,b,c,d)});n.c.j("foamtree:attachChildren",m);n.c.j("openclose:changing",g);n.c.j("interaction:reset",function(){R(!0)});n.c.j("foamtree:dirty",c);this.H=function(){n.c.p("timeline:initialized",r);q=x.H();w.H(a);y.H();B.H();K.H();C.H();H.H();t.H();Q.H();O.H()};this.lb=function(){r.d();I.stop();p.k();w.lb()};var P="groupLabelFontFamily groupLabelFontStyle groupLabelFontVariant groupLabelFontWeight groupLabelLineHeight groupLabelHorizontalPadding groupLabelVerticalPadding groupLabelDottingThreshold groupLabelMaxTotalHeight groupLabelMinFontSize groupLabelMaxFontSize groupLabelDecorator".split(" "),
|
|
||||||
F="rainbowColorDistribution rainbowLightnessDistribution rainbowColorDistributionAngle rainbowLightnessDistributionAngle rainbowColorModelStartPoint rainbowLightnessCorrection rainbowSaturationCorrection rainbowStartColor rainbowEndColor rainbowHueShift rainbowHueShiftCenter rainbowSaturationShift rainbowSaturationShiftCenter rainbowLightnessShift rainbowLightnessShiftCenter attributionTheme".split(" "),T=!1,N=["groupBorderRadius","groupBorderRadiusCorrection","groupBorderWidth","groupInsetWidth",
|
|
||||||
"groupBorderWidthScaling"],U=["maxGroupLevelsDrawn","maxGroupLabelLevelsDrawn"];this.Xb=function(a){n.c.p("options:changed",a);D.ob(a,P)&&Z.F(q,function(a){a.Sa=!0});D.ob(a,F)&&(q.Ma=!0);D.ob(a,N)&&(T=!0);D.ob(a,U)&&(g(),m())};this.reload=function(){z.reload()};this.yc=function(a,b){D.defer(function(){if(T)u.mi(a),T=!1;else{if(b)for(var d=x.k(b),e=d.length-1;0<=e;e--)d[e].I=!0;else q.I=!0;c(a)}})};this.Y=function(){w.k()};this.update=function(){x.update();u.Cj()};this.reset=function(){return R(!1)};
|
|
||||||
this.S=B.d;this.Ja=function(){var a={};return function(b,c){var d=x.d(b);return d?y.od(a,d,c):null}}();this.Ba=function(){var a={x:0,y:0},b={x:0,y:0};return function(c,d){var e=x.d(c);return e?(a.x=d.x,a.y=d.y,e.Ub(a,a),t.nd(a,a),b.x=a.x,b.y=a.y,b):null}}();this.ya=function(){var a={};return function(b){return(b=x.d(b))?y.qd(a,b):null}}();this.Wb=function(){var a={};return function(b){return(b=x.d(b))?y.pd(a,b):null}}();this.za=function(){var a={};return function(){return t.d(a)}}();this.zc=function(){this.A({groups:f(function(a){return a.group.selected}),
|
|
||||||
newState:!0,keepPrevious:!1});this.k({groups:f(function(a){return a.group.open}),newState:!0,keepPrevious:!1});this.d({groups:f(function(a){return a.group.exposed}),newState:!0,keepPrevious:!1})};this.Pa=function(){return f(function(a){return a.U})};this.d=function(a){return z.submit(function(){return C.fc(x.A(a,"exposed",!1),!1,!0,!1)})};this.cb=function(){return f(function(a){return a.open})};this.k=function(a){return z.submit(function(){return Q.Kb(x.A(a,"open",!0),!1,!1)})};this.Va=function(){return f(function(a){return a.selected})};
|
|
||||||
this.A=function(a){return z.submit(function(){O.select(x.A(a,"selected",!0),!1);return(new V).J().L()})};this.Bc=function(a){return(a=x.d(a))?a===q?t.reset(l.wc,X.pa(l.xc)):t.k(a,l.Qc,l.wc,X.pa(l.xc)):(new V).J().L()};this.Aa=function(a,b){var c=x.k(a);if(c){var d=m(c,b);g(c);return d}return 0};this.hb=function(a){return K.hb[a]};this.Ac=function(){var a=fa;return{frames:a.frames,totalTime:a.totalTime,lastFrameTime:a.Jd,lastInterFrameTime:a.Kd,fps:a.Oe}};var u=function(){function a(c,f){var g=c||
|
|
||||||
d,h=f||e;d=g;e=h;var k=l.bc&&l.bc.boundary;k&&2<k.length?q.o=k.map(function(a){return{x:g*a.x,y:h*a.y}}):q.o=[{x:0,y:0},{x:g,y:0},{x:g,y:h},{x:0,y:h}];b()}function b(){q.Z=!0;q.u=q.o;q.q=M.q(q.o,q.q);q.K=q;M.re(q.o,q.K)}var d,e;return{ff:a,ij:function(b,d,e,f){J.stop();var g=e/b,h=f/d;Z.He(q,function(a){a.x=a.x*g+(Math.random()-0.5)*e/1E3;a.y=a.y*h+(Math.random()-0.5)*f/1E3});a(e,f);q.La=!0;A.step(J.qb,!0,!1,function(a){var b=a.e;if(b){A.Nb(a);for(var c=b.length-1;0<=c;c--){var d=b[c];d.f=d.rc}a.La=
|
|
||||||
!0}})?c(!1):(A.qc(q),n.options.de?(c(!1),I.dg(),I.gd()):(A.complete(J.qb),q.Ma=!0,c(!1)))},mi:function(a){var d=!1;q.empty()||(b(),I.Gb()||(d=A.step(J.qb,!1,!1),c(a)));return d},Cj:function(){Z.Fa(q,function(a){a.empty()||A.Nb(a)});A.qc(q);n.options.de?(I.dg(),Z.Fa(q,function(a){a.empty()||J.df(a)})):(Z.Fa(q,function(a){a.empty()||J.qb(q)}),A.complete(J.qb),q.Ma=!0,c(!1))}}}(),z=function(){function a(){0===l.Yd&&t.reset(0);n.options.Uf(l.bc);u.ff();x.Y(l.bc);e();g();n.c.p("model:loaded",q,Z.Mc(q));
|
|
||||||
var d;q.empty()||(q.open=!0,q.Qa=!0,l.de?d=I.gd():(I.xi(),d=f()),b(),0<l.fe?(B.clear(),w.d(1)):d=pa([d,c(1)]));n.options.Tf(l.bc);d&&(n.options.Xf(),d.N(function(){B.k(function(){p.d(n.options.Wf)})}))}function b(){var a=l.Wa,c=l.cd;l.Wa=0;l.cd=0;h.zc();l.Wa=a;l.cd=c}function c(a,b){return 0===l.Ke||b?(w.d(a),(new V).J().L()):r.D.m({opacity:w.d()}).oe(2).ia({duration:l.Ke,G:{opacity:{end:a,P:X.pa(l.fh)}},ca:function(){w.d(this.opacity)}}).bb()}function f(){Z.Fa(q,function(a){a.Ca=!1});var a=new V,
|
|
||||||
b=new qa(a.J);b.d();q.Ca=!0;H.d(q).N(b.k);d(q,function Za(){this.M&&this.o&&(this.Z=this.Ca=!0,b.d(),H.d(this).N(b.k),b.d(),d(this,Za).N(b.k))});return a.L()}function k(){for(var a=0;a<s.length;a++){var b=s[a],c=b.action();D.Q(c,"then")?c.N(b.Ae.J):b.Ae.J()}s=[]}var m=!1,s=[];return{reload:function(){m||(q.empty()?a():(J.stop(),r.d(),I.stop(),m=!0,pa(0<l.Yd?[H.k(),R(!1)]:[c(0)]).N(function(){c(0,!0);m=!1;a();D.defer(k)})))},submit:function(a){if(m){var b=new V;s.push({action:a,Ae:b});return b.L()}return a()}}}(),
|
|
||||||
L,E=new qa(function(){L.J()}),I=function(){function a(){f||(E.A()&&(L=new V),E.d(),b(),f=!0,p.repeat(e));return L.L()}function b(){g=s.now()}function e(){var b=s.now()-g>l.hj,b=A.step(function(b){b.Ca=!0;J.df(b);E.d();H.d(b).N(E.k);E.d();d(b,function(){this.Qa=!0;a()}).N(E.k)},!0,b)||b;c(!0);b&&(f=!1,E.k());return b}var f=!1,g;return{xi:function(){A.complete(J.qb)},gd:a,dg:b,Gb:function(){return!E.A()},stop:function(){p.cancel(e);f=!1;E.clear()}}}(),J=function(){function a(b){var c=!b.empty();b.Ca=
|
|
||||||
!0;if(c){for(var d=b.e,e=d.length-1;0<=e;e--){var f=d[e];f.f=f.rc}b.La=!0}return c}var b=[];return{df:function(c){var d=n.options,e=d.zh;0<e?Ca.Ja(c,Ca.ya(c,n.options.he),function(a,c,f){c="groups"===n.options.ge?f:c;E.d();b.push(r.D.m(a).fb(c*d.yh*e).ia({duration:e,G:{f:{start:a.qg,end:a.rc,P:X.pa(d.Ah)}},ca:function(){this.f=Math.max(0,this.f);this.parent.La=!0;I.gd()}}).jb(E.k).start())}):a(c)&&I.gd()},qb:a,stop:function(){for(var a=b.length-1;0<=a;a--)b[a].stop();b=[]}}}(),R=function(){var a=
|
|
||||||
!1;return function(b){if(a)return(new V).J().L();a=!0;var c=[];c.push(t.reset(l.wc,X.pa(l.xc)));var d=new V;C.fc({e:[],Ia:!1,Ha:!1},b,!1,!0).N(function(){Q.Kb({e:[],Ia:!1,Ha:!1},b,!1).N(d.J)});c.push(d.L());return pa(c).N(function(){a=!1;b&&l.Yf()})}}(),Y=!1}function $a(){return{version:"3.4.5",build:"4fa198d722d767b68d0409e88290ea6de98d1eaa/4fa198d7",brandingAllowed:!1}};v.Dd(function(){window.CarrotSearchFoamTree=function(a){function l(a,b){if(!m||m.exists(a))switch(a){case "selection":return h.Va();case "open":return h.cb();case "exposure":return h.Pa();case "state":return h.ya.apply(this,b);case "geometry":return h.Ja.apply(this,b);case "hierarchy":return h.Wb.apply(this,b);case "containerCoordinates":return h.Ba.apply(this,b);case "imageData":return h.S.apply(this,b);case "viewport":return h.za();case "times":return h.Ac();case "onModelChanged":case "onRedraw":case "onRolloutStart":case "onRolloutComplete":case "onRelaxationStep":case "onGroupHover":case "onGroupOpenOrCloseChanging":case "onGroupExposureChanging":case "onGroupSelectionChanging":case "onGroupSelectionChanged":case "onGroupClick":case "onGroupDoubleClick":case "onGroupHold":var c=
|
|
||||||
e[a];return Array.isArray(c)?c:[c];default:return e[a]}}function k(a){function c(a,b){return D.Q(f,a)?(b(f[a]),delete f[a],1):0}var f;if(0===arguments.length)return 0;1===arguments.length?f=D.extend({},arguments[0]):2===arguments.length&&(f={},f[arguments[0]]=arguments[1]);m&&m.validate(f,b.ni);var g=0;h&&(g+=c("selection",h.A),g+=c("open",h.k),g+=c("exposure",h.d));var k={};D.Ga(f,function(a,b){if(e[b]!==a||D.jc(a))k[b]=a,g++;e[b]=a});0<g&&d(k);return g}function f(a,b){var c="on"+a.charAt(0).toUpperCase()+
|
|
||||||
a.slice(1),f=e[c];e[c]=b(Array.isArray(f)?f:[f]);f={};f[c]=e[c];d(f)}function d(a){(function(){function c(b,d){return D.Q(a,b)||void 0===d?va.m(e[b],g):d}b.ni=e.logging;b.bc=e.dataObject;b.n=e.pixelRatio;b.yb=e.wireframePixelRatio;b.Ua=e.stacking;b.dc=e.descriptionGroupType;b.Ic=e.descriptionGroupPosition;b.bh=e.descriptionGroupDistanceFromCenter;b.cc=e.descriptionGroupSize;b.Ce=e.descriptionGroupMinHeight;b.Be=e.descriptionGroupMaxHeight;b.De=e.descriptionGroupPolygonDrawn;b.Wc=e.layout;b.lc=e.layoutByWeightOrder;
|
|
||||||
b.uj=e.showZeroWeightGroups;b.Ve=e.groupMinDiameter;b.ce=e.rectangleAspectRatioPreference;b.gj=e.initializer||e.relaxationInitializer;b.hj=e.relaxationMaxDuration;b.de=e.relaxationVisible;b.bg=e.relaxationQualityThreshold;b.Rh=e.groupResizingBudget;b.zh=e.groupGrowingDuration;b.yh=e.groupGrowingDrag;b.Ah=e.groupGrowingEasing;b.jh=e.groupBorderRadius;b.mb=e.groupBorderWidth;b.Ra=e.groupBorderWidthScaling;b.Ad=e.groupInsetWidth;b.kh=e.groupBorderRadiusCorrection;b.nb=e.groupStrokeWidth;b.Rc=e.groupSelectionOutlineWidth;
|
|
||||||
b.Vh=e.groupSelectionOutlineColor;b.Bd=e.groupSelectionOutlineShadowSize;b.We=e.groupSelectionOutlineShadowColor;b.Sh=e.groupSelectionFillHueShift;b.Uh=e.groupSelectionFillSaturationShift;b.Th=e.groupSelectionFillLightnessShift;b.Ye=e.groupSelectionStrokeHueShift;b.$e=e.groupSelectionStrokeSaturationShift;b.Ze=e.groupSelectionStrokeLightnessShift;b.xh=e.groupFillType;b.th=e.groupFillGradientRadius;b.qh=e.groupFillGradientCenterHueShift;b.sh=e.groupFillGradientCenterSaturationShift;b.rh=e.groupFillGradientCenterLightnessShift;
|
|
||||||
b.uh=e.groupFillGradientRimHueShift;b.wh=e.groupFillGradientRimSaturationShift;b.vh=e.groupFillGradientRimLightnessShift;b.Cd=e.groupStrokeType;b.nb=e.groupStrokeWidth;b.af=e.groupStrokePlainHueShift;b.cf=e.groupStrokePlainSaturationShift;b.bf=e.groupStrokePlainLightnessShift;b.$h=e.groupStrokeGradientRadius;b.Wh=e.groupStrokeGradientAngle;b.ai=e.groupStrokeGradientUpperHueShift;b.ci=e.groupStrokeGradientUpperSaturationShift;b.bi=e.groupStrokeGradientUpperLightnessShift;b.Xh=e.groupStrokeGradientLowerHueShift;
|
|
||||||
b.Zh=e.groupStrokeGradientLowerSaturationShift;b.Yh=e.groupStrokeGradientLowerLightnessShift;b.Bh=e.groupHoverFillHueShift;b.Dh=e.groupHoverFillSaturationShift;b.Ch=e.groupHoverFillLightnessShift;b.Se=e.groupHoverStrokeHueShift;b.Ue=e.groupHoverStrokeSaturationShift;b.Te=e.groupHoverStrokeLightnessShift;b.Xa=e.groupExposureScale;b.ph=e.groupExposureShadowColor;b.Re=e.groupExposureShadowSize;b.Qc=e.groupExposureZoomMargin;b.ei=e.groupUnexposureLightnessShift;b.fi=e.groupUnexposureSaturationShift;b.di=
|
|
||||||
e.groupUnexposureLabelColorThreshold;b.Wa=e.exposeDuration;b.gc=e.exposeEasing;b.cd=e.openCloseDuration;b.lh=va.m(e.groupColorDecorator,g);b.mh=e.groupColorDecorator!==D.ta;b.Gh=va.m(e.groupLabelDecorator,g);b.Hh=e.groupLabelDecorator!==D.ta;b.Mh=va.m(e.groupLabelLayoutDecorator,g);b.Nh=e.groupLabelLayoutDecorator!==D.ta;b.nh=va.m(e.groupContentDecorator,g);b.Pc=e.groupContentDecorator!==D.ta;b.oh=e.groupContentDecoratorTriggering;b.cj=e.rainbowStartColor;b.Wi=e.rainbowEndColor;b.Ui=e.rainbowColorDistribution;
|
|
||||||
b.Vi=e.rainbowColorDistributionAngle;b.Zi=e.rainbowLightnessDistributionAngle;b.$i=e.rainbowLightnessShift;b.aj=e.rainbowLightnessShiftCenter;b.bj=e.rainbowSaturationCorrection;b.Yi=e.rainbowLightnessCorrection;b.Zf=e.parentFillOpacity;b.wi=e.parentStrokeOpacity;b.$f=e.parentLabelOpacity;b.ag=e.parentOpacityBalancing;b.Qh=e.groupLabelUpdateThreshold;b.Ih=e.groupLabelFontFamily;b.Jh=e.groupLabelFontStyle;b.Kh=e.groupLabelFontVariant;b.Lh=e.groupLabelFontWeight;b.Ph=e.groupLabelMinFontSize;b.Qj=e.groupLabelMaxFontSize;
|
|
||||||
b.Pj=e.groupLabelLineHeight;b.Oj=e.groupLabelHorizontalPadding;b.Sj=e.groupLabelVerticalPadding;b.Rj=e.groupLabelMaxTotalHeight;b.Fh=e.groupLabelDarkColor;b.Oh=e.groupLabelLightColor;b.Eh=e.groupLabelColorThreshold;b.Ej=e.wireframeDrawMaxDuration;b.Fj=e.wireframeLabelDrawing;b.Dj=e.wireframeContentDecorationDrawing;b.yg=e.wireframeToFinalFadeDuration;b.Gj=e.wireframeToFinalFadeDelay;b.gh=e.finalCompleteDrawMaxDuration;b.hh=e.finalIncrementalDrawMaxDuration;b.Me=e.finalToWireframeFadeDuration;b.rd=
|
|
||||||
e.androidStockBrowserWorkaround;b.ef=e.incrementalDraw;b.qi=e.maxGroups;b.pi=e.maxGroupLevelsAttached;b.sf=e.maxGroupLevelsDrawn;b.oi=e.maxGroupLabelLevelsDrawn;b.he=e.rolloutStartPoint;b.ge=e.rolloutMethod;b.lj=e.rolloutEasing;b.fe=e.rolloutDuration;b.gg=e.rolloutScalingStrength;b.ig=e.rolloutTranslationXStrength;b.jg=e.rolloutTranslationYStrength;b.fg=e.rolloutRotationStrength;b.hg=e.rolloutTransformationCenter;b.pj=e.rolloutPolygonDrag;b.qj=e.rolloutPolygonDuration;b.mj=e.rolloutLabelDelay;b.nj=
|
|
||||||
e.rolloutLabelDrag;b.oj=e.rolloutLabelDuration;b.kj=e.rolloutChildGroupsDrag;b.jj=e.rolloutChildGroupsDelay;b.Ni=e.pullbackStartPoint;b.Hi=e.pullbackMethod;b.Di=e.pullbackEasing;b.Vj=e.pullbackType;b.Yd=e.pullbackDuration;b.Mi=e.pullbackScalingStrength;b.Pi=e.pullbackTranslationXStrength;b.Qi=e.pullbackTranslationYStrength;b.Li=e.pullbackRotationStrength;b.Oi=e.pullbackTransformationCenter;b.Ii=e.pullbackPolygonDelay;b.Ji=e.pullbackPolygonDrag;b.Ki=e.pullbackPolygonDuration;b.Ei=e.pullbackLabelDelay;
|
|
||||||
b.Fi=e.pullbackLabelDrag;b.Gi=e.pullbackLabelDuration;b.Ai=e.pullbackChildGroupsDelay;b.Bi=e.pullbackChildGroupsDrag;b.Ci=e.pullbackChildGroupsDuration;b.Ke=e.fadeDuration;b.fh=e.fadeEasing;b.Hj=e.zoomMouseWheelFactor;b.wc=e.zoomMouseWheelDuration;b.xc=e.zoomMouseWheelEasing;b.ri=e.maxLabelSizeForTitleBar;b.xj=e.titleBarFontFamily;b.tg=e.titleBarBackgroundColor;b.ug=e.titleBarTextColor;b.yj=e.titleBarMinFontSize;b.ne=e.titleBarMaxFontSize;b.zj=e.titleBarTextPaddingLeftRight;b.Aj=e.titleBarTextPaddingTopBottom;
|
|
||||||
b.wj=e.titleBarDecorator;b.Lj=e.attributionText;b.Ij=e.attributionLogo;b.Kj=e.attributionLogoScale;b.Mj=e.attributionUrl;b.ve=e.attributionPosition;b.Sg=e.attributionDistanceFromCenter;b.Ug=e.attributionWeight;b.Tg=e.attributionTheme;b.gf=e.interactionHandler;b.Uf=c("onModelChanging",b.Uf);b.Tf=c("onModelChanged",b.Tf);b.Vf=c("onRedraw",b.Vf);b.Xf=c("onRolloutStart",b.Xf);b.Wf=c("onRolloutComplete",b.Wf);b.Sd=c("onRelaxationStep",b.Sd);b.Yf=c("onViewReset",b.Yf);b.Mf=c("onGroupOpenOrCloseChanging",
|
|
||||||
b.Mf);b.Lf=c("onGroupOpenOrCloseChanged",b.Lf);b.Ef=c("onGroupExposureChanging",b.Ef);b.Df=c("onGroupExposureChanged",b.Df);b.Of=c("onGroupSelectionChanging",b.Of);b.Nf=c("onGroupSelectionChanged",b.Nf);b.Gf=c("onGroupHover",b.Gf);b.If=c("onGroupMouseMove",b.If);b.yf=c("onGroupClick",b.yf);b.zf=c("onGroupDoubleClick",b.zf);b.Ff=c("onGroupHold",b.Ff);b.Kf=c("onGroupMouseWheel",b.Kf);b.Jf=c("onGroupMouseUp",b.Jf);b.Hf=c("onGroupMouseDown",b.Hf);b.Cf=c("onGroupDragStart",b.Cf);b.Af=c("onGroupDrag",b.Af);
|
|
||||||
b.Bf=c("onGroupDragEnd",b.Bf);b.Rf=c("onGroupTransformStart",b.Rf);b.Pf=c("onGroupTransform",b.Pf);b.Qf=c("onGroupTransformEnd",b.Qf);b.Sf=c("onKeyUp",b.Sf)})();b.dj=S.Ba(b.cj);b.Xi=S.Ba(b.Wi);b.Xe=S.Ba(b.We);b.Jj=null;h&&(h.Xb(a),D.Q(a,"dataObject")&&h.reload())}function c(a){return function(){return a.apply(this,arguments).ih(g)}}var g=this,m=window.CarrotSearchFoamTree.asserts,e=D.extend({},window.CarrotSearchFoamTree.defaults),b={};k(a);(a=e.element||document.getElementById(e.id))||na.Pa("Element to embed FoamTree in not found.");
|
|
||||||
e.element=a;var h=new db(a,b,e);h.H();var n={get:function(a){return 0===arguments.length?D.extend({},e):l(arguments[0],Array.prototype.slice.call(arguments,1))},set:k,on:function(a,b){f(a,function(a){a.push(b);return a})},off:function(a,b){f(a,function(a){return a.filter(function(a){return a!==b})})},resize:h.Y,redraw:h.yc,update:h.update,attach:h.Aa,select:c(h.A),expose:c(h.d),open:c(h.k),reset:c(h.reset),zoom:c(h.Bc),trigger:function(a,b){var c=h.hb(a);c&&c(b)},dispose:function(){function a(){throw"FoamTree instance disposed";
|
|
||||||
}h.lb();D.Ga(n,function(b,c){"dispose"!==c&&(g[c]=a)})}};D.Ga(n,function(a,b){g[b]=a});h.reload()};window["CarrotSearchFoamTree.asserts"]&&(window.CarrotSearchFoamTree.asserts=window["CarrotSearchFoamTree.asserts"],delete window["CarrotSearchFoamTree.asserts"]);window.CarrotSearchFoamTree.supported=!0;window.CarrotSearchFoamTree.version=$a;window.CarrotSearchFoamTree.defaults=Object.freeze({id:void 0,element:void 0,logging:!1,dataObject:void 0,pixelRatio:1,wireframePixelRatio:1,layout:"relaxed",layoutByWeightOrder:!0,
|
|
||||||
showZeroWeightGroups:!0,groupMinDiameter:10,rectangleAspectRatioPreference:-1,relaxationInitializer:"fisheye",relaxationMaxDuration:3E3,relaxationVisible:!1,relaxationQualityThreshold:1,stacking:"hierarchical",descriptionGroupType:"stab",descriptionGroupPosition:225,descriptionGroupDistanceFromCenter:1,descriptionGroupSize:0.125,descriptionGroupMinHeight:35,descriptionGroupMaxHeight:0.5,descriptionGroupPolygonDrawn:!1,maxGroups:5E4,maxGroupLevelsAttached:4,maxGroupLevelsDrawn:4,maxGroupLabelLevelsDrawn:3,
|
|
||||||
groupGrowingDuration:0,groupGrowingEasing:"bounce",groupGrowingDrag:0,groupResizingBudget:2,groupBorderRadius:0.15,groupBorderWidth:4,groupBorderWidthScaling:0.6,groupInsetWidth:6,groupBorderRadiusCorrection:1,groupSelectionOutlineWidth:5,groupSelectionOutlineColor:"#222",groupSelectionOutlineShadowSize:0,groupSelectionOutlineShadowColor:"#fff",groupSelectionFillHueShift:0,groupSelectionFillSaturationShift:0,groupSelectionFillLightnessShift:0,groupSelectionStrokeHueShift:0,groupSelectionStrokeSaturationShift:0,
|
|
||||||
groupSelectionStrokeLightnessShift:-10,groupFillType:"gradient",groupFillGradientRadius:1,groupFillGradientCenterHueShift:0,groupFillGradientCenterSaturationShift:0,groupFillGradientCenterLightnessShift:20,groupFillGradientRimHueShift:0,groupFillGradientRimSaturationShift:0,groupFillGradientRimLightnessShift:-5,groupStrokeType:"plain",groupStrokeWidth:1.5,groupStrokePlainHueShift:0,groupStrokePlainSaturationShift:0,groupStrokePlainLightnessShift:-10,groupStrokeGradientRadius:1,groupStrokeGradientAngle:45,
|
|
||||||
groupStrokeGradientUpperHueShift:0,groupStrokeGradientUpperSaturationShift:0,groupStrokeGradientUpperLightnessShift:20,groupStrokeGradientLowerHueShift:0,groupStrokeGradientLowerSaturationShift:0,groupStrokeGradientLowerLightnessShift:-20,groupHoverFillHueShift:0,groupHoverFillSaturationShift:0,groupHoverFillLightnessShift:20,groupHoverStrokeHueShift:0,groupHoverStrokeSaturationShift:0,groupHoverStrokeLightnessShift:-10,groupExposureScale:1.15,groupExposureShadowColor:"rgba(0, 0, 0, 0.5)",groupExposureShadowSize:50,
|
|
||||||
groupExposureZoomMargin:0.1,groupUnexposureLightnessShift:65,groupUnexposureSaturationShift:-65,groupUnexposureLabelColorThreshold:0.35,exposeDuration:700,exposeEasing:"squareInOut",groupColorDecorator:D.ta,groupLabelDecorator:D.ta,groupLabelLayoutDecorator:D.ta,groupContentDecorator:D.ta,groupContentDecoratorTriggering:"onLayoutDirty",openCloseDuration:500,rainbowColorDistribution:"radial",rainbowColorDistributionAngle:-45,rainbowLightnessDistributionAngle:45,rainbowSaturationCorrection:0.1,rainbowLightnessCorrection:0.4,
|
|
||||||
rainbowStartColor:"hsla(0, 100%, 55%, 1)",rainbowEndColor:"hsla(359, 100%, 55%, 1)",rainbowLightnessShift:30,rainbowLightnessShiftCenter:0.4,parentFillOpacity:0.7,parentStrokeOpacity:1,parentLabelOpacity:1,parentOpacityBalancing:!0,wireframeDrawMaxDuration:15,wireframeLabelDrawing:"auto",wireframeContentDecorationDrawing:"auto",wireframeToFinalFadeDuration:500,wireframeToFinalFadeDelay:300,finalCompleteDrawMaxDuration:80,finalIncrementalDrawMaxDuration:100,finalToWireframeFadeDuration:200,androidStockBrowserWorkaround:v.hf(),
|
|
||||||
incrementalDraw:"fast",groupLabelFontFamily:"sans-serif",groupLabelFontStyle:"normal",groupLabelFontWeight:"normal",groupLabelFontVariant:"normal",groupLabelLineHeight:1.05,groupLabelHorizontalPadding:1,groupLabelVerticalPadding:1,groupLabelMinFontSize:6,groupLabelMaxFontSize:160,groupLabelMaxTotalHeight:0.9,groupLabelUpdateThreshold:0.05,groupLabelDarkColor:"#000",groupLabelLightColor:"#fff",groupLabelColorThreshold:0.35,rolloutStartPoint:"center",rolloutEasing:"squareOut",rolloutMethod:"groups",
|
|
||||||
rolloutDuration:2E3,rolloutScalingStrength:-0.7,rolloutTranslationXStrength:0,rolloutTranslationYStrength:0,rolloutRotationStrength:-0.7,rolloutTransformationCenter:0.7,rolloutPolygonDrag:0.1,rolloutPolygonDuration:0.5,rolloutLabelDelay:0.8,rolloutLabelDrag:0.1,rolloutLabelDuration:0.5,rolloutChildGroupsDrag:0.1,rolloutChildGroupsDelay:0.2,pullbackStartPoint:"center",pullbackEasing:"squareIn",pullbackMethod:"groups",pullbackDuration:1500,pullbackScalingStrength:-0.7,pullbackTranslationXStrength:0,
|
|
||||||
pullbackTranslationYStrength:0,pullbackRotationStrength:-0.7,pullbackTransformationCenter:0.7,pullbackPolygonDelay:0.3,pullbackPolygonDrag:0.1,pullbackPolygonDuration:0.8,pullbackLabelDelay:0,pullbackLabelDrag:0.1,pullbackLabelDuration:0.3,pullbackChildGroupsDelay:0.1,pullbackChildGroupsDrag:0.1,pullbackChildGroupsDuration:0.3,fadeDuration:700,fadeEasing:"cubicInOut",zoomMouseWheelFactor:1.5,zoomMouseWheelDuration:500,zoomMouseWheelEasing:"squareOut",maxLabelSizeForTitleBar:8,titleBarFontFamily:null,
|
|
||||||
titleBarFontStyle:"normal",titleBarFontWeight:"normal",titleBarFontVariant:"normal",titleBarBackgroundColor:"rgba(0, 0, 0, 0.5)",titleBarTextColor:"rgba(255, 255, 255, 1)",titleBarMinFontSize:10,titleBarMaxFontSize:40,titleBarTextPaddingLeftRight:20,titleBarTextPaddingTopBottom:15,titleBarDecorator:D.ta,attributionText:null,attributionLogo:null,attributionLogoScale:0.5,attributionUrl:"http://carrotsearch.com/foamtree",attributionPosition:"bottom-right",attributionDistanceFromCenter:1,attributionWeight:0.025,
|
|
||||||
attributionTheme:"light",interactionHandler:v.ii()?"hammerjs":"builtin",onModelChanging:[],onModelChanged:[],onRedraw:[],onRolloutStart:[],onRolloutComplete:[],onRelaxationStep:[],onViewReset:[],onGroupOpenOrCloseChanging:[],onGroupOpenOrCloseChanged:[],onGroupExposureChanging:[],onGroupExposureChanged:[],onGroupSelectionChanging:[],onGroupSelectionChanged:[],onGroupHover:[],onGroupMouseMove:[],onGroupClick:[],onGroupDoubleClick:[],onGroupHold:[],onGroupMouseWheel:[],onGroupMouseUp:[],onGroupMouseDown:[],
|
|
||||||
onGroupDragStart:[],onGroupDrag:[],onGroupDragEnd:[],onGroupTransformStart:[],onGroupTransform:[],onGroupTransformEnd:[],onKeyUp:[],selection:null,open:null,exposure:null,imageData:null,hierarchy:null,geometry:null,containerCoordinates:null,state:null,viewport:null,times:null});window.CarrotSearchFoamTree.geometry=Object.freeze(function(){return{rectangleInPolygon:function(a,l,k,f,d,c,g){d=D.B(d,1);c=D.B(c,0.5);g=D.B(g,0.5);a=M.se(a,{x:l,y:k},f,c,g)*d;return{x:l-a*f*c,y:k-a*g,w:a*f,h:a}},circleInPolygon:function(a,
|
|
||||||
l,k){return M.Eg(a,{x:l,y:k})},stabPolygon:function(a,l,k,f){return M.Wb(a,{x:l,y:k},f)},polygonCentroid:function(a){a=M.k(a,{});return{x:a.x,y:a.y,area:a.ja}},boundingBox:function(a){for(var l=a[0].x,k=a[0].y,f=a[0].x,d=a[0].y,c=1;c<a.length;c++){var g=a[c];g.x<l&&(l=g.x);g.y<k&&(k=g.y);g.x>f&&(f=g.x);g.y>d&&(d=g.y)}return{x:l,y:k,w:f-l,h:d-k}}}}())},function(){window.CarrotSearchFoamTree=function(){window.console.error("FoamTree is not supported on this browser.")};window.CarrotSearchFoamTree.Xj=
|
|
||||||
!1});})();
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<script>(function(){
|
|
||||||
|
|
||||||
var foamtree;
|
|
||||||
|
|
||||||
window.addEventListener('load', function() {
|
|
||||||
foamtree = new CarrotSearchFoamTree({
|
|
||||||
id: 'visualization',
|
|
||||||
dataObject: window.TREE_DATA ,
|
|
||||||
layoutByWeightOrder:true,
|
|
||||||
layout: 'squarified',
|
|
||||||
stacking: 'flattened',
|
|
||||||
pixelRatio: window.devicePixelRatio || 1,
|
|
||||||
maxGroupLevelsDrawn: Number.MAX_VALUE,
|
|
||||||
maxGroupLevelsAttached:Number.MAX_VALUE,
|
|
||||||
maxGroupLabelLevelsDrawn: Number.MAX_VALUE,
|
|
||||||
rolloutDuration: 0,
|
|
||||||
pullbackDuration: 0,
|
|
||||||
fadeDuration: 0,
|
|
||||||
zoomMouseWheelDuration: 300,
|
|
||||||
openCloseDuration: 200,
|
|
||||||
groupLabelVerticalPadding: 0.2,
|
|
||||||
groupBorderRadius: 0,
|
|
||||||
|
|
||||||
//TODO: follow up later
|
|
||||||
onGroupHover:function(e){
|
|
||||||
if (e.group && e.group.label) {
|
|
||||||
tooltip.style.display = 'block';
|
|
||||||
tooltip.innerHTML = formatTooltip(e.group);
|
|
||||||
} else {
|
|
||||||
tooltip.style.display = 'none';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
//zoom to group rather than that weird pop out thing
|
|
||||||
onGroupDoubleClick: function(e) {
|
|
||||||
e.preventDefault();
|
|
||||||
var group = e.group;
|
|
||||||
var toZoom;
|
|
||||||
if (group) {
|
|
||||||
toZoom = e.secondary ? group.parent : group;
|
|
||||||
} else {
|
|
||||||
toZoom = this.get('dataObject');
|
|
||||||
}
|
|
||||||
this.zoom(toZoom);
|
|
||||||
},
|
|
||||||
|
|
||||||
//we dont need the title bar as we have the tooltip
|
|
||||||
titleBarDecorator: function (opts, params, vars) {
|
|
||||||
vars.titleBarShown = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
window.addEventListener('resize', (function() {
|
|
||||||
var timeout;
|
|
||||||
return function() {
|
|
||||||
window.clearTimeout(timeout);
|
|
||||||
timeout = window.setTimeout(foamtree.resize, 300);
|
|
||||||
};
|
|
||||||
})());
|
|
||||||
|
|
||||||
function formatTooltip(group){
|
|
||||||
var gzipSize = group.formattedGzipSize ? (' (gzipped: ' + group.formattedGzipSize + ')') : '';
|
|
||||||
var t = '<em>' + group.label + '</em>';
|
|
||||||
t += '<div>' + group.path + '</div>';
|
|
||||||
t += '<div>Size:' + group.formattedSize + gzipSize + '</div>';
|
|
||||||
t += '<div>Time: ' + group.formattedTime + '</div>';
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
|
|
||||||
var tooltip = document.querySelector('.tooltip');
|
|
||||||
document.addEventListener('mousemove', function(e){
|
|
||||||
tooltip.style.left =
|
|
||||||
e.pageX + tooltip.clientWidth + 20 < document.body.clientWidth ?
|
|
||||||
e.pageX + 10 + 'px' :
|
|
||||||
document.body.clientWidth - 10 - tooltip.clientWidth + 'px';
|
|
||||||
tooltip.style.top =
|
|
||||||
e.pageY + tooltip.clientHeight + 20 <
|
|
||||||
document.body.clientHeight ?
|
|
||||||
e.pageY + 10 + 'px' :
|
|
||||||
document.body.clientHeight - 10 - tooltip.clientHeight + 'px';
|
|
||||||
});
|
|
||||||
|
|
||||||
})();</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
BIN
source/images/gitee.png
Normal file
BIN
source/images/gitee.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
BIN
source/images/github.png
Normal file
BIN
source/images/github.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
BIN
source/images/hexo-tag-chart.png
Normal file
BIN
source/images/hexo-tag-chart.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.7 KiB |
BIN
source/images/hexo.png
Normal file
BIN
source/images/hexo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.0 KiB |
@ -43,7 +43,7 @@ function setParticuleDirection(p) {
|
|||||||
let radius = [-1, 1][anime.random(0, 1)] * value;
|
let radius = [-1, 1][anime.random(0, 1)] * value;
|
||||||
return {
|
return {
|
||||||
x: p.x + radius * Math.cos(angle),
|
x: p.x + radius * Math.cos(angle),
|
||||||
y: p.y + radius * Math.sin(angle)
|
y: p.y + radius * Math.sin(angle),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -113,7 +113,7 @@ function animateParticules(x, y) {
|
|||||||
radius: 0.1,
|
radius: 0.1,
|
||||||
duration: anime.random(minAnimeDuration, maxAnimeDuration),
|
duration: anime.random(minAnimeDuration, maxAnimeDuration),
|
||||||
easing: "easeOutExpo",
|
easing: "easeOutExpo",
|
||||||
update: renderParticule
|
update: renderParticule,
|
||||||
})
|
})
|
||||||
.add({
|
.add({
|
||||||
targets: circle,
|
targets: circle,
|
||||||
@ -122,12 +122,12 @@ function animateParticules(x, y) {
|
|||||||
alpha: {
|
alpha: {
|
||||||
value: 0,
|
value: 0,
|
||||||
easing: "linear",
|
easing: "linear",
|
||||||
duration: anime.random(600, 800)
|
duration: anime.random(600, 800),
|
||||||
},
|
},
|
||||||
duration: anime.random(1200, 1800),
|
duration: anime.random(1200, 1800),
|
||||||
easing: "easeOutExpo",
|
easing: "easeOutExpo",
|
||||||
update: renderParticule,
|
update: renderParticule,
|
||||||
offset: 0
|
offset: 0,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -135,7 +135,7 @@ let render = anime({
|
|||||||
duration: Infinity,
|
duration: Infinity,
|
||||||
update: function () {
|
update: function () {
|
||||||
ctx.clearRect(0, 0, canvasEl.width, canvasEl.height);
|
ctx.clearRect(0, 0, canvasEl.width, canvasEl.height);
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
document.addEventListener(
|
document.addEventListener(
|
||||||
|
@ -1,96 +1,110 @@
|
|||||||
class Circle {
|
class Circle {
|
||||||
constructor({ origin, speed, color, angle, context }) {
|
constructor({ origin, speed, color, angle, context }) {
|
||||||
this.origin = origin
|
this.origin = origin;
|
||||||
this.position = { ...this.origin }
|
this.position = { ...this.origin };
|
||||||
this.color = color
|
this.color = color;
|
||||||
this.speed = speed
|
this.speed = speed;
|
||||||
this.angle = angle
|
this.angle = angle;
|
||||||
this.context = context
|
this.context = context;
|
||||||
this.renderCount = 0
|
this.renderCount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
draw() {
|
draw() {
|
||||||
this.context.fillStyle = this.color
|
this.context.fillStyle = this.color;
|
||||||
this.context.beginPath()
|
this.context.beginPath();
|
||||||
this.context.arc(this.position.x, this.position.y, 2, 0, Math.PI * 2)
|
this.context.arc(this.position.x, this.position.y, 2, 0, Math.PI * 2);
|
||||||
this.context.fill()
|
this.context.fill();
|
||||||
}
|
}
|
||||||
|
|
||||||
move() {
|
move() {
|
||||||
this.position.x = (Math.sin(this.angle) * this.speed) + this.position.x
|
this.position.x = Math.sin(this.angle) * this.speed + this.position.x;
|
||||||
this.position.y = (Math.cos(this.angle) * this.speed) + this.position.y + (this.renderCount * 0.3)
|
this.position.y =
|
||||||
this.renderCount++
|
Math.cos(this.angle) * this.speed +
|
||||||
}
|
this.position.y +
|
||||||
|
this.renderCount * 0.3;
|
||||||
|
this.renderCount++;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class Boom {
|
class Boom {
|
||||||
constructor ({ origin, context, circleCount = 10, area }) {
|
constructor({ origin, context, circleCount = 10, area }) {
|
||||||
this.origin = origin
|
this.origin = origin;
|
||||||
this.context = context
|
this.context = context;
|
||||||
this.circleCount = circleCount
|
this.circleCount = circleCount;
|
||||||
this.area = area
|
this.area = area;
|
||||||
this.stop = false
|
this.stop = false;
|
||||||
this.circles = []
|
this.circles = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
randomArray(range) {
|
randomArray(range) {
|
||||||
const length = range.length
|
const length = range.length;
|
||||||
const randomIndex = Math.floor(length * Math.random())
|
const randomIndex = Math.floor(length * Math.random());
|
||||||
return range[randomIndex]
|
return range[randomIndex];
|
||||||
}
|
}
|
||||||
|
|
||||||
randomColor() {
|
randomColor() {
|
||||||
const range = ['8', '9', 'A', 'B', 'C', 'D', 'E', 'F']
|
const range = ["8", "9", "A", "B", "C", "D", "E", "F"];
|
||||||
return '#' + this.randomArray(range) + this.randomArray(range) + this.randomArray(range) + this.randomArray(range) + this.randomArray(range) + this.randomArray(range)
|
return (
|
||||||
|
"#" +
|
||||||
|
this.randomArray(range) +
|
||||||
|
this.randomArray(range) +
|
||||||
|
this.randomArray(range) +
|
||||||
|
this.randomArray(range) +
|
||||||
|
this.randomArray(range) +
|
||||||
|
this.randomArray(range)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
randomRange(start, end) {
|
randomRange(start, end) {
|
||||||
return (end - start) * Math.random() + start
|
return (end - start) * Math.random() + start;
|
||||||
}
|
}
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
for(let i = 0; i < this.circleCount; i++) {
|
for (let i = 0; i < this.circleCount; i++) {
|
||||||
const circle = new Circle({
|
const circle = new Circle({
|
||||||
context: this.context,
|
context: this.context,
|
||||||
origin: this.origin,
|
origin: this.origin,
|
||||||
color: this.randomColor(),
|
color: this.randomColor(),
|
||||||
angle: this.randomRange(Math.PI - 1, Math.PI + 1),
|
angle: this.randomRange(Math.PI - 1, Math.PI + 1),
|
||||||
speed: this.randomRange(1, 6)
|
speed: this.randomRange(1, 6),
|
||||||
})
|
});
|
||||||
this.circles.push(circle)
|
this.circles.push(circle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
move() {
|
move() {
|
||||||
this.circles.forEach((circle, index) => {
|
this.circles.forEach((circle, index) => {
|
||||||
if (circle.position.x > this.area.width || circle.position.y > this.area.height) {
|
if (
|
||||||
return this.circles.splice(index, 1)
|
circle.position.x > this.area.width ||
|
||||||
|
circle.position.y > this.area.height
|
||||||
|
) {
|
||||||
|
return this.circles.splice(index, 1);
|
||||||
}
|
}
|
||||||
circle.move()
|
circle.move();
|
||||||
})
|
});
|
||||||
if (this.circles.length == 0) {
|
if (this.circles.length == 0) {
|
||||||
this.stop = true
|
this.stop = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
draw() {
|
draw() {
|
||||||
this.circles.forEach(circle => circle.draw())
|
this.circles.forEach((circle) => circle.draw());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class CursorSpecialEffects {
|
class CursorSpecialEffects {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.computerCanvas = document.createElement('canvas')
|
this.computerCanvas = document.createElement("canvas");
|
||||||
this.renderCanvas = document.createElement('canvas')
|
this.renderCanvas = document.createElement("canvas");
|
||||||
|
|
||||||
this.computerContext = this.computerCanvas.getContext('2d')
|
this.computerContext = this.computerCanvas.getContext("2d");
|
||||||
this.renderContext = this.renderCanvas.getContext('2d')
|
this.renderContext = this.renderCanvas.getContext("2d");
|
||||||
|
|
||||||
this.globalWidth = window.innerWidth
|
this.globalWidth = window.innerWidth;
|
||||||
this.globalHeight = window.innerHeight
|
this.globalHeight = window.innerHeight;
|
||||||
|
|
||||||
this.booms = []
|
this.booms = [];
|
||||||
this.running = false
|
this.running = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
handleMouseDown(e) {
|
handleMouseDown(e) {
|
||||||
@ -99,56 +113,68 @@ class Circle {
|
|||||||
context: this.computerContext,
|
context: this.computerContext,
|
||||||
area: {
|
area: {
|
||||||
width: this.globalWidth,
|
width: this.globalWidth,
|
||||||
height: this.globalHeight
|
height: this.globalHeight,
|
||||||
}
|
},
|
||||||
})
|
});
|
||||||
boom.init()
|
boom.init();
|
||||||
this.booms.push(boom)
|
this.booms.push(boom);
|
||||||
this.running || this.run()
|
this.running || this.run();
|
||||||
}
|
}
|
||||||
|
|
||||||
handlePageHide() {
|
handlePageHide() {
|
||||||
this.booms = []
|
this.booms = [];
|
||||||
this.running = false
|
this.running = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
const style = this.renderCanvas.style
|
const style = this.renderCanvas.style;
|
||||||
style.position = 'fixed'
|
style.position = "fixed";
|
||||||
style.top = style.left = 0
|
style.top = style.left = 0;
|
||||||
style.zIndex = '99999'
|
style.zIndex = "99999";
|
||||||
style.pointerEvents = 'none'
|
style.pointerEvents = "none";
|
||||||
|
|
||||||
style.width = this.renderCanvas.width = this.computerCanvas.width = this.globalWidth
|
style.width =
|
||||||
style.height = this.renderCanvas.height = this.computerCanvas.height = this.globalHeight
|
this.renderCanvas.width =
|
||||||
|
this.computerCanvas.width =
|
||||||
|
this.globalWidth;
|
||||||
|
style.height =
|
||||||
|
this.renderCanvas.height =
|
||||||
|
this.computerCanvas.height =
|
||||||
|
this.globalHeight;
|
||||||
|
|
||||||
document.body.append(this.renderCanvas)
|
document.body.append(this.renderCanvas);
|
||||||
|
|
||||||
window.addEventListener('mousedown', this.handleMouseDown.bind(this))
|
window.addEventListener("mousedown", this.handleMouseDown.bind(this));
|
||||||
window.addEventListener('pagehide', this.handlePageHide.bind(this))
|
window.addEventListener("pagehide", this.handlePageHide.bind(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
run() {
|
run() {
|
||||||
this.running = true
|
this.running = true;
|
||||||
if (this.booms.length == 0) {
|
if (this.booms.length == 0) {
|
||||||
return this.running = false
|
return (this.running = false);
|
||||||
}
|
}
|
||||||
|
|
||||||
requestAnimationFrame(this.run.bind(this))
|
requestAnimationFrame(this.run.bind(this));
|
||||||
|
|
||||||
this.computerContext.clearRect(0, 0, this.globalWidth, this.globalHeight)
|
this.computerContext.clearRect(0, 0, this.globalWidth, this.globalHeight);
|
||||||
this.renderContext.clearRect(0, 0, this.globalWidth, this.globalHeight)
|
this.renderContext.clearRect(0, 0, this.globalWidth, this.globalHeight);
|
||||||
|
|
||||||
this.booms.forEach((boom, index) => {
|
this.booms.forEach((boom, index) => {
|
||||||
if (boom.stop) {
|
if (boom.stop) {
|
||||||
return this.booms.splice(index, 1)
|
return this.booms.splice(index, 1);
|
||||||
}
|
|
||||||
boom.move()
|
|
||||||
boom.draw()
|
|
||||||
})
|
|
||||||
this.renderContext.drawImage(this.computerCanvas, 0, 0, this.globalWidth, this.globalHeight)
|
|
||||||
}
|
}
|
||||||
|
boom.move();
|
||||||
|
boom.draw();
|
||||||
|
});
|
||||||
|
this.renderContext.drawImage(
|
||||||
|
this.computerCanvas,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
this.globalWidth,
|
||||||
|
this.globalHeight
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const cursorSpecialEffects = new CursorSpecialEffects()
|
const cursorSpecialEffects = new CursorSpecialEffects();
|
||||||
cursorSpecialEffects.init()
|
cursorSpecialEffects.init();
|
||||||
|
6
source/js/jquery-2.0.3.min.js
vendored
6
source/js/jquery-2.0.3.min.js
vendored
File diff suppressed because one or more lines are too long
2
source/js/jquery-3.6.0.min.js
vendored
Normal file
2
source/js/jquery-3.6.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user