refactor: 重构页面目录

重构了一下整个页面,有如下好处:
1. 使用者可以选择使用免费CDN,还是使用自己带宽或者自己加装CDN
2. 使用者可以替换、修改第三方包及静态资源,给予最大的权限

受一些限制,在设置内的默认资源,还是使用我CDN上的资源。
This commit is contained in:
lxy 2020-10-27 15:33:19 +08:00
parent 28a799d938
commit a70368997d
179 changed files with 27464 additions and 1956 deletions

8
.bowerrc Normal file
View File

@ -0,0 +1,8 @@
{
"directory": "source/lib",
"json": "./bower.json",
"ignoredDependencies": [
"ev-emitter",
"jquery"
]
}

View File

@ -44,7 +44,7 @@
the_dom = the_dom.substring(0, the_port_index)
}
</script>
<script src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.1.0/sakura/js/404.js" type="text/javascript"></script>
<script src="${res_base_url!}/source/js/404.js" type="text/javascript"></script>
</body>

View File

@ -33,7 +33,7 @@ DEMO[https://lixingyong.com/](https://lixingyong.com/)
- [x] 代码高亮且实现仿Mac
- [x] 自定义评论
- [x] 文章目录
- [x] 主题切换
- [x] 主题切换(支持页面模式)
- [x] 友链页面
- [x] 移动客户端适配
- [x] 404 页面

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${settings.archives_patternimg!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${settings.archives_patternimg!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">文章归档</h1>

29
bower.json Normal file
View File

@ -0,0 +1,29 @@
{
"name": "takagi-sakura",
"main": "index.js",
"authors": [
"takagi <takagi@halo.run>"
],
"license": "ISC",
"homepage": "https://github.com/LIlGG/halo-theme-sakura",
"ignore": [
"**/.*",
"node_modules",
"bower_components",
"source/lib",
"test",
"tests",
"src"
],
"dependencies": {
"flv.min": "https://github.com/bilibili/flv.js/releases/download/v1.5.0/flv.min.js",
"isotope.pkgd.min": "https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.min.js",
"jquery.justifiedGallery.min": "https://github.com/miromannino/Justified-Gallery/blob/master/dist/js/jquery.justifiedGallery.min.js",
"imagesloaded": "^4.1.4",
"packery-mode.pkgd.min": "https://github.com/metafizzy/isotope-packery/blob/master/packery-mode.pkgd.min.js",
"APlayer.min": "https://github.com/MoePlayer/APlayer/blob/master/dist/APlayer.min.js",
"tocbot": "^4.12.0",
"jquery-ui": "^1.12.1",
"v1.10": "https://github.com/MoePlayer/APlayer/releases/tag/v1.10.1"
}
}

View File

@ -11,7 +11,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${settings.category_patternimg!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${settings.category_patternimg!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">${options.categories_title?default('文章分类')}</h1>

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src='${((category.thumbnail)?length>0)?string((category.thumbnail),"${settings.category_patternimg!}")}' src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src='${((category.thumbnail)?length>0)?string((category.thumbnail),"${settings.category_patternimg!}")}' src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="cat-title">分类:${category.name!}</h1>

View File

@ -9,6 +9,7 @@
* @package Akina
*/
-->
<#global res_base_url = settings.cdn?then("//cdn.jsdelivr.net/gh/LIlGG/halo-theme-sakura@1.2.1", theme_base)/>
<#macro footer>
</div><!-- #content -->
<#include "comments.ftl">
@ -17,13 +18,12 @@
<#elseif is_sheet??>
<@comment sheet,"sheet" />
</#if>
<#assign cdn_base_url="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8"/>
</div><!-- #page Pjax container-->
<footer id="colophon" class="site-footer" role="contentinfo">
<div class="site-info">
<div class="footertext">
<p class="foo-logo"
style="background-image: url('${settings.footer_logo?default('${cdn_base_url!}/img/Sakura/images/sakura.svg')}');"></p>
style="background-image: url('${settings.footer_logo?default('${res_base_url!}/source/images/sakura.svg')}');"></p>
<@global.footer />
</div>
<div class="footer-device">
@ -70,7 +70,7 @@
<!-- m-nav-center -->
<div id="mo-nav">
<div class="m-avatar">
<img src="${(user.avatar)!'${theme_base!}/images/avatar.jpg'}">
<img src="${(user.avatar)!'${res_base_url!}/source/images/avatar.jpg'}">
</div>
<#if settings.glitch_text??>
@ -80,25 +80,25 @@
<#if settings.focus_infos!true>
<p style="text-align: center; word-spacing: 20px;">
<#if settings.twitter??>
<a href="${settings.twitter!}" class="social-twitter" target="_blank" style="color: #00aced"><img src="${cdn_base_url!}/img/Sakura/images/sns/twitter.png" width="18"/></a>
<a href="${settings.twitter!}" class="social-twitter" target="_blank" style="color: #00aced"><img src="${res_base_url!}/source/images/sns/twitter.png" width="18"/></a>
</#if>
<#if settings.sina??>
<a href="${settings.sina!}" class="social-sina" target="_blank" style="color: #dd4b39"><img src="${cdn_base_url!}/img/Sakura/images/sns/sina.png" width="18"/></a>
<a href="${settings.sina!}" class="social-sina" target="_blank" style="color: #dd4b39"><img src="${res_base_url!}/source/images/sns/sina.png" width="18"/></a>
</#if>
<#if settings.github??>
<a href="${settings.github!}" class="social-github" target="_blank" style="color: #333"><img src="${cdn_base_url!}/img/Sakura/images/sns/github.png" width="18"/></a>
<a href="${settings.github!}" class="social-github" target="_blank" style="color: #333"><img src="${res_base_url!}/source/images/sns/github.png" width="18"/></a>
</#if>
<#if settings.wechat??>
<a href="${settings.wechat!}" class="social-wechat" target="_blank" style="color: #333"><img src="${cdn_base_url!}/img/Sakura/images/sns/wechat.png" width="18"/></a>
<a href="${settings.wechat!}" class="social-wechat" target="_blank" style="color: #333"><img src="${res_base_url!}/source/images/sns/wechat.png" width="18"/></a>
</#if>
<#if settings.qq??>
<a href="//wpa.qq.com/msgrd?v=3&uin=${settings.qq!}&site=qq&menu=yes" class="social-wangyiyun" target="_blank" style="color: #333"><img src="${cdn_base_url!}/img/Sakura/images/sns/qq.png" width="18"/></a>
<a href="//wpa.qq.com/msgrd?v=3&uin=${settings.qq!}&site=qq&menu=yes" class="social-wangyiyun" target="_blank" style="color: #333"><img src="${res_base_url!}/source/images/sns/qq.png" width="18"/></a>
</#if>
<#if settings.bili??>
<a href="${settings.bili!}" class="social-bili" target="_blank" style="color: #333"><img src="${cdn_base_url!}/img/Sakura/images/sns/bilibili.png" width="18"/></a>
<a href="${settings.bili!}" class="social-bili" target="_blank" style="color: #333"><img src="${res_base_url!}/source/images/sns/bilibili.png" width="18"/></a>
</#if>
<#if settings.wangyiyun??>
<a href="${settings.wangyiyun!}" class="social-wangyiyun" target="_blank" style="color: #333"><img src="${cdn_base_url!}/img/Sakura/images/sns/wangyiyun.png" width="18"/></a>
<a href="${settings.wangyiyun!}" class="social-wangyiyun" target="_blank" style="color: #333"><img src="${res_base_url!}/source/images/sns/wangyiyun.png" width="18"/></a>
</#if>
</p>
</#if>
@ -205,31 +205,31 @@
};
/* ]]> */
</script>
<script type="text/javascript" src="${cdn_base_url!}/js/lib.js"></script>
<script type="text/javascript" src="${res_base_url!}/source/js/lib.js"></script>
<!-- 相册 -->
<#if settings.photos_style == "justify">
<script src="https://cdn.jsdelivr.net/npm/justifiedGallery@3.8.1/dist/js/jquery.justifiedGallery.min.js"></script>
<script src="${res_base_url!}/source/lib/justifiedGallery/jquery.justifiedGallery.min.js"></script>
<#elseif settings.photos_style == "masonry" || settings.photos_style == "packery">
<script src="https://cdn.jsdelivr.net/gh/metafizzy/isotope@3.0.6/dist/isotope.pkgd.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/imagesloaded@4.1.4/imagesloaded.pkgd.min.js"></script>
<script src="${res_base_url!}/source/lib/isotope.pkgd.min/index.js"></script>
<script src="${res_base_url!}/source/lib/imagesloaded/imagesloaded.pkgd.min.js"></script>
<#if settings.photos_style == "packery">
<script type='text/javascript' src='${cdn_base_url!}/js/packery/packery-mode.pkgd.min.js'></script>
<script type='text/javascript' src='${res_base_url!}/source/lib/packery-mode.pkgd.min/index.js'></script>
</#if>
</#if>
<script type="text/javascript" src="${theme_base!}/plugins/highlight/js/highlight.pack.js"></script>
<script type="text/javascript" src="${res_base_url!}/source/js/highlight/highlight.pack.js"></script>
<#if settings.code_line!true>
<script type="text/javascript" src="${theme_base!}/plugins/highlight/js/highlightjs-line-numbers.min.js"></script>
<script type="text/javascript" src="${res_base_url!}/source/js/highlight/highlightjs-line-numbers.min.js"></script>
</#if>
<#if settings.is_aplayer!false>
<script src="https://cdn.jsdelivr.net/npm/aplayer@1.10.1/dist/APlayer.min.js" defer></script>
<script src="${res_base_url!}/source/lib/APlayer/APlayer.min.js" defer></script>
<script src="${theme_base!}/plugins/aplayer/js/index.js" defer></script>
</#if>
<#if settings.post_toc!true>
<script src="${cdn_base_url!}/js/tocbot/4.11.1/js/tocbot.min.js" defer></script>
<script src="${res_base_url!}/source/lib/tocbot/dist/tocbot.min.js" defer></script>
</#if>
<script src="${settings.comment_mode!'//cdn.jsdelivr.net/gh/LIlGG/halo-comment-sakura@v1.3.1/dist/halo-comment.min.js'}" defer></script>
<#if settings.tag_cloud!true>
<script src="https://cdn.jsdelivr.net/npm/jqcloud2@2.0.3/dist/jqcloud.min.js" defer></script>
<script src="${res_base_url!}/source/lib/jqcloud2/jqcloud.min.js" defer></script>
<script type='text/javascript'>
var wordcloud = [
<@tagTag method="list">
@ -241,7 +241,7 @@
</script>
</#if>
<#if settings.category_radar!true>
<script src="${cdn_base_url!}/js/echarts/echarts.min.js" defer></script>
<script src="${res_base_url!}/source/js/echarts/echarts.min.js" defer></script>
<script type='text/javascript'>
var categoryRadar = {
<@categoryTag method="list">
@ -252,12 +252,12 @@
}
</script>
</#if>
<script type='text/javascript' src='${cdn_base_url!}/js/src/qrcode.min.js' defer></script>
<script type='text/javascript' src='${theme_base!}/source/js/flv.min.js' defer></script>
<script type='text/javascript' src='${theme_base!}/js/app.min.js?ver=1.2.0'></script>
<script type='text/javascript' src='${res_base_url!}/source/js/qrcode.min.js' defer></script>
<script type='text/javascript' src='${res_base_url!}/source/lib/flv.min/index.js' defer></script>
<script type='text/javascript' src='${theme_base!}/script/app.min.js?ver=1.2.1'></script>
<#nested />
<#if settings.live2d_switch!true>
<script src="https://cdn.bootcdn.net/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js" async defer></script>
<script src="${res_base_url!}/source/lib/jquery-ui/jquery-ui.min.js" async defer></script>
<#include "plugins/live2d/ftl/live2d.ftl">
<@live2d/>
</#if>

View File

@ -1,6 +1,7 @@
<#--
@package Akina
-->
<#global res_base_url = settings.cdn?then("//cdn.jsdelivr.net/gh/LIlGG/halo-theme-sakura@1.2.1", theme_base)/>
<#macro header title>
<!DOCTYPE html>
<html lang="zh-CN">
@ -16,17 +17,16 @@
<link rel='stylesheet' href='${theme_base!}/styles/style.min.css?ver=1.2.0' type='text/css' media='all'>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Noto+SerifMerriweather|Merriweather+Sans|Source+Code+Pro|Ubuntu:400,700|Noto+Serif+SC" media="noexist" onload="this.media='all'">
<link rel="stylesheet" href="//at.alicdn.com/t/font_2010950_uq2c7ykeiyk.css" media="noexist" onload="this.media='all'">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.7/css/lib.css" media="noexist" onload="this.media='all'">
<link rel='stylesheet' href="${theme_base!}/plugins/highlight/css/highlight-${settings.code_pretty!'Default'}.css" type="text/css" media="noexist" onload="this.media='all'">
<link rel="stylesheet" href="${res_base_url!}/source/css/lib.css" media="noexist" onload="this.media='all'">
<link rel='stylesheet' href="${res_base_url!}/source/css/highlight/highlight-${settings.code_pretty!'Default'}.css" type="text/css" media="noexist" onload="this.media='all'">
<#if settings.is_aplayer!false>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aplayer@1.10.1/dist/APlayer.min.css" media='all'>
<link rel="stylesheet" href="${res_base_url!}/source/lib/APlayer/APlayer.min.css" media='all'>
</#if>
<#if settings.tag_cloud!true>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/jqcloud2@2.0.3/dist/jqcloud.min.css" media="noexist" onload="this.media='all'">
<link rel="stylesheet" href="${res_base_url!}/source/lib/jqcloud2/jqcloud.min.css" media="noexist" onload="this.media='all'">
</#if>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css" media="noexist" onload="this.media='all'">
<#if settings.photos_style == "justify">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/justifiedGallery@3.8.1/dist/css/justifiedGallery.min.css" media="noexist" onload="this.media='all'">
<link rel="stylesheet" href="${res_base_url!}/source/lib/justifiedGallery/justifiedGallery.min.css" media="noexist" onload="this.media='all'">
</#if>
<#include "inc/decorate.ftl">
<script type="text/javascript">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 737 B

View File

@ -1,49 +1,96 @@
<@compress single_line=true>
<#assign cdn_base_url="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8"/>
<style type="text/css">
<#if settings.shownav!false>
.site-top .lower nav {
display: block !important;
}
</#if>
/**
* 图片资源
*/
.video-play,
.loadvideo {
background-image: url(${res_base_url!}/source/images/play@32x32.png)
}
.video-pause {
background-image: url(${res_base_url!}/source/images/pause@32x32.png)
}
#video-add {
background-image: url(${res_base_url!}/source/images/add@32x32.png);
}
#loading-comments {
background-image: url(${res_base_url!}/source/images/disqus-preloader.svg);
}
.headertop.filter-grid:before {
background-image: url(${res_base_url!}/source/images/grid.png)
}
.headertop.filter-dot:before {
background-image: url(${res_base_url!}/source/images/dot.gif)
}
@media (max-width:860px) {
.headertop.filter-dot:before {
background-image: url(${res_base_url!}/source/images/grid.png)
}
}
.search-form.is-visible {
background-image: url(${res_base_url!}/source/images/other/iloli.gif);
}
#pagination .loading {
background: url(${res_base_url!}/source/images/rotating-ball-o.svg);
}
#banner_wave_1 {
background: url(${res_base_url!}/source/images/wave1.png) repeat-x;
}
#banner_wave_2 {
background: url(${res_base_url!}/source/images/wave2.png) repeat-x;
}
<#if (settings.cursor_skin!'sakura') == 'sakura'>
/** 鼠标样式 */
a {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/ayuda.cur), auto
cursor: url(${res_base_url!}/source/cursor/ayuda.cur), auto
}
a:active {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/work.cur),alias
cursor: url(${res_base_url!}/source/cursor/work.cur),alias
}
p {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/texto.cur),auto
cursor: url(${res_base_url!}/source/cursor/texto.cur),auto
}
body {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/normal.cur),auto;
cursor: url(${res_base_url!}/source/cursor/normal.cur),auto;
}
.cd-top {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/No_Disponible.cur),auto;
cursor: url(${res_base_url!}/source/cursor/No_Disponible.cur),auto;
}
.botui-actions-buttons-button {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/No_Disponible.cur),auto;
cursor: url(${res_base_url!}/source/cursor/No_Disponible.cur),auto;
}
.button.botui-actions-buttons-button {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/No_Disponible.cur),auto;
cursor: url(${res_base_url!}/source/cursor/No_Disponible.cur),auto;
}
.highlight-wrap code {
cursor: url(${cdn_base_url!}/img/Sakura/cursor/texto.cur),auto
cursor: url(${res_base_url!}/source/cursor/texto.cur),auto
}
</#if>
/***/
.cd-top {
background: url(${(settings.top_back_img)!'${cdn_base_url!}/img/Sakura/images/scroll.png'}) no-repeat center;
background: url(${(settings.top_back_img)!'${res_base_url!}/source/images/scroll.png'}) no-repeat center;
}
<#if settings.theme_skin??>

View File

@ -1,12 +1,13 @@
<#--
@package Akina
-->
<#global res_base_url = settings.cdn?then("//cdn.jsdelivr.net/gh/LIlGG/halo-theme-sakura@1.2.1", theme_base)/>
<#include "header.ftl">
<@header title="${blog_title!}">
<div class="blank"></div>
</@header>
<#if settings.head_notice!false && settings.notice_title!=''>
<div class="notice" style="
<#if (settings.focus_height!true)>

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${settings.journals_patternimg!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${settings.journals_patternimg!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">${options.journals_title?default('日志')}</h1>
@ -31,7 +31,7 @@
<#list journals.content as journal>
<li id="journal-${journal.id?c}" class="journal">
<span class="journal-author-img">
<img class="lazyload avatar" data-src="${user.avatar!}" alt="${user.nickname!}" width="48" height="48" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/trans.ajax-spinner-preloader.svg" onerror="imgError(this, IMG_Type.DEFAULT)">
<img class="lazyload avatar" data-src="${user.avatar!}" alt="${user.nickname!}" width="48" height="48" src="${res_base_url!}/source/images/svg/loader/trans.ajax-spinner-preloader.svg" onerror="imgError(this, IMG_Type.DEFAULT)">
<span class="journal-label">${journal.content!}
<p class="journal-time">
<span> ${journal.createTime?string('yyyy-MM-dd HH:mm:ss')}</span>

View File

@ -8,7 +8,7 @@
<div class="the-feature square from_left_and_right">
<a href="${settings.feature1_link!'#'}" target="_blank">
<div class="img">
<img src="${settings.feature1_img!'${theme_base!}/images/temp.jpg'}">
<img src="${settings.feature1_img!'${res_base_url!}/source/images/temp.jpg'}">
</div>
<div class="info">
<h3>${settings.feature1_title!'feature1'}</h3>
@ -21,7 +21,7 @@
<div class="the-feature square from_left_and_right">
<a href="${settings.feature2_link!'#'}" target="_blank">
<div class="img">
<img src="${settings.feature2_img!'${theme_base!}/images/temp.jpg'}">
<img src="${settings.feature2_img!'${res_base_url!}/source/images/temp.jpg'}">
</div>
<div class="info">
<h3>${settings.feature2_title!'feature2'}</h3>
@ -34,7 +34,7 @@
<div class="the-feature square from_left_and_right">
<a href="${settings.feature3_link!'#'}" target="_blank">
<div class="img">
<img src="${settings.feature3_img!'${theme_base!}/images/temp.jpg'}">
<img src="${settings.feature3_img!'${res_base_url!}/source/images/temp.jpg'}">
</div>
<div class="info">
<h3>${settings.feature3_title!'feature3'}</h3>

View File

@ -1,5 +1,4 @@
<#assign cdn_base_url="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8"/>
<figure id="centerbg" class="centerbg" style="background-image: url('${settings.focus_img_1!'${theme_base!}/images/hd.jpg'}');
<figure id="centerbg" class="centerbg" style="background-image: url('${settings.focus_img_1!'${res_base_url!}/source/images/hd.jpg'}');
<#if !(settings.focus_height!true)>
background-position: center center;background-attachment: inherit;
</#if>
@ -10,7 +9,7 @@
<#if user.avatar??>
<div class="header-tou"><a href="${blog_url!}" ><img src="${user.avatar!}"></a></div>
<#else>
<div class="header-tou" ><a href="${blog_url!}"><img src="${theme_base!}/images/avatar.jpg"></a></div>
<div class="header-tou" ><a href="${blog_url!}"><img src="${res_base_url!}/source/images/avatar.jpg"></a></div>
</#if>
<#elseif settings.focus_tou == "glitch-text">
<#if settings.glitch_text??>
@ -23,56 +22,56 @@
</#if>
<div class="top-social_v2">
<li id="bg-pre">
<img class="flipx" src="${cdn_base_url!}/img/Sakura/images/next-b.svg">
<img class="flipx" src="${res_base_url!}/source/images/next-b.svg">
</li>
<#if settings.wechat??>
<li class="wechat"><a href="#"><img src="${cdn_base_url!}/img/Sakura/images/sns/wechat.png"/></a>
<li class="wechat"><a href="#"><img src="${res_base_url!}/source/images/sns/wechat.png"/></a>
<div class="wechatInner">
<img src="${settings.wechat!}" alt="微信公众号">
</div>
</li>
</#if>
<#if settings.sina??>
<li><a href="${settings.sina!}" target="_blank" class="social-sina" title="sina"><img src="${cdn_base_url!}/img/Sakura/images/sns/sina.png"/></a></li>
<li><a href="${settings.sina!}" target="_blank" class="social-sina" title="sina"><img src="${res_base_url!}/source/images/sns/sina.png"/></a></li>
</#if>
<#if settings.qq??>
<li class="qq"><a href="//wpa.qq.com/msgrd?v=3&uin=${settings.qq!}&site=qq&menu=yes" target="_blank" title="Initiate chat ?"><img src="${cdn_base_url!}/img/Sakura/images/sns/qq.png"/></a></li>
<li class="qq"><a href="//wpa.qq.com/msgrd?v=3&uin=${settings.qq!}&site=qq&menu=yes" target="_blank" title="Initiate chat ?"><img src="${res_base_url!}/source/images/sns/qq.png"/></a></li>
</#if>
<#if settings.qzone??>
<li><a href="${settings.qzone!}" target="_blank" class="social-qzone" title="qzone"><img src="${cdn_base_url!}/img/Sakura/images/sns/qzone.png"/></a></li>
<li><a href="${settings.qzone!}" target="_blank" class="social-qzone" title="qzone"><img src="${res_base_url!}/source/images/sns/qzone.png"/></a></li>
</#if>
<#if settings.github??>
<li><a href="${settings.github!}" target="_blank" class="social-github" title="github"><img src="${cdn_base_url!}/img/Sakura/images/sns/github.png"/></a></li>
<li><a href="${settings.github!}" target="_blank" class="social-github" title="github"><img src="${res_base_url!}/source/images/sns/github.png"/></a></li>
</#if>
<#if settings.lofter??>
<li><a href="${settings.lofter!}" target="_blank" class="social-lofter" title="lofter"><img src="${cdn_base_url!}/img/Sakura/images/sns/lofter.png"/></a></li>
<li><a href="${settings.lofter!}" target="_blank" class="social-lofter" title="lofter"><img src="${res_base_url!}/source/images/sns/lofter.png"/></a></li>
</#if>
<#if settings.bili??>
<li><a href="${settings.bili!}" target="_blank" class="social-bili" title="bilibili"><img src="${cdn_base_url!}/img/Sakura/images/sns/bilibili.png"/></a></li>
<li><a href="${settings.bili!}" target="_blank" class="social-bili" title="bilibili"><img src="${res_base_url!}/source/images/sns/bilibili.png"/></a></li>
</#if>
<#if settings.wangyiyun??>
<li><a href="${settings.wangyiyun!}" target="_blank" class="social-wangyiyun" title="CloudMusic"><img src="${cdn_base_url!}/img/Sakura/images/sns/wangyiyun.png"/></a></li>
<li><a href="${settings.wangyiyun!}" target="_blank" class="social-wangyiyun" title="CloudMusic"><img src="${res_base_url!}/source/images/sns/wangyiyun.png"/></a></li>
</#if>
<#if settings.twitter??>
<li><a href="${settings.twitter!}" target="_blank" class="social-wangyiyun" title="Twitter"><img src="${cdn_base_url!}/img/Sakura/images/sns/twitter.png"/></a></li>
<li><a href="${settings.twitter!}" target="_blank" class="social-wangyiyun" title="Twitter"><img src="${res_base_url!}/source/images/sns/twitter.png"/></a></li>
</#if>
<#if settings.facebook??>
<li><a href="${settings.facebook!}" target="_blank" class="social-wangyiyun" title="Facebook"><img src="${cdn_base_url!}/img/Sakura/images/sns/facebook.png"/></a></li>
<li><a href="${settings.facebook!}" target="_blank" class="social-wangyiyun" title="Facebook"><img src="${res_base_url!}/source/images/sns/facebook.png"/></a></li>
</#if>
<#if settings.googleplus??>
<li><a href="${settings.googleplus!}" target="_blank" class="social-wangyiyun" title="Google+"><img src="${cdn_base_url!}/img/Sakura/images/sns/googleplus.png"/></a></li>
<li><a href="${settings.googleplus!}" target="_blank" class="social-wangyiyun" title="Google+"><img src="${res_base_url!}/source/images/sns/googleplus.png"/></a></li>
</#if>
<#if settings.jianshu??>
<li><a href="${settings.jianshu!}" target="_blank" class="social-wangyiyun" title="简书"><img src="${cdn_base_url!}/img/Sakura/images/sns/jianshu.png"/></a></li>
<li><a href="${settings.jianshu!}" target="_blank" class="social-wangyiyun" title="简书"><img src="${res_base_url!}/source/images/sns/jianshu.png"/></a></li>
</#if>
<#if settings.zhihu??>
<li><a href="${settings.zhihu!}" target="_blank" class="social-wangyiyun" title="知乎"><img src="${cdn_base_url!}/img/Sakura/images/sns/zhihu.png"/></a></li>
<li><a href="${settings.zhihu!}" target="_blank" class="social-wangyiyun" title="知乎"><img src="${res_base_url!}/source/images/sns/zhihu.png"/></a></li>
</#if>
<#if settings.csdn??>
<li><a href="${settings.csdn!}" target="_blank" class="social-wangyiyun" title="CSDN"><img src="${cdn_base_url!}/img/Sakura/images/sns/csdn.png"/></a></li>
<li><a href="${settings.csdn!}" target="_blank" class="social-wangyiyun" title="CSDN"><img src="${res_base_url!}/source/images/sns/csdn.png"/></a></li>
</#if>
<li id="bg-next">
<img src="${cdn_base_url!}/img/Sakura/images/next-b.svg">
<img src="${res_base_url!}/source/images/next-b.svg">
</li>
</div>
</div>

View File

@ -1,18 +0,0 @@
<!-- 采用这种方式有太多不确定性,暂时不使用(尤其是使用多个路径的图,该种方式会使其报错) -->
<#if options.attachment_type == 'LOCAL'>
<img class="lazyload" src="${post.thumbnail?keep_before_last('.')}-thumbnail.${post.thumbnail?keep_after_last('.')}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'SMMS'>
<img class="lazyload" src="${post.thumbnail}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'UPOSS'>
<img class="lazyload" src="${post.thumbnail}${options.oss_upyun_thumbnail_style_rule!}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'QINIUOSS'>
<img class="lazyload" src="${post.thumbnail}${options.oss_qiniu_thumbnail_style_rule!}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'ALIOSS'>
<img class="lazyload" src="${post.thumbnail}${options.oss_ali_thumbnail_style_rule!}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'BAIDUBOS'>
<img class="lazyload" src="${post.thumbnail}${options.oss_baidu_thumbnail_style_rule!}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'TENCENTCOS'>
<img class="lazyload" src="${post.thumbnail}${options.oss_tencent_thumbnail_style_rule!}" data-src="${post.thumbnail}">
<#elseif options.attachment_type == 'HUAWEIOBS'>
<img class="lazyload" src="${post.thumbnail}${options.oss_huawei_thumbnail_style_rule!}" data-src="${post.thumbnail}">
</#if>

View File

@ -86,12 +86,12 @@
<ul class="social-share sharehidden">
<li>
<a href="http://service.weibo.com/share/share.php?url=${post.fullPath!}&appkey=&title=${post.title!}|${user.nickname!}&pic=${post.thumbnail!}" onclick="window.open(this.href, 'weibo-share', 'width=490,height=700');return false;" class="s-weibo">
<img src="${theme_base!}/images/sns/weibo.png"/>
<img src="${res_base_url!}/source/images/sns/weibo.png"/>
</a>
</li>
<li>
<a href="http://connect.qq.com/widget/shareqq/index.html?url=${post.fullPath!}&title=${post.title!}|${user.nickname!}&source=${post.title!}|${user.nickname!}&desc=${post.summary!}&pics=${post.thumbnail!}&summary=${post.summary!}" onclick="window.open(this.href, 'qq-share', 'width=730,height=500');return false;" class="s-qq">
<img src="${theme_base!}/images/sns/qq.png"/>
<img src="${res_base_url!}/source/images/sns/qq.png"/>
</a>
</li>
<li>
@ -104,22 +104,22 @@
<p>二维码便可将本文分享至朋友圈。</p>
</div>
</div>
<img src="${theme_base!}/images/sns/wechat.png"/>
<img src="${res_base_url!}/source/images/sns/wechat.png"/>
</a>
</li>
<li>
<a href="http://shuo.douban.com/!service/share?href=${post.fullPath!}&name=${post.title!}|${user.nickname!}&text=${post.summary!}&image=${post.thumbnail!}&starid=0&aid=0&style=11" onclick="window.open(this.href, 'douban-share', 'width=490,height=600');return false;" class="s-douban">
<img src="${theme_base!}/images/sns/douban.png"/>
<img src="${res_base_url!}/source/images/sns/douban.png"/>
</a>
</li>
<li>
<a href="http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=${post.fullPath!}&title=${post.title!}|${user.nickname!}&desc=${post.summary!}&summary=${post.summary!}&site=${post.summary!}" onclick="window.open(this.href, 'qzone-share', 'width=490,height=600');return false;" class="s-qzone">
<img src="${theme_base!}/images/sns/qzone.png"/>
<img src="${res_base_url!}/source/images/sns/qzone.png"/>
</a>
</li>
<li>
<a href="http://www.linkedin.com/shareArticle?mini=true&ro=true&title=${post.title!}|${user.nickname!}&url=${post.fullPath!}&summary=${post.summary!}&source=${post.thumbnail!}&armin=armin" onclick="window.open(this.href, 'linkedin-share', 'width=490,height=600');return false;" class="s-linkedin">
<img src="${theme_base!}/images/sns/linkedin.png"/>
<img src="${res_base_url!}/source/images/sns/linkedin.png"/>
</a>
</li>
</ul>

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${settings.links_patternimg!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${settings.links_patternimg!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">${options.links_title?default('友情链接')}</h1>

View File

@ -8,7 +8,7 @@
-webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.12);
box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.18);">
<header style="overflow: hidden;">
<img style="width:100%;z-index: 666;" src="${settings.reply_mail_img!'https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/other/head_2.jpg'}">
<img style="width:100%;z-index: 666;" src="${settings.reply_mail_img!'${res_base_url!}/source/images/other/head.jpg'}">
</header>
<div style="padding: 5px 20px;">
<p style="position: relative;
@ -30,7 +30,7 @@
<a style="text-decoration: none;color: orange" target="_blank" href="${blog_url!}" rel="noopener">${user.nickname!}</a>&nbsp;双手呈上~
</p>
<div style="text-align: center;">
<img src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/other/hr.png" style="width:100%;margin:5px auto 5px auto; display: block;">
<img src="${res_base_url!}/source/images/other/hr.png" style="width:100%;margin:5px auto 5px auto; display: block;">
<a style="text-transform: uppercase;
text-decoration: none;
font-size: 14px;

2
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "halo-theme-sakura",
"version": "1.0.0",
"version": "1.2.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,6 +1,6 @@
{
"name": "halo-theme-sakura",
"version": "1.0.0",
"version": "1.2.1",
"description": "<h1 align=\"center\">Sakura<img src=\"https://media.giphy.com/media/mGcNjsfWAjY5AEZNw6/giphy.gif\" width=\"50\"></h1>\r <p align=\"center\">\r <a href=\"https://lixingyong.com\">预览</a> | <a href=\"#安装主题\">安装</a> | <a href=\"https://lixingyong.com/s/halo-theme-sakure\">更新日志</a>\r </p>",
"main": "index.js",
"scripts": {
@ -8,7 +8,7 @@
"build-autoprefix": "postcss --use autoprefixer --map false --output styles/style.css styles/style.css",
"build-cleancss": "cleancss -o styles/style.min.css styles/style.css",
"build-clean": "rimraf css",
"build-app-js": "babel js/app.js -o js/app.min.js && uglifyjs js/app.min.js -o js/app.min.js",
"build-app-js": "babel script/app.js -o script/app.min.js && uglifyjs script/app.min.js -o script/app.min.js",
"build-js": "npm run build-app-js",
"deploy": "npm run build"
},

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${settings.photos_patternimg!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${settings.photos_patternimg!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">${options.photos_title?default('图库')}</h1>

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center single-center">
<div class="pattern-attachment-img">
<img data-src="${post.thumbnail!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${post.thumbnail!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header single-header">
<h1 class="entry-title">${post.title!}</h1>

File diff suppressed because it is too large Load Diff

View File

View File

@ -6,7 +6,7 @@
<#if (settings.patternimg!true) && (settings.searh_patternimg?? && settings.searh_patternimg!='')>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${settings.searh_patternimg!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${settings.searh_patternimg!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title search-title"> 关于“ ${keyword!} ”的搜索结果</h1>

View File

@ -1638,6 +1638,18 @@ others:
label: 开启
- value: false
label: 关闭
cdn:
name: cdn
label: 资源使用CDN
type: radio
data-type: bool
default: true
options:
- value: true
label: 开启
- value: false
label: 关闭
description: '开启后静态资源将使用免费的 jsdelivr CDN加载关闭后使用服务器网络加载'
reply_mail_img:
name: reply_mail_img
label: 邮件回复模块图片

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${sheet.thumbnail!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${sheet.thumbnail!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">${sheet.title!}</h1>

View File

@ -7,7 +7,7 @@
<div class="pattern-center-blank"></div>
<div class="pattern-center">
<div class="pattern-attachment-img">
<img data-src="${sheet.thumbnail!}" src="https://cdn.jsdelivr.net/gh/LIlGG/cdn@1.0.8/img/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
<img data-src="${sheet.thumbnail!}" src="${res_base_url!}/source/images/svg/loader/orange.progress-bar-stripe-loader.svg" class="lazyload" onerror="imgError(this, IMG_Type.DEFAULT)">
</div>
<header class="pattern-header">
<h1 class="entry-title">${sheet.title!}</h1>

18
source/css/lib.css Normal file

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/Move.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/Ocupado.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/ayuda.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/link.ani Normal file

Binary file not shown.

BIN
source/cursor/normal.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/precision.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/texto.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/vertical.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
source/cursor/work.cur Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 434 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

BIN
source/images/add@32x32.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 799 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="8px" height="11px"
viewBox="0 0 8 11" enable-background="new 0 0 8 11" xml:space="preserve">
<title>Imported Layers</title>
<description>Created with Sketch.</description>
<g id="Homepage" sketch:type="MSPage">
<g id="homepage-products-new" transform="translate(-1104.000000, -440.000000)" sketch:type="MSArtboardGroup">
<g id="header" sketch:type="MSLayerGroup">
<g id="img_x2B_msg-4" sketch:type="MSShapeGroup">
<g id="learn-more" transform="translate(957.000000, 417.000000)">
<path id="Imported-Layers" fill="#879193" d="M155,28.5l-6.1,5.5l-1.8-1.6l4.3-3.8l-4.3-3.8l1.9-1.7L155,28.5"/>
</g>
</g>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="8px" height="11px"
viewBox="0 0 8 11" enable-background="new 0 0 8 11" xml:space="preserve">
<title>Imported Layers</title>
<description>Created with Sketch.</description>
<g id="Homepage" sketch:type="MSPage">
<g id="homepage-products-new" transform="translate(-1104.000000, -440.000000)" sketch:type="MSArtboardGroup">
<g id="header" sketch:type="MSLayerGroup">
<g id="img_x2B_msg-4" sketch:type="MSShapeGroup">
<g id="learn-more" transform="translate(957.000000, 417.000000)">
<path id="Imported-Layers" fill="#879193" d="M155,28.5l-6.1,5.5l-1.8-1.6l4.3-3.8l-4.3-3.8l1.9-1.7L155,28.5"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,6 @@
<svg width="80px" height="80px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="lds-disqus">
<path ng-attr-d="{{config.d}}" ng-attr-stroke-width="{{config.width}}" ng-attr-stroke="{{config.stroke}}" fill="none" d="M82 50A32 32 0 1 1 23.533421623214014 32.01333190873183 L21.71572875253809 21.7157287525381 L32.013331908731814 23.53342162321403 A32 32 0 0 1 82 50" stroke-width="5" stroke="#ff727d"></path>
<circle cx="50" cy="50" ng-attr-r="{{config.radius2}}" ng-attr-stroke-width="{{config.width}}" ng-attr-stroke="{{config.stroke}}" ng-attr-stroke-dasharray="{{config.dasharray}}" fill="none" stroke-linecap="round" r="20" stroke-width="5" stroke="#ff727d" stroke-dasharray="31.41592653589793 31.41592653589793" transform="rotate(96 50 50)">
<animateTransform attributeName="transform" type="rotate" calcMode="linear" values="0 50 50;360 50 50" keyTimes="0;1" dur="1s" begin="0s" repeatCount="indefinite"></animateTransform>
</circle>
</svg>

After

Width:  |  Height:  |  Size: 1013 B

BIN
source/images/dot.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 125 B

After

Width:  |  Height:  |  Size: 125 B

View File

Before

Width:  |  Height:  |  Size: 178 KiB

After

Width:  |  Height:  |  Size: 178 KiB

BIN
source/images/load/load.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

Before

Width:  |  Height:  |  Size: 915 B

After

Width:  |  Height:  |  Size: 915 B

View File

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 KiB

BIN
source/images/other/hr.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 317 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 721 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 871 B

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -0,0 +1,10 @@
<svg width="80px" height="80px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="lds-disk">
<g transform="translate(50,50)">
<g ng-attr-transform="scale({{config.scale}})" transform="scale(0.6)">
<circle cx="0" cy="0" r="50" ng-attr-fill="{{config.c1}}" fill="#FFA500"></circle>
<circle cx="0" ng-attr-cy="{{config.cy}}" ng-attr-r="{{config.r}}" ng-attr-fill="{{config.c2}}" cy="-28" r="15" fill="#fff8eb" transform="rotate(312)">
<animateTransform attributeName="transform" type="rotate" calcMode="linear" values="0 0 0;360 0 0" keyTimes="0;1" dur="1s" begin="0s" repeatCount="indefinite"></animateTransform>
</circle>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 740 B

25
source/images/sakura.svg Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1512476621656" class="icon" style="" viewBox="0 0 1049 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1451" xmlns:xlink="http://www.w3.org/1999/xlink" width="204.8828125" height="200"><defs><style type="text/css">@font-face {
font-family: "weel-translate";
font-style: normal;
font-weight: normal;
src: url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.ttf") format("truetype"), url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.woff") format("woff");
}
@font-face {
font-family: "weel-translate";
font-style: normal;
font-weight: normal;
src: url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.ttf") format("truetype"), url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.woff") format("woff");
}
@font-face {
font-family: "weel-translate";
font-style: normal;
font-weight: normal;
src: url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.ttf") format("truetype"), url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.woff") format("woff");
}
@font-face {
font-family: "weel-translate";
font-style: normal;
font-weight: normal;
src: url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.ttf") format("truetype"), url("moz-extension://6df79949-f4b5-4469-9d15-fba558fbc8ad/fonts/weel-translate.woff") format("woff");
}
</style></defs><path d="M525.58396628 573.34694353s268.83106938-2.62915481 309.36387092 193.24287089l-76.46458293 21.90962291 12.92667757 84.13295086a214.05701289 214.05701289 0 0 1-96.84053193-4.82011663A224.79272784 224.79272784 0 0 1 525.58396628 578.38615666z" fill="#ffc0cb" p-id="1452"></path><path d="M552.75189802 512.4381922s131.45773592-233.7756732 321.63325979-170.89505575L854.2283053 418.66500728l79.31283344 30.89256828a215.59068679 215.59068679 0 0 1-52.58309388 81.50379604 224.57363215 224.57363215 0 0 1-325.35789552-14.67944718z" fill="#ffc0cb" p-id="1453"></path><path d="M508.49446078 494.0341093S317.00435871 306.48774025 426.77156822 139.31731943l69.4535037 38.78003191L547.4935884 109.30113636a214.05701289 214.05701289 0 0 1 65.72886796 71.86356201 225.01182435 225.01182435 0 0 1-98.37420505 310.67844912z" fill="#ffc0cb" p-id="1454"></path><path d="M473.21996809 525.58396628S242.2925454 661.64272234 109.30113636 512.4381922l55.43134521-57.18411482-53.45947909-65.72886795a213.61882069 213.61882069 0 0 1 86.32391269-43.81924506 224.79272784 224.79272784 0 0 1 274.527572 175.27698099z" fill="#ffc0cb" p-id="1455"></path><path d="M481.76472043 566.55496s72.0826585 258.31445093-106.4807652 348.14390364l-40.31370582-68.13892627-78.21735252 34.17901099a212.30424328 212.30424328 0 0 1-20.15685331-94.64956933 224.57363215 224.57363215 0 0 1 241.00584894-219.09622602z" fill="#ffc0cb" p-id="1456"></path></svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 718 B

After

Width:  |  Height:  |  Size: 718 B

BIN
source/images/sns/csdn.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 B

View File

Before

Width:  |  Height:  |  Size: 465 B

After

Width:  |  Height:  |  Size: 465 B

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1521703844620" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1063" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M896 840.533333H128c-29.866667 0-55.466667-25.6-55.466667-55.466666V238.933333c0-29.866667 25.6-55.466667 55.466667-55.466666h768c29.866667 0 55.466667 25.6 55.466667 55.466666v546.133334c0 29.866667-25.6 55.466667-55.466667 55.466666zM836.266667 298.666667c-12.8-12.8-29.866667-12.8-38.4 0l-93.866667 93.866666-132.266667 132.266667c-12.8 12.8-34.133333 21.333333-55.466666 21.333333s-38.4-8.533333-51.2-21.333333L277.333333 349.866667 230.4 298.666667c-12.8-8.533333-29.866667-8.533333-42.666667 0-12.8 12.8-12.8 29.866667 0 38.4L362.666667 512l-174.933334 174.933333c-12.8 12.8-12.8 29.866667 0 38.4 12.8 12.8 29.866667 12.8 38.4 0l174.933334-174.933333 46.933333 46.933333 8.533333 8.533334 4.266667 4.266666c12.8 12.8 29.866667 17.066667 51.2 17.066667s42.666667-8.533333 59.733333-25.6l51.2-51.2 174.933334 174.933333c12.8 12.8 29.866667 12.8 38.4 0 12.8-12.8 12.8-29.866667 0-38.4L657.066667 512l174.933333-174.933333c12.8-8.533333 12.8-25.6 4.266667-38.4z m0 0" p-id="1064" fill="#ffbf00"></path></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 392 B

After

Width:  |  Height:  |  Size: 392 B

View File

Before

Width:  |  Height:  |  Size: 636 B

After

Width:  |  Height:  |  Size: 636 B

View File

Before

Width:  |  Height:  |  Size: 766 B

After

Width:  |  Height:  |  Size: 766 B

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 964 B

After

Width:  |  Height:  |  Size: 964 B

View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Some files were not shown because too many files have changed in this diff Show More